Réglage
Nous envisageons dans le cadre de:
- Actions discrètes
- États discrets
- Récompenses illimitées
- Politique stationnaire
- Horizon infini
La politique optimale est définie comme:
et la fonction de valeur optimale est:
V ∗ = max π V π ( s ) , ∀ s ∈ S
Il peut y avoir un ensemble des politiques qui atteignent le maximum. Mais il n'y a qu'une seule fonction de valeur optimale:
V ∗ = V π ∗
π∗∈argmaxπVπ(s),∀s∈S(1)
V∗=maxπVπ(s),∀s∈S(2)
V∗=Vπ∗(3)
La question
Comment prouver qu'il existe au moins un qui satisfait (1) simultanément pour tout s ∈ S ?π∗s∈S
Aperçu de la preuve
Construire l' équation optimale à utiliser comme définition de substitution temporaire de la fonction de valeur optimale, dont nous prouverons à l'étape 2 qu'elle est équivalente à la définition via l'équation (2).
V∗(s)=maxa∈A[R(s,a)+γ∑s′∈ST(s,a,s′)V∗(s′)](4)
Dérivez l'équivalence de la définition de la fonction de valeur optimale via l'équation (4) et via l'équation (2).
(Notez en fait que nous n'avons besoin que de la direction de nécessité dans la preuve, car la suffisance est évidente puisque nous avons construit l'équation (4) à partir de l'équation (2).)
Démontrer qu'il existe une solution unique à l'équation (4).
Par l'étape 2, nous savons que la solution obtenue à l'étape 3 est également une solution à l'équation (2), c'est donc une fonction de valeur optimale.
À partir d'une fonction de valeur optimale, nous pouvons récupérer une politique optimale en choisissant l'action de maximisation dans l'équation (4) pour chaque état.
Détails des étapes
1
Puisque , nous avons V π ∗ ( s ) ≤ max a ∈ A Q π ∗ ( s , a ) . Et s'il y a des ˜ s tels que V π ∗ ≠ max a ∈V∗(s)=Vπ∗(s)=Ea[Qπ∗(s,a)]Vπ∗(s)≤maxa∈AQπ∗(s,a)s~Vπ∗≠maxa∈AQπ∗(s,a)Q∗(s,a)=Qπ∗(s,a)a
2
(=>)
Suit l'étape 1.
(<=)
V~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