[ppt]powerpoint presentation - missouri university of …web.mst.edu/~konurd/5412_files/lecture...
TRANSCRIPT
EMGT 5412Operations Management Science
Linear Programming: Introduction, Formulation and
Graphical Solution
Dincer KonurEngineering Management and Systems
Engineering 1
Outline• Definition of Linear Programming• Formulation of Linear Programming
– Surviving in an island– Extending a problem formulation – Wyndor Glass Co. Product Mix Problem
• Linear Programming Terminology• Graphical Solution to Linear Programming• Properties of Linear Programming
2
Outline• Definition of Linear Programming• Formulation of Linear Programming
– Surviving in an island– Extending a problem formulation – Wyndor Glass Co. Product Mix Problem
• Linear Programming Terminology• Graphical Solution to Linear Programming• Properties of Linear Programming
3
What is Mathematical Programming?• Mathematical programming is selecting the best
option(s) from a set of alternatives mathematically– Minimizing/maximizing a function where your
alternatives are defined by functions• Many industries use mathematical programming
– Supply chain, logistics, and transportation– Health industry, energy industry, finance, airlines– Manufacturing industry, agriculture industry– Education, Military
• Operations Research raised with WWII
4
What is Linear Programming?• Linear Programming problem (LP) is a
mathematical programming problem where all of your functions are linear– A function is linear when
• The variables have power of 1 and the variables are not multiplied with each other
– linear– not linear– linear– not linear
– It is assumed that our variables are continuous (for now)
𝑓 (𝑥 )
𝑥
5
Outline• Definition of Linear Programming• Formulation of Linear Programming
– Surviving in an island– Extending a problem formulation – Wyndor Glass Co. Product Mix Problem
• Linear Programming Terminology• Graphical Solution to Linear Programming• Properties of Linear Programming
6
How to formulate?• What do we need to formulate a linear
programming problem?– Have a problem!!– Know your problem
• Gather the relevant data• Know what each number means
– Pay attention to the class – Best way to learn is to do some examples….
7
Example 1: Surviving in an island• Linear programming will save you!
– Suppose that you will be left in a deserted island
– You want to live as many days as you can to increase chance of rescue
– Fortunately (!), you can take a bag with you to the island
– What would you put into the bag?
8
Example 1: Surviving in an island• The bag can carry at most 50 lbs• There are limited set of items you can carry
– Bread: You can survive for 2 days with 1 lb of bread– Steak: You can survive for 5 days with 1 lb of steak
(Memphis style grilled!)– Chicken: You can survive for 3 days with 1 lb of
chicken (southern style deep fried!)– Chocolate: You can survive for 6 days with 1 lb of
chocolate• How much of each item to take with you?
9
Example 1: Formulation Steps• STEP 0: Know the problem and gather your data
– Your problem is to increase your chance of rescue by maximizing the number of days you survive
– You can have 1 bag which can carry 50 lbs at most– You can only put bread, steak, chicken and chocolate
into you bag– Each item enables you survive for a specific number of
days for each pound you takeBread: 2 days/lb Steak: 5 days/lbChicken: 3days/lb Chocolate: 6days/lb
10
Example 1: Formulation Steps• STEP 1: Identify your decision variables
– Decision variables are the things you control– The amount of each item you will take with you
Warning: Always be careful with the metrics (try to use the same metrics)
11
Example 1: Formulation Steps• STEP 2: Define your objective function and
objective– Your objective function is the measure of performance
as a result of your decisions– Your objective is what you want to do with your
objective function
– Recall that you want to maximize the number of days you will survive in the island
Objective
Performance measureNot a function though12
Example 1: Formulation Steps• STEP 2: We know our objective (maximize) and
our performance of measure (number of days)– Express the performance of measure as a function of
your decision variables to get the objective function• If you take lbs of bread, you will survive for days• If you take lbs of steak, you will survive for days• If you take lbs of chicken, you will survive for days• If you take lbs of chocolate, you will survive for days
– Then objective function in terms of decision variables:
𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑒13
Example 1: Formulation Steps• STEP 3: Define your restrictions (constraints)
– There may be some restrictions which limit what you can do (hence, they define set of your alternatives)
– You can carry 1 bag and it can carry 50 lbs at most
– You cannot get negative amounts!!!
Total amount you decide to carry
Limit on how much you can
carry
14
Example 1: LP Formulation• Combine your objective, objective function, and
constraints
» This is your LP model» Note that everything is linear!
𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑒𝑠𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜
15
Example 1: Extending the LP• Suppose that you can also take cheese
– Cheese: You can survive for 4 days with 1 lb of cheese
– We have a new decision variable: Update LP
,
𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑒𝑠𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜
16
Example 1: Extending the LP• Furthermore, suppose you have a budgetary limit
• 1 lb of bread costs you $3• 1 lb of steak costs you $6• 1 lb of chicken costs you $7• 1 lb of chocolate costs you $15• 1 lb of cheese costs you $8
– You can spend at most $150– Write the new restriction:
Total money you decide to spend
Limit on how much you can
spend
17
Example 1: Extending the LP
,
– You cannot get more meat (chicken+steak) than bread
– For each lb of cheese, you need at least 2 lbs of bread
𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑒𝑠𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜
18
Summary of Formulation Steps• Gather all of your data, know what they mean• Then
1. Identify your decision variables2. Identify your objective and objective function3. Identify your constraints
• Express your objective function and constraints in terms of your decision variables
• Steps 2 and 3 can change order
19
• Wyndor Glass Co. produces high-quality glass products– The company decides to produce two new products
• A glass door with aluminum framing• A wood-framed glass window
– The company has 3 plants
Case 1: Wyndor Glass Co. Product
Plant Doors Windows Availability/week
1 1 hour 0 4 hours
2 0 2 hours 12 hours
3 3 hours 2 hours 18 hours
Production Time Used for Each Unit Produced
20
Case 1: Wyndor Glass Co. Product• Unit profit for doors is $300• Unit profit for windows is $500
• What should be the product mix to maximize profits?– How many of each item to produce weekly?
• This is production rate, so it can be continuous, i.e., you can choose to produce 2.5 windows per week (this would be 10 windows per month assuming 4 weeks in a month)
21
Case 1: Formulating the LP• Step 0: Gather the data (we have it all!)• Step 1: Decision variables
– D: the number of doors produced weekly– W: the number of windows produced weekly
• Step 2: Define the objective & objective functions– Objective: Maximization– Objective function: Profit=300D+500W
– It is the weekly profit
22
Case 1: Formulating the LP• Step 3: Define the constraints
– Plant 1 capacity: D ≤ 4– Plant 2 capacity: 2W ≤ 12– Plant 3 capacity: 3D+2W ≤ 18
• Combine what you have!Maximize 300D+500W
subject to D ≤ 4 2W ≤ 12
3D+2W ≤ 18 D≥0, W ≥0
Do not forget the non-negativity
constraints 23
Outline• Definition of Linear Programming• Formulation of Linear Programming
– Surviving in an island– Extending a problem formulation – Wyndor Glass Co. Product Mix Problem
• Linear Programming Terminology• Graphical Solution to Linear Programming• Properties of Linear Programming
24
LP Terminology• Decision Variables: things we control• Objective function: measure of performance• Nonnegativity constraints• Functional constraints: restrictions we have• Parameters: constants we use in the objective function
and constraint definitions• Solution: any choice of values for the decision variables
– Feasible solution is one that satisfies the constraints– Optimal solution is the best feasible solution
25
Further Study• Read 2.2:
– Formulate the Profit & Gambit Co. Advertising-Mix problem for practice,
– Practice problems:2.5, 2.7, 2.8, 2.12, 2.22, 2.24, 2.27
– Do not worry about the spreadsheet questions• Practice case:
– Case 2-3 Staffing a Call Center (try to formulate the problem)
• Solutions to Practice problems and cases are posted under Practice Files folder for each chapter…
26
Challenge• Below is a question I was asked during on-site
interview with Amazon in Seattle, WA– Suppose you have a set of integer numbers– Formulate an LP that finds the minimum number in this
set• Note: your decision variables should be continuous
27
Outline• Definition of Linear Programming• Formulation of Linear Programming
– Surviving in an island– Extending a problem formulation – Wyndor Glass Co. Product Mix Problem
• Linear Programming Terminology• Graphical Solution to Linear Programming• Properties of Linear Programming
28
Graphically Solving Simple LPs• So far we have discussed how to formulate LPs• How about solving them?• Simple LPs can be solved graphically
– Simple LP: 2 decision variables!1. Graph the constraints to see which points satisfy all
constraints (i.e., graph the feasible points)2. Graph iso-lines of the objective function (objective
function lines)3. Use iso-lines to find the optimal solution(s)
29
Example 2: Product Mix Problem• Maximize your profit
– Decide how many to produce product types 1,2– To be produced, each product requires different
amount of 2 resources per unit– Each resource is limited
30
Example 2: LP formulation• You can formulate the following LP model
• type 1 produced (units)• (units)
Resource A limit
Resource B limit
Non-negativity
Total profit
31
Example 2: Graphical Solution• First, draw your
decision variables as the axes of your graph
32
Example 2: Graphical Solution• Start with the easy
constraints– Non-negativity
constraints!– Assume equality of
the constraint ( or )
– Then, find the region defined by the constraint
33
Example 2: Graphical Solution• Resource A limit
constraint– Draw – Find the region
where – Hint: take a point in each of
one of the regions and see if this point satisfies the constraint. The region including the point satisfying your constraint is the region defined by your constraint (you can take the origin as your point)
34
Example 2: Graphical Solution• Resource B limit
constraint– Draw 2 – Find the region
where 2
35
Example 2: Graphical Solution• Define the feasible
region– It is the region
defined by the intersection of all of your constraints
– It includes all of the feasible solutions to your LP
36
Example 2: Graphical Solution
Improvement Direction
37
Example 2: Graphical Solution• Optimum solution
will be one of the corner solutions!!1. Graph the
constraints2. Define your feasible
region3. Evaluate the corner
points (or draw iso-lines until you leave feasible region)
4. Choose the best corner point
38
Graphical Solution to Case 1• Recall the Wyndor Glass Co. Product Mix
problem– D: number of doors, W: number of windows
Maximize 300D+500W subject to D ≤ 4
2W ≤ 12 3D+2W ≤ 18 D≥0, W ≥0
Plant 1 availability
Total profit
Plant 2 availabilityPlant 3 availability
Non-negativity
39
Graphical Solution to Case 1• STEP 1&2: Graph the constraints and find feasible region
0 2 4 6 8
8
6
4
10
2
Feasible
region
Production rate for doorsD
W
2 W =12
D = 4
3 D + 2 W = 18
Production rate for windows
40
Graphical Solution to Case 1• STEP 3: Draw iso-lines to find the optimal solution
0 2 4 6 8
8
6
4
2
Production rate
for windows
Production rate for doors
Feasible
region
(2, 6)
Optimal solution
10
W
D
P = 3600 = 300D + 500W
P = 3000 = 300D + 500W
P = 1500 = 300D + 500W
41
Summary of the Graphical Method• Draw the constraint boundary line for each constraint. Use the origin (or any
point not on the line) to determine which side of the line is permitted by the constraint.
• Find the feasible region by determining where all constraints are satisfied simultaneously.
• Determine the slope of one objective function line (iso-line). All other objective function lines will have the same slope.
• Move a straight edge with this slope through the feasible region in the direction of improving values of the objective function. Stop at the last instant that the straight edge still passes through a point in the feasible region. This line given by the straight edge is the optimal objective function line.
• A feasible point on the optimal objective function line is an optimal solution.
42
Further Study• Graphical Method:
– Read 2.4 – Practice Problems:
• 2.9.h, 2.13.a, 2.19.e, 2.26.a • See the video if you want someone else talk about graphical
method: http://www.youtube.com/watch?v=gz6_uXyK9yw – Practice drawing lines!
• Online tools are available
43
Outline• Definition of Linear Programming• Formulation of Linear Programming
– Surviving in an island– Extending a problem formulation – Wyndor Glass Co. Product Mix Problem
• Linear Programming Terminology• Graphical Solution to Linear Programming• Properties of Linear Programming
44
Properties of LPs• An LP problem can have
– Infeasibility• No feasible solutions!
– Unique optimal solution• Only one feasible solution is optimum
– Multiple optimal solutions (alternative optima)• More than one feasible solutions that are optimum
– Unboundedness• There is always a better feasible solution
45
Infeasibility• Consider the following LP problem
– Practice: draw the feasible region
46
Infeasibility• The feasible
region is empty• That is, no
solution satisfies the constraints (i.e., there is no feasible solution)– So, no optimal
solution exists47
Unique Optimal Solution• Consider the following LP problem (Example 2)
48
Unique Optimal Solution• The feasible region
is not empty• All of the points in
the feasible region are feasible solutions
• But we have a single optimal solution
49
Alternative Optima• Consider the following LP problem
50
Alternative Optima• The feasible region
is not empty– There are many
feasible solutions– Also, there are
many optimal solutions • but still there are
corner points that are also optimum!
51
Challenge• Does an LP have to have at least two corner
solutions that are optimum in case of alternative optima? (I asked this in the Ph.D. qualifying exam)– No!– Proof?– Think about a counter example
52
Unboundedness• Consider the following LP problem
53
Unboundedness• The feasible region
is unbounded and– You can increase
the objective function value as much as you can while you are still in the feasible region
– Unbounded feasible region does not mean unboundedness of LP
54
Further Properties of LPs• Given that the constraints do not change
– Maximizing 3A+4B = Minimizing -3A-4B• Maximization is opposite of minimization
– Maximizing 3A+4B = Maximizing 100+3A+4B• Adding a constant to the objective function does not change
the optimum solution, you can just ignore it for optimization– Maximizing 3A+4B = Maximizing 15A+20B
• Multiplying all of the coefficients of the objective function with the same positive constant does not change the optimization
• On another note, you can multiply both sides of a constraint with the same non-zero constant and it will not change the feasible region, i.e., A+B<= 5 defines the same region with 2A+2B<=10 55
Further Properties of LPs• Divisibility Assumption of Linear
Programming: – Decision variables in a linear programming model are
allowed to have any values, including fractional values, that satisfy the functional and nonnegativity constraints. Thus, these variables are not restricted to just integer values.
– If violated, you do not have an LP
56
Further Properties of LPs• LP models are polynomially solvable
– That is, they are relatively easy to solve– Simplex Method is a very popular method to solve LP
problems• If an optimum solution exists to an LP problem, then there
exists an optimum corner solution (this is true for any LP)– Start with a corner solution (extreme point), move to a better
corner solution (there are finite corner solutions)– Repeat this until you cannot find a better corner solution– http://en.wikipedia.org/wiki/Simplex_algorithm
– Karmarkar’s algorithm and Ellipsoid Method are other ways to solve LP models (wiki them to have a look)
57
Software for solving LPs• There are many software for solving LPs• They mostly use Simplex type of algorithms
– We will learn how to solve simple LPs in Excel– Excel solver uses Simplex Algorithm
• Other software– CPLEX (one of the best solvers for LPs)– Matlab has a function to solve LPs (linprog)– Optimization software can solve LPs
• GAMS, Xpress, Lindo, Lingo, AMPLE
58
Next time….• Spreadsheet modeling
– Using Excel solver to solve LPs• Applications
– Different cases with different LP formulations…• Sensitivity Analysis (briefly)• Preview Chapter 3
59