Ended 18 months ago
47 participants
40 submissions

DRL Course 2023 Домашнее задание 7

Задания по седьмой лекции и седьмому практическому занятию

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

  • CartPole
  • Pendulum
  • LunarLender с дискретным пространством действий (по умолчанию)
  • LunarLender с непрерывным пространством действий (нужно положить continuous=True, см. пояснения здесь Lunar Lander)
  • BipedalWalker

Нужно сравнить следующие алгоритмы:

  • CEM со второй лекции. Для дискретного пространства действий CEM был реализован на практическом занятии 2, для непрерывного — был задан в рамках домашнего задания 2.
  • DQN с Hard или Soft Target Networks с пятой лекции. Для дискретного пространства действий DQN был реализован на практическом занятии 5. Hard и Soft Target Networks было предложено реализовать в рамках домашнего задания 5. Кроме того, аналог Soft Target Networks был реализован на практическом занятии 7 в SAC. Для непрерывного пространства действий, его (пространство действий) следует дискретизировать. Например, если пространство действий - это отрезок [-2,2], то можно выбрать 3 действия {-2,0,2} или больше, например, 5 действий {-2,-1,0,1,2}. Если пространство действий квадрат [-1,1]^2, то — 5 действий {[-1,-1],[-1,1],[1,-1],[1,1],[0,0]} или больше. После такой дискретизации можно уже применять DQN.
  • PPO с шестой лекции. Для непрерывного и скалярного пространства действий PPO был реализован на практическом занятии 6, для непрерывного многомерного и дискретного  — был задан в рамках домашнего задания 6.
  • SAC с седьмой лекции. Для непрерывного и скалярного пространства действий SAC был реализован на практическом занятии 7, для непрерывного многомерного и дискретного  — предлагается реализовать в рамках текущего задания по аналогии с PPO.

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

Сравнение алгоритмов корректно проводить согласно следующим принципам:

  • Понятно, что все алгоритмы имеют разный набор гиперпараметров. Тем не менее, сравнение разумного проводить выбирая одинаковые гиперпараметры в тех случая где они совпадают (например lr или batch_size). Архитектуры NN также разумно выбирать одного размера. 
  • В алгоритме CEM и PPO на одной итерации обучения генерируется несколько траекторий. Этот факт необходимо учитывать на графиках, либо выводя результаты total_reward для всех этих траекторий, либо беря усредненный total_reward по этим траекториям и растягивая его на графике на количество траекторий. Суть в том, чтобы корректно оценить скорость обучения алгоритмов относительно сгенерированных траекторий, а не относительно итераций.
  • Обязательным принципом при сравнении алгоритмов в исследованиях по RL является следующий. Необходимо запустить каждый алгоритм несколько раз (3,5,10 и т.д.) и на график выводить усредненную кривую обучения. Так мы учитываем эффект случайности в обучении обусловленный инициализацией NN, шумом при выборе действий и случайностью в среде.

Главным результатов этого задания должен стать график с усредненными (по запускам, см. выше) кривыми обучений всех алгоритмов, по x-оси которого количество сгенерированных траекторий, а по y-оси total_reward.

Оформление

Код задания следует выполнить в .py файле с названием "(фамилия)_practice7_1.py". Результаты всех исследований следует оформить в отчет в виде одного .pdf файла с названием "(фамилия)_practice7.pdf". Отчеты оформляются в произвольной форме, однако должны содержать  

  • оглавление,
  • описание экспериментов,
  • результаты экспериментов проиллюстрированные в виде графиков обучения.
  • вывод.

Все файлы кладутся в папку с названием "(фамилия)_practice7" и предоставляется возможность скачать эту папке по ссылке (google.drive, yandex.disk и пр.). Задания отправляются в форме ниже в формате:

Фамилия Имя Отчество

Домашняя работа 7 - (ссылка на папку (фамилия)_practice7)

Оценка

Выполнение заданий оценивается в 10 баллов - 5 баллов на правильность выполнения и 5 за качество оформление отчета.

.

Our website uses cookies, including web analytics services. By using the website, you consent to the processing of personal data using cookies. You can find out more about the processing of personal data in the Privacy policy