из Гитхаба
Сборник "Сердце машины"
Участие: Лу Сюэ, Ли Цзэнань
Недавно созданная DeepMind среда обучения с подкреплением Control Suite с открытым исходным кодом имеет больше сред, более удобную для чтения документацию по коду и больше внимания уделяет задачам непрерывного контроля, чем OpenAI Gym. Основанный на Python и работающий на физическом движке MuJoCo, он представляет собой надежный набор тестов для оценки производительности агентов обучения с подкреплением.
Рисунок 1: Базовая среда. Первый ряд: Акробот, Мяч-в-чашке, Тележка, Гепард, Палец, Рыбка, Хоппер. Второй ряд: Гуманоид, Манипулятор, Маятник, Точка-масса, Ричер, Пловец, Ходок.
DeepMind Control Suite — это серия стабильных, хорошо протестированных задач непрерывного контроля, которые легко использовать и модифицировать. Задачи написаны на Python, а физические модели определены с использованием MJCF. Стандартизированные действия, наблюдения и структура вознаграждения упрощают контрольные показатели и упрощают интерпретацию кривых обучения.
-
Ссылка на инструмент: https://github.com/deepmind/dm_control
-
Демонстрационное видео: https://v.qq.com/x/page/i0528t4od2l.html
Управление физическим миром является незаменимой способностью и предпосылкой общего интеллекта. Действительно, единственные примеры общего интеллекта можно найти у приматов, господствовавших в мире миллионы лет.
Задачи физического контроля имеют много общих характеристик и должны рассматриваться отдельно от поведенческих проблем. В отличие от настольных игр, языков и других символических областей, задачи физического контроля по своей сути непрерывны в состоянии, времени и действии. Их динамика зависит от уравнений движения второго порядка, при этом основное состояние состоит из переменных положения и скорости, а производная состояния является переменной ускорения. Сенсорные сигналы (т. е. наблюдения) часто несут множество значимых физических единиц, которые меняются в разных временных масштабах.
В последнее десятилетие методы обучения с подкреплением добились быстрого прогресса в решении сложных задач, таких как видеоигры (Mnih, 2015). Обучающие среды в режиме аркадной игры (ALE, Bellemare et al. 2012) являются ключевым фактором этих достижений, предоставляя набор стандартных тестов для оценки и сравнения алгоритмов обучения. DeepMind Control Suite предоставляет аналогичный набор стандартных тестов для задач непрерывного контроля.
Набор доменов непрерывного контроля, в настоящее время включенный в OpenAI Gym (Brockman et al., 2016), фактически является эталоном в непрерывном обучении с подкреплением (Duan et al., 2016; Henderson et al., 2017). Точно так же DeepMind Control Suite представляет собой набор задач для сравнительного анализа алгоритмов обучения с непрерывным подкреплением, с некоторыми заметными отличиями. DeepMind фокусируется только на непрерывных задачах управления, таких как разделение наблюдений с похожими единицами измерения (положение, скорость, сила и т. д.), а не объединение их в вектор. Наша унифицированная структура вознаграждения (см. ниже) обеспечивает интерпретируемые кривые обучения и интегрированные показатели производительности на уровне пакета. Кроме того, мы делаем упор на высококачественный документированный код, написанный с использованием унифицированных шаблонов проектирования, что обеспечивает удобочитаемую, прозрачную и легко расширяемую кодовую базу. Наконец, управление имеет Все домены в Gym и многое другое.
Набор инструментов DeepMind Control Suite включает в себя:
-
Набор сред обучения Python с подкреплением, поддерживаемых физическим движком MuJoCo, см. в подкаталоге набора.
-
Библиотека, предоставляющая привязки Python для физического движка MuJoCo.
Установка и требования
Выполните следующие шаги, чтобы установить dm_control:
1. Загрузите MuJoCo Pro 1.50 со страницы загрузки веб-сайта MuJoCo. Сначала установите MuJoCo Pro, а затем установите dm_control, потому что сценарий установки dm_control должен генерировать привязку Python ctypes на основе файла заголовка MuJoCo. По умолчанию dm_control предполагает, что Zip-архив MuJoCo может распаковать ~/.mujoco/mjpro150.
2. Запустите pip install git+git://github.com/deepmind/dm_control.git (скоро будет пакет PyPI) или скопируйте библиотеку и запустите pip install /path/to/dm_control/, чтобы установить пакет Python dm_control. . Во время установки dm_control ищет заголовочные файлы MuJoCo с первого шага в ~/.mujoco/mjpro150/include, но этот путь можно настроить с помощью параметра командной строки headers-dir.
3. Установите лицензионный ключ MuJoCo, который будет использоваться при запуске dm_control. Подробнее см. на странице лицензионного ключа MuJoCo (https://www.roboti.us/license.html). По умолчанию dm_control ищет файл лицензионного ключа MuJoCo в ~/.mujoco/mjkey.txt.
4. Если лицензионный ключ (например, mjkey.txt) или общая библиотека, предоставленная MuJoCo Pro (например, libmujoco150.so или libmujoco150.dylib), не установлены по пути по умолчанию, используйте MJKEY_PATH и MJLIB_PATH, чтобы указать их расположение. соответственно.
Дополнительные примечания для пользователей macOS Homebrew
1. Пока вы используете интерпретатор Python, установленный Homebrew, приведенная выше команда pip должна работать нормально.
2. Чтобы запустить OpenGL, запустите brew install glfw, чтобы установить пакет glfw из Homebrew.
3. Перед запуском вам необходимо обновить переменную среды DYLD_LIBRARY_PATH, указав путь к библиотеке GLFW. Как: запустить экспорт DYLD_LIBRARY_PATH=$(brew --prefix)/lib:$DYLD_LIBRARY_PATH.
Пример быстрого запуска Control Suite
from dm_control import suite# Load one task:env = suite.load(domain_name="cartpole", task_name="swingup")# Iterate over a task set:for domain_name, task_name in suite.BENCHMARKING:
env = suite.load(domain_name, task_name)# Step through an episode and print out reward, discount and observation.action_spec = env.action_spec()
time_step = env.reset()while not time_step.last():
action = np.random.uniform(action_spec.minimum,
action_spec.maximum, size=action_spec.shape)
time_step = env.step(action) print(time_step.reward, time_step.discount, time_step.observation)
скопировать код
Диссертация: Пакет управления DeepMind
Ссылка на статью: https://arxiv.org/abs/1801.00690
Аннотация: DeepMind Control Suite представляет собой набор задач непрерывного контроля со стандартизированными структурами и интерпретируемыми вознаграждениями, предназначенными для использования в качестве эталона для оценки эффективности агентов обучения с подкреплением. Эти задачи написаны на Python и работают на физическом движке MuJoCo, поэтому их легко использовать и модифицировать. Контроль включает тесты для нескольких алгоритмов обучения. Адрес инструмента: https://www.github.com/deepmind/dm_control, адрес видео задачи: http://youtu.be/rAai4QzcYbs.
Эта статья составлена для сердца машины,Для перепечатки, пожалуйста, свяжитесь с этим официальным аккаунтом для авторизации .
✄------------------------------------------------
Присоединяйтесь к сердцу машины (штатный репортер/стажер): hr@jiqizhixin.com
Внесите свой вклад или запросите освещение: content@jiqizhixin.com
Реклама и деловое сотрудничество: bd@jiqizhixin.com