В сценарии изучения укрепления, где вы - обучение агент, чтобы выполнить задачу, среда моделирует динамику, с которой взаимодействует агент. Как показано в следующей фигуре, среде:
Получает действия от агента
Выходные наблюдения в ответ на действия
Генерирует премиальное измерение, как хорошо действие способствует достижению задачи
Создание модели среды включает определение следующего:
Действие и наблюдение сигнализируют что использование агента взаимодействовать со средой.
Премиальный сигнал, что использование агента, чтобы измерить его успех. Для получения дополнительной информации смотрите, Задают Премиальные Сигналы.
Среда динамическое поведение.
Когда вы создаете объект среды, необходимо задать действие, и наблюдение сигнализирует что использование агента взаимодействовать со средой. Можно создать и дискретные и непрерывные пространства действия. Для получения дополнительной информации смотрите rlNumericSpec
и rlFiniteSetSpec
, соответственно.
Что сигнализирует, что вы выбираете, когда действия и наблюдения зависят от вашего приложения. Например, для приложений системы управления, интегралы (и иногда производные) сигналов ошибки являются часто полезными наблюдениями. Кроме того, для приложений отслеживания уставки имея изменяющийся во времени ссылочный сигнал, когда наблюдение полезно.
Когда вы задаете свои сигналы наблюдения, гарантируете, что все системные состояния заметны посредством наблюдений. Например, наблюдение изображений за качающимся маятником имеет информацию о положении, но не имеет достаточной информации, чтобы определить скорость маятника. В этом случае можно задать скорость маятника как отдельное наблюдение.
Программное обеспечение Reinforcement Learning Toolbox™ обеспечивает, предопределил среды MATLAB®, для которых уже заданы действия, наблюдения, вознаграждения и динамика. Можно использовать эти среды для:
Изучите концепции изучения укрепления
Получите знакомство с программными функциями Reinforcement Learning Toolbox
Протестируйте свои собственные агенты изучения укрепления
Для получения дополнительной информации смотрите Загрузку Предопределенные Среды Мира Сетки и Загрузка Предопределенные Среды Системы управления.
Можно создать следующие типы пользовательских сред MATLAB для собственных приложений:
Миры сетки с заданным размером, вознаграждениями и препятствиями
Среды с динамикой, заданной с помощью пользовательских функций
Среда, заданная путем создания и изменения объекта среды шаблона
Если вы создаете пользовательский объект среды, можно обучить агент таким же образом как в предопределенной среде. Для получения дополнительной информации об учебных агентах смотрите, что Укрепление Train Изучает Агенты.
Можно создать пользовательские миры сетки любого размера с собственным вознаграждением, изменением состояния и настройками препятствия. Создать пользовательскую среду мира сетки:
Создайте модель мира сетки с помощью функции createGridWorld
. Например, создайте мир сетки с десятью строками и девятью столбцами.
gw = createGridWorld(10,9);
Сконфигурируйте мир сетки путем изменения свойств модели. Например, задайте терминальное состояние как местоположение [7,9]
.
gw.TerminalStates = "[7,9]";
Создайте среду MDP для этого мира сетки, который использование агента взаимодействовать с моделью мира сетки.
env = rlMDPEnv(gw);
Для простых сред можно задать пользовательский объект среды путем создания объекта rlFunctionEnv
, определения собственного сброса и ступенчатых функций.
В начале каждого учебного эпизода агент готовит среду к обучению путем устанавливания начальных условий с помощью функции сброса. Например, можно задать известные значения начального состояния или поместить среду в случайное начальное состояние.
Ступенчатая функция задает динамику среды; то есть, как изменения состояния в ответ на действия агента. На каждом учебном временном шаге состояние модели обновляется с помощью ступенчатой функции.
Для получения дополнительной информации смотрите, Создают Среду MATLAB с помощью Пользовательских Функций.
Для более сложных сред можно задать пользовательскую среду путем создания и изменения среды шаблона. Создать пользовательскую среду:
Создайте шаблонный класс среды с помощью функции rlCreateEnvTemplate
.
Измените среду шаблона, задав свойства среды, требуемые функции среды и дополнительные функции среды.
Подтвердите свою пользовательскую среду с помощью validateEnvironment
.
Для получения дополнительной информации смотрите, Создают Пользовательскую Среду MATLAB из Шаблона.
rlCreateEnvTemplate
| rlFunctionEnv
| rlPredefinedEnv