Содержание

Список проектов 2020

1. Задачи на одно- и двумерную машину Тьюринга

Исходная идея была воплощена в мобильном приложении: https://github.com/OSLL/adfmp20-turing

Задача: создать веб-приложение, которое будет интерпретатором одно- и двумерной машины Тьюринга, а также движком для решения простейших задач на ней. Функциональность:

Технологии: Python, Flask, MongoDB.

deliverables: веб-приложение, позволяющее решать задачи на машинах Тьюринга, работающее на Ubuntu 18.04.

2. Плагин для Moodle - отображение общего прогресса по курсу

Задача: создать плагин для Moodle, который будет отображать прогресс пользователя по текущему курсу. Функциональность:

Технологии: PHP, MySQL, Moodle.

deliverables: работоспособный плагин, который можно установить в Moodle версии 3.8.2.

3. Плагин для Moodle - лайки и дизлайки

Задача: создать плагин для Moodle, который позволит ставить активностям лайки и дизлайки. Функциональность:

Технологии: PHP, MySQL, Moodle.

deliverables: работоспособный плагин, который можно установить в Moodle версии 3.8.2.

[R&D] 4. Автоматическая проверка дипломных презентаций

Исследовательская составляющая: применение простых методов Natural Language Processing для анализа связности документа (насколько в нем раскрыты цели и задачи).

Задумка: дипломники нашей кафедры перед защитой проходят проверку презентаций по набору правил http://se.moevm.info/doku.php/diplomants:start:slides_checklist_etu . Большая часть иp этого набора может быть проверена автоматически, что сэкономит массу времени как самим учащимся, так и преподавателям.

Задача: создать веб-приложение, которое позволит проверять презентации (форматы ppt/pptx/odp/odpx) по наборам критериев (http://se.moevm.info/doku.php/diplomants:start:slides_checklist_etu), а также иметь потенциал для расширения этого списка / кастомизации шкалы оценивания. Функциональность:

Технологии: Python, Flask, MongoDB.

deliverables: веб-приложение, работающее на Ubuntu 18.04.

[R&D] 5. Инструмент поиска повторов на аудиозаписях

Исследовательская составляющая: применение простых методов обработки аудио.

Задумка: для одной практической задачи необходимо работать с аудиозаписями докладов (например защиты курсовой), проведенных вживую. Однако, достоверно известно, что некоторые аудиозаписи сфабрикованы и содержат повторы .

Задача: создать приложение командной строки, которое будет принимать на вход аудиофайлы (mp3), со следующей функциональностью:

Технологии:

deliverables: приложение для командной строки, работающее на Ubuntu 18.04.

[R&D] 6. Инструмент анализа голосов на аудиозаписи

Исследовательская составляющая: применение методов обработки аудио.

Задача: создать приложение командной строки, которое будет принимать на вход аудиофайлы (mp3), со следующей функциональностью:

Технологии:

deliverables: приложение для командной строки, работающее на Ubuntu 18.04.

7. Инструмент поиска плагиата в исходном коде

Задача: создать веб-приложение для поиска плагиата в исходном коде, со следующей функциональностью:

Технологии:

deliverables: веб-приложение, работающее на Ubuntu 18.04.

8. Инструмент для генерации датасетов для фотограмметрии

Что такое фотограмметрия: https://habr.com/ru/post/319464/

Чем вдохновляется тема https://github.com/moevm/bsc_kovinev

Задумка: создать приложение, где можно будет настроить параметры виртульной сцены (что показывать), освещения (какой светит свет), погоды (дождь, снег, без осадков ), а также параметры создания набора снимков (траектория, тип камеры).

Задача: создать GUI-приложение для создания фотограмметрических датасетов, со следующей функциональностью:

Технологии:

deliverables: GUI-приложение, работающее на Ubuntu 18.04.

9. Генератор заданий для к/р по темам «Интерполяция функций» и «Численное интегрирование»

Задача: реализовать генератор заданий для к/р по темам «Интерполяция функций» и «Численное интегрирование». Приложение должно по некоторому номеру генерировать заданное число вариантов по данным темам, а также ответы для преподавателя. Примеры заданий можно найти здесь.

Функциональность:

Технологии: Python

Примечание: обратите внимание на то, как сформированы значения в заданиях. В заданиях по интерполяции полиномы получаются с целочисленными значениями, а в заданиях по численному интегрированию суммы должны делиться без калькулятора. Это делается для того, чтобы студенты «в полевых условиях» смогли решить данные задачи за отведённое время.

deliverables: приложение, работающее на Ubuntu 18.04.

10. Разработка системы удаленного проведения экзаменов (Proctoring)

Кафедра сейчас занимается созданием собственной системы для прокторинга - процедуры наблюдения и контроля за дистанционным экзаменом (от англ. «proctor» - человек, который следит за ходом экзамена в университете). Приложение уже находится в процессе разработки.

Необходимо выполнить следующие задачи:

Во время экзамена студенты иногда нарушают правила проведения, поэтому в системе есть возможность просмотра нарушений. Нужно сделать кликабельную временную шкалу для видео с экзамена. Там выводить нарушения. Пример показан на фото:

Технологии: JavaScript, React, NodeJS, MongoDB, Docker.

11. Настройка взаимодействия системы прокторинга с Moodle

Кафедра сейчас занимается созданием собственной системы для прокторинга - процедуры наблюдения и контроля за дистанционным экзаменом (от англ. «proctor» - человек, который следит за ходом экзамена в университете). Прокторинг реализован с использованием микросервисной архитектуры. Необходимо настроить взаимодействие системы прокторинга с образовательной платформой Moodle. Для этого нужно разобраться, как работает плагин Event Trigger, подключить к Moodle и настроить взаимодействие с системой прокторинга.

Необходимо протестировать и внедрить плагин.

Технологии: Moodle, JavaScript.

В системе прокторинга используются: React, NodeJS, MongoDB, Python, WebRTC, Kurento Media Server, Docker. При тестировании придется запускать весь стек технологий.

12. Инструмент для генерации отчетов

На данный момент разработан инструмент, который позволяет генерировать отчет из markdown в отчет, соответствующий регламенту «ЛЭТИ». Требуется:

  1. Добавить систему ошибок(когда возникает какая либо ошибка, пользователь должен узнать об этом)
  2. Изменить парсер markdown текста для случаев вложенного списка(больше двух) и др.
  3. Автоматизировать сборку docker-контейнера
  4. Добавить недостающие поля, такие как: аннотация на английском и др.
  5. Вставка diff’а в отчет для нужных коммитов, используя github api
  6. Поменять работу с гит репозиториями, используя github api
  7. Тестирование*

Технологии: Python3, Flask, Docker, Js, Mongodb, html, css

13. Мобильное приложение для кафедральной платформы moodle

Требуется реализовать возможности:

  1. кастомизации стилистику приложения
  2. учиться (смотреть видео/проходить тесты) и видеть свой прогресс
  3. общаться с преподавателем через чат
  4. преподаватель курса может смотреть статистику по курсу/студенту

Технологии: Kotlin

14. Плагин для создания сертификатов

Требуется реализовать плагин для платформы moodle, который позволяет создавать, настраивать, отображать сертификат как элемент курса, а также проверять сертификат на валидность.

В настройку сертификата входит:

Технологии: php, js, css, mysql