Изучение иерархии

Мы разработали алгоритм иерархического обучения с подкреплением, который изучает высокоуровневые действия, полезные для решения различных задач, что позволяет быстро справляться с задачами, требующими тысяч временных шагов. Наш алгоритм, будучи примененным к ряду задач навигации, обнаруживает набор высокоуровневых действий для ходьбы и ползания в разных направлениях, что позволяет агенту быстро осваивать новые навигационные задачи.
Люди решают сложные задачи, разбивая их на мелкие, управляемые компоненты. Приготовление блинов состоит из серии высокоуровневых действий, таких как измерение муки, взбивание яиц, переливание смеси на сковороду, включение плиты и так далее. Люди способны быстро осваивать новые задачи, выстраивая в последовательность эти усвоенные компоненты, даже если на выполнение задачи могут уходить миллионы низкоуровневых действий, то есть индивидуальных сокращений мышц.
С другой стороны, современные методы обучения с подкреплением работают посредством грубого перебора низкоуровневых действий, требуя колоссального количества попыток для решения новой задачи. Эти методы становятся крайне неэффективными при решении задач, требующих большого количества временных шагов.
Наше решение основано на идее иерархического обучения с подкреплением, где агенты представляют сложное поведение в виде короткой последовательности высокоуровневых действий. Это позволяет нашим агентам решать гораздо более сложные задачи: в то время как для решения может потребоваться 2000 низкоуровневых действий, иерархическая стратегия преобразует их в последовательность из 10 высокоуровневых действий, а поиск по 10-шаговой последовательности гораздо эффективнее, чем по 2000-шаговой.
Метаобучение общих иерархий

Наш алгоритм, метаобучение общих иерархий (MLSH), изучает иерархическую стратегию, в которой главная стратегия (master policy) переключается между набором субстратегий. Главная стратегия выбирает действие каждые N временных шагов, где мы можем принять N=200. Субстратегия, выполняемая в течение N временных шагов, представляет собой высокоуровневое действие, и для наших навигационных задач субстратегии соответствуют ходьбе или ползанию в разных направлениях.
В большинстве предыдущих работ иерархические стратегии разрабатывались вручную. Мы же стремимся обнаруживать эту иерархическую структуру автоматически посредством взаимодействия с окружающей средой. С точки зрения метаобучения, мы определяем хорошую иерархию как такую, которая быстро достигает высокой награды при обучении на ранее не встречавшихся задачах. Следовательно, алгоритм MLSH нацелен на изучение субстратегий, которые обеспечивают быстрое обучение на новых задачах.
Мы проводим обучение на распределении задач, разделяя субстратегии и одновременно изучая новую главную стратегию для каждой выбранной задачи. Посредством многократного обучения новых главных стратегий этот процесс автоматически находит субстратегии, которые подстраиваются под динамику обучения главной стратегии.
Эксперименты
В нашей среде AntMaze робот Mujoco Ant помещается в распределение из 9 различных лабиринтов и должен добраться от начальной позиции до цели. Наш алгоритм успешно находит разнообразный набор субстратегий, которые можно объединять в последовательности для решения задач в лабиринте, исключительно через взаимодействие с окружающей средой. Этот набор субстратегий затем может быть использован для освоения более сложной задачи, чем те, на которых они обучались (см. видео в начале публикации).
Код
Мы публикуем код для обучения агентов MLSH, а также среды MuJoCo, созданные нами для оценки этих алгоритмов.
Авторы
Полный текст статьи читайте на OpenAI
