Марковский процесс принятия решений ( MDP ), также называемый стохастической динамической программой или задачей стохастического управления, представляет собой модель последовательного принятия решений , когда результаты неопределенны. [1]
Возникнув из исследования операций в 1950-х годах, [2] [3] MDP с тех пор получили признание в различных областях, включая экологию , экономику , здравоохранение , телекоммуникации и обучение с подкреплением . [4] Обучение с подкреплением использует структуру MDP для моделирования взаимодействия между обучающимся агентом и его средой. В этой структуре взаимодействие характеризуется состояниями, действиями и вознаграждениями. Структура MDP разработана для предоставления упрощенного представления ключевых элементов задач искусственного интеллекта . Эти элементы охватывают понимание причины и следствия , управление неопределенностью и недетерминизмом, а также стремление к явным целям. [4]
Название происходит от его связи с цепями Маркова , концепцией, разработанной российским математиком Андреем Марковым . «Марков» в «Марковском процессе принятия решений» относится к базовой структуре переходов состояний , которые по-прежнему следуют свойству Маркова . Процесс называется «процессом принятия решений», потому что он включает в себя принятие решений, которые влияют на эти переходы состояний, расширяя концепцию цепи Маркова в область принятия решений в условиях неопределенности.
Марковский процесс принятия решений представляет собой 4- кортеж , где:
Функция политики представляет собой (потенциально вероятностное) отображение пространства состояний ( ) в пространство действий ( ).
Целью процесса принятия решений Маркова является поиск хорошей «политики» для лица, принимающего решения: функции , которая определяет действие , которое лицо, принимающее решения, выберет в состоянии . После того, как процесс принятия решений Маркова объединяется с политикой таким образом, это фиксирует действие для каждого состояния, и полученная комбинация ведет себя как цепь Маркова (поскольку действие, выбранное в состоянии, полностью определяется ).
Цель состоит в том, чтобы выбрать политику , которая максимизирует некоторую кумулятивную функцию случайных вознаграждений, обычно ожидаемую дисконтированную сумму на потенциально бесконечном горизонте:
где — фактор дисконтирования, удовлетворяющий , который обычно близок к (например, для некоторой ставки дисконтирования ). Более низкий фактор дисконтирования мотивирует лицо, принимающее решение, отдавать предпочтение принятию мер на раннем этапе, а не откладывать их на неопределенный срок.
Другая возможная, но строго связанная, цель, которая обычно используется, — это возврат шага. На этот раз вместо использования дисконтного фактора агент интересуется только первыми шагами процесса, причем каждое вознаграждение имеет одинаковый вес.
где - временной горизонт. По сравнению с предыдущей целью, последняя чаще используется в теории обучения.
Политика, которая максимизирует функцию выше, называется оптимальной политикой и обычно обозначается . Конкретный MDP может иметь несколько различных оптимальных политик. Из-за свойства Маркова можно показать, что оптимальная политика является функцией текущего состояния, как предполагалось выше.
Во многих случаях трудно представить распределения вероятностей перехода, , явно. В таких случаях симулятор может использоваться для неявного моделирования MDP, предоставляя образцы из распределений перехода. Одной из распространенных форм неявной модели MDP является эпизодический симулятор среды, который может быть запущен из начального состояния и выдает последующее состояние и вознаграждение каждый раз, когда он получает входное действие. Таким образом, могут быть созданы траектории состояний, действий и вознаграждений, часто называемые эпизодами .
Другой формой симулятора является генеративная модель , одношаговый симулятор, который может генерировать образцы следующего состояния и вознаграждения, учитывая любое состояние и действие. [5] (Обратите внимание, что это другое значение, чем термин генеративная модель в контексте статистической классификации.) В алгоритмах , которые выражаются с помощью псевдокода , часто используется для представления генеративной модели. Например, выражение может обозначать действие выборки из генеративной модели, где и являются текущим состоянием и действием, а и являются новым состоянием и вознаграждением. По сравнению с эпизодическим симулятором, генеративная модель имеет то преимущество, что она может выдавать данные из любого состояния, а не только тех, которые встречаются в траектории.
Эти классы моделей образуют иерархию информационного содержания: явная модель тривиально дает генеративную модель посредством выборки из распределений, а повторное применение генеративной модели дает эпизодический симулятор. В противоположном направлении, возможно только изучение приближенных моделей посредством регрессии . Тип модели, доступной для конкретного MDP, играет важную роль в определении того, какие алгоритмы решения являются подходящими. Например, алгоритмы динамического программирования , описанные в следующем разделе, требуют явной модели, а поиск по дереву Монте-Карло требует генеративной модели (или эпизодического симулятора, который можно скопировать в любом состоянии), тогда как большинство алгоритмов обучения с подкреплением требуют только эпизодического симулятора.
Примером MDP является модель балансировки полюсов, которая исходит из классической теории управления.
В этом примере мы имеем
Решения для MDP с конечными пространствами состояний и действий могут быть найдены с помощью различных методов, таких как динамическое программирование . Алгоритмы в этом разделе применяются к MDP с конечными пространствами состояний и действий и явно заданными вероятностями перехода и функциями вознаграждения, но основные концепции могут быть расширены для обработки других классов задач, например, с использованием аппроксимации функций .
Стандартное семейство алгоритмов для расчета оптимальных политик для конечных состояний и MDP действий требует хранения двух массивов, индексированных по состоянию: value , который содержит реальные значения, и policy , который содержит действия. В конце алгоритма будет содержать решение и будет содержать дисконтированную сумму вознаграждений, которые будут получены (в среднем) при следовании этому решению из состояния .
Алгоритм состоит из двух шагов: (1) обновление значения и (2) обновление политики, которые повторяются в некотором порядке для всех состояний до тех пор, пока не прекратятся дальнейшие изменения. Оба рекурсивно обновляют новую оценку оптимальной политики и значения состояния, используя более старую оценку этих значений.
Их порядок зависит от варианта алгоритма; их можно также делать для всех состояний сразу или для каждого состояния отдельно, и чаще для некоторых состояний, чем для других. Пока ни одно состояние не будет навсегда исключено из любого из шагов, алгоритм в конечном итоге придет к правильному решению. [6]
В итерации значений (Беллман 1957) , которая также называется обратной индукцией , функция не используется; вместо этого значение вычисляется в пределах всякий раз, когда это необходимо. Подстановка вычисления в вычисление дает объединенный шаг [ необходимо дополнительное объяснение ] :
где — номер итерации. Итерация значения начинается с и как предположение о функции значения . Затем она итерируется, многократно вычисляя для всех состояний , пока не сойдется с левой частью, равной правой части (что является « уравнением Беллмана » для этой задачи [ необходимо разъяснение ] ). Статья Ллойда Шепли 1953 года о стохастических играх включала в себя как особый случай метод итерации значения для MDP, [7] но это было признано только позже. [8]
В итерации политики (Говард 1960) шаг один выполняется один раз, затем шаг два выполняется один раз, затем оба повторяются до тех пор, пока политика не сойдется. Затем шаг один снова выполняется один раз и так далее. (Итерация политики была изобретена Говардом для оптимизации рассылки каталога Sears , которую он оптимизировал с помощью итерации значения. [9] )
Вместо повторения шага два до сходимости, его можно сформулировать и решить как набор линейных уравнений. Эти уравнения просто получаются путем создания уравнения на шаге два. [ необходимо пояснение ] Таким образом, повторение шага два до сходимости можно интерпретировать как решение линейных уравнений путем релаксации .
Преимущество этого варианта заключается в том, что существует определенное условие остановки: если массив не изменяется в ходе применения шага 1 ко всем состояниям, алгоритм завершается.
Итерация политики обычно происходит медленнее, чем итерация значения для большого числа возможных состояний.
В модифицированной итерации политики (van Nunen 1976; Puterman & Shin 1978) шаг один выполняется один раз, а затем шаг два повторяется несколько раз. [10] [11] Затем шаг один снова выполняется один раз и так далее.
В этом варианте шаги преимущественно применяются к состояниям, которые в некотором роде важны — либо на основе алгоритма (недавно произошли большие изменения в этих состояниях или вокруг них), либо на основе использования (эти состояния близки к начальному состоянию или иным образом представляют интерес для человека или программы, использующих алгоритм).
Алгоритмы для поиска оптимальных политик с временной сложностью, полиномиальной по размеру представления проблемы, существуют для конечных MDP. Таким образом, проблемы принятия решений, основанные на MDP, находятся в классе вычислительной сложности P. [ 12] Однако из-за проклятия размерности размер представления проблемы часто экспоненциален по числу переменных состояния и действия, ограничивая точные методы решения задачами, имеющими компактное представление. На практике методы онлайн-планирования, такие как поиск по дереву Монте-Карло, могут находить полезные решения в более крупных задачах, и, теоретически, можно построить алгоритмы онлайн-планирования, которые могут находить произвольно близкую к оптимальной политику без зависимости вычислительной сложности от размера пространства состояний. [13]
Марковский процесс принятия решений — это стохастическая игра с одним игроком.
Решение выше предполагает, что состояние известно, когда должно быть предпринято действие; в противном случае его невозможно рассчитать. Когда это предположение неверно, проблема называется частично наблюдаемым марковским процессом принятия решений или POMDP.
Ограниченные марковские процессы принятия решений (CMDPS) являются расширениями марковских процессов принятия решений (MDP). Между MDP и CMDP есть три фундаментальных различия. [14]
Метод множителей Лагранжа применяется к CMDP. Разработано много алгоритмов на основе Лагранжа.
Существует ряд приложений для CMDP. Недавно он использовался в сценариях планирования движения в робототехнике. [16]
В дискретных марковских процессах принятия решений решения принимаются в дискретные интервалы времени. Однако для непрерывных марковских процессов принятия решений решения могут быть приняты в любое время, которое выберет принимающий решения. По сравнению с дискретными марковскими процессами принятия решений, непрерывные марковские процессы принятия решений могут лучше моделировать процесс принятия решений для системы, которая имеет непрерывную динамику , т. е. динамика системы определяется обыкновенными дифференциальными уравнениями (ОДУ). Такого рода приложения возникают в системах очередей , эпидемических процессах и процессах населения .
Как и в дискретных марковских процессах принятия решений, в непрерывных марковских процессах принятия решений агент стремится найти оптимальную политику , которая могла бы максимизировать ожидаемое накопленное вознаграждение. Единственное отличие от стандартного случая заключается в том, что из-за непрерывной природы переменной времени сумма заменяется интегралом:
где
Если пространство состояний и пространство действий конечны, мы могли бы использовать линейное программирование для поиска оптимальной политики, что было одним из самых ранних примененных подходов. Здесь мы рассматриваем только эргодическую модель, что означает, что наш MDP с непрерывным временем становится эргодической цепью Маркова с непрерывным временем при стационарной политике . При этом предположении, хотя лицо, принимающее решения, может принять решение в любое время в текущем состоянии, нет никакой выгоды в выполнении нескольких действий. Лучше выполнять действие только в то время, когда система переходит из текущего состояния в другое состояние. При некоторых условиях [17] , если наша функция оптимального значения не зависит от состояния , мы будем иметь следующее неравенство:
Если существует функция , то будет наименьшей, удовлетворяющей приведенному выше уравнению. Чтобы найти , мы могли бы использовать следующую модель линейного программирования:
является допустимым решением D-LP, если является неродным и удовлетворяет ограничениям в задаче D-LP. Допустимое решение D-LP называется оптимальным решением, если
для всех возможных решений D-LP. Как только мы нашли оптимальное решение , мы можем использовать его для установления оптимальной политики.
В непрерывном времени MDP, если пространство состояний и пространство действий непрерывны, оптимальный критерий может быть найден путем решения уравнения в частных производных Гамильтона–Якоби–Беллмана (HJB) . Для обсуждения уравнения HJB нам нужно переформулировать нашу задачу
это функция конечного вознаграждения, это вектор состояния системы, это вектор управления системой, который мы пытаемся найти. показывает, как вектор состояния изменяется со временем. Уравнение Гамильтона–Якоби–Беллмана выглядит следующим образом:
Мы могли бы решить уравнение, чтобы найти оптимальное управление , которое могло бы дать нам функцию оптимального значения
Обучение с подкреплением — это междисциплинарная область машинного обучения и оптимального управления , главной целью которой является нахождение приблизительно оптимальной политики для MDP, где вероятности перехода и вознаграждения неизвестны. [18]
Обучение с подкреплением может решать процессы Markov-Decision без явного указания вероятностей перехода, которые вместо этого необходимы для выполнения итерации политики. В этой обстановке вероятности перехода и вознаграждения должны быть изучены из опыта, т. е. путем предоставления агенту возможности взаимодействовать с MDP для заданного количества шагов. Как на теоретическом, так и на практическом уровне усилия направлены на максимизацию эффективности выборки, т. е. минимизацию количества выборок, необходимых для изучения политики, производительность которой близка к оптимальной (из-за стохастической природы процесса изучение оптимальной политики с конечным количеством выборок, как правило, невозможно).
Для целей этого раздела полезно определить дополнительную функцию, которая соответствует выполнению действия и последующему оптимальному продолжению (или в соответствии с любой текущей политикой):
Хотя эта функция также неизвестна, опыт во время обучения основан на парах (вместе с результатом ; то есть, «я был в состоянии , и я пытался делать, и произошло»). Таким образом, у вас есть массив , и вы используете опыт для его непосредственного обновления. Это известно как Q-обучение .
Другое применение процесса MDP в теории машинного обучения называется обучающимися автоматами. Это также один из типов обучения с подкреплением, если среда является стохастической. Первая статья об обучающихся автоматах подробно рассмотрена Нарендрой и Татхачаром (1974), которые изначально были явно описаны как конечные автоматы . [19] Подобно обучению с подкреплением, алгоритм обучающихся автоматов также имеет преимущество решения проблемы, когда вероятность или награды неизвестны. Разница между обучающимися автоматами и Q-обучением заключается в том, что первая техника опускает память о Q-значениях, но обновляет вероятность действия напрямую, чтобы найти результат обучения. Обучающиеся автоматы — это схема обучения со строгим доказательством сходимости. [20]
В теории обучающихся автоматов стохастический автомат состоит из:
Состояния такого автомата соответствуют состояниям «дискретно-параметрического марковского процесса ». [21] На каждом временном шаге t = 0,1,2,3,... автомат считывает входные данные из своего окружения, обновляет P( t ) до P( t + 1) с помощью A , случайным образом выбирает последующее состояние в соответствии с вероятностями P( t + 1) и выводит соответствующее действие. Окружение автомата, в свою очередь, считывает действие и отправляет следующие входные данные автомату. [20]
Помимо наград, процесс принятия решений Маркова можно понять в терминах теории категорий . А именно, пусть обозначает свободный моноид с порождающим множеством A. Пусть Dist обозначает категорию Клейсли монады Жири. Тогда функтор кодирует как множество состояний S , так и функцию вероятности P.
Таким образом, процессы принятия решений Маркова могут быть обобщены от моноидов (категорий с одним объектом) до произвольных категорий. Можно назвать результат зависимым от контекста процессом принятия решений Маркова , поскольку перемещение от одного объекта к другому изменяет набор доступных действий и набор возможных состояний. [ необходима цитата ]
Терминология и обозначения для MDP не полностью устоялись. Существует два основных направления — одно фокусируется на задачах максимизации из контекстов, таких как экономика, используя термины действие, вознаграждение, ценность и называя фактор дисконтирования β или γ , в то время как другое фокусируется на задачах минимизации из инженерии и навигации [ требуется ссылка ] , используя термины управление, стоимость, стоимость-к-переходу и называя фактор дисконтирования α . Кроме того, обозначения для вероятности перехода различаются.
Кроме того, вероятность перехода иногда записывается как , или, реже,