Введение
Математическая модель
В математике процесс принятия решений по Маркову (MDP) – это стохастический процесс управления с дискретным временем. Он предоставляет математическую основу для моделирования принятия решений в ситуациях, когда результаты частично случайны и частично находятся под контролем принимающего решения. MDP полезны для изучения задач оптимизации, решаемых с помощью динамического программирования. MDP были известны, по крайней мере, с 1950-х годов; значительный объем исследований процессов принятия решений по Маркову был представлен в книге Рональда Говарда 1960 года «Динамическое программирование и процессы Маркова». Они используются во многих областях, включая робототехнику, автоматическое управление, экономику и производство. Название MDP происходит от имени русского математика Андрея Маркова, поскольку они являются расширением цепей Маркова. На каждом шаге времени процесс находится в некотором состоянии, и принимающий решение может выбрать любое доступное в этом состоянии действие. Процесс реагирует на следующем шаге, случайным образом переходя в новое состояние и предоставляя принимающему решение соответствующее вознаграждение. Вероятность перехода процесса в новое состояние зависит от выбранного действия. В частности, она задается функцией перехода состояния. Таким образом, следующее состояние зависит от текущего состояния и действия принимающего решения. Однако, при заданных и , оно условно независимо от всех предыдущих состояний и действий; другими словами, переходы состояний в MDP удовлетворяют марковскому свойству. Марковские процессы принятия решений являются расширением цепей Маркова; разница заключается в добавлении действий (обеспечивающих выбор) и вознаграждений (дающих мотивацию). И наоборот, если для каждого состояния существует только одно действие (например, «ожидание») и все вознаграждения одинаковы (например, «ноль»), процесс принятия решений по Маркову сводится к цепи Маркова.
In mathematics, a Markov decision process (MDP) is a discrete time stochastic control process. It provides a mathematical framework for modeling decision making in situations where outcomes are partly random and partly under the control of a decision maker. MDPs are useful for studying optimization problems solved via dynamic programming. MDPs were known at least as early as the 1950s; a core body of research on Markov decision processes resulted from Ronald Howard's 1960 book, Dynamic Programming and Markov Processes. They are used in many disciplines, including robotics, automatic control, economics and manufacturing. The name of MDPs comes from the Russian mathematician Andrey Markov as they are an extension of Markov chains. At each time step, the process is in some state , and the decision maker may choose any action that is available in state The process responds at the next time step by randomly moving into a new state , and giving the decision maker a corresponding reward
The probability that the process moves into its new state is influenced by the chosen action. Specifically, it is given by the state transition function Thus, the next state depends on the current state and the decision maker's action But given and , it is conditionally independent of all previous states and actions; in other words, the state transitions of an MDP satisfy the Markov property. Markov decision processes are an extension of Markov chains; the difference is the addition of actions (allowing choice) and rewards (giving motivation). Conversely, if only one action exists for each state (e. g. "wait") and all rewards are the same (e. g. "zero"), a Markov decision process reduces to a Markov chain.
Модели симуляторов
Во многих случаях сложно явно представить распределения вероятности перехода, . В таких случаях симулятор может использоваться для неявного моделирования МДП, предоставляя выборки из распределений перехода. Одной из распространенных форм неявной модели МДП является эпизодический симулятор среды, который можно запустить из начального состояния и который выдает следующее состояние и вознаграждение каждый раз, когда получает действие в качестве входных данных. Таким образом, можно генерировать траектории состояний, действий и вознаграждений, часто называемые эпизодами. Другая форма симулятора – генеративная модель, одношаговый симулятор, способный генерировать выборки следующего состояния и вознаграждения для любого состояния и действия. (Обратите внимание, что это отличается от значения термина «генеративная модель» в контексте статистической классификации.) В алгоритмах, выраженных с помощью псевдокода, часто используется для обозначения генеративной модели. Например, выражение может обозначать операцию выборки из генеративной модели, где и – текущее состояние и действие, а и – новое состояние и вознаграждение. По сравнению с эпизодическим симулятором, генеративная модель имеет то преимущество, что она может выдавать данные из любого состояния, а не только из тех, которые встречаются в траектории. Эти классы моделей образуют иерархию информационного содержания: явная модель тривиально порождает генеративную модель посредством выборки из распределений, а повторное применение генеративной модели порождает эпизодический симулятор. В обратном направлении возможно изучать только приближенные модели с помощью регрессии. Тип модели, доступной для конкретного МДП, играет важную роль в определении того, какие алгоритмы решения являются подходящими. Например, алгоритмы динамического программирования, описанные в следующем разделе, требуют явной модели, а поиск по деревьям Монте-Карло требует генеративной модели (или эпизодического симулятора, который можно скопировать в любом состоянии), в то время как большинству алгоритмов обучения с подкреплением требуется только эпизодический симулятор.
Алгоритмы
Решения для MDP с конечным числом состояний и действий могут быть найдены различными методами, такими как динамическое программирование. Алгоритмы, представленные в этом разделе, применимы к MDP с конечным числом состояний и действий, с явно заданными вероятностями переходов и функциями вознаграждения, однако основные концепции могут быть расширены для обработки других классов задач, например, с использованием аппроксимации функций. Стандартный набор алгоритмов для вычисления оптимальных политик для MDP с конечным числом состояний и действий требует хранения двух массивов, индексированных по состоянию: value, содержащий вещественные значения, и policy, содержащий действия. В конце алгоритма в массиве будет содержаться решение, а в – дисконтированная сумма вознаграждений, которые можно получить (в среднем), следуя этому решению из данного состояния. Алгоритм состоит из двух шагов: (1) обновление значений и (2) обновление политики, которые повторяются в определенном порядке для всех состояний до тех пор, пока дальнейшие изменения не прекратятся. Оба шага рекурсивно обновляют новую оценку оптимальной политики и ценности состояния, используя предыдущую оценку этих величин. Порядок их выполнения зависит от варианта алгоритма; их можно выполнять одновременно для всех состояний или последовательно для каждого состояния, а также чаще для одних состояний, чем для других. До тех пор, пока ни одно состояние не будет исключено из любого из шагов навсегда, алгоритм в конечном итоге придет к правильному решению.
The algorithm has two steps, (1) a value update and (2) a policy update, which are repeated in some order for all the states until no further changes take place. Both recursively update a new estimation of the optimal policy and state value using an older estimation of those values. Their order depends on the variant of the algorithm; one can also do them for all states at once or state by state, and more often to some states than others. As long as no state is permanently excluded from either of the steps, the algorithm will eventually arrive at the correct solution.
Итерация политики
При итерации политики первый шаг выполняется один раз, затем второй шаг – один раз, после чего оба шага повторяются до сходимости политики. Затем первый шаг выполняется снова и так далее. (Итерация политики была изобретена Говардом для оптимизации рассылки каталогов Sears, которую он ранее оптимизировал с помощью итерации значений.) Вместо повторения второго шага до сходимости, его можно сформулировать и решить как систему линейных уравнений. Эти уравнения получаются путем фиксации в уравнении второго шага. Таким образом, повторение второго шага до сходимости можно интерпретировать как решение системы линейных уравнений методом релаксации. Преимущество этого варианта заключается в наличии чёткого условия остановки: алгоритм завершается, когда массив не изменяется в процессе применения первого шага ко всем состояниям. Итерация политики обычно медленнее, чем итерация значений, при большом количестве возможных состояний.
Измененная итерация политики
В модифицированной итерации политики (; ) первый шаг выполняется один раз, а затем второй шаг повторяется несколько раз. После этого первый шаг выполняется снова и так далее.
Приоритетная подметание
В этом варианте шаги предпочтительно применяются к состояниям, которые каким-либо образом важны – будь то исходя из логики алгоритма (в этих состояниях или вблизи них недавно произошли значительные изменения) или исходя из области применения (эти состояния находятся рядом с начальным состоянием или представляют интерес для пользователя или программы, использующей алгоритм).
Комплексность вычислений
Алгоритмы поиска оптимальных политик с полиномиальной временной сложностью относительно размера представления задачи существуют для конечных MDP. Следовательно, задачи принятия решений, основанные на MDP, принадлежат к классу вычислительной сложности P. Однако, из-за "проклятия размерности", размер представления задачи часто растет экспоненциально с увеличением числа переменных состояния и действия, что ограничивает применение точных методов решения задачами с компактным представлением. На практике, методы онлайн-планирования, такие как поиск по деревьям Монте-Карло, позволяют находить полезные решения для более крупных задач, и, теоретически, возможно построить онлайн-алгоритмы планирования, способные находить политику, сколь угодно близкую к оптимальной, без зависимости вычислительной сложности от размера пространства состояний.
Расширения и обобщения
Марковский процесс принятия решений — это стохастическая игра с единственным игроком.
Частичная наблюдаемость
Вышеописанное решение исходит из того, что состояние известно в момент принятия решения; в противном случае его нельзя вычислить. Если это предположение не выполняется, задача называется частично наблюдаемым марковским процессом принятия решений, или POMDP.