Проблема с горной машиной
Mountain Car , стандартная область тестирования в обучении с подкреплением , представляет собой задачу, в которой автомобиль с недостаточной мощностью должен подняться на крутой холм. Поскольку гравитация сильнее двигателя автомобиля, даже на полном газу машина не может просто разогнаться по крутому склону. Автомобиль расположен в долине и должен научиться использовать потенциальную энергию, поднимаясь на противоположный холм, прежде чем он сможет добраться до цели на вершине самого правого холма. Домен использовался в качестве испытательного стенда в различных статьях по обучению с подкреплением .
Введение
[ редактировать ]Задача горного автомобиля, хотя и довольно простая, обычно применяется, поскольку требует, чтобы агент обучения с подкреплением обучался на двух непрерывных переменных: положении и скорости. Для любого заданного состояния (положения и скорости) автомобиля агенту предоставляется возможность ехать налево, направо или вообще не использовать двигатель. В стандартной версии задачи агент получает отрицательное вознаграждение на каждом временном шаге, когда цель не достигнута; агент не имеет информации о цели до первоначального успеха.
История
[ редактировать ]Проблема горного автомобиля впервые появилась в докторской диссертации Эндрю Мура (1990). [1] Позже это было более строго определено в статье Сингха и Саттона по обучению с подкреплением с помощью трассировок приемлемости . [2] Проблема стала более широко изучаться, когда Саттон и Барто добавили ее в свою книгу «Обучение с подкреплением: введение» (1998). [3] На протяжении многих лет использовалось множество версий проблемы, например те, которые изменяли функцию вознаграждения , условие завершения и начальное состояние .
Методы, используемые для решения горной машины
[ редактировать ]Q-обучение и аналогичные методы отображения дискретных состояний в дискретные действия необходимо расширить, чтобы иметь возможность работать с непрерывным пространством состояний проблемы. Подходы часто попадают в одну из двух категорий: дискретизация пространства состояний или аппроксимация функции .
Дискретизация
[ редактировать ]В этом подходе две непрерывные переменные состояния переводятся в дискретные состояния путем разделения каждой непрерывной переменной на несколько дискретных состояний. Этот подход работает с правильно настроенными параметрами, но недостатком является то, что информация, собранная из одного состояния, не используется для оценки другого состояния. Мозаичное кодирование может использоваться для улучшения дискретизации и включает в себя непрерывное отображение переменных в наборы сегментов, смещенных друг от друга. Каждый шаг обучения оказывает более широкое влияние на аппроксимацию функции ценности, поскольку при суммировании сеток смещений информация рассеивается. [4]
Аппроксимация функции
[ редактировать ]Аппроксимация функций — еще один способ решения горной машины. Выбирая набор базисных функций заранее или генерируя их во время движения автомобиля, агент может аппроксимировать функцию ценности в каждом состоянии. В отличие от пошаговой версии функции стоимости, созданной с помощью дискретизации, аппроксимация функции может более точно оценить истинную гладкую функцию области горных автомобилей. [5]
Следы соответствия
[ редактировать ]Один из аспектов проблемы связан с задержкой фактического вознаграждения. Агент не может узнать о цели до ее успешного завершения. Учитывая наивный подход к каждому испытанию, машина может лишь незначительно поддержать награду за достижение цели. Это проблема для наивной дискретизации, поскольку каждое дискретное состояние будет скопировано только один раз, и для изучения проблемы потребуется большее количество эпизодов. Эту проблему можно облегчить с помощью механизма отслеживания приемлемости, который автоматически резервирует вознаграждение, полученное ранее состояниями, что значительно увеличивает скорость обучения. Трассы приемлемости можно рассматривать как мост от методов изучения временных различий к методам Монте-Карло . [6]
Технические детали
[ редактировать ]Проблема горных автомобилей претерпела множество итераций. В этом разделе основное внимание уделяется стандартной четко определенной версии Саттона (2008). [7]
Переменные состояния
[ редактировать ]Двумерное непрерывное пространство состояний.
Действия
[ редактировать ]Одномерное дискретное пространство действия.
Награда
[ редактировать ]Для каждого временного шага:
Функция обновления
[ редактировать ]Для каждого временного шага:
Начальное состояние
[ редактировать ]При желании многие реализации включают случайность в оба параметра, чтобы показать лучшее обобщенное обучение.
Условие прекращения
[ редактировать ]Завершите симуляцию, когда:
Вариации
[ редактировать ]Существует множество версий горного автомобиля, которые по-разному отличаются от стандартной модели. Переменные, которые варьируются, включают, помимо прочего, изменение констант (серьезности и крутизны) проблемы, поэтому конкретная настройка конкретных политик становится неактуальной, а также изменение функции вознаграждения, чтобы повлиять на способность агента учиться по-другому. Примером может служить изменение награды на равную расстоянию от цели или изменение награды на ноль везде и единицу у цели. Кроме того, можно использовать 3D-горный автомобиль с непрерывным 4D-пространством состояний. [8]
Ссылки
[ редактировать ]- ^ [Мур, 1990] А. Мур, Эффективное обучение на основе памяти для управления роботами, докторская диссертация, Кембриджский университет, ноябрь 1990 г.
- ^ [Сингх и Саттон, 1996] Сингх, С.П. и Саттон, Р.С. (1996) Обучение с подкреплением с заменой следов соответствия. Машинное обучение 22(1/2/3):123-158.
- ^ [Саттон и Барто, 1998] Обучение с подкреплением: Введение. Ричард С. Саттон и Эндрю Г. Барто. Книга Брэдфорда. MIT Press, Кембридж, Массачусетс, Лондон, Англия, 1998 г.
- ^ «8.3.2 Кодирование плитки» . Архивировано из оригинала 28 апреля 2012 года . Проверено 14 декабря 2011 г.
- ^ «8.4 Управление с аппроксимацией функций» . Архивировано из оригинала 30 апреля 2012 года . Проверено 14 декабря 2011 г.
- ^ Саттон, Ричард С.; Барто, Эндрю Г.; Бах, Франциск (13 ноября 2018 г.). «7. Следы годности» . Обучение с подкреплением: Введение (второе изд.). Книга Брэдфорда. ISBN 9780262039246 .
- ^ [Саттон, 2008] Программное обеспечение для горных автомобилей. Ричард С. Саттон. http://www.cs.ualberta.ca/~sutton/MountainCar/MountainCar.html Архивировано 12 октября 2009 г. в Wayback Machine.
- ^ «Горный автомобиль 3D (CPP) — RL-Библиотека» . Архивировано из оригинала 26 апреля 2012 года . Проверено 14 декабря 2011 г.
Реализации
[ редактировать ]- Программное обеспечение C++ для горных автомобилей. Ричард С. Саттон.
- Java Mountain Car с поддержкой RL Glue
- Python, с хорошим обсуждением (сообщение в блоге – нижняя страница)
Дальнейшее чтение
[ редактировать ]- Саттон, Ричард С. (1996). Горный автомобиль с разреженным грубым кодированием . Достижения в области нейронных систем обработки информации. МТИ Пресс. стр. 1038–1044. CiteSeer х : 10.1.1.51.4764 .
- Горный автомобиль с заменой следов годности
- «Дополнительное обсуждение непрерывных пространств состояний». 2000. стр. 903–910. CiteSeerX 10.1.1.97.9314 .
- Гауссовы процессы с горным автомобилем