Theorem 1 (Bellman equation) — the robust value function on histories satisfies the robust Bellman equation (11)
ProvedRobustDP.FiniteHorizon.theorem1_bellmandynamic-programmingmarkov-decision-processesp2o-batch-pfp2ap2o-gran-per-chapterp2o-plan-paperp2o-v1robust-optimization
Let be the robust value function of a finite horizon AMDP with horizon , the supremum taken over all history dependent randomized policies. Then for every history , and for and every history with current state ,
This is the robust counterpart of the Bellman recursion; it is where the Rectangularity assumption enters. The ambiguity sets are arbitrary nonempty sets of measures (not necessarily convex), and the state and action sets may be countably infinite.
Formalization Note The page writes in (11); it is the epoch- set , as in (15)–(16). Rewards are bounded (see the model definition).
Preamble
import Mathlib import Definitions.Def_RobustDP_FiniteHorizon_Value
Formal statement
namespace RobustDP.FiniteHorizon
/-- Theorem 1 (Bellman equation) (Iyengar, TR-2002-07, p. 6): the robust value functions
`V*_n`, `n = 0, …, N`, on histories satisfy `V*_N(h_N) = r_N(s_N)` and, for `n = 0, …, N - 1`,
`V*_n(h_n) = sup_{a ∈ A(s_n)} inf_{p ∈ P_n(s_n, a)} E^p[r_n(s_n, a, s) + V*_{n+1}(h_n, a, s)]` (11). -/
theorem theorem1_bellman {S A : Type*} [Countable S] [Countable A] (M : AMDP S A) :
(∀ h : History S A M.N, Vstar M M.N h = M.rN h.cur) ∧
∀ n < M.N, ∀ h : History S A n,
Vstar M n h =
⨆ a : M.Aset n h.cur,
⨅ p : M.P n h.cur a,
expect (p : PMF S) (fun s => M.r n h.cur a s + Vstar M (n + 1) (h.extend a s)) := by sorry
end RobustDP.FiniteHorizon
Source
Iyengar, Robust dynamic programming, CORC Tech Report TR-2002-07 (rev. May 4, 2004), p. 6, Theorem 1 (Bellman equation), eq. (11)
Human review
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.