dantzig -wolfe decomposition

21
1 Dantzig-Wolfe Dantzig-Wolfe Decomposition Decomposition

Upload: kiara

Post on 11-Jan-2016

219 views

Category:

Documents


7 download

DESCRIPTION

Dantzig -Wolfe Decomposition. Outline. block structure of a problem representing a point by extreme points Revised Simplex to the extreme point representation an example. General Problem. min s . t . B 1 x 1 = b 1 , B 2 x 2 = b 2 , … - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Dantzig -Wolfe Decomposition

1

Dantzig-Wolfe DecompositionDantzig-Wolfe Decomposition

Page 2: Dantzig -Wolfe Decomposition

2

OutlineOutline

block structure of a problem

representing a point by extreme points

Revised Simplex to the extreme point representation

an example

Page 3: Dantzig -Wolfe Decomposition

General ProblemGeneral Problem

min

s.t.

B1x1 = b1,

B2x2 = b2,

BKxK = bK,

0 xk, k = 1, 2, …, K.  

common in network-based problems distribution of K types of

products

Bkxk = bk: constraints related to the flow of the kth type of products

constraints of common resources for the K products:

3

T T T1 1 2 2 ... ,K K c x c x c x

1 1 2 2 0... ,K K A x A x A x b

1 1 2 2 0... K K A x A x A x b

Page 4: Dantzig -Wolfe Decomposition

4

General ProblemGeneral Problem

min s.t.

B1x1 = b1,

B2x2 = b2,

BKxK = bK,

0 xk, k = 1, 2, …, K.  

T T T1 1 2 2 ... ,K K c x c x c x

1 1 2 2 0... ,K K A x A x A x b

Page 5: Dantzig -Wolfe Decomposition

5

General ProblemGeneral Problem

min s.t.

B1x1 = b1,

B2x2 = b2,

BKxK = bK,

0 xk, k = 1, 2, …, K.  

T T T1 1 2 2 ... ,K K c x c x c x

1 1 2 2 0... ,K K A x A x A x b

Possible to avoid solving a large problem?

Page 6: Dantzig -Wolfe Decomposition

6

A Numerical Example A Numerical Example

Problem P2:

min –3x1 – 2x2 – 2x3 – 4x4,

s.t. x1 + x2 + 2x3 + x4 10,

x1 + 2x2 8,

x2 3,

x3 + 3x4 6,

x3 4,

xi 0.

Page 7: Dantzig -Wolfe Decomposition

7

A Numerical Example A Numerical Example

feasible region: {(x1, x2): x1 + 2x2 8, x2 3} extreme points:

a feasible point: convex combination of the extreme points

0 8 2 0, , , .

0 0 3 3

111 12 13 14

2

0 8 2 0;

0 0 3 3

x

x

11 12 13 14 1;

11 12 13 140 , , , .

Page 8: Dantzig -Wolfe Decomposition

8

A Numerical Example A Numerical Example

feasible region: {(x3, x4): x3 + 3x4 6, x3 4} extreme points:

a feasible point: convex combination of the extreme points

0 4 4 0, , , .

0 0 2 / 3 2

321 22 23 242

4 3

40 8 0,

0 0 2

x

x

21 22 23 24 1,

21 22 23 240 , , , .

Page 9: Dantzig -Wolfe Decomposition

9

A Numerical Example A Numerical Example

Problem P3: problem in terms of extreme points

min -3(812+213) – 2(313+314) – 2(422+423) – 4( 23+224),

s.t. (812+213) + (313+314) + 2(422+423) + ( 23+224) 10,

11 + 12 + 13 + 14 = 1,

21 + 22 + 23 + 24 = 1,

ij 0, i = 1, 2; j = 1, 2, 3, 4.

a subspace Bkxk = bk is represented by a single constraint n kn = 1

Page 10: Dantzig -Wolfe Decomposition

10

A Numerical Example A Numerical Example

Problem P3: problem in terms of extreme points

min –2412 – 1213 – 614 – 822 – (32/3)23 – 824,

s.t. 812 + 513 + 314 + 822 +8 23 +224 10,

11 + 12 + 13 + 14 = 1,

21 + 22 + 23 + 24 = 1,

ij 0, i = 1, 2; j = 1, 2, 3, 4. The previous representation suits DW Decomposition more.

Page 11: Dantzig -Wolfe Decomposition

11

Practical? Practical?

impractical approach

impossible to generate all the extreme points of a block Bkxk = bk

Dantzig-Wolfe Decomposition: check all extremely points without explicitly generating them

Page 12: Dantzig -Wolfe Decomposition

12

General ProblemGeneral Problem

K blocks, Bkxk = bk, k = 1, …, K

Nk extreme points in the kth block

dual variable 0

dual variable 1

dual variable 2

dual variable K

Page 13: Dantzig -Wolfe Decomposition

13

Reduced Cost Reduced Cost for a Non-Basic Variable for a Non-Basic Variable knkn

reduced cost of kn

T 1kn kn knc c Bc B P T T 1

ˆ

0

ˆ1

0

k kn

k kn

B

A X

= c X c B

T

0ˆ ˆ .k kn k kn k = c X X

Page 14: Dantzig -Wolfe Decomposition

14

Most Negative Reduced CostMost Negative Reduced Cost

T0

,ˆ ˆmin k kn k kn k

k n c X A X

T0

ˆ ˆmin min k kn k kn kk n

c X A X

T0

ˆ ˆmin k kn k kn kn

c X A X

T0min

k k kk k k k k

B X bc X A X

Check each extreme point for each block, which is equivalent to solving a linear program. Result: Solving K+1 small linear programs.

where

Page 15: Dantzig -Wolfe Decomposition

15

General ApproachGeneral Approach

1 Form the master program (MP) by the representation

2 Get a feasible solution of the MP; find the corresponding

3 Solve the subproblems to check the reduced costs of kn

3.1 stop if the MP is optimal;

3.2 else carry a standard revised simplex iteration (i.e., identifying the entering and leaving variables,

stopping for an unbounded problem , and determining B-1 otherwise)

3.3 go back to 2 if the problem is not unbounded

Page 16: Dantzig -Wolfe Decomposition

16

An Example of An Example of the Dantzig-Wolfe Approachthe Dantzig-Wolfe Approach

min –3y1 – 2y2 – 2y3 – 4y4,

s.t. y1 + y2 + 2y3 + y4 10,

y1 + 2y2 8,

y2 3,

y3 + 3y4 6,

y3 4,

yi 0.

Page 17: Dantzig -Wolfe Decomposition

17

An Example of An Example of the Dantzig-Wolfe Approachthe Dantzig-Wolfe Approach

problem in general form with1 3

1 22 4

, ,y y

y y

x x

T T1 2( 3, 2), ( 2, 4), c c

1 2 0(1,1), (1,1), 10, A A b

1 11 2 8

, ,0 1 3

B b 2 2

1 3 6, ,

1 0 4

B b

1 20 0

, .0 0

x x

Page 18: Dantzig -Wolfe Decomposition

18

An Example of An Example of the Dantzig-Wolfe Approach the Dantzig-Wolfe Approach

let be the extreme points of B1x1 = b1

any point in B1x1 = b1:

similarly, any point in B2x2 = b2:

11 12 13 14ˆ ˆ ˆ ˆ, , ,X X X X

1

2

y

y

4 T1 1 1

1

ˆn n

n c X

3

4

y

y

4 T2 2 2

1

ˆn n

n c X

Page 19: Dantzig -Wolfe Decomposition

19

An Example of An Example of the Dantzig-Wolfe Approach the Dantzig-Wolfe Approach

in terms of the extreme points

Page 20: Dantzig -Wolfe Decomposition

20

An Example of An Example of the Dantzig-Wolfe Approach the Dantzig-Wolfe Approach

to solve the problem, introduce the slack variable x5 and artificial variables x6 and x7

Page 21: Dantzig -Wolfe Decomposition

21

An Example of An Example of the Dantzig-Wolfe Approach the Dantzig-Wolfe Approach

initial basic variable xB = (x5, x6, x7)T, B = I,

(cB)T = (0, M, M), b = (10, 1, 1)T

= (cB)TB = (0, M, M)

for the kth subproblem, the reduced costs: T

0ˆ ˆmin k kn k kn k

n c X A X

T0min

k k kk k k k k

B X bc X A X