Using ¡Predictions ¡in ¡Online ¡Optimization: ¡ Looking ¡Forward ¡with ¡an ¡Eye ¡on ¡the ¡Past
Niangjun ¡Chen ¡
Joint ¡work ¡with ¡Joshua ¡Comden, ¡Zhenhua Liu, ¡Anshul Gandhi, ¡and ¡Adam ¡Wierman
1
Using Predictions in Online Optimization: Looking Forward - - PowerPoint PPT Presentation
Using Predictions in Online Optimization: Looking Forward with an Eye on the Past Niangjun Chen Joint work with Joshua Comden, Zhenhua Liu, Anshul Gandhi, and
Joint ¡work ¡with ¡Joshua ¡Comden, ¡Zhenhua Liu, ¡Anshul Gandhi, ¡and ¡Adam ¡Wierman
1
2
3
4
5
6
7
Prediction ¡error
8
Prediction ¡error
9
Prediction ¡error
34∈6 7 𝑑 𝑦8, 𝑧8
switching ¡cost
convex
e.g. ¡online ¡tracking ¡cost 𝑑 𝑦8, 𝑧8
Time Information ¡Available Decision 1 𝑧"|> 𝑧(|> 𝑧)|> … ¡ 𝑦" 2 𝑧" 𝑧(|" 𝑧)|" … 𝑦( 3 𝑧" 𝑧( 𝑧)|( … 𝑦) 4 𝑧" 𝑧( 𝑧) … 𝑦* ¡
Given ¡prediction ¡of ¡𝑧8 ¡at ¡time ¡𝜐, 𝑧8|A
10
8 RSAT"
11
[Gan et ¡al ¡2013] ¡[Chen ¡et ¡al ¡2014] ¡[Chen ¡et ¡al ¡2015]
8 RSAT"
9
[Gan et ¡al ¡2013] ¡[Chen ¡et ¡al ¡2014] ¡[Chen ¡et ¡al ¡2015]
8 RSAT"
How ¡important ¡is ¡the ¡noise ¡at ¡time ¡ ¡𝑢 − 𝑡 for ¡the ¡prediction ¡of ¡𝑢?
13
𝑢 = 𝑡 𝜏 𝑔 0 ( + ⋯ + 𝑔 𝑡 ()
8 RSAT"
14
[Gan et ¡al ¡2013] ¡[Chen ¡et ¡al ¡2014] ¡[Chen ¡et ¡al ¡2015] Prediction ¡of ¡wide-‑sense ¡stationary ¡process ¡using ¡Wiener ¡filter Prediction ¡of ¡linear ¡dynamical ¡system ¡using ¡Kalman filter
15
16
17
18
19
𝑧8T"|8, 𝑧8T(|8, … , 𝑧8TX|8, 𝑧8TXT"|8, 𝑧8TXT(|8, … 𝑦8T", 𝑦8T(, … , 𝑦8TX = argmin 7 𝑑(𝑦8, 𝑧8|R) + 𝛾 𝑦8 − 𝑦8<"
" 8TX RS8T"
20
𝑧8T"|8, 𝑧8T(|8, … , 𝑧8TX|8, 𝑧8TXT"|8, 𝑧8TXT(|8, … 𝑧8T(|8T", 𝑧8T)|8T", … , 𝑧8TXT"|8T", 𝑧8TXT(|8T", 𝑧8TXT)|8T", … 𝑦8T(, 𝑦8T), … 𝑦8TXT"
21
𝑧8T"|8, 𝑧8T(|8, … , 𝑧8TX|8, 𝑧8TXT"|8, 𝑧8TXT(|8, … 𝑧8T(|8T", 𝑧8T)|8T", … , 𝑧8TXT"|8T", 𝑧8TXT(|8T", 𝑧8TXT)|8T", … 𝑦8T), 𝑦8T*, … 𝑦8TXT( 𝑧8T)|8T(, 𝑧8T*|8T(, … , 𝑧8TXT(|8T(, 𝑧8TXT)|8T(, 𝑧8TXT*|8T(, …
22
𝑧8T"|8, 𝑧8T(|8, … , 𝑧8TX|8, 𝑧8TXT"|8TX, 𝑧8TXT(|8TX, …
𝑦8T", 𝑦8T(, … , 𝑦8TX ¡= argmin
7 𝑑(𝑦8, 𝑧8|R) + 𝛾 𝑦8 − 𝑦8<"
" 8TX RS8T"
23
𝑧8T"|8, 𝑧8T(|8, … , 𝑧8TX|8, 𝑧8TXT"|8TX, 𝑧8TXT(|8TX, …
𝑦8T", 𝑦8T(, … , 𝑦8TX 𝑦8TXT", 𝑦8TXT(, … , 𝑦8T(X
24
X
_∑
a X aS"
25
"
"
" … , 𝑦8TX<( "
), 𝑦8T* )
)
)
"
(
)
(
(, 𝑦8T* (
(
26
27
28
𝑧8T"|8, 𝑧8T(|8, … , 𝑧8TX|8, 𝑧8TXT"|8, 𝑧8TXT(|8, …
Lookahead ¡𝑥 steps
29
𝑧8T"|8, 𝑧8T(|8, … , 𝑧8TX|8, 𝑧8TXT"|8, 𝑧8TXT(|8, … 𝑦8T", 𝑦8T(, … , 𝑦8TX = argmin 7 𝑑(𝑦8, 𝑧8|R) + 𝛾 𝑦8 − 𝑦8<"
" 8TX RS8T"
30
𝑧8T"|8, 𝑧8T(|8, … , 𝑧8TX|8, 𝑧8TXT"|8, 𝑧8TXT(|8, … 𝑦8T", 𝑦8T(, … , 𝑦8TX = argmin 7 𝑑(𝑦8, 𝑧8|R) + 𝛾 𝑦8 − 𝑦8<"
" 8TX RS8T"
commits ¡𝑤 steps
31
𝑦8<(
"
, 𝑦8<"
"
, 𝑦8
" … , 𝑦8TX<( "
𝑦8<"
(
, 𝑦8
(, 𝑦8T* (
… , 𝑦8TX<"
(
𝑦8
), 𝑦8T* )
, 𝑦8Tc
)
… , 𝑦8TX
)
𝑦8 = (𝑦8
", 𝑦8 (, 𝑦8 ))
32
𝑧8T"|8, 𝑧8T(|8, … 𝑧8Ti|8, 𝑧8TiT"|8, … , 𝑧8TX|8, 𝑧8TXT"|8, 𝑧8TXT(|8, … 𝑦8T", 𝑦8T(, … , 𝑦8Ti, 𝑦8TiT", … , 𝑦8TX = argmin 7 𝑑(𝑦8, 𝑧8|R) + 𝛾 𝑦8 − 𝑦8<"
" 8TX RS8T"
𝑦(a) = (… , 𝑦8T"
a
, 𝑦8T(
a
, … , 𝑦8Ti
a
, )
33
𝑧8T"|8, 𝑧8T(|8, … 𝑧8Ti|8, 𝑧8TiT"|8, … , 𝑧8TX|8, 𝑧8TXT"|8, 𝑧8TXT(|8, … 𝑦8TiT", 𝑦8TiT(, … , 𝑦8T(i, 𝑦8T(iT", … , 𝑦8TXTi 𝑧8TiT"|8Ti, … 𝑧8T(i|8Ti, 𝑧8T(iT"|8Ti … , 𝑧8TiTX|8Ti , 𝑧8TiTXT"|8Ti, …
𝑦(a) = (… , 𝑦8T"
a
, 𝑦8T(
a
, … , 𝑦8Ti
a
, 𝑦8TiT"
a
, 𝑦8TiT(
a
, … , 𝑦8T(i
a
)
34
𝑧8T"|8, 𝑧8T(|8, … 𝑧8Ti|8, 𝑧8TiT"|8, … , 𝑧8TX|8, 𝑧8TXT"|8, 𝑧8TXT(|8, … 𝑦8T(iT", 𝑦8T(iT(, … , 𝑦8T)i, 𝑦8T)iT", … , 𝑦8TXT(i 𝑧8TiT"|8Ti, … 𝑧8T(i|8Ti, 𝑧8T(iT"|8Ti … , 𝑧8TiTX|8Ti , 𝑧8TiTXT"|8Ti, … 𝑧8T(iT"|8T(i, … 𝑧8T)i|8T(i, … , 𝑧8T(iTX|8Ti , 𝑧8T(iTXT"|8T(i, …
𝑦(a) = (… , 𝑦8T"
a
, 𝑦8T(
a
, … , 𝑦8Ti
a
, 𝑦8TiT"
a
, 𝑦8TiT(
a
, … , 𝑦8T(i
a
, 𝑦8T(iT"
a
, 𝑦8T(iT(
a
, … , 𝑦8T)i
a
)
35
𝑧8T"|8, 𝑧8T(|8, … 𝑧8Ti|8, 𝑧8TiT"|8, … , 𝑧8TX|8, 𝑧8TXT"|8, 𝑧8TXT(|8, … 𝑧8TiT"|8Ti, … 𝑧8T(i|8Ti, 𝑧8T(iT"|8Ti … , 𝑧8TiTX|8Ti , 𝑧8TiTXT"|8Ti, … 𝑧8T(iT"|8T(i, … 𝑧8T)i|8T(i, … , 𝑧8T(iTX|8Ti , 𝑧8T(iTXT"|8T(i, …
𝑦(a) = (… , 𝑦8T"
a
, 𝑦8T(
a
, … , 𝑦8Ti
a
, 𝑦8TiT"
a
, 𝑦8TiT(
a
, … , 𝑦8T(i
a
, 𝑦8T(iT"
a
, 𝑦8T(iT(
a
, … , 𝑦8T)i
a
, … )
36
𝑦8T(iT", 𝑦8T(iT(, … , 𝑦8T)i, 𝑦8T)iT", … , 𝑦8TXT(i
𝑧8T"|8, 𝑧8T(|8, … 𝑧8Ti|8, 𝑧8TiT"|8, … , 𝑧8TX|8, 𝑧8TXT"|8, 𝑧8TXT(|8, … 𝑦8T(iT", 𝑦8T(iT(, … , 𝑦8T)i, 𝑦8T)iT", … , 𝑦8TXT(i 𝑧8TiT"|8Ti, … 𝑧8T(i|8Ti, 𝑧8T(iT"|8Ti … , 𝑧8TiTX|8Ti , 𝑧8TiTXT"|8Ti, … 𝑧8T(iT"|8T(i, … 𝑧8T)i|8T(i, … , 𝑧8T(iTX|8Ti , 𝑧8T(iTXT"|8T(i, …
𝑦(a) = (… , 𝑦8T"
a
, 𝑦8T(
a
, … , 𝑦8Ti
a
, 𝑦8TiT"
a
, 𝑦8TiT(
a
, … , 𝑦8T(i
a
, 𝑦8T(iT"
a
, 𝑦8T(iT(
a
, … , 𝑦8T)i
a
, … ) 𝑦(i) = (… , 𝑦8T"
i
, 𝑦8T(
i
, … , 𝑦8Ti
i
, 𝑦8TiT"
i
, 𝑦8TiT(
i
, … , 𝑦8T(i
i
, 𝑦8T(iT"
i
, 𝑦8T(iT(
i
, … , 𝑦8T)i
i
, … ) 𝑦(") = (… , 𝑦8T"
"
, 𝑦8T(
"
, … , 𝑦8Ti
"
, 𝑦8TiT"
"
, 𝑦8TiT(
"
, … , 𝑦8T(i
"
, 𝑦8T(iT"
"
, 𝑦8T(iT(
"
, … , 𝑦8T)i
"
, … ) 𝑤 FHC(v) ¡algorithms ⋮ ⋮
37
𝑧8T"|8, 𝑧8T(|8, … 𝑧8Ti|8, 𝑧8TiT"|8, … , 𝑧8TX|8, 𝑧8TXT"|8, 𝑧8TXT(|8, … 𝑦8T(iT", 𝑦8T(iT(, … , 𝑦8T)i, 𝑦8T)iT", … , 𝑦8TXT(i 𝑧8TiT"|8Ti, … 𝑧8T(i|8Ti, 𝑧8T(iT"|8Ti … , 𝑧8TiTX|8Ti , 𝑧8TiTXT"|8Ti, … 𝑧8T(iT"|8T(i, … 𝑧8T)i|8T(i, … , 𝑧8T(iTX|8Ti , 𝑧8T(iTXT"|8T(i, …
𝑦(a) = (… , 𝑦8T"
a
, 𝑦8T(
a
, … , 𝑦8Ti
a
, 𝑦8TiT"
a
, 𝑦8TiT(
a
, … , 𝑦8T(i
a
, 𝑦8T(iT"
a
, 𝑦8T(iT(
a
, … , 𝑦8T)i
a
, … ) 𝑦^]^ 𝑢 = 1 𝑤 7 𝑦8
a i aS"
𝑦(i) = (… , 𝑦8T"
i
, 𝑦8T(
i
, … , 𝑦8Ti
i
, 𝑦8TiT"
i
, 𝑦8TiT(
i
, … , 𝑦8T(i
i
, 𝑦8T(iT"
i
, 𝑦8T(iT(
i
, … , 𝑦8T)i
i
, … ) 𝑦(") = (… , 𝑦8T"
"
, 𝑦8T(
"
, … , 𝑦8Ti
"
, 𝑦8TiT"
"
, 𝑦8TiT(
"
, … , 𝑦8T(i
"
, 𝑦8T(iT"
"
, 𝑦8T(iT(
"
, … , 𝑦8T)i
"
, … ) ⋮ ⋮
38
𝑤 FHC(v) ¡algorithms
𝑧8T"|8, 𝑧8T(|8, … 𝑧8Ti|8, 𝑧8TiT"|8, … , 𝑧8TX|8, 𝑧8TXT"|8, 𝑧8TXT(|8, … 𝑦8T(iT", 𝑦8T(iT(, … , 𝑦8T)i, 𝑦8T)iT", … , 𝑦8TXT(i 𝑧8TiT"|8Ti, … 𝑧8T(i|8Ti, 𝑧8T(iT"|8Ti … , 𝑧8TiTX|8Ti , 𝑧8TiTXT"|8Ti, … 𝑧8T(iT"|8T(i, … 𝑧8T)i|8T(i, … , 𝑧8T(iTX|8Ti , 𝑧8T(iTXT"|8T(i, …
𝑤 = 1 RHC, 𝑤 = 𝑥 AFHC 𝑦(a) = (… , 𝑦8T"
a
, 𝑦8T(
a
, … , 𝑦8Ti
a
, 𝑦8TiT"
a
, 𝑦8TiT(
a
, … , 𝑦8T(i
a
, 𝑦8T(iT"
a
, 𝑦8T(iT(
a
, … , 𝑦8T)i
a
, … ) 𝑦(i) = (… , 𝑦8T"
i
, 𝑦8T(
i
, … , 𝑦8Ti
i
, 𝑦8TiT"
i
, 𝑦8TiT(
i
, … , 𝑦8T(i
i
, 𝑦8T(iT"
i
, 𝑦8T(iT(
i
, … , 𝑦8T)i
i
, … ) 𝑦(") = (… , 𝑦8T"
"
, 𝑦8T(
"
, … , 𝑦8Ti
"
, 𝑦8TiT"
"
, 𝑦8TiT(
"
, … , 𝑦8T(i
"
, 𝑦8T(iT"
"
, 𝑦8T(iT(
"
, … , 𝑦8T)i
"
, … ) ⋮ ⋮ 𝑦^]^ 𝑢 = 1 𝑤 7 𝑦8
a i aS"
39
𝑤 FHC(v) ¡algorithms
a s i aS"
40
a s i aS"
41
a s i aS"
42
a s i aS"
43
a s i aS"
44
a s i aS"
45
a s i aS"
s, ∀𝑦, 𝑧", 𝑧(
46
a s i aS"
a ( ≜ 𝐅
(
a RS"
47
a s i aS"
48
𝑙
a s i aS"
49
a s i aS"
50
a s i aS"
51
52
53
54
55
56
Prediction ¡error ¡ dominant Switching ¡cost ¡dominant Intermediate
RHC AFHC
{| }~• > 𝛽 2𝑥 "T•
€
{• }~• < ( ¡sT(
(𝐻𝑈𝜏s
s (
57
{| }~• > 𝐼(𝑀)
{• }~• < ( sT(
Intermediate Prediction ¡error ¡dominant Switching ¡cost ¡dominant
RHC AFHC
58
s ( 𝛽𝑀 − 2 + 1
{| }~• > …€ (("<…€)
{• }~• < …€ (("T…) ¡
59
Prediction ¡error ¡dominant Switching ¡cost ¡dominant Intermediate
RHC AFHC
a s i aS"
60
a s i aS"
61
62