32
Robust Optimization definitions of robust optimization robust linear programs robust cone programs chance constraints EE364b, Stanford University

Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Robust Optimization

• definitions of robust optimization

• robust linear programs

• robust cone programs

• chance constraints

EE364b, Stanford University

Page 2: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Robust optimizationconvex objective f0 : R

n → R, uncertainty set U , and fi : Rn × U → R,

x 7→ fi(x, u) convex for all u ∈ Ugeneral form

minimize f0(x)

subject to fi(x, u) ≤ 0 for all u ∈ U , i = 1, . . . ,m.

equivalent to

minimize f0(x)

subject to supu∈U

fi(x, u) ≤ 0, i = 1, . . . ,m.

• Bertsimas, Ben-Tal, El-Ghaoui, Nemirovski (1990s–now)

EE364b, Stanford University 1

Page 3: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Setting up robust problem

• can always replace objective f0 with supu∈U f0(x, u), rewrite inepigraph form to

minimize t

subject to supu

f0(x, u) ≤ t, supu

fi(x, u) ≤ 0, i = 1, . . . ,m

• equality constraints make no sense: a robust equality aT (x+ u) = b forall u ∈ U?

three questions:

• is robust formulation useful?

• is robust formulation computable?

• how should we choose U?

EE364b, Stanford University 2

Page 4: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Example failure for linear programming

c =

100199.9−5500−6100

A =

−.01 −.02 .5 .61 1 0 00 0 90 1000 0 40 50

100 199.9 700 800−I4

and b =

010002000800

1000000000

.

c vector of costs/profits for two drugs, constraints Ax � b on production

• what happens if we vary percentages .01, .02 (chemical composition ofraw materials) by .5% and 2%, i.e. .01± .00005 and .02± .0004?

EE364b, Stanford University 3

Page 5: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Example failure for linear programming

0.00 0.05 0.10 0.15 0.20 0.250

100

200

300

400

500

600

700

800

relative change

Frequency

Frequently lose 15–20% of profits

EE364b, Stanford University 4

Page 6: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Alternative robust LP

minimize cTx

subject to (A+∆)x � b, all ∆ ∈ U

where |∆11| ≤ .00005, |∆12| ≤ .0004, ∆ij = 0 otherwise

• solution xrobust has degradation provably no worse than 6%

EE364b, Stanford University 5

Page 7: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

How to choose uncertainty sets

• uncertainty set U a modeling choice

• common idea: let U be random variable, want constraints that

Prob(fi(x, U) ≥ 0) ≤ ǫ (1)

• typically hard (non-convex except in special cases)

• find set U such that Prob(U ∈ U) ≥ 1− ǫ, then sufficient conditionfor (1)

fi(x, u) ≤ 0 for all u ∈ U

EE364b, Stanford University 6

Page 8: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Uncertainty set with Gaussian data

minimize cTx

subject to Prob(aTi x > bi) ≤ ǫ, i = 1, . . . ,m

coefficient vectors ai i.i.d. N (a,Σ) and failure probability ǫ

• marginally aTi x ∼ N (aTi x, xTΣx)

• for ǫ = .5, just LP

minimize cTx subject to aTi x ≤ bi, i = 1, . . . ,m

• what about ǫ = .1, .9?

EE364b, Stanford University 7

Page 9: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Gaussian uncertainty sets

{x | Prob(aTi x > bi) ≤ ǫ} = {x | aTi x− bi − Φ−1(ǫ)√xTΣx ≤ 0}

ǫ = .9 ǫ = .5 ǫ = .1

EE364b, Stanford University 8

Page 10: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Problem is convex, so no problem?

not quite...consider quadratic constraint

‖Ax+Bu‖2 ≤ 1 for all ‖u‖∞ ≤ 1

• convex quadratic maximization in u

• solutions on extreme points u ∈ {−1, 1}n

• and NP-hard to maximize (even approximately [Hastad]) convexquadratics over hypercube

EE364b, Stanford University 9

Page 11: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Robust LPs

Important question: when is a robust LP still an LP (robust SOCP anSOCP, robust SDP an SDP)

minimize cTx

subject to (A+ U)x � b for U ∈ U .

can always represent formulation constraint-wise, consider only oneinequality

(a+ u)Tx ≤ b for all u ∈ U .• Simple example: U = {u ∈ Rn | ‖u‖∞ ≤ δ}, then

aTx+ δ ‖x‖1 ≤ b

EE364b, Stanford University 10

Page 12: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Polyhedral uncertainty

for matrix F ∈ Rm×n, g ∈ Rm,

(a+ u)Tx ≤ b for u ∈ U = {u ∈ Rn | Fu+ g � 0} .

duality essential for transforming (semi-)infinite inequality into tractableproblem

• Lagrangian for maximizing uTx:

L(u, λ) = xTu+λT (Fu+ g), supu

L(u, λ) =

{

+∞ if FTλ+ x 6= 0

λTg if FTλ+ x = 0.

• gives equivalent inequality constraints

aTx+ λTg ≤ b, FTλ+ x = 0, λ � 0.

EE364b, Stanford University 11

Page 13: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Portfolio optimization (with robust LPs)

• n assets i = 1, . . . , n, random multiplicative return Ri withE[Ri] = µi ≥ 1, µ1 ≥ µ2 ≥ · · · ≥ µn

• “certain” problem has solution xnom = e1,

maximize µTx subject toxT1 = 1 x � 0

• if asset i varies in range µi ± ui, robust problem

maximize

n∑

i=1

infu∈[−u1,ui]

(µi + u)xi subject to 1Tx = 1, x � 0

and equivalent

maximize µTx− uTx subject to 1Tx = 1, x � 0

EE364b, Stanford University 12

Page 14: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Robust LPs as SOCPs

norm-based uncertainty on data vectors a,

(a+ Pu)Tx ≤ b for u ∈ U = {u ∈ Rm | ‖u‖ ≤ 1},

gives dual-norm constraint

aTx+∥

∥PTx∥

∗≤ b

EE364b, Stanford University 13

Page 15: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Portfolio optimization (tigher control)

• Returns Ri ∈ [µi − ui, µi + ui] with ERi = µi

• guarantee return with probability 1− ǫ

maximizeµ,t

t subject to Prob

( n∑

i=1

Rixi ≥ t

)

≥ 1− ǫ

• value at risk is non-convex in x, approximate it?

• approximate with high-probability bounds

• less conservative than LP (certain returns) approach

EE364b, Stanford University 14

Page 16: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Portfolio optimization: probability approximation

• Hoeffding’s inequality

Prob

( n∑

i=1

(Ri − µi)xi ≤ −t

)

≤ exp

(

− t2

2∑n

i=1 x2iu

2i

)

.

• written differently

Prob

[

n∑

i=1

Rixi ≤ µTx− t

( n∑

i=1

u2ix2i

)12

]

≤ exp

(

−t2

2

)

• set t =√

2 log(1/ǫ), gives robust problem

maximize µTx−√

2 log1

ǫ‖diag(u)x‖2 subject to 1Tx = 1, x � 0.

EE364b, Stanford University 15

Page 17: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Portfolio optimization comparison

• data µi = 1.05 + 3(n−i)10n , uncertainty |ui| ≤ ui = .05 + n−i

2n and un = 0

• nominal minimizer xnom = e1

• conservative (LP) minimizer xcon = en (guaranteed 5% return),

• robust (SOCP) minimizer xǫ for value-at risk ǫ = 2× 10−4

EE364b, Stanford University 16

Page 18: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Portfolio optimization comparison

0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.00

2000

4000

6000

8000

10000

Return RTx

Frequency

xnomxconxǫ

Returns chosen randomly in µi ± ui, 10,000 experiments

EE364b, Stanford University 17

Page 19: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

LPs with conic uncertainty

• convex cone K, dual cone K∗ = {v ∈ Rm | vTx ≥ 0, all x ∈ K}• recall x �K y iff x− y ∈ K

• robust inequality

(a+ u)Tx ≤ b for all u ∈ U = {u ∈ Rn | Fu+ g �K 0}

• under constraint qualification, equivalent to

aTx+ λTg ≤ b, λ �K∗ 0, x+ FTλ = 0

EE364b, Stanford University 18

Page 20: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Example calculation: LP with semidefinite uncertainty

• symmetric matrices A0, A1, . . . , Am ∈ Sk, robust counterpart toaTx ≤ b

(a+ Pu)Tx ≤ b for all u s.t. A0 +m∑

i=1

uiAi � 0

• cones K = Sk+, K

∗ = Sk+

• Slater condition: u such that A0 +∑

iAiui ≻ 0

• duality gives equivalent representation

aTx+Tr(ΛA0) ≤ b, PTx+

Tr(ΛA1)...

Tr(ΛAm)

= 0, Λ � 0.

EE364b, Stanford University 19

Page 21: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Robust second-order cone problems

• Lorentz/SOCP cone, nominal inequality

‖Ax+ b‖2 ≤ cTx+ d

• A = [a1 · · · an]T ∈ Rm×n, allow A, c to vary

• interval uncertainty

• ellipsoidal uncertainty

• matrix uncertainty

EE364b, Stanford University 20

Page 22: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

SOCPs with interval uncertaintyentries Aij perturbed by ∆ij with |∆ij| ≤ δ, c by cone:

‖(A+∆)x+ b‖2 ≤ (c+ u)Tx+ d all ‖∆‖∞ ≤ δ, u ∈ U• split into two inequalities (first is robust LP)

‖(A+∆)x+ b‖2 ≤ t, t ≤ (c+ u)Tx+ d

second

sup∆:|∆ij|≤δ

‖(A+∆)x+ b‖2 = sup∆:|∆ij|≤δ

( m∑

i=1

[(ai +∆i)Tx+ bi]

2

)1/2

= sup∆∈Rm×n

{

‖z‖2 | zi = aTi x+∆Ti x+ bi, ‖∆i‖∞ ≤ δ

}

= inf{

‖z‖2 | zi ≥ |aTi x+ b|+ δ ‖x‖1}

.

EE364b, Stanford University 21

Page 23: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

SOCPs with ellipse-like uncertainty

• matrices P1, . . . , Pm ∈ Rn×n, u ∈ Rm with ‖u‖ ≤ 1

• robust/uncertain inequality

( m∑

i=1

[(ai + Piu)Tx+ bi]

2

)1/2

≤ t for all u s.t. ‖u‖2 ≤ 1.

• rewrite zi ≥ sup‖u‖≤1 |aTi x+ bi + uTPTi x|, equivalent

‖z‖2 ≤ t, zi ≥ |aTi x+ bi|+∥

∥PTi x

∗, i = 1, . . . ,m.

EE364b, Stanford University 22

Page 24: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

SOCPs wtih matrix uncertainty

• Matrix P ∈ Rm×n and radius δ, uncertain inequality

‖(A+ P∆)x+ b‖2 ≤ t, for ∆ ∈ Rn×n s.t. ‖∆‖ ≤ δ,

• tool one: Schur complements gives equivalence of

‖x‖2 ≤ t and

[

t xT

x tIn

]

� 0.

• tool two: homogeneous S-lemma

xTAx ≥ 0 implies xTBx ≥ 0 if and only if ∃ λ ≥ 0 s.t. B � λA.

EE364b, Stanford University 23

Page 25: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

SOCPs with matrix uncertainty

‖(A+ P∆)x+ b‖2 ≤ t, for ∆ ∈ Rn×n s.t. ‖∆‖ ≤ δ,

equivalent to

[

t ((A+ P∆)x+ b)T

(A+ P∆)x+ b tIm

]

� 0 for ‖∆‖ ≤ 1.

or

ts2+2s((A+P∆)x+ b)Tv+ t ‖v‖22 ≥ 0 for all s ∈ R, v ∈ Rm, ‖∆‖ ≤ 1.

EE364b, Stanford University 24

Page 26: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

SOCPs with matrix uncertainty: final result

‖(A+ P∆)x+ b‖2 ≤ t, for ∆ ∈ Rn×n s.t. ‖∆‖ ≤ δ,

equivalent to

t (Ax+ b)T xT

Ax+ b t− λPPT 0x 0 λIn

� 0.

EE364b, Stanford University 25

Page 27: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Example: robust regression

minimize ‖Ax− b‖2where A corrupted by Gaussian noise,

A = A⋆ +∆ for ∆ij ∼ N (0, 1)

decide to be robust to ∆ by

• bounding individual entries ∆ij

• bounding norms of rows ∆i

• bounding (ℓ2-operator) norm of ∆

EE364b, Stanford University 26

Page 28: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Choice of uncertainty in robust regression

Theorem [e.g. Vershynin 2012] Let ∆ ∈ Rm×n have i.i.d. N (0, 1) entries.For all t ≥ 0, the following hold:

• For each pair i, j

Prob(|∆ij| ≥ t) ≤ 2 exp

(

−t2

2

)

.

• For each i

Prob(‖∆i‖2 ≥√n+ t) ≤ exp

(

−t2

2

)

.

• For the entire matrix ∆,

Prob(‖∆‖ ≥ √m+

√n+ t) ≤ exp

(

−t2

2

)

.

EE364b, Stanford University 27

Page 29: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Choice of uncertainty in robust regressionidea: choose bounds t(δ) to guarantee Prob(deviation ≥ t(δ)) ≤ δ

• coordinate-wise: t∞(δ)2 = 2 log 2mnδ ,

Prob(maxi,j

|∆ij| ≥ t∞(δ)) ≤ 2mn exp

(

−t∞(δ)2

2

)

= δ

• row-wise: t2(δ)2 = 2 log m

δ ,

Prob(maxi

‖∆i‖2 ≥ t2(δ)) ≤ m exp

(

−t2(δ)2

2

)

= δ

• matrix-norm: top(δ)2 = 2 log 1

δ ,

Prob(‖∆‖ ≥ √n+

√m+ top(δ)) ≤ exp

(

−top(δ)2

2

)

= δ.

EE364b, Stanford University 28

Page 30: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Robust regression results

minimizex

sup∆∈U

‖(A+∆)x− b‖2where U is one of the three uncertainty sets

U∞ = {∆ | ‖∆‖∞ ≤ t∞(δ)},U2 = {∆ | ‖∆i‖2 ≤

√n+ t2(δ) for i = 1, . . .m},

Uop = {∆ | ‖∆‖ ≤ √n+

√m+ top(δ)}.

EE364b, Stanford University 29

Page 31: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Robust regression results

10-10 10-9 10-8 10-7 10-6 10-5 10-4 10-3 10-2 10-110-1

100

101

102

δ

x∞x2xop

‖Ax−

b‖2−

‖Ax⋆−

b‖2

Objective value ‖Ax− b‖2 − ‖Ax⋆ − b‖2 versus δ, where x⋆ minimizesnominal objective and x denotes robust solution

EE364b, Stanford University 30

Page 32: Robust Optimization - Stanford University · Robust Optimization • definitions of robust optimization • robust linear programs • robust cone programs • chance constraints

Robust regression results

8 10 12 14 16 18 200

500

1000

1500

2000

2500

3000

3500

Frequency

‖(A+∆)x− b‖2

xnomxop

0 10 20 30 40 50 60 700

2000

4000

6000

8000

10000

12000

14000

16000

18000

Frequency

‖(A+∆)x− b‖2

xnomxop

x2x∞

• residuals for the robust least squares problem ‖(A+∆)x− b‖2• uncertainty sets Unom = {0} vs. U∞, U2, Uop

• experiment with N = 105 random Gaussian matrices

EE364b, Stanford University 31