SLIDE 1 CMS and MMEI 2019 27th March 2019
A deterministic algorithm for stochastic multistage problems
The problem-child algorithm
Regan Baucke, Anthony Downward, Golbon Zakeri CERMICS, Ecole des Ponts ParisTech reganbaucke.github.io
SLIDE 2 Stochastic optimisation
▶ Original problem: min
u∈U EP[C(u, Z)]
▶ Discretised problem: min
u∈U
∑
ω∈Ω
ˆ P(ω)[C(u, Z(ω))] ▶ A method:
▶ Some lower bound: (¯ Ck, uk) = M(k) ▶ Upper bound: ¯ Ck = ∑
ω∈Ω
ˆ P(ω)[C(uk, Z(ω))] ▶ Optimality gap: ¯ Ck − ¯ Ck
SLIDE 3 Stochastic optimisation
▶ Original problem: min
u∈U EP[C(u, Z)]
▶ Discretised problem: min
u∈U
∑
ω∈Ω
ˆ P(ω)[C(u, Z(ω))] ▶ A method:
▶ Some lower bound: (¯ Ck, uk) = M(k) ▶ Upper bound: ¯ Ck = ∑
ω∈Ω
ˆ P(ω)[C(uk, Z(ω))] ▶ Optimality gap: ¯ Ck − ¯ Ck
SLIDE 4 Stochastic optimisation
▶ Original problem: min
u∈U EP[C(u, Z)]
▶ Discretised problem: min
u∈U
∑
ω∈Ω
ˆ P(ω)[C(u, Z(ω))] ▶ A method:
▶ Some lower bound: (¯ Ck, uk) = M(k) ▶ Upper bound: ¯ Ck = ∑
ω∈Ω
ˆ P(ω)[C(uk, Z(ω))] ▶ Optimality gap: ¯ Ck − ¯ Ck
SLIDE 5 Stochastic optimisation
▶ Original problem: min
u∈U EP[C(u, Z)]
▶ Discretised problem: min
u∈U
∑
ω∈Ω
ˆ P(ω)[C(u, Z(ω))] ▶ A method:
▶ Some lower bound: (¯ Ck, uk) = M(k) ▶ Upper bound: ¯ Ck = ∑
ω∈Ω
ˆ P(ω)[C(uk, Z(ω))] ▶ Optimality gap: ¯ Ck − ¯ Ck
SLIDE 6 Stochastic optimisation
▶ Original problem: min
u∈U EP[C(u, Z)]
▶ Discretised problem: min
u∈U
∑
ω∈Ω
ˆ P(ω)[C(u, Z(ω))] ▶ A method:
▶ Some lower bound: (¯ Ck, uk) = M(k) ▶ Upper bound: ¯ Ck = ∑
ω∈Ω
ˆ P(ω)[C(uk, Z(ω))] ▶ Optimality gap: ¯ Ck − ¯ Ck
SLIDE 7 Stochastic optimisation
▶ Original problem: min
u∈U EP[C(u, Z)]
▶ Discretised problem: min
u∈U
∑
ω∈Ω
ˆ P(ω)[C(u, Z(ω))] ▶ A method:
▶ Some lower bound: (¯ Ck, uk) = M(k) ▶ Upper bound: ¯ Ck = ∑
ω∈Ω
ˆ P(ω)[C(uk, Z(ω))] ▶ Optimality gap: ¯ Ck − ¯ Ck
SLIDE 8 Multistage stochastic optimisation
▶ Original problem: min
u∈U(x),x∈X EP[
∑
0≤t≤T
Ct(xt(ω), ut(ω), Zt(ω))] ▶ Discretised problem: min
u∈U(x),x∈X
∑
n∈N
ˆ Pn[Cn(xn, un)] ▶ A method:
▶ Some lower bound: (¯ V k, xk
n, uk n) = M(k)
▶ Upper bound: ¯ V k = ∑
n∈N
ˆ Pn[Cn(xk
n, uk n)]
▶ Optimality gap: ¯ V k − ¯ V k
SLIDE 9 Multistage stochastic optimisation
▶ Original problem: min
u∈U(x),x∈X EP[
∑
0≤t≤T
Ct(xt(ω), ut(ω), Zt(ω))] ▶ Discretised problem: min
u∈U(x),x∈X
∑
n∈N
ˆ Pn[Cn(xn, un)] ▶ A method:
▶ Some lower bound: (¯ V k, xk
n, uk n) = M(k)
▶ Upper bound: ¯ V k = ∑
n∈N
ˆ Pn[Cn(xk
n, uk n)]
▶ Optimality gap: ¯ V k − ¯ V k
SLIDE 10 Multistage stochastic optimisation
▶ Original problem: min
u∈U(x),x∈X EP[
∑
0≤t≤T
Ct(xt(ω), ut(ω), Zt(ω))] ▶ Discretised problem: min
u∈U(x),x∈X
∑
n∈N
ˆ Pn[Cn(xn, un)] ▶ A method:
▶ Some lower bound: (¯ V k, xk
n, uk n) = M(k)
▶ Upper bound: ¯ V k = ∑
n∈N
ˆ Pn[Cn(xk
n, uk n)]
▶ Optimality gap: ¯ V k − ¯ V k
SLIDE 11 Multistage stochastic optimisation
▶ Original problem: min
u∈U(x),x∈X EP[
∑
0≤t≤T
Ct(xt(ω), ut(ω), Zt(ω))] ▶ Discretised problem: min
u∈U(x),x∈X
∑
n∈N
ˆ Pn[Cn(xn, un)] ▶ A method:
▶ Some lower bound: (¯ V k, xk
n, uk n) = M(k)
▶ Upper bound: ¯ V k = ∑
n∈N
ˆ Pn[Cn(xk
n, uk n)]
▶ Optimality gap: ¯ V k − ¯ V k
SLIDE 12 Multistage stochastic optimisation
▶ Original problem: min
u∈U(x),x∈X EP[
∑
0≤t≤T
Ct(xt(ω), ut(ω), Zt(ω))] ▶ Discretised problem: min
u∈U(x),x∈X
∑
n∈N
ˆ Pn[Cn(xn, un)] ▶ A method:
▶ Some lower bound: (¯ V k, xk
n, uk n) = M(k)
▶ Upper bound: ¯ V k = ∑
n∈N
ˆ Pn[Cn(xk
n, uk n)]
▶ Optimality gap: ¯ V k − ¯ V k
SLIDE 13 Multistage stochastic optimisation
▶ Original problem: min
u∈U(x),x∈X EP[
∑
0≤t≤T
Ct(xt(ω), ut(ω), Zt(ω))] ▶ Discretised problem: min
u∈U(x),x∈X
∑
n∈N
ˆ Pn[Cn(xn, un)] ▶ A method:
▶ Some lower bound: (¯ V k, xk
n, uk n) = M(k)
▶ Upper bound: ¯ V k = ∑
n∈N
ˆ Pn[Cn(xk
n, uk n)]
▶ Optimality gap: ¯ V k − ¯ V k
SLIDE 14
#vert(d, T) = dT−1 − 1 d − 1
SLIDE 15 Multistage stochastic optimisation: independence
▶ Restrictions: Independence Zt ▶ A method:
▶ Some lower bound: (¯ V k, xk
n, uk n) = M(k)
▶ Upper bound: ¯ V k = ∑
n∈N
ˆ Pn[Cn(xk
n, uk n)]
▶ Optimality gap: ¯ V k − ¯ V k
SLIDE 16 Multistage stochastic optimisation: independence
▶ Restrictions: Independence Zt ▶ A method:
▶ Some lower bound: (¯ V k, xk
n, uk n) = M(k)
▶ Upper bound: ¯ V k = ∑
n∈N
ˆ Pn[Cn(xk
n, uk n)]
▶ Optimality gap: ¯ V k − ¯ V k
SLIDE 17
The upper bound function The problem-child algorithm Results Saddle functions
SLIDE 18 u C(u)
C(u) = min
µ∈R
µ s.t. µ ≥ C(ˆ u) + ⟨dˆ
u, u − ˆ
u⟩, ∀ˆ u,
The upper bound function | Construction
SLIDE 19 u C(u)
C(u) = min
µ∈R
µ s.t. µ ≥ C(ˆ u) + ⟨dˆ
u, u − ˆ
u⟩, ∀ˆ u,
The upper bound function | Construction
SLIDE 20 u C(u)
C(u) = min
µ∈R
µ s.t. µ ≥ C(ˆ u) + ⟨dˆ
u, u − ˆ
u⟩, ∀ˆ u,
The upper bound function | Construction
SLIDE 21 u C(u)
¯ C(u) = min
µ∈R
µ s.t. µ ≥ C(ˆ u) + ⟨dˆ
u, u − ˆ
u⟩, ∀ˆ u,
The upper bound function | Construction
SLIDE 22 u C(u)
C(u) = min
µ∈R
µ s.t. µ ≥ G(ˆ u) + ⟨dˆ
u, u − ˆ
u⟩, ∀ˆ u.
The upper bound function | Construction
SLIDE 23 u C(u)
C(u) = min
µ∈R
µ s.t. µ ≥ G(ˆ u) + ⟨dˆ
u, u − ˆ
u⟩, ∀ˆ u.
The upper bound function | Construction
SLIDE 24 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 25 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 26 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 27 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 28 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 29 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 30 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 31 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 32 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 33 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 34 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 35 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 36 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ C(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 37 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 38 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 39 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 40 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 41 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ C(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
The upper bound function | Construction
SLIDE 42
Example
min
u∈U
1 2 C1(u) + 1 2 C2(u)
The problem-child algorithm | Two-stage problem
SLIDE 43 1 2C1 + 1 2C2
C1 C2
SLIDE 44 1 2C1 + 1 2C2
C1 C2
SLIDE 45 1 2C1 + 1 2C2
C1 C2
SLIDE 46 1 2C1 + 1 2C2
C1 C2
SLIDE 47 1 2C1 + 1 2C2
C1 C2
SLIDE 48 1 2C1 + 1 2C2
C1 C2
SLIDE 49 1 2C1 + 1 2C2
C1 C2
SLIDE 50 1 2C1 + 1 2C2
C1 C2
SLIDE 51 1 2C1 + 1 2C2
C1 C2
SLIDE 52 1 2C1 + 1 2C2
C1 C2
SLIDE 53 1 2C1 + 1 2C2
C1 C2
SLIDE 54 1 2C1 + 1 2C2
C1 C2
SLIDE 55 1 2C1 + 1 2C2
C1 C2
SLIDE 56 1 2C1 + 1 2C2
C1 C2
SLIDE 57 1 2C1 + 1 2C2
C1 C2
SLIDE 58 1 2C1 + 1 2C2
C1 C2
SLIDE 59 1 2C1 + 1 2C2
C1 C2
SLIDE 60 1 2C1 + 1 2C2
C1 C2
SLIDE 61 1 2C1 + 1 2C2
C1 C2
SLIDE 62 1 2C1 + 1 2C2
C1 C2
SLIDE 63 1 2C1 + 1 2C2
C1 C2
SLIDE 64 1 2C1 + 1 2C2
C1 C2
SLIDE 65
The problem-child algorithm | Two-stage problem
SLIDE 66
The problem-child algorithm | Two-stage problem
SLIDE 67
The problem-child algorithm | Two-stage problem
SLIDE 68
The problem-child algorithm | Two-stage problem
SLIDE 69
The problem-child algorithm | Two-stage problem
SLIDE 70
The problem-child algorithm | Two-stage problem
SLIDE 71
The problem-child algorithm | Two-stage problem
SLIDE 72
The problem-child algorithm | Two-stage problem
SLIDE 73
The problem-child algorithm | Two-stage problem
SLIDE 74
The problem-child algorithm | Two-stage problem
SLIDE 75
The problem-child algorithm | Two-stage problem
SLIDE 76
The problem-child algorithm | Two-stage problem
SLIDE 77 Let’s fjx some notation: Vn(xn) = min
xm,un
Cn(xn, un) + ∑
m∈R(n)
p(n, m)Vm(xm) s.t. xm = fm(xn, un), ∀m ∈ R(n), xm ∈ Xm, ∀m ∈ R(n), un ∈ Un(xn). We want to compute V0(x0).
The problem-child algorithm | The multistage problem
SLIDE 78
The problem-child algorithm | The multistage problem
SLIDE 79
The problem-child algorithm | The multistage problem
SLIDE 80
The problem-child algorithm | The multistage problem
SLIDE 81
The problem-child algorithm | The multistage problem
SLIDE 82
The problem-child algorithm | The multistage problem
SLIDE 83
The problem-child algorithm | The multistage problem
SLIDE 84
The problem-child algorithm | The multistage problem
SLIDE 85
The problem-child algorithm | The multistage problem
SLIDE 86
The problem-child algorithm | The multistage problem
SLIDE 87
The problem-child algorithm | The multistage problem
SLIDE 88
The problem-child algorithm | The multistage problem
SLIDE 89
The problem-child algorithm | The multistage problem
SLIDE 90
The problem-child algorithm | The multistage problem
SLIDE 91
The problem-child algorithm | The multistage problem
SLIDE 92
The problem-child algorithm | The multistage problem
SLIDE 93
The problem-child algorithm | The multistage problem
SLIDE 94
The problem-child algorithm | The multistage problem
SLIDE 95
The problem-child algorithm | The multistage problem
SLIDE 96
The problem-child algorithm | The multistage problem
SLIDE 97
The problem-child algorithm | The multistage problem
SLIDE 98
The problem-child algorithm | The multistage problem
SLIDE 99
The problem-child algorithm | The multistage problem
SLIDE 100
The problem-child algorithm | The multistage problem
SLIDE 101
The problem-child algorithm | The multistage problem
SLIDE 102
The problem-child algorithm | The multistage problem
SLIDE 103
The problem-child algorithm | The multistage problem
SLIDE 104
The problem-child algorithm | The multistage problem
SLIDE 105
The problem-child algorithm | The multistage problem
SLIDE 106
The problem-child algorithm | The multistage problem
SLIDE 107
The problem-child algorithm | The multistage problem
SLIDE 108
The problem-child algorithm | The multistage problem
SLIDE 109
Theorem lim
k→∞
¯ V k
0 (x0) − ¯
V k
0 (x0) = 0.
The problem-child algorithm | The multistage problem
SLIDE 110
Hydro-reservoir optimisation 20 stages 9 children per node 3 reservoirs
Results | A test problem
SLIDE 111
200 400 600 800 1,000 400 420 440 460 480 500 k Expected Cost
PC Results | Convergence plot
SLIDE 112
200 400 600 800 1,000 400 420 440 460 480 500 k Expected Cost
PC 95% Results | Convergence plot
SLIDE 113
Relative ϵ Lower Upper Time (s) Iterations LP Solves 20.0% 406.9 506.9 48 300 28,000 10.0% 413.1 457.7 137 530 50,600 5.0% 416.3 438.1 396 930 88,200 1.0% 419.0 423.1 7462 3650 346,100
Results | Convergence plot
SLIDE 114
100 200 300 400 500 600 700 800 900 1,000 390 400 410 420 k Expected Cost
PC Random Results | Convergence plot
SLIDE 115
Gap Confjdence Level 95% 97.5% 99% 99.9% 10% 440 570 760 1,240 5% 1,830 2,400 3,170 5,160 1% 48,690 63,600 84,370 137,200
Results | Convergence investigation
SLIDE 116
Gap Confjdence Level 95% 97.5% 99% 99.9% 10% 440 570 760 1,240 5% 1,830 2,400 3,170 5,160 1% 48,690 63,600 84,370 137,200
Results | Convergence investigation
SLIDE 117
Gap Confjdence Level 95% 97.5% 99% 99.9% 10% 440 570 760 1,240 5% 1,830 2,400 3,170 5,160 1% 48,690 63,600 84,370 137,200
Results | Convergence investigation
SLIDE 118
The problem child principle can be used in other settings too.
Saddle functions | Bounds for saddles
SLIDE 119 Suppose we wish to solve min
u∈U max v∈V EP[C(u, v, Z)]
We can apply the problem child algorithm in the same way.
Saddle functions | Bounds for saddles
SLIDE 120 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ C(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 121 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ C(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 122 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ C(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 123 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ C(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 124 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ C(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 125 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ C(ˆ u), ∀ˆ u, ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 126 u C(u)
¯ C(u) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ C(ˆ u), ∀ˆ u, + ⟨dˆ
v, v − ˆ
v⟩ ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 127 u v C(u, v)
¯ C(u, ˆ v) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u, ˆ v) + ⟨dˆ
v, v − ˆ
v⟩, ∀(ˆ u, ˆ v), ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 128 u v C(u, v)
¯ C(u, ˆ v) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u, ˆ v) + ⟨dˆ
v, v − ˆ
v⟩, ∀(ˆ u, ˆ v), ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 129 u v C(u, v)
¯ C(u, ˆ v) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ G(ˆ u, ˆ v) + ⟨dˆ
v, v − ˆ
v⟩, ∀(ˆ u, ˆ v), ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 130 u v C(u, v)
¯ C(u, v) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ C(ˆ u, ˆ v) + ⟨dˆ
v, v − ˆ
v⟩, ∀(ˆ u, ˆ v), ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 131 u v C(u, v)
¯ C(u, v) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ C(ˆ u, ˆ v) + ⟨dˆ
v, v − ˆ
v⟩, ∀(ˆ u, ˆ v), ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 132 u v C(u, v)
¯ C(u, v) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ C(ˆ u, ˆ v) + ⟨dˆ
v, v − ˆ
v⟩, ∀(ˆ u, ˆ v), ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 133 u v C(u, v)
¯ C(u, v) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ C(ˆ u, ˆ v) + ⟨dˆ
v, v − ˆ
v⟩, ∀(ˆ u, ˆ v), ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 134 u v C(u, v)
¯ C(u, v) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ C(ˆ u, ˆ v) + ⟨dˆ
v, v − ˆ
v⟩, ∀(ˆ u, ˆ v), ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 135 u v C(u, v)
¯ C(u, v) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ C(ˆ u, ˆ v) + ⟨dˆ
v, v − ˆ
v⟩, ∀(ˆ u, ˆ v), ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 136 u v C(u, v)
¯ C(u, v) = max
µ∈R,λ∈Rn
µ + ⟨λ, u⟩ s.t. µ + ⟨λ, ˆ u⟩ ≤ C(ˆ u, ˆ v) + ⟨dˆ
v, v − ˆ
v⟩, ∀(ˆ u, ˆ v), ||λ||∗ ≤ α.
Saddle functions | Bounds for saddles
SLIDE 137
u v C(u, v)
Saddle functions | Bounds for saddles
SLIDE 138
u v C(u, v)
Saddle functions | Bounds for saddles
SLIDE 139
u v C(u, v)
Saddle functions | Bounds for saddles
SLIDE 140
u v C(u, v)
Saddle functions | Bounds for saddles
SLIDE 141
u v C(u, v)
Saddle functions | Bounds for saddles
SLIDE 142
u v C(u, v)
Saddle functions | Bounds for saddles
SLIDE 143
u v C(u, v)
Saddle functions | Bounds for saddles
SLIDE 144
u v C(u, v)
Saddle functions | Bounds for saddles
SLIDE 145
u v C(u, v)
Saddle functions | Bounds for saddles
SLIDE 146
u v C(u, v)
Saddle functions | Bounds for saddles
SLIDE 147 Let’s fjx some rather complicated notation: Gn(xn, yn) = min
xm,un max ym,vn
Cn(xn, yn, un, vn) + ∑
m∈R(n)
p(n, m)Gm(xm, ym) s.t. xm = f x
m(xn, un), ∀m ∈ R(n),
ym = f y
m(yn, vn), ∀m ∈ R(n),
(xm, ym) ∈ Xm × Ym, ∀m ∈ R(n), (un, vn) ∈ Un(xn) × Vn(yn).
Saddle functions | Multistage formulation
SLIDE 148 Theorem
There exists a set of minimax dynamic programming equations for which G0(x0, y0) = min
u∈U(x),x∈X CVaRβ
[ ∑
0≤t≤T
Ct(xt(ω), ut(ω), Zt(ω)) ]
Saddle functions | Multistage formulation
SLIDE 149
Portfolio managment problem 12 stages 6 children per node 3 assests
Saddle functions | Multistage formulation
SLIDE 150 20 40 60 80 100 120 140 160 180 200
0% 5% 10% k Risk-adjusted yield Upper Bound Lower Bound
3 minutes 47 seconds
Saddle functions | Multistage formulation
SLIDE 151
CVaRβ Estimation Optimal Policy β0 = 0.2 β0 = 0.6 β0 = 1.0 β0 = 0.2 1.52% 1.30% 1.05% β0 = 0.6 2.38% 2.68% 2.66% β0 = 1.0 3.14% 3.73% 4.09%
Saddle functions | Multistage formulation
SLIDE 152
Conclusions
▶ Forming upper bounds ▶ Problem-child algorithm ▶ Deterministic bounds and deterministic convergence ▶ Saddle functions Baucke, R., Downward, A., & Zakeri, G. (2018). A deterministic algorithm for solving multistage stochastic minimax dynamic programmes. reganbaucke.github.io
SLIDE 153
Conclusions
▶ Forming upper bounds ▶ Problem-child algorithm ▶ Deterministic bounds and deterministic convergence ▶ Saddle functions Baucke, R., Downward, A., & Zakeri, G. (2018). A deterministic algorithm for solving multistage stochastic minimax dynamic programmes. reganbaucke.github.io
SLIDE 154
Conclusions
▶ Forming upper bounds ▶ Problem-child algorithm ▶ Deterministic bounds and deterministic convergence ▶ Saddle functions Baucke, R., Downward, A., & Zakeri, G. (2018). A deterministic algorithm for solving multistage stochastic minimax dynamic programmes. reganbaucke.github.io
SLIDE 155
SLIDE 156
The upper bound function Construction The problem-child algorithm Two-stage problem The multistage problem Results A test problem Convergence plot Convergence investigation Saddle functions Bounds for saddles Multistage formulation