Linear Programming Problem
Linear Programming Problem
• In 1947, George Danzig developed the use of algebra for determining solutions
to problems that involved the optimal allocation of scarce resources.
• The term linear implies that all the mathematical relations used in the problem
are linear or straight-line relations.
• The term programming refers to the method of determining a particular
program or plan of action, i.e., the use of algorithms (solution techniques) that
is a well-defined sequence of steps that will lead to an optimal solution.
• The term linear programming refers to a family of mathematical techniques for
determining the optimum allocation of resources and obtaining a particular
objective when there are alternative uses of the limited or constrained
resources.
• The usefulness of this technique is enhanced by the availability of several user-
friendly soft wares such as STORM, TORA, QSB+, LINDO, etc. However, there is
no general package for building an LP model.
Linear Programming Models
• Linear programming models are mathematical representations of LP
problems.
• Linear programming models have certain characteristics in common.
a) Components-relate to the structure of a model
b) Assumptions-reveal the conditions under which the model is valid.
Components of LP Models
There are four major components of LP models including:
• Objective function: either maximization or minimization
• Decision variables: unknown quantities to be solved for (E.g. How much of
each product should be produced in order to obtain the greatest profit? )
• Constraints: the restrictions or limits coming from a variety of sources
• Parameters: numerical values (coefficients of respective objective functions
and constraints)
Constraints
• LP problem is subject to certain restrictions or limits coming from a variety of sources (e.g., raw materials, labor
time, etc.), legal or contractual requirements (e.g., product standards, work standards, etc.), technological
requirements (e.g., necessary compressive strength or tensile strength) or they may reflect other limits based on
forecasts, customer orders, company policies, and so on.
• Only solutions that satisfy all constraints in a model are acceptable and are referred to as feasible solutions. The
optimal solution will be the one that provides the best value for the objective function.
A constraint has four elements:
A right hand side (RHS) quantity that specifies the limit for that constraint. It must be a constant, not a variable.
An algebraic sign that indicates whether the limit is an upper bound ( <) that cannot be exceeded, a lower bound (>)
that is the lowest acceptable amount, or an equality (=) that must be met exactly.
The decision variables to which the constraint applies.
The impact that one unit of each decision variable will have on the right-hand side quantity of the constraint.
The general linear programming problem (or model) with n decision variables
and m constraints can be stated in the following form:
Optimize (Max. or Min.) Z = +…
subject to the linear constraints,
+… (≤, =, )
+… (≤, =, )
‘. . .
. . .
. . .
+… (≤, =, )
Assumptions of LP Models
• Linearity (proportionality)-, a function or equation is linear when the variables included are all to the
power 1 (not squared, cubed, square root, etc.) and no products (e.g., ) appear. On the other hand, the
amount of each resource used (supplied) and its contribution to the profit (or cost) in the objective function
must be proportional to the value of each decision variable. For example, if production of one unit requires 5
hours of a particular resource, then making 3 units of that product requires 15 hours (3x5) of that resource.
• Divisibility (Continuity)-The divisibility requirement pertains to potential values of decision variables. It is
assumed that non-integer values are acceptable. suppose 3.5 to be the optimal number of television sets to
produce per hour, which is unacceptable, but it would result in 7 sets per two hours, which would then be
acceptable.
• Certainty-This requirement involves two aspects of LP models. One aspect relates to the model parameters,
i.e., the numerical values. It is assumed that these values are known and constant. The other aspect is the
assumption that all relevant constraints have been identified and represented in the model.
• Additivity-The value of the objective function and the total amount of each resource used (or supplied),
must be equal to the sum of the respective individual contributions (profit or cost) by decision variables.
• Non-negativity-It assumes that negative values of variables are unrealistic and, therefore, will not be
considered in any potential solutions. Only positive values and zero will be allowed and the non-negativity
assumption is inherent in LP models. all variables are restricted to non-negative values (i.e., their numerical
value will be ≥ 0).i.e. negative values of variables are unrealistic or meaningless.
Advantages and Limitations of Linear Programming
Core preparation 75 15
If the capacities available are 1000, 1500, and 750 machine hours in each
process respectively, formulate the problem as LP?
Solution
Solution
Step1. Identify decision variables
Since the products to be produced are power and traction transformers using the available resource to attain the objective set, we consider them as
decision variables. This is because the organization’s problem here is how many of each product to produce in order to attain the objective, which
requires the management decision. Let X1 = the no of power transformers to be produced. X2= the no of traction transformer to be produced.
Step 2. Determine Objective Function
From the problem above, we understand that the problem is maximization problem.
Hence,
Zmax = 50,000X1+ 10,000X2
This is because, each unit of X1 contributes Birr 50,000 and X2 contributes Birr 10,000 to objective function.
Step 3. Identify constraints
Here we have two constraints: structural and non-negativity constraints. The structural constraint is the amount of machine hours available in each
process.
Step 4. Determining Parameters
Parameters are already identified in the table of the problem.
Note: Step 3 and 4 can be performed simultaneously as:
75X1 + 15X2 ≤ 1000 hrs. Core preparation process
160X1 + 30X2 ≤ 1500 hrs. Core to Coil Assembly
45X1 + 10X2 ≤ 750 hrs. Vapor Phase Drying
X1, X2 ≥ 0
Machine hour constraint
Step5. Building and validating the model
Z max = 50,000X1+ 10,000X2
Subject to:
75X1 + 15X2 ≤ 1000 hrs
160X1 + 30X2 ≤ 1500 hrs
45X1 + 10X2 ≤ 750 hrs
x1, x2≥0
Example 2: Marketing Application……… EV SEC 7
Supermarket store chain has hired an advertising firm to determine the types and amount of advertising it should have for its
stores. The three types of advertising available are radio and television commercials, and newspapers advertisements. The
retail chain desires to know the number of each type of advertisement it should purchase in order to maximize exposure. It is
estimated that each ad or commercial will reach the following potential audience and cost the following amount.
Decision variables
Let X1 = number of television commercials
X2 = number of radio commercials
X3= number of newspaper ads
Objective function
It is not only profit which is to be maximized. In this problem the objective to be maximized is audience exposure.
Zmax = 20,000x1 + 12,000x2 + 9,000x3, where
Z = total level of audience exposure
20,000x1 = estimated number of people reached by television commercials
12,000x2 = estimated number of people reached by radio commercials
9,000x3 = estimated number of people reached by newspaper ads
Model constraints: Budget constraint
15,000x1 + 6,000x2 + 4,000x3 ≤Birr 100,000
Capacity constraint
Television commercials and radio commercials are limited to 4 and 10 respectively and newspaper ads are limited to 7.
X4 ≤ 4 television commercials
X2 ≤ 10 radio commercials
X3 ≤ X7news paper ads
Policy constraint
The total number of commercials and ads cannot exceed 15
X1 + X2 + X3≤ 15
The complete linear programming model for this problem is summarized as:
Zmax = 20,000X1 + 12,000X2 + 9,000X3
Sub. To:
15,000X1 + 6,000X2 + 4,000X3≤Birr 100,000
X1 ≤4
X2 ≤10
X 3 ≤7
X 1 + X2 +X3 ≤15
X1, X2, X3≥0
Classroom Activity-Chemical Mixture EV SEC 8
1 A chemical corporation produces a chemical mixture for the customer in 1000- pound
batches. The mixture contains three ingredients- Zinc, Mercury and Potassium. The
mixture must conform to formula specifications (i.e., a recipe) supplied by a customer.
The company wants to know the amount of each ingredient to put in the mixture that will
meet all the requirements of the mix and minimize total cost.
The customer has supplied the following formula specifications for each batch of
mixture.
1. The mixture must contain at least 200 lb. (pound) of Mercury
2. The mixture must contain at least 300 lb. of Zinc
3. The mixture must contain at least 100 lb. of Potassium
4. The cost per pound of mixture of Mercury is Birr 4, of Zinc Birr 8 and of Potassium
Birr 9.
Required: Formulate LPM for the problem
Classroom Activity-
2 A firm is engaged in breeding pigs. The pigs are fed on various products grown on the farm. In
view of the need to ensure certain nutrient constituents (call them vitamins, minerals and
proteins) it is necessary to buy two additional products say A and B. One unit of product A
contains 36 units of vitamins, 3 units of minerals and 20 units of proteins. One units of product B
contains 6 units of vitamins, 12 units of minerals and 10 units of proteins. The minimum
requirement of vitamins, minerals and proteins is 108 units, 36 units and 100 units respectively.
Product A costs birr 20 per unit and product B costs birr 40 per unit. Required: Formulate LPM
for the proble
#3 A farmer has 1000 acres of land on which he can grow corn, wheat and soybean. Each acre of corn
costs birr 100 for preparation, requires 7 man-days work and yields a profit of birr 30. An acre of wheat
costs birr 120 to prepare, requires 10 man-days of work and yields a profit of birr 20. An acre of
Soybeans costs birr 70 to prepare, requires 8 man-days of work and yields a profit of birr 20. If the
farmer has birr 100,000 for preparation and can count on 8000 man-days of work. Required: Formulate
LPM for the problem.
#4 ABC Company sells two types of fertilizers, Urea and DAP. Urea fertilizer contains 2 units of chemical
A and 4 units of Chemical B per sack and the DAP fertilizer contains 3 units of each of the chemical A
and B per sack. Urea and DAP fertilizers sell at $3 and $4 per sack respectively. A farmer requires at
least 90 units of chemical A and at least 120 units of chemical B for his farm. Required: Formulate LPM
for the problem
Solving LP Model
• Solution- The set of values of decision variables xj (j = 1,2,…, n) which satisfy the constraints of an LP problem is said to
constitute solution to that LP problem.
• Feasible solution-The set of values of decision variables xj (j = 1, 2,…, n) which satisfy all the constraints and non- negativity
conditions of an LP problems simultaneously is said to constitute the feasible solution to that LP problem.
• Infeasible solution: The set of values of decision variables xj (j = 1, 2,…, n) which do not satisfy all the constraints and non-
negativity conditions of an LP problems simultaneously is said to constitute the infeasible solution to that LP problem.
• Basic solution-For a set of m simultaneous equations in n variables ( n>m), a solution obtained by setting ( n-m) variables equal
to zero and solving for remaining m equations in m variables is called a basic solution. The (n-m) variables whose value did not
appear in this solution are called non-basic variables and the remaining m variables are called basic variables.
• Basic feasible solution- A feasible solution to LP problem which is also the basic solution is called the basic feasible solution.
That is, all basic variables assume non-negative values. Basic feasible solutions are of two types:
o Degenerate: A basic feasible solution is called degenerate if value of at least one basic variable is zero.
o Non-degenerate: A basic feasible solution is called non-degenerate if value of all m basic variables are non- zero and positive.
• Optimal Basic feasible solution -A basic feasible solution which optimizes the objective function value of the given LP problem is
called an optimal basic feasible solution.
• Unbounded solution-A solution which can increase or decrease the value of the LP problem indefinitely is called an unbounded
solution.
The Graphical Method - Solution procedure
This approach involves plotting an objective function line on the graph and
then using that line to determine where in the feasible solution space the
optimal point is. We use the same logic as plotting a constraint line except
that it is not an equation until we equate it to some right-hand side
quantity. Any quantity will do till we find a line that would last touch the
feasible solution space.
The optimal solution to an LP problem will always occur at a corner point
because as the objective function line is moved in the direction that will
improve its value (e.g., away from the origin in our profit maximization
problem), it will last touch one of these intersections of constraints.
Note: The maximization problems the movement of the iso-lines is
outward from the origin; while for minimization the movement is inward to
the origin.
The Extreme Point Approach
Corner or extreme point graphic method states that for problems that have optimal solutions, a solution will occur
at the corner point in the case of unique solution, while in the case of multiple solutions, at least one will occur at a
corner point as these multiple solutions will be combinations of those points between two corner points. The
necessary steps for this approach is after graphing the problem, we determine the values of the decision variables at
each corner point of the feasible region either by inspection or using simultaneous equations. We then substitute
the values at each corner point into the objective function to obtain its value at each corner point and select the one
with the highest value of the objective function (for a maximum problem) or lowest value (for a minimum problem)
as the optimal solution.
i) Extreme Method of Solving Maximization Problems with < constraint
Maximization of objective function involves finding the point where the combination of products results in
maximum value of objective function. The constraints are connected with < sign. The solution space lies below the
slant line and is bounded by the line segments. The origin and other points below the slant lines are in the solution
space (i.e., feasible region).
ii) Extreme Method of Solving Minimization Problems with > constraints
Solving minimization problems involve where the objective functions (like cost function) will be minimum. The
constraints are connected to RHS values with > sign. But, in real world problems, mixes of constraint is also possible.
The value of RHS involves the lowest value of the constraint.
The solution space lies above the slant lines and it is not enclosed. It extends indefinitely above the lines in the first
quadrant. This means simply that cost increases without limit as more and more units are produced. The minimum
cost will occur at a point along the inner boundary of the solution space. The origin and other points below the lines
are not in the solution space.
Example: Maximization problem
In order to demonstrate the method, let us take a microcomputer problem in which a firm is about to
start production of two new microcomputers, X1 and X2. Each requires limited resources of assembly
time, inspection time, and storage space. The manager wants to determine how much of each computer
to produce in order to maximize the profit generated by selling them. Other relevant information is given
below:
Type 1 Type 2
Inspection 22 hrs
Required: Formulate the model and find the optimal solution of the problem.
Solution
i. Unboundedness
Unboundedness occurs when the decision variable increased indefinitely without violating any
of the constraints. The reason for it may be concluded to be wrong formulation of the problem
such as incorrectly maximizing instead of minimizing and/or errors in the given problem.
Checking equalities or rethinking the problem statement will resolve the problem.
Example:
Max Z = 10X1 + 20X2
Subject to 2X1 + 4X2 > 16
X1 + 5X2 > 15
X1, X2 > 0
ii. Redundant Constraints
In some cases, a constraint does not form a unique boundary of the feasible solution space.
Such a constraint is called a redundant constraint. A constraint is redundant if its removal
would not alter the feasible solution space. Redundancy of any constraint does not cause any
difficulty in solving an LP problems graphically. Constraints appear redundant when it may be
more binding (restrictive) than others.
iii. Infeasibility
In some cases after plotting all the constraints on the graph, feasible area (common region) that represents all the
constraint of the problem cannot be obtained. In other words, infeasibility is a condition that arises when no value
of the variables satisfy all the constraints simultaneously. Such a problem arises due to wrong model formulation
with conflicting constraints.
For example,
Max Z = 3X1+2X2
Subject to: 2X1 + X2 < 2
3X1 + 4X2 > 12
X1, X2 > 0
iv. Multiple optimal solutions
Recall the optimum solution is that extreme point for which the objective function has the largest value. It is of
course possible that in a given problem there may be more than one optimal solution.
There are two conditions that should be satisfied for an alternative optimal solution to exist:
•The given objective function is parallel to a constraint that forms the boundary of the feasible region. In other
words, the slope of an objective function is the same as that of the constraint forming the boundary of the feasible
region; and
•The constraint should form a boundary on the feasible region in the direction of optimal movement of the
objective function. In other words, the constraint should be an active constraint.
Simplex for LPPs: The Simplex Method
Solution procedure
Step 1: Formulate the LPP Model
Step 2: Standardize the problem by introducing additional variables
Slack Variables(S): added to the left hand side of a < constraint and show/s unused
resource. E.g.
Non-Standard form Standard form
X1+2X2 <6 X1+2X2+S1= 6
Surplus variables(S): added to the left hand side of a >constraints & show/s the excess
resources used.
Artificial variables (A): have no physical interpretation, they merely serve as a device to
#1 A manufacturer can manufacture two products P & Q from two raw materials A and B.
Each unit of P requires 2 units of Raw material A and 4 units of raw material B. Each
units of Q requires 5 units of Raw material A and 4 units of Raw material B. The
availability of raw material A is restricted to 10,000 units while that of B to 15,000 units.
Find out a suitable product mix assuming the profit of P is Birr 5 per unit and that of Q
birr 16 per unit.
#2 A company produces three products; P1, P2, and P3 from two raw materials A and B,
and Labor L. One unit of product P1 requires 1 unit of A, 3 unit of B and 2 units of L.
One unit of product P2 requires 2 units of A and B each, and 3 units of L, while one
units of P3 needs 2 units of A, 6 units of B and 4 units of L. The company has a daily
availability of 8 units of A, 12 units of B and 12 units of L. It is further known that the
unit contribution margin for the products is birr 3, 2, and 5 respectively for p1, p2, and
p3.
#3A furniture workshop makes desks, chairs, and cabinet and bookcases.
The work is carried out in three major debarments-designing, Fabrication,
and Finishing. Time required per unit of product in hours is:
5x1+3x2 < 45
x1= 12 and x2= 11==> 5x1+3x2+s = 45 ==>5(12)+3(11)+s = 45
==> s=0 unused resource (No idle resource)
5x1+2x2 >20
x1= 4.5 and x2= 2==> 5x1+2x2- s = 20 ==>5(4.5)+2(2)-s = 20
==> s=6 unused resource
2x1+x2 >40
x1= 0 and x2= 0(No production)==> 5x1+2x2- s = 20 ==>5(4.5)+2(2)-s = 20
==> s=-6(This is mathematically unaccepted)
Thus, in order to avoid the mathematical contradiction, we have to add artificial variable (A).
Artificial variable (A):
Artificial variable is a variable that has no meaning in a physical sense but acts as a tool to create an initial feasible LP solution.
Note:
Type of constraint To put into standard form
< ----------------------------------Add a slack variable
= ----------------------------------Add an artificial variable
> ------------------- Subtract a surplus variable and add artificial variable
The Big M-method /Charnes Penalty Method/
The Big-M Method is a method which is used in removing artificial variables
from the basis. In this method; we assign coefficients to artificial variables,
undesirable from the objective function point of view.
If objective function Z is to be minimized, then a very large positive price (called
penalty) is assigned to each artificial variable.
Similarly, if Z is to be maximized, then a very large negative price (also called
penalty) is assigned to each of these variables.
Following are the characteristics of Big-M Method:
High penalty cost (or profit) is assumed as M
M is assigned to artificial variable A in the objective function Z.
Big-M method can be applied to minimization as well as maximization problems
with the following distinctions:
Minimization Problems with all constraints in “≥”form
resource.
Surplus variables(S): added to the left hand side of a > constraints & show/s the
Optimal solution: all C-Z ROW values are non-negative (zero and positivee numbers)
Note:
Assign +M as coefficient of artificial variable A in the objective function
Zmin
Here, –M is assigned as coefficient of artificial variable A in the objective
function Zmax
Coefficient of S (slack/surplus) takes zero values in the objective function
Z
For minimization problem, the incoming variable corresponds to the
highest negative value of Cj-Zj.
Solution is optimal when there is no negative value of Cj-Zj.(For
minimization case)
Example 1: Assume the following minimization problem.
Min Z = 7X1+9X2
Subject to 3X1+6X2 > 36
8X1+4X2 > 64
X1, X2 > 0
We introduce both surplus and artificial variables into both constraints as follows.
Min Z = 7X1+9X2+0S1+0S2+MA1+MA2
Subject to 3X1+6X2 –S1+A1 = 36
8X1+4X2-S2+A2 = 64
X1, X2 > 0
Thus, the subsequent tableaus for this problem are shown below. To remind in these tableaus
is in transforming from one tableau to another, we perform elementary row operations to
obtain the unit vector in the pivot column for the entering variable into the solution.
Initial Simplex Tableau
Basic V 7 9 0 0 M M Quant
X1 X2 S1 S2 A1 A2
A1 M 3 6 -1 0 1 0 36
A2 M 8 4 0 -1 0 1 64
Here we identify the leaving and the entering variables, i.e. the pivot row and the pivot column
respectively. The entering variable with the highest Cj-Zj row value is X1 and the leaving variable (36/3=12;
and 64/8/=8) with the smallest ratio is A2.
Second Simplex Tableau
Basic V 7 9 0 0 M Quant
X1 X2 S1 S2 A1
A1 M 0 9/2 -1 3/8 1 12
X1 7 1 1/2 0 -1/8 0 8
Again, here we identify the leaving and the entering variables, i.e. the pivot row and the pivot column
respectively. The entering variable with the highest Cj-Zj row value is X2 and the leaving variable
(12*2/9=24/9; and 8/1/2=16) with the smallest ratio is A1.
Third Simplex Tableau
Basic V 7 9 0 0 Quant
X1 X2 S1 S2
The third tableau represents a final tableau since it is the optimal solution with entirely zeros and non-
negative values in the Cj-Zj row. Therefore, the optimal solution is: X1 = 20/3 and X2 = 8/3 and value of
objective function is 212/3.
Example 2:
Minimize Z=25x1 +30x2
Subject to:
20x1+15x2 > 100
2x1+ 3x2 > 15
x1, x2 >0
Solution
Step 1: Standardize the problem
Minimize Z=25x1 +30x2 +0s1+0s2 +MA1+MA2
Subject to:
20x1+15x2- s1+A1 = 100
2x1+ 3x2 –s2+A2 = 15
x1, x2, s1, s2, A1, A2 > 0
1. A firm is engaged in breeding pigs. The pigs are feed on various products
grown on the farm. In view of the need to ensure certain nutrient constituents
(call them vitamins, minerals and proteins) it is necessary to buy two
additional products say A and B. One unit of product A contains 36 units of
vitamins, 3 units of minerals and 20 units of proteins. One units of product B
contains 6 units of vitamins, 12 units of minerals and 10 units of proteins. The
minimum requirement of vitamins, minerals and proteins is 108units, 36units
and 100 units respectively. Product A costs birr 20 per unit and product B costs
birr 40 per unit.
2. Food X contains 20 units of vitamin A and 40 units of Vitamin B per gram.
Food Y contains 30 units each of Vitamin A and B. The daily minimum human
requirement of vitamin A and B are 900 units and 1200 units respectively. How
many grams of each type of food should be consumed so as to minimize the
cost, if food X costs birr 0.60 per gram and food Y costs birr 0.80 per gram.
Maximization Problems with mixed constraints
Solution procedure
Step 1: Formulate the LPP Model
Step 2: Standardize the problem by introducing additional variables
Slack Variables(S): added to the left hand side of a < constraint and show/s unused
resource.
Surplus variables(S): added to the left hand side of a >constraints & show/s the
Basic V 6 8 0 0 -M -M Quant
X1 X2 S1 S3 A2 A3
S1 0 0 1 1 0 0 0 4
A2 -M 1 1 0 0 1 0 9
A3 -M 6 2 0 -1 0 1 24
Since this is a maximization problem, the entering variable is the one with the maximum Cj -Zj value.
Therefore, the variable with the maximum Cj-Zj is X1, the decision variable. And the leaving variable is
(4/0=undefined; 9/1=9; and 24/6=4) with the minimum non-negative ratio which is A3, the artificial
variable. Since this artificial variable is not needed we remove it from the next tableau.
Developing the Second Simplex Tableau
After identifying the entering and the leaving variable, the usual elementary row operations
are performed to obtain a unit vector in the entering variable column. The end result after
performing the row operations is as follows which shows the second tableau.
Second Simplex Tableau
Basic V 6 8 0 0 -M Quant
X1 X2 S1 S3 A2
S1 0 0 1 1 0 0 4
A2 -M 0 2/3 0 1/6 1 5
X1 6 1 1/3 0 -1/6 0 4
Again here, we identify the leaving and the entering variables, i.e. the pivot row and the pivot
column respectively. The entering variable with the highest Cj-Zj row value is X2 and the
leaving variable (4/1=4; 5/2/3=7.5 and 4/1/3=12) with the smallest ratio is S1.
Developing the Third Simplex Tableau
Selecting the entering and leaving variables, we go for obtaining a unit vector in
the pivot column by using the elementary row operations. We get the following
third tableau.
Third Simplex Tableau
Basic V 6 8 0 0 -M Quant
X1 X2 S1 S3 A2
X2 8 0 1 1 0 0 4
X1 X2 S1 S3
X2 8 0 1 1 0 4
S3 0 0 0 -4 1 14
X1 6 1 0 -1 1/6 5
Zj 6 8 2 1 62
Cj-Zj 0 0 -2 -1
This tableau represents the final tableau since we have only zeros and
negative values in the Cj-Zj row which indicates that it is the optimal
solution. So we have the following results for each of the variables and the
profit obtained.
X1 = 5, X2 = 4, S3 = 14, and Profit = 62
Post Optimality Analysis
Sensitivity Analysis
I. A Change in the Right Hand—Side Quantity (RHS)
The first step in determining how a change in RHS of a constraint would influence the optimal
solution is to examine the shadow prices in the final simplex tableau.
Shadow Prices
a manager’s window for guessing the impact of one unit change on the value of the Objective
function
the maximum amount that should be paid for one additional unit of resource
a marginal value, i.e. it indicates the impact a one unit change in the amount of a constraint would
have on the objective function
Range of feasibility
the range over which the RHS value of a constraint can be changed with out changing the optimal
solution mix of a problem (still have the same shadow prices)
Rules of determining RoF
For maximization problem (maximization with all < constraints)
To find the UL, take the negative ratio closest to zero
To find the LL, take the smallest positive ratio
II. Changes of the coefficients of the objective function (c)
To calculate changes in the coefficients of objective function we should consider only Decision
variables. Decision variables can be basic or non basic:
1. Range for the coefficients of basic decision variables (range of optimality)
the range over which a basic decision variable coefficient in the objective function can change without
changing the optimal solution mix. However, this change will change only the optimal value of the
objective function.
The general rule for calculating the upper and lower limits of RoO
Allowable increase: the smallest positive ratio of C-Z value and the variable’ substitution
rate
Allowable decrease: the smallest negative ratio of C- Value and the variable substitutions
rate
2. Range for the coefficients of non basic decision variables(range of insignificance)
the range over which Cj rates for non-basic variables can vary without causing a change in the optimal
solution mix (variable).
C (new)> Z
II. Changes of the coefficients of the objective function
consider only Decision variables.
1. Range for the coefficients of basic decision variables
A. The Range of Optimality (RoO)
Is the range over which a basic decision variable coefficient in the objective function can change
without changing the optimal solution mix (only the optimal value of the objective
function/profit/cost figure)
Analysis of X1
Procedure
C – Z row
X1 row
Columns X1 X2 S1 S2 S3
C – Z row 0 = 0 0 =und 0 =und -10 =-10 -43/3 =+40
X1 row 1 0 0 1 -1/3
Note
Allowable increase: the smallest positive ratio of C-Z value and the variable’ substitution rate
Allowable decrease: the smallest negative ration of C-Z Value and the variable substitutions rate
Analysis of X2
C – Z row
X1 row
Column X1 X2 S1 S2 S3
C – Z row 0 =und 0 =0 0 =und -10 =10 -43/3 =-20
X2 row 0 1 0 -1 2/3
Summary
Types of Extra variables to be added Coefficient of extra variables Presence of variables
constraint in the objective function in the initial
Max Z Min Z solution mix
Several special situations which one many encounter during the application of simplex
method are summarized below:
Non-feasible Solution/ Infeasibility
A situation with no feasible solution may exist if the problem was formulated incorrectly.
Infeasibility comes about when there is no solution that satisfies all of the problem’s
constraints.
In the simplex method, an infeasible solution is indicated by looking at the final tableau
Whenever the optimality criteria are satisfied but still there exist an artificial variable in
the basis or solution mix, this is the indication of infeasibility.
Example: Basic V 5 8 0 0 M Quant
X1 X2 S1 S3 A2
X1 5 1 1 -2 3 0 200
X2 8 0 1 1 2 0 100
M A2 0 0 0 -1 1 20
Zj 5 8 -2 31-M M 1,800+200M
Cj-Zj 0 0 2 M-31 0
Even though all Cj - Zj are positive or 0 (i.e. the criterion for an optimal solution in a minimization
case), no feasible solution is possible because an artificial variable (A2) remains in the solution mix.
Unbounded Solution
No finite solution may exist in problems that are not bounded. This means that a variable can
be infinitely large without violating a constraint. In the simplex method, the condition of
unboundedness will be discovered prior to reaching the final tableau. We will note the problem
when trying to decide which variable to remove from the solution mix.
The procedure in unbounded solution is to divide each quantity column number by the
corresponding pivot column number. The row with the smallest positive ratio is replaced. But if
the entire ratios turn out to be negative or undefined, it indicates that the problem is
unbounded.
Note: A negative ratio means that increasing that variable would increase resources. A zero ratio
means that increasing the variable would not use any resources.
Example: Maximization case
Basic V 7 9 0 0 Quant
X1 X2 S1 S3
X2 9 -1 1 2 0 30
S2 0 -2 0 -1 1 10
Zj -9 9 18 0 270
Cj-Zj 15 0 -18 0
The solution in the above case is not optimal because not all Cj - Zj entries are 0 or negative, as required in a
maximization problem. The next variable to enter the solution should be X1.To determine which variable will leave
the solution, we examine the ratios of the quantity column numbers to their corresponding numbers in the X1 or
pivot column. Since both pivot column numbers are negative, an unbounded solution is indicated.
Note: When unbounded solutions occur, no outgoing variable will exist.
Degeneracy
/Tie for leaving basic variable (key row)/
If there is a tie for the smallest ratio, this is a signal that degeneracy exists. Degeneracy can occur right in the first
(initial tableau). This normally happens when the number of constraints is less than the number of variables in the LP
model. Such problems can be overcome by trial and error method. If this is resolved by a proper selection of the key
element, degeneracy can be avoided. The main drawback to degeneracy is the increase in the computation, which
reduces the efficiency of the simplex method considerably.
Basic V 5 8 2 0 0 0 Quant
X1 X2 X3 S1 S2 S3
X2 8 1/4 1 1 -2 0 0 10
S2 0 4 0 1/3 -1 1 0 20
S3 0 2 0 2 2/5 0 1 10
Zj 2 8 8 16 0 0 80
Cj-Zj 3 0 -6 -16 0 0
The leaving variable can be determined as 10/1=40; 20/4=5; 10/2=5. Tie for the smallest ratio
Indicates degeneracy.
Degeneracy could lead to a situation known as cycling, in which the simplex algorithm
alternatives back and forth between the same non-optimal solutions, i.e., it puts a new variable
in, then takes it out in the next tableau, puts it back in, and so on.
One simple way of dealing with the issue is to select either row (S2 or S3 in this case) arbitrary.
If we are unlucky and cycling does occur, we simply go back and select the other row. However,
the number of iterations required to arrive at the optimal solution can be minimized by
adopting the following rule:
•Divide the coefficient of slack variables in the simplex table where degeneracy is detected by
the corresponding positive numbers of the key column in the row, starting from left to right.
•The row which contains smallest ratio comparing from left to right column wise becomes the
key row.
Note: When there is a tie between a slack and artificial variable to leave the basis, the
preference shall be given to artificial variable to leave the basis and there is no need to apply
the procedure for resolving such cases.
Two incoming variables / Or Tie for entering variables/
•In order to break this tie, the selection for the key column (entering variable) can be made arbitrary. However; the
number of solution can be minimized by adopting the following rules:
1. If there is a tie between two decision variables, then the selection can be made arbitrary.
2. If there is a tie between a decision variable and a slack (or surplus) variable, then select the decision variable to
enter into basis first.
3. If there is a tie between slack or surplus variable, then selection can be made arbitrary.
Example:
If the equation is max Z
Basic V 7 9 0 0 Quant
X1 X2 S1 S3
‘ ‘ ‘
‘ , ;
Zj
Cj-Zj 5 2 5 0
In such a case, X1 is the entering variable
Multiple Optimum Solutions
This situation occurs when there can be infinite number of solutions possible for a given problem. This
situation can be recognized in a simplex method when one of the non-basic variables in the Cj-Zj, row
have a value of zero. This is to mean in the optimal solution when non-basic variable (variable not in the
basis) has a zero value in Cj-Zj row, this is the indication of existence of multiple solution. To obtain the
other solution, we will make a non- basic variable with a zero Cj-Zj value to enter in to the basis and solve
in the same way as theBasic
oneV we3 did in
2 the0previous
0 discussion.
Quant
X1 X2 S1 S2
X2 2 3/2 1 1 0 6
S2 0 1 0 1/2 1 3
Zj 3 2 2 0 12
Cj-Zj 0 0 -2 0
MaxZ=3X1+2X2
X1=0, X2=6, S2=3 and MaxZ=12 or: X1=3, X2=3/2 and MaxZ=12
(Note: Replace S2 by X1 and then make algebraic operations that will lead you x1=3; x2=3/2 and Zj=12 )
•Summary
The simplex method is an algebraic procedure that starts with a feasible solution that is
not optimal and systematically moves from one feasible solution to another until an
optimal solution is found.
The variations described in general simplex approach include; maximization and
minimization problems, mixed constraint problems, problems with multiple optimal
solution, problems with no feasible solution, unbounded problems, tied pivot columns
and rows.
Multiple optimal solution are identified by Cj-Zj (or Zj- Cj)=0 for a non-basic variable. To
determine the alternate solution(s), enter the non-basic variable(s) with a Cj-Zj value
equal to zero.
An infeasible problem is identified in the simplex procedure when an optimal solution is
achieved and one or more of the basic variables are artificial.
The unbounded problems are identified in the simplex procedure when it is not possible
to select a pivot row- that is, when the replacement ratio is negative or undefined.
Degeneracy occurs when there is a tie for pivot row.
Duality
•The term ‘dual’ in a general sense implies two or double. Every linear programming problem can
have two forms. The original formulation of a problem is referred to as its Primal form. The other
form is referred to as its dual LP problem or in short dual form. In general, however, it is immaterial
which of the two problems called primal or dual, since the dual of the dual is primal.
•The dual involves setting up and solving an LP problem that is almost a ‘mirror image’ of an LP
problem that has been formulated. Both in its formulation and solution, the dual is the flip flop
version of the primal.
•In the context of LP, duality implies that each LP problem can be analyzed in two different ways,
but having equivalent solution. For example, consider the problem of production planning. By using
the primal LP problem, the production manager attempts to optimize resource allocation by
determining quantities for each product to be produced that will maximize profit. But through dual
LP problem approach, he attempts to achieve production plan that optimizes resource allocation so
that each product is produced at that quantity such that its marginal opportunity cost equals its
marginal return. Thus, the main focus of dual is to find for each resource its best marginal value or
shadow price. This value reflects the scarcity of resources, i.e., the maximum additional prices to be
paid to obtain one additional unit of the resources to maximize profit under the resource
constraints. If resource is not completely used, i.e., there is slack, then its marginal value is zero.
•The shadow price is also defined as the rate of change in the optimal objective
function value with the respect to the unit change in the availability of a resource.
Precisely for any constraint, we have,
Shadow Price =
•Analysis of the dual can also enable a manager to evaluate the potential impact of a
new product, and it can be used to determine the marginal values of resources (i.e.
constraints). Relative to a product, a manager would want to know what impact adding
a new product would have on the solution quantities and the profit; relative to
resources, a manager can refer to a dual solution to determine how much profit one
unit of each resource equivalent to. Whereas the primal gives solution results in terms
of the amount of profit gained from producing products, the dual provides information
on the value of the constrained resources in achieving that profit.
Formulating the Dual
There are two important forms of primal and dual problems, namely the symmetrical ( or canonical) and
the standard form.
Symmetrical form
Subject to
x1,x2... xn ≥0
Subject to
y1,y2... ym ≥0
The following rules which guide the formulation of the dual problem will give you the summary of the
general relationship between primal and dual LP problems.
1. If the primal’ objective is to minimize, the dual’s will be to maximize; and the vice versa
2. The coefficient’s of the primal’s objective function become the RHS values for the dual’s
constraints.
3. The primal’s RHS values become the coefficients of the dual’s objective function.
4. The coefficients of the first “row” of the primal’s constraints become the coefficients of the first
“column” of the dual’s constraint …..
5. The ≤ constraints become ≥ and the vice versa.
Consider this Primal problem:
Subject to:
1y1+ 4y2< 40
2y1+ 4y2< 44
3y1+ 4y2< 48
y1, y2> 0
From this the original objective was to minimize, whereas the objective of the dual is to maximize. In
addition, the coefficients of the primal’s objective function become the right-hand side values for the
dual’s constraints, whereas the primal’s right-hand side values become the coefficients of the dual’s
objective function.
Note that the primal has three decision variables and two constraints; whereas the dual has two decision
variables and three constraints. The constraint coefficients of the primal are constraint coefficients of the
dual, except that the coefficients of the first “row” of the primal become the coefficients of the first
“column” of the dual, and the coefficients of the second “row” of the primal become the coefficients of
the second “column” of the dual. When the primal problem is a maximization problem with all <
constraints, the dual is a minimization problem with all > constraints.
Formulating the Dual when the Primal has Mixed Constraints
In order to transform a primal problem into its dual, it is easier if all constraints in a
maximization problem are of the < variety, and in a minimization problem, every constraint is of
the > variety.
To change the direction of a constraint, multiply both sides of the constraints by -1. For
example,
-1(2x1+ 3x2> 18) is -2x1-3x2< -18
If a constraint is an equality, it must be replaced with two constraints, one with a < sign and the
other with a > sign. For instance,
4x1+ 5x2= 20 will be replaced by
4x1+ 5x2< 20
4x1+ 5x2> 20
Then one of these must be multiplied by -1, depending on whether the primal is maximization
or a minimization problem.
Example:
Subject to
C1 3x1+ 5x2≤ 4
C2 4x1+ 2x2≥16
C3 6x1+6x2= 30
x1,x2≥ 0
Solution
Since the problem is a max problem, put all the constraints in to the ≤ form. Subsequently, C 2and C3 will
be first adjusted in to ≤ constraints.
C3 is equality, and must be restated as two separate constraints. Thus, it becomes: 6x1+6x2≤ 30
and 6x1+6x2≥30. Then the second of these must be multiplied by -1.-1(6x1+6x2≥30) becomes -
6x1-6x2≤ -30
After making the above adjustments, rewrite the LP model again.
Maximize z = 50x1+ 80x2
Subject to:
C1 3x1+ 5x2≤ 45
C3 6x1+6x2≤ 30
C4 -6x1-6x2≤-30
x1, x2 ≥ 0
Subject to
Cross -referencing the values in the primal and dual final simplex tableaus is shown as follows.
Slack variables s1, s2, s3, ……. y1, y2, y3, ……..
variable rows