Введение

Математическая модель
В математике процесс принятия решений по Маркову (MDP) – это стохастический процесс управления с дискретным временем. Он предоставляет математическую основу для моделирования принятия решений в ситуациях, когда результаты частично случайны и частично находятся под контролем принимающего решения. MDP полезны для изучения задач оптимизации, решаемых с помощью динамического программирования. MDP были известны, по крайней мере, с 1950-х годов; значительный объем исследований процессов принятия решений по Маркову был представлен в книге Рональда Говарда 1960 года «Динамическое программирование и процессы Маркова». Они используются во многих областях, включая робототехнику, автоматическое управление, экономику и производство. Название MDP происходит от имени русского математика Андрея Маркова, поскольку они являются расширением цепей Маркова. На каждом шаге времени процесс находится в некотором состоянии, и принимающий решение может выбрать любое доступное в этом состоянии действие. Процесс реагирует на следующем шаге, случайным образом переходя в новое состояние и предоставляя принимающему решение соответствующее вознаграждение. Вероятность перехода процесса в новое состояние зависит от выбранного действия. В частности, она задается функцией перехода состояния. Таким образом, следующее состояние зависит от текущего состояния и действия принимающего решения. Однако, при заданных и , оно условно независимо от всех предыдущих состояний и действий; другими словами, переходы состояний в MDP удовлетворяют марковскому свойству. Марковские процессы принятия решений являются расширением цепей Маркова; разница заключается в добавлении действий (обеспечивающих выбор) и вознаграждений (дающих мотивацию). И наоборот, если для каждого состояния существует только одно действие (например, «ожидание») и все вознаграждения одинаковы (например, «ноль»), процесс принятия решений по Маркову сводится к цепи Маркова.

Модели симуляторов

Во многих случаях сложно явно представить распределения вероятности перехода, . В таких случаях симулятор может использоваться для неявного моделирования МДП, предоставляя выборки из распределений перехода. Одной из распространенных форм неявной модели МДП является эпизодический симулятор среды, который можно запустить из начального состояния и который выдает следующее состояние и вознаграждение каждый раз, когда получает действие в качестве входных данных. Таким образом, можно генерировать траектории состояний, действий и вознаграждений, часто называемые эпизодами. Другая форма симулятора – генеративная модель, одношаговый симулятор, способный генерировать выборки следующего состояния и вознаграждения для любого состояния и действия. (Обратите внимание, что это отличается от значения термина «генеративная модель» в контексте статистической классификации.) В алгоритмах, выраженных с помощью псевдокода, часто используется для обозначения генеративной модели. Например, выражение может обозначать операцию выборки из генеративной модели, где и – текущее состояние и действие, а и – новое состояние и вознаграждение. По сравнению с эпизодическим симулятором, генеративная модель имеет то преимущество, что она может выдавать данные из любого состояния, а не только из тех, которые встречаются в траектории. Эти классы моделей образуют иерархию информационного содержания: явная модель тривиально порождает генеративную модель посредством выборки из распределений, а повторное применение генеративной модели порождает эпизодический симулятор. В обратном направлении возможно изучать только приближенные модели с помощью регрессии. Тип модели, доступной для конкретного МДП, играет важную роль в определении того, какие алгоритмы решения являются подходящими. Например, алгоритмы динамического программирования, описанные в следующем разделе, требуют явной модели, а поиск по деревьям Монте-Карло требует генеративной модели (или эпизодического симулятора, который можно скопировать в любом состоянии), в то время как большинству алгоритмов обучения с подкреплением требуется только эпизодический симулятор.

Алгоритмы

Решения для MDP с конечным числом состояний и действий могут быть найдены различными методами, такими как динамическое программирование. Алгоритмы, представленные в этом разделе, применимы к MDP с конечным числом состояний и действий, с явно заданными вероятностями переходов и функциями вознаграждения, однако основные концепции могут быть расширены для обработки других классов задач, например, с использованием аппроксимации функций. Стандартный набор алгоритмов для вычисления оптимальных политик для MDP с конечным числом состояний и действий требует хранения двух массивов, индексированных по состоянию: value, содержащий вещественные значения, и policy, содержащий действия. В конце алгоритма в массиве будет содержаться решение, а в – дисконтированная сумма вознаграждений, которые можно получить (в среднем), следуя этому решению из данного состояния. Алгоритм состоит из двух шагов: (1) обновление значений и (2) обновление политики, которые повторяются в определенном порядке для всех состояний до тех пор, пока дальнейшие изменения не прекратятся. Оба шага рекурсивно обновляют новую оценку оптимальной политики и ценности состояния, используя предыдущую оценку этих величин. Порядок их выполнения зависит от варианта алгоритма; их можно выполнять одновременно для всех состояний или последовательно для каждого состояния, а также чаще для одних состояний, чем для других. До тех пор, пока ни одно состояние не будет исключено из любого из шагов навсегда, алгоритм в конечном итоге придет к правильному решению.

Итерация политики

При итерации политики первый шаг выполняется один раз, затем второй шаг – один раз, после чего оба шага повторяются до сходимости политики. Затем первый шаг выполняется снова и так далее. (Итерация политики была изобретена Говардом для оптимизации рассылки каталогов Sears, которую он ранее оптимизировал с помощью итерации значений.) Вместо повторения второго шага до сходимости, его можно сформулировать и решить как систему линейных уравнений. Эти уравнения получаются путем фиксации в уравнении второго шага. Таким образом, повторение второго шага до сходимости можно интерпретировать как решение системы линейных уравнений методом релаксации. Преимущество этого варианта заключается в наличии чёткого условия остановки: алгоритм завершается, когда массив не изменяется в процессе применения первого шага ко всем состояниям. Итерация политики обычно медленнее, чем итерация значений, при большом количестве возможных состояний.

Измененная итерация политики

В модифицированной итерации политики (; ) первый шаг выполняется один раз, а затем второй шаг повторяется несколько раз. После этого первый шаг выполняется снова и так далее.

Приоритетная подметание

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

Комплексность вычислений

Алгоритмы поиска оптимальных политик с полиномиальной временной сложностью относительно размера представления задачи существуют для конечных MDP. Следовательно, задачи принятия решений, основанные на MDP, принадлежат к классу вычислительной сложности P. Однако, из-за "проклятия размерности", размер представления задачи часто растет экспоненциально с увеличением числа переменных состояния и действия, что ограничивает применение точных методов решения задачами с компактным представлением. На практике, методы онлайн-планирования, такие как поиск по деревьям Монте-Карло, позволяют находить полезные решения для более крупных задач, и, теоретически, возможно построить онлайн-алгоритмы планирования, способные находить политику, сколь угодно близкую к оптимальной, без зависимости вычислительной сложности от размера пространства состояний.

Расширения и обобщения

Марковский процесс принятия решений — это стохастическая игра с единственным игроком.

Частичная наблюдаемость

Вышеописанное решение исходит из того, что состояние известно в момент принятия решения; в противном случае его нельзя вычислить. Если это предположение не выполняется, задача называется частично наблюдаемым марковским процессом принятия решений, или POMDP.