p. 102: ṽ_* is the unique solution of the Bellman optimality equation with altered transition probabilities
ProvedSuttonBartoRL.EpsSoft.eps_env_bellman_optimality_uniquedynamic-programmingp2o-batch-b23bp2o-gran-per-chapterp2o-plan-bookp2o-v1reinforcement-learning
Let a finite MDP be given with discount rate and let . Let be the optimal state-value function of the new environment with dynamics . Then for every state
and is the only function satisfying the first equation with in place of .
This is the Bellman optimality equation (3.19) of the new environment; its uniqueness is what identifies the value of an unimproved -soft policy with .
Formalization Note is the supremum of the new environment's policy values over all stochastic policies; for this family is bounded.
Preamble
import Mathlib import Definitions.Def_SuttonBartoRL_EpsSoft_ValueFunctions import Definitions.Def_SuttonBartoRL_EpsSoft_NewEnvironment
Formal statement
namespace SuttonBartoRL.EpsSoft
/-- p. 102: for a finite MDP with `0 ≤ γ < 1` and `0 < ε ≤ 1`, the optimal state-value function
`ṽ_*` of the new environment `epsEnv M ε` is the unique solution of the Bellman optimality
equation (3.19) with altered transition probabilities
`ṽ_*(s) = max_a Σ_{s', r} [(1 - ε) p(s', r | s, a) + Σ_{a'} (ε / |A|) p(s', r | s, a')] [r + γ ṽ_*(s')]`,
and the right-hand side equals
`(1 - ε) max_a Σ_{s', r} p(s', r | s, a) [r + γ ṽ_*(s')] + (ε / |A|) Σ_a Σ_{s', r} p(s', r | s, a) [r + γ ṽ_*(s')]`. -/
theorem eps_env_bellman_optimality_unique {S A : Type} [Fintype S] [DecidableEq S] [Fintype A]
[Nonempty A] (M : MDP S A) (γ : ℝ) (hγ0 : 0 ≤ γ) (hγ1 : γ < 1) (ε : ℝ) (hε0 : 0 < ε)
(hε1 : ε ≤ 1) :
(∀ s, optimalValue (epsEnv M ε hε0.le hε1) γ s =
Finset.univ.sup' Finset.univ_nonempty (fun a => ∑ s', ∑ r ∈ M.R,
((1 - ε) * M.p s a s' r + ∑ a', ε / (Fintype.card A : ℝ) * M.p s a' s' r) *
(r + γ * optimalValue (epsEnv M ε hε0.le hε1) γ s'))) ∧
(∀ s, optimalValue (epsEnv M ε hε0.le hε1) γ s =
(1 - ε) * Finset.univ.sup' Finset.univ_nonempty (fun a => ∑ s', ∑ r ∈ M.R,
M.p s a s' r * (r + γ * optimalValue (epsEnv M ε hε0.le hε1) γ s')) +
ε / (Fintype.card A : ℝ) * ∑ a, ∑ s', ∑ r ∈ M.R,
M.p s a s' r * (r + γ * optimalValue (epsEnv M ε hε0.le hε1) γ s')) ∧
(∀ w : S → ℝ, (∀ s, w s =
Finset.univ.sup' Finset.univ_nonempty (fun a => ∑ s', ∑ r ∈ M.R,
((1 - ε) * M.p s a s' r + ∑ a', ε / (Fintype.card A : ℝ) * M.p s a' s' r) *
(r + γ * w s'))) →
w = optimalValue (epsEnv M ε hε0.le hε1) γ) := by sorry
end SuttonBartoRL.EpsSoft
Source
Sutton & Barto, Reinforcement Learning: An Introduction, 2nd ed., MIT Press (2018), ISBN 9780262039246, §5.4, p. 102 (displayed equation for ṽ_*, 'the unique solution to the Bellman optimality equation (3.19) with altered transition probabilities')
Human review
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.