Operations Research
Operations Research
Operations Research
Research
Nita H. Shah Ravi M. Gor
Hardik Soni
Operations Research
NITA H. SHAH
Associate Professor, Department of Mathematics
Gujarat University, Ahmedabad
RAVI M. GOR
Professor and Dean (Academics)
St. Kabir Institute of Professional Studies, Ahmedabad
HARDIK SONI
Assistant Professor
Chimanbhai Patel Institute of Computer Applications
Gujarat University, Ahmedabad
New Delhi-110001
2010
OPERATIONS RESEARCH
Nita H. Shah, Ravi M. Gor, and Hardik Soni
© 2007 by PHI Learning Private Limited, New Delhi. All rights reserved. No part of this book may be
reproduced in any form, by mimeograph or any other means, without permission in writing from the
publisher.
ISBN-978-81-203-3128-0
The export rights of this book are vested solely with the publisher.
Published by Asoke K. Ghosh, PHI Learning Private Limited, M-97, Connaught Circus,
New Delhi-110001 and Printed by Mudrak, 30-A, Patparganj, Delhi-110091.
Contents
Preface xi
iii
iv ® Contents
xi
xii ® Preface
to optimal solution. Hence, the concept of integer programming is introduced, followed by the
cutting-plane algorithm, branch-and-bound algorithm, and zero-one implicit enumeration technique.
The concept of achieving different goals in the order of priority to optimize the objective function
is discussed in goal programming. Non-linear programming problem techniques are given to
illustrate the Lagrangian method, Kuhn–Tucker conditions and quadratic programming. The various
criteria of decision making under certainty, uncertainty and risk are discussed in decision analysis.
These criteria, when extended to competitive situations among two opponents, lead to the theory of
games.
Four types of basic inventory models are explained to study different inventory strategies. The
concept of queuing system and its various disciplines are derived. The most crucial decision of
replacing part of a machine or the machine as a whole is discussed in replacement models. Dynamic
programming is then demonstrated in the context of inventory and queues. Under project
management, different techniques of analyzing the time involved in completing a project and the
related costs are presented after defining the prerequisites of networks. These tools are the key
components for effective scheduling of activities which, in turn, reduce the project completion time
and result in smooth resource allocation and resource levelling. The practical situations involving the
knowledge of an optimum order of doing jobs are discussed in sequencing problems. In some of the
complex problems, mathematical techniques could not be searched out. Therefore, simulation
approach for tackling such problems is discussed.
In this book easy-to-use algorithms are presented, illustrating different techniques of operations
research. Each chapter contains several fully worked-out problems and ends with exercises to give
the students an opportunity to hone their understanding of the important concepts involved.
This book is designed for the students of MBA/PGDBM, MCA, MA/MSc (Mathematics,
Statistics, Operations Research), MIT, MSc (IT), M.Com., CA, ICWA. It may be of great help to
the students who are preparing for competitive examinations like Civil Services and UGC-NET. The
concepts and results explained here can be applied to real-life industrial, business problems with
some changes as per the requirements.
We are thankful to our students whose queries helped us in making the various concepts of
operations research techniques more clear. We are also grateful to the editorial and production team
of Prentice-Hall of India for their cooperation and sincerity.
Finally, we are very thankful to our family members for their constant support and
encouragement, particularly during the prepartion of the manuscript. Dr. Ravi Gor conveys special
thanks to his kids Tosha and Mandaar, who have missed him very much during the preparation of
this book. Hardik Soni is thankful to D.M. Sikh, Director of Sardar Vallabhbhai Patel Education
Trust, for his cooperation.
Suggestions and constructive comments from the readers for improvement of the book are most
welcome.
NITA H. SHAH
RAVI M. GOR
HARDIK SONI
1
Why Operations
Research?
1.1 INTRODUCTION
Operations Research (OR) is a scientific approach to analyzing problems and making decisions. OR
professionals aim to provide rational bases for decision-making by seeking to understand and
structure complex situations, and to use this understanding to predict system behaviour and improve
system performance. Much of this work is done using analytical and numerical techniques to develop
and manipulate mathematical and computer models of organizational systems composed of people,
machines, and procedures.
Operations Research is a branch of mathematics used to provide a scientific base for
management to take timely and effective decisions. It possibly avoids the dangers arising from
decisions based on guesswork. The concept of management has basically two characteristics:
∑ Multidimensional: Because managerial problems and their probable solutions have
repercussions in several fields such as human, economic, social and political fields.
∑ Dynamic: A manager will never remain static while prevailing in the business.
Hence, any manager, while taking decisions, considers all aspects in addition to economic
aspect, to make his solution useful in every respect. The general approach is to analyze the problem
in every aspect and implement the solution only if it does not violate human, social and political
constraints.
Management problems can also be solved using quantitative approach. This approach requires
the problem to be properly defined and thoroughly analyzed. This includes collecting data, facts, and
information and then solving the problem in a rational and systematic way, based on analysis rather
on mere guesswork, or using trial and error methods. Operations research is primarily concerned
with helping managers and executives to arrive at better decisions.
Nowadays, managers are working in a dynamic environment. They require common sense,
experience and commitment in making decisions as they have to deal with systems with complex
1
2 ® Operations Research
interrelationship of various factors among them, as well as equally complicated dependence of the
criterion of effective performance of the system on these factors. The science of operations research
helps them take value–based decisions in such a dynamic environment.
The scope of quantitative methods is very broad. They are applied in defining the problems and
getting solutions of various organizations dealing with finance, manufacturing, services, etc.
Operational Research in practice is a team effort, requiring the close cooperation among
the decision-makers, the skilled OR analysts, and the people who will be affected by
management action.
Because of wide scope and numerous applications of operations research, different
mathematicians and researchers ended up giving different definitions. Although giving a precise
definition of operations research is not possible, here we discuss some of them.
Operations Research is the art of winning wars without actually fighting.
— Aurther Clarke
This definition is oriented towards warfare. It means that the directions and guidance come from
the minister or the king, according to which the war is fought and won.
Operations Research is the art of giving bad answers to problems where otherwise worse
answers are given.
— T.L. Satty
This definition covers one aspect of decision making, i.e. choosing the best among the available
alternatives. If the decisions are made on guesses, we may face the worse situation. But if the
decisions are made on a scientific basis, it will help us to make better decisions. Hence, this
definition deals with one aspect of decision-making and not clearly tells what operations research is.
Operations Research is Research into Operations.
— J. Steinhardt
This definition does not state anything in clear terms about the subject of Operations Research
and simply says that it is a research into operations. Operations may here be referred as military
activities or simply the operations that an executive performs in his organization while taking
decisions. Research means finding a new approach. That is, when an executive is involved in
performing his operations for taking decisions, he has to go for newer ways so that he can make a
better decision for the benefit of his organization.
Operations Research is defined as scientific method for providing executive department
quantitative basis for decisions regarding the operations under their control.
— P.M. Morse and G.E. Kimball
This definition suggests that Operations Research provides scientific methods to an executive to
make optimal decisions. But it does not give any information about various models or methods. This
suggests that executives can use scientific methods for decision-making.
Operations Research is the application of scientific methods, techniques and tools to the
operation of a system with optimum solution to the problem.
— Churchman, Ackoff and Arnoff
This definition clearly states that the Operations Research applies scientific methods to find an
optimum solution to the problem of a system. A system may be a production system or information
system or any system, which involves men, machine and other resources.
Operations Research is the application of the theories of Probability, Statistics, Queuing,
Games, Linear Programming etc., to the problems of war, Government and Industry.
4 ® Operations Research
This definition gives a list of various techniques used in Operations Research by various
managers to solve the problems. A manager has to study the problem, formulate the problem,
identify the variables and formulate a model and select an appropriate technique to get optimal
solution. We can say that Operations Research is a bunch of mathematical techniques to solve the
problems of a system.
Operations Research is applied decision theory. It uses any scientific, mathematical or
logical means to attempt to cope with problems that confront the executive, when he tries
to achieve a thorough going rationally in dealing with his decision problem.
— D.W. Miller and M.K. Starr
This definition also explains that Operations Research uses scientific methods or logical means
for getting solutions to the executive problems. It, too, does not give the characteristics of Operations
Research.
Besides these definitions, there are numerous definitions which explain what Operations
Research is. But many of them are not satisfactory because of the following reasons.
(a) Operations Research is not a well-defined science like Physics, Chemistry, etc. Hence none
of the definitions given above defines operations research precisely.
(b) In operations research, decisions are made by brain storming of people from various walks
of life. This indicates that operations research approach is an interdisciplinary one, which
is an important characteristic of operations research. This aspect is not included in many
of the definitions. Hence they are not satisfactory.
(c) These definitions are given by various people at different times and stages of development
of operations research. As such, they have considered the field in which they are involved.
Hence each definition is concentrating on one or two aspects. No definition is having a
universal approach.
sub-system will have its effect on other sub-systems. Say, for example, a decision taken by
department A will have its effect on department B. When dealing with Operations Research
problems, the system should be treated as a whole so that the interrelationship between sub-systems
and the effect of the problem on the entire system are kept in mind. Hence, Operations Research is
a systems approach.
The additional characteristics of operations research can be listed as follows:
∑ OR approaches problem solving and decision making from the total system perspective.
∑ OR not only necessarily uses interdisciplinary teams, but it is also interdisciplinary; it draws
on techniques from sciences like biology, physics, chemistry, mathematics and economics
and applies the appropriate techniques from each field to the system being studied.
∑ OR does not experiment with the system itself but constructs a model of the system for
conducting experiments.
∑ Model building and mathematical manipulation provide the methodology that has perhaps
been the key contribution to OR.
∑ The primary focus is on decision-making.
∑ Computers are used extensively.
aspect. This explains the exact use of a model. In military, the military officer explains to his soldiers
various aspects of the warfront by drawing neat sketches pictorially. This makes them easy to
understand the scenario in which they will be put in when they come across the real warfront. Hence,
a model allows explaining the aspect of the problem.
2. Predictive models: These models are based on the data collected. It predicts the possible
outcomes of the situation under question. For example, based on your performance in the
examination and the discussions and verification with your friends after the examination,
you can predict your results. This is one type of predictive model.
3. Prescriptive models: The predictive models predict the approximate results. But if the
predictions of these models are successful, then it can be used conveniently to prescribe the
courses of actions to be taken. In such cases, it is termed as prescriptive model. Prescriptive
models prescribe the courses of action to be taken by the manager to achieve the desired
goal.
model, Transportation model, Assignment model, Sequencing model etc. have well defined
mathematical structure and can be solved by different mathematical techniques. For
example, Resource allocation model can be solved by Graphical method or by Simplex
method depending on the number of variables involved in the problem.
2. Simulation models: To simulate is to duplicate the features of the problem in a working
model, which is then solved using well-known OR techniques. The results, hence, obtained
are tested for sensitivity analysis, after which these are applied to the original problem.
These models have a mathematical structure but cannot be solved by using mathematical
techniques. It needs certain experimental analysis.
Different jobs require different amounts of time on different machines and each job must be
processed on all the machines. In what order should the jobs be processed on all the machines so
as to minimize the total processing time of completing all the job. There are several variations of
the same problem, which can be evaluated by sequencing models with the different kinds of
optimization criterion. Hence, sequencing is primarily concerned with those problems in which the
efficiency of operations depends solely upon the sequence of performing a series of jobs.
Decisions may also be classified depending on the future situations. Some of them are shown
below:
∑ Decision making under certainty
∑ Decision making under uncertainty
∑ Decision making under risk
The first two are the two extremes and the third one falls between these two with certain probability
distribution.
Analytical method: When we use mathematical techniques such as differential calculus, probability
theory, etc. to find the solution of a given operations research model, the method of solving is known
as analytical method and the solution is known as analytical solution. Examples are problems of
inventory models. This method evaluates alternative policies efficiently.
Iterative method: This is a numerical method. When we have a large number of variables, and we
cannot use analytical methods successfully, we use iterative process. First, we set a trial solution and
then go on changing the solution under a given set of conditions, until no more modification is
possible. The characteristic of this method is that the trial and error method used is laborious,
tedious, time-consuming and costly. The solution we get may not be an accurate one and is an
approximate one. Many a time, we find that after certain number of iterations, the solution cannot
be improved and we have to accept it as the optimal solution.
Chapter 1: Why Operations Research? ® 13
Monte-Carlo method: This method is based on the random sampling of the values of the variables
from a distribution of the random variable. This uses sampling technique. A table of random
numbers must be generated to solve the problems. In fact, it is a simulation process.
In agriculture: The population of India is exploding day by day and hence the demand for food
products. And this is also a fact that the land available for agriculture is limited. So newer methods
are required for increasing agriculture yield. For the same reason, the selection of land area for
agriculture for sowing seeds of food grains must be cautiously done, so that it could result into dual
advantage: one to the farmer and the other to the users. The farmers should not experience losses
and the people should get their grains on right time and at right cost.
REVIEW EXERCISES
1. Trace the origin of operations research.
2. Discuss the objectives of operations research.
3. “Operations research is an interdisciplinary approach”. Comment.
4. What are operations research models? Discuss the advantages and limitations of operations
research models.
5. Discuss the operations research models.
6. What do you mean by decision-making? How operations research helps managers in
decision-making?
7. Briefly explain the characteristics of operations research.
8. Discuss the various steps used in solving operations research problems.
2
Prerequisite for
Operations Research
2.1 INTRODUCTION
The purpose of this chapter is to furnish the elementary concepts required in understanding
Operations Research. It covers some important topics on matrices and determinants, vectors and
linear algebra, convex sets, etc.
È1 2 3 ˘
È1 5˘ Ê 0 2 3ˆ Í ˙
Í ˙ Á ˜ Í5 9 7˙
Î 9 3˚ Ë1 5 6 ¯ Í3 4 6˙
Î ˚
Usually, a matrix is denoted by a capital letter such as A, B, C, etc. Matrix A is denoted by
17
18 ® Operations Research
Row ‘k’ of [A] has n elements and is [ak1 ak2 º akn] and column ‘j’ has m elements and is
È a j1 ˘
Í ˙
Í a j2 ˙
Í ˙
Í ˙
ÍÎ a jm ˙˚
The number of rows and columns defines the size of the matrix. If a matrix A has ‘m’ rows and
‘n’ columns, then the size of the matrix is denoted by m ¥ n. In the above examples, the size of the
matrix is 2 ¥ 2, 2 ¥ 3 and 3 ¥ 3, respectively.
The matrix is also denoted as A = [akj]m¥n to indicate that A is matrix with ‘m’ rows and ‘n’
columns. A matrix makes the presentation of numbers clearer and is simply used to convey
information in a concise manner that makes calculation easier.
Diagonal entries (or elements) of a matrix: The entries akj of a matrix A = [akj] for which k = j
are called diagonal entries (or elements) of A.
Sometimes the diagonal of the matrix is also called principal or main of the matrix.
Equality of two matrices: Two matrices A = [akj]m¥n and B = [bkj]r¥s are said to be equal if
m = r, n = s, and akj = bkj for all k and j.
Transpose of a matrix: Let A = [akj] be an m ¥ n matrix. Then transpose of A is a matrix B = [bkj]
with bkj = ajk for all k and j. That is, the k-th row and the j-th column element of A is the j-th row
and k-th column element of B. Thus, transpose of a matrix A is obtained by interchanging the rows
and columns of A. The transpose of A is denoted by AT or A¢, i.e. B = AT. Note that B would be an
n ¥ m matrix.
Row matrix: A matrix having only a single row is called a row matrix (or row vector). The size
of the row matrix is 1 ¥ n.
Matrix A = [1 5 7 9] is an example of row matrix of size 1 ¥ 4.
Column matrix: A matrix having only a single column is called a column matrix (or column
vector). The size of the row matrix is m ¥ 1.
Matrix A = [1 5 7 9]T is an example of column matrix of size 4 ¥ 1.
Square matrix: A matrix in which number of rows (m) is the same as number of columns (n),
i.e. m = n, is called a square matrix. In this case, matrix A is said to be of order n.
Null matrix: A matrix A = [akj] in which akj = 0 for all k and j, is called a null matrix. A null matrix
is denoted by O.
Symmetric matrix: A square matrix A with real entries in which akj = ajk for all k = j = 1, 2, …,
n is called a symmetric matrix. Equivalently, if A = AT, then A is a symmetric matrix.
Skew-symmetric matrix: A square matrix A with real entries in which akj = –ajk for all k = j = 1,
2, …, n is called a skew-symmetric matrix. Equivalently, if A = –AT, then A is a skew-symmetric
matrix.
Chapter 2: Prerequisite for Operations Research ® 19
Identity (or Unit) matrix: A square matrix of size ‘n’, whose all main diagonal elements are 1, and
off-diagonal elements are zero, that is, [akj], where akj = 1, k = j; and akj = 0, k π j is called identity
(or unit) matrix of order n, and is denoted by In.
(i) A(B + D) = AB + AD
(ii) (A + C)B = AB + CB
and the size of the resulting matrix on both sides is p ¥ r.
(c) a (AB) = (a A)B = A(a B) for any scalar a.
(d) IA = A = AI, that is, I is the multiplicative identity for matrix multiplication.
Note that matrix multiplication, in general, is not commutative, that is, AB π BA.
For example, consider the following matrices:
È 0 1˘
È1 5 7˘ Í ˙
A= Í ˙ and B = Í - 5 3˙
Î 3 0 -2 ˚ Í 4 -2 ˙
Î ˚
È 3 0 -2 ˘
È 3 2˘ Í ˙
Then AB = Í ˙ and BA = Í 4 - 25 - 41 ˙
Î -8 7 ˚ Í -4
Î 20 32 ˙˚
Let A = [akj] be matrix of order n. The minor of element akj is defined as the determinant of the
sub-matrix of A of size (n – 1) × (n – 1), where the sub-matrix is obtained by removing the k-th row
and j-th column of the matrix A. It is denoted by Mkj. The determinant is then given by
n
A = Â (-1) k+ j
akj M kj for j = 1, 2, …, n
k =1
The number (–1)k+j Mkj is known as cofactor of entry akj and it is denoted by Ckj.
For example, consider the following matrix.
È 1 2 1˘
Í ˙
A = Í 4 5 8˙
Í6 3 4˙
Î ˚
To determine the matrix of cofactors C, suppose
È - 4 32 - 18 ˘
Í ˙
C = Í -5 -2 9˙
Í 11 - 4 - 3 ˙˚
Î
È - 4 - 5 11 ˘
Í ˙
adj. A = Í 32 - 2 - 4 ˙
Í - 18 9 - 3 ˙˚
Î
We now state, without proof, one result which shows the relationship between A and adj. A.
Theorem 2.1 A (adj. A) = | A| I = (adj. A) A, I being identity matrix.
Ê adj. A ˆ Ê adj. A ˆ
Corollary 2.1: If |A| π 0 then A Á ˜ =I =Á ˜ A.
Ë A ¯ Ë A ¯
È 1 0 0 35 ˘
Í ˙
(ii) A = Í 0 1 0 4 ˙ is in reduced echelon form.
Í 0 0 1 8˙
Î ˚
È 1 0 0 5˘
Í ˙
(iii) A = Í 0 1 3 4 ˙ is not an echelon form.
Í 0 0 -1 9 ˙
Î ˚
Now, we are in a position to define rank of a matrix.
The number of non-zero rows of an echelon matrix is the rank of the matrix. The rank of the
matrix A is denoted by r (A).
Chapter 2: Prerequisite for Operations Research ® 23
È 1 2 1˘ È 1 2 1˘ È 1 2 1˘
Í ˙ R2 - 2 R1 Í ˙ Í ˙
Í 2 4 3 ˙ R - 3R Í 0 0 1 ˙ R3 - 2 R2 Í 0 0 1˙
Í 3 6 5˙ 3 1 Í0 0 2 ˙ Í0 0 0 ˙
Î ˚ Î ˚ Î ˚
Note: The rank of a matrix is equal to the number of linearly independent rows/columns of a
matrix.
The matrix obtained by adjoining constant column matrix to coefficient matrix is known as
augmented matrix. That is,
We now state, without proof, two important results which are often used.
1. A system AX = D of m linear equations in n unknowns is consistent if and only if the
coefficient matrix A and the augmented matrix [A|D] have same rank.
2. If r (A) = r ([A|D]) = r = n; the number of unknowns, then the system possesses unique
solution; and if r(A) = r ([A|D]) = r < n, then the infinite solution exists.
2.4.1 Definitions
A scalar is a real number. Scalars are denoted by normal letters.
An n-vector u is an ordered sequence of real numbers. For example, u = (x1, x2, x3,…, xn) is
a vector of an ordered n-tuple of real numbers. The real numbers x1, x2, x3, …, xn are called the
components of u.
An n-dimensional Euclidean space is defined as the collection of n-vectors. The n-dimensional
Euclidean space will be denoted by En. We shall confine our study to En.
For example, 3-dimensional vector u = (x1, x2, x3) is an ordered triplet of real numbers.
The length or magnitude of a vector u = (x1, x2, x3, …, xn) in En is given by
Note that, the magnitude of a vector is scalar. Vertical bars surrounding a boldface letter denote the
magnitude of a vector. Since the magnitude is a scalar, it can also be denoted by a normal letter;
u = || u || denotes the magnitude of a vector.
Suppose that c is a scalar and u = (x1, x2, x3, …, xn) is a vector. Then scalar multiplication is
defined by cu = c(x1, x2, x3, …, xn) = (cx1, cx2, cx3, …, cxn). Each component of the vector is
multiplied by the scalar. The magnitude of the vector cu is c times the magnitude of u.
Two vectors with the same dimension can be added to each other or subtracted from each other.
The result is another vector.
Chapter 2: Prerequisite for Operations Research ® 25
The sum of two vectors u = (x1, x2, x3, …, xn) and v = (y1, y2, y3, …, yn) is defined to be the
vector
u + v = (x1 + y1, x2 + y2, x3 + y3, …, xn + yn)
Subtracting v from u yields
u – v = (x1 – y1, x2 – y2, x3 – y3, …, xn – yn).
Unit vector is a vector whose magnitude is 1. The standard unit vector in En is denoted by ei
in which 1 occurs at i-th place and 0 elsewhere. That is, ei = (0, 0, …, 1, …, 0, 0).
Let u = (x1, x2, x3, …, xn) and v = (y1, y2, y3, …, yn). Then u is said to be greater than or equal
to v if xk ≥ yk for k = 1, 2, …, n. This is denoted by writing u ≥ v.
Note that, two vectors with same dimension can be order comparable.
Suppose we are given two vectors u1 and u2. The expressions like u1 + u2, u1 – u2, 5u1 + 7u2,
2u1 – 3u2, etc. can be obtained by performing the operations of addition and scalar multiplication.
Such vectors are called linear combination of vectors u1 and u2. More specifically, the vector
v = q1u1 + q2u2 is a linear combination of u1 and u2.
Thus, if {u1, u2, º, up} is a set of p vectors in En and {q1, q2, º, qp} is a set of p scalars, then
the vector v = q1u1 + q2u2 + º + qpup is a linear combination of the given set of vectors u1, u2, º,
up.
The notion of linear combination provides us the following definitions.
Let u1 and u2 be two points in En. The set L = {v/v = qu1 + (1 – q)u2}, (q Œ ) is defined as
a line in En passing through u1 and u2.
In E2, with usual notation v = (x, y) and u1 = (x1, y1) and u2 = (x2, y2), the definition gives
x = qx1 + (1 – q)x2, y = qy1 + (1 – q)y2, when rewrite in the form
x - x2 y - y2
= =q
x1 - x2 y1 - y2
which is a standard form of the equation of the line passing through two points (x1, y1) and
(x2, y2). By restricting q between 0 and 1 (both inclusive), we get the set of points lying on the line
segment between u1 and u2. That is, the set L = {v/v = qu1 + (1 – q)u2}(0 £ q £ 1) is called line
segment joining two points u1 and u2. When q = 0, we are at u1, when q = 1, we are at u2, and when
q = 1/2, we are at the mid-point of the line segment.
u1 and u2 that does not belong to S. The point of this equivalent definition is to include the empty
set within the definition of convexity. The definition also includes singleton sets where u1 and u2
have to be the same point and thus the line between u1 and u2 is the same point.
The set S in Figure 2.1 is convex, while the set T is not.
S T
Figure 2.1 Convex and non-convex sets.
EXAMPLE 2.1: The unit ball in En is convex. The ball is the set B = {u Œ En: || u || £ 1}.
Suppose that u and v are in B. Then
|| q u + (1 – q) v|| £ |q | || u || + |1 – q | || v ||
£ |q | + |1 – q | = 1
Thus q u + (1 – q)v Œ B, and so B is convex.
EXAMPLE 2.2: The set En is convex. But if we remove any point from En, then the resulting set
is no longer convex.
EXAMPLE 2.3: The set En is convex; so is the empty set and a one-point set.
1
|| q u + (1 – q ) v || = π1
2
EXAMPLE 2.5: Any (connected) interval [a, b], (a, b), [a, b), or (a, b] in R is convex, as the
reader can easily verify, where a and b can be finite or infinite. In fact, the finite interval [a, b] is
just the ball of radius (b – a)/2 about (a + b)/2, which is convex as we saw in Example 2.1. However,
if we remove a point from the interior of one of these intervals, the remaining set is no longer
convex. In fact, if we remove a point from the interior of any convex set, the resulting set is no
longer convex.
Chapter 2: Prerequisite for Operations Research ® 27
For example, En/{0} is not convex. The points (1, 0, º, 0) and (–1, 0, º, 0) are in the set, but
the midpoint of the line segment joining these points is not in the set.
EXAMPLE 2.6: The solution set S of a system of linear equalities Ax = b is convex. For if x1
and x2 are in S, then
A(q x1 + (1 – q )x2) = qAx1 + (1 – q )Ax2 = q b + (1 – q )b = b
Sets described as solutions to a system of linear equalities are affine sets.
An important property of convex sets is that intersection of convex sets is convex. As the reader
can easily verify, unions and complements of convex sets need not be convex.
Theorem 2.2: Let {Sa}a ŒI be a (possibly infinite) collection of convex sets. Then ∩ Sa is convex.
a ŒI
Convex linear combination: Let u1, u2, …, um be m points in En and let q1, q2, º, qm be
m
non-negative real numbers such that Âq j = 1 . Then
j =1
Theorem 2.3: A necessary and sufficient condition for a set S to be convex is that every convex
linear combination of points in S belongs to S.
28 ® Operations Research
Proof: Without loss of generality, we assume that S consists m points say u1, u2, …, um. Suppose
that any convex combination of u1, u2, …, um is also in S. This implies, any convex combination
of two points in S belongs to S. Hence, S is convex. The proof of converse is done by induction on
m
m, the number of elements in convex combination. Let S be a convex and v = Â q juj . The Theorem
j =1
is true for m = 1 by default and for m = 2 by the definition of convexity. We need only prove the
theorem for m = k + 1, under the inductive hypothesis that it is true for m = k.
Suppose that it is true for m = k.
k +1 k +1
Now consider v = Â q juj , Â q j = 1 , qj ≥ 0, j = 1, 2, …, k + 1
j =1 j =1
k +1 k qj
Case (ii): qk+1 > 0 fi v = Â q j u j = (1 - q k +1 ) Â (1 - q u j + q k +1uk +1
j =1 j =1 k +1 )
k +1 k
Since  q j = 1 fi  q j = 1 - q k +1
j =1 j =1
k qj
and so  (1 - q =1
j =1 k +1 )
k qj
So the vector z= Â (1 - q uj
j =1 k +1 )
is a convex combination of the k vectors u1, u2, …, uk. By the induction hypothesis, z is in S. By
the definition of convexity
v = (1 – qk+1)z + qk+1uk+1
is in S.
As we have just seen, a convex set contains all convex combinations of vectors in the set.
Similarly, given any collection of vectors, we can identify the convex set that they generate.
Convex hull: Let S be a set of vectors in En. The set of all convex combinations of every finite
subset of S is called the convex hull of S and is often written as [S].
For example, in Figure 2.3
Convex hull of is
Figure 2.3
Chapter 2: Prerequisite for Operations Research ® 29
Clearly, S itself is always contained in [S]. By Theorem 2.1, it follows that if S is convex, then
S = [S]. Theorem 2.3 also implies that if S is any set and if T is a convex set containing S, then
S Õ [S] Õ T.
This implies that [S] is the smallest convex set containing S; equivalently to say [S] is the “Convex
set generated by S”. This leads to an alternative definition of [S]: The convex hull of a set S is the
intersection of all convex sets containing S.
EXAMPLE 2.8: Let S be a set consisting of only two points. Then [S] is the line segment joining
given points.
EXAMPLE 2.9: For three points, the convex hull would be a triangle
with internal points and the convex hull of the set having four points is
either any quadrilateral or convex triangle (see Figure 2.4) with interior
part.
Theorem 2.4: If S Œ En, each vector in [S] can be written as the convex
combination of at most n + 1 vectors in S.
We omit the proof of this theorem. Figure 2.4
2.4.4 Hyperplanes
Hyperplane: Choose a vector a = (a1, a2, a3,…, an) π 0 in En and a scalar b. The set of the points
u = (x1, x2, x3, …, xn) satisfying a1x1 + a2x2 + … + anxn = b
a
i.e. H = {u Œ En: a ◊ u = b}
is called hyperplane in En. a◊u≥b
In E2, hyperplanes are straight lines. In E3, hyperplanes a◊u£b
are planes.
u
For any n, a hyperplane in En divides En into two half-
spaces, as pictured in Figure 2.5.
Note: If b = 0, then the hyperplane is said to pass through
the origin and its equation is then written as a1x1 + a2x2
+ … + anxn = 0. Figure 2.5
Closed (Open) half-spaces: The sets H– = {u Œ E : a ◊ u
n
£ b} and H+ = {u Œ En: a ◊ u ≥ b} are called closed half-spaces. If we replace the weak inequalities
with strict inequalities, we have open half-spaces. That is, the sets defined by {u Œ En: a ◊ u < b}
and {u Œ En: a ◊ u > b} are called open half-spaces.
It is easy to verify that all hyperplanes, open and closed half-spaces, are convex.
Polyhedral: A convex set is polyhedral if it is a solution set of finitely many linear inequalities and
equalities.
Let a1, a2, …, am denote m vectors in En, and let b1, b2,…, bm denote the corresponding scalars.
30 ® Operations Research
m
Let Hj = {uj Œ En: aj ◊ uj £ bj}. Each Hj is half-space. The set S = ∩ H j is a polyhedral convex
j =1
set. The set S is a set of solution to the system of inequalities:
Theorem 2.6: Let S be a closed convex set and x be a point not in S. Then there exists a
hyperplane, called a separating hyperplane, which contains x such that S is contained in one of the
half-spaces generated by the hyperplane.
Probability: Let S be the sample space. Let W be the class of events and let p be a real-valued
function defined on W (p : W Æ R). p is called probability measure and p(A) is called the probability
of the event A if p satisfies the following axioms:
1. 0 £ p(A) £ 1 for all A Œ W.
2. p(S) = 1.
3. For every finite or infinite sequence of disjoint events A1, A2, º
Ê • ˆ
p Á ∪ Ak ˜ = p(A1) + p(A2) + …
Ë k =1 ¯
Note: For finite sequence p1 + p2 + … + pn = 1.
Addition rule:
1. When A and B are mutually exclusive events,
p(A » B) = p(A) + p(B)
2. When A and B are not mutually exclusive events,
p(A » B) = p(A) + p(B) – p(A « B)
Multiplication rule:
1. When A and B are independent events,
p(A « B) = p(A) * p(B)
2. When A and B are dependent events, the probability of event B depending on the occurrence
of event A is called conditional probability and is written as p(B\A) to be read as the
probability of B given A.
p(A « B) = p(A) * p(B\A)
Baye’s theorem: If an event B occurs in conjunction with one of the n-mutually exclusive and
exhaustive events A1, A2, …, An the probability of Ak, k = 1, 2, …, n given B is
p( Ak « B)
P(Ak\B) = , k = 1, 2, …, n
p( B )
and p(B) = p(A1 « B) + p(A2 « B) + … + p(An « B).
EXAMPLE 2.10 A company has two plants to manufacture cars. Plant I manufactures 80% of the
car and plant II manufactures 20%. At plant I, 85% of the cars are rated standard quality and that
from plant II is 65%. What is the probability that the car selected at random from plant I is of
standard quality? What is the probability that the car selected at random from plant II is of standard
quality?
Solution: Let A be the event of drawing a car from plant I,
B be the event of drawing a car from plant II, and
C be the event of drawing a standard quality car from plant I or from plant II.
Then p(A) = 0.80, p(B) = 0.20, p(A « C) = 0.85 and p(B « C) = 0.65.
Now p(C) = p(A) * p(A « C) + p(B) * p(B « C) = 0.80 * 0.85 + 0.20 * 0.65 = 0.81.
So, p(A\C) = p(A) * p(A « C)/p(C) = 68/81 and
p(B\C) = p(B) * p(B « C)/p(C) = 13/81.
We will use these concepts and results throughout the book.
3
Linear Programming
3.1 INTRODUCTION
A typical mathematical program consists of a single objective function, representing either profits to
be maximized or costs to be minimized, and a set of constraints that circumscribe the decision
variables. In the case of a linear program (LP), the objective function and constraints are all linear
functions of the decision variables. At first glance these restrictions would seem to limit the scope
of the LP model, but this is hardly the case. Because of its simplicity, softwares are capable of
solving problems containing millions of variables and tens of thousands of constraints have been
developed. Countless real-world applications have been successfully modelled and solved using
linear programming techniques.
Linear programming is a widely used model type that can solve decision problems with
thousands of variables. Generally, the feasible values of the decision variables are limited by a set
of constraints that are described by mathematical functions of the decision variables. The feasible
decisions are compared using an objective function that depends on the decision variables. For a
linear program, the objective function and constraints are required to be linearly related to the
variables of the problem.
The examples in the forthcoming section illustrate that linear programming can be used in a
wide variety of practical situations. We illustrate how a situation can be translated into a
mathematical model, and how the model can be solved to find the optimum solution.
A linear programming problem (LPP) is a special case of a mathematical programming
problem. From an analytical perspective, a mathematical program tries to identify an extreme
(i.e. minimum or maximum) point of a function f(x1, x2, …, xn), which furthermore satisfies a set
of constraints, e.g. g(x1, x2, …, xn) ≥ b. Linear programming is the specialization of mathematical
programming to the case where both function f, to be called the objective function, and the problem
constraints are linear.
33
34 ® Operations Research
EXAMPLE 3.2 (Inspection problem): A company has two grades of inspector 1 and 2, who are
to be assigned for a quality control inspection. It is required that at least 2,000 pieces be inspected
per 8-hour day. Grade 1 inspector can check pieces at the rate of 40 pieces per hour with an accuracy
of 97%. Grade 2 inspector checks at the rate of 30 pieces per hour with an accuracy of 95%. The
wage rate of a Grade 1 inspector is Rs. 5 per hour while that of a Grade 2 inspector is Rs. 4 per
hour. An error made by an inspector costs Rs. 3 to the company. There are only nine Grade 1
inspectors and eleven Grade 2 inspectors available in the company. The company wishes to assign
work to the available inspectors so as to minimize the daily inspection cost.
Solution: Let x1 and x2 be the number of Grade 1 and Grade 2 inspectors doing inspections in a
company, respectively. Clearly x1, x2 ≥ 0.
One hour cost of inspection incurred by the company while employing an inspector = cost paid
to the inspector + cost of errors made during inspection. Thus, costs for
Inspector Grade 1 = 5 + 3 * 40 * (1 – 0.97) = Rs. 8.60
Inspector Grade 2 = 4 + 3 * 30 * (1 – 0.95) = Rs. 8.50
The inspectors of both the grade work for 8 hours a day. So the objective function (to minimize daily
inspection cost) is
Minimize C = 8(8.60x1 + 8.50x2) = 68.80x1 + 68.00x2
Now the constraint of the inspection capacity of the inspectors for 8-hours is
8 * 40x1 + 8 * 30x2 ≥ 2000
Also, the company has only nine Grade 1 inspectors and eleven Grade 2 inspectors. So we have
x1 £ 9 and x2 £ 11.
Thus, LPP is
Minimize C = 68.80x1 + 68.00x2
subject to the constraints:
320x1 + 240x2 ≥ 2000
x1 £ 9
x2 £ 11
and x1, x2 ≥ 0.
EXAMPLE 3.3: A pharmaceutical company produces two products: A and B. Production of both
products requires the same process, I and II. The production of B results also in a by-product C at
no extra cost. The product A can be sold at a profit of Rs. 3 per unit and B at a profit of Rs. 8 per
unit. Some of this by-product can be sold at a unit profit of Rs. 2, the remainder has to be destroyed
and the destruction cost is Rs. 1 per unit. Forecasts show that only up to 5 units of C can be sold.
The company gets 3 units of C for each unit of B produced. The manufacturing times are 3 hours
per unit for A on process I and II, respectively, and 4 hours and 5 hours per unit for B on process
I and II, respectively. Because the product C results from producing B, no time is used in producing
C. The available times are 18 and 21 hours of process I and II, respectively. Formulate this problem
as an LP model to determine the quantity of A and B which should be produced, keeping C in mind,
to make the highest total profit to the company.
Chapter 3: Linear Programming ® 37
Solution: Let x1 units of product A be produced and x2 units of product B be produced. Let x3 and
x4 units of product C be produced and destroyed respectively.
It is given that the company gets a profit of Rs. 3 per unit of product A, Rs. 8 per unit of product
B, Rs. 2 per unit of product C and looses Re. 1 for destroying one unit of the product C. So the
objective function is
Maximize profit P = 3x1 + 8x2 + 2x3 – x4
Manufacturing constraints for products A and B are
3x1 + 4x2 £ 18
3x1 + 5x2 £ 21
Manufacturing constraints for by-product C are
x3 £ 5
–3x2 + x3 + x4 = 0
and x1, x2, x3, x4 ≥ 0.
EXAMPLE 3.4 A company, engaged in producing tinned food, has 300 trained employees on the
rolls, each of whom can produce one can of food in a week. Due to the developing taste of the public
for this kind of food, the company plans to add to the existing labour force by employing 150 people,
in a phased manner, over the next five weeks. The newcomers would have to undergo a two-week
training programme before being put to the work. The training is to be given by employees from
among the existing ones and it is known that one employee can train three trainees. Assume that
there would be no production from the trainers and the trainees during the training period as the
training is off-the-job. However, the trainees would be remunerated at the rate of Rs. 300 per week,
same rate as for the trainers.
The company has booked the following orders to supply during the next five weeks:
Week : 1 2 3 4 5
No. of cans : 280 298 305 360 400
Assume that the production in any week would not be more than the number of cans ordered
for, so that every delivery of the food would be ‘fresh’.
Formulate this problem as an LP model to develop a training schedule that minimizes the labour
cost over the five-week period.
Solution: Let x1, x2, x3, x4 and x5 be the number of trainees appointed in the beginning of the week
1, 2, 3, 4 and 5, respectively. The objective is to minimize the total labour force, i.e.
Minimize Z = 5x1 + 4x2 + 3x3 + 2x4 + x5
subject to the capacity constraints:
300 – (x1/3) ≥ 280; 300 – (x1/3) – (x2/3) ≥ 298
300 + x1 – (x2/3) – (x3/30) ≥ 305; 300 + x1 + x2 – (x3/3) – (x4/3) ≥ 360
300 + x1 + x2 + x3 – (x4/3) – (x5/3) ≥ 400
38 ® Operations Research
EXAMPLE 3.5: A manufacturer of biscuits is considering four types of gift packs containing three
types of biscuits: Orange cream (OC), Chocolate cream (CC) and wafers (W). A market research
study conducted recently to assess the preference of the consumers shows the following types of
assortments to be in good demand:
For the biscuits, the manufacturing capacity and costs are given below:
Formulate this problem as an LP to find the production scheduling which maximizes the profit
assuming that there are no market restrictions.
Solution: Let for gift pack A,
x(A, OC) be the number of kg of OC in A
x(A, CC) be the number of kg of CC in A
x(A, W) be the number of kg of W in A
For gift pack B,
x(B, OC) be the number of kg of OC in B
x(B, CC) be the number of kg of CC in B
x(B, W) be the number of kg of W in B
Chapter 3: Linear Programming ® 39
EXAMPLE 3.6: A businessman is opening a new restaurant and has budgeted Rs. 8,00,000 for
advertisement in the coming month. He is considering four types of advertising:
(a) 30 second television commercials
(b) 30 second radio commercials
(c) Half-page advertisement in a newspaper
(d) Full-page advertisement in a weekly magazine which will appear four times during the
coming month.
40 ® Operations Research
The owner wishes to reach families with income both over and under Rs. 50,000. The amount
of exposure to families of each type and the cost of each of the media is shown below:
To have a balanced campaign, the owner has determined the following restrictions:
(a) No more than four television advertisements
(b) No more than four advertisements in the magazine
(c) No more than 60% of all the advertisements in newspaper and magazine
(d) There must be at least 45,00,000 exposures to families with incomes under Rs. 50,000.
Formulate this problem as an LP model to determine the number of each type of advertisement to
pursue so as to maximize the total number of exposures.
Solution: Let x1, x2, x3 and x4 be the number of television, radio, newspaper and magazine
advertisements to pursue, respectively. x1, x2, x3 and x4 ≥ 0. The objective is to maximize the total
number of exposures, i.e.
Maximize E = (2,00,000 + 3,00,000)x1 + (5,00,000 + 7,00,000)x2
+ (3,00,000 + 1,50,000)x3 + (1,00,000 + 1,00,000)x4
= 5,00,000x1 + 12,00,000x2 + 4,50,000x3 + 2,00,000x4
subject to the constraint:
available budget
40,000x1 + 20,000x2 + 15,000x3 + 5,000x4 £ 8,00,000
Maximum television advertisement
x1 £ 4
Maximum magazine advertisement
x4 £ 4
Maximum newspaper and magazine advertisement
x3 + x4
£ 0.06, i.e. –0.6x1 – 0.6x2 + 0.4x3 + 0.4x4 £ 0
x1 + x2 + x3 + x4
Exposure to families with income under Rs. 50,000
2,00,000x1 + 5,00,000x2 + 3,00,000x3 + 1,00,000x4 ≥ 45,00,000
EXAMPLE 3.7: XYZ is an investment company. To aid in its investment decision, the company
has developed the investment alternatives for a 10-year period, as given in the following table. The
return on investment is expressed as an annual rate of return on the invested capital. The risk
Chapter 3: Linear Programming ® 41
coefficient and growth potential are subjective estimates made by the portfolio manager of the
company. The term investment is the average length of time period required to realize the return on
investment as indicated.
The objective of the company is to maximize the return on its investments. The guidelines for
selecting the portfolio are:
(a) The average length of the investment for the portfolio should not exceed 7 years.
(b) The average risk for the portfolio should not exceed 5.
(c) The average growth potential for the portfolio should be at least 10%.
(d) At least 10% of all available funds must be retained in the form of cash at all times.
Formulate this problem as an LP model to maximize total return.
Solution: Let xk be the proportion of funds to be invested in the k-th alternative (k = 1, 2, …, 7).
The objective function is
Maximize (total return) R = 0.03x1 + 0.12x2 + 0.09x3 + 0.20x4 + 0.15x5 + 0.06x6 + 0.00x7
subject to the constraint
(a) 4x1 + 7x2 + 8x3 + 6x4 + 10x5 + 3x6 + 0x7 £ 7
(b) x1 + 5x2 + 4x3 + 8x4 + 6x5 + 3x6 + 0x7 £ 5
(c) 0x1 + 0.18x2 + 0.10x3 + 0.32x4 + 0.20x5 + 0.07x6 + 0.00x7 ≥ 0.10
(d) x7 ≥ 0.10
(e) Proportion of funds
x1 + x2 + x3 + x4 + x5 + x6 + x7 = 1
and x1, x2, x3, x4, x5, x6, x7 ≥ 0.
EXAMPLE 3.8 An agriculturist has a farm with 126 acres. He produces radish, pea and potato.
Whatever he raises is fully sold in the market. He gets Rs. 5 for radish per kg, Rs. 4 for pea per kg
and Rs. 5 for potato per kg. The average yield is 1,500 kg of radish per acre, 1,800 kg of pea per
acre and 1,200 kg of potato per acre. To produce each 100 kg of radish and pea and to produce each
80 kg of potato, a sum of Rs. 12.50 has to be used for manure. Labour required for each acre to raise
the crop is 6-man-days for radish and potato each and 5-man-days for pea. A total of 500 man-days
of labour at a rate of Rs. 40 per man-day are available. Formulate this problem as an LP model to
maximize the agriculturist’s total profit.
42 ® Operations Research
Solution: Let x1, x2, x3 be the number of acres allocated for radish, pea and potato, respectively.
x1, x2, x3 ≥ 0.
Thus LPP is
Maximize P = 7072.50x1 + 6775x2 + 5572.50x3
subject to
Land constraint: x1 + x2 + x3 £ 125
Labour constraint: 6x1 + 5x2 + 6x3 £ 500
and x1, x2, x3 ≥ 0.
EXAMPLE 3.9: A Mutual Fund company has Rs. 20 lakhs available for investment in
government bonds, blue chip stocks, speculative stocks and short-term bank deposits. The annual
expected return and risk factor are given below:
Mutual fund is required to keep at least Rs. 2 lakhs in short-term deposits and not to exceed an
average risk factor of 42. Speculative stocks must be at most 20 % of the total amount invested. How
should mutual fund invest the funds so as to maximize its expected annual return? Formulate this
problem as an LPP so as to optimize return on the investment.
Solution: Let x1, x2, x3 and x4 be the amount of funds to be invested in government bonds, blue
chip stocks, speculative stocks and short-term bank deposits, respectively. x1, x2, x3, x4 ≥ 0. The
objective is to maximize annual return, i.e.
Maximize R = 0.14x1 + 0.19x2 + 0.23x3 + 0.12x4
subject to
Total fund constraint: x1 + x2 + x3 + x4 £ 20,00,000
Liquidity constraint: x4 ≥ 2,00,000
Average risk factor constraint:
Investment in speculative stock constraint: x3 £ 0.2(x1 + x2 + x3 + x4) i.e.
–0.2x1 – 0.2x2 + 0.8x3 – 0.2x4 £ 0
and x1, x2, x3, x4 ≥ 0.
Chapter 3: Linear Programming ® 43
EXAMPLE 3.10 Two alloys A and B are made from four different metals I, II, III and IV
according to the following specifications:
A: at most 80 % of I B: between 40 % and 60 % of II
at most 30 % of II at least 30 % of III
at most 50 % of III at most 70 % of IV
The four metals are extracted from different ores whose constituents % of these metals,
maximum available quantity, and cost per tonne are given below:
Assuming the selling prices of alloys A and B are Rs. 200 and Rs. 300 per tonne respectively,
formulate this problem as an LP model, selecting appropriate objective and constraints.
Solution: Given that two alloys, A and B, are to be manufactured. Let x(1, A), x(2, A), …, be used
for producing A or B from I, II, III or IV as shown in the given data table.
Maximize
P = 200A + 300B – {30(x(1, A) + x(1, B)) + 40(x(2, A) + x(2, B)) + 50(x(3, A) + x(3, B))}
subject to
Alloy specification for A
0.2x(1, A) + 0.1x(2, A) + 0.5x(3, A) £ 0.8A
0.1x(1, A) + 0.2x(2, A) + 0.05x(3, A) £ 0.3A
0.3x(1, A) + 0.3x(2, A) + 0.2x(3, A) £ 0.5A
Material balance for A
0.6x(1, A) + 0.6x(2, A) + 0.3x(3, A) £ A
Alloy specification for B
0.1x(2, B) + 0.2x(3, B) + 0.05x(4, B) £ 0.4B
0.1x(2, B) + 0.2x(3, B) + 0.05x(4, B) £ 0.6B
0.3x(2, B) + 0.3x(3, B) + 0.07x(4, B) ≥ 0.3B
0.3x(2, B) + 0.3x(3, B) + 0.2x(4, B) £ 0.7B
Material balance for B
0.7x(2, B) + 0.8x(3, B) + 0.95x(4, B) = B
x(1, A) + x(2, B) £ 1000
x(2, A) + x(3, B) £ 2000
x(3, A) + x(4, B) £ 3000
EXAMPLE 3.11: Suppose a media specialist has to decide on the allocation of advertising in three
media vehicles. Let xk be the number of messages carried in the media, k = 1, 2, 3. The unit costs
of message in the three media are Rs. 1000, Rs. 750 and Rs. 500. The total budget available is
44 ® Operations Research
Rs. 2,00,000 for the campaign period of one year. The first media is a monthly magazine and it is
desired to advertise not more than one insertion in one issue. At least six messages should appear
in second media. The number of messages in the third media should strictly lie between 4 and 8.
The expected effective audience for unit message in the media vehicles is shown below:
Formulate this problem as an LP model to determine the optimum allocation that would maximize
total effective audience.
Solution: Let x1, x2 and x3 be the number of messages carried in media 1, 2 and 3, respectively.
x1, x2, x3 ≥ 0.
Maximize E = 80,000x1 + 60,000x2 + 45,000x3
subject to the constraints:
1,000x1 + 750x2 + 500x3 £ 2,00,000
x1 £ 12; x2 ≥ 6; 4 £ x3 £ 8
EXAMPLE 3.12: A wine maker has a stock of three different wines with the following
characteristics:
A good dry table wine should be between 30 and 31 degree proof, it should contain 25% acid
and should have a specific gravity at least 1.06. The wine maker wishes to blend the three types of
wine to produce as large a quantity as possible of a satisfactory dry table wine. However, his stock
of wine A must be completely used in the blend because further storage would cause it to deteriorate.
What quantities of wines B and C should be used in the blend? Formulate this problem as an
LP model.
Solution: Let x1 and x2 the number of gallons of wine B and C to be blended respectively.
Maximize Z = 20 + x1 + x2
subject to
(20 ¥ 27) + 33 x1 + 32 x2
Resultant degrees proof of blend: 30 £ £ 31
20 + x1 + x2
(20 ¥ 0.32) + 0.2 x1 + 0.3 x2
Acidity constraint: ≥ 0.25
20 + x1 + x2
Chapter 3: Linear Programming ® 45
EXAMPLE 3.13 A paint manufacturing company manufactures paints at two plants. Firm orders
have been received from three large contractors. The firm has determined that the following shipping
cost data is appropriate for these contractors with respect to its two plants:
Each gallon of paint must be blended and tinted. The company’s costs with two operations at
each of the two plants are as follows:
The akj, bk and cj are assumed to be known constants. It is assumed that the variable xj can take
any non-negative values allowed by Eqs. (3.1) and (3.2). These non-negative values can be any real
number. If the additional restriction is imposed that the variables must be integer, then linear
programming problem is regarded as integer programming problem. We will discuss about integer
programming problem in Chapter 4.
Thus, LPP is
Optimize Z = c1x1 + c2x2 + + cnxn (3.3)
subject to the constraints
ak1x1 + ak2x2 + + aknxn{≥, =, £}bk, k = 1, 2, …, m (3.4)
and xj ≥ 0, j = 1, 2, …, n (3.5)
variable. Similarly, consider an inequality of the form ak1x1 + ak2x2 + + aknxn ≥ bk. Introduce a
Chapter 3: Linear Programming ® 47
n n
variable sn+k = - bk +  akj x j ≥ 0. So that  akj x j - sn + k = bk . Such a variable sn+k is known as
j =1 j =1
a surplus variable. To each slack and/or surplus variable, assign a cost coefficient of zero in the
objective function.
Note: Original variables and slack/surplus variables are known as legitimate variables associated
with given LPP.
After introducing slack/surplus variables, any given LPP can be expressed as under:
Maximize Z = c1x1 + c2x2 + + cnxn
subject to the constraints
ak1x1 + ak2x2 + + aknxn + sn+k = bk, k = 1, 2, …, m
and xj ≥ 0, j = 1, 2, …, n + k
Note: Bold face represents vector with a proper dimension.
Using matrix notations, above LPP in canonical form as well as standard form can be expressed
as follows:
Canonical form: Maximize (Minimize) Z = cTx subject to Ax £ (≥) b, x ≥ 0.
Standard form: Maximize (Minimize) Z = cTx subject to Ax = b, x ≥ 0.
where c, x Œ Rn, b Œ Rm and A = (aij)m×n is a real valued matrix with rank equal to m £ n. Thus,
A will have m-linearly independent columns.
Let us introduce some definitions for our standard LPP:
Solution: Any x Œ Rn which satisfies Ax = b is a solution.
Feasible solution: Any x Œ Rn which satisfies Ax = b, x ≥ 0 is called a feasible solution to the
given LPP.
The set SF = {x Œ Rn: Ax = b, x ≥ 0} is known as the set of all feasible solutions.
Basic solution: Any solution x in which at most m-variables are non-zero is called a basic solution.
Basic feasible solution: Any feasible solution x Œ Rn in which k (£ m) variables have positive
values and the rest (n – k) have zero values is called a basic feasible solution. If k = m, the basic
feasible solution is called non-degenerate. If k < m, the basic feasible solution is called degenerate.
Our aim is to obtain a basic feasible solution to given LPP which optimizes the objective
function.
Optimum solution: Any feasible solution, x Œ Rn which optimizes the objective function Z = cTx
is known as the optimum solution to the given LPP.
Optimum basic feasible solution: A basic feasible solution is said to be optimum if it optimizes the
objective function.
Unbounded solution: If the value of the objective function can be increased or decreased infinitely
without violating the constraints, then the solution is known as unbounded solution.
Let us discuss some of the fundamental results.
Consider LPP:
Maximize (Minimize) Z = cTx subject to Ax = b, x ≥ 0
Let SF = {x Œ Rn: Ax = b, x ≥ 0} denote the set of all feasible solutions.
48 ® Operations Research
Theorem 3.2: Suppose the set SF of feasible solutions to the given LPP is non-empty, then the basic
feasible solution to the LPP (if it exists) lies at the vertex of a convex polygon.
Proof: Suppose SF has p-vertices (say) x1, x2, …, xp. Let x0 be the basic feasible solution to given
LPP. Two cases may arise:
Case (i): x0 is vertex of convex polygon. Then, the result is obvious.
Case (ii): Let x0 be interior point of vertex of SF. Then x0 can be expressed as convex
combination of its vertices. That is there exists scalars l1, l2, …, lp with 0 £ lj £ 1, 1 £ j £ p and
p p
 l j = 1 such that x0 =  lj x j (3.6)
j =1 j =1
Since x0 is optimum, we have
cTx0 ≥ cTxj for all 1 £ j £ p (3.7)
In particular, let x0 be such that
cTxm ≥ cTxj for all 1 £ j £ p (3.8)
From Eqs. (3.7) and (3.8), c x0 ≥ c xm
T T
(3.9)
Again, cTxm ≥ cTxj for all 1 £ j £ p then ljcTxm ≥ ljcTxj for all 1 £ j £ p.
p p p
lj cTxm ≥  l j cT x j implies cTxm  l j ≥ cT  lj x j
j =1 j =1 j =1
i.e cTxm ≥ cTx0 (3.10)
From Eqs. (3.9) and (3.10), it follows that cTx0 = cTxm.
Thus, there always exists a vertex xm Œ SF such that cTxm is optimum value. Thus, if a basic
feasible solution to a given LPP exists then one of the vertex will give optimum value to the
objective function.
Theorem 3.4: If the convex set of the feasible solution of Ax = b, x ≥ 0 is a convex polyhedron,
then at least one of the extreme points gives a basic feasible solution.
If the basic feasible solution occurs at more than one extreme point, the value of the objective
function will be same for all convex combinations of these extreme points.
Proof: Let x1, x2, …, xk be the extreme points of the feasible region F of the LPP defined in
Eqs. (3.3)–(3.5). Suppose xm is the extreme point among x1, x2, …, xk at which the value of the
objective function is maximum (say Z*). Then
Z* = cTxm (3.11)
Now, consider a point x0 Œ SF, which is not an extreme point and let Z0 be the corresponding value
of the objective function. Then,
Z0 = cTx0 (3.12)
Since x0 is not an extreme point, it can be expressed as a convex combination of the extreme points
x1, x2, …, xk of the feasible region F where F is assumed to be a closed and bounded set. Then there
k
exists scalars l1, l2, …, lk with  l j = 1, 0 £ lj £ 1, 1 £ j £ k such that x0 = l1x1 + l2x2 +
j =1
+ lk xk. Therefore Eq. (3.12) becomes
Z0 = cT{l1x1 + l2x2 + + lk xk} = l1cTx1 + l2cTx2 + + lkcTxk £ cTxm, i.e. Z0 £ Z* (from
Eq. (3.11)) which implies that an optimum solution, the extreme point solution is better than any
feasible solution in F.
Second part of the Theorem: Let x1, x2, …, xr (r £ k) be the extreme points of the feasible region
F at which the objective function assumes the same optimum value. This means Z* = cTx1 = cTx2
= … = cTxr.
r
Further, let x = l1x1 + l2x2 + + lrxr, Â lj = 1, 0 £ lj £ 1, 1 £ j £ r be the convex
j =1
combination of x1, x2, …, xr. Then,
cTx = cT{l1x1 + l2x2 + + lrxr} = l1cTx1 + l2cTx2 + + lrcTxr
r
= l1Z* + l2Z* + + lr Z* = Z* Â l j = Z*
j =1
which completes the proof.
Theorem 3.5 If there exists a feasible solution to the LPP, then there exists a basic feasible
solution to a given LPP.
Proof: Consider Maximize Z = c1x1 + c2x2 + + cnxn.
subject to the constraints
a1x1 + a2x2 + + anxn = b where ajT = (aj1, aj2, …, ajn) is j-th column of A.
Suppose that there exists a feasible solution to above LPP in which k > m variables have positive
values. WLOG, we assume that first k-variates have positive values. Then a1x1 + a2x2 +
+ anxn = b. For each aj Œ Rm, {a1, a2, …, ak} forms a dependent set. Assume that xr π 0 and ar is
linear combination of the remaining vectors of the set. So there exists scalars a1, a2, …, ar–1, ar+1,
k
…, ak such that  a ja j = 0 implies
j =1
50 ® Operations Research
k k Ê aj ˆ
 a j a j + a r ar = 0 i.e. ar =  Á - a ˜ aj
Ë
j =1 j =1 r ¯
j πr j πr
k k Ê aj ˆ
We have ar xr +  a jx j = b i.e. ar xr + xr  Á- a
Ë
˜ aj = b
¯
j =1 j =1 r
j πr j πr
k È Ê aj ˆ ˘
i.e. Â Íxj + Á - ˜ xr ˙ a j = b
Ë a r ¯ ˙˚
j =1 ÎÍ
j πr
Ê aj ˆ
Put x ¢j = x j + Á - ˜ xr
Ë ar ¯
k
Then  x ¢j a j = b
j =1
j πr
Thus, x¢j gives a new solution to given LPP which depends on (k – 1)—variables. In order that the
new solution is feasible, we require x¢j ≥ 0.
Ê aj ˆ
Clearly, xj + Á - ˜ xr ≥ 0, j = 1, 2, … , k
Ë ar ¯
Êaj ˆ xr xj
So x j ≥ Á ˜ xr or £ , a j π 0.
Ë ar ¯ ar aj
xr ÏÔ x j ¸Ô
Thus, if we choose ar such that = min Ì , a j π 0 ˝ then the solution will also be feasible.
ar j Ôa j
Ó Ô˛
Thus, we get a new feasible solution in which (k – 1) — variables have positive values. This process
can be continued till we get a feasible solution in which m — variables have positive values.
Now let us discuss methods of solving LPP.
Step 3: List all extreme points of the feasible region. Evaluate the values of the objective function
at each extreme point, and the extreme point of the feasible region that optimizes (maximize or
minimize) the objective function value is the required basic feasible solution.
45 80
X1
Figure 3.1
x1 + x2 £ 4
0 £ x1 £ 5/2
0 £ x2 £ 3/2
and x1, x2 ≥ 0.
Solution: The vertices of the convex polygon in Figure 3.2 are (0, 1.5), (2.5, 0.25), (2.5, 1.5). The
values of the objective function z are 4.5, 18.25, 22, respectively of which maximum is 22, obtained
at (2.5, 1.5).
4 Constraints
Isoprofit line
X2 2.5, 1.5
1.5
2.5 3 4
X1
Figure 3.2
X2 20
10 15 40
X1
Figure 3.3
Chapter 3: Linear Programming ® 53
X2
20 90
X1
Figure 3.4
10
Constraints
8.3333 Isoprofit line
X2
6.25, 0
6.25 9
X1
Figure 3.5
EXAMPLE 3.19: A firm makes two products X and Y, and has a total production capacity of 9
tonnes per day, X and Y requiring the same production capacity. The firm has a permanent contract
to supply at least 2 tonnes of X and at least 3 tonnes of Y per day to another company. Each tonne
of X requires 20 machine hours of production time and each tonne of Y requires 50 machine hours
of production time. The daily maximum possible number of machine hour is 360. All the firm’s
output can be sold, and the profit made is Rs. 80 per tonne of X and Rs. 120 per tonne of Y. It is
required to determine the production schedule for maximum profit and to calculate this profit.
54 ® Operations Research
Solution: Let x1 and x2 be the number of units (in tonnes) of product X and Y to be manufactured.
Using steps of formulation of LP as discussed in Section 3.2, the LPP is
Maximize P = 80x1 + 120x2
subject to the production constraints:
x1 + x2 £ 9
x1 ≥ 2
x2 ≥ 3
Machine hour constraints:
20x1 + 50x2 £ 360
and x1, x2 ≥ 0.
The coordinates of the extreme points of the shaded feasible region in Figure 3.6 are (2, 3), (6,
3), (3, 6) and (2, 6.4). The values of the profit function P at these vertices are 520, 840, 960 and
928, respectively. The maximum profit of Rs. 960 occurs at (3, 6). Hence, the company should
produce three tonnes of product X and six tonnes of product Y in order to get maximum profit of
Rs. 960.
9
Constraints
7.2 Isoprofit line
3, 6
X2
2 9 18
X1
Figure 3.6
EXAMPLE 3.20: The manager of an oil refinery must decide on the optimal mix of two possible
blending process, of which the inputs and outputs per production run are as follows:
The maximum amounts available for crudes A and B are 200 units and 150 units, respectively.
Market requirements show that at least 100 units of gasoline X and 80 units of gasoline Y must be
produced. The profits per production run for process 1 and process 2 are Rs. 300 and Rs. 400,
respectively. Solve the LPP by the graphical method.
Chapter 3: Linear Programming ® 55
Solution: Let x1 and x2 be the number of production runs for process 1 and process 2, respectively.
We need to solve the LPP
Maximize P = 300x1 + 400x2
subject to the
(i) Input constraints: 5x1 + 4x2 £ 200 and 3x1 + 5x2 £ 150
(ii) Output constraints: 5x1 + 4x2 ≥ 100 and 8x1 + 4x2 ≥ 80
and x1, x2 ≥ 0.
The feasible region in Figure 3.7 is the shaded region with vertices (20, 0), (40, 0), (30.77,
11.54), (0, 30) and (0, 25). The corresponding values of the profit is 6000, 12000, 13846.15, 12000
and 10000, respectively. The profit of Rs. 13846.15 is maximum if the manager of the oil refinery
produces 30.77 units under process 1 and 11.54 units under process 2.
50
Constraints
Isoprofit line
30
X2 25
20
30.77, 11.54
10 20 40 50
X1
Figure 3.7
6
Constraints
5 Isoprofit line
X2
6, 0
6 10
X1
Figure 3.8
Solution: The feasible region in Figure 3.9 suggests that the given LP has an unbounded
solution.
Constraints
3
Isoprofit line
2
X2
X1
Figure 3.9
Chapter 3: Linear Programming ® 57
7
Constraints
Isoprofit line
4
X2
2 3
X1
Figure 3.10
100 Constraints
55
X2
40
73.3333 80 100
X1
Figure 3.11
100
Constraints
Isoprofit line
55
X2
40
60, 10
73.333 80 100
X1
Figure 3.12
Consider LPP:
Maximize (Minimize) Z = cTx subject to Ax = b, x ≥ 0. Assume that the rank of (A, b) = rank
of A equal to m but less than or equal to n. This means that the set of constraint equation is
consistent, all m-rows of A are linearly independent and the number of constraints are less than or
equal to the number of decision variables. Further, Ax = b, can be written as
x1a1 + x2a2 + + xnan = b
i.e. aj is the column of A associated with the variables xj, j = 1, 2, …, n. Since rank of A is equal
to m less than n, there are m-linearly independent columns of A. These m-linearly independent
columns of A will form a basis in Rm. Let B : m × m denote the matrix formed by m-linearly
independent columns of A, then B = (b1, b2, …, bj, …, bm) will represent the basis matrix. Obviously,
B : m ¥ m will be non-singular so that B–1 exists. Any column (say) bi of B is some column (say)
aj of A. Note that it is not necessary that the arrangement of column in B should be in accordance
with those of A.
Any vector aj Œ A can be expressed as a linear combination of columns of B, i.e. for any
aj Œ A, there exists scalars y1j, y2j, …, ymj such that
m
aj = Â yij bi or aj = Byj, j = 1, 2,…, n
j =1
The quantity zj – cj (or cj – zj), j = 1, 2, …, n is known as net evaluations. After obtaining a basic
feasible solution, check the following:
1. Whether the basic feasible solution is optimum or not and
2. If not, to obtain a new improved basic feasible solution. This can be done by removing one
of the basic vectors from the matrix B = (b1, b2,…, br,…, bm) and inserting a non-basic
vectors of A = (a1, a2,…, aj,…, an) in its place.
The problem is, “Which basic variable should be removed from B and which of the non-basic
variable should be introduced in its place ?”
Suppose we remove a basic vector br from B and introduce a non-basic vector aj Œ A in its
place. Let B* denote the non-basic matrix obtained by replacing aj in place of br then
B* = (b1, b2,…, br–1, aj, br+1,…, bm)
= (b1, b2,…, br–1, br + aj – br, br+1,…, bm)
= (b1, b2,…, br–1, br, br+1,…, bm) + (0, 0,…, 0, aj – br, 0,…, 0)
Therefore, B = B + (aj – br) eTr where eTr Œ Rm is the r-th unit vector in Rm. This gives
*
In order that B*–1 can be obtained, the necessary condition is yrj π 0. Thus, aj can replace br if and
only if yrj π 0. The new solution is then
( y j - er ) erT
= xB - x Br
yrj
x Br
Therefore, x*B = x B - (y j - er ) .
yrj
Hence, the new solution is
x Br
x*Bi = x Bi - (y j - 0), i = 1, 2,…, m, i π r
yrj
because in er, i-th element is zero. So
x Br x Br x
x*Bi = x Bi - y or x*Br = x Br - (y rj - 1) = Br
yrj ij yrj yrj
Chapter 3: Linear Programming ® 61
We thus have a new basic solution. In order that the new solution is feasible, we require
x
x*Bi ≥ 0, i = 1, 2,…, m, i.e. x*Br = Br > 0, i = 1, 2,…, m, i π r
yrj
x Br
Since xBr ≥ 0, x*Br = > 0 if yrj > 0
yrj
x Br x x
Thus, we require that yrj > 0. Further, xBi – y ≥ 0 implies Br £ Bi , i = 1, 2, …, m. Hence,
yrj ij yrj yij
x Br ÔÏ x Ô¸
= min Ì Bi , y ij > 0 ˝ (3.6)
yrj i Ô yij Ô˛
Ó
Thus, the vector br to be removed from B should be chosen in accordance with Eq. (3.6). Let
c*B denote the new cost vector corresponding to the new solution then
c*B = (cB1, cB2,…, cBr–1, cBj, cBr+1,…, cBm)T
= (cB1, cB2,…, cBr-1, cBr + cj – cBr, cBr+1,…, cBm)T
and the new value of the objective function is
È x Br ˘ x
B xB = [c B + (cj – cBr) e r] Í x B -
Z * = cT* * T T
(y j - er ) ˙ . Put Br = q
Î yrj ˚ yrj
È ( y j - er ) erT B -1 ˘ ( y j - er ) erT B -1
y* = B*–1 A = Í B -1 - ˙ A = B -1 A - A
ÍÎ yrj ˙˚ yrj
1
= y- (y j - er ) eTr y
yrj
1
= y- (y j - er ) (yr1, yr2,…, yij,…, yrn)
yrj
1
*
Comparing the elements on both sides, we get yik = yik - y y
yrj ij rk
1
So yij* = yij - ( y y - 0), i = 1, 2,…, m, i π r, j = 1, 2,…, n, k π j
yrj ij rj
62 ® Operations Research
1
and yrj* = yrj - ( y y - yrj ) = 1
yrj rj rj
Note:
1. While discussing the simplex method, we have assumed an initial basic feasible solution
with a basis matrix B. If B = I then B–1 = I, then initial solution xB = B–1b = b and y matrix
is y = B–1A = A. Net evaluations, zj – cj = –cj + cTBB–1aj = –cj + cTBaj, j = 1, 2,…, n and value
of the objective function Z = cTB xB = cTB b. Thus, we observe that if initial basis matrix is a
unit matrix, then it is easy to obtain initial solution and related parameters. Hence, in order
to obtain initial basic feasible solution, we shall assume that a unit matrix is present as a sub-
matrix of the coefficient matrix A.
2. For choosing incoming vector aj in the next basis, choose that zj – cj (or cj – zj) which is
most negative (positive). If two or more zj – cj (or cj – zj) have the same most negative
(positive) value, choose any one of the corresponding vector to enter into the basis.
3. After choosing the incoming vector, choose the outgoing vector which satisfies Eq. (3.6). If
this minimum value is assumed for more than two vectors, choose any one of the
corresponding basis vector from B.
The following two theorems are stated without proof.
Theorem 3.6: Every basic feasible solution to an LPP corresponds to a vertex of the set of feasible
solution.
Theorem 3.7: For the LPP: Maximize Z = cTx subject to Ax = b, x ≥ 0. A necessary and sufficient
condition for a basic feasible solution xB = B–1b corresponding to a basis matrix B : m ¥ m to be
optimum is that zj – cj ≥ 0 (or cj – zj £ 0) for all j = 1, 2, …, n.
To find an optimum basic feasible solution to a standard LPP (maximization case, all constraints
£, all bj values positive), perform the following steps.
Step 1: Select an initial basic feasible solution to initiate the solution.
Step 2: Test for the optimality as discussed in Section 3.6. That is, if all zj – cj ≥ 0
(or cj – zj £ 0), then the basic feasible solution is optimal. If at least for one of the coefficient matrix
zj – cj < 0 (or cj – zj > 0) and elements in that columns are negative (positive), then there exists an
unbounded solution to the given problem. If at least one zj – cj < 0 (or cj – zj > 0) and each of these
has at least one positive (negative) element for some row then solution can be improved.
Step 3: For selecting the variable entering into the basis, select a variable that has the most negative
zj – cj value (or most positive cj – zj). The column to be entered is called key column.
Step 4: After selecting the key column, the next step is to decide the outgoing variable using
Eq. (3.6). This ratio is called replacement ratio (RR). The replacement ratio restricts the number of
units of incoming variables that can be obtained from the exchange. The row selected in this manner
is called key row. The element at the intersection of key row and key column is called key element.
Note that division by negative or zero element in the key column is not allowed. Denote these
cases by –.
Step 5: Now we want to find a new solution. If the key element is 1, then do not change the row
in the next simplex table. If the key element is other than 1, then divide the element in that key row
by that element including the element in xB—column and formulate the new row. The new values
Chapter 3: Linear Programming ® 63
of the elements in the remaining rows for the next iteration can be evaluated by performing
elementary operations on all rows, so that all elements except the key element in the key column are
zero. If the new solution so obtained satisfies step 2 then terminate the process, otherwise perform
step 4 and step 5.
Repeat the steps for finite number of steps to obtain the basic feasible solution, i.e. no further
improvement is possible.
cj 5 4 0 0 0 RR
cB B xB x1 x2 s1 s2 s3
0 s1 10 4 5 1 0 0 10/4
0 s2 9 3 2 0 1 0 9/3
0 s3 12 8 3 0 0 1 12/8Æ
z 0 zj – cj –5 –4 0 0 0
≠
Clearly, most negative zj – cj corresponds to x1. So x1 will enter into the basis. The minimum
replacement ratio corresponds to s3, so s3 will leave the basis. So, the key column corresponds to
x1 and the key row corresponds to s3. The leading (key) element is 8 which is other than 1, so divide
all elements of the key row by 8 and use elementary row transformations so that in the key column
entries of the first and second rows are zero. The new iteration table is as given below.
cj 5 4 0 0 0 RR
cB B xB x1 x2 s1 s2 s3
0 s1 4 0 7/2 1 0 –1/2 8/7Æ
0 s2 9/2 0 7/8 0 1 –3/8 36/7
5 x1 3/2 1 3/18 0 0 1/8 9
z 15/2 zj – cj 0 –17/8 0 0 5/8
≠
64 ® Operations Research
Clearly, most negative zj – cj corresponds to x2, so x2 will enter into the basis. The minimum
replacement ratio corresponds to s1, so s1 will leave the basis. So, the key column corresponds to
x2 and key row corresponds to s1. The leading (key) element is 7/2 which is other than 1, so divide
all elements of the key row by 2/7 and use elementary row transformations so that in the key column
entries of the second and third rows are zero. The new iteration table is as given below.
cj 5 4 0 0 0
cB B xB x1 x2 s1 s2 s3
4 x2 8/7 0 1 1 0 –1/7
0 s2 7/2 0 0 0 1 –2/8
5 x1 15/14 1 0 0 0 5/28
z 139/14 zj – cj 0 0 17/28 0 9/28
cj 10 1 2 0 0 RR
cB B xB x1 x2 x3 s1 s2
0 s1 10 1 1 –2 1 0 10
0 s2 20 4 1 1 0 1 5Æ
z 0 zj – cj –10 –1 –2 0 0
≠
Clearly, most negative zj – cj corresponds to x1. So x1 will enter into the basis. The minimum
replacement ratio corresponds to s2, so s2 will leave the basis. So, the key column corresponds to
x1 and the key row corresponds to s3. The leading (key) element is 4 which is other than 1, so divide
all elements of the key row by 4 and use elementary row transformations so that in the key column
entries of the first row are zero. The new iteration table is as given below.
Chapter 3: Linear Programming ® 65
cj 10 1 2 0 0
cB B xB x1 x2 x3 s1 s2
0 s1 5 0 3/4 –9/4 1 –1/4
10 x1 5 1 1/4 1/4 0 1/4
z 50 zj – cj 0 3/2 1/2 0 5/2
cj 2 4 1 1 0 0 0 RR
cB B xB x1 x2 x3 x4 s1 s2 s3
0 s1 4 1 3 0 1 1 0 0 4/3Æ
0 s2 3 2 1 0 0 0 1 0 3
0 s3 3 0 1 4 1 0 0 1 3
z 0 zj – cj –2 –4 –1 –1 0 0 0
≠
x2 will enter into the basis and s1 will leave the basis. The new iterative table is as given below.
cj 2 4 1 1 0 0 0 RR
cB B xB x1 x2 x3 x4 s1 s2 s3
4 x2 4/3 1/3 1 0 1/3 1/3 0 0 –
0 s2 5/3 5/3 0 0 –1/3 –1/3 1 0 –
0 s3 5/3 –1/3 0 4 2/3 –1/3 0 1 5/12Æ
z 16/3 zj – cj –2/3 0 –1 1/3 4/3 0 0
≠
66 ® Operations Research
x3 will enter into the basis and s3 will leave the basis. The new iterative table is as given below.
cj 2 4 1 1 0 0 0 RR
cB B xB x1 x2 x3 x4 s1 s2 s3
4 x2 4/3 1/3 1 0 1/3 1/3 0 0 4
0 s2 5/3 5/3 0 0 –1/3 –1/3 1 0 1Æ
1 x3 5/12 –1/12 0 1 1/6 –1/12 0 1/4 –
z 23/4 zj – cj –3/4 0 0 1/2 5/4 0 1/4
≠
x1 will enter into the basis and s2 will leave the basis. The new iterative table is as given below.
cj 2 4 1 1 0 0 0
cB B xB x1 x2 x3 x4 s1 s2 s3
4 x2 1 0 1 0 2/5 2/5 –1/5 0
2 x1 1 1 0 0 –1/5 –1/5 3/5 0
1 x3 1/2 0 0 1 3/20 –1/10 1/20 1/4
z 13/2 zj – cj 0 0 0 7/20 11/10 9/20 1/4
Since all zj – cj ≥ 0, the optimal basic feasible solution is x1 = 1, x2 = 1, x3 = 1/2, x4 = 0 and maximum
z = 13/2.
EXAMPLE 3.27: Use the simplex method to maximize z = 4x1 + x2 + 3x3 + 5x4
subject to the constraints:
4x1 – 6x2 – 5x3 – 4x4 ≥ –20
3x1 – 2x2 + 4x3 + x4 £ 10
8x1 – 3x2 + 3x3 + 2x4 £ 20
and x1, x2, x3, x4 ≥ 0.
Solution: We have seen that in maximization case all constraints should be of the form £. So we
need to multiply first constraint by –1. Then writing the given LPP in the standard form, we need
to add slack variables s1, s2 and s3 in the constraints. Thus, LPP is
Maximize z = 4x1 + x2 + 3x3 + 5x4 + 0s1 + 0s2 + 0s3
subject to the constraints:
–4x1 + 6x2 + 5x3 + 4x4 + s1 = 20
3x1 – 2x2 + 4x3 + x4 + s2 = 10
8x1 – 3x2 + 3x3 + 2x4 + s3 = 20
and x1, x2, x3, x4, s1, s2, s3 ≥ 0.
Chapter 3: Linear Programming ® 67
cj 4 1 3 5 0 0 0 RR
cB B xB x1 x2 x3 x4 s1 s2 s3
0 s1 20 –4 6 5 –4 1 0 0 –
0 s2 10 3 –2 4 1 0 1 0 10 Æ
0 s3 10 8 –3 3 2 0 0 1 10
z 0 zj – cj –4 –1 –3 –5 0 0 0
≠
x4 enters into the basis and s2 leaves the basis. The new iterative table is as given below.
cj 4 1 3 5 0 0 0 RR
cB B xB x1 x2 x3 x4 s1 s2 s3
0 s1 60 8 2 21 0 1 4 0 30
5 x4 10 3 –2 4 1 0 1 0 –
0 s3 0 2 1 –5 0 0 –2 1 0Æ
z 50 zj – cj 11 –11 17 0 0 5 0
≠
x2 enters into the basis and s3 leaves the basis. The new iterative table is as given below.
cj 4 1 3 5 0 0 0 RR
cB B xB x1 x2 x3 x4 s1 s2 s3
0 s1 60 12 0 11 0 1 0 2 60/11Æ
5 x4 10 7 0 –6 1 0 –3 2 –
1 x2 0 2 1 –5 0 0 –2 1 –
z 50 zj – cj 33 0 –38 0 0 –17 11
≠
x3 enters into the basis and s1 leaves the basis. The new iterative table is given below.
cj 4 1 3 5 0 0 0
cB B xB x1 x2 x3 x4 s1 s2 s3
3 x3 60/11 12/11 0 1 0 1/11 0 2/11
5 x4 470/11 149/11 0 0 1 6/11 –3 34/11
1 x2 300/11 82/11 1 0 0 5/11 –2 21/11
z 2827/11 zj – cj >0 0 0 0 >0 <0 >0
68 ® Operations Research
Here zj – cj < 0 for s2 but coefficients in that column are negative or zero, so the given LPP has an
unbounded solution.
EXAMPLE 3.28: A farmer has 1,000 acres of land on which he can grow corn, wheat or
soyabeans. Each acre of corn costs Rs. 100 for preparation, requires 7 man-days of work and yields
a profit of Rs. 30. An acre of wheat costs Rs. 120 to prepare, requires 10 man-days of work and
yields a profit of Rs. 40. An acre of soyabeans costs Rs. 70 to prepare, requires 8 man-days of work
and yields a profit of Rs. 20. If the farmer has Rs. 1,00,000 for preparation and can count on 8,000
man-days of work, how many should be allocated to each crop to maximize profits?
Solution: Let x1, x2 and x3 be acres of land to be used for corn, wheat and soyabeans, respectively.
Maximize z = 30x1 + 40x2 + 20x3
subject to the constraints:
100x1 + 120x2 + 70x3 £ 1,00,000
7x1 + 10x2 + 8x3 £ 8,000
x1 + x2 + x3 £ 1,000
Writing the given LPP in the standard form, we need to add slack variables s1, s2 and s3 in the
constraints. Thus, LPP is
Maximize z = 30x1 + 40x2 + 20x3 + 0s1 + 0s2 + 0s3
subject to the constraints:
10x1 + 12x2 + 7x3 + s1 = 10,000
7x1 + 10x2 + 8x3 + s2 = 8,000
x1 + x2 + x3 + s3 = 10,000
and x1, x2, x3, s1, s2, s3 ≥ 0.
Putting x1 = x2 = x3 = 0, we get the first iteration as given below.
cj 30 40 20 0 0 0 RR
cB B xB x1 x2 x3 s1 s2 s3
0 s1 10,000 10 12 7 1 0 0 10,000/12
0 s2 8,000 7 10 8 0 1 0 8000/10Æ
0 s3 1,000 1 1 1 0 0 1 1000
z 0 zj – cj –30 –40 –20 0 0 0
≠
Chapter 3: Linear Programming ® 69
x2 enters into the basis and s2 leaves the basis. The new iterative table is as follows.
cj 30 40 20 0 0 0 RR
cB B xB x1 x2 x3 s1 s2 s3
0 s1 400 16/10 0 –26/10 1 –12/10 0 4000/16Æ
40 x2 800 7/10 1 8/10 0 1/10 0 8000/7
0 s3 200 3/10 0 2/10 0 –1/10 1 2000/3
z 32,000 zj – cj –2 0 12 0 4 0
≠
x1 enters into the basis and s1 leaves the basis. The new iterative table is as given below.
cj 30 40 20 0 0 0
cB B xB x1 x2 x3 s1 s2 s3
30 x1 250 1 0 –26/16 10/16 –12/16 0
40 x2 625 0 1 31/16 –7/6 10/16 0
0 s3 125 0 0 11/16 –3/6 1/8 1
cj 2 –2 3 –3 0 0 0 RR
cB B xB x¢1 x≤1 x¢2 x≤2 s1 s2 s3
0 s1 4 –1 1 2 –2 1 0 0 2Æ
0 s2 6 1 –1 1 –1 0 1 0 6
0 s3 9 1 –1 3 –3 0 0 1 3
z 0 zj – cj –2 2 –3 3 0 0 0
≠
70 ® Operations Research
x¢2 enters into the basis and s1 leaves the basis. The iterative table is as follows.
cj 2 –2 3 –3 0 0 0 RR
cB B xB x¢1 x≤1 x¢2 x≤2 s1 s2 s3
3 x¢2 2 –1/2 1/2 1 –1 1/2 0 0 –
0 s2 4 3/2 –3/2 0 0 –1/2 1 0 8/3
0 s3 3 5/2 –5/2 0 0 –3/2 0 1 6/5Æ
z 6 zj – cj –7/2 7/2 0 0 3/2 0 0
≠
x¢1 enters into the basis and s3 leaves the basis. The iterative table is as follows.
cj 2 –2 3 –3 0 0 0 RR
cB B xB x¢1 x≤1 x¢2 x≤2 s1 s2 s3
3 x¢2 13/5 0 0 1 –1 1/5 0 1/5 65/5
0 s2 11/5 0 0 0 0 2/5 1 –3/5 55/10Æ
2 x¢1 9/5 1 –1 0 0 –3/5 0 2/5 –
s1 enters into the basis and s2 leaves the basis. The iterative table is as follows.
cj 2 –2 3 –3 0 0 0
Since zj – cj are all non-negative, the optimum solution x¢1 = 9/2 and x¢2 = 3/2 with maximum
z = 27/2 is obtained. Therefore, x1 = 9/2 – 0 = 9/2 and x2 = 3/2 – 0 = 3/2 is the required basic feasible
solution.
Chapter 3: Linear Programming ® 71
Now, the resultant LPP has n decision variables, m artificial variables and m surplus variables. An
initial basic feasible solution of the resultant LPP can be obtained by putting (n + m) variables equal
to zero; i.e. the iteration starts with Ai = bi, i = 1, 2, …, m which does not contribute any value to
the optimal solution but are added to retain the feasibility condition of LPP. We will discuss the
following two methods to remove artificial variables first from the optimal solution.
1. Two-phase method
2. Big-M method (penalty method)
Note: For constraints with equality, we will add only the artificial variable.
Step 4: Assign a cost ‘–1’ to each artificial variables for a maximization problem (‘1’ for
minimization) and a cost ‘0’ to all other variables (surplus and decision variables) of LPP in the
objective function; thus, objective function for phase I will be
Maximize z* = –A1 – A2 – – Ap (p £ m)
Step 5: Solve the problem written in step 4 until either of the following three cases does arise:
1. If all zj – cj ≥ 0 and at least one artificial variable occurs in the optimum basis and hence
max z* < 0, then LPP has infeasible solution.
2. If all zj – cj ≥ 0, max z* = 0 and at least one artificial variable occurs in the optimum basis,
then go to phase II.
3. If all zj – cj ≥ 0 and no artificial variable appears in the optimum basis.
If cases 2 or 3 occur, then go to phase II.
Step 6: Use the optimum basic feasible solution of phase I as an initial solution for the given LPP.
Assign actual costs to the original variables and ‘0’ to other variables in the objective function. Use
the simplex method to improve the solution.
Note: Maximize z = – Minimize (–z)
cj 0 0 0 0 –1 –1 RR
cB B xB x1 x2 s1 s2 A1 A2
–1 A1 4 2 1 –1 0 1 0 4
–1 A2 7 1 7 0 –1 0 1 1Æ
z* –11 zj – cj –3 –8 1 1 0 0
≠
Chapter 3: Linear Programming ® 73
x2 enters into the basis and A2 leaves the basis. The new iterative table is as shown below.
cj 0 0 0 0 –1 –1 RR
cB B xB x1 x2 s1 s2 A1 A2
–1 A1 3 13/7 0 –1 1/7 1 –1/7 21/13Æ
0 x2 1 1/7 1 0 –1/7 0 1/7 7
z* –3 zj – cj –13/7 0 1 –1/7 0 8/7
≠
x1 enters into the basis and A1 leaves the basis. The new iterative table is as shown below.
cj 0 0 0 0 –1 –1
cB B xB x1 x2 s1 s2 A1 A2
0 x1 21/13 1 0 –7/13 1/13 7/13 –1/13
0 x2 10/13 0 1 1/13 –2/13 –1/13 2/13
z* 0 zj – cj 0 0 0 0 1 1
Since zj – cj are all non-negative and no artificial variable appears in the basis, the optimum basic
feasible solution to the objective function of phase I is obtained and go to phase II.
Phase II: Consider the objective function with the original cost associated to the decision variables,
i.e. Maximize z = –x1 – x2 + 0s1 + 0s2. Here we will initialize the solution with the last table of
phase I.
cj –1 –1 0 0
cB B xB x1 x2 s1 s2
–1 x1 21/13 1 0 –7/13 1/13
–1 x2 10/13 0 1 1/13 –2/13
z –31/13 zj – cj 0 0 6/13 1/13
Since zj – cj are all non-negative, the optimum basic feasible solution is x1 = 21/13, x2 = 10/13 and
minimum z = 31/13 is obtained.
cj 0 0 0 –1 –1 RR
cB B xB x1 x2 x3 A1 A2
–1 A1 2 –2 1 3 1 0 2/3
–1 A2 1 2 3 4 0 1 1/4Æ
*
z –3 zj – cj 0 –4 –7 0 0
≠
x3 enters into the basis and A2 leaves the basis. The new iterative table is as follows.
cj 0 0 0 –1 –1
cB B xB x1 x2 x3 A1 A2
–1 A1 5/4 –7/2 –5/4 0 1 –3/4
0 x3 1/4 1/2 3/4 1 0 1/4
z* –5/4 zj – cj 7/2 5/4 0 0 3/4
Since zj – cj are all non-negative, an optimum basic feasible solution to the reduced problem is
attained, but, at the same time, artificial variable A1 appears in the basis at a positive level, so given
LPP does not possess any feasible solution.
EXAMPLE 3.32: Show that there does not exist any feasible solution to the following LPP:
Maximize z = 2x1 + 3x2 + 5x3
subject to the constraints:
3x1 + 10x2 + 5x3 £ 15
33x1 – 10x2 + 9x3 £ 33
x1 + 2x2 + x3 ≥ 4
and x1, x2, x3 ≥ 0.
Solution: Writing the given LPP in the standard form, we need to add slack variables s1 and s2 in
the first two constraints, surplus variable s3 and artificial variable A1 in the third constraint. The
initialization of iteration is with s1 = 15, s2 = 33 and A1 = 4.
Chapter 3: Linear Programming ® 75
Phase I: Assigning a cost –1 to the artificial variable and ‘0’ to the remaining variables, we get
the iterative table as shown below.
cj 0 0 0 0 0 –1 –1 RR
cB B xB x1 x2 x3 s1 s2 s3 A1
0 s1 15 3 10 5 1 0 0 0 15/10Æ
0 s2 33 33 –10 9 0 0 0 0 –
–1 A1 4 1 2 1 0 1 –1 1 2
z* –4 zj – cj –1 –2 –1 0 0 1 0
≠
x2 enters into the basis and s1 leaves the basis. The new iterative table is as given below.
cj 0 0 0 0 0 –1 –1 RR
cB B xB x1 x2 x3 s1 s2 s3 A1
0 x2 3/2 3/10 1 1/2 1/10 0 0 0 5
0 s2 48 36 0 14 1 1 0 0 4/3Æ
–1 A1 1 2/5 0 0 –1/5 0 –1 1 5/2
z* –1 zj – cj –2/5 0 0 1/5 0 1 0
≠
x1 enters into the basis and s2 leaves the basis. The new iterative table is as follows.
cj 0 0 0 0 0 –1 –1
cB B xB x1 x2 x3 s1 s2 s3 A1
0 x2 11/10 0 1 23/60 11/120 –1/120 0 0
0 x1 4/3 1 0 7/18 1/36 1/36 0 0
–1 A1 7/15 0 0 –7/45 –2/9 –2/9 –1 1
z* –7/15 zj – cj 0 0 7/45 95/18 5/18 1 0
Since zj – cj are all non-negative, an optimum basic feasible solution to the reduced problem is
attained, but at the same time max z* < 0 and artificial variable A1 appear in the basis at a positive
level, so the given LPP does not possess any feasible solution.
76 ® Operations Research
cj 0 0 0 0 0 0 –1 –1 RR
cB B xB x1 x2 x¢3 x≤3 s1 s2 A1 A2
–1 A1 5 1 –3 4 –4 0 0 1 0 5/4Æ
0 s1 3 1 –2 0 0 1 0 0 0 –
–1 A2 4 0 2 –1 1 0 –1 0 1 –
z* –9 zj – cj –1 1 –3 3 1 0 0 0
≠
x¢3 enters into the basis and A1 leaves the basis. The new iterative table is as follows.
cj 0 0 0 0 0 0 –1 –1 RR
cB B xB x1 x2 x¢3 x≤3 s1 s2 A1 A2
0 x¢3 5/4 1/4 –3/4 1 –1 0 0 1/4 0 –
0 s1 3 1 –2 0 0 1 0 0 0 –
–1 A2 21/4 1/4 5/4 0 0 0 –1 –1/4 1 21/5Æ
x2 enters into the basis and A2 leaves the basis. The new iterative table is given below.
cj 0 0 0 0 0 0 –1 –1
cB B xB x1 x2 x¢3 x≤3 s1 s2 A1 A2
0 x¢3 22/5 2/5 0 1 –1 0 –3/5 2/5 3/5
0 s1 57/5 7/5 0 0 0 1 –8/5 2/5 8/5
0 x2 21/5 1/5 1 0 0 0 –4/5 1/5 4/5
*
z 0 zj – cj 0 0 0 0 0 0 0 0
Since zj – cj are all non-negative, an optimum basic feasible solution to the reduced problem is
attained. Move to the next phase.
Phase II: Consider LPP with original cost coefficients associated with each variable and start with
the last table as the initial iteration.
cj –1 –1 –1 1 0 0
cB B xB x1 x2 x¢3 x≤3 s1 s2
–1 x¢3 22/5 2/5 0 1 –1 0 –3/5
0 s1 57/5 7/5 0 0 0 1 –8/5
–1 x2 21/5 1/5 1 0 0 0 –4/5
z* –43/5 zj – cj 2/5 0 0 0 0 7/5
Thus, the optimal solution is x1 = 0, x2 = 21/5, x3 = 22/5 – 0 = 22/5 and minimum z = 43/5.
EXAMPLE 3.34: Use the simplex method to solve the following system of linear equations:
x1 – x3 + 4x4 = 3, 2x1 – x2 = 3, 3x1 – 2x2 – x4 = 1; x1, x2, x3, x4 ≥ 0
Solution: Since the objective function for the above mentioned constraints is not given, we
introduce a dummy objective function z = 0x1 + 0x2 + 0x3 + 0x4. Add artificial variables A1, A2 and
A3 (≥ 0) in the above constraints and putting x1 = x2 = x3 = x4 = 0, we get initial solution A1 = 3,
A2 = 3 and A3 = 1. Assign cost –1 to artificial variables and zero to the remaining, we get the initial
iterative table as given below.
cj 0 0 0 0 –1 –1 –1 RR
cB B xB x1 x2 x3 x4 A1 A2 A3
–1 A1 3 1 0 –1 4 1 0 0 3
–1 A2 3 2 –1 0 0 0 1 0 3/2
–1 A3 1 3 –2 0 –1 0 0 1 1/3Æ
z* –7 zj – cj –6 3 1 –3 0 0 0
≠
78 ® Operations Research
x1 enters into the basis and A3 leaves the basis. The new iterative table is as given below.
cj 0 0 0 0 –1 –1 RR
cB B xB x1 x2 x3 x4 A1 A2
–1 A1 8/5 0 2/3 –1 13/3 1 0 12/5Æ
–1 A2 7/3 0 1/3 0 2/3 0 1 7
0 x1 1/3 1 –2/3 0 –1/3 0 0 –
z* –5 zj – cj 0 –1 1 –5 0 0
≠
x4 enters into the basis and A1 leaves the basis. The new iterative table is shown below.
cj 0 0 0 0 –1 RR
cB B xB x1 x2 x3 x4 A2
0 x4 8/13 0 2/13 –3/13 1 0 4Æ
–1 A2 25/13 0 3/13 2/13 0 1 25/3
0 x1 7/13 1 –8/13 –1/13 0 0 –
z* –25/13 zj – cj 0 –3/13 –2/13 0 0
≠
x2 enters into the basis and x4 leaves the basis. The new iterative table is as follows.
cj 0 0 0 0 –1 RR
cB B xB x1 x2 x3 x4 A2
0 x2 4 0 1 –3/2 13/2 0 –
–1 A2 1 0 0 1/2 –3/2 1 2Æ
0 x1 3 1 0 –1 4 0 –
z* –1 zj – cj 0 0 –1/2 3/2 0
≠
x3 enters into the basis and A2 leaves the basis. The new iterative table is given below.
cj 0 0 0 0
cB B xB x1 x2 x3 x4
0 x2 7 0 1 0 2
0 x3 2 0 0 1 –3
0 x1 5 1 0 0 1
z* –1 zj – cj 0 0 0 0
Solution: Introduce surplus variable s1 and artificial variable A1 in the first constraint and slack
variables s2 and s3 in the second and third constraints. The modified LPP is
Maximize z = 3x1 – x2 + 0s1 + 0s2 + 0s3 – MA1
subject to the constraints:
2x1 + x2 – s1 + A1 = 2
x1 + 3x2 + s2 = 3
x2 + s3 = 4
and x1, x2, s1, s2, s3, A1 ≥ 0.
Putting x1 = x2 = s1 = 0 gives the initial iterate as A1 = 2, s2 = 3 and s3 = 4. The iterative table is
as follows.
80 ® Operations Research
cj 3 –1 0 0 0 –M RR
cB B xB x1 x2 s1 s2 s3 A1
–M A1 2 2 1 –1 0 0 1 1Æ
0 s2 3 1 3 0 1 0 0 9
0 s3 4 0 1 0 0 1 0 –
z –2M zj – cj –2M – 3 –M + 1 M 0 0 0
≠
x1 enters into the basis and A1 leaves the basis. The new iterative table is shown below.
cj 3 –1 0 0 0 RR
cB B xB x1 x2 s1 s2 s3
3 x1 1 1 1/2 –1/2 0 0 –
0 s2 2 0 5/2 1/2 1 0 4Æ
0 s3 4 0 1 0 0 1 –
z 3 zj – cj 0 5/2 –3/2 0 0
≠
s1 will enter into the basis and s2 will exit in the next iteration.
cj 3 –1 0 0
cB B xB x1 x2 s1 s3
3 x1 3 1 3 0 0
0 s1 4 0 5 1 0
0 s3 4 0 1 0 1
z 3 zj – cj 0 10 0 0
cj 3 2 0 0 –M RR
cB B xB x1 x2 s1 s2 A1
0 s1 2 2 1 1 0 0 2Æ
–M A1 12 3 4 0 –1 1 3
z –12M zj – cj –3M – 2 –4M 0 M 0
≠
cj 3 2 0 0 –M
cB B xB x1 x2 s1 s2 A1
2 x2 2 2 1 1 0 0
–M A1 4 –5 0 –4 –1 1
z –4M + 4 zj – cj 5M + 1 0 4M + 2 M 0
Here the coefficients of M in each zj – cj are non-negative and the artificial variable appears at the
zero level. Thus, the LPP has an infeasible solution.
x1 + x2 – s3 + A1 = 4
and x1, x2, s1, s2, s3, A1 ≥ 0.
Putting x1 = x2 = s3 = 0 gives initial iterate as s1 = 30, s2 = 24 and A1 = 4. The iterative table is as
follows.
cj 6 4 0 0 0 –M RR
cB B xB x1 x2 s1 s2 s3 A1
0 s1 30 2 3 1 0 0 0 15
0 s2 24 3 2 0 1 0 0 8
–M A1 3 1 1 0 0 –1 1 3Æ
z –3M zj – cj –M – 6 –M + 4 0 0 M 0
≠
x1 enters into the basis and A1 leaves the basis. The new iterative table is given below.
cj 6 4 0 0 0 RR
cB B xB x1 x2 s1 s2 s3
0 s1 24 0 1 1 0 2 –
0 s2 15 0 –1 0 1 3 5Æ
6 x1 3 1 1 0 0 –1 –
z 18 zj – cj 0 2 0 0 –6
≠
s3 enters into the basis and s2 leaves the basis. The new iterative table is shown below.
cj 6 4 0 0 0
cB B xB x1 x2 s1 s2 s3
0 s1 14 0 5/3 1 –2/3 0
0 s3 5 0 –1/3 0 1/3 1
6 x1 8 1 2/3 0 1/3 0
z 48 zj – cj 0 0 0 2 0
Since all zj – cj ≥ 0, the optimum solution x1 = 8 and x2 = 0 is attained with maximum z = 48.
It is observed from the table that the net evaluation corresponding to non-basic variable x2 is
zero, which indicates that there is an alternative solution to the LPP. Enter x2 into the basis instead
of s1 or s3. The alternative solution will be as follows.
Chapter 3: Linear Programming ® 83
cj 6 4 0 0 0
cB B xB x1 x2 s1 s2 s3
4 x2 42/5 0 1 3/5 –2/5 0
0 s3 39/5 0 0 1/5 1/5 1
6 x1 12/5 1 0 –2/5 3/5 0
z 48 zj – cj 0 0 0 2 0
Here the optimum solution is x1 = 12/5 and x2 = 42/5 with maximum z = 48.
EXAMPLE 3.38: Use the Big-M method to maximize z = 2x1 + x2 + 3x2 subject to the constraints:
x1 + x2 + 2x3 £ 5
2x1 + 3x2 + 4x3 = 12
and x1, x2, x3 ≥ 0.
Solution: Introduce slack variable s1 in the first constraint and surplus variable s2 and artificial
variable A1 in the second constraint. We start simplex table with initial basic feasible solution
s1 = 5 and A1 = 12. The iterative table is given below.
cj 1 1 3 0 –M RR
cB B xB x1 x2 x3 s1 A1
0 s1 5 1 1 2 1 0 5/2 Æ
–M A1 12 2 3 4 0 1 3
x3 enters into the basis and s1 leaves the basis. The new iterative table is shown below.
cj 1 1 3 0 –M RR
cB B xB x1 x2 x3 s1 A1
3 x3 5/2 1/2 1/2 1 1/2 0 5
–M A1 2 0 1 0 –2 1 2Æ
z –2M + 15/2 zj – cj –1/2 –M + 1/2 0 2M + 3/2 0
≠
84 ® Operations Research
x2 enters into the basis and A1 leaves the basis. The new iterative table is shown below.
cj 1 1 3 0 RR
cB B xB x1 x2 x3 s1
3 x3 3/2 1/2 0 1 3/2 3Æ
1 x2 2 0 1 0 –2 –
x1 enters into the basis and x3 leaves the basis. The new iterative table is given below.
cj 1 1 3 0
cB B xB x1 x2 x3 s1
2 x1 3 1 0 2 3
1 x2 2 0 1 0 –2
z 8 zj – cj 0 0 1 4
EXAMPLE 3.39: Use the Big-M method to maximize z = 3x1 + 2x2 + x3 subject to the constraints:
2x1 + 5x2 + x3 = 12
3x1 + 4x2 = 11
and x2, x3 ≥ = 0, x1 unrestricted.
Solution: Introducing artificial variable A ≥ 0, the initial basic feasible solution is x3 = 12 and
A = 11. Now since x1 is unrestricted, we write x1 = x¢1 – x≤1, where x¢1 and x≤1 ≥ 0
cj 3 –3 2 1 –M RR
cB B xB x¢1 x≤1 x2 x3 A
1 x3 12 2 –2 5 1 0 12/5Æ
–M A 11 3 –3 4 0 1 11/4
z –11M + 12 zj – cj –3M – 1 3M + 1 –4M + 3 0 0
≠
Chapter 3: Linear Programming ® 85
x2 enters into the basis and x3 leaves the basis. The new iterative table is shown below.
cj 3 –3 2 1 –M RR
cB B xB x¢1 x≤1 x2 x3 A
2 x2 12/5 2/5 –2/5 1 1/5 0 6
–M A 7/5 7/5 –7/5 0 –4/5 1 1Æ
z –7M/5 + 24/5 zj – cj –3M – 1 3M + 1 –4M + 3 0 0
≠
x¢1 enters into the basis and A leaves the basis. The new iterative table is shown below.
cj 3 –3 2 1 RR
cB B xB x¢1 x≤1 x2 x3
2 x2 2 0 0 1 3/7 14/3Æ
3 x¢1 1 1 –1 0 –4/7 –
z 7 zj – cj 0 0 0 –13/7
≠
x3 enters into the basis and x2 leaves the basis. The new iterative table is as follows.
cj 3 –3 2 1
cB B xB x¢1 x≤1 x2 x3
1 x3 14/3 0 0 7/3 1
3 x¢1 8/3 1 –1 4/3 0
z 47/3 zj – cj 0 0 13/3 0
Since all zj – cj ≥ 0, the optimum basic feasible solution is x¢1 = 8/3, x2 = 0 and x3 = 14/3, i.e.
x1 = 8/3, x2 = 0, x3 = 14/3 and maximum z = 47/3.
3.8 DEGENERACY IN LP
Sometimes we come across one of two situations: (i) at least one basic variable is zero in the initial
iteration or (ii) at subsequent iteration of simplex method more than one vector leaves the basis. The
solution so obtained is called degenerate solution. In this case, we do not improve value of the
objective function in the next iteration. This results in cycling.
86 ® Operations Research
Let us see in the following algorithm how to avoid cycling at any stage.
ÔÏ x Ô¸
Step 3: Compute the non-negative ratios min Ì Bi : xir > 0 ˝ for those values of i for which
x
i ÔÓ ir Ô˛
ÏÔ x ¸Ô
min Ì Bi : xir > 0 ˝ have a tie. If this minimum is unique for i = k, then the vector xk leaves the
i ÔÓ xir Ô˛
basis. Otherwise go to step 4.
Step 4: Continue step 3 until a unique minimum non-negative ratio is obtained.
Note: Any artificial variable (if exists) should not be removed from the basis at any stage.
cj 3 9 0 0 RR
cB B xB x1 x2 s1 s2
0 s1 8 1 4 1 0 2
0 s2 4 1 2 0 1 2
z 0 zj – cj –3 –9 0 0
Clearly, most negative z2 – c2 corresponds to x2. So x2 will enter into the basis. The minimum
ratio 2 occurs for both s1 and s2, and so both tend to leave the basis. So we have degeneracy. Let
us rearrange columns corresponding to x1, x2, s1 and s2 in such a way that the initial identity matrix
appears first.
Chapter 3: Linear Programming ® 87
cj 0 0 3 9 RR
cB B xB s1 s2 x1 x2
1 2 3 4
0 s1 8 1 0 1 4 4
0 s2 4 0 1 1 2 2Æ
z 0 zj – cj 0 0 –3 –9≠
Ï x11 x21 ¸ Ï1 0 ¸
Using algorithm, min Ì , ˝ = min Ì , ˝ = 0 which corresponds to s2. Hence, s2 will leave
Ó x14 x24 ˛ Ó4 2˛
the basis. So the new iteration table is as follows.
cj 0 0 3 9
cB B xB s1 s2 x1 x2
1 2 3 4
0 s1 0 1 –2 –1 0
9 x2 2 0 1/2 1/2 1
z 18 zj – cj 0 9/2 3/2 0
cj 5 –2 3 0 0 0 –M RR
cB B xB x1 x2 x3 s1 s2 s3 A1
–M A1 2 2 2 –1 –1 0 0 1 1Æ
0 s2 3 3 –4 0 0 1 0 0 1
0 s3 5 0 1 3 0 0 1 0 –
z –2M zj – cj –2M – 5 –2M + 2 M – 3 M 0 0 0
≠
88 ® Operations Research
Most negative z1 – c1 corresponds to x1. So x1 will enter into the basis. The minimum ratio 1 occurs
for both A1 and s2, and so both tend to leave the basis. So, we have degeneracy. But since A1 is an
artificial variable, we first allow it to exist. The new iteration table is given below.
cj 5 –2 3 0 0 0
cB B xB x1 x2 x3 s1 s2 s3
5 x1 1 1 1 –1/2 –1/2 0 0
0 s2 0 0 –7 3/2 3/2 1 0
0 s3 5 0 1 3 0 0 1
z 5 zj – cj 0 7 –11/2 –5/2 0 0
≠
Following standard steps of the simplex table, we have the following iterations.
cj 5 –2 3 0 0 0 RR
cB B xB x1 x2 x3 s1 s2 s3
5 x1 1 1 –4/3 0 0 1/3 0 –
3 x3 0 0 –14/3 1 1 2/3 0 –
0 s3 5 0 15 0 –3 –2 1 3Æ
z 5 zj – cj 0 –56/3 0 3 11/3 0
≠
cj 5 –2 3 0 0 0 RR
cB B xB x1 x2 x3 s1 s2 s3
5 x1 13/9 1 0 0 -4/15 7/45 4/45 –
3 x3 14/9 0 0 1 1/15 2/45 14/45 1/14Æ
–2 x2 1/3 0 1 0 –1/5 –2/15 1/15 –
z 101/9 zj – cj 0 0 0 –11/15 53/45 56/45
≠
cj 5 –2 3 0 0 0
cB B xB x1 x2 x3 s1 s2 s3
5 x1 23/3 1 0 4 0 1/3 4/3
0 s1 70/3 0 0 15 1 2/3 14/3
–2 x2 5 0 1 3 0 0 1
z 85/3 zj – cj 0 0 11 0 5/3 14/3
The following table gives the simplex solution to the above problem.
cj 2 4 3 0 0 0 RR
cB B xB T C B SA SF SP
0 SA 60 3 4 2 1 0 0 15Æ
0 SF 40 2 1 2 0 1 0 40
0 SP 80 1 3 2 0 0 1 80/3
z 0 cj – zj 2 4 3 0 0 0
≠
z 60 cj – zj –1 0 1 –1 0 0
≠
This being a maximization problem, the optimality criteria is satisfied as all net evaluation entries,
that is all cj – zj entries are £ 0.
Recall that
(a) Each positive number in the cj – zj row represents the net profit obtainable if 1 unit of the
variable heading that column were added to the solution.
(b) Each negative number (a net loss) in the cj – zj row indicates the decrease in the total profit
if 1 unit of the variable heading that column were added to the product mix. A negative
number in the cj – zj row under one of the columns representing time has another
interpretation also. A negative number here represents the amount of increase in total profit
if the number of hours available in that department could be increased by 1.
We see from the table that the optimal solution is to produce 20/3 units of C, 50/3 units of B
and no unit of T. The total contribution for this product mix is about Rs. 76.67. The values under
the SA, SF and SP columns in the cj – zj row indicate that removing 1 productive hour from each of
the three departments would reduce the total contribution respectively, by Rs. 5/6, 2/3 and 0. This
can be taken to mean also that if additional capital were available to expand productive time in these
departments, the value of increased production to ABC Company of 1 more hour in each of these
departments would be Rs. 5/6, 2/3 and 0, i.e. adding another hour of Assembly time will increase
profit by Rs. 5/6, adding another hour of Finishing will increase profit by Rs. 2/3, and adding another
hour of packaging time will leave profit unchanged. These three values 5/6, 2/3 and 0 are called dual
Chapter 3: Linear Programming ® 91
prices, shadow prices, or simply unit worth of a resource. To be more specific, if adding another
hour to each department costs the same, we would add the time to the Assembly department, for
there it is worth Rs. 5/6, which is more than 2/3 or 0.
This primal was concerned with maximizing the contribution from the three products; the dual
will be concerned with evaluating the time used in the three departments to produce T, C and B.
The production manager of the ABC Company recognizes that the productive capacity of the
three departments is a valuable resource to the firm; he wonders whether it would be possible to
place a monetary value on its worth. He soon comes to think in terms of how much he would receive
from another manufacturer, a renter who wants to rent all the capacity in ABC Company’s three
departments. He reasons along the following lines.
Suppose the rental charges were Rs. A per hour of Assembly time, Rs. F per hour of Finishing
and Rs. P per hour of Packaging time, then the cost to the renter of all the time would be
Total rent paid = 60A + 40F + 80P
and of course the renter would want to set the rental prices in such a way as to minimize the total
rent he would have to pay; so the objective of the dual is
Minimize: 60A + 40F + 80P
The production manager of ABC Company will not rent out his time unless the rent offered enables
him to net as much as he would if he used the time to produce products T, C and B for ABC
Company. This observation leads to the constraints of the dual.
To make one unit of T requires 3 Assembly hours, 2 Finishing hours and 1 packaging hour. The
time that goes into making one unit of T would be rented out for Rs. 3A + 2F + 1P. If the manager
used all that time to make T, he would earn Rs. 2 in contribution to profit, and so he will not rent
out the time unless
3A + 2F + 1P ≥ 2
and this gives the first constraint in the dual. A similar reasoning with respect to C and B gives the
other two dual constraints:
4A + 1F + 3P ≥ 4
2A + 2F + 2P ≥ 3
So the entire dual problem which determines for the manager of the ABC Company, the value of
the productive resources of the company (its plant hours) is:
Minimize 60A + 40F + 80P
subject to the constraints:
3A + 2F + 1P ≥ 2
4A + 1F + 3P ≥ 4
2A + 2F + 2P ≥ 3
and A, F, and P ≥ 0
We add appropriate surplus and artificial variables as follows and then solve the dual problem.
Only the initial and the final tables are shown below.
Minimize: 60A + 40F + 80P
92 ® Operations Research
cj 60 40 80 0 0 0 M M M
cB B xB A F P S1 S2 S3 A1 A2 A3 RR
M A1 2 3 2 1 –1 0 0 1 0 0 2/3Æ
M A2 4 4 1 3 0 –1 0 0 1 0 1
M A3 3 2 2 2 0 0 –1 0 0 1 3/2
z 9M cj – zj 60 – 9M 40 – 5M 80 – 6M M M M 0 0 0
≠
: : : : : : : : : : :
: : : : : : : : : : :
: : : : : : : : : : :
This being a minimization problem, the optimality criteria is satisfied as all net evaluation entries,
that is, all cj – zj row entries are ≥ 0.
The optimum solution to the dual problem indicates that the worth to ABC Company of 1
productive hour in Assembly department is Rs. 5/6 (A = 5/6 in the final table), in Finishing
department is Rs. 2/3, and in Packaging department is Rs. 0 (T is not in the basis).
Of course, these are the same values we got by looking at the cj – zj row in the final table of
the primal problem. Thus, when we solved the primal, we also got the solution to the dual. Does
solving the dual also give us the solution to the primal? Yes, if we look at the values contained under
the S1, S2 and S3 columns in the cj – zj row in the final table of solution of the dual, we find 0,
20/3 and 50/3, which are the optimal values for T, C and B in the primal.
Now look at the two problem formulations again.
Some direct observations from the table above are given below.
1. The objective function coefficients of the primal problem have become the right-hand side
constants of the dual. Similarly, the right-hand side constants of the primal have become the
objective function coefficients of the dual.
2. The inequalities have been reversed in the constraints.
3. The objective is changed from maximization in primal to minimization in dual.
4. Each column in primal corresponds to a constraint (row) in a dual. Thus, the number of dual
constraints is equal to the number of primal variables.
5. Each constraint (row) in the primal corresponds to a column in the dual. Hence, there is one
dual variable for every primal constraint.
6. The transpose of the technological (input-output) coefficient matrix of the primal becomes
the technological (input-output) coefficient matrix of the dual.
Further economic interpretations of duality:
1. Suppose T, C, B is a feasible solution to the primal (a level of output that can be achieved
with the current resources) and A, F, P is a feasible solution of the dual (a set of rents which
would induce the manager to rent out the plant rather than to use it himself). Then,
2T + 4C + 3B £ 60A + 40F + 80P
2. The optimal values are the same in both problems. It means that the value to ABC Company
of all its productive resources is precisely equal to the profit the firm can make if it employs
these resources in the best possible way. In this way, the profit made on the firm’s output
is used to derive the imputed values of the inputs to produce that output.
3. In the above problem, the dual variable P was equal to 0 and not all the packaging time was
used. This is entirely reasonable, since if the company already has excess packaging time,
additional packaging time cannot be profitably used and so it is worthless. This is half of
what is called the principle of complimentary slackness.
4. A = 5/6, F = 2/3 and P = 0, 3A + 2F + 1P = 23/6. This shows us that the value of the time
needed to produce one unit of T is Rs. 23/6. But one unit of T contributes a profit of
Rs. 2. Since the time needed to produce T is worth more than the return on it, the optimal
solution to the primal does not produce any T. This is the other half of the principle of
complimentary slackness.
Now we look at the concept of duality by introducing mathematical rigour.
To every LPP, there is an associated LPP called dual of the given LPP. The given problem is
called primal problem, i.e. every LPP when expressed in its standard form has associated unique
LPP based on the same data. These primal-dual pairs are interrelated and the variables of this pair
have interesting implications in econometrics, production engineering, etc. Let us define dual of
Primal: Maximize z = cTx, x Œ Rn
subject to the constraints: Ax £ b, x ≥ 0, b Œ Rm, A is m ¥ n – matrix.
Dual: Minimize z* = bTw, w Œ Rm
subject to the constraints: ATw ≥ c, w ≥ 0
94 ® Operations Research
Note: In order to convert any problem into its dual, the primal LPP must be expressed in the
maximization form with all constraints in £ type or = type. Thus, primal – dual pairs are as follows:
Given an LPP, it can be directly converted into its dual using the following table:
Let w1, w2, and w3 be dual variables corresponding to each of the primal constraint. Then dual
problem is
Minimize z* = 4w1 + w2 – 5w3
subject to the constraints:
w1 – w2 ≥ 3
5w1 – w2 ≥ 1
3w1 + w3 ≥ 1
4w1 – w2 ≥ –1
and w1, w3 ≥ 0, and w2 unrestricted.
Let w1, w2, w3 and w4 be dual variables corresponding to each of the primal constraint. Then dual
problem is
Maximize z* = –7w1 + 12w2 – 10w3 + 10w4
subject to the constraints:
–3w1 + 2w2 + 4w3 – 4w4 £ 1
w1 – 4w2 – 3w3 + 3w4 £ –3
–2w1 – 8w3 + 8w4 £ –2
2w1 + 8w3 – 8w4 £ 2
and w1, w2, w3, w4 ≥ 0.
The third and the fourth constraints can be written as 2w1 + 8w3 – 8w4 = 2. From the objective
function and the constraints, w3 and w4 can be put together by writing w = w3 – w4. So w becomes
unrestricted in sign. Rewriting the dual problem as
Maximize z* = –7w1 + 12w2 – 10w
subject to the constraints:
–3w1 + 2w2 + 4w £ 1
w1 – 4w2 – 3w £ –3
2w1 + 8w = 2
w1 ≥ 0, w2 ≥ 0 and w is unrestricted.
Instead of working out the dual in the above manner, the following way can also be applied by
using the table given below.
Theorem 3.9: If x0 is a feasible solution of the primal Eq. (3.13) and w0 is a feasible solution of
the dual problem Eq. (3.14) then cTx0 £ bTw0.
Proof: Since x0 is a feasible solution of the primal Eq. (3.13), Ax0 £ b. Pre-multiply by w0T. Then
w0T Ax0 £ w0T b or w0T Ax0 £ bw0T (3.17)
(because both are 1 ¥ 1 size matrices of real numbers). Now w0 is a feasible solution of the dual
problem Eq. (3.14), so ATw0 ≥ c. Taking transpose, we get w0T A ≥ cT or
w0T Ax0 ≥ cTx0 (3.18)
From Eqs. (3.17) and (3.18), we have the result.
Theorem 3.10: The value of the objective function z for any feasible solution of the primal is not
less than the value of the objective function z* for any feasible solution of the dual.
Proof: Consider the primal problem Eq. (3.13) to find x Œ Rn which maximize z = cTx, x Œ Rn
subject to the constraints:
Ax £ b, x ≥ 0, b Œ Rm, A is m ¥ n – matrix
Then dual Eq. (3.14) is to find w Œ Rm which minimize z* = bTw, w Œ Rm
subject to the constraints: ATw ≥ c, w ≥ 0
Introducing the necessary slack variables in constraints of Eqs. (3.13) and (3.14), we get
Primal
Maximize z = c1x1 + c2x2 + + cnxn
subject to the constraints:
a11x1 + a12x2 + + a1nxn + xn+1 = b1;
a21x1 + a22x2 + + a2nxn + xn+2 = b2;
:
:
am1x1 + am2x2 + + amnxn + xm+n = bm;
and x1, x2, …, xn+m ≥ 0;
and its dual is
Maximize z* = b1w1 + b2w2 + + bnwn
100 ® Operations Research
Theorem 3.11: The value of the objective function z for any feasible solution of the primal (if it
exists) is equal to the value of the objective function z* for any feasible solution of the dual.
Proof: It is left for the reader as an exercise.
Note:
1. If either the primal or the dual problem has a finite optimal solution, then the other problem
also has a finite optimal solution. Also, the optimal values are same (by Theorem 3.11).
2. If either problem has an unbounded optimal solution then the other problem has an infeasible
solution.
3. Both the problems may have infeasible solution.
EXAMPLE 3.47: Use the dual simplex method to solve the following LPP:
Maximize z = –3x1 – x2
subject to the constraints:
x1 + x2 ≥ 1
2x1 + 3x2 ≥ 2
and x1, x2 ≥ 0.
Solution: Converting constraints in £ – type, we get
Maximize z = –3x1 – x2
subject to the constraints:
–x1 – x2 £ –1
–2x1 – 3x2 £ –2
and x1, x2 ≥ 0.
Introducing slack variables s1 and s2 in the constraints and putting x1 = x2 = 0, we get initial basic
infeasible solution s1 = –1 and s2 = –2. The initial iterative table is as follows.
cj –3 –1 0 0 RR
cB B xB x1 x2 s1 s2
0 s1 –1 –1 –1 1 0 –1
0 s2 –2 –2 –3 0 1 –2Æ
z 0 zj – cj 3 1 0 0
Thus, x2 will enter into the basis and s2 will leave the basis in the next iteration.
cj –3 –1 0 0 RR
cB B xB x1 x2 s1 s2
0 s1 –1/3 –1/3 0 1 –1/3 –1/3Æ
–1 x2 2/3 2/3 1 0 –1/3 –1/3
z 2/3 zj – cj 7/3 0 0 1/3
(zj – cj)/x2j : x2j < 0 (7/3)/(–1/3) – – (1/3)/(1/–3)
≠
102 ® Operations Research
Thus, s2 will enter into the basis and s1 will leave the basis in the next iteration.
cj –3 –1 0 0
cB B xB x1 x2 s1 s2
0 s2 1 1 0 –3 1
–1 x2 1 1 1 –1 0
z –1 zj – cj 2 0 1 0
Since zj – cj are non-negative for all j, the optimum solution is x1 = 0, x2 = 1 and maximum
z = –1.
EXAMPLE 3.48: Use the dual simplex method to solve the following LPP:
Maximize z = –3x1 – 2x2
subject to the constraints:
x1 + x2 ≥ 1
x1 + x2 £ 7
x1 + 2x2 ≥ 10
x2 £ 3
and x1, x2 ≥ 0.
Solution: Converting constraints in £ – type, we get
Maximize z = –3x1 – 2x2
subject to the constraints:
–x1 – x2 £ –1
x1 + x2 £ 7
–x1 – 2x2 £ –10
x2 £ 3
and x1, x2 ≥ 0.
Introducing slack variables s1, s2, s3 and s4 in the constraints and putting x1 = x2 = 0, we get
initial basic infeasible solution s1 = –1, s2 = 7, s3 = –10 and s4 = 3. The initial iterative table is shown
below.
cj –3 –2 0 0 0 0 RR
cB B xB x1 x2 s1 s2 s3 s4
0 s1 –1 –1 –1 1 0 0 0
0 s2 7 1 1 0 1 0 0
0 s3 –10 –1 –2 0 0 1 0 Æ
0 s4 3 0 0 0 0 0 1
z 0 zj – cj 3 2 0 0 0 0
(zj – cj)/x2j : x2j < 0 3/–1 2/–2 – – – – –
≠
Chapter 3: Linear Programming ® 103
cj –3 –2 0 0 0 0 RR
cB B xB x1 x2 s1 s2 s3 s4
0 s1 4 –1/2 0 1 0 –1/2 0
0 s2 2 1/2 0 0 1 1/2 0
–2 x2 5 1/2 1 0 0 –1/2 0
0 s4 –2 –1/2 0 0 0 1/2 1 Æ
z –10 zj – cj 2 0 0 0 1 0
(zj – cj)/x1j : x1j < 0 2/(–1/2) – – – – – –
≠
cj –3 –2 0 0 0 0
cB B xB x1 x2 s1 s2 s3 s4
0 s1 6 0 0 1 0 –1 –1
0 s2 0 0 0 0 1 1 1
–2 x2 3 0 1 0 0 0 1
–3 x1 4 1 0 0 0 –1 –2
z –18 zj – cj 0 0 0 0 3 4
Since zj – cj are non-negative for all j, the optimum solution is x1 = 4, x2 = 3 and maximum
z = –18.
EXAMPLE 3.49: Use the dual simplex method to solve the following LPP:
Maximize z = –2x1 – 2x2 – 4x3
subject to the constraints:
2x1 + 3x2 + 5x3 ≥ 2
3x1 + x2 + 7x3 £ 3
x1 + 4x2 + 6x3 £ 5
and x1, x2, x3 ≥ 0
Solution: Converting constraints in £ – type and adding slack variables s1, s2 and s3 in the
constraints and putting x1 = x2 = x3 = 0, we get initial basic infeasible solution s1 = –2, s2 = 3,
s3 = 5. The initial iterative table is given as follows.
104 ® Operations Research
cj –2 –2 –4 0 0 0 RR
cB B xB x1 x2 x3 s1 s2 s3
0 s1 –2 2 –3 –5 1 0 0 Æ
0 s2 3 3 1 7 0 1 0
0 s3 5 1 4 6 0 0 1
z 0 zj – cj 2 2 4 0 0 0
cj –2 –2 –4 0 0 0
cB B xB x1 x2 x3 s1 s2 s3
–2 x2 2/3 2/3 1 5/3 –1/3 0 0
0 s2 7/3 7/3 0 16/3 1/3 1 0
0 s3 7/3 –5/3 0 –2/3 4/3 0 1
Since zj – cj are non-negative for all j, the optimum solution is x1 = 0, x2 = 2/3, x3 = 0 and maximum
z = –4/3.
EXAMPLE 3.50: Use the dual simplex method to solve the following LPP:
Minimize z = 2x1 + x2 + x3
subject to the constraints:
4x1 + 6x2 + 3x3 £ 8
x1 – 9x2 + x3 £ –3
–2x1 – 3x2 + 5x3 £ –4
and x1, x2, x3 ≥ 0.
Solution: Adding slack variables s1, s2 and s3 in the constraints and putting x1 = x2 = x2 = 0, we
get the initial basic infeasible solution s1 = 8, s2 = –3, s3 = –4. The initial iterative table is as follows.
Chapter 3: Linear Programming ® 105
cj 2 1 1 0 0 0 RR
cB B xB x1 x2 x3 s1 s2 s3
0 s1 8 4 6 3 1 0 0
0 s2 –3 1 –9 1 0 1 0
0 s3 –4 2 –3 5 0 0 1 Æ
z 0 zj – cj 2 1 1 0 0 0
(zj – cj)/x2j : x2j < 0 – 1/–3 – – – –
≠
cj 2 1 1 0 0 0
cB B xB x1 x2 x3 s1 s2 s3
0 s1 0 0 0 13 1 0 2
0 s2 0 7 0 –14 0 1 –3
1 x2 4/3 2/3 1 –5/3 0 0 –1/3
z –4/3 zj – cj 4/3 0 8/3 0 0 1/3
Since zj – cj are non-negative for all j, the optimum solution is x1 = 0, x2 = 4/3, x3 = 0 and minimum
z = – (–4/3) = 4/3.
EXAMPLE 3.51: Use the dual simplex method to solve the following LPP:
Minimize z = 2x1 + 9x2 + 24x3 + 8x4 + 5x5
subject to the constraints: x1 + x2 + 2x3 – x5 – x6 = 1, –2x1 + x3 + x4 + x5 – x7 = 2;
xj ≥ 0, j = 1, 2, …, 7.
Solution: Multiplying the constraints equations by (–1) on both sides, we get the initial basic
infeasible solution x6 = –1, x7 = –2. The initial iterative table is given below.
cj 2 9 24 8 5 0 0 RR
cB B xB x1 x2 x3 x4 x5 x6 x7
0 x6 –1 –1 –1 –2 0 1 1 0
0 x7 –2 2 0 –1 –1 –1 0 1 Æ
z 0 zj – cj 2 9 24 8 5 0 0
(zj – cj)/x5j : x5j < 0 – – 24/–1 – 5/–1 – –
≠
106 ® Operations Research
cj 2 9 24 8 5 0 0 RR
cB B xB x1 x2 x3 x4 x5 x6 x7
0 x6 –3 1 –1 –3 –1 0 1 1 Æ
–5 x5 2 –2 0 1 1 1 0 –1
z –10 zj – cj 12 9 19 3 0 0 5
(zj – cj)/x4j : x4j < 0 – – 19/–3 3/–1 – – –
≠
cj 2 9 24 8 5 0 0 RR
cB B xB x1 x2 x3 x4 x5 x6 x7
–8 x4 3 –1 1 3 1 0 –1 –1
–5 x5 –1 –1 –1 –2 0 1 1 0 Æ
z –19 zj – cj 15 6 10 0 0 3 5
(zj – cj)/x3j : x3j < 0 – 6/–1 10/–2 – – – –
≠
cj 2 9 24 8 5 0 0
cB B xB x1 x2 x3 x4 x5 x6 x7
–8 x4 3/2 –5/2 –1/2 0 1 3/2 1/2 –1
–24 x3 1/2 1/2 1/2 1 0 –1/2 –1/2 0
z –24 zj – cj 10 1 0 0 5 8 8
Since zj – cj are non-negative for all j, the optimum solution is x1 = 0, x2 = 0, x3 = 1/2, x4 = 3/2,
x5 = 0, x6 = 0, x7 = 0 and minimum z = – (– 24) = 24.
Ê B 0ˆ Ê B -1 0ˆ
matrix as B* = Á T ˜ . Then B*–1 = Á T -1 ˜
Ë - cB I¯ Ë cB B I¯
Step 3: Write the objective function z = cTx as an additional constraint and form A* and b* as
Ê A ˆ Ê bˆ
A* = Á T ˜ and b* = Á ˜ .
Ë -c ¯ Ë 0¯
Ê A ˆ
zj – cj = (cBB–1 I) Á T ˜
Ë -c ¯
If all zj – cj are non-negative, then the current basic solution is the optimum solution.
If at least one zj – cj is negative, determine the most negative of them, say (zk – ck), then the
corresponding variable yk enters the basis. Go to step 5.
If there is a tie for the most negative zj – cj, resolve the tie by methods explained in the
Section 3.5. Go to step 5.
Step 5: Compute yk* = B*–1 ak*. If all yik £ 0, there exists an unbounded solution to the given LPP.
If at least one yik > 0, then consider the current xB and find the leaving variable. Go to step 6.
Step 6: Write down the results obtained in step 2 through step 5 in a tabular form known as revised
simplex table.
Step 7: Reduce the leading element to unity and all other elements of the entering column to zero
by elementary row operations and improve the current basic feasible solution.
Step 8: Go to step 4 and repeat the process until an optimum basic feasible solution is obtained,
or there is an indication of an unbounded solution.
Ê1 0 1 0 0ˆ Ê4 ˆ
Á ˜ Á ˜
Ax = b where A = Á 0 1 0 1 0 ˜ , b = Á6 ˜
Á ˜ Á ˜
Ë3 2 0 0 1¯ Ë 18¯
and c = (3, 5, 0, 0, 0). The initial solution is s1 = 4, s2 = 6, s3 = 18, with I3 as the initial basic matrix.
Now
Ê 1 0 1 0 0ˆ Ê 1 0 0 0ˆ
Á 0 1 0 1 0 ˜ Á 0 1 0 0˜
Ê A ˆ Á ˜ Ê B -1
0 ˆ Á ˜
A* = Á T ˜ = Á 3 2 0 0 1˜ , B*–1 = Á T -1 ˜ = Á 0 0 1 0 ˜
Ë -c ¯ Á ˜ Ë cB B I¯ Á ˜
Á ◊ ◊ ◊ ◊ ◊˜ Á ◊ ◊ ◊ ◊˜
Á ˜ Á ˜
Ë -3 -5 0 0 0 ¯ Ë 0 0 0 1¯
and cBT = (0, 0, 0). Then, net evaluation corresponding to x*2 is most negative, so x2* will enter into
the basis. Now y2* = B*–1 a2* = [0, x2 = 1, 2 : z2 – c2 = –5] and
Ïx ¸ Ï 6 18 ¸
xB* = B*–1 [bT, 0] = [4, s3 = 6, 18 : z = 0] and min Ì Bi : xi 2 > 0 ˝ = min Ì , ˝ = 6
i Ó xi 2 ˛ i Ó1 2 ˛
Then the initial revised simplex table is as shown below.
z 0 0 0 1 –5 0
≠
So y2* enters and s2 leaves the basis in the next iteration. We have
Ê1 0 0 0ˆ
Á0 1 0 0˜
Á ˜
B*–1 = Á 0 -2 1 0˜
Á ˜
Á ◊ ◊ ◊ ◊˜
Á ˜
Ë0 5 0 1¯
and therefore, zj – cj = (0, 5, 0, 1) aj* = (–3, 0, 0, 5, 0), i.e. So y1* will enter into the basis. The iteration
table is as follows.
Chapter 3: Linear Programming ® 109
z 30 0 5 0 1 –3
≠
Ê 1 2/3 -1/3 0ˆ
Á0 1 0 0˜
Á ˜
B*–1 Á
= 0 -2/3 1/3 0˜
Á ˜
Á◊ ◊ ◊ ◊˜
Á ˜
Ë0 3 1 1¯
and therefore, zj – cj = (0, 3, 1, 1) a*j = (0, 0, 0, 3, 1) all are non-negative, so we get optimal basic
feasible solution x1 = 2, x2 = 6 and maximum z = 36.
EXAMPLE 3.53: Use the revised simplex method to solve the LPP:
Maximize z = x1 + 2x2
subject to the constraints: 3x1 + 2x2 ≥ 6, x1 + 6x2 ≥ 3; and x1, x2 ≥ 0.
Solution: Writing standard form of LPP by introducing surplus variables s1 and s2 and artificial
variables A1 and A2 respectively in the constraints, we have
Maximize z = cTx
subject to the constraints:
Ê 3 2 -1 0 1 0 ˆ
Ax = b where A = Á , b = [6 3]T
Ë 1 6 0 -1 0 1 ˜¯
110 ® Operations Research
and cT = [1, 2, 0, 0, –M, –M]. The initial basic feasible solution is A1 = 6 and A2 = 3 with B = I2
as initial basis. Now
Ê 3 2 -1 0 1 0ˆ Ê 1 0 0ˆ
Á 1˜ Ê B -1 Á 1 0˜
Ê A ˆ 1 6 0 -1 0 0ˆ Á 0
A* = Á T ˜ = Á ˜ , B*–1 =
Á T -1 ˜ = ˜ and
Ë -c ¯ Á ◊ ◊ ◊ ◊ ◊ ◊˜ Ë cB B I¯ Á ◊ ◊ ◊˜
ÁÁ ˜˜ Á ˜
Ë -1 -2 0 0 M M¯ ËÁ - M - M 1 ¯˜
cBT = (–M, –M). Then net evaluations for non-basic variables are
zj – cj = [–M, –M, 1]
Ê 1 -1/3 0ˆ
Á 0 1/6 0˜
B*–1 = Á ˜ and
Á ◊ ◊ ◊˜
ÁÁ ˜
Ë -M M/3 + 1/3 1 ˜¯
zj – cj = [–M, M/3 + 1/3, 1] aj* = [(–8M – 2)/3, M, –(M + 1)/3]. Clearly z1 – c1 is the most negative,
so y1* will enter into the basis. The iterative table is as follows.
Ê 3/8 -1/8 0 ˆ
Á -1/16 3/16 0 ˜
B*–1 = Á ˜
Á ◊ ◊ ◊˜
ÁÁ ˜
Ë 1/4 1/4 1 ˜¯
and zj – cj = [1/4, 1/4, 1] a*j = [–1/4, –1/4]. Since both z3 – c3 and z4 – c4 are equal and negative,
any of the non-basis variable s1 and s2 enters the basis. Let s2 enter in the basis. The revised iterative
table is as given below.
Now
Ê 3 -1 0ˆ
Á1 / 2 0 0˜
Á ˜
B*–1 = Á 1 0 1˜
Á ˜
Á ◊ ◊ ◊˜
Á ˜
Ë 1 0 1¯
and therefore zj – cj = [1, 0 , 1] aj* = [2, –1] which indicates that s1 enters into the basis.
s1 = B*–1 a3* = [–3, –1/2 : –1]. As both the entries of s1 are negative, the given LPP has an
unbounded solution.
EXAMPLE 3.54: Use the revised simplex method to solve the LPP:
Minimize z = 4x1 + 2x2 + 3x3
subject to the constraints:
2x1 + 4x3 ≥ 5
2x1 + 3x2 + x3 ≥ 4
and x1, x2, x3 ≥ 0.
Solution: Writing standard form of LPP by introducing surplus variables s1 and s2 and artificial
variables A1 and A2 respectively in the constraints, we have initial basic feasible solution as
A1 = 5 and A2 = 4 with B = I2 as initial basis.
Phase 1: The redundant equation is
z* – {(2x1 + 2x1) + 3x2 + (4x3 + x3) – x4 – x5} = (–5) + (–4)
i.e. – 4x1 – 3x2 – 5x3 + x4 + x5 + z* = –9
112 ® Operations Research
Ê 2 0 4 -1 0 1 0 0 0ˆ
Á 2 3 1 0 -1 0 1 0 0˜
Á ˜
Thus *
A = Á ◊ ◊ ◊ ◊ ◊ ◊ ◊ ◊ ◊˜
Á ˜
Á 4 2 3 0 0 0 0 1 0˜
Á ˜
Ë -4 -3 -5 1 1 0 0 0 1¯
and B* = I4 = B*–1. The net evaluations zj – cj = [–4 –3 –5 1 1] which shows that y3* enters
the basis and y3* = B*–1 a3* = [4 1 3 –5], xB* = B*–1 b* = [5 4 0 –9]. Thus, the initial revised
simplex table is
The updated
Ê 1/4 0 0 0ˆ
Á -1/4 1 0 0˜
Á ˜
B*–1 = Á -3/4 0 1 0˜
Á ˜
Á ◊ ◊ ◊ ◊˜
Á ˜
Ë 5/4 0 0 1¯
and zj – cj = [5/4 0 0 1] [a*1 a2* a3* a4*] = [–3/2 –3 –1/4 1]. This shows that y2* enters
the basis and the iterative table is as follows.
Again
Ê 1/4 0 0 0ˆ
Á -1/12 1/3 0 0˜
Á ˜
B*–1 = Á -7/12 -2/3 1 0˜
Á ˜
Á ◊ ◊ ◊ ◊˜
Á ˜
Ë 1 1 0 1¯
Chapter 3: Linear Programming ® 113
The net evaluations are zj – cj = [–7/12 –2/3 1] [a1* a4* a5*] = [3/2 7/12 2/3] are all non-negative,
the optimum solution is x1 = 0, x2 = 11/12, x3 = 5/4 and minimum z = 67/12.
3.11.1 Variations in b
If xB is the optimal basic feasible solution of the standard LPP with B as the required basis, then
xB = B–1b. Let the component bk of the vector b be changed to bk + Dbk. Denote new requirement
vector by b*. Then b* = [b1, b2, …, bk–1, bk + Dbk, bk+1, …, bm]. The new basic feasible solution is
m
xB* = B–1b* = xB + Â bk Dbk . If xB* ≥ 0 then xBi + bikDbk ≥ 0. Thus range of Dbk, for optimal feasible
k =1
solution is
Ï -x ¸ Ï -x ¸
max Ì Bi ˝ £ Dbk £ min Ì Bi ˝
bik > 0 Ó bik ˛ bik < 0 Ó bik ˛
EXAMPLE 3.55: Discuss the effect on the optimal solution of the changes in the requirement
vector for the following LPP:
Maximize z = 2x1 + x2
subject to the constraints:
3x1 + 5x2 £ 15
6x1 + 2x2 £ 24
and x1, x2 ≥ 0.
Solution: It is left for the students to check that the following solution is the optimum solution.
cB B xB x1 x2 s1 s2
1 x2 3/4 0 1 1/4 –1/8
2 x1 15/4 1 0 –1/12 5/24
z 33/4 0 0 1/3 7/24
114 ® Operations Research
Ê 1/4 -1/8ˆ
Thus x1 = 15/4, x2 = 3/4 and B–1 = Á . Then individual changes in b1 and b2 are
Ë -1/12 5/24 ˜¯
Ï - 2/4 ¸ Ï - 15/4 ¸
max Ì ˝ £ D b1 £ min Ì ˝ i.e. –3 £ Db1 £ 45
b11 > 0 Ó 1/4 ˛ b12 < 0 Ó - 1/12 ˛
Ï - 15/4 ¸ Ï - 3/4 ¸
and max Ì ˝ £ D b2 £ min Ì ˝ i.e. –18 £ Db2 £ 6
b22 > 0 Ó 5/24 ˛ b21 < 0 Ó - 1/8 ˛
Now, since given b1 = 15 and b2 = 24, the required range of variation is 15 – 3 £ b1 £ 15 + 45 and
24 – 18 £ b2 £ 24 + 6 or 12 £ b1 £ 60 and 6 £ b2 £ 30.
cB B xB x1 x2 x3 s1 s2 s3 A1
0 s1 6 3 0 –2 1 0 –1 0
2 x2 4 0 1 1 0 0 1 0
0 s2 10 1 0 0 0 1 4 –1
z 8 zj – cj 1 0 0 0 0 2 M
Ï -4 10 ¸ Ï -6 ¸
and max Ì , - ˝ £ D b3 £ Ì ˝ i.e. –5/2 £ Db3 £ 6
Ó 1 4 ˛ Ó -1 ˛
Now, since given b2 = 6 and b3 = 4, the required range of variation is b2 £ 10 + 6 and
4 – 5/2 £ b2 £ 4 + 6 or b2 £ 16 and 3/2 £ b3 £ 10.
Chapter 3: Linear Programming ® 115
3.11.2 Variations in c
Let the component ck of the cost vector c be changed to ck + Dck. Since the condition for optimality
requires zj – cj ≥ 0, it may violate the condition of optimality depending on whether ck œ cB or
ck Œ cB.
In case (i) zk* – ck* = zk – (ck + Dck). Then the current solution will remain optimal if
zk – (ck + Dck) ≥ 0, i.e. Dck £ zk – ck for all ck œ cB.
In case (ii) zj* – cj* = (zj – cj) + Dck ykj. The current solution will remain optimal if zj* – cj* ≥ 0,
ÏÔ -( z j - c j ) ¸Ô ÏÔ -( z j - c j ) ¸Ô
i.e. the range of Dck is max Ì ˝ £ Dck £ min Ì ˝ to have an optimum solution.
ykj > 0 Ô
Ó ykj ˛Ô ykj < 0 Ô
Ó ykj ˛Ô
cB B xB x1 x2 s1 s2 s3
45 x2 173/13 0 1 5/78 –1/78 0
15 x1 352/13 1 0 –1/39 8/39 0
0 s3 477/13 0 0 –5/78 1/78 1
z 1005 0 0 5/2 5/2 0
Note: s1, s2 and s3 are slack variables added in the given three constraints.
We have c1 Œ cB. Therefore, feasibility of the optimal solution is maintained if
Ï - 5/2 ¸ Ï - 5/2 ¸
max Ì ˝ £ D c1 £ min Ì ˝ or –195/16 £ Dc1 £ 195/2. Therefore, the range of c1 is
Ó 8/39 ˛ Ó -1/39 ˛
15 – 195/16 £ c1 £ 15 + 195/2 or 45/16 £ c1 £ 225/2.
Solution: It is left for the students to check that the following solution is the optimum solution.
cB B xB x1 x2 s1 s2 s3
0 s1 2 0 0 1 2/3 –1/3
5 x2 6 0 1 0 1 0
3 x1 2 1 0 0 –2/3 1/3
z 36 0 0 0 3 1
Note: s1, s2 and s3 are slack variables added in the given three constraints.
Since the objective function is changed to 3x1 + x2; c2 has been changed to 1 keeping c1 fixed.
Clearly, c2 Œ cB. Therefore, feasibility of the optimal solution is maintained if
Ï -3 ¸
max Ì ˝ £ Dc2 £ • or –3 £ Dc2 £ •
Ó 1 ˛
Therefore, the range of c2 is 5 – 3 £ c2 £ • or 2 £ c2 £ •. This indicates that if c2 is changed,
optimality does not hold. Then the aim is to find the new optimal solution. It is left for the reader
to work out the following table.
cB B xB x1 x2 s1 s2 s3
0 s2 3 0 0 3/2 1 –1/2
1 x2 3 0 1 –3/2 0 1/2
3 x1 4 1 0 1 0 0
z 15 0 0 3/2 0 1/2
cB B xB x1 x2 x3 s1 s2 s3
5 x2 50/41 0 1 0 15/41 8/41 –10/41
4 x3 62/41 0 0 1 –6/41 5/41 4/41
3 x1 89/41 1 0 0 –2/41 –12/41 15/41
z 765/41 0 0 0 45/41 24/41 11/41
Note: s1, s2 and s3 are slack variables added in the given three constraints.
Chapter 3: Linear Programming ® 117
From the above table, c3 Œ cB and c4 œ cB. The range of variations in Dc3 is given by
Ï - 24/41 - 11/41 ¸ Ï - 45/41 ¸
max Ì , ˝ £ Dc3 £ min Ì ˝ or –11/4 £ Dc3 £ 15/2
Ó 5/41 4/41 ˛ Ó - 6/41 ˛
So the range of c3 is
11 15 5 23
4- £ c3 £ 4 + or £ c3 £
4 2 4 2
For the range of variations in c4 œ cB, we have Dc4 £ 45/41 and so the range of c4 is c4 £ 45/41.
The range of variations in Db2 is given by
Ï - 50/41 62/41 ¸ Ï - 89/41 ¸ 25 89
max Ì , ˝ £ D b2 £ min Ì ˝ or £ Db2 £
Ó 8/41 5/41 ˛ Ó - 12/41 ˛ 4 12
So the range of b2 is
25 89 15 209
10 - £ b2 £ 10 + or £ b2 £
4 12 4 12
REVIEW EXERCISES
1. Solve graphically:
(a) Maximize z = 90x1 + 60x2
subject to: 5x1 + 8x2 £ 2000
x1 £ 175
x2 £ 225
7x1 + 4x2 £ 1400
x1, x2 ≥ 0
[Ans. x1 = 800/9, x2 = 1750/9, max z = 59,000/3]
(b) Maximize z = 60x1 + 40x2
subject to: x1 £ 25
x2 £ 35
2x1 + x2 = 60
x1, x2 ≥ 0
[Ans. x1 = 25, x2 = 10, max z = 1900]
(c) Maximize z = 30x1 + 40x2
subject to: 4x1 + 6x2 £ 180
x1 £ 20
x2 ≥ 10
x1 + x2 £ 40
x1, x2 ≥ 0
[Ans. x1 = 16, x2 = 16.66667, max z = 1266.67]
118 ® Operations Research
4. O’Hagan Bookworm Booksellers buys books from two publishers. Duffin House offers a
package of 5 mysteries and 5 romance novels for $50, and Gorman Press offers a package
of 5 mysteries and 10 romance novels for $150. O’Hagan wants to buy at least 2,500
mysteries and 3,500 romance novels, and he has promised Gorman (who has influence on
the Senate Textbook Committee) that at least 25% of the total number of packages he
purchases will come from Gorman Press. How many packages should O’Hagan order from
each publisher in order to minimize his cost and satisfy Gorman? What will the novels cost
him? Solve graphically.
[Ans. Buy 420 packages from Duffin House
and 140 from Gorman Press for a total cost of $42,000]
5. In addition to the best selection of novels in South Park Mall, O'Hagan Booksellers also
specializes in fantasy novels and art books. The manager at O'Hagan Booksellers, S. Shady,
is considering a sales promotion of a new collection of fantasy novels and art books, and he
plans to price the books so low as to actually take a loss: O'Hagan will lose $3 on every
fantasy novel and $2 on every art book sold in the promotion. Since the store will only offer
the art books to those who purchase two or more fantasy novels, the store will sell at least
twice as many fantasy novels as art books, and also plans to sell at least 210 items in all.
On the other hand, the store can spare up to 900 units of display space for the sale. S. Shady
calculates that fantasy novels each require 3 units of display space, while art books require
2 units. Given these constraints, how many fantasy novels and art books should O'Hagan
Booksellers order to lose the least amount of money in the sales promotion? Solve
graphically.
[Ans. Order 140 fantasy novels and 70 art books]
6. A local travel agent is planning a charter trip to a major sea resort. The eight day/seven-night
package includes the fare for round-trip travel surface transportation, board and loading and
selected tour options. The charter trip is restricted to 200 persons and the past experience
indicates that there will not be any problem for getting 200 persons. The problem for the
travel agent is to determine the number of Deluxe, Standard, and Economy tour packages
to offer for this charter. These three plans each differ according to seating and service for
the flight, quality of accommodations, meal plans, and tour options. The following
summarizes the estimated prices for the three packages and corresponding expenses for the
travel agent. The travel agent has hired an aircraft for the flat fee of Rs. 2,00,000 for the
entire trip.
Prices and costs for tour packages per person
Tour plan Price (Rs.) Hotel costs (Rs.) Meals & other expenses (Rs.)
Deluxe 10,000 3,000 4,750
Standard 7,000 2,200 2,500
Economy 6,500 1,900 2,200
(iv) The maximum number of deluxe package available in any aircraft is restricted to 60.
(v) The hotel desires that at least 120 of the tourists should be on the deluxe and standard
packages together.
The travel agent wishes to determine the number of packages to offer in each type so as to
maximize the total profit.
(a) Formulate the above as a linear programming problem.
(b) Restate the above linear programming problem in terms of two decision variables,
taking advantage of the fact those 200 packages will be sold.
(c) Find the optimum solution using the graphical method for the restated linear
programming problem and interpret your results.
[Ans. maximize z = 150x1 – 100x2 + 2,80,000,
x1 = 20, x2 = 100, max z = 2,67,000]
7. (a) Maximize z = 40x1 + 30x2
subject to: x1 + 2x2 £ 40; 4x1 + 3x2 £ 120; x1, x2 ≥ 0
[Ans. x1 = 30, x2 = 0, max z = 1200 or x1 = 24, x2 = 8, max z =1200]
(b) Maximize z = 3x1 – x2
subject to: 15x1 – 5x2 £ 30; 10x1 + 30x2 £ 120; x1, x2 ≥ 0
[Ans. x1 = 2, x2 = 0, max z = 6 or x1 = 3, x2 = 3, max z = 6]
8. (a) Maximize z = 5x1 + 3x2
subject to: 4x1 + 2x2 £ 8; x1 ≥ 4; x2 ≥ 6; x1, x2 ≥ 0
(b) Maximize z = 6x1 – 4x2
subject to: 2x1 + 4x2 £ 4, 4x1 + 8x2 ≥ 16; x1, x2 ≥ 0
[Ans. Infeasible solution]
9. (a) Maximize z = 4x1 + 2x2
subject to: x1 ≥ 4, x2 £ 2; x1, x2 ≥ 0
(b) Maximize z = –x1 + x2
subject to: –x1 + 4x2 £ 10, –3x1 + 2x2 £ 2; x1, x2 ≥ 0
[Ans. Unbounded solution]
10. Find the maximum value of p = x + 2y + 3z
subject to: 7x + z £ 6, x + 2y £ 20, 3y + 4z £ 0; x ≥ 0, y ≥ 0, z ≥ 0
[Ans. x = 0.8571, y = 0, z = 0, max p = 0.8571]
11. Find the maximum value of p = 2x – 3y + 5z
subject to: 2x + y £ 16, y + z £ 10, x + y + z £ 20; x ≥ 0, y ≥ 0, z ≥ 0
[Ans. x = 8, y = 0, z = 10, max p = 66]
12. Find the minimum value of z = x1 – 3x2 + 2x3
subject to: 3x1 – x2 + 2x3 £ 7, –2x1 + 4x2 £ 12, –4x1 + 3x2 + 8x3 £ 10; x1, x2 and x3 ≥ 0.
[Ans. x1 = 4, x2 = 5, min z = – 11]
Chapter 3: Linear Programming ® 121
(e) A transistor radio company manufactures four models A, B, C and D, which have profit
contribution of Rs. 8, 12, and 22 on model A, B and C respectively and a loss of
Re. 1 on model D. Each type of radio requires a certain amount of time for the
manufacturing of components for assembling and for packing. Specially, a dozen units
of model A require one hour of manufacturing, two hours for assembling and one hour
for packing. The corresponding figures for a dozen units of model B are 2, 1 and 2 and
for a dozen units of C are 3, 5 and 1, while a dozen units of model D require 1 hour
of packing only. During the forthcoming week, the company will be able to make
available 15 hours of manufacturing, 20 hours of assembling and 10 hours of packing
time. Obtain the optimal production schedule for the company.
[Hint: max p = 8x + 12y + 22z – w subject to: x + 2y + 3z = 15, 2x + y + 5z = 20,
x + 2y + z + w = 10; x, y, z, w ≥ 0.
Solve the LP problem to show that these have alternative optimal solutions.
[Ans. x = y = z = 2.5, w = 0, max p = 105]
(f) Find the minimum value of p = 2x + 8y
subject to: 2x + 2y ≥ 14, 5x + y ≥ 10, x + 4y ≥ 12; x, y ≥ 0.
[Ans. (i) x = 12, y = 0, min p = 24. (ii) x = 16/3, y = 5/3, min p = 24]
(g) Find the maximum value of p = x + 2y + 3z – w
subject to: x + 2y + 3z = 15, x + 2y + z + w ≥ 10, 2x + y + 5z ≥ 20; x, y, z, w ≥ 0.
[Ans. (i) x = y = z = 2.5, w = 0, max p = 15 or
x = 0, y = 15/7, z = 25/7, w = 0, max p = 15]
21. Solve the following LP problem to show that these have unbounded solutions.
(a) Find the minimum value of p = x + 2y + 3z
subject to: x + y + z ≥ 500, x + 2y + 3z ≥ 700, –y + 3z £ 0; x, y, z ≥ 0
[Ans. The solution is unbounded]
(b) Find the minimum value of p = 50x + 150y + 100z
subject to: 5x + 5y + 5z ≥ 2,500, 5x + 10y + 15z ≥ 3,500, 3x – y + 3z £ 0; x, y, z ≥ 0
[Ans. The solution is unbounded]
22. Solve the following LP problem to show that these have no feasible solutions.
(a) Find the minimum value of p = x – 2y – 3z
subject to: –2x + y + 2z = 2, 2x + 3y + 2z = 1; x, y, z ≥ 0.
[Ans. There is no feasible solution]
(b) Find the maximum value of p = x + 3y
subject to: x – y ≥ 1, 3x – y £ –3; x, y ≥ 0.
[Ans. There is no feasible solution]
23. Senator Porkbarrel overdraws his accounts at the following banks: the Congressional
Integrity Bank, Citizens’ Trust, and “Checks R Us.” There are no penalties for these
withdrawals since the overdrafts are subsidized by the taxpayer. The Senate Ethics
Committee tends to let slide irregular banking activities of this sort, provided they are not
Chapter 3: Linear Programming ® 123
flagrant. At the moment (due to Congress’ preoccupation with impeachment hearings) a total
overdraft of up to $10,000 will be overlooked. Porkbarrel’s underlying sense of guilt makes
him feel funny about writing overdrafts for banks whose names include expressions like
“integrity” and “citizens’ trust.” The effect of this is that his bad check writing for the first
two banks combined amounts to no more than one-quarter of the total. On the other hand,
the financial officers at Integrity Bank are eager to please Senator Porkbarrel due to his
influential position on the Senate Banking Committee, so they would like him to overdraw
his account by as much as possible. Find the amount he should draw from each bank in order
to avoid investigation by the Ethics Committee and overdraw his account at Integrity by as
much as his sense of guilt will allow.
[Ans. $2,500 from Congressional Integrity Bank,
$0 from Citizens’ Trust, $7,500 from Checks R Us]
24. Your software company has launched the latest version of its web browser, “Java Cruise
4.0.” As the sales manager, you are planning to promote Java Cruise 4.0 by sending sales
forces to software conventions running concurrently in Saint Louis and Detroit. You have
6 representatives available at each of your Little Rock, Ark. and Urbana, Ill. branches, and
you would like to send at least 5 to the Saint Louis convention and at least 4 to the Detroit
convention. The Saint Louis convention will last for three days, while the Detroit convention
will last for two days. Air fares (per person) and hotel accommodation costs (per person) are
shown in the following figure.
3 nights 2 nights
$60 per night $100 per night
How many representatives should you send from each branch to each convention in order
to minimize the total (air travel and accommodation) cost? What will the total cost amount
to?
Let
x = the number of representatives sent from Little Rock to St. Louis
y = the number of representatives sent from Little Rock to Detroit
z = the number of representatives sent from Urbana to St. Louis
w = the number of representatives sent from Urbana to Detroit.
124 ® Operations Research
4.1 INTRODUCTION
In the previous chapter, we have studied that in LPP, each of the decision variables as well as slack
and/or surplus variables is allowed to take non-negative real value. However, while solving for
number of machines or mankind, real value like 2.3 or 4.8 is meaningless. Thus, in practice, we come
across certain practical problems where integer values are desired. The next question arises: Can not
we round off the solution obtained by the methods stated in previous chapter? The answer is: It may
be beneficial in terms of efforts or time but may not be an optimal solution and some of the
constraints may not remain valid.
Consider the following LPP:
Maximize z = 3x1 + 4x2
subject to the constraints:
2x1 + 4x2 £ 13
–2x1 + x2 £ 2
2x1 + 2x2 ≥ 1
6x1 – 4x2 £ 15
and x1, x2 ≥ 0 are integers.
If we neglect the integer constraints then by the graphical solution (Figure 4.1), the optimum
value is obtained at the point (3.5, 1.5) and z = 16.5. But since the variables have to be integers, we
try to round off (3.5, 1.5) and get point as (3, 2), (4, 1), (4, 2) and (3, 1). But the first three points
are out of the feasible region. So, if we consider that after rounding off the solution would be (3,
1), then we would be mistaken because z = 13 at (3,1) but (2, 2) gives z = 14, which is a better
solution than (3, 1) and in this case optimal. So, there is a need to devise more sophisticated methods
than merely rounding off. Let us discuss the following two methods to solve LPP in integer
requirement.
125
126 ® Operations Research
Constraints
3.25 Isoprofit line
(3.5, 1.5)
X2
2.5 6.5
X1
Figure 4.1
cB B xB x1 x2 s1 s2
3 x2 2/3 0 1 2/3 –1/3
4 x1 8/3 1 0 –1/3 2/3
z 38/3 zj – cj 0 0 2/3 5/3
The fractional part for both x1 and x2 is 2/3. So, anyone can be selected. Consider the first row for
constructing a cut. We have
2 2 1 2 Ê 2ˆ
£ x2 + s1 - s2 £ x2 + s1 + Á -1 + ˜ s2
3 3 3 3 Ë 3¯
Taking all the integral parts on one side, the corresponding fractional cut is given by
2 2 2
g1 = - + s + s
3 3 1 3 2
128 ® Operations Research
g1 is called the Gomorian slack variable. Insert this constraint at the bottom of the previous optimal
table.
cB B xB x1 x2 s1 s2 g1
3 x2 2/3 0 1 2/3 –1/3 0
4 x1 8/3 1 0 –1/3 2/3 0
0 g1 –2/3 0 0 –2/3 –2/3 1Æ
z 38/3 zj – cj 0 0 2/3 5/3 0
RR – – –1≠ –5/2 0
Using the dual simplex method, g1 leaves the basis and s1 enters.
cB B xB x1 x2 s1 s2 g1
3 x2 0 0 1 0 –1 1
4 x1 3 1 0 0 1 –1/2
0 s1 1 0 0 1 1 –3/2
z 12 zj – cj 0 0 0 1 1
cB B xB x1 x2 s1 s2
2 x1 4/7 1 0 5/7 –3/14
2 x2 12/7 0 1 –1/7 5/14
z 32/7 zj – cj 0 0 8/7 2/7
The fractional parts for x1 and x2 are 4/7 and 5/7. We select the largest fractional part which
corresponds to the second row for constructing a Gomorian cut. Hence, we have
5 Ê 6ˆ 5
= x2 + Á -1 + ˜ s1 + s
7 Ë 7¯ 14 2
Chapter 4: Integer Programming ® 129
cB B xB x1 x2 s1 s2 g1
2 x1 4/7 1 0 5/7 –3/14 0
2 x2 12/7 0 1 –1/7 5/14 0
0 g1 –5/7 0 0 –6/7 –5/14 1Æ
z 32/7 zj – cj 0 0 8/7 2/7 ≠ 0
RR – – – 4/3 – 4/5
Solving by the dual simplex method suggests that g1 leaves the basis and s2 enters into the basis. So,
we get the iterative table as follows.
cB B xB x1 x2 s1 s2 g1
2 x1 1 1 0 61/35 0 –3/5
2 x2 1 0 1 –1 0 1
0 s2 2 0 0 12/5 1 –14/5
z 4 zj – cj 0 0 16/35 0 4/5
EXAMPLE 4.3: A manufacturer of baby-dolls makes two types of dolls: Doll X and doll Y.
Processing of these two dolls is done on two machines, A and B. Doll X requires two hours of
machine A and six hours on machine B. Doll Y requires five hours on machine A and also five hours
on machine B. There are sixteen hours of time per day available on machine A and thirty hours on
machine B. The profit gained on both the dolls is same, i.e. one rupee per doll. What should be the
daily production of each of the two dolls? Set up and solve the LPP. If the optimal solution is not
integer-valued, use the Gomory cutting plane method to find integer-valued solution.
Solution: The mathematical formulation is
Maximize z=x+y
subject to the constraints: 2x + 3y £ 16
6x + 5y £ 30
and x, y ≥ 0 and are integers.
130 ® Operations Research
cB B xB x y s1 s2
1 y 9/5 0 1 3/10 –1/10
1 x 7/2 1 0 –1/4 1/4
z 53/10 zj – cj 0 0 1/20 3/20
x = 7/2 and y = 9/5 is not the integer-valued. A fractional cut is formatted with the first row as
4 3 Ê 9ˆ
1+ =y+ s + -1 +
10 1 ËÁ 10 ¯˜ 2
s
5
The corresponding Gomorian slack variable is
4 3 9
g1 = - + s1 + s
5 10 10 2
Solving the following table, using the dual simplex method suggests that
cB B xB x y s1 s2 g1
1 y 9/5 0 1 3/10 –1/10 0
1 x 7/2 1 0 –1/4 1/4 0
0 g1 –4/5 0 0 –3/10 –9/10 1Æ
z 53/10 zj – cj 0 0 1/20 3/20 0
RR – – –1/3 –1/6 ≠
cB B xB x y s1 s2 g1
1 y 17/9 0 1 1/3 0 –1/9
1 x 59/8 1 0 –1/3 0 5/18
0 s2 8/9 0 0 1/3 1 –10/9
z 31/6 zj – cj 0 0 0 0 1/6
Still the solution is not integral-valued. Insert the fractional cut from the third row as
8 1 Ê 8ˆ
= s1 + s2 + Á -2 + ˜ g1
9 3 Ë 9¯
The Gomorian slack variable is
8 1 8
g2 = - + s1 + g1
9 3 9
Chapter 4: Integer Programming ® 131
cB B xB x y s1 s2 g1 g2
1 y 17/9 0 1 1/3 0 –1/9 0
1 x 59/8 1 0 –1/3 0 5/18 0
0 s2 8/9 0 0 1/3 1 –10/9 0
0 g2 –8/9 0 0 –1/3 0 –8/9 1Æ
z 31/6 zj – cj 0 0 0≠ 0 1/6 0
Solving the above table by the dual simplex method suggests that g2 leaves and s1 enters. So, we
get
cB B xB x y s1 s2 g1 g2
1 y 1 0 1 0 0 –1 1
1 x 25/6 1 0 0 0 7/6 –1
0 s2 0 0 0 0 1 –2 1
0 s1 8/3 0 0 1 0 8/3 –3
z 31/6 zj – cj 0 0 0 0 1/6 0
As x is not an integer, we need one more fractional cut from the fourth row.
1 Ê 2ˆ
2+ = s1 + Á 2 + ˜ g1 + ( -3 + 0) g2
3 Ë 3¯
cB B xB x y s1 s2 g1 g2 g3
1 y 1 0 1 0 0 –1 1 0
1 x 25/6 1 0 0 0 7/6 –1 0
0 s2 0 0 0 0 1 –2 1 0
0 s1 8/3 0 0 1 0 8/3 –3 0
0 g3 –2/3 0 0 0 0 –2/3 0 1Æ
z 31/6 zj – cj 0 0 0 0 1/6 ≠ 0 0
cB B xB x y s1 s2 g1 g2 g3
1 y 2 0 1 0 0 0 1 –3/2
1 x 3 1 0 0 0 0 –1 7/4
0 s2 2 0 0 0 1 0 1 –3
0 s1 0 0 0 1 0 0 –3 4
0 g1 1 0 0 0 0 1 0 –3/2
z 5 zj – cj 0 0 0 0 0 0 1/4
Solution: Introducing the slack variable s1 in the first constraint and the artificial variable A in the
second constraints and ignoring integer-valued requirement, the optimal solution is given by the
simplex table.
cB B xB x1 x2 x3 s1
20 x2 5/8 0 1 1/5 3/40
2 x1 5/4 1 0 0 –1/4
z 15 zj – cj 0 0 14 1
Since the solution is non-integer, a fractional cut is constructed from the first row,
5 1 3
= x2 + x3 + s
8 5 40 1
The corresponding Gomorian slack variable is
5 1 3
g1 = - + x + s
8 5 3 40 1
Chapter 4: Integer Programming ® 133
cB B xB x1 x2 x3 s1 g1
20 x2 5/8 0 1 1/5 3/40 0
2 x1 5/4 1 0 0 –1/4 0
0 g1 –5/8 0 0 –1/5 –3/40 1Æ
z 15 zj – cj 0 0 14 1≠ 0
RR – – –70 –40/3 0
Solving the above table by the dual simplex method suggests that g1 exits and s1 enters.
cB B xB x1 x2 x3 s1 g1
20 x2 0 0 1 0 0 1
2 x1 10/3 1 0 2/3 0 –10/3
0 s1 25/3 0 0 8/3 1 –40/3
z 20/3 zj – cj 0 0 34/3 0 40/3
Since the solution is non-integer, a fractional cut is constructed from the third row,
1 Ê 2ˆ Ê 2ˆ
8+ = Á 2 + ˜ x3 + s1 + Á - 14 + ˜ g1
3 Ë 3¯ Ë 3¯
cB B xB x1 x2 x3 s1 g1 g2
20 x2 0 0 1 0 0 1 0
2 x1 10/3 1 0 2/3 0 –10/3 0
0 s1 25/3 0 0 8/3 1 –40/3 0
0 g2 –1/3 0 0 –2/3 0 –2/3 1Æ
z 20/3 zj – cj 0 0 34/3 ≠ 0 40/3 0
RR – – –17 – –20 0
134 ® Operations Research
Then the dual simplex method suggests that x3 enters and g2 leaves the basis.
cB B xB x1 x2 x3 s1 g1 g2
20 x2 0 0 1 0 0 1 0
2 x1 3 1 0 0 0 –4 1
0 s1 7 0 0 0 1 –16 4
–10 x3 1/2 0 0 1 0 1 –3/2
z 1 zj – cj 0 0 0 0 2 17
Since the solution is not integer, a third fractional cut is required. From the last row, we have
1 Ê 1ˆ
= x3 + g1 + Á - 2 + ˜ g2
2 Ë 2¯
The corresponding Gomorian slack variable is
1 1
g3 = + g
2 2 2
The new iteration is
cB B xB x1 x2 x3 s1 g1 g2 g3
20 x2 0 0 1 0 0 1 0 0
2 x1 3 1 0 0 0 –4 1 1
0 s1 7 0 0 0 1 –16 4 4
–10 x3 1/2 0 0 1 0 1 –3/2 –3/2
0 g3 1/2 0 0 0 0 0 –1/2 1Æ
z 1 zj – cj 0 0 0 0 2 17 ≠ 0
RR – – – – – –34 0
cB B xB x1 x2 x3 s1 g1 g2 g3
20 x2 0 0 1 0 0 1 0 0
2 x1 2 1 0 0 0 –4 0 2
0 s1 3 0 0 0 1 –16 0 8
–10 x3 2 0 0 1 0 1 0 –3
0 g2 1 0 0 0 0 0 1 –2
z –16 zj – cj 0 0 0 0 2 0 34
cB B xB x1 x2 s1 s2 s3
2 x2 7/2 0 1 1/2 0 0
1 x1 7/2 1 0 –1/2 1 0
0 s3 4 0 0 1 –2 1
z 21/2 zj – cj 0 0 1/2 –1 0
We choose any of the variables x1 or x2 because both have the same fractional part. Let us
select x2. So
7 1
= 1x2 + s1
2 2
The corresponding Gomorian slack variable is
1 1
g1 = -
- s
2 2 1
Adding this variable at the bottom of the previous optimum table, we get
cB B xB x1 x2 s1 s2 s3 g1
2 x2 7/2 0 1 1/2 0 0 0
1 x1 7/2 1 0 –1/2 1 0 0
0 s3 4 0 0 1 –2 1 0
0 g1 –1/2 0 0 –1/2 0 0 1
z 21/2 zj – cj 0 0 1/2 –1 0 0
cB B xB x1 x2 s1 s2 s3 g1
2 x2 7/2 0 1 1/2 0 0 0
1 x1 7/2 1 0 –1/2 1 0 0
0 s3 4 0 0 1 –2 1 0
0 g1 –1/2 0 0 –1/2 0 0 1Æ
z 21/2 zj – cj 0 0 1/2 –1 0 0
RR – – –1 ≠ – – 0
136 ® Operations Research
cB B xB x1 x2 s1 s2 s3 g1
2 x2 3 0 1 0 0 0 1
1 x1 4 1 0 0 1 0 –1
0 s3 3 0 0 0 –2 1 2
0 s1 1 0 0 1 0 0 –2
z 10 zj – cj 0 0 0 1 0 2
7
Constraints
Isoprofit line
X2 3.5 4, 3
3
5.5 7
X1
Figure 4.2
Ê f ˆ
i.e. g1 = - fk + Â akj x j + Á k ˜
Ë fk - 1 ¯
 akj x j
j ŒR + j ŒR -
cB B xB x1 x2 s1 s2
9 x2 7/2 0 1 7/22 1/22
7 x1 9/2 1 0 –1/22 3/22
z 63 zj – cj 0 0 28/11 15/11
In the optimal solution, x1 is not an integer. Consider the second row for constructing a cut. We have
1 1 3
4+ = x1 - s1 + s
2 22 22 2
The corresponding fractional cut is given by
1 È (1/2) ˘ 3
g1 = - + s + s
2 ÍÎ (1/2) - 1 ˙˚ 1 22 2
g1 is called the Gomorian slack variable. Insert this constraint at the bottom of the previous optimal
table.
cB B xB x1 x2 s1 s2 g1
9 x2 7/2 0 1 7/22 1/22 0
7 x1 9/2 1 0 –1/22 3/22 0
0 g1 –1/2 0 0 –1/22 –3/22 1Æ
z 63 zj – cj 0 0 28/11 15/11 ≠ 0
138 ® Operations Research
Using the dual simplex method, g1 leaves the basis and s2 enters.
cB B xB x1 x2 s1 s2 g1
9 x2 10/3 0 1 10/33 0 1/3
7 x1 4 1 0 –1/11 0 1
0 s2 11/3 0 0 1/3 1 –22/3
z 58 zj – cj 0 0 23/11 0 10
cB B xB x1 x2 x3 s1 s2 s3
4 x1 5/2 1 0 0 3/10 1/5 0
6 x2 5/4 0 1 0 1/20 1/5 0
2 x3 25/4 0 0 1 1/4 0 1
z 30 zj – cj 0 0 0 2 2 2
Since the solution for x1 and x3 both is non-integer, a fractional cut is constructed from the first row,
1 3 1
2+ = x1 + s1 + s2
2 10 5
The corresponding Gomorian slack variable is
1 3 1
g1 = - + s + s
2 10 1 5 2
Chapter 4: Integer Programming ® 139
cB B xB x1 x2 x3 s1 s2 s3 g1
4 x1 5/2 1 0 0 3/10 1/5 0 0
6 x2 5/4 0 1 0 1/20 1/5 0 0
2 x3 25/4 0 0 1 1/4 0 1 0
0 g1 –1/2 0 0 0 –3/10 –1/5 0 1Æ
z 30 zj – cj 0 0 0 2≠ 2 2 0
Solving the above table by the dual simplex method suggests that g1 exits and s1 enters.
cB B xB x1 x2 x3 s1 s2 s3 g1
4 x1 2 1 0 0 0 0 0 1
6 x2 7/6 0 1 0 0 1/6 0 1/6
2 x3 35/6 0 0 1 0 –1/6 1 5/6
0 s1 5/3 0 0 0 1 2/3 0 –10/3
5 È 5/6 ˘ Ê 1 ˆ 5 5 5 5
g2 = - + - s + g = - + s2 + g1
6 ÍÎ (5/6) - 1 ˙˚ ÁË 6 2 ˜¯ 6 1 6 6 6
cB B xB x1 x2 x3 s1 s2 s3 g1 g2
4 x1 2 1 0 0 0 0 0 1 0
6 x2 7/6 0 1 0 0 1/6 0 1/6 0
2 x3 35/6 0 0 1 0 –1/6 1 5/6 0
0 s1 5/3 0 0 0 1 2/3 0 –10/3 0
0 g2 –5/3 0 0 0 0 –5/6 0 –5/6 1Æ
z 80/3 zj – cj 0 0 0 0 2/3 ≠ 2 20/3 0
140 ® Operations Research
Solving by the dual simplex method suggests that drop g2 and enter s2.
cB B xB x1 x2 x3 s1 s2 s3 g1 g2
4 x1 2 1 0 0 0 0 0 1 0
6 x2 1 0 1 0 0 0 0 0 1/5
2 x3 6 0 0 1 0 0 1 1 –1/5
0 s1 1 0 0 0 1 0 0 –4 4/5
0 s2 1 0 0 0 0 1 0 1 –6/5
z 26 zj – cj 0 0 0 0 0 2 6 4/5
EXAMPLE 4.8: Find the optimum integer solution of LPP using B&B method:
Maximize z = 6x1 + 8x2
subject to the constraints:
4x1 + 16x2 £ 32
14x1 + 4x2 £ 6
x1, x2 ≥ 0 are integers.
Solution: Ignoring the restriction of integers, the optimum solution is x1 = 20/13, x2 = 21/13 and
maximum z = 288/13. The obtained solution is non-integral, the upper bound is z = 288/13 and the
lower bound (obtained by rounding off values of x1 = 1 and x2 = 1 to nearest integer) is z = 14. Now
maximum {20/13, 21/13} = 21/13 which corresponds to x2 and hence, two new branches are
x2 £ 1 (subprogram B) and x2 ≥ 2 (subprogram C) added in the original set of constraints. The
optimum solution of subprogram B (see Figure 4.3) is
7 Constraints
Isoprofit line
X2
2 (1.71, 1)
1
2 8
X1
Figure 4.3 Subprogram B.
7 Constraints
Isoprofit line
X2
2 (1.54, 162)
0.5
2 8
X1
Figure 4.4 Subprogram C.
142 ® Operations Research
7
Constraints
Isoprofit line
X2
2
1,1
1
2 8
X1
Figure 4.5 Subprogram D.
x1 = 1, x2 = 1 and maximum z = 14
and that of subprogram E is (see Figure 4.6)
7
Constraints
Isoprofit line
X2
1
2, 0
2 8
X1
Figure 4.6 Subprogram E.
x2 ≥ 2
x1 = 0, x2 = 2, z = 16
x1 = 20/13, x2 = 21/13,
x1 = 1, x2 = 1, z = 14
z = 288/13 x1 £ 1
x1 = 12/7, x2 = 1,
z = 128/7
x2 £ 1
x1 = 2, x2 = 0, z = 12
x1 ≥ 2
EXAMPLE 4.9: Find the optimum integer solution of LPP using B&B method:
Minimize z = 4x1 + 3x2
subject to the constraints:
5x1 + 3x2 ≥ 30
x1 £ 4
x2 £ 6
x1, x2 ≥ 0 are integers.
Solution: Ignoring the restriction of integers, the optimum solution is x1 = 4, x2 = 10/3 and
minimum z = 26. x2 is non-integral and hence, two new branches are, x2 £ 3 (subprogram B) and
x2 ≥ 4 (subprogram C), added in the original set of constraints. The optimum solution of subprogram
B is infeasible (see Figure 4.8).
10 Constraints
6
X2
4 6
X1
Figure 4.8 Subprogram B.
144 ® Operations Research
10 Constraints
Isoprofit line
6
X2
4
3.6, 4
4 6
X1
Figure 4.9 Subprogram C.
10 Constraints
Isoprofit line
6
X2 3, 5
4
3 4 6
X1
x1 = 3, x2 = 5 and minimum z = 27
and that of subprogram E is (see Figure 4.11)
Chapter 4: Integer Programming ® 145
10 Constraints
Isoprofit line
6
X2 4, 4
4
4 6
X1
Figure 4.11 Subprogram E.
x2 £ 3
Infeasible solution
x1 = 4, x2 = 10/3, z = 26 x1 = 3, x2 = 5, z = 27
x1 £ 3
x1 = 18/5, x2 = 4,
z = 132/5
x2 ≥ 4
x1 = 4, x2 = 4, z = 28
x1 ≥ 4
EXAMPLE 4.10: Find the optimum integer solution of LPP using B&B method:
Maximize z = 3x1 + 3x2 + 13x3
subject to the constraints:
–3x1 + 6x2 + 7x3 £ 8
6x1 – 3x2 + 7x3 £ 8
0 £ xj £ 5
j = 1, 2, 3
x1, x2, x3 are integers.
Solution: Ignoring the restriction of integers, the optimum solution is x1 = x2 = 8/3, x3 = 0 and
maximum z = 16.
(Students are advised to check each subprogram shown in Figure 4.13 by the simplex method.)
146 ® Operations Research
x1 ≥ 3
Infeasible Infeasible
solution x2 ≥ 1 solution
x1 = 2, x2 = 7/3, x1 = x2 = 0,
x3 = 0, z = 13 x3 = 1, z = 13
x3 £ 3 x3 £ 1
REVIEW EXERCISES
1. Solve the following integer programming problems, using Gomory’s cutting plane
algorithm.
(a) max p = x + y
subject to the constraints: 2y £ 7, x + y £ 7, 2x £ 11; x, y ≥ 0 and are integers.
[Ans. x = 4, y = 3 and max p = 10]
(b) max p = x – 2y
subject to the constraints: 4x + 2y £ 15; x, y ≥ 0 and are integers.
[Ans. x = 3, y = 2 and max p = 5]
(c) max p = 4x + 3y
subject to the constraints: x + 2y £ 4, 2x + y £ 6; x, y ≥ 0 and are integers.
[Ans. x = 3, y = 0 and max p = 12]
(d) max p = 3x – 2y + 5z
subject to the constraints: 5x + 2y + 7z £ 28, 4x + 5y + 5z £ 30; x, y, z ≥ 0 and are
integers.
[Hint: simplex method gives the integer solution]
[Ans. x = 0, y = 0, z = 4 and max p = 20]
(e) max p = 3x + 5y
subject to the constraints: 2x + 4y £ 25, x £ 8, 2y £ 10; x, y ≥ 0 and are integers.
[Ans. x = 8, y = 2, and max p = 34]
(f) max p = 5x + 4y
subject to the constraints: x + y ≥ 2, 5x + 3y £ 15, 3x + 5y £ 15; x, y ≥ 0 and are integers.
[Ans. x = 3, y = 0, and max p = 15]
(g) min p = 3x + 2.5y
subject to the constraints: x + 2y ≥ 20, 3x + 2y ≥ 50; x, y ≥ 0 and are integers.
[Ans. x = 14, y = 4, and max p = 52]
(h) max p = –3x + y + 3z
subject to the constraints: –x + 2y + z £ 4, x – 3y + 2z £ 3, 2x – 1.5z £ 1; x, y ≥ 0 and
z is non-negative integer.
[Ans. x = 0, y = 8/7, z = 1 and max p = 29/7]
(i) max p = x + y
subject to the constraints: 3x + 2y £ 5, y £ 2; x, y ≥ 0 and x is non-negative integer.
[Ans. x = 0, y = 2, and max p = 2]
(j) min p = 4x + 3y + 5z
subject to the constraints: 2x – 2y + 4z ≥ 7, 2x + 4y – 2z ≥ 5; y ≥ 0, x and z are
non-negative integers.
[Ans. x = 4, y = 0, z = 0 and max p = 16]
5
Goal Programming
5.1 INTRODUCTION
In the previous two chapters, we formulated linear programming problems and integer programming
problems to optimize single objective function under a set of given constraints. However, in reality,
decision-makers may not have to optimize single objective function. In fact, a decision-maker has
to achieve objectives either economic or non-economic of any organization. He needs to attain a
satisfactory level of achievement among different goals of an organization.
The programming used for solving a multi-objective optimization problem by setting
equilibrium between conflicting goals is called goal programming (GP). The formulation of the
problem in GP is similar to that of LP model except that in GP, we have multiple goals in a particular
priority order. Ranking and weighing various goals establish a priority. The priority helps to deal
with all goals, which cannot be attained completely and/or simultaneously. Here, the most important
goals are satisfied first and least important goals later on.
Charnes and Cooper (1961) suggested the concept of goal programming for solving infeasible
LP problems arising from various conflicting goals such as (i) to attain the best quality product at
minimum production cost, (ii) to maximize profit and increase wages of the employee. Ijiri (1965)
gave the concept of assigning different priority levels to incommensurable goals and different
weights for the goals at the same priority. The main feature of GP is to achieve targets at a
satisfactory level instead of optimizing a single goal.
In GP, instead of minimizing or maximizing objective function as in LP, the deviations from the
established goals within the given set of constraints are minimized. In LP, these deviation variables
are slack or surplus variables and they are used as dummy variables. In GP, these deviations play
an important role to achieve a satisfactory level. These deviations can be positive deviation or
negative deviation from each goal and sub-goal. The aim is to minimize a sum of these deviations
bases on how they are to be achieved within the priority structure assigned to each deviation.
148
Chapter 5: Goal Programming ® 149
However, the goal may be underachieved or overachieved within the given decision criteria. Let di–
represent under-achievement (similar to slack variable in LP) and is negative deviation from i-th goal
and di+ denotes over-achievement (similar to surplus variable in LP) and is positive deviation from
i-th goal. Then we have
n
 aij x j £ bi , i = 1, 2, …, m (under-achievement)
j =1
n
 aij x j ≥ bi , i = 1, 2, …, m (over-achievement).
j =1
Since both under- and over-achievement of a goal cannot be attained simultaneously, one or
both of this negative or positive deviation must be zero in the solution. Equivalently, if one assumes
a positive value then the other must be zero and vice-versa. The deviation variable di+ is zero when
over-achievement is acceptable and di– is zero when under-achievement is acceptable. If utmost goal
satisfaction is the requirement then both di+ and di– are to be considered in the objective function and
according to their priority from the most important to the least important (see more details in
Section 5.2.3).
EXAMPLE 5.1: A production unit produces the chair and the table. The unit profit per chair is
Rs. 100 and that per table is Rs. 50. The goal of a production unit is to earn a total profit of exactly
Rs. 700 during the sale season of a week. Formulate GP.
Solution: Let x1 be the number of chairs produced and x2 be the number of tables produced. We
have a single goal of profit maximization z = 100x1 + 50x2.
Let us reformulate the above goal to allow for under-achievement (d1–) and over-achievement
+
(d1 ) as
100x1 + 50x2 + d1– – d1+ = 700
Now GP model is as follows:
Minimize d1– + d1+
subject to the constraints
100x1 + 50x2 + d1– – d1+ = 700
and x1, x2, d1–, ≥ 0.
d1+
If the profit goal is below Rs. 700 then the slack in the profit goal will be expressed by negative
deviational variable, d1– from the goal. On the other hand, if the profit is more than Rs. 700, the
surplus in the profit will be given by positive deviational variable, d1+ from the goal. If the profit goal
of exactly Rs. 700 is achieved, then both d1+ and d1– are zero.
Here, there are infinitely many solutions on the iso-profit line joining (70, 0) and (0, 14).
150 ® Operations Research
Thus, the solution is x1 = 5 and x2 = 4, i.e. all targets are achieved and hence d1+ = d1– = d2– =
d3– = 0.
EXAMPLE 5.3: An office equipment manufacturer produces two kinds of products, chairs and
lamps. The production of either a chair or a lamp requires 1 hour of production capacity in the plant.
The plant has a maximum production capacity of 10 hours per week. Because of the limited sales
capacity, the maximum numbers of chairs and lamps that can be sold are 6 and 8 per week
respectively. The gross margin from the sales of a chair is Rs. 80 and Rs. 40 for that of a lamp.
Chapter 5: Goal Programming ® 151
The plant manager has a set of the following goals arranged in order of importance:
(i) He wants to avoid underutilization of production capacity.
(ii) He wants to sell as many as possible.
(iii) Overtime should not exceed 20% of the production time.
Formulate and solve this problem as a GP model so that the plant manager may achieve his
goals as closely as possible.
Solution: Let x1 be the number of chairs produced and x2 be the number of lamps produced. The
constraint of production capacity goal to be achieved in 10 hours per week can be stated as
x1 + x2 + d1– – d1+ = 10
where d1– is underutilization of production capacity and d1+ is overutilization of production capacity.
The constraints of maximum sales volume are
x1 + d2– = 6
x2 + d3– = 8
Clearly, d2+ = d3+ = 0 as over-achievement of sales goal is not allowed.
The goal corresponding to minimization of overtime can be formulated as
d1+ + d4– – d4+ = 0.2 (10) = 2
where d4– = overtime less than 20 % of goal constraint
d4+ = overtime more than 20 % of goal constraint
d1+ = overtime beyond 10 hours per week.
The corresponding GP formulation is
Mini z = d1+ + d2– + d3– + d4+
subject to the constraints
x1 + x2 + d1+ – d1– = 10
x1 + d2– = 6
x2 + d3– = 8
d1+ + d4– – d4+ = 0.2 (10) = 2
and x1, x2, d1–, d1+, d2–, d3–, d4–, d4+ ≥ 0.
The input table is given below.
So, d1+ = d2+ = d3+ = d4+ = d1– = d2– = 0 and d3– = 4, d4– = 2 and x1 = 6, x2 = 4, i.e. the company should
produce 6 chairs and 4 lamps to achieve all goals.
EXAMPLE 5.4: A company manufactures two products (say) A and B. Both the products require
two-step production process involving wiring and assembly. It takes about 2 hours to wire A and 3
hours to wire B. Assembly times required by A and B are 6 and 5 hours respectively. The production
capacity is such that only 12 hours of wiring and 13 hours of assembly time are available. The
revenue generated by the manufacturer for product A is Rs. 7 per unit and for product B is Rs. 6
per unit.
The manager wants to achieve the following four goals:
(i) to produce as much profit above Rs. 30 as possible during the production period,
(ii) to fully utilize the available wiring department hours,
(iii) to avoid overtime in the assembly department,
(iv) to meet a contract requirement to produce at least seven units of product B.
He assigns priorities Pi’s (i = 1, 2, 3, 4) to achieve the above goals by ranking P1 > P2 > P3 > P4.
He takes P1 = 6, P2 = 4, P3 = 2 and P4 = 1.
Solve the problem using GP technique.
Chapter 5: Goal Programming ® 153
The readers are asked to verify the final table using Excel:
Final table
We observe that d1– = d2– = d3– = 0 indicating complete achievement of the first three goals, while
d4– = 1 depicts under-achievement of the goal (iv) by 1 – unit. Again d1+ = d2+ = 6 indicates
over-achievement of the first two goals by 6–units each while d3+ = d4+ = 0 represents complete
achievement of goals (iii) and (iv). The optimum solution is x1 = 0 and x2 = 6 with maximum profit
of Rs. 36.00.
REVIEW EXERCISES
1. A firm manufactures two types of metal file cabinets. The demand for two-drawer model is
up to 600 cabinets per week and that for three-drawer model is up to 400 per week. The firm
has a weekly operating capacity of 1,300 hours, with the two-drawer cabinet taking 1 hour
to produce and the three-drawer cabinet requiring 2 hours. Each two-drawer model sold
yields a profit of Rs. 10 and profit for three-drawer model is Rs. 15. The manager sets the
following goals in order of priority:
(i) to attain a profit as close to Rs. 11,000 as possible each week,
(ii) to avoid underutilization of the firm’s production capacity,
(iii) to sell as many two- and three-drawer cabinets as the demand indicates.
Set this as a GP problem and solve it.
[Ans. 500 units of two-drawer and 400 units of three-drawer cabinet
with underachievement of the third goal by 100 units]
2. A company produces motorcycle seats. The company has two production lines. The
production rate for line 1 is 50 seats per hour and for line 2, it is 60 seats per hour. The
company has a contract to supply 1,200 seats daily. The normal operation period for each
line is 8 hours. The production manager of the company is trying to determine the best
policy for daily operation hours for the two lines. He sets the priorities to achieve his goals
as given below:
(i) to produce and deliver 1,200 seats daily,
(ii) to limit the daily overtime achievement operation hours of line 2 to be 3 hours,
(iii) to minimize underutilization of the regular daily operation hours of each line. Assign
weights based on the relative productivity rate,
(iv) to minimize the daily overtime operation hours of each line as much as possible. Assign
differential weights based on the relative cost of over time.
Solve the GP problem.
[Ans. x1 = 10.8, x2 = 11, d1– = d2– = d3– = d4+ = 0, d2+ = 3.8 and d3+ = 3]
3. A shoe manufacturer produces hiking boots and ski boots. The manufacturing process
consists of sewing and stitching. It has available 60 hours per week for the sewing process
and 80 hours per week for the stitching process at normal capacity. The firm realizes a profit
of Rs. 150 per pair of hiking boots and Rs. 100 per pair on the ski boots. It requires 2 hours
of sewing and 5 hours of stitching to produce one pair of hiking boots and 3 hours of sewing
and 2 hours of stitching to produce one pair of ski boots. The manager of the company
wishes to achieve the following goals listed in the order of their importance:
Chapter 5: Goal Programming ® 155
6.1 INTRODUCTION
In studying linear programming we saw that all functional forms involved were linear in nature.
While learning its solution techniques, there was a basic underlying structure which dictated that an
optimal solution could be found by solving sets of linear equations. It was also known that the
optimal solution would always be found at an extreme point of the feasible solution space, which
will be convex.
However, in real-life problems the assumptions of linearity might be questionable. So the idea
of non-linearity comes in. Problems involving non-linear functional forms are referred to as
non-linear problems. They are characterized by terms or groups of terms that involve intrinsically
non-linear functions like sinx, cosx, lnx, ex or non-linearities arising as a result of interactions
between two or more variables such as x1x2, x1log x2, etc. When a programming problem contains
non-linear constraints, it needs no longer to be true that the region of feasible solutions is convex.
Also, while solving such problems, an optimal solution might be found at an extreme point, a point
interior to the feasible region, or at a point of discontinuity. It may be possible that when the set of
feasible solutions is not convex, there can exist local optima different from the global optima even
though the objective function is linear.
A major disadvantage in studying non-linear programming problems is the wide variety of
techniques used to find its solution. Many algorithmic procedures have been suggested for solving
non-linear programming problems. These techniques involve the solution of simultaneous linear
equations, simultaneous non-linear equations, or both. In this chapter we will study the solution
methodology of classical optimization problems and some basic techniques for solving non-linear
programming problems. Our scope of studying the techniques of solving non-linear programming
problems will be limited in nature and we will not consider advanced non-linear programming
techniques. In general, this chapter will deal with what we call “well-behaved” functions; that is,
156
Chapter 6: Non-linear Programming ® 157
those that do not have any discontinuities or singularity points such as outward pointing cusps. The
remaining cases and methods will be left to further study from the rapidly expanding technical
literature and texts on non-linear programming.
In order to gain an insight into the non-linear programming, we will study first the following
very important prerequisite section.
Note: We shall assume that at each point in En where function f is defined, all n partial derivatives
of f with respect to the variables xj exist and are continuous. Hence in particular, the second partial
derivatives of f exist and are continuous (we write this as f Œ C2). When this happens, then we know
that for all i and j
∂2 f ∂2 f
=
∂ xi ∂ x j ∂ x j ∂ xi
6.2 PREREQUISITES
6.2.1 Maxima and Minima of Functions and Their Solutions
Let us begin with the definition of the following terms.
Absolute (global) maximum: The function f(x) defined over a closed set A is said to take on its
absolute or the global maximum over A at the point x* if f(x) £ f(x*) for every point x of A.
If the closed set is strictly bounded, then the global maximum of f(x) over A will actually be
taken on at one or more points in A, if one assumes that f(x) is continuous over the set A.
If the set is not strictly bounded, then the global maximum may not be taken on at any point
x with | x | finite, but may instead be the limiting value of f(x) as | x | Æ • in some specific way.
Strong relative (local) maximum: A function has a strong relative maximum at x* if there exists an
e-neighbourhood of x* such that for all x in this e-neighbourhood different from x*, f(x) is strictly
less than f(x*). If f(x) £ f(x*) then we say that x* is a weak relative maxima.
Frequently, we shall not need to distinguish between strong and weak local maxima. In such
situations, we shall simply refer to as local maxima.
The definitions of the global minima and local minima are obtained from the corresponding
definitions of maxima, by reversing the directions of the inequality signs.
Note that if f(x) has a global maxima at x’ and a local maxima at x*, then –f(x) has a global
minima at x’ and a local minima at x*.
Points x1 and x7 represent the limit of the domain. The point x2 is a global minimum and x6 is
the global maximum. Similarly, other points are seen from figure. It is clear from Figure 6.1 that the
first derivatives (slope, gradient) of f vanish at all extrema. If a point with zero slope is not an
extremum (minimum or maximum), then it is called a point of inflexion or a saddle point.
Consider a function of a single variable. A necessary condition for a particular solution,
x = x*, to be either a minimum or a maximum is that df(x)/dx = 0 at x = x*
For a function of a single variable a sufficient condition for a stationary point x* to be an extremum
is that f ≤(x*) < 0 for maximum and f ≤(x*) > 0 for minimum.
If the second order derivatives vanish, we need to check the higher order derivatives according
to the following rule.
158 ® Operations Research
f(x)
Global
maximum
Local
maximum Local
maximum
Inflexion
point
Local
Global minimum
minimum
x1 x2 x3 x4 x5 x6 x7 x
Figure 6.1
If at a stationary point x* of f(x), the first n – 1 derivatives vanish and f (n)(x*) π 0, then at
x = x*, f(x) has (i) inflexion point if n is odd and (ii) an extreme point if n is even. This extreme
point will be a maximum if f (n)(x*) < 0 and minimum if f (n)(x*) > 0.
For a function f of n variables f(x1, x2, …, xn), the necessary condition is —f(x*) = 0.
For a function of n variables, a sufficient condition for a stationary point x* to be an extremum
is for the Hessian matrix H evaluated at x* to be (i) positive definite when x* is a minimum point,
(ii) negative definite when x* is a maximum point and (iii) indefinite when x* is a point of inflexion.
Now, we will discuss Hessian matrices.
Extreme points will be taken up after the discussion of convex and concave functions.
Ê 1 4ˆ
For example, the quadratic form associated with the matrix Á is x12 + 8x1x2 + 3x22.
Ë 4 3 ˜¯
It will be noted that when i π j, the coefficient of xi xj is qij + qji. From this, it follows
immediately that Q can always be assumed to be symmetric matrix, for if it is not, we can uniquely
define new coefficients aij = aji = (qij + qji)/2 for all i, j so that aij + aji = qij + qji and A = (aij) is
symmetric. This redefinition of the coefficients does not change the value of the function
f(x1, x2, …, xn) for any xi.
It is always assumed that the matrix Q associated with a quadratic form is symmetric. If it is
not, it may be replaced by the symmetric matrix (Q + QT)/2 without changing the value of the
quadratic form. For example, the quadratic form
Ê 1 0 1 ˆ Ê x1 ˆ
( x1 , x2 , x3 ) Á 2 7 6 ˜ Á x2 ˜
Á ˜Á ˜
ÁË 3 0 2 ˜¯ ÁË x ˜¯
3
Ê 1 1 2ˆ Ê x1 ˆ
( x1 , x2 , x3 ) Á 1 7 3˜ Á x2 ˜
Á ˜Á ˜
ÁË 2 3 2˜¯ ÁË x ˜¯
3
Ê 2 -1ˆ
e.g., ÁË -1 2 ˜¯
3. A matrix Q is negative definite ´ –Q is positive definite, i.e. XTQX < 0 for all X π 0
Ê -2 1ˆ
e.g., ÁË 1 -3˜¯
160 ® Operations Research
5. A matrix Q is indefinite if XTQX is positive for some X and negative for some other X.
Ê 1 -1ˆ
e.g., ÁË 1 -2 ˜¯
EXAMPLE
1. z = x12 + 2x1x2 + x22 = (x1 + x2)2 is positive definite.
2. z = x12 – 2x1x2 + x22 = (x1 – x2)2 is positive semi definite since it is never negative but is zero
whenever x1 = x2. And in this case –z is negative semi definite.
3. z = x12 – 2x1x2 – x22 is indefinite since z > 0 when x1 = 5, x2 = 0, and z < 0 when x1 = 0,
x2 = 5.
4. z = –x12 + 3x1x2 – 4x22 = – (x12 – 3x1x2 + 4x22) is negative definite when x = (x1, x2) π 0.
Principal minors of order 1 are essentially the diagonal elements 1, 5, and 9. The principal minors
of order 2 are the following 2 ¥ 2 matrices.
Ê 1 2 ˆ Ê 1 3ˆ Ê 5 6ˆ
ÁË 4 5 ˜¯ , ÁË 7 9˜¯ and ÁË 8 9 ˜¯
The determinant of a principal minor is called the principal determinant. For an n ¥ n square matrix,
there are in all 2n – 1 principal determinants.
Leading principal minor of order k of an n ¥ n square matrix is obtained by deleting the last
n – k rows and their corresponding columns. For the matrix Q in the above example, the leading
Ê 1 2ˆ
principal minor of order 2 is Á , while that of order 3 is the matrix Q itself. The number of
Ë 4 5˜¯
leading principal minor determinants of an n ¥ n matrix is n.
There are some easier tests to determine whether a given matrix and the quadratic form is
positive definite, negative definite, positive semi definite, negative semi definite or indefinite. All
these tests are valid only when the matrix is symmetric. If the square matrix Q is not symmetric,
change Q to (Q + QT )/2 and then apply the following tests.
Chapter 6: Non-linear Programming ® 161
∂ 2 f ( x1 , x2 )
≥0
∂ x22
Note:
∑ The function would be concave if ≥ can be replaced by £ in the second and the third
conditions.
∑ The definition of a convex (concave) function is not dependent on the definition of the
function being continuous (discontinuous).
∑ A function can be concave over one region and convex over another.
∑ A linear function is both concave and convex.
The convexity and the concavity of the function of n variables is given with the help of the
Hessian matrix.
The gradient of a function f(x1, x2, …, xn) is given by
È ∂f ∂f ∂f ˘
— f ( x1 , x2 , ..., xn ) = Í , …,
xn ˙˚
,
∂
Î 1 x ∂ x2 ∂
The Hessian matrix of a function f(x1, x2, …, xn) is an n ¥ n symmetric matrix given by
È ∂2 f ˘
H f ( x1 , x2 , ..., xn ) = Í ˙
ÎÍ ∂ xi x j ˙˚
The following table gives the test for the convexity or the concavity of the function
f(x1, x2, …, xn) based on the Hessian matrices.
f is convex Hf is positive definite or positive semi definite for all values of x1, x2, …, xn
f is concave Hf is negative definite or negative semi definite for all values of x1, x2, …, xn
Ê 6 x - 2 y - 2z - 6 ˆ
Á ˜
—f ( x, y, z) = Á 4 y - 2 x + 2 z - 4 ˜
Á ˜
Ë 2z - 2 x + 2 y - 2 ¯
Ê 6 -2 -2 ˆ
and H f ( x, y, z) = Á - 2 4 2˜
Á ˜
ÁË - 2 2 2 ˜¯
To show that f is a convex function, we test H for positive definite or positive semi definite
property.
Chapter 6: Non-linear Programming ® 163
Note that
(i) H is symmetric.
(ii) All diagonal elements are positive.
(iii) The leading principal determinants are
6 -2
6 > 0, = 20 > 0 , H = 16 > 0
-2 4
Hence, H is a positive definite matrix, which implies that f is a convex function. When Hf is positive
definite, f is said to be strictly convex with a unique minimum point.
So far in our discussion, convexity has been treated as a general property of a function.
However, many non-convex functions do not satisfy the conditions for convexity over certain
intervals for the respective variables. Therefore, it is meaningful to talk about a function being
convex over a certain region. A function is said to be convex within a neighbourhood of a specified
point if its second derivatives (or partial derivatives) satisfy the conditions for convexity at that point.
If a function f is convex then the function –f is concave and vice versa. If f and g are two convex
functions then f + g is a convex function.
The concept of convex function leads to the related concept of a convex set. If f(x1, x2, …, xn)
is a convex function, then the collection of points that lie above or on the graph of f form a convex
set. Similarly, the collection of points that lie below or on the graph of a concave function is also
a convex set. Thus, convex sets may be viewed intuitively as a collection of points whose bottom
boundary is a convex function and whose top boundary is a concave function. With this we can
define a convex set as follows:
A convex set is a collection of points such that for each pair of points in the collection, the entire
line segment joining these two points is also in the collection.
Thus, for non-convex sets, there may exist pairs of points such that the line segment joining
them does not lie entirely within the set.
An extreme point of a convex set is a point in the set that does not lie on any line segment which
joins two other points in the set.
Remarks
1. If a function is a convex function defined on a closed and bounded set then the local
minimum of f(x) is a global minimum of f(x). If the function is concave and defined on a
convex set then the local maximum is a global maximum.
2. If f(x) is a concave function defined on a closed and bounded convex set then there exists
a global minimum at an extreme point of that convex set.
If both the constraints and the objective function are linear, then the problem is of linear
programming. If any of the objective function or the constraints contain non-linear functions, then
we have a non-linear programming problem (NLPP).
So, the general NLPP can be stated mathematically as:
Find x1, x2, …, xn
so as to optimize Z = f(x1, x2, …, xn)
subject to gi (x1, x2, …, xn) (£, = , ≥) bi, i = 1, 2, …, m and m < n
and xj ≥ 0, j = 1, 2, …, n
where at least one of f and gi’s is non-linear.
Note:
1. In the above form, if both f and all gi’s are convex functions, then it is termed as convex
programming.
2. In the above form, if f(x) is a quadratic expression and all gi’s are linear, then it is termed
as quadratic programming.
If no inequalities appear in the constraint set gi (£, = , ≥) bi in a NLPP and no non-negative
conditions are imposed on the variables, then such a class of problems are called classical
optimization problems. In such problems, it is assumed that the functions considered possess
continuous first and second derivatives and partial derivatives everywhere.
A classical optimization problem looks like:
Find x1, x2, …, xn
so as to optimize Z = f(x1, x2, …, xn)
subject to gi (x1, x2, …, xn) = bi, i = 1, 2, …, m and m < n
Such problems can be solved by using calculus. The techniques of solving such problems are called
classical optimization methods.
These classical optimization methods serve as a base in understanding the solution procedures
of a general NLPP. Before starting our discussion on such methods, let us note some points
regarding the position of the solution depending on the nature of a function.
Note 1: While dealing with bounded continuous functions, a maximum or minimum will always
exist, either at a point interior to the boundaries of feasible solution variables or at the boundary
itself. This is so because a bounded function must always possess a maximum or minimum value
somewhere within the region of interest.
Note 2: If the function is continuous over the region of interest, stationary points can be located
through the use of differential calculus, provided all derivatives can be found. A stationary point will
exist in the interior or at a boundary if the partial derivatives of an unconstrained function vanish
(become zero) at a particular solution vector.
Note 3: If there are finitely many discontinuities in the function, then one (or more) of these
derivatives might fail to exist. These points would then need to be considered separately.
Chapter 6: Non-linear Programming ® 165
Note 4: An optimal solution might exist at a boundary point defined by the constraints on the
problem. This is precisely the case in linear programming, which is a special case of non-linear
programming.
Thus, in short, if we are to devise a procedure for solving non-linear programming problems,
we need to examine the following three:
1. All points at which the continuous first derivatives are all zero.
2. All points interior to the region at which discontinuities exist for the first derivatives.
3. Points on the boundaries of the solution space.
Some of the cases arising while searching for the optimum if the function is concave/convex are:
1. Maximum or Minimum—Unconstrained: If the non-linear programming problem consists
of only an objective function, f(x), and if the objective function is convex (concave), then
a unique (single) optimum solution will be found at a point (a) interior to the feasible region
where all derivatives vanish, or (b) at a boundary point.
2. Maximization—Constrained: If the NLPP consists of both an objective function and
constraints, the uniqueness of an optimal solution depends on the nature of both the objective
function and the constraint set. If the objective function is concave, and the constraint set
forms a convex region, there will be only one maximizing solution to the problem. Hence,
any stationary point must be a global maximum solution.
3. Minimization—Constrained: If the non-linear programming problem consists of both an
objective function and constraints, and if the objective function is convex and the constraint
set also forms a convex region, then any stationary point will be a global minimizing
solution.
4. Minimizing (Maximizing) a concave (convex) function: If a concave (convex) function is
to be minimized (maximized), then the optimal solution will only be found at one of the
extreme points of the constraint set.
5. The linear function: A linear function is both convex and concave. Thus, if the solution
space is convex, then a solution will always be found at a boundary point. This observation
is precisely what gave rise to the simplex algorithm of LPP.
6. Non-convex regions: If the constraint set forms a non-convex solution space, then any
algorithmic procedure based on local properties of the NLPP might produce a local
stationary point that may be neither globally maximum nor minimum. This is valid even if
the objective function is linear.
EXAMPLE 6.1: Consider the function f(x) = x3 – 3x + 6. The necessary condition for a
minimizing solution is that the first derivatives vanish.
df ( x )
Hence, = 3x2 – 3 = 0
dx
166 ® Operations Research
EXAMPLE 6.2: Consider f(x) = x4. Now, f (1)(x) = 4x3 = 0 implies x* = 0 a stationary point.
Also f (1)(0) = f (2)(0) = f (3)(0) = 0. But f (4)(0) = 24 > 0. Hence x* = 0 is a minimum point. Here since
the function is convex, it is a global minima.
EXAMPLE 6.3: For f(x) = x3, f (1)(x) = 3x2 = 0 implies x* = 0 a stationary point.
Also f (2)(x) = 6x = 0. But f (3)(0) π 0 at n = 3 and n is odd. So 0 is an inflexion point.
EXAMPLE 6.4: Consider the function f(x1, x2, x3) = x1 + 2x3 + x2x3 – x12 – x22 – x32. The necessary
condition for a stationary point is —f(x) = 0. This gives ∂f/∂x1 = 1 – 2x1 = 0 which gives x1 = 1/2.
∂f
= x3 – 2x2 = 0
∂ x2
∂f
= 2 + x2 – 2x3 = 0
∂ x3
Solving them we get (1/2, 2/3, 4/3).
To check for the sufficiency, consider the Hessian matrix.
Ê ∂2 f ∂2 f ∂2 f ˆ
Á ∂ x1∂ x2 ∂ x1∂ x3 ˜
Á ∂ x1
2
˜
Á 2 ˜ Ê -2 0 0ˆ
∂ f ∂2 f ∂ f ˜ Á
2
H f (X) = Á = 0 -2 1˜
Á ∂ x2 ∂ x1 ∂ x22 ∂ x2 ∂ x3 ˜ Á ˜
Á ˜ ËÁ 0 1 -2 ¯˜
Á ∂2 f ∂2 f ∂2 f ˜
Á ˜
ËÁ ∂ x3 ∂ x1 ∂ x3 ∂ x2 ∂ x 2 ¯˜
3
As the principal minor determinants of order 1 ¥ 1, 2 ¥ 2 and 3 ¥ 3 have values as –2, 4, –6,
respectively, H is negative definite and the solution (1/2, 2/3, 4/3) is a local maximum. Even by
examining the minors of the Hessian matrix, we can test the solutions for local maxima or minima.
Chapter 6: Non-linear Programming ® 167
Test (1): We know that for the extreme point to be a local minimum, the Hessian matrix H must
be positive definite. This can be concluded of all its leading principal minors if order 1 ¥ 1 are
positive. We again remind the reader that a principal minor of H is the determinant of a square sub
matrix whose elements lie on the diagonal of H, whereas leading principal minor is one whose
(1, 1) element is the (1, 1) element of H.
Test (2): H is negative definite, if the signs of all even leading principal minors is positive.
Test (3): If the signs of determinants do not meet the conditions in Test (1) and Test (2) above,
then the extreme point may be either a maximum or minimum or neither. In this case, H is termed
as semi-definite or indefinite.
To make this simpler, consider the following Hessian matrix of the second partial derivatives
evaluated at the stationary point x*.
Ê ∂2 f ∂2 f ∂2 f ˆ
Á ∂ x1 ∂ x2 ∂x1∂ xn ˜
Á ∂ x1
2
˜
Á 2 ˜
Á ∂ f ∂2 f ∂ f ˜
2
H f ( X ) = Á ∂ x2 ∂ x1 ∂ x2 2 ∂ x2 ∂ xn ˜
Á ˜
Á ˜
Á 2 ˜
Á ∂ f ∂2 f ∂ f ˜
2
Á ∂ xn ¯˜
Ë ∂ xn ∂ x1 ∂ xn ∂ x2 2
For this matrix, there exists exactly n-determinants formed from the single element in the upper-
left-hand corner, successively through the entire matrix moving from upper left to lower right.
Designate these determinants by D1, D2, …, Dn.
The following tests are valid:
∑ For a stationary point to be a minimum, it is sufficient that D1, D2, …, Dn be all positive.
∑ For a stationary point to be a maximum, it is sufficient that all even numbered determinants
are positive and all odd determinants are negative.
EXAMPLE 6.5: Consider the function f(x1, x2) = x1 + 2x2 + x1x2 – x12 – x22. Solving it according
to the lines of the above example, the solution is (4/3, 5/3), the Hessian matrix is obtained as
Ê -2 1ˆ
H f (X) = Á
Ë 1 -2 ˜¯
The principal minor determinants of H are –2 and 3. Since they are alternate in signs, the matrix is
negative definite and the point obtained (4/3, 5/3) is a local maximum.
EXAMPLE 6.6: Consider the function f(x1, x2) = 8x1x2 + 3x22. We obtain the stationary point as
(0,0). The Hessian matrix is
Ê 0 8ˆ
H f (X) = Á
Ë 8 6 ˜¯
168 ® Operations Research
which cannot be concluded for definiteness. But if we transform it by the process of diagonalization
it becomes
Ê -32/3 0 ˆ
H f (X) = Á
Ë 0 6 ˜¯
It turns out that H is indefinite. Thus, the point (0, 0) is a saddle point.
For such two-dimensional functions, instead of checking the Hessian matrix, we can directly
take the conditions for the minimum.
2
∂ 2 f ( x1 , x2 ) ∂ 2 f ( x1 , x2 ) È ∂ 2 f ( x1 , x2 ) ˘
-Í ˙ >0
∂ x12 ∂ x22 ÍÎ ∂ x1∂ x2 ˙˚
∂ 2 f ( x1 , x2 )
>0
∂ x12
For maximum, the above instances are replaced by < and for weaker instances for the minimizing
and the maximizing values, by ≥ and £, respectively. They are sufficient because they guarantee that
the function is convex over the solution space.
EXAMPLE 6.7: Consider the function f(x1, x2) = –2x1 + x1x2 + x12 + x22. Verify that the stationary
values obtained after setting the first partial derivatives equal to zero are (x1, x2) = (4/3, –2/3) and
the two conditions
2
∂2 f ( x1 , x2 ) ∂ 2 f ( x1 , x2 ) È ∂ 2 f ( x1 , x2 ) ˘
-Í ˙ >0
∂x12 ∂ x22 ÍÎ ∂x1∂ x2 ˙˚
∂ 2 f ( x1 , x2 )
>0
∂ x12
give 3 > 0 and 2 > 0 respectively. Therefore, the point (4/3, –2/3) is a global minimum.
∂ f ( x0 ) ∂ f ( x0 ) ∂ g( x0 )/∂ x1
we have - =0
∂ x1 ∂ x2 ∂ g( x0 )/∂ x2
∂f ( x0 )/ ∂ x2 ∂ g ( x0 )
Let l = because π0
∂g( x0 )/ ∂ x2 ∂ x2
Thus, it is necessary that the point x0 satisfies the equations
∂ f ( x0 ) ∂ g( x0 ) ∂ f ( x0 ) ∂ g( x0 )
-l =0; -l = 0 ; g(x0) = b
∂ x1 ∂ x1 ∂ x2 ∂ x2
provided that both the partial derivatives of g do not vanish at x0.
The necessary conditions obtained above can be easily obtained as follows:
Form the function
F (X, l) = f(X) + l[b – g(X)]
and set to zero the partial derivatives of F(X, l) with respect to x1, x2 and l (in taking the partial
derivatives, treat all variables as being independent).
Thus,
∂F ∂f ∂g
= -l =0 i, j = 1, 2, …, n
∂x j ∂x j ∂x j
∂F
= b - g( X ) = 0
∂l
170 ® Operations Research
The function F(X, l) is called the Lagrangian function and l is called a Lagrangian multiplier.
Note that the necessary conditions so obtained become sufficient conditions for a maximum if
f(x) is concave (for a minimum if f(x) is convex) with equality constraints.
For a general classical optimization problem with n variables and m constraint equations with
m < n, the necessary conditions for the function to have a local optimum are as follows. For
X = (x1, x2, …, xn)
Lagrange function
m
F ( X, l ) = f (X) -Â li gi (X)
i =1
Thus,
∂F ∂f m
∂g
∂x j
=
∂x j
- Â li ∂x i =0 j = 1, 2, …, n
i =1 j
∂F
= bi - gi ( X) = 0 i = 1, 2, …, m
∂ li
For any solution, x0 to the above two conditions and the Lagrange multipliers are uniquely
determined if the matrix of partial derivatives ∂gi/∂xj has rank m at x0.
The above m + n necessary conditions also become sufficient conditions for a maximum of the
function f(x) if it is concave (for a minimum of the function f(x) if it is convex) and the constraints
are equalities.
For a general problem, the sufficient conditions for an extreme point x to be a local minimum
(maximum) of f(x) subject to gi(x) = bi, i = 1, 2, º, m and m < n is that the determinant of the
Ê 0 Hˆ
bordered Hessian Matrix D = Á T [order (m + n) ¥ (m + n)] is positive (negative) where
ËH Q ˜¯
È ∂2 F ( X , l ) ˘ È ∂g ( X ) ˘
Q= Í ˙ (order n ¥ n) and
H= Í i ˙ (order m ¥ n)
ÍÎ ∂ xi ∂ x j ˙˚ Î ∂x j ˚
The sufficient condition for the maxima and minima is determined by the signs of the last
(n – m) principal minors of the above matrix D.
1. If starting with the principal minor of order (2m + 1), the extreme point gives the maximum
value of the objective function when the signs of the last (n – m) principal minors alternate
starting with (–1)m+1 sign.
2. If starting with the principal minor of order (2m + 1), the extreme point gives the minimum
value of the objective function when all signs of last (n – m) principal minors are the same
and of (–1)m type.
∂f ∂x j
*
∂Z * n
∂ bi
= Â ∂ x*j ∂ bi
(i)
j =1
Chapter 6: Non-linear Programming ® 171
Using gk(x*) = bk
∂ gk ∂ x j
n *
 ∂ x *j ∂ bi
= d ik
j =1
∂Z * m m È ∂f m
∂ gk ˘ ∂ x j
*
∂ bi
= Â lk*d ik + Â Í * - Â lk* ˙
∂ x*j ˙˚ ∂ bi
k =1 j =1 ÍÎ ∂ x j k =1
∂ f ( x* ) m
∂ gi ( x* )
Since x* and l* must satisfy
∂x j
- Â li ∂x j
=0
i =1
∂Z *
we have = li* .
∂ bi
Thus, we see that the partial derivative of the global optimum with respect to bi is simply equal
to the Lagrange multiplier li* evaluated at bi. Frequently, Z will be a profit or a cost, and bi will be
the number of physical units of some resource. In this case, the physical dimensions of li* are rupees
per unit of resource i, and li* can be interpreted as a price or value per unit of resource i. The
Lagrange multipliers are thus the shadow prices or the imputed values. They tell us how much the
maximum profit or the minimum cost will be changed if the quantity of resource i available is
increased by one unit.
From a practical computational viewpoint, the method of Lagrange multipliers is not a
particularly powerful procedure. However, for certain types of small problems, this method can
sometimes be used successfully.
∂F
= - [ gi ( X ) + Si2 ] = 0 i = 1, 2, …, m
∂ li
∂F
= - 2Si li = 0
∂ Si
ligi (X) = 0
gi (X) £ 0 where j = 1, 2, º, n and i = 1, 2, …, m
li ≥ 0
Note:
1. For minimization problems or if constraints are gi(X) ≥ 0, then li £ 0
2. For maximization problems or if constraints are gi(X) £ 0, then li ≥ 0
Consider the maximization case. Because l measures the rate of variation of f with respect to
g (l = ∂f/∂g), as the right-hand side of the constraint g £ 0 increases above zero, the solution space
becomes less constrained and hence f cannot decrease. This means that l ≥ 0. Similarly, for
minimization, as a resource increases, f cannot increase, which implies that l £ 0. If the constraints
are equalities, that is g(X) = 0, then l becomes unrestricted in sign. The above set of conditions
applies to minimization case as well with the exception that l £ 0. In both maximization and
minimization, the l corresponding to the equality constraints are unrestricted in sign.
Required condition
Objective function Set of the solution space
Maximization Concave Convex
Minimization Convex Convex
The convexity of the solution space can be established by checking directly the convexity or the
concavity of the constraint functions. To provide these conditions in summary, we define the
generalized NLPP as
Maximize or Minimize Z = f(X)
subject to gi(X) £ 0, i = 1, 2, …, r
gi(X) ≥ 0, i = r + 1, r + 2, …, p
gi(X) = 0, i = p + 1, p + 2, …, m
Lagrangian function is formulated as
r p m
F ( X , S, l ) = f ( X ) - Â li [ gi ( X ) + Si2 ] - Â li [ gi ( X ) + Si2 ] - Â li [ gi ( X ) + Si2 ]
i =1 i = r +1 i = p +1
where li is the Lagrange multiplier associated with the constraint i. The conditions for establishing
the convexity of the solution space by directly checking the convexity or concavity of the constraint
functions are given in the following table.
f (X) gi(X) li
Maximization Concave Convex ≥0 1£i£r
Concave £0 r+1£i£p
Linear Unrestricted p+1£i£m
Minimization Convex Convex £0 1£i£r
Concave ≥0 r+1£i£p
Linear unrestricted p+1£i£m
The given conditions yield a concave Lagrange function F(X, S, l) in case of maximization and
a convex F(X, S, l) in case of minimization. This result can be verified by seeing that if gi(X) is
convex, then ligi(X) is convex if li ≥ 0, and ligi(X) is concave if li £ 0. Similar interpretations can
be established for all the remaining conditions. In both maximization and minimization, the Lagrange
multipliers corresponding to the equality constraints must be unrestricted in sign.
No sufficiency conditions can be established for non-linear programming problems with
inequality constraints. Unless the conditions given in the above two tables can be established in
advance, there is no way of verifying whether a non-linear programming algorithm converges to a
local or a global optimum.
These K-T conditions help in solving quadratic programming problems.
174 ® Operations Research
Ê 0 2ˆ
D2 = Á <0
Ë 2 6 ˜¯
The given solution provides the minimum solution to the given NLPP.
Hence, x1 = 1, x2 = –2 with minimum z = 5
È 0 0 3˘
4
Í ˙
Í 0 0 3 5˙
H =Í ˙
Í ˙
Í 4 3 -2 0˙
Í ˙
ÍÎ 3 5 0 -2 ˙˚
Since, | H | = 121 > 0, the obtained point is minimum.
È 0 0 1 1 1˘
Í ˙
Í 0 0 2 -1 2˙
Í ˙
H =Í ˙
Í 1 2 8 -4 0˙
Í ˙
Í 1 -1 -4 4 0˙
Í 2 ˙˚
Î 1 2 0 0
176 ® Operations Research
∂f ( X ) ∂ g( X )
-l = 0 fi 4 x1 + 12 x2 - 2l = 0 (i)
∂ x1 ∂ x1
∂f ( X ) ∂ g( X )
-l = 0 fi 12 x1 - 14 x2 - 5l = 0 (ii)
∂ x2 ∂ x2
l g( X ) = 0 fi l (2 x1 + 5 x2 - 98) = 0 (iii)
g ( X ) £ 0 fi 2 x1 + 5 x2 - 98 £ 0 (iv)
l≥0 (v)
From Eq. (iii), either l = 0 or 2x1 + 5x2 – 98 = 0. If l = 0 then we have x1 = 0 and x2 = 0 which
does not satisfy Eq. (iv). Thus the optimal solution cannot be obtained for l = 0.
Let us then take l π 0. From Eq. (iii), we get x2 = (98 – 2x1)/5. Using it in Eq. (i) and (ii) and
solving we get x1 = 44, x2 = 2 and l = 100.
This solution does not violate any of the K-T conditions and thus the optimum solution is
x1 = 44, x2 = 2 and maximum z = 4900.
- 4 x2 + 3 - 3l1 - 2 l2 + l4 = 0 (ii)
li gi ( X ) = 0 fi l1 ( x1 + 3x2 - 6) = 0 (iii)
l2 (5 x1 + 2 x2 - 10) = 0 (iv)
l3 ( - x1 ) = 0 (v)
l4 ( - x2 ) = 0 (vi)
gi ( X ) £ 0 fi x1 + 3 x2 £ 6 (vii)
5 x1 + 2 x2 £ 10 (viii)
- x1 £ 0 (ix)
- x2 £ 0 (x)
li £ 0 (xi)
Case (1): Let all li = 0. Then substituting them in the above conditions (i) and (ii) we get,
x1 = 1, x2 = 3/4. This solution satisfies all the above conditions. The reader can easily verify this.
So the minimum value of the function at the point (1, 3/4) is obtained as 17/8.
1 - 3l1 - l2 + l4 = 0 (ii)
li gi ( X ) = 0 fi l1 (2 x1 + 3 x2 - 6) = 0 (iii)
178 ® Operations Research
l2 (2 x1 + 3 x2 - 4) = 0 (iv)
l3 ( - x1 ) = 0 (v)
l4 ( - x2 ) = 0 (vi)
gi ( X ) £ 0 fi 2 x1 + 3 x2 £ 6 (vii)
2 x1 + x2 £ 4 (viii)
- x1 £ 0 (ix)
- x2 £ 0 (x)
li ≥ 0 (xi)
Solving these equations, we get x1 = 2/3, x2 = 14/9, l1 = 1/3 and l2 = 0 which satisfies all the above
conditions. The maximum value of z at the obtained point is 22/9.
∂f ( X ) 5
∂ gi ( X )
∂x j
- Â li ∂x j
= 0 fi - 2 x1 - 2l1 - l2 + l3 = 0 (i)
i =1
2 x2 - l1 + l4 = 0 (ii)
2 x3 - l2 + l5 = 0 (iii)
li gi ( X ) = 0 fi l1 (2 x1 + x2 - 5) = 0 (iv)
l2 ( x1 + x3 - 2) = 0 (v)
l3 (1 - x1 ) = 0 (vi)
l4 (2 - x2 ) = 0 (vii)
l5 ( - x3 ) = 0 (viii)
Chapter 6: Non-linear Programming ® 179
gi ( X ) £ 0 fi 2 x1 + x2 £ 5 (ix)
x1 + x3 £ 2 (x)
x1 ≥ 1, x2 ≥ 2, x3 ≥ 0 (xi)
li £ 0 (xii)
It is left for the reader to solve the above conditions. The solution is x1 = 1, x2 = 2, x3 = 0, l1 = l2
= l5 = 0, l3 = –2, l4 = –4.
Because both f(X) and the solution space g(X) are convex, the Lagrangian function F(X, S, l)
must be convex and the resulting stationary point yields a global constrained minimum.
The vector l = (l1, l2, …, lm) will be termed as Y = (y1, y2, …, ym).
Writing in matrix notation, we have
F (X, Y) = f(X) – YT G(X)
where YT = (y1y2, …, ym) and G(X) = [g1(X), g2(X), …, gm(X)]T
The point (X0, Y0) is called the saddle point of F(X, Y) if
F(X0, Y) £ F(X0, Y0) £ F(X, Y0)
n
Subject to  aij x j £ bi i = 1, 2, …, m
j =1
and xj ≥ 0 j = 1, 2, …, n.
In matrix notation, we write it as
Optimize Z = CX + XTDX
subject to the constraints: AX £ b and X ≥ 0
where X = (x1, x2, …, xn) , C = (c1, c2, …, cn), b = (b1, b2, …, bm)T.
T
D = [djk] is symmetric and (1) positive definite (i.e. the quadratic term XTDX in X is positive
for all values of X except at X = 0) for minimization problems, (2) negative definite
(i.e. XTDX < 0 for all X except X = 0) for maximization problems.
In D, djj represents the coefficients of term x2j in the objective function and dij (i π j) represents
the coefficient of terms xi xj in the objective function.
Linear constraints guarantee convex solution space.
The objective function of QPP is strictly convex in X for minimization and concave in X for
maximization.
Note: If D is zero matrix, then the QPP reduces to LPP.
The solution is based on the K–T conditions.
Since Z is strictly convex ( or concave) and the solution space is convex, these conditions are
also sufficient for a global optimum.
Taking the problem as
Maximize Z = CX + XTDX
ÈA˘ Èb ˘
subject to G( X) = Í ˙ X - Í ˙ £ 0
Î-I ˚ Î0 ˚
Let l = (l1, l2,…, lm)T and m = (m1, m2, …, mn)T be the two sets of Lagrangian multipliers
corresponding to the two sets of constraints to AX £ b and –X £ 0.
K-T conditions give
l≥0
m≥0
Ê n ˆ
li Á bi - Â aij x j ˜ = 0 i = 1, 2, …, m
Ë j =1 ¯
µj xj = 0 j = 1, 2, …, n
AX £ b
–X £ 0
Chapter 6: Non-linear Programming ® 181
Now, —Z = C + 2XTD
È A˘
—G(X) = Í ˙
Î -I ˚
Let S = b – AX ≥ 0 be the slack variables.
The conditions reduce to
–2XTD – lTX – mT = C
AX + S = b
µj xj = 0 = lisi for all i and j
m, l, X, S ≥ 0
As DT = D, the transpose of the first set of equations give
–2DX + ATl – m = CT
Hence the necessary conditions are combined as
ÈX˘
Í ˙
È -2 D AT - I 0 ˘ Í l ˙ = ÈC ˘
T
Í ˙ Í m ˙ Í b ˙˙
Í
ÎÍ A 0 0 I ˚˙
Í ˙ Î ˚
ÍÎ S ˙˚
µj xj = 0 = lisi for all i and j and m, l, X, S ≥ 0.
All equations except mj xj = 0 = lisi are linear in m, l, X and S.
Thus we have to solve a set of linear equations while satisfying the conditions
µj xj = 0 = lisi
As Z is strictly concave (Maximization case), and the solution space is convex, the feasible
region satisfying all these conditions give the unique optimum solution.
The only restriction is to satisfy the conditions mj xj = 0 = l isi. This means if li is basic at a
positive level, si cannot become basic at positive level. Similarly, mj and xj cannot be positive
simultaneously.
Table 1
cj 0 0 0 0 0 0 1 1
cB B xB x1 x2 l1 m1 m2 s1 A1 A2
1 A1 4 4 2 1 –1 0 0 1 0
1 A2 6 2 4 2 0 –1 0 0 1
0 s1 2 1 2 0 0 0 1 0 0
Z* 10 cj – zj –6 –6 –3 1 1 0 0 0
cj 0 0 0 0 0 0 1
cB B xB x1 x2 l1 m1 m2 s1 A2
0 x1 1 1 1/2 1/4 –1/4 0 0 0
1 A2 4 0 3 3/2 1/2 – 1 0 1
0 s1 1 0 3/2 –1/4 1/4 0 1 0
Z* 4 cj – zj 0 –3 –3/2 –1/2 1 0 0
In Table 2, m2 = 0 (not in the basis), therefore x2 can be introduced into the basis to replace s1
already in the basis. The new solution is in Table 3.
Table 3
cj 0 0 0 0 0 0 1
cB B xB x1 x2 l1 m1 m2 s1 A2
0 x1 2/3 1 0 1/3 –1/3 0 –1/3 0
1 A2 2 0 0 2 0 –1 –2 1
0 x2 2/3 0 1 –1/6 1/6 0 2/3 0
Z* 2 cj – zj 0 0 –2 0 1 1 0
In Table 3, s1 = 0 (not in a basis), therefore l1 can be entered into the basis to replace A2. The
new solution is in Table 4.
184 ® Operations Research
Table 4
cj 0 0 0 0 0 0
cB B xB x1 x2 l1 m1 m2 s1
0 x1 1/3 1 0 0 –1/3 1/6 0
0 l1 1 0 0 1 0 –1/2 –1
0 x2 5/6 0 1 0 1/6 –1/12 1/2
Z* 0 cj – zj 0 0 0 0 0 0
∂L ∂L
= 2 – 2x1 – 2l1 – 2l2 + m1 = 0 = 1 – 3l 1 – l 2 + m 2 = 0
∂ x1 ∂ x2
∂L ∂L
= 2x1 + 3x2 + s12 – 6 = 0 = 2x1 + x2 + s22 – 4 = 0
∂l1 ∂ l2
∂L ∂L
= –2l1s1 = 0 = –2l2s2 = 0
∂ s1 ∂ s2
Chapter 6: Non-linear Programming ® 185
∂L ∂L
= –x1 + r12 = 0 = –x2 + r22 = 0
∂ m1 ∂ m2
∂L ∂L
= –2m1r1 = 0 = –2m2r2 = 0
∂r1 ∂ r2
Therefore,
2x1 + 2l1 + 2l2 – m1 = 2
3 l 1 + l 2 – m2 = 1
2x1 + 3x2 + s12 = 6
2x1 + x2 + s22 = 4
l1s1 = 0 = l2s2
m1r1 = 0 = m2r2
and x1, x2, l1, l2, s1, s2, m1, m2 ≥ 0.
Introduce artificial variables A1 and A2 in the first two constraints. Therefore, the modified
LP-problem is
Min z* = A1 + A2
subject to
2x1 + 2l1 + 2l2 – m1 + A1 = 2
3 l 1 + l 2 – m2 + A 2 = 1
2x1 + 3x2 + s21 = 6
2x1 + x2 + s22 = 4
l1s1 = 0 = l2s2
m1r1 = 0 = m2r2
and x1, x2, l1, l2, s1, s2, m1, m2, A1, A2 ≥ 0.
Table 1
cj 0 0 0 0 0 0 0 0 1 1
cB B xB x1 x2 l1 l2 m1 m2 s1 s2 A1 A2
1 A1 2 2 0 2 2 –1 0 0 0 1 0
1 A2 1 0 0 3 1 0 –1 0 0 0 1
0 s1 6 2 3 0 0 0 0 1 0 0 0
0 s2 4 2 1 0 0 0 0 0 1 0 0
*
z 3 cj – zj –2 0 –5 –3 1 1 0 0 0 0
In Table 1, the largest negative values among cj – zj is –5 but we cannot enter l1 and l2 in the
basis because of complementary conditions l1s1 = 0 = l2s2. Since m1 = 0, x1 can enter into the basis,
with A1 as leaving variable. The new solution is in Table 2.
186 ® Operations Research
Table 2
cj 0 0 0 0 0 0 0 0 1
cB B xB x1 x2 l1 l2 m1 m2 s1 s2 A2
1 x1 1 1 0 1 1 1/2 0 0 0 0
1 A2 1 0 0 3 1 0 –1 0 0 1
0 s1 4 0 3 –2 –2 1 0 1 0 0
0 s2 2 0 1 –2 –2 1 0 0 1 0
z* 1 cj – zj 0 0 –3 –1 0 1 0 0 0
Again we cannot enter l1, l2 and m1 in the basis because s1, s2 and x1 are already in the basis.
So enter x2 into the basis with s1 as the leaving variable.
Table 3
cj 0 0 0 0 0 0 0 0 1
cB B xB x1 x2 l1 l2 m1 m2 s1 s2 A2
1 x1 1 1 0 1 1 –1/2 0 0 0 0
1 A2 1 0 0 3 1 0 –1 0 0 1
0 x2 4/3 0 1 –2/3 –2/3 1/3 0 1/3 0 0
0 s2 2/3 0 1 –4/3 –4/3 2/3 0 –1/3 1 0
z* 1 cj – zj 0 0 –3 –1 0 1 0 0 1
Since s1 = 0, l1 can enter into the basis, with A2 as the leaving variable. The new solution is
given in Table 4.
Table 4
cj 0 0 0 0 0 0 0 0
cB B xB x1 x2 l1 l2 m1 m2 s1 s2
0 x1 2/3 1 0 0 2/3 –1/2 1/3 0 0
0 l1 1/3 0 0 1 1/3 0 –1/3 0 0
0 x2 14/9 0 1 0 –4/9 1/3 –2/9 1/3 0
0 s2 10/9 0 1 0 –8/9 2/3 –4/9 –1/3 1
z* 0 cj – zj 0 0 0 0 0 0 0 0
REVIEW EXERCISES
1. Solve the following NLPP.
(i) Minimize Z = f(x1, x2, x3) = 2x12 – 24x1 + 2x22 – 8x2 + 2x32 – 12x3 + 200
subject to the constraints: x1 + x2 + x3 = 11
[Ans. (x1, x2, x3) = (6, 2, 3)]
(ii) Minimize Z = x12 + x22 + x32
subject to the constraints: 4x1 + x22 + 2x3 = 14
[Ans. (x1, x2, x3) = (2, 2, 1)]
(iii) Maximize Z = –x12 – x22 – x32 + 4x1 + 6x2
subject to the constraints: x1 + x2 £ 2, 2x1 + 3x2 £ 12 and x1, x2 ≥ 0
[Ans. (x1, x2, x3) = (1/2, 3/2, 0) and l1 = 3, l2 = 0 and Max Z = 17/2]
(iv) Minimize Z = (x1 + 1)2 + (x2 + 2)2
subject to the constraints: 0 £ x1 £ 2, 0 £ x2 £ 1
[Ans. (x1, x2) = (2, 1) and l1 = 6, l2 = 6 and Max Z = 18]
(v) Maximize Z = –x12 – x22 + 8x1 + 10x2
subject to the constraints: 3x1 + 2x2 £ 6, and x1, x2 ≥ 0
[Ans. (x1, x2) = (4/13, 33/13) and Max Z = 21.3]
(vi) Maximize Z = 7x12+ 6x1 + 5x2
subject to the constraints: x1 + 2x2 £ 10, x1 – 3x2 £ 9 and x1, x2 ≥ 0
[Ans. (x1, x2) = (48/5, 1/5) and Max Z = 703.72]
2. Use Wolfe’s method in solving the following QPP:
(i) Maximize Z = 6 – 6x1 + 2x21 – 6x1x2 + 2x22
subject to the constraints: x1 + x2 £ 2; x1, x2 ≥ 0
[Ans. (x1, x2) = (3/2, 1/2) and Max Z = 1/2]
(ii) Minimize Z = x12
– x1x2 + 2x22
– x1 – x2
subject to the constraints: 2x1 + x2 £ 1; x1, x2 ≥ 0
[Ans. (x1, x2) = (4/11, 3/11) and Z = –5/11]
(iii) Maximize Z = 2x1 + x2 – x12
subject to the constraints: 2x1 + 3x2 £ 6, 2x1 + x2 £ 4; x1, x2 ≥ 0
[Ans. (x1, x2) = (2/3, 14/9) and Max Z = 22/9]
(iv) Maximize Z = –4x1 + x12
– 2x1x2 + 2x22
subject to the constraints: 2x1 + x2 £ 6, x1 – 4x2 £ 0; x1, x2 ≥ 0
[Ans. (x1, x2) = (32/13, 14/13) and Min Z = –88/13]
7
Geometric Programming
n
a
where Uj = C j ’ xi ij , j = 1, 2, …, N (7.2)
i =1
Here Cj > 0 and N is finite. The exponents aij are unrestricted in sign. The posynomial function
f(X) takes the form of a polynomial except that the exponents aij may be negative. The variables xi
are assumed to be strictly positive so that the region xi £ 0 represents an infeasible area. The
necessary condition for function f(x) to be minimum is, the partial derivatives of f(x) vanish at a
point. Thus,
∂Z N ∂U j N
a kj -1 a ij
∂ xk
= Â ∂ xk
= Â C ja kj ( xkj ) ’ ( xi ) = 0, k = 1, 2, …, n
j =1 j =1 iπ k
N
1
Therefore,
x  a kjU j = 0, k = 1, 2, …, n (7.3)
j =1
188
Chapter 7: Geometric Programming ® 189
Let Z0 be the minimum value of Z. Since Z is posynomial and each (xk)0 > 0, we have Z0 > 0.
U j0
Define yj = (7.4)
Z0
N
Clearly, yj > 0 and  yj = 1 (7.5)
j =1
The value of yj represents the contribution of the j-th term Uj to be the optimal value of the
objective function Z0 given in Eq. (7.1). Then necessary conditions given in Eq. (7.3) can be
rewritten as
N
 a kj y j = 0, k = 1, 2, …, n (7.6)
j =1
N
 y j = 1, yj > 0 for all j (7.7)
j =1
Equations (7.6) and (7.7) are called orthogonality and normality conditions respectively.
If n + 1 = N, then a unique solution for yj is obtained. The problem becomes complex when
N > (n + 1) because in that case, the values of yj no longer remain unique. However, it is possible
to determine yj uniquely when the problem is minimization of an objective function given in
Eq. (7.1).
Suppose that (yj)0 are the unique values obtained by solving Eq. (7.7). The next step is to
determine Z0 and (xi)0, i = 1, 2, …, n using (yj)0.
Consider
N
 ( y j )0
i =1
Z0 = ( Z 0 ) (7.8)
We have Z0 = Uj0/(yj)0.
( y1 )0 ( y2 ) 0 ( yN ) 0
Ê U10 ˆ Ê U20 ˆ Ê UN0 ˆ
Z0 = Á
Ë ( y1 )0 ˜¯ ÁË ( y ) ˜¯ ÁË ( y ) ˜¯
Therefore,
2 0 N 0
ÏN Ê Cj ˆ
( y j )0 ¸Ï N Ê N ˆ j 0 Ô¸
(y )
Ô ÔÔ
= Ì’ Á (y ) ˜ ˝ Ì’ Á ’ i 0 ˜ ( x ) ˝
ÔÓ j =1 Ë j 0¯ Ô˛ ÔÓ j =1 Ë i =1 ¯ Ô˛
Ï N Ê C ˆ ( y j )0 ¸ Ï N a ij ( yi )0 ¸
N
Ô Ô Ô Â Ô
= Ì’ Á ˝ Ì ’ ( xi )0
j
˝
i =1
˜
ÔÓ j =1 Ë ( y j )0 ¯ Ô˛ Ô i =1 Ô
Ó ˛
( y j )0
N Ê Cj ˆ N
= ’ Á (y ) ˜
Ë j 0¯
∵ Â a ij ( yi )0 (7.9)
j =1 i =1
Using values of (yj )0 and Z0, (Uj)0 = (yj)0 Z0 can be found by Eq. (7.2) for j = 1, 2, …, n. The
procedure is actually the solution of a set of linear equations in yj by transforming the original
posynomial Z. The necessary condition said above also turns out to be sufficient condition. The proof
is given in Beightler and Wilde [1979, p. 333].
190 ® Operations Research
The variables yj actually define the dual variables associated with primal problem given by
Eq. (7.1) with constraints given by Eq. (7.2). Let us study the relationship. Consider the primal
problem
N ÊUj ˆ
Z = Â yj Á ˜ (7.10)
j =1 Ë yj ¯
yj
N ÊUj ˆ
Now define the function w= ’ Á y ˜
Ë j ¯
(7.11)
j =1
N N N
 ’ (Z j ) Â
wj
Using Cauchy’s inequality, wj zj ≥ where wj > 0 and w j = 1 (This is also known
j =1 j =1 j =1
as arithmetic-geometric mean inequality), we have w £ Z. The function w with its variables
y1, y2,…, yN defines the dual problem to Eqs. (7.1) to (7.2). Clearly, since w is the lower bound
of Z, we have w0 = max w = min Z = Z0, i.e. the maximum value of w = w0 over the values of
yj xi
Minimize Z = 7 x11 x2-1 x30 + 3 x10 x21 x3-2 + 5 x1-3 x12 x31 + x11 x21 x31
Ê 1 0 -3 1ˆ Ê y1 ˆ Ê 0 ˆ
Á -1 1 1 1˜ ÁÁ y2 ˜˜ Á 0 ˜
Á ˜ =Á ˜
Á 0 -2 1 1˜ Á y3 ˜ Á 0 ˜
ÁÁ ˜Á ˜ Á ˜
Ë 1 1 1 1˜¯ ÁË y4 ˜¯ ÁË 1 ˜¯
Ê 1 - 1 1 0 ˆ Ê y1 ˆ Ê 0 ˆ
Á -1 1 0 - 1˜ Á y2 ˜ = Á 0 ˜
Á ˜Á ˜ Á ˜
ËÁ 1 1 1 1¯˜ ÁË y3 ˜¯ ËÁ 1 ¯˜
Ê 1 - 1 1ˆ Ê y1 ˆ Ê 0 ˆ
Á -1 1 0 ˜ Á y ˜ = Á y ˜
Á ˜ Á 2˜ Á 4 ˜
ËÁ 1 1 1¯˜ ÁË y3 ˜¯ ËÁ 1 - y4 ¯˜
Therefore, ln w = 0.5(1 – 3y4) [ln 10 – ln (1 – 3y4)] + 0.5 (1 – y4) [ln 4 – ln (y4)] + y4 (ln 5 – 2 ln y4)
To find y4, we differentiate ln w with respect to y4 and equate to zero.
∂ (ln w) 3 1 3 1
= - ln (10) - ln (4) + ln (5) + ln (1 - 3y4 ) + ln (1 - y4 ) - 2 ln ( y4 ) = 0
∂w 2 2 2 2
Using properties of logarithm and simplifying, we get
Ê 2 * 103/2 ˆ Ê (1 - 3 y4 )3/2 (1 - y4 )1/2 ˆ
- ln Á ˜ + ln Á ˜ =0
Ë 5 ¯ Ë y42 ¯
(1 - 3 y4 )3 (1 - y4 )
or = 158.76
y44
Solving for y4 by suitable numerical method (Newton–Raphson’s Method), we get (y4)0 = 0.16.
Hence, (y1)0 = 0.26, (y2)0 = 0.42 and (y3)0 = 0.16
0.26 0.42 0.16
Ê 5 ˆ Ê 2 ˆ Ê 5 ˆ
The value of Z0 = w0 = Á ª 9.661
Ë 0.26 ˜¯ ÁË 0.42 ˜¯ ÁË 0.16 ˜¯
Therefore, (x1)0 = 0.309, (x2)0 = 0.647 and Z0 ª 9.661 is the optimal solution.
where p(i) denotes the number of terms in the i-th constraint and
n
Uir = ’ ( xi )a ir
(7.14)
j =1
Construct Langrange function
N
L (X, l) = f (X) + Â li [gi (X) – 1] (7.15)
i =1
Then orthogonality and normality conditions are
∂L ∂f ( X ) N
∂gi ( X )
∂xk
=
∂xk
+ Â li ∂ xk
= 0, k = 1, 2, …, n (7.16)
i =1
∂L
and = gi (X) – 1 = 0, i = 1, 2, …, N (7.17)
∂li
As far as the right-hand side in Eq. (7.17), gi (X) = 1 (a positive number), the solution can be obtained
by simple transformation. Note that gi (X) = 0 is not permitted since we require X > 0.
Consider Eq. (7.16) again.
∂L N C j akjU j ( X ) N È P (i) Cir airkUir ( X ) ˘
∂ xk
= Â + Â li Í Â ˙
j =1
xk i =1 ÍÎ r =1 xk ˙˚
Chapter 7: Geometric Programming ® 193
C jU j lC U
Introduce transformation yj = , yir = i ir ir
f0 ( X ) f0 ( X )
Then the above equation becomes
n N P (i )
 akj y j +  airk yir = 0, k = 1, 2, …, n (7.18)
j =1 i =1 r =1
Clearly, all yj are positive though yir may be negative since we do not have any restriction on li. To
formulate a dual function, desirability is to have all yir > 0 and it can be obtained by reversing the
sign of that term by writing lq [1 – gq(X)] in Lagrange’s function. Hence, Eqs. (7.18) and (7.19) can
be obtained as
n N P ( i)
 akj y j +   airk yir = 0 (Orthogonality)
j =1 i =1 r =1
N
and  yj = 1 (Normality).
j =1
When these equations have a unique solution, the optimal solution of Eq. (7.12) subject to constraints
Eq. (7.13) can be obtained by definitions of yj, yir in terms of Z0 and X. In case these equations have
an infinite number of solutions, we tend to maximize the dual function given by
n Ê Cj ˆ
yj N È N Ê C ˆ yrj ˘ N
’ ’ Í’ ˙ ’ (vi )v
rj
Áy ˜ Í r =1 Ë yrj ˜¯
Á
i
f(y) =
j =1 Ë j¯ i =1 ˙ i =1
Î ˚
P (i )
where vi = Â yir
r =1
subject to orthogonality and normality conditions.
Note: In the above function, constraints are linear, and hence easy to obtain an optimal solution.
Moreover, it is easy to work with the logarithm of the dual function, which is linear in the variable
dj = log yj and dir = log yir.
REVIEW EXERCISES
1. Solve the following problems by geometric programming.
(i) Minimize Z = 2 x12 x2-3 + 8 x1-3 x2 + 3 x1 x2 , x1, x2 > 0.
[Ans. x1 = 1.39, x2 = 1.13]
(ii) Minimize z = 5 x1 x2-1 x32 + x1-2 x3-1 + 10 x23 + 2 x1-1 x2 x3-3 , x1, x2, x3 > 0
[Ans. x1 = 1.26, x2 = 0.41, x3 = 0.59, z = 10.28]
(v) Minimize z = 2 x1 x22 x3-1 + 4 x1-1 x2-1 + 5 x1 x3 subject to x1-1 x2-1 = 5, x1, x2 > 0
(vi) Minimize z = - 8 x12 x3 + 10 x2-1 x32 subject to - 2 x2-2 x3-1 + 3x1-1 x2-1 = 1, x1, x2, x3 > 0
8
Transportation Problem
8.1 INTRODUCTION
The “transportation problem” refers to a special class of linear programming problems dealing with
the distribution of single commodity from various sources of supply to various points of demand in
such a manner that the total transportation costs are minimized. It was first studied by F.L. Hitchcock
in 1941, then separately by T.C. Koopmans in 1947, and finally placed in the framework of linear
programming and solved by simplex method by G.B. Dantzig in 1951. Since then, improved
methods of solutions have been developed and the range of application has been steadily widened.
It is now accepted as one of the important analytical and planning tools in business and industry.
Refer to the following table:
M1 M2
(in tons)
Supplies
W1 5 8 15
W2 4 10 5
12 8
Demand (in tons)
We consider the shipment of steel from two warehouses W1 and W2 to two markets M1 and M2.
The cost of shipping from warehouse Wi to market Mj is given in the ith-row and jth-column of the
table. For example, the cost of shipping from W2 to M1 is c21, i.e. Rs 4.00 per ton.
The supplies (ai) at the warehouses are listed at the right of the table; thus the supply at W1 is
15 tons. The demands (bj) at the markets are listed at the bottom of the table; thus the demand at
M1 is 12 tons. Note that here the sum of the supplies equals the sum of the demands, i.e.
 ai =  b j . Such problems are called balanced transportation problems. Let xij be the amount in
195
196 ® Operations Research
tons to be shipped from warehouse Wi to market Mj. The problem is to ship the steel in least
expensive (minimum cost) way, and, in doing so, completely exhaust the supplies at the warehouses
and exactly satisfy the demands at the markets.
Sinks (Destinations)
D1 D2 D3 Dj Dn Availability
S1 c11 c12 c13 ... c1j c1n a1
S2 c21 c22 c23 c2j c2n a2
Source
b1 b2 b3 bj bn  ai =  b j
Requirement
Upon examining the above statement of the problem, we realize that it has an objective function
which is
f(x) = c11x11 + + c21x21 + + c2nx2n + + cm1xm1 + + cmnxmn
m n
= ÂÂ cij xij
i =1 j =1
Secondly, in view of the condition that the total capacity is equal to the total requirement, i.e.
m n
 ai =  b j , the individual capacity of each source must be fully utilized and the individual
i =1 j =1
requirement of each destination must likewise be fully satisfied. Hence we have m capacity
constraints and n requirements constraints. The capacity constraints impose on the solution the
condition that the total shipments of all destinations from any source must be equal to the capacity
of that source. Thus,
xi1 + xi2 + + xin = ai, where i = 1, 2, º, m
On the other hand, the requirement constraints require that the demand of every destination be fully
satisfied by the total shipments from all sources. Thus,
x1j + x2j + + xmj = bj, where j = 1, 2, º, n
Chapter 8: Transportation Problem ® 197
Thirdly, there are the usual non-negativity constraints, i.e. xij ≥ 0 for all i and j. They are based on
the practical aspect that either we shall send some positive quantity or no quantity from any source
to any sink.
To sum up, we have the following mathematical formulation of the transportation problem:
m n
Minimize z= ÂÂ cij xij (8.1)
i =1 j =1
subject to
n
 xij = ai , i = 1, 2, º, m (8.2)
j =1
m
 xij = b j , j = 1, 2, º, n (8.3)
i =1
and xij ≥ 0 for all i and j. (8.4)
The above formulation looks like an LPP. This special LPP will be called a Transportation
Problem (TP).
È1 1 1 0 0 0˘
Í ˙
Í0 0 0 1 1 1˙
È e1 2 ˘
emn
A = Í1 0 0 1 0 0 ˙ = Í mn ˙
Í ˙ ÍI I n ˙˚
Í0 1 0 0 1 0˙ Î n
Í ˙
ÎÍ 0 0 1 0 0 1 ˚˙
j
where e mn is a m ¥ n-matrix having the sum vector 1 as its jth-row and 0’s elsewhere and In is the
n ¥ n-identity matrix. If aij denotes the column vector of A associated with any variable xij, then
aij = ei + em+j where ei, em+j Œ Rm+n are unit vectors.
If the sum of the supplies of all the sources is not equal to the sum of the demands of all the
destinations, then the problem is termed as an unbalanced TP. Here,
m n
 ai π  bj
i =1 j =1
represents the surplus at the source. Similarly, the flow from the dummy source to a sink represents
the unfilled demand at the sink. The costs of transporting a unit from a dummy source to a dummy
sink are assumed to be zero. The resulting problem is now balanced and can be solved.
For example, consider the following problem:
Sink
D1 D2 D3
O1 30 50 15 300
Supply
Source
O2 35 70 20 200
O3 20 45 60 500
300 200 400 900/1000
Demand
3 3 3 3
Here  ai = 1000 and  b j = 900. Thus it is an unbalanced TP. Here  ai >  b j . Thus, there
i =1 j =1 i =1 j =1
is excess supply. So, we have to include a dummy sink to absorb this excess supply of 100 units
Ê 3 3 ˆ
Á Â ai - Â bj = 100 ˜ . The cost coefficients in the dummy destination are assumed to be zeroes.
Ë i =1 j =1 ¯
Chapter 8: Transportation Problem ® 199
Sink
D1 D2 D3 D4
O1 30 50 15 0 300
Source
Supply
O2 35 70 20 0 200
O3 20 45 60 0 500
300 200 400 100 1000
Demand
Similarly, an unbalanced TP given in Table (8.1) can be converted to a balanced TP as in Table (8.2)
by adding a dummy source.
Table 8.1
Destination
D1 D2 D3 D4
O1 5 12 6 10 300
O2 7 8 10 3 400
O3 9 4 9 2 300
200 300 450 250 1200/1000
Table 8.2
Destination
D1 D2 D3 D4
O1 5 12 6 10 300
O2 7 8 10 3 400
O3 9 4 9 2 300
O4 0 0 0 0 200
200 300 450 250 1200
n m m
and   xij =  bj
j =1 i =1 j =1
Therefore,
m n
 ai =  bj
i =1 j =1
(Sufficient condition)
Let us assume that
m n
 ai =  b j
i =1 j =1
We think of a working rule to distribute the supply at the ith-source in strict proportion to the
requirements of all destinations, i.e. let xij = libj, where li is the proportionality factor for the
ith-source.
Since this supply must be completely distributed,
m n
 xij = li  b j = ai
i =1 j =1
ai ai
or li = m
= n (by given)
 bj  ai
j =1 i =1
Thus
ai
xij = libj = m
bj (8.5)
 bj
j =1
Now
n n m
ai ai
 xij =  m
bj = m  b j = ai
j =1 j =1
 bj  bj j =1
j =1 j =1
m m m
ai bi
and  xij =  m
bj = m  ai = b j
i =1 i =1
 bj  ai i =1
j =1 i =1
which shows that all the constraints of Eqs. (8.1) to (8.4) are satisfied. Furthermore, since all ai and
bj are positive, xij determined from (8.5) must be all positive. Therefore, (8.5) yields a feasible
solution.
Theorem 8.2: The dimensions of the basis of a TP are (m + n – 1)(m + n – 1). This means that
a TP has only (m + n – 1)—independent structural constraints and its basic feasible solution has
only (m + n – 1)—positive components.
Chapter 8: Transportation Problem ® 201
Proof: It can be seen from the mathematical model of a TP that there are m rows (capacity
constraint equations) and n columns (requirement constraint equations). Thus there are total (m + n)
m n
constraint equations. This is due to the condition that  ai =  b j .
i =1 j =1
For instance, suppose that we add together the m capacity constraints in Eq. (8.2),
m n m n
  xij =  ai =  bj (8.6)
i =1 j =1 i =1 j =1
m
Now subtract Eq. (8.7) from Eq. (8.6). Then  xin = bn which is the last requirement constraint.
i =1
Hence, one of the (m + n) constraints can always be derived from the remaining (m + n – 1)
constraints and the problem in effect has only (m + n – 1) independent constraints.
Remarks:
1. This implies that from mn—variables of type xij, (m + n – 1) are basic variables and
remaining mn – (m + n – 1) are non-basic variables. If at least one of these (m + n – 1)—
variables takes up zero value then the solution is called degenerate solution.
2. The allocated cell in the transportation table will be called occupied cells (or basic cells) and
the empty cells will be called non-occupied cells.
Theorem 8.3: The values of the basic feasible solution are all differences between the partial sum
m n
of ai and the partial sum of bj, i.e. xij = ± Â ri ai ± Â sj bj where ri, sj are either 1 or 0.
i =1 j =1
Proof: Let us rewrite the model of TP given in Eqs. (8.1) to (8.4) as follows to reveal more clearly
the structure of the coefficient matrix of TP.
Minimize z = c11x11 + + c1nx1n + c21x21 + + c2nx2n + + cm1xm1 + + cmnxmn
subject to
x11 + + x1n = a1
x21 + + x2n = a2
xm1 + + xmn = am
x11 + + x21 + xm1 = b1
x12 + + xm2 = b2
x1n + + x2n + xmn = bn
and xij ≥ 0, i = 1, 2, º, m, j = 1, 2, º, n.
202 ® Operations Research
As shown in the following figure, the matrix is characterized by staggered rows of 1’s with
slanted columns of 1’s directly beneath and 0’s elsewhere.
x11, º, x1j, º, x1nx21, º, x2j, º, x2n, º º º, xm1, º, xmj, º, xmn
1 1 1
There are two important observations to be made. First, a basic variable (represented by a •) appears
in two and only two of the constraints, i.e. one capacity constraint and one requirement constraint
(• shows up in the vertical pairs).
Secondly, every constraint must be represented by at least one basis variable (one •), for
otherwise that constraint will not be satisfied for ai π 0 or bj π 0. We recall from Theorem 8.2 that
there are only (m + n – 1) basic variables. Therefore, there are only 2(m + n – 1) • – dots in the
system. However, they have to embrace (m + n) constraints. Consequently, there must be at least two
constraints which contain only one basis variable each. These two basis variables can be equated to
the constants of the relevant constraints and determined immediately, i.e. xij = ai or bj.
If xij = ai, then the jth requirement constraint will have one less unknown and bj must be adjusted
to bj¢ = bj – ai to signify the reduced amount of unsatisfied demand. If xij = bj, then the ith capacity
constraint will have one less unknown and ai must be adjusted to ai¢ = ai – bj to signify the reduced
supply still available. In the meantime, the total number of undetermined basis variables is reduced
to (m + n – 3) and the number of unsolved constraints to (m + n – 2).
Then by the same argument employed before, we reason that there must be two more constraints
which contain one basis variable each. Furthermore, these two basis variables must be equal to either
some other ai, bj or the adjusted ai¢, bj¢ obtained above. By repeated substitution of determined basis
variables into unsolved constraints in this manner, all basis variables will be eventually determined
and found equal to the differences between partial sums of ai on the one hand, and partial sums of
bj on the other as stated in the statement of the theorem.
EXAMPLE 8.1: The ABC car company has warehouses in Calcutta (W 1), Patna (W 2) and
Bhavnagar (W3) and markets in New Delhi (M1), Dhanbad (M2) and Calicut (M3). At a particular
time, the company has 61 cars in Calcutta, 49 in Patna and 90 in Bhavnagar. The company plans
to transport 52 cars to New Delhi, 68 to Dhanbad and 80 to Calicut. The transportation costs per unit
(in rupees) as well as the above data are given in the following table.
Markets
M1 M2 M3
Warehouses
W1 26 23 10 61
W2 14 13 21 49
W3 16 17 29 90
52 68 80 200
Step 2: Transport the minimum of the supply and demand values with respect to that cell and
subtract this minimum from the supply and demand values. Thus, if xpq is minimum of ap and bq,
then give xpq to the cell (p, q). Replace ap by ap – xpq and bq by bq – xpq.
Step 3: Check whether exactly one of the row/column corresponding to the north-west corner cell
has now zero supply/demand respectively. If yes, go to step 4; otherwise, go to step 5.
Step 4: Delete that row/column with respect to the north-west corner cell which has the zero
supply/demand and go to step 6.
Step 5: Delete both the row and column with respect to the current north-west corner cell.
Step 6: Check whether exactly one row or column is left out. If yes, go to step 7; otherwise, go
to step 1.
Step 7: Match the supply/demand of that row/column with the remaining demands/supplies of the
undeleted columns/rows.
Step 8: The North-West Corner rule is over. Go to the next phase of solving the TP.
It is clear that as soon as a value of xij is determined, a row or a column is eliminated from
further considerations. The last value of xij eliminates both a row and a column. Hence, a feasible
solution computed by North-West Corner rule can have at most (m + n – 1) positive xij if the TP
has m origins and n destinations. Thus, the solution is a basic feasible solution.
EXAMPLE 8.2: Find the initial basic feasible solution for TP given in Example 8.1 by NWCM.
Consider the TP given in Section 8.5.1.
Markets
M1 M2 M3
Warehouses
W1 26 23 10 61
W2 14 13 21 49
W3 16 17 29 90
52 68 80 200
As the problem is balanced, we move on to find the initial basic feasible solution by NWCM.
Step 1: The north-west corner cell is (1, 1)with a cost entry c11 = 26.
Step 2: Out of the supply value 61 and the demand value 52, minimum 52 is allocated to cell
(1, 1) and that 52 is subtracted from the supply and demand values respectively.
M1 M2 M3
W1 52 26 23 10 9
W2 14 13 21 49
W3 16 17 29 90
0 68 80
Step 3: The first column now has demand zero. So we move to step 4.
Step 4: Deleting that column, we go to step 6.
206 ® Operations Research
Warehouses
W1 23 10 9
W2 13 21 49
W3 17 29 90
68 80
Step 1: Gives us the new north-west cell as the cell corresponding to W1 and M2, i.e. with entry
23. We again allocate 9 (minimum of 9 and 68) to that cell and subtract 9 from the demand and
supply values yielding after step 2 the following table.
M2 M3
W1 9 23 10 0
W2 13 21 49
W3 17 29 90
59 80
Step 2: First row has supply zero. So we move to step 4.
Step 4: After deleting that row, we get
M2 M3
W2 13 21 49
W3 17 29 90
59 80
As still two rows and columns are left, we go to step 1 again and get the north-west corner cell as
the cell with entry 13 and repeat the steps as above.
M2 M3
W2 49 13 21 0
W3 17 29 90
10 80
Now again the supply for second row is 0. Also according to step 6, we have only one row left at
last.
M2 M3
W3 17 29 90
10 80
So we give 10 to the cell with entry 17 and 80 to the cell with entry 29 and stop.
M2 M3
W3 10 17 80 29 0
0 0
Chapter 8: Transportation Problem ® 207
We read off the initial basic feasible solution from the allocated entries:
x11 = 52, x12 = 9, x22 = 49, x32 = 10, x33 = 80 and the other xij = 0.
The cost associated with this basic feasible solution is computed as follows:
C = 26(52) + 23(9) + 13(49) + 17(10) + 29(80) = Rs. 4686.
The set B of (m + n – 1) cells corresponding to the possible non-negative shipments (xij’s) of
any basic feasible solution will be called the basis to the basic feasible solution. Thus, for this
problem the basis is
B = {(1, 1), (1, 2), (2, 2), (3, 2), (3, 3)}.
Note: Instead of writing and drawing tables stepwise as shown above, the whole method can be
performed on a single data matrix as shown in the following example.
EXAMPLE 8.3: Obtain the initial basic feasible solution for TP by North-West Corner rule.
Retail shops
R1 R2 R3 R4 R5
F1 1 9 13 36 51 50
Capacity
Factory
F2 24 12 16 20 1 100
F3 14 35 1 23 26 150
100 70 50 40 40 300
Requirements
Solution: We first check whether the problem is balanced or not. It is, so we proceed with the
North-West Corner cell (1, 1).
R1 R2 R3 R4 R5
F1 50 1 9 13 36 51 50/0
F2 50 24 50 12 16 20 1 100/50/0
F3 14 20 35 50 1 40 23 40 26 150/130/80/40/0
100/50/0 70/20/0 50/0 40/0 40/0
208 ® Operations Research
Since 50 < 100, we ship 50 by cell (1, 1); we slash the row 1 with a zero ( / 0) since b1 has
been reduced to zero. In addition, a1 is reduced to 50. The remaining matrix (after neglecting first
row), has the cell (2, 1) (corresponding to F2 – R1) as its north-West corner cell. Again
a1 = 50 < b2 = 100. So we ship 50 by the cell (2, 1) and now b2 = 50 and a1 = 0. So we neglect
column 1 and proceed. The cell (2, 2) is now the north-west corner cell for the new table and
b2 = 50, a2 = 70 (b2 < a2). So we ship 50 by cell (2, 2) and now a2 = 20, b2 = 0. So we neglect
row 2 and proceed.
Finally, the initial basic feasible solution is:
x11 = 50, x21 = 50, x22 = 50, x32 = 20, x33 = 50, x34 = 40, x35 = 40.
The corresponding transportation cost is given by
C = 50 (1) + 50 (24) + 50 (12) + 20 (35) + 50 (1) + 40 (23) + 40 (26)
= Rs. 4560.
EXAMPLE 8.4: Find the initial basic feasible solution for TP given in Example 8.1 by the least
cost method.
Markets
M1 M2 M3
Warehouses
W1 26 23 10 61
W2 14 13 21 49
W3 16 17 29 90
52 68 80 200
Step 1: We identify the least cost cell as cell (1, 3) with cost 10.
Step 2: a1 = 61, b3 = 80, mini {61, 80} = 61.
Step 3: We allocate 61 in cell (1, 3) and new a1 = 0, b3 = 80 – 61 = 19. Thus, we get x13 = 61.
Step 4: As a1 = 0, moving to step 5, we delete that row and obtain
M1 M2 M3
W2 14 13 21 49
W3 16 17 29 90
52 68 19
As still two rows are left, we again identify the least cost cell in this new matrix. It is the cell with
the entry 13. Proceed as above.
M1 M2 M3
W2 14 49 13 21 0
W3 16 17 29 90
52 19 19
Again after deleting the second row of W2, we have only one row left. Hence,
M1 M2 M3
W3 52 16 19 17 19 29 0
0 0 0
W1 26 23 61 10 61/0
W2 14 49 13 21 49/0
W3
52 16 19 17 19 29 90/0
52/0 68/19/0 80/19/0
EXAMPLE 8.5: Find the initial basic feasible solution to the TP given in Example 8.3 by LCM.
Solution: Retail shops
R1 R2 R3 R4 R5
F1 1 9 13 36 51 50
Capacity
Factory
F2 24 12 16 20 1 100
F3 14 35 1 23 26 150
100 70 50 40 40 300
Requirements
We select the cell (1, 1) with entry 1. Note that here there is a tie between cells (1, 1), (2, 5)
and (3, 3) all having costs 1. But in cells (1, 1) and (3, 3), we can allocate 50 units and in cell (2,
5), 40 units. So we select cell (1, 1) to start. (You can also start with (3, 3)). Then we allocate in
cell (3, 3) and at last to cell (2,5).
50 1 9 13 36 51 50
24 12 16 20 40 1 100/60
14 35 50 1 23 26 150/100
100/50 70 50/0 40 40/0
24 12 20 60
14 35 23 100
50 70 40
Proceeding, we start with cell (2, 3) and get
24 60 12 20 60/0
50 14 10 35 40 23 100/50/10/0
50/0 70/10/0 40/0
This stops the method. The overall allocations can be viewed as
50 1 9 13 36 51
24 60 12 16 20 40 1
50 14 10 35 50 1 40 23 26
Chapter 8: Transportation Problem ® 211
Algorithm
Step 1: From the transportation table, we determine the penalty for each row and column. The
penalties are calculated for each row (column) by subtracting the lowest cost element in that row
(column) from the next lowest cost element in the same row (column). Write down the penalties
below the rows (aside the columns) of the table.
Step 2: Select the row (column) with the highest penalty rating and allocate as much as possible
from the supply and requirement values to the cell having the minimum cost. If there is a tie in the
values of penalties, then select that cell where least cost cell occurs. If there is a tie in the least cost
entries of a selected row/column, select that entry for which maximum allocations can be made.
Step 3: Adjust the supply and demand conditions for that cell. Eliminate those rows (columns) for
which the supply and demand requirements are met.
Step 4: Repeat the above steps until the entire available capacity at various sources and
requirements at various destinations are met.
Thus, we obtain an initial basic feasible solution.
EXAMPLE 8.6: Calculate the initial basic feasible solution for the TP in Example 8.1 by VAM.
M1 M2 M3
Warehouses
W1 26 23 10 61
W2 14 13 21 49
W3 16 17 29 90
52 68 80 200
212 ® Operations Research
Solution:
Step 1: First, we calculate the penalties for all sources and destinations. They are written below the
table for the row differences and aside the table for the column differences.
Penalty
26 23 10 61 13
14 13 21 49 1
16 17 29 90 1
52 68 80
Penalty 2 4 11
Step 2: We now select row 1 because it has the highest penalty rating 13. Now we look at the
supply and demand values, corresponding to the cell with the least value in row 1. Here, it is the
cell (1, 3) with entry 10 and a1 = 61, b3 = 80. So we allocate 61 to (1, 3).
Step 3: We also adjust the new supply and demand a1 and b3 as shown below:
Penalty
26 23 61 10 61/0 13
14 13 21 49 1
16 17 29 90 1
52 68 80/19
Penalty 2 4 11
As the capacity for source 1 is satisfied, we neglect that row from further consideration.
Penalty
14 13 21 49 1
16 17 29 90 1
52 68 19
Penalty 2 4 8
Here, we select the destination 3, i.e. at the 3rd column because it has the largest penalty and allocate
the 19 units to the cell (2, 3) having the least cost 21.
14 13 19 21 30
16 17 29 90
52 68 0
As the requirement constraint for the third destination is met, we neglect that from further
consideration. Finding penalties for the new reduced matrix,
Penalty
14 13 30 1
16 17 90 1
52 68
Penalty 2 4
Chapter 8: Transportation Problem ® 213
14 30 13 0
16 17 90
52 38
Finally, we obtain 52 16 38 17 0
0 0
The whole procedure can be done in a single table in the following way:
M1 M2 M3 Capacity Penalties
W1 26 23 61 10 61/0 13 – –
W2 14 30 13 19 21 49/30/0 1 1 1
W3
52 16 38 17 29 90/38/0 1 1 1
52 68/38/0 80/19/0
Penalties
2 4 11
2 4 8
2 4 –
The reader can easily see that VAM gives a better initial solution in terms of less transportation
cost.
EXAMPLE 8.7: Calculate the initial basic feasible solution for the TP given in Example 8.3 by
VAM.
Solution: First, checking the penalties for the first round, we find it is 26 for column R5. So, we
allocate in its least cost cell with cost 1, the amount 40 of its requirements, leading to its new
requirement being zero, thus neglecting the last column from future considerations.
214 ® Operations Research
R1 R2 R3 R4 R5 Capacity Penalties
F1 50 1 9 13 36 51 50/0 8 8
F2 24 60 12 16 20 40 1 100/60/0 11 4 4
*
F3 50 14 10 35 50 1 40 23 26 150/100 13 13 13
Requirement 100/50/0 70/0 50/0 40/0 40/0 90/40/0
13 3 12 3 26
Penalties
13* 3 12 3 –
10 21 15 3 –
Now finding the penalties again for the new reduced matrix (i.e. after neglecting the last
column), we find there is a tie between penalties of F3 and R1 (both are 13, marked with *). So, we
select the least cost cell from both. In this case both have least cost cell as 1. So, we arbitrarily select
the cell (1, 1), i.e. corresponding to F1 – R1. We allocate 50 capacity values thereby exhausting it
and the new requirement value is b1 = 50. Now we neglect the first row also from future
consideration.
We proceed similarly and obtain the initial basic feasible solution as
x11 = 50, x22 = 60, x25 = 40, x31 = 50, x32 = 10, x33 = 50, x34 = 40
and the minimum transportation cost is
C = 50(1) + 60(12) + 40(1) + 50(14) + 10(35) + 50(1) + 40(23) = Rs. 2830.
Note that in this case this value is less than that obtained by NWCR for the same table in
Example 8.3, but same as that of LCM in Example 8.5.
We have seen the first stage of solving a transportation problem, i.e. finding the initial basic
feasible solution. We have also seen that VAM is more preferable to NWCR and LCM for finding
the initial basic feasible solution. We now move ahead and see whether the initial basic feasible
solution obtained is optimal or not. Thus, we have to check whether the set of allocations obtained
in VAM are the best possible to reduce the total transportation costs, or do any other set of such
allocations exist?
The indication of independence of a set of individual positive allocations is that we cannot form
a loop by joining positive allocations by horizontal and vertical lines only, for example see
Figures 8.1(a)–(d). A closed loop is formed by joining the positive allocation cells by horizontal and
vertical lines. But in Figure 8.1(e), we will not be able to form such a loop. Thus, allocations in
Figure 8.1(a) and (d) are independent in position, while in Figure 8.1(e) are dependent in position.
Note that every loop will contain an even number of cells. Independent allocations have a
property that it is impossible to increase or decrease any individual allocation without altering the
positions of individual allocations or violating the row or column sum restrictions.
Note: For example, consider the following table (for understanding the concept only).
15 19 5
Here allocations are made in cells (1, 1), (2, 2) and (3, 3). If we wish to find the net evaluations
of the cell (1, 2), i.e. we increase the allocations of the cell (1, 2) from 0 to 5, then in order to satisfy
the row-column sum restrictions, we have to decrease the allocation at cell (1, 1) by 5 and eventually
the cell (2, 1) will also have 5-allocations from the cell (2, 2).
15 19 5
Note that the adjustments are done only on the positive allocations and except these four allocations,
the other allocations remain unchanged, and so their transportation cost will also remain unchanged.
The net change in the total transportation cost due to the allocations in cell (2, 1) is
5c21 – 5c11 + 5c12 – 5c22
This is the relative cost coefficient of the variable x21. Similarly, we can find such coefficients for
all non-basic variables (empty cells).
subject to
n
 xij ≥ ai , i = 1, 2, º, m (8.8)
j =1
n
 ( - xij ) £ (- ai ), i = 1, 2, º, m (8.9)
j =1
m
 xij ≥ b j , j = 1, 2, º, n (8.10)
i =1
m
 ( - xij ) £ (-b j ), j = 1, 2, ..., n (8.11)
i =1
and xij ≥ 0 for all i and j.
Let ui+ and ui– be the dual variables one for each capacity constraint i in Eqs. (8.8) and (8.9)
respectively. Let v+j and vj– be the dual variables one for each requirement constraint j in Eqs. (8.10)
and (8.11) respectively.
Dual of the above problem is
m n
Maximize z* = Â (ui+ - ui- ) ai + Â (v +j - v -j ) b j (8.12)
i =1 j =1
subject to
(ui+ – ui–) + (v+j – vj–) £ cij (8.13)
and ui+, ui–, v+jand vj– ≥ 0 for
all i and j.
Let ui = ui – ui– and vj =
+
v+j – vj–. Then ui and vj will be unrestricted in sign. Then problem in
Eqs. (8.12) and (8.13) can now be rewritten as
m n
Maximize z* = Â ui ai + Â v j b j (8.14)
i =1 j =1
subject to
ui + vj £ cij for all (i, j) (8.15)
and ui, vj unrestricted in sign for all i and j.
Remarks:
1. The variables ui and vj are the shadow prices for capacities and requirements respectively.
They represent the implicit contribution (value) of an additional unit of capacity at source
i and an additional unit transported to requirement j.
2. The variables xij form an optimal solution to the given transportation problem provided
(a) solution xij is feasible for all (i, j) with respect to Eq. (8.4).
(b) solution ui and vj is feasible for all (i, j) with respect to Eqs. (8.14)–(8.15).
(c) (cij – ui – vj) xij = 0 for all i and j. This is the complementary slackness for a TP and
indicate that
Æ if xij > 0 and is feasible in Eqs. (8.1)–(8.4) then cij – ui – vj = 0 or cij = ui + vj
for each occupied cell.
Æ if xij = 0 and cij > ui + vj then it is not desirable to have xij > 0 in the basis because
it would cost more to transport on a route (i, j).
Æ if cij < ui + vj for some xij = 0 then xij can be brought into the basis.
218 ® Operations Research
3. Recall from LPP that for any standard LPP with basis B and associated cost vector cB, the
associated solution to its dual is given by u = cBB–1. Thus, if aj is the jth-column of the
primal constraint matrix then an expression for evaluating the net evaluation is given by
cj – zj = cj – cB B–1aj = cj – uaj
In our present case of TP, the associated dual solution can be represented as (u, v) = (u1, u2, º,
um, v1, v2, º, vn) and hence net evaluations are given by
Dij = cij – zij = cij – (u, v) aij
= cij – (u1, u2, º, um, v1, v2, º, vn) (ei + em+j) = cij – (ui + vj)
Here, it may be noted that Dij = 0 for occupied cells (basic variables). Except for the degeneracy case,
there are (m + n – 1) dual equations in (m + n) dual unknowns, for the (m + n – 1) basic cells. We
can assign arbitrary value for one of these unknown ui and vj and solve uniquely for the remaining
(m + n – 1)—variables. After an arbitrary assignment, say u1 = 0, the rest of the values are obtained
by simple addition and subtraction. (Here we will use a thumb rule that—that ui or vj should be taken
as zero whose row/column has the maximum number of allocated cells.) Once all the ui and vj have
been determined, the net evaluations for all the non-basic cells are obtained by using the relation
Dij = cij – (ui + vj).
Theorem 8.5: If we have a non-degenerate basic feasible solution, i.e. a cell with exactly
(m + n – 1) independent positive allocations and a set of arbitrary numbers ui and vj, i = 1, 2, º,
m and j = 1, 2, º, n such that crs = ur + vs for all occupied cell (r, s) then the net evaluations are
given by Dij = cij – (ui + vj).
Proof: The TP is to find xij ≥ 0 so as to
m n
Minimize z= Â Â cij xij (8.16)
i =1 j =1
subject to
n
ai - Â xij = 0, i = 1, 2, º, m (8.17)
j =1
m
bj - Â xij = 0, j = 1, 2, º, n (8.18)
i =1
Now adding ui times (8.17) and vj times (8.18) to the objective function (8.16), it becomes
m n m Ê n ˆ n Ê m ˆ
z= Â Â cij xij + Â ui Á ai - Â xij ˜ + Â v j Á b j - Â xij ˜
i =1 j =1 i =1 Ë j =1 ¯ j =1 Ë i =1 ¯
m n m n
= Â Â [cij - (ui + v j )] xij + Â ui ai + Â v jbj (8.19)
i =1 j =1 i =1 j =1
But given that for all occupied (basic cells), crs = ur + vs, all terms of positive allocations vanish from
Eq. (8.19) as their coefficients become zero.
Therefore,
m n
z= Â ui ai + Â v j b j (8.20)
i =1 j =1
Chapter 8: Transportation Problem ® 219
Suppose we want to determine the net evaluation for the cell (p, q). As we allocate one unit to cell
(p, q), positive allocations become (m + n) in number and hence dependent. So a loop can be formed
as shown below:
(p, q) (p, s)
+1 cpq cps –1
–1 crq crs +1
(r, q) (r, s)
Here all (p, s), (r, q), (r, s) are occupied cells, hence cps = up + vs, crq = ur + vq, crs = ur + vs. Now
to maintain row and column sums, we have to decrease the individual allocations at (p, s) and
(r, q) cells and increase at cells (r, s) and (p, q) by 1 unit. Therefore, the value of the individual
allocations in these occupied cells is changed but they contribute nothing in the objective function
Eq. (8.19) as their coefficients are necessarily zero. Thus, the new values of the objective function
corresponding to this new solution is given by
m n
z* = [cpq – (up + vq)] + Â ui ai + Â v j b j
i =1 j =1
Hence, the net evaluation is given by
Dpq = z* – z = [cpq – (up + vq)] (8.21)
Thus, in general, Dij = cij – (ui + vj).
Start the closed path with the selected unoccupied cell and mark (+) in this cell, trace a path
along the rows (or columns) to an occupied cell with minimum allocations, mark (–) in this cell and
continue down the column (or row) to an occupied cell and mark (+) and (–) signs alternatively.
Close the path back to the selected unoccupied cell. All end points of the loop are allocated cells
except the one which corresponds to the most negative Dij entry. All (+) are acceptor cells and
(–) are donor cells. (Hence a loop is always of an even number of cells and it is unique.
Step 6: Out of the donors, the one with the lowest allocation gives same number of allocated units
to the most negative Dij acceptor cell (+). Add that quantity to all other acceptor cells (+) and subtract
it from the cells marked with (–) sign.
Step 7: Now find the new minimum cost by allocating units to the remaining non-allocated cells.
Step 8: Test the revised solution for optimality.
Note: Step 2 to step 8 above is known as Modified Distribution (MODI) method.
EXAMPLE 8.8: Check the optimality of the solution obtained by VAM for the TP in
Example 8.6. If the solution is not optimal, modify it.
Solution: The initial basic feasible solution obtained in Example 8.6 is as follows:
M1 M2 M3
W1 26 23 61 10
W2 14 30 13 19 21
W3 52 16 38 17 29
10 u1
13 21 u2 = 0
16 17 u3
v1 v2 v3
Let us take u2 = 0.
As u2 + v2 = 13 fi v2 = 13
As v2 + u3 = 17 fi u3 = 4
As u3 + v1 = 16 fi v1 = 12
Chapter 8: Transportation Problem ® 221
As u2 + v3 = 21 fi v3 = 21
As u1 + v3 = 10 fi u1 = –11
Thus, we get
10 u1 = –11
13 21 u2 = 0
16 17 u3 = 4
v1 = 12 v2 = 13 v3 = 21
Step 3: We now find the opportunity cost for non-allocated cells (non-basic cells) by
Dij = cij – (ui + vj), i.e. we have ui or vj values from the previous step for all those cells, where
allocations are not made, we will subtract (ui + vj) from the initial cost given in the initial TP cost
matrix.
26 23
14 cost values given in the original matrix
(for non-basic cells )
29
1 2 u1 = –11
12 u2 = 0 (ui + vj) addition for non-basic cells
from step 2.
25 u3 = 4
v1 = 12 v2 = 13 v3 = 21
25 21
2
4
Step 4: Examine the sign of each Dij. As each Dij > 0, the optimality criterion is satisfied and the
cost obtained is optimum.
Thus, here the initial cost obtained by applying VAM is optimum.
EXAMPLE 8.9: Check the optimality of the solution obtained by VAM for TP in Example 8.7.
If the solution is not optimal, modify it.
Solution: The initial basic feasible solution obtained in Example 8.7 is:
50 1 9 13 36 51
24 60 12 16 20 40 1
50 14 10 35 50 1 40 23 26
Step 1: Calculated.
Step 2: The number of allocated cells is 7 = (m + n – 1) = 3 + 5 – 1. Thus, the number of allocated
cells is equal to (m + n – 1). Break up the cost for the basic cells as cij = ui + vj
1 u1 = –13
12 1 u2 = –23
14 35 1 23 u3 = 0
v1 = 14 v2 = 35 v3 = 1 v4 = 23 v5 = 24
As u3 corresponds to a row which has the maximum allocations, we take u3 = 0 and then v1 = 14,
v2 = 35, v3 = 1, v4 = 23, v5 = 24, u1 = –13, u2 = –23.
Step 3: We now find the opportunity cost for non-allocated cells by Dij = cij – (ui + vj)
9 13 36 51
cost values given in the original matrix
24 16 20 (for non-basic cells)
26
22 –12 10 11
–9 –22 0 (ui + vj) addition for non-basic cells
24
–13 25 26 40
33 38 20
2
Hence the value of Dij in the cell (1, 2) is –13, which is negative. This indicates that the initial basic
feasible solution and hence the transportation cost obtained is not optimal.
Step 5: We have to make allocations in the cell where Dij is most negative, i.e. in the cell (1, 2).
We have to trace a closed path from this cell (non-basic) to the other cells which are basic cells. (In
the above table, it is clear that those cells which are empty in Dij-table are basic cells because we
find Dij only for non-basic cells.) Thus, a closed path can be easily identified. While making such
a closed path we will also alternatively assign ‘+’ and ‘–’ sign indicating that all ‘+’ are acceptor
cells and ‘–’ are donor cells. The traced path from the above table is identified as
– +–13 25 26 40
33 38 20
+ – 2
Chapter 8: Transportation Problem ® 223
We now make a new table indicating the basic cells and the cell with negative Dij entry.
50 +
33 60 40 1
50 10 50 1 40 23
Now out of both the donors, cell (1, 1) and (3, 2), the one having lowest allocation gives 10 units
to the cell (1, 2). Similarly, to balance this, the donor cell (1, 1) gives 10 units to the acceptor cell
(3, 1). Thus, the new allocation table is
40 1 10 9
60 12 40 1
60 14 50 1 40 23
1 9 u1 = –13
12 1 u2 = –10
14 1 23 u3 = 0
v1 = 14 v2 = 22 v3 = 1 v4 = 23 v5 = 11
Calculate the opportunity cost for non-allocated cells.
13 36 51
cost value given in the original matrix
24 16 20 (for non-basic cells)
35 26
–12 10 –2
4 –9 13 (ui + vj) addition for non-basic cells
22 11
25 26 53
20 25 7
13 15
224 ® Operations Research
As all Dij > 0, the optimality criterion is satisfied and the solution is optimal, and the cost is
minimum. Therefore, the optimal solution is x11 = 40, x12 = 10, x22 = 60, x25 = 40, x31 = 60,
x33 = 50, x34 = 40 and the minimum transportation cost is Rs. 2700.
EXAMPLE 8.10: Solve the following TP by using the stepping stone method to check optimality.
D1 D2 D3 D4
A 4 6 8 6 700
B 3 5 2 5 400
C 3 9 6 5 600
400 450 350 500
Solution: The initial basic feasible solution has been computed by using NWCR.
There are 6 allocations = m + n – 1. The initial basic feasible solution is x11 = 400, x12 = 300,
x22 = 150, x23 = 250, x33 = 100, x34 = 500 and the total cost = Rs. 7750.
Now we start with an empty cell (2, 1), i.e. cell BD1. The result of allocating one unit along with
the necessary adjustment in the adjacent cells is shown below:
D1 D2 D3 D4
A 399 4 301 6 8 6 700
B 1 3 149 5 250 2 5 400
C 3 9 100 6 500 5 600
400 450 350 500
Chapter 8: Transportation Problem ® 225
The net increase in the transportation cost per unit quantity of reallocation is
X + 3 + 6 + 2 – 4 – 5 – 6 = X – 4.
Thus, the new route is beneficial. The minimum amount that can be allocated to that cell (3, 1) is
100. This will make the cell (3, 3), i.e. CD3 empty.
D1 D2 D3 D4
A 300 4 400 6 8 6 700
B 3 50 5 350 2 5 400
C 100 3 9 6 500 5 600
400 450 350 500
The new improved solution is x11 = 300, x12 = 400, x22 = 50, x23 = 350, x31 = 100, x34 = 500 and
the total cost = Rs. 7350.
This procedure is repeated with the remaining empty cells. The results are summarized as
follows:
Unoccupied cells Net increase in the transportation cost
CD2, (3, 2) X + 9 + 4 – 6 – 3= X + 4
AD3, (1, 3) X + 8 + 5 – 6 – 2= X + 5
CD3, (3, 3) X+6 – 2 + 5 – 6 + 4= X + 4
AD4, (1, 4) X + 6 – 5 + 3 – 4= X + 0
BD4, (2, 4) X+5–5 + 6 – 4 + 3 – 5= X + 0
Since reallocation in any other unoccupied cell cannot decrease the transportation cost, the present
solution is optimum. The minimum transportation cost is thus Rs. 7350 as obtained.
226 ® Operations Research
To resolve the degeneracy of case (2), the quantity e may be allocated to one or more cells which
have become unoccupied recently to have (m + n – 1)—number of allocated cells in the new
solution.
D1 D2 D3 D4 D5
S1 4 7 3 8 2 4
S2 1 4 7 3 8 7
S3 7 2 4 7 7 9
S4 4 8 2 4 7 2
8 3 7 2 2
0 5* 1 3 –
0 – 1 3* –
0 – 1 4* –
(Note: In case of 4th step of penalty, there is a tie at 3*, so we select the cell (3, 3) with cost 4
corresponding to the column penalty because there 6 allocations could be made at that stage, while
at cell (4, 4), where again the cost is 4, only 2 allocations could be made at that stage.)
Thus, the initial basic feasible solution is x11 = 1, x13 = 1, x15 = 2, x21 = 7, x32 = 3, x33 = 6,
x44 = 2 and the initial transportation cost is Rs. 56.
Step 2: We now see optimality criteria:
No. of allocated cells = 7 and m + n – 1 = 4 + 5 – 1 = 8.
Therefore, no. of allocated cells is < m + n – 1. Thus, it is a case of degeneracy at first iteration.
Allocate a quantity e (e Æ 0) to an independent least cost unoccupied cell to make the number of
allocated cells equal to m + n – 1.
Here we allocate e to cell (4, 3) having the cost least among other unoccupied cells.
1 4 7 1 3 8 2 2
7 1 4 7 3 8
7 3 2 6 4 7 7
4 8 e 2 2 4 7
228 ® Operations Research
We now return back to MODI method and break up the cost for basic cells as cij = ui + vj. We start
by taking u1 = 0 (taking v4 = 0 is also possible).
4 3 2 u1 = 0
1 u2 = –3
2 4 u3 = 1
2 4 u4 = –1
v1 = 4 v2 = 1 v3 = 3 v4 = 5 v5 = 2
Step 3: We now find the opportunity cost Dij = cij – (ui + vj) for non-allocated cells.
6 3
6 7 1 9
2 1 4
1 8 6
As all Dij > 0, the solution obtained is optimal. Hence, now we can neglect the allocation e. So the
final solution is x11 = 1, x13 = 1, x15 = 2, x21 = 7, x32 = 3, x33 = 6, x44 = 2 and the minimum
transportation cost is Rs. 56.
EXAMPLE 8.12: A TP whose initial solution has been found out by some method is given below.
Find its optimum solution.
2 7 3 4 2
2 2 1 1 3 3
3 4 5 6 5
4 1 5 10
Solution: The initial solution is x11 = 2, x21 = 2, x22 = 1, x33 = 5 and the initial transportation cost
is Rs. 49. Here, the number of allocated cells = 4 and m + n – 1 = 3 + 3 – 1 = 5.
Thus, as the number of allocated cells < m + n – 1, it is a degenerate transportation problem.
To resolve degeneracy, we allocate a very small quantity e to a least cost unoccupied cell. Here there
is a tie in the least cost 3. So, we arbitrarily assign e to cell (2, 3).
2 7 3 4
2 2 1 1 e 3
3 4 5 6
7 u1 = 5
2 1 3 u2 = 0
6 u3 = 3
v1 = 2 v2 = 1 v3 = 3
Chapter 8: Transportation Problem ® 229
Now we find the opportunity cost Dij = cij – (ui + vj) for non-allocated cells.
–3 –4
–2 0
As some Dij are negative, the initial solution is not optimal. So we trace a loop from the cell with
the most negative Dij entry (– 4) to other occupied cells.
(D) 2 (A)
(A) 2 e (D)
The donor with min. {e, 2} = e gives e to cell (1, 3). To balance it, the donor at (1, 1) gives
e units to the acceptor at (2, 1).
2 7 3 e 4
2 2 1 1 3
3 4 5 6
Thus, we can see that this solution is no different from the initial solution except that e has shifted.
We again break up the cost for basic cells as cij = ui + vj.
7 4 u1 = 0
2 1 u2 = –5
6 u3 = 2
v1 = 7 v2 = 6 v3 = 4
We now find the opportunity cost Dij = cij – (ui + vj) for non-allocated cells.
The most negative Dij entry is (–6). Hence, a new loop is formed as
–3
4
–6 –4
So, new allocations, after the donor gives min. { 2, 5} = 2 to the cell (3, 1) and the donor at (3, 3)
–(D) 2 –(A) e
+(A) –(D) 5
gives 2 out of its 5 to the acceptor at cell (1, 3), are as follows:
7 3 2 4
2 2 1 1 3
2 3 4 3 6
230 ® Operations Research
The new solution is x13 = 2, x21 = 2, x22 = 1, x31 = 2, x33 = 3 and the transportation cost is Rs. 37.
We again check this solution for optimality. Break up cost for basic cells.
4 u1 = –1
2 1 u2 = 0
3 6 u3 = 1
v1 = 2 v2 = 1 v3 = 5
and the opportunity cost Dij = cij – (ui + vj) for non-allocated cells are
6 3
–2
2
7 3 2 4
2 1 1 2 3
4 3 4 1 6
So the new solution is x13 = 2, x22 = 1, x23 = 2, x31 = 4, x33 = 1 and the transportation cost is
Rs. 33. We again check this solution for optimality. Break up the cost for basic cells.
4 u1 = 4
1 3 u2 = 3
3 6 u3 = 6
v1 = –3 v2 = –2 v3 = 0
and the opportunity cost Dij = cij – (ui + vj) for non-allocated cells are
6 1
2
0
As all Dij ≥ 0, the solution obtained is optimum. The 0 value of Dij in cell (3, 2) indicates that there
is also an alternative optimal solution possible. So, the final solution is x13 = 2, x22 = 1, x23 = 2,
x31 = 4, x33 = 1 and the transportation cost is Rs. 33.
Remark: The reader can verify that for an alternative optimal solution, we need to start a loop from
a cell where Dij is zero and proceed to form a loop where other points are basic cells. Here
7 3 2 4
2 1 – 1 2 +3
4 3 + 4 1 –6
Chapter 8: Transportation Problem ® 231
7 3 2 4 2
2 1 3 3 3
4 3 1 4 6 5
4 1 5
x13 = 2, x23 = 3, x31 = 4, x32 = 1 and the total cost is Rs. 33.
EXAMPLE 8.13: A firm has three factories A, B and C and supplies goods to four dealers D1, D2,
D3 and D4. The production capacities of these factories are 1000, 700 and 900 units per month. The
net return per unit product varies for different combinations of dealers and factories which are given
in the following table.
D1 D2 D3 D4
A 6 6 6 4 1000
B 4 2 4 5 700
C 5 6 7 8 900
900 800 500 400
Determine a suitable allocation to maximize the total net return.
Solution: This is maximization TP. In order to convert it into a minimization problem, we convert
the entries by subtracting all entries from the highest entry 8 in the table. After doing that, we apply
VAM and find the initial basic feasible solution as x11 = 200, x12 = 800, x21 = 700, x33 = 500,
x34 = 400 and the total return (here we consider original matrix) = Rs. 15500.
Now we check this solution for optimality:
Number of allocated cells = 5 < m + n – 1 = 6. Therefore, it is a degenerate TP. We allocate
very small quantity e to a least cost cell (say) (3, 2) with entry 2 as follows:
200 2 800 2 2 4
700 4 6 4 3
3 e 2 500 1 400 0
2 2 u1 = 0
4 u2 = 2
2 1 0 u3 = 0
v1 = 2 v2 = 2 v3 = 1 v4 = 0
232 ® Operations Research
and the opportunity cost Dij = cij – (ui + vj) for non-allocated cells
1 4
2 1 1
1
Destination ai
1 2 n
1 c11 c12 c1n a1
Origin 2 c21 c22 c2n a2
As in a trans-shipment problem, each given source and destination can act as a source and
destination, we rename these sources from 1, 2, 3, …, m as points 1, 2, 3, …, m and these
destinations from 1, 2, 3, …, n as points m + 1, m + 2, …, m + n respectively. If cij ≥ 0 is the cost
of transporting one unit from point i to j, then the new transportation array assumes the following
form.
Destination Available
1 2 m m+1 m+n
1 0 a1 + M
2 0 a2 + M
Origin
m 0 am + M
M+1 0 M
M+n 0 M
Required M M m b1 + M bn + M
Here note that cij = ci( j–m) if i £ m, j £ m + 1 and cii = 0, i.e., diagonal costs are zero necessarily.
The remaining costs cij’s are obtained from the given problem. It is not necessary that cij = cji.
If we take the quantity available at each of m + 1, m + 2, …, m + n points to be zero and also
requirement at each point from 1,2,…, m to be zero, then the new table also represents the same
direct shipping transportation table. Therefore, to have a supply and demand from all the points, a
fictitious supply and demand quantity, say M, termed as buffer stock, is assumed and added to both
demand and supply of all the points. Generally, M is chosen equal to  ai or  bj .
Thus, we have designed a trans-shipment model similar to the transportation problem and it can
be solved by the usual transportation technique.
Destination
A B C D X Y
A 0 4 20 5 25 12
Source B 10 0 6 10 5 20
C 15 20 0 8 45 7
D 20 25 10 0 30 6
X 20 18 60 15 0 10
Y 10 25 30 23 4 0
The total number of starting as well as ending nodes here becomes 6. We also have
M= Â ai = Â bj = 800. The modified trans-shipment problem is now as follows.
Destination
Supply
A B C D X Y
A 0 4 20 5 25 12 100 + 800 = 900
B 10 0 6 10 5 20 200 + 800 = 1000
Source
EXAMPLE 8.15: A multi-plant organization has three plants A, B and C and three market places
X, Y and Z. The items from the plants are transported to the market places through two intermediate
finished goods warehouses W1 and W2. The details on cost of transportation per unit for different
combinations between the plants and warehouses, between warehouses and markets, between
warehouses, supply values of the plants and demand values of the markets are summarized in the
following table.
Destination
X Y Z W1 W2 Supply
A • • • 25 40 400
B • • • 38 20 500
Source
C • • • 40 25 600
W1 20 45 25 0 25 –
W2 30 20 40 40 0 –
Demand 300 700 500 – –
Here the number of plants = number of markets = 3 and the number of transient nodes in the form
of the warehouses is 2. Therefore, the total number of sources and destinations is 3 + 2 = 5. Also
M= Â ai = Â b j = 1500.
A revised format of the trans-shipment problem is shown below.
Destination
X Y Z W1 W2 Supply
A • • • 25 40 400
B • • • 38 20 500
Source
C • • • 40 25 600
W1 20 45 25 0 25 1500
W2 30 20 40 40 0 1500
Demand 300 700 500 1500 1500
REVIEW EXERCISES
1. Solve the following transportation problems:
(i) Sink
1 2 3
1 2 7 4 5
Source
2 3 3 1 8
3 5 4 7 7
4 1 6 2 14
7 9 8
[Ans. x11 = 5, x22 = 2, x23 = 6, x32 = 7, x41 = 2, x43 = 12]
(ii) Sink
1 2 3 4
1 10 7 3 6 3
Source
2 1 6 8 3 5
3 7 4 5 3 7
3 2 6 4
2 15 16 12 21 13
3 30 25 16 39 19
6 10 12 15
[Ans. x14 = 11, x21 = 6, x22 = 3, x24 = 4, x32 = 7, x33 = 12, z = 796]
(iv) Sink
1 2 3 4
1 1 2 1 4 30
Source
2 3 3 2 1 50
3 4 2 5 9 20
20 40 30 10
[Ans. x11 = 20, x13 = 10, x22 = 20, x23 = 20, x24 = 10, x32 = 20]
Chapter 8: Transportation Problem ® 237
(v) A B C
I 50 30 220 1
II 90 45 170 3
III 250 200 50 4
4 2 2
[Ans. x11 = 1, x21 = 3, x31 = 0, x32 = 2, x33 = 2, z = 820]
(vi) W1 W2 W3 W4
F1 19 30 50 10 7
F2 70 30 40 60 9
F3 40 8 70 20 18
5 8 7 14
I 4 1 3 4 4 60
II 2 3 2 2 3 35
III 3 5 2 4 4 40
22 45 20 18 30
[Ans. x12 = 45, x15 = 15, x21 = 17, x24 = 18, x31 = 5, x33 = 20,
x35 = 15, z = 290]
(viii) A B C D
I 15 10 17 18 2
II 16 13 12 13 6
III 12 17 20 11 7
3 3 4 5
[Ans. x12 = 2, x22 = 1, x23 = 4, x24 = 1, x31 = 3, x34 = 4, z = 174]
(ix)
X Y Z
A 8 7 3 60
B 3 8 9 70
C 11 3 5 80
50 80 80
[Ans. x13 = 60, x21 = 50, x23 = 20, x32 = 80, z = 750]
238 ® Operations Research
(x) 1 2 3 4
A 1 2 3 4 6
B 4 3 2 0 8
C 0 2 2 1 10
4 6 8 6
A 5 8 6 6 3 800
B 4 7 7 6 6 500
C 8 4 6 6 3 900
400 400 500 400 800
[Ans. x13 = 0, x15 = 800, x21 = 400, x24 = 100, x32 = 400,
x33 = 200, x34 = 300, x43 = 300, z = 9200]
(xii)
1 2 3 4 5
A 4 7 3 8 2 4
B 1 4 7 3 8 7
C 7 2 4 7 7 9
D 4 8 2 4 7 2
8 3 7 2 2
A 9 12 9 6 9 10 5
B 7 3 7 7 5 5 6
C 6 5 9 11 3 11 2
D 6 8 11 2 2 10 9
4 4 6 2 4 2
(xiv) M1 M2 M3 M4
W1 2 2 2 1 3
W2 10 8 5 4 7
W3 7 6 6 8 5
4 3 4 4
Find the initial basic feasible solution by (i) LCM and (ii) VAM. Start with the LCM
allocations and get the optimal solution.
[Ans. x11 = 3, x23 = 3, x24 = 4, x31 = 1, x32 = 3, x33 = 1, z = 68]
2. A company has received a contract to supply gravel for three new construction projects
located in towns A, B and C. Construction engineers have estimated the required amounts
of gravel which will be needed at these construction projects as shown below:
Project location Weekly requirements (truck loads)
A 72
B 102
C 41
The company has three gravel plants X, Y and Z located at three different towns. The gravel
required by the construction projects can be supplied by these three plants. The amount of
gravel which can be supplied by each plant is as follows:
Plant Amount available/week (truck loads)
X 76
Y 62
Z 77
The company has computed the delivery cost from each plant to each project site. These
costs (in rupees) are shown in the following table:
Cost per truck load
A B C
X 4 8 8
Plant
Y 16 24 16
Z 8 16 35
3. A company has plants A, B and C which have capacities to produce 300 kg, 200 kg, 500
kg respectively of a particular chemical per day. The production costs (per kg) in these plants
are Rs. 70, Rs. 60 and Rs. 66 respectively. Four bulk consumers have placed orders for the
product on the following basis:
Consumer Kg required/day Price offered (Rs./kg)
I 400 100
II 250 100
III 350 102
IV 150 103
Shipping costs (in rupees per kg) from plants to consumers are given in the following table:
I II III IV
A 3 5 4 6
B 8 11 9 12
C 4 6 2 8
30 27 14 60
18 17 25 50
20 21 29 90
52 68 80
[Ans. x13 = 60, x22 = 50, x31 = 52, x32 = 18, x33 = 20, z = 3688.
or x13 = 60, x22 = 30, x23 = 20, x31 = 52, x32 = 38, z = 3688]
5. Determine the optimal solution and the minimum total cost.
22 17 15 30
20 25 19 50
22 26 24 10
50 30 10
[Ans. x12 = 30, x21 = 40, x23 = 10, x31 = 10, x32 = 0, z = 1720]
9
Assignment Problem
9.1 INTRODUCTION
The assignment problem (AP) is a particular sub-class of the transportation problem. It can be stated
in the general form as follows: Given n-facilities, n-jobs and the effectiveness of each facility for
each job, the problem is to assign each facility to one and only one job in such a way that the
measure of the effectiveness is optimized (maximized or minimized). Here the facilities represent the
sources and the jobs represent the destinations or sinks in the transportation ‘language’.
Associated to each assignment problem, there is a matrix called the cost or effectiveness matrix
[cij] where cij is the cost or measure of effectiveness of assigning ith job to the jth facility. An
assignment plan is optimal if it also minimizes (optimizes) the total cost or effectiveness of doing
all the jobs.
Facilities (Destinations)
f1 f2 f3 fm ai
J1 c11 c12 c13 c1m 1
J2 c21 c22 c23 c2m 1
Jobs
.
.
Jm cm1 cm2 cm3 cmm 1
bj 1 1 1 1
Distribute m-units (jobs) (one available at each of the origin J1, J2, º, Jm) to the m-destination
requiring only 1 unit (job) in a way which minimizes the total cost. We can see that the problem is
similar to the transportation problem.
241
242 ® Operations Research
The only difference between the standard assignment and a transportation problem is that here
the number of origins is always equal to the number of destinations and at each origin one unit is
always available and one unit is always required at each destination. Here, the cost matrix is always
square. Thus, each job can be assigned to only one facility.
Determine xij, i, j = 1, 2, º, m so as to
m m
Minimize z= ÂÂ cij xij (9.1)
i =1 j =1
subject to
m
 xij = 1, j = 1, 2, º, m (9.2)
i =1
m
 xij = 1, i = 1, 2, º, m (9.3)
j =1
Theorem 9.1: If a constant is added to every element of a row and/or column of the cost matrix
of an AP, the resulting AP has the same optimal solution as the original problem and vice versa.
Alternatively, if xij = xij* minimizes
m m m m
z=  cij xij over all xij such that  xij =  xij = 1, xij ≥ 0 then xij = xij* also minimizes
i =1 j =1 i =1 j =1
m m
z* = Â Â cij* xij where cij* = cij ± ui ± vj, for i, j = 1, 2, º, m and ui, vj are real numbers.
i =1 j =1
Chapter 9: Assignment Problem ® 243
m m
Proof: z* = ÂÂ cij* xij
i =1 j =1
m m
= Â Â (cij ± ui ± v j ) xij
i =1 j =1
m m m m m m
= ÂÂ cij xij ± Â Â ui xij ± Â Â v j xij
i =1 j =1 i =1 j =1 i =1 j =1
m m m m
= z ±  ui  xij ±  v j  xij
i =1 j =1 j =1 i =1
m m m m
= z±  ui ±  v j as  xij =  xij = 1
i =1 j =1 j =1 i =1
m m
Now  ui and  v j are added/subtracted from z to give z* are independent of xij. Therefore, z*
i =1 j =1
is minimum when z is minimum. Hence, xij = xij* also minimizes z*.
m m
Theorem 9.2: If all cij ≥ 0 and we have obtained a solution with xij = xij* such that ÂÂ cij* xij = 0,
i =1 j =1
then the present solution is an optimal solution.
m m
Proof: As neither of the cij is negative, the value of z = ÂÂ cij xij cannot be negative. Hence
i =1 j =1
its minimum value is zero which is attained at xij = xij*. Hence, the present solution is optimal.
Step 8: Exactly one marked
zero in each row and each column is obtained. The assignment
corresponding to these marked
zeroes will give the optimum assignment.
This method is also known as Flood’s technique or Reduced Matrix Method.
EXAMPLE 9.1: Suppose that there are three applicants for three jobs and that the cost incurred
by the applicants to fill the jobs are given in the following table.
J1 J2 J3
A 26 23 27
B 23 22 24
C 24 20 23
Each applicant is assigned to only one job and each job is to be filled by one applicant only.
Determine the assignment of applicants to jobs such that the total cost is minimized.
Solution: It is clear that we wish to minimize
z = 26 x11 + 23 x12 + 27 x13 + 23 x21 + 22 x22 + 24 x23 + 24 x31 + 20 x32 + 23 x33
where xij = 0 or 1.
Step 1: Applying Step 1 of the Hungarian algorithm, we subtract the minimum of each row from
all the entries of the respective rows.
3 0 4
1 0 2
4 0 3
Step 2: We now subtract the minimum of each column from all entries of the respective columns.
2 0 2
0 0 0
3 0 1
Step 3: We now draw minimum number of horizontal or vertical lines to suppress all the zeroes.
2 0 2
0 0 0
3 0 1
1 0 1
0 1 0
2 0 0
246 ® Operations Research
Step 5: We now again draw minimum number of horizontal and vertical lines to suppress all the
zeroes.
1 0 1
0 1 0
2 0 0
1 0 1
0 1 0
2 0 0
Now we observe that the third row has exactly one zero entry which is uncovered. Mark it with
.
Cancel that row and column.
1 0 1
0 1 0
2 0 0
It is clear that the first zero of row 2 should be now marked with
. Thus, the optimal
assignment is
1 0 1
0 1 0
2 0 0
i.e. persons A, B, and C are assigned jobs J2, J1 and J3 respectively. Thus x12 = 1, x21 = 1 and
x33 = 1 and the rest of all xij’s are zero. This assignment causes the total cost to be minimized at
c12 + c21 + c33 = 23 + 23 + 23 = 69.
EXAMPLE 9.2: Consider the assignment problem shown below. In this problem, 5 different jobs
are assigned to 5 different operators such that the total processing time is minimized. The matrix
entries represent processing times in hours.
Chapter 9: Assignment Problem ® 247
Operator
O1 O2 O3 O4 O5
J1 10 12 15 12 8
J2 7 16 14 14 11
Job
J3 13 14 7 9 9
J4 12 10 11 13 10
J5 8 13 15 11 15
5 5
Solution: We want to find xij = 0 or 1 so as to minimize z = Â Â cij xij
i =1 j =1
Step 3: We now draw minimum number of horizontal or vertical lines to suppress all the zeroes.
2 4 7 2 0
0 9 7 5 4
6 7 0 0 2
2 0 1 1 0
0 5 7 1 7
2 4 6 1 0
0 9 6 4 4
7 8 0 0 3
2 0 0 0 0
0 5 6 0 7
248 ® Operations Research
Step 5: We now draw minimum number of lines to suppress all the zeroes.
2 4 6 1 0
0 9 6 4 4
7 8 0 0 3
2 0 0 0 0
0 5 6 0 7
2 4 6 1 0
0 9 6 4 4
7 8 0 0 3
2 0 0 0 0
0 5 6 0 7
Now row 5 has exactly one uncovered zero entry. Mark it with
. Cancel the respective row and
column.
2 4 6 1 0
0 9 6 4 4
7 8 0 0 3
2 0 0 0 0
0 5 6 0 7
It is clear that row 3 has only one uncovered zero entry. Mark it with
and finally row 4 will have
the zero entry in the cell (4, 2).
2 4 6 1 0
0 9 6 4 4
7 8 0 0 3
2 0 0 0 0
0 5 6 0 7
So the final solution will be x15 = 1, x21 = 1, x33 = 1, x42 = 1, x54 = 1 and the rest of xij’s are zero
and the optimal assignment is
Chapter 9: Assignment Problem ® 249
Method 1: Select the greatest element of the given cost matrix and then subtract each element of
the matrix from the greatest element to get the modified matrix.
Note that the new matrix will be [cij*] where cij* = crk – cij where crk is the greatest element and
[cij] is the original cost matrix.
m m
Now (say) xij = xij* maximizes z = Â Â cij xij . Then
i =1 j =1
m m
z* = ÂÂ cij* xij
i =1 j =1
m m
= ÂÂ (crk - cij ) xij
i =1 j =1
m m m m
= Â Â crk xij - Â Â cij xij
i =1 j =1 i =1 j =1
m m
= ÂÂ crk xij - z
i =1 j =1
EXAMPLE 9.3: Five different machines can do any of the required five jobs with different profits
resulting from each assignment as given below.
Machine
A B C D E
1 30 37 40 28 40
2 40 24 27 21 36
Job
3 40 32 33 30 35
4 25 38 40 36 36
5 29 62 41 34 39
32 25 22 34 22
22 38 35 41 26
22 30 29 32 27
37 24 22 26 26
33 0 21 28 23
10 3 0 8 0
0 16 13 15 4
0 8 7 6 5
15 2 0 0 4
33 0 21 24 23
14 7 0 8 0
0 16 9 11 0
0 8 3 2 1
19 6 0 0 4
33 0 17 20 19
252 ® Operations Research
14 7 0 8 0
0 16 9 11 0
0 8 3 2 1
19 6 0 0 4
33 0 17 20 19
After the above steps, row 2 has the last entry zero. Mark it with
. Now row 1 will have the
third entry zero uncovered. Mark it with
. So row 4 will have only one entry in cell (4, 4) with
zero. Therefore, the optimal assignment is done.
A B C D E
1 14 7 0 8 0
2 0 16 9 11 0
3 0 8 3 2 1
4 19 6 0 0 4
5 33 0 17 20 19
Thus, x13 = x25 = x31 = x44 = x52 = 1 and the rest all xij = 0.
The optimal assignment is
Job Machine Profit
1 C 40
2 E 36
3 A 40
4 D 36
5 B 62
214
EXAMPLE 9.4: Suppose that the cost matrix for assigning four workers to four jobs is as given
in the following table. The three occurrences of M indicate that it is impossible to assign at that cell.
Determine the optimal assignment and the corresponding minimum total cost.
Job
J1 J2 J3 J4
W1 M 30 23 25
Worker
W2 34 M 16 24
W3 22 19 21 M
W4 21 23 14 20
18 M-8 0 8
3 0 2 M-9
7 8 0 6
15 M-16 0 6
0 0 2 M-21
4 8 0 4
Step 3: Minimum lines required to cover the zeroes = 3 < 4 ( number of rows)
Step 4:
M-26 7 4 0
11 M-20 0 2
0 0 6 M-21
0 5 0 0
254 ® Operations Research
Step 5: As the number of lines required to cover all zeroes = 4 = (number of rows), the optimal
assignment can be made (left for the reader to fill details).
EXAMPLE 9.5: Suppose that there are six people applying for five jobs; and it is desired to fill
each job with exactly one person. The costs for filling the jobs with six people are given in the
following table.
J1 J2 J3 J4 J5
P1 27 23 22 24 27
P2 28 27 21 26 24
P3 28 26 24 25 28
P4 27 25 21 24 24
P5 25 20 23 26 26
P6 26 21 21 24 27
Determine the optimal assignment plan, i.e. the plan whereby the cost of assigning the people is
minimized.
Solution: This is a case of unbalanced assignment problem. So we introduce a fictitious (dummy)
job J6 with all entries zero. After that, we apply the Hungarian method. Here we will not require to
do row reduction because the last column J6 contains all zeroes. So we will perform only column
reduction.
Step 2 is left for the reader.
Step 3: Drawing minimum number of lines to cover the zeroes.
2 3 1 0 3 0
3 7 0 2 0 0
3 6 3 1 4 0
2 5 0 0 0 0
0 0 2 2 2 0
1 1 0 0 3 0
Step 4:
1 2 1 0 3 0
2 6 0 2 0 0
2 5 3 1 4 0
1 4 0 0 0 0
0 0 3 3 3 1
0 0 0 0 3 0
1 2 1 0 3 0
2 6 0 2 0 0
2 5 3 1 4 0
1 4 0 0 0 0
0 0 3 3 3 1
0 0 0 0 3 0
Here, it may be noted that P3 Æ J6 means P3 is not assigned to any job J1 to J5.
256 ® Operations Research
REVIEW EXERCISES
1. Three jobs A, B, C are to be assigned to three machines X, Y, Z. The processing costs (Rs.)
are given in the matrix below. Find the allocation that minimizes the overall processing cost.
X Y Z
A 19 28 31
B 11 17 16
C 12 15 13
1 2 9 2 7 1
2 6 8 7 6 1
Men 3 4 6 5 3 1
4 4 2 7 3 1
5 5 3 9 5 1
1 –2 –4 –8 –6 –1
2 0 –9 –5 –5 –4
3 –3 –8 0 –2 –6
4 –4 –3 –1 0 –3
5 –9 –5 –8 –9 –5
4. A company has five jobs to be done. The following matrix shows the return in rupees of
assigning i-th machine (i = 1, 2, º, 5) to the j-th job ( j = 1, 2, º, 5). Assign the five jobs
to the five machines so as to maximize the total expected profit.
Job
1 2 3 4 5
1 5 11 10 12 4
2 2 4 6 3 5
Machine 3 3 1 5 14 6
4 6 14 4 11 7
5 7 9 8 12 8
E 55 35 80 80 105
Project
A B C D
1 12 10 10 8
2 10 ¥ 15 11
Engineer
3 6 10 16 4
4 8 10 9 7
7. A department head has four tasks to be performed and three subordinates. The subordinates
differ in efficiency. The estimate of the time, each subordinate would take to perform, is
given below in the matrix. How should he allocate the tasks, one to each man, so as to
minimize the total man-hours?
Man
A B C
I 9 26 15
II 13 27 6
Task
III 35 20 15
IV 18 30 20
A 1 3 2 3 6
B 2 4 3 1 5
Job C 5 6 3 4 6
D 3 1 4 2 2
E 1 5 6 5 4
Man
1 2 3 4 5 6
A 31 62 29 42 15 41
B 12 19 39 55 71 40
Job C 17 29 50 41 22 22
D 35 40 38 42 27 33
E 19 30 29 16 20 23
F 72 30 30 50 41 20
[Ans. A Æ 5, B Æ 2, C Æ 1, D Æ 3, E Æ 4, F Æ 6]
Chapter 9: Assignment Problem ® 259
10. A marketing manager has five salesmen and five sales districts. It is estimated that the sales
per month (in hundred rupees) for each salesman in each district would be as follows. Find
the assignment of the salesman to districts that will result in minimum sales.
District
A B C D E
1 32 38 40 28 40
2 40 24 28 21 36
Salesman 3 41 27 33 30 37
4 22 38 41 36 36
5 29 33 40 35 39
10.1 INTRODUCTION
In recent years, statisticians, engineers, economists and students of management have placed
increasing emphasis on decision making under conditions of uncertainty. This area of study has been
called statistical decision theory, Bayesian decision theory, decision analysis, and many other things.
We shall henceforth use the term ‘decision analysis’ as a matter of expediency and as an anchor
point in discussing this topic.
This chapter will deal with the problem of making decisions under conditions of uncertainty.
Much of life, of course, involves making choices under uncertainty, that is, choosing from some set
of alternative courses of action in situations where we are uncertain about the actual consequences
that will occur for each course of action being considered. Often, however, we must make a choice
and are naturally concerned about whether it is the best or optimal choice.
In today’s fast-moving technological world, the need for sound, rational decision making by
business, industry and government is vividly apparent. Consider, for example, the area of design and
development of new and improved products and equipment. Typically, development from invention
to commercialization is expensive and filled with uncertainty regarding both technical and
commercial success. Product development problems related to research and development (R&D),
production, finance and marketing activities, of both tactical and strategic nature, abound. In R&D,
for example, decision makers might be faced with the problem of choosing whether to pursue a
parallel versus a sequential strategy (i.e. pursuing two or more designs simultaneously versus
developing the most promising design, and if it fails, going to the next most promising design, etc.).
In production, they may have to decide on a production method or process for manufacture; or
choose whether to lease, subcontract, or manufacture; or select a quality-control plan. In finance,
they may have to decide whether to invest in a new plant, equipment, research programs, marketing
facilities, even risky orders. In marketing, they may have to determine the pricing scheme, whether
to do market research and what type and amount of it, the type of advertising campaign, and so on.
260
Chapter 10: Decision Analysis ® 261
Each of these decision problems is characteristically complex and can have a significant impact
on the health of a firm. It is almost impossible for any decision maker to intuitively take full account
of all the factors impinging on a decision simultaneously. It thus becomes useful to find some
method of separating such decision problems into parts in a way that would allow a decision maker
to think through the implications of each set of factors, one at a time in a rational and consistent
manner.
Decision analysis provides a rich set of concepts and techniques to aid the decision maker in
dealing with complex decision problems under uncertainty. The decision analysis formulation differs
from the classical statistical inference and decision procedures by considering explicitly both the
preference structure of the individual decision maker and the uncertainties that characterize the
decision situation. An exposure to the concepts of decision analysis rapidly makes one aware of the
common shortcomings in more informal approaches, such as intuition. A particular benefit of the
decision analysis approach is that it facilitates communication and analysis among individuals
involved and affected by the decision problem.
Decision analysis is concerned with the making of rational, consistent decisions, notably under
conditions of uncertainty. That is, it helps the decision maker to choose the best alternative in light
of the information available (which normally is incomplete and unreliable). Decision analysis
enables the decision maker to analyze a complex situation with many different alternatives, states
and consequences. The major objective is to choose a course of action consistent with the basic
values (tastes) and knowledge (beliefs) of the decision maker.
EXAMPLE 10.1: A manufacturer of goods has only three options available for the existing plant:
Expand the present plant, build a new plant, and subcontract out extra production to other
manufacturers. The future events concern demand for the product. They are: high demand, moderate
demand, low demand, and failure. The pay-off table, a table which shows the pay-offs which would
result from each possible combination of decision alternative and state of nature, is given below.
s1 s2 … sn
a1 v(a1, s1) v(a1, s2) … v(a1, sn)
a2 v(a2, s1) v(a2, s2) … v(a2, sn)
… … … … …
… … … … …
… … … … …
am v(am, s1) v(am, s2) … v(am, sn)
The element ai-represents action i and the element sj-represents state of nature j. The payoff or
outcome associated with action ai and state sj is v(aj, sj).
The difference between making decision under risk and under uncertainty is that in the case of
uncertainty, the probability distribution associated with the states sj, j = 1, 2 …, n is either unknown
or cannot be determined.
2. Maximin criteria: The maximin criteria for decision making under conditions of uncertainty
give a pessimistic decision. One tries to maximize one’s minimum possible pay-offs. We begin by
first listing the minimum pay-off that is possible for each decision alternative and then select the
alternative within this group which results in maximum pay-off.
In our Example 10.1, the optimal decision based on maximin criteria is to “subcontract” with
an associated pay-off of –1,00,000 (loss).
The maximin (minimax) criterion is based on the conservative attitude of making the best out
of the worst possible conditions. If v(ai, sj) is gain, then we select the action that corresponds to the
maximin criterion.
Ï ¸
max Ì min v(ai , s j ) ˝
ai Ó s j ˛
If v(ai, sj) is loss, we use the minimax criterion given by
Ï ¸
min Ì max v(ai , s j ) ˝
ai Ó s j ˛
3. The Laplace criteria: The Laplace criterion is based on the principle of insufficient reason.
Because the probability distributions of the state of nature, P{sj}, are not known, there is no reason
to believe that they are different. The alternatives are thus evaluated using the optimistic assumption
that they are all equal—that is, P{s1} = P{s2} = = P{sn} = 1/n
Chapter 10: Decision Analysis ® 265
Given that pay-off v(ai, sj) represents gain, the best alternative is the one that yields
1 ÏÔ n ¸Ô
max Ì Â v(ai , s j ) ˝
n Ô j =1 Ô˛
Ó
ai
If v(ai, sj) represents loss, then the “max” operator is replaced with the “min” operator.
In our example, we compute the average of the pay-offs for each alternative
for Expand : {5,00,000 + 2,50,000 + (–2,50,000) + (–4,50,000)}/4 = 12,500
for Build : –50,000
for Subcontract : 85,000
According to the Laplace criterion the optimal decision is to “subcontract”.
4. The savage criterion (Regret criteria): The savage criterion is based on the concept of regret
and calls for selecting the course of action that minimizes the maximum regret. For our
Example 10.1, suppose the decision maker earlier made a decision to subcontract production (based
on the information he had at that time) and it turns out that the demand is high. The profit he will
make from subcontracting with high demand is 3,00,000; but had he known that the demand was
going to be high, he would not have subcontracted but would have chosen instead to build with a
profit of 7,00,000. The difference between 7,00,000 (the optimal pay-off “had he known”) and
3,00,000 (the pay-off he actually realized from subcontracting) is 4,00,000 and is known as the
regret resulting from his decision. Let us look at the calculation of one more regret value. Suppose
he had chosen alternative “build” and the demand turned out to be moderate. In this case there would
be no regret because, as it turned out, the decision alternative “build” is optimum when the demand
is moderate, and 3,00,000 is the maximum pay-off possible.
In the following table, we show the regret associated with all twelve combinations of decision
alternatives and states of nature. These regret values are obtained by subtracting every entry in the
original pay-off table for the problem from the largest entry in its column. Applying the minimax
regret criterion requires the decision maker to indicate the maximum regret for each decision
alternative (given in bold letters in the table for the three decision alternatives). Finally, he chooses
the minimum of these three regret values (3,50,000, 7,00,000 and 4,00,000); in this case 3,50,000
is his minimum regret value, and this regret is associated with the decision alternative “expand”.
Regret table
The savage regret criterion aims at moderating conservatism in the minimax (maximin) criterion
by replacing the (gain or loss) pay-off matrix v(ai, sj) with a loss (or regret) r(ai, sj) matrix by using
the following transformation:
5. Hurwicz criterion (Criterion of realism): This criterion for decision making under conditions
of uncertainty is a middle ground criterion between maximax and maximin—that is, between
optimism and pessimism. This compromise requires us to specify a coefficient, or index of optimism,
symbolized a (the Greek letter alpha), where a is between 0 and 1 in value. When we assign a a
value of 0, we are expressing pessimism about nature; an a equal to 1 indicates our optimism about
nature. To apply this criterion, we first determine both the maximum pay-off and minimum pay-off
for each decision alternative. Then for each decision alternative we compute this value:
a (maximum pay-off) + (1 – a) (minimum pay-off)
We then select the decision alternative that gives the maximum value.
For example if we assign the value of 0.7 to a (being fairly optimistic), then the values we
compute would be
For Expand : 0.7 (5,00,000) + 0.3 (– 4,50,000) = 2,15,000
For Build : 0.7 (7,00,000) + 0.3 (– 8,00,000) = 2,50,000
For Subcontract : 0.7 (3,00,000) + 0.3 (– 1,00,000) = 1,80,000
The application of this criterion suggests that we choose the alternative “build”.
The criterion is designed to reflect a range of decision-making attitudes from the most optimistic
to the most pessimistic (or conservative). Define 0 £ a £ 1, and assume that v(ai, sj) represents gain.
Then the selected action must be associated with
Ï ¸
max Ìa max v(ai , s j ) + (1 - a ) min v(ai , s j ) ˝
ai Ó sj sj ˛
The parameter a is known as the index of optimism. If a = 0, the criterion is conservative because
it is equivalent to applying the regular minimax criterion. If a = 1, the criterion produces optimistic
results because it is equivalent to applying the best of the best conditions. We can adjust the degree
of optimism (or pessimism) through a proper selection of the value of a in the specified (0, 1) range.
In the absence of strong feeling regarding optimism and pessimism, a = 0.5 may be an appropriate
choice.
If v(ai, sj) represents loss, then the criterion must be changed to
Ï ¸
min Ìa min v(ai , s j ) + (1 - a ) max v(ai , s j ) ˝
ai Ó sj sj ˛
2. If the decision alternatives are in columns and future states of nature are in rows, subtract
each entry in the pay-off matrix from the largest entry in its row. The largest entry in a row
will have zero regret.
Before moving on to understand the expected value criterion for decision making under risk, let
us see what is meant by expected value.
EXAMPLE 10.2: A fruit vendor purchases fruits for Rs. 3 a box and sells them for Rs. 8 a box.
The high mark-up reflects the perishability of the fruit and the great risk of stocking it, the product
has no value after the first day it is offered for sale. The vendor faces the problem of how many
boxes to order for tomorrow’s business.
A 90-day observation of the past sales gives the following information.
Daily sales No. of days sold Probability of each number being sold
10 18 0.20
11 36 0.40
12 27 0.30
13 9 0.10
Total 90 1.00
If the buyer tomorrow calls for more boxes than the number in stock, the vendor’s profits suffer
by Rs. 5 per box, for the sale he cannot make. On the other hand, excess stock also reduces the profit
per box by Rs. 3.
268 ® Operations Research
The table above reflects the losses which occur when the stock remains unsold at the end of a
day. It does not reflect the profit denied because of an out-of-stock condition.
Notice that the stocking of 10 boxes each day will always result in a profit of Rs. 50. Even when
buyers want 13 boxes on some days, he can sell only 10.
When he stocks 11 boxes, his profit will be Rs. 55 on days when buyers request 11, 12 or 13
boxes. But on days when he has 11 boxes in stock and buyers buy only 10 boxes, the profit drops
to Rs. 47. The Rs. 50 profit on the 10 boxes sold must be reduced by Rs. 3, the cost of the unsold
box.
A stock of 12 boxes will increase the daily profits to 60, but only on those days when buyers
want 12 or 13 boxes . When buyers want only 10 boxes, the profit is reduced to Rs. 44, the Rs. 50
profit on the sale of 10 boxes is reduced by Rs. 6, the cost of two unsold boxes.
The stocking of 13 boxes will result in a profit of Rs. 65 when there is a market for 13 boxes.
There will be Rs. 5 profit on each box sold, with no unsold boxes. When buyers buy fewer than
13 boxes, such a stock action results in a profit of less than Rs. 65. For example, with a stock of
13 boxes and sale of only 11 boxes, the profit is Rs. 49; the profit on 11 boxes, Rs. 55 is reduced
by the cost of 2 unsold boxes, Rs. 6.
Such a conditional profit table does not tell the vendor how many boxes should he stock each
day in order to maximize his profit. It only shows what the outcome will be if a specific number of
boxes are stocked and a specific number of boxes are sold. Under conditions of risk, he does not
know in advance the size of any day’s market, but he must still decide which number of boxes,
stocked consistently, will maximize profits over a long period of time.
Determining expected profits: The next step in determining the best number of boxes to stock is
to assign probabilities to the possible outcomes or profits. It was stated earlier that we could compute
the expected value of a random variable by weighting each possible value that the variable could take
by the probability of its taking on each value. Using this procedure, we compute the expected daily
profit from stocking 10 cases each day.
Chapter 10: Decision Analysis ® 269
Demand Conditional profit (a) Probability of demand (b) Expected profit = (a) ¥ (b)
10 boxes 50 0.20 10
11 boxes 50 0.40 20
12 boxes 50 0.30 15
13 boxes 50 0.10 5
Total 1.0 50
The optimum stock action is the one that results in the greatest expected profit. It is the action
that will result in the largest daily average profits and thus the maximum total profit over a period
of time. In this illustration, the proper number to stock each day is 12 cases, since this quantity will
give the highest possible average daily profits under the conditions given.
We have not introduced certainty into the problem facing the vendor. Rather, we have used past
experience to determine the best stock action open. He still does not know how many boxes will be
requested on any given day. There is no guarantee that he will make a profit of Rs. 53.60 tomorrow.
However, if he stocks 12 units each day under the conditions given, he will have average profits of
Rs. 53.60 per day. This is the best he can do, because the choice of any one of the other three
possible stock actions will result in a lower average daily profit.
Expected profit with perfect information: Now suppose for a moment that our vendor could remove
all uncertainty from his problem by obtaining additional information. Complete and accurate
information about the future, referred to as perfect information, would remove all uncertainty from
the problem. This does not mean that sales would not vary from 10 to 13 boxes per day. Sales would
still be 10 boxes per day 20 per cent of the time, 11 boxes 40 per cent of the time, 12 boxes
30 per cent of the time, and 13 boxes 10 per cent of the time. However, with perfect information
the vendor would know in advance how many boxes were going to be demanded for each day.
Under these circumstances, he would stock today the exact number of boxes buyers will want
tomorrow. For sales of 10 boxes, he would stock 10 boxes and realize a profit of Rs. 50. When sales
were going to be 11 boxes, he would stock exactly 11 boxes, thus realizing a profit of Rs. 55.
270 ® Operations Research
The following table shows the conditional profit values that are applicable to the vendor’s
problem if he has perfect information. Given the size of the market in advance for a particular day,
he chooses the stock action that will maximize his profits. This means he buys and stocks so as to
avoid all losses from obsolete stock as well as all opportunity losses which reflect lost profits on
unfilled requests for merchandise.
We can now compute the Expected Profit with Perfect Information (EPPI). Here the conditional
profit figures are the maximum profits possible for each sales volume.
For example, when buyers buy 12 boxes, the vendor will always make a profit of Rs. 60 under
conditions of certainty because he will have stocked exactly 12 boxes.
With perfect information, he could count on making an average profit of Rs. 56.50 a day. This
is the maximum profit possible.
Neither of these losses is incurred when the number stocked on any day is the same as the
number requested. This condition results in the diagonal row of zeros. Figures above any zero
represent losses arising from obsolete inventory; in each case the number stocked is greater than the
number sold. For example, if 13 boxes are stocked and only 10 boxes are sold, there is a Rs. 9 loss
resulting from the cost of the 3 boxes unsold.
Values below the diagonal row of zeros represent opportunity losses resulting from requests that
cannot be filled. For example, if only 10 boxes are stocked but 13 boxes are demanded, there is an
opportunity loss of Rs. 15. This is represented by the loss of Rs. 5 per box on the 3 boxes requested
but not available.
Just like we calculated expected profits, we now compute expected losses.
The optimum stock action is the one which will minimize the expected losses.
We can approach the optimum stocking action from either point of view, maximizing expected
profits or minimizing expected losses, both approaches lead to the same conclusion.
So we select that row and then pick up the decision alternative of stocking that gives the
maximum pay-off of Rs. 55. This decision is then to stock 11 boxes.
This decision criterion is rather widely used and will produce valid results when one state of
nature is much more probable than any other, and when the conditional values are not extremely
Chapter 10: Decision Analysis ® 273
different; however, it is possible to make some serious errors if we use this criterion in a situation
where a large number of states of nature exist and each of them has a small, nearly equal probability
of occurrence.
EXAMPLE 10.3: A distributor buys perishable articles for Rs. 2 per item and sells them at
Rs. 5. Demand per day is uncertain and items unsold at the end of the day represent a write off
because of perishability. If he understocks, he loses profit he could have made.
A 300-day record of past activity is as follows:
What level of stock should be held from day to day to maximize profit?
274 ® Operations Research
Solution:
Conditional and expected profit table
where (CP) stands for conditional profit and (EP) stands for expected profit.
The optimum stock position, for the given pattern of demand, is to stock 12 units per day.
Solution by marginal probability formula: We work out the marginal profit, MP, i.e. the profit
from selling one more unit, and the marginal loss, ML, i.e. the loss from not selling the marginal unit
and to calculate the relationship between MP and ML in terms of probability.
Here,
MP = 3 and ML = 2
It follows those additional items will be stocked whilst the following relationship holds:
p (making additional sale) ¥ MP > p (not making additional sale) ¥ ML
From the above discussion, p = ML/(MP + ML)
Inserting the data we obtain
p = 2/(3 + 2) = 0.4, i.e. the probability at break even point.
This value of 0.4 means that in order to justify the stocking of an additional unit, we must have at
least a 0.4 cumulative probability of selling that unit. The cumulative probability in the following
table represents the probabilities that sales will reach or exceed each of the four sales levels. For
example, 0.90 indicates that we are only 90 per cent sure of selling 11 or more units. This is obtained
by summing up the probability values of the sales at level 11, 12 and 13 or by subtracting the
probability of the sales higher than 11 from 1.
This probability is compared with the probability of demand at the various levels, the optimum
position being the highest demand with a probability greater than p, i.e.
Demand Probability
Greater than 10 units 1.00
Greater than 11 units 0.9
Greater than 12 units 0.7 Break even probability = 0.4
Greater than 13 units 0.3
EXAMPLE 10.4: The Company is investigating the possibility of producing and marketing a new
product. Undertaking this project would require the construction of either a large or a small
manufacturing plant. The market for the product produced could be either favourable or
unfavourable. The company, of course, has the option of not developing the new product line at all.
A decision tree for this situation is presented in the following figure (Figure 10.1).
We construct a decision table including conditional values based on the following information.
With a favourable market, a large facility would give a net profit of Rs. 2,00,000. If the market is
unfavourable, a Rs. 1,80,000 net loss would occur. A small plant would result in a net profit of
Rs. 1,00,000 in a favourable market, but a net loss of Rs. 20,000 would be encountered if the market
was unfavourable.
276 ® Operations Research
A state of
nature node
Favourable market
Construct large 1
plant Unfavourable market
Figure 10.1
States of nature
Alternatives Favourable market Unfavourable market
Construct large plant 2,00,000 –1,80,000
Construct small plant 1,00,000 –20,000
Do nothing 0 0
Also, it is believed in this case, that the probability of a favorable market is exactly same as that
of an unfavourable market, i.e. each state of nature has a 0.50 chance.
A completed and solved decision tree is presented in Figure 10.2. Note that the pay-offs are
placed at the right-hand side of each of the tree’s branches. The probabilities are placed in
parentheses next to each state of nature. The expected monetary values of each state of nature node
are then calculated and placed by their respective nodes. The EV of the first node is 10,000. This
represents the branch from the decision node to construct a large plant. The EV for node 2, to
construct a small plant, is 40,000. Building no plant or doing nothing has, of course, a pay-off
of 0. The branch leaving the decision node leading to the state of nature node with the highest EV
will be chosen. In the example (Figure 10.2) here, a small plant should be built.
Completed and solved decision tree
EV for node = (0.5)(2,00,000) + (0.5)(–1,80,000) Pay-offs
1 = 10,000
Favourable market 2,00,000
Construct large 1
plant Unfavourable market –1,80,000
EV for node
Do nothing = (0.5)(1,00,000) + (0.5)(–20,000) 0
2 = 40,000
Figure 10.2
Chapter 10: Decision Analysis ® 277
No plant
0
Figure 10.3
278 ® Operations Research
Examining the tree in the following figure, we see that the company’s first decision point is
whether to conduct the Rs. 10,000 market survey. If it chooses not to do the study (the lower part
of the tree), it can either build a large plant, a small plant, or no plant. This is its second decision
point. The market will either be favourable. (0.50 probability) or unfavourable (also 0.50 probability)
if it builds. The pay-offs for each of the possible consequences are listed along the right-hand side.
As a matter of fact, this lower portion of the company’s tree is identical to the simpler decision tree
shown in Figure 10.2.
The upper part of Figure 10.3 reflects the decision to conduct the market survey. State of nature
node number 1 has two branches coming out of it.
The rest of the probabilities shown in parentheses are all conditional probabilities. For example,
let us suppose that 0.78 is the probability of a favourable market for the product given that the
research indicated that the market was good. Do not forget, though, there is a chance that Rs. 10,000
market survey did not result in perfect or even reliable information. Any market research study is
subject to error. In this case, there is a 22 per cent chance that the market for the product will be
unfavourable given that the survey results are positive.
Likewise, we suppose that there is a 27 per cent chance that the market will be favourable given
that the survey results are negative. The probability is much higher, 0.73 that the market will actually
be unfavourable given that the survey was negative.
Finally, when we look to the pay-off column in Figure 10.3, we see that Rs. 10,000—the cost
of the marketing study—had to be subtracted from each of the top ten tree branches. Thus, a large
plant with a favourable market would normally net a Rs. 2,00,000 profit. But because the market
study was conducted, this amount is reduced by Rs. 10,000. In the unfavourable case, the loss of
Rs. 1,80,000 would increase to Rs. 1,90,000. Similarly, conducting the survey and building no plant
now results in a –10,000 pay-off.
With all probabilities and pay-offs specified, we can start calculating the expected monetary
value of each of the branches. We begin at the end or right-hand side of the decision tree and work
back towards the origin. See Figure 10.4.
When we finish, the best decision will be known.
1. Given favourable survey results,
EV(node 2) = (0.78) (1,90,000) + (0.22) (–1,90,000) = 1,06,400
EV(node 3) = (0.78) (90,000) + (0.22) (–30,000) = 63,600
The EV of no plant in this case is –10,000. Thus, if the survey results are favourable, a large
plant should be built.
2. Given negative survey results,
EV(node 4) = (0.27) (1,90,000) + (0.73) (–1,90,000) = –87,400
EV(node 5) = (0.27) (90,000) + (0.73) (–30,000) = 2,400
The EV of no plant is again –10,000 for this branch. Thus, given a negative survey result,
the company should build a small plant with an expected value of 2,400.
3. Continuing on the upper part of the tree and moving backward, we compute the expected
value of conducting the market survey.
EV(node 1) = (0.45) (1,06,400) + (0.55) (2,400) = 49,200
Chapter 10: Decision Analysis ® 279
1
–87,400 Favourable market (0.27) 1,90,000
Large plant 4
Survey (0.55) Unfavourable market (0.73)
–1,90,000
results
negative Small Favourable market (0.27)
90,000
plant
2,400 5
Unfavourable market (0.73)
–30,000
2,400
Conduct
No plant
market survey
–10,000
49,200
10,000 Favourable market (0.50)
2,00,000
Large plant 6
Unfavourable market (0.50)
Do not –1,80,000
conduct Favourable market (0.50)
Small 1,00,000
survey plant
40,000 7
Unfavourable market (0.50)
–20,000
40,000
No plant
0
Figure 10.4
EXAMPLE 10.5: ABC industries must decide to build a large or a small plant to produce a
product which is expected to have a market life of 10 years. A large plant will cost 28,00,000 to build
and put into operation, while a small plant will only cost 14,00,000 to build and put into operation.
The company’s best estimate of a discrete distribution of sales over the 10 year period is
High demand : Probability = 0.5
Moderate demand : Probability = 0.3
Low demand : Probability = 0.2
The annual conditional outcomes under the various combinations of plant sizes and market sizes
are as follows:
Demand
High Moderate Low
Plant Large 10,00,000 6,00,000 –2,00,000
Small 2,50,000 4,50,000 5,50,000
Solution: It is left for the readers to check that the following decision tree (Figure 10.5) illustrates
the alternatives graphically.
High 0.5 ¥ 10,00,000 ¥ 10 yr
demand = 50,00,000
Expected value of
0.3 ¥ 6,00,000 ¥ 10 yr
node 1 is 36,00,000 1 = 18,00,000
Moderate demand
Build large plant 0.2 ¥ –2,00,000 ¥ 10 yr
Low = –4,00,000
demand Total expected value = 64,00,000
Figure 10.5
For each of the combinations of plant size and the market size, we have indicated
1. the probability that outcome will happen;
2. the conditional profit the company would receive if that outcome happened; and
3. the expected value of that outcome.
Chapter 10: Decision Analysis ® 281
We work backward through the tree from right to left computing the expected value of each
state-of-nature node. We then choose that particular branch leaving a decision node which leads to
the state-of-nature node with the highest expected value.
From our decision tree-building, a large plant will produce 13,00,000 more profit over the next
10 years than the small plant. So building a large plant is the optimal decision.
EXAMPLE 10.6: A businessman has two independent investments A and B available to him, but
he locks the capital to undertake both of them simultaneously. He can choose to take A first and then
stop, or if A is successful then take B, or vice versa. The probability of success on A is 0.7, while
for B it is 0.4. Both investments require an initial capital outlay of Rs. 2,000 and both return nothing
if the venture is unsuccessful. Successful completion of A will return Rs. 3,000 (over cost),
successful completion of B will return Rs. 5,000 (over cost).
1. Solve by preparing a pay-off table
2. Solve by preparing a decision tree.
Solution:
1. Decision alternatives
Do nothing — A1
Accept A and then stop — A2
Accept B and then stop — A3
Accept A and, if successful, then accept B — A4
Accept B and, if successful, then accept A — A5
Pay-off table
Future states of nature Probabilities Decision alternatives
A1 A2 A3 A4 A5
B1 0.28 0 3,000 5,000 8,000 8,000
B2 0.42 0 3,000 –2,000 1,000 –2,000
B3 0.12 0 –2,000 5,000 –2,000 3,000
B4 0.18 0 –2,000 –2,000 –2,000 –2,000
Expected pay-off 0 1,500 800 2,060 1,400
Since the expected pay-off is maximum for decision A4 (i.e. accept A and, if successful, than
accept B), it is the optimal decision.
2. The decision tree corresponding to the given information is shown in Figure 10.6.
282 ® Operations Research
800 5,000
Success 0.4
Accept B
(–2,000)
Failure 0.6
Success (3,000)
2 0
Stop
2,060 800
0.7
(–2,000)
Failure 0.3
1,500 Success 0.7 3,000
Accept A
Accept B Success Accept A
(5,000) (–2,000)
1 3 Failure 0.3
0.4
1,400 1,500 Stop
0
Failure 0.6
(–2,000)
0
Do nothing
Figure 10.6
EXAMPLE 10.7: The owner of a shop must decide how many shirts to order for the summer
season. For a particular type of shirt, he must order in batches of 100. If he orders 100 shirts, his
cost is Rs. 10 per shirt; if he orders 200, the cost is Rs. 9 per shirt; and if he orders 300 or more
shirts, his cost is Rs. 8.50 per shirt. The selling price is Rs. 12, but if any shirts are left unsold at
the end of the summer, they will be sold for half the price. For simplicity, the owner believes that
the demand for this shirt will be 100, 150 or 200. Of course, he cannot sell more shirts than he
stocks. If, however, he understocks, there is a goodwill loss of Rs. 0.50 for each shirt a person wants
to buy but cannot because it is out of stock. Furthermore, the owner must place the order now for
the forthcoming summer season; he cannot wait to see how the demand is running for this shirt
before he orders, nor can he place several orders.
In this problem:
1. The decision maker is the shop owner.
2. The alternative courses of actions are: order 100, order 200, and order 300.
3. The possible events are: demand is 100, demand is 150 and demand is 200.
4. There is one consequence associated with each of the nine action-event pairs (totalling nine
possible consequences). For example, if the shop owner orders 100 shirts and the demand
turns out to be 100, the consequence associated with this action-event pair is that the owner
will make a profit of 200. The consequences for the other eight action-event pairs would be
determined similarly.
Solution: The consequences for the problem are determined from the following consequence
function. If the supply is greater than the demand (i.e. if S > D), then profit is equal to D (R – C)
– (C – 6)(S – D), where R is the per-unit revenue (selling price), C is the relevant unit cost, and the
parameter 6 is the half price, end-of-summer selling price for unsold goods.
Chapter 10: Decision Analysis ® 283
If the demand is greater than the supply (i.e. if D > S), then the profit is equal to
S(R – C) – 0.50(D – S), where 0.50 is the goodwill loss per shirt.
Pay-off matrix
Suppose that the shop owner (on the basis of past data, experience, intuition, and instinct)
assigns the following subjective probability distribution to the events:
Demand Probability
100 0.5
150 0.3
200 0.2
Total 1.0
Note that if the demand is 100, it cannot be 150 or 200 (i.e. events are mutually exclusive), and
the probabilities sum to 1, as they should (i.e. events are collectively exhaustive).
The owner’s expected profit for each act is shown below. Using the maximum expected value
criterion, the owner should choose: order 200 shirts, with an expected profit of Rs. 210.
If the owner ordered 100 units and the demand was 150 units, then his regret would be Rs. 125,
since he could have got 125 more by ordering 200 units had he known beforehand that the demand
would actually be for 150 units. If, however, he had ordered 200 units and the demand was 150 units,
his regret would be zero, since he could not have chosen a better action if he had known in advance
that the demand would be 150 units.
284 ® Operations Research
Using the minimum expected value criterion, the owner should choose: order 200 shirts, with
an expected opportunity loss of Rs. 100.
Suppose that in our problem, perfect information about the demand for the shirt in question is
worth Rs. 100, and the survey, under consideration to find out what the demand will be, costs
Rs. 200. In this case we would not have conducted the survey, since it would be irrational to pay
Rs. 200 for information worth Rs. 100. To make such judgments, we need to determine the expected
value of perfect information (EVPI). There are three ways EVPI can be calculated.
Method 1: We first calculate the expected value under certainty (i.e. having perfect information,
EPPI) and subtract from this the expected value under uncertainty (the best action chosen using EV
under the current information state).
First, we have said that under uncertainty we would take action: order 200 in our example, and
obtain an EV of (0.5)(0) + (0.3)(300) + (0.2)(600) = Rs. 210. This is the expected value under
uncertainty.
To obtain the expected value under certainty, we ask what our expected value is if we can
choose our action after learning the true event (demand), that is, after obtaining perfect information.
Clearly, the availability of perfect information allows us to obtain a profit of Rs. 200 if the
demand of 150 occurs, since we would choose to order 100 than to order 200. If the demand of
150 shirts occurs, then it allows us to obtain a profit of Rs. 300, since action: order 200 would be
preferred to order 100. And, similarly, if we knew the demand will be 200, we would earn a profit
of Rs. 600, since we would also choose the action: order 200 over order 100.
To understand and compute the expected value under certainty, it is necessary to adopt a
long-run relative frequency point of view. That is, we must weigh each of these profits by the prior
probabilities of each of these events occurring. In other words, from a relative frequency viewpoint,
these probabilities are now interpreted as the proportion of times a perfect predictor would forecast
that each of the given events would occur if the current situation were faced repeatedly. Each time
Chapter 10: Decision Analysis ® 285
the predictor makes a forecast, the decision maker chooses the optimal pay-off action. The
calculation of the expected profit under certainty (i.e. with perfect information) is shown in the
following table and is equal to Rs. 310.
The EVPI is thus 310 – 210 = 100. This is the expected (average) profit that could be gained if the
shop owner has perfect information about the future demand.
Method 2: Another way of computing the EVPI is by a sort of incremental analysis.
The shop owner’s best act under uncertainty is to choose: order 200. Suppose that he knew that
a demand of 100 would occur. Then, he would wish to choose, order 100 over order 200, his choice
under uncertainty. The gain in profit by choosing order 100 over order 200 when the demand for
100 shirts occur is Rs. 200, but the demand of 100 would occur only 50 per cent of the time. Hence,
on the average he would gain Rs. 100 if he chooses order 100 over order 200 when the demand of
100 was known to occur. However, if the demand of 150 or 200 occurred, the shop owner would
still be content with ordering 200, the decision he made under uncertainty. Hence, his action would
change only if the demand of 100 shirts was known to occur. His overall expected gain, then, under
perfect information is Rs. 100, which is the EVPI.
Method 3: As discussed earlier, EVPI can also be determined by calculating the minimum EOL
(Expected Opportunity Loss); that is, the minimum EOL is equal to the EVPI.
The EOL of choosing the optimal act under conditions of uncertainty in the shop owner’s
problem was shown earlier to be Rs. 100. That is, this amount represents the minimum value among
the expected opportunity losses associated with each action. This value is equal to the EVPI. Note
that all three methods yield an EVPI of Rs. 100.
It is interesting to note that the expected value plus the EOL is constant for all acts and is equal
to Rs. 310 in our example, the expected value under certainty. Observe from the following table that
the action of ordering 200 shirts has a maximum expected value and a minimum EOL.
Relationships among expected profit, expected opportunity loss,
and expected profit under certainty
The decision tree for the problem is presented in Figure 10.7. Branch a1 or branch a2 are the
choices: either to order 100 or 200 (ordering 300 was dominated and therefore eliminated from
consideration). Chance forks determine whether the event that will occur is q1, q2, q3, i.e the
demand is 100, 150 or 300.
Action State (demand)
Pay-off
q1(0.5) 200
182.5
q2(0.3)
175
a1: Order 100 q3(0.2)
150
q1(0.5) 0
210
q2(0.3)
a2: Order 200 300
q3(0.2)
210
600
Figure 10.7
Since following path a2 yields a higher expected pay-off than path a1, we block off (prune) a1
(using a double slash) as a non-optimal course of action. Hence a2 is the optimal course of action,
and it has the indicated expected pay-off of Rs. 210.
In practice, of course, the information is not perfect, yet may still be valuable. Organizations pay
large sums for information which is reasonably accurate and which will enable them to improve their
decision making. Market research opinion surveys, test marketing, and so on produce imperfect
information, i.e. it is not perfectly accurate, yet it is still accurate enough to be relied upon. Under
certain conditions it is possible to estimate the value of imperfect information.
EXAMPLE 10.8: ABC Limited is considering the launch of a new product, XYZ. Various prior
estimates of outcome have been made as follows and the expected values calculated.
In order to have more information on which to base their decision, the management is
considering whether to commission a market research survey at a cost of Rs. 1000. The agency
concerned produces reasonably accurate, but not perfect, information and ABC’s Trade Association
provided the following information about the agency’s performance.
Solution: The first stage is to calculate the posterior probabilities, i.e. the probability of the market
state being good, average or bad after the market research survey results have become available.
EXAMPLE 10.9: A company is considering whether to launch a new product or not. The success
of the idea depends on the ability of a competitor to bring out a competing product (estimated at
60%) and the relationship of the competitor’s price to the firm’s price.
Table A shows the profits for each price range that could be set by the company related to the
possible competing prices.
Table A
Profits in ’000s
If the company’s price is If the competitor’s price is Profit if no competitor
Low Medium High
Low 30 42 45 50
Medium 34 45 49 70
High 10 30 53 90
The company must set its price first because its product will be on the market earlier so that the
competitor will be able to react to the price. Estimates of the probability of a competitor’s price are
shown in Table B.
Table B
Value of
outcomes ‘000s
LP 50
MP
EV 90 D2 70
HP 90
(0.4) No
competition
LPC 30
(0.80)
EV MPC
EV 42
32.55 (0.15)
61.92
Competition HPC 45
(0.05)
(0.6) LP
Market LPC 34
product (0.2)
EV MPC
D3 45
MP 43.2 (0.7)
EV 43.2 HPC 49
(0.1)
D1 HP
LPC 10
(0.05)
EV MPC
30
42.8 (0.35)
Do not market HPC 53
(0.6)
product
0
Figure 10.8
Interpretation and recommendation: Figure 10.8 shows that at D1 the company should decide to
market the product (EV 61.92). If there is no competition, D2 decision should be to set a high price
(EV 90). If there is competition, at D3, the company should set a medium price as this gives the best
EV, i.e. 43.2.
EXAMPLE 10.10: A company with an ageing product range is investigating the launch of a new
range. Their business analysts have mapped out several possible scenarios which are given below.
Scenario 1: Continue with old range producing profits declining at 10 per cent per annum on a
compounding basis. Last year’s profits were Rs. 60,000 from this range.
Scenario 2: Introduce a new range without any prior market research. If the sales are high, the
annual profit is put at Rs. 90,000, with a probability which from past data is put at 0.7. If the sales
are low, the annual profit is put at Rs. 30,000, with a probability of 0.3.
Scenario 3: Introduce a new range with prior market research costing Rs. 30,000. The market
research will indicate whether future sales are likely to be ‘good’ or ‘bad’. If the research indicates
‘good’, then the management will spend Rs. 35,000 more on capital equipment and this will increase
290 ® Operations Research
the annual profits to Rs. 1,00,000 if sales are actually high. If, however, sales are actually low, the
annual profits will drop to Rs. 25,000. Should the market research indicate ‘good’ and should
management not spend more on promotion, then profit levels will be as for Scenario 2.
If the research indicates ‘bad’ then the management will scale down their expectations to give
annual profits of Rs. 50,000 when sales are actually low. However, if sales do turn out to be high,
profits can only rise to Rs. 70,000 because of capacity constraints. Past history of the market research
company indicates the following results.
Actual sales
High Low
Predicted sales Good *0.8 0.1
levels Bad 0.2 0.9
* When actual sales were high, the market research company had predicted good sales levels
80 per cent of the time, and so on. Use a time horizon of 6 years to indicate to the management of
the company which scenario they should adopt (Ignore the time value of money).
Solution:
Drawing the decision tree: Refer to Figure 10.9 every time while working at this problem.
Figure 10.9
Calculating the probabilities: The decision tree reveals that the following probabilities must be
calculated.
P(G)
for market research
P(B)
Chapter 10: Decision Analysis ® 291
P(H/G)
P(L/G)
for sales outcomes
P(H/B)
P(L/B)
From the data supplied, the following probabilities are available.
P(G/H) 0.8
P(B/H) 0.2
These are prior probabilities
P(G/L) 0.1
P(B/L) 0.9
The calculations are shown below:
0.56
= = 0.95
0.59
ÊLˆ P (G / L ) ¥ P ( L )
PÁ ˜ =
ËG¯ P (G)
0.03
= = 0.05
0.59
292 ® Operations Research
Ê Hˆ P( B/ H ) ¥ P ( H )
PÁ ˜ =
Ë ¯
B P (B)
0.14
= = 0.34
0.41
ÊLˆ P ( B / L) ¥ P (L )
PÁ ˜ =
Ë B¯ P (B)
0.27
= = 0.66
0.41
These may be entered on the decision tree (see Figure 10.9).
Evaluating the financial outcome: It is now possible to evaluate the financial outcomes of the three
scenarios using the information given in the question and the probabilities calculated above.
Scenario 1:
Year
Last year Rs. 60,000 profits 1 60,000 ¥ 0.9 = 54,000
2 60,000 ¥ 0.92 = 48,600
3 60,000 ¥ 0.93 = 43,740
4 60,000 ¥ 0.94 = 39,366
5 60,000 ¥ 0.95 = 35,429.5
6 60,000 ¥ 0.96 = 31,886.5
2,53,022.00
Scenario 2: Expected value of direct launch
Node (A): 0.7(90,000 ¥ 6) + 0.3(30,000 ¥ 6) = 3,78,000 + 54,000 = 4,32,000
Scenario 3: Expected value of market research
Node (B): 0.95(1,00,000 ¥ 6) + 0.05(25,000 ¥ 6) = 5,70,000 + 7,500 = 5,77,500
Deducted 35,000 for extensions = 5,42,500
Node (C): 0.95(90,000 ¥ 6) + 0.05(30,000 ¥ 6) = 5,13,000 + 9,000 = 5,22,000
Node 1 : Compare 5,42,500 and 5,22,000
\ It is worth spending more.
Carrying 5,42,500 back to (E).
Node (D): 0.34(70,000 ¥ 6) + 0.66 (50,000 ¥ 6) 1,42,800 + 1,98,000 = 3,40,800
Node 2: 3,40,800 or 0 from no launch.
Node (E): 0.59 ¥ 5,42,500 + 0.41 ¥ 3,40,800
3,20,075 + 1,39,728 = 4,59,803
Deducted market research expenditure
4,59,803 – 30,000 = 4,29,803
Chapter 10: Decision Analysis ® 293
REVIEW EXERCISES
1. A major asset of a Motor Company is a franchise to sell automobiles of a major
manufacturer. The general manager of the company is planning the staffing of the
dealerships garage facilities. From the information provided by the manufacturer and from
other nearby dealerships, he has estimated the number of annual mechanic hours that the
garage will likely need.
Hours 10,000 12,000 14,000 16,000
Probability 0.2 0.3 0.4 0.1
The manager plans to pay each mechanic Rs. 9 per hour and to charge customers Rs. 16.
Mechanics will work a 40-hour week and get an annual 2-week vacation.
(a) Determine how many mechanics the company should hire.
(b) How much should the company pay to get perfect information about the number of
mechanics it needs?
[Ans: (a) 6 mechanics, (b) EVPI = 11,712 (assuming that the mechanics
get paid vacations]
2. Suppose it is an overcast Sunday morning and you have 100 people coming for a party in
the afternoon. You have a nice garden and your house is not too large; so weather permitting,
you would like to set up the refreshments in the garden and have the party there (it would
be pleasant, and your guests would be more comfortable). On the other hand, if you set up
the party for the garden, and after all the guests arrive it begins to rain, the refreshments will
be ruined, your guests will get wet, and you will surely wish you had decided to have the
party in the house. Define the acts (decision alternatives), and events (future states of nature)
and the consequences and represent the problem in a pay-off table.
3. A firm is considering the purchase of a complex piece of equipment from either of the two
suppliers S1 and S2. The supplier S1 is capable of supplying the equipment on time to meet
a certain desired deadline. The price chargeable by S1 is, however, considerably higher than
that of S2. It is felt by the management of the firm that S2 may deliver the equipment, or may
not be able to deliver on time. It is even suspected that the supplier S2 may never be able
to deliver the equipment to the specifications. However, the management believes that if it
waits for some months, it may get better information on S2’s capabilities of supplying the
equipment.
The management is considering three alternative courses of action.
A1: Order from S1. If later it is clear that S2 can supply, the order from S1 can be cancelled.
Of course, a delay would be caused when the order is given to S2.
294 ® Operations Research
A2: Order from S2. If it is known later on that S2 cannot supply the equipment, the order
may be switched to S1.
A3: Wait till the time information on S2’s capabilities are known. This would obviously
cause delay.
The outcomes (profits) in the various possible situations are:
Sales (packs) : 5 10 15 20 25
Probability : 0.20 0.20 0.30 0.20 0.10
Any unsatisfied demand does not affect the probability of future sales. Any unsold packs
will be sold after the festive season at a loss of Rs. 10 per pack.
(a) Assuming that the quantity of stock is bought in units of 5 packs and ignoring storage
costs, how many packs should the manager buy to maximize his expected profit?
(b) If the manager was completely uncertain about the likelihood of sales between 5 and
25 packs (inclusive), how many packs should he stock?
[Ans: (a) 15 packs, expected profit = Rs. 10,500, (b) 20 packs]
7. As a fund-raiser for a student organization, some students have decided to sell some products
outside the union office. Each product will sell for Rs. 1.75 and cost the organization
77 paise. Historical sales indicated that between 55 and 60 dozen, products will be sold with
the probability distribution given below:
Dozens of product : 55 56 57 58 59 60
Probability : 0.15 0.20 0.10 0.35 0.15 0.05
To maximize the profit contribution, how many products should be ordered?
Assume that the products must be ordered by the dozen. What is the expected value of
perfect information in this problem? What is the maximum amount the organization would
be willing to pay for perfect information?
[Ans: 58 dozen, EVPI = Rs. 24.948]
8. The research department of a company has recommended to the marketing department to
launch a product of three different types. The marketing manager has to decide one of the
types of the product to be launched under the following estimated pay-offs for various level
of sales:
The profits that the management can make for different levels of market acceptability of the
products are as follows:
Calculate the expected value of the choice of the alternatives and advise the management.
11. A processor of frozen vegetables has to decide what crop to plant in a particular area.
Suppose there are only two strategies: to plant cabbage and to plant cauliflower. Also,
suppose that the states of nature can be summarized in three possibilities: perfect weather,
variable weather, and bad weather. On the basis of weather records, it is determined that the
probability of perfect weather is 0.25, of variable weather is 0.50, and that of bad weather
is 0.25. The yields ( in Rs.) of the two crops under these different conditions are known, and
the utility of the company can be assessed to be measured by rupee amounts as shown in
the following pay-off table.
W R
H 800 200
S –2,500 1,000
16. A physician purchases a particular vaccine on Monday each week. The vaccine must be used
within the week following, otherwise it becomes worthless. The vaccine costs Rs. 2 per dose
and the physician charges Rs. 5 per dose. In the past 50 weeks, the physician has
administered the vaccine in the following quantities:
Doses per week : 20 25 40 60
No. of weeks : 5 15 25 5
(a) Draw up a pay-off matrix.
(b) Obtain a regret matrix.
(c) Determine the optimum number of doses the physician should buy.
(d) The maximum amount the physician would be willing to pay per week for a perfect
information about the number of doses expected to be demanded in a week.
17. A pharmaceutical company produces a compound which must be sold within a month it is
produced, if the normal price of Rs. 100 per bottle is to be obtained. Anything unsold in that
month is sold in a different market for Rs. 20 per bottle.
During the last three years, the monthly demand was recorded which showed the following
frequencies:
Monthly demand (No. of bottles) : 2,000 3,000 6,000
Frequency (No. of months) : 8 16 12
(a) Prepare an appropriate pay-off table.
(b) Advise the production management on the number of bottles that should be produced
next month.
18. Suppose you want to invest Rs. 10,000 in the stock market by buying shares in one of two
companies: A and B. Shares in company A are risky but could yield a 50 per cent return on
investment during the next year. If the stock market conditions are not favourable (Bear
market), the stock may lose 20 per cent of its value. Company B provides safe investment
with 15 per cent return in a favourable (Bull market) market and only 5 per cent in an
unfavourable market. All the publications you have consulted are predicting a 60 per cent
chance for a Bull market and 40 per cent for a Bear market. Where should you invest your
money?
[Ans: EV(A) = 2,200, EV(B) = 1,100]
19. A man has the choice of running either a hot snack stall or an ice cream stall at a sea-side
resort during the summer season. If it is a fairly cool summer, he should make Rs. 5,000 by
running the hot snack stall, but if the summer is quite hot he can only expect to make
Rs. 1,000. On the other hand, if he operates the ice cream stall, his profit is estimated at
Rs. 6,500 if the summer is hot, but only Rs. 1,000 if it is cool. There is 40 per cent chance
of the summer being hot. Should he opt for running the hot snack stall or the ice cream stall?
20. Find the best alternative in the following decision table using the expected value criterion
and the criterion of expected regret. The entries in the matrix indicate profits associated with
the different combinations of decisions and states of nature.
21. Mukesh is considering three possible ways to invest the Rs. 2,00,000 he has just inherited.
Option 1: Some of his friends are considering financing a hotel. This venture is highly risky
and could result in either a major loss or a substantial gain within a year. Mukesh estimates
that with probability 0.6, he will lose all of his money. However, with probability 0.4, he will
make a Rs. 2,00,000 profit.
Option 2: He can invest in some apartments. Within 1 year, that project will produce a profit
of at least Rs. 10,000, but it might yield Rs. 15,000, Rs. 20,000, Rs. 25,000, or possibly even
Rs. 30,000. Mukesh estimates the probabilities of these five returns at 0.20, 0.30, 0.25, 0.20,
and 0.05, respectively.
Option 3: He can invest in some government securities that have a current yield of
8.25 per cent.
(a) Construct a decision tree to help Mukesh decide how to invest his money.
(b) Which investment will maximize his expected 1-year profit?
(c) How much would Mukesh be willing to pay for perfect information about the success
of the hotel venture?
(d) How much would Mukesh be willing to pay for perfect information about the success
of the apartment venture?
[Ans: (b) investment in apartments, (c) EVPI = 90,800 – 18,000 = 72,800
(d) EVPI = 19,750 – 18,000 = 1,750]
22. You have the chance to invest your money in either a 7.5 per cent bond that sells at a face
value or an aggressive growth stock that pays only 1 per cent dividend. If inflation is feared,
the interest rate will go up to 8 per cent, in which case the principal value of the bond will
go down by 10 per cent, and the stock value will go down by 20 per cent. If recession is
anticipated, the interest rate will go down to 6 per cent. Under this condition, the principal
value of the bond is expected to go up by 5 per cent, and the stock value will increase by
20 per cent. If the economy remains unchanged, the stock value will go up by 8 per cent
and the bond principal value remains the same. Economists estimate a 20 per cent chance
that inflation will rise and 15 per cent that recession will set in. Assume that you are basing
your investment decision on next year’s economic conditions.
(a) Represent the problem as a decision tree.
(b) Would you invest in stocks or bonds?
11
Inventory Problems
11.1 INTRODUCTION
The history of inventory problem has roots during World War II. Inventory may be defined as the
physical stock of goods, units or economic resources that are stored or reserved for a smooth,
efficient and effective functioning of business. Without inventory, customers would have to wait
until their orders were filled from a source or were produced. In general, however, the customer will
not like to wait for a long period of time. Another reason for maintaining inventory is the price
fluctuation of some raw materials (maybe seasonal). It would be profitable for a buyer to procure
a sufficient quantity of raw material at lower price and use it whenever needed. Levin et al. argued
that maintaining inventories on display attracts more customers, resulting in increase in sale and
profits. The study of controlling and management of such inventory is referred to as inventory
management.
300
Chapter 11: Inventory Problems ® 301
Indirect inventory does not play any role in finished goods product but it is required for
manufacturing. Thus, indirect inventory acts as a catalyst which only speeds up/down the reaction.
Indirect inventory is classified as follows:
1. Fluctuation inventory: This acts as an equilibrium between sales and production. The
reserve stock that is kept to maintain fluctuations in the demand and lead-time affecting the
production of items is called fluctuation inventory.
2. Anticipation inventory: This is programmed in advance for the seasonal large sales, slack
season, a plant shut down period, etc.
3. Transportation inventory: The existence of transportation inventories is mainly due to the
movement of materials from one place to another.
4. Decoupling inventory: These inventories are maintained for meeting out the demands
during the decoupling period of manufacturing or purchasing.
Two fundamental questions that must be answered by a decision maker are
1. When to replenish the inventory and
2. How much to order for replenishment.
In this chapter, we will try to answer these questions under a variety of circumstances. Before
we proceed to answer these questions, let us discuss about the costs involved in inventory decisions.
When price discounts are not offered, then the total cost (TC) is given by
TC = IHC + SC + OC
Except costs, the other variables which play an important role in decision making are as follows:
Demand: The size of the demand is the number of units required in each period. It is not
necessarily the amount sold because the demand may remain unfulfilled due to shortage or delays.
The demand pattern of the items may be either deterministic or probabilistic. In the deterministic
case, the demand over a period is known. This known demand may be fined or variable with time.
Such demand is known as static and dynamic respectively. When the demand over a period is
uncertain but can be predicted by a probability distribution, we say it a case of the probabilistic
demand. A probabilistic demand may be stationary or non-stationary over time.
Lead-time: It is the time between placing an order and realization in stock. It can be deterministic
or probabilistic. If both demand and lead-time are deterministic, one needs to order in advance by
a time equal to lead-time. However, if lead-time is probabilistic, it is very difficult to answer when
to order.
Cycle time: The cycle time is the time between placements of two orders. It is denoted by T. It can
be determined in one of the two ways.
1. Continuous review: Here the number of units of an item on hand is known. In this case,
an order of fixed size is placed every time the inventory level reaches a pre-specified level,
called reorder level. Many authors referred this as the two-bin systems or fixed order level
system.
2. Periodic review: Here the orders are placed at equal intervals of time and the size of the
order depends on the inventory on hand and on order at the time of the review. This is also
called the fixed order interval system.
Planning horizon: The period over which a particular inventory level will be maintained is called
planning horizon. It may be finite or infinite. It is denoted by H.
11.4 NOTATIONS
We shall use the following notations for the discussion of models in the chapter.
C : Purchase or manufacturing cost of an item
A : The ordering cost per order
i : Inventory carrying charge fraction per unit per annum
H : Inventory holding cost of an item per unit per time unit
p : Shortage cost per unit short per time
R : Demand rate of an item
Q : Order quantity (a decision variable)
T : Cycle time (a decision variable)
ROL : Reorder level, i.e. the level of inventory at which an order is placed
L : Lead-time
N : Number of orders per time unit
Chapter 11: Inventory Problems ® 303
Inventory level
–R
Q
0 Time
Figure 11.1
304 ® Operations Research
Let Q(t) denote on-hand inventory at time t of a cycle. Then the differential equation that
describes the instantaneous states of Q(t), 0 £ t £ T, is given by
dQ(t)
= –R, 0 £ t £ T (11.1)
dt
with initial condition Q(0) = Q = RT. Then the solution of Eq. (11.1) is given by
Q(T) = R (T – t), 0£t£T (11.2)
Average inventory, I1(Q), in the system per time unit is
T
1 RT Q
I1(Q) =
T Ú Q (t ) dt 2
=
2
(11.3)
0
Then the total cost, TC(Q), of an inventory system per time unit is
hQ AR
TC(Q) = IHC + OC = + (11.4)
2 Q
Using the classical optimization technique, the optimum value of
dTC (Q)
Q = Q0 can be obtained by setting = 0. Hence
dQ
2AR
Q0 = (11.5)
h
and the total cost
TC (Q0) = 2AhR (11.6)
2
d TC (Q) 2 AR
We have =
> 0 for all Qo. So the total cost, TC(Q0), obtained in Eq. (11.6) is
dQ02
Q03
minimum. The optimum cycle time
Q0 2A
T0 = = (11.7)
R hR
hQ AR
Graphically, the cost equation TC(Q) = + = TC1(Q) + TC2(Q) can be represented as follows
2 Q
(Figure 11.2).
Note 1: If the unit cost is taken into account then
hQ AR
TC(Q) = CR + + (11.8)
2 Q
2AR
This gives Q0 = and TC (Q0) = CR + 2AhR
h
Note 2: Let P be the selling price per unit. Then the gross revenue per time unit is
dNP (Q )
GR = (P – C) R. Hence, the net profit per time unit is NP(Q) = GR – TC(Q). Then =0
dQ
2AR
gives Q0 = and the maximum net profit per time unit is NP(Q0) = (P – C) R – 2AhR .
h
Chapter 11: Inventory Problems ® 305
TC1(Q)
Q0, TC(Q0)
Cost
TC2(Q)
0 Q0 Q
When the lot-size Q is restricted to take discrete values, we cannot determine optimum lot-size
Q = Q0 by using the differential equation. In this case, we will use the difference equation approach.
Let the lot-size Q be restricted to take values u, 2u, 3u, …, etc. Then the necessary condition
for Q0 to be optimum lot-size is
TC (Q0) £ TC (Q0 + u) (11.9)
and TC (Q0) £ TC (Q0 – u) (11.10)
hQ0 AR h(Q0 + u) AR
Equation (11.9) gives + £ +
2 Q0 2 Q0 + u
which on simplication is,
2AR
Q0 (Q0 + u) £ (11.11)
h
From Equations (11.10) and (11.11), the lot-size Q = Q0 is optimum if
2AR
Q0 (Q0 – u) £ £ Q0(Q0 + u)
h
Sensitivity of lot-size model: For the lot-size model, we have total cost of an inventory system per
time unit as
hQ AR 2AR
TC(Q) = + and Q0 =
2 Q h
Now suppose that instead of ordering for Q0-units (given above), we replenish another lot-size (say)
Q1. Such that Q1 = bQ0, b > 0 and let TC1 (Q1) be the corresponding total cost of an inventory
TC1 (Q1 ) 1 + b2
system. The ratio = is known as the measure of sensitivity of the lot-size model.
TC (Q0 ) 2b
306 ® Operations Research
EXAMPLE 11.1: Using the formula information, obtain the EOQ and the total variable cost
associated with the policy of ordering quantities of that size. Annual demand = 20,000 units, ordering
cost = Rs. 150 per order, and inventory carrying cost is 24% of average inventory value.
Solution: Given R = 20,000 units, A = Rs. 150/order, h = Rs. 0.24 ? unit/annum. Then
2AR
Q0 = = 5000 units and TC (Q0) = 2AhR = Rs. 1,200.
h
EXAMPLE 11.2: An oil engine manufacturer purchases 42 lubricants pieces from a vendor.
The requirement of these lubricants is 1,800 per year. What should be the order quantity per order,
if the cost per placement of an order is Rs.16 and inventory carrying charge per rupee per year is
20 paise.
Solution: Given R = 1,800*42 = 75,600 units, A = Rs.16/order and h = 0.20 per unit/year. Then
2AR
Q0 = = 34,776 units.
h
Thus, the optimum inventory quantity of lubricant at the rate of Rs. 42 per lubricant = Q0/42
= 83 lubricants.
EXAMPLE 11.3: A company uses rivets at a rate of 5,000 kg per year, rivets costing Rs. 2 per
kg. It costs Rs. 20 to place an order and the carrying cost of inventory is 10% per annum. How
frequently should order for rivets be placed and how much?
Solution: Given R = 5,000 kg/year, C = Rs 2/kg, A = Rs. 20/order and h = Ci = 2 * 10 % per unit/
2AR Q 1
year. Then Q0 = = 1,000 kg and T0 = 0 = years = 2.4 months.
Ci R 5
Chapter 11: Inventory Problems ® 307
EXAMPLE 11.4: A supplier ships 100-units of a product every Monday. The purchase cost of the
product is Rs. 60 per unit. The cost of ordering and transportation from the supplier is Rs. 150 per
order. The cost of carrying inventory is estimated at 15 % per year of the purchase cost. Find the
lot-size that will minimize the cost of the system. Also, determine the optimum cost.
Solution: Given R = 100 units per week, A = Rs. 150/order, h = 15% of 60 = Rs. 9 per unit/year
= Rs. 9/52 per unit/week. Then Q0 = 416 units, and the optimum cost = CR + 2AhR = Rs. 6,072.
EXAMPLE 11.5: A company plans to consume 760 pieces of a particular component. Past records
indicate that the purchasing department spent Rs. 12,555 for placing 15,500 purchase orders. The
average inventory was valued at Rs. 45,000 and the total storage cost was Rs. 7,650 which included
wages, taxes, rent, insurance, etc. related to the store department. The company borrows capital at
the rate of 10% per year. If the price of a component is Rs. 12 and the lot-size is 10, find the
following:
1. Purchase price per year
2. Purchase expenses per year
3. Storage expenses per year
4. Capital cost per year
5. Total cost per year.
Solution: Given R = 760 pieces, volume = 15,500 purchase orders, storage cost = Rs. 7,650,
ordering cost, A = Rs. 12,555/year, cost per order = 12555/15500 = Rs. 0.81 and average inventory
= 45,000 units. Then
Storage cost 7650
i = Inventory carrying charge fraction = ¥ 100 = ¥ 100 = 17%
Average inventory 45, 000
1. Purchase price per year = 12 ¥ 760 = Rs. 9,120.
2. Purchase expenses per year = 0.81 ¥ 760 = Rs. 615.60.
3. Storage expenses per year = (1/2)QCi = Rs. 10.20.
4. Capital cost per year = (1/2)Q ¥ C ¥ 10 % = Rs. 6.00.
5. Total cost per year = (1) + (2) + (3) + (4) = Rs. 9,751.80.
EXAMPLE 11.6: If in the model developed in Section 11.5, the set-up cost, A, is replaced by
A + bQ where b is the set-up cost per unit item produced, then show the optimum order quantity
produced due to this change if the set-up cost remains unaffected.
Solution: With the new set-up cost, Eq. (11.4) in the form of T becomes
h ( A + bQ)
TC (T ) = RT +
2 T
h ( A + bRT )
= RT +
2 T
h A
= RT + + bR
2 T
308 ® Operations Research
dTC (T ) 1 A 2A 2AR
For the optimum cost, = hR - 2 = 0 which gives T0 = and Q0 = .
dT 2 T h h
This is same as Eq. (11.5). Thus, there will be no change in the optimal order quantity due to change
in the set-up cost.
EXAMPLE 11.7: Data relevant to component A used by Engineering India Private Limited in 20
different assemblies includes: purchase price = Rs. 15 per 100, annual usage = 1,00,000 units, cost
of buying office (fixed) Rs. 15,575 per annum, set-up cost = Rs. 12 per order, rent of component
= Rs. 3,000 per annum, interest = 25 % per annum, insurance = 0.05 % per annum based on total
purchases, depreciation as 1 % per annum of all items purchase. Calculate
1. EOQ for component A
2. The percentage changes in total annual costs relating to component A if the annual usage was
(a) = 1,25,000-units and (b) 75,000-units.
Solution: Given R = 1,00,000 units, A = Rs. 12/order
15
and h = (0.25 + 0.0005 + 0.01) = Rs. 0.039075 per unit per annum.
100
Then Q0 = 7,837-units and TC(Q0) = Rs. 306.25
1. We have Ra = 1,25,000-units. Then Qa0 = 8,762-units and TCa (Qa0) = Rs. 342.31.
2. We have Rb = 75,000-units. Then Qb0 = 6,787-units and TCb (Qb0) = Rs. 265.20.
Therefore, the total annual cost increases by 12% when the annual demand is 1,25,000 units, whereas
it decreases by 13% when the annual demand is 75,000-units.
Inventory level
R
Q –R
–
P
0 t1 T Time
Figure 11.3 Representation of time—inventory level.
Chapter 11: Inventory Problems ® 309
We start with zero inventory level. The production starts at this point of time at the rate of
P-units per time unit and the demand occurring at the rate of R (< P)-units, are satisfied from the
production. The production continues till Q = RT-units are produced. Thereafter, the demand is
satisfied from accumulated inventory at the rate of R-units. The production again starts when
on-hand inventory level reaches zero. In Figure 11.3, t1 is time at which production stops and T is
the cycle time at which the inventory level reaches zero.
Let Q(t) denote the on-hand inventory at any instant of time t, 0 £ t £ T. It is assumed that
production of units continues in (0, t1) and during (t1, T) demand is satisfied from accumulated
inventory. Then the differential equation governing instantaneous state of inventory is given by
dQ(t ) ÏÔ P - R, 0 £ t £ t1
=Ì (11.12)
dt ÔÓ - R, t1 £ t £ T
with initial condition Q(0) = 0 and boundary conditions Q(t1) = Q = RT and Q(T) = 0. The solution
of Eq. (11.12) is
ÏÔ ( P - R)t , 0 £ t £ t1
Q(t) = Ì (11.13)
ÔÓ R(T - t ), t1 £ t £ T
1 È1 ˘
t T
1 Ê Rˆ
Í Ú Q(t ) dt + Ú Q(t ) dt ˙˙ = 2 Q ÁË 1 - P ˜¯
=
T Í0
Î t1 ˚
Hence, the total cost of the system per time unit is
AR
TC(Q) = IHC + 0C = hI1(Q) +
Q
1 Ê Rˆ AR
= hQ Á 1 - ˜ + (11.14)
2 Ë P¯ Q
dTC (Q)
Setting 0 gives optimum value of lot-size,
dQ
2 AR
Q = Q0 = (11.15)
h [1 - ( R / P )]
Then the minimum total cost per time unit is
Ê Rˆ
TC(Q0) = 2 AhR Á 1 - ˜ (11.16)
Ë P¯
310 ® Operations Research
d 2TC (Q) 2 AR
because 2
= > O for all Q0 and optimum cycle time T = T0 is
dQ Q03
2A
T0 = (11.17)
hR [1 - ( R /P )]
Note 1: If P = R, i.e. if the rate of replenishment is equal to the demand rate then replenishment
will have to take place continuously. In this case, there will be neither carrying cost nor
replenishment cost.
Note 2: If P Æ •, i.e. replenishment rate is infinite, all equations derived here will be same as
those derived in section 11.5.
2A
\ Q0 = = 3,561 units
h [1 - ( R / P )]
EXAMPLE 11.9: A contractor has to supply 10,000 bearings per day to an automobile
manufacturer. He finds that when he starts a production run, he can produce 25,000 bearings per day.
The cost of holding a bearing in stock for one year is Rs. 2 and the set-up cost of a production run
is Rs. 1,800. How frequently should production run be made?
Solution: Given: h = Rs. 2.00/bearing/year = Rs. 0.0055 / bearing/year, A = Rs. 1800/production
run, R = 10,000 bearings/day, P = 25,000 bearings/day. Then
2 AR
Q= = 1,04,447 bearings.
h [1 - ( R / P )]
Q
T= = 10.5 days.
R
Q
Length of production cycle = t1 = = 4 days.
P
Thus, the production cycle starts at an interval of 10.5 days and the production continues for 4 days.
Chapter 11: Inventory Problems ® 311
EXAMPLE 11.10: Find the most economic batch quantity of a product on a machine if the
production rate of that item on the machine is 200 pieces per day and the demand is uniform at the
rate of 100 pieces per day. The ordering cost is Rs. 200 per batch and the cost of holding one item
in inventory is Rs. 0.81 per day. How will the batch quantity vary if the production rate is infinite?
Solution: Given: A = Rs. 200/order, h = Rs. 0.81/unit/day, R = 100 units/day, P = 200 units/day.
2 AR
\ Q= = 317 units.
h [1 - ( R / P )]
Q
Cycle time, T = = 3.17 days.
R
Q
Length of production cycle, t1 = = 1.58 days.
P
2AR
If the production rate is infinite, i.e. P Æ • then Q = = 222 units.
h
Inventory level
S –R
Qp
Tp
Time
0 t1
Qp – S
–R
Figure 11.4 EOQ model with shortages.
Let Q (t) denote the on-hand inventory at time t (0 £ t £ TP) of a cycle. Suppose that the system
carries inventory during (0, t1) and runs with shortages during (t1, TP).
312 ® Operations Research
dQ(t ) ÏÔ - R, 0 £ t £ t1
=Ì (11.18)
dt ÔÓ - R, t1 £ t £ Tp
with initial condition Q(0) = S, Q(t1) = 0 and Q(TP) = QP.
Then the solution of Eq. (11.18) is given by
ÏÔ S - Rt , 0 £ t £ t1
Q(t) = Ì (11.19)
ÔÓ R (T1 - t ), t1 £ t £ Tp
Clearly, Q(t1) = 0 gives t1 = S/R. Hence, average inventory per time unit is
t
1 s2
I1(S) =
TP Ú Q(t ) dt =
2QP
(11.20)
0
dTC(S )
For the optimum value of S = S0, we need to set = 0 , which gives
dS
p QP
S0 = (11.23)
h +p
and the corresponding total minimum cost per time unit is
hp QP
TC (S0) = (11.24)
2(h + p )
If S is restricted to take only discrete values in multiple of u, then the reader can easily check that
the condition for optimality at S = S0 is
Ê 1ˆ p QP Ê 1ˆ
ÁË S0 - 2 ˜¯ u £ h + p £ ÁË S0 + 2 ˜¯ u (11.25)
Let us see how sensitive the system is. Suppose instead of optimal order level S0 given in
Eq. (11.23), one uses another order-level S¢ (say) such that S¢ = aS0, a > 0 is constant and the
corresponding cost be TC(S¢).
Chapter 11: Inventory Problems ® 313
hS ¢ p (QP - S ¢)2
Then TC (S¢)2 = +
2QP 2QP
Inventory level
S –R
Q
Tp
Time
0 t1
Q– S
–R
We analyze one cycle. If T denotes cycle time, we obviously have Q = RT. Initially, we have
order quantity Q. After clearing shortages of (Q – S)-units, the initial inventory level is S. Let Q(t)
denote the on-hand inventory at time t of a cycle, then clearly Q(0) = S. Suppose that the system
carries inventory during (0, t1) and runs with shortages during (t1, T). The differential equation that
describes the instantaneous states of Q(t), 0 £ t £ T, is given by Eq. (11.18) and using Q(0) = S and
Q(t1) = 0, the solution of differential Eq. (11.18) is
ÏÔ S - Rt , 0 £ t £ t1
Q(t) = Ì (11.26)
ÔÓ R(t1 - t ), t1 £ t £ T
The condition Q(t1) = 0 gives t1 = S/R.
314 ® Operations Research
Let us calculate average inventory per time unit and average units shorts per time unit.
Average inventory,
t1
1 S2
I1(S, Q), per time unit =
T Ú Q(t ) dt =
2Q
(11.27)
0
and average shortages
T
1 (Q - S)2
I2 (S, Q), per time unit =
T Ú -Q(t ) dt =
2Q
(11.28)
t1
2 AR p 2 AR (h + p )
S0 = and Q0 = ◊ (11.30)
h h +p h p
The corresponding total minimum cost per time unit is
Ê p ˆ
2 AhR Á
Ë h + p ˜¯
TC (Q0, S0) = (11.31)
2A Ê h + p ˆ
◊
R ÁË hp ˜¯
cycle time T0 = (11.32)
EXAMPLE 11.11: The demand for a certain item is 16 units per period. Unsatisfied demand
causes a shortage cost of Rs. 0.75 per unit per short period. The cost of initiating purchasing action
is Rs. 15.00 per purchase and the holding cost is 15% of average inventory valuation per period. Item
cost is Rs. 8.00 per unit. Find the minimum cost and purchase quantity.
Solution: Given R = 16 units, p = Rs. 0.75 per unit short, h = Rs. 8 ¥ 15% = Rs. 1.20 and
A = Rs. 15.00/order.
2AR h + p
\ Q= ◊ = 32 units (appro.)
h h
p
TC = 2 AhR = Rs. 14.88 (appro.)
h+p
Chapter 11: Inventory Problems ® 315
EXAMPLE 11.12: A television manufacturing company produces its own speakers, which are
used in the production of its television sets. The television sets are assembled on a continuous
production line at a rate of 8,000 per month. The company is interested in determining when and
how much to procure, given the following information:
1. Each time a batch is produced, a set-up cost of Rs. 12,000 is incurred.
2. The cost of keeping a speaker in stock is Rs. 0.30 per month.
3. The production cost of a single speaker is Rs. 10.00 and can be assumed to be a unit cost.
4. Shortage of a speaker (if there exists) costs Rs. 1.10 per month.
Solution: Given R = 8,000 televisions per month, A = Rs. 12,000 per production run, h = Rs. 0.30
per unit per month, p = Rs. 1.10 per unit short per month.
Case (i): When shortages are not allowed
2AR Q
Q= = 25,298 speakers and T = = 3.2 months.
h R
Thus, 25,298 speakers are to be produced every 3.2 months.
Case (ii): When shortages are permitted
2AR h +p Q
Q= = 28,540 speakers and T = = 3.6 months
h p R
Hence, when shortages are permitted, 28,540 speakers are produced at every 3.6 months.
pQ
Number of shortage of speakers = = 22,424 speakers.
h+p
Thus, a shortage of 6,116 (= 28,540 – 22,424) speakers is permitted.
EXAMPLE 11.13: A dealer supplies you the following information with regard to a product dealt
in by him: Annual demand = 5,000 units, ordering cost = Rs. 25.00 per order, inventory carrying
cost is 30% per unit per year of purchase cost Rs. 100 per unit.
The dealer is considering the possibility of allowing some back-orders to occur for the product.
He has estimated that the annual cost of back-ordering the product will be Rs. 10.00 per unit.
1. What should be the optimum number of units of the product he should buy in one lot?
2. What quantity of the product should he allow to be back-ordered?
3. How much additional cost will he have to incur on inventory if he does not permit back-
ordering?
Solution: 1. Given R = 5,000 units, A = Rs. 250 per order, h = 100 * 0.30 = Rs. 30 per unit and
p = Rs. 10.00 per unit.
2AR h + p p
\ Q = 288 units and S = Q = 72 units.
h p h+p
\ The units to be back-ordered = Q – S = 216 units.
p
2. TC = 2 AhR = Rs. 2,165.
h+p
316 ® Operations Research
3. If back-ordered are not permitted, then the total cost of an inventory system per unit is
2AhR = Rs. 8,660.
\ Additional cost when back-orders are not permitted = 8,660 – 2,164 = Rs. 6,495.
EXAMPLE 11.14: The annual demand for a product is 3,600 units with an average of 12-units
per day. The lead-time is 10 days. The ordering cost per order is Rs. 10 and the annual carrying cost
is 25% of the value of the inventory. The price of the product per unit is Rs. 3.00.
1. What will be the EOQ?
2. Find the purchase cycle time.
3. Find the total inventory cost per year.
4. If the safety stock of 100-units is considered necessary, what will be the reorder level and
the total annual cost of inventory which will be relevant to inventory decision?
Solution: 1. Given R = 3,600 units, A = Rs. 20 per order, h = Rs. 3 * 25% per unit per year and
lead-time = 10 days. Since the demand is uniform at 12-units per day, the total number of working
days in the year = 3,600/12 = 300.
2AR
\ Q= = 438 (appro.)
h
438
2. Cycle time = = 36.5 days.
12
AR hQ
3. TC = CR + + = Rs. 11,128.60.
Q 2
4. Re-order level = Safety stock + Lead-time demand = 100 + 12 ¥ 10 = 220 units.
Q
\ Average inventory = Safety stock + = 319 units.
2
hQ AR
\ TC = + = Rs. 164.38.
2 Q
Inventory level
P– R
–R
Q
t1 t2 t3 t4
Time
0
–R P–R
T
Figure 11.6 Order-level lot-size (OLLS) system with finite replenishment.
Ê P - Rˆ
If Q is the lot-size then Q1 = Q – Q2 – Rt1 – Rt4 = Á
Ë P ˜¯
Q – Q2.
Ê P - Rˆ
Q1 + Q2 = Á
Ë P ˜¯
or Q
1 Ê P ˆÈ ÊP - R ˘
2
AR ˆ
+ Í - 2 ˜ + Q2 p ˙
2
= Á ˜ h Á
2Q Ë P - R ¯ Í Ë P
Q Q
¯
(11.38)
˚˙
Q
Î
The optimum values of Q and Q2 can be obtained by setting partial derivatives of TC (Q1, Q2)
with respect to Q and Q2 equal to zero which gives
2AR Ê P ˆ Ê h + p ˆ
h ÁË P - R ˜¯ ÁË p ˜¯
Q= (11.39)
Ê Rˆ h
and Q2 = Q Á 1 - ˜ (11.40)
Ë P¯ h + p
318 ® Operations Research
Q 2A Ê P ˆ Ê h + p ˆ
\ =
hR ËÁ P - R ¯˜ ËÁ p ¯˜
Cycle time T = (11.41)
R
2 AR Ê Rˆ Ê p ˆ
Á 1- ˜Á
P ¯ Ë h + p ¯˜
Optimum inventory level Q1 = Q – Q2 = (11.42)
h Ë
Ê Rˆ Ê p ˆ
2 AhR Á 1 - ˜ Á
P ¯ Ë h + p ¯˜
and total minimum cost = (11.43)
Ë
The cost obtained in Eq. (11.43) is minimum since second order partial derivatives of TC with
respect to Q and Q2 are both positive.
Note 1: If replenishment rate, P Æ •, then the results derived here are same as those of
Section 11.9.
Note 2: If p Æ •, then the above derived results are same as the one in Section 11.7.
Note 3: If P Æ • and p Æ •, then we get EOQ model derived in Section 11.5.
EXAMPLE 11.15: The demand for an item in a company is 18,000 units per year, and the
company can produce the item at a rate of 3,000 per month. The cost of one set-up is Rs. 500 and
the holding cost of one unit per month is Rs. 0.15. The shortage cost of one unit is Rs. 20.00 per
month. Determine the optimum manufacturing quantity and the number of shortages. Also,
determine the manufacturing time and the time between two set-up?
Solution: Given h = Rs. 0.15 per unit per month, p = Rs. 20.00 per unit short, A = Rs. 500 per
order, P = 3,000 units per month and R = 18,000 unit per year = 1,500 units per month.
2p ( h + p ) Ê PR ˆ
\ ◊Á
Ë P - R ˜¯
Q= = 4,488 units (appro.)
hp
Ê h ˆ Ê Rˆ
Number of shortages = Á Q 1 - ˜ = 17 units (appro.)
Ë h + p ˜¯ ÁË P¯
Q Q
Manufacturing time = = 0.1246 years and the time between two set-ups = = 0.2493 years.
P R
2 Aj R j
Qj0 = , j, 1, 2, …, N (11.45)
CjIj
and the total minimum cost of an inventory system is
N
TC0 = Â 2C j I j A j R j (11.46)
j =1
If the Qj0 ( j = 1, 2, …, N) given by Eq. (11.45) satisfies Eq. (11.47) then Qj0 ( j = 1, 2,…, N) are
optimal and the total minimum cost can be obtained by Eq. (11.46). On the other hand, if
N
 f j Q j > f then the Qj0 (j = 1, 2,…, N) given by Eq. (11.45) is not optimum. So we have to
j =1
minimize the average annual cost per time unit for all N-items given in Eq. (11.44) subject to
constraints Eq. (11.47) and Qj ≥ 0 for all j. We construct the non-negative Lagrangion function as
ÏÔ N ¸Ô
L (Qj, l) = TC + l Ì Â f j Q j - f ˝ (11.48)
ÓÔ j =1 Ô˛
where l is non-negative Lagrangion multiplier. l indicates additional cost related to floor space used
by each unit of the item. Then Kuhn-Tucker necessary conditions for L to be minimum are
∂L/∂Qj = 0 which gives
2Aj R j
Qj = (11.49)
C j I j + 2l f j
320 ® Operations Research
∂L N
and
∂l
= 0 gives  f jQ j = f (11.50)
j =1
EXAMPLE 11.16: Three machines are produced by a factory in lots. A factory has floor space
of 600 square feet. The demand rate, purchase cost, ordering cost and floor space required are given
in the following table:
Item 1 2 3
Demand rate (unit/year) 5,000 2,000 10,000
Purchase cost per unit (Rs.) 20 15 10
Ordering cost per order (Rs.) 100 150 200
Floor space required (sq. ft) 0.60 0.75 0.30
The factory uses an inventory carrying charge at 20% of average inventory per year. If no shortages
are allowed, determine the optimal lot-size for each item under given floor constraints.
Solution: Start with l = 1 and compute Q1, Q2, Q3 using Eq. (11.49).
2 ¥ 5000 ¥ 100
\ Q1 = ª 438 units (appro.)
0.20 ¥ 20 + 2 ¥ 1 ¥ 0.60
2 ¥ 2000 ¥ 100
Q2 = ª 298 units (appro.)
0.20 ¥ 15 + 2 ¥ 1 ¥ 0.75
2 ¥ 10000 ¥ 100
Q3 = ª 877 units (appro.)
0.20 ¥ 10 + 2 ¥ 1 ¥ 0.30
3
The floor occupied is  f j Q j = 0.60 ¥ 438 + 0.75 ¥ 298 + 0.30 ¥ 877
j =1
We need to minimize the cost given in Eq. (11.44) subject to the constraints Eq. (11.51) and
Qj > 0 for all j. Arguing as in Section 11.11.1, we have Lagrangian function
ÔÏ 1 Ô¸
N
L (Qj, l) = TC + l Ì
2 Â Qj - M ˝ (11.52)
ÓÔ j =1 ˛Ô
The necessary conditions for L to be minimum are
∂L 2 Aj R j
= 0 giving Qj = (11.53)
∂Q j C jhj + l
∂L 1 N
and
∂l
= 0 gives
2
 Qj = M
j =1
Use the above mentioned steps to find the value of l which satisfies the total average inventory level.
We want to minimize the total cost of an inventory system given by Eq. (11.44), subject to the
constraints Eq. (11.44) and Qj ≥ 0 for all j. Arguments given in sub-section 11.11.1 will give
2 Aj R j N
Qj =
C j I j + 2lC j
and  C jQj = D (11.55)
j =1
EXAMPLE 11.17: A firm produces three items. The carrying costs per unit per year of these three
items are Rs. 12, 20 and 15, respectively. The ordering costs per order are Rs. 30, 50 and 70 and
unit purchase costs are Rs. 8, 9 and 10, respectively. The yearly demand of these items is of 8,000,
10,000 and 12,000 units. Determine optimum lot-sizes for three items subject to the condition that
the maximum available capital is Rs. 4,000.
Solution: For l = 1, Eq. (11.55) will give
2 ¥ 30 ¥ 8000
Q1 = ª 131 units
12 + 2 ¥ 1 ¥ 8
2 ¥ 50 ¥ 10000
Q2 = ª 162 units
20 + 2 ¥ 1 ¥ 9
2 ¥ 70 ¥ 12000
Q3 = ª 219 units
15 + 2 ¥ 1 ¥ 10
322 ® Operations Research
3
Total investment = Â C jQ j = 1048 + 1458 + 2190 = 4696 > 4000 (available capital).
j =1
Let us compute Q1, Q2, Q3 for l = 2. Q1 ª 104, Q2 ª 133, Q3 ª 174 and the total investment = 3769,
which is less than maximum investment. Next consider l = 1.7. Then Q1 ª 110, Q2 ª 140 and
Q3 ª 185. The total investment is  C j Q j = 3990, which is nearer to the available maximum
investment of Rs. 4000.
Total
inventory
cost
Total cost
0 b1 b2 b3 Order quantity Q
Figure 11.7 Inventory level with price breaks.
Chapter 11: Inventory Problems ® 323
Since the total cost curve is not continuous, the calculus method fails. We need to move in each
price break to find the optimum lot-size, which minimizes the total inventory cost. Let us discuss
model with one-price break and two-price breaks in detail.
EXAMPLE 11.18: Find the optimum order quantity for a product with price-breaks as under.
Quantity Unit cost (Rs.)
0 £ Q1 < 500 10.00
500 £ Q2 9.25
The monthly demand for the product is 200-units, the holding cost is 2% of the unit cost and the
cost of ordering is Rs. 350.00.
Solution: Given A = Rs. 350/order, R = 200 units/month, I = Rs. 0.20/unit/annum, C1 = Rs. 10.00/unit
and C2 = Rs. 9.25/unit
2AR
Clearly, C2 < C1 \ Q2 = = 870 units > 500 (= b1)
C2 I
i.e. Q2 is within the range of Q2 ≥ 500. Therefore, the optimum purchase quantity is Q2 = 870 units.
EXAMPLE 11.19: Find the optimum order quantity for a product for which the price breaks are
as follows:
Quantity Unit cost (in Rs.)
0 £ Q1 < 800 Rs. 1.00
800 £ Q2 Rs. 0.98
The yearly demand for the product is 1,600 units per year, the cost of placing an order is
Rs. 5.00 and the carrying charge fraction is 10% per year.
Solution: Given R = 1,600 units/year, A = Rs. 5.00/order, I = Rs. 0.10 units/year, C1 = Rs.1.00/unit,
C2 = Rs. 0.98/units. We have C2 < C1
324 ® Operations Research
2AR
\ Q2 = = 404 units < 800 (= b1), so go to step 2 of algorithm.
C2 I
2 ¥ 5 ¥ 1600
Q1 = = 400 units < b1
0.10 ¥ 1.00
So we compute the total cost TC (Q1) = 2 ¥ 5 ¥ 1600 ¥ 0.10 + 1600 = Rs. 1,640.
AR C2 Ib1
and TC (b1) = C2 R + + = Rs. 1,617.20.
b1 2
Thus, TC (b1 = 800) < TC (400). Therefore, the optimum purchase quantity is 800-units.
EXAMPLE 11.20: Find the optimal order quantity for a product for which the price breaks are
as follows:
Quantity Unit cost (In Rs.)
0 £ Q1 < 500 10.00
500 £ Q2 < 750 9.25
750 £ Q3 8.75
The monthly demand for the product is 200 units, the carrying charge fraction is 20 % of the
unit cost, and the set-up cost is Rs. 350 per order.
Solution: We have A = Rs. 350/order, I = Rs. 0.20/unit/annum and R = 200 units/month. Then
2 ¥ 350 ¥ 200
Q3 = = 894 units > 750 (= b2). Therefore, Q3 is the optimum purchase quantity.
8.75 ¥ 0.20
Chapter 11: Inventory Problems ® 325
EXAMPLE 11.21: Find the optimal order quantity for a product for which the price breaks are
as follows:
Quantity Unit cost (Rs.)
0 £ Q1 < 50 10.00
50 £ Q2 < 100 9.00
100 £ Q3 8.00
The monthly demand for the product is 200 units, the carrying charge fraction is 25% of the unit
cost, and the replenishment cost is Rs. 20.00 per order.
Solution: We have R = 200 units/month, I = Rs. 0.25/unit/annum and A = Rs. 20.00/order.
2 ¥ 2 ¥ 200 2 ¥ 2 ¥ 200
Q3 = = 63 units < b2 (= 100). So we compute Q2 = = 60 units. Since
8 ¥ 0.25 9 ¥ 0.25
Q2 > b1 (= 50), to decide optimum purchase quantity we compare
200 60
TC(Q2) = 200 ¥ 9 + 20 ¥ + 9 ¥ 0.25 ¥ = Rs. 1,934.16
60 2
200 100
and TC(b2) = 200 ¥ 8 + 20 ¥ + 8 ¥ 0.25 ¥ = Rs. 1,740.00.
100 2
then TC (Q2) > TC (b2). Hence, b2 = 100 units will be the optimum lot-size.
EXAMPLE 11.22: Find the optimum order quantity for a product with the following price-breaks:
Quantity Unit cost (Rs)
0 £ Q1 < 100 20
100 £ Q2 < 200 18
200 £ Q3 16
The monthly demand for the product is 400 units. The carrying charge fraction is 20 % of the
unit cost of the product, and the cost of ordering is Rs. 25.00 per order.
Solution: We have R = 400, I = Rs. 0.20 and A = Rs. 25.00 (in proper units)
2 ¥ 25 ¥ 400
\ Q3 = = 79 units.
16 ¥ 0.20
2 ¥ 25 ¥ 400
Q2 = = 75 units.
18 ¥ 0.20
2 ¥ 25 ¥ 400
Q1 = = 70 units.
20 ¥ 0.20
326 ® Operations Research
S
S
x x
Tp
S – x 0 t1
x – S
0 Tp
Figure 11.8 Case x £ S. Figure 11.9 Case x > S.
Let f(x) be the uniform probability density of demand x occurring during TP. Let h be the
inventory holding cost per unit per annum and p be the shortage cost per unit short. Two cases may
arise, depending on the values of S and x.
Chapter 11: Inventory Problems ® 327
The expected average amount of inventory and the expected shortages are
S •
Ê xˆ S2
I1(S) = Ú ÁË S - 2 ˜¯ f ( x ) dx = Ú 2x
f ( x) dx (11.58)
0 S
•
( x - S )2
and I2(S) = Ú 2x
f ( x ) dx (11.59)
S
dTC (S ) ÈS S ˘ È• S S ˘ •
( x - S)
= h Í Ú f (s) dx + f (S ) ˙ + h Í Ú f ( x ) dx - f ( S ) ˙ - p Ú f ( x ) dx = 0
dS ÍÎ 0 2 ˙˚ ÍÎ S x 2 ˙˚ S
x
•
p
S
S
i.e. Ú f ( x ) dx + Ú x
f ( x ) dx =
h+p
(11.61)
0 S
As Eq. (11.61) does not give closed form of optimal order level S, it is not possible to evaluate
the explicit minimum cost. It is only possible for some specific functional form of f(x).
Next, let us assume that the demand x and order level S take discrete values say 0, u, 2u, …,
etc. and P(x) be the probability mass function of the demand x. The integrals in the expected total
cost of the system will be replaced by summations. Hence
• •
S
Ê xˆ S2 ( x - S)2
TC(S) = h  Á S - ˜ P( x ) + h  P ( x) + p  P( x) (11.63)
x=0 Ë
2¯ x = S +u
2x x= S+u
2x
Using the difference method, the necessary conditions for S to be optimal order level are
TC (S) £ TC(S + u) (11.64)
TC(S) £ TC(S – u) (11.65)
328 ® Operations Research
EXAMPLE 11.23: The probability distribution of monthly sales of a certain item is as follows:
Monthly sales : 0 1 2 3 4 5 6
Probability : 0.02 0.05 0.30 0.27 0.20 0.10 0.06
The cost of carrying inventory is Rs. 10.00 per unit per month. The current policy is to maintain a
stock of four items at the beginning of each month. Assuming that the cost of shortage is
proportional to both time and quantity short, obtain the range of shortage cost of short unit.
Solution: Let p be the shortage cost per unit. Given S = 4 and h = Rs. 10/unit/month
Using Eq. (11.67), we have
p Ê 1 ˆ È P (4) P (5) P (6) ˘
= P(0) + P(1) + P(2) + P(3) + Á 4 - ˜ Í + +
6 ˙˚
= 0.92.
10 + p Ë 2¯ Î 4 5
\ p = Rs. 115.
Similarly, the greatest value of p is given by
p 4
Ê 1ˆ 6
P( x)
h+p
=  P( x) + ÁË S + 2 ˜¯  x
x =0 x = S +1
p Ê 1 ˆ È P(5) P (6) ˘
= P(0) + P(1) + P(2) + P(3) + P(4) + Á 4 + ˜ Í +
6 ˙˚
i.e. = 0.975
10 + p Ë 2¯ Î 5
\ p = 390
Hence, the required range of shortage cost is Rs. 115 < p < Rs. 390.
x S
x
S
T
Inventory
S – x 0 t1
x – S
0 T
Figure 11.10 Case x £ S. Figure 11.11 Case x > S.
The average inventory, I1(x) and average shortage, I2(x) for any demand x is given by
Ï S - x, x £ S
I1(x) = Ì (11.68)
ÔÓ 0, x>S
Ï 0, x£S
and I2(x) = Ì (11.69)
ÔÓ x - S, x > S
Therefore, the expected amount of inventory and the expected shortages are
S
I1(S) = Ú (S - x) f ( x) dx (11.70)
0
•
and I2(S) = Ú ( x - S ) f ( x ) dx (11.71)
S
p
S
i.e. Ú f ( x ) dx =
h+p
(11.73)
0
Next, let us assume that demand x and the order level are restricted to take only discrete values (say)
0, u, 2u, …, etc. and P(x) be the corresponding probability distribution of demand x. Then the
expected total cost is given by
S •
TC(S) = h  (S - x) dx + p  ( x - S ) P( x ) (11.74)
x =0 x = S+u
330 ® Operations Research
Using Eqs. (11.64) and (11.65), the necessary conditions for optimal order level S is
p
G (S – u) £ £ G(S) (11.75)
h+p
S
where G(S) = Â P ( x) .
x =0
EXAMPLE 11.24: An ice-cream company sells one of its types of ice-cream by weight. If the
product is not sold on the day it is prepared, it can be sold at a loss of 50 paise per pound. But there
is an unlimited market for one-day old ice-cream. On the other hand, the company makes a profit
of Rs. 3.20 on every pound of ice-cream sold on the day it is prepared. Past daily orders form a
distribution with f(x) = 0.02 – 0.0002x, 0 £ x £ 100. How many pounds of ice-cream should the
company prepare every day?
Solution: Given h = Rs. 0.50/pound and p = Rs. 3.20/unit short.
Let S be the quantity of ice-cream in pounds to be prepared daily. Then
p
S
Ú f ( x ) dx =
h+p
0
S
3.20
gives Ú (0.20 - 0.0002 x ) dx =
0.50 + 3.20
0
i.e. 0.0002 S2 – 0.04 S + 1.730 = 0 fi S = 136.7 or 63.3. S = 136.7 is not possible because
0 £ x £ 100
\ Required optimum S = 63.3 pounds.
EXAMPLE 11.25: The probability distribution of monthly sales of a certain item is as follows:
Monthly sales : 0 1 2 3 4 5 6
Probability : 0.01 0.06 0.25 0.35 0.20 0.03 0.10
The cost of carrying inventory is Rs. 30 per unit per month and the cost of unit short is Rs. 70
per month. Determine the optimum stock level which minimizes the total expected cost.
Solution: Given h = Rs. 30 per unit per month and p = Rs. 70 per month.
h 70
Then = = 0.7
h+p 30 + 70
Clearly, 0.67 < 0.7 < 0.87. So using Eq. (11.75), S = 4 is the optimum order level.
Chapter 11: Inventory Problems ® 331
REVIEW EXERCISES
1. An aircraft company uses rivets at an approximate demand rate of 2,500 kg per year. Each
unit costs Rs. 30 per kg and the company personnel estimate that it costs Rs. 130 to place
an order, and that the carrying cost of inventory is 10% per year. How frequently should
orders for rivets be placed? Also determine the optimum size of each order.
[Ans: Q = 466 units (appro.), T = 0.18 year, n = 5 orders/year]
2. The annual demand for an item is 3,200 units. The unit cost is Rs. 6 per unit and inventory
carrying charges is 25% per annum. If the cost of one procurement is Rs. 150, determine
(i) EOQ, (ii) number of orders per year, (iii) time between two consecutive orders, and
(iv) the optimal cost.
[Ans: Q = 800 units, n = 4, T = 3 months, TC = Rs. 20,400]
3. The annual requirements for a particular raw material are 2,000 units, costing Rs. 1.00 each
to the manufacturer. The ordering cost is Rs. 10.00 per order and the carrying cost is 16%
per annum of the average inventory value. Find the economic order quantity and the total
cost of an inventory system.
[Ans: Q = 500 units, TC = Rs. 80.00]
4. For an item, the production is instantaneous. The holding cost of one item is Rs. 1.00 per
month and the set-up cost is Rs. 25 per run. If the demand is 200 units per month, find the
optimum quantity to be produced per set-up and total cost of storage and set-up per month.
[Ans: Q = 100 units, Total cost of storage and set-up = Rs. 125]
5. A contract has a requirement for cement that amounts to 300 bags per day. No shortages are
allowed. Cement costs Rs. 2.00 per bag, inventory carrying cost is 10% of the average
inventory valuation per day and it costs Rs. 20 to purchase order. Find the minimum cost
of purchase quantity.
[Ans: Q = 100 units, TC = Rs. 120.00]
6. A manufacturer has to supply his customer 600 units of his product per year. Shortages are
not allowed and the inventory holding cost is 60 paise per unit per year. The set-up cost per
run is Rs. 80.00. Find (i) the economic order quantity, (ii) the minimum average yearly cost,
(iii) the optimum number of order per year, (iv) the optimum period of supply per optimum
order, and (v) the increase in the total cost associated with ordering (a) 20 % more and
(b) 40 % less than EOQ.
[Ans: Q = 400 units, TC = Rs. 240, n = 3/2, T = 2/3 yr., Rs. 4.00]
7. Amit manufactures 50,000 bottles of tomato ketch-up in a year. The factory cost per bottle
is Rs. 5.00, the set-up cost per production run is estimated to be Rs. 90, and the carrying
cost on finished goods inventory is 20% of the unit cost per annum. The production rate is
600 bottles per day and sales 150 bottles per day. What is the optimal production lot-size
and the number of production runs?
8. The annual demand for a product is 1,00,000 units. The rate of production is 2,00,000 units
per year. The set-up cost per production run is Rs. 5,000 and the variable production cost
of each item is Rs. 10. The annual holding cost per unit is 20% of its value. Find the
optimum production lot-size and the length of the production run.
[Ans: Q = 31,600 units, T = 0.316 yrs]
332 ® Operations Research
14. A small shop produces three machines I, II and III in lots. The shop has only 650 sq./ft.
storage space. The approximate data for the three items are presented in the following table:
Machine I II III
Demand (units/year) 5,000 2,000 10,000
Set-up cost (Rs.) 100 200 70
Cost per unit (Rs.) 10 15 5
Floor space required (sq. ft/unit) 0.50 0.80 0.30
The shop uses an inventory carrying charge of 20% of average inventory valuation per
annum. If no stock-outs are permitted, determine the optimal lot-size for such items.
15. In a central grain store, it takes about 15 days to get the stock after placing an order and daily
500 tons are dispatched to neighbouring markets. On an ad-hoc basis, safety stock is
assumed to be 10 day’s stock. Calculate reorder point.
[Ans: Reorder point = 12,500 tons.]
16. The annual demand of a product is 10,000 units. Each unit costs Rs. 100 if orders placed
in quantities are below 200 units, but for orders of 200 or above, the unit price is Rs. 95.
The annual inventory holding cost is 10% of the value of the item and the ordering cost is
Rs. 5 per order. Find the economic lot-size.
[Ans: Q = 100 units]
17. Find the optimum order quantity for a product for which the price breaks are as follows:
Quantity (units) Price per unit (Rs.)
0 < Q1 < 500 10.00
500 £ Q2 9.00
The monthly demand for the product is 200 units, the holding cost is 2% of the unit cost,
and the cost of ordering is Rs. 350.00.
[Ans: Q = b = 500 units]
18. Find the optimum order quantity for a product for which the price breaks are as follows:
Quantity Purchase price (Rs.)
0 £ Q1 < 100 Rs. 20
100 £ Q2 < 200 Rs. 18
200 £ Q3 Rs. 16
The monthly demand for the product is 400 units. The holding cost is 20% of the unit cost,
of the product, and the cost of ordering is Rs. 25.00 per month.
[Ans: Q = b1 = 100 units]
19. (a) Minicomputer company purchases a component of which it has a steady usage of 1,000
units per year. The ordering cost is Rs. 50 per order. The estimated cost of money invested
in inventory is 25% per year. The unit cost of the component is Rs. 40. Calculate the optimal
ordering policy and the total cost of the inventory system, including purchase cost of the
components.
[Ans: Q = 100 units, TC = Rs. 41,000]
334 ® Operations Research
(b) If in (a), the component supplier agrees to offer price discounts of minimum lot
supplies as per the schedule given below, re-assess the decision on the optimal ordering
policy and the total cost.
Lot-size (Units) Purchase price (Rs.)
0 £ Q1 < 149 40
150 £ Q2 < 499 39
Q3 £ 500 38
[Ans: Q = 150 units, TC = 40,064]
20. Find the optimal order quantity for a product where the annual demand for the product is
500 units, the cost of storage per unit per year is 10 % of the unit cost, and the ordering cost
per order is Rs. 180. The unit costs are given below:
Quantity Unit cost (Rs)
0 £ Q1 < 500 25.00
500 £ Q2 < 1,500 24.80
1,500 £ Q3 < 3,000 24.60
3,000 £ Q4 24.40
[Ans: Q1 = 268 units]
21. A TV dealer finds that the cost of holding a television set in stock for a week is Rs. 20;
customers who cannot obtain a new television set immediately tend to go to other dealers,
and he estimates that for every customer who does not get immediate delivery, he loses on
an average Rs. 200. For one particular model of television, the probabilities for a demand
of 0, 1, 2, 3, 4, and 5 television sets in a week are 0.05, 0.10, 0.20, 0.30, 0.20 and 0.15,
respectively. How many television sets per week should the dealer order? (Assume that there
is no lead-time.)
[Ans: Q = 4 TV sets/week]
12
Queuing Theory
12.1 INTRODUCTION
The dictionary meaning of the word queue is a waiting line or the act of joining a line. In day-to-
day life, we all come across situations where we have to line up in queues. For example, bank
counter, ration shop, library, traffic signal, airport runways, telephone booth, video-on-demand
system, production unit, income tax office, etc. Thus, waiting for a service has become an integral
part of our day-to-day life. The objective is to formulate the system in such a manner that the average
waiting time of the customers in queue is minimized and the utilization of the server is maximized.
In this chapter, we discuss a number of queuing models that account for a variety of service
operations. The measures of performance of the system are derived. The models derived are the
applications of the probability theory and stochastic processes.
335
336 ® Operations Research
Arrivals Exit
Service
Queues mechanism
The arrival pattern: Customers arriving to the system for a service will directly go to the service
station without waiting in the queue if the server is free at that point of time. Otherwise, he will wait
in the queue till the server becomes free. Generally, the customer’s arrival is unpredictable. So the
arrival pattern can be computed in terms of the probabilities and consequently, probability
distribution for inter-arrival time (i.e. the time between two successive arrivals) must be defined. The
present chapter deals with those queuing systems in which the customer arrivals follow the ‘Poisson’
distribution.
The service mechanism: This includes the distribution of the time to service a customer, the
number of servers, and the arrangement of servers (in parallel or in series, etc.). If the number of
servers is more that one, then this queue is an example of parallel counters for providing service.
The system is said to be queues in tandem if the service is to be provided in multistage in sequential
order. Service time is a random variable with the same distributions for all the arrivals or with a
different service time distributions. In this chapter, service time follows ‘negative exponential
distribution’ (Erlang or Gamma) probability distribution.
The queue discipline: This is the manner in which customers form a queue and the manner in
which they are chosen for service. The simplest discipline is “first come, first served (FCFS)”,
according to which the customers are served in order of their arrivals. For example, such types of
queue discipline are observed at reservation counters, at cinema ticket windows, at bank counters etc.
If the last arrival gets served first, we have “last come, first served (LCFS)” queue discipline. This
is observed in government offices, where the file which comes on table last gets cleared first, or in
a big godown, where the items which come last are taken out first. The other queue disciplines
observed are random selection or service at random order (SIRO) and priority selection (some
customers are served before others regardless of their order of arrivals).
Customer’s behaviour: Generally, it is assumed that the arrivals in the system are one by one. But,
in practice, customers may arrive in groups. Such arrivals are called bulk arrival. This is observed
when groups of ladies arrive at shopping malls during afternoon. The customers behave in the
following ways:
∑ Balking: On arrival, a customer finds the queue length very long and he/she may not join
the queue. This phenomenon is known as balking of customers.
∑ Jockeying: If there is more than one queue, the customer from one queue may shift to
another queue because of its smaller size. This behaviour of the customer is known as queue
jockeying.
∑ Reneging: A customer who is already in the queue leaves the queue due to long waiting
time. This kind of departure from the queue without receiving the service is known as
reneging.
Chapter 12: Queuing Theory ® 337
where
a= arrival rate distribution
b= service rate distribution
c= number of servers
d= capacity of the system
e= service discipline
For example, (M/M/1): (•/FCFS) means arrivals follow Poisson distribution, Poisson service
rate, single server, system can accommodate infinite number of customers and service discipline is
first come first served.
no arrivals
t t + Dt
Figure 12.2
∑ There are (n – 1)-units in the system at time t and one arrival takes place during time interval
Dt. So at time (t + Dt), there will be n-units in the system.
(n – 1)-units n-units
one arrival
t t + Dt
Figure 12.3
Ï 1, n = 0
Pn(0) = Ì (12.9)
ÔÓ 0, n > 0
Multiply both sides of Eq. (12.6) by z and taking summation for n = 1, 2, º, •, we get,
n
• • •
 z n Pn¢(t ) = - l  z n Pn (t ) + l  z n Pn - 1 (t )
n =1 n=1 n =1
Equivalently,
P¢(z, t) = –lP(z, t) + lzP(z, t),
P ¢( z, t )
i.e. = l (z – 1)
P ( z, t )
Integrating both sides,
log P(z, t) = l(z – 1) t + A
To find A, constant of integration, put t = 0. Then log P(z, 0) = A. But
Ê • ˆ Ê • ˆ
A = log P(z, 0) = log Á Â z n Pn (0)˜ = log Á P0 (0) + Â z n Pn (0) ˜
Ën=0 ¯ Ë n =1 ¯
= log (1 + 0) = log (1) = 0 by (Eq. 12.8)
Hence, P(z, t) = el(z – 1)t
Chapter 12: Queuing Theory ® 341
1 È d2 ˘ (l t )2 - lt
P2(t) = Í 2 P ( z, t ) ˙ = e
2! ÎÍ dz ˚˙ 2!
....
(l t ) n - l t
Pn(t) = e
n!
Thus, the probability of n-arrivals in time t follows Poisson law.
0 t0 t1
Figure 12.4
342 ® Operations Research
Hence, proved.
Equations (12.18)–(12.20) are the required system of differential-difference equations for pure
death process. The solution of Eq. (12.20) can be written as
log PN(t) = –mt + A
where A is constant of integration. Its value can be computed using the boundary conditions
Ï1, n = N π 0
Pn(0) = Ì
ÔÓ 0, n π N
gives A = 0. Therefore,
PN(t) = e–mt (12.21)
Putting n = N – 1 in Eq. (12.19), we get
P¢N–1(t) + mPN–1(t) = me–mt
which is linear differential equation of first order. Its solution is
PN–1(t) = mte–mt
Putting n = N – 2, N – 3, º, N – n, in Eq. (12.19), we get
( m t) k - mt
Pn–k(t) = e
k!
In general,
( m t ) N - n - mt
Pn(t) = e
( N - n)!
which is a Poisson distribution.
This shows that the service time distribution is exponential with mean service time 1/m and
variance 1/m2.
344 ® Operations Research
or P0 = 1 – r (12.26)
and Pn = r (1 – r). n
(12.27)
Step 4: Characteristics of Model:
1. Probability of queue size being greater than or equal to n
• •
= Â Pk = Â (1 - r ) r k = r n (12.28)
k=n k =n
r l
= = (12.29)
1- r m -l
346 ® Operations Research
• Ê • ˆ
= Â nPn - Á Â Pn - P0 ˜
n =1 Ë n=0 ¯
r
= – [1 – (1 – r)] [using Eqs. (12.29) & (12.26)]
1- r
r2 l2
= = (12.30)
1- r m (m - l)
n=0 Ë n =0 ¯
• 2
Ê r ˆ
=  n2 (1 - r ) r n - ÁË 1 - r ˜¯
n =0
• 2
Ê r ˆ
= (1 - r )  n2 r n - ËÁ 1 - r ¯˜
n=0
2
Ê r ˆ
= (1 - r ) r X - Á
Ë 1 - r ˜¯
•
where X = Â n2 r n -1 . Integrating both sides by r,
n =1
r •
n2 r n r
Ú X dr = Â n
=
(1 - r )2
0 n =1
Therefore,
2
r (1 - r )(1 + r ) Ê r ˆ r
-Á =
Ë 1 - r ˜¯
V{n} = (12.32)
(1 - r )3 (1 - r )2
Waiting time distribution: The waiting time of a customer in a system is that time a customer
entering for service immediately upon arrival. Let w be the time spent in the queue and yw(t) be its
cumulative probability distribution. Then
yn(0) = P(w = 0) = P (no customer in the system upon arrival)
= P0(1 – r) (12.33)
We want to find yw(t). Let there be n-customers in the system upon arrival. Then for a customer,
in order to go into service at a time between (0, t), all n-customers must have been served by
time t. Let s1, s2, º, sn denote the service times of n-customers respectively. Then
Ïn
Ô Â si , n ≥ 1
w = Ì i =1 (12.34)
Ô
Ó 0, n=0
Then the probability distribution function of waiting time, w, for a customer who has to wait is given
by
Ê n ˆ
P(w £ t) = P Á Â si £ t ˜ , n≥1 (12.35)
Ë i =1 ¯
Since the service time for each customer is independent, its probability distribution function is
me–mt(t > 0) where m is the mean service rate.
•
yw(t) = Â Pn ¥ P [(n – 1)-customers are served in time t)
n =1
d Ê 1 - l ˆ -( m - l )t
y (w) = y (t ) = r (1 - r ) m e - m t (1 - r ) = l Á
Ë m ˜¯
e (12.37)
dt w
Next, we define the characteristics of waiting time distribution.
1. Average waiting time of a customer in the queue
• •
Wq = Ú ty ( w) dt = Ú t r (1 - r ) m e - m t (1 - r ) dt
0 0
r l
= = (12.38)
m (1 - r ) m(m - l)
348 ® Operations Research
EXAMPLE 12.1: The arrival rate of a customer at a service window of a cinema hall follows a
probability distribution with a mean rate of 45 per hour. The service rate of the clerk follows Poisson
distribution with a mean of 60 per hour.
(a) What is the probability of having no customer in the system?
(b) What is the probability of having five customers in the system?
(c) Find Ls, Lq, Ws and Wq.
Solution: Given, arrival rate, l = 45 per hour, service rate, m = 60 per hour. Then r = l/m = 0.75.
(a) Probability of having no customer in the system = P0 = 1 – r = 1 – 0.75 = 0.25.
(b) Probability of having five customers in the system = P5 = (1 – r) r5 = 0.0593.
r r2
(c) Ls = = 3 customers. Lq = = 2.25 customers.
1- r 1- r
1 r
Ws = = 0.067 hour. Wq = = 0.05 hour.
m-l m-l
EXAMPLE 12.2: An arrival rate at a telephone booth is considered to be Poisson with an average
time of 10 minutes and exponential call lengths averaging 3 minutes.
(a) Find the fraction of a day that the telephone will be busy.
(b) What is the probability that an arrival at the booth will have to wait?
(c) What is the probability that an arrival will have to wait more than 10 minutes before the
phone is free?
(d) What is the probability that it will take him more than 10 minutes altogether to wait for
phone and complete his call?
Solution: Given, arrival rate, l = 1/10 per minute, service rate, m = 1/3 per minute.
(a) The fraction of the day that the phone will be busy, r = l/m = 0.3.
(b) Probability that an arrival at the booth will have to wait = 1 – P0 = 1 – (1 – r) = r = 0.3.
(c) Probability that an arrival will have to wait for more than 10 minutes before the phone is
•
Ê l ˆ -( m - l ) t
free = Ú
ÁË 1 - m ˜¯ l e dt = 0.3e -2.3 = 0.03 .
10
(d) Probability of an arrival waiting in the system is greater than or equal to
•
Ú (m - l)e
-( m - l ) t
10 = dt = e -2.3 = 0.1 .
10
Chapter 12: Queuing Theory ® 349
EXAMPLE 12.3: Vehicles pass through a toll gate at a rate of 90 per hour. The average time to
pass through the gate is 36 seconds. The arrival rate and the service rate follow Poisson distribution.
There is a complaint that the vehicles wait for long duration. The authority is willing to install one
more gate to reduce the average time to pass through the toll gate to 30 seconds if the idle time of
the toll gate is less that 10% and the average queue length at the gate is more than 5 vehicles. Discuss
whether the installation of the second gate is justified or not.
Solution: Given, arrival rate of vehicles at the toll gate, l = 90 per hour, departure rate of vehicles
through the gate, m = 3,600/60 = 100 vehicles per hour.
Then r = l/m = 0.9.
(a) Waiting number of vehicles in the queue
r2
Lq = = 8.1 vehicles.
1- r
(b) Expected time taken to pass through the gate = 30 seconds.
Then service rate, m = 30 seconds = 3,600/30 = 120 vehicles per hour.
So r = l/m = 0.75.
Percent of the idle time of the gate = 1 – r = 25%.
Thus, the average waiting number of vehicles in the queue is more than 5 but the idle time of
the toll gate is not less than 10%. Hence, the installation of another gate is not justified.
EXAMPLE 12.4: At what average rate must a clerk at a super market work in order to ensure a
probability of 0.90 that the customer will not wait longer than 12 minutes? It is assumed that there
is only one counter, at which customers arrive in a Poisson fashion at an average rate of 15 per hour.
The length of service by the clerk has an exponential distribution.
Solution: Given, arrival rate, l = 15/60 = 0.25 customers per minute.
Let the departure rate of customers be m.
Probability that the customer will not have to wait more than 12 minutes
•
Êlˆ -( m - l ) t
= 1 – 0.9 = 0.1. Therefore, 0.1 = Ú ÁË m ˜¯ ( m - l ) e dt
12
l -12( m - l )
or 0.1 = e
m
1
or 0.4m = e3 – 12m gives = 2.48 minutes/customer.
m
EXAMPLE 12.5: In a railway Marshall yard, goods trains arrive at a rate of 30 trains per day.
Assuming that the inter-arrival time follows an exponential distribution and the service distribution
is also an exponential with an average 36 minutes, calculate
(a) The mean size queue, and
(b) The probability that the queue size exceeds 10.
If the input of trains increases to an average 33 per day, what will be the changes in (a) and (b)?
Solution: Given, arrival rate, l = 30/(60 ¥ 24) = 1/48 trains per minute, service rate, m = 1/36 trains
per minute. Then r = l/m = 0.75.
350 ® Operations Research
r
(a) The mean queue size, c. Ls = = 3 trains.
1- r
(b) Probability (queue size ≥ 10 trains) = r10 = 0.056.
When the input increases to 33 trains per day
i.e. l = 33/(60 ¥ 24) = 11/480 trains per minute, then r = 0.83. Here,
r
(a) The mean queue size, c. Ls = = 4.88 ª 5 trains.
1- r
(b) Probability (queue size ≥ 10 trains) = r10 = 0.155.
EXAMPLE 12.6: In a maintenance shop, the inter-arrival times at tool crib are exponential with
an average time of 10 minutes. The length of the service (i.e. the amount of time taken by the tool
crib operator to meet the needs of the maintenance man) time is assumed to be exponentially
distributed with a mean 6 minutes. Find
(a) The probability that a person arriving at the booth will have to wait.
(b) The average length of the queue that forms and the average time that an operator spends
in the queuing system.
(c) The probability that an arrival will have to wait for more than 12 minutes for service and
to obtain his tools.
(d) The estimate of the fraction of the day that the tool crib operator will be idle.
(e) The probability that there will be six or more operators waiting for the service.
(f) The manager of the shop will install a second booth when an arrival would expect to wait
10 minutes or more for the service. By how much must the rate of arrival be increased in
order to justify a second booth?
Solution: Given, arrival rate, l = 60/10 = 6 per hour, departure rate, m = 60/6 = 10 per hour.
(a) Probability that the arrival will have to wait = r = l/m = 0.6.
r2
(b) Average number of arrivals waiting time in the queue, Lq = = 0.9 and
1- r
1
Average waiting time in the system, Ws = = 0.25 hour.
m-l
(c) Probability that the arrival will have to wait more than 12 minutes
•
Êlˆ -(m -l ) t
= Ú ÁË m ˜¯ ( m - l ) e dt = 0.6e–4/5 = 0.27.
12
The installation of the second booth will be justified if the arrival rate, l¢ (say) is greater than
the waiting time. Given Wq = 10 minutes = 1/6 hours. Then
1 l¢
= = gives l¢ = 6.25
6 m ( m - l ¢)
Therefore, if the arrival rate exceeds 6.25 per hour, the second booth will be justified.
n =0 n =0 n =0 Ô P (1 + N ), r =1
Ó 0
Ï 1- r
Ô N +1
, r π1
Ô1 - r
or P0 = Ì (12.47)
Ô 1 , r =1
ÔÓ N + 1
Ï r n (1 - r )
Ô , r π1
Ô 1 - r N +1
and Pn = Ì (12.48)
Ô 1
ÔN + 1, r =1
Ó
The steady-state solution exists even if l > m because due to finite capacity of the system, arrival
is controlled. If l < m and N Æ •, we get Model 1.
Step 4: Characteristics of Model:
1. Average number of customers in the system
N N
Ls = Â nPn = Â nP0 r n
n =0 n=0
N
= P0 r  n r n -1
n=0
N
d n
= P0 r  dr
r
n=0
d N
d Ê 1 - r N +1 ˆ
= P0 r
dr  r n = P0 r
dr Á ˜
n=0 Ë 1- r ¯
Ï r È 1 - ( N + 1) r N + N r N +1 ˘
Ô Í ˙, r π 1
Ô 1 - r N +1 ÎÍ 1- r ˚˙
= Ì (12.49)
ÔN
Ô2, r =1
Ó
2. Fraction of time system is empty in PN = P0r N
Effective arrival rate l¢ = l(1 – PN)
3. Expected number of customers waiting in the queue
l¢
Lq = Ls – (12.50)
m
Chapter 12: Queuing Theory ® 353
EXAMPLE 12.7: If for a period of two hours in the day (8.00 am to 10.00 am) trains arrive at
the yard every 20 minutes, but the service time continues to remain 36 minutes, then calculate for
this period
(a) the probability that the yard is empty,
(b) the average number of trains in the system, on the assumption that the yard capacity is
limited to four trains only.
Solution: Given N = 4, arrival rate, l = 1/20 trains per minute, service rate, m = 1/36 trains per
minute then r = l/m = 1.8 > 1.
1- r
(a) Probability that the yard is empty, P0 = = 0.044
1 - r N +1
(b) Average number of trains in the system
4
Ls = P0 Â n r n = P0(r + 2r2 + 3r3 + 4r4) = 0.044 ¥ 67.77 = 2.98 ª 3 trains.
n=0
EXAMPLE 12.8: A petrol station has a single pump and space for not more than three cars (two
waiting, one being served). A car arriving when the space is filled to its capacity goes elsewhere for
petrol. Cars arrive according to a Poisson distribution at a mean rate of every 8 minutes. Their
service time has an exponential distribution with a mean of 4 minutes.
The owner has the opportunity of renting an adjacent piece of land which would provide space
for an individual car to wait. (He cannot build another pump.) The rent would be Rs. 10.00 per week.
The expected net profit from each customer is Rs. 0.50 and the station is open for 10 hours every
day. Would it be profitable to rent the additional space?
Solution: Given N = 3, arrival rate, l = 1/8 cars per minute, service rate, m = 1/4 cars per minute
then r = l /m = 0.5.
1- r
Probability that there is no car in the system, P0 = = 0.533.
1 - r N +1
Probability of the system with utmost capacity, P3 = P0r3 = 0.067.
So, the proportion of the lost customer = 0.067.
Under the new decision, N = 4 and P0 = 0.516, P4 = 0.032.
Thus, the proportion of the lost customer is 0.032.
Therefore, increase in cars served per hour = l (0.067 – 0.032) ¥ 60
= 0.262 cars per hour.
Then increase in cars served per week = 0.262 ¥ 10 ¥ 7 = 18.34 cars per week
and profit per week = 0.50 ¥ 18.34 = Rs. 9.17.
354 ® Operations Research
Since the rent for additional space would be Rs. 10.00 per week, it is not economical to go for
the rented additional floor space.
• /FCFS)
12.11 MODEL 3 (M/M/C): (•
Here the system has multiple servers in parallel equal to c. It is assumed that customers arrive at an
average rate of l following the Poisson fashion and are served according to “first come, first
served”—queue discipline. These c-servers are identical, each serving customers according to an
exponential distribution with an average rate of m-customers. When there are n-customers in the
system, the service rate of the server is obtained in the following two situations:
1. When the number of customers in the system is less than that of the servers (i.e. n < c), there
will be no queue and (c – n)-servers will be idle. Hence, service rate mn = nm, n < c.
2. When the number of customers in the system is more than or equal to the number of the
servers (i.e. n ≥ c), all servers will be busy and (n – c)-customers will form a queue. Then
the service rate is mn = nm, n ≥ c.
Arguing as in Model 1, the steady-state difference-differential equations are
0 = –lP0 + mP1, n = 0 (12.53)
0 = –(l + nm) Pn + (n + 1) mPn+1 + lPn–1, 1 £ n < c (12.54)
0 = –(l + cm) Pn + cmPn+1 + lPn–1, n ≥ c (12.55)
Then the probability of n-customers in the system is given by
Ï1 n
ÔÔ n ! r P0 , 1£ n <c
Pn = Ì (12.56)
Ô 1 r n P0 , n > c
ÔÓ c n - c c !
To obtain the value of P0, we proceed as follows:
• c -1 •
1= Â Pn = Â Pn + Â Pn
n =0 n= 0 n= c
c -1 n • n
1 Êlˆ 1 Êlˆ
= Â P +
n ! ÁË m ˜¯ 0  c ! c n -c
ÁË m ˜¯ P0
n =0 n =c
È c -1 c n Ê l ˆ n •
cn Ê l ˆ ˘
n
= P0 Í Â Á ˜ +  ÁË c m ˜¯ ˙
ÍÎ n = 0 n ! Ë c m ¯ n =c c ! cn -c ˙˚
È c -1 ( r c)n cc • ˘
= P0 Í Â + Â rn ˙
ÍÎ n = 0 n ! c! n=c ˙˚
È c -1 ( r c)n cc r c ˘
= P0 Í Â + ˙
ÎÍ n = 0 n ! c ! 1 - r ˚˙
È c -1 ( r c) n ( r c )c ˘
= P0 Í Â + ˙
ÎÍ n = 0 n ! c !(1 - r ) ˚˙
Chapter 12: Queuing Theory ® 355
-1
È c -1 ( r c)n ( r c) c ˘
or P0 = Í Â + ˙ (12.57)
ÎÍ n = 0 n ! c !(1 - r ) ˚˙
• c+x
1 Êlˆ
= Â x Á ˜
c ! cx Ë m ¯
P0
x =0
c • x
1 Êlˆ Ê l ˆ
=
c ! ÁË m ˜¯ 0
P Â xÁ
Ë c m ˜¯
x =0
•
Ê l ˆ
c
1 Êlˆ
=
c ! ÁË m ˜¯ 0
P Â xy x Put y = Á
Ë c m ˜¯
x =0
c •
1 Êlˆ
=
c ! ÁË m ˜¯
yP0 Â xy x -1
x =0
c •
1 Êlˆ d x
=
c ! ÁË m ˜¯
yP0 Â dy
y
x =0
c •
1 Êlˆ d
=
c ! ÁË m ˜¯
yP0
dy
 yx
x =0
c
1 Êlˆ d 1
= Á ˜
c! Ë m ¯
yP0
dy 1 - y
lm (l /m )c
= P0 (12.60)
(c - 1)!(c m - l )2
356 ® Operations Research
EXAMPLE 12.9: A tax consulting firm has four service stations (counters) in his office to receive
people who have problems and complaints about their income, wealth and sales taxes. Arrivals
follow a Poisson distribution and average 8 persons in 8 hours service day for six days. Each tax
advisor spends an irregular amount of time servicing the arrivals which found to have an exponential
distribution. The average service time is 20 minutes. Calculate the average number of customers in
the system, the average number of customers waiting to be served, average time a customer spends
in the system, and average waiting time for a customer in the queue.
Calculate how many hours a week a tax advisor spends performing his job. What is the
probability that a customer has to wait before he gets service? What is the expected number of idle
tax advisors at any specific time?
Solution: Given c = 4, arrival rate, l = 80/8 = 10 clients per hour, service rate, m = 60/20
= 3 clients per hour.
-1
È c -1 ( r c) n ( r c) c ˘
Then P0 = Í Â + ˙ = 0.021
ÍÎ n= 0 n ! c !(1 - r ) ˙˚
EXAMPLE 12.10: A telephone exchange has two long distance operators. The telephone
company finds that during the peak load, long distance calls arrive in a Poisson fashion at an average
rate of 15 per hour. The length of service on these calls is approximately exponentially distributed
with an average rate of 5 minutes.
1. What is the probability that a subscriber will have to wait for his long distance call during
the peak hours of the day?
2. If the subscribers will wait and served in turn, what is the expected waiting time?
Solution: Given c = 2, arrival rate, l = 15/60 calls per minute, service rate, m = 1/5 calls per
minute.
-1
È c -1 ( r c)n ( r c )c ˘
Then P0 = Í Â + ˙ = 0.23
ÍÎ n = 0 n ! c !(1 - r ) ˙˚
Arguing as above, the probability of n-customers in the system in the steady-state condition is given
by
Ï 1 n
Ô r P0 , n£c
n!
Ô
Ô 1
Pn = Ì n - c r n P0 , c < n £ N (12.63)
Ô c c!
Ô 0, n>N
Ô
Ó
To obtain the value of P0, we proceed as follows:
N c -1 N
1= Â Pn = Â Pn + Â Pn
n =0 n=0 n =c
c -1 n n
1 Êlˆ N
1 Êlˆ
= Â P +
n ! ÁË m ˜¯ 0  c ! cn - c ÁË m ˜¯ P0
n =0 n=c
È c -1 c n Ê l ˆ n N
cn Ê l ˆ ˘
n
= P0 Í Â Á ˜ +  ÁË c m ˜¯ ˙
ÍÎ n = 0 n ! Ë c m ¯ n= c c ! cn -c ˙˚
Ï È c -1 N - c +1 ¸ ˘
-1
c m ÏÔ
c
ÔÍ (c r )n 1 Êlˆ Ê l ˆ Ô˙
Ô Í Â n ! + c ! ÁË m ˜¯ c m - l Ì1 - ÁË c m ˜¯ ˝ , r π1
ÔÎ n =0 ÓÔ ˛Ô ˙˚
Then P0 = Ì (12.64)
-1
Ô È c -1 c ˘
ÔÍ Â ( c r ) n
1 Ê l ˆ
+ Á ˜ ( N - c + 1) ˙ , r =1
Ô Í n =0 n ! c! Ë m ¯ ˙
ÓÎ ˚
Clearly, for N Æ • and l/cm < 1, the results are same as those of Model 3. If we take c = 1, we
get Model 1.
1. Effective arrival rate l¢ = l(1 – PN) (12.65)
2. Average queue length
N
Lq = Â (n - c) Pn
n =c
(c r )c r P0
= [1 - r N -c +1 - (1 - r )( N - c + 1) r N - c ] (12.66)
c !(1 - r )2
4. Average number of customers in the system
Êlˆ
Ls = Lq + Á ˜ (1 – PN) (12.67)
Ë m¯
5. Average waiting time of a customer in the system
L
Ws = s (1 – PN) (12.68)
l
Chapter 12: Queuing Theory ® 359
EXAMPLE 12.11: A car servicing station has 3 stalls where service can be offered
simultaneously. Due to space limitations, only four cars are allowed for servicing. The arrival pattern
is Poisson with a mean of one car every minute during peak hours. The service time is exponential
with mean 6 minutes. Find the average number of cars in the system during peak hours, the average
waiting time of a car, and the average number of cars per hour that cannot enter the station because
of full capacity.
Solution: Given, c = 3, N = 4, arrival rate, l = 1 car per minute, service rate, m = 1/6 car per
minute. Then r = 6.
-1
È 3 -1 1 Ê l ˆ n 7
1 Êlˆ ˘
n
P0 = Í Â Á ˜ +  ÁË m ˜¯ ˙ = 0.00088
ÍÎ n = 0 n ! Ë m ¯ n =3 3!3n -3 ˙˚
EXAMPLE 12.12: A mechanic repairs four machines. The mean time between service
requirements is 5 hours for each machine and forms an exponential distribution. The mean repair
time is one hour and follows an exponential distribution. Machine downtime costs Rs. 25 per hour
and the mechanic costs Rs. 55 per day. Determine the following:
1. Probability that the service facility will be idle.
2. Expected number of machines waiting to be repaired, and being repaired.
3. Expected downtime cost per day.
Would it be economical to engage two mechanics, each repairing only two machines?
Chapter 12: Queuing Theory ® 361
Solution: Given, R = 4 machines, arrival rate, l = 1/5 = 0.2 machine per hour, service rate,
m = 1 machine per hour. Then r = 0.2.
1. The probability that the service facility will be idle
-1
È R R! Ê l ˆ ˘
n
P0 = Í Â Á ˜ ˙ = 0.4030
ÍÎ n = 0 ( R - n)! Ë m ¯ ˙˚
2. Expected number of machines to be out of order and being repaired
Ê mˆ
Ls = R – Á ˜ (1 – P0) = 1.015 machines.
Ël¯
3. Expected time a machine will wait in a queue for repairing
1 È R l + m˘
-
m ÍÎ 1 - P0 l ˙˚
Wq = = 0.7 hours = 42 minutes
and
-1
È c -1 R! Êlˆ
n R
R! Êlˆ ˘
n
P0 = Í Â +  n !( R - n)! c ! c n -c ÁË m ˜¯ ˙
n !( R - n)! ÁË m ˜¯
(12.78)
ÎÍ n = 0 n =c ˚˙
Characteristics:
1. Expected number of customers in the queue
R
Lq = Â (n - c) Pn
n = c +1
R c ÏÔ R c ¸Ô
= Â nPn - Â n Ì Â Pn -
nP - c  Pn ˝
n =0 n =0 ÓÔ n = 0 n =0 ˛Ô
ÔÏ Ô¸
R c c
= Â nPn - Â nPn - c Ì1 - Â Pn ˝
n =0 n= 0 ÔÓ n =0 Ô˛
c
= Ls – c + Â (c - n) Pn = Ls – (c – c¢) (12.79)
n =0
c
where c¢ = Â (c - n) Pn = expected number of idle servers.
n =0
2. Expected number of customers in the system
Ls = Lq + (c – c¢) (12.80)
Let le represent the expected arrival rate l(R – n)
R
le = Â l ( R - n) Pn = l (R – Ls)
n =0
3. Average waiting time of a customer in the queue
Lq
Wq = (R – Lq) (12.81)
l
6. Average waiting time of a customer in the system
Ls
Ws = (R – Ls) (12.82)
l
EXAMPLE 12.13: There are 5 machines, each of which when running suffers breakdown at an
average rate of 2 per hour. There are 2 servicemen and only one man can work on a machine at a
time. If n machines are out of order when n > 2 then (n – 2) of them wait until the serviceman is
free. Once a serviceman starts work on a machine, the time to complete the repair has an exponential
distribution with 5 minutes. Find the distribution of number of machines out of action at a given
time. Find also the average time an out-of-action machine has to spend waiting for the repairs to
start.
Chapter 12: Queuing Theory ® 363
= 0.3135
Expected number of customers in the queue
R
Lq = Â (n - c) Pn = P3 + 2P4 + 3P5 = 0.11 hours
n = c +1
R
Now le = Â l ( R - n) Pn = l [5P0 + 4P1 + 3P2 + 2P3 + P4] = 7.976
n=0
k-phases
Arrival 1 2 k Departure
Let Pn(t) = Probability that there are n-phases in the system at time t
n= Total number of phases in the system
k= Number of phases in series for services
ln = l = Phases arrive per unit time
m= Number of units served per unit time
mk = Number of k-phases served per unit time
1/mk = Average service time.
Arguing as Model 1, we have probability equations as
P0(t + Dt) – P0(t) = –lP0(t) Dt + P1(t) km Dt
Pn(t + Dt) – Pn(t) = –(l + km) Pn(t) Dt + Pn+1(t)kmDt + Pn–k(t)lDt, n ≥ 1
where Pj(t) = 0 for j < 0.
364 ® Operations Research
È • ˘ • •
or (1 + r ) Í P0 +  Pn z n ˙ - P0 =  Pn +1 z n + r  Pn - k z n
ÍÎ n =1 ˙˚ n= 0 n =1
• • •
Ê 1ˆ
or (1 + r ) Â Pn z n - P0 =Á ˜
Ë z¯
 Pn+1z n +1 + r  Pn - k z n
n= 0 n= 0 n=k
since Pn–k = 0 for n – k < 0
• • •
Ê 1ˆ
or (1 + r ) Â Pn z n - P0 =Á ˜
Ë z¯
 Pi zi + r  Pm z k + m
n= 0 i =1 m=0
Ê1ˆ È ˘ • •
or (1 + r ) P (z ) - P0 = Á ˜ Í Â Pi z i - P0 ˙ + r z k  Pm z m
Ë z ¯ ÍÎ i = 0 ˙˚ m =0
Ê1ˆ
or (1 + r ) P ( z) - P0 = Á ˜ [ P( z ) - P0 ] + r z k P( z )
Ë z¯
P0 (1 - z ) P0
or P(z) = =
(1 - z ) - r z (1 - z ) k
1 - r z [(1 - z k )/(1 - z)]
-1 n
È Ê 1 - zk ˆ˘ • Ê 1 - zk ˆ
= P0 Í1 - r z Á ˜˙ = P0 Â ( r z ) Á n
˜
ÍÎ Ë 1- z ¯ ˙˚ n=0 Ë 1- z ¯
•
= P0 Â ( r z)n [1 + z + z 2 + + z k -1 ]n
n= 0
Chapter 12: Queuing Theory ® 365
•
P0
Put z = 1. Then P(1) = P0 Â ( r k )n =
n=0
1 - rk
•
Also, Eq. (12.85) gives P(1) = Â Pn = 1
n =0
Hence P 0 = 1 – rk (12.86)
•
Again P(z) = (1 - r k ) Â ( r z) n (1 - z k ) n (1 - z) - n
n =0
• • •
m
Ê mˆ Ê m + j - 1ˆ j
or  Pn z n = (1 - r k )  ( r z) m  ( -1)i ÁË i ˜¯ z ik  ÁË j ˜¯ z
n=0 m=0 i =0 j =0
• • • m
Ê m ˆ Ê m + j - 1ˆ m + ik + j
or  Pn z n = (1 - r k )  rm   ( -1)i ÁË i ˜¯ ÁË j ˜¯ z
n =0 m =0 j =0 i =0
Characteristics of Model:
1. Expected number of phases (not units) in the system i.e.
•
Ls = Â nPn
n=0
• • •
or (1 + r )  n2 Pn =  n2 Pn +1 + r  n2 Pn - k
n =1 n =1 n=k
• • •
or (1 + r )  n2 Pn =  (n - 1)2 Pn + r  (n + k )2 Pn
n =1 n =1 n=0
• • •
or (1 + r )  n2 Pn =  (n - 1)2 Pn - P0 + r  (n + k )2 Pn
n= 0 n =0 n=0
• •
or (1 + r ) Â n2 Pn = Â [(n - 1)2 + r (n + k )2 ] Pn - P0
n= 0 n =0
• • • •
(1 + r ) Â n2 Pn = (1 + r ) Â n2 Pn - 2(1 - k r ) Â nPn + (1 + k 2 r ) Â Pn - P0
n= 0 n=0 n =0 n= 0
366 ® Operations Research
•
or 2 (1 - k r ) Â nPn = (1 + k 2 r ) Pn - P0
n=0
r k ( k + 1)
or Ls = (12.88)
2(1 - r k )
The average number of phases of one unit in service = (k + 1)/2 with mean service rate =
1/m. Then the time taken for service = (k + 1)/2m.
Now the expected number of units (not phases) in the queue
Ls - Expected number of phases in the service
Lq =
k
1 È r k ( k + 1) l ˘
= Í - ( k + 1) ˙ (12.89)
k Î 2(1 - r k ) 2 m ˚
Hence, the expected number of phases arrived during time (k + 1)/2m is equal to (k + 1)l/2m.
Therefore,
k (k + 1) l2 k (k + 1) r 2
2. Lq = = (12.90)
2 m( m - l ) 2 1 - rk
Lq k (k + 1) l
3. Wq = = (12.91)
l 2 m( m - l )
l k (k + 1) l2 l
4. Ls = Lq + = + (12.92)
m 2 m(m - l) m
( k + 1) l 1
5. Ws = + (12.93)
2k m ( m - l ) m
Special case: If there is no queue and only one customer in the system, we get steady-state
difference equations as
0 = –lP0 + kmP1, n = 0
0 = –kmPn + kmPn+1, 1 £ n £ k
0 = –kmPn + lP0, n = k.
So, Pn = (l/km) P0 for all n = 1, 2, º, k.
k k
Now  Pn = 1 implies P0 +  Pn = 1
n =0 n =1
k
l
or P0 + Â k m P0 = 1
n =1
-1
È l k
1˘ m
or P0 = Í1 +
m  ˙ =
l+m
ÍÎ n =1
k ˙˚
1 l
Hence, Pn =
k l + m
Chapter 12: Queuing Theory ® 367
EXAMPLE 12.14: A hospital clinic has a doctor examining every patient brought in for a general
check-up. The doctor spends 4 minutes on each phase of check-up, although the distribution of time
spent on each phase is approximately exponential. If each patient goes through 4 phases in the
check-up and if arrivals of the patients to the doctor’s clinic is approximately Poisson at the average
rate of 3 per hour,
1. What is the average time spent by a patient waiting in the doctor’s clinic?
2. What is the average time spent in the check-up?
3. What is the most probable time spent in the examination?
Solution: Given k = 4 phases, arrival rate, l = 3 patients per hour, service rate per phase = 1/4m
= 4 patients per minute.
so, m = 1/16 patients per minute = 60/16 = 4 patients per hour.
1. Average time spent by a patient in the doctor’s clinic
k (k + 1) l2 10
Lq = = hour = 40 minutes.
2 m ( m + l ) 15
2. Average time spent in the check-up = 1/m = 16 minutes.
k -1
3. Most probable time spent in the examination = = 12 minutes.
km
EXAMPLE 12.15 Repairing a certain type of machine, which breaks down in a given factory,
consists of five basic steps that should be performed in a particular sequence. The time taken to
perform each of the five steps is found to have an exponential distribution with a mean of 5 minutes
and is independent of the other steps. If these machines break down in a Poisson fashion at an
average rate of two per hour, and if there is only one repairman, what is the average idle time for
each machine that has broken down?
Solution: Given k = 5 phases, average arrival rate, l = 1/30 machines per minute, average service
rate, m = 1/25 machines per minute.
Therefore, the expected idle time of the machine
= average time an arrival spends in the system
(k + 1) l 1
= + = 100 minutes.
2k m(m - l) m
REVIEW EXERCISES
1. A TV repairman finds that the time spent on his jobs has an exponential distribution with
mean 30 minutes. If he repairs sets in the order in which they come in, and if the arrival of
sets is approximately Poisson with an average rate of 10 per 8-hour day, what is the
repairman’s idle time each day? How many jobs are ahead of the average set just brought
in?
[Ans. 3 hours, 5/3 jobs]
368 ® Operations Research
2. At a man barber shop, customers arrive according to the Poisson distribution with a mean
arrival rate of 5 per hour and his hair cutting time was exponentially distributed with an
average hair cut taking 10 minutes. It is assumed that because of his expertise customers
were always willing to wait. Calculate the following:
1. Average number of customers in the shop and the average number of customers waiting
for a hair cut.
2. The percent of time an arrival can walk right in without having to wait.
3. The percentage of customers who have to wait prior to getting into the barber’s chair?
[Ans. 4.8 customers, 4 customers, 83.3% 16.7%]
3. A drive-in bank window has a mean service time of 2 minutes, while the customers arrive
at a rate of 20 per hour. Assuming that these rates represent Poisson distribution, determine
1. The proportion the teller will be idle?
2. How long a customer will wait before reaching the server?
3. What fraction of the customers will have to wait in the line?
4. The probability that a customer has to wait?
[Ans. 33% of time, 6 min, 4/3 customers, 2/3 customers]
4. On an average, 96 patients per 24-hour day require the service of an emergency clinic. Also,
on an average, a patient requires 10 minutes of active attention. Assume that the facility can
handle only one emergency at a time. Suppose that it costs the clinic Rs. 100 per patient
treated to obtain an average servicing time of 10 minutes, and that each minute of decrease
in this average time would cost Rs. 10 per patient treated. How much would have to be
budgeted by the clinic to decrease the average size of the queue from one and one-third
patients to half a patient?
[Ans. Rs. 125 per patient]
5. A refinery distributes its products by trucks, loaded at the loading dock. Both company
trucks and independent distributors’ trucks are loaded. The independent firms complained
that sometimes they have to wait in line and thus lose money paying for a truck and a driver
that are only waiting. They requested the refinery either to put in second loading dock or to
discount prices equivalent to the waiting time. Extra loading dock costs Rs. 100 per day
whereas the waiting time for the independent firms costs Rs. 25 per hour. The following data
have been collected. The average arrival rate of all trucks is 2 per hour and average service
rate is 3 per hour. Thirty percent of all trucks are independent. Assuming that these rates are
random according to the Poisson distribution, determine
1. The probability that a truck has to wait.
2. The waiting time of a truck that waits.
3. The expected cost of waiting time of independent trucks per day.
Is it advantageous to decide in favour of a second loading dock to ward off the complaints?
[Ans. 0.66, 1 hour, Rs. 80]
Chapter 12: Queuing Theory ® 369
6. Consider the self-service store with one cashier. Assume Poisson arrivals and exponential
service times. Suppose that nine customers arrive on an average every 5 minutes and the
cashier can serve 10 in 5 minutes. Find
1. The average number of customers’ queuing for the service.
2. The probability of having more than 10 customers in the system.
3. The probability that a customer has to wait for more than 2 minutes.
If the service can be speeded up to 12 in 5 minutes using a different cash register, what will
be the changes in the (1)–(3)?
[Ans. 3, (0.9)10, 0.67 : 3, (0.75)10, 0.30]
7. A departmental store has a single cashier. During the rush hours, customers arrive at a rate
of 20 customers per hour. The average number of customers that can be processed by the
cashier is 24 per hour. Assume that the conditions for the use of the single channel queuing
model apply.
1. What is the probability that the cashier is idle?
2. What is the average number of customers in the queuing system?
3. What is the average time a customer spends in the system?
4. What is the average number of customers in the queue?
5. What is the average time a customer spends in the queue waiting for service?
[Ans. 0.17, 5 customers, 0.25, 4.17 customers, 0.21 hour]
8. Assume that the goods trains are coming in a yard at the rate of 30 trains per day and
suppose that the inter-arrival times follow an exponential distribution. The service time for
each train is assumed to be exponential with an average of 36 minutes. If the yard can admit
9 trains at a time (there being 10 lines, one of which is reserved for shunting purpose),
calculate the probability that the yard is empty and find the average queue length.
[Ans. 0.28, 1.55 trains]
9. A stenographer has 5 persons with whom she performs stenographic work. The arrival rate
is Poisson and service times are exponential. The average arrival rate is 4 per hour with an
average service time of 10 minutes. Cost of waiting is Rs. 8.00 per hour while the cost of
servicing is Rs. 2.50 each. Calculate the average waiting time of an arrival, the average
length of the waiting line, and the average time which an arrival spends in the system.
[Ans. 12.4 minutes, 0.79 customers, 22.4 minutes]
10. A shipping company has a single unloading berth with ships arriving in a Poisson fashion
at an average rate of three per day. The unloading time distribution for a ship with
n-unloading crews is found to be exponential with average unloading time 1/2n days. The
company has a large labour supply without regular working hours, and to avoid long waiting
lines the company has a policy of using as many unloading crews on a ship as there are ships
waiting in line or being unloaded. Under these conditions, what will be the average number
of unloading crews working at any time? What is the probability that more than 4 crews will
be needed?
[Ans. 1.5 crews, 0.019]
370 ® Operations Research
11. Problems arrive at a computing center in Poisson fashion at an average rate of 5 per day.
The rules of the computer center are such that any man waiting to get his problem solved
must aid the man whose problem is being solved. If the time to solve a problem with one
man has an exponential distribution with mean time of 1/3 day, and if the average solving
time is inversely proportional to the number of people working on the problem, approximate
the expected time in the center for a person entering the center.
[Ans. 1.67, 8 hours]
12. Four counters are being run on the frontier of a country to check the passports and necessary
papers of the tourists. The tourists choose a counter at random. If the arrivals at the frontier
are Poisson at the rate l and the service time is exponential with parameter l/2, what is the
steady-state average queue at each counter?
[Ans. 4/23]
13. A supermarket has two girls running up sales at the counters. If the service time for each
customer is exponential with mean 4 minutes, and if people arrive in a Poisson fashion at
the rate of 10 per hour.
1. What is the probability of customers having to wait for the service?
2. What is the expected percentage of idle time for each girl?
3. If a customer has to wait, what is the expected length of his waiting time?
[Ans. 0.167, 67%, 3 minutes]
14. A bank has two tellers working on saving accounts. The first teller handles withdrawals only.
The second teller handles depositors only. It has been found that the service time distribution
for both deposits and withdrawals is exponential with mean service time 3 minutes per
customer. Depositors and withdrawals are found to arrive in Poisson fashion throughout the
day, with mean arrival rate of 16 and 14 per hour respectively. What would be the effect on
the average waiting line for depositors and withdrawers if each teller could handle both
withdrawals and depositors? What would be the effect if this could only be accomplished
by increasing the service time to 3.5 minutes?
[Ans. 1.93, 5.97, 0.199 hours]
15. A general insurance company has three claim adjusters in its branch office. People with
claim against the company are found to arrive in Poisson fashion, at an average rate of
20 per 8-hour day. The amount of time that an adjuster spends with a claimant is found to
have a negative exponential distribution, with mean service time 40 minutes. Claimants are
processed in the order of their appearance.
1. How many hours a week can an adjuster expect to spend with the claimants?
2. How much time, on an average, does a claimant spend in the branch office?
[Ans. 22.2 hours, 49 minutes]
16. A group of engineers has two terminals available to aid their calculations. The average
computing job requires 20 minutes of terminal time, and each engineer requires some
computation about once every 0.5 hours, i.e. the mean time between a call for service is
0.5 hours. Assume these are distributed according to an exponential distribution. If there are
six engineers in the group, find
1. The expected number of engineers waiting to use one of the terminals.
2. The total lost time per day.
[Ans. 1.4 engineers, 11.2 hours/day]
Chapter 12: Queuing Theory ® 371
17. At a certain airport it takes exactly 5 minutes to land an airplane, once it is given the signal
to land. Although incoming planes have scheduled arrival times, the wide variability in
arrivals produces an effect which makes the incoming planes appear to arrive in a Poisson
fashion at an average rate of 6 per hour. This produces occasional stack-ups at the airport
which can be dangerous and costly. Under these circumstances, how much time will a pilot
expect to spend circulating the field waiting to land?
[Ans. 2.5 minutes]
18. A colliery working one shift per day uses a large number of locomotives which break down
at random intervals, on an average one fails per 8-hour shift. The fitter carries out a standard
maintenance schedule on each faulty locomotive. Each of the five main parts of this schedule
takes on an average 1/2 hour, but the time varies widely. How much time will the fitter have
for the other tasks and what is the average time a locomotive is out of the service?
[Ans. 5.5 hours, 3.18 hours]
13
Replacement Models
13.1 INTRODUCTION
The replacement problems deal with replacing items due to decrease in efficiency, failure or
breakdown. These problems arise because of various reasons, viz. some items require maintenance
which turns out to be expensive with time, some items fail due to sudden physical stock, accidental
death, new version of machinery is available in the market, etc. Due to the above mentioned reasons,
efficiency goes on decreasing with the age and as a result, there is an increase in the operating cost,
and decrease in the scrap value. So we need to decide best policy to determine an age, which the
replacement is most economical.
372
Chapter 13: Replacement Models ® 373
∑ Progressive failure: Here the probability of failure increases with increase in the life of an
item. For example, electric light tubes, automobile tyres, medicines, etc.
∑ Retrogressive failure: When the ability of the item to survive in the initial stage of life
increases its expected life, it is termed as retrogressive failure. For example, aircraft engines,
rockets, etc.
∑ Random failure: Under this failure, constant probability failure is associated with items
that fail due to random causes like physical shocks, mishandling during loading/unloading
cargo, transportation, not related to age. For example, clay items, glass ware, vacuum tube
in air–borne equipment, fruits and vegetable, etc.
We will discuss the following situations of the replacement.
TC (n)
and the average total cost is ATC(n) = (13.2)
n
For obtaining time n for which ATC (n) is minimum, set differentiation of ATC (n) with
respect to n equal to zero, i.e.
n
dATC ( n) 1 1 1
dn
- 2 (C - S ) + R( n) - 2
n n n
Ú R(t ) dt = 0
0
374 ® Operations Research
n
C-S 1
i.e. R(n) =
n
+
n Ú R(t ) dt = ATC (n) [∵ of Eq. (13.2)] (13.3)
0
Thus, the optimum time n is when the operating cost for n-years is equal to average cost
in n-years.
(b) When time ‘t’ is a discrete variable.
Here Eq. (13.2) can be written as
C-S n
ATC (n) =
n
+ Â R(t ) (13.4)
t =1
R(n + 1) n
R (t ) C-S
=
n +1
- Â n(n + 1) -
n(n + 1)
t =1
EXAMPLE 13.1: A firm is considering replacement of a machine whose cost price is Rs. 12,200
and the scrap value is only Rs. 200. The operating costs (in rupees) are found from experience as
follows:
Year : 1 2 3 4 5 6 7 8
Operating cost : 200 500 800 1,200 1,800 2,500 3,200 4,000
When should the machine be replaced?
Solution: Given C = Rs. 12,200 and S = Rs. 200.
The average cost per year can be computed as given in Table 13.1.
Chapter 13: Replacement Models ® 375
Table 13.1
The above table shows that the value ATC (6) during the sixth year is minimum. Hence, the
machine should be replaced after every 6 year.
EXAMPLE 13.2: A firm is using a machine whose purchase price is Rs. 13,000. The installation
charges amount to Rs. 3,600 and the machine has a scrap value of only Rs. 1,600. The maintenance
cost in different years is as follows:
Year : 1 2 3 4 5 6 7
Operating cost : 250 750 1,000 1,500 2,100 2,900 4,000
The firm wants to determine after how many years the machine should be replaced on economic
grounds, assuming that the machine replacement can be done only at the end of the year.
Solution: Given purchase cost = Rs. 13,000 and installation charges = Rs. 3,600. Then
C = Rs. 13,000 + 3,600 = 16,600 and S = Rs. 1,600.
The optimum replacement period is determined as follows:
Table 13.2
Table 13.2 shows that the value ATC (6) during the sixth year is minimum. Hence, the machine
should be replaced after every 6 year.
EXAMPLE 13.3: A truck owner finds from his past records that the maintenance costs per year
of a truck whose purchase price is Rs. 8,000 are given as:
376 ® Operations Research
Year : 1 2 3 4 5 6 7 8
Maintenance cost (Rs.) : 1,000 1,300 1,700 2,200 2,900 3,800 4,800 6,000
Resale price (Rs.) : 4,000 2,000 1,200 600 500 400 400 400
Determine at which time it is profitable to replace the truck.
Solution: Given C = Rs. 8,000 and the maintenance cost R(n) and the resale value (say) S(n). The
values of ATC (n) for each year are computed in Table 13.3.
Table 13.3
The ATC (5) is minimum. Hence, the truck should be replaced every 5 year.
EXAMPLE 13.4: Fleet cars have increased their costs as they continue in service due to increased
direct operating cost (gas and oil) and increased maintenance costs. The initial cost is Rs. 3,500 and
the trade-in value drops as the time passes until it reaches a constant value of Rs. 500.
Given the cost of operating, maintenance and the trade-in value, determine the proper length of
service before cars should be replaced.
Year of service : 1 2 3 4 5
Year end trade-in value (Rs.) : 1,900 1,050 600 500 500
Annual operating cost (Rs.) : 1,500 1,800 2,100 2,400 2,700
Maintenance cost (Rs.) : 300 400 600 800 1,000
Solution: Given C = Rs. 3,500, S(n) = year end trade-in value and R(n) = operating cost
+ maintenance cost.
The optimum replacement period is determined in Table 13.4 below.
Table 13.4
The table indicates that ATC (3) is minimum. Hence, the car should be replaced every third year.
Chapter 13: Replacement Models ® 377
EXAMPLE 13.5: A machine shop has a press which is to be replaced as it wears out. A new press
is to be installed now. Further, an optimum replacement plan is to be found for next 7 years after
which the press is no longer required. The following data is given:
Year : 1 2 3 4 5 6 7
Installation cost at the beginning of the year (Rs.) : 200 210 220 240 260 290 320
Solving value at the end of the year (Rs.) : 100 50 30 20 15 10 0
Operating cost during the year (Rs.) : 60 80 100 120 150 180 230
Find an optimum replacement policy and the corresponding minimum cost.
Solution: With the given data, the minimum average annual cost of the press is computed in
Table 13.5.
Table 13.5
From the table, the minimum average annual cost is ATC (3) = Rs. 143.
The machine should be replaced every third year.
EXAMPLE 13.6: (a) Machine A costs Rs. 9,000. Annual operating costs are Rs. 200 for the first
year and then increase by Rs. 2,000 every year. Determine the best age at which to replace the
machine. If the optimum replacement policy is followed, what will be the average yearly cost of
owning and operating the machine?
(b) Machine B costs Rs. 10,000. Annual operating costs are Rs. 400 for the first year, and then
increase by Rs. 800 every year. You now have machine A, which is one year old. Should you replace
it with B? If so, when?
Assume that resale values for both the machines are negligible.
Solution: (a) First, let us compute the average total annual cost ATCA (n) for machine A. We have
C = Rs. 9,000 and S = 0.
Table 13.6(a)
Table 13.6(a) suggests that machine A should be replaced after 3 years and the corresponding
average annual cost of owning and operating is Rs. 5,200.
(b ) Now we compute the optimal policy for machine B [Table 13.6(b)].
Given C = Rs. 10,000 and S = 0
Table 13.6(b)
The minimum average annual cost for machine B is Rs. 4,000, which is lower than that for
machine A. Machine B should be replaced by machine A.
We need to decide the time of replacement. Since the salvage value is negligible, we need to
consider only the maintenance cost. We would keep machine A so long as the annual maintenance
cost is lower than Rs. 4,000 and replace it as soon as it exceeds Rs. 4,000.
On the one-year old machine A, the maintenance cost for 2nd year is Rs. 2,200 and for the
3rd year, it is Rs. 4,200. So we need to replace machine A for one-year and replace it thereafter.
EXAMPLE 13.7: (a) A transport manager finds from his past records that the costs per year of
running a truck whose purchase price is Rs. 6,000 are as given below:
Year : 1 2 3 4 5 6 7 8
Operating cost (Rs.) : 1,000 1,200 1,400 1,800 2,300 2,800 3,400 4,000
Resale value : 3,000 1,500 750 375 200 200 200 200
Determine at what age is replacement due?
(b) Let the owner of a fleet have three trucks, two of which are two years old and the third one
is one year old. The cost price, running cost and resale value of these trucks are same as given in
(a). Now, he is considering a new type of truck with 50% more capacity than one of the old ones
at a unit price of Rs. 8,000. He estimates that the running costs and resale price for the truck will
be as follows:
Year : 1 2 3 4 5 6 7 8
Running cost (Rs.) : 1,200 1,500 1,800 2,400 3,100 4,000 5,000 6,100
Resale price (Rs.) : 4,000 2,000 1,000 500 300 300 300 300
Assuming that the loss of flexibility due to fewer trucks is of no importance and that he will
continue to have sufficient work for three of the old trucks, what should his policy be?
Solution: (a) Given C = Rs. 6,000. The computation of the optimum age of replacement is
exhibited in Table 13.7(a).
Chapter 13: Replacement Models ® 379
Table 13.7(a)
From the table, the average annual cost per year is minimum for the 5th year. So, the machine
should be replaced after 5th year.
(b) Let us compute the optimal policy for the new truck (Table 13.7(b)). Given C = Rs. 8,000.
Table 13.7(b)
From the table, it is observed that the new truck should be replaced after every 5th year and the
corresponding average annual cost is Rs. 3,540.
Given that the capacity of the new truck is 50% more than that of the old truck, therefore the
capacity of the two new trucks is equivalent to three smaller trucks. So, the minimum average annual
cost for the new truck will be Rs. 3,540 * 2/3 = Rs. 2,360 for one of the old trucks. Hence, the old
smaller truck should be replaced by a new truck. Now we need to decide, “When to purchase the
new trucks?” For uniformity, let us assume that the replacement will involve two new trucks and all
three old trucks. The new trucks should be purchased to replace three old trucks when the running
cost for the next year of the three old trucks exceeds the average annual cost for two new trucks.
Let us compute the total cost of the old trucks in the subsequent years.
The average cost for two new trucks is equal to Rs. 7,080 (=2 * 3,540). Also, we are given that two
trucks are 2 years old and one is one year old. The computations of the average annual cost for the
older ones in subsequent years are as follows:
From these calculations, we conclude that the total cost of three old trucks up to 2nd year is
Rs. 6,500 which is less than the total average cost (Rs. 7,080) for new trucks. Hence, all the three
old trucks should be replaced after two years of service without waiting for their optimal replacement
age of 5 years.
EXAMPLE 13.8: The cost pattern for two machines A and B, when money value is not
considered, is given below:
Find the cost pattern for each machine, when money is worth 10% per year. Also find which
machine is less costly.
Solution: When the money value is not taken into account, the total cost of both the machines is
Rs. 2,200 and hence suggests that both are equally good.
Chapter 13: Replacement Models ® 381
When the money worth is 10% per annum, the present value of the money to be spent over in
a period of one year is
100
d= = 0.9091
100 + 10
Now let us compute discounted cost for the data.
Clearly, the total cost for machine A is less than that for machine B for the same period. Thus,
machine A is cheaper than machine B.
EXAMPLE 13.9: A manual stamper currently valued at Rs. 1,000 is expected to last 2 years and
costs Rs. 4,000 per year to operate. An automatic stamper whose cost price is Rs. 3,000 will last
4 years and can be operated at an annual cost of Rs. 3,000. If the money carries the interest rate of
10% per annum, determine which stamper should be purchased.
100
Solution: We have d= = 0.9091
100 + 10
The stampers have different expected life span. So, we shall consider a length of four years during
which we have to purchase either two manual stampers or one automatic stamper.
The present value of investments on the two manual stampers used in 4 years is
= 1,000 (1 + d2) + 4,000 (1 + d + d2 + d3) ª Rs. 15,773
Now, the present value of investments on the one automatic stamper for the next four years is
= 3,000 + 3,000 (1 + d + d2 + d3) ª Rs. 13,460
Since the present value of future costs for the automatic stamper is less than that of the manual
stamper, one should go for the purchase of an automatic stamper.
EXAMPLE 13.10: A machine is due for repairs. It will cost Rs. 8,000 and last for 3 years. On
the other hand, a new machine can be purchased at a cost of Rs. 25,000 and lasts for 1 year.
Assuming the rate of interest to be 10% and negligible salvage value, decide which alternative is
profitable.
Solution: Consider two types of machines for infinite replacement periods of 10 years for the new
machine and 3 years for the existing machine.
The present value factor is given by
100
d= = 0.9091
100 + 10
382 ® Operations Research
C
Let DC (n) = c + cdn + cd2n + º =
1 - dn
For the existing machine C = Rs. 8,000, d = 0.9091 and n = 3 years.
8, 000
Then DC (3) = ª Rs. 32,172
1 - 0.90913
and for new machine with C = Rs. 25,000, d = 0.9091 and n = 10 years
25, 000
DC (10) = ª Rs. 40,688
1 - 0.909110
Since DC (3) < DC (10), the existing machine should be repaired.
The above discussed example suggests that the money value can be visualized in two different
ways. Accordingly, the following two methods
(i) The operating cost increased with time and the money value with a given rate, i.e.
discounted value is constant.
(ii) The amount to be spent is loaned at a given (constant) rate of interest under the condition
of repaying it in pre-decided number of installments.
To decide the optimal replacement policy, we have the following theorem.
Theorem 13.2: Given that the operating cost increases with time and the money value decreases
with constant rate. Then the replacement policy will be
(a) Replace if the next period’s cost is more than the weighted average of previous costs.
(b) Otherwise, do not replace.
Proof: Let C be the purchase price of an item to be replaced.
R(n) be the operating cost incurred at the beginning of the n-th year.
r be the annual interest rate.
d be the discounted value per unit of money during a year (d = (1 + r)–1).
PV(n) be the present value of all future discounted costs associated with the replacement of the
item at the end of every n year.
Let us assume that the item is replaced after every n year of service and has no resale value.
The replacement policy can be formulated by computing the total amount of money for purchase and
operating the item for n years. We need to find best optimal time at which the sum of the above
mentioned costs is minimum.
The present value PV(n) of all future costs of purchasing and operating the items with the
assumption of replacement of the item after every n year is given by
PV(n) = {C + R(1) + R(2) d + R(3) d2 + … R(n)n–1} (for 1 + n years)
+ {(C + R1) d + R(2) dn n+1
+ … + r(n)d 2n–1
} (for n + 1 to 2n years)
= [C + R(1) + R(2) d + … + R(n) dn–1][1 + dn + d2n + º]
È n ˘È 1 ˘
= ÍC + Â d i -1 R(i) ˙ Í 1 - d n ˙ (sum of infinite GP, d < 1)
ÎÍ i =1 ˚˙ ÎÍ ˚˙
F ( n)
= (13.9)
1 - dn
Chapter 13: Replacement Models ® 383
n
where F(n) = C + Â d i -1 R(i)
i =1
The value of PV(n) in Eq. (13.9) is the total money required for the machine with a replacement
policy of every n year. Since n takes only discrete values, for obtaining minimum value of PV(n),
the necessary condition is
PV(n + 1) > PV(n) < PV(n – 1) (13.10)
i.e. PV(n + 1) – PV(n) > 0 and PV(n) – PV(n – 1) < 0.
From Eq. (13.9), we have
F (n + 1) PV (n)
PV(n + 1) – PV(n) =
1 - d n +1 1 - d n
F (n + 1) - F (n) + d n +1 F (n) - d n F (n + 1)
=
(1 - d n )(1 - d n +1 )
d n (1 - d n )R(n + 1) - d n (1 - d ) F (n)
=
(1 - d n )(1 - d n +1 )
d n (1 - d )È1- dn ˘
= n +1 Í 1 - d
R(n + 1) - F (n) ˙ (13.11)
(1 - d )(1 - d ) ÎÍ
n
˚˙
Since 0 < d < 1 and so 1 – dn > 0. Therefore PV(n + 1) – PV(n) is always positive.
Replacing n by n – 1 in Eq. (13.11), we have
d n -1 (1 - d ) È 1 - d n -1 ˘
PV(n) – PV(n – 1) = Í R(n) - f (n - 1) ˙
(1 - d n -1
)(1 - d ) ÎÍ 1 - d
n
˚˙
È 1 - d n -1
d n -1 (1 - d ) ˘
= n -1 n Í 1 - d
R(n) - { f (n) - R (n) d n -1}˙
(1 - d )(1 - d ) ÎÍ ˚˙
È1 - dn
d n -1 (1 - d ) ˘
= n -1 n Í 1- d
R(n) - F (n) ˙ (13.12)
(1 - d )(1 - d ) ÍÎ ˙˚
The expression between R(n) and R(n + 1) in Eq. (13.13) represents the weighted average of all
costs up to the (n – 1)–periods with weights 1, d, d2, …, dn–1 respectively. These weights W(n) for
n-year are actually the discounted factors of the costs in the previous costs. Equation (13.13)
determines the age n for replacing the given machine.
EXAMPLE 13.11: Assuming d = 0.9 and the purchase price Rs. 5,000, what would be the
optimum replacement age when the running cost varies as follows:
Year : 1 2 3 4 5 6 7
Running cost (Rs.) : 400 500 700 1,000 1,300 1,700 2,100
Solution: Based on the given information, the computation of optimum replacement age is
exhibited in Table 13.8.
Table 13.8
Since W(6) = 1,921 < R(7) = 2,100, optimum replacement is under 6 years.
EXAMPLE 13.12 The cost of a new machine is Rs. 5,000. The maintenance cost of nth year is
given by R(n) = 500 (n – 1); n = 1, 2, …. Suppose that the discount rate per year is 0.05. After how
many years it will be economic to replace the machine by a new one?
Solution: Given C = Rs. 5,000 and the discount rate of money per year, r = 0.05. Then the present
value of the money to be spent over a period of one year is d = (1 + 0.05) = 0.9523. The optimum
replacement time is determined in Table 13.9.
Table 13.9
It is observed from the table that W(5) is minimum and R(4) = 1,500 < W(5) > R(6) = 2,500.
So, it is economical to replace the machine by a new one at the end of five years.
Chapter 13: Replacement Models ® 385
EXAMPLE 13.13: A manufacturer is offered two machines A and B. A is priced at Rs. 5,000 and
the running costs are estimated to be Rs. 800 for each of the first five years, increasing by Rs. 200
per year in the sixth and subsequent years. Machine B, which has the same capacity as A, costs
Rs. 2,500 but will have running costs Rs. 1,200 per year for six years, increasing by Rs. 200 per year
thereafter.
If the money is worth 10% per year, which machine should be purchased? (Assume that the
machine will eventually be sold for scrap of a negligible price.)
Solution: The present value of the money to be spent over a period of one year is d = (1 + 0.10)
= 0.9091. Let us compute (Tables 13.10(a) and (b)) for machines A and B respectively, by using the
present value of money of one rupee to be spent in n-years from now onwards. For machine A, C
= Rs. 5,000.
Table 13.10(a)
Then R(10) = 1,800 > W(9) = 1,751. So the machine should be replaced after every nine years.
For machine B, C = Rs. 2,500
Table 13.10(b)
For machine B, R(9) = 1,800 > W(8) = 1,679. So, machine B should be replaced after every 8 years.
Also, as the weighted average annual cost for machine B is less, it is advisable to purchase
machine B.
Theorem 13.3 (Mortality theorem): A large population is subject to a given mortality law for a
very long period of time. All deaths are immediately replaced by the births and there are no other
entries or exits. Show that the age distribution ultimately becomes stable and the number of deaths
per unit time becomes constant and is equal to the size of the total population divided by the mean
age at death.
Proof: Let us assume that the death (or failure) occurs just before some time t = k, where k is an
integer, and that no member of the population remains alive more than (k + 1)–time units. Let f(t)
be the number of births (replacements) at time t and P(x) be the probability of death (failure) just
k
before the age x + 1, equivalently at the age x and  P( x) = 1. Then f(t – x) denotes the number
x =0
of births at time (t – x), t = k, k + 1, k + 2, ... . Hence, the expected number of deaths from survivors
at time t is P(x) f(t – x). Therefore, the total number of deaths at time t will be
k
 P( x) f (t - x ), t = k, k + 1, k + 2, º
x =0
Also, the total number of births at time (t + 1) is f(t + 1). Given that all deaths at time t are
immediately replaced by births at time (t + 1). Therefore
k
f(t + 1) = Â P( x) f (t - x ), t = k, k + 1, k + 2, º (13.14)
x =0
Equation (13.14) in t can be solved by substituting f(t) = Awt+1. Then Eq. (13.14) becomes
k
Awt+1 = A Â P( x ) wt - x , t = k, k + 1, k + 2, º
x =0
Chapter 13: Replacement Models ® 387
Comparing Eqs. (13.15) and (13.16), the one root (say) of Eq. (13.15) is w0 (say) = 1. Now, the
polynomial Eq. (13.15) must have exactly (k + 1) roots by fundamental theorem of algebra. Denote
the remaining roots by w1, w2, º, ak.
Equation (13.15) can be written as
f(t) = A0 + A1w1t + º + Akwkt (13.17)
where A0, A1, º, Ak are constants and can be determined using age distribution at some given point
of time. Further, using the theory of equations, the absolute value of all the remaining roots is less
than unity, i.e. | wi | < 1, i = 1, 2, º, k. Therefore, the value of these roots tends to zero as t Æ •.
Consequently, Eq. (13.17) gives f(t) = A0 (constant), which is the number of deaths per time unit
(also the number of births).
Next, it remains to be proved that the age distribution ultimately becomes stable.
Now to determine A0.
Let g(x) = probability of survival for more than x-years
= 1 – prob. (survivor will die before age x)
= 1 – {P(0) + P(1) + º + P(x – 1)}
Assume that g(0) = 1.
Since the number of births as well as deaths is at a constant rate A0, the expected number of
survivors of age x is also stable and given by A0 * g(x). Also, since the number of births is always
equal to the number of deaths, the size N of the total population is constant, i.e.
k
N = A0 Â g( x ) (13.18)
x =0
N
or, A0 = k
(13.19)
 g( x )
x =0
From Eq. (13.18), the number of survivors A0, A0P(1), A0P(2) … aged at 0, 1, 2, …, can be
k
computed. To prove that the age distribution tends to stability, we need to establish that  P ( x)
x =0
is the mean age at death.
k k k
Consider  P( x) 1 =  P( x) [(x + 1) – x] =  P( x) Dx
x =0 x =0 x =0
k
= [ P( x ) x ]0
k +1
- Â ( x - 1) DP( x )
x =0
k
= P(k + 1)(k + 1) – Â ( x + 1) DP( x) (13.20)
x =0
388 ® Operations Research
We have P(k + 1) = 1 – {P(0) + P(1) + º + P(k)} and DP(x) = P(x + 1) – P(x), Eq. (13.20) becomes
k k k +1
 P( x ) =  ( x + 1) P( x ) =  yP( y - 1) (set x + 1 = y)
x =0 x =0 y =0
k +1
= Â y Prob. (that age at death is y) = Mean age at death.
y =0
Theorem 13.4 (Group replacement policy): (a) Group replacement should be made at the end of
the period t, if the cost of individual replacement for the period t is greater than the average cost
per time through the end of period t.
(b) Group replacement is not advisable at the end of the period t if the cost of individual
replacement at the end of period (t – 1) is less than the average cost per period through the end
of period t.
Proof: Let n = total number of items in the system
f(t) = number of items failing during time t
C(t) = total cost of group replacement until the end of period t
C1(t) = unit cost of replacement in a group
C2(t) = unit cost of individual replacement after failure
L = maximum life of any item
P(t) = probability of failure of any item at age t
Under the above notations:
The number of failures at any time t is
Ï t -1
Ô nP(t ) + Â P ( x ) f (t - x ), t £ L
Ô x =1
f(t) = Ì (13.21)
Ô
L
Ô Â P ( x ) f (t - x ), t>L
Ó x =1
Chapter 13: Replacement Models ® 389
Here, time t takes discrete values so the condition for minimum average cost is
Ï C (t - 1) ¸ Ï C (t ) ¸
DÌ ˝ < 0 < DÌ ˝
Ó t - 1 ˛ Ó t ˛
Ï C (t ) ¸ C (t - 1) C (t)
Now for D Ì ˝ > 0 implies - >0
Ó t ˛ t -1 t
t -1
nC1 + C2 Â f ( x )
x =1
i.e. C 2 f (t ) > (13.24)
t
Ê C ( t ) ˆ C (t - 1) C (t )
DÁ -
Ë t ˜¯
Similarly, > 0 implies >0
t -1 t
t -2
nC1 + C2 Â f ( x )
x =1
i.e. C2 f(t – 1) > (13.25)
t -1
Inequalities (13.24) and (13.25) define the necessary condition for optimal group replacement at the
end of period t.
EXAMPLE 13.14: There are 1,000 bulbs in the system. Survival rate is given below:
Week : 0 1 2 3 4
Bulb in operation at the end of the week : 1,000 850 500 200 00
The group replacement of 1,000 bulbs costs Rs. 0.10 and individual replacement is 0.50 per bulb.
Discuss suitable replacement policy.
Solution: From the given data of survival rate, we compute probability P(n) of failure during the
week n as follows:
Week : 1 2 3 4
Probability of survival : 0.85 0.50 0.20 0.00
Probability of failure P(n) : 0.15 0.35 0.30 0.20
4
The expected life of each bulb is  nP(n) = 1P(1) + 2P(2) + 3P(3) + 4P(4) = 2.55 weeks.
n =1
390 ® Operations Research
End of week Individual replacement Total cost = Individual + Group Rs. Average cost Rs.
1 150 75.00 + 100 = 175.00 175.00
2 523 261.50 + 100 = 361.50 180.75
3 932 466.00 + 100 = 566.00 188.86
4 1,369 684.50 + 100 = 784.50 196.12
It is observed from the above table that the average cost Rs. 175.00 for week 1 is minimum for
group replacement, and it is lower than Rs. 196.20 for individual replacement. So, the group
replacement policy is better.
EXAMPLE 13.15: There are 10,000 light bulbs, all of which must be kept in working order. If
a bulb fails in service, it costs Rs. 1.00 to replace it, but if all the bulbs are replaced in the same
operation, it costs only Rs. 0.35 per bulb. If the proportion of bulbs failing in successive time
intervals is known, decide the best replacement policy. Following mortality rates for the light bulbs
have been observed:
Week : 1 2 3 4 5 6
Probability of failure P(t) : 0.09 0.16 0.24 0.36 0.12 0.03
Solution: Let Nn denote the number of replacement at the end of nth week. Given N0 = 10,000.
Then
N1 = N0P1 = 900
N2 = N0P2 + N1P1 = 1,681
N3 = N0P3 + N1P2 + N2P1 = 2,695
N4 = N0P4 + N1P3 + N2P2 + N3P1 = 4,324
N5 = N0P5 + N1P4 + N2P3 + N3P2 + N4P1 = 2,747
N6 = N0P6 + N1P5 + N2P4 + N3P3 + N4P2 + N5P1 = 2,599
6
Expected life = Â xi P ( xi )
i =1
= 1(0.09) + 2(0.16) + 3(0.14) + 4(0.36) + 5(0.12) + 6(0.03)
= 3.35 weeks.
Chapter 13: Replacement Models ® 391
The average number of failures per week is = N/mean age = 10,000/3.35 = 2,985 bulbs.
Hence, the total cost of individual replacement @ Rs. 1.00 per bulb is Rs. 2,985 * 1.00 = 2,985.
Since the replacement of all the 10,000 bulbs simultaneously costs Rs. 0.35 per bulb, the average
cost for different group replacement policies is given below.
The average cost is lowest in the third week, so it is optimal to have group replacement after every
third week. Further, the average cost Rs. 2,925 for group replacement is lower than that of the
individual replacement which is Rs. 2,985. Hence, the policy of group replacement is better.
EXAMPLE 13.16: (a) At time zero, all items in a system are new. Each item has a probability p
of failing immediately before the end of the first month of life and a probability q = 1 – p of failing
immediately before the end of the second month. If all items are replaced as they fail, then show that
N
the expected number of failures f(x) at the end of the month x is given by f(x) = [1 – (–q)x+1]
1+q
where N is the number of items in the system.
(b) If the cost per item of individual replacement is C1 and the cost per item of group
replacement is C2, find the condition under which (i) a group replacement policy at the end of each
month is most profitable; (ii) no group replacement policy is better than that of pure individual
replacement.
Solution: (a) Let Ni be the expected number of items to fail at the end of the ith month. Then
N0 = number of items in the system in the beginning (=N)
N1 = N0p = number of failures at the end of the first month = N(1 – q)
N2 = expected number of failures at the end of second month
= N0q + N1p = Nq + N1(1 – q) = Nq + N(1 – q)2 = N(1 – q + q2)
N3 = N (1 – q + q2 – q3)
Nk = N [1 – q + q2 – q3 + º + (–q)k]
Nk+1 = Nk–1q + Nk p = N [1 – q + q2 – q3 + º + (–q)k+1]
By mathematical induction, the expected number of failures, f(x) at the end of the month x is given
N
by f(x) = N [1 – q + q2 – q3 + º + (–q)x] = {1 – (–q)x+1}.
1+q
(b) In the steady-state, the expected number of failures tends to f(x) Æ N/(1 + q) as x Æ •,
q < 1. Here 1 + q denotes the mean age at failure. Then, the average cost per month for an individual
replacement policy @ C1 per item will be NC1/(1 + q) and that for group replacement policy at the
end of every month is NC2 + NC1p = NC2 + NC1 (1 – q).
392 ® Operations Research
(i) A group replacement policy at the end of each month is the most profitable when
NC2 + NC1(1 – q) < NC2 and NC1/(1 + q) > NC2.
(ii) No group replacement policy is better than a policy of pure individual replacement, when
NC2 > NC1/(1 + q) and NC2 + NC1(1 – q) > NC2.
EXAMPLE 13.17: (a) An airline requires 200 assistant hostesses, 300 hostesses and 50
supervisors. Girls are recruited at age 21, and are still in service, retire at the age of 60. Given life
table
Age 21 22 23 24 25 26 27 28
No. in service 1,000 600 480 384 307 261 228 206
Age 29 30 31 32 33 34 35 36
No. in service 190 181 173 167 161 155 150 146
Age 37 38 39 40 41 42 43 44
No. in service 141 136 131 125 119 113 106 99
Age 45 46 47 48 49 50 51 52
No. in service 93 87 80 73 66 59 53 46
Age 53 54 55 56 57 58 59
No. in service 39 33 27 22 18 14 11
Determine (i) How many girls should be recruited each year? (ii) At what age should promotion take
place?
(b) For the above data, an airline has staff whose ages are distributed in the following table. It
is estimated that for the next two years, staff requirement will increase by 10% per year. If girls are
to be recruited at the age of 21, how many should be recruited for the next year and at what age will
promotion take place?
Assistants
Age 21 22 23 24 25
Number 90 50 30 20 10 Total = 200
Hostesses
Age 26 27 28 29 30 31 32 33 34
Number 40 35 35 30 28 26 20 18 16
Age 35 36 37 38 39 40 41
Number 12 10 8 – 8 8 6 Total = 300
Supervisors
Age 42 43 44 45 46 47 48 49 50 51
Number 5 4 5 3 3 3 6 2 – –
Age 52 53 54 55 56 57 58 59
Number 4 3 5 – 3 2 – 2 Total = 50
Chapter 13: Replacement Models ® 393
Solution: The total number of girls recruited at age 21 and those serving up to the age of 59 will
be equal to 6,480 whereas the airline requires 550 (=200 + 300 + 50) girls in all. The recruitment
every year is 1,000 when the total number of girls is 6,480 after 59 years. Therefore, in order to
maintain a requirement of 550 hostesses, we should recruit (550 * 1,000)/6,480 H ª 85 girls every
year.
If we want to promote the assistant hostesses at the age x, then up to the age (x – 1), we need
200 assistant hostesses. Among 550, there are 200 assistant hostesses. Therefore, out of total 1,000,
there will be (200 * 1,000)/550 ª 364 assistant hostesses, and from the life table, this number is
available up to the age of 24 years. Hence, the promotion of assistant hostesses will be due in
25th year.
Also, out of 550 recruitments, we need only 300 hostesses. Therefore, if we recruit 1,000 then
we shall require (300 * 1,000)/550 ª 545 hostesses.
Hence, the number of hostesses and assistant hostesses in a recruitment of 1,000 will be 909
(=364 + 545). So, we need only 1,000 – 909 = 91 supervisors, whereas at the age of 46 only 86 will
survive. Hence, the promotion of hostesses to supervisors will be due in 46th year.
(b) First we compute the expected number of survivals from supervisors for one year, using life
Number in service at 42
table. The probability of being in service at 42 = and so on.
Number in service at 41
From the above table, we observe that after one year only 43 supervisors will be in the service. Also,
there is 10% increase in the posts, i.e. there will be 55 posts of supervisors after one year and only
43 remain in the service. Hence, 12 hostesses are to be promoted on the basis of the age.
394 ® Operations Research
Now, there are 6 hostesses of age 41. Their probability of survival for one year is 0.952.
Therefore, the expected number of hostesses aged 41 who will be in the service for one year more
i.e. up to 42 years of age is 5.712 (=6 * 0.952).
Similarly, there are 8 hostesses of age 40 years with probability of survival for one year being
0.957, 8 * 0.957 = 7.656 hostesses will be in service for one more year, i.e. up to 41 years of age.
Thus, after one year from the present age (5.712 + 7.656) = 13.3, senior most hostesses will be
of age 42 and 41 years and we want to promote 12 out of them. Hence, all hostesses of age 41 and
42 and one of age 43 will be promoted as supervisors after one year.
EXAMPLE 13.18: A research team is planned to raise a strength of 50 chemists and then to
remain at that level. The wastage of recruits, depending on their length of service, is as follows:
Year 1 2 3 4 5 6 7 8 9 10
Total % who have left at the end of the year 5 36 56 63 68 73 79 87 97 100
What is the recruitment per year necessary to maintain the required strength? There are 8 senior posts
for which the length of service is the main criterion. What is the average length of service after which
the new entrant expects promotion to one of the posts?
Solution: The computation of probability of a person being in service at the end of the year is
exhibited in the following table.
Thus, if 100 chemists are appointed each year then the total number of chemists serving in the
laboratory would have been 436. Thus, in order to maintain a strength of 50 chemists, we must
recruit (100 * 50)/436 = 12 chemists every year.
If P(n) denotes the probability of a person to be in the service at the end of the nth year, then
out of 12 recruits, the total number of survivals at the end of year n will be 12 * P(n). The following
table is for the number of chemists in the service at the end of each year.
Year (n) 0 1 2 3 4 5 6 7 8 9 10
P(n) 1.00 0.95 0.64 0.44 0.37 0.32 0.27 0.21 0.13 0.03 0.00
No. of chemists = 12 * P(n) 12 11 8 5 4 4 3 2 2 0 0
Chapter 13: Replacement Models ® 395
Given that there are 8 senior posts for which the length of service is the main criterion. From
the above table, it can be observed that there are 3 persons in service during the 6th year, 2 persons
in 7th year, and 2 persons in 8th year, i.e. in all 7 persons are there in service from 6th year to
8th year which is less than the total number of senior posts. Hence, the promotion of the new entrant
will start by the end of the 5th year.
Theorem 13.5: The renewal rate of a machine is asymptotically reciprocal of the mean life of the
machine.
Proof: Let f(x) be the pdf of failure time of a machine. If Xi (i = 1, 2, 3, …) is life span for ith
machine then each X1, X2, … has the pdf of f(x). Let the machine fail (n – 1)-times during period
t, and as soon as the machine fails, it is immediately replaced by a similar type of a machine.
Suppose nth machine is in the service at the end of this period. Then X1 + X2 + … + Xn–1 < t and
ÏÔ r ¸Ô
X1 + X2 + … + Xn–1 + Xn > t. Denote P Ìt £ Â Xi £ t + Dt ˝ = fr(t)dt. As rth machine can fail during
ÓÔ i =1 ˛Ô
•
interval (t, t + Dt), we have h(t) = Â fr (t).
r =1
Therefore, if N machines are used at a time, the expected number of replacements at the end of the
t
tth period is equal to N Ú h ( y) dy.
0
•
[Note: It is not necessary that Ú h(t) dt, but the function h(t) possesses the additive property,
0
h(t2 – t1) = h(t2) – h(t1) for t2 > t1.]
The Laplace–Stieljes transform of functions h(t) and f(t) are defined as
• •
- zt - zt
H(z) = Ú e h(t ) dt and F(z) = Úe f (t ) dt
0 0
•
È• ˘ • È• ˘ •
F ( z)
Í Â fr (t ) ˙ = Â Í Ú e- zt fr (t ) ˙ = Â [ F (z )]r = 1 - F ( z)
- zt
Thus H(z) = Úe Í ˙
0 ÎÍ r =1 ˚˙ r =1 Î0 ˚ r =1
•
If the mean life of the machine is given by l = Ú x f ( x) dx then H(z) Æ 1/(lz) (neglecting higher
0
powers of z). Taking inverse Laplace transform of both sides h(t) Æ (1/l).
396 ® Operations Research
EXAMPLE 13.19: Suppose that the life X of electric bulb follows the gamma distribution
ap
P(x £ X < x + Dx) = e–axxrp–1 dx, (a > 0, 0 £ x < •). Determine the renewal rate for one point
(rp)
at the end of time period (0, t).
Solution: Using the additive property of gamma distribution, we have
ÔÏ Ô¸
r
a rp
fr (x) dx = P Ìt £ Â Xi £ t + D t ˝ = e - ax x rp -1 dx
ÔÓ i =1 Ô˛ (rp)
Therefore, by definition of renewal rate
• •
arp arp
h(t) = e  Â
- ax
x rp -1 Æ x rp -1 as t Æ •
r =1 (rp) r =1 (rp)
EXAMPLE 13.20: A certain piece of equipment is extremely difficult to adjust. During a period
when no adjustment is made, the running cost increases linearly with time at a rate b rupees each
hour. The running cost immediately after an adjustment is not known precisely until the adjustment
has been made. Before the adjustment, running cost x is deemed to be random variable with
probability density function f(x). If each adjustment cost is k rupees, when should the replacement
be made?
Solution: The running cost x after adjustment is a random variable with probability density
function f(x). Let X be the maximum value of x, such that 0 £ x < X. Now if the adjustment is made
when the running cost is equal to z, there may arise two possibilities: (a) z > X and (b) z < X.
Case (a): Let the initial cost at time t = 0 be Rs. X and suppose that the adjustment is made
after time t hours. Then, the running cost at time t will be equal to Rs. (x + bt) and hence,
t = (z – x)/b. If C(z) denotes the total cost during the period of one adjustment to another then
C(z) = Cost of adjustment + total running cost
t
(z 2 - x 2 )
= k + Ú ( x + bt ) dt = k + 2b
0
C (z ) kb (z + x )
Average cost per hour = = +
t ( z - x) 2
Therefore, the expected cost per hour is
x
Ê C ( z) ˆ Ê kb z + xˆ
E [C(z)] = E Á
Ë t ˜¯
= Ú ÁË z - x + 2 ˜¯ f ( x ) dx
0
d d2
For minimum value of E [C(z)], we need to set E [C(z)] = 0 and E [C(z)] > 0.
dz dz 2
x x
d d Ê kb z + xˆ d Ê kb z + xˆ
Now
dz
E [C(z)] =
dz Ú ÁË z - x + 2 ˜¯ f ( x ) dx = Ú dz ÁË z - x + 2 ˜¯ f ( x ) dx
0 0
x
Ê - kb 1ˆ
x
1 1
= Ú ÁË
( z - x )2
+
2 ˜¯
f ( x ) dx = 0 implies Ú (z - x )2
f ( x ) dx =
2 kb
.
0 0
Chapter 13: Replacement Models ® 397
When the functional form of f(x) is known, the value of z can be easily determined from the
above relation.
In case (b), when z < x, it is left for the reader to show that the minimum of z does not occur.
Hence, the minimum value of z can be determined only in the first case.
EXAMPLE 13.21: A piece of equipment can fail completely, so that it has to be scrapped (no
salvage value), or may suffer a minor defect which can be repaired. The probability that it will not
be scrapes before age t is f(t). The conditional probability that it will need a repair in the time interval
(t, t + dt), knowing that it was in running order at age t, is r(t) dt. The probability of a repair or
complete failure is dependent only on the age of the equipment, and not on the previous repair
history. Each repair costs Rs. C and completes replacement costs Rs. K. For some considerable time,
the policy has been to replace only on failure.
(a) Derive a formula for the expected cost per unit time of the present policy of replacing only
on failure.
(b) It has been suggested that it might be cheaper to scrape equipment at some fixed age T,
thus avoiding the higher risk of repairs with advancing age. Show that the expected cost
T
k + C Ú f (u) r (u) du
0
per unit of time of such policy is T
Ú f (u) du
0
Solution: The probability that the equipment is not scrapped before age t is f(t). As the equipment
x
will evidently fail at some time, we must have Ú f (t ) dt = 1. Also, when it is known that the
0
equipment was running at age t, the probability that the equipment requires repair in time interval
(t, t + dt) is given by r(t) dt.
(a) Now the probability that the equipment requires repairs between the age (u, u + du) is
f(u) r(u) du.
x
Therefore, the expected cost of repair is C Ú f (u) r (u) du and the total expected cost is
0
x
k + C Ú f (u) r (u) du x •
= k + C Ú f (u) r (u) du since Ú f (u) du
0
•
=1
Ú f (u) du
0 0
0
(b) If we have a policy of scrapping at age T, the total expected cost of repair is
T Ê T ˆ
C Ú f (u) r (u) du and the total expected cost up to age T is Á k + C Ú f (u) r (u) du ˜ . Hence,
0 Ë 0 ¯
T
k + C Ú f (u) r (u) du
0
the expected cost per unit of time will be T
.
Ú f (u) du
0
398 ® Operations Research
REVIEW EXERCISES
1. The costs per year of running a truck whose purchase price is Rs. 30,000 are as follows:
Year 1 2 3 4 5 6 7
Running cost (Rs.) 5,000 6,000 7,000 9,000 11,500 14,000 17,000
Resale cost (Rs.) 15,000 7,500 3,750 1,875 1,000 1,000 1,000
Determine when is the replacement due.
[Ans. End of 5th year]
2. A firm is considering replacement of a machine whose cost price is Rs. 12,200 and the
scrape value is Rs. 200. The operating costs found from experience are as follows:
Year 1 2 3 4 5 6 7 8
Operating cost (Rs.) 200 500 800 1,200 1,800 2,500 3,200 4,000
When should the machine be replaced?
[Ans. End of 6th year]
3. A truck owner finds from his past records that the operating costs per year of a truck whose
purchase price is Rs. 8,000, are as follows:
Year 1 2 3 4 5 6 7 8
Running cost (Rs.) 1,000 1,300 1,700 2,200 2,900 3,800 4,800 6,000
Resale cost (Rs.) 4,000 2,000 1,200 600 500 400 400 400
Determine at what time it is profitable to replace the truck.
[Ans. End of 5th year]
4. A new tempo costs Rs. 8,000 and may be sold at the end of any year at the following prices:
Year 1 2 3 4 5 6
Running cost (Rs.) 1,000 1,200 1,500 2,000 3,000 5,000
Resale cost (Rs.) 5,000 3,300 2,000 1,100 600 100
It is not only possible to sell tempo after use but also to buy a second hand tempo. It may
be cheaper to do so than to replace with a new tempo.
Year 0 1 2 3 4 5
Purchase cost (Rs.) 8,000 5,800 4,000 2,600 1,600 1,000
What is the age to buy and sell the tempo to minimize the average annual cost?
[Ans. End of 5th year]
5. Machine A costs Rs. 3,600. Annual operating costs are Rs. 400 for the first year and then
increase by Rs. 360 every year. Assuming that machine A has no resale value, determine the
best replacement age. Another machine B, which is similar to machine A, costs Rs. 4,000.
Annual operating costs are Rs. 200 for the first year and then increase by Rs. 200 every year.
It has resale value of Rs. 1,500 for the first year, Rs. 1,000 for the second year, and Rs. 500
for the third year. It has no resale value during fourth year and onwards. Which machine
would you prefer to purchase?
[Ans. Replace machine A at the end of 5th year and
B at the end of 6th year; machine B should be purchased]
Chapter 13: Replacement Models ® 399
6. The data on the operating costs per year and resale price of equipment A whose purchase
price is Rs. 10,000 is given below:
Year 1 2 3 4 5 6 7
Running cost (Rs.) 1,500 1,900 2,300 2,900 3,600 4,500 5,500
Resale cost (Rs.) 5,000 2,500 1,250 600 400 400 400
(i) What is the optimum period for replacement?
(ii) When equipment A is 2 years old, equipment B which is a new model for the same
usage, is available. The optimum period for replacement is 4 years with an average cost
of Rs. 3,600. Should we replace equipment A with B? If so, when?
[Ans. Replace equipment A at the end of 5th year
and replace equipment A by B when it is 4 years old]
7. A truck is priced at Rs. 60,000 and the running costs are estimated at Rs. 6,000 for each of
the first four years, increasing by Rs. 2,000 per year in the fifth and subsequent years. If the
money is worth 10% per year, when should the truck be replaced? Assume that the truck will
eventually be sold at a negligible price.
[Ans. Replace at the end of 9th year]
8. An engineering company is offered two types of material handling equipment A and B. A
is priced at Rs. 60,000 including cost of installation, and the costs of operation and
maintenance are estimated to be Rs. 10,000 for each of the first five years, increasing by
Rs. 3,000 per year in the sixth and subsequent years. Equipment B with a related capacity
same as A, requires an initial investment of Rs. 30,000 but in terms of operation and
maintenance it costs more than A. These costs for B are estimated to be Rs. 13,000 per year
for the first six years, increasing by Rs. 4,000 per year for each year thereafter. The company
expects a return of 10% on all its investments. Neglecting the scrape value of the equipment
at the end of its economic life, determine which equipment should the company buy?
[Ans. Purchase B, replace it after 7 years]
9. The following failure rates have been observed for certain items:
End of month 1 2 3 4 5
Probability of failure of date 0.10 0.30 0.55 0.85 1.00
The cost of replacing an individual item is Rs. 1.25. The decision is made to replace all items
simultaneously at fixed intervals and also to replace individual items as they fail. If the cost
of group replacement is Rs. 0.50, what is the best interval of group replacement? At what
group replacement price per item would a policy of strictly individual replacement become
preferable to the adopted policy?
[Ans. Group replacement at the end of 3rd month,
at Rs. 391.25 for individual replacement]
10. The following failure rates have been observed for a certain type of light bulbs:
Week 1 2 3 4 5
% of failure by the end of the week 10 25 50 80 100
There are 1,000 bulbs in use, and it costs Rs. 2.00 to replace an individual bulb which has
burnt out. If all the bulbs were replaced simultaneously, it would cost Rs. 0.50 per bulb. It
is proposed to replace all bulbs at fixed intervals, whether or not they have burnt out, and
to continue replacing burnt out bulbs as they fail. At what intervals should all the bulbs be
replaced?
[Ans. Group replacement at the end of second week]
400 ® Operations Research
11. A computer contains 10,000 resistors. When any resistor fails, it is replaced. The cost of
replacing a resistor individually is Rs. 1.00. If all the resistors are replaced at the same time,
the cost per resistor would be reduced to Rs. 0.35. The percentage of surviving resistors, S(t)
at the end of month t and P(t), the probability of failure during the month t, are
t 0 1 2 3 4 5 6
S(t) 100 97 90 70 30 15 0
P(t) – 0.03 0.07 0.20 0.40 0.15 0.15
What is the optimum replacement plan?
[Ans. Group replacement at the end of three months]
12. A large TV manufacturer has to provide “service after sales” on an annual contract basis.
The company has now 600 TV sets and has to decide on service policy. The service is
restricted to replacement of minor parts. The failure pattern of these minor parts is as under:
Month 1 2 3 4 5 6 7
Number of failure after month of service 10 20 60 130 160 180 40
It costs Rs. 50 to replace minor parts as and when they fail. It costs Rs. 20 to replace minor
parts on a planned service basis, when parts are replaced even before failure. Find the
optimal replacement policy?
[Ans. Group replacement at the end of fourth month]
13. Calculate the probability of staff resignation in each year from the following survival table:
Year 0 1 2 3 4 5 6 7 8 9 10
No. of original staff in
service at the end of the year 1,000 940 820 580 400 280 190 130 70 30 0
14. Automobile batteries are manufactured by a firm at a factory cost of Rs. 20 each. The
mortality table for the battery life is given below. The batteries are covered under a guarantee
policy such that if a battery fails during the first month after purchase, full price of the new
battery is refunded; a failure in the second month carries a refund of 19/20 of the full price,
in the third month 18/20, and so on till the 20th month, during which a failure carries a
refund of 1/20 of the full price. What should be the break-even selling price of the batteries?
Year Probability of failure in Year Probability of failure in
next month next month
1 0.05 11 0.01
2 0.00 12 0.01
3 0.00 13 0.01
4 0.00 14 0.01
5 0.00 15 0.015
6 0.00 16 0.020
7 0.00 17 0.025
8 0.00 18 0.030
9 0.00 19 0.035
10 0.00 ≥ 20 0.785
Total 1.000
14.1 INTRODUCTION
Certain problems require decisions to be made at a number of stages for a component or for sub-
system and/or for a system in some particular sequence. Such problems are known as sequentially
decision problems or multistage decision problems. Richard Bellman, in the early 1950s, gave a
mathematical technique for the optimization of sequentially decision problems. This mathematical
technique is termed as dynamic programming (DP).
In DP, the multistage decision problem is decomposed into a series of single decision problems
so that the output of the one stage is the input of the succeeding stage, i.e. a N-variable problem is
represented in a series of N-single variable problems which are to be solved successively. These
N-single variable problems are considered as sub-programs and comparatively easier to solve than
the original ones. The decomposition to N sub-problems is done in such a way that the optimal
solution of the given N-variables problem can be obtained from the optimal solutions of the N
sub-programs.
Using the state variables in a particular stage, a recursive function called return function is
constructed. This return function is used to arrive at an optimal solution in a stage under
consideration, which will affect the state of the system at the next stage.
For a multistage decision process, the functional relationship among state, stage and decision is
as follows:
Let n be the stage number,
sn be the state input to stage n from stage (n + 1),
dn be the decision variable at stage n (independent of previous stages).
It represents the alternative to be selected while making decision at stage n.
fn [=rn (sn, dn)] be the return function for stage n.
These n-stages are interconnected by the relation (called transition relation):
sn–1 = sn * dn
i.e. Output at stage (n – 1) = (input to stage n) * (decision at stage n)
where * represents any mathematical operation depending on the problem.
3 9
2 5 8
7 7 3
4 6
6 7 6 9
1 3 6 9 11
10 5 5
7 8
5
4 7 10
10 3
Solution: Let us divide the problem into 5 stages. Let dn be the decision variable that defines the
immediate decision when there are n (n = 1, 2, 3, 4, 5)-stages to go.
3 9
2 5 8
7 7 3
4 6
6 7 6 9
1 3 6 9 11
10 5 5
7 8
5
4 7 10
10 3
Stage 5 Stage 4 Stage 3 Stage 2 Stage 1
sn be the state variables describing a specific city at any stage. D(sn, dn) be the distance
associated with the state variable sn, and the decision variable, dn for the nth stage. fn(sn, dn) be the
minimum distance for the last n-stages, given that the traveller is in state sn and selects dn as the
immediate destination. fn*(sn) be the optimal path (minimum distance) when the traveller is in state
sn with n more stages to go for reaching the destination.
We shall use the backward induction procedure. Start from destination city 11 and move
backward to be at stage 1. The recursive function is defined as
*
fn*(sn) = mini {D(sn, dn) + f n–1(dn)}; n = 1, 2, 3, 4.
*
where the minimum is to be taken over dn and f n–1 (dn)
is the minimum distance for the previous
stages.
In stage 1, from state s1 = 3 (city 8), s1 = 9 (city 9) and s1 = 8 (city 10), we have
D(8, 11) = 3, D(9, 11) = 9 and D(10, 11) = 8 respectively. Therefore, the optimal value of
f1*(s1) = 3 is minimum. Let us tabulate these values in Table 14.1.
404 ® Operations Research
Decision d1 Æ f1(s1, d1) = D(s1, d1)11 Minimum distance f1*(s1) Optimal decision
State s1 8 3 3 11
9 9 9 11
10 8 8 11
Now, let us move to stage 3. Suppose that the traveller is at stage s2 = 5 (city 5). Now he has to
decide whether he should go to either d2 = 9 (city 8) or d2 = 8 (city 9). Then
D(5, 8) + f1*(8) = 9 + 3 = 12 (to state s1 = 8)
or D(5, 9) + f1*(9) = 8 + 9 = 17 (to state s1 = 9)
Then f2(s2) = mini {12, 17} = 12 (to state s1 = 8) is the distance function from state s2 = 5.
Similarly, for state s2 = 6
D(6, 8) + f1*(8) = 7 + 3 = 10 (to state s1 = 8)
or D(6, 9) + f1*(9) = 6 + 9 = 15 (to state s1 = 8)
D(6, 10) + f1*(10) = 5 + 8 = 13 (to state s1 = 10)
Then f2(6) = 10 (to state s1 = 8).
For state, s2 = 7
D(7, 9) + f1*(9) = 5 + 9 = 14
D(7, 10) + f1*(10) = 3 + 8 = 11 (to state s1 = 10)
Then f2(7) = 11 (to state s1 = 10).
Decision d2 Æ f2(s2, d2) = D(s2, d2) + f1*(d2) Minimum distance f2*(s2) Optimal decision
8 9 10
State s2 5 12 17 – 12 8
6 10 15 13 10 8
7 – 14 11 11 10
Similarly, move backward to stage 4. Suppose the traveller is at stage s3 = 2 (city 2). He needs to
decide whether to go to stage 5 or 6 or 7. Then,
D(2, 5) + f2*(5) = 3 + 12 = 15
D(2, 6) + f2*(6) = 4 + 10 = 14 (to state s2 = 6)
Then f2(2) = 14 (to state s2 = 6).
D(3, 5) + f2*(5) = 6 + 12 = 18
D(3, 6) + f2*(6) = 7 + 10 = 17 (to state s2 = 6)
D(3, 7) + f2*(7) = 7 + 11 = 18
Chapter 14: Dynamic Programming ® 405
Decision d3 Æ f3(s3, d3) = D(s3, d3) + f 2*(d3) Minimum distance f3*(s3) Optimal decision
5 6 7
State s3 2 15 14 – 14 6
3 18 17 18 17 6
4 – 20 21 20 6
Decision d4 Æ f4(s4, d4) = D(s4, d4) + f 3*(d4) Minimum distance f4*(s4) Optimal decision
2 3 4
State s4 1 21 23 25 21 2
EXAMPLE 14.2: Divide a positive quantity c into n-parts so as to maximize their product.
Solution: Maxi Z = y1y2 … yn
subject to the constraints y1 + y2 + … + yn = c and yj ≥ 0, j = 1, 2, … , n
Let fn(c) denote the maximum product. Here n denotes the number of stages. The recurrence
relation is
fn(c) = maxi {xfn–1 (c – x)}, 0 < x £ c.
For stage 1, f1(c) = maxi {y1} = c.
For stage 2, divide c into two parts (say) x and c – x.
f2(c) = maxi {y1y2} = maxi {x (c – x)} = maxi. {x f1(c – x)}, 0 < x £ c.
For stage 3, we need to divide c into three parts, given the initial values of x which leaves c – x to
be further divided into two parts. Denote the maximum product for c – x into two parts by
f2(c – x).
Therefore, f3(c) = maxi {xf2 (c – x)}, 0 < x £ c
Continuing in a similar manner, we get fn(c) = maxi {xfn–1(c – x)}, 0 < x £ c.
For n = 2, the function x(c – x) attains its maximum value at x = c/2 and f2(c) = (c/2)2.
For n = 3, f3(c) = maxi {x [(c – x)/2]2}. This function attains its maximum value at x = c/3 and
f3(c) = (c/3)3.
In general, for n-stage problem, we assume that optimal policy is (c/n, c/n, …, c/n) and
fn(c) = (c/n)n for n = 1, 2, …, m.
Now for n = m + 1, the recursive equation is fm+1(c)
= maxi {xfm(c – x)}
ÏÔ Ê c - x ˆ m ¸Ô
= maxi Ì x Á ˝, 0 < x £ c
Ë m ˜¯ Ô
ÓÔ ˛
1 /( m +1)
Ê c ˆ
= Á
Ë m + 1 ˜¯
Chapter 14: Dynamic Programming ® 407
as the maximum value of x [(c – x)/m)m which is attained at x = c/(m + 1). Hence, the result holds
for n = m + 1. Therefore, by mathematical induction, the optimal policy is (c/n, c/n, …, c/n) and fn(c)
= (c/n)n.
ÔÏ Ê 5 - x ˆ Ô¸ Ê 5 ˆ
2 3
f3(5) = maxi {xf2(5 – x)} = maxi Ì x Á ˝ =
Ë 2 ˜¯ Ô ÁË 3 ˜¯
ÓÔ ˛
It is left for the readers to verify that the function x [(5 – x)/2)2] attains its maximum value at
x = 5/3. Hence, the required optimal policy is (5/3, 5/3, 5/3) with maxi Z = (5/3)3.
Team
A B C
Number of new scientist(s) 0 0.40 0.60 0.80
1 0.20 0.40 0.50
2 0.15 0.20 0.30
Define fj(xj) to be the value of the optimal allocation for team 1 through j, i.e. for j = 1,
f1(s, x1) = {p1(x1)}. Let fj (s, xj) be the probability associated with the optimum solution fj*(s),
ÏÔ 3 ¸Ô 3
j = 1, 2, 3. Then fj (s, xj) = pj (xj) * mini Ì ’ pi ( xi ) ˝ such that  xi = s.
ÔÓ i = j +1 Ô˛ i= j
s f3*(s) x3*
0 0.80 0
1 0.50 1
2 0.30 2
For j = 2 (two stage problem), we have f2(s, x2) = p2(x2) f3*(s – x2)
x2 0 1 2 f2*(s) x2*
s 0 0.60 * 0.80 0.48 0
1 0.60 * 0.50 0.40 * 0.80 0.30 0
2 0.60 * 0.30 0.40 * 0.50 0.20 * 0.80 0.16 2
x1 0 1 2 f1*(s) x1*
s 0 0.40 * 0.80 0.192 0
1 0.40 * 0.30 0.20 * 0.48 0.096 1
2 0.40 * 0.16 0.20 * 0.30 0.15 * 0.48 0.072 1
The optimal solution is x1* = 1 which makes s = 1 at stage 2, so that x2* = 0 which makes s = 1 at
stage 3, so that x3* = 1. Hence, the teams 1 and 3 should each receive one additional scientist. The
new probability that all three teams will fail would be 0.60.
EXAMPLE 14.6: A member of a certain political party is making plans for an upcoming
presidential election. He has received the services of six volunteer workers for precinct work and he
wishes to assign them to three precincts in such a way as to maximize their effectiveness. He feels
that it would be inefficient to assign a worker to more than one precinct, but he is willing to assign
no workers to anyone of the precincts if they can accomplish more in other precincts.
410 ® Operations Research
The following table gives the estimated increase in the plurality of the party’s candidate if it
were allocated various number of workers:
Precincts
Number of workers 1 2 3
0 0 0 0
1 25 20 33
2 42 38 43
3 55 54 47
4 63 65 50
5 69 73 52
6 74 80 53
How many of the workers should be assigned to each of the three precincts in order to maximize
total estimated increase in the plurality of the party’s candidate?
Solution: Here, stages are precincts. Since there are three precincts, we will divide the problem
into three stages. Let decision variables xj ( j = 1, 2, 3) be the number of workers at the jth stage from
previous one and pj(xj) be the expected plurality for the assignment of xj workers to precinct j. Thus,
the problem formulation is
Maximize z = p1(x1) + p2(x2) + p3(x3)
subject to the constraints: x1 + x2 + x3 = 6, x1, x2, x3 ≥ 0
Let s be the number of available workers for remaining j – precincts. Define fj (xj) be the value of the
optimal assignment for precinct 1 through 3. Then for stage 1, f1(s, x1) = {p1(x1)}. Let fj (s, xj) be
the profit associated with the optimum fj*(s), j = 1, 2, 3. Then f1*(s) = maxi {p1(x1)}, 0 £ x1 < s.
Thus, recurrence relation is
*
fj(s, xj) = pj (xj) + f j+1 (s – xj); j = 1, 2, 3
and fj*(s) = maxi { fj(s, xj)}, 0 £ xj £ s.
We will use backward induction. The optimal policy is denoted by xj*, j = 1, 2, 3.
The computations for one stage problem are as follows:
s f3*(s) x3*
0 0 0
1 33 1
2 43 2
3 47 3
4 50 4
5 52 5
6 53 6
For j = 2 (two stage problem), we have f2(s, x2) = p2(x2) + f3*(s – x2)
Chapter 14: Dynamic Programming ® 411
For j = 3 (three stage problem), we have f1(s, x1) = p1(x1) + f2*(s – x1)
The above computations suggest that the maximum increase in plurality is 129 for x1* = 2. Then
s = 6 – 2 = 4 for two stage problem which gives x2* = 3. Then s = 4 – 3 = 1 gives x3* = 1. Hence
the optimal solution is x1* = 2, x2* = 3, x3* = 1 and the maximum increase in plurality is 129.
EXAMPLE 14.8: Maximum z = x12 + 2x22 + 4x3, subject to the constraints x1 + 2x2 + x3 £ 8 and
x1, x2, x3 ≥ 0.
Solution: The three stages can be defined as follows:
s3 = x1 + 2x2 + x3 £ 8
s2 = x1 + 2x2 = s3 – x3
s1 = x1 = s2 – 2x2
412 ® Operations Research
EXAMPLE 14.9: Seven units of the capital can be invested in four activities with return from each
activity given in the following table. Find the allocation of the capital to each activity that will
maximize the total return.
Solution: Consider activity as a stage. So we are with four stage problem. Let xj ( j = 1, 2, 3, 4)
be the number of units to be invested at the jth stage, pj(xj) be the expected return from allocation
of xj units to activity j and s be the units available for j-remaining activities.
The DP formulation is
Maximize z = p1(x1) + p2(x2) + p3(x3) + p4(x4)
subject to the constraints x1 + x2 + x3 + x4 = 7 and xj ≥ 0, j = 1, 2, 3, 4.
The recurrence relation is
f1(s, x1) = {p1(x1)} i.e. f1*(s) = maxi {p1(x1)}, 0 £ x1 £ s.
and fj*(s) = maxi {pj (xj) + fj*(s – xj)}, 0 £ xj £ s, j = 1, 2, 3, 4.
We start with f4*(s)
and end at f1*(s).
Stage 1 computations:
s 0 1 2 3 4 5 6 7
f4*(s) 0 1 3 5 6 7 8 8
x4* 0 1 2 3 4 5 6 6 or 7
Chapter 14: Dynamic Programming ® 413
Stage 2 computations:
s x3 0 1 2 3 4 5 6 7 f3*(s) x*3
0 0 + 0 0 0
1 0 + 1 2 + 0 2 1
2 0 + 3 2 + 1 3 + 0 3 0,1,2
3 0 + 5 2 + 3 3 + 1 4 + 0 5 0,1
4 0 + 6 2 + 5 3 + 3 4 + 1 5 + 0 7 1
5 0 + 7 2 + 6 3 + 5 4 + 3 5 + 1 5+0 8 1,2
6 0 + 8 2 + 7 3 + 6 4 + 5 5 + 3 5+1 5+0 9 1,2,3
7 0 + 8 2 + 8 3 + 7 4 + 6 5 + 5 5+3 5+1 5+0 10 1,2,3,4
Stage 3 computations:
s x2 0 1 2 3 4 5 6 7 f2*(s) x2*
0 0+0 0 0
1 0+2 3 + 0 3 1
2 0+3 3 + 2 5 + 0 5 1,2
3 0+5 3 + 3 5 + 2 7 + 0 7 2,3
4 0+7 3 + 5 5 + 3 7 + 2 9 + 0 9 3,4
5 0+8 3 + 7 5 + 5 7 + 3 9 + 2 10 + 0 11 4
6 0+9 3 + 8 5 + 7 7 + 5 9 + 3 10 + 2 11 + 0 12 2,3,4,5
7 0 + 10 3 + 9 5 + 8 7 + 7 9 + 5 10 + 3 11 + 2 12 + 0 14 3,4
Stage 4 computations:
s x1 0 1 2 3 4 5 6 7 f1*(s) x1*
7 0 + 14 2 + 12 4 + 11 6+9 7+7 8+5 9+3 9+0 15 2,3
Thus, the maximum profit is 15. The optimal solution is x1 = 2 or 3 which makes s = 7 – 2 = 5 or
s = 7 – 3 = 4 for three stage problem. Therefore, x2 = 4 when x1 = 2 and x2 = 3 or 4 when
x1 = 3. Now x2 = 4 makes s = 5 – 4 = 1, which gives x3 = 1; x2 = 3 makes s = 4 – 3 = 1, which
gives x3 = 1 and x2 = 4 makes s = 1 – 1 = 0 which gives x4 = 0 and x3 = 0 makes s = 0 – 0 = 0,
which gives x4 = 0. Hence, there are three alternative solutions:
EXAMPLE 14.10 A company has five salesmen, who have to be allocated to three marketing
zones. The profit from each zone depends upon the number of salesmen working at that zone. The
expected profits for different number of salesmen in different zones, as estimated from the past
records, are given in the table. Determine the optimal allocation policy.
414 ® Operations Research
Solution: Define three marketing zones to be stages and the number of salesmen allocated to a
particular zone to be state variables. Let s denote the total number of salesmen available,
xj ( j = 1, 2, 3) be the number of salesmen allocated to marketing zone ( j = 1, 2, 3) and pj(xj) be
the profit from zone j when xj –salesmen are allocated.
The DP formulation is
Maximize z = p1(x1) + p2(x2) + p3(x3) + p4(x4)
subject to the constraints x1 + x2 + x3 + x4 £ 5 and xj ≥ 0 ( j = 1, 2, 3) are integers.
The recurrence relation
*
fj (s) = maxi {pj (xj) + f j+1 (s – xj)}, 0 £ xj £ s, j = 1, 2, 3
represent the optimal allocation of the salesmen to marketing zone j and xj is the initial allocation
to marketing zone. Let us solve three stage problem using backward induction.
Stage 1 computations:
s 0 1 2 3 4 5
f3*(s) 35 45 52 64 72 82
x3 0 1 2 3 4 5
Stage 2 computations:
s x2 0 1 2 3 4 5 f2*(s) x2
0 65 65 0
1 75 80 80 1
2 82 90 95 95 2
3 94 97 105 105 105 2,3
4 102 109 112 115 114 115 3
5 112 117 124 122 124 125 125 5
Stage 3 computations:
s x1 0 1 2 3 4 5 f1*(s) x1*
5 170 173 175 177 173 166 177 3
The amount of available resource for allocation to the current stage j ( j = 1, 2, …, n) and the
succeeding stages will be considered as the state variables. Let a1j, a2j, …, amj be the amount of
resources i (i = 1, 2, …, m) respectively allocated to an activity cj at the jth stage, and fj(a1j, a2j, …,
amj) be the optimum value of the objective function of LPP for stages j, j+1, …, n and for stages
a1j, a2j, …, amj. Thus, the LPP is a sequence of functions given by fn(a1n, a2n, …, amn) =
n m
maxi  cj x j over the decision variable xj subject to  aij x j £ bi , xj ≥ 0.
j =1 i =1
Since the maximum of both x1 + 99 and 225 – 17x1 occurs at x1 = 7, we have f1(25, 11)
= 7 + 9 * mini {11, 11} = 106. Therefore, x2 = mini {25 – 2x1, 11} = mini {11, 11} = 11. Hence,
the optimal solution is x1 = 7, x2 = 11, and maxi z = 106.
Now, the maximum value of x2 (satisfying all the constraints) is mini {2,500/10, 2,000/10,
450/(3/2)} = 200.
Therefore, mini {(2,500 – 5x2)/10, (2,000 – 10x2)/4, 450 – 3x2/2}
Ï 2,500 - 5 x2
ÔÔ , 0 £ x2 £ 125
10
= Ì
Ô 2,000 - 10 x 2 , 125 £ x £ 200
ÔÓ 4 2
Ï Ê 2,500 - 5x 2 ˆ
Ô100 x2 + 50 ÁË 10 ˜¯ , 0 £ x2 £ 125
Ô
Therefore, f2(a12, a22, a32) = maxi Ì
Ô100 x + 50 Ê 2,000 - 10 x2 ˆ , 125 £ x £ 200
Ô 2 ÁË 4 ˜¯ 2
Ó
ÏÔ 75 x2 + 12,500, 0 £ x2 £ 125
= maxi Ì = 21,875 at x2 = 125.
ÔÓ 25,000 - 25 x2 , 125 £ x 2 £ 200
Therefore, f2 (2,500, 2,000, 450) = 21,875 at x2 = 125.
Therefore, x1 = mini {(2,500 – 5x2)/10, (2,000 – 10x2)/4, 450 – 3x2/2}
= mini {187.5, 187.5, 262.5} = 187.5.
Hence, the optimal solution is x1 = 187.5, x2 = 125 and maxi z = 21,875.
Month 1 2 3 4
Purchase 0 500 0 0
Sale 200 0 0 500
EXAMPLE 14.15 (Production allocation problem): The owner of a chain of four grocery stores
has purchased six crates of fresh strawberries. The estimated probability distribution of potential
sales of the strawberries before spoilage differs among the four stores. The following table gives the
estimated total expected profit at each store, when it is allocated various number of crates:
Chapter 14: Dynamic Programming ® 419
For administrative reasons, the owner does not wish to split crates between stores. However, he is
willing to distribute zero crates to any of his stores. Find the allocation of six crates to four stores
as to maximize the expected profit.
Solution: Consider four stores as four stages. Let xj be the number of crates allocated at the jth
stage, j = 1, 2, 3, 4 and Pj (xj) be the expected profit from allocation of xj crates to store j. The
objective is
Maxi z = P1(x1) + P2(x2) + P3(x3) + P4(x4)
subject to the constraints x1 + x2 + x3 + x4 = 6 and xi ≥ 0, i = 1, 2, 3, 4
Let there be s crates left for the remaining j-stores and xj be the initial allocation. Define fj(xj)
as the value of the optimal allocations for stores 1 to 4.
Therefore, f1(s, x1) = {P1(x1)}
If fj(s, xj) denotes the profit associated with the optimum solution fj(s), j = 1, 2, 3, 4, then
f1(s) = maxi {P1(x1)}, 0 £ x1 £ s.
Therefore, the recurrence relation is given by
fj(s, xj) = Pj(xj) + fj+1(s – xj) and fj(s) = maxi {Pj(xj) + fj+1(s – xj)}, 0 £ xj £ s.
Let us solve the given problem by backward induction.
Stage 1 computations:
s 0 1 2 3 4 5 6
f4(s) 0 2 3 4 4 4 4
x4 0 1 2 3 3, 4 3, 4, 5 3, 4, 5, 6
Stage 2 computations:
f3(s, x3) = P3(x3) + f4(s – x3)
s x3 0 1 2 3 4 5 6 f3(s) x3
0 0 + 0 0 0
1 0 + 2 6 + 0 6 1
2 0 + 2 6 + 2 8 + 0 8 1, 2
3 0 + 4 6 + 3 8 + 2 8 + 0 10 2
4 0 + 4 6 + 4 8 + 3 8 + 2 8+0 11 2
5 0 + 4 6 + 4 8 + 4 8 + 3 8+2 8+0 12 2
6 0 + 4 6 + 4 8 + 4 8 + 4 8+3 8+2 8+0 12 2, 3
420 ® Operations Research
Stage 3 computations:
f2(s, x2) = P2(x2) + f3(s – x2)
s x2 0 1 2 3 4 5 6 f2(s) x2
0 0 + 0 0 0
1 0 + 6 2 + 0 6 1
2 0 + 8 2 + 6 4 + 0 8 0, 1
3 0 + 10 2 + 8 4 + 6 6 + 0 10 0, 1, 2
4 0 + 11 2 + 10 4 + 8 6 + 6 8+0 12 1, 2, 3
5 0 + 12 2 + 11 4 + 10 6 + 8 8+6 9+0 14 2, 3, 4
6 0 + 12 2 + 12 4 + 11 6 + 10 8+8 9+6 10 + 0 16 3, 4
Stage 4 computations:
f1(s, x1) = P1(x1) + f2(s – x1)
s x1 0 1 2 3 4 5 6 f2(s) x2
6 0 + 16 4 + 14 6 + 12 7 + 10 7+8 7+6 7+0 18 1, 2
The maximum profit is Rs. 18 and the optimum allocation of crates to the four stores is as follows:
REVIEW EXERCISES
1. Use DP to maximize z = y1 y2 y3, subject to the constraints y1 + y2 + y3 = 5 and y1, y2,
y3 ≥ 0.
[Ans. (5/3, 5/3, 5/3) and z = 125/27]
2. Use DP to maximize z = y12 + y22 + y32 subject to the constraints y1 y2 y3 = 6 and y1, y2,
y3 ≥ 0.
[Ans. (1, 6, 1) or (1, 1, 6) or (6, 1, 1) and z = 38]
3. Use DP to maximize z = (x1 – 2/3)2 – (x2 – 1)2, subject to the constraints x1 + x2 £ 2,
2x1 + x2 £ 3 and x1, x2 ≥ 0.
[Ans. (1, 1) and z = 1/9]
Chapter 14: Dynamic Programming ® 421
Area Salesmen
0 1 2 3 4 5 6
A 38 41 48 58 66 72 83
B 40 42 50 60 66 75 82
C 60 64 68 78 90 102 109
n 0 1 2 3 4 5
c(n) 10 13 20 40 70 100
t(n) – 32 21 11 5 0
s(n) – 25 17 8 0 0
If a new machine costs Rs. 50 and we have now a machine which is two years old, what
is the optimum policy of replacement? Solve the problem by dynamic programming.
7. The chemical manufacturer uses cupric chloride as the basic material for the production of
copper complex. For a smooth functioning of its production schedule, the company may
have enough stock every month of its basic material. The purchase price p(n) and the
demand d(n) forecast for the next six months by the management are given below:
Month n 1 2 3 4 5 6
p(n) 11 18 13 17 20 10
d(n) 8 5 3 2 7 4
Due to limited space, the warehouse cannot carry more than 9 units of the basic material.
The basic material is bought at the beginning of each month. When the initial stock is 2 units
and the final stock is required to be zero, the company wishes to find an ordering policy for
the next 6 months so as to minimize the total purchase cost.
[Ans. The quantity to be purchased at the beginning of the month
(7, 4, 9, 3, 0, 4) and the minimum cost = Rs. 357]
422 ® Operations Research
8. A shoe store sells rubber shoes for a particular season which lasts from December 1 through
February 29. The sales division has forecast the following demands for the next year.
All shoes sold by the store are purchased from outside sources. The following information
is known about this particular shoe.
(a) The unit purchase cost is Rs. 100 per pair, however, the supplier will only sell in lots
of 10, 20, 30 or 40 pairs. Any orders for more than 50 or less than 10 will not be
entertained.
(b) The following quantity discounts apply on lot size orders:
Lot size 10 20 30 40
Discount (%) 5 5 10 20
(c) For each order placed, the store incurs a fixed cost of Rs. 20. In addition, the supplier
charges an average amount of Rs. 50 per order to cover transportation costs, insurance,
packaging, and so on, irrespective of the amount ordered.
(d) Due to large in-process inventories, the store will carry no more than 40 pairs of shoes
in inventory at the end of any month. Carrying charges are Rs. 5 per pair per month,
based on the end of the month inventory. It is desirable to have both incoming and
outgoing seasonal inventory at zero.
Find an ordering policy which will minimize the total seasonal costs.
[Ans. If Q(n) stands for the quantity ordered at the nth period
then Q(1) = 0, Q(2) = 40, Q(3) = 40 and mini cost = Rs. 8,560]
9. The World Health Council is devoted to improving health care in the under-developed
countries of the world. It has now five medical teams available to allocate among three such
countries to improve their medical care, health, education and training programs. Therefore,
the council needs to determine how many teams (if any) to allocate to each of these countries
to maximize the total effectiveness of the five teams. The measure of effectiveness being
used is additional man-years of life. (For a particular country, this measure equals the
country’s increased life expectancy in year’s times.) The following table gives the estimated
additional man-years of life (in multiple of 1,000) for each country for each possible
allocation of medical teams:
No. of medical team(s) Thousands of additional man-years of life for each country
1 2 3
0 0 0 0
1 45 20 50
2 70 45 70
3 90 75 80
4 105 110 100
5 120 150 130
Chapter 14: Dynamic Programming ® 423
Determine how many teams should be allocated to each country for maximum effectiveness.
[Ans. (1, 3, 1)-medical teams to be allocated to the countries
(1, 2, 3) and maximum effectiveness is 170]
10. A ship is to be loaded with a stock of three items. Each unit of item n has a weight w(n)
and the value v(n). The maximum cargo weight the ship can take is five and the details of
the three items are as follows:
Find the most valuable cargo load without exceeding the maximum cargo weight by using
DP technique.
[Ans. (1, 1, 0) or (2, 0, 1), maximum value of load is 17]
15
Project Management
15.1 INTRODUCTION
At one point or another almost every organization will take on a large and complex project. A
construction company putting up an office building or laying a highway must complete thousands
of costly activities. A shipyard requires tens of thousands of steps in constructing an ocean-going
tugboat. An oil refinery about to be shut down for a major maintenance project faces astronomical
expenses if this difficult task is unduly delayed for any reason. Almost every industry worries about
how to manage similar large-scale, complicated projects effectively.
Large, often one-time, projects are difficult challenges to operations managers. The stakes are
high. Millions in cost overruns have been wasted due to poor planning on projects. Unnecessary
delays have occurred due to poor scheduling. And companies have gone bankrupt due to poor
controls.
Special projects that take months or years to complete are usually developed outside the normal
production system. Project organizations within the firm are set up to handle such jobs and are often
disbanded when the project is complete. The management of large projects involves three phases.
1. Planning
2. Scheduling
3. Control
not incorporate uncertainties in job times. Instead, it assumes that activity times are proportional to
the amount of resources allocated to them, and by changing the level of resources the activity times
and the project completion time can be varied. Thus, CPM assumes prior experience with similar
projects from which the relationships between resources and job times are available. CPM then
evaluates the trade-off between project costs and project completion time.
CPM is mostly used in construction projects where there is prior experience in handling similar
projects.
∑ Which are the noncritical activities, that is, the ones that can run late without delaying the
whole project’s completion?
∑ What is the probability that the project will be completed by a specific date?
∑ On any particular date, is the project on schedule, behind the schedule, or ahead of the
schedule?
∑ On any given date, is the money spent equal to, less than, or greater than the budgeted
amount?
∑ Are there enough resources available to finish the project on time?
∑ If the project is to be finished in a shorter amount of time, what is the best way to accomplish
this at the least costs?
You will note that we assigned each event a number. As you will see later, it is possible to
identify each activity with a beginning and ending event or node. For example, activity A in
Figure 15.1 is the activity that starts with event 1 and ends at node, or event 2. In general, we number
node from left to right. The beginning node, or event, of the entire project is number 1, while the
last node, or event, in the entire project bears the largest number. The last node shows the
number 4.
A 2 C
1 4
B 3 D
Figure 15.1
Chapter 15: Project Management ® 429
EXAMPLE 15.2: Consider seven jobs A, B, C, D, E, F and G with the following job sequence:
Job A precedes B and C
Job C and D precede E
Job B precedes D
Job E and F precede G
In the network (Figure 15.2), every arc (i, j) represents a specific job in the project. Node 1
represents the start of the project, whereas node 6 denotes the project’s completion time. The
intermediate nodes represent the completion of various stages of the project. The nodes of the project
network are generally called events.
F
A C E G
1 2 4 5 6
B D
3
Figure 15.2
An event is a specific point in time that marks the completion of one or more activities, well
recognizable in the project.
We can also specify the network by events and the activities that occur between events. The
following example shows how to develop a network based on this type of specification scheme.
Beginning with the activity that starts at event 1 and ends at event 2, we can construct the following
network (Figure 15.3).
2 4
1 6
3 5
Figure 15.3
All that is required to construct a network is the starting and ending events for each activity.
430 ® Operations Research
Given these data, you might develop the following network (Figure 15.4).
A 2 C E 5 G
1 4 7
B 3 D F 6 H
Figure 15.4
Look at activity F. According to the network, both activities C and D must be completed before
we can start F, but in reality, only activity D must be completed (see the table). Thus, the network
is not correct. The addition of a dummy activity and a dummy event can overcome this problem, as
shown in Figure 15.5.
Dummy event
C E
A 2 X 5 G
1 Dummy activity 7
B 3 4 6 H
D F
Figure 15.5
Now, the network embodies all of the proper relationships and can be analyzed as usual. A
dummy activity has a completion time, t of zero.
Chapter 15: Project Management ® 431
EXAMPLE 15.5: Consider a project with five jobs A, B, C, D and E with the following job
sequence:
Job A precedes C and D
Job B precedes D
Job C and D precede E.
The completion times for A, B, C, D and E are 3, 1, 4, 2, 5 days, respectively.
The project network is shown in Figure 15.6.
A C E
1 2 4 5
3 4 5
1 0 2
B
D
3
Figure 15.6
Arc (2, 3) (dotted line in the figure) represents a dummy job that does not exist in reality in the
project. The dummy activity is necessary so as to avoid ambiguity in the job sequence. The
completion time of the dummy job is always zero, and it is added in the project network whenever
we want to avoid an arc (i, j) representing more than one job in the project. In the figure, event 3
represents the completion of job B and the dummy job. Since the dummy job is completed as soon
as A is completed, event 3 in essence marks the completion of jobs A and B.
Activity A B C D E F G H I J K L M N
Immediate – – – A,B B,C A,B C D,E,F D G G H,J K I,L
predecessor
The use of the dummy 2–5 is very important here (Figure 15.7). It is necessary here because
if it is eliminated, node 5 becomes the ending node of activity B and the initial node of activity E,
implying that D and F require all A, B and C to be completed before their start, which is not the case.
The inclusion of this activity thus enables us to present the precedence relationships in a correct
manner.
432 ® Operations Research
D I
3 6 10
A F
L N
B E H
1 2 5 8 9 12
J M
C
G K
4 7 11
Figure 15.7
EXAMPLE 15.7: Consider the following information on the activities required for a project.
Activity: A B C D E F G H I J K L
Immediate predecessors: – – – A A E B B D,F C H,J G,I,K
Duration: 2 2 2 3 4 0 7 6 4 10 3 4
Finding the critical path: To estimate how long the project will require, we will have to determine
the critical path of this network. Since the work described by all the paths must be done before the
project is considered complete, we must find that path that requires most work, the longest path
through the network; this is called the critical path. If we want to reduce the time for the project,
we will have to shorten the critical path; that is, we will have to reduce the time of one or more
activities on that path—but first we have to find it.
When the network is larger, it is very tedious, often impossible, to find the critical path by listing
all the paths and picking the longest one. We need a more organized method. For this purpose, to
begin with, a value of 0 (zero) is assigned to the initial event of the project. Thus, each of the
activities initiated from the starting node of the network is assumed to start at time 0 (the beginning
of the day 1, say). The earliest finish time for each activity is obtained by adding the time duration
of the activity to its earliest start time.
We start at node 1 with a starting time we define as zero; we then compute an earliest start time
and an earliest finish time for each activity in the network. Look at activity A with an expected time
of 2 weeks.
Chapter 15: Project Management ® 433
To find the earliest finish time for any activity, we use this formula:
Earliest finish time = earliest start time + expected time
EF = ES + t
3
Earliest finish time
2
t = 2 weeks A
0
Earliest start time
1
Now we must find the ES time and the EF time for all the activities in the network.
According to the earliest-start-time rule, “since no activity can begin until all its predecessor
activities are complete, the earliest start time for an activity leaving any node is equal to the largest
earliest finish time of all activities entering that same node.”
Look at the first few activities in the network.
2 t=3 5
3 6
2 D
2
t=2 E
A t=4
0
6
5
1
In this instance, the earliest start time for activities D and E is 2, the earliest finish time for
activity A. Using this procedure we make what is called a Forward pass through the network to get
all the ES and EF times as shown in Figure 15.8. We can see right away from the earliest finish time
for activity L that it is going to take 19 weeks to finish this project, and that is only if all the activities
run on schedule.
2 t=3 5
3 6
2 D 6 6
2 E F
6 t=0
t=2 A t=4 t=4
5 I
6
0 10
0 2 t=7 9
t=2 2 15 t = 4 19
1 4 8 9
B 2 G L
0 15
t=6
C H K
t=2
8 t=3
2 t = 10 12
2 2 7
J 12
Figure 15.8
434 ® Operations Research
The second step in finding the critical path is to compute a latest start time and latest finish time
for each activity. This is done by using what is called a Backward Pass; that is, we begin at the
completion point, node 9, and—using a latest finish time of 19 weeks for that activity (which we
found in our forward pass method)—compute the latest finish time and latest start time for every
activity. What is the latest finish time? It is simply the latest time at which an activity can be
completed without extending the completion time of the network. In the same sense, the latest start
time is the latest time at which an activity can begin without extending the completion time on the
project. In a more formal sense, the latest start time can be computed with
Latest start time = latest finish time – expected time
LS = LF – t
For example, given the latest finish time for activity L of 19 weeks, then
LS (for activity L) = 19 – 4 = 15
According to the latest-finish-time rule, “the latest finish time for an activity entering any node is
equal to the smallest latest start time for all activities leaving that same node.”
Look at node 4 in Figure 15.9. The latest finish time for activity B entering that node is 6, the
smallest start time for the two activities leaving node 4.
8 t=3 11
3 6
7 D 11 11
7 E F
11 t=0
t=2 A t=4 t=4
5 I
11
5 15
4 8 t=7 15
t=2 6 15 t = 4 19
1 4 8 9
B 6 G L
0 15
t=6
C H K
t=2
12 t=3
2 t = 10 12
2 2 7
J 12
Figure 15.9
In Figure 15.9, we have shown the LS and LF times for all the activities in the network.
Now by comparing the earliest start time with the latest start time for any activity (that is, by
looking at when it can be started compared with when it must be started), we see how much free
time, or slack, that activity has. Slack is the length of time we can delay an activity without
interfering with the project completion. We can also determine slack for any activity by comparing
its earliest finish time with its latest finish time. Look at activity A on the network in Figures 15.8
and 15.9.
LF – EF for activity A = 7 – 2 = 5
LS – ES for activity A = 5 – 0 = 5
The formal statement of these two methods is
Slack = LF – EF or LS – ES
Chapter 15: Project Management ® 435
In the following table, we have shown LF, EF, LS, ES, and slack for all the activities in the network.
Those activities without any slack are C, J, K, and L. None of these can be delayed without delaying
the whole project. Thus, the critical path for the project is C–J–K–L. We will have to watch these
four activities especially closely; delay in any one of them will cause a delay in the project
completion. Delays in other activities (A, B, D, E, G, H and I) will not affect on-time project
completion (19 weeks) unless the delay is greater than the slack time an activity has. For example,
it is all right for activity G to fall 6 weeks behind the schedule because it has 6 weeks of slack; but
if it falls more than 6 weeks behind the schedule, it will delay completion of the project.
It can be observed that there may be more than one critical path in a given network. In case
of multiple critical paths, all activities on these paths would be critical.
We can also construct the network directly as follows involving only the early start and late start
calculations for events at nodes directly at the node [ES, LS] will be written at the node.
For the activities emanating from a given event, the ES time would be given by the earliest time
of it and the LS time by the latest time of it. In the forward pass, a 0 would be taken as the earliest
time for the initial event of the project and then for each subsequent event, the earliest time would
be taken as the latest of the EF times of the activities concluding on that event. See the [ES, LS]
entries in Figure 15.10.
t=3 [6,11]
[2,7] 3 6
D
E F
t=4 t=0
t=2 A t=4
5 I
[6,11]
[0,0] [15,15] [19,19]
t=2 t=7 t=4
1 4 8 9
B [2,6] G L
t=6
C H K
t=2
[2,2] t=3
t = 10
2 7 [12,12]
J
Figure 15.10
436 ® Operations Research
Similarly, the terminal event of the project would be assigned the latest time equal to its earliest
time (or other time if it is given and desired). Then, rolling back, the events are assigned the latest
times. If only one activity starts from the node representing a given event, then the latest time for
the event is taken to be the difference between the latest time of the head event of this activity and
the activity duration time. In case, however, more than one activity starts from this node, then the
minimum of such differences, as mentioned above, would be taken as the latest time for the event.
See the [ES, LS] entries in the following figure.
This method is to facilitate us in finding the critical path by calculating the slack at a node by
directly computing LS minus ES.
An alternative to depict the earliest and the latest timings for each of the activities is shown in
the following example. Notice that each circle representing an event is divided into three parts:
containing the event number, its earliest start time and its latest start time, as shown in the index.
EXAMPLE 15.8: Assume the following network (Figure 15.11) has been drawn and the activity
times estimated in days.
B D
2 4
0 A 1 C 3 E 4 F 5
1 3 1 2
Figure 15.11
2
ES 3
B D
2 4
0 A 1 C 3 E 4 F 5
0 1 1 3 4 1 7 2 9
Figure 15.12
Where two or more routes arrive at an event, the longest route time must be taken, e.g.
Activity F depends on completion of D and E. E is completed by day 5 and D is not complete until
day 7. Therefore, F cannot start before day 7.
The ES in finish event No. 5 is the project duration and is the shortest time in which the whole
project can be completed.
Chapter 15: Project Management ® 437
2
3 3 LS
B D
2 4
0 A 1 C 3 E 4 F 5
0 0 1 1 1 3 4 6 1 7 7 2 9 9
Figure 15.13
Starting at the finish event No. 5, insert the LS (i.e. day 9) and work backwards through the network,
deducting each activity duration from the previously calculated LS.
Where the tails of activities B and C join event No. 1, the LS for C is day 3 and the LS for B
is day 1. The lowest number is taken as the LS for event No. 1 because if event No. 1 occurred at
day 3 then activities B and D could not be completed by day 7 as required and the project would
be delayed.
Finding the critical path: Figure 15.13 shows that one path through the network (A, B, D, F) has
ES’s and LS’s which are identical. This chain of activities, which has the longest duration, is the
required critical path. The critical path can be indicated on the network either by a heavy line or
different colour or by two small transverse lines across the arrows along the path thus:
2
3 3
D
B 4
2
A F
0 1 C 3 E 4 5
0 0 1 1 3 4 6 1 7 7 9 9
1 2
Figure 15.14
Critical path implications: The activities along the critical path are vital ones which must be
completed by their ES/LS, otherwise the project will be delayed. The noncritical activities (in the
example above, C and E) have spare time or float available, i.e. C and/or E could take up to an
additional 2 days in total without delaying the project duration. If it is required to reduce the overall
project duration, then the time of one or more of the activities on the critical path must be reduced
perhaps by using more labour, or more or better equipment or some other method of reducing job
times.
438 ® Operations Research
15.9.1 Floats
Float or spare time can only be associated with activities which are non-critical. By definition,
activities on the critical path cannot have float. There are three types of float—total float, free float
and independent float. To illustrate these types of float, part of a network (Figure 15.15) will be used
together with a bar diagram (Figure 15.16) of the timings thus:
J 5 K 6 N
10 20 10 40 50
Day 10 20 30 40 50
Figure 15.16
(a) Total float: This is the amount of time a path of activities could be delayed without
affecting the overall project duration. (For simplicity, the path in this example consists of
one activity only, i.e. activity K).
Total float = Latest finish time – Earliest start time – Activity duration
Total float = 50 – 10 – 10 = 30 days
(b) Free float: This is the amount of time an activity can be delayed without affecting the
commencement of a subsequent activity at its earliest start time, but may affect float of a
previous activity.
Free float = Earliest finish time – Earliest start time – Activity duration
Free float = 40 – 10 – 10 = 20 days
(c) Independent float: This is the amount of time an activity can be delayed when all
preceding activities are completed as late as possible and all succeeding activities
completed as early as possible. Independent float, therefore, does not affect the float of
either preceding or subsequent activities.
Independent float = Earliest finish time – Latest start time – Activity duration
Independent float = 40 – 20 – 10 = 10 days
Chapter 15: Project Management ® 439
Notes:
(a) The most important type of float is total float because it is involved with the overall project
duration. On occasions, the term ‘float’ is used without qualification. In such cases assume
that total float is required.
(b) Total float can be calculated separately for each activity, but it is often useful to find the
total float over paths of non-critical activities between critical events. For example, in
Figure 15.16 of the previous example, the only non-critical path of activities is C, E for
which the following calculation can be made:
Non-critical path Time required Time available Total float over path
C, E 3 + 1 = 4 days 7 – 1 = 6 days = 2 days
If some of the ‘path float’ is used up on one of the activities in a path, it reduces the leeway
available to other activities in the path.
4
M
E
H
C G L N
1 3 6 7 8
A F
D K
B J
0 2 5
Figure 15.17
A dummy (4–6) was necessary because of the preceding activity requirements of activity L. If
activities E, H had not been specified as preceding activity L, the dummy would not have been
necessary.
440 ® Operations Research
The network is shown in the normal manner in the following figure (Figure 15.18) from which
it will be seen that the critical path is: A–C–G–L–N with a duration of 29 days.
4
18 22 M
E 3
3 H 1
1 C 3 G 6 L 7 N 8
9 9 17 17 23 23 25 25 29 29
8 6 2 4
A
9 D F 2 1 K
0 2
0 0 B
2 J 5
0 3
11 18 4 19 22
Figure 15.18
Non-critical path Time required Time available Total float over path
B, J, K 8 23 15
D, J, K 7 14 7
F, K 3 6 3
E, M 6 16 10
H, M 4 8 4
E, dummy 3 14 9
H, dummy 1 6 5
Now, we see one more method for calculating the critical path and the floats.
Chapter 15: Project Management ® 441
EXAMPLE 15.10: Consider the table summarizing the details of a project involving 14 activities.
E(6) J(5)
5
2 8
F(8)
A(2) N(7)
K(4)
B(6) G(3) L(3)
1 3 6 9
I(2)
4 7
Figure 15.19
Let Dij be the duration of the activity (i, j). ESj be the earliest start times of all the activities
which are emanating from node j. Lfj be the latest finish times of all the activities which are ending
at node j.
Determination of earliest start times (ESj): During forward pass, use the following formula to
compute earliest start times for all nodes:
ES j = max ( ESi + Dij )
i
The calculations of ESj are summarized below.
Node 1: For Node 1, ES1 = 0
Node 2: ES2 = ES1 + D1,2 = 0 + 2 = 2
442 ® Operations Research
I(2)
[9,9] 4 7 [11,14]
Figure 15.20
Determination of latest finish times (LFi): During backward pass, the following formula is used to
compute the latest finish times (LFi):
Activity (i, j) Duration (Dij) Total float (TFij) Free float (FFij)
1–2 2 6 0
1–3 6 0 0
1–4 4 5 5
2–5 6 7 0
2–6 8 6 6
3–4 3 0 0
3–6 3 7 7
4–6 7 0 0
4–7 2 3 0
5–8 5 7 7
6–8 4 0 0
6–9 3 8 8
7–9 13 3 3
8–9 7 0 0
444 ® Operations Research
Any critical activity will have zero total float and zero free float. Based on this property also, one
can determine the critical activities. From the above table one can check that the total floats and free
floats for the activities (1, 3), (3, 4), (4, 6), (6, 8) and (8, 9) are zero. Hence, they are critical
activities. The corresponding critical path is 1–3–4–6–8–9 (B–D–H–K–N).
a m m b
Figure 15.21 Beta distribution for job time.
Since the actual time may vary from its mean value, we need the variance of the job time. For most
unimodal distributions (with single peak values), the end values lie within three standard deviations
from the mean value. Thus, the spread of the distribution is equal to six times the standard deviation
value (s).
b-a
Thus, 6s = b – a or s=
6
The variance of the job time equals.
2
Ê b - aˆ
s2 = Á
Ë 6 ˜¯
(ii)
With the three time estimates on all the jobs, PERT calculates the average time and the variance
of each job using Eqs. (i) and (ii). Treating the average times as the actual job times, the critical path
is found. The duration of the project (T) is given by the sum of all the job times in the critical path.
But the job times are random variables. Hence, the project duration T is also a random variable, and
we can talk of the average length of the project and its variance.
The expected length of the project is the sum of all the average times of the jobs in the critical
path. Similarly, the variance of the project duration is the sum of all the variances of the jobs in the
critical path, assuming that all the job times are independent.
EXAMPLE 15.11: Assume that a simple project has the network shown in the Figure 15.22. The
activity times are in weeks and three estimates have been given for each activity in the order a, m,
b. The scheduled date for completion is week 19.
1 3
3 – 4.5 – 5.4
2 – 3.5 – 4 A C F
D
0.5 – 1 – 1.5 5.6 – 7 – 15
B E
0 2 4
5–6–8
4–5–6
Figure 15.22
The expected durations can be found using what is known as the PERT formula:
Optimistic time + Pessimistic time + 4 ¥ Most likely time
6
Critical path (B, D, F) expected duration
4 + 6 + 4(5)
B= = 5 weeks
6
5.6 + 15 + 4(7)
D= = 8.1 weeks
6
3 + 5.4 + 4(4.5)
F= = 4.4
6
17.5
446 ® Operations Research
If the critical activities were to occur at their optimistic times, event 4 would be reached in
12.6 weeks, but if the critical activities occurred at their pessimistic times, event 4 would be reached
in 26.4 weeks. As these durations span the scheduled date of week 19, some estimate of the
probability of achieving the schedule date must be calculated, as follows.
(a) Make an estimate of the standard deviation for each of the critical activities using
Pessimistic time - Optimistic time
6
6-4
i.e., standard deviation of Activity B = = 0.33
6
15 - 5.6
Activity D = = 1.57
6
5.4 - 3
Activity F = = 0.4
6
(b) Find the standard deviation of event 4 by calculating the statistical sum (the square root of
the sum of the squares) of the standard deviations of all activities on the critical path.
EXAMPLE 15.12: Consider a project consisting of nine jobs (A, B, º, I) with the following
precedence relations and time estimates.
Activity Predecessors Optimistic time (a) Most probable time (m) Pessimistic time (b)
A – 2 5 8
B A 6 9 12
C A 6 7 8
D B, C 1 4 7
E A 8 8 8
F D, E 5 14 17
G C 3 12 21
H F, G 3 6 9
I H 5 8 11
First we compute the average time and the variance for each job. They are tabulated as follows:
Figure 15.23 gives the project network, where the numbers on the arcs indicate the average job times.
Using the average job times, the earliest and latest times of each event are calculated. The critical
path is found as 1Æ2Æ4Æ5Æ6Æ7Æ8. The critical jobs are A, B, D, F, H and I.
[12,14]
3 G
C 12
7
5 9 4 13 6 8
1 2 4 5 6 7 8
A B D F H I
[0,0] [5,5] [14,14] [18,18] [31,31] [37,37] [45,45]
E 8
Figure 15.23
Let T denote the project duration. Then the expected length of the project is
E(T) = Sum of the expected times of jobs A, B, D, F, H and I
= 5 + 9 + 4 + 13 + 6 + 8 = 45 days
448 ® Operations Research
Z-scores at standard
deviation units for the
normal curve
–3 –2 –1 0 1 2 3
m – 3s m – 2s m–s m m+s m + 2s m – 3s
Figure 15.24
In our example, T is distributed normal with mean 45 and standard deviation 3. For any normal
distribution, the probability that the random variable lies within one standard deviation from the
mean is 0.68. Hence, there is a 68% chance that the project duration will be between 42 and 48 days.
Similarly, there is a 99.7% chance that T will lie within three standard deviations (i.e. between 36
and 54).
We can also calculate the probabilities of meeting specified project deadlines. For example, the
management wants to know the probability of completing the project by 50 days. In other words,
we have to compute Prob (T £ 50) where T ~ N (45, 32). This can be obtained from the tables of
normal distribution; however, the tables are given for a standard normal only whose mean is 0 and
standard deviation is 1.
From probability theory, the random variable Z = [T – E(T)]/s (T ) is distributed normally with
mean 0 and standard deviation 1. Hence,
Ê 50 - 45 ˆ
Prob (T £ 50) = Prob Á Z £ ˜¯ = Prob (Z £ 1.67) = 0.95
Ë 3
Thus, there is a 95% chance that the project will be completed within 50 days.
Suppose we want to know the probability of completing the project 4 days sooner than expected.
This means we have to compute
Ê 41 - 45 ˆ
Prob (T £ 41) = Prob Á Z £ = Prob (Z £ –1.33) = 0.09
Ë 3 ¯˜
Hence, there is only a small 9% chance that the project will be completed in 41 days.
Chapter 15: Project Management ® 449
Note: When multiple critical paths exist, the variance of each critical path may be different, even
though the expected values are the same. In such a circumstance, it is recommended that the largest
variance of T be used for probability estimates.
A(7) J(6)
Dummy
H(4)
[0,0] [7,7]
B(3) E(3)
1 3 5 [10,10] 8
[20,20]
C(4) F(5) K(3)
I(5)
G(3)
[4,5] 4 7 [15,17]
Figure 15.25
(a) The sum of the variances of all the activities on the critical path is:
0.11 + 1.78 + 0.00 + 4.00 = 5.89 weeks
Ê C - 20 ˆ
PÁZ £
2.43 ˜¯
= 0.84
Ë
From the standard normal table, the value of z is 0.99, when the cumulative probability is
0.84.
Therefore,
C - 20
= 0.99 or C = 22.4 weeks
2.43
The project will be completed in 22.41 weeks (approximately 23 weeks) if the probability
of completing the project is 0.84.
activity, its duration can be reduced to a certain extent. Shortening the duration of an activity is
known as crashing in the CPM terminology. The additional cost incurred in reducing the activity
time is called the crashing cost. A further important feature of network analysis is concerned with
the costs of activities and of the project as a whole. This is sometimes known as PERT/COST.
Figure 15.26 shows cost-time curves for two activities. For activity 5–6, it costs Rs. 300 to
complete the activity in 8 weeks, 400 for 7 weeks, and 600 for 6 weeks. Activity 2–4 requires
Rs. 3,000 of additional resources for completion in 12 weeks and 1,000 for 14 weeks. Similar cost-
time curves or relationships can usually be developed for all activities in the network.
500
2,000
400
300 1,000
6 7 8 12 14
Time (weeks) Time (weeks)
Figure 15.26
We learned earlier that the duration of the critical activities determines the project completion
time. Thus, by crashing the critical jobs, the project duration can be reduced. Of course, crashing the
critical activities increases the total direct cost of the project, but the reduction in project duration
may result in other advantages or returns that may offset this increased cost. These may include
indirect costs such as equipment rental, supervisory personnel, supplies, and other costs that are
directly proportional to the project duration. There may be other economic benefits in completing the
project ahead of schedule. For instance, a new product may capture a larger share of the market if
it is introduced before its competitor’s.
Penalties and bonuses: A common feature of many projects is a penalty clause for delayed
completion. Network costs analysis is often combined with a penalty and/or bonus situation with the
general aim of calculating whether it is worthwhile paying extra to reduce the project time so as to
save a penalty.
Thus, the total cost of the project is the sum of the direct costs (proportional to the activity times)
and the indirect costs (proportional to the project duration). The critical path method essentially
studies the trade-off between the total cost of the project and its completion time.
For the critical path analysis, it is assumed that every job has a normal completion time
(maximum time) if no additional resources were assigned, and a crash completion time (minimum
time) with the maximum amount of resources. In addition, a cost versus time relationship is available
for every job in the project. The project management problem is to determine the amount by which
the various jobs are to be crashed that will minimize the total cost of the project (direct and indirect).
452 ® Operations Research
EXAMPLE 15.14: Given the following information, determine the least cost of reducing the
project completion time by one week.
2 2 3
1 4 4
7 3 2
The second step is to locate that activity on the critical path with the smallest value of Ki. The
critical path consists of activities 1–3 and 3–4. Since activity 1–3 has a lower value of Ki, we can
reduce the project completion time by one week, to eight weeks, by incurring an additional cost of
Rs. 500.
We must be very careful in using this procedure. Any further reduction in activity time along
the critical path would cause the critical path also to include activities 1– 2, 2– 3 and 3– 4. In other
words, there would be two critical paths and activities on both would need to be “crashed” to reduce
the project completion time.
Method II:
EXAMPLE 15.15: Consider a project consisting of eight jobs (A, B, C, D, E, F, G, H). About each
job, we know the following:
Job Predecessors Normal time (days) Crash time (days) Cost of crashing per day
A – 10 7 4
B – 5 4 2
C B 3 2 2
D A, C 4 3 3
E A, C 5 3 3
F D 6 3 5
G E 5 2 1
H F, G 5 4 4
454 ® Operations Research
Giving the overhead costs as Rs. 5 per day, we want to determine the optimal duration of the project
in terms of both the crashing and overhead costs and to develop an optimal project schedule.
The project network and the critical path are shown in Figure 15.27.
[14,14]
D 4 F
[0,0] [10,10]
4 6
A H [25,25]
1 3 6 7
10 5 5 5
5 3
B C E G [20,20]
5
2 [5,7]
[15,15]
Figure 15.27
If all the jobs are done at their normal times, the project duration (length of the longest path)
is 25 days. Hence, under a “no crashing” schedule,
Total cost = Overhead costs + Crashing costs = 5(25) + 0 = 125
If all the jobs were crashed to their minimum time, then the project duration is 17 days. Under this
schedule, the total cost = 5(17) + 47 = 132. The project management problem is to determine the
optimal duration of jobs that will minimize the total cost.
The project completion time is 25 days, and the project network has two critical paths as shown
below in Figure 15.28.
A D F H
1 3 4 6 7
A D F H
1 3 5 6 7
Figure 15.28
Between the nodes 3 and 6 we have parallel critical paths. The critical activities are jobs A, D, E,
F, G and H. The total cost of the project under normal time is Rs. 125.
To reduce the project duration, it is necessary to reduce the duration of the critical jobs. Consider
the critical job H, which can be crashed by 1 day at a cost of Rs. 4. This reduces the project duration
by 1 day at a savings of Rs. 5 in the overhead costs. Hence, job H is crashed to its lowest limit of
4 days and the total cost is reduced to Rs. 124.
Consider the crashing of job A now. This also results in a net savings of Re. 1 in the total cost
for each day of crashing. But job A cannot be crashed to its minimum value of 7 days because when
A is crashed to 8 days, jobs B and C also become critical. This results in parallel critical paths
between nodes 1 and 3, and any reduction in A alone will not reduce the project duration. Hence,
job A is crashed only to 8 days, and the total cost is reduced to 122.
To reduce the project duration by one more day, we must crash job A by 1 day and either
job B or C by 1 day. The total cost of crashing A and B is Rs. 6, which is more than the savings
in the overhead costs. Similarly, crashing A and C is also not economical.
Chapter 15: Project Management ® 455
Now consider the critical jobs D, E, F and G. Since we have parallel critical paths between
nodes 3 and 6, we have to crash one job in the path to reduce the project length. This means we must
try four different combinations as shown in Figure 15.29.
Figure 15.29
Jobs Increase in crashing costs Decrease in overhead costs Net change in total cost
D and E 3 + 3 = 6 5 Increases by 1
D and G 3 + 1 = 4 5 Decreases by 1
F and E 5 + 3 = 8 5 Increases by 3
F and G 5 + 1 = 6 5 Increases by 1
From the above table, we find that the combination D and G alone is economical, and when we crash
both jobs D and G by one day, the total cost reduces to Rs. 121. No further crashing is economical.
Hence, the optimal project schedule is
Crash job A to 8 days
Crash job D to 3 days
Crash job G to 4 days
Crash job H to 4 days
Jobs B, C, E and F are completed at normal times 5, 3, 5 and 6 days, respectively. The optimal length
of the project is 21 days, and the minimum project cost is Rs. 121.
Method III:
EXAMPLE 15.16: A project has five activities and it is required to prepare the least cost
schedules for all possible durations from ‘normal time’—‘normal cost’ to ‘crash time’—‘crash cost’.
The cost slope has been calculated from the data given and inserted in the last column
(Figure 15.30).
1
4 4
D
3
C 14 14
A
E
0 B 2
0 0 9 9
Figure 15.30
(b) Reduce by 1 day the activity on the critical path with the lowest cost slope
Reduce activity C at an extra cost of Rs. 50
Project duration, 13 days
Project cost, Rs. 1,300
Note: All activities are now critical.
(c) Several alternative ways are possible to reduce the project time by a further 1 day but note
2 or 3 activities need to be shortened because there are several critical paths.
Possibilities available
Reduce by 1 day Extra costs Activities critical
A and B 60 + 70 = 130 All
D and E 40 + 80 = 120 All
B, C and D 70 + 50 + 40 = 160 All
A and E 60 + 80 = 140 A, D, B, E
An indication of the total extra costs apparently indicates that the second alternative
(i.e. D and E reduced) is the cheapest. However, a closer examination of the last alternative
(i.e. A and E reduced) reveals that activity C is non-critical and with 1 day float. It may
be recalled that activity C was reduced by 1 day previously at an extra cost of Rs. 50. If
in conjunction with A and E reduction, activity C is increased by 1 day, Rs. 50 is saved
and all activities become critical. The net cost, therefore, for the 12 day duration is 1,300
+ (140 – 50) = Rs. 1,390. The network is now as in Figure 15.31.
1
3 3 D
3
9
3 A (Crash) 12 12
C 4
5 E Duration, 12 days
Cost, Rs. 1,390
0 B 2 All activities critical
0 0 8 7 7
Figure 15.31
Chapter 15: Project Management ® 457
(d) The next reduction would be achieved by reducing D and E at an increase of Rs. 120 with
once again all activities being critical.
Project duration, 11 days
Project cost, Rs. 1,510
(e) The final reduction possible is made by reducing B, C and D at an increased cost of
Rs. 160. The final network (Figure 15.32) becomes:
1
3 3 D
3
A 3 (Crash) 7 (Crash) 10 10
C E
4 3 (Crash)
0 B 2 Duration, 10 days
Cost, Rs. 1,670
0 0 7 7 7 All activities critical
Figure 15.32
EXAMPLE 15.17: Consider two networks, developed on the basis of the data given in the table
using all normal times for the activities and the other using all crash times (see Figures 15.33 and
15.34). The critical path in the figures is shown by a heavy line. If the project is completed on a
normal basis, the completion time is 99 weeks and the project cost is Rs. 1,38,300. If all activities
are crashed, the project completion time reduces to 54 weeks with a completion cost of Rs. 2,35,200.
21 9
2 4 6
18 30
1 36 15 7
TE = 99
24 33
3 5
21
Figure 15.33
12 3
2 4 6
6 18
1 24 6 7
TE = 54
9 15
3 5
9
Figure 15.34
458 ® Operations Research
Activity Normal time Crash time Normal cost Crash cost Cost to expedite
(Weeks) (Weeks) (Rs.) (Rs.) (Rs./Week)
1–2 18 6 12,000 36,000 2,000
1–3 24 9 9,000 18,000 600
2–4 21 12 8,400 12,000 400
3–4 36 24 27,000 33,000 500
4–6 9 3 30,000 39,000 1,500
5–6 15 6 14,700 21,000 700
3–5 21 9 5,400 15,000 800
5–7 33 15 19,800 36,000 900
6–7 30 18 12,000 25,200 1,100
1 24 15 7
TE = 90
24 33
3 5
21
Figure 15.35
Step 2: The new critical path is 1–3–5–6–7 with a total completion time of 90 weeks. As in
step 1, we crash that critical activity which is least expensive to reduce, which, in this case, is activity
1–3. Let us reduce activity 1–3 from 24 weeks to 9 weeks for which the cost incurred will be
Rs. 9,000 (15 weeks ¥ Rs. 600 per week). The new network is given by Figure 15.36. In this network
we get a new critical path 1–2–4–6–7.
Step 3: On this critical path activity 2–4 is the least expensive to crash at Rs. 400 per week.
Proceeding as before, we crash this activity from 21 down to 12 weeks, thereby incurring a cost of
(9 weeks ¥ Rs. 400 per week) Rs. 3,600. This creates a new network and a new critical path as given
in Figure 15.37.
Chapter 15: Project Management ® 459
21 9
2 4 6
18 30
1 24 15 7
TE = 78
9 33
3 5
21
Figure 15.36
12 9
2 4 6
18 30
1 24 15 7
TE = 75
9 33
3 5
21
Figure 15.37
Step 4: Considering the activities on the new critical path 1–3–5–6–7, we observe that activity
5–6 is the least expensive to crash, at Rs. 700 per week. Let us crash activity 5–6 to its minimum
time of 6 weeks at a cost of (9 weeks ¥ Rs. 700 per week) Rs. 6,300. The consequent network and
the critical path are shown in Figure 15.38.
12 9
2 4 6
18 30
1 24 6 7
TE = 72
9 33
3 5
21
Figure 15.38
Step 5: Out of the activities on the new critical path 1–3–4–6–7, activity 6–7 is the least expensive
to crash at this point and can be crashed to 18 weeks, at a cost of (12 weeks ¥ Rs. 1,100) Rs. 13,200.
As a result, we get the new network and the critical path as shown in Figure 15.39.
460 ® Operations Research
12 9
2 4 6
18 18
1 24 6 7
TE = 63
9 33
3 5
21
Figure 15.39
Step 6: Of the activities on the new critical path 1–3–5–7 activity 3–5 being the least expensive
is crashed to 9 weeks at a cost of (12 weeks ¥ Rs. 800) Rs. 9,600. The resultant critical path is
illustrated in Figure 15.40.
12 9
2 4 6
18 18
1 24 6 7
TE = 60
9 33
3 5
9
Figure 15.40
Step 7: While examining the new critical path 1–3–4–6–7, we notice that all activities have been
crashed except activity 4–6, which we now proceed to crash to 3 weeks at a cost of (6 weeks ¥
Rs. 1,500) Rs. 9,000. The results of this action are shown in Figure 15.41.
12 3
2 4 6
18 18
1 24 6 7
TE = 54
9 33
3 5
9
Figure 15.41
Chapter 15: Project Management ® 461
None of the activities of the critical path can now be further crashed. In other words, we have
defined the longest reducible path through the network. The project cannot be completed in less than
54 weeks at this stage. Let us calculate our expenses of crashing some of the activities commencing
with step 1. The following table shows the results of our crashing program.
We have successfully reduced the project completion time of 54 weeks without increasing the cost
to the old crash figure of Rs. 2,35,200.
The next question is to explore the possibility of reducing the project cost even further but
without increasing the time beyond 54 weeks. In order to do this, we shall learn the concept of
decrashing or uncrashing.
2. Uncrashing the network
Consider Figure 15.36 after crashing. There are only four activities on the critical path. We can
attempt, therefore, the uncrashing of the non-critical activities (in other words, we can increase the
time of the non-critical activities) which amounts to reducing the project cost further.
First consider the most expensive activity that has been crashed. It is activity 1–2 at Rs. 2,000
per week. We can reduce the project cost more if we uncrash it. Later, we proceed to the next most
expensive activity to uncrash it, and continue till we reach a point where no further uncrashing is
possible. In other words, this stage gives us the least project cost with the time period of 54 weeks.
The uncrashing is tabulated below.
We can see this is the minimum project cost, with 54 weeks as project completion time. The
resulting network is shown in Figure 15.42.
15 3
2 4 6
18 28
1 24 15 7
TE = 54
9 33
3 5
12
Figure 15.42
The project cost for the crashed network is Rs. 1,95,000 from which we can subtract Rs. 9,900,
being the total gains of uncrashing, to give us a minimum project cost of Rs. 1,85,100. Please note
that all the paths in Figure 15.42 are critical paths.
To sum up:
∑ Locate the critical path of the normal network.
∑ Crash the least expensive activity on the critical path to get a new critical path with its least
expensive activity to crash. Proceed in the manner till we get a critical path on which all
activities are at their crash time (non-reducible critical path).
∑ Reverse the procedure by considering the non-critical activities and begin uncrashing by
choosing the most expensive activity and proceeding to the least expensive activity, allowing
uncrashing to the extent of critical path or to their normal times, whichever is shorter.
3. Important points for crashing networks
∑ Only critical activities affect the project duration, so take care not to crash non-critical
activities.
∑ The minimum possible project duration is not necessarily the most profitable option. It may
be cost-effective to pay some penalties to avoid highest crash costs.
∑ If there are several independent critical paths then several activities will need to be crashed
simultaneously. If there are several critical paths which are not separate, i.e. they share an
activity or activities, then it may be cost-effective to crash the shared activities, even though
they may not have the lowest cost slopes.
∑ Always look for the possibility of increasing the duration of a previously crashed activity
when subsequent crashing renders it non-critical, i.e. it has float.
∑ Cost analysis of networks seeks the cheapest ways of reducing project times.
∑ The crash cost is the cost associated with the minimum possible time for an activity, which
is known as the crash time.
∑ The average cost of shortening an activity by one time period (day, weeks, etc.) is known
as the cost slope.
∑ Least cost scheduling finds the cheapest method of reducing the overall project time by
reducing the time of the activity on the critical path with the lowest cost slope.
Chapter 15: Project Management ® 463
∑ The total project cost includes all activity costs not just those on the critical path.
∑ The usual assumption is that the cost slope is linear. This need not be so and care should
be taken not to make the linearity assumption when circumstances point to some other
conclusion.
∑ Dummy activities have zero slopes and cannot be crashed.
REVIEW EXERCISES
1. Draw the project network for the following activities and their predecessors.
Activity A B C D E F G H I J K L M
Immediate – – A B A,B C,D F,B E,G H,G I,F J,L A K
predecessor
2. Consider the following project activities and their duration.
Activity A B C D E F G H I J K L M N O P Q
Imm. Pred – – – A A B B C C D E F G H I J,K,L M,N,O
Duration 4 8 5 4 5 7 4 8 3 6 5 4 12 7 10 5 8
(months)
(a) Construct the CPM network.
(b) Determine the critical path.
(c) Compute total floats and free floats for non-critical activities.
3. Draw a network for the following activities and their predecessors.
6. Given the following information on a small project, draw a network based on this
information.
Activity A B C D E F G H
Immediate – A A B, C C D E F, G
predecessor
7. Consider the following project activities and their predecessors and time estimates.
Activity A B C D E F G H I
Predecessor – – A, B A, B B D, E C, F D, E G, H
Duration (days) 15 10 10 10 5 5 20 10 15
Determine the earliest completion time of the project, and identify the critical path.
8. Draw a network.
9. For a small project of 12 activities, the details are given below. Draw the network and
compute earliest occurrence time, latest occurrence time, critical activities and project
completion time.
Activity A B C D E F G H I J K L
Imm. Prede – – – B,C A C E E D,F,H E I,J G
Duration (days) 9 4 7 8 7 5 10 8 6 9 10 2
Chapter 15: Project Management ® 465
10. The activities involved in a garment manufacturing company are listed with their time
estimates as in the following table. Draw the network and carry out the critical path
calculations.
11. The information about various activities of a project and the precedence relationships are
given below. Draw a network using as few dummies as possible.
C
2 4
A
D E
1
B
F
3 5
The project executive has made estimates of the optimistic, most likely, and pessimistic time
(in days) for completion of the various activities as follows.
Activity Duration
Optimistic (a) Most likely (m) Pessimistic (b)
A 2 5 14
B 9 12 15
C 5 14 17
D 2 5 8
E 6 9 12
F 8 17 20
Draw the PERT Network. Indicate the expected total slack for each activity and hence
indicate the average critical path. Within how many days would you expect the project to
be completed with a 99% chance?
Chapter 15: Project Management ® 469
If the indirect cost per week is Rs. 300, find the optimal crashed project completion time.
21. Consider the project network given below.
2
G J
A D H I
2 2 2 2 2
B C E F
2 2
The data for normal times, crash times, and crashing costs are given below.
Let T represent the earliest completion time of the project. Determine the maximum and the
minimum value of T.
16
Sequencing
16.1 INTRODUCTION
Sequencing can be defined as an act of finding an ordering, or permutation, of a finite collection of
objects, like jobs, that satisfies certain conditions, such as precedence constraints.
To make the above definition clear, let us take an example. Suppose there are n-jobs (1, 2, 3…n)
and m machines (A, B, C,…). The order of processing each job through each machine is given. The
jobs are required to be processed one by one but parallely on the available machines. The total
number of ways in which these jobs can be performed in a sequence is (n!) m. The problem now
is to find out a sequence for processing the given jobs on the given machines such that the total
elapsed time for all the jobs is minimum.
16.2.1 Notations
tij = Processing time for job I on machine j.
Iij = Idle time on machine j from the end of job (i – 1) to the start of job i.
T = Total elapsed time for processing all jobs on given machines including idle time, if any.
16.2.2 Terminologies
1. Number of machines: The total number of available service facilities through which a job
has to pass before it finishes.
470
Chapter 16: Sequencing ® 471
2. Processing order: The order or the sequence in which the machines are required to
complete the job.
3. Processing time: The time required by a job on a single machine.
4. Idle time on a machine: The time for which the machine has no job to process, i.e. when
it is not giving service to a machine from the end of job (i – 1) to the start of job i.
5. Total elapsed time: The time interval between starting the very first job and completing the
last job performed in order of their machines, including the idle time for the machines.
The no passing rule: The rule says that the order in which jobs are performed on the machines
should be maintained. If n jobs are to be processed on three machines M1, M2 and M3 in order
M2M1M3, then each job should first reach machine M2, should finish its processing on M2, then to
M1, and should go to machine M3 only when the processing on M1 is over. The jobs will be
processed only when the machines are not processing any other job, otherwise it starts a waiting line
or joins a waiting line if it already exists. The waiting jobs will be processed as soon as the machines
become idle.
(e) Longest operation time: When the operations are scheduled in decreasing order of their
processing time, including their set-up time, the first operation to be processed will be the
one having the longest time. This method is also known as longest processing time as
set-up time is not considered in many cases.
(f) Earliest due date: The jobs are prioritized based on their due dates. The earlier is the due
date, the more is the priority. Earliest due dates usually improve the delivery reliability.
The number of operations and the sum of operations times are neglected.
(g) Initial slack time (IST): In this method, before the processing for any operation starts,
the total slack time for every operation is computed. The operation with the smallest slack
time gets the priority. Hence,
IST = Due date – Sum of operation times – Current date
(h) Dynamic slack time (DST): In this method, before the processing for any operation
starts, the total slack time for every operation is computed. The operation with the smallest
slack time gets the priority. Hence,
DST = Due date – Sum of remaining operation times – Current date
(i) Dynamic slack time per operation (DST/O): For each job the dynamic slack time
remaining per operation is computed. The operation with the smallest slack time per
operation takes the priority.
DST/O = Due date – Sum of remaining operation times – Current date/Number of
remaining operations
(j) Dynamic slack time ratio (DSTR): For each job the dynamic slack time ratio is
computed. The operation with the smallest slack time ratio takes the priority.
DSTR = Due date – Current date/Number of remaining operations
FCFS Start sequence Processing time Completion time Due date Tardiness
A 0 5 5 10 0
B 5 10 15 15 0
C 15 2 17 5 12
D 17 8 25 12 13
E 25 6 31 8 23
Slack calculation:
A (10 – 0) – 5 = 5
B (15 – 0) – 10 = 5
C (5 – 0) – 2 = 3
D (12 – 0) – 8 = 4
E (8 – 0) – 6 = 2
All the above sequencing rules can be compared on the basis of their tardiness as follows.
Average Maximum
Rule Average tardiness No. of jobs tardy
completion time tardiness
FCFS 18.60 9.6 3 23
DDATE 15.00 5.6 3 16
IST 16.40 6.8 4 16
SPT 14.80 6.0 3 16
Machines Jobs
J1 J2 J3
M1 8 5 10
M2 6 6 6
We could have 6 possible sequences for the jobs: 1–2–3, 1–3–2, 2–1–3, 2–3–1, 3–1–2, and 3–2–1.
For any sequence, machine M1 will start working at T = 0, and work till T = 8 + 5 + 10 = 23.
However, the utilization of M2 needs more attention due to the following reasons.
1. It will not work at the initial period when M1 is doing its first scheduled job. This hints that
we should try to do the shortest job on M1 first!
2. What happens if the second operation (operation on M2) for a job is very short? In this case,
M2 will finish this job, while M1 is still working on the first operation of the next job. This
will make M2 idle for some time. This hints that we should try to place jobs that have long
second operations in the beginning.
Chapter 16: Sequencing ® 475
In order to make it easy to identify the optimal sequence, we deliberately choose all equal
processing time on machine M2. Note that whatever sequence we use, it is clear that machine M1 will
begin at T = 0, and be fully utilized for the duration = sum of operation 1 durations for all jobs.
Now let us look at this more carefully, using the Gantt charts (Figure 16.1).
time 0 5 13 23 29
J2 J1 J3
M1
J2 J1 J3
M2
Therefore, all scheduling of jobs we perform must concentrate on trying to make the Gantt chart
for machine 2 as compact as possible. Clearly, we cannot do much better than this (since
machine 1 must operate till T = 23, and thereafter, Machine 2 still needs 6 units of time to complete
the last job on Machine 1).
It appears to make sense to always put the shortest job of Machine 1 at the beginning, for this
will minimize the initial idle time of M2.
Also, since Machine 2 must work on the second operation of the final job after all work on
Machine 1 is finished, it also makes sense to always put the shortest operation of the second machine
at the end of the sequence.
Now the question is, “What can we say about the jobs in between?” Mainly, we would like to
minimize the white portions as much as we can. How can we do this? Johnson noticed that this could
be done if
1. We perform the shortest machine 1 operations as early as we can. In the above Gantt chart,
if operation 1 of J1 becomes shorter, the first white strip becomes slimmer.
2. At the same time, we would like to perform jobs with the longest operation 2 as early as we
can. In the Gantt chart, as the length of operation 2 of J2 increases, it also eats up more of
the first white strip.
If there is a tie in selecting the minimum processing times, then there may be three situations.
(i) If they are on different machines, we can randomly pick either.
(ii) If both choices are on machine 1, pick the one with the longer operation 2 first.
(iii) If both are on machine 2, pick the one with the longer operation 1 first.
Step 3: Repeat Step 2 until list A is empty.
Step 4: Join list L1, list L2. This is the optimum sequence.
Step 5: Calculate the idle time for machines M1 and M2.
(a) Idle time for machine M1 = (total elapsed time) – (time when the last job in the sequence
finishes on machine M1).
(b) Idle time for machine M2 = time at which the first job in a sequence finishes on machine
n
1 + Â [{time when the kth job in a sequence starts on machine 2} – {time when the
k =2
(k – 1)th job in a sequence starts on machine 2}]
Machine Jobs
J1 J2 J3 J4 J5 J6
M1 1 5 8 7 3 3
M2 5 6 5 2 2 10
Step 2.2: Now, there are two shortest remaining jobs: t42, t52.
Since both are on machine 2, pick the one with the longer operation 1 first.
We select job 4. Remove job 4 from list A, add job 4 to the beginning of list L2.
L = {2, 3, 5, 6}, L1 = {1}, L2 = {4}
Step 2.3: Shortest remaining operation is t52, so we remove job 5 from list A, and add it to the
beginning of list L2.
L = {2, 3, 6}, L1 = {1}, L2 = {5, 4}
Step 2.4: Shortest remaining operation is t61, so we remove job 6 from list A, and add it to the end
of list L1.
L = {2, 3}, L1 = {1, 6}, L2 = {5, 4}
Chapter 16: Sequencing ® 477
Step 2.5: Now, there are two shortest remaining operations: t21, t32. Since they are on different
machines, we can randomly pick either. We select (randomly) job 2. Remove job 2 from list A, add
job 2 to the end of list L1.
L = {3}, L1 = {1, 6, 2}, L2 = {5, 4}
Step 2.6: Shortest remaining operation is t32. Remove job 3 from A, add to the beginning of L2.
L = {}, L1 = {1, 6, 2}, L2 = {3, 5, 4}
Step 3: List A is exhausted. Join L1 and L2, to get the optimum sequence.
{1, 6, 2, 3, 5, 4}
Step 4: The minimum elapsed time can now be computed as follows.
From the above table, it is obvious that the minimum total time to finish all the 6 jobs is 31 units
of time and idle time for machine 1 is 4 units of time (31 – 27) and for machine 2, 1 unit of time.
EXAMPLE 16.1: XYZ manufacturing company processes 6 different jobs on two machines A and
B. The number of units of each job and its processing times on A and B are given in the following
table. Find the optimum sequence, the total minimum elapsed time and idle time for each machine.
Therefore, the total elapsed time for all the jobs including the number of units is 159 minutes.
However, machine A lingers for 17 (159 – 142) minutes and machine B lingers for 3 minutes.
EXAMPLE 16.2: Six jobs have to be processed at three machines A, B and C in the order ABC.
The time taken by each job on each machine is indicated below. Each machine can process only one
job at a time.
Job J1 J2 J3 J4 J5 J6
Processing A 12 8 7 11 10 5
time in
minutes on B 3 4 2 5 1.5 4
machines C 7 10 9 6 10 4
Determine the sequence for the jobs so as to minimize the processing time.
Solution: Here,
min Ak = 5, max Bk = 5, min Ck = 4; k = 1, 2, …, 6
Since one of two conditions is satisfied by min Ak = max Bk, so the given problem can be converted
into a six jobs and two machines problems by considering G and H as the imaginary machines, such
that
Gk = Ak + Bk and Hk = Bk + Ck; k = 1, 2, …, 6
We proceed to make the consolidation table as shown below.
Using the optimum sequence algorithm, the following optimum sequences are easily obtained.
{J3, J2, J5, J4, J1, J6} or {J3, J5, J2, J4, J1, J6}
480 ® Operations Research
The total elapsed time can now be obtained as shown in the table below.
The above table indicates that the minimum total elapsed time is 62 minutes.
Idle time for machine A is 9 minutes (62 – 53), for C 16 minutes.
Idle time on machine B = (62 – 57) + 37.5 = 42.5 minutes.
Step 1: Find (i) min (ti1 ), (ii) min (tim ), and (iii) max (tij ) j = 2, 3, …, m – 1.
1£i £ n 1£ i £ n 1£i £ n
Step 3: If the inequalities of step 1 are not satisfied, the method fails. Otherwise go to step 3.
Step 4: Convert the m machine problem into two machine problem by introducing two imaginary
machines G and H, such that
tiG = ti1 + ti2 + … + ti(m–1) for i = 1, 2, …, n and
tiH = ti2 + ti3 + … + tim for i = 1, 2, …, n.
Step 5: Apply the Johnson’s rule discussed earlier for obtaining the optimal sequence of
performance of the jobs on G and H. The resulting sequence will also be optimal for the original
problem.
Note: In addition to the conditions given in step 4,
1. If ti1 + ti2 + … + ti(m – 1) = constant say K for all i = 1, 2, …, n, then generate optimal
sequence for n jobs and two machines M1 and Mm in the order M1Mm by using optimal
sequence algorithm.
2. If ti1 = tim and tiG = tiH for i = 1, 2, …, n, then n! number of the optimal sequence will exist.
Chapter 16: Sequencing ® 481
EXAMPLE 16.3: Solve the following sequencing problem giving an optimal solution when
passing is not allowed.
Machines Jobs
J1 J2 J3 J4
M1 5 7 10 9
M2 1 2 3 4
M3 5 4 3 2
M4 8 9 12 6
Solution: Here,
min (ti1 ) = 5 and min (ti 4 ) = 6
1£ i £ 4 1£ i £ 4
are satisfied, convert this problem into four jobs and two machines problem.
Also, ti2 + ti3 = 6 for all i = 1, 2, 3, 4, therefore the problem will reduce to an optimal sequence
for four jobs and machines M1 and M4 in the order M1M4. It means M2 and M3 have no effect on
optimality of the sequences.
Following the usual optimal sequence algorithm, the optimal sequence is: {1, 3, 2, 4}
The total elapsed time may be calculated as given in the following table.
Minimum elapsed time
The above table shows that the minimum total elapsed time is 54 hours. The idle time for
machine M1, M2, M3, M4, and M5 is 28, 36, 40, 38 and 17 hrs., respectively.
REVIEW EXERCISES
1. A company has jobs on hand from A to F. All the jobs have to go through two machines
M1 and M2. The time required, in hours, on each machine is given below:
A B C D E F
M1 3 12 18 9 15 6
M2 9 18 24 24 3 15
1 2 3 4 5
A 10 2 18 6 20
B 4 12 14 16 8
Determine a sequence for the jobs that will minimize the elapsed time T.
Chapter 16: Sequencing ® 483
3. A refrigeration company has six plants located in different parts of a city. Every year it is
necessary for each plant to be completely serviced. The servicing is done by two groups of
workers. The second group of workers performs the final overhauling of the refrigerators.
So, they cannot start the work until the first group have completed.
Plant P1 P2 P3 P4 P5 P6
Group 1 6 6 4 6 5 8
Group 2 4 2 10 5 3 6
5. A textile company has to process its raw materials through three stages of processing before
they are sent to the shopkeepers for selling. The time taken by each of the three stages for
processing the raw materials is given below.
Processing time in hours on machines
Find an orderly sequence of steps in which the items should be processed so as to minimize
the time taken to process all items through three stages.
484 ® Operations Research
6. Find a sequence that minimizes the total elapsed time required to complete the following
tasks on three machines in the order ABC.
7. A machine operator has to perform three operations: turning, threading and knurling on a
number of different jobs. The time required to perform these operations (in minutes) for each
job is known. Determine the order in which the jobs should be processed in order to
minimize the total elapsed time to finish all the jobs on all the machines one by one.
Jobs Time for turning Time for threading Time for knurling
1 6 16 26
2 24 12 28
3 10 8 18
4 4 12 24
5 18 6 16
6 22 2 26
8. A manufacturing firm works 80 hours a week and has a capacity of overtime work to the
extent of 40 hours in a week. It has received seven orders to be processed on three machines
M1, M2, and M3 in order M1, M2, M3 to be delivered in a week’s time from now. The process
times (in hours) are recorded in the table given below:
M1 M2 M3
1 14 4 12
2 16 4 10
3 12 2 8
4 12 6 8
5 14 6 4
6 16 4 2
7 10 8 10
The manager, who, in fairness, insists on performing the jobs in the sequence in which they
are received, is refusing to accept an eighth order, which requires 14, 4 and 10 hours
respectively on M1, M2, and M3 machines, because, according to him, the eighth job would
require a total of 122 hours for processing, which exceeds the firm’s capacity. Advise him.
Chapter 16: Sequencing ® 485
9. XYZ Pvt. Ltd. has three levels of managers to perform activities on the projects assigned to
them. The higher level managers cannot perform their activities until the middle level
managers have done their activities. Similarly, the middle level managers cannot proceed
until the lower level people have performed their activities. The time taken in days for six
activities for all three levels of managers is given in the following table. Suggest the order
in which the activities should be performed so as to minimize the total time for completing
the project.
Activities Higher level managers Middle level managers Lower level managers
1 24 12 14
2 20 10 12
3 18 12 12
4 28 8 10
5 14 4 8
6 18 8 8
17
Simulation
17.1 INTRODUCTION
The stepping stone of deep behind 5,000 years to China war games, called Weich`i and continues
through 1780, when the Persians used the games to test military strategies under simulated
environment. This inspired the great mathematician John Van Neumann to develop a quantitative
technique called Monte-Carlo simulation. Nowadays, simulation is one of the most widely used
quantitative analysis technique in almost all management problems. To simulate is to replicate the
features, appearance, and characteristics of a real system, i.e. to model a real world situation
mathematically and then to study its properties and operating characteristics to make the optimal
decision based on the results of the simulation. In the next section, we study the various steps
involved in the simulation process of a problem.
Formulate problem
and plan the study
Is
conceptual No
model valid?
Yes
Construct a computer
program and verify
Is
programmed No
model valid? Analyze output data
Yes
∑ Each simulation run is a managerial strategy, i.e. the simulation model does not produce
answers by itself. The solution and inferences differ from manager to manager, firm to firm.
Supply Demand
Available (kg) Number of days Available (kg) Number of days
10 40 10 50
20 50 20 110
30 190 30 200
40 150 40 100
50 70 50 40
The retailer buys the item at Rs. 20 per kg and sells at Rs. 30 per kg. If any of the commodity
remains at the end of the day, it has no salable value and is a dead loss. Moreover, the loss on any
unsatisfied demand is Rs. 8 per kg.
Chapter 17: Simulation ® 489
Given the following random numbers: 31, 18, 63, 84, 15, 79, 07, 32, 43, 75, 81, and 27. Use
the random numbers alternately to simulate supply and demand for six days sales.
Solution: The probability distributions for demand and supply, allotted random numbers (RN) to
each level of supply and demand in the proportions are as in the following table.
From the last column of the table, it is observed that the retailer makes a net profit of Rs. 400.
EXAMPLE 17.2: The output of a production line is checked by an inspector for three different
types of defects (say) A, B and C. If defect A occurs, the item is scrapped. If defect B or C occurs,
the item must be reworked. The time required to rework a B defect is 15 minutes and the time
required to rework a C defect is 30 minutes. The probabilities of A, B and C defects are 0.15, 0.20
and 0.10, respectively. For 10 items coming off the assembly line, determine the number of items
without any defects, the number scrapped and the total minutes of rework time. Use the following
random numbers:
RN for defect A 48 55 91 40 93 01 83 63 47 52
RN for defect B 47 36 57 04 79 55 10 13 57 09
RN for defect C 82 96 18 96 20 84 56 11 52 03
Solution: Let us compute random number intervals (RNI) from the probabilities of defects of three
types A, B and C.
Next we compute for ten items coming off the assembly without any defects and total time for
rework.
Thus, out of ten items, five are defect free, one is to be scrapped, and four require rework time
90 minutes.
EXAMPLE 17.3: A book store wishes to carry a particular book in the stock. The demand is
probabilistic and the replenishment of stock takes 2 days. The probabilities of demand are given
below:
Daily demand 0 1 2 3 4
Probability 0.05 0.10 0.30 0.45 0.10
Each time an order is placed, the store incurs an ordering cost of Rs. 10 per order. The store
also incurs a carrying cost of 0.05 per book per day. The inventory holding cost is calculated on the
basis of the stock at the end of each day. The manager of the book-store wishes to compare two
options for his inventory decision.
I: Order 5 books when the inventory at the beginning of the day plus orders outstanding is
less than 8 books.
II: Order 8 books when the inventory at the beginning of the day plus orders outstanding is
less than 8 books.
Initially, (beginning of the first day) the store has a stock of 8 books plus 6 books ordered two
days ago and expected to arrive next day. Use simulation for 10 cycles. Recommend which option
the manager should choose using following random numbers: 89, 34, 78, 63, 61, 81, 39, 16, 13, 73.
Solution: Using the given data of the daily demand and probability, we obtain random number
intervals in the following table:
Option I: Given that the stock in hand is 8 books and the stock on order is 5 books (expected next
day).
The above table suggests that during a cycle, order is kept four times. Therefore, the total ordering
cost = Rs. 10 * 4 = Rs. 40. The closing stock of 10 days is 39 books resulting inventory cost
= Rs. 0.50 * 39 = Rs. 19.50.
Therefore, the total cost for 10 days = Rs. 40 + 19.50 = Rs. 59.50.
Now let us consider Option II and find the total cost for 10 days.
From the above table, it is observed that order of 8 books is kept three times. Therefore, the total
ordering cost is Rs. 10 * 3 = Rs. 30. During 10 days cycle, the storekeeper keeps the stock of
45 books, then the holding cost is Rs. 0.50 * 45 = Rs. 22.50.
Therefore, the total cost for 10 days = Rs. 30 + 22.50 = Rs. 52.50.
Since option II has lower total cost than option I , the manager should choose option II.
492 ® Operations Research
EXAMPLE 17.4: A company manufactures around 200 mopeds. Depending upon the availability
of raw materials and other conditions, the daily production has been varying from 196 mopeds to
204 mopeds, whose probability distribution is as given below.
Production/day 196 197 198 199 200 201 202 203 204
Probability 0.05 0.09 0.12 0.14 0.20 0.15 0.11 0.08 0.06
The finished mopeds are transported in a specially designed three storied lorry that can
accommodate only 200 mopeds. Use 15 random numbers: 82, 89, 78, 24, 53, 61, 18, 45, 04, 23, 50,
77, 27, 54, 10 to simulate the process and find out:
(i) What will be the average number of mopeds waiting in the factory?
(ii) What will be the average number of empty spaces on the lorry?
Solution: The random number intervals are exhibited in the following table:
Using given 15 random numbers, we simulate the production per day as follows:
Therefore, the average number of mopeds waiting in the factory = 10/15 = 0.67/day and the average
number of empty spaces on the lorry = 14/15 = 0.93/day.
EXAMPLE 17.5: Observations of the past data show the following patterns in respect of inter-
arrival time and service time in a single channel queuing system. Using the random numbers given
below, simulate the queue behaviour for a period of 60 minutes and estimate the probability of the
service being idle and the mean time spent by a customer waiting in for the service.
Random numbers are 93, 14, 72, 10, 21, 81, 87, 90, 38, 10, 29, 17, 11, 68, 99, 51, 40, 30, 52
and 71.
Solution: First, let us compute random number intervals for the arrival time.
Inter-arrival time
Minutes Probability Cumulative frequency RNI
2 0.15 0.15 00–14
4 0.23 0.38 15–37
6 0.35 0.73 38–72
8 0.17 0.90 73–89
10 0.10 1.00 90–99
In the next table, we exhibit random number intervals for the service time.
Service time
Minutes Probability Cumulative frequency RNI
1 0.10 0.10 00–09
3 0.22 0.32 10–31
5 0.35 0.67 32–66
7 0.23 0.90 67–89
9 0.10 1.00 90–99
494 ® Operations Research
EXAMPLE 17.6: The management of ABC company is considering the question of marketing a
new product. The fixed cost required in the project is Rs. 4,000. Three factors, viz. the selling price,
variable cost and the annual sales volume are uncertain. The product has a life of only one year. The
management has the data for these three factors as under:
Consider the following sequence of thirty numbers : 81, 32, 60, 04, 46, 31, 67, 25, 24, 10, 40, 02,
39, 68, 08, 59, 66, 90, 12, 64, 79, 31, 86, 68, 82, 89, 25, 11, 98, 16. Using the sequence (first three
random numbers for the first trial, etc.), simulate the average profit for the above project on the basis
of the 10 trials.
Solution: First we compute random number intervals for the selling price, variable cost and sales
volume using respective probabilities:
Chapter 17: Simulation ® 495
EXAMPLE 17.7 The director of finance for a farm co-operative is concerned about the yields per
acre. She can expect from this year’s corn crop. The probability distribution of the yields for the
current weather condition is given below.
Yield in kg/acre 120 140 160 180
Probability 0.18 0.26 0.44 0.12
She would like to see a simulation of the yields. She might expect 10 years for weather conditions
similar to those she is now experiencing.
496 ® Operations Research
(i) Simulate the average yield she might expect per acre using the random numbers 20, 72,
34, 54, 30, 22, 48, 74, 76, 02. She is also interested in the effect of market price
fluctuations on the cooperative’s farm revenue. She makes this estimate of selling prices
per kg for corn.
Price/kg 2.00 2.10 2.20 2.30 2.40 2.50
Probability 0.05 0.15 0.30 0.25 0.15 0.10
(ii) Simulate the price she might expect to observe over the next 10 years using the following
random numbers: 82, 95, 18, 96, 20, 84, 56, 11, 52, 03.
(iii) Assuming that the prices of yields combine these two into the revenue per acre and also
find out the average revenue per acre she might expect every year.
Solution: (i) The probability distribution of yield is as follows:
Next, we have simulation of the yield for the next 10 years using the given random numbers:
EXAMPLE 17.8: After studying the weekly receipts and payments over the past 200 weeks, a
retailer has gathered the following information:
Simulate the weekly pattern of receipts and payments for 12 weeks of the next quarter, assuming a
beginning bank balance is Rs. 8,000. What is the estimated balance at the end of the 12 weeks, the
highest weekly balance during the quarter, and the average weekly balance for the quarter? Use the
following random numbers:
For receipts: 03, 91, 38, 55, 17, 46, 32, 43, 69, 72, 24, 22
For payments: 61, 96, 30, 32, 03, 88, 48, 28, 88, 18, 71, 99
Solution: First, we compute random number intervals for both the receipts and the payments using
given data:
Using the random numbers for the receipts and payments, let us simulate balance for next 12 weeks:
Receipts Payments
Week RN Amount (Rs.) RN Amount (Rs.) Balance (Rs.)
0 8,000
1 03 3,000 61 6,000 5,000
2 91 12,000 96 10,000 7,000
3 38 5,000 30 6,000 6,000
4 55 7,000 32 6,000 7,000
5 17 3,000 03 4,000 6,000
6 46 5,000 88 8,000 3,000
7 32 5,000 48 6,000 2,000
8 43 5,000 28 4,000 3,000
9 69 7,000 88 8,000 5,000
10 72 7,000 18 4,000 5,000
11 24 5,000 71 8,000 2,000
12 22 5,000 99 10,000 –3,000
From the above table, it is observed that at the end of 12 weeks, the retailer faces a deficit of
Rs. 3,000. The maximum weekly balance is Rs. 7,000 and the average balance is Rs. 3,750.
EXAMPLE 17.9: A job has to be processed over two machines (say) M1 and M2 in that order. The
distribution of inter-arrival time of the job at the first machine is as follows:
Time (min.) 1 2 3 4
Probability 0.2 0.2 0.2 0.4
The processing times at the two machines are as follows:
Machine M1 Machine M2
Time (min.) Probability Time (min.) Probability
1 0.1 4 0.2
2 0.2 5 0.3
3 0.3 6 0.4
4 0.3 7 0.1
5 0.1 – –
On the basis of 10 simulation runs, find out the queue length before machine M1 and the average
queue length before machine M2.
Solution: The algorithm for simulation is as follows:
1. Simulate the inter-arrival time of the ith (i = 1, 2, …) job on machine M1 with the help of
random numbers.
Chapter 17: Simulation ® 499
2. Arrival time of ith job = arrival time of (i – 1)th job (i = 2, 3, …) plus inter-arrival time of
the ith job. (Note that the arrival time of the first job is equal to the inter-arrival time of the
first job.)
3. Simulate the processing time on machine M1.
4. Departure time on machine M1 = Arrival time for processing on machine M2 = Maxi.
(Arrival time of ith job, processing completion time of (i – 1)th job on machine M1) plus
processing time of ith job on machine M1.
5. If the arrival time of ith job is less than the process completion time of (i – 1)th job, then
ith arrival has to wait. If the arrival time of ith job is less than the process completion of
(i – 2)th job, both ith and (i – 1)th arrivals will wait.
6. Simulate the processing time on machine M2.
7. Process completion by machine M2 of ith job is equal to Maxi. (Arrival time of ith job,
process completion time of (i – 1)th job) plus process time by machine M2.
8. If the arrival time of ith job is less than the process completion time of (i – 1)th job, the ith
arrival will wait. If the arrival time of ith job is less than the process completion time of
(i – 2)th, then both ith and (i – 1)th arrivals wait, and so on.
Using algorithm, let us compute simulation of processing times on machines M1 and M2 for
10 days.
Thus, the average queue size before machine M1 is 0.5 and that before machine M2 is 1.2.
EXAMPLE 17.10: A project consists of seven activities. The time for performance of each of the
activities is a random variable with the respective probabilities given as:
500 ® Operations Research
(a) Draw the network diagram and identify the critical path using the expected activity times.
(b) Simulate the project using random numbers: (68, 99, 57, 57, 77), (13, 93, 33, 12, 37),
(09, 18, 49, 31, 34), (20, 24, 65, 96, 11), (73, 22, 92, 86, 27), (07, 07, 98, 92, 10) and
(92, 29, 00, 91, 59) respectively for the activities A, B, C, D, E, F, and G. Find the critical
path and projection duration.
(c) Repeat the simulation for four times. Is the same path critical in all the simulation runs?
Solution: (a) Using the given data of activities, the network is
2 5
A C E
1 3 4 6 7
B D F G
Simulation of activity:
Run A B C D E F G
RN D RN D RN D RN D RN D RN D RN Days
1 68 4 13 5 09 1 20 4 73 6 07 5 92 3
2 99 5 93 8 18 3 24 4 22 4 07 5 29 2
3 57 4 33 5 49 3 65 4 65 4 98 7 00 2
4 57 4 12 5 31 3 96 5 96 5 92 7 91 3
5 77 4 37 5 34 3 11 4 27 4 10 5 59 3
EXAMPLE 17.11: The occurrence of a rain in a city on a day is dependent upon whether or not
it rained on the previous day. If it rained on the previous day, the rain distribution is:
Simulate the city’s weather for 10 days and determine by simulation the total days without rain as
well as the total rainfall during the period. Use the random numbers 67, 63, 39, 55, 29, 78, 70, 06,
78 and 76 for simulation. Assume that for the first day of simulation, it had not rained the day before.
Solution: Computation of random number intervals if there was a rain on the previous day:
Computation of random number intervals if there was no rain on the previous day:
Let us simulate rain weather for 10 days using the given random numbers:
Day RN Event
1 67 No rain
2 63 No rain
3 39 No rain
4 55 No rain
5 29 No rain
6 78 1 cm rain
7 70 1 cm rain
8 06 No rain
9 78 1 cm rain
10 76 2 cm rain
It is observed that out of 10 days, the city has not experienced rain for 6 days and during 4 days,
the total rainfall is of 5 cm.
Chapter 17: Simulation ® 503
REVIEW EXERCISES
1. A confectioner sells confectionary items. The data of demand per week (in hundred kg) with
frequency is given below:
Demand/week 0 5 10 15 20 25
Frequency 2 11 8 21 5 3
Using the following sequence of random numbers, generate the demand for the next
15 weeks. 35, 52, 90, 13, 23, 73, 34, 57, 35, 83, 94, 56, 67, 66, 60. Also find the average
demand per week.
2. A manager of a warehouse is interested in designing an inventory control system for one of
the product in stock. The demand for the product comes from various retail outlets and
orders arrive on a weekly basis. The warehouse receives its stock from the factory but the
lead-time is not constant. The manager wants to determine the best time to release orders to
the factory so that stock-outs are minimized, yet inventory holding costs are at acceptable
levels. Any order from retailers not supplied on a given day constitutes lost demand. Based
on a sampling study, the following data is available:
The manager of the warehouse has determined the ordering cost as Rs. 50/order, inventory
holding cost as Rs. 2/thousand units/week and shortage cost as Rs. 10/thousand units.
The objective of inventory analysis is to determine the optimal size of an order and the
best time to place an order. The policy is, “Whenever the inventory level becomes less than
or equal to 2,000 units (reorder level), an order equal to the difference between the current
inventory balance and the specified maximum replenishment level is equal to 4,000 units is
placed.”
Simulate the policy for 10 weeks assuming that (i) the beginning inventory is 3,000 units,
(ii) no backorders are permitted, (iii) each reorder is placed at the beginning of the week as
soon as the inventory level is less than or equal to the reorder level, and (iv) the
replenishment orders are received at the beginning of the week. Use random numbers: 31,
70, 53, 86, 32, 78, 26, 64, 45, 12.
3. A firm has single channel service station with the following arrival and service time
probability distribution:
The customer’s arrival at the service station is random and the time between the arrivals
varies from one minute to five minutes. The service time varies from one minute to three
minutes. The queuing process begins at 10.00 am and proceeds nearly for one hour. An
arrival goes to the service facility immediately, if it is free. Otherwise, he will wait in a
queue. The queue discipline is FIFS.
If the attendant’s wages are Rs. 8 per hour and the customer waiting time costs Rs. 9 per
hour, then would it be economical to engage a second attendant? Use the following random
numbers for simulation:
Arrival time: 23, 46, 73, 05, 14, 86, 92, 10, 37, 56, 61, 00.
Service time: 08, 12, 69, 82, 76, 54, 26, 39, 43, 04, 14, 86, 47, 59, 23, 47, 90, 61, 22, 41.
4. A process involves the production of a particular component which is then installed into an
end product. The average production time for the component is 4 minutes and the following
probability distribution has been derived from the past observation:
Production time (min.) 2 3 4 5 6 7
Probability 0.10 0.25 0.40 0.10 0.10 0.05
The time taken to install a component is 3 minutes on an average with the following
probability distribution:
Installation time (min.) 2 3 4 5
Probability 0.30 0.45 0.15 0.10
The system uses one operator for installation but the company is considering to employ
another operator for the installation process.
Simulate 10 arrivals on the current system, using the following random numbers: 20, 74,
81, 22, 93, 45, 44, 16, 04, 32, 03, 62, 61, 89, 01, 27, 49, 50, 90, 98.
5. An investment company wants to study the investment projects based on market demand,
profit and investment required, which are independent of each other. Following probability
distributions are estimated for each of these three factors:
Annual demand 25 30 35 40 45 50 55
(units in thousand)
Probability 0.05 0.10 0.20 0.30 0.20 0.10 0.05
Profit/unit 3.00 5.00 7.00 9.00 10.00
Probability 0.10 0.20 0.40 0.20 0.10
Investment required 2,750 3,000 3,500
(in thousands of Rs.)
Probability 0.25 0.50 0.25
Using simulation process, repeat the trial 10 times. Compute the investment on each trial
taking these factors into trial. What is the most likely return? Use the following random
numbers: (30, 12, 16), (59, 09, 69), (63, 94, 26), (27, 08, 74), (64, 60, 61), (28, 28, 72),
(31, 23, 57), (54, 85, 20), (64, 68, 18), (32, 31, 87). In the bracket, the first random number
is for annual demand, the second one is for profit and the third one is for the investment
required.
18
Game Theory
18.1 INTRODUCTION
In many practical problems, it is required to take decision in a situation where there are two (or
more) opposite parties with conflicting interests, and the action of one depends upon the action
which the opponent takes. The outcome of the situation is controlled by the decisions of all the
parties involved. Such a situation is termed a competitive situation. Such problems occur frequently
in all sorts of activities, in games, sports, business, economic, political, social, and military fields.
The generic term used to characterize these situations is games, that is, general situations of conflict
over time.
In games, the participants are competitors; the success of one is usually at the expense of the
other. Each participant selects and executes those strategies which he believes will result in his
“winning the game”. In games, the participants make use of deductive and inductive logic in
determining a strategy for winning. The mathematics of the theory of games is of interest to us for
this reason.
The theory of games started in the 20th century. But the mathematical treatment of games began
in 1944 when John Von Neumann and Morgenstern published their well-known “theory of games
and economic behaviour”. The Von Neumann’s approach utilizes the minimax principle which
involves the fundamental idea of the minimization of maximum loss. Many of the competitive
problems can be handled by this game theory.
A competitive situation is called a game if it has the following four properties:
1. There are a finite number of competitors, called players. A game involving n persons is
called a n person game. In a game, interests of only two parties may be in conflict. Such
a game is termed a two person game.
2. A list of finite or infinite number of possible courses of action, each called a strategy, is
available to each player. The list need not be the same for each player.
505
506 ® Operations Research
The strategy of a player is the pre-determined rule by which a player decides his course
of action from his own list during the game. To make the decision, regarding the choice of
strategy, neither player needs the definite information about the opponent’s strategy.
Generally two types of strategies are employed by the players in a game. A pure strategy
is that in which one knows in advance all strategies, out of which he always selects only one
particular strategy. This choice is made irrespective of the strategy others may choose. A
mixed strategy is that in which a player decides in advance his courses of action in
accordance with some fixed probability distribution. Thus, in case of mixed strategy, we
associate probability to each course of action. Mathematically, a mixed strategy to any player
is an ordered set of non-negative real numbers (probabilities) which add up to 1.
The advantage of the mixed strategy over the pure strategy is that a player has only finite
choices of pure strategies (those available to him) but he has infinite number of mixed
strategies.
3. A play is played when each player chooses one of his courses of action. The choices are
assumed to be made simultaneously, so that no player knows his opponent’s choice until he
has decided his own course of action.
4. Every play, i.e. a combination of courses of action is associated with an outcome, known as
pay-off, which determines a set of gains, one to each player. Here a loss is considered a
negative gain. Thus, after each play of the game, one player pays to others an amount
determined by the courses of action chosen. In short, a pay-off matrix is a table which shows
how payments should be made at the end of a play or the game.
Before moving on to concrete concepts, let us understand a few games.
EXAMPLE 18.2:
Player B
B1 B2
Player A A1 2 4
A2 1 –3
B sees that his only chance to win, –3, occurs if A plays A2, which will never happen. If A plays
A1, B must play B1 to reduce his average loss to 2 instead of 4. The final strategies are A1, B1 and
the value of the game is 2.
508 ® Operations Research
EXAMPLE 18.3:
Player B
B1 B2 B3
Player A A1 2 0 4
A2 1 –3 2
A observes that B’s only chance to win, 3 from A (entry –3 in the matrix), occurs if A plays A2,
hence A plays A1 all the time. To minimize his losses, B then plays B2. Neither player wins.
Strategies are A1, B1 and V = 0. This is a fair game.
EXAMPLE 18.4:
Player B
B1 B2 B3
Player A A1 3 2 –2
A2 1 –3 –4
A3 0 1 –3
B sees that A cannot win if B plays B3, he therefore plays B3 all the time. To minimize his losses,
then A must play A1. Strategies A1, B3 and V = –2.
EXAMPLE 18.5: Consider the following pay-off matrix for a two person zero-sum game.
Player B
B1 B2 B3 B4
Player A A1 8 –2 9 –3
A2 6 5 6 8
A3 –2 4 –9 5
The solution of the game is based on securing the best of the worst for each player. If A selects
strategy A1, then regardless of what B does, the worst that can happen is that A would lose 3 units
to B. Similarly, strategy A2 worst outcome is for A to gain 5 units from B, and strategy A3 worst
outcome is for A to lose 9 units to B. These results form the “row minima” column as follows. To
achieve the best of the worst, A chooses the strategy A2 because it corresponds to the maximum of
all row minima values.
Chapter 18: Game Theory ® 509
Player B
B1 B2 B3 B4 Row minima
A1 8 –2 9 –3 –3
Player A A2 6 5 6 8 5 Maximin value
A3 –2 4 –9 5 –9
Column maxima 8 5 9 8
Minimax value
Next, consider B’s strategy. Because the given pay-off matrix is for player A, B’s best of the worst
criteria requires determining the minimax value. It is shown in the row of column maxima. B now
has to choose strategy B2 in order to minimize his maximum losses.
The optimal solution of the game calls for selecting strategies A2 and B2. Here the strategies A2
and B2 are the optimal strategies. The pay-off will be in favour of player A because he will gain
5 units from B. In this case we say the value of the game is 5, i.e. V = 5, and that A and B are using
a saddle-point situation.
The saddle-point situation guarantees that neither of the players is tempted to select a better
strategy. If B moves to another strategy (B1, B3 or B4), player A can stay with strategy A2, which
ensures that B will lose a worse amount 6 or 8. In a similar way, A does not want to use a different
strategy because if A moves to strategy A3, B can move to B3 and realize a gain of 9 units. A similar
conclusion is realized if A moves to A1.
Consider the standard pay-off matrix given in Section 18.2. If player A chooses his ith strategy,
then he gains at least the pay-off min aij, which is the minimum of the ith row elements. Since his
objective is to maximize his pay-off, he can choose i so as to make this minimum pay-off as large
as possible. Hence,
pay-off to A ≥ max min aij
i j
Similarly, if player B can choose jth column strategy, then he looses at the most pay-off aij,
which is the maximum of the jth column elements. Since his objective is to minimize his losses, he
can choose j so as to make this maximum pay-off as small as possible. Hence,
pay-off to B £ min max aij
j i
If the maximin value for a player is equal to the minimax value for another player, that is,
max min aij = min max aij
i j j i
then the game is said to have a saddle point and the corresponding strategies are the optimal
strategies. The amount of pay-off at the saddle point is the value of the game V.
It is evident that
max min aij = min max aij = V
i j j i
A saddle point can be recognized because it corresponds to both the smallest numerical value
in its row and the largest numerical value in its column. Consider for a moment the significance of
this. Player B would rather have as a pay-off the smallest numerical value in any row. Player A
would rather have as a pay-off the largest numerical value in any column. Naturally, when one
numerical value satisfies both these conditions (a saddle point), both players will be playing
optimally if each chooses that value.
510 ® Operations Research
If a game has a saddle point, then the pure strategies corresponding to the saddle point are the
optimal strategies and the number at that point is the value of the game.
Of course, not all two person games have a saddle point. An examination of the game will reveal
whether one is present.
Following are some examples of pay-off matrices for games without saddle points.
Player B
B1 B2
Player A A1 1 0
A2 –4 3
Player B
B1 B2 B3
Player A A1 4 –2 3
A2 0 5 6
Player B
B1 B2
A1 1 2
Player A A2 3 4
A3 5 6
The optimal saddle-point solution of a game need not be characterized by pure strategies. Instead,
the solution may require mixing two or more strategies randomly.
EXAMPLE 18.6: Consider the following pay-off matrix for a two person zero-sum game.
Player B
B1 B2 Row minima
Player A A1 1 0 0 Maximin value
A2 –4 3 –4
Column maxima 1 3
Minimax value
Here the maximin and the minimax values of the game are 0 and 1, respectively. Because the two
values are not equal, the game does not have a pure strategy solution. In particular, if A1 is used by
player A, player B will select B2 so that he does not lose anything. If A2 is used by player A,
player B will select B1 to gain 4 units from A. This continuous temptation by either player to switch
to another strategy shows that a pure strategy solution is not acceptable. Instead, both players must
use proper random mixes of their respective strategies. In this case, the optimal value of the game
will occur somewhere between the maximin and the minimax values of the game, that is
Maximin (lower) value £ value of the game £ Minimax (upper) value
For games with mixed strategy (with no saddle point), we have
v£v£v
Chapter 18: Game Theory ® 511
A game is said to be a fair game if the maximin and the minimax values of the game are equal and
both equal zero, i.e. v = 0 = v
A game is said to be strictly determinable if the maximin and minimax values of the game are
equal and both equal the value of the game, i.e. v = v = v
Player A p1 E(p1, q1) E(p2, q2) . E(p1, q*) . E(p1, qn) min E(p1, q)
q
p2 E(p2, q1) E(p2, q2) . E(p2, q*) . E(p2, qn) min E(p2, q)
q
.
p* E(p*, q1) E(p*, q2) E(p*, q*) E(p*, qn) min E(p*,q)
q
.
pm E(pm, q1) E(pm, q2) . E(pm, q*) . E(pm, qn) min E(pm, q)
q
Column maxima max E(p, q1) max E(p, q2) . max E(p, q*) . max E(p, qn)
p p p p
(Maximum in each
column)
Figure 18.1
where P = [p1, p2, …, pm], Q = [q1, q2, …, qn] and pi, qj are probabilities of choosing the strategies
by players A and B respectively. For E(p, q), p Œ Rm, q Œ Rn, if p is kept fixed at some value (say
p* in figure) and q is varied (i.e. we move along row corresponding to p*), then E(p, q) will be
minimum for some value of q. Let this minimum value be f.
512 ® Operations Research
Then f = min E ( p*, q). Thus by changing p’s, a set of values of f is obtained. This set will
q
also have a maximum. (Look at row minima column.)
Call v = max min E ( p, q). Similarly, we can interpret v = min max E ( p, q).
p q q p
In fact, player A wants to maximize his minimum gains. So v = max min E ( p, q ) and
p q
For games with mixed strategy (with no saddle point), we have, v £ v £ v . We prove this result
now. This result is a general result for any game ( pure or mixed strategy).
Theorem 18.1: Let E(p, q) be such that both min max E( p, q) and max min E( p, q) exist, then
q p p q
max min E( p, q) £ min max E( p, q) .
p q q p
For fix p* and for every q, min E(p*, q) £ E(p*, q*) (2)
q
From (1) and (2), min E(p*, q) £ max E(p, q*) (3)
q p
is true for all p and q because p* and q* are arbitrarily chosen. Hence (3) is also true for that strategy
for which max E(p, q) has the minimum value; i.e. the entry min E (p*, q) will be less than or equal
p q
Therefore, min E(p*, q) £ min max E(p, q) is true for all p and q. (4)
q q p
Again, if the above result (4) is true for all p and q, it will also be true for a strategy p for which
min E(p, q) has the maximum value; i.e. min max E (p, q) £ min max E(p, q).
q q p q p
2. Let (aij) be a m ¥ n pay-off matrix for a two person zero-sum game. Then
max min aij = min max aij
i j j i
We now look at the mathematical definitions of saddle point explained earlier and the necessary
and sufficient condition for its existence. Of course, saddle points exist for only pure strategy games.
1. Let f(x, y) be a real valued function of two variables. A point (x0, y0) is said to be a saddle
point of f(x, y) if
f(x, y0) £ f(x0, y0) = f(x0, y)
2. Let E(p, q) be a function of p Œ Rm, q Œ Rn. The function E(p, q) is said to have a saddle
point at (p*, q*) if
E(p, q*) £ E(p*, q*) £ E(p*, q)
Theorem 18.2: Necessary and sufficient condition for the existence of a saddle point:
Let E(p, q) be such that both min max E(p, q) and max min E(p, q) exist. Then the necessary and
q p p q
sufficient condition for the existence of a saddle point (p*, q*) of E(p, q) is that E(p*, q*)
= min max E(p, q) = max min E(p, q).
q p p q
Proof: Necessary condition: Suppose ( p*, q*) is a saddle point of E(p, q). Then the inequality
E(p, q*) £ E(p*, q*) £ E(p*, q) holds for all p and q (1)
From (1), as E(p, q*) £ E(p*, q*) holds for all p and q, we get
max E(p, q*) £ E(p*, q*) holds for all p (2)
p
From (2) and (3), min max E(p, q) £ E(p*, q*) (4)
q p
[Interpretation from Figure 18.1, (p*, q*) being a saddle point, it is the biggest in that column. So
E(p*, q*) ≥ max E (p, q*). So E(p*, q*) is the maximum even if we take min max E(p, q)].
p q p
Again, from (1), E(p*, q*) £ E(p*, q) holds for all p and q.
Therefore, E( p*, q*) £ min E(p*, q) holds for all q. (5)
q
From (5) and (6), E(p*, q*) £ max min E(p, q) (7)
p q
From (4) and (7), min max E(p, q) £ max min E(p, q) (8)
q p p q
Sufficient condition: Let us assume that the point ( p*, q*) satisfies the equality.
E(p*, q*) = max min E (p, q) = min max E (p, q) (1)
p q q p
Let the maximum of min E(p, q) occur at p* and the minimum of max E(p, q) occur at q*
q p
Using (1), (2) and (3), min E(p*, q) = max E(p, q*) = E(p*, q*)
q p
Now, min E(p*, q) = E(p*, q*) means E(p*, q*) is the minimum of all E(p*, q) over q.
q
and max E(p, q*) = E(p*, q*) means E(p*, q*) is the maximum of all E(p, q*) over p.
p
Therefore, E( p, q*) £ E(p*, q*) (5)
Using (4) and (5), E(p, q*) £ E(p*, q*) £ E(p*, q). Hence, (p*, q*) is the saddle point of E(p, q).
Note: The above result can be stated as follows:
3. Let f(x, y) be a real valued function for x Œ Rm , y Œ Rn such that both max min f(x, y) and
x y
min max f(x, y) exists. Then (x0, y0) is a saddle point of f(x, y) if and only if
y x
4. Let (aij) be a m ¥ n pay-off matrix for a two person zero-sum game. Then a necessary and
sufficient condition for (aij) to have a saddle point for i = r and j = s is that
ars = max min aij = min max aij
i j j i
In Example 18.5 we saw a pure strategy game and a unique saddle point. Now we see an example
where we have more than one saddle points. The value of the game remains the same for all the
points.
EXAMPLE 18.7:
Player B
B1 B2 B3
Player A A1 –2 15 –2
A2 –5 –6 –4
A3 5 0 –8
Chapter 18: Game Theory ® 515
Let us find the maximin and the minimax values for the game.
Player B
B1 B2 B3 Row minima
Player A A1 –2 15 –2 –2 Maximin value
A2 –5 –6 –4 –6
A3 –5 20 –8 –8
Column maxima –2 20 –2
Minimax Minimax
value value
In reply to A’s strategy A1, B could employ either of his strategies B1 or B3.
Since the pay-off corresponding to A’s maximin and B’s minimax values are the same, we have
two saddle points here — (A1, B1) and (A1, B3). The value of the game is the same at both the points.
It is –6 which indicates a loss of 6 to A and a gain of 6 to B.
The fundamental theorem of game theory (minimax theorem—John von Neumann) is
every matrix game can be solved in terms of mixed strategies, i.e. if mixed strategies are adopted,
there always exists a value of the game, i.e. v = v = v .
Theorem 18.3: For any two person zero-sum game whose optimal strategies are not pure
strategies, and whose pay-off matrix in favour of player A is
Player B
B1 B2
Player A A1 a11 a12
A2 a21 a22
and ( p1, p2), p1 + p2 = 1 and (q1, q2), q1 + q2 = 1, are the probabilities of choosing the respective
strategies for players A and B respectively. Then
p1 a - a21 q1 a - a12
= 22 and = 22
p2 a11 - a12 q2 a11 - a21
and the value of the game V is
a 11 a22 - a12 a21
V=
(a 11 + a22 ) - (a12 + a21 )
516 ® Operations Research
a 22 - a12 a 11 - a21
q1 = q2 =
(a 11 + a22 ) - (a12 + a21 ) (a 11 + a22 ) - (a12 + a21 )
and use this p1, p2 in either of relations in (1) to get the value of the game
a 11 a22 - a12 a21
V=
(a 11 + a22 ) - (a12 + a21 )
EXAMPLE 18.8:
Player B
B1 B2
Player A A1 6 9
A2 8 4
Here we can see that the game does not have a saddle point. So suppose A and B play their strategies
with probabilities (p1, p2), p1 + p2 = 1 and (q1, q2), q1 + q2 = 1.
Chapter 18: Game Theory ® 517
Step 1: Find the absolute difference of the two numbers written in the first column and write this
number below the second column. (See the following resultant pay-off matrix.)
Step 2: Find the absolute difference of the two numbers written in the second column and write
this number below the first column.
Step 3: Perform this operation with the rows.
The values calculated are called the oddments of the various pure strategies and indicate their
frequencies in the optimal strategies of the players. The sum of the oddments of the rows and
columns must be the same.
518 ® Operations Research
Player B
B1 B2 oddments
Player A A1 a b c~d
A2 c d a~b
Oddments b~d a~c
Compute the probabilities p1 and p2 of player A and q1 and q2 of player B as follows:
c~ d a~ b
p1 = , p2 =
a~ b + c ~ d a~ b + c ~ d
b~ d a~ c
q1 = , q2 =
a~ c + b~ d a~ c + b~ d
i.e. each probability = its respective oddment divided by the sum of the oddments of rows (or
columns, both have the same sum).
The value of the game V is computed by any of the formulae given below.
a (c ~ d ) + c ( a ~ b )
V= or
a~ b + c ~ d
b( c ~ d ) + d ( a~ b)
V= or
a~ b + c ~ d
a(b~d ) + b(a~ c)
V= or
a~ c + b~ d
c ( b~ d ) + d ( a~ c )
V=
a~ c + b~ d
EXAMPLE 18.9:
Player B
B1 B2
Player A A1 5 1
A2 3 4
EXAMPLE 18.10: Reduce the following game as far as possible and then solve it.
Player B
B1 B2 B3 B4
A1 –1 2 3 0
Player A A2 –4 –1 –1 0
A3 –1 1 1 –4
A4 4 –1 2 –7
We search for the saddle point if it is there at all. For that, we find the minimax and the maximin
values.
520 ® Operations Research
Player B
B1 B2 B3 B4 Row minima
A1 –1 2 3 0 –1
Player A A2 –4 –1 –1 0 –4
A3 –1 1 1 –4 –1 Maximin
A4 4 –1 2 –7 –7
Column maxima 4 2 3 0
Minimax
Clearly, we can see that there is no saddle point. So, the solution of the game V has to be such
that –1 £ V £ 0.
We now see if we can reduce the size of the game to facilitate solving the game by mixed
strategy formulas discussed earlier.
All the elements of a first row are greater than or equal to the corresponding elements of the
third row. So A1 dominates A3. So we remove A3 from the matrix.
B1 B2 B3 B4
A1 –1 2 3 0
A2 –4 –1 –1 0
A4 4 –1 2 –7
All the elements of a third column are greater than or equal to the corresponding elements of the
second column. So B2 dominates B3. So we remove B3 from the matrix.
B1 B2 B4
A1 –1 2 0
A2 –4 –1 0
A4 4 –1 –7
All the elements of a first row are greater than or equal to the corresponding elements of the second
row. So A1 dominates A2. So we remove A2 from the matrix.
B1 B2 B4
A1 –1 2 0
A4 4 –1 –7
All the elements of a second column are greater than or equal to the corresponding elements of the
third column. So B4 dominates B2. So we remove B2 from the matrix.
B1 B4
A1 –1 0
A4 4 –7
Now we see that the game cannot be reduced any further. We can solve this resultant game by any
of the mixed strategy methods mentioned above.
The pay-off matrix with oddments is given below.
Player B
B1 B2
Player A A1 –1 0 11
A2 4 –7 1
7 5
The sum of the oddments of the rows and columns is the same, here 12.
Chapter 18: Game Theory ® 521
Hence, the optimal strategies of the two players are (use formula given above): A(11/12,1/12),
- 1 ¥ 11 + 4 ¥ 1 - 7
B(7/12,5/12) and the value of the gameV = =
1 + 11 12
EXAMPLE 18.11:
Player B
B1 B2 B3
Player A A1 3 –2 4
A2 –1 4 2
A3 2 2 6
We search for the saddle point if it is there at all. For that, we find the minimax and the maximin
values.
Player B
B1 B2 B3 Row minima
Player A A1 3 –2 4 –2
A2 –1 4 2 –1
A3 2 2 6 2 Maximin
Column maxima 3 4 6
Minimax
Clearly, we can see that there is no saddle point. So, the solution of the game V has to be such that
2 £ V £ 3.
We now see if we can reduce the size of the game to facilitate solving the game by mixed
strategy formulas discussed earlier.
All the elements of a third column are greater than or equal to the corresponding elements of
the first column. So B1 dominates B3. So we remove B3 from the matrix.
B1 B2
A1 3 –2
A2 –1 4
A3 2 2
The average of the first and the second rows gives (1, 1). We see that this average is dominated by
the third row. So, we can delete either of the first two rows. Deleting the first row gives
B1 B2
A2 –1 4
A3 2 2
We now see that here we find a saddle point (A3, B1) for the game and V = 2.
If we would have deleted the second row instead of the first, we would have obtained
B1 B2
A1 3 –2
A3 2 2
In this case also, we would have obtained a saddle point (A3, B2) and V = 2.
522 ® Operations Research
EXAMPLE 18.12: Show that dominance occurs in the pay-off matrix of a 2 ¥ 2 game if and only
if there is a saddle point.
Consider the game whose pay-off matrix is
Player B
B1 B2
Player A A1 a b
A2 c d
Suppose A1 is dominated by A2. Then, a £ c and b £ d (in fact, at both these places there cannot
be = sign, otherwise the two strategies will coincide).
Now, if we consider the column maximum, then both the elements c and d are the largest
elements in their respective columns. Now, if in the second row, the minimum is c, then there is a
saddle point or if d is minimum, then also there is a saddle point.
Similarly, we can show that if A2 is dominated by A1, then there is a saddle point in the first
row.
Similarly, we can prove the existence of a saddle point in case of column dominance.
Conversely, suppose there is a saddle point in the matrix at the element d.
Then this is the least in the second row and the greatest in the second column.
b£d£c
Now, if in the first row, minimum is b, then B2 dominates B1. Suppose in the first row the minimum
is a, i.e.
a£b
Now, if in the first column, maximum is a, i.e.
c£a
Combining all,
a£b£d£c£a
It shows that
a=b=d=c
Thus, in this case dominance occurs.
Now if in the first column, maximum is c, then a £ c. Thus in this case A2 dominates A1 and
hence the result.
Similarly, we can show the occurrence of dominance taking the saddle point at other places of
the matrix.
EXAMPLE 18.13:
Player B
B1 B2
Player A A1 8 18
A2 16 9
First we calculate Adj = 9 –18
–16 8
and Cof = 9 –16
–18 8
Ê 9 -18ˆ
Now, D = (1 1) Á (1 1)
Ë -16 8˜¯
= –17
(1 1)( Adj )
Optimal strategy for player A=
D
(-7 - 10)
=
-17
Ê 7 10 ˆ
= Á
Ë 17 17 ˜¯
i.e. p1 = 7/17 and p2 = 10/17
(1 1)(Cof )
Optimal strategy for player B=
D
(-9 - 18)
=
-17
Ê 9 8ˆ
= Á
Ë 17 17 ˜¯
i.e. q1 = 9/17 and q2 = 8/17
Value of the game = Row matrix of A’s optimal strategies
¥ Pay-off matrix ¥ Column matrix of B’s optimal strategies
Ê 9ˆ
Ê 7 10 ˆ Ê 8 16 ˆ Á 17 ˜
= Á Á ˜
Ë 17 17 ˜¯ ÁË 16 9 ˜¯ Á 8 ˜
Ë 17 ¯
216
=
17
524 ® Operations Research
EXAMPLE 18.14:
Player B
B1 B2 B3
Player A A1 –4 3 –1
A2 6 –4 –2
The saddle point does not exist and the dominance principles also cannot help.
We consider all 2 ¥ 2 sub games as follows:
Sub game (1)
B
B1 B2
A A1 –4 3
A2 6 –4
No saddle point exists. The value of the game using the mixed strategy formula is 2/17.
Sub game (2)
B
B1 B2
A A1 –4 –1
A2 6 –2
No saddle point exists. The value of the game using the mixed strategy formula is –14/11.
Sub game (3)
B
B1 B2
A A1 3 –1
A2 –4 –2
The saddle point exists and the value of the game turns out to be –1.
Chapter 18: Game Theory ® 525
Now, since it is player B who has to decide about his courses of action, he will select that pair
of strategies corresponding to the 2 ¥ 2 sub game whose value is least out of all possible values.
Thus, by using B1 and B3, B can prevent A to gain more than (–14/11). Hence sub game (2) provides
the solution to the given original 2 ¥ 3 game.
Solving the sub game completely gives A(8/11,3/11), B(1/11,0,10/11) and V = (–14/11).
The above method is equally good for the game in which player A has more than two courses
of action. However, in that case A will select that pair of courses of actions corresponding to the
2 ¥ 2 sub game whose value is greatest out of all the values.
The objective of player A is to select p1 and p2 in such a way that his expected pay-off is the
maximum of all his minimum expected pay-offs.
This is done by plotting the lines E1, E2, …, En after simplifying them in terms of p1 by using
the relation p2 = 1 – p1.
To plot this line, we draw two parallel axes one unit distance apart and mark a scale on each.
The two lines represent two strategies of A. The distance between these lines is taken as unity
because the value of probability p1 cannot be more than 1. Also p1 = 0 is taken at the point O on
A’s strategy A1, which is the vertical standing line on the left and p1 increases as we move from left
to right. p1 = 1 on the line to the right.
526 ® Operations Research
We now pick up the line E1, and plot the points obtained by putting p1 = 0 or 1, on the two lines.
We now join these points. Likewise, we plot all the lines.
Now A chooses a suitable value of p1 to maximize his guaranteed gain. To identify this point
that maximizes the minimum expected gain to A, we bound the figure so formed from below. The
highest point on the lower boundary of these lines will give the maximum expected pay-off among
the minimum expected pay-offs on the lower boundary and the optimum value of probability p1 and
hence of p2.
The intersecting lines at the obtained point will correspond to the course of action taken by B.
Likewise, we end up getting the probabilities with which A plays his strategies and the optimal
strategies that B chooses. We thereby obtain a reduced 2 ¥ 2 game which can be solved by the
analytic method discussed earlier.
This method is equally good when player B has only 2 and A has more than two courses of
action, i.e. when the matrix is m ¥ 2. However, in that case we plot the graph of B’s loss or A’s gain
against the value of q1 and q2, and bound the figure from above (Minimizing B’s maximum losses).
The lowest point on this boundary shows the two courses of action which A should use and the
probability values of q1 and hence q2.
Player B
B1 B2 B3
Player A A1 –4 3 –1
A2 6 –4 –2
We search for the saddle point if it is there at all. For that we find the minimax and the maximin
values.
Player B
B1 B2 B3 Row minima
Player A A1 –4 3 –1 –4 Maximin
A2 6 –4 –2 –4 Maximin
column maxima 6 3 –1
Minimax
Clearly, we can see that there is no saddle point. So, the solution of the game V has to be such that
–4 £ V £ –1.
Player A has two strategies A1 and A2 with the chance of choice of both being p1 and p2 such
that p1 + p2 = 1, and p1, p2 ≥ 0.
For each move taken by B, the expected pay-off for A can be computed as follows.
6 6
5 5
E1
4 4
3 3
2 E2 2
1 1
p1 = 0 0 0* p1 = 1
H
–1 –1
E3
–2 –2
Maximin
–3 point –3
–4 Lower –4
envelope
We have drawn the expected pay-off lines for A, the maximin player. Since A is a maximin
player, he tries to maximize his minimum gains shown by the lower envelope formed by his expected
pay-off lines drawn. The highest point in the lower envelope is formed by the intersection of the lines
E1( p1) and E3(p1). So the two moves that B needs to use are B1 and B3. The probabilities can be
found out by equating the two equations of these lines as shown below.
E1( p1) = E3( p1)
6 – 10p1 = –2 + p1
11p1 = 8
p1 = 8/11
and hence p2 = 3/11.
The value of the game can be found by putting the value of p1 in either E1( p1) or E5(p1). Thus
the value of the game is
Ê 8ˆ Ê 8ˆ 14
V = E1 Á ˜ = 6 - 10 Á ˜ = -
Ë 11 ¯ Ë 11 ¯ 11
528 ® Operations Research
Now to find the optimal strategies of player B, we take the two moves obtained for B from the graph,
i.e. B1 and B3 and form the 2 ¥ 2 pay-off matrix as follows and solve it by the mixed strategy
formulas discussed earlier. This is shown below.
Player B
B1 B3
Player A A1 –4 –1
A2 6 –2
Player B
B1 B2 oddments
Player A A1 –4 –1 8
A2 6 –2 3
oddments 1 10
EXAMPLE 18.16: Without reducing the size, solve the following game graphically.
Player B
B1 B2
A1 –2 5
Player A A2 –5 3
A3 0 –2
A4 –3 0
A5 1 –4
Clearly, we can see that the game does not have a saddle point.
Player B has two strategies B1 and B2 with the chance of choice of both being q1 and q2 such
that q1 + q2 = 1, and q1, q2 ≥ 0.
For each move taken by A, the expected pay-off for B can be computed as follows.
Pay-off Pay-off
6 6
Upper
5 5
envelope
E1
4 4
3 3
E2
2 Minimax 2
point
1 1
H
0 0
E4
–1 –1
–2 E3 –2
–3 –3
–4 E5 –4
–5 –5
–6 –6
We have drawn the expected pay-off lines for B, the minimax player. Since B is a minimax player,
he tries to minimize his maximum losses shown by the upper envelope formed by his expected pay-
off lines drawn. The lowest point in the upper envelope is formed by the intersection of the lines
E1(q1) and E5(q1). So, these are the two moves that A needs to use. The probabilities can be found
out by equating the two equations of these lines as shown below.
E1(q1) = E5(q1)
5 – 7q1 = –4 + 5q1
12q1 = 9
q1 = 3/4
and hence q2 = 1/4.
530 ® Operations Research
The value of the game can be found by putting the value of q1 in either E1(q1) or E5(q1). Thus
the value of the game is
Ê 3ˆ Ê 3ˆ 1
V = E1 Á ˜ = 5 - 7 Á ˜ = -
Ë 4¯ Ë 4¯ 4
Now to find the optimal strategies of player A, we take the two moves obtained for A from the graph,
i.e. A1 and A5 and form the 2 ¥ 2 pay-off matrix as follows and solve it by the mixed strategy
formulas discussed earlier. This is shown below:
Player B
B1 B2
Player A A1 –2 5
A5 1 –4
Player B
B1 B2 oddments
Player A A1 –2 5 5
A5 1 –4 7
oddments 9 3
Player B
B1 B2 B3
Player A A1 6 4 3
A2 2 4 8
We search for the saddle point if it is there at all. For that we find the minimax and the maximin
values.
Player B
B1 B2 B3 Row minima
Player A A1 6 4 3 3 Maximin
A2 2 4 8 2
column maxima 6 4 8
Minimax
Clearly, we can see that there is no saddle point. So, the solution of the game V has to be such that
3 £ V £ 4.
Chapter 18: Game Theory ® 531
Player A has two strategies A1 and A2 with the chance of choice of both being p1 and p2 such
that p1 + p2 = 1, and p1, p2 ≥ 0.
For each move taken by B, the expected pay-off for A can be computed as follows.
8 E3 8
7 7
6 E1 6
5 5
E2 X Y
4 4
3 3
Lower
2 envelope 2
1 1
p1 = 0 0 0* p1 = 1
p1 = 0.5 p1 = 0.8
The shaded region in the graph shows the lines drawn for the expected pay-off for A. Since we
require the highest point in the lower envelope, we observe that there is no highest point here.
Instead, we get a portion XY of the lower envelope, which is a linear segment which corresponds
to the value 4. Hence, 4 is the value of the game. The optimal value of the probabilities associated
with the choice of strategies of A lies on the probability axis and corresponds to this linear segment
XY obtained on the lower envelope. To get these points, we equate E1, E2 and then equate E2, E3.
We get the points 0.5 and 0.8. So, any pair (p1, 1 – p1), where 0.5 £ p1 £ 0.8, is an optimal strategy
for A. Thus, A has infinite number of mixed optimal strategies.
By solving 2 ¥ 2 sub-games formed by two different pairs of B’s strategies, it can be shown
that for B, his optimal strategy is his pure strategy B2.
It is clear, then, that the optimal strategy for B would be (0,1,0). Thus, we have A ( p, 1–p), 0.5
£ p £ 0.8 and B (0,1,0) and V = 4.
532 ® Operations Research
i.e. {
Max Min ÈÎ Â ai1 pi , Â ai 2 pi , … , Â ain pi ˘˚} .
If we take V = Min ÈÎ Â ai1 pi , Â ai 2 pi , … , Â ain pi ˘˚ then, player A wants to select a set of
pi(i = 1, 2, …, m) such that he can maximize V. Now to obtain the values of pi, the value of the game
to player A for all strategies by player B must be at least equal to V. Hence, we have a set of
(n + 1)–constraints as follows:
 ai1 pi ≥ v,
 ai2 pi≥v
.
.
 in pi ≥ v
a
m
with  pi = 1 and pi ≥ 0, i = 1, 2, …, m.
i =1
Chapter 18: Game Theory ® 533
Writing the problem from A’s point of view, we have not yet formed a standard LPP, because
V need not be non-negative. To overcome this difficulty, we assume that V is positive. For V > o,
it is enough that all the elements of the pay-off matrix are positive.
(Note: If there is a negative entry in the pay-off table, a constant M, which is equal to one more
than the absolute value of the maximum of the negative values of the pay-off matrix, is added to each
of the entries in the pay-off matrix. After solving the problem, the true value of the game is obtained
by subtracting M from the value of the game.)
Now let us divide the above inequalities by V (positive) and formulate the LPP from A’s point
of view:
Maximize V
subject to the constraints:
 ai1 pi ≥ 1,
V
 ai 2 pi ≥ 1
V
.
.
 ain pi ≥1
V
m
pi 1
with  =
V V
and (pi /V) ≥ 0, i = 1, 2, …, m.
i =1
Now suppose pi/V = xi, i = 1, 2, …, m.
Ê 1ˆ
Also Max V = Min Á ˜
ËV ¯
Ê p1 p pm ˆ
= Min Á + 2 + +
ËV V V ˜¯
Thus, we can write the above LPP as:
Minimize ZA = x1 + x2 + … + xm
subject to
 ai1 xi ≥ 1,
 ai 2 xi ≥1
.
.
 ain xi ≥1
with xi ≥ 0, i = 1, 2, …, m.
The values of pi and V are obtained using the relation, V = 1/ZA and pi = Vxi, i = 1, 2, …, m.
The problem from B’s point of view is written as follows.
We know that every LPP has its dual problem associated with it. If we write the dual of the
above LPP, it will be in the favour of player B. As a matter of fact, it is always advisable to write
the problem in favour of player B because in that case it becomes a standard LPP with maximization
and all constraints with £ sign.
Max. ZB = y1 + y2 + … + yn
534 ® Operations Research
subject to
 a1 j y j £ 1,
 a2 j y j £1
.
.
 amj y j £ 1
with yi = 0, j = 1, 2, …, n where yj = qj/V, Â q j = 1, V is positive and the values of qj and V are
obtained using the relation, V = 1/ZB and qj = Vyj, j = 1, 2, …, n.
Algorithm to solve the game by converting it to a LPP: The following steps should be
performed.
Step 1: For the game, find the maximin value v .
Step 2: For the game, find the minimax value v .
Step 3: If v = v then the game has a saddle point, otherwise the value of the game v is such that
v £ v£ v.
Step 4: If v < 0, then add a constant equal to one more than the absolute value of the maximum
of the negative values of the pay-off matrix, to all entries of the matrix.
Step 5: Write the LPP from the point of view of player B. (One whose strategies are given in
columns.) So it is maximization LPP with all constraints of £ sign.
Step 6: Apply the simplex algorithm on the LPP
Max. ZB = y1 + y2 + … + yn = (1/v)
subject to AY £ 1 with Y ≥ 0 where A is pay-off matrix and Y = [y1, y2, …, yn]T
Step 7: (i) Find v by using v = 1/ZB.
(ii) Find qj by using qj = vyj, j = 1, 2, …, n
(iii) If you have added a constant to the pay-off matrix’s entries earlier then modify v by
using
value of original game = (value of modified game) – (constant)
Player B
B1 B2 B3
Player A A1 6 2 7
A2 1 9 3
Step 5: Now we formulate the LPP with respect to player B.
Let q1, q2, and q3 be the probabilities with which player B plays his strategies.
And let xi = qi/V, i = 1, 2, 3
Maximize ZB = x1 + x2 + x3
Subject to 6x1 + 2x2 + 7x3 £ 1
x1 + 9x2 + 3x3 £ 1
with x1, x2, x3 ≥ 0.
Adding the necessary slack variables we have,
Maximize ZB = x1 + x2 + x3 + 0s1 + 0s2
Subject to 6x1 + 2x2 + 7x3 + s1 = 1
x1 + 9x2 + 3x3 + s2 = 1
with x1, x2, x3, s1, s2, s3 ≥ 0.
Step 6: Solution by the simplex algorithm.
cj 1 1 1 0 0
cB B xB x1 x2 x3 s1 s2 RR
0 s1 1 6 2 7 1 0 1/2
0 s2 1 1 9 3 0 1 1/9 Æ
z 0 cj – zj 1 1≠ 1 0 0
Step 7: The optimal solution is: x1 = 7/52, x2 = 5/52, x3 = 0 and ZB = 12/52 = 1/V
1
hence V=
ZB
52
=
12
7
Thus, the probabilities q1 = V ¥ x1 =
12
5
q2 = V ¥ x2 =
12
q3 = V ¥ x3 = V ¥ 0 = 0
Now, at last the value of the original game is obtained by subtracting the constant 4 that we added
initially to all the entries of the game matrix.
Ê 52 ˆ
Thus, the value of the original game = Á ˜ - 4
Ë 12 ¯
1
original V =
3
The optimal strategy values for player A can be found out directly from the simplex table. They are
the absolute values of the values corresponding to s1, s2 in the last simplex table. They are:
2 1
y1 = |s1| = , y2 = | s2 | =
13 13
and hence the probabilities associated with the choice of the strategies for A are:
p1 = V ¥ y1 = (52/12) (2/13) = 2/3 (Please use the value of the game obtained from the simplex
table and not that we modified.)
p2 = V ¥ y2 = (52/12) (1/13) = 1/3
Thus, A(2/3, 1/3), B(7/12, 5/12, 0) and V = 1/3.
Note: This value of the game is for player B. For player A it is –1/3.
Player B
B1 B2 B3
Player A A1 1 –1 –1
A2 –1 –1 3
A3 –1 2 –1
Chapter 18: Game Theory ® 537
Step 1 and Step 2: First of all let us check for the saddle point.
Player B
B1 B2 B3 Row minima
Player A A1 1 –1 –1 –1 Maximin
A2 –1 –1 3 –1 Maximin
A3 –1 2 –1 –1 Maximin
Column maxima 1 2 3
Minimax
Clearly, the game does not have a saddle point.
Step 3: The value of the game V will be such that –1 £ V £ 1.
Step 4: Since v < 0, i.e. there are negative entries in the table we add a constant equal to one more
than the absolute value of the most negative entry, here –1.
So we add a constant 2 to all the entries and the resultant game matrix becomes
Player B
B1 B2 B3
Player A A1 3 1 1
A2 1 1 5
A3 1 4 1
cj 1 1 1 0 0 0
cB B xB x1 x2 x3 s1 s2 s3 RR
0 s1 1 3 1 1 1 0 0 1/3 Æ
0 s2 1 1 1 5 0 1 0 1
0 s3 1 1 4 1 0 0 1 1
z 0 cj – zj 1≠ 1 1 0 0 0
Step 7: The optimal solution is: x1 = 6/25, x2 = 4/25, x3 = 3/25 and ZB = 13/25 = 1/V
1
hence V=
ZB
25
=
13
6
Thus, the probabilities q1 = V ¥ x1 =
13
4
q2 = V ¥ x2 =
13
3
q3 = V ¥ x3 =
13
Chapter 18: Game Theory ® 539
Now, at last the value of the original game is obtained by subtracting the constant 2 that we added
initially to all the entries of the game matrix.
25
Thus, the value of the original game = -2
13
1
original V = -
13
The optimal strategy values for player A can be found out directly from the simplex table. They are
the absolute values of the values corresponding to s1, s2, s3 in the last simplex table. They are:
6 3 4
y1 = |s1| = , y = |s2| = , y = |s3| =
25 2 25 3 25
and hence the probabilities associated with the choice of the strategies for A are:
p1 = V ¥ y1 = (25/13) (6/25) = 6/13 (Please use the value of the game obtained from the simplex
table and not that we modified.)
Ê 25 ˆ Ê 3 ˆ 3
p2 = V ¥ y 2 = Á ˜ Á ˜ =
Ë ¯Ë ¯
13 25 13
Ê 25 ˆ Ê 4 ˆ 4
p1 = V ¥ y 3 = Á ˜ Á ˜ =
Ë 13 ¯ Ë 25 ¯ 13
Thus, A(6/13, 3/13, 4/13), B(6/13, 4/13, 3/13) and V = –(1/13)
Note: This value of the game is for player B. For player A it is 1/13.
Similarly, by considering the losses to B when A uses his strategies i = 1, 2, …, m, B expects the
loss of at the most V. So we have
n
 aij q j £ V , i = 1, 2, …, m (2)
j =1
540 ® Operations Research
Also we have,
m n
 pi = 1 and  q j = 1 and pi ≥ 0 and qj ≥ 0 for all i and j. (3)
i =1 j =1
Thus, the problem is to find the values of p1, p2, …, pm and q1, q2, …, qn and V which satisfy (1),
(2) and (3).
First of all, we treat all the inequalities of (1) and (2) as equations and then try to solve this
system of equations with (3). If we get a solution satisfying (1), (2) and (3) simultaneously, then the
problem is over. (2 ¥ 2 games are always solvable in this way. But in higher order pay-off matrices,
the system of equations may not be consistent). If the system of equations is inconsistent, then we
conclude that at least one of the inequalities is a strict inequality. Now, we go on trying with one
or more strict inequalities and remaining equations, to get a solution until we get the required
solution. This calls for a trial and error method approach.
EXAMPLE 18.20:
Player B
B1 B2 B3
Player A A1 –1 2 1
A2 1 –2 2
A3 3 4 –3
We have the following inequalities after taking the probabilities for A and B as p1, p2, p3 and q1,
q2, q3 and V as the value of the game.
–1p1 + 1p2 + 3p3 ≥ V (1)
2p1 – 2p2 + 4p3 ≥ V (2)
1p1 + 2p2 – 3p3 ≥ V (3)
–1q1 + 2q2 + 1q3 £ V (4)
1q1 – 2q2 + 2q3 £ V (5)
3q1 + 4q2 – 3q3 £ V (6)
p1 + p2 + p3 = 1 (7)
q1 + q2 + q3 = 1 (8)
p1, p2, p3, q1, q2, q3 ≥ 0 (9)
Firstly, we consider all the first six inequalities as equations. We have
–1p1 + 1p2 + 3p3 = V (10)
2p1 – 2p2 + 4p3 = V (11)
1p1 + 2p2 – 3p3 = V (12)
–1q1 + 2q2 + 1q3 = V (13)
1q1 – 2q2 + 2q3 = V (14)
3q1 + 4q2 – 3q3 = V (15)
p1 + p2 + p3 = 1 (16)
q1 + q2 + q3 = 1 (17)
Chapter 18: Game Theory ® 541
Adding (10) and (12), we have p2 = (2/3)V and again adding 2 times of (10) in (11), we get
p3 = (3/10)V. Putting these values in any of the (10), (11), (12), we get p1 = (17/30)V. Substituting
all these in (16), we get V = 15/23. So, p1 = 17/46, p2 = 10/23, and p3 = 9/46.
Now, putting this value of V in (13), (14), (15) and solving them, we get
q1 = 7/23, q2 = 6/23, q3 = 10/23. These values of q1, q2, q3 also satisfy (17).
Thus we have obtained a solution of this system of equations. The solution also satisfies (9).
EXAMPLE 18.21:
Player B
B1 B2 B3
Player A A1 1 –1 –1
A2 –1 –1 3
A3 –1 2 –1
We have the following inequalities after taking the probabilities for A and B as p1, p2, p3 and q1,
q2, q3 and V as the value of the game.
1p1 – 1p2 – 1p3 ≥ V (1)
–1p1 – 1p2 + 2p3 ≥ V (2)
–1p1 + 3p2 – 1p3 ≥ V (3)
1q1 – 1q2 – 1q3 £ V (4)
–1q1 – 1q2 + 3q3 £ V (5)
–1q1 + 2q2 – 1q3 £ V (6)
p1 + p2 + p3 = 1 (7)
q1 + q2 + q3 = 1 (8)
p1, p2, p3, q1, q2, q3 ≥ 0 (9)
Firstly, we consider all the first six inequalities as equations. We have
1p1 – 1p2 – 1p3 = V (9)
–1p1 – 1p2 + 2p3 = V (10)
–1p1 + 3p2 – 1p3 = V (11)
1q1 – 1q2 – 1q3 = V (12)
–1q1 – 1q2 + 3q3 = V (13)
–1q1 + 2q2 – 1q3 = V (14)
Adding (9), (10) and (9), (11)
–2p1 + p3 = 2V and 2p2 – 2p3 = 2V (15)
Again adding these, –p3 = 4 V, i.e. p3 = –4V. Using (15) and (9), we get p2 = –3V and hence
p1 = –6V. Putting these in (7), we get –6V – 3V – 4V = 1 or V = –(1/13). Hence, we get p1 = 6/13,
p2 = 3/13, p3 = 4/13.
Putting V = –(1/13) in (12), (13), (14) and then solving them in accordance with (8), we obtain
q1 = 6/13, q2 = 4/13, q3 = 3/13 and value of the game V = 1/13.
542 ® Operations Research
EXAMPLE 18.22:
Player B
B1 B2 B3
Player A A1 3 1 1
A2 1 1 5
A3 1 4 1
Step 1: Subtract each row from the row above, i.e. A1 – A2 and A2 – A3 and write the differences
in the form of two successive rows below the rows of the pay-off matrix.
Step 2: Subtract each column from the column to its left, i.e. B1 – B2 and B2 – B3 and write the
differences in the form of two successive columns to the right of the pay-off matrix.
B1 B2 B3 B1 – B2 B2 – B3
A1 3 1 1 2 0
A2 1 1 5 0 –4
A3 1 4 1 –3 3
A1 – A2 2 0 –4
A2 – A3 0 –3 4
0 -4
Oddment for A1 = determinant = 12
-3 3
2 0
Oddment for A2 = determinant =6
-3 3
2 0
Oddment for A3 = determinant = –8
0 -4
0 -4
Oddment for B1 = determinant = 12
-3 4
2 -4
Oddment for B2 = determinant =8
0 4
2 0
Oddment for B3 = determinant = –6
0 -3
Chapter 18: Game Theory ® 543
Step 5: Check that the sum of the oddments of both the players is the same. Here it is 26. This
is a very important condition that needs to be satisfied if the game has to be solved by this method.
It means that both the players are using up all their pure strategies.
If the two sums of the oddments happen to be different, then it means that the players are not
using one of their pure strategies, i.e. either of pi or qj is zero in the final assignment of probabilities.
Step 6: We now calculate the probabilities in a manner similar to the oddment method for 2 ¥ 2
mixed strategy games.
Each probability = Its respective oddment divided by the sum of the oddments of rows (or
columns, both have the same sum)
Hence we get A (12/26, 6/26, 8/26) = (6/13, 3/13, 4/13)
B (12/26, 8/26, 6/26) = (6/13, 4/13, 3/13)
and the value of the game V = [(3 × 12) + (1 × 6) + (1 × 8)]/26 = 25/13
Note: For a solution of 3 ¥ 3 games with the mixed strategy by the method of oddments, none of
the probability values turn out to be zero.
In this way A and B play a series of plays. Finally, at any iteration for any player, a mixed
strategy can be obtained by dividing the number of times the respective pure strategies are used, by
the total number of iterations up to that stage. The method is very slow and requires many iterations.
But it is useful for large games.
EXAMPLE 18.23:
Player B
B1 B2 B3
Player A A1 –1 2 1
A2 1 –2 2
A3 3 4 –3
We write the strategy of A below the matrix and circle the smallest element indicating the B’s next
strategy to be selected. Similarly, the strategy of B is written on the right of the matrix. Of B’s
strategy, the greatest element is circled indicating A’s next strategy. In case of tie in selecting the
strategy of any player, we will select the strategy different than previously used strategy.
B
B1 B2 B3
A1 –1 2 1 1 2 (4) (5) 4 (6) 5 6 7 (9) 4/10
A A2 1 –2 2 (2) (4) 2 4 (5) 3 4 (6) (8) 6 5/10
A3 3 4 –3 –3 –6 –2 –5 –2 2 (5) 2 –1 3 1/10
3 4 (–3)
4 2 (–1)
5 (0) 1
4 2 (2)
(3) 4 3
4 (2) 5
(3) 4 6
6 8 (3)
7 6 (5)
8 (4) 7
2/10 3/10 5/10
The upper value of the game = (Largest element in 10th column/Total no. of iterations)
9
=
10
Thus, if V is the value of the game, then
4 9
£V£
10 10
The optimal solution to this particular problem is given elsewhere in this chapter (algebraic method).
Note that, the strategies determined above are not too far from the optimal strategies. They can be
made more and more closer to optimal strategies by increasing the number of iterations.
The upper value of the game = (Largest element in 10th column/Total no. of iterations)
16
=
10
Thus, if V is the value of the game, then
14 16
£V£
10 10
Note: Game theory does not insist on how a game should be played, but only tells the procedure
and principles by which the action should be selected. Thus, it is a decision theory useful in
competitive situations. Further, the fundamental theorem of game theory assures us that there always
exists a solution and the value of a rectangular game in terms of mixed strategies.
The solution of the game has the following property:
If one of the players adheres to his optimal strategy and the other one deviates from his optimal
strategy, the deviating player can only decrease and cannot, in any case, increase his yield.
Player B
B1 B2 B3 B4
A1 3 2 4 0
Player A A2 3 4 2 4
A3 4 2 4 0
A4 0 4 0 8
We search for the saddle point if it is there at all. For that, we find the minimax and the maximin
values.
B1 B2 B3 B4 Row minima
A1 3 2 4 0 0
A2 3 4 2 4 2 Maximin
A3 4 2 4 0 0
A4 0 4 0 8 0
Column maxima 4 4 4 8
Minimax
Chapter 18: Game Theory ® 547
Clearly, we can see that there is no saddle point. So the solution of the game V has to be such that
2 £ V £ 4.
We now see if we can reduce the size of the game to facilitate solving the game by mixed
strategy formulas discussed earlier.
All the elements of the third row are greater than or equal to the corresponding elements of the
first row. So A1 is dominated by A3. So we remove A1 from the matrix.
B1 B2 B3 B4
A2 3 4 2 4
A3 4 2 4 0
A4 0 4 0 8
All the elements of the first column are greater than or equal to the corresponding elements of the
third column. So B1 is dominated by B3. So we remove B1 from the matrix.
B2 B3 B4
A2 4 2 4
A3 2 4 0
A4 4 0 8
Now, the average of the second and the third columns gives (3 2 4). We see that if we compare
this with the first column, then all the entries of the first column are greater than or equal to the
corresponding elements of this average column. So, the average column dominates the first column.
So, we remove B2 from the matrix.
B3 B4
A2 2 4
A3 4 0
A4 0 8
Now, the average of the second and the third rows gives (2 4). We see that if we compare this with
the first row, then all the entries of the first row are equal to the corresponding elements of this
average row. So we can neglect the first row. So we remove A2 from the matrix.
B3 B4
A3 4 0
A4 0 8
Now we see that the game cannot be reduced any further. We can solve this resultant game by any
of the mixed strategy methods mentioned above.
We solve it by the method of oddments.
B3 B4 oddments
A3 4 0 8
A4 0 8 4
oddments 8 4
548 ® Operations Research
REVIEW EXERCISES
1. Find the range of values for p and q which will render the entry (2, 2) a saddle point in the
game with the following pay-off matrix.
1 q 3
P 5 10
6 2 3
[Ans. p ≥ 5, q £ 5]
2. Solve the following game using the dominance principle.
a b c d
p 3 2 4 0
q 3 4 2 4
r 4 2 4 0
s 0 4 0 8
[Ans. A’s strategy (0, 0, 2/3, 1/3), B’s strategy (0, 0, 2/3, 1/3), V = 8/3]
3. If the pay-off matrix for the first player in a game is
d c c
a f e
b d c
such that 0 < a < b < c < d < e < f, the vectors (x1, x2, x3) and (y1, y2, y3) are optimal strategies
for the first and the second player and V is the value of the game then prove that
(i) x3 = y2 = 0
(ii) x1 > (1/2)
(iii) c < V < d
4. Solve the game whose pay-off matrix is given by
1 7 2
6 2 7
5 1 6
[Ans. A’s strategy (2/5, 3/5, 0), B’s strategy (1/2, 1/2, 0), V = 4]
Chapter 18: Game Theory ® 549
5. A and B each take out one or two matches and guess how many matches the opponent has
taken. If one of the players guesses correctly then the opponent has to pay him as many
rupees as the sum of the number of matches had by both the players, otherwise the pay-out
is zero. Write down the pay-off matrix and obtain the optimal strategies for both the players.
[Ans. 2 0
0 4; V = 4/3, A(2/3, 1/3), B(2/3, 1/3)]
6. Two players A and B, without showing each other, put on a table a coin with heads or tails
up. If the coin shows the same side (both heads or both tails up), player A takes both the
coins, otherwise B gets them. Construct the matrix of the game and solve it.
[Ans. 1 –1
–1 1; V = 4/3, A(1/2, 1/2), B(1/2, 1/2)]
7. In a game of matching coins with two players, suppose A wins one unit of value when there
are two heads: wins nothing when there are two tails and loses 1/2 unit of value when there
is one heads and one tails. Determine the pay-off matrix, the optimal strategies for both the
players.
[Ans. 1 –(1/2)
–(1/2) 0, V = –(1/8), A(1/4, 3/4), B(1/4, 3/4)]
8. Consider the matching coins game. The matching player is paid Rs. 8 if the two coins are
both heads and Re. 1 if both are tails. The non-matching player is paid Rs. 3 when coins do
not match. Given the choice of being the matching or the non-matching player, which would
you choose and what would be your strategy?
[Ans. 8 –3
–3 1, V = –(1/5) and the optimal strategy for each player is (4/15, 11/15).]
As the non-matching player is always expecting to gain by using optimal strategy, we would
like to be the non-matching player.)
9. Solve the following games.
(a) Player B
I II III IV V
I 4 0 1 7 –1
Player A II 0 –3 –5 –7 5
III 3 2 3 4 3
IV –6 1 –1 0 5
V 0 0 6 0 0
[Ans. V = 2]
(b) Player B
I II III
I –2 15 –2
Player A II –5 –6 –4
III –5 20 –8
[Ans. V = –2, A: I, B: I or III]
550 ® Operations Research
(c) Player B
I II III
I 2 –1 3
Player A II 2 –1 2
III –1 0 0
IV 2 0 4
[Ans. A: IV, B: II, V = 0]
(d) Player B
I II III IV V
I 3 5 4 9 6
Player A II 5 6 3 7 8
III 8 7 9 8 7
IV 4 2 8 5 3
[Ans. A: III, B: II, V = 7]
(e) Player B
I II III
I –5 –1 –1
Player A II 4 0 2
III –5 2 0
[Ans. A(0, 7/11, 4/11), B(2/11, 9/11, 0), V = 8/11]
(f) Solve graphically: Pay-off matrix in favour of player A
Player B
I II III IV V
I 2 –1 5 –2 6
Player A II –2 4 –3 1 0
[Ans. A(3/7, 4/7), B(3/7, 0, 0, 4/7, 0), V = –(2/7)]
(g) Solve graphically: Pay-off matrix in favour of player A
Player B
I II
I 2 5
Player A II 3 1
III 0 3
[Ans. A(2/5, 3/5), B(4/5, 1/5), V = 13/15]
(h) Solve graphically: Pay-off matrix in favour of player A
Player B
I II
I 1 6
Player A II 4 5
III 5 3
[Ans. A(0, 2/3, 1/3), B(2/3, 1/3), V = 13/3]
Chapter 18: Game Theory ® 551
(i) Player B
I II III IV
I 6 2 4 8
Player A II 2 –1 1 12
III 2 3 3 9
IV 5 2 6 10
[Ans. A: (1/5, 0, 4/5, 0), B(1/5, 4/5, 0, 0), V = 14/5]
(j) Player B
I II III IV V
I 2 5 10 7 2
Player A II 3 3 6 6 4
III 4 4 8 12 1
[Ans. A: (0, 3/4, 1/4), B(3/4, 0, 0, 0, 1/4), V = 13/4]
(k) Solve graphically: Pay-off matrix in favour of player A
Player B
I II
I 1 3
Player A II 3 1
III 5 –1
IV 6 –6
[Ans. A (3/4, 0, 1/4), B (1/2, 1/2), V = 2]
(l) Player B
I II III IV V VI
I 4 2 0 2 1 1
Player A II 4 3 1 3 2 2
III 4 3 7 –5 1 2
IV 4 3 4 –1 2 2
V 4 3 3 –2 2 3
[Ans. A (0, 6/7, 1/7, 0, 0), B(0, 0, 4/7, 3/7, 0, 0), V = 13/7]
10. Show that if the 2 ¥ 2 game
a a
c d
is strictly determined, i.e. if two elements in a row are equal, then the game has a saddle
point, similarly for columns.
11. Show that if the 2 ¥ 2 game
a b
c d
is non strictly determined if either: a < b, a < c, d < b and d < c or a > b, a > c, d > b and
d > c.
552 ® Operations Research
12. If the pay-off matrix in a two person zero-sum game is skew-symmetric, then show that the
value of the game is zero.
13. Show that a strictly determined game is fair if and only if there is a zero entry in its pay-
off matrix such that all the entries in its row and column are non-negative and non-positive
respectively.
14. A and B play a game as follows: They simultaneously and independently write one of three
numbers 1, 2, 3. If the sum of the numbers written is even, B pays to A this sum in rupees.
If it is odd, A pays the sum to B in rupees. Form the matrix of the game for A and solve
it.
[Ans. 2 –3 4
–3 4 –5
4 –5 6
V = 0, A(1/4, 1/2, 1/4), B(1/4, 1/2, 1/4)]
15. The following matrix represents the pay-offs to player A in a rectangular game between two
persons A and B.
Player B
I II III IV
I 19 15 –5 –2
Player A II 19 15 17 16
III 0 20 15 5
By the notion of dominance, show that the game is equivalent to one represented by a
2 ¥ 4 matrix which is a sub-matrix of the above. Then obtain a solution of the game
graphically.
[Ans. A(0, 15/16, 1/16), B(0, 11/16, 0, 5/16), V = 245/16]
16. Solve the following games by formulating them as a LPP.
(a) Player B
I II III
I 1 –1 3
Player A II 3 5 –3
III 6 2 –2
[Ans. A(2/3, 1/3, 0), B(0, 1/2, 1/2), V = 1]
(b) Player B
I II III
I 6 0 3
Player A II 8 –2 3
III 4 6 5
[Ans. A(0, 1/6, 5/6), B(2/3, 1/3, 0) or B(1/3, 0, 2/3), V = 143/3]
Chapter 18: Game Theory ® 553
(c) Player B
I II III
I 1 –1 –1
Player A II –1 –1 3
III –1 2 –1
[Ans. A(6/13, 3/13, 4/13), B(6/13, 4/13, 3/13), V = –(1/13)]
(d) Player B
I II III
I 2 3 –4
Player A II 5 –2 6
III 2 6 3
[Ans. A(0, 0.36, 0.64), B(0.728, 0.272, 0), V = 3.09877]
17. Players A and B play a game in which each player has three coins –20 paise, 25 paise and
50 paise. Each of them selects a coin without the knowledge of the other person. If the sum
of the values of the coins is an even number, A wins B's coins. If that sum is an odd number,
B wins A’s coins.
(a) Develop a pay-off matrix with respect to player A.
(b) Find the optimal strategies for the players.
[Ans. A(5/9, 4/9, 0), B(1/2, 1/2, 0) and V = 0]
18. Prove that a symmetric game has the value zero and the two optimal strategies are identical.
19. Prove that if we add (or subtract) a fixed number M to (from) each element of the pay-off
matrix, then the optimal strategies remain unchanged while the value of the game increases
(or decreases) by M.
20. Prove that if we multiply the pay-off matrix by a fixed number M, then the optimal strategies
remain unchanged while the value of the game becomes M times the value of the original
game.
21. Consider the game “Two Finger Morra”. Two players A and B both simultaneously show
either one or two fingers. If the number of fingers of one coincides with the number of
fingers of the other, then player A wins and gets 1 point from B. If they do not coincide,
then B wins and takes 1 point from A. Construct the pay-off matrix and solve the game.
È Ê 1 -1ˆ ˘
Í Ans. ÁË -1 1˜¯ ˙
ÍÎ ˙˚
22. Player A has two ammunition stores, one of which is twice as valuable as the other. Player
B is an attacker who can destroy an undefended store but he can only attack one of them.
A knows that B is about to attack one of the stores but does not know which. What should
he do? Note that A can successfully defend only one store at a time.
Appendix
Statistical Tables
x ex e–x x ex e–x
0.00 1.000 1.000 3.00 20.086 0.050
0.10 1.105 0.905 3.10 22.198 0.045
0.20 1.221 0.819 3.20 24.533 0.041
0.30 1.350 0.741 3.30 27.113 0.037
0.40 1.492 0.670 3.40 29.964 0.033
0.50 1.649 0.607 3.50 33.115 0.030
0.60 1.822 0.549 3.60 36.598 0.027
0.70 2.014 0.497 3.70 40.447 0.025
0.80 2.226 0.449 3.80 44.701 0.022
0.90 2.460 0.407 3.90 49.402 0.020
1.00 2.718 0.368 4.00 54.598 0.018
1.10 3.004 0.333 4.10 60.340 0.017
1.20 3.320 0.301 4.20 66.686 0.015
1.30 3.669 0.273 4.30 73.700 0.014
1.40 4.055 0.247 4.40 81.457 0.012
1.50 4.482 0.223 4.50 90.017 0.011
1.60 4.943 0.202 4.60 99.484 0.010
1.70 5.474 0.183 4.70 109.95 0.009
1.80 6.050 0.165 4.80 121.51 0.008
1.90 6.686 0.150 4.90 134.29 0.007
2.00 7.389 0.135 5.00 148.41 0.007
2.10 8.166 0.122 5.10 164.02 0.006
2.20 9.025 0.111 5.20 181.27 0.006
2.30 9.974 0.100 5.30 200.34 0.005
2.40 11.023 0.091 5.40 221.41 0.005
2.50 12.182 0.082 5.50 244.69 0.004
2.60 13.464 0.074 5.60 270.43 0.004
2.70 14.880 0.067 5.70 298.87 0.003
2.80 16.445 0.061 5.80 330.30 0.003
2.90 18.174 0.055 5.90 365.04 0.003
3.00 20.086 0.050 6.00 403.43 0.002
555
556 ® Appendix: Statistical Tables
f (z)
z 0.00 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09
0.0 0.0000 0.0040 0.0080 0.0120 0.0160 0.0199 0.0239 0.0279 0.0319 0.0359
0.1 0.0398 0.0438 0.0478 0.0517 0.0557 0.0596 0.0636 0.0675 0.0714 0.0753
0.2 0.0793 0.0832 0.0871 0.0910 0.0948 0.0987 0.1026 0.1064 0.1103 0.1141
0.3 0.1179 0.1218 0.1255 0.1293 0.1331 0.1368 0.1406 0.1443 0.1480 0.1517
0.4 0.1554 0.1591 0.1628 0.1664 0.1700 0.1736 0.1772 0.1808 0.1844 0.1879
0.5 0.1915 0.1950 0.1985 0.2019 0.2054 0.2088 0.2123 0.2157 0.2190 0.2224
0.6 0.2257 0.2291 0.2324 0.2357 0.2389 0.2422 0.2454 0.2486 0.2517 0.2549
0.7 0.2580 0.2611 0.2642 0.2673 0.2703 0.2734 0.2764 0.2794 0.2823 0.2852
0.8 0.2881 0.2910 0.2939 0.2967 0.2995 0.3023 0.3051 0.3078 0.3106 0.3133
0.9 0.3159 0.3181 0.3212 0.3238 0.3264 0.3289 0.3315 0.3340 0.3365 0.3389
1.0 0.3413 0.3438 0.3461 0.3485 0.3508 0.3531 0.3554 0.3577 0.3599 0.3621
1.1 0.3643 0.3665 0.3686 0.3708 0.3729 0.3749 0.3770 0.3790 0.3810 0.3830
1.2 0.3849 0.3869 0.3888 0.3907 0.3925 0.3944 0.3962 0.3980 0.3997 0.4015
1.3 0.4032 0.4049 0.4066 0.4082 0.4099 0.4115 0.4131 0.4147 0.4162 0.4177
1.4 0.4192 0.4207 0.4222 0.4236 0.4251 0.4265 0.4279 0.4292 0.4306 0.4319
1.5 0.4332 0.4345 0.4357 0.4370 0.4302 0.4394 0.4406 0.4418 0.4429 0.4441
1.6 0.4452 0.4463 0.4474 0.4484 0.4405 0.4505 0.4515 0.4525 0.4535 0.4545
1.7 0.4554 0.4564 0.4573 0.4582 0.4591 0.4599 0.4608 0.4616 0.4625 0.4633
1.8 0.4641 0.4649 0.4656 0.4664 0.4671 0.4678 0.4686 0.4693 0.4699 0.4706
1.9 0.4713 0.4719 0.4726 0.4732 0.4738 0.4744 0.4750 0.4756 0.4761 0.4767
2.0 0.4772 0.4778 0.4783 0.4788 0.4793 0.4798 0.4803 0.4808 0.4812 0.4817
2.1 0.4821 0.4826 0.4830 0.4834 0.4838 0.4842 0.4846 0.4850 0.4852 0.4857
2.2 0.4861 0.4864 0.4868 0.4871 0.4875 0.4878 0.4881 0.4884 0.4887 0.4890
2.3 0.4893 0.4896 0.4898 0.4901 0.4904 0.4906 0.4909 0.4911 0.4913 0.4916
2.4 0.4918 0.4920 0.4922 0.4925 0.4927 0.4926 0.4931 0.4932 0.4934 0.4936
2.5 0.4938 0.4940 0.4941 0.4943 0.4945 0.4946 0.4948 0.4949 0.4951 0.4952
2.6 0.4953 0.4955 0.4956 0.4957 0.4959 0.4960 0.4961 0.4962 0.4963 0.4964
2.7 0.4965 0.4966 0.4967 0.4968 0.4969 0.4970 0.4971 0.4972 0.4973 0.4974
2.8 0.4974 0.4975 0.4976 0.4977 0.4977 0.4978 0.4979 0.4979 0.4980 0.4981
2.9 0.4981 0.4982 0.4982 0.4983 0.4984 0.4985 0.4985 0.4985 0.4986 0.4986
3.0 0.4987 0.4987 0.4987 0.4988 0.4988 0.4989 0.4989 0.4989 0.4990 0.4990
An entry in the table is the proportion under the entire curve which is between z = 0 and a
positive value of z. Areas for negative values of z are obtained by symmetry:
P(z £ 1.35) = 0.5 + f (1.35) = 0.5 + 0.4115 = 0.9115
P(z £ –1.35) = 0.5 – f (1.35) = 0.5 – 0.4115 = 0.0885
Appendix: Statistical Tables ® 557
27767 43584 85301 88977 29490 69714 64015 64874 32444 48277
13025 14338 54066 15243 47724 66733 74108 88222 88570 74015
80217 36292 98525 24335 24432 24896 62880 87873 95160 59221
10875 62004 93391 61105 67411 06368 11784 12102 80580 41867
54127 57326 26629 19087 24472 88779 17944 05600 60478 03343
60311 42824 37301 42678 45990 43242 66067 42792 95043 52680
49739 71484 92003 98086 76668 73209 54244 91030 45547 70818
78626 51584 16453 94614 39014 97066 30945 57589 31732 57260
66692 13986 99837 05582 81232 44987 69170 37403 86995 90307
44071 28091 07362 97703 76447 42537 08345 88975 35840 85771
59820 96163 78851 16499 87064 13075 73035 41207 74699 09310
25704 91035 26313 77463 5538 72681 47431 43905 31048 56699
23304 90314 78438 66276 18396 73538 43277 58874 11466 16082
25852 58905 55018 56374 35824 71708 30540 27886 61732 75454
46780 56487 75211 10271 36633 68424 17374 52003 70707 70214
69849 96169 87195 46092 26787 60939 59202 11973 02902 33250
47670 07654 30342 40277 11049 72049 83012 09832 25571 77628
94304 71803 73465 0981 58869 35220 09504 96412 90193 79568
09105 59987 21437 36786 49226 77837 98524 97831 65704 09514
64281 61826 18555 64937 64654 25843 41145 42820 14924 39650
66847 70495 32350 02985 01755 14750 48968 38603 70312 05682
72461 33230 21529 53424 72877 17334 39283 04149 09850 64618
21032 91050 13058 16218 06554 07850 73950 79552 24781 89683
95362 67011 06651 16136 57216 39618 49856 99326 40902 05069
49712 97380 10404 55452 09971 59481 37006 22186 72682 07385
58275 61764 97586 54716 61459 21647 87417 17198 21443 41080
89514 11788 68224 23417 46376 25366 94746 49580 01176 28838
15472 50669 48139 36732 26825 05511 12459 91314 80482 71944
12120 86124 51247 44302 87112 21476 14713 71181 13177 55292
95294 00556 70481 06905 21785 41101 49386 5440 23604 23554
66986 34099 74474 20740 47458 64809 06312 88940 15995 69321
80620 51790 11436 38072 40405 68032 60942 00307 11897 92674
55411 85667 77535 9992 71209 92061 92329 98932 78284 46347
95083 06783 28102 57816 85561 29671 77936 6374 31384 51924
90726 57166 98884 08583 95889 57067 38101 77756 11657 13897
68984 83620 89747 98882 92613 89719 39641 69457 91339 22502
36421 16489 18059 51061 67667 60631 8404 40455 99396 63680
92638 40333 67054 16067 24700 71594 47468 03577 57649 63266
21036 82808 77501 97427 76479 68562 43321 31370 28977 23896
13173 33365 41468 85149 49554 17994 91178 10174 29420 90438
86716 38746 94559 37559 49678 53119 98189 81851 29651 84215
92581 02262 41615 70360 64114 58660 96717 54244 10701 41393
12470 56500 50273 93113 41794 86861 39448 93136 25722 08564
01016 00857 41396 80504 90670 08289 58137 17829 22751 36518
30030 60726 25807 24260 71529 78920 47648 13885 70669 93406
50259 46345 06170 97965 88302 98041 11947 56203 19324 20504
73659 76145 60808 5444 74412 8105 69181 96845 38525 11600
46874 37088 80940 44893 10408 36222 14004 2313 69249 05747
60883 52109 19516 90120 46759 71643 62342 07589 08899 05895
Index
561
562 ® Index
Key Features
l
Gives well-defined algorithms to illustrate the different techniques of operations research.
l
Inventory problems are discussed with calculus.
l
Provides worked-out examples in each chapter to illustrate the concepts discussed.
This text is intended for the undergraduate and postgraduate students of Mathematics, Statistics, Engineering,
and postgraduate students of Computer Applications and Business Administration. In addition, practising
executives, consultants and managers will also find the book very useful.
The Authors
NITA H. SHAH is Associate Professor, Department of Mathematics, Gujarat University, Ahmedabad. She is a
Post Doctoral Fellow of the University of New Brunswick, Canada. She has published over 90 research articles
in various reputed journals. Dr. Nita Shah’s areas of interest include inventory models, forecasting and neural
networks.
RAVI M. GOR is Professor and Dean (Academics), St. Kabir Institute of Professional Studies, Ahmedabad.
Earlier, he was Assistant Professor at ICFAI Business School, Ahmedabad. He has also served as Head,
Department of Mathematics, Science College, Dholka, Gujarat. Dr. Gor has authored three books and has also
published several articles in reputed research journals. His area of interest are operations research and discrete
mathematics.
HARDIK SONI is Assistant Professor, Chimanbhai Patel Institute of Computer Applications, Gujarat University,
Ahmedabad. His areas of interest include operations research (inventory control and management), marketing
research, network analysis and computer graphics.
ISBN:978-81-203-3128-0
9 788120 331280
www.phindia.com