настройка
Мы рассматриваем в настройках:
- Дискретные действия
- Дискретные состояния
- Ограниченные награды
- Стационарная политика
- Бесконечный горизонт
Политика оптимальной определяется как:
и значение функции оптимальным является:
V * = макс π V π ( ы ) , ∀ s ∈ S
Там может быть множество политики, которые достигают максимума. Но есть только одна функция оптимального значения:
V ∗ = V π ∗
π∗∈argmaxπVπ(s),∀s∈S(1)
V∗=maxπVπ(s),∀s∈S(2)
V∗=Vπ∗(3)
Вопрос
Как доказать, что существует хотя бы один который удовлетворяет (1) одновременно для всех s ∈ S ?π∗s∈S
План доказательства
Построить оптимальное уравнение для использования в качестве временного суррогатного определения функции оптимального значения, которое мы докажем на шаге 2, что оно эквивалентно определению с помощью уравнения (2).
V∗(s)=maxa∈A[R(s,a)+γ∑s′∈ST(s,a,s′)V∗(s′)](4)
Вывести эквивалентность определения функции оптимального значения через уравнение (4) и уравнение (2).
(Обратите внимание, что на самом деле нам нужно только направление необходимости в доказательстве, поскольку достаточность очевидна, поскольку мы построили уравнение (4) из уравнения (2).)
Докажите, что существует единственное решение уравнения (4).
На шаге 2 мы знаем, что решение, полученное на шаге 3, также является решением уравнения (2), поэтому оно является функцией оптимального значения.
Из функции оптимального значения мы можем восстановить оптимальную политику, выбрав действие максимизатора в уравнении (4) для каждого состояния.
Детали шагов
1
V∗(s)=Vπ∗(s)=Ea[Qπ∗(s,a)], we have Vπ∗(s)≤maxa∈AQπ∗(s,a). And if there is any s~ such that Vπ∗≠maxa∈AQπ∗(s,a)Q∗(s,a)=Qπ∗(s,a) over a.
2
(=>)
Follows by step 1.
(<=)
i.e. If V~ satisfies V~(s)=maxa∈A[R(s,a)+γ∑s′∈ST(s,a,s′)V~(s′)], then V~(s)=V∗(s)=maxπVπ(s),∀s∈S.
Define the optimal Bellman operator as
TV(s)=maxa∈A[R(s,a)+γ∑s′∈ST(s,a,s′)V(s′)](5)
So our goal is to prove that if
V~=TV~, then
V~=V∗. We show this by combining two results, following
Puterman[1]:
a) If V~≥TV~, then V~≥V∗.
b) If V~≤TV~, then V~≤V∗.
Proof:
a)
For any π=(d1,d2,...),
V~≥TV~=maxd[Rd+γPdV~]≥Rd1+γPd1V~
Here
d is the decision rule(action profile at specific time),
Rd is the vector representation of immediate reward induced from
d and
Pd is transition matrix induced from
d.
By induction, for any n,
V~≥Rd1+∑i=1n−1γiPiπRdi+1+γnPnπV~
where
Pjπ represents the
j-step transition matrix under
π.
Since
Vπ=Rd1+∑i=1∞γiPiπRdi+1
we have
V~−Vπ≥γnPnπV~−∑i=n∞γiPiπRdi+1→0 as n→∞
So we have
V~≥Vπ. And since this holds for any
π, we conclude that
V~≥maxπVπ=V∗
b)
Follows from step 1.
3
The optimal Bellman operator is a contraction in L∞ norm, cf. [2].
Proof:
For any s,
|TV1(s)−TV2(s)|=∣∣∣∣maxa∈A[R(s,a)+γ∑s′∈ST(s,a,s′)V1(s′)]−maxa′∈A[R(s,a′)+γ∑s′∈ST(s,a′,s′)V(s′)]∣∣∣∣≤(∗)∣∣∣∣maxa∈A[γ∑s′∈ST(s,a,s′)(V1(s′)−V2(s′))]∣∣∣∣≤γ∥V1−V2∥∞
where in (*) we used the fact that
maxaf(a)−maxa′g(a′)≤maxa[f(a)−g(a)]
Thus by Banach fixed point theorum it follows that T has a unique fixed point.
References
[1] Puterman, Martin L.. “Markov Decision Processes : Discrete Stochastic Dynamic Programming.” (2016).
[2] A. Lazaric. http://researchers.lille.inria.fr/~lazaric/Webpage/MVA-RL_Course14_files/slides-lecture-02-handout.pdf