Подготовлено группой робототехники ФКН в рамках II Фестиваля робототехники факультета компьютерных наук НИУ ВШЭ

Введение

В рамках фестиваля студентам и школьникам 10-11 классов предлагается принять участие в соревновании по балансировке маятника, разработанного в группе робототехники ФКН. Это классическая задача, известная как "Inverted Pendulum" или "Cart Pole". Вдоль горизонтальной направляющей движется каретка со свободно подвешенным к ней стержнем (маятником). Задача состоит в том, чтобы управляя только линейным ускорением каретки, раскачать и удерживать маятник в верхнем неустойчивом положении равновесия.

Видео-демонстрация работы установки CartPole

Видео-демонстрация работы установки CartPole

Участникам соревнования предлагается разработать программу, которая должна раскачать и удерживать маятник в верхнем неустойчивом положении равновесия. Также разработанный алгоритм должен быть устойчив к внешним воздействиям на маятник (небольшим подталкиваниям рукой). Для запуска и отладки разрабатываемого алгоритма предоставляется виртуальная среда симуляции с API на языке Python.

Соревнование

Общие правила

  1. Для решения задачи можно использовать любые алгоритмы

    Примеры классических алгоритмов:

    Примеры алгоритмов, основанных на обучении с подкреплением:

  2. Код должен быть реализован на языке Python

  3. Нельзя изменять конфигурацию среды cartpole.yaml

  4. В соревновании участвуют команды от 1 до 3 человек

Онлайн этап

На первом этапе участникам соревнования предлагается реализовать алгоритм балансировки маятника и протестировать его в предоставленном симуляторе (инструкция по настройке и запуску).

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

Очный этап