0% found this document useful (0 votes)
9 views

OR CH 2 Linear Programming

This document provides an overview of Linear Programming (LP), including its application, model formulation, components, assumptions, advantages, and limitations. It outlines the steps for formulating LP models and presents various applications such as product mix, diet problems, and portfolio selection. The document emphasizes the importance of recognizing problems suitable for LP and the need for careful model formulation to ensure effective decision-making.

Uploaded by

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

OR CH 2 Linear Programming

This document provides an overview of Linear Programming (LP), including its application, model formulation, components, assumptions, advantages, and limitations. It outlines the steps for formulating LP models and presents various applications such as product mix, diet problems, and portfolio selection. The document emphasizes the importance of recognizing problems suitable for LP and the need for careful model formulation to ensure effective decision-making.

Uploaded by

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

CHAPTER TWO

LINEAR PROGRAMMING: Application and Model Formulation

Unit Objectives:

Up on the completion of this unit, students would be able to:

 Recognize problems that can be solved using LP models.


 Formulate an LP model in mathematical terms.
 Solve Linear Programming Problems (LPP) using both graphic and simplex
approach.
 Explain special cases in both graphic and simplex techniques.
 Understand post optimality analysis and duality

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.

2.1. LINEAR PROGRAMMING MODELS

Linear programming models are mathematical representations of LP problems. Linear


programming models have certain characteristics in common. Knowledge of these
characteristics enables us to recognize problems that are amenable to a solution using
1
LP models, and to be able to correctly formulate an LP model. These characteristics
can be grouped as components and assumptions. The components relate to the
structure of a model, whereas the assumptions reveal the conditions under which the
model is valid.

2.1.1. COMPONENTS OF LP MODELS

There are four major components of LP models including: Objective function, decision
variables, constraints and parameters.

Objective and Objective Function

The objective in problem solving is the criterion by which all decisions are evaluated. It
provides the focus for problem solving. In linear programming models, a single,
quantifiable objective must be specified by the decision maker. Because we are dealing
with optimization, the objective will be either maximization or minimization. Hence, every
LP problem will be either maximization or a minimization problem. Once the objective is
specified, it becomes the measure of effectiveness against which alternate solutions are
judged. An LP model consists of a mathematical statement of the objective called the
objective function.

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.

Generally speaking, a constraint has four elements:

2
 A right hand side (RHS) quantity that specifies the limit for that constraint. It
must be a constant, not a variable.
 An algebraic sign that indicates whether the limit is an upper bound that cannot
be exceeded, a lower bound that is the lowest acceptable amount, or an equality
that must be met exactly.
 The decision variables to which the constraint applies.
 The impact that one unit of each decision variable will have on the right-hand
side quantity of the constraint.

Constraints can be arranged into three groups:

 System constraints – involve more than one decision variable,


 Individual constraints – involve only one variable, and
 Non-negativity constraints – specify that no variable will be allowed to take on a
negative value. The non-negativity constraints typically apply in an LP model,
whether they are explicitly stated or not.

Parameters

The objective function and the constraints consist of symbols that represent the decision
variables (e.g., X1, 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:

3
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., x1x2) 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. The application
of this method is beyond this course. 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

4
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 cannot 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.

2.1.4. Limitations of Linear Programming

In spite of having many advantages and wide area of applications, there are some
limitations associated with this technique. These are:

 LP treats all relationships among decision variables as linear. However, generally


neither the objective functions nor the constraints in real-life situations
concerning business and industrial problems are linearly related to variables.
 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.

5
 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.

Steps in formulating LP models:

 Identify the decision variables.


 Determine the objective function.
 Identify the constraints.
 Determine appropriate values for parameters and determine 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 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.

2.2. LINEAR PROGRAMMING APPLICATIONS

There is a wide range of problems that lend themselves to solution by linear


programming techniques. This discussion is only meant to give an indication of the LP
techniques for managerial decision making and the apparent diversity of situations to
which linear programming can be applied. Some of these include production
management (product mix, blending problems, production planning, Assembly line
balancing…), Marketing management (media selection, traveling sales man problem,
physical distribution), financial management (portfolio selection, profit planning),
agricultural application, military applications, personnel management (staffing problem,
Determination of equitable salary and etc.

6
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.

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).

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.

Example1: Product Mix

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

7
10,000. The time required in the production of these two products in terms of hours for
each of the processes is as follows.

Power transformer Traction Transformer


Core preparation 75 15
Core to Coil Assembly 160 30
Vapor Phase Drying 45 10

If the capacities available are 1000, 1500, and 750 machine hours in each process
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. Let
X1 = the no of power transformers to be produced. X2= the no of traction transformer to
be produced.

Step 2. Determine Objective Function

From the problem above, we understand that the problem is maximization problem.

Hence,

Zmax = 50,000X1+ 10,000X2

This is because, each unit of X1 contributes Birr 50,000 and X2 contributes Birr 10,000
to objective function.

Step 3. Identify constraints

Here we have two constraints: structural and non-negativity constraints. The structural
constraint is the amount of machine hours available in each process.

Step 4. Determining Parameters

Parameters are already identified in the table of the problem.

Note: Step 3 and 4 can be performed simultaneously as:

8
75X1 + 15X2 ≤ 1000 hrs. Core preparation process

160X1 + 30X2 ≤ 1500 hrs. Core to Coil Assembly

45X1 + 10X2 ≤ 750 hrs. Vapor Phase Drying

X1, X2 ≥ 0

Machine hour constraint

Step5. Building and validating the model

Z max = 50,000X1+ 10,000X2

Subject to:

75X1 + 15X2 ≤ 1000 hrs

160X1 + 30X2 ≤ 1500 hrs

45X1 + 10X2 ≤ 750 hrs

x1, x2≥0

Example 2: Marketing Application

Supermarket store chain has hired an advertising firm to determine the types and
amount of advertising it should have for its stores. The three types of advertising
available are radio and television commercials, and newspapers advertisements. The
retail chain desires to know the number of each type of advertisement it should
purchase in order to maximize exposure. It is estimated that each ad or commercial will
reach the following potential audience and cost the following amount.

Type of Advertisement Exposure Cost


(People ad or commercial)
Television Commercial 20,000 15,000
Radio Commercial 12,000 6,000
Newspaper Ads 9,000 4,0000

The company must consider the following resource constraints.

1. The budget limit for advertising is Birr 100,000

2. The television station has time available for 4 commercials.

3. The radio station has time available for 10 commercials.

9
4. The newspaper has space available for 7 ads.

5. The advertising agency has time and staff available for producing no more than a
total of 15 commercials and/or ads.

Required: Formulate a LPM.

Solution:

Decision variables

Let X1 = number of television commercials

X2 = number of radio commercials

X3= number of newspaper ads

Objective function

It is not only profit which is to be maximized. In this problem the objective to be


maximized is audience exposure.

Zmax = 20,000x1 + 12,000x2 + 9,000x3, where

Z = total level of audience exposure

20,000x1 = estimated number of people reached by television commercials

12,000x2 = estimated number of people reached by radio commercials

9,000x3 = estimated number of people reached by newspaper ads

Model constraints

Budget constraint

15,000x1 + 6,000x2 + 4,000x3 ≤Birr 100,000

Capacity constraint

Television commercials and radio commercials are limited to 4 and 10 respectively and
newspaper ads are limited to 7.

X4 ≤ 4 television commercials

X2 ≤ 10 radio commercials

X3 ≤ X7news paper ads

10
Policy constraint

The total number of commercials and ads cannot exceed 15

X1 + X2 + X3≤ 15

The complete linear programming model for this problem is summarized as:

Zmax = 20,000X1 + 12,000X2 + 9,000X3

Sub. To:

15,000X1 + 6,000X2 + 4,000X3≤Birr 100,000

X1 ≤4

X2 ≤10

X 3 ≤7

X 1 + X2 +X3 ≤15

X1, X2, X3≥0

Class work-Chemical Mixture

3. A chemical corporation produces a chemical mixture for the customer in 1000- pound
batches. The mixture contains three ingredients- Zinc, Mercury and Potassium. The
mixture must conform to formula specifications (i.e., a recipe) supplied by a customer.
The company wants to know the amount of each ingredient to put in the mixture that will
meet all the requirements of the mix and minimize total cost.

The customer has supplied the following formula specifications for each batch of
mixture.

1. The mixture must contain at least 200 lb. (pound) of Mercury

2. The mixture must contain at least 300 lb. of Zinc

3. The mixture must contain at least 100 lb. of Potassium

The cost per pound of mixture of Mercury is Birr 4, of Zinc Birr 8 and of Potassium Birr
9.

Required: Formulate LPM for the problem

2.3. Solving LP Model

11
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 x1, 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.

2.3.1. GRAPHICAL LINEAR PROGRAMMING METHODS

Up on completion of this sub unit, the learner will be able to:

 Define graphic approach


 Differentiate between objective function and extreme/ corner point approach
 Solve maximization and minimization problems using the two approaches
 Describe special cases in graphic approach
Graphical linear programming is a relatively straightforward for determining the optimal solution to
certain linear programming problems involving only two decision variables. Although graphic method is
limited as a solution approach, it is very useful in the presentation of LP, in that it gives a “picture” of
how a solution is derived thus a 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 (X1, 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 xj (j = 1, 2,…, n) which satisfy all the constraints
and non- negativity conditions of an LP problems simultaneously is said to constitute the Feasible
solution to that LP problem.

Infeasible solution The set of values of decision variables xj (j = 1, 2,…, n) which do not satisfy all the
constraints and non- negativity conditions of an LP problems simultaneously is said to constitute the
infeasible solution to that LP problem.

Basic solution-For a set of m simultaneous equations in n variables ( n>m), a solution obtained by setting
( n-m) variables equal to zero and solving for remaining m equations in m variables is called a basic

12
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 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 100 hrs
Inspection 22 hrs
Storage Space 39 cubic feet

The model is then:

Maximize 60X1 + 50X2

Subject to Assembly 4 X 1 +10 X 2 < 100 hrs

Inspection 2 X 1 + 1 X 2 < 22 hrs

13
Storage 3 X 1 + 3 X 2 < 39 cubic feet

X1, X2 > 0

Graphical solution method involves the following steps.

Step 1. Plot each of the constraints

The step begins by plotting the non-negativity constraint, which restricts our graph only to the first
quadrant. We then can deal with the task of graphing the rest of the constraints in two parts. For
example, let us take the first constraint 4X1 + 10X2 < 100 hrs. First we treat the constraint as equality:
4X1 + 10X2 = 100. Then identify the easiest two points where the line intersects each axis by
alternatively equating each decision variable to zero and solving for the other: when X1=0, X2 becomes
10 and when X2=0, X1 will be 25. We can now plot the straight line that is boundary of the feasible
region as we have got two points (0, 10) and (25, 0).

Step 2. Identify the feasible region

The feasible region is the solution space that satisfies all the constraints simultaneously. It is the
intersection of the entire region represented by all constraints of the problem. We shade in the feasible
region depending on the inequality sign. In our example above, for all the constraints except the non-
negativity constraint, the inequality sign is ‘less than or equal to’ and it represents region of the plane
below the plotted lines.

Step 3. Locate the optimal solution.

The feasible region contains an infinite number of points that would satisfy all the constraints of the
problem. Point that will make the objective function optimum will be our optimal solution. This point is
always found among the corner points of the solution space.

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 (Iso-profit or cost) function line approach
2.3.1.1. The Objective Function Approach

This approach involves plotting an objective function line on the graph and then using that line to
determine where in the feasible solution space the optimal point is. We use the same logic as plotting a
constraint line except that it is not an equation until we equate it to some right-hand side quantity. Any
quantity will do till we find a line that would last touch the feasible solution space.

14
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 (X1) = 9 and that of type 2 (X2) = 4 giving the
maximum profit of 60(9) + 50(4) =Birr740

Note: The maximization problems the movement of the iso-lines is outward from the origin; while for
minimization the movement is inward to the origin.

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.

i. Extreme Method of Solving Maximization Problems with < constraint


Maximization of objective function involves finding the point where the combination of products results
in maximum value of objective function. The constraints are connected with < sign. The solution space
lies below the slant line and is bounded by the line segments. The origin and other points below the
slant lines are in the solution space (i.e., feasible region).

Using this method for our example, simultaneously solving for corner points a, b, c, 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.

ii) Extreme Method of Solving Minimization Problems with > constraints

15
Solving minimization problems involve where the objective functions (like cost function) will be
minimum. The constraints are connected to RHS values with > sign. But, in real world problems, mixes of
constraint is also possible. The value of RHS involves the lowest value of the constraint.

The solution space lies above the slant lines and it is not enclosed. It extends indefinitely above the lines
in the first quadrant. This means simply that cost increases without limit as more and more units are
produced. The minimum cost will occur at a point along the inner boundary of the solution space. The
origin and other points below the lines are not in the solution space.

Example

Zmin = 0.1x+0.07y

Subject to:

6x+2y > 18

8x+10y > 40

y>1

x,y > 0

Find the values of x and y which makes the objective function minimum?

Solution

Corner Points Coordinates


X Y Zmin=0.1X+0.07y
A 0 9 0.63
B 25/11 24/11 0.38
C 15/4 1 0.445

Comparison of the two graphical solution methods

After having plotted the constraints of the given LP problem and identified the feasible solution space,
select one of the graphical solution methods and proceed to solve the given LP problem.

Extreme Point Objective function / Iso-profit (or cost)


Method
i. Identify coordinates of each of the
extreme (or corner points of feasible i. Determine the slope x1, x2 of the
region by either drawing perpendiculars objective function and join intercepts
on x and y axis or by solving the two to reveal the profit or cost line.
intersecting equations ii. In case of maximization, maintain the
ii. Compute the profit (cost) at each same slope through a series of parallel
extreme points by substituting that lines, and move the line-up and to the

16
point’s coordinates in to the objective right until it touches the feasible
function. region at only one point. But in case of
minimization, move down to the left
until it touches only one point in the
region.

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

ii. Redundant Constraints


In some cases, a constraint does not form a unique boundary of the feasible solution space. Such a
constraint is called a redundant constraint. A constraint is redundant if its removal would not alter the
feasible solution space. Redundancy of any constraint does not cause any difficulty in solving an LP
problems graphically. Constraints appear redundant when it may be more binding (restrictive) than
others.

iii. Infeasibility
In some cases after plotting all the constraints on the graph, feasible area (common region) that
represents all the constraint of the problem cannot be obtained. In other words, infeasibility is a
condition that arises when no value of the variables satisfy all the constraints simultaneously. Such a
problem arises due to wrong model formulation with conflicting constraints.

For example,

Max Z = 3X1+2X2

Subject to: 2X1 + X2 < 2

3X1 + 4X2 > 12

17
X1, X2 > 0

iv. Multiple optimal solutions


Recall the optimum solution is that extreme point for which the objective function has the largest value.
It is of course possible that in a given problem there may be more than one optimal solution.

There are two conditions that should be satisfied for an alternative optimal solution to exist:

 The given objective function is parallel to a constraint that forms the boundary of the feasible
region. In other words, the slope of an objective function is the same as that of the constraint
forming the boundary of the feasible region; and
 The constraint should form a boundary on the feasible region in the direction of optimal
movement of the objective function. In other words, the constraint should be an active
constraint.
2.3.2. THE SIMPLEX METHOD

Over View

In our previous section, we tried to thoroughly discuss about graphic approach of LP problems, where
the LP consists of only two decision variables. But, the real-world problems may consist of even very
large number of decision variables which cannot be solved using graphic approach. Therefore, in this
section we will try to see about simplex method, which is more comprehensive as compared to graphic
approach.

Section objective:

Up on completion of this section, the learner will be able to:

 Define simplex approach and concepts in simplex approach


 Standardize LP models
 Differentiate between slack, surplus and artificial variables
 Solve both maximization and minimization problems using simplex approach
 Explain special cases in simplex method and how to handle them
The graphical method of solving linear programming problems is a simple way to find a solution since
the optimum solution is searched among the corner points of the solution space. However, the graphical
method is restricted to problems with two decision variables. When the number of variables and the
number of constraints increase, it becomes difficult to visualize the solution space. As a result, the
graphical method cannot be employed successfully in such cases. In order to avoid this limitation, the
simplex method, or iterative or step by step method is efficient method for solving linear programming
problems, which was developed by George B. Datzing in 1947.

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. In case of
the graphical approach, optimal solution occurs at the extreme points where the constraints intersect.

18
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 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 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 equations. 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.

19
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. X1 & 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.

The Simplex Algorithm

2.3.2.1. Maximization case

The solution steps of the simplex method can be outlined as follows:

Step 1. Formulate the linear programming model of the real-world problem, i.e., obtain a mathematical
representation of the problem's objective function and constraints.

Step 2. Express the mathematical model of L.P. problem in the standard form by adding slack variables
in the left-hand side of the constraints and assign a zero coefficient to these in the objective function.

Thus we can restate the problem in terms of equations:

Maximize Z = C1X1+ C2X2 + ... +CnXn + OS1 + OS2 +... +0Sm

Subject to a11X1+a12X2+... + a1nxn+s1i =b1

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:

Initial Simplex Tableau

20
Contribution C1 C2 ... Cn,, 0 0 ... 0 Quantity Column
X1, X2, ... Xn S1 S2 ... Sm
S1 CB1 a11 a12 ... a1n 1 0 ... 0 b1
S2 CB2 a21 a22 ... a2n 0 1 ... 0 B2
Sm CBm am1 am2…amn 0 0 ... 1 bm
Zj=£CBXj 0 0 ... 0 0 0 ... 0 £CBXj
Cj-Zj=Net Contribution per unit C1-Z1 C2-Z2 ... Cn-Zn

The interpretation of the data in the above tableau is given as under. Other simplex tableau will have
similar interpretations.

 In the first row labelled "Cj", we write the coefficients of the variables in the objective function.
These values will remain the same in subsequent tableaus.
 The second row shows the major column headings.
 In the first column of the second row, under the label "Basic variables" (also called Product mix
column), the basic variables are listed.
 In the second column of the second row, under the label "CB", the coefficients of the current
basic variables in the objective function are listed. Thus, the coefficients of S1, S2... Sm, which
are included in the initial feasible solution, are written in the CB column.
 The values listed under the non-basic variables (X1, X2… Xn) in the initial simplex tableau
consists of the coefficients of the decision variables in the constraint set. They can be
interpreted as physical rates of substitution.
 The values listed under the basic variables (S1, S2... Sm) in the initial simplex tableau represents
the coefficients of the slack variables in the constraints set.
 In the next column (also called Quantity column), we write the solution values of the basic
variables.
 To find an entry in the Zj row under a column, we multiply the entries of that column by the
corresponding entries of ‘CB’ column and add the results, i.e., Zj= ∑CBiXj. The Zj row entries will
all be equal to zero in the initial simplex tableau. The other Zj 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 Zj entry under the “Quantity Column" gives the
current value of the objective function.
 The last row labelled "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 Cj-Zj row simply involves
subtracting each Zj 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, Zj= 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

21
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 exist 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 Cj -Zj row of the simplex table. The
column with the largest positive entry in the Cj – 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/a1j, b2/a2j... bm/amn. This is called
replacement ratio.

Replacement Ratio (RR) = Solution Quantity (Q)

Corresponding values in pivot column

 The row with the minimum ratio is the key row or pivot row. The corresponding variable in the
key row (the departing variable) will leave the basis.
 We identify the key or pivot element. This is the number that lies at the intersection of the key
column and key row of a given simplex tableau.
Step 7. Evaluate the new solution by constructing a second simplex tableau. After identifying the
entering and departing variable, all that remains is to find the new basic feasible solution by
constructing a new simplex tableau from the current one. Now we evaluate or update the new solution
in the following way:

 New values for the key row are computed by simply dividing every element of the key row by
the key element to obtain a unit vector (1) in the key element.
 The new values of the elements in the remaining rows for the new simplex table can be
obtained by performing elementary row operations on all rows so that all elements except the
key element (1) in the key column are zero, i.e. unit vector.
 New entries in the CB column and XB column are entered in the new table of the current
solution.
 Compute the values of the Cj - Zj row. If all the numbers in Cj - Zj row are either negative or zero,
an optimum solution has been obtained.
Step 8. If any of the numbers in Cj - Zj row are positive, repeat the steps (6-7) again until an optimum
solution has been obtained.

22
1) Maximization with all constrains with only ≤ Constrains
Example

Finding the initial Feasible Solution

As discussed above, the initial feasible solution is found by setting the decision variables to zero.

Max Z = 60X1+50X2+0S1+0S2+0S3

Subject to 4X1+10X2+S1 = 100

2X1+ X2+S2 = 22

3X1+ 3X2+S3 = 39

X1, X2 > 0

Initial Simplex tableau

Basic 60 50 0 0 0 Quantity
X1 X2 S1 S2 S3
S1 0 4 10 1 0 0 100
S2 0 2 1 0 1 0 22
S3 0 3 3 0 0 1 39
Zj 0 0 0 0 0 0
Cj-Zj 60 50 0 0 0

Interpretation of the Initial Feasible Solution

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 X1 indicates that bringing one unit of X1 would increase the
value of the objective function by $60. The same is true for the X2 column, i.e. bringing one unit of X2
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 Cj-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.

Developing the Second Simplex Tableau

23
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 Cj-Zj row of the initial simplex tableau is
the X1 column with a value 60. Therefore, X1 should enter the basis or the solution mix. The X1 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 X1. For example, the number 4 indicates that 4 units of the first slack
are needed to obtain one unit of X1.

Since X1 has the highest profit potential, we need to make as much X1 units as possible. The amount of
X1 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.

Basic 60 50 0 0 0 Quantity
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

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 X1. In this particular case, there is only
enough of the second constraint to make 11 units of X1. In making the 11 units of X1, the second
resource (S2) 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 Zj
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.

24
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.

Next, we multiply the above new row values by 4 and subtract it from the first constraint obtaining the
following 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

Basic 60 50 0 0 0 Quantity
X1 X2 S1 S2 S3
S1 0 0 8 1 -2 0 56
X2 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 20 0 -30 0

Interpretation of the Second Simplex Tableau

The profit obtained at this point of solution is $660. In the Cj-Zj row, we search for the highest positive
value. If there is, it means that we can further improve this solution. Therefore, we have a positive value
in the Cj-Zj row which indicates that this is not the optimal solution. As a result, we go for the next
tableau.

Developing the Third Tableau

Here, we select the entering and the leaving variables. The entering variable is the one with the highest
Cj-Zj row value which is the X2 column. This means that bringing one unit of X2 into the solution
increases profit by $20. Therefore, the X2 will be the entering variable designated as the pivot column.

To determine the leaving variable, we divide the values in the pivot column by their corresponding row
values in the quantity column. The result obtained, as shown in the table below indicates that S3 is the
leaving variable with the smallest non-negative ratio. This means that S3 is the most limiting resource
for how much units of X2 can be made.

Basic 60 50 0 0 0 Quantity

25
X1 X2 S1 S2 S3
S1 0 0 8 1 -2 0 56 56/8=7
X2 60 1 ½ 0 ½ 0 11 11/(1/2)=22
S3 0 0 3/2 0 -3/2 1 6 6/(3/2)
Zj 60 30 0 30 0 0 660
Cj-Zj 0 20 0 -30 0

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.

Third Simplex Tableau

Basic 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 60 0 10 40/3 740
Cj-Zj -60 -10 0 -10 -40/3

Interpreting the Third Tableau

All the values in the Cj-Zj row are zero and negative indicating that there cannot be additional
improvement. This makes the third tableau to contain the optimal solution with the following basic
variables:

S1 = 24, X1 = 9, and X2 = 4 producing a maximum profit of $740.

This means that in order to achieve the maximum profit, the company should produce 9 units of X1 and
4 units of X2 leaving 24 hours of unused resource of the first constraint.

2) Simplex Maximization with Mixed Constraints (= and > constraints)


The Big M Method—introducing slack, surplus and artificial variables

26
 If any problem constraint has negative constants on the right side, multiply both sides by -1 to
obtain a constraint with a non-negative constant. (If the constraint is an inequality, this will
reverse the direction of the inequality).
 Introduce a slack variable in each ≤ constraints.
 Introduce a surplus variable and an artificial variable in each ≥ constraint.
 Introduce an artificial variable in each '='constraint.
 For each artificial variable Ai, add -MAi to the objective function in case of maximization and
+MAi in case of minimization. Use the same constant M for all artificial variables.
 Form the simplex tableau for the modified problem.
 Solve the modified problem using the simplex method.
Note. The artificial variables are introduced for the limited purpose of obtaining an initial solution and
are required for the constraints of ≥ type or the constraints with '=' sign. It is not relevant whether the
objective function is of the minimization or the maximization type.

Obviously, since artificial variables do not represent any quantity relating to the decision problem, they
must be driven out of the system and must not remain in the final solution (and if at all they do, it
represents a situation of infeasibility). This can be ensured by assigning an extremely high cost to them.
Generally, a value M is assigned to each artificial variable, where M represents a number higher than
any finite number. For this reason, the method of solving the problems where artificial variables are
involved is termed as the 'Big M Method'. When the problem is of the minimization nature, we assign in
the objective function a coefficient of +M to each of the artificial variables. On the other hand, for the
problems with the objective function of maximization type, each of the artificial variables introduced has
a coefficient -M.

In case of equality constraints, a slack variable is not acceptable since these constraints require a precise
amount. To overcome this problem, artificial variables are introduced which are added to = and
constraints. They have no physical representation for their purpose is to allow the use of simplex
process. As a result, they should not appear in the final optimal solution. Assignment of coefficients for
artificial variables depends on the type of the problem, whether it is a maximization or a minimization
problem. In case of maximization problem, a large negative contribution or coefficient in the objective
function would ensure the removal of artificial variables from the optimal solution, commonly
represented by -M. For minimization problems, introducing a large positive coefficient would ensure the
non-existent of artificial variables in the optimal solution, commonly represented by M.

In addition to this, a slack is not allowed in ≥ constraints since they can only happen an excess amount
that is more than the minimum amount of a constraint. This excess amount is represented by a surplus
variable and is subtracted from the constraint.

Example – Maximization Problems with Mixed Constraints

Assume the following maximization problem with mixed constraints

Max. Z = 6X1+8X2

Subject to X2 < 4

X1+X2 = 9

6X1+2X2 ≥ 24

27
In solving for this problem, introducing a slack variable is not acceptable since they represent unused
capacity and there is no unused capacity in = and ≥ constraints. Therefore, for ≥ constraints, we
introduce a surplus variable and for both ≥ and = constraints we introduce artificial variables resulting as
follows.

Max Z = 6X1+8X2+0S1+0S2-MA2-MA3

Subject to X2+ S1 = 4

X1+X2+A2 = 9

6X1+2X2-S3+A3 = 24

X1, X2, S1, S3 > 0

Developing the Initial Simplex Tableau

In the initial tableau, we list the variable in the order of decision variable, slack/surplus variables and
finally artificial variables. And for constraints, use artificial variables, and/or slack variables and/or
surplus variables for the initial solution. Therefore, the initial tableau for the problem is represented as
follows.

Initial Simplex Tableau

Basic V 6 8 0 0 -M -M Quant
X1 X2 S1 S3 A2 A3
S1 0 0 1 1 0 0 0 4
A2 -M 1 1 0 0 1 0 9
A3 -M 6 2 0 -1 0 1 24
Zj -7M -3M 0 +M -M -M -33M
Cj-Zj 6+7M 8+3M 0 -M 0 0

Since this is a maximization problem, the entering variable is the one with the maximum Cj-Zj value.
Therefore, the variable with the maximum Cj-Zj is X1, the decision variable. And the leaving variable is
(4/0=undefined; 9/1=9; and 24/6=4) with the minimum non-negative ratio which is A3, the artificial
variable. Since this artificial variable is not needed we remove it from the next tableau.

Developing the Second Simplex Tableau

After identifying the entering and the leaving variable, the usual elementary row operations are
performed to obtain a unit vector in the entering variable column. The end result after performing the
row operations is as follows which shows the second tableau.

Second Simplex Tableau

Basic V 6 8 0 0 -M Quant
X1 X2 S1 S3 A2
S1 0 0 1 1 0 0 4
A2 -M 0 2/3 0 1/6 1 5
X1 6 1 1/3 0 -1/6 0 4

28
Zj 6 2-2/3M 0 -1-M/6 0 24-5M
Cj-Zj 0 6+2/3M 0 1+M/6 -M

Again here, we identify the leaving and the entering variables, i.e. the pivot row and the pivot column
respectively. The entering variable with the highest Cj-Zj row value is X2 and the leaving variable (4/1=4;
5/2/3=7.5 and 4/1/3=12) with the smallest ratio is S1.

Developing the Third Simplex Tableau

Selecting the entering and leaving variables, we go for obtaining a unit vector in the pivot column by
using the elementary row operations. We get the following third tableau.

Third Simplex Tableau

Basic V 6 8 0 0 -M Quant
X1 X2 S1 S3 A2
X2 8 0 1 1 0 0 4
A2 -M 0 0 -2/3 1/6 0 7/3
X1 6 1 0 -1/3 -1/6 0 8/3
Zj 6 8 6+2/3M -1-1/6M 0 48-7/3M
Cj-Zj 0 0 -6-2/3M 1+1/6M 0

Developing the Fourth Simplex Tableau

Perform elementary row operations usual to have a unit vector in the entering variable column and you
will get the following fourth tableau.

Fourth Simplex Tableau

Basic V 6 8 0 0 Quant
X1 X2 S1 S3
X2 8 0 1 1 0 4
S3 0 0 0 -4 1 14
X1 6 1 0 -1 1/6 5
Zj 6 8 2 1 62
Cj-Zj 0 0 -2 -1
This tableau represents the final tableau since we have only zeros and negative values in the Cj-Zj row
which indicates that it is the optimal solution. So we have the following results for each of the variables
and the profit obtained.

X1 = 5, X2 = 4, S3 = 14, and Profit = 62

29
2.3.2.2. Minimization Linear Programming Problems

Big M-method /Charnes Penalty Method/

The Big-M Method is a technique, which is used in removing artificial variables from the basis. In this
method; we assign coefficients to artificial variables, undesirable from the objective function point of
view. If objective function Z is to be minimized, then a very large positive price (called penalty) is
assigned to each artificial variable. Similarly, if Z is to be maximized, then a very large negative cost (also
called penalty) is assigned to each of these variables.

Following are the characteristics of Big-M Method:

a. High penalty cost (or profit) is assumed as M


b. M as a coefficient is assigned to artificial variable A in the objective function Z.
c. Big-M method can be applied to minimization as well as maximization problems with the
following distinctions:
 Minimization problems: -Assign +M as coefficient of artificial variable A in the objective
function Z of the minimization problem.
 Maximization problems: Here –M is assigned as coefficient of artificial variable A in the
objective function Z of the maximization problem.
d. Coefficient of S (slack/surplus) takes zero values in the objective function Z
e. For minimization problem, the incoming variable corresponds to the highest negative value of
Cj-Zj.
f. For minimization LPP case, the solution is optimal when there is no negative value of Cj-Zj.
The various steps involved in using simplex method for minimization problems are:

Step1. Formulate the linear programming model, and express the mathematical model of LP. problem in
the standard form by introducing surplus and artificial variables in the left-hand side of the constraints.
Assign a 0 (zero) and +M as coefficient for surplus and artificial variables respectively in the objective
function. M is considered a very large number so as to finally drive out the artificial variables out of basic
solution.

Step2. Next, an initial solution is set up. Just to initiate the solution procedure, the initial basic feasible
solution is obtained by assigning zero value to decision variables. This solution is now summarized in the
initial simplex table. Complete the initial simplex table by adding two final rows Z, and Cj - Zj. These two
rows help us to know whether the current solution is optimum or not.

Step3. Now; we test for optimality of the solution. If all the entries of Cj - Zj, row are positive, then the
solution is optimum. However, this situation may come after a number of iterations. But if at least one
of the Cj - Zj values is less than zero, the current solution can be further improved by removing one basic
variable from the basis and replacing it by some non-basic one.

Step4. (i) Determine the variable to enter the basic solution. To do this, we identify the column with the
largest negative value in the Cj – Zj row of the table. (ii) Next, we determine the departing variable from
the basic solution. If an artificial variable goes out of solution, then we discard it totally and even this
variable may not form part of further iterations. Same procedure, as in maximization case, is employed
to determine the departing variable.

Step5. We update the new solution now. We evaluate the entries for next simplex table in exactly the
same manner as was discussed earlier in the maximization case.

30
Step6. Step (3—5) are repeated until an optimum solution is obtained.

So, the following are the essential things to observe in solving for minimization problems:

 The entering variable is the one with the largest negative value in the Cj-Zj row while the leaving
variable is the one with the smallest non-negative ratio.
 The optimal solution is obtained when the Cj-Zj row contains entirely zeros and positive values.
Example: Assume the following minimization problem.

Min Z = 7X1+9X2

Subject to 3X1+6X2 > 36

8X1+4X2 > 64

X1, X2 > 0

We introduce both surplus and artificial variables into both constraints as follows.

Min Z = 7X1+9X2+0S1+0S2+MA1+MA2

Subject to 3X1+6X2 –S1+A1 = 36

8X1+4X2-S2+A2 = 64

X1, X2 > 0

Thus, the subsequent tableaus for this problem are shown below. To remind in these tableaus is in
transforming from one tableau to another, we perform elementary row operations to obtain the unit
vector in the pivot column for the entering variable into the solution.

Initial Simplex Tableau

Basic V 7 9 0 0 M M Quant
X1 X2 S1 S2 A1 A2
A1 M 3 6 -1 0 1 0 36
A2 M 8 4 0 -1 0 1 64
Zj 11M 10M -M -M M M 100M
Cj-Zj 7-11M 9-10M M M 0 0
Here we identify the leaving and the entering variables, i.e. the pivot row and the pivot column
respectively. The entering variable with the highest Cj-Zj row value is X1 and the leaving variable
(36/3=12; and 64/8/=8) with the smallest ratio is A2.

Second Simplex Tableau

Basic V 7 9 0 0 M Quant
X1 X2 S1 S2 A1
A1 M 0 9/2 -1 3/8 1 12
X1 7 1 1/2 0 -1/8 0 8
Zj 7 9/2M+7/2 -M 3/8M-7/8 M 56+12M
Cj-Zj -7 -11/2M-7/2 M -3/8M+7/8 0

31
Again, here we identify the leaving and the entering variables, i.e. the pivot row and the pivot column
respectively. The entering variable with the highest Cj-Zj row value is X2 and the leaving variable
(12*2/9=24/9; and 8/1/2=16) with the smallest ratio is A1.

Third Simplex Tableau

Basic V 7 9 0 0 Quant
X1 X2 S1 S2
X2 9 0 1 -2/9 2/24 8/3
X1 7 1 0 1/9 -1/6 20/3
Zj 7 9 -11/9 -5/12 212/3
Cj-Zj 0 0 11/9 5/12

The third tableau represents a final tableau since it is the optimal solution with entirely zeros and non-
negative values in the Cj-Zj row. Therefore, the optimal solution is: X1 = 20/3 and X2 = 8/3 and value of
objective function is 212/3.

Summary

Types of Extra variables to be added Coefficient of extra variables Presence of


constraint in the objective function variables in
Max Z Min Z the initial
solution mix
≤ Add only slack variable 0 0 Yes
≥ Subtract surplus variable 0 0 No
and
Add artificial variable -M +M Yes
= Add artificial variable -M +M Yes

Special Issues

Several special situations which one many encounter during the application of simplex method are
summarized below:

Non-feasible Solution/ Infeasibility

A situation with no feasible solution may exist if the problem was formulated incorrectly. Infeasibility
comes about when there is no solution that satisfies all of the problem’s constraints.

In the simplex method, an infeasible solution is indicated by looking at the final tableau Whenever the
optimality criteria are satisfied but still there exist an artificial variable in the basis or solution mix, this is
the indication of infeasibility.

Example:

Minimization case

Basic V 5 8 0 0 M Quant
X1 X2 S1 S3 A2

32
X1 5 1 1 -2 3 0 200
X2 8 0 1 1 2 0 100
M A2 0 0 0 -1 1 20
Zj 5 8 -2 31-M M 1,800+200M
Cj-Zj 0 0 2 M-31 0

Even though all Cj - Zj are positive or 0 (i.e. the criterion for an optimal solution in a minimization case),
no feasible solution is possible because an artificial variable (A2) remains in the solution mix.

Unbounded Solution

No finite solution may exist in problems that are not bounded. This means that a variable can be
infinitely large without violating a constraint. In the simplex method, the condition of unboundedness
will be discovered prior to reaching the final tableau. We will note the problem when trying to decide
which variable to remove from the solution mix.

The procedure in unbounded solution is to divide each quantity column number by the corresponding
pivot column number. The row with the smallest positive ratio is replaced. But if the entire ratios turn
out to be negative or undefined, it indicates that the problem is unbounded.

Note: A negative ratio means that increasing that variable would increase resources. A zero ratio means
that increasing the variable would not use any resources.

Example:

Maximization case:

Basic V 7 9 0 0 Quant
X1 X2 S1 S3
X2 9 -1 1 2 0 30
S2 0 -2 0 -1 1 10
Zj -9 9 18 0 270
Cj-Zj 15 0 -18 0

The solution in the above case is not optimal because not all Cj - Zj entries are 0 or negative, as required
in a maximization problem. The next variable to enter the solution should be X1.To determine which
variable will leave the solution, we examine the ratios of the quantity column numbers to their
corresponding numbers in the X1 or pivot column. Since both pivot column numbers are negative, an
unbounded solution is indicated.

Note: When unbounded solutions occur, no outgoing variable will exist.

Degeneracy

/Tie for leaving basic variable (key row)/

33
If there is a tie for the smallest ratio, this is a signal that degeneracy exists. Degeneracy can occur right in
the first (initial tableau). This normally happens when the number of constraints is less than the number
of variables in the LP model. Such problems can be overcome by trial and error method. If this is
resolved by a proper selection of the key element, degeneracy can be avoided. The main drawback to
degeneracy is the increase in the computation, which reduces the efficiency of the simplex method
considerably.

Basic V 5 8 2 0 0 0 Quant
X1 X2 X3 S1 S2 S3
X2 8 1/4 1 1 -2 0 0 10
S2 0 4 0 1/3 -1 1 0 20
S3 0 2 0 2 2/5 0 1 10
Zj 2 8 8 16 0 0 80
Cj-Zj 3 0 -6 -16 0 0

The leaving variable can be determined as 10/1=40; 20/4=5; 10/2=5. Tie for the smallest ratio Indicates
degeneracy.

Degeneracy could lead to a situation known as cycling, in which the simplex algorithm alternatives back
and forth between the same non-optimal solutions, i.e., it puts a new variable in, then takes it out in the
next tableau, puts it back in, and so on.

One simple way of dealing with the issue is to select either row (S2 or S3 in this case) arbitrary. If we are
unlucky and cycling does occur, we simply go back and select the other row. However, the number of
iterations required to arrive at the optimal solution can be minimized by adopting the following rule:

 Divide the coefficient of slack variables in the simplex table where degeneracy is detected by the
corresponding positive numbers of the key column in the row, starting from left to right.
 The row which contains smallest ratio comparing from left to right column wise becomes the
key row.
Note: When there is a tie between a slack and artificial variable to leave the basis, the preference shall
be given to artificial variable to leave the basis and there is no need to apply the procedure for resolving
such cases.

Two incoming variables

/ Or Tie for entering variables/

In order to break this tie, the selection for the key column (entering variable) can be made arbitrary.
However; the number of solution can be minimized by adopting the following rules:

1. If there is a tie between two decision variables, then the selection can be made arbitrary.
2. If there is a tie between a decision variable and a slack (or surplus) variable, then select the
decision variable to enter into basis first.
3. If there is a tie between slack or surplus variable, then selection can be made arbitrary.
Example:

If the equation is max Z

34
Basic V 7 9 0 0 Quant
X1 X2 S1 S3
‘ ‘ ‘
‘ , ;
Zj
Cj-Zj 5 2 5 0
In such a case, X1 is the entering variable

Multiple Optimum Solutions

This situation occurs when there can be infinite number of solutions possible for a given problem. This
situation can be recognized in a simplex method when one of the non-basic variables in the Cj-Zj, row
have a value of zero. This is to mean in the optimal solution when non-basic variable (variable not in the
basis) has a zero value in Cj-Zj row, this is the indication of existence of multiple solution. To obtain the
other solution, we will make a non- basic variable with a zero Cj-Zj value to enter in to the basis and
solve in the same way as the one we did in the previous discussion.

Basic V 3 2 0 0 Quant
X1 X2 S1 S2
X2 2 3/2 1 1 0 6
S2 0 1 0 1/2 1 3
Zj 3 2 2 0 12
Cj-Zj 0 0 -2 0
MaxZ=3X1+2X2

X1=0, X2=6, S2=3 and MaxZ=12 or: X1=3, X2=3/2 and MaxZ=12

Summary

 The simplex method is an algebraic procedure that starts with a feasible solution that is not optimal
and systematically moves from one feasible solution to another until an optimal solution is found.
 The variations described in general simplex approach include; maximization and minimization
problems, mixed constraint problems, problems with multiple optimal solution, problems with no
feasible solution, unbounded problems, tied pivot columns and rows.
 Multiple optimal solution are identified by Cj-Zj (or Zj- Cj)=0 for a non-basic variable. To determine
the alternate solution(s), enter the non-basic variable(s) with a Cj-Zj value equal to zero.
 An infeasible problem is identified in the simplex procedure when an optimal solution is achieved
and one or more of the basic variables are artificial.
 The unbounded problems are identified in the simplex procedure when it is not possible to select a
pivot row- that is, when the replacement ratio is negative or undefined.
 Degeneracy occurs when there is a tie for pivot row.
2.4 Post optimality Analysis

In the previous sections we discussed about how to solve LP problems using either graphic or simplex
approach which is a base for this section. This unit deals with the other version of the simplex model,
dual and the sensitivity of the optimal solution to changes in different parameters.

Objectives:

Up on completing this chapter, the learners would be able to:

35
 Conduct sensitivity analysis on different parameters
 Describe the dual and primal forms of LP problems
2.4.1 Sensitivity Analysis

Overview

This section takes you beyond the optimal solution to analyse the impact of change in the parameters
on the optimal solutions. Assumptions may not always hold. If this is the case, it should be tested. This
section will do this purpose.

Under this section, we will discuss about sensitivity analysis which involves an examination of the
potential impact of changes in any of the parameters (i.e. numerical values) of a problem (e.g., a change
in the amount of scarce resource available).

When LP models are formulated, the input data of the model (also called parameters) such as: (i) profit
(or cost) contribution (Cj) per unit of decision variable, ii) availability of resources(bi), and (iii)
consumption of resources per unit of decision variables (aij), implicitly assumed constant and known
with certainty during a planning period. However, rarely does a manager know all of these parameters
exactly. In reality the model parameters are simply estimates (or best “guesses”) that are subject to
change. For this reason it is of interest to the manager to see what effect a change in a parameter will
have in the solution to the model. Changes may be either to the reactions to anticipated uncertainties in
the parameters or reactions to the information gained from the dual. The analysis of the parameter
changes and their effects on the model solution is known as sensitivity analysis.

Section Objective

Up on completion of this section, the learner will be able to:

 Define sensitivity analysis


 Describe the significance of sensitivity analysis
 Conduct sensitivity analysis on Two parameters; namely
 Coefficient of OF- when the variable is in the solution mix and not
 RHS
As it is indicated above, sensitivity analysis is the study of sensitivity of the optimal solution of an LP
problem due to discrete variations (changes) in its parameters. The degree of sensitivity of the solution
due to these changes can range from no change to all to a substantial change in the optimal solution of
the given LP problem.

Sensitivity analysis carries the LP analysis beyond the determination of the optimal solution and begins
with the final simplex tableau. Its purpose is to explore how changes in any of the parameters of a
problem, such as the coefficients of the constraints, coefficients of the objective function, or the right
hand side values; would affect the solution. For this, instead of resolving the entire problem as anew
problem with new parameters, we may consider the original optimal solution as an initial solution for
the purpose of knowing the ranges, both lower and upper, within which a parameter may assume a
value.

For instance, a manager may want to consider obtaining an additional amount of 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?

36
b. If so, how much of the resource can be used?
c. Given the answer to the preceding question, what will be the revised optimal solution?
Conversely, the decision maker might be facing a situation in which the amount of scarce resource
available is less than the original amount, in which case the issues 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 process of studying the sensitivity of the optimal solution of an LP problem is also called post
optimality analysis because it is done after an optimal solution, assuming a given set of parameters, has
been obtained for the model.

The discussion here covers only two types of changes: changes in the right hand side levels of the
constraints, and changes in the coefficients of the objective function as change in the coefficient of
constraints is beyond the coverage of this material.

To demonstrate sensitivity analysis, the microcomputer example will again be used.

Maximize 60 x 1+50 x 2

Subject to

Assembly time 4 x1 +10 x 2 ≤ 100

Inspection time 2x1+ 1x2≤ 22

Storage space 3x1+ 3x2≤ 39

X1, X2 > = 0

The most obvious way to ascertain the effect of a change in the parameter of the model is to make the
change in the original model, resolve the model, and compare the solution result with the original
solution. However, resolving a problem can be very time consuming and as it will be demonstrated
below, it is unnecessary. In most cases the effect of changes in the model can be determined directly
from the final simplex tableau.

2.4.1.1 A Change in the RHS of a constraint

The first step in determining how a change in the RHS (Right Hand Side) of a constraint (e.g., the amount
of scarce resource that is available for use) would influence the optimal solution is to examine the
shadow prices in the final simplex tableau. Shadow prices are the values in the Z row in the slack
columns.

The final tableau for the microcomputer is shown in the following table since sensitivity analysis starts
from final tableau.

Basic 60 50 0 0 0 Quantity
X1 X2 S1 S2 S3

37
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 60 0 10 40/3 740
Cj-Zj -60 -10 0 -10 -40/3

A shadow price is a marginal value; it indicates the impact that a one-unit change in the amount of a
constraint would have on the values of the objective function. As we can see from the table, the shadow
prices are $0 for s1 (Assembly time), $10 for S2 (Inspection time), and $40/3 for s3 (Storage space).
These tell us that an increase in the amount of assembly time would have no effect on profit; if
inspection time is increased by one hour, it will increase the profit by $10, and if storage space is
increased by 1 cubic foot, profit would increase by $40/3. The reverse also holds. If we decrease them
by such respective amounts, the decrease in profit will take the same figure.

What shadow prices do not tell us is the extents to which the level of a scarce resource can be changed
and still have the same impact per unit. The ability to use additional amounts of a resource will
disappear at some point because of the fixed amounts of the other constraints. Therefore, we need to
determine the range over which we can change the right hand side quantities and still have the same
shadow price. This is called the range of feasibility, or the right hand side range.

The key to computing the range of feasibility for the constraint lies in each slack column of the initial
simplex tableau. To compute the range for each constraint, the entries in the associated slack column
must be divided into the values in the Quantity column. For example, for the storage column values, the
resulting ratios are:

24/-16/3=-4.5 9/-1/3=-27 4/2/3=+6

Here, the smallest positive ratio indicates how much the constraint level can be decreased before it
reaches the lower limit of its range of feasibility, and the smallest negative ratio (i.e. the negative ratio
closest to 0) indicates how much the storage constraint can be increased before it reaches its upper limit
of feasibility. The general rule applies when computing the upper and lower limits on the range of
feasibility for maximization problem is:

Allowable Decrease: The smallest positive ratio

Allowable Increase: Negative ratio closest to zero

Note: The reverse rule will be true for minimization problems.

Alternative Method

Assume q1 symbolically represent quantity in the original model, and ∆ stands for change.

Max. Z = 60X1+50X2

Subject to 4X1+10X2 <100

2X1+X2 < 22

3X1+3X2 < 39

38
If we consider the same example as in the previous example, i.e., change in q3 = 39. If q3 =changes by
some amount, the new q’3 equals the original q3 +∆. The ∆ changes form a separate column identical to
the s1 column in the final simplex tableau. Therefore, to determine the ∆ change, we need only observe
the slack (si) column corresponding to the model constraint quantity (qi) being changed.

Final simplex tableau

Basic 60 50 0 0 0 Quantity
X1 X2 S1 S2 S3
S1 0 0 0 1 6 -16/3 24-16/3∆
X1 60 1 0 0 1 -1/3 9-1/3∆
X2 50 0 1 0 -1 2/3 4+2/3∆
Zj 60 60 0 10 40/3 740
Cj-Zj -60 -10 0 -10 -40/3

Recall that the requirement of simplex method is that the quantity values cannot be negative. If any q1
value becomes negative, the solution no longer be feasible. Thus the inequalities

24-16∆/3 > 0

9-∆/3> 0

4 + 2∆/3 > 0

are solved for ∆:

24-16∆/3 > 0 9-∆/3> 0 4 + 2∆/3 > 0

72-16∆ > 0 27-∆ > 0 12+2∆ > 0

3 3 3

72-16∆> 0 27-∆ > 0 12+2∆ > 0

72>16∆ 27 > ∆ 2∆ > - 12

4.5 >∆ ∆ < 27 ∆ > -6

∆< 4.5

Since the new q3 = 39 +∆, then ∆ = q3 -39. These values are substituted to the above inequalities to
result in:

∆ < 4.5 ∆< 27 ∆ > -6

q3 -39 < 4.5 q3 -39 < 27 q3 -39> -6

q3 < 43.5 q3 < 66 q3 > 33

Summarizing these inequalities, we have:

39
33 < 43.5< q3 <66

The value 66 can be eliminated since q3 must be less than 43.5; thus

33 < q3 < 43.5

As long as q3 remains in this range, the present basic solution variables remain positive and feasible.
However, the quantity value of those basic variables may change.

Once we have computed these limits, we proceed to assess the impact that a contemplated change
would have on the optimal solution.

Example

The manager in the microcomputer problem is contemplating a change in the level of the storage
constraint – an increase of 3 cubic feet. Determine the revised optimal solution for the change.

Solution

First, note that an increase of 3 cubic feet is within the range. Then, the effect of an increase of three
cubic feet is computed in the following way:

Basis s3 Current solution Change Revised solution

s1 -16/3 24 3(-16/3)= -16 8

x1 -⅓ 9 3(-⅓) = -1 8

x2 ⅔ 4 3(⅔) = +2 6

Z 40/3 740 3(40/3) = +40 780

For an increase in storage space of 8 cubic feet, we take the upper limit of 4.5 cubic feet for the
computation. The resulting revised figures, then, would be s1= 0, x1=7.5, x2=7, and Profit =800.

Note: however, that beyond the upper limit, s3 would come into solution, replacing S1, which would no
longer be slack. The amount of slack would be 8- 4.5=3.5 cubic feet.

Consequently, the revised solution would be s3= 3.5, x1=7.5, x2=7, and Profit = 800.

2.4.1.2 A Change in an Objective Function Coefficient

It is useful to know how much the contribution of a given decision variable to the objective function can
change without changing the optimal solution. There are two cases: Changes for a variable that is not
currently in the solution mix, and Changes for a variable that is currently in the solution mix.

If a variable is not currently in the solution in a maximization problem, its objective function coefficient
would have to increase by an amount that exceeds the C-Z value for that variable in the final tableau in
order for it to end up as a basic variable in the optimal solution. The range over which a non-basic
variable’s objective function coefficient can change without causing that variable to enter the solution
mix is called its range of insignificance.

40
Range of Insignificance: the range over which a non-basic variable’s objective function coefficient can
change without causing that variable to enter the solution mix.

Maximize 3x1+ 2x2+ 5x3

Subject to:

C1 x1+ 2x2+ 2x3≤ 18

C2 3x1+ 2x2+ 6x3≤ 12

C3 2x1+ 3x2+ 4x3≤ 12

x1, x2, x3, ≥ 0

3 2 5 0 0 0 Quantity
X1 x2 x3 S1 S2 S3
S1 0 0 0 1 1/5 -4/5 4/5
X1 1 0 2 0 3/5 -2/5 12/5
X2 0 1 0 0 -2/5 3/5 12/5
Zj 3 2 6 0 1 0 12
Cj-Zj 0 0 -1 0 -1 0

In the above tableau we see that x3 is a non- basic variable. To determine the range over which the
objective function coefficient of x3 would change without changing the optimal solution, recall how a
variable in a max problem enters the solution mix. Because x3 is not in solution, its objective function
coefficient would need to increase in order for it to come in to solution (i.e., to make its c-z value
positive). The amount of increase must be greater than the absolute value of its c-z value, which is │-1│.
Therefore, its objective function coefficient must increase by more than 1. Hence, the range of
insignificance for x3 is 6 or less (i.e, its Z value). In general the rule is: Range of insignificance for a non-
basic variable is ≤the Z value of the variable. The allowable increase is the absolute value of its own C- Z
value.

Range of Optimality: the range over which objective function coefficient of a variable that is in solution
can change without changing the optimal values of the decision variables. Note, however, that such a
change would change the optimal value of the objective function.

For variables that are in solution, the determination of the range of optimality (the range over which the
objective function coefficient of a variable that is in the solution can change without changing the
optimal values of the decision variables) requires a different approach. Divide the values in row C-Z by
the corresponding row values of the variable in question and follow the following rule for both
maximization and minimization problems.

Allowable increase: The smallest positive ratio of C-Z value and the variable’s substitution rate.

Allowable decrease: the smallest negative ratio of C-Z value and the variable’s substitution rate.

Note: If there is no positive ratio, it means that there is no upper limit on that variable’s objective
function coefficient.

41
Example

Determine the range of optimality for the decision variables in the microcomputer problem.

Solution: The final simplex tableau for that problem is repeated here for convenience.

Basic 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 60 0 10 40/3 740
Cj-Zj 0 -10 0 -10 -40/3

For x1 we find:

Column x1 x2 s1 s2 s3

C-Z value 0/1 = 0 -10/0 = Undefined 0/0 = Undefined -10/1 = -10 -40/3 = +40

x1 row value -1/3

The smallest positive ration is +40. Therefore, the coefficient of X1 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 (Birr60 +Birr40) = 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 (Birr60 - Birr10 )= Birr 50.

For x2 we find:

Column x1 x2 s1 s2 s3

C-Z value 0/0 =Undefined 0/1= 0 0/0 = Undefined -10/-1 = +10 -40/3 = -20

x2 row value ⅔

The smallest positive ration is +10. This tells us that the x2 coefficient in the objective function could
be increased by Birr10 to (Birr50 + Birr10) = Birr 60. The smallest negative ratio is -20, which tells us that
the x2 coefficient could be decreased by Birr20 to (Birr50 - Birr20) = Birr30. Hence, the range of
optimality for the objective function coefficient of x2 is Birr30 to Birr 60.

This can also be done in the same way as change in the constraints by using the concept of change
starting from the final tableau. That is, the range of cj that will maintain the optimal solution can be
determined directly from the optimal simplex tableau.

Basic 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

42
Zj 60+∆ 50 0 ∆ +10 40-∆/3 740
Cj-Zj -60 0 0 -10-∆ -40+∆/3

Consider a ∆ change for c1. This will change the c1 value from c1=60 to c1=60+∆. This new value is not
only included on the top cj row, but also in the left-hand cj column. Since 60+∆ is in left-hand column, it
becomes a multiple of the column values when the new Zj row values and the subsequent Cj – Zj row
values.

The solution becomes optimal as long as the Cj –Zj row values remain negative. If Cj-Zj becomes positive,
the product mix will change, if it becomes zero, there will be an alternative solution. Thus, for the
solution to remain uniquely optimal,-10-∆ < 0 and (-40+∆)/3 <0

Both of these inequalities must be solved for ∆.

-10-∆ < 0 and (-40+∆)/3 <0

-∆ < 10 (-40+∆)<0

∆ > -10 ∆< 40

Now recall that c1=60+∆; therefore, ∆ = c1-60. Now substituting c1-60 for ∆ in the above inequalities,
we get:

∆ > -10 ∆< 40

C1-60 > -10 c1-60 < 40

C1> 50 C1<100

Therefore, the range of values for C1 over which the solution basis remain optimal (although) the value
of the objective function may change) is:

50<C1<100

2.4.2 Duality

Section objective:

Up on completion of this sub section the learner will be able to:

 Define duality
 Describe the importance of duality
 Explain how to convert dual in to primal and the vice versa
 Formulate dual when the constraints are mixed
 Elucidate how to read the solution for primal from dual’s solution and vice versa.
 Analyse the impact of addition of a new product on the decision
The term ‘dual’ in a general sense implies two or double. Every linear programming problem can have
two forms. The original formulation of a problem is referred to as its Primal form. The other form is
referred to as its dual LP problem or in short dual form. In general, however, it is immaterial which of
the two problems called primal or dual, since the dual of the dual is primal.

43
The dual involves setting up and solving an LP problem that is almost a ‘mirror image’ of an LP problem
that has been formulated. Both in its formulation and solution, the dual is the flip flop version of the
primal.

In the context of LP, duality implies that each LP problem can be analyzed in two different ways, but
having equivalent solution. For example, consider the problem of production planning. By using the
primal LP problem, the production manager attempts to optimize resource allocation by determining
quantities for each product to be produced that will maximize profit. But through dual LP problem
approach, he attempts to achieve production plan that optimizes resource allocation so that each
product is produced at that quantity such that its marginal opportunity cost equals its marginal return.
Thus, the main focus of dual is to find for each resource its best marginal value or shadow price. This
value reflects the scarcity of resources, i.e., the maximum additional prices to be paid to obtain one
additional unit of the resources to maximize profit under the resource constraints. If resource is not
completely used, i.e., there is slack, then its marginal value is zero.

The shadow price is also defined as the rate of change in the optimal objective function value with the
respect to the unit change in the availability of a resource. Precisely for any constraint, we have,

Shadow Price = change in the optimal objective function value

unit change in the availability of a resource

Analysis of the dual can also enable a manager to evaluate the potential impact of a new product, and it
can be used to determine the marginal values of resources (i.e. constraints). Relative to a product, a
manager would want to know what impact adding a new product would have on the solution quantities
and the profit; relative to resources, a manager can refer to a dual solution to determine how much
profit one unit of each resource equivalent to. Whereas the primal gives solution results in terms of the
amount of profit gained from producing products, the dual provides information on the value of the
constrained resources in achieving that profit.

2.4.2.1 Formulating the Dual

There are two important forms of primal and dual problems, namely the symmetrical ( or canonical) and
the standard form.

Symmetrical form

Suppose the primal LP problem is given in the form

Maximize Zx = c1x1+ c2x2 + ... +cnxn

Subject to

a11x1+a12x2+... + a1nxn ≤b1

a21x1+a22x2+... + a2nxn ≤b2

am1x1+am2x2+... + amnxn ≤bm

x1,x2... xn ≥0

and then the corresponding dual LP problem is defined as:

44
Minimize Zy = b1y1+ b2y2 + ... +bmym

Subject to

a11y1+a21y2+... + am1ym ≥c1

a12y1+a22y2+... + am2ym ≥c2

a1ny1+an2y2+... + amnym ≤cn

y1,y2... ym ≥0

The following rules which guide the formulation of the dual problem will give you the summary of the
general relationship between primal and dual LP problems.

1. If the primal’ objective is to minimize, the dual’s will be to maximize; and the vice versa
2. The coefficient’s of the primal’s objective function become the RHS values for the dual’s
constraints.
3. The primal’s RHS values become the coefficients of the dual’s objective function.
4. The coefficients of the first “row” of the primal’s constraints become the coefficients of the first
“column” of the dual’s constraint …..
5. The ≤ constraints become ≥ and the vice versa.
Consider this Primal problem:

Minimize 40x1+ 44x2+ 48x3

Subject to: 1x1+ 2x2+ 3x3> 20

4x1+ 4x2+ 4x3> 30

x1, x2, x3> 0

The dual of this problem is:

Maximise Z = 20y1+ 30y2

Subject to:

1y1+ 4y2< 40

2y1+ 4y2< 44

3y1+ 4y2< 48

y1, y2> 0

From this the original objective was to minimize, whereas the objective of the dual is to maximize. In
addition, the coefficients of the primal’s objective function become the right-hand side values for the
dual’s constraints, whereas the primal’s right-hand side values become the coefficients of the dual’s
objective function.

Note that the primal has three decision variables and two constraints; whereas the dual has two
decision variables and three constraints. The constraint coefficients of the primal are constraint

45
coefficients of the dual, except that the coefficients of the first “row” of the primal become the
coefficients of the first “column” of the dual, and the coefficients of the second “row” of the primal
become the coefficients of the second “column” of the dual. When the primal problem is a maximization
problem with all < constraints, the dual is a minimization problem with all > constraints.

2.4.2.2 Formulating the Dual when the Primal has Mixed Constraints

In order to transform a primal problem into its dual, it is easier if all constraints in a maximization
problem are of the < variety, and in a minimization problem, every constraint is of the > variety.

To change the direction of a constraint, multiply both sides of the constraints by -1. For example,

−1(2 x 1+3 x 2> 18)is−2 x 1−3 x 2<−18


If a constraint is an equality, it must be replaced with two constraints, one with a < sign and the other
with a > sign. For instance,

4 x 1+5 x 2=20will be replaced by


4x1+ 5x2< 20

4x1+ 5x2> 20

Then one of these must be multiplied by -1, depending on whether the primal is maximization or a
minimization problem.

Example:

Formulate the dual of this LP model.

Maximize z = 50x1+ 80x2

Subject to

C1 3x1+ 5x2≤ 4

C2 4x1+ 2x2≥16

C3 6x1+6x2= 30

x1,x2≥ 0

Solution

Since the problem is a max problem, put all the constraints in to the ≤ form. Subsequently, C 2and C3
will be first adjusted in to ≤ constraints.

 C2 will be multiplied by -1:


-1(4x1+ 2x2≥16) becomes -4x1- 2x2≤ -16

 C3 is equality, and must be restated as two separate constraints. Thus, it becomes: 6x1+6x2≤ 30
and 6x1+6x2≥30. Then the second of these must be multiplied by -1.-1(6x1+6x2≥30) becomes -
6x1-6x2≤ -30

46
After making the above adjustments, rewrite the LP model again.

Maximize z = 50x1+ 80x2

Subject to:

C1 3x1+ 5x2≤ 45

C2 -4x1- 2x2≤ -16

C3 6x1+6x2≤ 30

C4 -6x1-6x2≤-30

x1, x2 ≥ 0

The dual of the above problem will be:

Minimize 45y1 - 16y2 + 30y3 – 30y4

Subject to

C1 3y1 -4y2 + 6y3 – 6y4 ≥ 50

C2 3y1 - 2y2 + 6y3 – 6y4 ≥ 80

y1, y2, y3, y4 ≥ 0

Comparison of the Primal and Dual Simplex Solutions

Cross -referencing the values in the primal and dual final simplex tableaus is shown as follows.

Primal How Labelled/ Where Correspondence in


Found in the Primal the Dual
-Decision variable x1, x2, x3,….. s1, s2, s3, ……
Slack variables s1, s2, s3, ……. y1, y2, y3, ……..
Shadow prices Z row under slack column Quantity column in decision
variable rows
Solution quantities Quantity column C-Z row under slack and
decision variable columns
The primary concern with a simplex solution is often three fold:

1. Which variables are in solution?


2. How much of each variable is in the optimal solution?
3. What are the shadow prices for the constraints?
Let’s consider how we can obtain the answers to these questions from the dual solution. Notice that the
solution quantities of the dual are equal to the shadow prices of the primal (i.e. 40/3 and 10). Next,
notice that the values of the solution quantities of the primal (i.e., 24, 9, and 4) can be found in the
bottom row of the dual. Now, in the primal solution, s1 equals 24. In the dual, the 24 appears in the y1
column. The implication is that a slack variable in the primal solution becomes a real variable (i.e., a
decision variable) in the dual. The reverse is also true: A real variable in the primal solution becomes a
slack variable in the dual. Therefore, in the primal solution we have x1= 9 and x2= 4; in the dual, 9

47
appears under s1in the bottom row, and 4 appears under s2. Thus, we can read the solution to the
primal problem from the bottom row of the dual: In the first three columns of the dual, which equate to
slack variables of the primal, we can see that the fist slack equals 24 and the other two are zero. Under
the dual’s slack columns, we can read the primal values of the decision variables. In essence, then, the
variables of the primal problem become the constraints of the dual problem, and vice versa.

Economic Interpretation of the Dual

Suppose the microcomputer firm has been approached by a representative of a department store chain
that wants the firm to make computers that will be sold under the store’s brand name. The
microcomputer company has only a limited capacity for producing computers, and therefore, must,
decide whether to produce its own computers or produce computers for the department store.

For convenience, the original problem is repeated here:

x1= number of Model I

x2= number of Model II’s

Maximize 60x1+ 50x2

Subject to: Assembly time: 4x1+ 10x2< 100

Inspection time: 2x1+ 1x2 < 22

Storage space: 3x1+ 3x2< 39

x1, x2> 0

The manager of the firm would reason in the following way. For each unit of Model I that the firm
sacrifices to produce computers for the department store, it will gain 4 hours of assembly time, 2 hours
of inspection time, and 3 cubic feet of storage space, which can be applied to the store computers.
However, it will also give up a unit profit of $60. Therefore, in order for the firm to realistically consider
the store’s offer, the amounts of scarce resources that will be given up must produce a return to the
firm that is at least equal to the foregone profit. Hence, the value of 4 assembly hours + 2 inspection
hours + 3 cubic feet of storage space > $60. By imilar reasoning, giving up one unit of Model II will
require that the value received by giving up 10 assembly hours + 1 inspection hour + 3 cubic feet of
storage must equal or exceed the Model II profit of $50 per unit. These, then, become the constraints of
the dual problem. Thus:

Value Received Resources Minimum


Per Unit of Freed Up Profit

Model I Model I 4y1+ 2y2+ 3y3 $60

Model II Model I 10y1+ 1y2+ 3y3 $50

Hence the constraints of the dual refer to the value of capacity (i.e., the scarce resources). The
formulation indicates that in order to switch from making units of Models I and II to making computers
for the department store, the value received from that switch must be at least equal to the profit

48
foregone on the microcomputer models. The variables y1, y2and y3are the marginal values of scarce
resources (assembly time, inspection time, and storage space). Solving the dual will tell us the imputed
values of the resources given our optimal solution.

Naturally, the department store would want to minimize the use of the scarce resources, because the
computer firm almost certainly would base its charges on the amount of resources required.
Consequently, the objective function for the dual problem focuses on minimizing the use of the scarce
resources. Thus:

Minimize: 100y1+ 22y2+ 39y3

Looking at the optimal solution to the dual of the microcomputer problem, we can see the marginal
values of y2 and y3 in the Quantity column, but not the value of y1. This is because the optimal solution
to the primal did not completely use up all of the assembly capacity. Consequently, no amount of either
x1or x2 would need to be given up to obtain one free hour of assembly time. Thus, the marginal value of
one hour of assembly time is $0.

Finally, the optimal dual solution always yields the same value of the objective function as the primal
optimal. In this case, it is 740. The interpretation is that the imputed value of the resources that are
required for the optimal solution equals the amount of profit that the optimal solution would produce.

Adding another Variable

The concepts introduced in the preceding section also can be applied to evaluating the feasibility of
adding another decision variable to the problem. For example, suppose the microcomputer firm is
considering a third model of microcomputer that will yield a profit of Birr 70 per unit, and this will need
resource requirements of 8 hours of assembly time, 4 hours of inspection time, and 5 cubic feet of
storage space per unit. The dual constraint for this model would be:

8 y 1 +4 y 2+5 y 3 >70

In order to determine if this new variable would come into the optimal (primal) solution, we can
substitute the dual solution of y1= 0, y2= 10, and y3= 40/3 (i.e., the shadow prices, or marginal values of
the resources) into this constraint to see if it would be satisfied. Thus, we find, 8(0) + 4(10) + 5(40/3) =
106.67. Because this amount is greater than the new dual constraint, the original solution remains
optimal. Hence, the new variable (x3) would not come into solution.

Conversely, if the dual constraint has not been satisfied, the new variable would have come into
solution. In this instance, the marginal value of scarce resources that would be required for the new
model exceeds the marginal contribution to profit that the new model would provide. That is, Birr106.67
> Birr70.

Note: The value of this approach is that it is not necessary to rework the entire problem in order to test
the potential impact that adding a new decision variable would have on the optimal solution.

Managerial Significance of Duality

49
The importance of the dual LP problem in terms of the information which it provides about the value of
the resources. The economic analysis is concerned with deciding whether or not to secure more
resource and how much to pay for these additional resources. The significance of the study dual is as
follows;

 The dual variables provide the decision maker a basis for deciding how much to pay for additional
unit of resources.
 The maximum amount that should be paid for one additional unit of a resource is called its
shadow price (also called simplex multiplier).
 The total marginal value of the resources equals the optimal objective function value. The dual
variables equal the marginal value of resources (shadow prices).
Note: The value of ith dual variable is the rate at which the primal objective function value will increase
as the ith resource increases, assuming that all other data is unchanged.

Advantages of Duality

It is advantageous to solve the dual of a primal having less number of constraints, because the

number of constraints usually equals the number of iterations required to solve the problem.
 It avoids the necessity of adding surplus or artificial variables and solve the problem quickly.
 The dual variables provide an important economic interpretation of the final solution of an LP
problem.
 It is quite useful when investigating change in the parameters of an LP problem (called
Sensitivity analysis)
Summary

 Every linear programming problem can have two forms. The original formulation of a problem is
referred to as its Primal form. The other form is referred to as its dual LP problem or in short dual
form.
 The main focus of dual is to find for each resource its best marginal value or shadow price. This
value reflects the scarcity of resources, i.e., the maximum additional prices to be paid to obtain
one additional unit of the resources to maximize profit under the resource constraints.
 If the primal’ objective is to minimize, the dual’s will be to maximize; and the vice versa; the
coefficient’s of the primal’s objective function become the RHS values for the dual’s constraints;
the primal’s RHS values become the coefficients of the dual’s objective function; the coefficients
of the first “row” of the primal’s constraints become the coefficients of the first “column” of the
dual’s constraint …..; the ≤ constraints become ≥ and the vice versa.
 Sensitivity analysis is the study of sensitivity of the optimal solution of an LP problem due to
discrete variations (changes) in its parameters. The degree of sensitivity of the solution due to
these changes can range from no change to all to a substantial change in the optimal solution of
the given LP problem.
 The purpose of sensitivity analysis purpose is to explore how changes in any of the parameters of
a problem, such as the coefficients of the constraints, coefficients of the objective function, or the
righthand side values; would affect the solution.

50

You might also like