‹Базовый 1: MDP›

Эта статьяоснована на корейской книге "Learning RL with Python and Keras" и переведенной на корейский язык книге "RL and DRL (Deep RL) using PyTorch". сильный>».

Извините за нечеткие математические формулы(Medium не поддерживает Latex для математики. 😢)

Обучение с подкреплением — это тип машинного обучения, который взаимодействует с окружающей средой и обучается самостоятельно. Из-за характеристики самообучения без супервизора проблемы, которые необходимо решить с помощью RL, должны иметь возможность последовательно определять действия.

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

Итак, мы собираемся изучить, что такое MDP.

1. MDP

Когда люди сталкиваются с проблемой, с которой никогда раньше не сталкивались, какие действия они предпримут в первый раз?

Они выясняли, с какой именно проблемой они сталкиваются, а затем, по прошествии времени, они могли распознавать не только причину проблем, но и решения, пока боролись с ними.

Но агенты не так умны, как люди. Поэтому RL требует, чтобы пользователи определили проблему.

Если определение не в порядке, агент не может решить проблему должным образом. Поэтому определение проблемы — один из самых важных шагов в RL.

MDP состоит из 5 факторов: состояние, действие, функция возврата, вероятность перехода состояния и коэффициент дисконтирования.

Чтобы улучшить понимание MDP, я собираюсь использовать пример под названием «Среда Grid World».

1.1 Состояние

S – это набор состояний, которые может наблюдать агент.

Если в Grid World есть пять состояний, это можно представить так.

Набор состояний может выражаться следующим образом:

Каждая координата на сетке — это состояние в Grid World. Всего 25 состояний, и в примере красный квадрат является агентом.

Как показано на рисунке ниже, если агент находится на координате (1,1), состояние агента равно (1,1). Каждое состояние представляет собой координату, состоящую из осей x и y, которые являются горизонтальной и вертикальной осью соответственно.

Таким образом, выражение выглядит следующим образом:

Со временем агент будет исследовать состояния в наборе 𝑺. Время обозначается как 𝑡. 𝑺𝑡обозначает состояние в момент времени 𝑡. Кроме того, 𝑺𝑡=(1,3) означает местоположение состояния в момент времени 𝑡 в мире-сетке.

𝑺𝑡 не привязан к какому-либо конкретному времени: при 𝑡=1 𝑺𝑡 может быть (1,3) или (4,2).

Переменная, возможные значения которой являются результатом случайного явления, называется случайной переменной.

Мы рассматриваем состояние как случайную величину, потому что состояние агента также изменяется время от времени в момент времени t.

Конкретное состояние в момент времени t обозначено ниже:

Отныне случайная величина будет обозначаться заглавной буквой.

1.2 Действие

𝑨 — множество возможных действий, которые агент может совершить в состоянии 𝑺𝑡. Обычно агент показывает одинаковые действия в любом состоянии.

В нашем примере агент может выполнять действия вверх, вниз, вправо и влево:

𝑨𝑡 — это действие, выбранное множеством 𝑨 в момент времени 𝑡. Поскольку агент не указывает, какое действие предпринять в момент времени t, оно выражается заглавной буквой 𝑨𝑡, что также является случайной величиной!!

Если агент совершает действие в момент времени 𝑡, выражение выглядит следующим образом:

1.3 Функция вознаграждения

Награда — это единственная информация, которую агент может усвоить, и это информация, которую среда дает агенту.

Когда состояние и действие равны 𝑺𝑡 = 𝑠 и 𝑨𝑡 = 𝑎 соответственно в момент времени 𝑡, агент получит следующие результаты:

Как видно из формулы, возврат равен ожиданию(E).

Ожидание — это не точное число, а оценка числа, которое получится. Например, кости имеют равные вероятности на всех сторонах. Следовательно, математическое ожидание для игральной кости может быть выражено:

Поскольку другие вознаграждения могут быть предоставлены, даже если одно и то же действие выполняется в том же состоянии, в зависимости от среды, функция возврата выражается как ожидание.

Примечательным моментом в формуле является то, что агент получит доход в момент времени t + 1.

Возможно, вам будет полезно понять картинку выше. Награды известны не агенту, а окружающей среде. После того, как агент выполнит действие в момент времени t, среда сообщит агенту следующее состояние и вознаграждение, которое равно t + 1.

Самая важная идея (только мое мнение) заключается в том, что агент вознаграждается не за достижение цели, а за совершение «хороших действий» для достижения цели.

1.4 Вероятность перехода состояния

Если агент выполняет действие в состоянии (s), состояние агента изменится (s′). Но по какой-то причине агент не может прибыть в s′. Например, может дуть ветер или агент может упасть при переходе в следующее состояние. Это означает, что существует вероятностный фактор в изменении состояния. Формула выглядит следующим образом:

Вероятность перехода в состояние – это вероятность (заглавная буква P), что агент прибудет в состояние s′ в состоянии s и действие a. Поскольку это значение является частью среды, агент не может вычислить значение.

Как только агент предпримет действие, среда сообщит агенту о следующем состоянии через вероятность перехода состояния.

1.5 Коэффициент дисконтирования

Поскольку агент всегда определяет действие в настоящем, чем ближе агент к настоящему, тем больше вознаграждение. Предполагая, что размер вознаграждения равен 100, когда вознаграждение дается в текущий момент времени, агент принимает размер 100 как есть.

Однако, если агент получает вознаграждение в размере 100 по прошествии определенного периода времени от настоящего, агент не считает, что это 100. Агент берет вознаграждение, дисконтируя его с учетом прошедшего времени.

Предположим, вы выиграли в лотерею. Вы можете получить призы сейчас или даже через 10 лет. Большинство из вас предпочитает получить его сейчас. У нас есть система под названием «проценты», которая позволяет сделать стоимость, которую мы получаем позже, равной текущей стоимости. Проценты добавляют дополнительное значение к значению, которое вы получите позже, чтобы сделать его равным текущему значению. И наоборот, даже та же самая награда будет уменьшаться в цене в будущем.

Коэффициент дисконтирования — это понятие, введенное для математического выражения этого. Коэффициент дисконтирования обозначается γ и имеет значение от 0 до 1. Таким образом, он уменьшает вознаграждение при умножении.

1.6 Политика

Политика — это действия, которые должен выполнять агент во всех состояниях. Если состояние вводится как вход, вы можете думать о нем как о своего рода функции, которая отправляет действие на выход. Политика может представлять только одно действие в каждом состоянии и может быть представлена ​​вероятностно, например, a₁ = 10% и a₂ = 90%.

То, что агенту нужно узнать с помощью RL, — это оптимальная политика среди множества политик. Оптимальная политика выбирает только одно действие в каждом состоянии. Однако, когда агент обучается, политика должна иметь возможность выбирать несколько действий вероятностно, а не выбирать только одно действие. Это позволяет агентам узнавать о различных ситуациях и находить оптимальные политики. Формула политики выглядит следующим образом:

Он указывает вероятность выполнения действия a из возможных действий, когда агент находится в s в момент времени t.

На приведенном выше рисунке показан пример политики, которая сообщает агенту, что делать для каждого состояния.

Резюме

Мы определили последовательные задачи действий-решений с помощью MDP. Агент определяет действие на основе вознаграждения, которое будет получено в текущем состоянии. Затем среда уведомляет агента о фактическом вознаграждении и следующем состоянии. Повторяя этот процесс, агент обнаруживает, что награды, которые он ожидал получить, неверны. Вознаграждения, которые агент должен был получить в это время, называются функциями ценности и будут объяснены в следующем посте. В процессе агент изменяет свою информацию и политики в зависимости от фактически полученных вознаграждений. Если агент повторяет этот процесс обучения бесконечно, он может изучить политики, которые получают наибольшее вознаграждение.

Спасибо, что прочитали мою низкоуровневую статью. Это мой первый пост на Medium, так что не стесняйтесь оставлять мне отзывы!! 💪🏼💪🏼💪🏼