IE 312 Optimization Siggi Olafsson 3018 Black [email protected] Optimization In this class you will learn to solve industrial engineering problems by modeling them as optimization problems You.
Download
Report
Transcript IE 312 Optimization Siggi Olafsson 3018 Black [email protected] Optimization In this class you will learn to solve industrial engineering problems by modeling them as optimization problems You.
IE 312 Optimization
Siggi Olafsson
3018 Black
[email protected]
1
Optimization
In this class you will learn to solve industrial
engineering problems by modeling them as
optimization problems
You will understand common optimization
algorithms for solving such problems
You will learn the use of software for solving
complex problems, and you will work as part
of a team to address complex ill-structured
problems with multiple solutions
2
3
Optimization Formulation
Decision variables:
xi Number of appetizeri
Integer programming problem:
6
max
x
i 1
s.t.
i
2.15x1 2.75x2 3.35x3 3.55x4 4.20x5 5.80x6 15.05
xi integer
This is a variant of what is called
the knapsack problem
4
How about the traveling
salesman?
What is the shortest route that visits each city exactly once?
5
The Process
Problem
Problem Formulation
Model
Analysis
Conclusions
6
Problem Formulation
What is the objective function?
What are the decision variables?
Maximize profit,
Minimize inventory, ...
Capacity, routing, production and stock levels
What are the constraints?
Capacity is limited by capital
Production is limited by capacity
7
Mathematical Programs
Objective/constraints
Linear
Non-linear
Continuous
Linear
Non-linear
Programming (LP) Programming
(NLP)
Discrete
Integer
Programming
(IP), Mixed IP
(MIP)
NLIP, NLMIP
8
Analysis
Optimization Algorithm
Computer Implementation
Excel (or other spreadsheet)
Optimization software (e.g., LINDO)
Modeling software (e.g., LINGO)
Increasing
Complexity
9
Optimization Algorithms
Find an initial solution
Loop:
Look at “neighbors” of current solution
Select one of those neighbors
Decide if to move to selected solution
Check stopping criterion
10
In This Class You Will …
Learn problem formulation (modeling)
Learn selecting appropriate algorithms
Learn using those algorithms
11
Academic Honesty
You are expected to be honest in all of your actions and
communications in this class.
Students suspected of committing academic dishonesty will
be referred to the Dean of Students Office as per
University policy.
For more information regarding Academic Misconduct see
http://www.dso.iastate.edu/ja/academic/misconduct.html
12
Professionalism
You are expected to behave in a
professional manner during this class.
13
The OR Process
Problem (System)
Problem Formulation
Model
Analysis
Conclusions
14
Problem Formulation
Capture the essence of the system
Variables
Relationships
Ask ourselves:
What is the objective?
What are the decision variables?
What are the constraints?
15
Mortimer Middleman
Wholesale diamond business
sale price $900/carat
average order 55 carats/week
International market
purchase price $700/carat
minimum order 100 carats/trip
trip takes one week and costs $2000
16
Inventory Problem
Cost of keeping inventory
insurance
tied up capital
0.5% of wholesale value/week
Cost of not keeping inventory
lost sales (no backordering)
17
The Current Situation
Holding cost of $38,409 in past year
Unrealized profits of $31,600
Resupply travel cost $24,000
Total of $94,009
Can we do better?
How do we start answering that question?
18
Problem Formulation
What are the decision variables?
When should we order?
How much should we order?
Reorder point r (quantity that trigger order)
Order quantity q
Note that this grossly simplifies the reality of
Mortimer’s life!
19
Problem Formulation
What are the constraints?
q 100
r0
What is the objective?
Minimize cost
Holding cost
Replenishment cost
Lost-sales cost
20
Relationships
(System Dynamics)
Assumptions
Constant-rate demand
Is this a strong or weak assumption?
Is this assumption realistic?
21
System Dynamics
With safety stock
No safety stock or lost sales
With lost sales
r
r
1 week
r
1 week
1 week
Why might we get lost sales despite our planning?
Can we ignore this?
22
Assuming No Lost Sales
No lost sales implies r 55
Cycle length
order quantity
q
demand rate
55
Average inventory
(r 55) (r 55) q
q
(r 55)
2
2
23
Optimization Model
Holding cost/week
Minimize
Subject to
ent cost/week
Replenishm
q
2000
3.50 (r 55)
2
q / 55
q 100
r 55
24
Solving the Problem (Analysis)
Feasible solution
Optimal solution
Any set of values that satisfies the constraints
A feasible solution that has the best possible
objective function value
Algorithms:
Find a feasible solution
Try to improve on it
25
A Solution for Mortimer
What are some feasible solutions?
The smallest feasible value of r is 55
What happens if we change it to 56?
Increased holding cost!
‘Clearly’ the optimal replenishment
point is
r * 55
26
New Optimization Problem
Holding cost/week
Minimize
Subject to
ent cost/week
Replenishm
55
q
3.50
2000
q
2
q 100
Differentiate the objective function and set equal to zero:
3.50 2000 55
0
2
2
q
27
Optimal Solution
3.50 2000 55
2
q2
2 2000 55
2
q
3.50
2 2000 55 250.7
*
q
3.50
250.7
Optimum
28
Economic Order Quantity (EOQ)
Cost of
replenishment
Classical result in inventory theory:
2 fd
q
h
*
r ld
*
Lead time
(replenishment)
Holding cost
Weekly
demand
29
Discussion
Sensitivity Analysis
Exploring how the results change if parameters
change
Why is this important?
Closed-Form Solutions
Final result a simple formula in terms of the input
variables
Very fast computationally
Makes sensitivity analysis very easy
30
Evaluating the Model
Tractability of Model
Validity
Ease by which we can analyze the model
The degree by which inferences drawn
from model also hold for actual system
Trade-Off!
A “Good” Model is Tractable and Valid
31
Model Validity
A model is valid for a specific purpose
It only has to answer the questions we ask
correctly!
Recipe for a Good Model
Start with a simple model
Evaluate assumptions
Does adding complexity change the outcome?
Relax assumption/add constraint
32
Validity of Our Model
Customer demand (average 55)
120
100
60
40
20
51
49
47
45
43
41
39
37
35
33
31
29
27
25
23
21
19
17
15
13
11
9
7
5
3
0
1
Demand
80
Week
33
Simulation Analysis
Using the same conceptual model, we
can simulate the performance using the
historical data
Check if Mortimer is due with a shipment
Check if a new trip is warranted
Reduce inventory by actual demand
Simulation of our policy q=251, r=55
implies a cost of $108,621
34
Evaluation of Cost
Our predicted cost is
Holding cost/week
ent cost/week
Replenishm
55
251
3.50
$45,630
2000
251
2
Mortimer’s current cost is $94,009
The simulated cost is $108,621
35
Simulation Validity
Which model should we trust:
Examine the assumptions made:
The simulation model that predicts a performance of
$108,621, or
the EOQ model that predicts a performance of
$45,630?
EOQ model: constant demand
Simulation: future identical to past
In general, simulation models have a high
degree of validity
36
Descriptive vs Prescriptive
How about tractability?
What does the simulation tell us? How
easy is it to do sensitivity analysis?
Descriptive models
Only evaluate an alternative or solution
Prescriptive models
Suggest a good (or optimal) alternative
37
Numerical Search
We can use our descriptive simulation
model to look for a better solution
Algorithm:
Start with an initial (good) solution
Check ‘similar’ solution (neighbors)
Select one of the neighbors
Repeat until a stopping criterion is satisfied
38
Search
for
Reorder
Point
100
$64,242
r
90
80
70
60
50
40
30
20
10
0
$63,054
$63,254
$108,421
$108,621
0
50
100
150
q
200
250
300
39
Search for Order Quantity
100
90
$72,781
80
70
60
r 50
40
30
20
10
0
240
245
$63,054
$95,193
Best Point Found
250
255
260
265
q
40
Evaluation
We have found a solution q=251, r=85
with cost $63,054
Better than current ($94,009) and
previously obtained solution ($108,621)
Is this the best solution?
We don’t know!
What if we started with a different
initial solution?
41
A New Search
Initial
Solution
155
59,539
135
56,904
56,900
59,732
58,467
54,193
115
r
Best Point Found
95
75
55
250
255
260
265
270
275
q
42
Heuristic vs Optimal
Optimal Solution
Heuristic Solution
Solution that is gives the best objective
function value
A ‘good’ feasible solution
Should we demand optimality?
Inaccurate search vs approximation in
model
43
Deterministic vs Stochastic
Models
Our deterministic simulation model
assumed future identical to past
Not true! Demand is random
Stochastic simulation fits a random
distribution to the historical data
The world is stochastic
Why not always use stochastic models?
Tractability versus validity
44
Mathematical Programming
Deterministic models
Assume all data known with certainty
Validity
Tractability
Often produce valid results
Easier than stochastic models
Known as mathematical
programming
45
Problem Formulation
Decision variables
Constraints
Variable-type constraints
Main constraints
Objective function
46
Two Crude Petroleum
$20
9000 barrels/day
Gasoline
2000
barrels
Jet Fuel
1500
barrels
Lubricants
500
barrels
Saudi Arabia
Refinery
Venezuela
$15
6000 barrels/day
47
Oil Processing Data
Barrel of Saudi Crude
0.3 barrels of gasoline
0.4 barrels of jet fuel
0.2 barrels of lubricant
Barrel of Venezuela Crude
0.4 barrels of gasoline
0.2 barrels of jet fuel
0.3 barrels of lubricant
48
Decision Variables
What can we control or decide upon?
How much of each crude
Thus, define
x1 barrelsof Saudi crude/day (in thousands)
x2 barrelsof Venezuelancrude/day (in thousands)
Clearly define what you mean!
49
Constraints
Variable-type constraints
Domain of decision variables
(most often a range)
Very simple here:
x1 , x2 0
50
Main Constraints (Dynamics)
Must meet our volume for each type
yield/barrelbarrels required
0.3x1 0.4 x2 2.0 (gasoline)
0.4 x1 0.2 x2 1.5 (jet fuel)
0.2 x1 0.3x2 0.5 (lubricants)
Availability
x1 9
x2 6
51
Objective Function
What are we going to use to evaluate a pair
of values for the decision variables?
Minimize total cost
min 20x1 15x2
Note that since sales and production are fixed
this maximizes profit
52
Standard Model
min 20x1 15x2
s.t . 0.3 x1 0.4 x2 2.0 (gasoline)
0.4 x1 0.2 x2 1.5 (jet fuel)
0.2 x1 0.3 x2 0.5 (lubricants)
x1 9
x2 6
x1 , x2 2
53
Graphing Constraints
x2
Variable-Type
Constraints
(must be positive)
x1
54
Adding Main Constraints
x2
0.3 x1 0.4 x2 2
2
x2 0, x1
6.67
0 .3
2
x1 0, x2
5.00
0 .4
x1
55
Next Constraint
x2
0.4 x1 0.2 x2 1.5
1.5
3.75
0.4
1.5
x1 0, x2
7.50
0.2
0.2 x1 0.3x2 0.5
x2 0, x1
0.5
2.50
0.2
0.5
x1 0, x2
1.67
0.3
x2 0, x1
x1
56
Final Constraints
x2
Feasible
Region
x2 6
x1 6
x1
57
Objective Function
x2
20x1 15x2
x1
150
60
105
58
Optimal Solution
x2
20x1 15x2
20 2 15 3.5 92.5
x1 3.5
x1 2
x1
59
Variant
x2
Many Optimal Solutions!
x1 3.5
x1 2
x1
60
Types of Solutions
Unique Optimum
Multiple Optima
No Optimum
No feasible solution (empty feasible set)
Unbounded feasible set
61
Exercise
max
3w1 w2
max
3w1 w2
s.t.
w1 w2 1
s.t.
w1 w2 1
w1 , w2 0
w1 , w2 0
Q. Which of the above has and optimal solution
and which is unbounded?
62
Last Time
Formulated Two Crude Petroleum
Problem
Solved (Analyzed) the Model
Graphed the constraints
Found the most desirable extreme point
Can this approach be generalized to
realistic problem?
63
Pi Hybrids
Actual application
Manufacturer of Corn Seed
l=20 production facilities
m=25 hybrid varieties
n=30 sales regions
Want to look at the production and
distribution operations
64
Constants
Cost per bag of each hybrid at each facility
Processing capacity of each facility (bushels)
Bushels of corns needed for a bag of hybrid
Bags of hybrid demanded by each region
Cost per bag of shipping each hybrid from
each facility to each customer region
65
Indexing Variables
Initial ‘structure’
x f ,h number of bags of hybridh producedat facility f
f 1,2,...,l; h 1,2,...,m
y f ,h,r number of bags of h shippedfrom f toregion r
f 1,2,...,l; h 1,2,...,m; r 1,2,...,m.
Have lm =500 x-variables and lmn =1500 y-variables
66
Defining Cost
Define
p f ,h cost per bag of producinghybridh at facility f
Then the total production cost is
l
m
p
f 1 h 1
Summing over
all facilities
f ,h
x f ,h
Summing over
all hybrids
67
More Definitions
u f capacityof facility f in bushels
ah number of bushels needed for a bag of hybridh
d h ,r number of bags of h demandedin region r
s f ,h ,r cost per bag of shippingh from f to r
68
Objective Function
Have
Total Cost = Production Cost + Shipping Cost
which implies an objective function
l
m
l
m
n
min p f ,h x f ,h s f ,h,r y f ,h,r
f 1 h 1
f 1 h 1 r 1
69
Constraints
Capacity constraints
m
h 1
f 1,2,...,l.
ah
bushels/bag
x f ,h u f
bags
Demands must be met
Balance between production and distribution
70
Complete Model
l
m
l
m
n
min p f ,h x f ,h s f ,h,r y f ,h,r
f 1 h 1
s.t.
f 1 h 1 r 1
m
a x
h 1
h
f ,h
l
y
f 1
f ,h,r
d h ,r , h, r
f ,h,r
x f ,h , f , h
n
y
r 1
u f , f
x f ,h 0; y f ,h ,r 0
71
Model Size
Variables
500 x-variables
1500 y-variables
Constraints
l =20 capacity constraints
mn =750 demand constraints
lm = 500 balance constraints
lm + lmn = 15500 non-negativity constraints
72
Tractability and Validity
Is this a tractable model?
Yes, it is actually not very big at all!
Is this a valid model?
Constant production cost
Deterministic demand
Reasonable for certain range of production
Reasonable for known products/markets
Constant shipping cost
Reasonable for certain range of shipped items
73
Mathematical Programming
General Model
min/max f ( x1 ,...,xn )
g ( x1 ,..., xn ) bi
Constants
Right Hand
Side (RHS)
74
Linear versus Nonlinear
A function is linear if it is a weighted
sum of the decision variables, otherwise
nonlinear
A linear program (LP) has a linear
objective function f and constraint
functions g1,…,gm
A nonlinear program has at least one
nonlinear function
75
Exercise
(a)
min (3y1 11y4 )
5
s.t.
d
j 1
j
yj
y j 1, j
(c)
(b)
min (3y1 11y4 ) 2
5
s.t.
d
j 1
j
yj
y j 1, j
5
min
y
j 1
s.t.
j
y1 y2 100
y j 1, j
Linear or nonlinear?
76
Integer Programs
A variable is discrete if it can only take
a limited or countable number of values
A variable is continuous if it can take
values in a specific interval
Mathematical programs can be
continuous
discrete (integer/combinatorial)
mixed
77
Classification Summary
Integer Program (IP)
Linear Program (LP)
ILP
Nonlinear Program (NLP)
INLP
Increased difficulty
78
Exercise
Should these variables be discrete or continuous?
Operating temperature of a chemical process
Warehouse slot assigned to a particular product
Whether a capital project is selected for
investment
Amount of money converted from yen to dollars
Number of aircraft produced on a defense contract
79