0% found this document useful (0 votes)
107 views40 pages

Unit-1: Basics of or and Linear Programming

The document discusses the basics of operations research (OR) including its history and methodology. OR emerged in the late 1930s in the UK to help optimize military operations using scientific problem solving. It involved forming mathematical models of problems and selecting optimal alternatives. OR helped improve the effectiveness of radar systems and fighter aircraft allocation in World War II.

Uploaded by

GOVIND LAKKARAJU
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
107 views40 pages

Unit-1: Basics of or and Linear Programming

The document discusses the basics of operations research (OR) including its history and methodology. OR emerged in the late 1930s in the UK to help optimize military operations using scientific problem solving. It involved forming mathematical models of problems and selecting optimal alternatives. OR helped improve the effectiveness of radar systems and fighter aircraft allocation in World War II.

Uploaded by

GOVIND LAKKARAJU
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 40

UNIT-1: BASICS OF OR AND LINEAR PROGRAMMING

1. INTRODUCTION TO OR

TERMINOLOGY
The British/Europeans refer to "operational research", the Americans to "operations
research" - but both are often shortened to just "OR" (which is the term we will use).
Another term which is used for this field is "management science" ("MS"). The Americans
sometimes combine the terms OR and MS together and say "OR/MS" or "ORMS".
Yet other terms sometimes used are "industrial engineering" ("IE"), "decision science"
("DS"), and “problem solving”.
In recent years there has been a move towards a standardization upon a single term for the
field, namely the term "OR".
“Operations Research (Management Science) is a scientific approach to decision making that
seeks to best design and operate a system, usually under conditions requiring the allocation of
scarce resources.”
A system is an organization of interdependent components that work together to accomplish
the goal of the system.

THE METHODOLOGY OF OR
When OR is used to solve a problem of an organization, the following seven step procedure
should be followed:
Step 1. Formulate the Problem
OR analyst first defines the organization's problem. Defining the problem includes specifying
the organization's objectives and the parts of the organization (or system) that must be studied
before the problem can be solved.
Step 2. Observe the System
Next, the analyst collects data to estimate the values of parameters that affect the
organization's problem. These estimates are used to develop (in Step 3) and evaluate (in Step
4) a mathematical model of the organization's problem.

2
Step 3. Formulate a Mathematical Model of the Problem
The analyst, then, develops a mathematical model (in other words an idealized representation)
of the problem. In this class, we describe many mathematical techniques that can be used to
model systems.
Step 4. Verify the Model and Use the Model for Prediction
The analyst now tries to determine if the mathematical model developed in Step 3 is an
accurate representation of reality. To determine how well the model fits reality, one
determines how valid the model is for the current situation.
Step 5. Select a Suitable Alternative
Given a model and a set of alternatives, the analyst chooses the alternative (if there is one)
that best meets the organization's objectives.
Sometimes the set of alternatives is subject to certain restrictions and constraints. In many
situations, the best alternative may be impossible or too costly to determine.
Step 6. Present the Results and Conclusions of the Study
In this step, the analyst presents the model and the recommendations from Step 5 to the
decision making individual or group. In some situations, one might present several
alternatives and let the organization choose the decision maker(s) choose the one that best
meets her/his/their needs.
After presenting the results of the OR study to the decision maker(s), the analyst may find that
s/he does not (or they do not) approve of the recommendations. This may result from
incorrect definition of the problem on hand or from failure to involve decision maker(s) from
the start of the project. In this case, the analyst should return to Step 1, 2, or 3.
Step 7. Implement and Evaluate Recommendation
If the decision maker(s) has accepted the study, the analyst aids in implementing the
recommendations. The system must be constantly monitored (and updated dynamically as the
environment changes) to ensure that the recommendations are enabling decision maker(s) to
meet her/his/their objectives.

HISTORY OF OR
(Prof. Beasley‟s lecture notes)
OR is a relatively new discipline. Whereas 70 years ago it would have been possible to study
mathematics, physics or engineering (for example) at university it would not have been
possible to study OR, indeed the term OR did not exist then. It was only

3
really in the late 1930's that operational research began in a systematic fashion, and it started
in the UK.
Early in 1936 the British Air Ministry established Bawdsey Research Station, on the east
coast, near Felixstowe, Suffolk, as the centre where all pre-war radar experiments for both the
Air Force and the Army would be carried out. Experimental radar equipment was brought up
to a high state of reliability and ranges of over 100 miles on aircraft were obtained.
It was also in 1936 that Royal Air Force (RAF) Fighter Command, charged specifically with
the air defense of Britain, was first created. It lacked however any effective fighter aircraft -
no Hurricanes or Spitfires had come into service - and no radar data was yet fed into its very
elementary warning and control system.
It had become clear that radar would create a whole new series of problems in fighter
direction and control so in late 1936 some experiments started at Biggin Hill in Kent into the
effective use of such data. This early work, attempting to integrate radar data with ground
based observer data for fighter interception, was the start of OR.
The first of three major pre-war air-defense exercises was carried out in the summer of 1937.
The experimental radar station at Bawdsey Research Station was brought into operation and
the information derived from it was fed into the general air-defense warning and control
system. From the early warning point of view this exercise was encouraging, but the tracking
information obtained from radar, after filtering and transmission through the control and
display network, was not very satisfactory.
In July 1938 a second major air-defense exercise was carried out. Four additional radar
stations had been installed along the coast and it was hoped that Britain now had an aircraft
location and control system greatly improved both in coverage and effectiveness. Not so! The
exercise revealed, rather, that a new and serious problem had arisen. This was the need to
coordinate and correlate the additional, and often conflicting, information received from the
additional radar stations. With the out-break of war apparently imminent, it was obvious that
something new - drastic if necessary had to be attempted. Some new approach was needed.

Accordingly, on the termination of the exercise, the Superintendent of Bawdsey Research


Station, A.P. Rowe, announced that although the exercise had again demonstrated the
technical feasibility of the radar system for detecting aircraft, its operational achievements
still fell far short of requirements. He therefore proposed that a crash program of research into
the operational - as opposed to the technical -

4
aspects of the system should begin immediately. The term "operational research"
[RESEARCH into (military) OPERATIONS] was coined as a suitable description of this new
branch of applied science. The first team was selected from amongst the scientists of the radar
research group the same day.
In the summer of 1939 Britain held what was to be its last pre-war air defense exercise. It
involved some 33,000 men, 1,300 aircraft, 110 antiaircraft guns, 700 searchlights, and 100
barrage balloons. This exercise showed a great improvement in the operation of the air
defense warning and control system. The contribution made by the OR teams was so apparent
that the Air Officer Commander-in-Chief RAF Fighter Command (Air Chief Marshal Sir
Hugh Dowding) requested that, on the outbreak of war, they should be attached to his
headquarters at Stanmore.
On May 15th 1940, with German forces advancing rapidly in France, Stanmore Research
Section was asked to analyze a French request for ten additional fighter squadrons (12 aircraft
a squadron) when losses were running at some three squadrons every two days. They
prepared graphs for Winston Churchill (the British Prime Minister of the time), based upon a
study of current daily losses and replacement rates, indicating how rapidly such a move would
deplete fighter strength. No aircraft were sent and most of those currently in France were
recalled.
This is held by some to be the most strategic contribution to the course of the war made by
OR (as the aircraft and pilots saved were consequently available for the successful air defense
of Britain, the Battle of Britain).
In 1941 an Operational Research Section (ORS) was established in Coastal Command which
was to carry out some of the most well-known OR work in World War II.
Although scientists had (plainly) been involved in the hardware side of warfare (designing
better planes, bombs, tanks, etc) scientific analysis of the operational use of military resources
had never taken place in a systematic fashion before the Second World War. Military
personnel, often by no means stupid, were simply not trained to undertake such analysis.
These early OR workers came from many different disciplines, one group consisted of a
physicist, two physiologists, two mathematical physicists and a surveyor. What such people
brought to their work were "scientifically trained" minds, used to querying assumptions, logic,
exploring hypotheses, devising experiments, collecting data, analyzing numbers, etc. Many
too were of high intellectual caliber (at least four

5
wartime OR personnel were later to win Nobel prizes when they returned to their peacetime
disciplines). By the end of the war OR was well established in the armed services both in the
UK and in the USA. OR started just before World War II in Britain with the establishment of
teams of scientists to study the strategic and tactical problems involved in military operations.
The objective was to find the most effective utilization of limited military resources by the
use of quantitative techniques. Following the end of the war OR spread, although it spread in
different ways in the UK and USA. You should be clear that the growth of OR since it began
(and especially in the last 30 years) is, to a large extent, the result of the increasing power and
widespread availability of computers. Most (though not all) OR involves carrying out a large
number of numeric calculations. Without computers this would simply not be possible.

2. BASIC OR CONCEPTS

"OR is the representation of real-world systems by mathematical models together with the use
of quantitative methods (algorithms) for solving such models, with a view to optimizing."
We can also define a mathematical model as consisting of:
 Decision variables, which are the unknowns to be determined by the solution to the
model.
 Constraints to represent the physical limitations of the system
 An objective function
 An optimal solution to the model is the identification of a set of variable values which are
feasible (satisfy all the constraints) and which lead to the optimal value of the objective
function.
An optimization model seeks to find values of the decision variables that optimize (maximize
or minimize) an objective function among the set of all values for the decision variables that
satisfy the given constraints.

Two Mines Example


The Two Mines Company own two different mines that produce an ore which, after being
crushed, is graded into three classes: high, medium and low-grade. The company has
contracted to provide a smelting plant with 12 tons of high-grade, 8 tons of medium-grade
and 24 tons of low-grade ore per week. The two mines have different operating characteristics
as detailed below.

Consider that mines cannot be operated in the weekend. How many days per week should
each mine be operated to fulfill the smelting plant contract?
6
Guessing
To explore the Two Mines problem further we might simply guess (i.e. use our judgment)
how many days per week to work and see how they turn out.
 work one day a week on X, one day a week on Y
This does not seem like a good guess as it results in only 7 tones a day of high- grade,
insufficient to meet the contract requirement for 12 tones of high-grade a day. We say that
such a solution is infeasible.
 work 4 days a week on X, 3 days a week on Y
This seems like a better guess as it results in sufficient ore to meet the contract. We say that
such a solution is feasible. However it is quite expensive (costly).
We would like a solution which supplies what is necessary under the contract at minimum
cost. Logically such a minimum cost solution to this decision problem must exist. However
even if we keep guessing we can never be sure whether we have found this minimum cost
solution or not. Fortunately our structured approach will enable us to find the minimum cost
solution.

Solution
What we have is a verbal description of the Two Mines problem. What we need to do is to
translate that verbal description into an equivalent mathematical description.
In dealing with problems of this kind we often do best to consider them in the order:
 Variables
 Constraints
 Objective
This process is often called formulating the problem (or more strictly formulating a
mathematical representation of the problem).

Variables
These represent the "decisions that have to be made" or the "unknowns". We have
two decision variables in this problem:
x = number of days per week mine X is operated
y = number of days per week mine Y is operated Note
here that x ≥ 0 and y ≥ 0.

Constraint

7
It is best to first put each constraint into words and then express it in a mathematical form.
ore production constraints - balance the amount produced with the
quantity required under the smelting plant contract
Ore
High 6x + 1y ≥ 12
Medium 3x + 1y ≥ 8
Low 4x + 6y ≥ 24
days per week constraint - we cannot work more than a certain maximum
number of days a week e.g. for a 5 day week we have
x≤5
y≤5

Inequality constraints
Note we have an inequality here rather than an equality. This implies that we may produce
more of some grade of ore than we need. In fact we have the general rule: given a choice
between an equality and an inequality choose the inequality
For example - if we choose an equality for the ore production constraints we have the three
equations 6x+y=12, 3x+y=8 and 4x+6y=24 and there are no values of x and y which satisfy all
three equations (the problem is therefore said to be "over- constrained"). For example the
values of x and y which satisfy 6x+y=12 and 3x+y=8 are x=4/3 and y=4, but these values do
not satisfy 4x+6y=24.
The reason for this general rule is that choosing an inequality rather than an equality gives us
more flexibility in optimizing (maximizing or minimizing) the objective (deciding values for
the decision variables that optimize the objective).

Implicit constraints
Constraints such as days per week constraint are often called implicit constraints because they
are implicit in the definition of the variables.
Objective
Again in words our objective is (presumably) to minimize cost which is given by 180x +
160y

Since we have the complete mathematical representation of the problem:


minimize
180x + 160y
subject to
8
6x + y ≥ 12
3x + y ≥ 8 4x
+ 6y ≥ 24 x ≤
5
y≤5
x, y ≥ 0

Some notes
The mathematical problem given above has the form
 all variables continuous (i.e. can take fractional values)
 a single objective (maximize or minimize)
 the objective and constraints are linear i.e. any term is either a constant or a constant
multiplied by an unknown (e.g. 24, 4x, 6y are linear terms but xy or x2 is a non-linear
term)
Any formulation which satisfies these three conditions is called a linear program (LP). We
have (implicitly) assumed that it is permissible to work in fractions of days - problems where
this is not permissible and variables must take integer values will be dealt with under Integer
Programming (IP).

Discussion
This problem was a decision problem.
We have taken a real-world situation and constructed an equivalent mathematical
representation - such a representation is often called a mathematical model of the real-world
situation (and the process by which the model is obtained is called formulating the model).
Just to confuse things the mathematical model of the problem is sometimes called the
formulation of the problem.
Having obtained our mathematical model we (hopefully) have some quantitative method
which will enable us to numerically solve the model (i.e. obtain a numerical solution) - such a
quantitative method is often called an algorithm for solving the model.
Essentially an algorithm (for a particular model) is a set of instructions which, when followed
in a step-by-step fashion, will produce a numerical solution to that model.

9
Our model has an objective, that is something which we are trying to optimize.
Having obtained the numerical solution of our model we have to translate that
solution back into the real-world situation.

"OR is the representation of real-world systems by mathematical models together with the
use of quantitative methods (algorithms) for solving such models, with a view to
optimizing."

10
3. LINEAR PROGRAMMING

It can be recalled from the Two Mines example that the conditions for a mathematical model
to be a linear program (LP) were:
 all variables continuous (i.e. can take fractional values)
 a single objective (minimize or maximize)
 the objective and constraints are linear i.e. any term is either a constant or a
constant multiplied by an unknown.
LP's are important - this is because:
 many practical problems can be formulated as LP's
 there exists an algorithm (called the simplex algorithm) which enables us to solve
LP's numerically relatively easily
We will return later to the simplex algorithm for solving LP's but for the moment we will
concentrate upon formulating LP's.
Some of the major application areas to which LP can be applied are:
 Work scheduling
 Production planning & Production process
 Capital budgeting
 Financial planning
 Blending (e.g. Oil refinery management)
 Farm planning
 Distribution
 Multi-period decision problems
o Inventory model
o Financial models
o Work scheduling
Note that the key to formulating LP's is practice. However a useful hint is that common
objectives for LP's are maximize profit/minimize cost.

11
There are four basic assumptions in LP:
 Proportionality
o The contribution to the objective function from each decision variable is
proportional to the value of the decision variable (The contribution to the
objective function from making four soldiers (4$3=$12) is exactly four times
the contribution to the objective function from making one soldier ($3))
o The contribution of each decision variable to the LHS of each constraint is
proportional to the value of the decision variable (It takes exactly three times
as many finishing hours (2hrs3=6hrs) to manufacture three soldiers as it
takes to manufacture one soldier (2 hrs))
 Additivity
o The contribution to the objective function for any decision variable is
independent of the values of the other decision variables (No matter what the
value of train (x2), the manufacture of soldier (x1 ) will always contribute 3x1
dollars to the objective function)
o The contribution of a decision variable to LHS of each constraint is
independent of the values of other decision variables (No matter what the value
of x1, the manufacture of x2 uses x2 finishing hours and x2 carpentry hours)
 1st implication: The value of objective function is the sum of the
contributions from each decision variables.
 2nd implication: LHS of each constraint is the sum of the
contributions from each decision variables.
 Divisibility
o Each decision variable is allowed to assume fractional values. If we actually
can not produce a fractional number of decision variables, we use IP (It is
acceptable to produce 1.69 trains)
 Certainty
o Each parameter is known with certainty

12
FORMULATING LP

Giapetto Example
(Winston 3.1, p. 49)
Giapetto's wooden soldiers and trains. Each soldier sells for $27, uses $10 of raw materials
and takes $14 of labor & overhead costs. Each train sells for $21, uses $9 of raw materials,
and takes $10 of overhead costs. Each soldier needs 2 hours finishing and 1 hour carpentry;
each train needs 1 hour finishing and 1 hour carpentry. Raw materials are unlimited, but only
100 hours of finishing and 80 hours of carpentry are available each week. Demand for trains
is unlimited; but at most 40 soldiers can be sold each week. How many of each toy should be
made each week to maximize profits?
Answer
Decision variables completely describe the decisions to be made (in this case, by Giapetto).
Giapetto must decide how many soldiers and trains should be manufactured each week. With
this in mind, we define:
x1 = the number of soldiers produced per week
x2 = the number of trains produced per week
Objective function is the function of the decision variables that the decision maker wants to
maximize (revenue or profit) or minimize (costs). Giapetto can concentrate on maximizing
the total weekly profit (z).
Here profit equals to (weekly revenues) – (raw material purchase cost) – (other variable
costs). Hence Giapetto‟s objective function is:
Maximize z = 3x1 + 2x2
Constraints show the restrictions on the values of the decision variables. Without constraints
Giapetto could make a large profit by choosing decision variables to be very large. Here there
are three constraints:
Finishing time per week
Carpentry time per week
Weekly demand for soldiers
Sign restrictions are added if the decision variables can only assume nonnegative values
(Giapetto can not manufacture negative number of soldiers or trains!)

13
All these characteristics explored above give the following Linear Programming
(LP) model
max z = 3x1 + 2x2 (The Objective function)
s.t. 2x1 + x2  100 (Finishing constraint)
x1 + x2  80 (Carpentry constraint)
x1  40 (Constraint on demand for soldiers)
x1, x2 > 0 (Sign restrictions)
A value of (x1, x2) is in the feasible region if it satisfies all the constraints and sign
restrictions.
Graphically and computationally we see the solution is (x1, x2) = (20, 60) at which z =
180. (Optimal solution)
Report
The maximum profit is $180 by making 20 soldiers and 60 trains each week. Profit is limited
by the carpentry and finishing labor available. Profit could be increased by buying more
labor.

Advertisement Example
(Winston 3.2, p.61)
Dorian makes luxury cars and jeeps for high-income men and women. It wishes to advertise
with 1 minute spots in comedy shows and football games. Each comedy spot costs $50K and
is seen by 7M high-income women and 2M high-income men. Each football spot costs $100K
and is seen by 2M high-income women and 12M high-income men. How can Dorian reach
28M high-income women and 24M high- income men at the least cost?
Answer
The decision variables are
x1 = the number of comedy spots
x2 = the number of football spots The
model of the problem:
min z = 50x1 + 100x2
st 7x1 + 2x2 = 28
2x1 + 12x2 =24
x1, x2>0

14
The graphical solution is z = 320 when (x1, x2) = (3.6, 1.4). From the graph, in this problem
rounding up to (x1, x2) = (4, 2) gives the best integer solution.
Report
The minimum cost of reaching the target audience is $400K, with 4 comedy spots and 2
football slots. The model is dubious as it does not allow for saturation after repeated viewings.

Diet Example
(Winston 3.4., p. 70)
Ms. Fidan‟s diet requires that all the food she eats come from one of the four “basic food
groups“. At present, the following four foods are available for consumption: brownies,
chocolate ice cream, cola, and pineapple cheesecake. Each brownie costs 0.5$, each scoop of
chocolate ice cream costs 0.2$, each bottle of cola costs 0.3$, and each pineapple cheesecake
costs 0.8$. Each day, she must ingest at least 500 calories, 6 oz of chocolate, 10 oz of sugar,
and 8 oz of fat. The nutritional content per unit of each food is shown in Table. Formulate an
LP model that can be used to satisfy her daily nutritional requirements at minimum cost.

Calories Chocolate Sugar Fat


(ounces) (ounces) (ounces)
Brownie 400 3 2 2
Choc. ice cream (1 scoop) 200 2 2 4
Cola (1 bottle) 150 0 4 1
Pineapple cheesecake (1 piece) 500 0 4 5

Answer
The decision variables:
x1: number of brownies eaten daily
x2: number of scoops of chocolate ice cream eaten daily
x3: bottles of cola drunk daily
x4: pieces of pineapple cheesecake eaten daily The
objective function (the total cost of the diet in cents):
min w = 50x1 + 20x2 + 30x3 + 80x4
Constraints:
400x1 + 200x2 + 150x3 + 500x4 > 500 (daily calorie intake)
3x1 + 2x2 > 6 (daily chocolate intake)
2x1 + 2x2 + 4x3 + 4x4 > 10 (daily sugar intake)

15
The minimum cost diet incurs a daily cost of 90 cents by eating 3 scoops of chocolate and drinking 1
bottle of cola (w = 90, x2 = 3, x3 = 1)

Post Office Example


(Winston 3.5, p.74)
A PO requires different numbers of employees on different days of the week. Union rules
state each employee must work 5 consecutive days and then receive two days off. Find the
minimum number of employees needed.
Mon Tue Wed Thur Fri Sat Sun
Staff Needed 17 13 15 19 14 16 11

Answer
The decision variables are xi (# of employees starting on day i)
Mathematically we must
min z = x1 + x2 + x3 + x4 + x5 + x6 + x7
s.t. x1 + x4 + x5 + x6 + x7 ≥ 17
x1 + x2 + x5 + x6 + x7 ≥ 13
x1 + x2 + x3 + x6 + x7 ≥ 15
x1 + x2 + x3 + x4 + x7 ≥ 19
x1 + x2 + x3 + x4 + x5 ≥ 14
+ x2 + x3 + x4 + x5 + x6 ≥ 16
+ x3 + x4 + x5 + x6 + x7 ≥ 11
xt ≥ 0, t
The solution is (xi) = (4/3, 10/3, 2, 22/3, 0, 10/3, 5) giving z = 67/3.
We could round this up to (xi) = (2, 4, 2, 8, 0, 4, 5) giving z = 25 (may be wrong!).
However restricting the decision var.s to be integers and using Lindo again gives (xi) =
(4, 4, 2, 6, 0, 4, 3) giving z = 23.

Sailco Example
(Winston 3.10, p. 99)
Sailco must determine how many sailboats to produce in the next 4 quarters. The demand is
known to be 40, 60, 75, and 25 boats. Sailco must meet its demands. At the beginning of the
1st quarter Sailco starts with 10 boats in inventory. Sailco can produce up to 40 boats with
regular time labor at $400 per boat, or additional boats at $450 with overtime labor. Boats
made in a quarter can be used to meet that quarter's demand or held in inventory for the next
quarter at an extra cost of $20.00 per boat.
16
Answer
The decision variables are for t = 1,2,3,4
xt = # of boats in quarter t built in regular time
yt = # of boats in quarter t built in overtime For
convenience, introduce variables:
it = # of boats in inventory at the end quarter t
dt = demand in quarter t
We are given that d1 = 40, d2 = 60, d3 = 75, d4 = 25, i0 =10
xt ≤ 40, t
By logic it = it-1+ xt + yt - dt, t.
Demand is met iff it ≥ 0, t
(Sign restrictions xt, yt ≥ 0, t)
We need to minimize total cost z subject to these three sets of conditions where
z = 400 (x1 + x2 + x3 + x4) + 450 (y1 + y2 + y3 + y4) + 20 (i1 + i2 + i3 + i4)
Report:
Lindo reveals the solution to be (x1, x2, x3, x4) = (40, 40, 40, 25) and (y1, y2, y3, y4) = (0, 10,
35, 0) and the minimum cost of $78450.00 is achieved by the schedule
Q1 Q2 Q3 Q4
Regular time (xt) 40 40 40 25
Overtime (yt) 0 10 35 0
Inventory (it) 10 10 0 0 0
Demand (dt) 40 60 75 25

Customer Service Level Example


(Winston 3.12, p. 108)
CSL services computers. Its demand (hours) for the time of skilled technicians in the next 5
months is
t Jan Feb Mar Apr May
dt 6000 7000 8000 9500 11000
It starts with 50 skilled technicians at the beginning of January. Each technician can work 160
hrs/month. To train a new technician they must be supervised for 50 hrs by an experienced
technician for a period of one month time. Each experienced

17
technician is paid $2K/mth and a trainee is paid $1K/mth. Each month 5% of the skilled
technicians leave. CSL needs to meet demand and minimize costs.
Answer
The decision variable is
xt = # to be trained in month t
We must minimize the total cost. For convenience let
yt = # experienced tech. at start of tth month
dt = demand during month t
Then we must
min z = 2000 (y1+...+ y5) + 1000 (x1 +...+ x5)
subject to
160yt - 50xt ≥ dt for t = 1,..., 5
y1 = 50, d1 = 6000, d2 = 7000, d3 = 8000, d4 = 9500, d5 = 11000
yt = .95yt-1 + xt-1 for t = 2,3,4,5
xt, yt ≥0
SOLVING LP

LP Solutions: Four Cases


When an LP is solved, one of the following four cases will occur:
1. The LP has a unique optimal solution.
2. The LP has alternative (multiple) optimal solutions. It has more than one
(actually an infinite number of) optimal solutions
3. The LP is infeasible. It has no feasible solutions (The feasible region contains no
points).
4. The LP is unbounded. In the feasible region there are points with arbitrarily large
(in a max problem) objective function values.

The Graphical Solution


Any LP with only two variables can be solved graphically

Example 1. Giapetto
(Winston 3.1, p. 49)
Since the Giapetto LP has two variables, it may be solved graphically.
Answer
18
The feasible region is the set of all points satisfying the constraints. max z
= 3x1 + 2x2
s.t. 2x1 + x2 ≤ 100 (Finishing constraint)
x1 + x2 ≤ 80 (Carpentry constraint)
x1 ≤ 40 (Demand constraint)
x1, x2 ≥ 0 (Sign restrictions)
The set of points satisfying the LP is bounded by the five sided polygon DGFEH. Any point
on or in the interior of this polygon (the shade area) is in the feasible region. Having identified
the feasible region for the LP, a search can begin for the optimal solution which will be the
point in the feasible region with the largest z-value (maximization problem).
To find the optimal solution, a line on which the points have the same z-value is graphed. In a
max problem, such a line is called an isoprofit line while in a min problem, this is called the
isocost line. (The figure shows the isoprofit lines for z = 60, z = 100, and z = 180).

19
X2
B
100

finishing Feasible
D constraint Region
demand
G constraint
z =
80

100 carpentry
constraint
F z=
z = E 180A C
60
60
40
20

H
10 20 40 50 60 80 X1

In the unique optimal solution case, isoprofit line last hits a point (vertex - corner) before
leaving the feasible region.
The optimal solution of this LP is point G where (x1, x2) = (20, 60) giving z = 180.

A constraint is binding (active, tight) if the left-hand and right-hand side of the constraint are
equal when the optimal values of the decision variables are substituted into the constraint.
A constraint is nonbinding (inactive) if the left-hand side and the right-hand side of the
constraint are unequal when the optimal values of the decision variables are substituted into
the constraint.
In Giapetto LP, the finishing and carpentry constraints are binding. On the other hand the
demand constraint for wooden soldiers is nonbinding since at the optimal solution x1 < 40 (x1
= 20).

Example 2. Advertisement
(Winston 3.2, p. 61)
Since the Advertisement LP has two variables, it may be solved graphically.

20
Answer
The feasible region is the set of all points satisfying the constraints. min z
= 50x1 + 100x2
s.t. 7x1 + 2x2 ≥ 28 (high income women)
2x1 + 12x2 ≥ 24 (high income men) x1,
x2 ≥ 0

X2
X2

B
14 B
14
14

High-income women
High-income women constraint
constraint
12
12
12

10
10
10
Feasible
Feasible
Region
Region
8
8

6
6
zz==600
600
600

44 zz =
= 320
320
320

High-income men
High-income men constraint
constraint

2
2 E
E
D
D
A
A C
C

2 4 X1
X1
2 4 66 88 10
10
10 12
12
12 14
14
14



Since Dorian wants to minimize total advertising costs, the optimal solution to the problem
is the point in the feasible region with the smallest z value.
An isocost line with the smallest z value passes through point E and is the optimal solution
at x1 = 3.6 and x2 = 1.4 giving z = 320.
Both the high-income women and high-income men constraints are satisfied, both
constraints are binding.

21
Example 3. Two Mines
min 180x + 160y
st 6x + y ≥ 12
3x + y ≥ 8 4x
+ 6y ≥ 24 x ≤
5
y≤5
x, y ≥ 0
Answer

Optimal sol‟n is 765.71. 1.71 days mine X and 2.86 days mine Y are operated.

Example 4. Modified Giapetto


max z = 4x1 + 2x2
s.t. 2x1 + x2 ≤ 100 (Finishing constraint)
x1 + x2 ≤ 80 (Carpentry constraint)
x1 ≤ 40 (Demand constraint)
x1, x2 ≥ 0 (Sign restrictions)

22
Answer
Points on the line between points G (20, 60) and F (40, 20) are the alternative optimal
solutions (see figure below).
Thus, for 0 ≤ c ≤ 1,
c [20 60] + (1 - c) [40 20] = [40 - 20c, 20 + 40c]
will be optimal
For all optimal solutions, the optimal objective function value is 200.

100 B

80 D

E A C
x1
H 40 50 80

Example 5. Modified Giapetto (v. 2)


Add constraint x2 ≥ 90 (Constraint on demand for trains).
Answer
No feasible region: Infeasible LP

Example 6. Modified Giapetto (v. 3)


Only use constraint x2 ≥ 90
Answer
Isoprofit line never lose contact with the feasible region: Unbounded LP

23
The Simplex Algorithm
Note that in the examples considered at the graphical solution, the unique optimal solution to
the LP occurred at a vertex (corner) of the feasible region. In fact it is true that for any LP the
optimal solution occurs at a vertex of the feasible region. This fact is the key to the simplex
algorithm for solving LP's.
Essentially the simplex algorithm starts at one vertex of the feasible region and moves (at
each iteration) to another (adjacent) vertex, improving (or leaving unchanged) the objective
function as it does so, until it reaches the vertex corresponding to the optimal LP solution.
The simplex algorithm for solving linear programs (LP's) was developed by Dantzig in the
late 1940's and since then a number of different versions of the algorithm have been
developed. One of these later versions, called the revised simplex algorithm (sometimes
known as the "product form of the inverse" simplex algorithm) forms the basis of most
modern computer packages for solving LP's.

Steps
1. Convert the LP to standard form
2. Obtain a basic feasible solution (bfs) from the standard form
3. Determine whether the current bfs is optimal. If it is optimal, stop.
4. If the current bfs is not optimal, determine which nonbasic variable should become a
basic variable and which basic variable should become a nonbasic variable to find a
new bfs with a better objective function value
5. Go back to Step 3.

Related concepts:
 Standard form: all constraints are equations and all variables are nonnegative
 bfs: any basic solution where all variables are nonnegative
 Nonbasic variable: a chosen set of variables where variables equal to 0
 Basic variable: the remaining variables that satisfy the system of equations at the
standard form

24
Example 1. Dakota Furniture
(Winston 4.3, p. 134)
Dakota Furniture makes desks, tables, and chairs. Each product needs the limited resources of
lumber, carpentry and finishing; as described in the table. At most 5 tables can be sold per
week. Maximize weekly revenue.

Resource Desk Table Chair Max Avail.


Lumber (board ft.) 8 6 1 48
Finishing hours 4 2 1.5 20
Carpentry hours 2 1.5 .5 8
Max Demand unlimited 5 unlimited
Price ($) 60 30 20

LP Model:
Let x1, x2, x3 be the number of desks, tables and chairs produced.
Let the weekly profit be $z. Then, we must
max z = 60x1 + 30x2 + 20x3
s.t. 8x1 + 6x2 + x3 ≤ 48
4x1 + 2x2 + 1.5 x3 ≤ 20
2x1 + 1.5x2 + .5 x3 ≤ 8
x2 ≤ 5
x1, x2, x3 ≥ 0

Solution with Simplex Algorithm


First introduce slack variables and convert the LP to the standard form and write a canonical
form

R0 z -60x1 -30x2 -20x3 =0


R1 8x1 + 6x2 + x3 + s1 = 48
R2 4x1 + 2x2 +1.5x3 + s2 = 20
R3 2x1 + 1.5x2 + .5x3 + s3 =8
R4 x2 + s4 =5
x1, x2, x3, s1, s2, s3, s4 ≥ 0

25
Obtain a starting bfs.
As (x1, x2, x3) = 0 is feasible for the original problem, the below given point where three of the
variables equal 0 (the non-basic variables) and the four other variables (the basic variables)
are determined by the four equalities is an obvious bfs:
x1 = x2 = x3 = 0, s1 = 48, s2 = 20, s3 = 8, s4 = 5.
.
Determine whether the current bfs is optimal.
Determine whether there is any way that z can be increased by increasing some nonbasic
variable.
If each nonbasic variable has a nonnegative coefficient in the objective function row (row
0), current bfs is optimal.
However, here all nonbasic variables have negative coefficients: It is not optimal.

Find a new bfs


 z increases most rapidly when x1 is made non-zero; i.e. x1 is the entering variable.
 Examining R1, x1 can be increased only to 6. More than 6 makes s1 < 0. Similarly R2,
R3, and R4, give limits of 5, 4, and no limit for x1 (ratio test). The smallest ratio is the
largest value of the entering variable that will keep all the current basic variables
nonnegative. Thus by R3, x1 can only increase to x1 = 4 when s3 becomes 0. We say s3 is
the leaving variable and R3 is the pivot equation.
 Now we must rewrite the system so the values of the basic variables can be read off.
The new pivot equation (R3/2) is
R 3‟: x1+.75x2+.25x3+ .5s3 =4
Then use R3‟ to eliminate x1 in all the other rows.
R0‟=R0+60R3‟, R1‟=R1-8R3‟, R2‟=R2-4R3‟, R4‟=R4
R0‟ z + 15x2 - 5x3 + 30s3 = 240 z = 240 ‟
R1 - x3 + s1 - 4s3 = 16 s1 = 16 ‟

R2 - x2 + .5x3 + s2 - 2s3 = 4 s2 = 4 ‟
R3 x1 + .75x2 + .25x3 + .5s3 = 4 x1 = 4
‟ x2 + s4 = 5 s4 = 5
R4

26
The new bfs is x2 = x3 = s3 = 0, x1 = 4, s1 = 16, s2 = 4, s4 = 5 making z = 240.

Check optimality of current bfs. Repeat steps until an optimal solution is reached
 We increase z fastest by making x3 non-zero (i.e. x3 enters).
 x3 can be increased to at most x3 = 8, when s2 = 0 ( i.e. s2 leaves.)

Rearranging the pivot equation gives


R2‟‟ - 2x2 + x3 + 2s2 - 4s3 = 8 (R 2‟× 2).
Row operations with R2‟‟ eliminate x3 to give the new system
R0‟‟= R0‟ + 5R2‟‟, R1‟‟ = R1‟ + R2‟‟, R3‟‟ = R3‟ - .5R2‟‟, R4‟‟ = R4‟
The bfs is now x2 = s2 = s3 = 0, x1 = 2, x3 = 8, s1 = 24, s4 = 5 making z = 280. Each
nonbasic variable has a nonnegative coefficient in row 0 (5x2, 10s2, 10s3). THE
CURRENT SOLUTION IS OPTIMAL

Report: Dakota furniture‟s optimum weekly profit would be 280$ if they produce 2 desks
and 8 chairs.

This was once written as a tableau.


(Use table format for each operation in all HW and exams!!!)

max z = 60x1 + 30x2 + 20x3


s.t. 8x1 + 6x2 + x3 ≤ 48
4x1 + 2x2 + 1.5x3 ≤ 20
2x1 + 1.5x2 + .5x3 ≤ 8
x2 ≤5
x1, x2, x3 > 0

Initial tableau:
Z x1 x2 x3 s1 s2 s3 s4 RHS BV Ratio
1 -60 -30 -20 0 0 0 0 0 z=0
0 8 6 1 1 0 0 0 48 s1 = 48 6
0 4 2 1.5 0 1 0 0 20 s2 = 20 5
0 2 1.5 0.5 0 0 1 0 8 s3 = 8 4
0 0 1 0 0 0 0 1 5 s4 = 5 -

27
First tableau:
Z x1 x2 x3 s1 s2 s3 s4 RHS BV Ratio
1 0 15 -5 0 0 30 0 240 z = 240
0 0 0 -1 1 0 -4 0 16 s1 = 16 -
0 0 -1 0.5 0 1 -2 0 4 s2 = 4 8
0 1 0.75 0.25 0 0 0.5 0 4 x1 = 4 16
0 0 1 0 0 0 0 1 5 s4 = 5 -

Second and optimal tableau:


Z x1 x2 x3 s1 s2 s3 s4 RHS BV Ratio
1 0 5 0 0 10 10 0 280 z = 280
0 0 -2 0 1 2 -8 0 24 s1 = 24
0 0 -2 1 0 2 -4 0 8 x3 = 8
0 1 1.25 0 0 -0.5 1.5 0 2 x1 = 2
0 0 1 0 0 0 0 1 5 s4 = 5

Example 2. Modified Dakota Furniture


Dakota example is modified: $35/table new
z = 60 x1 + 35 x2 + 20 x3

Second and optimal tableau for the modified problem:



z x1 x2 x3 s1 s2 s3 s4 RHS BV Ratio
1 0 0 0 0 10 10 0 280 z=280
0 0 -2 0 1 2 -8 0 24 s1=24 -
0 0 -2 1 0 2 -4 0 8 x3=8 -
0 1 1.25 0 0 -0.5 1.5 0 2 x1=2 2/1.25 
0 0 1 0 0 0 0 1 5 s4=5 5/1

Another optimal tableau for the modified problem:


z x1 x2 x3 s1 s2 s3 s4 RHS BV
1 0 0 0 0 10 10 0 280 z=280
0 1.6 0 0 1 1.2 -5.6 0 27.2 s1=27.2
0 1.6 0 1 0 1.2 -1.6 0 11.2 x3=11.2
0 0.8 1 0 0 -0.4 1.2 0 1.6 x2=1.6
0 -0.8 0 0 0 0.4 -1.2 1 3.4 s4=3.4

28
Therefore the optimal solution is as follows:

z = 280 and for 0 ≤ c ≤ 1

x1 2 0 2c
x2 =c 0 + (1 – c) 1.6 = 1.6 – 1.6c
x3 8 11.2 11.2 – 3.2c

Example 3. Unbounded LPs



z x1 x2 x3 s1 s2 z RHS BV Ratio
1 0 2 -9 0 12 4 100 z=100
0 0 1 -6 1 6 -1 20 x4=20 None
0 1 1 -1 0 1 0 5 x1=5 None

Since ratio test fails, the LP under consideration is an unbounded LP.


The Big M Method
If an LP has any ≥ or = constraints, a starting bfs may not be readily apparent. When a bfs
is not readily apparent, the Big M method or the two-phase simplex method may be used to
solve the problem.
The Big M method is a version of the Simplex Algorithm that first finds a bfs by adding
"artificial" variables to the problem. The objective function of the original LP must, of course,
be modified to ensure that the artificial variables are all equal to 0 at the conclusion of the
simplex algorithm.

Steps
1. Modify the constraints so that the RHS of each constraint is nonnegative (This requires
that each constraint with a negative RHS be multiplied by -1. Remember that if you
multiply an inequality by any negative number, the direction of the inequality is
reversed!). After modification, identify each constraint as a ≤, ≥ or = constraint.
2. Convert each inequality constraint to standard form (If constraint i is a ≤ constraint, we
add a slack variable si; and if constraint i is a ≥ constraint, we subtract an excess variable
ei).
3. Add an artificial variable ai to the constraints identified as ≥ or = constraints at the end of
Step 1. Also add the sign restriction ai ≥ 0.
29
4. Let M denote a very large positive number. If the LP is a min problem, add (for each
artificial variable) Mai to the objective function. If the LP is a max problem, add (for each
artificial variable) -Mai to the objective function.
5. Since each artificial variable will be in the starting basis, all artificial variables must be
eliminated from row 0 before beginning the simplex. Now solve the transformed problem
by the simplex (In choosing the entering variable, remember that M is a very large
positive number!).

If all artificial variables are equal to zero in the optimal solution, we have found the
optimal solution to the original problem.

If any artificial variables are positive in the optimal solution, the original problem is
infeasible!!!

Example 1. Oranj Juice


(Winston 4.10, p. 164)
Bevco manufactures an orange flavored soft drink called Oranj by combining orange soda
and orange juice. Each ounce of orange soda contains 0.5 oz of sugar and 1 mg of vitamin C.
Each ounce of orange juice contains 0.25 oz of sugar and 3 mg of vitamin C. It costs Bevco
2¢ to produce an ounce of orange soda and 3¢ to produce an ounce of orange juice.
Marketing department has decided that each 10 oz bottle of Oranj must contain at least 20 mg
of vitamin C and at most 4 oz of sugar. Use LP to determine how Bevco can meet marketing
dept.‟s requirements at minimum cost. LP Model:
Let x1 and x2 be the quantity of ounces of orange soda and orange juice (respectively) in a
bottle of Oranj.
min z = 2x1 + 3x2
s.t. 0.5 x1 + 0.25 x2 ≤ 4 (sugar const.)
x1+ 3 x2 ≥ 20 (vit. C const.)
x1+ x2 = 10 (10 oz in bottle)
x1, x2 ≥ 0

Solving Oranj Example with Big M Method


1. Modify the constraints so that the RHS of each constraint is
nonnegative The RHS of each constraint is nonnegative

30
2. Convert each inequality constraint to standard form
z– 2x1 – 3x2 = 0
0.5x1 + 0.25x2 + s1 = 4
x1 + 3x2 - e2 = 20
x1 + x2 = 10
all variables nonnegative
3. Add ai to the constraints identified as > or = const.s
z– 2x1 – 3x2 = 0 Row
0 0.5x1 + 0.25x2 + s1 = 4 Row 1
x1 + 3x2 - e2 + a2 = 20 Row 2
x1 + x2 + a3 = 10 Row 3
all variables nonnegative

4. Add Mai to the objective function (min problem)


min z = 2x1 + 3x2 + Ma2 + Ma3
Row 0 will change to
z– 2x1 – 3x2 – Ma2 – Ma3 = 0
5. Since each artificial variable are in our starting bfs, they must be eliminated from row 0
New Row 0 = Row 0 + M * Row 2 + M * Row 3 
z + (2M–2) x1 + (4M–3) x2 – M e2 = 30M New Row 0

Initial tableau:

z x1 x2 s1 e2 a2 a3 RHS BV Ratio
1 2M-2 4M-3 0 -M 0 0 30M z=30M
0 0.5 0.25 1 0 0 0 4 s1=4 16
0 1 3 0 -1 1 0 20 a2=20 20/3*
0 1 1 0 0 0 1 10 a3=10 10

In a min problem, entering variable is the variable that has the “most positive” coefficient
in row 0!
First tableau:

z x1 x2 s1 e2 a2 a3 RHS BV Ratio
1 (2M-3)/3 0 0 (M-3)/3 (3-4M)/3 0 20+3.3M z
0 5/12 0 1 1/12 -1/12 0 7/3 s1 28/5

31
0 1/3 1 0 -1/3 1/3 0 20/3 x2 20
0 2/3 0 0 1/3 -1/3 1 10/3 a3 5*
Optimal tableau:
z x1 x2 s1 e2 a2 a3 RHS BV
1 0 0 0 -1/2 (1-2M)/2 (3-2M)/2 25 z=25
0 0 0 1 -1/8 1/8 -5/8 1/4 s1=1/4
0 0 1 0 -1/2 1/2 -1/2 5 x2=5
0 1 0 0 1/2 -1/2 3/2 5 x1=5

Report:
In a bottle of Oranj, there should be 5 oz orange soda and 5 oz orange juice. In this
case the cost would be 25¢.

Example 2. Modified Oranj Juice


Consider Bevco‟s problem. It is modified so that 36 mg of vitamin C are required. Related
LP model is given as follows:
Let x1 and x2 be the quantity of ounces of orange soda and orange juice (respectively) in a
bottle of Oranj.
min z = 2x1 + 3x2
s.t. 0.5 x1 + 0.25 x2 ≤ 4 (sugar const.)
x1+ 3 x2 ≥ 36 (vit. C const.)
x1+ x2 = 10 (10 oz in bottle)
x1, x2 ≥ 0
Solving with Big M method:
Initial tableau:

Z x1 x2 s1 e2 a2 a3 RHS BV Ratio
1 2M-2 4M-3 0 -M 0 0 46M z=46M
0 0.5 0.25 1 0 0 0 4 s1=4 16
0 1 3 0 -1 1 0 36 a2=36 36/3
0 1 1 0 0 0 1 10 a3=10 10 
Optimal tableau:
Z x1 x2 s1 e2 a2 a3 RHS BV
1 1-2M 0 0 -M 0 3-4M 30+6M z=30+6M
0 ¼ 0 1 0 0 -1/4 3/2 s1=3/2
0 -2 0 0 -1 1 -3 6 a2=6
0 1 1 0 0 0 1 10 x2=10
An artificial variable (a2) is BV so the original LP has no feasible solution

32
DUALITY

Primal – Dual
Associated with any LP is another LP called the dual. Knowledge of the dual provides
interesting economic and sensitivity analysis insights. When taking the dual of any LP, the
given LP is referred to as the primal. If the primal is a max problem, the dual will be a min
problem and vice versa

Finding the Dual of an LP


The dual of a normal max problem is a normal min problem.
Normal max problem is a problem in which all the variables are required to be
nonnegative and all the constraints are ≤ constraints.
Normal min problem is a problem in which all the variables are required to be
nonnegative and all the constraints are ≥ constraints.
Similarly, the dual of a normal min problem is a normal max problem.

Finding the Dual of a Normal Max Problem


PRIMAL
max z = c1x1+ c2x2 +…+ cnxn
s.t. a11x1 + a12x2 + … + a1nxn ≤ b1
a21x1 + a22x2 + … + a2nxn ≤ b2
… … … …
am1x1 + am2x2 + … + amnxn ≤ bm x j
≥ 0 (j = 1, 2, …, n)
DUAL
min w = b1y1 + b2y2 +…+ bmym
2+ … + am1ym ≥ c1 a12y1 + a22y2 + … + am2ym ≥
c2
… … … …
a1ny1 + a2ny2 + …+ amnym ≥ cn yi
≥ 0 (i = 1, 2, …, m)

33
Finding the Dual of a Normal Min Problem
PRIMAL
min w = b1y1+ b2y2 +…+ bmym
s.t. a11y1 + a21y2 + … + am1ym ≥ c1
a12y1 + a22y2 + … + am2ym ≥ c2
… … … …
a1ny1 + a2ny2 + …+ amnym ≥ cn yi
≥ 0 (i = 1, 2, …, m)
DUAL
max z = c1x1+ c2x2 +…+ cnxn
s.t. a11x1 + a12x2 + … + a1nxn ≤ b1
a21x1 + a22x2 + … + a2nxn ≤ b2
… … … …
am1x1 + am2x2 + … + amnxn ≤ bm x j
≥ 0 (j = 1, 2, …, n)

Finding the Dual of a Nonnormal Max Problem


 If the ith primal constraint is a ≥ constraint, the corresponding dual variable yi
must satisfy yi ≤ 0
 If the ith primal constraint is an equality constraint, the dual variable yi is now
unrestricted in sign (urs).
 If the ith primal variable is urs, the ith dual constraint will be an equality
constraint

Finding the Dual of a Nonnormal Min Problem


 If the ith primal constraint is a ≤ constraint, the corresponding dual variable
xi must satisfy xi ≤ 0
 If the ith primal constraint is an equality constraint, the dual variable xi is now
urs.
 If the ith primal variable is urs, the ith dual constraint will be an equality
constraint

34
The Dual Theorem
The primal and dual have equal optimal objective function values (if the problems have
optimal solutions).
Weak duality implies that if for any feasible solution to the primal and an feasible solution to
the dual, the w-value for the feasible dual solution will be at least as large as the z-value for
the feasible primal solution  z ≤ w.
Consequences
 Any feasible solution to the dual can be used to develop a bound on the optimal value
of the primal objective function.
 If the primal is unbounded, then the dual problem is infeasible.
 If the dual is unbounded, then the primal is infeasible.
 How to read the optimal dual solution from Row 0 of the optimal tableau if the
primal is a max problem:
„optimal value of dual variable yi‟
= „coefficient of si in optimal row 0‟ (if const. i is a ≤ const.)
= –„coefficient of ei in optimal row 0‟ (if const. i is a ≥ const.)
= „coefficient of ai in optimal row 0‟ – M (if const. i is a = const.)
 How to read the optimal dual solution from Row 0 of the optimal tableau if the
primal is a min problem:
„optimal value of dual variable xi‟
= „coefficient of si in optimal row 0‟ (if const. i is a ≤ const.)
= –„ coefficient of ei in optimal row 0‟ (if const. i is a ≥ const.)
= „coefficient of ai in optimal row 0‟ + M (if const. i is a = const.)

Economic Interpretation
When the primal is a normal max problem, the dual variables are related to the value of
resources available to the decision maker. For this reason, dual variables are often referred to
as resource shadow prices.
Example
PRIMAL
Let x1, x2, x3 be the number of desks, tables and chairs produced. Let the weekly profit be $z.
Then, we must

35
max z = 60x1 + 30x2 + 20x3
8x1 + 6x2 + x3 ≤ 48 (Lumber constraint)
4x1 + 2x2 + 1.5x3 ≤ 20 (Finishing hour constraint) 2x1 +
1.5x2 + 0.5x3 ≤ 8 (Carpentry hour constraint)
x1, x2, x3 ≥ 0
DUAL
Suppose an entrepreneur wants to purchase all of Dakota‟s resources.
In the dual problem y1, y2, y3 are the resource prices (price paid for one board ft of lumber,
one finishing hour, and one carpentry hour).
$w is the cost of purchasing the resources.
Resource prices must be set high enough to induce Dakota to sell. i.e. total purchasing cost
equals total profit.

min w = 48y1 + 20y2 + 8y3


s.t. 8y1 + 4y2 + 2y3 ≥ 60 (Desk constraint) 6y1 +
2y2 + 1.5y3 ≥ 30 (Table constraint) y1 + 1.5y2+
0.5y3 ≥ 20 (Chair constraint)
y1, y2, y3 ≥ 0

SENSITIVITY ANALYSIS

Reduced Cost
For any nonbasic variable, the reduced cost for the variable is the amount by which the
nonbasic variable's objective function coefficient must be improved before that variable will
become a basic variable in some optimal solution to the LP.
If the objective function coefficient of a nonbasic variable xk is improved by its reduced cost,
then the LP will have alternative optimal solutions at least one in which xk is a basic variable,
and at least one in which xk is not a basic variable.
If the objective function coefficient of a nonbasic variable xk is improved by more than its
reduced cost, then any optimal solution to the LP will have xk as a basic variable and xk > 0.
Reduced cost of a basic variable is zero (see definition)!

Shadow Price
We define the shadow price for the ith constraint of an LP to be the amount by which the
optimal z value is "improved" (increased in a max problem and decreased in a min problem)

36
if the RHS of the ith constraint is increased by 1.
This definition applies only if the change in the RHS of the constraint leaves the current basis
optimal!
A ≥ constraint will always have a nonpositive shadow price; a ≤ constraint will always have a
nonnegative shadow price.

Conceptualization
max z = 5 x1 + x2 + 10x3
x1 + x3 ≤ 100
x2 ≤ 1
All variables ≥ 0

This is a very easy LP model and can be solved manually without utilizing Simplex.
x2 = 1 (This variable does not exist in the first constraint. In this case, as the problem is a
maximization problem, the optimum value of the variable equals the RHS value of the second
constraint).

x1 = 0, x3 = 100 (These two variables do exist only in the first constraint and as the objective
function coefficient of x3 is greater than that of x1, the optimum value of x3 equals the RHS
value of the first constraint).
Hence, the optimal solution is as follows:
z = 1001, [x1, x2, x3] = [0, 1, 100]

Similarly, sensitivity analysis can be executed manually.


Reduced Cost
As x2 and x3 are in the basis, their reduced costs are 0.
In order to have x1 enter in the basis, we should make its objective function coefficient as
great as that of x3. In other words, improve the coefficient as 5 (10-5). New objective function
would be (max z = 10x1 + x2 + 10x3) and there would be at least two optimal solutions for [x1,
x2, x3]: [0, 1, 100] and [100, 1, 0].
Therefore reduced cost of x1 equals 5.
If we improve the objective function coefficient of x1 more than its reduced cost, there would
be a unique optimal solution: [100, 1, 0].

37
Shadow Price
If the RHS of the first constraint is increased by 1, new optimal solution of x3 would be 101
instead of 100. In this case, new z value would be 1011.
If we use the definition: 1011 - 1001 = 10 is the shadow price of the first constraint.
Similarly the shadow price of the second constraint can be calculated as 1 (please find it).
Some important equations
If the change in the RHS of the constraint leaves the current basis optimal (within the
allowable RHS range), the following equations can be used to calculate new objective
function value:
for maximization problems
new obj. fn. value = old obj. fn. for minimization problems
 new obj. fn. value = old obj. fn. value – (new RHS – old RHS) × shadow price For

Lindo example, as the allowable increases in RHS ranges are infinity for each
constraint, we can increase RHS of them as much as we want. But according to
allowable decreases, RHS of the first constraint can be decreased by 100 and that of
second constraint by 1.
Lets assume that new RHS value of the first constraint is 60.
As the change is within allowable range, we can use the first equation (max. problem):
znew = 1001 + ( 60 - 100 ) 10 = 601.
value + (new RHS – old RHS) × shadow price

38
Utilizing Simplex for Sensitivity
In Dakota furniture example; x1, x2, and x3 were representing the number of desks, tables,
and chairs produced.
The LP formulated for profit maximization:

max z = 60 x1 30 x2 20x3
8 x1 + 6 x2 + x3 + s1 = 48 Lumber
4 x1 + 2 x2 +1.5 x3 + s2 = 20 Finishing
2 x1 +1.5 x2 + .5 x3 + s3 = 8 Carpentry
x2 + s4 = 5 Demand
The optimal solution was:

z +5 x2 +10 s2 +10 s3 = 280


-2 x2 +s1 +2 s2 -8 s3 = 24
-2 x2 + x3 +2 s2 -4 s3 = 8
+ x1 + 1.25 x2 -.5 s2 +1.5 s3 = 2
x2 + s4 = 5

Analysis 1
Suppose available finishing time changes from 20  20+, then we have the system:

z' = 60 x1' + 30 x2' + 20 x3'


8 x1' + 6 x2' + x3' + s1' = 48
4 x1' + 2 x2' +1.5 x3' + s2' = 20+
2 x1' +1.5 x2' + .5 x3' + s3' = 8
+ x2' + s4' = 5

39
or equivalently:

z' = 60 x1' + 30 x2' + 20 x3'


8 x1' + 6 x2' + x3' + s1' = 48
4 x1' + 2 x2' +1.5 x3' +(s2'-) = 20
2 x1' +1.5 x2' + .5 x3' + s3' = 8
+ x2' + s4' = 5
‟ ‟ ‟ ‟‟ ‟ ‟ ‟ ‟
That is z , x1 , x , x ,x ,s ,s -,s ,s satisfy the original problem, and hence (1)
2 3 4 1 2 3 4

Substituting in:

z' +5 x2' +10(s2'-) +10 s3' = 280


-2 x2' + s1' +2(s2'-) -8 s3' = 24
-2 x2' + x3' +2(s2'-) -4 s3' = 8
+ x1' +1.25 x2' -.5(s2'-) +1.5 s3' = 2
x2' + s4' = 5
and thus

z' +5 x2' +10 s2' +10 s3' = 280+10


-2 x2' +s1' +2 s2' -8 s3' = 24+2
-2 x2' + x3' +2 s2' -4 s3' = 8+2
+ x1' +1.25 x2' -.5 s2' +1.5 s3' = 2-.5
x2' + s4' = 5
For -4    4, the new system maximizesz‟. In this range RHS values are non- negative.
As  increases, revenue increases by 10. Therefore, the shadow price of finishing labor is
$10 per hr. (This is valid for up to 4 extra hours or 4 fewer hours).

Analysis 2
What happens if revenue from desks changes to $60+? For small  revenue increases by
2 (as we are making 2 desks currently). But how large an increase is possible?
The new revenue is:
z' = (60+)x1+30x2+20x3 = z+x1
= (280 - 5x2 - 10s2 - 10s3) + (2 - 1.25x2 + .5s2 - 1.5s3)
= 280 + 2- (5 + 1.25)x2 - (10-.5)s2 - (10 + 1.5)s3
So the top line in the final system would be:

40
z' + (5 + 1.25)x2 + (10 - .5)s2 + (10 + 1.5)s3 = 280 + 2
Provided all terms in this row are   we are still optimal.
For -4    20, the current production schedule is still optimal.

Analysis 3
If revenue from a non-basic variable changes, the revenue is
z‟ = 60x1 + (30 + )x2 + 20x3 = z + x2
= 280 - 5x2 - 10s2 - 10s3 + x2
= 280 - (5 - )x2 - 10s2 - 10s3
The current solution is optimal for   5. But when   5 or the revenue per table is
increased past $35, it becomes better to produce tables. We say the reduced cost of tables is
$5.00.

Duality and Sensitivity Analysis


Will be treated at the class.

The 100% Rule


Will be treated at the class.

41

You might also like