notes 5ie 3121 knapsack model intuitive idea: what is the most valuable collection of items that can...

Post on 03-Jan-2016

217 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Notes 5 IE 312 1

Knapsack Model Intuitive idea: what is the most

valuable collection of items that can be fit into a backpack?

Notes 5 IE 312 2

Race Car Features

1 2 3 4 5 6Cost (thousand) 10.2$ 6.0$ 23.0$ 11.1$ 9.8$ 31.6$ Speed increase (mph) 8 3 15 7 10 12

Proposed Feature (j )

Budget of $35,000

Which features should be added?

Notes 5 IE 312 3

Decision variables

ILP

Formulation

otherwise0

added is feature if1 jx j

1or 0

356.318.91.110.230.62.10s.t.121071538max

654321

654321

jx

xxxxxxxxxxxx

Notes 5 IE 312 4

LINGO FormulationMODEL:

SETS:

FEATURES /F1,F2,F3,F4,F5,F6/: INCLUDE,SPEED_INC,COST;

ENDSETS

DATA:

SPEED_INC = 8 3 15 7 10 12;

COST = 10.2 6.0 23.0 11.1 9.8 31.6;

BUDGET = 35;

ENDDATA

MAX = @SUM( FEATURES: SPEED_INC * INCLUDE);

@SUM( FEATURES: COST * INCLUDE) <= BUDGET;

@FOR( FEATURES: @BIN( INCLUDE));

END

Specifyindex sets

All theconstants

Objective

Constraints

Variables indexed bythis set

Decision variablesare binary

Note ; to end command: to begin an environment

Notes 5 IE 312 5

Solve using Branch & Bound

5 0x 5 1x

Solution?

Candidate Problem

Relaxed Problem

1or 0

356.311.110.230.62.10s.t.1271538max

64321

64321

jx

xxxxxxxxxx

1 0

356.318.91.110.230.62.10s.t.121071538max

654321

654321

jx

xxxxxxxxxxxx

Notes 5 IE 312 6

What is the Relative Worth?

1

2

3

4

5

6

8: 0.7810.23: 0.5615: 0.65237: 0.6311.110: 1.029.812: 0.3831.6

x

x

x

x

x

x

Want to add thisfeature first

Want to add thisfeature second

Notes 5 IE 312 7

Solve Relaxed Problem

5 0x 5 1x

Solution:

Relaxed Problem

Objective <= 24.8

8 1 15 1 7 0.257 1 0

356.318.91.110.230.62.10s.t.121071538max

654321

654321

jx

xxxxxxxxxxxx

money ofout ,78.1

$1.8 $23.0 - $24.8 have still ,1

$24.8 $10.2 - $35 have still ,1

4

3

1

x

x

x

Notes 5 IE 312 8

Now the other node…

5 0x 5 1x

Relaxed Problem

Solution:

1

3

1 Still have $25.2 $10.2 $15

15 0.65223

x

x

Objective <= 27.8

1 0

8.9356.311.110.230.62.10s.t.121071538max

64321

64321

jx

xxxxxxxxxx

Notes 5 IE 312 9

Next Step?

5 0x 5 1x

Objective <= 24.8 Objective <= 27.8

Notes 5 IE 312 10

Rule of Thumb: Better Value

5 0x 5 1x

Obj <= 24.8

1 0x 1 1x Solution:

315 0.65223x

Obj. <= 27.8

3

4

1 Still have $25.2 $23 $2.2

2.2 0.19811.1

x

x

Obj. <=26.4

Solution:

Relaxed Problem

1 0

2.256.311.110.230.6s.t.12715310max

6432

6432

jx

xxxxxxxx

Relaxed Problem

1 0

2.156.311.110.230.6s.t.12715318max

6432

6432

jx

xxxxxxxx

Notes 5 IE 312 11

Next Level

5 0x 5 1x

Obj <= 24.8

1 0x 1 1x

Obj. <=26.4

3 0x 3 1x

InfeasibleObj. = 25

Now What?

Notes 5 IE 312 12

Next Steps …

5 0x 5 1x

Obj <= 24.8

1 0x 1 1x

Obj. <= 26.43 0x 3 1x

InfeasibleObj. = 25

Still need to continue branching here.

Finally we will have

accounted for every solution!

Notes 5 IE 312 13

Capital Budgeting Multidimensional knapsack

problems are often called capital budgeting problems

Idea: select collection of projects, investments, etc, so that the value is maximized (subject to some resource constraints)

Notes 5 IE 312 14

NASA Capital Budgeting2000- 2005- 2010- 2015- 2020- Not Depends

j Mission 2004 2009 2014 2019 2024 Value With On1 Communication satellite 6 2002 Orbital microwave 2 3 33 Io lander 3 5 204 Uranus orbiter 2020 10 50 5 35 Uranus orbiter 2010 5 8 70 4 36 Mercury probe 1 8 4 20 37 Saturn probe 1 8 5 38 Infrared imaging 5 10 119 Ground-based SETI 4 5 200 14

10 Large orbital structures 8 4 15011 Color imaging 2 7 18 8 212 Medical technology 5 7 813 Polar orbital platform 1 4 1 1 30014 Geosynchronous SETI 4 5 3 3 185 9

Budget 10 12 14 14 14

Budget Requirements

Notes 5 IE 312 15

Formulation Decision variables

Budget constraints

otherwise0

chosen is mission if1 jx j

1 2 3 7 9 126 2 3 1 4 5 10 (year 1)x x x x x x

Notes 5 IE 312 16

Formulation Mutually exclusive choices

Dependencies

1

1

1

149

118

54

xx

xx

xx

34

211

xx

xx

Notes 5 IE 312 17

Assignment Problems Assignment problems deal with

optimal pairing or matching of objects in two distinct sets

Decision variable

Let A be the set of allowed assignments and cij be the cost of assigning i to j.

otherwise0

toassigned is if1 jixij

Notes 5 IE 312 18

Formulation

A(i,jx

Njx

Nix

xc

ij

ij

Ajii

ij

Ajij

ijij

Aji

in ) allfor 1,0

allfor ,1

allfor ,1s.t.

min

2

in ),(:

in ),(:

in ),(

Notes 5 IE 312 19

Example We must determine how jobs should be

assigned to machines to minimize setup times, which are given below:

Job 1 Job 2 Job 3 Job 4

Machine 1

14 5 8 7

Machine 2

2 12 6 5

Machine 3

7 8 3 9

Machine 4

2 4 6 10

Notes 5 IE 312 20

Hungarian Algorithm Step 1: (a) Find the minimum

element in each row of the cost matrix. Form a new matrix by subtracting this cost from each row. (b) Find the minimum cost in each column of the new matrix, and subtract this from each column. This is the reduced cost matrix.

Notes 5 IE 312 21

Example: Step 1(a)Job 1 Job 2 Job 3 Job 4

Machine 1

14 5 8 7

Machine 2

2 12 6 5

Machine 3

7 8 3 9

Machine 4

2 4 6 10Job 1 Job 2 Job 3 Job 4

Machine 1

9 0 3 2

Machine 2

0 10 4 3

Machine 3

4 5 0 6

Machine 4

0 2 4 8

Notes 5 IE 312 22

Example: Step 1(b)

Job 1 Job 2 Job 3 Job 4

Machine 1

9 0 3 0

Machine 2

0 10 4 1

Machine 3

4 5 0 4

Machine 4

0 2 4 6

Job 1 Job 2 Job 3 Job 4

Machine 1

9 0 3 2

Machine 2

0 10 4 3

Machine 3

4 5 0 6

Machine 4

0 2 4 8

Notes 5 IE 312 23

Hungarian Algorithm Step 2: Draw the minimum

number of lines that are needed to cover all the zeros in the reduced cost matrix. If m lines are required, then an optimal solution is available among the covered zeros in the matrix. Otherwise, continue to Step 3.

Notes 5 IE 312 24

Example: Step 2

Job 1 Job 2 Job 3 Job 4

Machine 1

9 0 3 0

Machine 2

0 10 4 1

Machine 3

4 5 0 4

Machine 4

0 2 4 6We need 3<4 lines, so continue to Step 3

Notes 5 IE 312 25

Hungarian Algorithm Step 3: Find the smallest nonzero

element (say, k) in the reduced cost matrix that is uncovered by the lines. Subtract k from each uncovered element, and add k to each element that is covered by two lines. Return to Step 2.

Notes 5 IE 312 26

Example: Step 3Job 1 Job 2 Job 3 Job 4

Machine 1

9 0 3 0

Machine 2

0 10 4 1

Machine 3

4 5 0 4

Machine 4

0 2 4 6Job 1 Job 2 Job 3 Job 4

Machine 1

10 0 3 0

Machine 2

0 9 3 0

Machine 3

5 5 0 4

Machine 4

0 1 3 5

Notes 5 IE 312 27

Example: Step 2 (again)

Job 1 Job 2 Job 3 Job 4

Machine 1

10 0 3 0

Machine 2

0 9 3 0

Machine 3

5 5 0 4

Machine 4

0 1 3 5Need 4 lines, so we have the optimal assignment and we stop

Notes 5 IE 312 28

Example: Final SolutionJob 1 Job 2 Job 3 Job 4

Machine 1

10 0 3 0

Machine 2

0 9 3 0

Machine 3

5 5 0 4

Machine 4

0 1 3 5Optimal assignment

1,1,1,1 24413312 xxxx

Notes 5 IE 312 29

Travelling Salesman Problem (TSP)

Ames

Fort Dodge

BooneCarrollMarshalltown

West Des Moines

Waterloo

What is the shortest route,starting in Ames, that visitseach city exactly ones?

Notes 5 IE 312 30

TSP Solution

Ames

Fort Dodge

BooneCarrollMarshalltown

West Des Moines

Waterloo

Notes 5 IE 312 31

Not a TSP Solution

Ames

Fort Dodge

BooneCarrollMarshalltown

West Des Moines

Waterloo

Notes 5 IE 312 32

Applications

Routing of vehicles (planes, trucks,

etc.)

Routing of postal workers

Drilling holes on printed circuit boards

Routing robots through a warehouse,

etc.

Notes 5 IE 312 33

Formulating TSP A TSP is symmetric if you can go

both ways on every arc

otherwise0

and between leg includes route theif1,

jix ji

i ij

jiji xc ,,min

2, ij

jix

Notes 5 IE 312 34

Example1

5

2

6

3 4

10

10

10

11

1

1

1 1

Formulate a TSP

Notes 5 IE 312 35

Subtours It is not sufficient to have two arcs

connected to each node Why?

Must eliminate all subtours Every subset of points must be

exited

Notes 5 IE 312 36

How do we eliminate subtours?

1

5

2

6

3 4

10

10

10

11

1

1

1 1

Notes 5 IE 312 37

Asymmetric TSP Now we have decision variables

Constraints

otherwise0

to from goes route theif1,

jix ji

)(enter 1

) (leave 1

,

,

ix

ix

ijij

ijji

Notes 5 IE 312 38

Asymmetric TSP (cont.) Each tour must enter and leave

every subset of points

Along with all variables being 0 or 1, this is a complete formulation

1, Si Sj

jix

Notes 5 IE 312 39

Example1

5

2

6

3 4

10

10

10

11

1

1

1 1

Assume a two unit penalty for passing from a high to lowernumbered node.

This is now an asymmetric TSP. Why?

Notes 5 IE 312 40

Subtour Elimination Making sure there are no subtours

involves a very large number of constraints

Can obtain simpler constraints if we go with a nonlinear objective function

otherwise0

is tedpoint visith theif1,

iky ik

Notes 5 IE 312 41

Quadratic Assignment Formulation

1,0

1

1

min

,

,

,

,1,,

ik

kik

iik

i j kjkikji

y

y

y

yyd

Notes 5 IE 312 42

Example: reformulate1

5

2

6

3 4

10

10

10

11

1

1

1 1

Notes 5 IE 312 43

Solving TSP We can use branch-and-bound to get

an exact solution to the TSP problem As always, the key to implementing

branch-and-bound is to relax the problem so that we can easily solve the relaxed problem, but we still get good bounds

How can we relax the TSP?

Notes 5 IE 312 44

Relaxing the TSP

)(enter 1

) (leave 1

,

not

,

not

ix

ix

ij

ij

ji

ij

1,

in not in

ji

SiSi

x

1,0, jix

jiji

iji

xc ,,

not

min

Reduces to the assignment problem

Notes 5 IE 312 45

Branching

0, jix 0, ijx

Which cities should be selected?

What is the most important variable?

Notes 5 IE 312 46

Example: Solution to Assignment Problem

Ames

DSM

CR

IC

1,,,, CRICICCRAmesDSMDSMAmes xxxx

Notes 5 IE 312 47

Branching

0, AmesDSMx 0, DSMAmesx

Always branch to split up the subtours!

Solving the assignment problem will hopefully yield a feasible solution soon.

Notes 5 IE 312 48

Solution to New Assignment Problem (Left Branch)

Ames

DSM

CR

IC

This makes both subtours impossible, so we get

Thus, optimal solution is found by solving a total of three assignment problems!

Notes 5 IE 312 49

Poor Branching Examples

0, AmesCRx 0, CRAmesx

0, AmesCRx 1, AmesCRx

Notes 5 IE 312 50

Set Packing, Covering, and Partitioning

Notes 5 IE 312 51

Select Locations

Notes 5 IE 312 52

Ways of Splitting the Set Set covering constraints

Set packing constraints

Set partitioning constraints

Jj

jx 1

Jj

jx 1

Jj

jx 1

Notes 5 IE 312 53

Example: Choosing OR Software

Algorithm 1 2 3 4LP Yes Yes Yes YesIP Yes YesNLP Yes YesCost 3 4 6 14

Software Package (j )

Formulate a set covering problem to acquire the minimum costsoftware with LP, IP, and NLP capabilities.

Formulate set partitioning and set packing problems. What goalsdo they meet?

Notes 5 IE 312 54

Maximum Coverage Perhaps the budget only allows $9000 What can we then do

Maximum coverage How do we now formulate the

problem? Need new variables

otherwise0

providednot ALG if1ALGy

Notes 5 IE 312 55

Useful Formulation Tricks! Integer variables can be used to

model numerous things that seem difficult Fixed-charge IP Either-or constraints If-then constraints

All of these involve introducing a (dummy) binary variable and a “very large number”

Notes 5 IE 312 56

Fixed-Charge Constraint We need to determine how many Gadgets to make

We have variable cost of $7/ Gadget made, but also a fixed cost of $500 if we make any Gadgets (but we could also choose not to make any, in which case we would have no cost

How do we represent the cost?

Here, M is a very large number, e.g. M = 1000

yMx

yxCost

y

5007

otherwise0

Gadgets make weif1

made Gadgets ofNumber x

Notes 5 IE 312 57

What-If Constraints

1,0

)1(100

100or 0

y

yMx

Myx

xx

Need to model (continuous variable):

Trick: add a binary variable y, and a very large M

Here, M = 200 would do nicely

Notes 5 IE 312 58

If-Then Constraints We want to represent

Similar to before:

Here, M=3 would be big enough!

0 then 1 4321 xxxx

1,0

)1(1

432

y

yMx

yMxxx

top related