Professional Documents
Culture Documents
Discrete Optimization
The Lego Game Revisited
• Examples:
– Integer variables: Number of workers, cars, machines, etc.
– Binary variables: YES/NO decisions
– Mixed Integer Program (MIP): Some variables are integer-valued
2 $2,500 $8,000
3 $3,500 $10,000
4 $6,000 $19,500
5 $7000 $22,000
6 $4,500 $12,000
7 $3,000 $7,500
2 $2,500 $8,000
3 $3,500 $10,000
4 $6,000 $19,500
5 $7000 $22,000
6 $4,500 $12,000
7 $3,000 $7,500
Example: Capital Budgeting Models
• Formulation:
Investment
1 $5,000 $16,000
2 $2,500 $8,000
3 $3,500 $10,000
4 $6,000 $19,500
5 $7000 $22,000
6 $4,500 $12,000
7 $3,000 $7,500
Example: Capital Budgeting Models
• Solution: Select investments 1, 2 and 5.
Cash
Investment NPV
required
1 $5,000 $16,000 1
2 $2,500 $8,000 1
3 $3,500 $10,000 0
4 $6,000 $19,500 0
5 $7000 $22,000 1
6 $4,500 $12,000 0
7 $3,000 $7,500 0
Formulation of the Knapsack Problem
• Knapsack problem:
– n: number of “treasures” to pick from
– b: the total weight (or volume) that the knapsack can hold
– aj: value of each treasure j
– cj: weight (or volume) of each treasure j
– xj: whether to choose treasure j
FORMULATING LOGICAL CONSTRAINTS
It is not so easy!
• Note
– If Event 1 does not occur, event 2 may or may not occur
– If Event 2 occurs, event 1 may or may not occur
General Logical Framework
• Conditional: If Logical statement 1 is true, then Logical
statement 2 must be true.
• China
– Construction cost: $10m
– Capacity: 10000
– Unit cost: $5
• Singapore
– Construction cost: $15m
– Capacity: 13000
– Unit cost: $4.5
• Malaysia
– Construction cost: $6m
– Capacity: 11000
– Unit cost: $7
A Fixed Cost Function
• Example of a typical cost function:
Common Uses of Binary Variables
• Conditional Range: If Event y does not occur, then x=0. If
Event y occurs, then 0 ≤ x ≤ M.
Product
• Goal: Find the optimal production plan that maximizes weekly profit
Textile Manufacturing at Great Threads
• Decision variables:
– y1, …, y5: On/Off switches
– x1, …, x5: Quantities to produce
• Formulation 1:
Textile Manufacturing at Great Threads
• Formulation 2:
• How to choose M?
– Any sufficiently large number