+ All Categories
Home > Documents > Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2...

Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2...

Date post: 04-Jul-2020
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
34
Block Angular Structure with DW Decomposition John E. Mitchell Department of Mathematical Sciences RPI, Troy, NY 12180 USA February 2018 Mitchell Block Angular Structure 1 / 24
Transcript
Page 1: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Block Angular Structure with DW Decomposition

John E. Mitchell

Department of Mathematical Sciences

RPI, Troy, NY 12180 USA

February 2018

Mitchell Block Angular Structure 1 / 24

Page 2: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure

Outline

1 Primal block-angular structure

The aggregated form

The disaggregated form

2 Other block angular structures

3 If X is too simple

4 Initializing

Mitchell Block Angular Structure 2 / 24

Page 3: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure

Introduction

In an LP with primal block angular structure, the structure can be

exploited so that the subproblem separates into several subproblems

with different sets of variables. The linear program has the structure:

minx cT1

x1 + cT2

x2 + . . . + cTp xp

subject to A01x1 + A02x2 + . . . + A0pxp = b0 (P)A1x1 = b1

A2x2 = b2

. . ....

Apxp = bpx1, x2, . . . , xp � 0

Each xi 2 IRni , each Ai 2 IRmi⇥ni , each A0i 2 IRm⇥ni , and each vector

bi 2 IRmi , ci 2 IRni . Let n :=Pp

i=1ni . Note that each xi is a vector.

Mitchell Block Angular Structure 3 / 24

nisi:n÷÷÷!i§

Page 4: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure

Introduction

In an LP with primal block angular structure, the structure can be

exploited so that the subproblem separates into several subproblems

with different sets of variables. The linear program has the structure:

minx cT1

x1 + cT2

x2 + . . . + cTp xp

subject to A01x1 + A02x2 + . . . + A0pxp = b0 (P)A1x1 = b1

A2x2 = b2

. . ....

Apxp = bpx1, x2, . . . , xp � 0

Each xi 2 IRni , each Ai 2 IRmi⇥ni , each A0i 2 IRm⇥ni , and each vector

bi 2 IRmi , ci 2 IRni . Let n :=Pp

i=1ni . Note that each xi is a vector.

Mitchell Block Angular Structure 3 / 24

Page 5: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure

Introduction

In an LP with primal block angular structure, the structure can be

exploited so that the subproblem separates into several subproblems

with different sets of variables. The linear program has the structure:

minx cT1

x1 + cT2

x2 + . . . + cTp xp

subject to A01x1 + A02x2 + . . . + A0pxp = b0 (P)A1x1 = b1

A2x2 = b2

. . ....

Apxp = bpx1, x2, . . . , xp � 0

Each xi 2 IRni , each Ai 2 IRmi⇥ni , each A0i 2 IRm⇥ni , and each vector

bi 2 IRmi , ci 2 IRni . Let n :=Pp

i=1ni . Note that each xi is a vector.

Mitchell Block Angular Structure 3 / 24

Page 6: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure

Separating the blocks

We can exploit the structure by taking

Xi = {xi : Aixi = bi , xi � 0} ✓ IRni

with

X = X1 ⇥ X2 ⇥ . . .⇥ Xp,

the Cartesian product of the individual Xi .

Mitchell Block Angular Structure 4 / 24

Page 7: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

n X,:{x,}eRi§¥,×,X i a . " "Il X , 4

Page 8: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

% Xp{x,:2Exi4}E 112¥7?" ' " 'Eti

×¥¥÷÷¥

Page 9: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure

Writing (P) in terms of X

It follows that the problem can be rewritten as

minx cT1

x1 + cT2

x2 + . . . + cTp xp

subject to A01x1 + A02x2 + . . . + A0pxp = b0 (P)x 2 X

This is in the standard form for Dantzig-Wolfe decomposition, with the

advantage that the subproblem is separable.

The extreme points of X are the Cartesian products of extreme points

of the individual Xi .

The extreme rays of X consist of an extreme ray of one of the Xi in a

Cartesian product with the zero vector from each other Xi .

Mitchell Block Angular Structure 5 / 24

Page 10: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

¥t¥÷...

Page 11: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure

Extreme points and rays of the blocks

We write the extreme points and rays of each Xi as:

extreme points: {xji 2 IRni : j 2 Ji}, for i = 1, . . . , p,

extreme rays: {dki 2 IRni : k 2 Ki}, for i = 1, . . . , p,

with index sets Ji and Ki for the extreme points and rays of Xi ,

respectively.

Mitchell Block Angular Structure 6 / 24

Page 12: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure

Extreme points and rays of the full X

The extreme points of X have the structure

x̄ = (xj11, xj2

2, . . . , xjp

p ) 2 IRn

for some ji 2 Ji for each i = 1, . . . , p.

The extreme rays of X have the structure

d̄ = (0, . . . , 0, dkii , 0, . . . , 0) 2 IRn

for some ki 2 Ki for any one i 2 {1, . . . , p}.

We let {xj : j 2 J} and {dk : k 2 K} denote the sets of extreme points

and rays of X , respectively.

Mitchell Block Angular Structure 7 / 24

Page 13: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure

Aggregated or disaggregated

There is a choice in the construction of the Master Problem:

an aggregated form or a disaggregated form.

Mitchell Block Angular Structure 8 / 24

Page 14: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure The aggregated form

Outline

1 Primal block-angular structure

The aggregated form

The disaggregated form

2 Other block angular structures

3 If X is too simple

4 Initializing

Mitchell Block Angular Structure 9 / 24

Page 15: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure The aggregated form

Master Problem for the aggregated form

The aggregated Master Problem looks exactly like the standard

Dantzig-Wolfe Master Problem. The structure is exploited in the

solution of the subproblem, which is separable. Write

c := (cT1 , . . . , c

Tp )

T 2 IRn, A0 :=⇥A01,A02, . . . ,A0p

⇤2 IRm⇥n.

The Master Problem is

min�,µP

j2J(cT xj)�j +

Pk2K (c

T dk )µk

s.t.P

j2J(A0xj)�j +P

k2K (A0dk )µk = b (MPa)P

j2J �j = 1

�j � 0 8j 2 J, µk � 0 8k 2 K .

Mitchell Block Angular Structure 10 / 24

m i n § c i t is .t . § Aoixi= b

x i C -X i

d k

x i m-

x = (x.,....xp)= Efgt j(xp,...,xpilq.eu/4u(diI...dpY

Page 16: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure The aggregated form

Separating the blocks

Given a dual solution ⇡̄ 2 IRm, �̄ 2 IR, the subproblem is

minx2IRn v := (c � AT0⇡̄)T x

subject to x 2 X (SPa(⇡̄))

which can be separated into p problems:

minxi2IRni vi := (ci � AT0i ⇡̄)

T xisubject to xi 2 Xi (SPi(⇡̄))

Mitchell Block Angular Structure 11 / 24

Page 17: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure The aggregated form

Updating the Master Problem

If each (SPi(⇡̄)) has a finite optimal value then their extreme point

solutions can be concatenated into an extreme point of X .

If this extreme point has value smaller than �̄ then we have an

additional column for the Master Problem (MPa); else, we can

terminate with optimality.

If any (SPi(⇡̄)) has unbounded optimal value then we can construct an

extreme ray of X and add an additional column to (MPa).

Mitchell Block Angular Structure 12 / 24

Page 18: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure The disaggregated form

Outline

1 Primal block-angular structure

The aggregated form

The disaggregated form

2 Other block angular structures

3 If X is too simple

4 Initializing

Mitchell Block Angular Structure 13 / 24

Page 19: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure The disaggregated form

Separate � and µ for each Xi

The original primal variables x are expressed as Cartesian products of

points coming from each Xi .

We have

xi =X

j2Ji

�ij xji +

X

k2Ki

µij dki 2 Xi ✓ IRni ,

where X

j2Ji

�ij = 1, �ij � 0 8j 2 Ji , µik � 0 8k 2 Ki .

Then

x = (x1, . . . , xp) 2 X1 ⇥ X2 ⇥ . . .⇥ Xp.

Mitchell Block Angular Structure 14 / 24

Page 20: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure The disaggregated form

Separate � and µ for each Xi

The original primal variables x are expressed as Cartesian products of

points coming from each Xi .

We have

xi =X

j2Ji

�ij xji +

X

k2Ki

µij dki 2 Xi ✓ IRni ,

where X

j2Ji

�ij = 1, �ij � 0 8j 2 Ji , µik � 0 8k 2 Ki .

Then

x = (x1, . . . , xp) 2 X1 ⇥ X2 ⇥ . . .⇥ Xp.

Mitchell Block Angular Structure 14 / 24

Page 21: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure The disaggregated form

Master Problem for the disaggregated form

Recall original problem:

minx2X1⇥X2⇥...⇥Xp

( pX

i=1

cTi xi :

pX

i=1

A0i xi = b

).

The Master Problem for the disaggregated form is

min�,µPp

i=1

⇣Pji2Ji

(cTi x j

i )�ij +P

ki2Ki(cT

i dki )µik

s.t.Pp

i=1

⇣Pj2Ji

(A0i xji )�ij +

Pk2Ki

(A0i dki )µik

⌘= b (MPd)

Pj2Ji

�ij = 1,i = 1, . . . , p

�ij � 0 8j 2 Ji , µik � 0 8k 2 Ki .

This problem has p convexity constraints.

Mitchell Block Angular Structure 15 / 24

×i=j%,Ai;Xi'

t Ekey.

Miadi"

Page 22: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure The disaggregated form

Dual of disaggregated Master Problem

The dual problem still has a dual variable ⇡ 2 IRm, but now it has a

separate scalar �i dual variable for each i = 1, . . . , p. The dual

problem is:

max⇡2IRm,�2IRp bT⇡ +Pp

i=1�i

subject to (A0i xji )

T⇡ + �i cTi x j j 2 Ji , i = 1, . . . , p

(MDd)

(A0i dki )

T⇡ cTi dk k 2 Ki , i = 1, . . . , p

⇡, � free

Mitchell Block Angular Structure 16 / 24

S o

¥-Ao? a)Tx! z a . V i cJ i

Page 23: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure The disaggregated form

Disaggregated vs aggregated

The subproblems are still (SPi(⇡̄))

minxi2IRni vi := (ci � AT0i ⇡̄)

T xisubject to xi 2 Xi (SPi(⇡̄))

In the aggregated formulation, all the subproblems had to be solved to

find a single new extreme point.

That is not necessary in the disaggregated version: the solution to a

single subproblem may give a violated dual constraint, with vi < �̄i .

In the disaggregated version, different combinations of extreme points

are feasible in (MPd): we can take the xj1

from the third iteration with

the xj4

from the seventh iteration, for example;

in (MPa) they are locked together.

Mitchell Block Angular Structure 17 / 24

Page 24: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure The disaggregated form

Updating the disaggregated Master Problem

There are three possible outcomes to the subproblems:

1 Optimal value vi of (SPi(⇡̄)) is vi < �̄i for some i : Then we have

found another extreme point of Xi . The dual solution (⇡̄, �̄)violates the constraint in (MDd) corresponding to this extreme

point; the corresponding �j in (MPd) has a negative reduced cost.

2 Optimal value v of (SP(⇡̄)) is vi � �̄i for every i = 1, . . . , p: The

dual solution (⇡̄, �̄) is feasible in (MDd), so we have solved (MPd)and (MDd), and hence (P).

3 Optimal value of (SPi(⇡̄)) is unbounded for some i : Then we have

found another ray di of Xi . The dual solution (⇡̄, �̄) violates the

constraint in (MDd) corresponding to this extreme ray; the

corresponding µk in (MPd) has a negative reduced cost.

In Cases 1 and 3, we update the current subset of columns used in the

Master Problem and iterate; in Case 2 we terminate. Since each Xihas a finite number of extreme points and rays, the algorithm

terminates in a finite number of iterations.

Mitchell Block Angular Structure 18 / 24

Page 25: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure The disaggregated form

Updating the disaggregated Master Problem

There are three possible outcomes to the subproblems:

1 Optimal value vi of (SPi(⇡̄)) is vi < �̄i for some i : Then we have

found another extreme point of Xi . The dual solution (⇡̄, �̄)violates the constraint in (MDd) corresponding to this extreme

point; the corresponding �j in (MPd) has a negative reduced cost.

2 Optimal value v of (SP(⇡̄)) is vi � �̄i for every i = 1, . . . , p: The

dual solution (⇡̄, �̄) is feasible in (MDd), so we have solved (MPd)and (MDd), and hence (P).

3 Optimal value of (SPi(⇡̄)) is unbounded for some i : Then we have

found another ray di of Xi . The dual solution (⇡̄, �̄) violates the

constraint in (MDd) corresponding to this extreme ray; the

corresponding µk in (MPd) has a negative reduced cost.

In Cases 1 and 3, we update the current subset of columns used in the

Master Problem and iterate; in Case 2 we terminate. Since each Xihas a finite number of extreme points and rays, the algorithm

terminates in a finite number of iterations.

Mitchell Block Angular Structure 18 / 24

Page 26: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Primal block-angular structure The disaggregated form

Updating the disaggregated Master Problem

There are three possible outcomes to the subproblems:

1 Optimal value vi of (SPi(⇡̄)) is vi < �̄i for some i : Then we have

found another extreme point of Xi . The dual solution (⇡̄, �̄)violates the constraint in (MDd) corresponding to this extreme

point; the corresponding �j in (MPd) has a negative reduced cost.

2 Optimal value v of (SP(⇡̄)) is vi � �̄i for every i = 1, . . . , p: The

dual solution (⇡̄, �̄) is feasible in (MDd), so we have solved (MPd)and (MDd), and hence (P).

3 Optimal value of (SPi(⇡̄)) is unbounded for some i : Then we have

found another ray di of Xi . The dual solution (⇡̄, �̄) violates the

constraint in (MDd) corresponding to this extreme ray; the

corresponding µk in (MPd) has a negative reduced cost.

In Cases 1 and 3, we update the current subset of columns used in the

Master Problem and iterate; in Case 2 we terminate. Since each Xihas a finite number of extreme points and rays, the algorithm

terminates in a finite number of iterations.

Mitchell Block Angular Structure 18 / 24

Page 27: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Other block angular structures

Outline

1 Primal block-angular structure

The aggregated form

The disaggregated form

2 Other block angular structures

3 If X is too simple

4 Initializing

Mitchell Block Angular Structure 19 / 24

Page 28: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Other block angular structures

Other block angular structures

If the transpose of the constraint matrix has a primal block angular

structure then we can apply decomposition to the dual of the problem.

If the constraint matrix has a staircase structure, then a nested

decomposition approach can be used.

Such a structure arises in multiperiod inventory problems:

in each period, we have a variable for stock on hand at the beginning of

the period, a variable for stock consumed and/or produced during the

period, and a variable for the stock on hand at the end of the period.

The stock on hand at the end of one period is the same as the stock on

hand at the beginning of the next.

Mitchell Block Angular Structure 20 / 24

f)"D...,

5I

- . .I t

Page 29: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

If X is too simple

Outline

1 Primal block-angular structure

The aggregated form

The disaggregated form

2 Other block angular structures

3 If X is too simple

4 Initializing

Mitchell Block Angular Structure 21 / 24

Page 30: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

If X is too simple

If X is too simple

If we take X = IRn+ then X has one extreme point and n extreme rays.

In this case, decomposition reduces to the standard simplex algorithm.

If we take X = [0, 1]n then X has 2n extreme points. The subproblem is

very easy to solve: just examine the sign of each component

of c � AT⇡.

Could disaggregate in this case: get n subproblems each with 2

extreme points, when the Master Problem is again reduced to the

original problem.

Mitchell Block Angular Structure 22 / 24

m i n cTxs-t. A x ebtix.-h

× >o } X E X

Page 31: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

m i n E x un i tvector,

s-t. Ax = b

⇒ T X E X = { xe 112̂ :

x-1,0 3

" i i .t o .I

+ Em,eat

x p ,O, E 4=1,µu ?O }

s o ⇐ if:} info:&..- + if;)- (II)

Page 32: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

m i [email protected]. O E x ; E l H j

Easy t o solve: look a t signof (c-ATE);.

Xj={x; c .(oil)}={tooth,,l:sa-f:÷:b....,÷÷÷÷÷÷:3

Page 33: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Initializing

Outline

1 Primal block-angular structure

The aggregated form

The disaggregated form

2 Other block angular structures

3 If X is too simple

4 Initializing

Mitchell Block Angular Structure 23 / 24

Page 34: Block Angular Structure with DW Decompositioneaton.math.rpi.edu/faculty/Mitchell/courses/matp...2 Other block angular structures 3 If X is too simple 4 Initializing Mitchell Block

Initializing

Initializing

Need to first get an extreme point of X .

Can then construct a Phase I problem and solve it using

decomposition.

Mitchell Block Angular Structure 24 / 24


Recommended