MIT OpenCourseWare
http://ocw.mit.edu
6.231 Dynamic Programming and Stochastic Control
Fall 2008
For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms.
LECTURE SLIDES ON DYNAMIC PROGRAMMING
BASED ON LECTURES GIVEN AT THE
MASSACHUSETTS INSTITUTE OF TECHNOLOGY
CAMBRIDGE, MASS
FALL 2008
DIMITRI P. BERTSEKAS
These lecture slides are based on the book:
Dynamic Programming and Optimal Con
trol: 3rd edition, Vols. 1 and 2, Athena
Scientic, 2007, by Dimitri P. Bertsekas;
see
http://www.athenasc.com/dpbook.html
Last Updated: December 2008
The slides may be freely reproduced and
distributed.
6.231 DYNAMIC PROGRAMMING
LECTURE 1
LECTURE OUTLINE
Problem Formulation
Examples
The Basic Problem
Signicance of Feedback
DP AS AN OPTIMIZATION METHODOLOGY
Generic optimization problem:
min g(u)
uU
where u is the optimization/decision variable, g(u)
is the cost function, and U is the constraint set
Categories of problems:
Discrete (U is nite) or continuous
Linear (g is linear and U is polyhedral) or
nonlinear
Stochastic or deterministic: In stochastic prob
lems the cost involves a stochastic parameter
w, which is averaged, i.e., it has the form
g(u) = Ew G(u, w)
where w is a random parameter.
DP can deal with complex stochastic problems
where information about w becomes available in
stages, and the decisions are also made in stages
and make use of this information.
BASIC STRUCTURE OF STOCHASTIC DP
Discrete-time system
xk+1 = fk (xk , uk , wk ), k = 0, 1, . . . , N 1
k: Discrete time
xk : State; summarizes past information that
is relevant for future optimization
uk : Control; decision to be selected at time
k from a given set
wk : Random parameter (also called distur
bance or noise depending on the context)
N : Horizon or number of times control is
applied
Cost function that is additive over time
1
N
E gN (xN ) + gk (xk , uk , wk )
k=0
INVENTORY CONTROL EXAMPLE
wk Demand at Period k
Stock at Period k Inventory Stock at Period k + 1
xk System xk + 1 = xk + uk - wk
Stock Ordered at
Period k
Cos t of P e riod k uk
c uk + r (xk + uk - wk)
Discrete-time system
xk+1 = fk (xk , uk , wk ) = xk + uk wk
Cost function that is additive over time
1
N
E gN (xN ) + gk (xk , uk , wk )
k=0
N 1
=E cuk + r(xk + uk wk )
k=0
Optimization over policies: Rules/functions uk =
k (xk ) that map states to controls
ADDITIONAL ASSUMPTIONS
The set of values that the control uk can take
depend at most on xk and not on prior x or u
Probability distribution of wk does not depend
on past values wk1 , . . . , w0 , but may depend on
xk and uk
Otherwise past values of w or x would be
useful for future optimization
Sequence of events envisioned in period k:
xk occurs according to
xk = fk1 xk1 , uk1 , wk1
uk is selected with knowledge of xk , i.e.,
uk Uk (xk )
wk is random and generated according to a
distribution
Pwk (xk , uk )
DETERMINISTIC FINITE-STATE PROBLEMS
Scheduling example: Find optimal sequence of
operations A, B, C, D
A must precede B, and C must precede D
Given startup cost SA and SC , and setup tran
sition cost Cmn from operation m to operation n
ABC CC D
C BC
AB
ACB C BD
C AB
A C CB
C AC AC
CC D ACD C DB
SA
Initial
State
CAB C BD
CA C AB
SC
C C CA
C AD CAD C DB
CC D CD
C DA
CDA C AB
STOCHASTIC FINITE-STATE PROBLEMS
Example: Find two-game chess match strategy
Timid play draws with prob. pd > 0 and loses
with prob. 1 pd . Bold play wins with prob. pw <
1/2 and loses with prob. 1 pw
0.5-0.5 1- 0
pd pw
0-0 0-0
1 - pd 1 - pw
0-1 0-1
1st Game / Timid Play 1st Game / Bold Play
2-0
2-0
pw
pd 1-0
1 - pw
1-0 1.5-0.5
1.5-0.5
1 - pd
pw
pd 0.5-0.5 1-1
0.5-0.5 1-1 1 - pw
1 - pd
pw
pd 0.5-1.5
0.5-1.5
0-1
0-1 1 - pw
1 - pd
0-2
0-2
2nd Game / Timid Play 2nd Game / Bold Play
BASIC PROBLEM
System xk+1 = fk (xk , uk , wk ), k = 0, . . . , N 1
Control contraints uk Uk (xk )
Probability distribution Pk ( | xk , uk ) of wk
Policies = {0 , . . . , N 1 }, where k maps
states xk into controls uk = k (xk ) and is such
that k (xk ) Uk (xk ) for all xk
Expected cost of starting at x0 is
1
N
J (x0 ) = E gN (xN ) + gk (xk , k (xk ), wk )
k=0
Optimal cost function
J (x0 ) = min J (x0 )
Optimal policy satises
J (x0 ) = J (x0 )
When produced by DP, is independent of x0 .
SIGNIFICANCE OF FEEDBACK
Open-loop versus closed-loop policies
wk
u k=km
uk = k(x
(xk )k) System xk
xk + 1 = fk( xk,u k,wk)
m
kk
In deterministic problems open loop is as good
as closed loop
Chess match example; value of information
pd 1.5-0.5
1- 0
1 - pd
pw
Timid Play
1-1
0-0
1 - pw
Bold Play
pw 1- 1
0-1
1 - pw
Bold Play
0-2
VARIANTS OF DP PROBLEMS
Continuous-time problems
Imperfect state information problems
Innite horizon problems
Suboptimal control
LECTURE BREAKDOWN
Finite Horizon Problems (Vol. 1, Ch. 1-6)
Ch. 1: The DP algorithm (2 lectures)
Ch. 2: Deterministic nite-state problems (2
lectures)
Ch. 3: Deterministic continuous-time prob
lems (1 lecture)
Ch. 4: Stochastic DP problems (2 lectures)
Ch. 5: Imperfect state information problems
(2 lectures)
Ch. 6: Suboptimal control (3 lectures)
Innite Horizon Problems - Simple (Vol. 1, Ch.
7, 3 lectures)
Innite Horizon Problems - Advanced (Vol. 2)
Ch. 1: Discounted problems - Computational
methods (2 lectures)
Ch. 2: Stochastic shortest path problems (1
lecture)
Ch. 6: Approximate DP (6 lectures)
A NOTE ON THESE SLIDES
These slides are a teaching aid, not a text
Dont expect a rigorous mathematical develop
ment or precise mathematical statements
Figures are meant to convey and enhance ideas,
not to express them precisely
Omitted proofs and a much fuller discussion
can be found in the text, which these slides follow
6.231 DYNAMIC PROGRAMMING
LECTURE 2
LECTURE OUTLINE
The basic problem
Principle of optimality
DP example: Deterministic problem
DP example: Stochastic problem
The general DP algorithm
State augmentation
BASIC PROBLEM
System xk+1 = fk (xk , uk , wk ), k = 0, . . . , N 1
Control constraints uk Uk (xk )
Probability distribution Pk ( | xk , uk ) of wk
Policies = {0 , . . . , N 1 }, where k maps
states xk into controls uk = k (xk ) and is such
that k (xk ) Uk (xk ) for all xk
Expected cost of starting at x0 is
1
N
J (x0 ) = E gN (xN ) + gk (xk , k (xk ), wk )
k=0
Optimal cost function
J (x0 ) = min J (x0 )
Optimal policy is one that satises
J (x0 ) = J (x0 )
PRINCIPLE OF OPTIMALITY
Let = {0 , 1 , . . . , N 1 } be optimal policy
Consider the tail subproblem whereby we are
at xi at time i and wish to minimize the cost-to
go from time i to time N
1
N
E gN (xN ) + gk xk , k (xk ), wk
k=i
and the tail policy {i , i+1 , . . . , N 1 }
xi Tail Subproblem
0 i N
Principle of optimality: The tail policy is opti
mal for the tail subproblem (optimization of the
future does not depend on what we did in the past)
DP rst solves ALL tail subroblems of nal
stage
At the generic step, it solves ALL tail subprob
lems of a given time length, using the solution of
the tail subproblems of shorter time length
DETERMINISTIC SCHEDULING EXAMPLE
Find optimal sequence of operations A, B, C,
D (A must precede B and C must precede D)
ABC 6
3
AB
ACB 1
2 9
A 4
3 AC
8 ACD 3
5 6
5
Initial
1 0 State
CAB 1
CA 2
3
4
C 3 4
CAD 3
7 6
CD
5 3
CDA 2
Start from the last tail subproblem and go back
wards
At each state-time pair, we record the optimal
cost-to-go and the optimal decision
STOCHASTIC INVENTORY EXAMPLE
wk Demand at Period k
Stock at Period k Inventory Stock at Period k + 1
xk System xk + 1 = xk + uk - wk
Stock Ordered at
Period k
Co s t o f P e rio d k uk
c uk + r (xk + uk - wk)
Tail Subproblems of Length 1:
JN 1 (xN 1 ) = min E cuN 1
uN 1 0 wN 1
+ r(xN 1 + uN 1 wN 1 )
Tail Subproblems of Length N k:
Jk (xk ) = min E cuk + r(xk + uk wk )
uk 0 wk
+ Jk+1 (xk + uk wk )
J0 (x0 ) is opt. cost of initial state x0
DP ALGORITHM
Start with
JN (xN ) = gN (xN ),
and go backwards using
Jk (xk ) = min E gk (xk , uk , wk )
uk Uk (xk ) wk
+ Jk+1 fk (xk , uk , wk ) , k = 0, 1, . . . , N 1.
Then J0 (x0 ), generated at the last step, is equal
to the optimal cost J (x0 ). Also, the policy
= {0 , . . . , N 1 }
where k (xk ) minimizes in the right side above for
each xk and k, is optimal
Justication: Proof by induction that Jk (xk ) is
equal to Jk (xk ), dened as the optimal cost of the
tail subproblem that starts at time k at state xk
Note:
ALL the tail subproblems are solved (in ad
dition to the original problem)
Intensive computational requirements
PROOF OF THE INDUCTION STEP
Let k = k , k+1 , . . . , N 1 denote a tail
policy from time k onward
Assume that Jk+1 (xk+1 ) = Jk+1 (xk+1 ). Then
Jk (xk ) = min E gk xk , k (xk ), wk
(k ,k+1 ) wk ,...,wN 1
N 1
+ gN (xN ) + gi xi , i (xi ), wi
i=k+1
= min E gk xk , k (xk ), wk
k wk
N 1
+ min E gN (xN ) + gi xi , i (xi ), wi
k+1 wk+1 ,...,wN 1
i=k+1
= min E gk xk , k (xk ), wk + Jk+1 fk xk , k (xk ), wk
k wk
= min E gk xk , k (xk ), wk + Jk+1 fk xk , k (xk ), wk
k wk
= min E gk (xk , uk , wk ) + Jk+1 fk (xk , uk , wk )
uk Uk (xk ) wk
= Jk (xk )
LINEAR-QUADRATIC ANALYTICAL EXAMPLE
Initial Final
Temperature x0 Oven 1 x1 Oven 2 Temperature x2
Temperature Temperature
u0 u1
System
xk+1 = (1 a)xk + auk , k = 0, 1,
where a is given scalar from the interval (0, 1)
Cost
r(x2 T )2 + u20 + u21
where r is given positive scalar
DP Algorithm:
J2 (x2 ) = r(x2 T )2
2
J1 (x1 ) = min u21 + r (1 a)x1 + au1 T
u1
2
J0 (x0 ) = min u0 + J1 (1 a)x0 + au0
u0
STATE AUGMENTATION
When assumptions of the basic problem are
violated (e.g., disturbances are correlated, cost is
nonadditive, etc) reformulate/augment the state
Example: Time lags
xk+1 = fk (xk , xk1 , uk , wk )
Introduce additional state variable yk = xk1 .
New system takes the form
xk+1 fk (xk , yk , uk , wk )
=
yk+1 xk
View xk = (xk , yk ) as the new state.
DP algorithm for the reformulated problem:
Jk (xk , xk1 ) = min E gk (xk , uk , wk )
uk Uk (xk ) wk
+ Jk+1 fk (xk , xk1 , uk , wk ), xk
6.231 DYNAMIC PROGRAMMING
LECTURE 3
LECTURE OUTLINE
Deterministic nite-state DP problems
Backward shortest path algorithm
Forward shortest path algorithm
Shortest path examples
Alternative shortest path algorithms
DETERMINISTIC FINITE-STATE PROBLEM
Terminal Arcs
with Cost Equal
to Terminal Cost
...
t
Artificial Terminal
Initial State
... Node
s
...
Stage 0 Stage 1 Stage 2 ... Stage N - 1 Stage N
States <==> Nodes
Controls <==> Arcs
Control sequences (open-loop) <==> paths
from initial state to terminal states
akij : Cost of transition from state i Sk to state
j Sk+1 at time k (view it as length of the arc)
aN
it : Terminal cost of state i SN
Cost of control sequence <==> Cost of the cor
responding path (view it as length of the path)
BACKWARD AND FORWARD DP ALGORITHMS
DP algorithm:
it , i SN ,
JN (i) = aN
k
Jk (i) = min aij +Jk+1 (j) , i Sk , k = 0, . . . , N 1
jSk+1
The optimal cost is J0 (s) and is equal to the
length of the shortest path from s to t
Observation: An optimal path s t is also an
optimal path t s in a reverse shortest path
problem where the direction of each arc is reversed
and its length is left unchanged
Forward DP algorithm (= backward DP algo
rithm for the reverse problem):
JN (j) = a0sj , j S1 ,
N k
Jk (j) = min aij + Jk+1 (i) , j SN k+1
iSN k
N
The optimal cost is J0 (t) = miniSN ait + J1 (i)
View Jk (j) as optimal cost-to-arrive to state j
from initial state s
A NOTE ON FORWARD DP ALGORITHMS
There is no forward DP algorithm for stochastic
problems
Mathematically, for stochastic problems, we
cannot restrict ourselves to open-loop sequences,
so the shortest path viewpoint fails
Conceptually, in the presence of uncertainty,
the concept of optimal-cost-to-arrive at a state
xk does not make sense. For example, it may be
impossible to guarantee (with prob. 1) that any
given state can be reached
By contrast, even in stochastic problems, the
concept of optimal cost-to-go from any state xk
makes clear sense
GENERIC SHORTEST PATH PROBLEMS
{1, 2, . . . , N, t}: nodes of a graph (t: the desti
nation)
aij : cost of moving from node i to node j
Find a shortest (minimum cost) path from each
node i to node t
Assumption: All cycles have nonnegative length.
Then an optimal path need not take more than N
moves
We formulate the problem as one where we re
quire exactly N moves but allow degenerate moves
from a node i to itself with cost aii = 0
Jk (i) = optimal cost of getting from i to t in N k moves
J0 (i): Cost of the optimal path from i to t.
DP algorithm:
Jk (i) = min aij +Jk+1 (j) , k = 0, 1, . . . , N 2,
j=1,...,N
with JN 1 (i) = ait , i = 1, 2, . . . , N
EXAMPLE
State i
Destination
5
5 3 3 3 3
2 3
4
7 5 4 4 4 5
1 4 3
2 4.5 4.5 5.5 7
5 5
2
6 1 2 2 2 2
1
2 3
0.5
0 1 2 3 4 Stage k
(a) (b)
JN 1 (i) = ait , i = 1, 2, . . . , N,
Jk (i) = min aij +Jk+1 (j) , k = 0, 1, . . . , N 2.
j=1,...,N
ESTIMATION / HIDDEN MARKOV MODELS
Markov chain with transition probabilities pij
State transitions are hidden from view
For each transition, we get an (independent)
observation
r(z; i, j): Prob. the observation takes value z
when the state transition is from i to j
Trajectory estimation problem: Given the ob
servation sequence ZN = {z1 , z2 , . . . , zN }, what is
the most likely state transition sequence XN =
{x0 , x1 , . . . , xN } [one that maximizes p(XN | ZN )
over all XN = {x0 , x1 , . . . , xN }].
s x0 x1 x2 xN - 1 xN t
...
...
...
VITERBI ALGORITHM
We have
p(XN , ZN )
p(XN | ZN ) =
p(ZN )
where p(XN , ZN ) and p(ZN ) are the unconditional
probabilities of occurrence of (XN , ZN ) and ZN
Maximizing p(XN | ZN ) is equivalent with max
imizing ln(p(XN , ZN ))
We have
N
p(XN , ZN ) = x0 pxk1 xk r(zk ; xk1 , xk )
k=1
so the problem is equivalent to
N
minimize ln(x0 ) ln pxk1 xk r(zk ; xk1 , xk )
k=1
over all possible sequences {x0 , x1 , . . . , xN }.
This is a shortest path problem.
GENERAL SHORTEST PATH ALGORITHMS
There are many nonDP shortest path algo
rithms. They can all be used to solve deterministic
nite-state problems
They may be preferable than DP if they avoid
calculating the optimal cost-to-go of EVERY state
This is essential for problems with HUGE state
spaces. Such problems arise for example in com
binatorial optimization
A Origin Node s
5 1 15
AB AC AD
20 4 20 3 4 3
ABC ABD ACB ACD ADB ADC
3 3 4 4 20 20
ABCD ABDC ACBD ACDB ADBC ADCB
1 15 5 1
15 5
Artificial Terminal Node t
5 1 15
5 20 4
1 20 3
15 4 3
LABEL CORRECTING METHODS
Given: Origin s, destination t, lengths aij 0.
Idea is to progressively discover shorter paths
from the origin s to every other node i
Notation:
di (label of i): Length of the shortest path
found (initially ds = 0, di = for i
= s)
UPPER: The label dt of the destination
OPEN list: Contains nodes that are cur
rently active in the sense that they are candi
dates for further examination (initially OPEN={s})
Label Correcting Algorithm
Step 1 (Node Removal): Remove a node i from
OPEN and for each child j of i, do step 2
Step 2 (Node Insertion Test): If di + aij <
min{dj , UPPER}, set dj = di + aij and set i to
t, place j in
be the parent of j. In addition, if j =
OPEN if it is not already in OPEN, while if j = t,
set UPPER to the new value di + ait of dt
Step 3 (Termination Test): If OPEN is empty,
terminate; else go to step 1
VISUALIZATION/EXPLANATION
Given: Origin s, destination t, lengths aij 0
di (label of i): Length of the shortest path found
thus far (initially ds = 0, di = for i = s). The
label di is implicitly associated with an s i path
UPPER: The label dt of the destination
OPEN list: Contains active nodes (initially
OPEN={s})
Is di + aij < UPPER ?
YES
(Does the path s --> i --> j
have a chance to be part
of a shorter s --> t path ?)
Set dj = di + aij
INSERT YES
Is di + aij < dj ?
(Is the path s --> i --> j
i j
better than the
OPEN current path s --> j ?)
REMOVE
EXAMPLE
1 A Origin Node s
5 1 15
2 AB 7 AC 10 AD
20 4 20 3 4 3
3 ABC 5 ABD ACB 8 ACD ADB ADC
3 3 4 4 20 20
4 ABCD 6 ABDC ACBD 9 ACDB ADBC ADCB
1 15 5 1
15 5
Artificial Terminal Node t
Iter. No. Node Exiting OPEN OPEN after Iteration UPPER
0
1
1 1
2, 7,10
2 2
3, 5, 7, 10
3 3
4, 5, 7, 10
4 4
5, 7, 10 43
5 5
6, 7, 10 43
6 6
7, 10 13
7 7
8, 10 13
8 8
9, 10 13
9 9
10 13
10 10
Empty 13
Note that some nodes never entered OPEN
6.231 DYNAMIC PROGRAMMING
LECTURE 4
LECTURE OUTLINE
Label correcting methods for shortest paths
Variants of label correcting methods
Branch-and-bound as a shortest path algorithm
LABEL CORRECTING METHODS
Origin s, destination t, lengths aij that are 0
di (label of i): Length of the shortest path
found thus far (initially di = except ds = 0).
The label di is implicitly associated with an s i
path
UPPER: Label dt of the destination
OPEN list: Contains active nodes (initially
OPEN={s})
Is di + aij < UPPER ?
YES
(Does the path s --> i --> j
have a chance to be part
of a shorter s --> t path ?)
Set dj = di + aij
INSERT YES
Is di + aij < dj ?
(Is the path s --> i --> j
i j
better than the
OPEN current path s --> j ?)
REMOVE
VALIDITY OF LABEL CORRECTING METHODS
Proposition: If there exists at least one path
from the origin to the destination, the label cor
recting algorithm terminates with UPPER equal
to the shortest distance from the origin to the des
tination
Proof: (1) Each time a node j enters OPEN, its
label is decreased and becomes equal to the length
of some path from s to j
(2) The number of possible distinct path lengths
is nite, so the number of times a node can enter
OPEN is nite, and the algorithm terminates
(3) Let (s, j1 , j2 , . . . , jk , t) be a shortest path and
let d be the shortest distance. If UPPER > d
at termination, UPPER will also be larger than
the length of all the paths (s, j1 , . . . , jm ), m =
1, . . . , k, throughout the algorithm. Hence, node
jk will never enter the OPEN list with djk equal
to the shortest distance from s to jk . Similarly
node jk1 will never enter the OPEN list with
djk1 equal to the shortest distance from s to jk1 .
Continue to j1 to get a contradiction
MAKING THE METHOD EFFICIENT
Reduce the value of UPPER as quickly as pos
sible
Try to discover good s t paths early in
the course of the algorithm
Keep the number of reentries into OPEN low
Try to remove from OPEN nodes with small
label rst.
Heuristic rationale: if di is small, then dj
when set to di +aij will be accordingly small,
so reentrance of j in the OPEN list is less
likely
Reduce the overhead for selecting the node to
be removed from OPEN
These objectives are often in conict. They give
rise to a large variety of distinct implementations
Good practical strategies try to strike a compro
mise between low overhead and small label node
selection
NODE SELECTION METHODS
Depth-rst search: Remove from the top of
OPEN and insert at the top of OPEN.
Has low memory storage properties (OPEN
is not too long). Reduces UPPER quickly.
Origin Node s
1
2 10
3
6 11 12
4 5 7 8 9 13 14
Destination Node t
Best-rst search (Djikstra): Remove from
OPEN a node with minimum value of label.
Interesting property: Each node will be in
serted in OPEN at most once.
Nodes enter OPEN at minimum distance
Many implementations/approximations
ADVANCED INITIALIZATION
Instead of starting from di = for all i = s,
start with
di = length of some path from s to i (or di = )
OPEN = {i = t | di < }
Motivation: Get a small starting value of UP
PER.
No node with shortest distance initial value
of UPPER will enter OPEN
Good practical idea:
Run a heuristic (or use common sense) to
get a good starting path P from s to t
Use as UPPER the length of P , and as di
the path distances of all nodes i along P
Very useful also in reoptimization, where we
solve the same problem with slightly dierent data
VARIANTS OF LABEL CORRECTING METHODS
If a lower bound hj of the true shortest dis
tance from j to t is known, use the test
di + aij + hj < UPPER
for entry into OPEN, instead of
di + aij < UPPER
The label correcting method with lower bounds as
above is often referred to as the A method.
If an upper bound mj of the true shortest
distance from j to t is known, then if dj + mj <
UPPER, reduce UPPER to dj + mj .
Important use: Branch-and-bound algorithm
for discrete optimization can be viewed as an im
plementation of this last variant.
BRANCH-AND-BOUND METHOD
Problem: Minimize f (x) over a nite set of
feasible solutions X.
Idea of branch-and-bound: Partition the fea
sible set into smaller subsets, and then calculate
certain bounds on the attainable cost within some
of the subsets to eliminate from further consider
ation other subsets.
Bounding Principle
Given two subsets Y1 X and Y2 X, suppose
that we have bounds
f 1 min f (x), f 2 min f (x).
xY1 xY2
Then, if f 2 f 1 , the solutions in Y1 may be dis
regarded since their cost cannot be smaller than
the cost of the best solution in Y2 .
The B+B algorithm can be viewed as a la
bel correcting algorithm, where lower bounds de
ne the arc costs, and upper bounds are used to
strengthen the test for admission to OPEN.
SHORTEST PATH IMPLEMENTATION
Acyclic graph/partition of X into subsets (typ
ically a tree). The leafs consist of single solutions.
Upper/Lower bounds f Y and f Y for the mini-
mum cost over each subset Y can be calculated.
The lower bound of a leaf {x} is f (x)
Each arc (Y, Z) has length f Z f Y
Shortest distance from X to Y = f Y f X
Distance from origin X to a leaf {x} is f (x)f X
Shortest path from X to the set of leafs gives
the optimal cost and optimal solution
UPPER is the smallest f (x) f X out of leaf
nodes {x} examined so far
{1,2,3,4,5}
{1,2,3} {4,5}
{1,2,} {3} {4} {5}
{1} {2}
BRANCH-AND-BOUND ALGORITHM
Step 1: Remove a node Y from OPEN. For each
child Yj of Y , do the following:
Entry Test: If f Y j < UPPER, place Yj in
OPEN.
Update UPPER: If f Y j < UPPER, set UP
PER = f Y j , and if Yj consists of a single
solution, mark that as being the best solu
tion found so far
Step 2: (Termination Test) If OPEN: empty,
terminate; the best solution found so far is opti
mal. Else go to Step 1
It is neither practical nor necessary to generate
a priori the acyclic graph (generate it as you go)
Keys to branch-and-bound:
Generate as sharp as possible upper and lower
bounds at each node
Have a good partitioning and node selection
strategy
Method involves a lot of art, may be prohibitively
time-consuming ... but guaranteed to nd an op
timal solution
6.231 DYNAMIC PROGRAMMING
LECTURE 5
LECTURE OUTLINE
Deterministic continuous-time optimal control
Examples
Connection with the calculus of variations
The Hamilton-Jacobi-Bellman equation as a
continuous-time limit of the DP algorithm
The Hamilton-Jacobi-Bellman equation as a
sucient condition
Examples
PROBLEM FORMULATION
Continuous-time dynamic system:
x(t) = f x(t), u(t) , 0 t T, x(0) : given,
where
x(t) n : state vector at time t
u(t) U m : control vector at time t
U : control constraint set
T : terminal time
Admissible control trajectories u(t) | t [0, T ] :
piecewise continuous functions u(t) | t [0, T ]
with
u(t) U for all t [0, T ]; uniquely determine
x(t) | t [0, T ]
Problem: Find an admissible control trajectory
u(t)| t [0, T ] and corresponding state trajec
tory x(t) | t [0, T ] , that minimizes the cost
T
h x(T ) + g x(t), u(t) dt
f, h, g are assumed continuously dierentiable
EXAMPLE I
Motion control: A unit mass moves on a line
under the inuence of a force u
x(t) = x1 (t), x2 (t) : position and velocity of
the mass at time t
Problem: From a given x1 (0), x2 (0) , bring the
mass near a given nal position-velocity pair
(x1 , x2 ) at time T in the sense:
2 2
minimize x1 (T ) x1 + x2 (T ) x2
subject to the control constraint
|u(t)| 1, for all t [0, T ]
The problem ts the framework with
x1 (t) = x2 (t), x2 (t) = u(t),
2 2
h x(T ) = x1 (T ) x1 + x2 (T ) x2 ,
g x(t), u(t) = 0, for all t [0, T ]
EXAMPLE II
A producer with production rate x(t) at time t
may allocate a portion u(t) of his/her production
rate to reinvestment and 1 u(t) to production of
a storable good. Thus x(t) evolves according to
x(t) = u(t)x(t),
where > 0 is a given constant
The producer wants to maximize the total amount
of product stored
T
1 u(t) x(t)dt
0
subject to
0 u(t) 1, for all t [0, T ]
The initial production rate x(0) is a given pos
itive number
EXAMPLE III (CALCULUS OF VARIATIONS)
T
T
.
Le ngth = 1 + (u (t)) d t
00
2
1 + u(t) 2 dt
x(t) = u(t)
a x(t)
Given
Point Given
Line
0 T t
Find a curve from a given point to a given line
that has minimum length
The problem is
T 2
minimize 1 + x(t) dt
0
subject to x(0) =
Reformulation as an optimal control problem:
T 2
minimize 1 + u(t) dt
0
subject to x(t) = u(t), x(0) =
HAMILTON-JACOBI-BELLMAN EQUATION I
We discretize [0, T ] at times 0, , 2, . . . , N ,
where = T /N , and we let
xk = x(k), uk = u(k), k = 0, 1, . . . , N
We also discretize the system and cost:
N 1
xk+1 = xk +f (xk , uk ), h(xN )+ g(xk , uk )
k=0
We write the DP algorithm for the discretized
problem
J (N , x) = h(x),
J (k, x) = min g(x, u)+J (k+1), x+f (x, u) .
uU
Assume J is dierentiable and Taylor-expand:
J (k, x) = min g(x, u) + J (k, x) + t J (k, x)
uU
+ x J (k, x) f (x, u) + o()
Cancel J (k, x), divide by , and take limit
HAMILTON-JACOBI-BELLMAN EQUATION II
Let J (t, x) be the optimal cost-to-go of the
continuous problem. Assuming the limit is valid
lim J (k, x) = J (t, x), for all t, x,
k, 0, k=t
we obtain for all t, x,
0 = min g(x, u) + t J (t, x) + x J (t, x) f (x, u)
uU
with the boundary condition J (T, x) = h(x)
This is the Hamilton-Jacobi-Bellman (HJB)
equation a partial dierential equation, which is
satised for all time-state pairs (t, x) by the cost-
to-go function J (t, x) (assuming J is dieren
tiable and the preceding informal limiting proce
dure is valid)
Hard to tell a priori if J (t, x) is dierentiable
So we use the HJB Eq. as a verication tool; if
we can solve it for a dierentiable J (t, x), then:
J is the optimal-cost-to-go function
The control (t, x) that minimizes in the
RHS for each (t, x) denes an optimal con
trol
VERIFICATION/SUFFICIENCY THEOREM
Suppose V (t, x) is a solution to the HJB equa
tion; that is, V is continuously dierentiable in t
and x, and is such that for all t, x,
0 = min g(x, u) + t V (t, x) + x V (t, x) f (x, u) ,
uU
V (T, x) = h(x), for all x
Suppose also that (t, x) attains the minimum
above for all t and x
Let x (t) | t [0, T ] and u (t) = t, x (t) ,
t [0, T ], be the corresponding state and control
trajectories
Then
V (t, x) = J (t, x), for all t, x,
and u (t) | t [0, T ] is optimal
PROOF
Let {(u(t), x(t)) | t [0, T ]} be any admissible
control-state trajectory. We have for all t [0, T ]
0 g x(t), u(t) +t V t, x(t) +x V t, x(t) f x(t), u(t) .
Using the system equation x(t) = f x(t), u(t) ,
the RHS of the above is equal to
d
g x(t), u(t) + V (t, x(t))
dt
Integrating this expression over t [0, T ],
T
0 g x(t), u(t) dt + V T, x(T ) V 0, x(0) .
Using V (T, x) = h(x) and x(0) = x(0), we have
T
V 0, x(0) h x(T ) + g x(t), u(t) dt.
If we use u (t) and x (t) in place of u(t) and x(t),
the inequalities becomes equalities, and
T
V 0, x(0) = h x (T ) +
g x (t), u (t) dt
0
EXAMPLE OF THE HJB EQUATION
Consider the scalar system x(t) = u(t), with |u(t)|
2
1 and cost (1/2) x(T ) . The HJB equation is
0 = min t V (t, x)+x V (t, x)u , for all t, x,
|u|1
with the terminal condition V (T, x) = (1/2)x2
Evident candidate for optimality: (t, x) =
sgn(x). Corresponding cost-to-go
1 2
J (t, x) = max 0, |x| (T t) .
2
We verify that J solves the HJB Eq., and that
u = sgn(x) attains the min in the RHS. Indeed,
t J (t, x) = max 0, |x| (T t) ,
x J (t, x) = sgn(x) max 0, |x| (T t) .
Substituting, the HJB Eq. becomes
0 = min 1 + sgn(x) u max 0, |x| (T t)
|u|1
LINEAR QUADRATIC PROBLEM
Consider the n-dimensional linear system
x(t) = Ax(t) + Bu(t),
and the quadratic cost
T
x(T ) QT x(T ) + x(t) Qx(t) + u(t) Ru(t) dt
0
The HJB equation is
0 = minm x Qx+u Ru+t V (t, x)+x V (t, x) (Ax+Bu) ,
u
with the terminal condition V (T, x) = x QT x. We
try a solution of the form
V (t, x) = x K(t)x, K(t) : n n symmetric,
and show that V (t, x) solves the HJB equation if
K(t) = K(t)AA K(t)+K(t)BR1 B K(t)Q
with the terminal condition K(T ) = QT
6.231 DYNAMIC PROGRAMMING
LECTURE 6
LECTURE OUTLINE
Examples of stochastic DP problems
Linear-quadratic problems
Inventory control
LINEAR-QUADRATIC PROBLEMS
System: xk+1 = Ak xk + Bk uk + wk
Quadratic cost
1
N
E xN
QN xN +
(xk
Qk xk + u
k
Rk uk )
w k
k=0,1,...,N 1 k=0
where Qk 0 and Rk > 0 (in the positive (semi)denite
sense).
wk are independent and zero mean
DP algorithm:
JN (xN ) = xN
Q x ,
N N
xk
Qk xk + u
k
Rk uk
Jk (xk ) = min E
uk
+ Jk+1 (Ak xk + Bk uk + wk )
Key facts:
Jk (xk ) is quadratic
Optimal policy {
0 , . . . , N 1
} is linear:
(xk ) = Lk xk
Similar treatment of a number of variants
DERIVATION
By induction verify that
k (xk ) = Lk xk , Jk (xk ) = xk Kk xk + constant,
where Lk are matrices given by
Lk = (Bk Kk+1 Bk + Rk )1 Bk Kk+1 Ak ,
and where Kk are symmetric positive semidenite
matrices given by
KN = QN ,
Kk = Ak Kk+1 Kk+1 Bk (Bk Kk+1 Bk
1
+ Rk ) Bk Kk+1 Ak + Qk .
This is called the discrete-time Riccati equation.
Just like DP, it starts at the terminal time N
and proceeds backwards.
Certainty equivalence holds (optimal policy is
the same as when wk is replaced by its expected
value E{wk } = 0).
ASYMPTOTIC BEHAVIOR OF RICCATI EQUATION
Assume time-independent system and cost per
stage, and some technical assumptions: controla
bility of (A, B) and observability of (A, C) where
Q = C C
The Riccati equation converges limk Kk =
K, where K is pos. denite, and is the unique
(within the class of pos. semidenite matrices) so
lution of the algebraic Riccati equation
K= A K KB(B KB + R)1 B K A+Q
The corresponding steady-state controller (x) =
Lx, where
L = (B KB + R)1 B KA,
is stable in the sense that the matrix (A + BL) of
the closed-loop system
xk+1 = (A + BL)xk + wk
satises limk (A + BL)k = 0.
GRAPHICAL PROOF FOR SCALAR SYSTEMS
2
AR
2 +Q
B F(P )
R
- 2
B P 0 4 50
Pk Pk + 1 P* P
Riccati equation (with Pk = KN k ):
B 2 Pk2
Pk+1 = A2 Pk + Q,
B 2 Pk + R
or Pk+1 = F (Pk ), where
A2 RP
F (P ) = 2 + Q.
B P +R
Note the two steady-state solutions, satisfying
P = F (P ), of which only one is positive.
RANDOM SYSTEM MATRICES
Suppose that {A0 , B0 }, . . . , {AN 1 , BN 1 } are
not known but rather are independent random
matrices that are also independent of the wk
DP algorithm is
JN (xN ) = xN QN xN ,
Jk (xk ) = min E xk Qk xk
uk wk ,Ak ,Bk
+ u k Rk uk + Jk+1 (Ak xk + Bk uk + wk )
Optimal policy k (xk ) = Lk xk , where
1
Lk = Rk + E{Bk Kk+1 Bk } E{Bk Kk+1 Ak },
and where the matrices Kk are given by
KN = QN ,
Kk = E{Ak Kk+1 Ak } E{Ak Kk+1 Bk }
1
Rk + E{Bk Kk+1 Bk } E{Bk Kk+1 Ak } + Qk
PROPERTIES
Certainty equivalence may not hold
Riccati equation may not converge to a steady-
state
F (P )
4 50
R
- 2 0 P
E {B }
We have Pk+1 = F (Pk ), where
E{A2 }RP TP2
F (P ) = +Q+ ,
E{B 2 }P + R E{B 2 }P + R
2 2
T = E{A2 }E{B 2 } E{A} E{B}
INVENTORY CONTROL
xk : stock, uk : inventory purchased, wk : de
mand
xk+1 = xk + uk wk , k = 0, 1, . . . , N 1
Minimize
N 1
E cuk + r(xk + uk wk )
k=0
where, for some p > 0 and h > 0,
r(x) = p max(0, x) + h max(0, x)
DP algorithm:
JN (xN ) = 0,
Jk (xk ) = min cuk +H(xk +uk )+E Jk+1 (xk +uk wk ) ,
uk 0
{r(x + u w)}.
where H(x + u) = E
OPTIMAL POLICY
DP algorithm can be written as
JN (xN ) = 0,
Jk (xk ) = min Gk (xk + uk ) cxk ,
uk 0
where
Gk (y) = cy + H(y) + E Jk+1 (y w) .
If Gk is convex and lim|x| Gk (x) , we
have
S xk if xk < Sk ,
k (xk ) = k
0 if xk Sk ,
where Sk minimizes Gk (y).
This is shown, assuming that c < p, by showing
that Jk is convex for all k, and
lim Jk (x)
|x|
JUSTIFICATION
Graphical inductive proof that Jk is convex.
cy + H(y)
H(y)
c SN - 1
SN - 1 y
- cy
J N - 1(xN - 1)
SN - 1 xN - 1
- cy
6.231 DYNAMIC PROGRAMMING
LECTURE 7
LECTURE OUTLINE
Stopping problems
Scheduling problems
Other applications
PURE STOPPING PROBLEMS
Two possible controls:
Stop (incur a one-time stopping cost, and
move to cost-free and absorbing stop state)
Continue [using xk+1 = fk (xk , wk ) and in
curring the cost-per-stage]
Each policy consists of a partition of the set of
states xk into two regions:
Stop region, where we stop
Continue region, where we continue
CONTINUE STOP
REGION REGION
Stop State
EXAMPLE: ASSET SELLING
A person has an asset, and at k = 0, 1, . . . , N 1
receives a random oer wk
May accept wk and invest the money at xed
rate of interest r, or reject wk and wait for wk+1 .
Must accept the last oer wN 1
DP algorithm (xk : current oer, T : stop state):
xN T,
if xN =
JN (xN ) =
0 if xN = T ,
Jk (xk ) = max (1 + r)N k xk , E Jk+1 (wk ) if xk = T ,
0 if xk = T .
Optimal policy;
accept the oer xk if xk > k ,
reject the oer xk if xk < k ,
where
E Jk+1 (wk )
k = .
(1 + r)N k
FURTHER ANALYSIS
a1
a2
ACCEPT
REJECT
aN - 1
0 1 2 N-1 N k
Can show that k k+1 for all k
Proof: Let Vk (xk ) = Jk (xk )/(1 + r)N k for
xk = T. Then the DP algorithm is VN (xN ) = xN
and
Vk (xk ) = max xk , (1 + r)1 E Vk+1 (w) .
w
We have k = Ew Vk+1 (w) /(1 + r), so it is enough
to show that Vk (x) Vk+1 (x) for all x and k.
Start with VN 1 (x) VN (x) and use the mono
tonicity property of DP.
We can also show that k a as k .
Suggests that for an innite horizon the optimal
policy is stationary.
GENERAL STOPPING PROBLEMS
At time k, we may stop at cost t(xk ) or choose
a control uk U (xk ) and continue
JN (xN ) = t(xN ),
Jk (xk ) = min t(xk ), min E g(xk , uk , wk )
uk U (xk )
+ Jk+1 f (xk , uk , wk )
Optimal to stop at time k for states x in the
set
Tk = x t(x) min E g(x, u, w) + Jk+1 f (x, u, w)
uU (x)
Since JN 1 (x) JN (x), we have Jk (x)
Jk+1 (x) for all k, so
T0 Tk Tk+1 TN 1 .
Interesting case is when all the Tk are equal (to
TN 1 , the set where it is better to stop than to go
one step and stop). Can be shown to be true if
f (x, u, w) TN 1 , for all x TN 1 , u U (x), w.
SCHEDULING PROBLEMS
Set of tasks to perform, the ordering is subject
to optimal choice.
Costs depend on the order
There may be stochastic uncertainty, and prece
dence and resource availability constraints
Some of the hardest combinatorial problems
are of this type (e.g., traveling salesman, vehicle
routing, etc.)
Some special problems admit a simple quasi-
analytical solution method
Optimal policy has an index form, i.e.,
each task has an easily calculable index,
and it is optimal to select the task that has
the maximum value of index (multi-armed
bandit problems - to be discussed later)
Some problems can be solved by an inter
change argument(start with some schedule,
interchange two adjacent tasks, and see what
happens)
EXAMPLE: THE QUIZ PROBLEM
Given a list of N questions. If question i is an
swered correctly (given probability pi ), we receive
reward Ri ; if not the quiz terminates. Choose or
der of questions to maximize expected reward.
Let i and j be the kth and (k + 1)st questions
in an optimally ordered list
L = (i0 , . . . , ik1 , i, j, ik+2 , . . . , iN 1 )
E {reward of L} = E reward of {i0 , . . . , ik1 }
+ pi0 pik1 (pi Ri + pi pj Rj )
+ pi0 pik1 pi pj E reward of {ik+2 , . . . , iN 1 }
Consider the list with i and j interchanged
L = (i0 , . . . , ik1 , j, i, ik+2 , . . . , iN 1 )
Since L is optimal, E{reward of L} E{reward of L },
so it follows that pi Ri + pi pj Rj pj Rj + pj pi Ri
or
pi Ri /(1 pi ) pj Rj /(1 pj ).
MINIMAX CONTROL
Consider basic problem with the dierence that
the disturbance wk instead of being random, it is
just known to belong to a given set Wk (xk , uk ).
Find policy that minimizes the cost
J (x0 ) = max gN (xN )
wk Wk (xk ,k (xk ))
k=0,1,...,N 1
N 1
+ gk xk , k (xk ), wk
k=0
The DP algorithm takes the form
JN (xN ) = gN (xN ),
Jk (xk ) = min max gk (xk , uk , wk )
uk U (xk ) wk Wk (xk ,uk )
+ Jk+1 fk (xk , uk , wk )
(Exercise 1.5 in the text, solution posted on the
www).
UNKNOWN-BUT-BOUNDED CONTROL
For each k, keep the xk of the controlled system
xk+1 = fk xk , k (xk ), wk
inside a given set Xk , the target set at time k.
This is a minimax control problem, where the
cost at stage k is
0 if xk Xk ,
gk (xk ) =
1 if xk
/ Xk .
We must reach at time k the set
X k = xk | Jk (xk ) = 0
in order to be able to maintain the state within
the subsequent target sets.
Start with X N = XN , and for k = 0, 1, . . . , N
1,
X k = xk Xk | there exists uk Uk (xk ) such that
fk (xk , uk , wk ) X k+1 , for all wk Wk (xk , uk )
6.231 DYNAMIC PROGRAMMING
LECTURE 8
LECTURE OUTLINE
Problems with imperfect state info
Reduction to the perfect state info case
Linear quadratic problems
Separation of estimation and control
BASIC PROBLEM WITH IMPERFECT STATE INFO
Same as basic problem of Chapter 1 with one
dierence: the controller, instead of knowing xk ,
receives at each time k an observation of the form
z0 = h0 (x0 , v0 ), zk = hk (xk , uk1 , vk ), k 1
The observation zk belongs to some space Zk .
The random observation disturbance vk is char
acterized by a probability distribution
Pvk ( | xk , . . . , x0 , uk1 , . . . , u0 , wk1 , . . . , w0 , vk1 , . . . , v0 )
The initial state x0 is also random and charac
terized by a probability distribution Px0 .
The probability distribution Pwk ( | xk , uk ) of
wk is given, and it may depend explicitly on xk
and uk but not on w0 , . . . , wk1 , v0 , . . . , vk1 .
The control uk is constrained to a given subset
Uk (this subset does not depend on xk , which is
not assumed known).
INFORMATION VECTOR AND POLICIES
Denote by Ik the information vector , i.e., the
information available at time k:
Ik = (z0 , z1 , . . . , zk , u0 , u1 , . . . , uk1 ), k 1,
I0 = z0
We consider policies = {0 , 1 , . . . , N 1 },
where each function k maps the information vec
tor Ik into a control uk and
k (Ik ) Uk , for all Ik , k 0
We want to nd a policy that minimizes
1
N
J = E gN (xN ) + gk xk , k (Ik ), wk
x0 ,wk ,vk
k=0,...,N 1 k=0
subject to the equations
xk+1 = fk xk , k (Ik ), wk , k 0,
z0 = h0 (x0 , v0 ), zk = hk xk , k1 (Ik1 ), vk , k 1
REFORMULATION AS PERFECT INFO PROBLEM
We have
Ik+1 = (Ik , zk+1 , uk ), k = 0, 1, . . . , N 2, I0 = z0
View this as a dynamic system with state Ik , con
trol uk , and random disturbance zk+1
We have
P (zk+1 | Ik , uk ) = P (zk+1 | Ik , uk , z0 , z1 , . . . , zk ),
since z0 , z1 , . . . , zk are part of the information vec
tor Ik . Thus the probability distribution of zk+1
depends explicitly only on the state Ik and control
uk and not on the prior disturbances zk , . . . , z0
Write
E gk (xk , uk , wk ) = E E gk (xk , uk , wk ) | Ik , uk
xk ,wk
so the cost per stage of the new system is
gk (Ik , uk ) = E gk (xk , uk , wk ) | Ik , uk
xk ,wk
DP ALGORITHM
Writing the DP algorithm for the (reformulated)
perfect state info problem and doing the algebra:
Jk (Ik ) = min E gk (xk , uk , wk )
uk Uk xk , wk , zk+1
+ Jk+1 (Ik , zk+1 , uk ) | Ik , uk
for k = 0, 1, . . . , N 2, and for k = N 1,
JN 1 (IN 1 ) = min
uN 1 UN 1
E gN fN 1 (xN 1 , uN 1 , wN 1 )
xN 1 , wN 1
+ gN 1 (xN 1 , uN 1 , wN 1 ) | IN 1 , uN 1
The optimal cost J is given by
J = E J0 (z0 )
z0
LINEAR-QUADRATIC PROBLEMS
System: xk+1 = Ak xk + Bk uk + wk
Quadratic cost
1
N
E xN QN xN + (xk Qk xk + uk Rk uk )
w k
k=0,1,...,N 1 k=0
where Qk 0 and Rk > 0
Observations
zk = Ck xk + vk , k = 0, 1, . . . , N 1
w0 , . . . , wN 1 , v0 , . . . , vN 1 indep. zero mean
Key fact to show:
Optimal policy {0 , . . . , N 1 } is of the form:
k (Ik ) = Lk E{xk | Ik }
Lk : same as for the perfect state info case
Estimation problem and control problem can
be solved separately
DP ALGORITHM I
Last stage N 1 (supressing index N 1):
JN 1 (IN 1 ) = min ExN 1 ,wN 1 xN 1 QxN 1
uN 1
+ uN 1 RuN 1 + (AxN 1 + BuN 1 + wN 1 )
Q(AxN 1 + BuN 1 + wN 1 ) | IN 1 , uN 1
Since E{wN 1 | IN 1 } = E{wN 1 } = 0, the
minimization involves
min uN 1 (B QB + R)uN 1
uN 1
+ 2E{xN 1 | IN 1 } A QBuN 1
The minimization yields the optimal N 1 :
uN 1 = N 1 (IN 1 ) = LN 1 E{xN 1 | IN 1 }
where
LN 1 = (B QB + R)1 B QA
DP ALGORITHM II
Substituting in the DP algorithm
JN 1 (IN 1 ) = E xN 1 KN 1 xN 1 | IN 1
xN 1
+ E xN 1 E{xN 1 | IN 1 }
xN 1
PN 1 xN 1 E{xN 1 | IN 1 } | IN 1
+ E {wN 1 QN wN 1 },
wN 1
where the matrices KN 1 and PN 1 are given by
PN 1 = AN 1 QN BN 1 (RN 1 + BN
1 QN BN 1 )
1
BN 1 QN AN 1 ,
KN 1 = AN 1 QN AN 1 PN 1 + QN 1
Note the structure of JN 1 : in addition to
the quadratic and constant terms, it involves a
quadratic in the estimation error
xN 1 E{xN 1 | IN 1 }
DP ALGORITHM III
DP equation for period N 2:
JN 2 (IN 2 ) = min E {xN 2 QxN 2
uN 2 xN 2 ,wN 2 ,zN 1
+ uN 2 RuN 2 + JN 1 (IN 1 ) | IN 2 , uN 2 }
= E xN 2 QxN 2 | IN 2
+ min uN 2 RuN 2
uN 2
+ E xN 1 KN 1 xN 1 | IN 2 , uN 2
+E xN 1 E{xN 1 | IN 1 }
PN 1 xN 1 E{xN 1 | IN 1 } | IN 2 , uN 2
+ EwN 1 {wN 1 QN wN 1 }
Key point: We have excluded the next to last
term from the minimization with respect to uN 2
This term turns out to be independent of uN 2
QUALITY OF ESTIMATION LEMMA
For every k, there is a function Mk such that
we have
xk E{xk | Ik } = Mk (x0 , w0 , . . . , wk1 , v0 , . . . , vk ),
independently of the policy being used
The following simplied version of the lemma
conveys the main idea
Simplied Lemma: Let r, u, z be random vari
ables such that r and u are independent, and let
x = r + u. Then
x E{x | z, u} = r E{r | z}
Proof: We have
x E{x | z, u} = r + u E{r + u | z, u}
= r + u E{r | z, u} u
= r E{r | z, u}
= r E{r | z}
APPLYING THE QUALITY OF EST. LEMMA
Using the lemma,
xN 1 E{xN 1 | IN 1 } = N 1 ,
where
N 1 : function of x0 , w0 , . . . , wN 2 , v0 , . . . , vN 1
Since N 1 is independent of uN 2 , the condi
tional expectation of N 1 PN 1 N 1 satises
E{N 1 PN 1 N 1 | IN 2 , uN 2 }
= E{N 1
PN 1 N 1 | IN 2 }
and is independent of uN 2 .
So minimization in the DP algorithm yields
uN 2 = N 2 (IN 2 ) = LN 2 E{xN 2 | IN 2 }
FINAL RESULT
Continuing similarly (using also the quality of
estimation lemma)
k (Ik ) = Lk E{xk | Ik },
where Lk is the same as for perfect state info:
Lk = (Rk + Bk Kk+1 Bk )1 Bk Kk+1 Ak ,
with Kk generated from KN = QN , using
Kk = Ak Kk+1 Ak Pk + Qk ,
Pk = Ak Kk+1 Bk (Rk + Bk Kk+1 Bk )1 Bk Kk+1 Ak
wk vk
xk zk
xk + 1 = Akxk + B ku k + wk z k = C kxk + vk
uk
Delay
uk - 1
uk E{xk | Ik} zk
Lk Estimator
SEPARATION INTERPRETATION
The optimal controller can be decomposed into
(a) An estimator , which uses the data to gener
ate the conditional expectation E{xk | Ik }.
(b) An actuator , which multiplies E{xk | Ik } by
the gain matrix Lk and applies the control
input uk = Lk E{xk | Ik }.
Generically the estimate x of a random vector x
given some information (random vector) I, which
minimizes the mean squared error
Ex {
x x
2 | I} =
x
2 2E{x | I}x +
x
2
is E{x | I} (set to zero the derivative with respect
to x of the above quadratic form).
The estimator portion of the optimal controller
is optimal for the problem of estimating the state
xk assuming the control is not subject to choice.
The actuator portion is optimal for the control
problem assuming perfect state information.
STEADY STATE/IMPLEMENTATION ASPECTS
As N , the solution of the Riccati equation
converges to a steady state and Lk L.
If x0 , wk , and vk are Gaussian, E{xk | Ik } is
a linear function of Ik and is generated by a nice
recursive algorithm, the Kalman lter.
The Kalman lter involves also a Riccati equa
tion, so for N , and a stationary system, it
also has a steady-state structure.
Thus, for Gaussian uncertainty, the solution is
nice and possesses a steady state.
For nonGaussian uncertainty, computing E{xk | Ik }
maybe very dicult, so a suboptimal solution is
typically used.
Most common suboptimal controller: Replace
E{xk | Ik } by the estimate produced by the Kalman
lter (act as if x0 , wk , and vk are Gaussian).
It can be shown that this controller is optimal
within the class of controllers that are linear func
tions of Ik .
6.231 DYNAMIC PROGRAMMING
LECTURE 9
LECTURE OUTLINE
DP for imperfect state info
Sucient statistics
Conditional state distribution as a sucient
statistic
Finite-state systems
Examples
REVIEW: PROBLEM WITH IMPERFECT STATE INF
Instead of knowing xk , we receive observations
z0 = h0 (x0 , v0 ), zk = hk (xk , uk1 , vk ), k 0
Ik : information vector available at time k:
I0 = z0 , Ik = (z0 , z1 , . . . , zk , u0 , u1 , . . . , uk1 ), k 1
Optimization over policies = {0 , 1 , . . . , N 1 },
where k (Ik ) Uk , for all Ik and k.
Find a policy that minimizes
1
N
J = E gN (xN ) + gk xk , k (Ik ), wk
x0 ,wk ,vk
k=0,...,N 1 k=0
subject to the equations
xk+1 = fk xk , k (Ik ), wk , k 0,
z0 = h0 (x0 , v0 ), zk = hk xk , k1 (Ik1 ), vk , k 1
DP ALGORITHM
DP algorithm:
Jk (Ik ) = min E gk (xk , uk , wk )
uk Uk xk , wk , zk+1
+ Jk+1 (Ik , zk+1 , uk ) | Ik , uk
for k = 0, 1, . . . , N 2, and for k = N 1,
JN 1 (IN 1 ) = min
uN 1 UN 1
E gN fN 1 (xN 1 , uN 1 , wN 1 )
xN 1 , wN 1
+ gN 1 (xN 1 , uN 1 , wN 1 ) | IN 1 , uN 1
The optimal cost J is given by
J = E J0 (z0 ) .
z0
SUFFICIENT STATISTICS
Suppose that we can nd a function Sk (Ik ) such
that the right-hand side of the DP algorithm can
be written in terms of some function Hk as
min Hk Sk (Ik ), uk .
uk Uk
Such a function Sk is called a sucient statistic.
An optimal policy obtained by the preceding
minimization can be written as
k (Ik ) = k Sk (Ik ) ,
where k is an appropriate function.
Example of a sucient statistic: Sk (Ik ) = Ik
Another important sucient statistic
Sk (Ik ) = Pxk |Ik
DP ALGORITHM IN TERMS OF PXK |IK
It turns out that Pxk |Ik is generated recursively
by a dynamic system (estimator) of the form
Pxk+1 |Ik+1 = k Pxk |Ik , uk , zk+1
for a suitable function k
DP algorithm can be written as
J k (Pxk |Ik ) = min E gk (xk , uk , wk )
uk Uk xk ,wk ,zk+1
+ J k+1 k (Pxk |Ik , uk , zk+1 ) | Ik , uk
wk vk
uk xk zk
System Measurement
xk + 1 = fk(xk ,u k ,wk) z k = hk(xk ,u k - 1,vk)
uk - 1
Delay
uk - 1
P x k | Ik zk
Actuator Estimator
mk fk - 1
EXAMPLE: A SEARCH PROBLEM
At each period, decide to search or not search
a site that may contain a treasure.
If we search and a treasure is present, we nd
it with prob. and remove it from the site.
Treasures worth: V . Cost of search: C
States: treasure present & treasure not present
Each search can be viewed as an observation of
the state
Denote
pk : prob. of treasure present at the start of time k
with p0 given.
pk evolves at time k according to the equation
pk if not search,
pk+1 = 0 if search and nd treasure,
pk (1)
if search and no treasure.
pk (1)+1pk
SEARCH PROBLEM (CONTINUED)
DP algorithm
J k (pk ) = max 0, C + pk V
pk (1 )
+ (1 pk )J k+1 ,
pk (1 ) + 1 pk
with J N (pN ) = 0.
Can be shown by induction that the functions
J k satisfy
C
J k (pk ) = 0, for all pk
V
Furthermore, it is optimal to search at period
k if and only if
pk V C
(expected reward from the next search the cost
of the search)
FINITE-STATE SYSTEMS
Suppose the system is a nite-state Markov
chain, with states 1, . . . , n.
Then the conditional probability distribution
Pxk |Ik is a vector
P (xk = 1 | Ik ), . . . , P (xk = n | Ik )
The DP algorithm can be executed over the n-
dimensional simplex (state space is not expanding
with increasing k)
When the control and observation spaces are
also nite sets, it turns out that the cost-to-go
functions J k in the DP algorithm are piecewise
linear and concave (Exercise 5.7).
This is conceptually important and also (mod
erately) useful in practice.
INSTRUCTION EXAMPLE
Teaching a student some item. Possible states
are L: Item learned, or L: Item not learned.
Possible decisions: T : Terminate the instruc
tion, or T : Continue the instruction for one period
and then conduct a test that indicates whether the
student has learned the item.
The test has two possible outcomes: R: Student
gives a correct answer, or R: Student gives an
incorrect answer.
Probabilistic structure
1 1
L L R
t r
L L R
1-t 1-r
Cost of instruction is I per period
Cost of terminating instruction; 0 if student has
learned the item, and C > 0 if not.
INSTRUCTION EXAMPLE II
Let pk : prob. student has learned the item given
the test results so far
pk = P (xk |Ik ) = P (xk = L | z0 , z1 , . . . , zk ).
Using Bayes rule we can obtain
pk+1 = (pk , zk+1 )
1(1t)(1pk )
1(1t)(1r)(1pk ) if zk+1 = R,
=
0 if zk+1 = R.
DP algorithm:
J k (pk ) = min (1 pk )C, I + E J k+1 (pk , zk+1 ) .
zk+1
starting with
J N 1 (pN 1 ) = min (1pN 1 )C, I+(1t)(1pN 1 )C .
INSTRUCTION EXAMPLE III
Write the DP algorithm as
J k (pk ) = min (1 pk )C, I + Ak (pk ) ,
where
Ak (pk ) = P (zk+1 = R | Ik )J k+1 (pk , R)
+ P (zk+1 = R | Ik )J k+1 (pk , R)
Can show by induction that Ak (p) are piecewise
linear, concave, monotonically decreasing, with
Ak1 (p) Ak (p) Ak+1 (p), for all p [0, 1].
I + AN - 1(p )
C
I + AN - 2(p )
I + AN - 3(p )
0 a N-1 a N-2 a N-3 1 I 1 p
C
6.231 DYNAMIC PROGRAMMING
LECTURE 10
LECTURE OUTLINE
Suboptimal control
Certainty equivalent control
Limited lookahead policies
Performance bounds
Problem approximation approach
Heuristic cost-to-go approximation
PRACTICAL DIFFICULTIES OF DP
The curse of modeling
The curse of dimensionality
Exponential growth of the computational and
storage requirements as the number of state
variables and control variables increases
Quick explosion of the number of states in
combinatorial problems
Intractability of imperfect state information
problems
There may be real-time solution constraints
A family of problems may be addressed. The
data of the problem to be solved is given with
little advance notice
The problem data may change as the system
is controlled need for on-line replanning
CERTAINTY EQUIVALENT CONTROL (CEC)
Replace the stochastic problem with a deter
ministic problem
At each time k, the uncertain quantities are
xed at some typical values
Implementation for an imperfect info problem.
At each time k:
(1) Compute a state estimate xk (Ik ) given the
current information vector Ik .
(2) Fix the wi , i k, at some wi (xi , ui ). Solve
the deterministic problem:
1
N
minimize gN (xN )+ gi xi , ui , wi (xi , ui )
i=k
subject to xk = xk (Ik ) and for i k,
ui Ui , xi+1 = fi xi , ui , wi (xi , ui ) .
(3) Use as control the rst element in the opti
mal control sequence found.
ALTERNATIVE IMPLEMENTATION
d
Let 0 (x0 ), . . . , N 1 (xN 1 ) be an optimal
d
controller obtained from the DP algorithm for the
deterministic problem
N 1
minimize gN (xN ) + gk xk , k (xk ), wk (xk , uk )
k=0
subject to xk+1 = fk xk , k (xk ), wk (xk , uk ) , k (xk ) Uk
The CEC applies at time k the control input
k (Ik ) = dk xk (Ik )
wk vk
d
u k = mk (x k) System xk Measurement zk
xk + 1 = fk(xk ,u k ,wk) z k = hk(xk ,u k - 1,vk)
uk -1
Delay
uk -1
Actuator x k (Ik ) zk
Estimator
mdk
CEC WITH HEURISTICS
Solve the deterministic equivalent problem
using a heuristic/suboptimal policy
Improved version of this idea: At time k min
imize the stage k cost and plus the heuristic cost
of the remaining stages, i.e., apply at time k a
control uk that minimizes over uk Uk (xk )
gk xk , uk , wk (xk , uk ) +Hk+1 fk xk , uk , wk (xk , uk )
where Hk+1 is the cost-to-go function correspond
ing to the heuristic.
This an example of an important suboptimal
control idea:
Minimize at each stage k the sum of approxima
tions to the current stage cost and the optimal
cost-to-go.
This is a central idea in several other suboptimal
control schemes, such as limited lookahead, and
rollout algorithms.
Hk+1 (xk+1 ) may be computed o-line or on
line.
PARTIALLY STOCHASTIC CEC
Instead of xing all future disturbances to their
typical values, x only some, and treat the rest as
stochastic.
Important special case: Treat an imperfect state
information problem as one of perfect state infor
mation, using an estimate xk (Ik ) of xk as if it were
exact.
Multiaccess Communication Example: Con
sider controlling the slotted Aloha system (dis
cussed in Ch. 5) by optimally choosing the prob
ability of transmission of waiting packets. This
is a hard problem of imperfect state info, whose
perfect state info version is easy.
Natural partially stochastic CEC:
1
k (Ik ) = min 1, ,
xk (Ik )
where xk (Ik ) is an estimate of the current packet
backlog based on the entire past channel history
of successes, idles, and collisions (which is Ik ).
LIMITED LOOKAHEAD POLICIES
One-step lookahead (1SL) policy: At each k and
state xk , use the control k (xk ) that
min
E gk (xk , uk , wk )+Jk+1 fk (xk , uk , wk ) ,
uk Uk (xk )
where
JN = gN .
Jk+1 : approximation to true cost-to-go Jk+1
Two-step lookahead policy: At each k and xk ,
use the control k (xk ) attaining the minimum above,
where the function Jk+1 is obtained using a 1SL
approximation (solve a 2-step DP problem).
If Jk+1 is readily available and the minimiza
tion above is not too hard, the 1SL policy is im
plementable on-line.
Sometimes one also replaces Uk (xk ) above with
a subset of most promising controls U k (xk ).
As the length of lookahead increases, the re
quired computation quickly explodes.
PERFORMANCE BOUNDS FOR 1SL
Let J k (xk ) be the cost-to-go from (xk , k) of the
1SL policy, based on functions Jk .
Assume that for all (xk , k), we have
Jk (xk ) Jk (xk ), (*)
where JN = gN and for all k,
Jk (xk ) = min E gk (xk , uk , wk )
uk Uk (xk )
+ Jk+1 fk (xk , uk , wk ) ,
[so Jk (xk ) is computed along with k (xk )]. Then
J k (xk ) Jk (xk ), for all (xk , k).
Important application: When Jk is the cost-to
go of some heuristic policy (then the 1SL policy is
called the rollout policy).
The bound can be extended to the case where
there is a k in the RHS of (*). Then
J k (xk ) Jk (xk ) + k + + N 1
COMPUTATIONAL ASPECTS
Sometimes nonlinear programming can be used
to calculate the 1SL or the multistep version [par
ticularly when Uk (xk ) is not a discrete set]. Con
nection with stochastic programming methods.
The choice of the approximating functions Jk
is critical, and is calculated in a variety of ways.
Some approaches:
(a) Problem Approximation: Approximate the
optimal cost-to-go with some cost derived
from a related but simpler problem
(b) Heuristic Cost-to-Go Approximation: Ap
proximate the optimal cost-to-go with a func
tion of a suitable parametric form, whose pa
rameters are tuned by some heuristic or sys
tematic scheme (Neuro-Dynamic Program
ming)
(c) Rollout Approach: Approximate the optimal
cost-to-go with the cost of some suboptimal
policy, which is calculated either analytically
or by simulation
PROBLEM APPROXIMATION
Many (problem-dependent) possibilities
Replace uncertain quantities by nominal val
ues, or simplify the calculation of expected
values by limited simulation
Simplify dicult constraints or dynamics
Example of enforced decomposition : Route m
vehicles that move over a graph. Each node has a
value. The rst vehicle that passes through the
node collects its value. Max the total collected
value, subject to initial and nal time constraints
(plus time windows and other constraints).
Usually the 1-vehicle version of the problem is
much simpler. This motivates an approximation
obtained by solving single vehicle problems.
1SL scheme: At time k and state xk (position
of vehicles and collected value nodes), consider
all possible kth moves by the vehicles, and at the
resulting states we approximate the optimal value-
to-go with the value collected by optimizing the
vehicle routes one-at-a-time
HEURISTIC COST-TO-GO APPROXIMATION
Use a cost-to-go approximation from a paramet
ric class J(x, r) where x is the current state and
r = (r1 , . . . , rm ) is a vector of tunable scalars
(weights).
By adjusting the weights, one can change the
shape of the approximation J so that it is rea
sonably close to the true optimal cost-to-go func
tion.
Two key issues:
The choice of parametric class J(x, r) (the
approximation architecture).
Method for tuning the weights (training
the architecture).
Successful application strongly depends on how
these issues are handled, and on insight about the
problem.
Sometimes a simulator is used, particularly
when there is no mathematical model of the sys
tem.
APPROXIMATION ARCHITECTURES
Divided in linear and nonlinear [i.e., linear or
nonlinear dependence of J(x, r) on r].
Linear architectures are easier to train, but non
linear ones (e.g., neural networks) are richer.
Architectures based on feature extraction
Feature Cost Approximation
State x Vector y
Feature Extraction Cost Approximator w/ J (y,r )
Mapping Parameter Vector r
Ideally, the features will encode much of the
nonlinearity that is inherent in the cost-to-go ap
proximated, and the approximation may be quite
accurate without a complicated architecture.
Sometimes the state space is partitioned, and
local features are introduced for each subset of
the partition (they are 0 outside the subset).
With a well-chosen feature vector y(x), we can
use a linear architecture
J(x, r) = J y(x), r = ri yi (x)
i
COMPUTER CHESS
Programs use a feature-based position evaluator
that assigns a score to each move/position
Features:
Material balance,
Mobility,
Safety, etc Score
Feature Weighting
Extraction of Features
Position Evaluator
Most often the weighting of features is linear
but multistep lookahead is involved.
Most often the training is done by trial and
error.
Additional features:
Depth rst search
Variable depth search when dynamic posi
tions are involved
Alpha-beta pruning
6.231 DYNAMIC PROGRAMMING
LECTURE 11
LECTURE OUTLINE
Rollout algorithms
Cost improvement property
Discrete deterministic problems
Sequential consistency and greedy algorithms
Sequential improvement
ROLLOUT ALGORITHMS
One-step lookahead policy: At each k and
state xk , use the control k (xk ) that
min
E gk (xk , uk , wk )+Jk+1 fk (xk , uk , wk ) ,
uk Uk (xk )
where
JN = gN .
Jk+1 : approximation to true cost-to-go Jk+1
Rollout algorithm: When Jk is the cost-to-go
of some heuristic policy (called the base policy)
Cost improvement property (to be shown): The
rollout algorithm achieves no worse (and usually
much better) cost than the base heuristic starting
from the same state.
Main diculty: Calculating Jk (xk ) may be
computationally intensive if the cost-to-go of the
base policy cannot be analytically calculated.
May involve Monte Carlo simulation if the
problem is stochastic.
Things improve in the deterministic case.
EXAMPLE: THE QUIZ PROBLEM
A person is given N questions; answering cor
rectly question i has probability pi , reward vi .
Quiz terminates at the rst incorrect answer.
Problem: Choose the ordering of questions so
as to maximize the total expected reward.
Assuming no other constraints, it is optimal to
use the index policy: Answer questions in decreas
ing order of pi vi /(1 pi ).
With minor changes in the problem, the index
policy need not be optimal. Examples:
A limit (< N ) on the maximum number of
questions that can be answered.
Time windows, sequence-dependent rewards,
precedence constraints.
Rollout with the index policy as base policy:
Convenient because at a given state (subset of
questions already answered), the index policy and
its expected reward can be easily calculated.
Very eective for solving the quiz problem and
important generalizations in scheduling (see Bert
sekas and Castanon, J. of Heuristics, Vol. 5, 1999).
COST IMPROVEMENT PROPERTY
Let
J k (xk ): Cost-to-go of the rollout policy
Hk (xk ): Cost-to-go of the base policy
We claim that J k (xk ) Hk (xk ) for all xk , k
Proof by induction: We have J N (xN ) = HN (xN )
for all xN . Assume that
J k+1 (xk+1 ) Hk+1 (xk+1 ), xk+1 .
Then, for all xk
J k (xk ) = E gk xk , k (xk ), wk + J k+1 fk xk , k (xk ), wk
E gk xk , k (xk ), wk + Hk+1 fk xk , k (xk ), wk
E gk xk , k (xk ), wk + Hk+1 fk xk , k (xk ), wk
= Hk (xk )
Induction hypothesis ==> 1st inequality
Min selection of k (xk ) ==> 2nd inequality
Denition of Hk , k ==> last equality
EXAMPLE: THE BREAKTHROUGH PROBLEM
root
Given a binary tree with N stages.
Each arc is either free or is blocked (crossed out
in the gure).
Problem: Find a free path from the root to the
leaves (such as the one shown with thick lines).
Base heuristic (greedy): Follow the right branch
if free; else follow the left branch if free.
For large N and given prob. of free branch:
the rollout algorithm requires O(N ) times more
computation, but has O(N ) times larger prob. of
nding a free path than the greedy algorithm.
DISCRETE DETERMINISTIC PROBLEMS
Any discrete optimization problem (with nite
number of choices/feasible solutions) can be rep
resented as a sequential decision process by using
a tree.
The leaves of the tree correspond to the feasible
solutions.
The problem can be solved by DP, starting from
the leaves and going back towards the root.
Example: Traveling salesman problem. Find a
minimum cost tour that goes exactly once through
each of N cities.
A Origin Node s
AB AC AD
ABC ABD ACB ACD ADB ADC
ABCD ABDC ACBD ACDB ADBC ADCB
Traveling salesman problem with four cities A, B, C, D
A CLASS OF GENERAL DISCRETE PROBLEMS
Generic problem:
Given a graph with directed arcs
A special node s called the origin
A set of terminal nodes, called destinations,
and a cost g(i) for each destination i.
Find min cost path starting at the origin,
ending at one of the destination nodes.
Base heuristic: For any nondestination node i,
constructs a path (i, i1 , . . . , im , i) starting at i and
ending at one of the destination nodes i. We call
i the projection of i, and we denote H(i) = g(i).
Rollout algorithm: Start at the origin; choose
the successor node with least cost projection
j1 p(j1 )
j2 p(j2 )
j3 p(j3 )
s i1 im-1 im
j4 p(j4 )
Neighbors of im Projections of
Neighbors of im
EXAMPLE: ONE-DIMENSIONAL WALK
A person takes either a unit step to the left or
a unit step to the right. Minimize the cost g(i) of
the point i where he will end up after N steps.
(0,0)
_
(N,-N) (N,0) (N,N)
i
g(i)
_
-N 0 i N-2 N i
Base heuristic: Always go to the right. Rollout
nds the rightmost local minimum.
Base heuristic: Compare always go to the right
and always go the left. Choose the best of the two.
Rollout nds a global minimum.
SEQUENTIAL CONSISTENCY
The base heuristic is sequentially consistent if
all nodes of its path have the same projection, i.e.,
for every node i, whenever it generates the path
(i, i1 , . . . , im , i) starting at i, it also generates the
path (i1 , . . . , im , i) starting at i1 .
Prime example of a sequentially consistent heuris
tic is a greedy algorithm. It uses an estimate F (i)
of the optimal cost starting from i.
At the typical step, given a path (i, i1 , . . . , im ),
where im is not a destination, the algorithm adds
to the path a node im+1 such that
im+1 = arg min F (j)
jN (im )
Prop.: If the base heuristic is sequentially con
sistent, the cost of the rollout algorithm is no more
than the cost of the base heuristic. In particular,
if (s, i1 , . . . , im ) is the rollout path, we have
H(s) H(i1 ) H(im1
) H(im
)
where H(i) = cost of the heuristic starting at i.
Proof: Rollout deviates from the greedy path
only when it discovers an improved path.
SEQUENTIAL IMPROVEMENT
We say that the base heuristic is sequentially
improving if for every non-destination node i, we
have
H(i) min H(j)
j is neighbor of i
If the base heuristic is sequentially improving,
the cost of the rollout algorithm is no more than
the cost of the base heuristic, starting from any
node.
Fortied rollout algorithm:
Simple variant of the rollout algorithm, where
we keep the best path found so far through
the application of the base heuristic.
If the rollout path deviates from the best
path found, then follow the best path.
Can be shown to be a rollout algorithm with
sequentially improving base heuristic for a
slightly modied variant of the original prob
lem.
Has the cost improvement property.
6.231 DYNAMIC PROGRAMMING
LECTURE 12
LECTURE OUTLINE
More on rollout algorithms - Stochastic prob
lems
Simulation-based methods for rollout
Approximations of rollout algorithms
Rolling horizon approximations
Discretization of continuous time
Discretization of continuous space
Other suboptimal approaches
OLLOUT ALGORITHMS - STOCHASTIC PROBLEM
Rollout policy: At each k and state xk , use
the control k (xk ) that
min Qk (xk , uk ),
uk Uk (xk )
where
Qk (xk , uk ) = E gk (xk , uk , wk )+Hk+1 fk (xk , uk , wk )
and Hk+1 (xk+1 ) is the cost-to-go of the heuristic.
Qk (xk , uk ) is called the Q-factor of (xk , uk ),
and for a stochastic problem, its computation may
involve Monte Carlo simulation.
Potential diculty: To minimize over uk the Q-
factor, we must form Q-factor dierences Qk (xk , u)
Qk (xk , u). This dierencing often amplies the
simulation error in the calculation of the Q-factors.
Potential remedy: Compare any two controls
u and u by simulating the Q-factor dierences
Qk (xk , u) Qk (xk , u) directly. This may eect
variance reduction of the simulation-induced er
ror.
Q-FACTOR APPROXIMATION
Here, instead of simulating the Q-factors, we
approximate the costs-to-go Hk+1 (xk+1 ).
Certainty equivalence approach: Given xk , x
future disturbances at typical values wk+1 , . . . , wN 1
and approximate the Q-factors with
Qk (xk , uk ) = E gk (xk , uk , wk )+Hk+1 fk (xk , uk , wk )
where Hk+1 fk (xk , uk , wk ) is the cost of the heuris
tic with the disturbances xed at the typical val
ues.
This is an approximation of Hk+1 fk (xk , uk , wk )
by using a single sample simulation.
Variant of the certainty
equivalence
approach:
Approximate Hk+1 fk (xk , uk , wk ) by simulation
using a small number of representative samples
(scenarios).
Alternative: Calculate (exact or approximate)
values for the cost-to-go of the base policy at a
limited set of state-time pairs, and then approx
imate Hk+1 using an approximation architecture
and a training algorithm or least-squares t.
ROLLING HORIZON APPROACH
This is an l-step lookahead policy where the
cost-to-go approximation is just 0.
Alternatively, the cost-to-go approximation is
the terminal cost function gN .
A short rolling horizon saves computation.
Paradox: It is not true that a longer rolling
horizon always improves performance.
Example: At the initial state, there are two
controls available (1 and 2). At every other state,
there is only one control.
Optimal Trajectory
... ...
1
Current
State
2
... ...
l Stages High Low High
Cost Cost Cost
ROLLING HORIZON COMBINED WITH ROLLOUT
We can use a rolling horizon approximation in
calculating the cost-to-go of the base heuristic.
Because the heuristic is suboptimal, the ratio
nale for a long rolling horizon becomes weaker.
Example: N -stage stopping problem where
the stopping cost is 0, the continuation cost is ei
ther or 1, where 0 < << 1, and the rst state
with continuation cost equal to 1 is state m. Then
the optimal policy is to stop at state m, and the
optimal cost is m.
- e - e ... 1 ...
0 1 2 m N
Stopped State
Consider the heuristic that continues at every
state, and the rollout policy that is based on this
heuristic, with a rolling horizon of l m steps.
It will continue up to the rst m l + 1 stages,
thus compiling a cost of (ml +1). The rollout
performance improves as l becomes shorter!
Limited vision may work to our advantage!
DISCRETIZATION
If the state space and/or control space is con
tinuous/innite, it must be replaced by a nite
discretization.
Need for consistency, i.e., as the discretization
becomes ner, the cost-to-go functions of the dis
cretized problem converge to those of the contin
uous problem.
Pitfalls with discretizing continuous time.
The control constraint set changes a lot as we
pass to the discrete-time approximation.
Continuous-Time Shortest Path Pitfall:
x1 (t) = u1 (t), x2 (t) = u2 (t),
with control constraint ui (t) {1, 1} and cost
T
0
g x(t) dt. Compare with naive discretization
x1 (t+t) = x1 (t)+tu1 (t), x2 (t+t) = x2 (t)+tu2 (t)
with ui (t) {1, 1}.
Convexication eect of continuous time.
SPACE DISCRETIZATION I
Given a discrete-time system with state space
S, consider a nite subset S; for example S could
be a nite grid within a continuous state space S.
Diculty: f (x, u, w)
/ S for x S.
We dene an approximation to the original
problem, with state space S, as follows:
Express each x S as a convex combination of
states in S, i.e.,
x= i (x)xi where i (x) 0, i (x) = 1
xi S i
Dene a reduced dynamic system with state
space S, whereby from each xi S we move to
x = f (xi , u, w) according to the system equation
of the original problem, and then move to xj S
with probabilities j (x).
Dene similarly the corresponding cost per stage
of the transitions of the reduced system.
SPACE DISCRETIZATION II
Let J k (xi ) be the optimal cost-to-go of the re
duced problem from each state xi S and time
k onward.
Approximate the optimal cost-to-go of any x
S for the original problem by
Jk (x) = i (x)J k (xi ),
xi S
and use one-step-lookahead based on Jk .
The choice of coecients i (x) is in principle
arbitrary, but should aim at consistency, i.e., as
the number of states in S increases, Jk (x) should
converge to the optimal cost-to-go of the original
problem.
Interesting observation: While the original prob
lem may be deterministic, the reduced problem is
always stochastic.
Generalization: The set S may be any nite set
(not a subset of S) as long as the coecients i (x)
admit a meaningful interpretation that quanties
the degree of association of x with xi .
OTHER SUBOPTIMAL CONTROL APPROACHES
Minimize the DP equation error: Approxi
mate the optimal cost-to-go functions Jk (xk ) with
functions Jk (xk , rk ), where rk is a vector of un
known parameters, chosen to minimize some form
of error in the DP equations.
Direct approximation of control policies:
For a subset of states xi , i = 1, . . . , m, nd
k (xi ) = arg min E g(xi , uk , wk )
uk Uk (xi )
i
+ Jk+1 fk (x , uk , wk ), rk+1 .
Then nd k (xk , sk ), where sk is a vector of pa
rameters obtained by solving the problem
m
min
k (xi ) k (xi , s)
2 .
s
i=1
Approximation in policy space: Do not
bother with cost-to-go approximations. Parametrize
the policies as k (xk , sk ), and minimize the cost
function of the problem over the parameters sk .
6.231 DYNAMIC PROGRAMMING
LECTURE 13
LECTURE OUTLINE
Innite horizon problems
Stochastic shortest path problems
Bellmans equation
Dynamic programming value iteration
Examples
TYPES OF INFINITE HORIZON PROBLEMS
Same as the basic problem, but:
The number of stages is innite.
The system is stationary.
Total cost problems: Minimize
N 1
J (x0 ) = lim E k g xk , k (xk ), wk
N wk
k=0,1,... k=0
Stochastic shortest path problems ( = 1,
nite-state system with a termination state)
Discounted problems ( < 1, bounded cost
per stage)
Discounted and undiscounted problems with
unbounded cost per stage
Average cost problems
N 1
1
lim E g xk , k (xk ), wk
N N wk
k=0,1,... k=0
PREVIEW OF INFINITE HORIZON RESULTS
Key issue: The relation between the innite and
nite horizon optimal cost-to-go functions.
Illustration: Let = 1 and JN (x) denote the
optimal cost of the N -stage problem, generated
after N DP iterations, starting from J0 (x) 0
Jk+1 (x) = min E g(x, u, w) + Jk f (x, u, w) , x
uU (x) w
Typical results for total cost problems:
J (x) = lim JN (x), x
N
J (x) = min E g(x, u, w) + J f (x, u, w) , x
uU (x) w
(Bellmans Equation). If (x) minimizes in Bell-
mans Eq., the policy {, , . . .} is optimal.
Bellmans Eq. always holds. The other re
sults are true for SSP (and bounded/discounted;
unusual exceptions for other problems).
STOCHASTIC SHORTEST PATH PROBLEMS
Assume nite-state system: States 1, . . . , n and
special cost-free termination state t
Transition probabilities pij (u)
Control constraints u U (i)
Cost of policy = {0 , 1 , . . .} is
N 1
J (i) = lim E g xk , k (xk ) x0 = i
N
k=0
Optimal policy if J (i) = J (i) for all i.
Special notation: For stationary policies =
{, , . . .}, we use J (i) in place of J (i).
Assumption (Termination inevitable): There ex
ists integer m such that for every policy and initial
state, there is positive probability that the termi
nation state will be reached after no more that m
stages; for all , we have
= max P {xm =
t | x0 = i, } < 1
i=1,...,n
FINITENESS OF POLICY COST-TO-GO FUNCTIONS
Let
= max .
Note that depends only on the rst m compo
nents of the policy , so that < 1.
For any and any initial state i
P {x2m = t | x0 = i, } = P {x2m =
t | xm =
t, x0 = i, }
P {xm =
t | x0 = i, } 2
and similarly
P {xkm = t | x0 = i, } k , i = 1, . . . , n
So E{Cost between times km and (k + 1)m 1 }
mk max g(i, u)
i=1,...,n
uU (i)
and
m
J (i) k
m max g(i, u) =
max g(i, u)
i=1,...,n 1 i=1,...,n
k=0 uU (i) uU (i)
MAIN RESULT
Given any initial conditions J0 (1), . . . , J0 (n),
the sequence Jk (i) generated by the DP iteration
n
Jk+1 (i) = min g(i, u) + pij (u)Jk (j) , i
uU (i)
j=1
converges to the optimal cost J (i) for each i.
Bellmans equation has J (i) as unique solution:
n
J (i) = min g(i, u) + pij (u)J (j) , i
uU (i)
j=1
A stationary policy is optimal if and only
if for every state i, (i) attains the minimum in
Bellmans equation.
Key proof idea: The tail of the cost series,
E g xk , k (xk )
k=mK
vanishes as K increases to .
OUTLINE OF PROOF THAT JN J
Assume for simplicity that J0 (i) = 0 for all i,
and for any K 1, write the cost of any policy
as
mK1
J (x0 ) = E g xk , k (xk ) + E g xk , k (xk )
k=0 k=mK
mK1
E g xk , k (xk ) + k m max |g(i, u)|
i,u
k=0 k=K
Take the minimum of both sides over to obtain
K
J (x0 ) JmK (x0 ) + m max |g(i, u)|.
1 i,u
Similarly, we have
K
JmK (x0 ) m max |g(i, u)| J (x0 ).
1 i,u
It follows that limK JmK (x0 ) = J (x0 ).
It can be seen that JmK (x0 ) and JmK+k (x0 )
converge to the same limit for k = 1, . . . , m 1,
so JN (x0 ) J (x0 )
EXAMPLE I
Minimizing the E{Time to Termination}: Let
g(i, u) = 1, i = 1, . . . , n, u U (i)
Under our assumptions, the costs J (i) uniquely
solve Bellmans equation, which has the form
n
J (i) = min 1 + pij (u)J (j) , i = 1, . . . , n
uU (i)
j=1
In the special case where there is only one con
trol at each state, J (i) is the mean rst passage
time from i to t. These times, denoted mi , are the
unique solution of the equations
n
mi = 1 + pij mj , i = 1, . . . , n.
j=1
EXAMPLE II
A spider and a y move along a straight line.
The y moves one unit to the left with proba
bility p, one unit to the right with probability p,
and stays where it is with probability 1 2p.
The spider moves one unit towards the y if its
distance from the y is more that one unit.
If the spider is one unit away from the y, it
will either move one unit towards the y or stay
where it is.
If the spider and the y land in the same posi
tion, the spider captures the y.
The spiders objective is to capture the y in
minimum expected time.
This is an SSP w/ state = the distance be
tween spider and y (i = 1, . . . , n and t = 0 the
termination state).
There is control choice only at state 1.
EXAMPLE II (CONTINUED)
For M = move, and M = dont move
p11 (M ) = 2p, p10 (M ) = 1 2p,
p12 (M ) = p, p11 (M ) = 1 2p, p10 (M ) = p,
pii = p, pi(i1) = 12p, pi(i2) = p, i 2,
with all other transition probabilities being 0.
Bellmans equation:
J (i) = 1+pJ (i)+(12p)J (i1)+pJ (i2), i2
J (1) = 1 + min 2pJ (1), pJ (2) + (1 2p)J (1)
w/ J (0) = 0. Substituting J (2) in Eq. for J (1),
p (1 2p)J (1)
J (1) = 1+min 2pJ (1), + .
1 p 1p
Work from here to nd that when one unit away
from the y it is optimal not to move if and only
if p 1/3.
6.231 DYNAMIC PROGRAMMING
LECTURE 14
LECTURE OUTLINE
Review of stochastic shortest path problems
Computational methods
Value iteration
Policy iteration
Linear programming
Discounted problems as special case of SSP
STOCHASTIC SHORTEST PATH PROBLEMS
Assume nite-state system: States 1, . . . , n and
special cost-free termination state t
Transition probabilities pij (u)
Control constraints u U (i)
Cost of policy = {0 , 1 , . . .} is
N 1
J (i) = lim E g xk , k (xk ) x0 = i
N
k=0
Optimal policy if J (i) = J (i) for all i.
Special notation: For stationary policies =
{, , . . .}, we use J (i) in place of J (i).
Assumption (Termination inevitable): There ex
ists integer m such that for every policy and initial
state, there is positive probability that the termi
nation state will be reached after no more that m
stages; for all , we have
= max P {xm =
t | x0 = i, } < 1
i=1,...,n
MAIN RESULT
Given any initial conditions J0 (1), . . . , J0 (n),
the sequence Jk (i) generated by value iteration
n
Jk+1 (i) = min g(i, u) + pij (u)Jk (j) , i
uU (i)
j=1
converges to the optimal cost J (i) for each i.
Bellmans equation has J (i) as unique solution:
n
J (i) = min g(i, u) + pij (u)J (j) , i
uU (i)
j=1
A stationary policy is optimal if and only
if for every state i, (i) attains the minimum in
Bellmans equation.
Key proof idea: The tail of the cost series,
E g xk , k (xk )
k=mK
vanishes as K increases to .
BELLMANS EQUATION FOR A SINGLE POLICY
Consider a stationary policy
J (i), i = 1, . . . , n, are the unique solution of
the linear system of n equations
n
J (i) = g i, (i) + pij (i) J (j), i = 1, . . . , n
j=1
Proof: This is just Bellmans equation for a
modied/restricted problem where there is only
one policy, the stationary policy , i.e., the control
constraint set at state i is U (i) = {(i)}
The equation provides a way to compute J (i),
i = 1, . . . , n, but the computation is substantial
for large n [O(n3 )]
For large n, value iteration may be preferable.
(Typical case of a large linear system of equations,
where an iterative method may be better than a
direct solution method.)
POLICY ITERATION
It generates a sequence 1 , 2 , . . . of stationary
policies, starting with any stationary policy 0 .
At the typical iteration, given k , we perform
a policy evaluation step, that computes the Jk (i)
as the solution of the (linear) system of equations
n
k
J(i) = g i, (i) + k
pij (i) J(j), i = 1, . . . , n,
j=1
in the n unknowns J(1), . . . , J(n). We then per
form a policy improvement step, which computes
a new policy k+1 as
n
k+1 (i) = arg min g(i, u) + pij (u)Jk (j) , i
uU (i)
j=1
The algorithm stops when Jk (i) = Jk+1 (i) for
all i
Note the connection with the rollout algorithm,
which is just a single policy iteration
JUSTIFICATION OF POLICY ITERATION
We can show thatJk+1 (i) Jk (i) for all i, k
Fix k and consider the sequence generated by
n
JN +1 (i) = g i, k+1 (i) + pij k+1 (i) JN (j)
j=1
where J0 (i) = Jk (i). We have
n
k
J0 (i) = g i, (i) + k
pij (i) J0 (j)
j=1
g i, k+1 (i) + pij k+1 (i) J0 (j) = J1 (i)
j=1
Using the monotonicity property of DP,
J0 (i) J1 (i) JN (i) JN +1 (i) , i
Since JN (i) Jk+1 (i) as N , we obtain
Jk (i) = J0 (i) Jk+1 (i) for all i. Also if Jk (i) =
Jk+1 (i) for all i, Jk solves Bellmans equation
and is therefore equal to J
A policy cannot be repeated, there are nitely
many stationary policies, so the algorithm termi
nates with an optimal policy
LINEAR PROGRAMMING
We claim that J is the largest J that satises
the constraint
n
J(i) g(i, u) + pij (u)J(j), (1)
j=1
for all i = 1, . . . , n and u U (i).
Proof: If we use value iteration to generate
a se
quence of vectors Jk = Jk (1), . . . , Jk (n) starting
with a J0 such that
n
J0 (i) min g(i, u) + pij (u)J0 (j) , i
uU (i)
j=1
Then, Jk (i) Jk+1 (i) for all k and i (mono
tonicity property of DP) and Jk J , so that
J0 (i) J (i) for all i.
So J = (J (1), . . . , J (n)) is "
the solution of the
n
linear program of maximizing i=1 J(i) subject
to the constraint (1).
LINEAR PROGRAMMING (CONTINUED)
J (2)
2
J (2) = g(2,u ) + p 21(u 2)J (1) + p 22(u 2 )J (2)
J* = (J*(1),J*(2))
J (2) = g(2,u 1 ) + p 21(u 1 )J (1) + p 22(u 1 )J (2)
J (1) = g(1,u 2 ) + p 11(u 2)J (1) + p 12(u 2)J (2)
J (1) = g(1 ,u1 ) + p 11(u 1 )J (1) + p 12(u 1 )J (2)
0 J (1)
Drawback: For large n the dimension of this
program is very large. Furthermore, the num
ber of constraints is equal to the number of state-
control pairs.
DISCOUNTED PROBLEMS
Assume a discount factor < 1.
Conversion to an SSP problem.
p ij(u) a p ij(u)
p ii(u) i j p jj(u ) a p ii(u) i j a p jj(u)
p ji(u) a p ji(u)
1-a 1-a
Value iteration converges to J for all initial J0 :
n
Jk+1 (i) = min g(i, u) + pij (u)Jk (j) , i
uU (i)
j=1
J is the unique solution of Bellmans equation:
n
J (i) = min g(i, u) + pij (u)J (j) , i
uU (i)
j=1
DISCOUNTED PROBLEMS (CONTINUED)
Policy iteration converges nitely to an optimal
policy, and linear programming works.
Example: Asset selling over an innite horizon.
If accepted, the oer xk of period k, is invested at
a rate of interest r.
By depreciating the sale amount to period 0
dollars, we view (1 + r)k xk as the reward for
selling the asset in period k at a price xk , where
r > 0 is the rate of interest. So the discount factor
is = 1/(1 + r).
J is the unique solution of Bellmans equation
E J (w)
J (x) = max x, .
1+r
An optimal policy is to sell if and only if the cur
rent oer xk is greater than or equal to , where
E J (w)
= .
1+r
6.231 DYNAMIC PROGRAMMING
LECTURE 15
LECTURE OUTLINE
Average cost per stage problems
Connection with stochastic shortest path prob
lems
Bellmans equation
Value iteration
Policy iteration
AVERAGE COST PER STAGE PROBLEM
Stationary system with nite number of states
and controls
Minimize over policies = {0 , 1 , ...}
N 1
1
J (x0 ) = lim E g xk , k (xk ), wk
N N wk
k=0,1,... k=0
Important characteristics (not shared by other
types of innite horizon problems)
For any xed K, the cost incurred up to time
K does not matter (only the state that we
are at time K matters)
If all states communicate the optimal cost
is independent of the initial state [if we can
go from i to j in nite expected time, we
must have J (i) J (j)]. So J (i) for
all i.
Because communication issues are so im
portant, the methodology relies heavily on
Markov chain theory.
CONNECTION WITH SSP
Assumption: State n is such that for some
integer m > 0, and for all initial states and all
policies, n is visited with positive probability at
least once within the rst m stages.
Divide the sequence of generated states into
cycles marked by successive visits to n.
Each of the cycles can be viewed as a state
trajectory of a corresponding stochastic shortest
path problem with n as the termination state.
p ij(u) p ij(u)
p ii(u) i p ji(u) j p jj(u) p ii(u) i p ji(u) j p jj(u)
p n i(u) p n j(u)
p n i(u) p n j(u)
p in(u) p jn(u) n
p in(u) p jn(u)
n
p n n(u)
p n n(u)
Special
State n
t
Artificial Termination State
Let the cost at i of the SSP be g(i, u)
We will show that
Av. Cost Probl. A Min Cost Cycle Probl. SSP Probl.
CONNECTION WITH SSP (CONTINUED)
Consider a minimum cycle cost problem: Find
a stationary policy that minimizes the expected
cost per transition within a cycle
Cnn ()
Nnn ()
where for a xed ,
Cnn () : E{cost from n up to the rst return to n}
Nnn () : E{time from n up to the rst return to n}
Intuitively, optimal cycle cost = , so
Cnn () Nnn () 0,
with equality if is optimal.
Thus, the optimal must minimize over the
expression Cnn () Nnn () , which is the ex
pected cost of starting from n in the SSP with
stage costs g(i, u) . Also: Optimal SSP Cost
= 0.
BELLMANS EQUATION
Let h (i) the optimal cost of this SSP problem
when starting at the nontermination states i =
1, . . . , n. Then, h (1), . . . , h (n) solve uniquely
the corresponding Bellmans equation
n1
h (i) = min g(i, u) + pij (u)h (j) , i
uU (i)
j=1
If is an optimal stationary policy for the SSP
problem, we have
h (n) = Cnn ( ) Nnn ( ) = 0
Combining these equations, we have
n
+h (i) = min g(i, u) + pij (u)h (j) , i
uU (i)
j=1
If (i) attains the min for each i, is optimal.
MORE ON THE CONNECTION WITH SSP
Interpretation of h (i) as a relative or dieren
tial cost: It is the minimum of
E{cost to reach n from i for the rst time}
E{cost if the stage cost were and not g(i, u)}
We dont know , so we cant solve the aver
age cost problem as an SSP problem. But similar
value and policy iteration algorithms are possible.
Example: A manufacturer at each time:
Receives an order with prob. p and no order
with prob. 1 p.
May process all unlled orders at cost K >
0, or process no order at all. The cost per
unlled order at each time is c > 0.
Maximum number of orders that can remain
unlled is n.
Find a processing policy that minimizes the
total expected cost per stage.
EXAMPLE (CONTINUED)
State = number of unlled orders. State 0 is
the special state for the SSP formulation.
Bellmans equation: For states i = 0, 1, . . . , n1
+ h (i) = min K + (1 p)h (0) + ph (1),
ci + (1 p)h (i) + ph (i + 1) ,
and for state n
+ h (n) = K + (1 p)h (0) + ph (1)
Optimal policy: Process i unlled orders if
K+(1p)h (0)+ph (1) ci+(1p)h (i)+ph (i+1).
Intuitively, h (i) is monotonically nondecreas
ing with i (interpret h (i) as optimal costs-to-go
for the associate SSP problem). So a threshold pol
icy is optimal: process the orders if their number
exceeds some threshold integer m .
VALUE ITERATION
Natural value iteration method: Generate op
timal k-stage costs by DP algorithm starting with
any J0 :
n
Jk+1 (i) = min g(i, u) + pij (u)Jk (j) , i
uU (i)
j=1
Result: limk Jk (i)/k = for all i.
Proof outline: Let Jk be so generated from the
initial condition J0 = h . Then, by induction,
Jk (i) = k + h (i), i, k.
On the other hand,
Jk (i) J (i) max J0 (j) h (j), i
k j=1,...,n
since Jk (i) and Jk (i) are optimal costs for two
k-stage problems that dier only in the terminal
cost functions, which are J0 and h .
RELATIVE VALUE ITERATION
The value iteration method just described has
two drawbacks:
Since typically some components of Jk di
verge to or , calculating limk Jk (i)/k
is numerically cumbersome.
The method will not compute a correspond
ing dierential cost vector h .
We can bypass both diculties by subtracting
a constant from all components of the vector Jk ,
so that the dierence, call it hk , remains bounded.
Relative value iteration algorithm: Pick any
state s, and iterate according to
n
hk+1 (i) = min g(i, u) + pij (u)hk (j)
uU (i)
j=1
n
min g(s, u) + psj (u)hk (j) , i
uU (s)
j=1
Then we can show hk h (under an extra
assumption).
POLICY ITERATION
At the typical iteration, we have a stationary
k .
Policy evaluation: Compute k and hk (i) of k ,
using the n + 1 equations hk (n) = 0 and
n
k k k
+ h (i) = g i, (i) + pij (i) hk (j), i
k
j=1
Policy improvement: Find for all i
n
k+1 (i) = arg min g(i, u) + pij (u)hk (j)
uU (i)
j=1
If k+1 = k and hk+1 (i) = hk (i) for all i, stop;
otherwise, repeat with k+1 replacing k .
Result: For each k, we either have k+1 < k
or
k+1 = k , hk+1 (i) hk (i), i = 1, . . . , n.
The algorithm terminates with an optimal policy.
6.231 DYNAMIC PROGRAMMING
LECTURE 16
LECTURE OUTLINE
Control of continuous-time Markov chains
Semi-Markov problems
Problem formulation Equivalence to discrete-
time problems
Discounted problems
Average cost problems
CONTINUOUS-TIME MARKOV CHAINS
Stationary system with nite number of states
and controls
State transitions occur at discrete times
Control applied at these discrete times and stays
constant between transitions
Time between transitions is random
Cost accumulates in continuous time (may also
be incurred at the time of transition)
Example: Admission control in a system with
restricted capacity (e.g., a communication link)
Customer arrivals: a Poisson process
Customers entering the system, depart after
exponentially distributed time
Upon arrival we must decide whether to ad
mit or to block a customer
There is a cost for blocking a customer
For each customer that is in the system, there
is a customer-dependent reward per unit time
Minimize time-discounted or average cost
PROBLEM FORMULATION
x(t) and u(t): State and control at time t
tk : Time of kth transition (t0 = 0)
xk = x(tk ); x(t) = xk for tk t < tk+1 .
uk = u(tk ); u(t) = uk for tk t < tk+1 .
No transition probabilities; instead transition
distributions (quantify the uncertainty about both
transition time and next state)
Qij (, u) = P {tk+1 tk , xk+1 = j | xk = i, uk = u}
Two important formulas:
(1) Transition probabilities are specied by
pij (u) = P {xk+1 = j | xk = i, uk = u} = lim Qij (, u)
(2) The Cumulative Distribution Function (CDF)
of given i, j, u is (assuming pij (u) > 0)
Qij (, u)
P {tk+1 tk | xk = i, xk+1 = j, uk = u} =
pij (u)
Thus, Qij (, u) can be viewed as a scaled CDF
EXPONENTIAL TRANSITION DISTRIBUTIONS
Important example of transition distributions:
Qij (, u) = pij (u) 1 e i
(u) ,
where pij (u) are transition probabilities, and i (u)
is called the transition rate at state i.
Interpretation: If the system is in state i and
control u is applied
the next state will be j with probability pij (u)
the time between the transition to state i
and the transition to the next state j is ex
ponentially distributed with parameter i (u)
(independently of j):
P {transition time interval > | i, u} = ei (u)
The exponential distribution is memoryless.
This implies that for a given policy, the system
is a continuous-time Markov chain (the future de
pends on the past through the present).
Without the memoryless property, the Markov
property holds only at the times of transition.
COST STRUCTURES
There is cost g(i, u) per unit time, i.e.
g(i, u)dt = the cost incurred in time dt
There may be an extra instantaneous cost
g(i, u) at the time of a transition (lets ignore this
for the moment)
Total discounted cost of = {0 , 1 , . . .} start
ing from state i (with discount factor > 0)
N 1
tk+1
t
lim E e g xk , k (xk ) dt x0 = i
k=0 tk
Average cost per unit time
N 1
tk+1
1
lim E g xk , k (xk ) dt x0 = i
N E{tN } tk
k=0
We will see that both problems have equivalent
discrete-time versions.
A NOTE ON NOTATION
The scaled CDF Qij (, u) can be used to model
discrete, continuous, and mixed distributions for
the transition time .
Generally, expected values of functions of can
be written as integrals involving d Qij (, u). For
example, the conditional expected value of given
i, j, and u is written as
d Qij (, u)
E{ | i, j, u} =
0 pij (u)
If Qij (, u) is continuous with respect to , its
derivative
dQij
qij (, u) = (, u)
d
can be viewed as a scaled density function. Ex
pected values of functions of can then be written
in terms of qij (, u). For example
qij (, u)
E{ | i, j, u} = d
0 pij (u)
If Qij (, u) is discontinuous and staircase-like,
expected values can be written as summations.
DISCOUNTED PROBLEMS COST CALCULATION
For a policy = {0 , 1 , . . .}, write
J (i) = E{1st transition cost}+E{e J1 (j) | i, 0 (i)}
where J1 (j) is the cost-to-go of the policy 1 =
{1 , 2 , . . .}
We calculate the two costs in the RHS. The
E{1st transition cost}, if u is applied at state i, is
G(i, u) = Ej E {1st transition cost | j}
n
dQij (, u)
= pij (u) et g(i, u)dt
0 0
pij (u)
j=1
n
1 e
= g(i, u)dQij (, u)
0
j=1
Thus the E{1st transition cost} is
n
1 e
G i, 0 (i) = g i, 0 (i) dQij , 0 (i)
0
j=1
COST CALCULATION (CONTINUED)
Also the expected (discounted) cost from the
next state j is
E e J1 (j) | i, 0 (i)
= Ej E{e | i, 0 (i), j}J1 (j) | i, 0 (i)
n
dQij (, u)
= pij (u) e J1 (j)
j=1
0 pij (u)
n
= mij (i) J1 (j)
j=1
where mij (u) is given by
mij (u) = e dQij (, u) < dQij (, u) = pij (u)
0 0
and can be viewed as the eective discount fac
tor [the analog of pij (u) in the discrete-time
case].
So J (i) can be written as
n
J (i) = G i, 0 (i) + mij 0 (i) J1 (j)
j=1
EQUIVALENCE TO AN SSP
Similar to the discrete-time case, introduce a
stochastic shortest path problem with an articial
termination state t
Under control u, from state i the system moves
to state j with probability mij (u) and
"nto the ter
mination state t with probability 1 j=1 mij (u)
Bellmans equation: For i = 1, . . . , n,
n
J (i) = min G(i, u) + mij (u)J (j)
uU (i)
j=1
Analogs of value iteration, policy iteration, and
linear programming.
If in addition to the cost per unit time g, there
is an extra (instantaneous) one-stage cost g(i, u),
Bellmans equation becomes
n
J (i) = min g(i, u) + G(i, u) + mij (u)J (j)
uU (i)
j=1
MANUFACTURERS EXAMPLE REVISITED
A manufacturer receives orders with interarrival
times uniformly distributed in [0, max ].
He may process all unlled orders at cost K > 0,
or process none. The cost per unit time of an
unlled order is c. Max number of unlled orders
is n.
The nonzero transition distributions are
Qi1 (, Fill) = Qi(i+1) (, Not Fill) = min 1,
max
The one-stage expected cost G is
G(i, Fill) = 0, G(i, Not Fill) = c i,
where
n
1 e max
1 e
= dQij (, u) = d
j=1 0 0 max
There is an instantaneous cost
g(i, Fill) = K, g(i, Not Fill) = 0
MANUFACTURERS EXAMPLE CONTINUED
The eective discount factors mij (u) in Bell-
mans Equation are
mi1 (Fill) = mi(i+1) (Not Fill) = ,
where
max
e 1 emax
= e dQij (, u) = d =
0 0
max max
Bellmans equation has the form
J (i)
= min K+J (1), ci+J (i+1) , i = 1, 2, . . .
As in the discrete-time case, we can conclude
that there exists an optimal threshold i :
ll the orders <==> their number i exceeds i
AVERAGE COST
Minimize
1 tN
lim E g x(t), u(t) dt
N E{tN } 0
assuming there is a special state that is recurrent
under all policies
Total expected cost of a transition
G(i, u) = g(i, u) i (u),
where i (u): Expected transition time.
We now apply the SSP argument used for the
discrete-time case. Divide trajectory into cycles
marked by successive visits to n. The cost at (i, u)
is G(i, u) i (u), where is the optimal ex
pected cost per unit time. Each cycle is viewed as
a state trajectory of a corresponding SSP problem
with the termination state being essentially n.
So Bellmans Eq. for the average cost problem:
n
h (i) = min G(i, u) i (u) + pij (u)h (j)
uU (i)
j=1
AVERAGE COST MANUFACTURERS EXAMPLE
The expected transition times are
max
i (Fill) = i (Not Fill) =
2
the expected transition cost is
c i max
G(i, Fill) = 0, G(i, Not Fill) =
2
and there is also the instantaneous cost
g(i, Fill) = K, g(i, Not Fill) = 0
Bellmans equation:
max
h (i) = min K + h (1),
2
max max
ci + h (i + 1)
2 2
Again it can be shown that a threshold policy
is optimal.
6.231 DYNAMIC PROGRAMMING
LECTURE 17
LECTURE OUTLINE
We start a four-lecture sequence on advanced
innite horizon DP
We allow innite state space, so the stochastic
shortest path framework cannot be used any more
Results are rigorous assuming a countable dis
turbance space
This includes deterministic problems with
arbitrary state space, and countable state
Markov chains
Otherwise the mathematics of measure the
ory make analysis dicult, although the
nal results are essentially the same as for
countable disturbance space
The discounted problem is the proper starting
point for this analysis
The central mathematical structure is that the
DP mapping is a contraction mapping (instead of
existence of a termination state)
DISCOUNTED PROBLEMS W/ BOUNDED COST
Stationary system with arbitrary state space
xk+1 = f (xk , uk , wk ), k = 0, 1, . . .
Cost of a policy = {0 , 1 , . . .}
N 1
J (x0 ) = lim E k g xk , k (xk ), wk
N wk
k=0,1,... k=0
with < 1, and for some M , we have |g(x, u, w)|
M for all (x, u, w)
Shorthand notation for DP mappings (operate
on functions of state to produce other functions)
(T J)(x) = min E g(x, u, w) + J f (x, u, w) , x
uU (x) w
T J is the optimal cost function for the one-stage
problem with stage cost g and terminal cost J.
For any stationary policy
(T J)(x) = E g x, (x), w + J f (x, (x), w) , x
w
SHORTHAND THEORY A SUMMARY
Cost function expressions [with J0 (x) 0]
J (x) = lim (T0 T1 Tk J0 )(x), J (x) = lim (Tk J0 )(x)
k k
Bellmans equation: J = T J , J = T J
Optimality condition:
: optimal <==> T J = T J
Value iteration: For any (bounded) J and all
x,
J (x) = lim (T k J)(x)
Policy iteration: Given k ,
Policy evaluation: Find Jk by solving
Jk = Tk Jk
Policy improvement: Find k+1 such that
T k+1 Jk = T Jk
TWO KEY PROPERTIES
Monotonicity property: For any functions J
and J such that J(x) J (x) for all x, and any
(T J)(x) (T J )(x), x,
(T J)(x) (T J )(x), x.
Additivity property: For any J, any scalar
r, and any
T (J + re) (x) = (T J)(x) + r, x,
T (J + re) (x) = (T J)(x) + r, x,
where e is the unit function [e(x) 1].
CONVERGENCE OF VALUE ITERATION
If J0 0,
J (x) = lim (T N J0 )(x), for all x
N
Proof: For any initial state x0 , and policy =
{0 , 1 , . . .},
J (x0 ) = E k g xk , k (xk ), wk
k=0
N 1
=E k g xk , k (xk ), wk
k=0
+E k g xk , k (xk ), wk
k=N
The tail portion satises
N M
E k g xk , k (xk ), wk ,
1
k=N
where M |g(x, u, w)|. Take the min over of
both sides. Q.E.D.
BELLMANS EQUATION
The optimal cost function J satises Bellmans
Eq., i.e. J = T (J ).
Proof: For all x and N ,
NM NM
J (x) (T N J0 )(x) J (x) + ,
1 1
where J0 (x) 0 and M |g(x, u, w)|. Applying
T to this relation, and using Monotonicity and
Additivity,
N +1 M
(T J )(x) (T N +1 J0 )(x)
1
N +1 M
(T J )(x) +
1
Taking the limit as N and using the fact
lim (T N +1 J0 )(x) = J (x)
N
we obtain J = T J . Q.E.D.
THE CONTRACTION PROPERTY
Contraction property: For any bounded func
tions J and J , and any ,
max (T J)(x) (T J )(x) max J(x) J (x),
x x
max(T J)(x)(T J )(x) maxJ(x)J (x).
x x
Proof: Denote c = maxxS J(x) J (x). Then
J(x) c J (x) J(x) + c, x
Apply T to both sides, and use the Monotonicity
and Additivity properties:
(T J)(x) c (T J )(x) (T J)(x) + c, x
Hence
(T J)(x) (T J )(x) c, x.
Q.E.D.
IMPLICATIONS OF CONTRACTION PROPERTY
Bellmans equation J = T J has a unique solu
tion, namely J , and for any bounded J, we have
lim (T k J)(x) = J (x), x
k
Proof: Use
max (T J)(x) J (x) max (T J)(x) (T J )(x)
k k k
x x
k maxJ(x) J (x)
x
Convergence rate: For all k,
max (T J)(x) J (x) max J(x) J (x)
k k
x x
Also, for each stationary , J is the unique
solution of J = T J and
lim (Tk J)(x) = J (x), x,
k
for any bounded J.
NEC. AND SUFFICIENT OPT. CONDITION
A stationary policy is optimal if and only if
(x) attains the minimum in Bellmans equation
for each x; i.e.,
T J = T J .
Proof: If T J = T J , then using Bellmans equa
tion (J = T J ), we have
J = T J ,
so by uniqueness of the xed point of T , we obtain
J = J ; i.e., is optimal.
Conversely, if the stationary policy is optimal,
we have J = J , so
J = T J .
Combining this with Bellmans equation (J =
T J ), we obtain T J = T J . Q.E.D.
COMPUTATIONAL METHODS
Value iteration and variants
Gauss-Seidel version
Approximate value iteration
Policy iteration and variants
Combination with value iteration
Modied policy iteration
Asynchronous policy iteration
Linear programming
n
maximize J(i)
i=1
n
subject to J(i) g(i, u) + pij (u)J(j), (i, u)
j=1
Approximate linear programming: use in place
of J(i) a low-dim. basis function representation
m
J(i, r) = rk wk (i)
k=1
and low-dim. LP (with many constraints)
6.231 DYNAMIC PROGRAMMING
LECTURE 18
LECTURE OUTLINE
One-step lookahead and rollout for discounted
problems
Approximate policy iteration: Innite state
space
Contraction mappings in DP
Discounted problems: Countable state space
with unbounded costs
ONE-STEP LOOKAHEAD POLICIES
At state i use the control (i) that attains the
minimum in
n
(T J)(i) = min g(i, u) + pij (u)J(j) ,
uU (i)
j=1
where J is some approximation to J .
Assume that
T J J + e,
for some scalar , where e is the unit vector. Then
J T J +
eJ+
e.
1 1
Assume that
J e J J + e,
for some scalar . Then
2
J J + e.
1
APPLICATION TO ROLLOUT POLICIES
Let 1 , . . . , M be stationary policies, and let
J(i) = min J1 (i) , . . . , JM (i) , i.
Then, for all i, and m = 1, . . . , M , we have
n
(T J)(i) = min g(i, u) + pij (u)J(j)
uU (i)
j=1
n
min g(i, u) + pij (u)Jm (j)
uU (i)
j=1
Jm (i)
Taking minimum over m,
(T J)(i) J(i), i.
Using the preceding slide result with = 0,
J (i) J (i) = min J1 (i) , . . . , JM (i) ,
i,
i.e., the rollout policy improves over each m .
APPROXIMATE POLICY ITERATION
Suppose that the policy evaluation is approxi
mate, according to,
max |Jk (x) Jk (x)| , k = 0, 1, . . .
x
and policy improvement is approximate, according
to,
max |(Tk+1 Jk )(x)(T Jk )(x)| , k = 0, 1, . . .
x
where and are some positive scalars.
Error Bound: The sequence {k } generated
by approximate policy iteration satises
+ 2
lim sup max Jk (x) J (x)
k xS (1 )2
Typical practical behavior: The method makes
steady progress up to a point and then the iterates
Jk oscillate within a neighborhood of J .
CONTRACTION MAPPINGS
Given a real vector space Y with a norm
(i.e.,
y
0 for all y Y ,
y
= 0 if and only if
y = 0, and
y + z
y
+
z
for all y, z Y )
A function F : Y
Y is said to be a contraction
mapping if for some (0, 1), we have
F (y) F (z)
y z
, for all y, z Y.
is called the modulus of contraction of F .
For m > 1, we say that F is an m-stage con
traction if F m is a contraction.
Important example: Let S be a set (e.g., state
space in DP), v : S
be a positive-valued
function. Let B(S) be the set of all functions J :
S
such that J(s)/v(s) is bounded over s.
We dene a norm on B(S), called the weighted
sup-norm, by
|J(s)|
J
= max .
sS v(s)
Important special case: The discounted prob
lem mappings T and T [for v(s) 1, = ].
CONTRACTION MAPPING FIXED-POINT TH.
Contraction Mapping Fixed-Point Theo
rem: If F : B(S)
B(S) is a contraction with
modulus (0, 1), then there exists a unique
J B(S) such that
J = F J .
Furthermore, if J is any function in B(S), then
{F k J} converges to J and we have
F k J J
k
J J
, k = 1, 2, . . . .
Similar result if F is an m-stage contraction
mapping.
This is a special case of a general result for
contraction mappings F : Y
Y over normed
vector spaces Y that are complete: every sequence
{yk } that is Cauchy (satises
ym yn
0 as
m, n ) converges.
The space B(S) is complete (see the text for a
proof).
A DP-LIKE CONTRACTION MAPPING I
Let S = {1, 2, . . .}, and let F : B(S)
B(S)
be a linear mapping of the form
(F J)(i) = b(i) + a(i, j) J(j), i
jS
where b(i) and a(i, j) are some scalars. Then F is
a contraction with modulus if
"
jS |a(i, j)| v(j)
, i
v(i)
Let F : B(S)
B(S) be a mapping of the form
(F J)(i) = min(F J)(i), i
M
where M is parameter set, and for each M ,
F is a contraction mapping from B(S) to B(S)
with modulus . Then F is a contraction mapping
with modulus .
A DP-LIKE CONTRACTION MAPPING II
Let S = {1, 2, . . .}, let M be a parameter set,
and for each M , let
(F J)(i) = b(i, ) + a(i, j, ) J(j), i
jS
We have F J B(S) for all J B(S) provided
b B(S) and V B(S), where
b = b(1, ), b(2, ), . . . , V = V (1, ), V (2, ), . . . ,
V (i, ) = a(i, j, ) v(j), i
jS
Consider the mapping F
(F J)(i) = min(F J)(i), i
M
We have F J B(S) for all J B(S), provided
b B(S) and V B(S), where
b = b(1), b(2), . . . , V = V (1), V (2), . . . ,
with b(i) = maxM b(i, ) and V (i) = maxM V (i, ).
DISCOUNTED DP - UNBOUNDED COST I
State space S = {1, 2, . . .}, transition probabil
ities pij (u), cost g(i, u).
Weighted sup-norm
|J(i)|
J
= max
iS vi
on B(S): sequences J(i) such that
J
< .
Assumptions:
(a) G = G(1), G(2), . . . B(S), where
G(i) = max g(i, u), i
uU (i)
(b) V = V (1), V (2), . . . B(S), where
V (i) = max pij (u) vj , i
uU (i)
jS
(c) There exists an integer m 1 and a scalar
(0, 1) such that for every policy ,
"
jS P (xm = j | x0 = i, ) vj
m , i
vi
DISCOUNTED DP - UNBOUNDED COST II
Example: Let vi = i for all i = 1, 2, . . .
Assumption (a) is satised if the maximum ex
pected absolute cost per stage at state i grows no
faster than linearly with i.
Assumption (b) states that the maximum ex
pected next state following state i,
max E{j | i, u},
uU (i)
also grows no faster than linearly with i.
Assumption (c) is satised if
m P (xm = j | x0 = i, ) j i, i
jS
It requires that for all , the expected value of the
state obtained m stages after reaching state i is no
more than m i.
If there is bounded upward expected change of
the state starting at i, there exists m suciently
large so that Assumption (c) is satised.
DISCOUNTED DP - UNBOUNDED COST III
Consider the DP mappings T and T ,
(T J)(i) = g i, (i) + pij (i) J(j), i,
jS
(T J)(i) = min g(i, u) + pij (u)J(j) , i
uU (i)
jS
Proposition: Under the earlier assumptions,
T and T map B(S) into B(S), and are m-stage
contraction mappings with modulus .
The m-stage contraction properties can be used
to essentially replicate the analysis for the case of
bounded cost, and to show the standard results:
The value iteration method Jk+1 = T Jk con
verges to the unique solution J of Bellmans
equation J = T J.
The unique solution J of Bellmans equa
tion is the optimal cost function.
A stationary policy is optimal if and only
if T J = T J .
6.231 DYNAMIC PROGRAMMING
LECTURE 19
LECTURE OUTLINE
Undiscounted problems
Stochastic shortest path problems (SSP)
Proper and improper policies
Analysis and computational methods for SSP
Pathologies of SSP
UNDISCOUNTED PROBLEMS
System: xk+1 = f (xk , uk , wk )
Cost of a policy = {0 , 1 , . . .}
N 1
J (x0 ) = lim E g xk , k (xk ), wk
N wk
k=0,1,... k=0
Shorthand notation for DP mappings
(T J)(x) = min E g(x, u, w) + J f (x, u, w) , x
uU (x) w
For any stationary policy
(T J)(x) = E g x, (x), w + J f (x, (x), w) , x
w
Neither T nor T are contractions in general,
but their monotonicity is helpful.
SSP problems provide a soft boundary be
tween the easy nite-state discounted problems
and the hard undiscounted problems.
They share features of both.
Some of the nice theory is recovered because
of the termination state.
SSP THEORY SUMMARY I
As earlier, we have a cost-free term. state t, a
nite number of states 1, . . . , n, and nite number
of controls, but we will make weaker assumptions.
Mappings T and T (modied to account for
termination state t):
(T J)(i) = min g(i, u) + pij (u)J(j) , i = 1, . . . , n,
uU (i)
j=1
n
(T J)(i) = g i, (i) + pij (i) J(j), i = 1, . . . , n.
j=1
Denition: A stationary policy is called
proper, if under , from every state i, there is
a positive probability path that leads to t.
Important fact: If is proper, T is contrac
tion with respect to some weighted max norm
1 1
max |(T J)(i)(T J )(i)| max |J(i)J (i)|
i vi i vi
T is similarly a contraction if all are proper
(the case discussed in the text, Ch. 7, Vol. I).
SSP THEORY SUMMARY II
The theory can be pushed one step further.
Assume that:
(a) There exists at least one proper policy
(b) For each improper , J (i) = for some i
Then T is not necessarily a contraction, but:
J is the unique solution of Bellmans Equ.
is optimal if and only if T J = T J
limk (T k J)(i) = J (i) for all i
Policy iteration terminates with an optimal
policy, if started with a proper policy
Example: Deterministic shortest path problem
with a single destination t.
States <=> nodes; Controls <=> arcs
Termination state <=> the destination
Assumption (a) <=> every node is con
nected to the destination
Assumption (b) <=> all cycle costs > 0
SSP ANALYSIS I
For a proper policy , J is the unique xed
point of T , and Tk J J for all J (holds by the
theory of Vol. I, Section 7.2)
A stationary satisfying J T J for some J
must be proper - true because
k1
J Tk J = Pk J + Pm g
m=0
and some component of the term on the right
blows up if is improper (by our assumptions).
Consequence: T can have at most one xed
point.
Proof: If J and J are two solutions, select
and such that J = T J = T J and J = T J =
T J . By preceding assertion, and must be
proper, and J = J and J = J . Also
J = T k J Tk J J = J
Similarly, J J, so J = J .
SSP ANALYSIS II
We now show that T has a xed point, and also
that policy iteration converges.
Generate a sequence {k } by policy iteration
starting from a proper policy 0 .
1 is proper and J0 J1 since
J0 = T0 J0 T J0 = T1 J0 Tk1 J0 J1
Thus {Jk } is nonincreasing, some policy will
be repeated, with J = T J . So J is a xed point
of T .
Next show T k J J for all J, i.e., value it
eration converges to the same limit as policy iter
ation. (Sketch: True if J = J , argue using the
properness of to show that the terminal cost
dierence J J does not matter.)
To show J = J , for any = {0 , 1 , . . .}
T0 Tk1 J0 T k J0 ,
where J0 0. Take lim sup as k , to obtain
J J , so is optimal and J = J .
SSP ANALYSIS III
If all policies are proper (the assumption of
Section 7.1, Vol. I), T and T are contractions
with respect to a weighted sup norm.
Proof: Consider a new SSP problem where the
transition probabilities are the same as in the orig
inal, but the transition costs are all equal to 1.
Let J be the corresponding optimal cost vector.
For all ,
n
n
J(i) = 1+ min pij (u)J(j) 1+ pij (i) J(j)
uU (i)
j=1 j=1
For vi = J(i), we have vi 1, and for all ,
n
pij (i) vj vi 1 vi , i = 1, . . . , n,
j=1
where
vi 1
= max < 1.
i=1,...,n vi
This implies contraction of T and T by the results
of the preceding lecture.
PATHOLOGIES I: DETERM. SHORTEST PATHS
If there is a cycle with cost = 0, Bellmans equa
tion has an innite number of solutions. Example:
1
1 2 t
We have J (1) = J (2) = 1.
Bellmans equation is
J(1) = J(2), J(2) = min J(1), 1].
It has J as solution.
Set of solutions of Bellmans equation:
J | J(1) = J(2) 1 .
PATHOLOGIES II: DETERM. SHORTEST PATHS
If there is a cycle with cost < 0, Bellmans
equation has no solution [among functions J with
< J(i) < for all i]. Example:
0
1
1 2 t
-1
We have J (1) = J (2) = .
Bellmans equation is
J(1) = J(2), J(2) = min 1 + J(1), 1].
There is no solution [among functions J with
< J(i) < for all i].
Bellmans equation has as solution J (1) =
J (2) = [within the larger class of functions
J() that can take the value for some (or
all) states]. This situation can be generalized (see
Chapter 3 of Vol. 2 of the text).
PATHOLOGIES III: THE BLACKMAILER
Two states, state 1 and the termination state t.
At state 1, choose a control u (0, 1] (the
blackmail amount demanded) at a cost u, and
move to t with probability u2 , or stay in 1 with
probability 1 u2 .
Every stationary policy is proper, but the con
trol set in not nite.
For any stationary with (1) = u, we have
J (1) = u + (1 u2 )J (1)
from which J (1) = u1
Thus J (1) = , and there is no optimal
stationary policy.
It turns out that a nonstationary policy is op
timal: demand k (1) = /(k + 1) at time k, with
(0, 1/2). (Blackmailer requests diminishing
amounts over time, which add to ; the proba
bility of the victims refusal diminishes at a much
faster rate.)
6.231 DYNAMIC PROGRAMMING
LECTURE 20
LECTURE OUTLINE
We begin a 6-lecture series on approximate DP
for large/intractable problems.
We will mainly follow Chapter 6, Vol. 2 of
the text (with supplemental refs). Note: An up
dated/expanded version of Chapter 6, Vol. 2 is
posted in the internet.
In this lecture we classify/overview the main
approaches:
Rollout/Simulation-based single policy iter
ation (we will not discuss this further)
Approximation in value space (approximate
policy iteration, Q-Learning, Bellman error
approach, approximate LP)
Approximation in policy space (policy para
metrization, gradient methods)
Problem approximation (simplication - ag
gregation - limited lookahead) - we will briey
discuss this today
APPROXIMATION IN VALUE SPACE
We will mainly adopt an n-state discounted
model (the easiest case - but think of HUGE n).
Extensions to SSP and average cost are possible
(but more quirky). We will discuss them later.
Main idea: Approximate J or J with an ap
proximation architecture
J (i) J(i, r) or J (i) J(i, r)
Principal example: Subspace approximation
s
J(i, r) = (i) r = k (i)rk
k=1
where 1 , . . . , s are basis functions spanning an
s-dimensional subspace of n
Key issue: How to optimize r with low/s-dimensi
onal operations only
Other than manual/trial-and-error approaches
(e.g/, as in computer chess), the only other ap
proaches are simulation-based. They are collec
tively known as neuro-dynamic programming or
reinforcement learning
APPROX. IN VALUE SPACE - APPROACHES
Policy evaluation/Policy improvement
Uses simulation algorithms to approximate
the cost J of the current policy
Approximation of the optimal cost function J
Q-Learning: Use a simulation algorithm to
approximate the optimal costs J (i) or the
Q-factors
n
Q (i, u) = g(i, u) + pij (u)J (j)
j=1
Bellman error approach: Find r to
2
min Ei J(i, r) (T J)(i, r)
r
where Ei {} is taken with respect to some
distribution
Approximate LP (discussed earlier - supple
mented with clever schemes to overcome the
large number of constraints issue)
POLICY EVALUATE/POLICY IMPROVE
An example
System Simulator
~ -
Least-Squares J(j,r)
Optimization
_ Decision Generator
Decision (i) State i
Cost-to-Go Approximator
~
Supplies Values J(j,r)
The least squares optimization may be re
placed by a dierent algorithm
POLICY EVALUATE/POLICY IMPROVE I
Approximate the cost of the current policy by
using a simulation method.
Direct policy evaluation - Cost samples gen
erated by simulation, and optimization by
least squares
Indirect policy evaluation - solving the pro
jected equation r = T (r) where is
projection w/ respect to a suitable weighted
Euclidean norm
J T(r)
Projection
Projection on S
on S
r = T(r)
J
0 0
S: Subspace spanned by basis functions S: Subspace spanned by basis functions
Direct Mehod: Projection of cost vector J Indirect method: Solving a projected
form of Bellmans equation
Batch and incremental methods
Regular and optimistic policy iteration
POLICY EVALUATE/POLICY IMPROVE II
Projected equation methods are preferred and
have rich theory
TD(): Stochastic iterative algorithm for solv
ing r = T (r)
LSPE(): A simulation-based form of projected
value iteration
rk+1 = T (rk ) + simulation noise
Value Iterate Value Iterate
T(rk) = g + Prk T(rk) = g + Prk
Projection Projection
on S on S
rk+1
rk+1
rk rk
Simulation error
0 0
S: Subspace spanned by basis functions S: Subspace spanned by basis functions
Projected Value Iteration (PVI) Least Squares Policy Evaluation (LSPE)
LSTD(): Solves a simulation-based approxi
mation r = T (r) of the projected equation,
using a linear system solver (e.g., Gaussian elimi
nation/Matlab)
APPROXIMATION IN POLICY SPACE
We parameterize the set of policies by a vector
r = (r1 , . . . , rs ) and we optimize the cost over r.
In a special case of this approach, the param
eterization of the policies is indirect, through an
approximate cost function.
A cost approximation architecture parame
terized by r, denes a policy dependent on r
via the minimization in Bellmans equation.
Discounted problem example:
Denote by gi (r), i = 1, . . . , n, the one-stage
expected cost starting at state i, and by pij (r)
the transition probabilities.
Each value of r denes a stationary policy,
with cost starting at state i denoted by Ji (r).
Use a gradient (or other) method to mini
mize over r
n
J(r) = q(i)Ji (r),
i=1
where q(1), . . . , q(n) is some probability dis
tribution over the states.
PROBLEM APPROXIMATION - AGGREGATION
Another major idea in ADP is to approximate
the cost-to-go function of the problem with the
cost-to-go function of a simpler problem. The sim
plication is often ad-hoc/problem dependent.
Aggregation is a (semi-)systematic approach for
problem approximation. Main elements:
Introduce a few aggregate states, viewed
as the states of an aggregate system
Dene transition probabilities and costs of
the aggregate system, by associating multi
ple states of the original system with each
aggregate state
Solve (exactly or approximately) the ag
gregate problem by any kind of value or pol
icy iteration method (including simulation-
based methods, such as Q-learning)
Use the optimal cost of the aggregate prob
lem to approximate the optimal cost of the
original problem
Example (Hard Aggregation): We are given a
partition of the state space into subsets of states,
and each subset is viewed as an aggregate state
(each state belongs to one and only one subset).
AGGREGATION/DISAGGREGATION PROBS
The aggregate system transition probabilities
are dened via two (somewhat arbitrary) choices:
For each original system state i and aggregate
state m, the aggregation probability aim
This may be roughly interpreted as the de
gree of membership of i in the aggregate
state m.
In the hard aggregation example, aim = 1 if
state i belongs to aggregate state/subset m.
For each aggregate state m and original system
state i, the disaggregation probability dmi
This may be roughly interpreted as the de
gree to which i is representative of m.
In the hard aggregation example (assuming
all states that belong to aggregate state/subset
m are equally representative) dmi = 1/|m|
for each state i that belongs to aggregate
state/subset m, where |m| is the cardinality
(number of states) of m.
AGGREGATION EXAMPLES
Hard aggregation (each original system state
is associated with one aggregate state):
pij(u)
Aggregation i j Original System
Probabilities States
1 1/4 1 1/3
Disaggregation
Probabilities m n Aggregate States
Soft aggregation (each original system state is
associated with multiple aggregate states):
pij(u)
Aggregation i j Original System
Probabilities 1/3 States
1/4 2/3
1/3
1/2
Disaggregation 1/2
Probabilities m n Aggregate States
Coarse grid (each aggregate state is an original
system state):
pij(u)
Aggregation i j Original System
Probabilities 1/3 States
1/2 1/2 1
2/3 1
Disaggregation
Probabilities
m n Aggregate States
AGGREGATE TRANSITION PROBABILITIES
Let the aggregation and disaggregation proba
bilities, aim and dmi , and the original transition
probabilities pij (u) be given.
The transition probability from aggregate state
m to aggregate state n under u is
qmn (u) = dmi pij (u)ajn
i j
and the transition cost is similarly dened.
This corresponds to a probabilistic process that
can be simulated as follows:
From aggregate state m, generate original
state i according to dmi .
Generate a transition from i to j according
to pij (u), with cost g(i, u, j).
From original state j, generate aggregate state
n according to ajn .
After solving for the optimal costs J(m) of the
aggregate problem, the costs of the original prob
lem are approximated by
J(i) = aim J(m)
m
6.231 DYNAMIC PROGRAMMING
LECTURE 21
LECTURE OUTLINE
Discounted problems - Approximate policy eval
uation/policy improvement
Direct approach - Least squares
Batch and incremental gradient methods
Implementation using TD
Optimistic policy iteration
Exploration issues
THEORETICAL BASIS
If policies are approximately evaluated using an
approximation architecture:
max |J(i, rk ) Jk (i)| , k = 0, 1, . . .
i
If policy improvement is also approximate,
max |(Tk+1 J)(i, rk )(T J)(i, rk )| , k = 0, 1, . . .
i
Error Bound: The sequence {k } generated
by approximate policy iteration satises
+ 2
lim sup max Jk (i) J (i)
k i (1 )2
Typical practical behavior: The method makes
steady progress up to a point and then the iterates
Jk oscillate within a neighborhood of J .
SIMULATION-BASED POLICY EVALUATION
Suppose we can implement in a simulator the
improved policy , and want to calculate J by
simulation.
Generate by simulation sample costs. Then:
1
Mi
J (i) c(i, m)
Mi m=1
c(i, m) : mth (noisy) sample cost starting from state i
Approximating well each J (i) is impractical
for a large state space. Instead, a compact rep
resentation J (i, r) is used, where r is a tunable
parameter vector.
Direct approach: Calculate an optimal value r
of r by a least squares t
n
Mi
2
r = arg min c(i, m) J (i, r)
r
i=1 m=1
Note that this is much easier when the archi
tecture is linear - but this is not a requirement.
SIMULATION-BASED DIRECT APPROACH
System Simulator
~ -
Least-Squares J(j,r)
Optimization
_ Decision Generator
Decision (i) State i
Cost-to-Go Approximator
~
Supplies Values J(j,r)
Simulator: Given a state-control pair (i, u), gen
erates the next state j using systems transition
probabilities under policy currently evaluated
Decision generator: Generates the control (i)
of the evaluated policy at the current state i
Cost-to-go approximator: J(j, r) used by the
decision generator and corresponding to preceding
policy (already evaluated in preceding iteration)
Least squares optimizer: Uses cost samples c(i, m)
produced by the simulator and solves a least squares
problem to approximate J (, r)
BATCH GRADIENT METHOD I
Focus on a batch: an N -transition portion
(i0 , . . . , iN ) of a simulated trajectory
We view the numbers
1
N
tk g it , (it ), it+1 , k = 0, . . . , N 1,
t=k
as cost samples, one per initial state i0 , . . . , iN 1
Least squares problem
1
# 1
$2
1
N
N
min J(ik , r) tk g it , (it ), it+1
r 2
k=0 t=k
Gradient iteration
N 1
r := r J(ik , r)
k=0
# 1
$
N
J(ik , r) tk g it , (it ), it+1
t=k
BATCH GRADIENT METHOD II
Important tradeo:
In order to reduce simulation error and cost
samples for a representatively large subset of
states, we must use a large N
To keep the work per gradient iteration small,
we must use a small N
To address the issue of size of N , small batches
may be used and changed after one or more iter
ations.
Then the method becomes susceptible to sim
ulation noise - requires a diminishing stepsize for
convergence.
This slows down the convergence (which can
be very slow for a gradient method even without
noise).
Theoretical convergence is guaranteed (with a
diminishing stepsize) under reasonable conditions,
but in practice this is not much of a guarantee.
INCREMENTAL GRADIENT METHOD I
Again focus on an N -transition portion (i0 , . . . , iN )
of a simulated trajectory.
The batch gradient method processes the N
transitions all at once, and updates r using the
gradient iteration.
The incremental method updates r a total of N
times, once after each transition.
After each transition (ik , ik+1 ) it uses only the
portion of the gradient aected by that transition:
Evaluate the (single-term) gradient J(ik , r)
at the current value of r (call it rk ).
Sum all the terms that involve the transi
tion (ik , ik+1 ), and update rk by making a
correction along their sum:
#
rk+1 =rk J(ik , rk )J(ik , rk )
# k $ $
J (it , rt ) g ik , (ik ), ik+1
kt
t=0
INCREMENTAL GRADIENT METHOD II
After N transitions, all the component gradient
terms of the batch iteration are accumulated.
BIG dierence:
In the incremental method, r is changed while
processing the batch the (single-term) gra
dient J(it , r) is evaluated at the most re
cent value of r [after the transition (it , it+1 )].
In the batch version these gradients are eval
uated at the value of r prevailing at the be
ginning of the batch.
Because r is updated at intermediate transi
tions within a batch (rather than at the end of
the batch), the location of the end of the batch
becomes less relevant.
Can have very long batches - can have a single
very long simulated trajectory and a single batch.
The incremental version can be implemented
more exibly, converges much faster in practice.
Interesting convergence analysis (beyond our
scope - see Bertsekas and Tsitsiklis, NDP book,
also paper in SIAM J. on Optimization, 2000)
TEMPORAL DIFFERENCES - TD(1)
A mathematically equivalent implementation of
the incremental method.
It uses temporal dierence (TD for short)
dk = g ik , (ik ), ik+1 +J(ik+1 , r)J(ik , r), k N 2,
dN 1 = g iN 1 , (iN 1 ), iN J(iN 1 , r)
Following the transition (ik , ik+1 ), set
k
rk+1 = rk + k dk kt J(it , rt )
t=0
This algorithm is known as TD(1). In the im
portant linear case J(i, r) = (i) r, it becomes
k
rk+1 = rk + k dk kt (it )
t=0
A variant of TD(1) is TD(), [0, 1]. It sets
k
rk+1 = rk + k dk ()kt (it )
t=0
OPTIMISTIC POLICY ITERATION
We have assumed so far is that the least squares
optimization must be solved completely for r.
An alternative, known as optimistic policy iter
ation, is to solve this problem approximately and
replace policy with policy after only a few
simulation samples.
Extreme possibility is to replace with at the
end of each state transition: After state transition
(ik , ik+1 ), set
k
rk+1 = rk + k dk ()kt J(it , rt ),
t=0
and simulate next transition (ik+1 , ik+2 ) using (ik+1 ),
the control of the new policy.
For = 0, we obtain (the popular) optimistic
TD(0), which has the simple form
rk+1 = rk + k dk J(ik , rk )
Optimistic policy iteration can exhibit fascinat
ing and counterintuitive behavior (see the NDP
book by Bertsekas and Tsitsiklis, Section 6.4.2).
THE ISSUE OF EXPLORATION
To evaluate a policy , we need to generate cost
samples using that policy - this biases the simula
tion by underrepresenting states that are unlikely
to occur under .
As a result, the cost-to-go estimates of these
underrepresented states may be highly inaccurate.
This seriously impacts the improved policy .
This is known as inadequate exploration - a par
ticularly acute diculty when the randomness em
bodied in the transition probabilities is relatively
small (e.g., a deterministic system).
One possibility to guarantee adequate explo
ration: Frequently restart the simulation and en
sure that the initial states employed form a rich
and representative subset.
Another possibility: Occasionally generating
transitions that use a randomly selected control
rather than the one dictated by the policy .
Other methods, to be discussed later, use two
Markov chains (one is the chain of the policy and
is used to generate the transition sequence, the
other is used to generate the state sequence).
APPROXIMATING Q-FACTORS
The approach described so far for policy eval
uation requires calculating expected values for all
controls u U (i) (and knowledge of pij (u)).
Model-free alternative: Approximate Q-factors
n
Q(i, u, r) pij (u) g(i, u, j) + J (j)
j=1
and use for policy improvement the minimization
(i) = arg min Q(i, u, r)
uU (i)
r is an adjustable parameter vector and Q(i, u, r)
is a parametric architecture, such as
m
Q(i, u, r) = rk k (i, u)
k=1
Can use any method for constructing cost ap
proximations, e.g., TD().
Use the Markov chain with states (i, u) - pij ((i))
is the transition prob. to (j, (i)), 0 to other (j, u ).
Major concern: Acutely diminished exploration.
6.231 DYNAMIC PROGRAMMING
LECTURE 22
LECTURE OUTLINE
Discounted problems - Approximate policy eval
uation/policy improvement
Indirect approach - The projected equation
Contraction properties - Error bounds
PVI (Projected Value Iteration)
LSPE (Least Squares Policy Evaluation)
Tetris - A case study
POLICY EVALUATION/POLICY IMPROVEMENT
Guess Initial Policy
Evaluate Approximate Cost
Approximate Policy
J (r) = r Using Simulation Evaluation
Generate Improved Policy Policy Improvement
Linear cost function approximation
J(r) = r
where is full rank n s matrix with columns
the basis functions, and ith row denoted (i) .
Policy improvement
n
(i) = arg min
pij (u) g(i, u, j) + (j) r
uU (i)
j=1
Indirect methods nd r by solving a projected
equation.
WEIGHTED EUCLIDEAN PROJECTIONS
Consider a weighted Euclidean norm
%
& n
&
2
J
v = ' vi J(i) ,
i=1
where v is a vector of positive weights v1 , . . . , vn .
Let denote the projection operation onto
S = {r | r s }
with respect to this norm, i.e., for any J n ,
J = rJ
where
rJ = arg mins
J r
v
r
and rJ can be written explicitly:
= ( V )1 V, rJ = ( V )1 V J,
where V is the diagonal matrix with vi , i = 1, . . . , n,
along the diagonal.
THE PROJECTED BELLMAN EQUATION
For a xed policy to be evaluated, consider
the corresponding mapping T :
n
(T J)(i) = pij g(i, j)+J(j) , i = 1, . . . , n,
i=1
or more compactly,
T J = g + P J
The solution J of Bellmans equation J = T J
is approximated by the solution of
r = T (r)
T(r)
Projection
on S
r = T(r)
0
S: Subspace spanned by basis functions
Indirect method: Solving a projected
form of Bellmans equation
KEY QUESTIONS AND RESULTS
Does the projected equation have a solution?
Under what conditions is the mapping T a
contraction, so T has unique xed point?
Assuming T has unique xed point r , how
close is r to J ?
Assumption: P has a single recurrent class
and no transient states, i.e., it has steady-state
probabilities that are positive
1
N
j = lim P (ik = j | i0 = i) > 0, j = 1, . . . , n
N N
k=1
Proposition: T is contraction of modulus
with respect to the weighted Euclidean norm
, where = (1 , . . . , n ) is the steady-state
probability vector. The unique xed point r of
T satises
1
J r
J J
1 2
ANALYSIS
Important property of the projection on S
with weighted Euclidean norm " "v . For all J
$n , J S, the Pythagorean Theorem holds:
"J J"2v = "J J"2v + "J J"2v
Proof: Geometrically, (J J) and (J J)
are orthogonal in the scaled geometry of the norm
"v , where two vectors x, y $n are orthogonal
" '
n
if i=1 vi xi yi = 0. Expand the quadratic in the
RHS below:
"J J"2v = "(J J) + (J J)"2v
The Pythagorean Theorem implies that the pro-
jection is nonexpansive, i.e.,
"J J" v,
v "J J" for all J, J $n .
To see this, note that
( ( ( ( ( (
((J J)(2 ((J J)(2 + ((I )(J J)(2
v v v
= "J J"2v
PROOF OF CONTRACTION PROPERTY
Lemma: We have
P z
z
, z n
Proof of lemma: Let pij be the components of
P . For all z n , we have
2
n
n
n
n
P z
2 = i pij zj i pij zj2
i=1 j=1 i=1 j=1
n
n
n
= i pij zj2 = j zj2 =
z
2 ,
j=1 i=1 j=1
where the inequality follows from the convexity of
the quadratic function, and the next to"nlast equal
ity follows from the dening property i=1 i pij =
j of the steady-state probabilities.
Using the lemma, the nonexpansiveness of ,
and the denition T J = g + P J, we have
T JT J T JT J = P (JJ ) JJ
for all J, J n . Hence T is a contraction of
modulus .
PROOF OF ERROR BOUND
Let r be the xed point of T . We have
J r
J J
.
1 2
Proof: We have
( (
2
J r
2
=
J J
2
(J r (
+
( (
2
2
(
=
J J
+ T J T (r )(
J J
2
+ 2
J r
2
,
where the rst equality uses the Pythagorean The
orem, the second equality holds because J is the
xed point of T and r is the xed point of T ,
and the inequality uses the contraction property
of T . From this relation, the result follows.
Note: The factor 1/ 1 2 in the RHS can
be replaced by a factor that is smaller and com
putable. See
H. Yu and D. P. Bertsekas, New Error Bounds
for Approximations from Projected Linear Equa
tions, Report LIDS-P-2797, MIT, July 2008.
PROJECTED VALUE ITERATION (PVI)
Given the projection property of T , we may
consider the PVI method
rk+1 = T (rk )
Value Iterate
T(rk) = g + Prk
Projection
on S
rk+1
rk
0
S: Subspace spanned by basis functions
Question: Can we implement PVI using simu
lation, without the need for n-dimensional linear
algebra calculations?
LSPE (Least Squares Policy Evaluation) is a
simulation-based implementation of PVI.
LSPE - SIMULATION-BASED PVI
PVI, i.e., rk+1 = T (rk ) can be written as
( (2
rk+1 = arg mins (r T (rk )( ,
r
from which by setting the gradient to 0,
# n $
n
n
i (i)(i) rk+1 = i (i) pij g(i, j)+(j) rk
i=1 i=1 j=1
For LSPE we generate an innite trajectory
(i0 , i1 , . . .) and update rk after transition (ik , ik+1 )
# k $
k
(it )(it ) rk+1 = (it ) g(it , it+1 )+(it+1 ) rk
t=0 t=0
LSPE can equivalently be written as
# $
n
n
n
i,k (i)(i) rk+1 = i,k (i) pij,k
i=1 i=1 j=1
g(i, j) + (j) rk
where i,k , pij,k : empirical frequencies of state i
and transition (i, j), based on (i0 , . . . , ik+1 ).
LSPE INTERPRETATION
LSPE can be written as PVI with sim. error:
rk+1 = T (rk ) + ek
where ek diminishes to 0 as the empirical frequen
cies i,k and pij,k approach and pij .
Value Iterate Value Iterate
T(rk) = g + Prk T(rk) = g + Prk
Projection Projection
on S on S
rk+1
rk+1
rk rk Simulation error
0 0
S: Subspace spanned by basis functions S: Subspace spanned by basis functions
Projected Value Iteration (PVI) Least Squares Policy Evaluation (LSPE)
Convergence proof is simple: Use the law of
large numbers.
Optimistic LSPE: Changes policy prior to con
vergence - behavior can be very complicated.
EXAMPLE: TETRIS I
The state consists of the board position i, and
the shape of the current falling block (astronomi
cally large number of states).
It can be shown that all policies are proper!!
Use a linear approximation architecture with
feature extraction
s
J(i, r) = m (i)rm ,
m=1
where r = (r1 , . . . , rs ) is the parameter vector and
m (i) is the value of mth feature associated w/ i.
EXAMPLE: TETRIS II
Approximate policy iteration was implemented
with the following features:
The height of each column of the wall
The dierence of heights of adjacent columns
The maximum height over all wall columns
The number of holes on the wall
The number 1 (provides a constant oset)
Playing data was collected for a xed value
of the parameter vector r (and the corresponding
policy); the policy was approximately evaluated
by choosing r to match the playing data in some
least-squares sense.
LSPE (its SSP version) was used for approxi
mate policy evaluation.
Both regular and optimistic versions were used.
See: Bertsekas and Ioe, Temporal Dierences-
Based Policy Iteration and Applications in Neuro-
Dynamic Programming, LIDS Report, 1996. Also
the NDP book.
6.231 DYNAMIC PROGRAMMING
LECTURE 23
LECTURE OUTLINE
Review of indirect policy evaluation methods
Multistep methods, LSPE()
LSTD()
Q-learning
Q-learning with linear function approximation
Q-learning for optimal stopping problems
REVIEW: PROJECTED BELLMAN EQUATION
For a xed policy to be evaluated, consider
the corresponding mapping T :
n
(T J)(i) = pij g(i, j)+J(j) , i = 1, . . . , n,
i=1
or more compactly,
T J = g + P J
The solution J of Bellmans equation J = T J
is approximated by the solution of
r = T (r)
T(r)
Projection
on S
r = T(r)
0
S: Subspace spanned by basis functions
Indirect method: Solving a projected
form of Bellmans equation
PVI/LSPE
Key Result: T is contraction of modulus
with respect to the weighted Euclidean norm
, where = (1 , . . . , n ) is the steady-state
probability vector. The unique xed point r of
T satises
1
J r
J J
1 2
Projected Value Iteration (PVI): rk+1 =
T (rk ), which can be written as
( (2
rk+1 = arg mins r T (rk )(
(
r
or equivalently
# $2
n
n
rk+1 = arg min i (i) r pij g(i, j) + (j) rk
rs
i=1 j=1
LSPE (simulation-based approximation):
We generate an innite trajectory (i0 , i1 , . . .) and
update rk after transition (ik , ik+1 )
k
2
rk+1 = arg mins
(it ) rg(it , it+1 )(it+1 ) rk
r
t=0
JUSTIFICATION OF PVI/LSPE CONNECTION
By writing the necessary optimality conditions
for the least squares minimization, PVI can be
written as
# n $
n
n
i (i)(i) rk+1 = i (i) pij g(i, j)+(j) rk
i=1 i=1 j=1
Similarly, by writing the necessary optimal
ity conditions for the least squares minimization,
LSPE can be written as
# k $
k
(it )(it ) rk+1 = (it ) g(it , it+1 )+(it+1 ) rk
t=0 t=0
So LSPE is just PVI with the two expected val
ues approximated by simulation-based averages.
Convergence follows by the law of large num
bers.
The bottleneck in rate of convergence is the
law of large of numbers/simulation error (PVI is
a contraction with modulus , and converges fast
relative to simulation).
LEAST SQUARES TEMP. DIFFERENCES (LSTD)
Taking the limit in PVI, we see that the pro
jected equation, r = T (r ), can be written as
Ar + b = 0, where
# n $
n
A= i (i) pij (j) (i)
i=1 j=1
n
n
b= i (i) pij g(i, j)
i=1 j=1
are expected values that can be approxi
A, b
mated by simulation: Ak A, bk b, where
1 k
Ak = (it ) (it+1 ) (it )
k+1
t=0
1
k
bk = (it )g(it , it+1 )
k+1
t=0
LSTD method: Approximates r as
r rk = A
k
1
bk
Conceptually very simple ... but less suitable for
optimistic policy iteration (hard to transfer info
from one policy evaluation to the next).
Can be shown that convergence rate is the same
for LSPE/LSTD (for large k, rk rk << rk r ).
MULTISTEP METHODS
Introduce a multistep version of Bellmans equa
tion J = T () J , where for [0, 1),
T () = (1 ) t T t+1
t=0
Note that T t is a contraction with modulus t ,
with respect to the weighted Euclidean norm ,
where is the steady-state probability vector of
the Markov chain.
From this it follows that T () is a contraction
with modulus
(1 )
= (1 ) t+1 t =
1
t=0
Tt and T () have the same xed point J and
1
J r - J J
1 2
where r is the xed point of T () .
The xed point r depends on .
Note that 0 as 1, so error bound improves
as 1.
PVI()
# $
rk+1 = T ()
(rk ) = (1 ) t T t+1 (rk )
t=0
or ( (2
(
rk+1 = arg min r T (rk )
() (
s r
Using algebra and the relation
t
(T t+1 J)(i) = E t+1 J(it+1 ) + k g(ik , ik+1 ) i0 = i
k=0
we can write PVI() as
#
n
rk+1 = arg min i (i) r (i) rk
rs
i=1
$2
t
() E dk (it , it+1 ) | i0 = i
t=0
where
dk (it , it+1 ) = g(it , it+1 ) + (it+1 ) rk (it ) rk ,
are the, so called, temporal dierences (TD) - they
are the errors in satisfying Bellmans equation.
LSPE()
Replacing the expected values dening PVI()
by simulation-based estimates we obtain LSPE().
It has the form
#
k
rk+1 = arg min (it ) r (it ) rk
rs
t=0
$2
k
()mt dk (im , im+1 )
m=t
where (i0 , i1 , . . .) is an innitely long trajectory gen
erated by simulation.
Can be implemented with convenient incremen
tal update formulas (see the text).
Note the -tradeo:
As 1, the accuracy of the solution r
improves - the error bound to J r
improves.
As 1, the simulation noise in the LSPE()
iteration (2nd summation term) increases, so
longer simulation trajectories are needed for
LSPE() to approximate well PVI().
Q-LEARNING I
Q-learning has two motivations:
Dealing with multiple policies simultaneously
Using a model-free approach [no need to know
pij (u) explicitly, only to simulate them]
The Q-factors are dened by
n
Q (i, u) = pij (u) g(i, u, j) + J (j) , (i, u)
j=1
In view of J = T J , we have J (i) = minuU (i) Q (i, u)
so the Q factors solve the equation
n
Q (i, u) = pij (u) g(i, u, j) + min Q (j, u ) , (i, u)
u U (j)
j=1
Q(i, u) can be shown to be the unique solution of
this equation. Reason: This is Bellmans equation
for a system whose states are the original states
1, . . . , n, together with all the pairs (i, u).
Value iteration:
n
Q(i, u) := pij (u) g(i, u, j) + min Q(j, u ) , (i, u)
u U (j)
j=1
Q-LEARNING II
Use any probabilistic mechanism to select se
quence of pairs (ik , uk ) [all pairs (i, u) are chosen
innitely often], and for each k, select jk accord
ing to pik j (uk ).
At each k, Q-learning algorithm updates Q(ik , uk )
according to
Q(ik , uk ) := 1 k (ik , uk ) Q(ik , uk )
# $
+ k (ik , uk ) g(ik , uk , jk ) + min Q(jk , u )
u U (jk )
Stepsize k (ik , uk ) must converge to 0 at proper
rate (e.g., like 1/k).
Important mathematical point: In the Q-factor
version of Bellmans equation the order of expec
tation and minimization is reversed relatively to
the ordinary cost version of Bellmans equation:
n
J (i) = min pij (u) g(i, u, j) + J (j)
uU (i)
j=1
Q-learning can be shown to converge to true/exact
Q-factors (a sophisticated proof).
Major drawback: The large number of pairs (i, u)
- no function approximation is used.
Q-FACTOR APROXIMATIONS
Introduce basis function approximation for Q-
factors:
Q(i, u, r) = (i, u) r
We cannot use LSPE/LSTD because the Q-
factor Bellman equation involves minimization/multiple
controls.
An optimistic version of LSPE(0) is possible:
Generate an innitely long sequence {(ik , uk ) |
k = 0, 1, . . .}.
At iteration k, given rk and state/control (ik , uk ):
(1) Simulate next transition (ik , ik+1 ) using the
transition probabilities pik j (uk ).
(2) Generate control uk+1 from the minimization
uk+1 = arg min Q(ik+1 , u, rk )
uU (ik+1 )
(3) Update the parameter vector via
k
rk+1 = arg min (it , ut ) r
rs
t=0
2
g(it , ut , it+1 ) (it+1 , ut+1 ) rk
Q-LEARNING FOR OPTIMAL STOPPING
Not much is known about convergence of opti
mistic LSPE(0).
Major diculty is that the projected Bellman
equation for Q-factors may not be a contraction,
and may have multiple solutions or no solution.
There is one important case, optimal stop
ping, where this diculty does not occur.
Given a Markov chain with states {1, . . . , n},
and transition probabilities pij . We assume that
the states form a single recurrent class, with steady-
state distribution vector = (1 , . . . , n ).
At the current state i, we have two options:
Stop and incur a cost c(i), or
Continue and incur a cost g(i, j), where j is
the next state.
Q-factor for the continue action:
n . /
Q(i) = pij g(i, j)+ min c(j), Q(j) (F Q)(i)
j=1
Major fact: F is a contraction of modulus
with respect to norm
.
LSPE FOR OPTIMAL STOPPING
Introduce Q-factor approximation
Q(i, r) = (i) r
PVI for Q-factors:
rk+1 = F (rk )
LSPE
# $1
k
rk+1 = (it )(it )
t=0
k . /
(it ) g(it , it+1 ) + min c(it+1 ), (it+1 ) rk
t=0
Simpler version: Replace the term (it+1 ) rk
by (it+1 ) rt . The algorithm still converges to
the unique xed point of F (see H. Yu and D.
P. Bertsekas, A Least Squares Q-Learning Algo
rithm for Optimal Stopping Problems).
6.231 DYNAMIC PROGRAMMING
LECTURE 24
LECTURE OUTLINE
More on projected equation methods/policy
evaluation
Stochastic shortest path problems
Average cost problems
Generalization - Two Markov Chain methods
LSTD-like methods - Use to enhance explo
ration
REVIEW: PROJECTED BELLMAN EQUATION
For xed policy to be evaluated, the solution
of Bellmans equation J = T J is approximated by
the solution of
r = T (r)
whose solution is in turn obtained using a simulation-
based method such as LSPE(), LSTD(), or TD().
T(r)
Projection
on S
r = T(r)
0
S: Subspace spanned by basis functions
Indirect method: Solving a projected
form of Bellmans equation
These ideas apply to other (linear) Bellman
equations, e.g., for SSP and average cost.
Key Issue: Construct framework where T [or
at least T () ] is a contraction.
STOCHASTIC SHORTEST PATHS
Introduce approximation subspace
S = {r | r s }
and for a given proper policy, Bellmans equation
and its projected version
J = T J = g + P J, r = T (r)
Also its -version
r = T () (r), T () = (1 ) t T t+1
t=0
Question: What should be the norm of pro
jection?
Speculation based on discounted case: It
should be a weighted Euclidean norm with weight
vector = (1 , . . . , n ), where i should be some
type of long-term occupancy probability of state i
(which can be generated by simulation).
But what does long-term occupancy probabil
ity of a state mean in the SSP context?
How do we generate innite length trajectories
given that termination occurs with prob. 1?
SIMULATION TRAJECTORIES FOR SSP
We envision simulation of trajectories up to
termination, followed by restart at state i with
some xed probabilities q0 (i) > 0.
Then the long-term occupancy probability of
a state of i is proportional to
q(i) = qt (i), i = 1, . . . , n,
t=0
where
qt (i) = P (it = i), i = 1, . . . , n, t = 0, 1, . . .
We use the projection norm
%
& n
&
2
J
q = ' q(i) J(i)
i=1
[Note that 0 < q(i) < , but q is not a prob.
distribution. ]
We can show that T () is a contraction with
respect to
(see the next slide).
CONTRACTION PROPERTY FOR SSP
"
We have q = t=0 qt so
qP = qt P = qt = q q0
t=0 t=1
or
n
q(i)pij = q(j) q0 (j), j
i=1
To verify that T is a contraction, we show
that there exists < 1 such that
P z
2q
z
2q
for all z n .
For all z n , we have
2
n n
n
n
P z
2q = q(i) pij zj q(i) pij zj2
i=1 j=1 i=1 j=1
n
n
n
= zj2 q(i)pij = q(j) q0 (j) zj2
j=1 i=1 j=1
=
z
2q
z
2q0
z
2q
where
q0 (j)
= 1 min
j q(j)
PVI() AND LSPE() FOR SSP
We consider PVI(): rk+1 = T () (rk ),
which can be written as
#
n
rk+1 = arg mins q(i) (i) r (i) rk
r
i=1
$2
t E dk (it , it+1 ) | i0 = i
t=0
where dk (it , it+1 ) are the TDs.
The LSPE() algorithm is a simulation-based
approximation. Let (i0,l , i1,l , . . . , iNl ,l ) be the lth
trajectory (with iNl ,l = 0), and let rk be the pa
rameter vector after k trajectories. We set
1
#
k+1 N l
rk+1 = arg min (it,l ) r (it,l ) rk
r
l=1 t=0
$2
N l 1
mt dk (im,l , im+1,l )
m=t
where
dk (im,l , im+1,l ) = g(im,l , im+1,l )+(im+1,l ) rk (im,l ) rk
Can also update rk at every transition.
AVERAGE COST PROBLEMS
Consider a single policy to be evaluated, with
single recurrent class, no transient states, and steady-
state probability vector = (1 , . . . , n ).
The average cost, denoted by , is independent
of the initial state
N 1
1
= lim E g xk , xk+1 x0 = i , i
N N
k=0
Bellmans equation is J = F J with
F J = g e + P J
where e is the unit vector e = (1, . . . , 1).
The projected equation and its -version are
r = F (r), r = F () (r)
A problem here is that F is not a contraction
with respect to any norm (since e = P e).
However, F () turns out to be a contraction
with respect to
assuming that e does not be
long to S and > 0 [the case = 0 is exceptional,
but can be handled - see the text].
LSPE() FOR AVERAGE COST
We generate an innitely long trajectory (i0 , i1 , . . .).
We estimate the average cost separately: Fol
lowing each transition (ik , ik+1 ), we set
1
k
k = g(it , it+1 )
k+1 t=0
Also following (ik , ik+1 ), we update rk by
# $2
k
k
rk+1 = arg mins (it ) r (it ) rk mt dk (m)
r
t=0 m=t
where dk (m) are the TDs
dk (m) = g(im , im+1 ) m + (im+1 ) rk (im ) rk
Note that the TDs include the estimate m .
Since m converges to , for large m it can be
viewed as a constant and lumped into the one-
stage cost.
GENERALIZATION/UNIFICATION
Consider approximate solution of x = T (x),
where
T (x) = Ax + b, A is n n, b n
by solving the projected equation y = T (y),
where is projection on a subspace of basis func
tions (with respect to some Euclidean norm).
We will generalize from DP to the case where
A is arbitrary, subject only to
I A : invertible
Benets of generalization:
Unication/higher perspective for TD meth
ods in approximate DP
An extension to a broad new area of applica
tions, where a DP perspective may be help
ful
Challenge: Dealing with less structure
Lack of contraction
Absence of a Markov chain
LSTD-LIKE METHOD
Let be projection with respect to
&
n
&
x
= ' i x2i
i=1
where n is a probability distribution with
positive components.
If r is the solution of the projected equation,
we have r = (Ar + b) or
2
n
n
r = arg mins i (i) r aij (j) r bi
r
i=1 j=1
where (i) denotes the ith row of the matrix .
Optimality condition/equivalent form:
n
n
n
i (i) (i) aij (j) r = i (i)bi
i=1 j=1 i=1
The two expected values are approximated by
simulation.
SIMULATION MECHANISM
Row Sampling According to
i0 i1 ... ik ik+1 ...
Column Sampling
According to P
j0 j1 jk jk+1
Row sampling: Generate sequence {i0 , i1 , . . .}
according to , i.e., relative frequency of each row
i is i
Column sampling: Generate (i0 , j0 ), (i1 , j1 ), . . .
according to some transition probability matrix P
with
pij > 0 if aij = 0,
i.e., for each i, the relative frequency of (i, j) is pij
Row sampling may be done using a Markov
chain with transition matrix Q (unrelated to P )
Row sampling may also be done without a
Markov chain - just sample rows according to some
known distribution (e.g., a uniform)
ROW AND COLUMN SAMPLING
Row Sampling According to
(May Use Markov Chain Q)
| |
i0 i1 ... ik ik+1 ... Column Sampling
According to
Markov Chain
P |A|
j0 j1 jk jk+1
Row sampling State Sequence Generation in
DP. Aects:
The projection norm.
Whether A is a contraction.
Column sampling Transition Sequence Gen
eration in DP.
Can be totally unrelated to row sampling.
Aects the sampling/simulation error.
Matching P with |A| is benecial (has an
eect like in importance sampling).
Independent row and column sampling allows
exploration at will! Resolves the exploration prob
lem that is critical in approximate policy iteration.
LSTD-LIKE METHOD
Optimality condition/equivalent form of pro
jected equation
n
n
n
i (i) (i) aij (j) r = i (i)bi
i=1 j=1 i=1
The two expected values are approximated by
row and column sampling (batch 0 t).
We solve the linear equation
t
t
aik jk
(ik ) (ik ) (jk ) rt = (ik )bik
pik jk
k=0 k=0
We have rt r , regardless of A being a con
traction (by law of large numbers; see next slide).
An LSPE-like method is also possible, but re
quires that A is a contraction.
"n
Under the assumption j=1 |aij | 1 for all i,
there are conditions that guarantee contraction of
A; see the paper by Bertsekas and Yu,Projected
Equation Methods for Approximate Solution of
Large Linear Systems, 2008, or the expanded ver
sion of Chapter 6 Vol 2
JUSTIFICATION W/ LAW OF LARGE NUMBERS
We will match terms in the exact optimality
condition and the simulation-based version.
Let it be the relative frequency of i in row
sampling up to time t.
We have
1
t n n
(ik )(ik ) = i (i)(i)
t i (i)(i)
t+1 i=1 i=1
k=0
1
t n n
(ik )bik = i (i)bi
t i (i)bi
t+1 i=1 i=1
k=0
Let ptij be the relative frequency of (i, j) in
column sampling up to time t.
1 aik jk
t
(ik )(jk )
t+1 pik jk
k=0
n
n
aij
= it pt ij (i)(j)
i=1 j=1
pij
n n
i aij (i)(j)
i=1 j=1
6.231 DYNAMIC PROGRAMMING
LECTURE 25
LECTURE OUTLINE
Additional topics in ADP
Nonlinear versions of the projected equation
Extension of Q-learning for optimal stopping
Basis function adaptation
Gradient-based approximation in policy space
NONLINEAR EXTENSIONS OF PROJECTED EQ.
If the mapping T is nonlinear (as for exam
ple in the case of multiple policies) the projected
equation r = T (r) is also nonlinear.
Any solution r satises
( (2
r (
arg min r T (r )(
rs
or equivalently
r T (r ) =0
This is a nonlinear equation, which may have one
or many solutions, or no solution at all.
If T is a contraction, then there is a unique
solution that can be obtained (in principle) by the
xed point iteration
rk+1 = T (rk )
We have seen a nonlinear special case of pro
jected value iteration/LSPE where T is a con
traction, namely optimal stopping.
This case can be generalized.
LSPE FOR OPTIMAL STOPPING EXTENDED
Consider a system of the form
x = T (x) = Af (x) + b,
where f : n
n is a mapping
with scalar com
ponents of the form f (x) = f1 (x1 ), . . . , fn (xn ) .
Assume that each fi :
is nonexpansive:
fi (xi ) fi (xi ) |xi xi |, i, xi , xi
This guarantees that T is a contraction with re
spect to any weighted Euclidean norm
when
ever A is a contraction with respect to that norm.
Algorithms similar to LSPE [approximating
rk+1 = T (rk )] are then possible.
Special case: In the optimal stopping problem
of Section 6.4, x is the Q-factor corresponding to
the continuation action, (0, 1) is a discount
factor, fi (xi ) = min{ci , xi }, and A = P , where
P is the transition matrix for continuing.
"n
If j =1 pij < 1 for some state i, and 0 P
Q, where Q is an irreducible transition matrix,
then ((1)I +T ) is a contraction with respect
to
for all (0, 1), even with = 1.
BASIS FUNCTION ADAPTATION I
An important issue in ADP is how to select
basis functions.
A possible approach is to introduce basis func
tions that are parametrized by a vector , and
optimize over , i.e., solve the problem
min F J ()
where J() is the solution of the projected equa
tion.
One example is
(
(2
(
F J () = J () T J () (
Another example is
F J() = |J(i) J()(i)|2 ,
iI
where I is a subset of states, and J(i), i I, are
the costs of the policy at these states calculated
directly by simulation.
BASIS FUNCTION ADAPTATION II
Some algorithm may be used to minimize F J()
over .
A challenge here is that the algorithm should
use low-dimensional calculations.
One possibility is to use a form of random search
method; see the paper by Menache, Mannor, and
Shimkin (Annals of Oper. Res., Vol. 134, 2005)
Another possibility is to use a gradient method.
For this it is necessary to estimate the partial
derivatives of J() with respect to the components
of .
It turns out that by dierentiating the pro
jected equation, these partial derivatives can be
calculated using low-dimensional operations. See
the paper by Menache, Mannor, and Shimkin, and
a recent paper by Yu and Bertsekas (2008).
APPROXIMATION IN POLICY SPACE I
Consider an average cost problem, where the
problem data are parametrized by a vector r, i.e.,
a cost vector g(r), transition probability matrix
P (r). Let (r) be the (scalar) average cost per
stage, satisfying Bellmans equation
(r)e + h(r) = g(r) + P (r)h(r)
where h(r) is the corresponding dierential cost
vector.
Consider minimizing (r) over r (here the data
dependence on control is encoded in the parametriza
tion). We can try to solve the problem by nonlin
ear programming/gradient descent methods.
Important fact: If is the change in due
to a small change r from a given r, we have
= (g + P h),
where is the steady-state probability distribu
tion/vector corresponding to P (r), and all the quan
tities above are evaluated at r:
= (r + r) (r),
g = g(r+r)g(r), P = P (r+r)P (r)
APPROXIMATION IN POLICY SPACE II
Proof of the gradient formula: We have,
by dierentiating Bellmans equation,
(r)e+h(r) = g(r)+P (r)h(r)+P (r)h(r)
By left-multiplying with ,
(r)e+ h(r) = g(r)+P (r)h(r) + P (r)h(r)
Since (r) e = (r) and = P (r), this
equation simplies to
= (g + P h)
Since we dont know , we cannot implement a
gradient-like method for minimizing (r). An al
ternative is to use sampled gradients, i.e., gener
ate a simulation trajectory (i0 , i1 , . . .), and change
r once in a while, in the direction of a simulation-
based estimate of (g + P h).
There is much recent research on this subject,
see e.g., the work of Marbach and Tsitsiklis, and
Konda and Tsitsiklis, and the refs given there.