Professional Documents
Culture Documents
Chapter Two or Final Teacher Note
Chapter Two or Final Teacher Note
The programming aspect of LP refers to the use of algorithms. An algorithm is a well defined sequence of
steps that will lead to an optimal solution. The term linear refers to straight line relationships. LP models
are based on linear relationships. Taken as a whole, the term linear programming refers to a family of
mathematical techniques that can be used to find solutions to constrained optimizations problems.
Linear programming is a problem solving approach that has been developed to help managers in making
decisions. The following decisions described some typical applications of LP:
a) A manufacturer wants to develop a production schedule and an inventory policy that will satisfy sales
demand in future periods. Ideally, the schedule and policy will enable the company to satisfy demand
and at the same time minimize the total production and inventory costs. The objective here is to
minimize cost subject to demand and production capacity constraints.
b) A financial analyst must select an investment portfolio from a variety of stock and bond investment
alternatives. The analyst would like to establish the portfolio that maximize the return on investment
subject to total amount of investment funds available and the maximum amounts that can be invested
in each stock and bond.
c) A marketing manager wants to determine how best to allocate a fixed advertising budget among
alternative advertising medias such as radio, TV, newspaper, and magazine. The manager would like to
determine the media mix that maximizes the advertising effectiveness subject to a fixed advertising
budget and the availability of the various media.
a) Objective: The objective in problem solving is the criterion by which all decisions are evaluated. As
such, it provides the focus for problem solving. In linear programming models, a single, quantifiable
objective must be specified by the decision maker. For example, the objective might relate to profits, or
costs or market share, but to only one of these. Moreover, because we are dealing with optimization, the
objective will be either maximization or minimization. Hence, every LP problem will be either a
maximization problem or a minimization problem. Maximization problems often involve profits,
revenue, market share, or return on investment, where as minimization problems often involve costs,
time, or risk. Once the objective is specified, it becomes the measure of effectiveness against which
alternate solutions are judged. The optimal solution will be the one that yields the highest profit or the
one that provides the lowest cost. If a problem concerns maximizing profits, the profit per unit for each
variable either may be given or it may have to be derived by finding the difference between revenue per
unit and cost per unit for each decision variable. For instance, if the revenue is Birr 50 per unit for a
product and the cost is Birr 30 per unit, the profit per unit is Birr 20 (Birr 50-Birr 30). Note that the
units of all the coefficients in the objective function must be the same (e.g., all in Birrs, all in hours,
etc). In addition, all terms in the objective function must include a variable, and all decision variables
must be represented in the objective function.
b) Decision variables: The decision maker can control the value of the objective, which is achieved
through the choices in the level of decision variables. For example, a problem may involve maximizing
the profit obtained from the sale of three products, each with its own unit profit. If we assume that all
the output can be sold, the problem facing the decision maker is: How much of each product should be
produced to obtain the maximum profit? In terms of the LP model, the decision variables represent
unknown quantities to be solved for. The decision variables will be defined in terms of a quantity of an
amount which is usually represented by a variable and a subscript number like x 1, x2, x3... If for example,
our case is to maximize profit through the production and sell of two products, x 1 represents the quantity
of the first product and x 2 the quantity of the second product. The decision variables are the variables
whose specification describes the solution for the problem. It typically comprises the set of decisions to
be made.
c) Constraints: The ability of a decision maker to select values of the decision variables in an LP
problem is subject to certain restrictions or limitations. These restrictions are called constraints. These
can come from a variety of sources. The restriction may reflect availabilities of resources (e.g., raw
materials, labor time, machine time, work space, storage space, etc), legal or contractual requirements
(e.g., product standards, work standards, and so on ), technological requirements (e.g., tensile strength),
or they may reflect other limits based on forecasts, customer orders, company policies, and so on.
Constraints may be in terms of an upper limit, lower limit or equality. So when you formulate the
model, carefully differentiate which one is called for. If for example one constraint says “at least 100
unit of the first product must be made”, the constraint will be expressed as: x 1 100. If it were “to a
maximum of 50 units of the first product must be made”, the constraint will be: x 1 50. And had the
constraint been explained like “exactly 60 units of the first product is needed”, the constraint could have
been x1 = 60. The usual way to write constraints is by putting the variables in the left side of the
expression while a constant alone is placed on the right side. This constant is usually referred to as the
right hand side value (RHSV). Generally speaking, a constraint has four elements:
a) A right hand side (RHS) quantity that specifies the limit for that constraint. It must be a constant,
not a variable.
b) 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.
c) The decision variables to which the constraint applies.
d) The impact that one unit of each decision variable will have on the right hand side quantity of the
constraint.
d) Parameters: The objective and the constraints in the model are mathematical expressions. Each
expression consists of numerical values and symbols. The symbols represent decision variables,
whereas the numerical values are called parameters. The parameters are fixed values that specify the
impact that one unit of each decision variables will have on the objective function and on any constraint
it pertains to as well.
Assumptions of LP Model
The major assumptions of LP model are linearity, divisibility, certainty, and non-negativity.
i Linearity: The linearity requirement is that each decision variable has a linear impact on the objective
function and in each constraint in which it appears. This means, for example, that if the profit of x 1 is
Birr 4 per unit, that same figure holds regardless of the quantity of x 1: It is true over the entire range of
possible values of x1. The same applies to each of the constraints: It is required that the same coefficient
(for example, 2 kg per unit) applies over the entire range of possible values of the decision variable. In
terms of a mathematical model, a function is linear when the variables included are all to the power 1
(that is not squared, cubed, square root, etc) and no products (e.g., x 1x2) appear. Thus, 2x1 + 3x2=40 is
linear constraint: where as the following constraints are not linear.
2x12 + 3x2=40 (x1 is squared)
2x1 + x1x2=40 (the second term is a product of variables)
ii Divisibility: The divisibility requirement pertains to potential values of decision variables. It is assumed
that non-integer values for decision variables are acceptable. For example, an optimal solution to a
decision variable can take values like 3.5, 1.2, 2.5, etc… regardless of the nature of the item represented
by the decision variable. For instance, suppose 3.5 is determined to be the optimal number of television
sets to be produced per hour. This would results in 7 sets every two hours, which would be acceptable.
iii Certainty: The certainty requirement involves two aspects in LP models. One aspect relates to the
model parameters (i.e., the numerical values). It is assumed that these values are known and constant.
For instance, in the above example 2x 1 appears in a labor constraint with hours as the unit of measure, it
is assumed that each unit of x 1 will require exactly 2 hours of labor. If the right side of the constraint is
300 labor hours, it is assumed that this value will remain 300. The second aspect is that all relevant
constraints are identified and included in the model.
iv Non-negativity: The non-negativity requirement is 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. The non-negativity constraints typically apply in an LP model, whether they are explicitly
stated or not.
Formulating LP Models
Once a problem has been defined, the attention of the analyst shifts to formulating a model. Just as it is
important to carefully define a problem, it is important to carefully formulate the model that will be
used to solve the problem.
Formulation of LP models is the process of translating the verbal statement of a problem into a
mathematical statement. Formulation of the model is the same as assembling the components of the LP
models that are mentioned above. Each component will be depicted as a mathematical expression in the
linear programming model. It is worth acquiring this knowledge since the model is an abstraction of the
real problem at hand. That is, if the model is ill-formulated, it will fail to represent the problem properly
and it can easily lead to poor decisions.
Formulating linear programming models involve the following steps:
Identify the decision variables.
Determine the objective functions.
Identifying the constraints.
Determining appropriate values for parameters and decide whether an upper limit, lower
limit, or equality is called for.
Use this information to build a model.
Validate the model.
In many cases, the decision variables are obvious; in others, a brief discussion with the appropriate
manager is necessary. However, identifying the constraints and then determining appropriate value for the
parameters can require considerable time and effort on the part of the analyst. Potential sources of
information include historical records, interviews with managers and staff, and data collection.
Accounting records or personnel can generally provide information about the values of parameters. Once
the information about constraints and parameters has been obtained, constructing an appropriate model
becomes the focus. 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
Example: The Microcomputer Problem
A firm that assembles computer and computer equipment is about to start production of two new
microcomputers. Each type of micro-computer will require assembly time, inspection time, and storage
space. The amount of each of these resources that can be devoted to the production of microcomputers
is limited. The manager of the firm would like to determine the quantity of each microcomputer to
produce in order to maximize the profit generated by sales of these microcomputers. In order to
develop a suitable model of the problem, the manager has met with design and manufacturing
personnel. As a result of those meetings, the manager has obtained the following information:
Type-1 Type-2
Profit per unit Birr 60 Birr 50
Assembly time per unit 4 hours 10 hours
Inspection time per unit 2 hours 1 hour
Storage space time per unit 3 cubic feet 3 cubic feet
The manager also has acquired information on the availability of company resources. These (daily)
amounts are:
Resource Amount available
Assembly time 100 hours
Inspection time 22 hours
Storage space 39 cubic feet
The manager also met with the firm’s marketing manager and learned that demand for the microcomputers
was such that whatever combination of these two types of microcomputer is produced, all of the output can
be sold.
Required: Formulate the linear programming model of this problem.
Solution:
a. First, we must define the decision variables. Based on the statement, “The manager…..would like to
determine the quantity of each microcomputer to produce” the decision variables are the quantities of
each type of computer. Thus,
x = quantity of type 1 to produce
y = quantity of type 2 to produce
b. Next, we formulate the objective function. The profit per unit of type1 is Birr 60 and the profit per
unit of type 2 is Birr 50, so the appropriate objective function is:
Maximize Z = 60x + 50y, where Z is the value of the objective function given the values of the
decision variables (x and y).
c. As for the constraints, there are three resources with limited availability: assembly time, inspection
time, and storage space. The fact that availability is limited means that these constraints will all be
constraints. The type 1 microcomputer requires 4 hours of assembly time per unit, where as the type 2
microcomputer requires 10 hours of assembly time per unit. Therefore, with a limit of 100 hours
available, the assembly constraint is 4x + 10y 100 hours
Similarly, each unit of type 1 requires 2 hours of inspection time, and each unit of type 2 requires 1
hour of inspection time. With 22 hours available, the inspection constraint is:
2x + y 22 hours
The storage constraint is determined in a similar manner. It is 3x + 3y 39
There are no other systems or individual constraints.
The non-negativity constraints are: x, y 0 (or x 0, y 0).
In summary, the mathematical model of the microcomputer problem is:
Maximize profit: 60x + 50y
Subject to:
4x + 10y 100 hours (Assembly time constraint)
2x + y 22 hours (Inspection time constraint)
3x + 3y 39 cubic feet( Storage space constraint)
x, y 0
Linear Programming Applications
Product mix
Organizations often produce similar products or offer similar services that use the same resources (for
example, labor, time, materials, etc). Because of the limits in the amounts of these resources that are
available during any time period, a decision must be made concerning how much of each product or
service to produce or make available during the time period that will be consistent with the goal of the
organization. The basic question that can be answered using linear programming is: What mix of output
(or service) will maximize profit (revenue, etc) given the availability of scarce resources? The
microcomputer problem described above is an example of a product mix problem.
Additional Example:
A toy manufacturer makes three versions of a toy robot. The first version requires 10 minutes each for
fabrication and packaging and 2 pounds of plastic, the second version requires 12 minutes each for
fabrication and packaging and 3 pounds of plastic, and the third version requires 15 minutes each for
fabrication and packaging and 4 pounds of plastic. There are 8 hours of fabrication and packaging
time available and 200 pounds of plastic available for the next production cycle. The unit profits are
Birr 1, Birr 5, and Birr 6 for version 1, 2 and 3 respectively. A minimum of 10 units of each must be
produced to fill backorders. Formulate an LP model that will determine the optimal production
quantities for profit maximization.
Solution
a)Identify the decision variables:
x1=number of version 1 robots
x2=number of version 2 robots
x3=number of version 3 robots
b) Identify the constraints by name:
Fabrication and packaging time
Quantity of plastic
Quantity of version 1 robots (minimum of 10)
Quantity of version 2 robots (minimum of 10)
Quantity of version 3 robots (minimum of 10)
c)Write the objective function:
Maximize profit: x1 + 5x2 + 6x3
d) Write the constraints:
Note that fabrication and packaging times are given in minutes per unit, but that available time is given
in hours. It is necessary that both sides of a constraint have the same units. This can be accomplished by
converting 8 hours to 480 minutes.
b) The proportion allocated to the money market account should be at least double the amount in the
CD.
The annual return will be 8 percent for bonds, 9 percent for the CD, and 7 percent for the money
market account. Assume the entire amount will be invested.
Formulate the LP model for this problem assuming that the investor wants to maximize the total
annual return.
Solution
Let
x1=amount invested in bonds
x2 = amount invested in the CD
x3 = amount invested in the money market account
The annual return from each investment is the product of the rate of return and the amount of investment:
Maximize: 0.08x1 + 0.09x2 + 0.07x3
The requirement that no more than 40 percent be in bonds produces this constraint:
x1 0.4(100,000), whcih becomes x1 40,000.
The requirement that the proportion invested in the money market account be at least double the amount
in the CD leads to: x3 2x2. Then, subtracting 2x2 from both sides gives us:
x3-2x20, which can be rearranged so that x2 comes before x3: -2x2 +x3 0
Finally, the investor must recognize that the amounts invested in bonds, the CD, and the money market
account must equal Birr 100,000. This gives us:
x1 + x2 + x3=Birr 100,000
In sum , the model is:
Maximize: 0.08x1 + 0.09x2 + 0.07x3
Subject to
Amount in bonds x1 40,000
Money/CD -2x2 +x3 0
Total amount x 1 + x2 + x3 =Birr 100,000
x 1, x2, x3 0
Take about 25 minutes.
A small firm produces a variety of chemical products. In a particular production process, three raw
materials are blended (mixed together) to produce two products: a fuel additive and a solvent base.
Each tonu of fuel additive is a mixture of 0.4 ton of material 1 and 0.6 of material 3. A ton of solvent
base is a mixture of 0.5 ton of material 1, and 0.2 of material 2, and 0.3 ton of material 3. The firm’s
production is constrained by a limited availability of the three raw materials. For the current
production period, the firm has the following quantities of each raw material:
Raw Material Amount available for production
Materials 1 20 tons
Materials 2 5 tons
Materials 3 21 tons
The accounting department has determined, after deducting all relevant costs, that the firm
will make a Birr 40 for every ton of the fuel additive and Birr 30 for every ton of solvent base
products. Assuming that the firm is interested in maximizing the total profit contribution,
formulate the linear programming model.
2.2 Graphic Solutions to LP Problems
In the previous section, the basic concepts of LP such as definitions of LP, component and assumptions of
LP models, formulation of LP model and application of LP have been discussed. Accordingly, a well
formulated LP model should be solved and the graphic method is one of the solution procedures used in
solving linear programming models. Thus, this section presents the graphic solution approach to LP
problems.
Introduction
Graphical linear programming is a relatively straight forward method for determining the optimal
solution to certain LP problems. In practical terms, this method can be used only to solve problems that
involve two decision variables. This is because we cannot plot an equation having more than two
variables in a two dimensional coordinate plane.
In order to demonstrate the graphical method, the microcomputer problem that was formulated in the
preceding section will be solved. The model is
Maximize profit: 60x + 50y
Subject to:
Assembly time constraint: 4x + 10y 100 hours
Inspection timer constraint: 2x + y 22 hours
Storage space constraint: 3x + 3y 39 cubic feet
x, y 0
Graphing the model
Graphing an LP model consists of the following distinct steps.
1) Plot each of the constraints
2) Determine the region or area that contains all of the points that satisfy the entire set of
constraints.
3) Determine the optimal solution.
Fundamental theorem of LP: If there is a solution to an LP problem, at least one optimal solution will
occur at a corner point of the feasible solution space. A corner point is a point in the feasible solution
region that is the intersection of two boundary lines (constraints
The extreme point theorem states that for problems that have optimal solutions, a solution will occur at an
extreme or corner point. As a result, in searching for an optimal solution to a problem, we need only
consider the extreme points because one of those must be optimal. Further, we could identify the optimal
solution by selecting the corner point that has the best value (i.e., maximum or minimum, depending on
which type of problem was involved) of the objective function. Hence the necessary steps for the extreme
point approach are:
a) Graph the problems.
b) Determine the values of the decision variables at each corner point. Sometimes this can be done by
inspection (observation); usually it is done using simultaneous equations.
c) Substitute the values of the decision variables at each corner point into the objective function to
obtain its value at each corner point.
d) After all corner points have been so evaluated, 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.
Slack
After we have got the optimal solution, we have to substitute the value of the decision variables into the
constraints and check whether all the resources available are used or not. The amount of unused resources
is known as slack. If there is an unused resource we can use it for any other purpose. Slack can range
from zero, for a case in which all of a particular resource is used, to the original amount of the resource
that was available (i.e., none of it is used). Slack can potentially exist in a constraint.
Let us see what slack remains for the optimal solution to the above LP problem. The amount of unused
resource can be computed by substituting the values of the decision variables into each constraint and
Solution
The extreme points can be determined either by inspection or from simultaneous equations. The results
are summarized as follows:
Extreme points How Value of the objective function
x Y determined?
0 9 Observation 0.10(0)+0.07(9)=Birr 0.63
5 0 Observation 0.10(5)+0.07(0)=Birr 0.50
2.27 2.19 Simultaneous 0.10(2.27)+0.07(2.19)=Birr 0.38 (smallest)
equation
The minimum value of the objective function is Birr 0.38, which occurs when x=2.27 and y=2.19.
Surplus
If there is a difference between the minimum required amount and the amount used, the difference is
called surplus. Surplus 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 is calculated. Substitute the
optimal values of the decision variables into the constraint and solve. The difference between the resulting
value and the original right-hand side amount is the amount of surplus. Surplus can potentially occur in a
constraint.
10
Area of feasibility
for constraint 2
11
X2
An unbounded solution space
X1
Redundant Constraint
Second
constraint
First
constraint
12
Optimal line
segment
Objective function
13
intersections of constraints are called basic solutions; those which also satisfy all the constraints,
including the non-negativity constraints, are called basic feasible solutions. The simplex method is an
algebraic procedure for systematically examining basic feasible solutions. If an optimal solution exists,
the simplex method will identify it.
Steps in the simplex procedure (for a maximization LP problem)
The simplex procedure for a maximization problem with all constraints consists of the following steps.
1. Write the LP model in a standard form: When all of the constraints are written as equalities, the linear
program is said to be in standard form. We convert a maximization LP model into a standard form by
applying the slack variables, s, which carries a subscript that denotes which constraint it applies to. For
example, s1 refers to the amount of slack in the first constraint, s 2 to the amount of slack in the second
constraint, and so on. When slack variables are introduced to the constraints, they are no longer
inequalities because the slack variable accounts for any difference between the left and right-hand sides of
an expression at optimal solution. Hence, once slack variables are added to the constraints, they become
equalities. Furthermore, every variable in a constraint must be represented in the objective function and
thus, slacks have to be represented in the objective function. However, since slack does not provide any
real contribution to the objective, each slack variable is assigned a coefficient of zero in the objective
function.
Slack variables are variables we introduce to the left side of constraints to make them an equality.
These variables represent the amount of unused scarce resources or capacity. Taking the aforementioned
microcomputer problem, the LP model is:
Maximize Profit: 60x1 + 50x2
Subject to:
4x1 + 10x2 100
2x1 + x2 22
3x1 + 3x2 39
x1, x2 0
Its standard form is as follows:
Maximize profit= 60x1 + 50x2 + 0s1 + 0s2 + 0s3
Subject to:
4x1 + 10x2 + s1 = 100
2x1 + x2 + s2 = 22
3x1 + 3x2 + s3 = 39
x1, x2, s1, s2, s3 0
The constraints form a system of simultaneous linear equations. As a rule, linear programming models
have fewer equations than variables. For example, in this case there are three equations and five variables
(two decision variables and three slack variables). When a system of equations has more variables than
equations, unique solutions are not possible. Instead the solution possibilities are infinite. Thus, unless
the number of equations equals the number of variables, a unique solution cannot be found.
In order to make the number of variables equal to the number of equations, enough variables can be set
equal to zero, so that the remaining number of nonzero variables equals the number of equations. In the
case of the above LP model, if two of the variables were set equal to zero, the result would be three
equations and three variables. In general, if we have n variables and m equations, with n>m, we must set
n-m of the variables equal to zero in order to obtain a system of equations in which the number of
variables equal the number of equations. And if we then solve the resulting system of equations for the
values of the remaining variables, we will obtain a solution that represents an intersection of constraints.
In other words, by setting n-m variables equal to zero, we are able to determine a solution that occurs at
one of the constraint intersections. The result is a basic solution. Moreover, the variables that have been
set equal to zero are referred to as non-basic variables, whereas the remaining variables are referred to as
basic variables.
14
The variables that are solved for are the basic variables, and the other variables are non-basic variables.
The complete solution consists of the basic and the non-basic variables. Therefore, for the microcomputer
problem, the complete initial solution is:
x 1= 0
x2 = 0
s1=100
s2 =22
s3= 39
3. Develop The Initial Simplex Tableau: The mathematical characteristics of each extreme point are
summarized in a table which is referred to as a tableau. The simplex procedure starts checking optimum
solution from the origin, where the value of all the decision variables is zero. To develop the initial
simplex tableau;
a) List the variables across the top of the tableau and write the objective function coefficient of each
variable just above it.
b) Provide one row for each constraint in the body of the tableau. List each basic variable in the basis
column, one per row.
c) In the Cj column, enter the coefficient of the objective function (zero for each slack variable), where Cj
is the coefficient of variable j in the objective function.
d) Compute values for row Zj: For each column, the Zj value is obtained by multiplying each of the
numbers in the column by their respective row coefficients in column Cj. The row Zj values are
determined column by column. For example, the Zj value for x1 column is computed in this way:
0(4) +0(2) +0(3) =0
15
Each tableau represents a basic feasible solution to the problem. Let us examine this particular tableau to see
some of the kinds of information it contains. As previously noted, this solution is comprised entirely of the
slack variables. We can read the variables that are in the basis, or “in solution” down the left side of the
tableau, and their values down the right side. This tells us that s 1 = 100, s2 =22, s3 =39. If the variable is not
included in the basis, its value is equal to zero. Therefore, because x1 and x2 are not listed, their values are
zero. Hence, this solution corresponds to the origin.
A feature of variables that are in solution is that a zero (0) appears in the bottom row of the tableau in that
variable’s column. Thus, all three slack variables have a zero in their respective columns in the bottom row.
Conversely, the two variables not in solution both have non-zero values in the bottom row. In addition, note
16
the values in the column of every variable that is in solution. In each case, the column is made up of a single 1
and the rest 0’s. For example, in s1 the values are
1
0
0
This is called a unit vector. Variables that are in solution will have unit vector columns (i.e., one (1) and the
rest 0). Moreover, the 1 will appear in the same row that the variable appears in. Thus, s 1 is the first variable
listed in the basis. Hence, a 1 appears at the intersection of the first row and s 1 column.
The last value in the Zj row (i.e., in the quantity column) indicates that the value of the objective function is 0
for this solution.
The values in the bottom row indicate any potential for improvement. For example, the 60 in column x1
reveals that if one unit of x1 could be brought into the solution (i.e., if x1=1), the value of the objective
function would increase by Birr 60, and that additional units of x1 also would increase the value of the
objective function by Birr 60 per unit. The other values in the bottom row have similar interpretations.
Then our next task is to check if the solution is optimal to the model. This will be proved by looking at the
net evaluation row (Cj-Zj) row in the tableau. The rule is:
A simplex solution in a maximization problem is optimal if the Cj-Zj row consists entirely of zero and
negative numbers (i.e., there are no positive values in the bottom row). That is, Cj-Zj0.
In our example, there are two positive numbers (60 and 50). This indicates that the initial simplex tableau doesn’t
give us the optimal solution to the model.
17
Because each unit of x1 that can be brought into solution will increase profit by Birr 60, we want to make
as much x1 as possible. The amount of x1 that can be made will depend on the substitution rates and the
amount of slack variables, which is shown in the quantity column.
(2) Identify the leaving variable by applying the minimum ratio test.
Pick out each coefficient in the pivot column that is positive. Divide the right hand side values for
these coefficients in the same row. But, do not divide by a zero or negative value.
Identify the row that has the smallest of these ratios and the basic variable for that row is the leaving
variable.
Replace the leaving variable by the entering basic variable in the solution basis column of the next
tableau
100 22 33
In our example, we will take ratios: , and which is 25, 11 and 13.
4 2 3
First Tableau
Basis Cj 60 50 0 0 0
x1 x2 s1 s2 s3 Quantity Minimum ratio test
s1 0 4 10 1 0 0 100 100/4 = 25
*
s2 0 2 1 0 1 0 22 22/2 = 11 pivot row
s3 0 3 3 0 0 1 39 39/3 = 13
Zj 0 0 0 0 0 0 Profit=0
Cj-Zj 60 50 0 0 0 0
*Pivot element
The second constraint is the most restrictive because it reveals that there is only enough of the second
resource to make 11 units of x1. Hence, the smallest of the ratios governs how much x 1 we can make.
Further, in making the 11 units of x1, the second resource will be used up (i.e., s2 will be reduced to zero).
Thus, s2 will be drop out of the solution mix (basis) and its place will be taken by x1. That is, x1 is the
entering variable and s2 is the leaving variable.
It sometimes happens that some of the substitution rates are for the variable we want to bring into
solution are zero or negative. A zero would imply that none of the corresponding variables in the basis is
required to obtain a unit of the entering variable. A negative substitution rate implies that bringing a
variable into solution will increase the amount of a basic variable. In effect, the entering variable frees up
additional resources. The point is the negative and zero substitution rates will not limit the mount of the
entering variable that can be made. We, therefore, need only to concern ourselves with positive
substitution rates; there is no need to divide the quantity column values by a negative or a zero
substitution rate. Consequently, in determining the variable that will leave the basis, our rule is:
Select the leaving variable as the one which has the smallest non-negative ratio of quantity divided
by substitution rate.
Up to this point we have determined that variable x 1 will enter the basis, and that variable s 2 will leave the
solution. The row of the variable that will leave the solution (in this case s 2) is called the pivot row. Its
values will be used to obtain values in the same row of the next tableau.
Dear learner, having this, what do you think is the next step?
The next step is to find unit vectors for the new basic variable using row operations on the pivot column.
The row operation includes:
i. Interchanging any two rows.
ii. Adding or subtracting a multiple of a non-zero constant of one row to another
iii. Multiplying any row of by a non-zero constant.
18
Let us begin our computations with the revised values for new row x 1. We want to force the 2
(called the pivot element); which is the intersection of x1 column and s2 row of the initial tableau to
1. We can force the value to 1 by dividing the 2 by it self.
That is, given the second constraint as: 2x1 + x2 + 0s1 +1s2 +0s3 = 22
This equation can be transformed into an equivalent equation with a 1 as the x 1 coefficient by multiplying
each element by ½.
Multiply by ½: x1 + 1/2x2 + 0s1 +1/2s2 +0s3 = 11
The revised coefficients can now be entered in the second tableau as shown below:
Basis Cj 60 50 0 0 0
x1 x2 s1 s2 s3 Quantity
s1 0
x1 60 1 1/2 0 1/2 0 11
s3 0
Zj
Cj-Zj
The new pivot row will be used to transform the values of the other row equations into equivalent
equations that can be used to easily identify the next solution by elementary row operations. We can
easily see how the first constraint can be revised so that the x 1 coefficient is 0 by writing out the first
constraint equation and the new pivot row equations:
First constraint: 4x1 + 10x2 + 1s1 +0s2 +0s3 = 100
Pivot row: x1 + 1/2x2 + 0s1 +1/2s2 +0s3 = 11
If we multiply the pivot row by 4 and subtract the result, the x 1 will drop out of the equation and become
zero, which is what we want. The multiple of the pivot row is:
Basis Cj 60 50 0 0 0
x1 x2 s1 s2
Quantity s3
s1 0 0 8 1 -2
56 0
x1 60 1 1/2 0 1/2
11 0
s3 0 0 3/2 0 -3/2
6 1
Zj
Cj-Zj
Now we are ready to compute the values for row Zj. These are found by multiplying the values in each
column by the corresponding coefficients in the Cj column and adding them. The computations are as
follows:
x1 x2 s1 s2 s3
Quantity
s1 0(0)=0 0(8)=0 0(1)=0 0(-2)=0 0(0)=0 0(56)=0
x1 60(1)=60 60(1/2)=30 60(0)=0 60(1/2)=0 60(0)=0 60(11)=660
s3 0(0)=0 0(3/2)=0 0(0)=0 0(-3/2)=0 0(1)=0 0(6)=0
Zj 60 30 0 30 0 660
19
Checking the bottom row of the tableau, we note that there is a positive number (i.e., 20 in the x 2 column).
This indicates that the solution can be improved. The implication is that for every unit of x 2 that we can
bring into the solution, profit will increase by Birr 20. Therefore, we must develop a third tableau.
Dear learner, please develop the third tableau by your own. Use the procedures used above.
Basis Cj 60 50 0 0 0
x1 x2 s1 s2 s3 Quantity
s1 0 0 8 1 -2 0 56 56/8=7
x1 60 1 1/2 0 1/2 0 11 11/0.5=22
s3 0 0 3/2 0 -3/2 1 6 6/1.5=4 smallest non-negative ratio
Zj 60 30 0 30 0 660
Cj-Zj 0 20 0 -30 0
The smallest non-negative ratio is in the third row. This tells us that variable s 3 must be taken out of the
solution (i.e., set equal to zero), and replaced with incoming variable x 2. Because x2 will come into the
20
solution, its coefficient in the x2 column must be transformed to a 1. As before, if we note that the current
value at that location (i.e., the intersection of the entering variable’s column and the entering variable’s
row) is 3/2, we can accomplish this by multiplying every element in the third row by 2/3. The resulting
values become the pivot row for the third tableau. Omitting the variables from the list for convenience,
we have:
2/3(0 3/2 0 -3/2 1 6) = 0 1 0 -1 2/3 4
These values now can be entered into the third tableau as shown below:
Basis Cj 60 50 0 0 0
x1 x2 s1 s2 s3 Quantity
s1 0
x1 60
x2 50 0 1 0 -1 2/3 4
Zj
Cj-Zj
The values in the remaining two constraint rows now must be transformed to equivalent equations in
which the elements in the x2 column are zero. This can be accomplished in the following way:
Multiply the values in the pivot row by the value in the entering variable’s column for the row being
transformed. Thus, to transform values in row 1, multiply the pivot values of the third tableau by 8. Then
subtract the results from the values that appeared in the preceding tableau. Similarly, to obtain new row 2
values, multiply the pivot values in the third tableau by ½ and subtract the result from the row 2 values of
the preceding tableau.
For the first row, multiplying the pivot values by 8, we obtain these values:
8(0 1 0 -1 2/3 4) = 0 8 0 -8 16/3 32
Subtracting these from the previous row 1 values, we obtain
Previous values 0 8 1 -2 0 56
-(0 8 0 -8 16/3 32)
= 0 0 1 6 -16/3 24
For row 2, multiplying the pivot values by 1/2, we obtain these values:
1/2(0 1 0 -1 2/3 4) = 0 1/2 0 -1/2 1/3 2
Subtracting these from the previous row 2 values, we obtain
Dear learner, please calculate the values of Zj and Cj-Zj by your own.
21
22
unbound if there are no positive ratios. A negative ratio means that increasing x 1 would increase resources.
A zero ratio means that increasing x 1 would not use any resources. This condition generally arises because
the problem is incorrectly formulated. If the constraints do not properly bind the solution, or the objective
function is stated as maximization when it should be a minimization, unbound solutions will occur.
Example: Solve the following linear programming model using the simplex procedure.
Maximize profit: 2x1 + 3x2
Subject to:
-x1 + x2 1
-1/2x1 + x2 3
x1, x2 0
The final tableau for the problem is:
Basis Cj 10 6 7 0 Quantity
x1 s1 s1 s2 values
x2 0 0 1 -1 2 5
x1 10 1 0 -2 2 4
Zj 2 3 -7 10 23
Cj-Zj 0 0 7 -10
Even though there is a positive value in the net evaluation row indicating that the solution is not optimal,
we cannot determine the variable to be replaced because there is no positive ratio in the pivot column.
This special condition is referred to as unbounded.
Degeneracy: In the process of developing the next simplex tableau for a tableau that is not optimal, the
leaving variable must be identified. This is normally done by computing the ratios of values in the
quantity column and the corresponding row values in the entering variable column, and selecting the
variable whose row has the smallest non-negative ratio. In some cases, there will be a tie for the lowest
non-negative ratio. Such an occurrence is referred to as degeneracy, because it is theoretically possible for
subsequent solutions to cycle (i.e., to return to previous solution). There are ways of dealing with ties in a
specific fashion; however, it will be usually enough to simply select one row (variable) arbitrarily and
proceed with the computations. However, there will be no improvement in the solution (level of the
objective function); it will rather be the same as the previous solutions.
Multiple Optimal Solutions: This is the condition when the same maximum value of the objective
function might be possible with a number of different combinations of values of the decision variables. It
occurs when the objective function is parallel to any of the binding constraint function. Two functions are
said to be parallel if the ratio of coefficients of variables is the same.
When using the simplex approach, we can recognize alternate optimal solution if the Cj-Zj row contains a
zero value for one or more of the non-basic variables (variables not in the solution) in the final simplex
tableau.
Exercise: Solve the following linear programming model using the simplex procedure.
Maximize profit: 60x1 + 30x2
Subject to:
4x1 + 10x2 100
2x1 + 1x2 22
3x1 + 3x2 39
x1, x2 0
First recognize that the above model is the case of multiple optimal solution because the objective
function 60x1 + 30x2 is parallel to the second constraint 2x 1 + 1x2 22. That is, the ratio of coefficients
of variables is the same (i.e. coefficient of x 1 to coefficient of x2 both in the objective function and the
60 2
second constraint 2 : 1 ).
30 1
23
Final tableau for modified microcomputer problem with alternate optimal solution
Basis Cj 60 30 0 0 0
x1 x2 s1 s2 s3 Quantity
s1 0 0 8 1 -2 0 56
x1 60 1 1/2 0 1/2 0 11
s3 0 0 3/2 0 -3/2 1 6
Zj 60 30 0 30 0 660
Cj-Zj 0 0 0 -30 0
There is a zero in row Cj-Zj in the x 2 column and that indicates the existence of an alternate optimal
solution. The presence of this zero tells us that variable x 2 can be brought into solution without
increasing or decreasing the value of the objective function.
24
optimal value of the objective function will appear in row Zj in the quantity column. If the solution is
not optimal, repeat steps 1-6 of this section until the optimal solution has been attained, if it
exists.
Simplex: Maximization with Mixed Constraints and Minimization
In the previous subsection the simplex approach to the solution of LP problems was introduced. The
technique was demonstrated by using maximization problem in which all of the constraints are a
variety. In this subsection the question of how to deal with problems that do not have a constraint is
addressed. Such conditions can occur in the context of both maximization and minimization problems.
LP models with all the =, , and signs is called mixed constraints. Constraints with = and signs are
handled a bit differently. Here, we begin with a discussion of how to modify= constraints and
constraints so that they are in a form that is compatible with a simplex solution. Next, a simplex solution
of a maximization problem that has a mix of three constraint types will be illustrated followed by a
simplex solution of a minimization problem.
In the case of equality constraints slacks are not acceptable; such constraints require a precise
amount. However, as we saw earlier, the origin serves as a convenient starting point for an initial
solution. Thus, there is a conflict using the origin as starting point, with all decision variables set
equal to zero, and equality constraints, which do not permit any slack. This disparity is resolved in
simplex by the introduction of artificial variables. Artificial variables have no physical
interpretations, they merely serve as a device to enable us use the simplex procedure. During the
simplex procedure, artificial variables are quickly eliminated from the solution. In fact, the optimal
solution should never contain an artificial variable with non-zero value. Artificial variables have the
same non-negativity restriction that decision variables and slack variables have.
Example: Let us assume that we do have the following constraint in an LP model under
consideration: 3x1 + 5x2 = 40,
Its standard form will be: 3x1 + 5x2 + A1 = 40. A1 does mean an artificial variable for the first
constraint.
Dear learner, note that an artificial variable is a non-negative variable introduced to facilitate the
computation of an initial basic feasible solution.
Note that if a problem has five constraints, and the fifth constraint listed is an equality constraint,
its artificial variable would be designed as A 5.
Now consider 8x1 + 3x2 50
Unlike a constraint, a constraint is never allowed to have a value that is less than the minimum
amount designated by the constraint. However, it can have a value that exceeds the designated
amount (50 in this case). In some situations, a solution will result in values of the decision variables
that exceed the designated minimum level of a constraint. That excess amount is referred to as
surplus. Surplus variables are resources beyond the minimum requirements. This surplus amount
is subtracted from the left side of the constraint function to put it in standard form.
Example: 8x1 + 3x2 50 will look like:
8x1 + 3x2 – s1 = 50, where s1 = the surplus amount for the first constraint.
25
By subtracting the surplus, the constraint becomes equality. As before, to allow for initial solutions
that will be less than that amount, an artificial variable also must be added. Thus, the standard form
of the above constraint is: 8x1 + 3x2 – s1 + A1 = 50
Dear learner, how are we going to represent surplus and artificial variables in the objective
function?
Surplus variables are handled in exactly the same way as slack variables are. Namely, they are
assigned coefficients of zero in the objective function.
26
number. The artificial variable becomes one of the basic variables in the initial basic feasible
solution.
4) For equality (=) constraints, add an artificial variable to obtain the tableau form. The
coefficient of the artificial variable in the objective function is assigned a value of -M. The
artificial variable becomes one of the basic variables in the initial basic feasible solution.
27
The initial solution can be interpreted in this way. The first constraint has a slack of 4 units; artificial
variable A2 has a value of 9 and artificial variable A 3 has a value of 24. The “profit” is -33M Birr,
where M is simply a very large number.
As before, the entering variable will be the one with the largest positive value in row Cj-Zj. The two
positives are 6 + 7M for x 1 and 8 + 3M for x2. Because M is so large relative to the 6 and 8, the latter
can simply be ignored. Thus, we can easily see that +7M is larger than +3M; therefore, we select x 1
variable to enter to the solution. Next, dividing the values in the x 1 column into their respective
quantity column values, we obtain these ratios:
Row Ratio
s1 4/0=undefined
A2 9/1=9
A3 24/6=4
The leaving variable is determined in the same way as we did in our previous discussions. The one
with the least positive ratio will be the leaving variable. Because A 3 yields the smallest positive ratio,
it will be the leaving variable.
Now do not forget to exclude the third artificial variable,A 3, from the simplex tableau when you
develop the second tableau. Once an artificial variable leaves the basis, it is no longer needed. The
second tableau will look like the following:
Second Tableau
Basis Cj 6 8 0 0 -M Quantity
x1 x2 s1 s3 A2
s1 0 0 1 1 0 0 4
A2 -M 0 23 0 16 1 5
x1 6 1 13 0 -1 6 0 4
Zj 6 2- 2 3M 0 -1 - 1 6 M -M 24 – 5 M
Cj-Zj 0 6 + 2 3M 0 1 +1 6 M 0
Dear learner, what are the next entering and leaving variables?
The largest positive number in the net evaluation row is 6 + 2 3 M. This shows that the next variable to
enter the basis is x2. And the leaving variable is s1. Therefore, we develop the next tableau by taking the
above facts into consideration.
Third Tableau
Basis Cj 6 8 0 0 -M Quantity
x1 x2 s1 s3 A2
x2 8 0 1 1 0 0 4
A2 -M 0 0 -2 3 16 1 73
x1 6 1 0 -1 3 -1 6 0 83
Zj 6 8 6 +2 3 M -1 – M/6 -M 48 - 7 3 M
Cj-Zj 0 0 -6 - 2 3 M 1 + M/6 0
Still we do have a positive number in the net evaluation row. Therefore, we have to search for a better
solution. We need to determine the next variable to enter the solution mix and the one which must leave the
basis. The next tableau will be developed by excluding A 2 from the basis and bringing s3 to the basis.
Final Tableau
28
Basis Cj 6 8 0 0 Quantity
x1 x2 s1 s3
x2 8 0 1 1 0 4
s3 0 0 0 -4 1 14
x1 6 1 0 -1 0 5
Zj 6 8 2 0 62
Cj-Zj 0 0 -2 0
Look at the above tableau. There is no positive number in the net evaluation row. This means, we cannot
get an improved solution by developing the next tableau. Therefore, the fourth tableau is the final tableau.
The optimal solution is:
x1=5
x2=4
s3=14
Profit=Birr 62
Dear learner, please interpret the optimal solution given above.
Solving minimization problems
For the most part, solution of minimization problems using simplex are handled in the same way as
maximization problems with mixed constraints. The two key exceptions are:
that M coefficients of artificial variables in the objective function are given positive signs
instead of negative signs as noted previously, and
the selection of a variable to enter the solution is based on the largest negative value in row
Cj-Zj.
Note also that minimization problems always require at least one artificial variable.
The coefficient of artificial variables, M, when we indicate them in the objective function, has same
meaning as other coefficients of variables in the objective function. It indicates the extent of the artificial
variable’s per unit contribution to the level of the objective function. The values in the net evaluation row
indicate the extent of possible increase to the level of the objective function as a result of bringing an
additional unit of the variable in that column to the solution mix.
To sum up, in minimization problems, while the variable with the largest negative value in the net
evaluation row enters the next tableau, the variable with the least positive ratio will leave the solution mix
like the maximization case.
Test of optimality: If all Cj - Zj > 0, then the basic feasible solution is optimal in the minimization LP
problem.
Example: Solve the following linear programming model using the simplex procedure.
Minimize cost: 6x1 + 9x2
Subject to:
10x1 + 4x2 400
x2 14
x 1, x 2 0
We start the procedure by writing the model in its standard form. The standard form for the above
model is:
Minimize cost: 6x1 + 9x2 + 0s1 + 0s2 +MA1 + MA2
Subject to:
10x1 + 4x2 - s1 + A1 = 400
x 2 – s2 + A 2 = 14
x1, x2 , s1 ,s2 ,A1 ,A2 0
Then we develop the initial simplex tableau. The initial simplex tableau is just representing the
standard form of the model using the simplex tableau. It is developed as follows:
29
30
Even if the parameters of a problem are known with a high degree of certainty, a decision maker might
still want to use sensitivity analysis to determine how changes in parameters would affect the final
solution. For example, a manager may want to consider obtaining an additional amount of some scarce
resource that might be available, in which case the manager would want to know the answers to questions
such as:
a) Will an increase in the right hand side of this constraint affect the objective function?
b) If so, how much of the resource can be used?
c) Given the answers to (a) and (b) above, what will be the revised optimal solution?
Conversely, the decision maker might be facing a situation in which the amount of a scarce resource
available is less than the original amount, in which case the issue would be:
a) Will the decreased level of the resource have an impact on the value of the objective
function?
b) If yes, how much of an impact will it have, and what will be the revised optimal solution?
The discussion here covers: changes in the right hand side levels of the constraints and changes in the
coefficients of the objective function. In order to demonstrate sensitivity analysis, the microcomputer
example used in the preceding sections will be continued.
The LP model is:
Maximize profit: 60x1 + 50x2
Subject to:
4x1 + 10x2 100
2x1 + x2 22
3x1 + 3x2 39
31
x1, x2 0
A. Changes in the Right Hands Side (RHS) of a Constraint
The first step in determining how a change in the RHS of a constraint (e.g., the amount of scarce
resources that is available for use) would influence the optimal solution is to examine the shadow
prices in the final simplex tableau. These are the values in the Zj row in the slack columns. Note
that sensitivity analysis is performed on the final simplex tableau. The final tableau for the
microcomputer problem is shown below:
Basis Cj 60 50 0 0 0 Quantity
x1 x2 s1 s2 s3
s1 0 0 0 1 6 -16/3 24
x1 60 1 0 0 1 -1/3 9
x2 50 0 1 0 -1 2/3 4
Zj 60 50 0 10 40/3 740
Cj-Zj 0 0 0 -10 -40/3
The shadow prices are 0, 10, and 40/3. A shadow price (dual price) is a marginal value; it
indicates the impact that a one unit change in the amount of a constraint would have on the value of
the objective function. More specifically, a shadow price reveals the amount by which the value of
the objective function would increase if the level of the constraint was increased by one unit. The
above final tableau shows that the shadow prices are Birr 0 for s 1 (i.e., the first constraint, assembly
time), Birr 10 for s2 (i.e., the second constraint, inspection time), Birr 40/3 for s 3 (i.e., the third
constraint, storage space). This tells us that if the amount of assembly time was increased by one
hour, it has no effect on profit; if inspection time was increased by one hour, the effect would be to
increase profit by Birr 10; and if storage space was increased by one cubic foot, profit would
increase by Birr 40/3. The dual price Birr 40/3 shows that constraint three will have the biggest
impact on the objective function. The reverse also hold true; if inspection time was decreased by
one hour, the effect would be to decrease profit by Birr 10. In effect, shadow prices are a manager’s
“window” for gauging the impact that changes have on the value of the objective function.
However, knowing the impact of a unit change is not sufficient; because we cannot make changes
to the values of the constraints without limit. For example, we have said that the unit increase in
inspection time will result in an increase to the level of the objective function by 10. This means, if
we increase inspection time by 2 units, the level of the objective function will be increased by 20.
But, we cannot increase time without limit. Therefore, we should be informed that we can have a
change to the RHS value of constraints only within a certain range. This indicates that, our effort to
analyze the impact of changes to the RHS values of constraints should also include knowing the
range within which the possible change to the RHS values of constraints can happen and still have
the same shadow price. This range is called the “range of feasibility.” It is the range over which
shadow prices are valid.
Range of feasibility: The range of values over which the right hand side value of a constraint can
change without changing the optimal solution mix of a problem. The values of the variables in the
solution will change, but the same variables will remain basic. The dual prices for constraints do
not change within these changes. The key to computing the range of feasibility for constraints lies
in the final simplex tableau. More specifically, the values in the body of the final tableau in each
slack column can be used to compute the range of feasibility for the corresponding constraint. The
shaded portion of the final tableau of the microcomputer problem below indicates the values needed
to compute the range of feasibility.
Basis Cj 60 50 0 0 0 Quantity
x1 x2 s1 s2 s3
32
s1 0 0 0 1 6 -16/3 24
x1 60 1 0 0 1 -1/3 9
x2 50 0 1 0 -1 2/3 4
Zj 60 50 0 10 40/3 740
Cj-Zj 0 0 0 -10 -40/3
For each constraint, the entries in the associated slack column must be divided into the values in the
quantity column. Because there are three entries in each column, there will be three ratios after the
division. The same general rule always applies when computing the upper and lower limits on the range
of feasibility for a maximization problem:
Allowable decrease: The smallest positive ratio.
Allowable increase: The smallest negative (closest to zero) ratio.
This means, we add the smallest negative ratio to the original RHS value to determine the upper limit of
the range of feasibility. Similarly, we subtract the smallest positive ratio from the original RHS value to
determine the lower limit of the range of feasibility.
Dear learner, please determine the range of feasibility for each of the constraints in the microcomputer
problem. It is important to recognize when determining ranges of feasibility that each range is determined
under the assumption that the levels of the other constraints will not change. You are probability
wondering why these ratios tell us how much freedom there is for feasible changes in a constraint level.
Recall that the values in the body of any simplex tableau are substitution rates. They indicate how much,
and in what direction, a one unit change in a column variable will cause the current quantity value to
change. For example, in the final tableau, the values in the s 3 column and the quantity column are:
Basis s3 Quantity
s1 -16/3 24
x1 -1/3 9
x2 2/3 4
Zj 40/3
The values in the s3 storage column tell us the following: A one unit increase in storage space will:
a) Cause s1 (assembly slack) to decrease by 16/3 units
b) Cause x1 to decrease by 1/3 units
c) Cause x2 to increase by 2/3 units
d) Cause profit to increase by Birr 40/3
Because the quantity column entries indicate how much of s 1, x1 and x2 are currently in solution,
dividing each of those entries by the respective substitution rates in the s 3 column will indicate the
limit on possible changes that will reflect the shadow prices of 40/3. Since the substitution rates
apply in either direction (i.e., for a one unit increase or a one unit decrease in storage space), we can
determine the potential for both changes at the same time. The smallest positive ratio reveals the
amount that the current level of the constraint is above the lower limit, and the smallest negative ratio
reveals the amount that the current level of the constraint is below the upper limit.
Example: Determining the range of feasibility for the microcomputer problem
Slack variables
s1 s2 s3 Assembly time Inspection time Storage space
1 6 -16/3 24/1=24 24/6 = 4 24
16 / 3 = -4.5
0 1 -1/3 9/0 = undefined. 9/1 = 9 9
= -27
1/ 3
0 -1 2/3 4/0 =undefined 4/-1 = -4 4
=6
2/3
Original Amount 100 hours 22 hours 39 cubic feet
Upper Limit None 22 + 4 =26 39 + 4.5 = 43.5
Lower Limit 100-24=76 22 – 4 = 18 39 – 6 = 33
33
As can be clearly observed from the above table, the range of feasibility for each constraint is:
Assembly time: from 76 hours to no upper limit
Inspection time: from 18 hours to 26 hours
Storage space: from 33 cubic feet to 43.5 cubic feet
To this point, the decision maker knows the extent to which the right hand side value of constraints
can be changed. But, what would be the impact of this possible change to the level of constraints to
the optimal solutions of the model and to the level of the objective function? To determine this, you
just multiply the proposed amount of increase or decrease in the level of the constraint and multiply
it by the corresponding substitution rates in the slack column.
For example, let us assume that inspection time is increased by 4 hours. The impact is calculated as:
Basi Current
s s2 solution Change Revised solution
s1 6 24 +4 (6) = +24 48 (current solution +change=24+24=48)
x1 1 9 +4(1) = +4 13(current solution +change=9+4=13)
x2 -1 4 +4(-1) = -4 0(current solution +change=4-4=0)
Zj 10 740 +4(10) = 40 780 (current solution +change=740+40=780)
Exercise: The manager in the microcomputer problem is considering one of two possible changes
in the level of the storage constraint. One change would be an increase of 3 cubic feet in its level
and the other would be an increase of 8 cubic feet in its level. Determine the revised solution for
each possible change.
Solution: The first step in analyzing the effect of a constraint level change is to check if the change
is within the range of feasibility. We previously determined that the upper limit of that range for
storage constraint is 39+4.5 (43.5). Hence, an increase of 3 cubic feet is within the range, but an
increase of 8 cubic feet is not.
Current
Basis s3 solution Change Revised solution
s1 -16/3 24 +3 (-16/3) = -16 8
x1 -1/3 9 +3(-1/3) = -1 8
x2 2/3 4 +3(2/3) = +2 6
Zj 40/3 740 +3(40/3) =+40 780
34
Allowable increase: The smallest positive ratio of Cj-Zj value and the variable substitution
rates.
Allowable decrease: The smallest negative ratio of Cj-Zj value and variable substitution rates.
Note: If there is no positive ratio, there is no upper limit on that variable’s objective function
coefficient.
Example: Determine the range of optimality for decision variables in the microcomputer problem.
The final tableau is given below:
Basis Cj 60 50 0 0 0 Quantity
x1 x2 s1 s2 s3
s1 0 0 0 1 6 -16/3 24
x1 60 1 0 0 1 -1/3 9
x2 50 0 1 0 -1 2/3 4
Zj 60 50 0 10 40/3 740
Cj-Zj 0 0 0 -10 -40/3
35
Solution
For x1 we find:
Column x1 x2 s1 s2 s3
Cj Zj 0/1=0 0/0=undefined 0/0=undefined -10/1=-10 40 / 3
40
x1value 1/ 3
The smallest positive ratio is +40. Therefore, the coefficient of x 1 can be increased by Birr 40
without changing the optimal solution. The upper end of its range of optimality is this amount
added to its current (original) value.
Thus, its upper end is Birr 60+Birr 40=Birr100. Also, the smallest negative ratio is -10; therefore,
the x1 coefficient can be decreased by as much as Birr 10 from its current value, making the lower
end of the range equal to Birr 60-Birr10=Birr 50. Therefore, the range of optimality for x 1 is Birr 50
to Birr 100.
For x2 we find:
Column x1 x2 s1 s2 s3
Cj Zj 0/0=undefined 0/1=0 0/0=undefined -10/-1=10 40 / 3
20
x 2 value 2/3
The smallest positive ratio is +10. Therefore, the coefficient of x 2 can be increased by Birr 10
without changing the optimal solution. The upper end of its range of optimality is this amount
added to its current value. Thus, its upper end is Birr 50+Birr 10=Birr 60. Also, the smallest
negative ratio is -20; therefore, the x 2 coefficient can be decreased by as much as Birr 20 from its
current value, making the lower end of the range equal to Birr 50-Birr20=Birr 30.
Therefore, the range of optimality for x1 is Birr 30 to Birr 60.
2.4.2. Duality
Every LP 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. As you will see, the dual is a “ mirror image”
of the primal because in both formulation and its solution.
The solution of the primal contains the solution to the dual, and vice versa. Consequently, once
either the primal or the dual problem has been solved, the solution to the other is also apparent.
Analysis of the dual can enable a manager to evaluate the potential impact of a new product and it
can be used to determine the marginal value of resources (i.e., constraints). Relative to a new
product, a manager would want to know what impact adding a new product would have on the
solution quantities and the profit. This can help the manager to decide which of the several
alternative uses of resources is most profitable.
36
37
38
39