LQG cost difference from the certainty-equivalent policy
ProvedBertsekasDP.lqg_cost_differenceFor the finite-horizon linear-quadratic problem with imperfect state information, let be the gains of the underlying deterministic problem, the Riccati matrix, and the least-squares state estimate along the closed loop generated by a policy .
Let be certainty-equivalent along its own trajectories, that is at every stage and every outcome of positive probability.
Then for every information-feedback policy the cost gap is exactly a weighted sum of squared control defects:
This is the completion-of-squares step behind the separation theorem: stage by stage every term that does not involve the control cancels between the two policies, and what remains measures only how far departs from applying the deterministic gain to the current estimate. Together with positive semidefiniteness of the stage weight it gives optimality of at once.
A proof should lean on the already-proved lemma BertsekasDP.lqg_estimation_error_policy_independent: the estimation error does not depend on the policy, which is what allows the estimate to replace the true state in the completed square without disturbing the cross terms.
import Mathlib import Definitions.Def_BertsekasLQGModel open Matrix
namespace BertsekasDP
theorem lqg_cost_difference {n m q : ℕ} {Ω₀ ΩW ΩV : Type}
[Fintype Ω₀] [Fintype ΩW] [Fintype ΩV]
(M : BertsekasLQGModel n m q Ω₀ ΩW ΩV)
(πstar : List (Fin q → ℝ) → Fin m → ℝ)
(hstar : ∀ k < M.N, ∀ ω : BertsekasLQGSample M,
BertsekasLQGProb M ω ≠ 0 →
πstar ((BertsekasLQGTraj M πstar k ω).2) =
BertsekasLQGGain M k *ᵥ BertsekasLQGEstimate M πstar k ω)
(π : List (Fin q → ℝ) → Fin m → ℝ) :
BertsekasLQGCost M π - BertsekasLQGCost M πstar =
∑ k ∈ Finset.range M.N, ∑ ω : BertsekasLQGSample M,
BertsekasLQGProb M ω *
((π (BertsekasLQGTraj M π k ω).2 -
BertsekasLQGGain M k *ᵥ BertsekasLQGEstimate M π k ω) ⬝ᵥ
(((M.B k)ᵀ * BertsekasLQGRiccati M (M.N - (k + 1)) * M.B k + M.R k) *ᵥ
(π (BertsekasLQGTraj M π k ω).2 -
BertsekasLQGGain M k *ᵥ BertsekasLQGEstimate M π k ω))) := by
sorry
end BertsekasDP