Or Chapter 2
Or Chapter 2
2. LINEAR PROGRAMMING:
INTRODUCTION
In 1947, George Danzig developed the use of algebra for determining solutions to problems that involved the
optimal allocation of scarce resources. In spite of numerous potential applications in business, response to this new
technique was low due to substantial computational burden, which is now removed with subsequent advances in
computer technology and related software during the last three decades.
The term linear implies that all the mathematical relations used in the problem are linear or straight-line relations,
while the term programming refers to the method of determining a particular program or plan of action, i.e., the use
of algorithms that is a well defined sequence of steps that will lead to an optimal solution. Taken as a whole, 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 technique of linear programming is applicable to problems in which the total effectiveness can be expressed as
linear function of individual allocations and the limitations on resources give rise to linear equation or inequalities
of the individual allocations.
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. Model
building is an art of practice.
DE F INITION _ A linear programming problem (LP) is an optimization problem for which we
do the following:
1 We attempt to maximize (or minimize) a linear function of the decision variables.
The function that is to be maximized or minimized is called the objective
function.
2 The values of the decision variables must satisfy a set of constraints. Each constraint
must be a linear equation or linear inequality.
3 A sign restriction is associated with each variable. For any variable xi, the sign
restriction specifies that xi must be either nonnegative (xi _ 0) or unrestricted in
sign (urs). _
1
Decision variables
They represent unknown quantities to be solved for. The decision maker can control the value of the objective,
which is achieved through choices in the levels of decision variables. For example, how much of each product
should be produced in order to obtain the greatest profit?
Constraints
However, the ability of a decision maker to select values of the decision variables in an LP problem is subject
to certain restrictions or limits coming from a variety of sources. The restrictions may reflect availabilities of
resources (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. In LP model, the
restrictions are referred to as constraints. 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.
Parameters
The objective function and the constraints consist of symbols that represent the decision variables (e.g., X 1, X2,
etc.) and numerical values called parameters. The parameters are fixed values that specify the impact that one
unit of each decision variable will have on the objective and on any constraint it pertains to as well as the
numerical value of each constraint.
The following simple example illustrates the components of LP models:
2
2.1.2. ASSUMPTIONS OF LP MODELS
Linearity (proportionality)
The linearity requirement is that each decision variable has a linear impact on the objective function and in each
constraint in which it appears. In terms of a mathematical model, 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., x 1x2) 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. However, if the problem concerns, for example, the optimal number of houses to construct, 3.5 do
not appear to be acceptable. Instead, that type of problem would seem to require strictly integer solutions. In such
cases, integer-programming methods should be used. It should be noted, however, that some obvious integer type
situations could be handled under the assumption of divisibility. For instance, 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. In practice, production times and other
parameters may not be truly constant. Therefore, the model builder must make an assessment as to the degree to
which the certainty requirement is met. Large departures almost surely will have a significant effect on the model.
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. For example, the total profit
earned from the sale of two products A and B must be equal to the sum of the profits earned separately from A and
B. Similarly, the amount of a resource consumed for producing A and B must be equal to the sum of resources used
for A and B respectively.
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.
2.1.3. Advantages of Linear Programming
Following are certain advantages of linear programming.
Linear programming helps in attaining the optimum use of scarce productive resources. It also indicates
how a decision maker can employ productive resources effectively by selecting and allocating these
resources.
LP techniques improve quality of decisions. The decision making approach of the user of this technique
becomes more objective and less subjective.
Highlighting of bottlenecks in the production process is one of the most advantages of this technique. For
example, when a bottleneck occurs, some machines can not meet demand while others remain idle for
some of the time.
LP also helps in re-evaluation of a basic plan for changing conditions. If conditions change when the plan
is carried out, they can be determined so as to adjust the remainder of the plan for best results.
3
While solving an LP model, there is no guarantee that we will get integer valued solutions. For example, in
finding out how many men and machines would be required to perform a particular job, a non-integer
valued solution will be meaningless. Rounding off the solution to the nearest integer will not yield an
optimal solution.
An LP model does not take in to consideration the effect of time and uncertainty. Thus, the LP model
should be defined in such a way that any change due to internal as well as external factors can be
incorporated.
It deals with only with a single objective, whereas in real-life situations we may come across conflicting
multi-objective problems.
Parameters appearing in the model are assumed to be constant but, in real life situation they are frequently
neither known nor constant.
2.1.5. FORMULATING LP MODELS
Just as it is to define a problem, careful formulation of the model that will be used to solve the problem is
important. Linear programming algorithms (solution techniques) are widely used and understood and computer
packages are readily available for solving LP problems. Consequently, obtaining solutions is not the real issue,
what is very important to note is failure to check that all constraints have been accounted for and have been
correctly formulated results in ill-structuring of the model that can easily lead to poor decisions.
In many cases, the decision variables are obvious; in others it might require brief discussion with the appropriate
manager. However, identifying the constraints and determining appropriate values for the parameters can require
considerable time and effort. Potential sources of information include historical records, interviews with managers
and staff, and data collection. Validating the model will involve a critical review of the output, perhaps under a
variety of inputs, in order to decide if the results are reasonable.
Product Mix
Organizations often produce similar services that use the same resources. For example, labor, material cost, etc.
because of limited resources available during any time period a decision must be made concerning how much of
each product to produce or make available. Linear programming answers what mix of output (or service) will
maximize profit given the availability of scarce resources
Diet problem
It usually involves the mixing of raw materials or other ingredients to obtain an end product that has certain
characteristics. For example, what mix of inputs will achieve the desired results in the output for the least cost?
Other applications that fall into this category include mixing feed for livestock, mixing pet foods, mixing building
materials (concrete, mortar, paint), and so on.
4
Blending problems
They are very similar to diet problems. Strictly speaking, however, blending problems have additional requirement,
i.e. to achieve a mix that have specific consistency. For example, how many quarts of the different juices each with
different sugar content proportion must be mixed together to achieve one gallon that has a sugar content of 17
percent?
Portfolio selection
These problems generally involve allocating a fixed dollar amount among a variety of investments, such as bonds,
sockets, real states, etc. The goal usually is to maximize income or total return. The problems take on an added
dimension when certain other requirements are specified (for example, no more than 40 percent of the portfolio can
be invested in bonds).
Dear learner, the section below presents some examples that demonstrate how a linear programming model is
formulated. Although these examples are simplistic, they are realistic and represent the type of problem to which
linear programming can be applied. By carefully studying each of these examples, the learner can become familiar
with the process of formulating linear programming models.
Product Mix
Example 1 ABC private limited company is engaged in the production of power and traction transformers. Both of
these categories of transformers pass through three basic processes: core preparation, core to coil assembly, and
vapor phase drying. A power transformer yields a contribution of Birr 50,000 and traction transformer contributes
Birr 10,000. The time required in the production of these two products in terms of hours for each of the processes is
as follows.
If the capacities available are 1000, 1500, and 750 machine hours in each processes
respectively, formulate the problem as LP?
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.
LetX1 = the no of power transformers to be produced.
X2= the no of traction transformer to be produced
Step2. 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
5
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 Machine hour constraint
45X1 + 10X2 < 750 hrs- Vapor Phase Drying
X 1, X 2 > 0
Step 5. Building and validating the model
Zmax = 50,000X1+ 10,000X2
Subject to:
75X1 + 15X2 < 1000 hrs
160X1 + 30X2 < 1500 hrs
45X1 + 10X2 < 750 hrs
X1, X2 > 0
Investment Application
Example2. An individual investor has Birr 70,000 to divide among several investments. The alternative
investments are municipal bonds with an 8.5% return, certificates of deposits with a 10% return, Treasury bill
with a 6.5% return, and income bonds with a 13% return. The amount of time until maturity is the same for
each alternative. However, each investment alternative has a different perceived risk to the investor; thus it is
advisable to diversify. The investor wants to know how much to invest in each alternative in order to maximize
the return. The following guidelines have been established for diversifying the investment and lessening the
risk perceived by the investor.
Solution
Decision variables
Four decision variables represent the monetary amount invested in each investment alternative.
Let X1, X2, X3 and X4 represent investment on municipal bonds, certificates of deposits, Treasury bill, and income
bonds respectively.
Objective function
The problem is maximization because from the word problem we know that the objective of the investor is to
maximization return from the investment in the four alternatives.
Therefore, the objective function is expressed as:
Zmax = 0.085 X1+ 0.1X2+ 0.065X3+0.13X4
Where,
Z = total return from all investment
0.085 X1=return from the investment in municipal bonds.
0. 100 X2=return from the investment in certificates in deposit
6
0.065 X3=return from the investment in treasury bills
0.130 X4=return from the investment in income bonds
Model Constraints
In this problem the constraints are the guide lines established for diversifying the total investment. Each
guideline is transformed in to mathematical constraint separately.
This problem contains all three types of constraints possible in LP problems: ¿ , ¿ and =. As this problem
demonstrates there is no restriction on mixing these types of constraints.
X1 + X2 + X3 + X4 = 70,000,
X1+ X2+ X3+X4¿ 0
Marketing Application
2. 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 news
papers 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.
Exposure
7
Let X1 = number of television commercials
X2 = number of radio commercials
X3 = number of news paper 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 news paper 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 news paper ads are limited
to 7.
X1¿ 4-television commercials
X2 ¿ 10-radio commercials
X3¿ 7 news paper ads
Policy constraint
The total number of commercials and ads can not 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
X3 ¿ 7
X1 + X2 + X3 ¿ 15
X1, X2 , X3 ¿ 0
Chemical mixture
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.
The cost per pound of mixture is Birr4, of zinc Birr 8 and of potassium Birr 9.
Required: Formulate LPM for the problem
Solution
8
Decision variables
The model of this problem consists of three decision variables representing the amount of each ingredient in the
mixture.
X1 = number of lb of mercury in a batch
X2 = number of lb of zinc in a batch
X3 = number of lb of potassium in a batch
Objective function
Zmin = 4x1 + 8x2 + 9x3
Constraints
X1¿ 200 lb… specification 1
X2¿ 300 lb… specification 2
X3¿ 100 lb… specification 3
Finally, the sum of all ingredients must equal 1000 pounds.
x1 + x2 + x3 = 1000 lb
The complete LPM of the problem is:
Zmin = 4x1 + 8x2 + 9x3
Subject to:
X1¿ 200 lb
X2¿ 300 lb
X3¿ 100 lb
x1 + x2 + x3 = 1000 lb
x1, x2 , x3¿ 0
2. An electronic company produces three types of parts for automatic machines. It purchases casting of the parts
from the local foundry and then finishes parts on drilling, shaping and polishing machines.
The selling prices of parts A, B, and C respectively are Birr8, 10, 14. All parts made can be sold. Casting for parts
A, B and C respectively costs Birr 5, 6 and 10. The shop possesses only one of each type of machine. Costs per
hour to run each of the three machines are Birr 20 for drilling, 30 for shaping, and 30 for polishing. The capacities
(parts per hour) for each part on each machine are shown in the following table:
Drilling 25 40 25
Shaping 25 20 20
Polishing 40 30 40
The management of the shop wants to know how many parts of each type it should produce per hour in order to
maximize profit for an hour’s run. Formulate this problem as an LP model so as to maximize total profit to the
company.
2.3. Solving LP Model
Following the formulation of a mathematical model, the next stage in the application of LP to decision-making
problem is to find the solution of the model. An optimal, as well as feasible solution to an LP problem is obtained
by choosing from several values of decision variables x 1,x2…xn , the one set of values that satisfy the given set of
constraints simultaneously and also provide the optimal ( maximum or minimum) values of the given objective
function. The most common solution approaches are to solve graphically and algebraically the set of mathematical
relationships that form the model, thus determining the values of decision variables.
9
better understanding of the solution. Moreover, graphical methods provide a visual portrayal of many important
concepts.
In this method, the two decision variables are considered as ordered pairs (X 1, X2), which represent a point in a
plane, i.e., X1 is represented on X-axis and X2 on Y-axis.
Graphical method has the following advantages:
It is simple
It is easy to understand, and
It saves time.
Important Definitions
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 x j (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 x j (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:
Degenerate A basic feasible solution is called degenerate if value of at least one basic variable is zero.
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 OF of the LP problem indefinitely is
called an unbounded solution.
Example
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
Profit per unit $60 $50
Assembly time per unit 4 hrs 10 hrs
Inspection time per unit 2 hrs 1 hrs
Storage space per unit 3 cubic feet 3 cubic feet
Availability of company resources:
Resources Amount available
Assembly time 100 hrs
Inspection time 22 hrs
Storage space 39 cubic feet
10
X 1, X 2 > 0
Graphical solution method involves the following steps.
Once the constraints are plotted and feasible region is determined, we use either of the two graphic methods of
Graphic approach to find a solution for LP model consisting of only two decision variables:
I) The extreme point enumeration method
ii) The objective function line approach
11
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. Then we determine which two constraints intersect there
(in our case inspection and storage constraints) and solve the equations simultaneously to obtain the mix of the two
decision variables that gives the value of the objective function at the optimum. Simultaneously solving inspection
and storage equations, we find the quantity of type 1 microcomputer to be produced (X 1) = 9 and that of type 2 (X 2)
= 4 giving the maximum profit of 60(9) + 50(4) = Birr740
2.3.1.2. 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.
Using this method for our example, simultaneously solving for corner points a, b, c, and d, we find corresponding
profit values of 500, 700, 740, and 660, respectively giving us the same solution as the above one at C. Therefore,
the optimal solution is x1= 9 units and x2 = 4 units while the optimal value of objective function is 740.
Interpretation:
For a firm to maximize its profit (740), it should produce 9 units of the Model I microcomputer and 4 units of
model II.
Example
Zmin = 0.1x+0.07y
Subject to:
6x+2y > 18
8x+10y > 40
y>1
x,y > 0
12
Find the values of x and y which makes the objective function minimum?
Solution
Coordinates
Corner point x y Z min=0.1x+0.07y
A 0 9 0.63
C 15/4 1 0.445
SLACK VERSUS SURPLUS
Slack is the amount of a scarce resource that is unused by a given solution. Slack can potentially exist in a <
constraint. Slack variables are considered in the objective function by using a coefficient of zero for each of them.
When all the constraints are written as equalities after adding a slack variable to each of them, the linear program is
said to be in standard form.
Surplus on the other hand is the amount by which the optimal solution causes a > constraint to exceed the required
minimum amount. It can be determined in the same way that slack can, i.e., substitute the optimal values of the
decision variables into the left side of the constraint and solve. The difference between the resulting value and the
original right hand side amount is the amount of surplus. Surplus should also be accounted for in the objective
function by using coefficients of zero likewise.
2.3.1.3. Graphical Solutions for the Special Cases of LP
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
Following the above listed steps of graphical solution method, we find the following graph for the above model:
The shaded area represents the set of all feasible solutions and as can be seen from the graph, the solution is
unbounded.
13
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
For example
Max Z = 8X1+16X2
Subject to: X1 + X2 < 200 ……. C1
3X1 + 6X2 < 900 ……. C2
X2 < 125 ……. C3
X1, X2 > 0
14
In the problem above, using extreme point method and solving for values of corner points simultaneously, the
objective function assumes its maximum value of 2,400 at two corner points B (50,125) and C (100,100).
Therefore, the optimal solution is found on the line segment connecting the two corner points. One benefit of
having multiple optimal solutions is that for other (perhaps qualitative) reasons, a manager may prefer one of them
to the others, even though each would achieve the same value of the objective function. In practical terms, one of
the two corner points is usually chosen because of ease in identifying its values.
Other corner points are computed by identifying the two corner points and keeping the value of the objective
function constant, where 50 ¿ X1¿ 100 and 100 ¿ X1¿ 125. By selecting one value for one of the decision
variables from the domain, we determine the value for another decision variable keeping the objective function’s
value.
Let X1 = 80.
Then, Z = 8X1+16X2 2400 = 8(80) +16X2
16X2 = 1760
X2 = 110
2.5. Activity
1. Penile House and Furniture manufacturer produces two products: Beds and Chairs. Each unit of Bed requires 3
hrs in molding unit, 4hrs in painting unit, and 1 hr in finishing. On the other hand, each unit of Chair requires 3
hrs in molding unit, 2 hrs in the paint shop and 2 hours in finishing. Each week, there are 210 hrs available in
molding, 200hrs in painting, and 120 hrs in finishing unit. The demand for Beds can not exceed 40 units per
week. Each unit of Bed contributes Birr 20 to profit, while each unit of chair contributes Birr 30. Determine the
number of units of each product per week to maximize the profit? (Use Graphic Method to solve the given LP
problem).
3. Personal Mini Warehouses is planning to expand its successful Orlando business into Tampa. In doing so, the
company must determine how many storage rooms of each size to build. Its objective and constrains follow:
Maximize monthly earnings= 50X1 +20X2
Subject to:
2X1+4X2<400 (Advertising budget available)
100X1 +50X2< 8,000(Square footage required)
X1 < 60(Rental limit expected)
X1 X2>0
Where
X1=Number of large spaces developed
15
X2=Number of large spaces developed
(Use graphical method)
3. The owner of a telephone subscription service specializes in taking order for two magazines x and y. She has
formulated the following model that describes the unit contribution to profit and the use of scarce resources
involved.
Zmax=0.6x+0.9y
Subject to:
6x+12y< 480 min … I
10x+6y< 480min … II
x > 20 … III
X, y >0
4. A firm makes two products X and Y, and has a total production capacity of 9 tons per day, x and y requiring the
same production capacity. The firm has a permanent contract to supply at least two tones of x and at least three
tones of y per day to another company. Each tone of x requires 20 machine hours of production time and each tone
of y requires 50 machine hours of production time. The daily maximum possible number of machine hours is 360.
The entire firm’s output can be sold and the cost per ton is 100, 120 birr respectively, and the selling price per ton
of x and y is 180 and 240 Birr respectively. It is required to determine the production schedule for maximum profit
using graphic approach. What is the maximum profit?
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. Incase of the
graphical approach, optimal solution occurs at the extreme points where the constraints intersect. Solutions where
constraints intersect are called basic solutions, and those satisfying all of the constraints together with non-
negativity constraints are called basic feasible solutions.
Constraints are generally expressed using inequalities either in ‘less than’ or ‘greater than’ or in mixed form. Thus,
constraints are not in standard form, meaning they should be converted into equalities. To convert the inequality
constraint into equality, we introduce slack or surplus variables. In economic terminology, slack variables represent
unused capacity and surplus variables represent excess amount. The contribution (cost or profit) associated with the
slack and surplus variables is zero. An inequality of the ‘less than or equal to’ type is transformed into equality by
introducing a non-negative slack variable, as follows: -
Example
Non Standard form Standard form
X1+2X2 <= 6 X1+2X2+S1= 6
, where X1 and X2 are decision variables and S1 is a slack variable, added to the
16
smaller side of the inequality.
On the other hand, an inequality with ‘greater than or equal to’ type is changed into equality by subtracting surplus
variable as follows: -
Example
Non Standard form Standard form
X1+2X2 <=6 X1+2X2+S1=6
, where X1 & X2 are decision variables and S1 is a slack variable, added to the
smaller side of the inequality.
As stated above, since both the slack and surplus variables are insignificant with no contribution in the objective
function, they are represented with coefficient of zero in the objective function.
To find a unique solution, the number of variables should not exceed the number of equations. When the number of
variables is more than the number of equations, the number of solutions is unlimited. So as to get a unique solution,
we have to set at least (n-m) variables to zero, where n is the number of variables and m is the number of equalities.
Those variables that are set to zero are called non basic variables indicating they are not in the solution. The
variables that are in solution are called basic variable.
.
To demonstrate the simplex method, we will use the microcomputer problem with the following objective function
and constraints.
The Microcomputer Problem, which was discussed in graphic approach, can be standardized as:
Max. Z = 60X1+50X2+0S1+0S2+0S3
Subject to 4X1+10X2+S1 = 100
2X1+X2+S2 = 22
3X1+3X2+S3 = 39
, where X1 & X2 are decision variables and S1, S2 & S3 are slack variables.
Here, the number of variables (5) is greater than the number of equations (3). Therefore, the decision variables are
set to zero and we have
X1 = 0, X2 = 0, S1 = 100, S2 = 22, and S3 = 39.
This solution will serve as an initial feasible solution. An initial feasible solution is a first solution used to generate
other basic feasible solutions. The initial basic feasible solution is obtained by setting all the decision variables to
zero. As a result, the initial basic feasible solution is entirely composed of the slack variables. X 1 & X2 are non
basic variables since they are not in solution. S1, S2 & S3 are basic variables since they are in solution.
A tableau is a system of displaying the basic feasible solution, the constraints of the standard linear
programming problem as well as the objective function in a tabular form. A tableau is useful in summarizing the
result of each iteration, i.e. the process of moving from one solution/corner to another solution/corner in order to
select the optimal solution.
17
a2lX1+al22X2+... + a2nXn+S2 = b2
amlXl + am2 X2 +... + amNxn + Sm = bm
, where X1, X2... Xn and S1, S2 ... Sm are non-negative.
Note that the slack variables have been assigned zero coefficients in the objective function. The reason is that these
variables typically contribute nothing to the value of the objective function.
Step 3. Design the initial feasible solution. An initial basic feasible solution is obtained by setting
the decision variables to zero.
X1= X2 = ... = Xn = 0. Thus, we get S1 = b1, S2 = b2 ... Sm = bm.
Step 4. Set up the initial simplex tableau. For computational efficiency and simplicity, the initial basic feasible
solution, the constraints of the standard LPP as well as the objective function can be displayed in a
tabular form, called the simplex tableau as shown below:
18
the initial simplex tableau. The other Z j entries represent the decrease in the value of objective function that
would result if one of the variables not included in the solution were brought into the solution. The Z j entry
under the “Quantity Column" gives the current value of the objective function.
The last row labeled "Cj-Zj", called the index row or net evaluation row, is used to determine whether or
not the current solution is optimal or not. The calculation of C j-Zj row simply involves subtracting each Z j
value from the corresponding Cj value for that column, which is written at the top of that column. We
observe that Cj -Zj, values are
meaningful for the non basic variables only. This is because for a basic variable, Z j= 1 x
Cj = Cj so that Cj-Zj=Cj-Cj= 0.
Note: The entries in the Cj - Zj, row represent the net contribution to the objective function that results by
introducing one unit of each of the respective column variables. A plus value indicates that a greater
contribution can be made by bringing the variable for that column into the solution. A negative value
indicates the amount by which contribution would decrease if one unit of the variable for that column
were brought into the solution. Index row elements are also known as the shadow prices (or accounting
prices)
Step 5. We test if the current solution is optimum or not. If all the elements or entries in the Cj- Zj row (i.e., index
row) are negative or zero, then the current solution is optimum. If there exists some positive number,
the current solution can be further improved by removing one basic variable from the basis and
replacing it by some non-basic one. So start trying to improve the current solution in line with the
following steps.
Step 6. Further, iterate towards an optimum solution. To improve the current feasible solution, we replace one
current basic variable (called the departing variable) by a new non-basic variable (called the entering
variable).
We now determine the variable to enter into the solution mix, the entering variable. One way of doing this
is by identifying the column with the largest positive value in the C j - Zj row of the simplex table. The
column with the largest positive entry in the C j - Zj row is called the key or pivot column. The non-basic
variable at the top of the key column is the entering variable that will replace a basic variable.
Next, we determine the departing variable to be replaced in the basis solution. This is accomplished by
dividing each number in the quantity column by the corresponding number in the key column selected in
identifying the entering variable. We compute the ratio b1/a1 j, b2/a2j... bm/amn. This is called replacement
ratio.
19
Step 8. If any of the numbers in C j - Zj row are positive, repeat the steps (6-7) again until an optimum solution has
been obtained.
Note: Rules for Ties. In choosing a key column and a key row, whenever there is a tie between two numbers, the
following rules may be followed:
The column farthest to the left may be selected if there is a tie between two numbers in the index row.
The nearest ratio to the top may be selected whenever there is a tie between two replacement ratios in the
ratio column.
To be noted first is that the values of each basic variable (variables that are in solution) is composed of a single 1
and the rest 0’s. This is called a unit vector. Basic variables will have a unit vector. Moreover, ‘1’ will appear in the
same row that the variable appears in. The unit vector concept will help us in developing subsequent tableaus when
we want to change the list of variables that are in solution.
The Zj row in the quantity column indicates that the value of the objective function is 0.
The values in the Cj-Zj row indicate the net contribution of the variables if one unit of each variable is added into
that solution. For example, the 60 in column X 1 indicates that bringing one unit of X1 would increase the value of
the objective function by $60. The same is true for the X 2 column, i.e. bringing one unit of X 2 would increase the
value of the objective function by $50. On the other hand, since the slack variables are at their maximum, their
values in the Cj-Zj row are all 0. According to what has been said before, we have the following rule in order to
identify an optimal solution.
A simplex solution in a maximization problem is optimal if the C j-Zj row consists of entirely zeros and negative
numbers, i.e. there are no positive values in the row.
So for our case in the initial tableau, we have two positive values under the non-basic variables, which indicate that
further improvement of the solution is possible. As a result, we go for the optimal solution by developing the
second simplex tableau.
20
Developing the Second Simplex Tableau
In the initial feasible solution, the slack variables form entirely the basic variables and the decision variables
entirely form the non-basic variables. Since further improvement is possible, one of the decision variables will be
brought into the solution and one of the current basic variables will be leaving the solution. ‘Which non-basic
variable should be brought into the solution and which basic variable should leave the solution?’ is a major concern
here.
In answering the first question, the non-basic variable that should enter the solution should be the one with the
highest positive value in the Cj-Zj row since bringing that non-basic variable into the solution would make the
highest contribution to the solution (objective function) and result in the largest profit potential. As a result, the
variable with the highest value in the C j-Zj row of the initial simplex tableau is the X 1 column with a value 60.
Therefore, X1 should enter the basis or the solution mix. The X 1 column is now called the pivot column. The
numbers in this column (4 2 3) indicate the amount of the basic variables needed to get one unit of X 1. For
example, the number 4 indicates that 4 units of the first slack are needed to obtain one unit of X 1.
Since X1 has the highest profit potential, we need to make as much X 1 units as possible. The amount of X 1 that can
be made depends on the values in the pivot column and the amount of slack available shown under the quantity
column. By dividing the values in the pivot column by their respective values in the quantity column, we can
identify the variable that is most limiting.
The values obtained by dividing will help us in determining the variable that should leave the solution.
Cj 60 50 0 0 0 Quantity
Basic V. X1 X2 S1 S2 S3
S1 0 4 10 1 0 0 100 100/4 = 25
S2 0 2 1 0 1 0 22 22/2 = 11
S3 0 3 3 0 0 1 39 39/3 = 13
Zj 0 0 0 0 0 0
Cj-Zj 60 50 0 0 0
Pivot Column
Pivot Row Pivot Element
In interpreting the ratios obtained by the division, I only the constraint was the first one, we could make 25 units of
X1. But there are also other constraints. Therefore, the one with the smallest non-negative ratio is the most
restrictive since it determines the amount of X 1. In this particular case, there is only enough of the second constraint
to make 11 units of X 1. In making the 11 units of X 1, the second resource (S 2) will be down to zero indicating that
S2 will leave out the solution mix. The row of the leaving variable is called the pivot row. The intersection of the
pivot row and the pivot column is called the pivot element. As a rule,
The leaving variable is the one with the smallest non-negative ratio.
If a zero is obtained in the results of division, none of the corresponding variable is needed to obtain one unit of the
entering variable. If a negative value is obtained in the division, bringing the entering variable into the solution
would increase the amount of the basic variable. These values will not limit the amount of the entering variable.
Therefore, there is no need to divide the quantity column by zero or negative.
Since we have determined the leaving and the entering variables and since the initial feasible solution can be
improved further, we need to develop the second tableau in order to find the optimal solution. In developing the
second tableau, we should compute for revised values of the constraint equations, the Z j row and the Cj-Zj row and
remember that the variables in solution will have a unit vector, with a value of 1 in the intersection of the column
and the row of the basis, i.e. the pivot element.
21
To obtain a unit vector in the basis column, we perform elementary row operations resulting in new row values by
either multiplying/dividing all the elements in a row by a constant or adding/subtracting the multiple of a row to or
from another row.
In computing for the new row values from our initial simplex tableau, we first multiply the second constraint by ½
obtaining the values as follows:
1X1+1/2X2+0S1+1/2S2+0S3 = 11, which results in making the pivot element 1.wfollowing results:
0X1+8X2+1S1+2S2+0S3 = 56.
Then, we multiply the new row values in the pivot row by 3 and subtract it from the third constraint resulting as
follows:
0X1+3/2X2+0S1-3/2S2+1S3 = 6.
Having these new row values, we develop the second simplex tableau as shown below.
Second Simplex Tableau
Cj 60 50 0 0 0 Quantity
Basic V. X1 X2 S1 S2 S3
S1 0 0 8 1 -2 0 56
X2 60 1 ½ 0 ½ 0 11
S3 0 0 3/2 0 -3/2 1 6
Zj 60 30 0 30 0 660
Cj-Zj 0 20 0 -30 0
Cj 60 50 0 0 0 Quantity
Basic V. X1 X2 S1 S2 S3
S1 0 0 8 1 -2 0 56 56/8 = 7
11/(1/2) = 22
X2 60 1 ½ 0 1/2 0 11
6/(3/2) = 4
S2 0 0 3/2 0 -3/2 1 6
Zj 60 30 0 30 0 660
22
Cj-Zj 0 20 0 -30 0
Pivot Row
Pivot Column Pivot Element
After identifying the entering and the leaving variables, we perform elementary row operations as follows. To
obtain a unit vector with 1 in the pivot element, we multiply the pivot row by 2/3 resulting as follows:
0X1+1X2+0S1+-1S2+2/3S3 = 4
Then, multiply the above new row values by 8 and subtract it from the first constraint (row) resulting as follows:
0X1+0X2+1S1+6S2+-16/3S3 = 24.
For row 2, first multiply the new row values in the pivot row by ½ and subtract it from the second row resulting as
follows:
1X1+0X2+0S1+1S2+-1/3S3 = 9.
And the third tableau looks like the following.
Activity
1. The crumb and Custard bakery makes cakes and pies. The main ingredients are flour and sugar. The following
linear programming model has been developed for determining the number of cakes and pies (x 1 and x2 to produce
each day to maximize profit.
Max Z=x1 + 5x2
Subject to:
8x1+10x2< 25(flour, lb)
2x1+4x2< 16(sugar, lb)
x1< 5(demand for cakes)
x1,x2 >0
Solve this model using graphical and simplex method and compare the answers.
2. A transistor radio Co., manufactures models A, B, and C, which have profit contribution of Birr 16, Birr 30 and
Birr 50 respectively. The weekly minimum production requirements are 20 for model A, 120 for model B, and
60 for model C. Each type of radio requires a certain amount of time for the manufacturing of component parts,
23
assembly and packaging. Specifically a dozen unit of model A requires 3 hrs for manufacturing of component
parts, 4b hrs for assembly and 1 hr for packaging. The corresponding figure for a dozen unit of model B is 3.5, 5
and 1.5 and for a dozen unit of C are 5, 8, and 3 hrs. During the forth coming week, the company has
availability of 120 hrs of manufacturing, 160 hrs of assembly, and 45 hrs of packaging time.
Required:
a) Formulate the scheduling problem as LPM.
b) Solve the problem using simplex method
3. Farmer Jane owns 45 acres of land. She is going to plant each with wheat or corn. Each acre planted with wheat
yields $200 profit; each with corn yields $300 profit. The labor and fertilizer used for each acre are given in
Table 1. One hundred workers and 120 tons of fertilizer are available. Use linear programming to determine
how Jane can maximize profits from her land.
TAB L E 1
Wheat Corn
Labor 3 workers 2
Fertilizer 2 tons 4
24