Skip to content

Лабораторні роботи

П'ять робіт, які складаються в одну систему: від ПІД-регулятора одного апарата до рою, що обстежує майданчик і доповідає результат метриками місії. Кожна завершується не «працює на моєму ноутбуці», а таблицею вимірювань і висновком про те, що саме ви довели.

Бригада — три особи. У кожній роботі ролі розписані окремо: учасник A, B і C відповідають за свої підсистеми, мають власний результат і захищають його персонально. Спільними лишаються інтеграційний крок і підсумковий висновок. У порядку виконання кожен крок позначено відповідальним — [A], [B], [C] або [разом].

Роботи послідовні за кодом. Кожна спирається на середовище й код попередньої. Хто пропустив ранню роботу — наздоганяє з подвійними витратами.

Здається один Jupyter-ноутбук. Код кожного учасника у своїх комірках із короткими коментарями там, де це доречно, а всередині — схеми, графіки, таблиці вимірювань і висновки. Ноутбук має виконуватися від початку до кінця без ручних правок: Kernel → Restart & Run All не повинен давати помилок. У першій комірці вказано, хто з учасників за які комірки відповідав.

Середовище. Python 3.12, NumPy, Matplotlib, Gymnasium, Stable-Baselines3, gym-pybullet-drones — усе встановлюється з PyPI і GitHub. Відеокарта не потрібна: запуски навчання розраховані на процесор звичайного ноутбука, межа — 30 хвилин на один запуск. Єдина тонкість: pybullet не має готових збірок під Python 3.12 і компілюється з джерел, тому потрібен компілятор C++ (build-essential на Ubuntu, інструменти командного рядка Xcode на macOS).

Завантажити всі п'ять однією текою · Шаблон ноутбука

1 · Симулятор мультикоптера та ПІД-керування висінням

Симулятор мультикоптера й ПІД-регулятор каналу висоти: від першого стійкого висіння до вимірювання якості керування. Студент сам добирає коефіцієнти й показує, як кожен із них впливає на перерегулювання, швидкодію та сталу похибку.

Ролі: A — середовище і модель апарата · B — регулятор · C — вимірювання й аналіз.

Методичка PDF

2 · Перша політика навчання з підкріпленням для висіння

Та сама задача висіння, але розв'язана навчанням: постановка як задача RL, навчання PPO, чесне оцінювання політики й порівняння з ПІД-регулятором із роботи 1. Окремо — що змінюється від зерна до зерна: навчання повторюють щонайменше на п'яти зернах, як вимагає чек-лист відтворюваності.

Ролі: A — середовище навчання · B — навчання політики · C — оцінювання й порівняння.

Найкорисніший момент роботи — побачити, що висока віддача сумісна з низькою часткою успішних епізодів, і зрозуміти чому.

Методичка PDF

3 · Проєктування функції винагороди та політ до заданої точки

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

Ролі: A — середовище і винагорода · B — абляція · C — зіпсована винагорода.

Методичка PDF

4 · Рій із кількох апаратів: уникнення зіткнень

Перехід від одного апарата до рою: спостереження з блоком сусідів, агрегатор, інваріантний до їх порядку й кількості, спільна політика без зіткнень і перенос навченої політики на більший рій без перенавчання.

Ролі: A — середовище рою · B — інваріантний кодувальник · C — навчання й перенос.

Висновок «перенос коштує деградації в три рази» — повноцінний результат, якщо підкріплений числами.

Методичка PDF

5 · Покриття території роєм і метрики місії

Місія обстеження майданчика: винагорода за покриття, опорна евристика для порівняння, метрики місії замість однієї винагороди й поведінка рою за обмеженого заряду. Окремо — діагностика двох типових патологій.

Ролі: A — сітка й облік покриття · B — евристика і винагорода · C — навчання, метрики й заряд.

Методичка PDF

Що оцінюється

КритерійЩо це означає на захисті
Внесок кожного видноу ноутбуці видно, хто які комірки писав
Робота виконананоутбук виконується від початку до кінця без ручних правок
Результат вимірянотаблиця чисел, а не опис вражень
Висновок обґрунтованийсказано, що саме доведено і з якою похибкою
Межі названібригада сама перелічує, чого рішення не покриває

Другий рядок відсікає роботи, зібрані з кусків в останній вечір: ноутбук, який не проходить Restart & Run All, не приймається. На захисті питання ставляться персонально — кожен учасник відповідає за свої комірки.

Оцінювання

Розподіл балів за силабусом дисципліни:

Метод оцінюванняКількістьМінімум (допуск)МаксимумУсього
Виконання та захист лабораторних робіт55 за кожну10 за кожну50
Модульна контрольна робота103030
Максимальний стартовий рейтинг80
Залікова контрольна робота102020
Загальний підсумковий рейтинг100

Умова допуску до заліку — успішний захист усіх п'яти робіт і стартовий рейтинг не менше 36 балів.

Чек-лист відтворюваності

Вимагається як частина ноутбука з кожної роботи; готовий розділ уже є в шаблоні. Дев'ять пунктів: середовище й версія, зерна, кількість запусків (не менше п'яти), повна таблиця гіперпараметрів, однаковий бюджет пошуку для всіх порівнюваних, протокол оцінювання, що є лінією і що затіненням на графіку, базова лінія, обчислювальні витрати.

Найчастіші порушення у звітах, у порядку частоти:

  1. одна крива з одного запуску подана як результат;
  2. на осі абсцис епізоди замість кроків взаємодії;
  3. смуга на графіку без пояснення, що це — σ чи похибка середнього;
  4. різний бюджет пошуку гіперпараметрів у порівнянні.

Перші три ловляться за секунди й повертаються на доопрацювання без обговорення.

Матеріали курсу. Схеми із зовнішніх джерел належать їхнім авторам — посилання під кожною ілюстрацією.