Operations Research Handout, 2022 - 1
Operations Research Handout, 2022 - 1
Prepared
by
Tewodros G. (MSc)
CHAPTER ONE
Introduction to Operation Research
1.1 Definitions of Operation Research
The British/Europeans refer to "operational research", the Americans refer to "operations
research" but both are often shortened to just "OR”. Another term which is used for this field is
"management science" ("MS"). The Americans sometimes combine the terms OR and MS
together and say "OR/MS" or "ORMS". Yet other terms sometimes used are "industrial
engineering" ("IE") and "decision science" ("DS"). In recent years there has been a move
towards a standardization upon a single term for the field, namely the term "OR". Operation
research is a relatively new discipline. The contents and the boundaries of the OR are not yet
fixed. Therefore, to give a formal definition of the term Operations Research is a difficult task.
Therefore, defining OR is a difficult task.
Operations Research is the art of winning wars without actually fighting. – Aurther Clarke.
OR is the combination of management principles and mathematical concepts (Quantitative
techniques) for managerial decision-making purpose.
Operations Research (OR) is a science which deals with problem, formulation, solutions and
finally appropriate decision making.
OR is the use of mathematical models, statistics and algorithm to aid in decision-making. It is
most often used to analyze complex real life problems typically with the goal of improving or
optimizing performance.
“OR is concerned with scientifically deciding how to best design and operate man-machine
system usually requiring the allocation of scare resources.”
“OR is essentially a collection of mathematical techniques and tools which in conjunction with
system approach, are applied to solve practical decision problems of an economic or engineering
nature‟‟.
The definitions stressed by various experts and Societies on the subject together enable us to
know what OR is, and what it does. They are as follows:
1. According to the Operational Research Society of Great Britain (OPERATIONAL
RESEARCH QUARTERLY, l3(3):282, l962), Operational Research is the attack of modern
science on complex problems arising in the direction and management of large systems of men,
machines, materials and money in industry, business, government and defense. Its distinctive
2
approach is to develop a scientific model of the system, incorporating measurements of factors
such as change and risk, with which to predict and compare the outcomes of alternative
decisions, strategies or controls. The purpose is to help management determine its policy and
actions scientifically.
2. Randy Robinson stresses that Operations Research is the application of scientific methods
to
improve the effectiveness of operations, decisions and management. By means such as analyzing
data, creating mathematical models and proposing innovative approaches, Operations Research
professionals develop scientifically based information that gives insight and guides decision
making. They also develop related software, systems, services and products.
3. Morse and Kimball have stressed OR is a quantitative approach and described it as “a
scientific method of providing executive departments with a quantitative basis for decisions
regarding the operations under their control”.
4. Thomas L. Saaty considers OR as tool of improving quality of answers. He says, “OR is the
art of giving bad answers to problems which otherwise have worse answers”.
5. Miller and Starr state, “OR is applied decision theory, which uses any scientific,
mathematical
or logical means to attempt to cope with the problems that confront the executive, when he tries
to achieve a thorough-going rationality in dealing with his decision problem”.
6. Pocock stresses that OR is an applied Science. He states “OR is scientific methodology
(analytical, mathematical, and quantitative) which by assessing the overall implication of various
alternative courses of action in a management system provides an improved basis for
management decisions”.
Features of Operations Research
* Operations Research uses scientific methods for making decisions.
* It is interdisciplinary approach for solving problems and it uses the knowledge and experience
of experts in various fields.
* While analyzing the problems, all aspects are considered and examined and analyzed
scientifically for finding the optimal solution for the problem on hand.
* As operations research has scientific approach, it improves the quality of answers to the
problems.
3
1.2 History of Operation Research
Operation Research is a relatively new discipline. It was really only in the late 1930's that
operational research began in a systematic fashion, and it started in the UK. In fact, the main
origin of Operations Research was during the Second World War (1939-1945) in order to make
the best use of limited military resources to win the war. At the time of Second World War, the
military management in England invited a team of scientists to study the strategic and tactical
problems related to air and land defense of the country. The problem attained importance
because at that time the resources available with England was very limited and the objective
was to win the war with available meager resources. The resources such as food, medicines,
manpower etc., were required to manage war and for the use of the population of the country. It
was necessary to decide upon the most effective utilization of the available resources to achieve
the objective. It was also necessary to utilize the military resources cautiously. Hence, the
Generals of military, invited a team of experts in various walks of life such as scientists, doctors,
mathematicians, business people, professors, engineers etc., and the problem of resource
utilization is given to them to discuss and come out with a feasible solution. These specialists
had a brain storming session and came out with a method of solving the problem, which they
coined the name “Linear Programming”. This method worked out well in solving the war
problem. As the name indicates, the word Operations is used to refer to the “problems of
military” and the word Research is use for “inventing new method”. As this method of solving
the problem was invented during the war period, the subject is given the name „Operations
Research‟ and abbreviated as “OR”. Following the war, numerous peacetime applications emerged,
leading to the use of OR and management science in many industries and occupations.
4
1.3 Operations Research Modeling Approach
OR is a logical and systematic approach to provide a rational basis for decision-making. The
phases of OR must be logical and systematic. The various steps required for the analysis of a
problem under OR are as follows:
Defining the problem and gathering data
This procedure is crucial. It is difficult to extract a “right” answer from the “wrong” problem.
Most practical problems encountered by OR teams are initially described in a vague and
imprecise way. This step should answer the following questions: Who are the decision makers? ,
What are the objectives? , What are the constraints (relationships)? and how to collect relevant
data.
Formulating a mathematical model
Construct a mathematical model that represents the essence of the problem. This step needs to
define decision variables, define the objective function, and define the constraints (relations
among decision variables).
5
Deriving solutions from the model
After a mathematical model is formulated for the problem under consideration, the next phase in
an OR study is to develop a procedure (usually a computer-based procedure) for deriving
solutions to the problem from this model. You might think that this must be the major part of the
study, but actually it is not in most cases. Sometimes, in fact, it is a relatively simple step, in
which one of the standard algorithms (systematic solution procedures) of OR is applied on a
computer by using one of a number of readily available software packages. This indicates that
this step:
Need an algorithm (systematic solution procedures).
Conduct post-optimality analysis.
What would happen to the optimal solution if different assumptions are made?
Implementation
Install a well-documented system for applying the model. Include the model, solution procedure,
and operating procedures for implementation. Even include personnel changes. This system is
usually computer-based. A considerable number of computer programs often need to be used and
integrated. Databases and management information systems may provide up-to-date input for the
model. The assumptions of the model continue to be satisfied. Need to revise or re-build models
when significant deviations occur.
1.4 Application of Operation Research
The subject OR is a branch of mathematics - specially applied mathematics, used to provide a
scientific base for management to take timely and effective decisions to their problems. It tries to
avoid the dangers from taking decisions merely by guessing or by using thumb rules. Some
important applications of OR:
It provides a tool for scientific analysis and provides solution for various business
problems.
It enables optimum allocation of scarce resources.
It helps in minimizing waiting and servicing costs.
It enables the management to decide when to buy and how much to buy through the
technique of inventory planning.
It helps in evaluating situations involving uncertainty.
6
It enables experimentation with models, thus eliminating the cost of making errors while
experimenting with reality.
It allows quick and inexpensive examination of large numbers of alternatives.
In general, OR facilitates and improves the decision making process.
1.5 Limitation of Operation Research
1. Magnitude of computation: In order to arrive at an optimum solution, OR takes into account
all the variables that affect the system. Hence, the magnitude of computation is very large.
2. Non-Quantifiable variables: OR can give an optimum solution to a problem only if all the
variables are quantified. Practically, all variables in a system cannot be quantified.
3. Time and Cost: To implement OR in an organization, it consumes more time and cost. If the
basic decision variables change, OR becomes too costly for an organization to handle it.
4. Implementation of OR: Implementation of OR may lead to human resource problems. The
psychology of employees should be considered and the success of OR depends on cooperation of
the employees.
5. Distance between Manager and OR Specialist: Managers may not be having a complete
overview of OR techniques and has to depend upon an OR Specialist. Only if good link is
established OR can be a success.
CHAPTER TWO
LINEAR PROGRAMMING
7
capital, etc.) to several competing activities (such as products, services, jobs, new equipment,
projects etc.) on the basis of a given criterion of optimality.
Linear programming is a mathematical technique for finding optimal solutions to problems that
can be expressed using linear equations and inequalities. If a real-world problem can be
represented accurately by the mathematical equations of a linear program, the method will find
the best solution to the problem. Of course, few complex real-world problems can be expressed
perfectly in terms of a set of linear functions. Nevertheless, linear programs can provide
reasonably realistic representations of many real-world problems especially if a little creativity is
applied in the mathematical formulation of the problem. LP is a combination of two words:
linear and programming. The term linear implies the condition of proportionality and additivity.
The programme is referred as a course of action covering a specified period of time, say planning
period. The manager has to find out the best course of action in the interest of the organization.
This best course of action is termed as optimal course of action or optimal solution to the
problem. A programme is optimal, when it maximizes or minimizes some measure or criterion of
effectiveness, such as profit, sales or costs. The term programming refers to a systematic
procedure by which a particular program or plan of action is designed. Programming consists of
a series of instructions and computational rules for solving a problem that can be worked out
manually or can fed into the computer.
A linear program consists of a set of variables, a linear objective function indicating the
contribution of each variable to the desired outcome, and a set of linear constraints describing the
limits on the values of the variables. Therefore, any linear programming model (problem) must
have the following properties:
The relationship between variables and constraints must be linear.
The model must have an objective function.
The model must have structural constraints.
The model must have non-negativity constraint.
2.2.Formulation of Linear Programming Problems
The objective of a linear programming problem will be to maximize or to minimize some
numerical value.
Objective Function
8
Objective function is the goal or objective of a management, stated as intent to maximize or to
minimize some important quantity such as profits or costs.
Where:
Ci = the objective function coefficient corresponding to the ith variable, and
Xi = the ith decision variable
The coefficients of the objective function indicate the contribution to the value of the objective
function of one unit of the corresponding variable.
Decision Variables: The Variables in a linear program are a set of quantities that need to be
determined in order to solve the problem; i.e., the problem is solved when the best values of the
variables have been identified. Typically, the variables represent the amount of a resource to use
or the level of some activity. Simply, things which produced sold or consumed.
Constraints: The constraints indicate limitations on the resources, which are to be allocated
among various decision variables. These resources may be production capacity, manpower, time,
space or machinery. These must be capable of being expressed as linear equation (i.e. =) on
inequalities (i.e. > or<; type) in terms of decision variables. Thus, constraints of a linear
programming problem are linear equalities or inequalities arising out of practical limitations.
They take the following general form:
n
Subject to a x
i 1
i i bi
9
n
Subject to a x
i 1
i i bi
Xi > 0
In formulating the LPP as a mathematical model, we shall follow the following four steps
1. Identify the decision variables and assign symbols to them (e. g. x, y, z, . . .or x1, x2, x3, . . .
2. Identify the set if constraints and express them in terms of inequalities involving the decision
variables.
3. Identify the objective function and express it in terms of the decision variables.
4. Add the non-negativity constraints
2.3.Assumptions of linear programming
Before we get too focused on solving linear programs, it is important to review some theory For
instance, several assumptions are implicit in linear programming problems. A linear
programming model is based on the following assumptions:
1. Proportionality assumption: A basic assumption of LP is that proportionality exists in the
objective function and the constraints. It states that the contribution of each activity to the value
of the objective function Z is proportional to the level of the activity Xj, as represented by the
CjXj term in the objective function. Similarly, the resource consumption of each activity in each
functional constraint is proportional to the level of the activity Xj, as represented by the aijXj
term in the constraint.
2. Additivity assumption: States that every function in a linear programming model (whether
the objective function or the left-hand side of a functional constraint) is the sum of the individual
contributions of the respective activities.
3. Divisibility assumption: States that decision variables in linear programming model are
allowed to have any values, including non-integer values, which satisfy the functional and non-
negativity constraints. Divisibility means that the numerical values of the decision variables are
continuous and not limited to integers. In other words, fractional values of the decision variables
must be permissible in obtaining optimal solution. In certain situations, the divisibility
assumption does not hold because some of or all the decision variables must be restricted to
integer values.
4. Certainty assumption: The value assigned to each parameter of a linear programming model
is assumed to be a known constant (never change through time). This assumption states that the
10
various parameters namely, the objective function coefficients, the coefficients in the functional
constraints aij and resource values in the constraints bi are certainly and precisely known and
that their values do not change with time. However, in real applications, the certainty assumption
is seldom satisfied precisely. For this reason, it is usually important to conduct sensitivity
analysis after a solution is found that is optimal under the assumed parameter values.
5. Finiteness: An LP model assumes that a finite (limited) number of choices (alternatives) are
available to the decision-maker and that the decision variables are interrelated and non-negative.
The non-negativity condition shows that LP deals with real-life situations as it is not possible to
produce/use negative quantities.
6. Optimality: In LP, the optimal solution always occurs at the corner point of the set of feasible
solutions.
2.4.Methods of Solving LP
Linear Programming, is a method of solving the type of problem in which two or more
candidates or activities are competing to utilize the available limited resources, with a view to
optimize the objective function of the problem. The objective may be to maximize the returns or
to minimize the costs. The various methods available to solve the problem are:
2.4.1. The Graphic Method
The Graphical Method used to solve LPP when we have two decision variables. To deal with
more decision variables by graphical method will become complicated, because we have to deal
with planes instead of straight lines. Hence in graphical method let us limit ourselves to two
variable problems. In graphical method, the inequalities (structural constraints) are considered to
be equations. This is because; one cannot draw a graph for inequality. Only two variable
problems are considered, because we can draw straight lines in two-dimensional plane (X- axis
and Y-axis). More over as we have non-negativity constraint in the problem that is all the
decision variables must have positive values always the solution to the problem lies in first
quadrant of the graph. Sometimes the value of variables may fall in quadrants other than the first
quadrant. In such cases, the line joining the values of the variables must be extended in to the
first quadrant. The procedure of the method will be explained in detail while solving a numerical
problem. The characteristics of Graphical method are:
(i) Generally the method is used to solve the problem, when it involves two decision variables.
11
(ii) For three or more decision variables, the graph deals with planes and requires high
imagination
to identify the solution area.
(iii) Always, the solution to the problem lies in first quadrant.
(iv) This method provides a basis for understanding the other methods of solution.
To sole LPP graphically, the following steps are necessary:
1. Formulate mathematical model of Linear programming
4. Identify the feasible area of the solution which satisfies all constrains.
Example: Consider two models of color TV sets; Model A and B, are produced by a company to
maximize profit. The profit realized is $300 from A and $250 from set B. The limitations are
How many sets of each model will be produced each day so that the total profit will be as large
as possible?
Resources used per unit
(X1) (X2)
12
Labor hr. 2 1 40
Machine hr. 1 3 45
Marketing hr. 1 0 12
Solution
Max Z=300X1+250X2
St: 2X1+X2< 40
X1 < 12
X1,X2 >0
2X1+X2 = 40
X1+3X2= 45
X1 = 12
X1 = 12==> (12, 0)
X1,X2 =0
2X1+X2 = 40
X2
X1=0
40 X1=12
15
B
X1+X2 = 45
13
Feasible C (12, 11)
Region X2=0
X1
D
4. Identify the feasible area of the solution which satisfies all constrains.
A (0, 0) $0
D (12, 0) $3600
Interpretation: 12 units of model A and 11 units of model B should be produced so that the
total profit will be $6350.
Exercise
1.A factory manufactures two products A and B on three machines X, Y, and Z. Product A
requires 10 hours of machine X and 5 hours of machine Y a one out of machine Z. The
requirement of product B is 6 hours, 10 hours and 2 hours of machine X, Y and Z respectively.
The profit contribution of products A and B are $23 and $32 per unit, respectively. In the
coming planning period the available capacity of machines X, Y and Z are 2500 hours, 2000
hours and 500 hours respectively. Find the optimal product mix for maximizing the profit.
2.A company manufactures two products X1 and X2 on three machines A, B, and C. X1 require 1
hour on machine A and 1 hour on machine B and yields a revenue of $3. Product X2 requires 2
hours on machine A and 1 hour on machine B and 1 hour on machine C and yields revenue of
14
$5. In the coming planning period the available time of three machines A, B, and C are 2000
hours, 1500 hours and 600 hours respectively. Find the optimal product mix.
B. Minimization Problem
Assume that at least a certain amount of product must be produced and that we would like to
utilize at least the regular labor force. How much should we utilize each machine in order to
utilize total costs and still meets the requirement?
________________________________________________________________
Resource used
Constraints Machine 1 (X1) Machine (X2) Minimum required hours
_____________________________________________________________________
Labor/hr 2 3 15________
Solution
Min.Z 25 X 130 X 2
St :
20 X 115 X 2 100 LPP Model
2 X 13 X 2 15
X1, X 2 0
Constraint equation:
15
X1 X2> 0
X2
X1 =0
A (0, 20/3)
Feasible Region
B (2.5, 3.33)
X2 =0
X1
5 C (7.5, 0)
______________________________________________________________________________
C (7.5, 0) 187.5
____________________________________________________________
X1 =2.5unit
X2=3.33unit and
MinZ= $162.5
1. Redundant Constraint
If a constraint when plotted on a graph doesn‟t form part of the boundary making the feasible
region of the problem that constraint is said to be redundant.
16
Example: A firm is engaged in producing two products A and B .Each unit of product A
requires 2Kg of raw material and 4 labor-hours for processing; whereas each unit of product B
requires 3Kg of raw materials and 3hrs of labor. Every unit of product A needs 4hrs to packaging
and every unit of product B needs 3.5hrs for packaging. Every week the firm has availability of
60Kg of raw material, 96 labor-hours and 105 hrs. I the packaging department.1 unit of product
A sold yields $40 profit and 1 unit of B sod yields $35 profit.
Required:
Solution
_______________________________________________________________
Products Resource available
Resources A B per week
_____________________________________________________________________
Labor (hr) 4 3 96
a. LPP Model
Max.Z 40 X 135 X 2
St :
2 X 13 X 2 60
4 X 13 X 2 96
4 X 1 3.5 X 2 105
X1, X 2 0
17
X2
(0, 32)
Labor: 4X1+3X2= 96
(0, 30)
Packaging: 4X1+3.5X2= 105
(0, 20) C (18,8)
Raw material: 2X1+3X2= 60
FR
X1
A (0, 0) D (24, 0) (26, 0) (30, 0)
A (0, 0) 0
C (18, 8) 1000
D (24, 0) 960
X1 =18
X2=8 and
MinZ= 1000
Interpretation: The company should produce and sale 18 units of product A and 8 units of
product B per week so as to get a maximum profit of 1000.
Note:
The packaging hour‟s constraint does not form part of the boundary making the feasible region.
Thus, this constraint is of no consequence and is therefore, redundant. The inclusion or exclusion
of a redundant constraint does not affect the optimal solution of the problem.
2. Multiple optimal Solutions ==>We have unlimited number of optimal solution without
increasing or decreasing the objective function.
18
Example:
Max.Z 8 X 116 X 2
St :
3 X 16 X 2 900
X 1 X 2 200
X 2 125
X1, X 2 0
==>Multiple optimal solutions provide more choices for management to reach their objectives.
3. Infeasible Solution: A solution is called feasible if it satisfies all the constraints and the
constraints and non-negativity condition. However, it is sometimes possible that the constraints
may be inconsistent so that there is no feasible solution to the problem. Such a situation is called
infeasibility.
Example:
MaxZ=20X1+30X2
St:2X1+X2< 40
4X1+X2< 60
X1 > 30
X1, X2 > 0
4. Unbounded Solution It is a solution whose objective function is infinite. If the feasible region
is unbounded then one or more decision variables will increase indefinitely without violating
feasibility, and the value of the objective function can be made arbitrarily large. Consider the
following model:
Example: Minz = 40x1 + 60x2
St: 2x1 + x2 ≥ 70
x1 + x2 ≥ 40
x1 + 3x2 ≥ 90
x1, x2 ≥ 0
19
2.4.2 Simplex method
Simplex method is most powerful method. It deals with iterative process, which consists of first
designing a basic feasible solution or a programme and proceed towards the optimal solution and
testing each feasible solution for optimality to know whether the solution on hand is optimal or
not. If not an optimal solution, redesign the programme, and test for optimality until the test
confirms Optimality. Hence we can say that the simplex method depends on two concepts known
as feasibility and optimality. The simplex method is based on the property that the optimal
solution to a linear programming problem, if it exists, can always be found in one of the basic
feasible solution. The simplex method is quite simple and mechanical in nature. The iterative
steps of the simplex method are repeated until a finite optimal solution, if exists, is found. If no
optimal solution, the method indicates that no finite solution exists. The simplex method is an
iterative or “step by step” method or repetitive algebraic approach that moves automatically from
one basic feasible solution to another basic feasible solution improving the situation each time
until the optimal solution is reached at.
Comparison between graphical and simplex methods
1. The graphical method is used when we have two decision variables in the problem. Whereas
In simplex method, the problem may have any number of decision variables.
2. In graphical method, the inequalities are assumed to be equations, so as to enable to draw
straight lines. But in simplex method, the inequalities are converted into equations by adding a
slack variable in maximization problem and subtracting a surplus variable in case of
minimization problem.
3. n graphical method, the areas outside the feasible area (area covered by all the lines of
constraints in the problem) indicates idle capacity of resource where as in Simplex method, the
presence of slack variable indicates the idle capacity of the resources.
Maximization problems
Max.Z=300x1 +250x2
20
x1< 12 (Marketing)
x1, x2> 0
Solution
I.e. convert constraint inequality into equality form by introducing a variable called Slack
variable.
Slack Variables:
A slack variable(s) is added to the left hand side of a < constraint to covert the constraint
inequality in to equality. The value of the slack variable shows unused resource.
Slack variables represent unused resource or idle capacity. Thus, they don‟t produce any product
and their contribution to profit is zero. Slack variables are added to the objective function with
zero coefficients.
Let that s1, s2, and s3 are unused labor, machine and marketing hrs respectively.
St:
To represent the data, the simplex method uses a table called the simplex table or the simplex
matrix.
21
==> In constructing the initial simplex tableau, the search for of the optimal solution begins at
the origin. Indicating that nothing can be produced;
=0
Note: In general, whenever there are n variables and m constraints (excluding the non-
negativity), where m is less than n (m<n), n-m variables must be set
equal to zero before the solution can be solved algebraically.
==>n=5 variables (x1 ,x2, s1, s2, and s3) and m=3 constraints (Labor, machine and marketing
constraints), excluding non-negativity.
Therefore, n-m=5-3=2 variables (x1 and x2) are set equal to zero in the 1st simplex tableau. These
are non-basic variables. 3 Variables (s1, s2, and s3) are basic variables (in the 1st simplex tableau)
because they have non-zero solution values.
22
Initial simplex tableau
Cj 300 250 0 0 0
SV X1 X2 S1 S2 S3 Q
0 S1 2 1 1 0 0 40
0 S2 1 3 0 1 0 45
0 S3 1 0 0 0 1 12
Zj 0 0 0 0 0 0
Cj - Zj 300 250 0 0 0
Note: The entering variable is the variable that has the most positive value in the Cj – Zj row
also called as indicator row. Or the entering variable is the variable that has the highest
contribution to profit per unit. X1 in our case is the entering variable. The column associated
with the entering variable is called key or pivot column ( X1columnin our case )
==> In this step, we determine the variable that will leave the solution for X1 (or entering
variable)
Note: The row with the minimum or lowest positive (non-negative) replacement ratio shows the
variable to leave the solution.
Note: RR>0
The variable leaving the solution is called leaving variable or outgoing variable.
The row associated with the leaving variable is called key or pivot row (s3 columnin our case)
23
The element that lies at the intersection of the pivot column and pivot row is called pivot
element(No 1 in our case)
Step 7: Repeat step 4-6 till optimum basic feasible solution is obtained.
Cj 300 250 0 0 0
SV X1 X2 S1 S2 S3 Q
0 S1 0 1 1 0 -2 16
R’1=R1-2R3
0 S2 0 3 0 1 -1 33
R’2=R2-3R’3
300 X1 1 0 0 0 1 12
R’3=R3
Cj - Zj 0 250 0 0 -300
Cj 300 250 0 0 0
SV X1 X2 S1 S2 S3 Q
0 S1 0 0 1 -1/3 -5/3 5
Minimization problems
24
Minimize Z with inequalities of constraints in “> “form
There are two methods to solve minimization LP problems:
25
-Here –M is assigned as coefficient of artificial variable A in the
objective function Z
x1, x 2> 0
Solution
Subject to:
The initial basic feasible solution is obtained by setting x1= x2= s1= s2=0
Cj 25 30 0 0 M M
SV X1 X2 S1 S2 A1 A2 Q
26
M A1 20 15 -1 0 1 0 100
M A2 2 3 0 -1 0 1 15
Note: Once an artificial variable has left the basis, it has served its purpose and can therefore be
removed from the simplex tableau. An artificial variable is never considered for re-entry into the
basis. 2nd Simplex Tableau
Cj 25 30 0 0 M
SV X1 X2 S1 S2 A2 Q
25 X1 1 3/4 -1/20 0 0 5
125+5
Zj 25 75/4+3/2M -5/4+1/10M -M M
M
Cj 25 30 0 0
Cj - Zj 0 45/4-3/2M 5/4-1/10 M M 0
SV X1 X2 S1 S2 Q
Cj - Zj 0 0 1/2 15/2
Note: As long as an “A” variable is available in the solution variable column, the solution is
infeasible.
1. Mixed constraints
Example
x1, x2> 0
In order to break this tie, the selection for the key column (entering variable) can be made
arbitrary. However; the number of solution can be minimized by adopting the following rules:
1. If there is a tie between two decision variables, then the selection can be made arbitrary.
2. If there is a tie between a decision variable and a slack (or surplus) variable, then select the
decision variable to enter into basis first.
3. If there is a tie between slack or surplus variable, then selection can be made arbitrary.
3. Infeasibility
In the simplex method, an infeasible solution is indicated by looking at the final tableau .In it, all
Cj - Zj row entries will be the proper sign to imply optimality, but an artificial variable (A) will
still be in the solution mix.
Cj 5 8 0 0 M
SV X1 X2 S1 S2 A2 Q
28
5 X1 1 1 -2 3 0 200
8 X2 0 1 1 2 0 100
M A2 0 0 0 -1 1 20
Zj 5 8 -2 31-M M 1,800+200M
Cj - Zj 0 0 2 M-31 0
Even though allCj - Zj are positive or 0(i.e the criterion for an optimal solution in a minimization
case), no feasible solution is possible because an artificial variable (A2) remains in the solution
mix.
4. Unbounded Solutions
No finite solution may exist in problems that are not bounded .This means that a variable can be
infinitely large without violating a constraint. In the simplex method, the condition of
unboundedness will be discovered prior to reaching the final tableau. We will note the problem
when trying to decide which variable to remove from the solution mix. The procedure in
unbounded solution is to divide each quantity column number by the corresponding pivot
column number. The row with the smallest positive ratio is replaced. But if the entire ratios turn
out to be negative or undefined, it indicates that the problem is unbounded. Example:
Maximization case
Cj 6 9 0 0
SV X1 X2 S1 S2 Q
9 X2 -1 1 2 0 30
0 S2 -2 0 -1 1 10
Zj -9 9 18 0 270
29
Cj - Zj 15 0 -18 0
The solution in the above case is not optimal because not all Cj - Zj entries are 0 or negative, as
required in a maximization problem. The next variable to enter the solution should be X1.To
determine which variable will leave the solution, we examine the ratios of the quantity column
numbers to their corresponding numbers in the X1or pivot column. Since both pivot column
numbers are negative, an unbounded solution is indicated. No unbounded solutions, no outgoing
variable will exist.
5 8 2 0 0 0
SV X1 X2 X3 S1 S2 S3 Q
8 X2 1/4 1 1 -2 0 0 10
0 S2 4 0 1/3 -1 1 0 20
0 S3 2 0 2 2/5 0 1 10
30
2 8 8 16 0 5. Degeneracy
Zj 80
0
Cj - Zj 3 0 -6 -16 0
0
If there is a tie for the smallest ratio, this is a signal that degeneracy exists. Degeneracy can occur
right in the first (initial tableau). This normally happens when the number of constraints is less
than the number of variables in the objective function. Problem can be overcome by trial and
error method. Degeneracy is shown in the simplex algorithm alternatives back and forth
between the same non-optimal solutions, i.e., it puts a new variable in, then takes it out in the
next tableau, puts it back in ,and so on.
One simple way of dealing with the issue is to select either row (S2 or S3 in this case) arbitrary. If
we are unlucky and cycling does occur, we simply go back and select the other row.
Multiple optimal solutions exist when non-basic variable contains zero on its Cj - Zj row.
Example:Maximization problem
Cj 3 2 0 0
SV X1 X2 S1 S2 Q
31
2 X2 3/2 1 1 0 6
0 S2 1 0 1/2 1 3
Zj 3 2 2 0 12
Cj - Zj 0 0 -2 0
MaxZ=3X1+2X2
X1=0, X2=6, S2=3 and MaxZ=12 or: X1=3, X2=3/2 and MaxZ=12
The Cj - Zj value of the Non-basic variable (X1) is 0. Thus, there is alternative optimal solution.
Integer Programming: Linear programming has numerous diverse applications. However, one
key limitation for its many applications is the assumption of divisibility which requires non-
integer values are non-permissible. In linear programming problem, the decision variables
represent men, machines, vehicles, number of items to be produced etc. These variables make
sense only if they have integer values in the final solution to the linear programming problem.
This is the problem faced in real life practice. For example, if we get a solution to a problem
when we decide on the number of chairs and tables produced per day in a furniture industry as
2.53 chairs and 3.82 tables, it is meaningless because of non-integer solution. Hence a new
procedure has been developed in this direction for the case of linear programming problems
subjected to the additional restriction that the decision variables must have integer values. The
mathematical model for integer programming is simply the linear programming model with one
additional restriction that the variables must have integer values.
Goal Programming: Linear programming model restricted to a single objective function to be
maximized or minimized. This assumption is not realistic because, in most practical cases,
decision makers are faced a situation where they must achieve more than two objectives same
time. Therefore, goal programming model consists of constraints and a set of goals that are
prioritized in some sense. Examples:
Production Planning - Maximize Profit/Maximize Market Share
32
Location Selection - Maximize Sales/Minimize Delivery Cost
Goal Programming is a mathematical model, consisting of linear or nonlinear functions and
continuous or discrete variables, in which all functions have been transformed into goals. Goal
programming is a branch of multi-objective optimization, which in turn is a branch of multi-
criteria decision analysis (MCDA), also known as multiple-criteria decision making (MCDM).
This is an optimization programme. It can be thought of as an extension or generalization of
linear programming to handle multiple, normally conflicting objective measures. Each of these
measures is given a goal or target value to be achieved. Unwanted deviations from this set of
target values are then minimized in an achievement function.
CHAPTER THREE
Duality is a property of the simplex method that adds further versatility to the general LP model.
The term dual indicates that there are two ways of looking at each problem. Associated with
every LPP, there is another intimately related LPP. The original LPP is called the primal problem
while the corresponding intimately related problem is called its dual problem. In fact either of the
problems can be considered original as both originate from the same data; consequently the other
becomes its dual. The format of the simplex method is such that when the primal is solved, its
associated dual is also solved simultaneously.
Consider the following general primal problem which is given in the form:
Max. Z = C1X1 + C2X2 + … + CnXn Max. ∑
. . . .
. . . .
33
X1, X2,…, Xn ≥ 0
. . . .
. . . .
y1, y2,…, ym ≥ 0
Primal Dual
34
3X1 + 5X2 ≤ 24 y1, y2, y3 ≥ 0
X1, X2 ≥ 0
7. In primal the coefficients of constraints 7. In dual each column takes the position
column wise are ( ) row wise ( )
8. In primal the signs of constraints are less 8. In dual the signs of constraints are just
than or equal to the reverse, greater than or equal to
Solve both the primal and dual of the following LPP and observe their relation:
Max. Z = 20X1 + 50X2 Its dual problem is: Min. Z = 20y1 + 15y2
X1, X2 ≥ 0 y1, y2 ≥ 0
Subject to:
35
3X1 + 5X2 + 0S1 + S2 = 15
Cj 20 50 0 0
CB BV X1 X2 S1 S2 Xb
0 S1 5 4 1 0 20
0 S2 3 5 0 1 15
Zj 0 0 0 0
∆j -20 -50 0 0
⁄ and
Cj 20 50 0 0
CB BV X1 X2 S1 S2 Xb Min. ratio
0 S1 0 -13/3 1 -5/3 -5 -
20 X1 1 5/3 0 1/3 5 3
Zj 20 100/3 0 20/3
∆j 0 -50/3 0 20/3
⁄ and ⁄
Cj 20 50 0 0
CB BV X1 X2 S1 S2 Xb
0 S1 13/5 0 1 -4/5 8
50 X2 3/5 1 0 1/5 3
36
Zj 30 50 0 10 150
∆j 10 0 0 10
Since all the ∆j values are greater than or equal to zero, the current solution is optimal and is
given by X1 = 0 and X2 = 3 and maximum Z is 150.
Primal Dual
X2 = 3 (basic) S2 = 0 (non-basic)
S1 = 8 (basic) y1 = 0 (non-basic)
Subject to:
Cj 20 15 0 0 M M
CB BV y1 y2 S1 S2 A1 A2 Xb
0 A1 5 3 -1 0 1 0 20
0 A2 4 5 0 -1 0 1 50
Zj 0 0 0 0 0 0
∆j -20 -15 0 0 -M -M
Cj 20 15 0 0 M M
37
CB BV y1 y2 S1 S2 A1 A2 Xb Min. ratio
M A1 5 3 -1 0 1 0 20 4
M A2 4 5 0 -1 0 1 50 12.5
Zj 9M 8M -M -M M M
∆j 9M-20 8M-15 -M -M 0 0
⁄ and
Cj 20 15 0 0 M M
CB BV y1 y2 S1 S2 A1 A2 Xb Min. ratio
Zj 20 ⁄ ⁄ -M ⁄ M
∆j 0 ⁄ M ⁄ -M ⁄ 0
⁄ and ⁄
Cj 20 15 0 0 M M
CB BV y1 y2 S1 S2 A1 A2 Xb Min. ratio
Zj ⁄ 15 ⁄ -M ⁄ M
∆j ⁄ 0 ⁄ -M ⁄ 0
⁄ and ⁄
Cj 20 15 0 0 M M
CB BV y1 y2 S1 S2 A1 A2 Xb
38
Zj 12 15 0 -3 0 3 150
∆j -8 0 0 -3 -M 3-M
Since all the ∆j values are less than or equal to zero, the current solution is optimal and is given
by y1 = 0 and y2 = 10 and minimum Z* is 150.
Example: Food A contains 20 units of vitamin X and 40 units of vitamin Y per gram. Food B
contains 30 units of each of vitamin X and Y. the daily minimum human requirements of
vitamins X and Y are 900 and 1,200 units, respectively. The problem is to determine how many
grams of each type of food should be consumed so as to minimize the cost if food A costs 60 birr
per gram and food B costs 80 birr per gram using the concept of duality.
If such changes will be occurred, there should be a means to check for how long the present
optimal solution continues as optimal. The method of evaluating the degree to which the present
optimal solution is continued as optimal is called sensitivity analysis.
Sensitivity analysis is concerned with the study of „sensitivity‟ of the optimal solution of a LPP
with changes in parameters. In this case, we are going to determine the range (both lower and
upper) over which the linear programming model parameters can change without affecting the
current optimal solution.
Changes in Cj of variables
One of the important parameters of LPP is the coefficient of objective function. The test of
sensitivity of the objective function involves finding the range of values with in which each Cj
can lie without changing the current optimal solution.
Subject to:
4X1 + 3X2 ≤ 18
5X1 + 2X2 ≤ 19
X1, X2 ≥ 0
Cj 2 3 0 0
CB BV X1 X2 S1 S2 Xb Min. ratio
0 S1 4 3 1 0 18 6
0 S2 5 2 0 1 19 9.5
Zj 0 0 0 0
∆j -2 -3 0 0
⁄ and
Cj 2 3 0 0
CB BV X1 X2 S1 S2 Xb
3 X2 4/3 1 1/3 0 6
0 S2 7/3 0 -2/3 1 7
Zj 4 3 1 0 18
∆j 2 0 1 0
In the final simplex table, X1 and S1 are non-basic variables where as X2 and S2 are basic
variables. C1 = 2 is the coefficient of non-basic variable X1, and assume that C1 is subject to
change by ∆C1. Where . As you remember to maintain the optimality condition all
the elements in the index row (i.e. ∆j) should be all non-negative.
In this case:
∆j1 ≥ 0
40
Therefore, the range over which the parameter (C1) can change without affecting the current
optimal solution X1 = 0 and X2 = 6 is , 4
Cj 2 3 + ∆C2 0 0
CB BV X1 X2 S1 S2 Xb
0 S2 7/3 0 -2/3 1 7
Zj ⁄ 3 + ∆C2 ⁄ 0 18 + 6∆C2
∆j ⁄ 0 ⁄ 0
The current solution will be optimal so long as all the ∆j values are non-negative. Therefore:
⁄ ⁄
C2‟ – 3 ⁄
C2‟ ⁄
41
C2‟ ⁄
Therefore, the range over which the parameter (C1) can change without affecting the current
3
optimal solution X1 = 0 and X2 = 6 is , .
2
In LPP bi‟s represent capacity or availability of resources which are critical to the selection of
optimal alternative solution.
Subject to:
4X1 + 3X2 ≤ 18
5X1 + 2X2 ≤ 19
X1, X2 ≥ 0
Cj 2 3 0 0
CB BV X1 X2 S1 S2 Xb
3 X2 4/3 1 1/3 0 6
0 S2 7/3 0 -2/3 1` 7
Zj 4 3 1 0 18
∆j 2 0 1 0
The first resource is fully utilized. Therefore, its shadow price is 1. That means, if we add one
additional unit of the first resource the value of Z will increase by 1 unit. Suppose the first
resource increase by one unit and become 19 (i.e., b1 = 19). The new solution would be:
̅ ⃗
42
⁄
=( )*( )
⁄
⁄
=( )*( )
⁄
⁄
=( )*( )
⁄
⁄
( ) =( )
⁄
Therefore, the new solution would be X1 = 0, X2 = 19/3 and Z = 19. When there is a change in
the value of bi‟s of fully utilized resources, the current optimal solution will change.
2. Sensitivity of bi’s (which is not fully utilized)
If resources are not fully utilized a zero shadow price will appear in the ∆j row with these
constants (corresponding to slack or surplus variables). The value indicates that the value of
objective function will not change for any additional unit of that resource. Here let us assume
that the second resource availability changes (i.e., becomes Δb2).
2′ = 2 + Δ 2
In order to get a feasible solution b2‟ must be greater than or equal to zero.
̅ ⃗
⁄
( ) =( )*( )
⁄
⁄
( ) =( )*( )
⁄
2=6
2=7+Δ 2
7+Δb2 ≥ 0
Δb2 ≥ -7
43
2′ − 2 ≥ −7
2 ′ ≥ 12. Therefore, the range over which the parameter (b2) can change without affecting the
current optimal solution (0, 6) is [12, ∞).
CHAPTER FOUR
TRANSPORTATION PROBLEM
The transportation model deals with a special class of linear programming problem in which the
objective is to transport a homogeneous commodity from various origins or factories to different
destinations or markets at a total minimum cost.
The objective of transportation problem is to determine the amount of commodities which should
be transported from several sources to different destinations, at the minimum transportation cost
and/or time. The places where goods originate from (like plants, warehouse, etc.) are called the
sources or the origins and places where they are to be shipped are called the destinations.
The transportation algorithm applies to minimize the total cost of transporting a homogenous
commodity (product) from supply origins to demand destinations. However, it can also be
applied to the maximization of some total value or utility, in such a way that the profit is
maximized.
A transportation problem model, which has „m‟ sending locations (origins) and „n‟ receiving
locations (destinations) provides a framework for presenting all relevant data. These are:
1. Quantity supply of each origin
2. Quantity demand of each destination
3. Unit transportation cost from each origin to each destination
The transportation algorithm requires the assumptions that:
a. All goods are homogeneous, so that any origin is capable of supplying to any destination.
b. Transportation costs are a linear function of (or directly proportional to) the quantity shipped
over any route.
c. Each source has a fixed supply of units, where this entire supply must be distributed to the
destinations. Similarly, each destination has a fixed demand for units, where this entire
demand must be received from the sources.
Destination
To D1 D2 … Dn Total
Source (origins)
Supply
From
45
S2 X21 C21 X22 C22 … X2n C2n SS2
: : : : : :
Where:
SSi - is total quantity of commodity available at origin I (total supply of origin i).
Cij - measures the costs of transporting one unit of commodity from source i to destination
j.
Xij - is the quantity of commodities transported from ith origin to jth destination.
Minimize ∑ ∑
Subject to:
∑ , i = 1, 2, …, m (supply constraints)
∑ , j = 1, 2, …, n (demand constraints)
Minimize
Subject to:
: : : : Capacity
46
: : : : Requirement
As a remark we have to know that before applying the transportation algorithm to solve a
specific problem it is necessary to satisfy the following conditions:
a. Balanced case: a case where total supply equals total demand (DD = SS)
Customers
To D1 D2 D3 D4 Total
Supply
From
Total 15 19 13 18 65
Demand
47
65
The transportation algorithm is based on the assumption that the model is balanced, meaning that
the total demand equals the total supply. If the model is unbalanced, we can always add a
dummy source or a dummy destination to restore balance as shown on (b) and (c) above.
The feasible solutions property: A transportation problem will have feasible solutions if and
only if:
∑ ∑
A general transportation model with m sources and n destinations has m + n constraint equations,
one for each source and each destination. However, because the transportation model is always
balanced (sum of the supply = sum of the demand), one of these equations is redundant. Thus,
the model has m + n - 1 independent constraint equations, which means that the starting basic
solution consists of m + n - 1 basic variables.
An initial basic feasible solution to a transportation problem can be found by any one of the
following three methods:
The three methods differ in the "quality" of the starting basic solution they produce, in the sense
that a better starting solution yields a smaller objective value. In general, though not always, the
Vogel method yields the best starting basic solution, and the northwest-corner method yields the
worst. The tradeoff is that the northwest-corner method involves the least amount of
computations.
The method starts at the northwest-corner cell (route) of the tableau (variable X11).
48
Step 1: Allocate as much as possible to the selected cell, and adjust the associated amounts of
supply and demand by subtracting the allocated amount.
Step 2: Cross out the row or column with zero supply or demand to indicate that no further
assignments can be made in that row or column. If both a row and a column net to zero
simultaneously, cross out one only, and leave a zero supply (demand) in the uncrossed-out row
(column).
Step 3: If exactly one row or column is left uncrossed out, stop. Otherwise, move to the cell to
the right if a column has just been crossed out or below if a row has been crossed out. Go to step
1.
Step 4: Make sure that all the rim conditions are satisfied and cells are allocated.
Let us consider an example at this juncture to illustrate the application of NWC rule.
To W1 W2 W3 Total
Supply
From
150
In this method we do not consider the unit cost of transportation. The North West Corner cell X11
is chosen for allocation. The origin S1 has 70 items and the destination W1 requires only 65
items. Hence it is enough to allot 65 items from S1 to W1. The origin S1 which is alive with 5
more items can supply to the destination to the right is alive with 5 more items can supply to the
destination to the right of W1 namely W2 whose requirement is 42. So, we supply 5 items to W2
thereby the origin S1 is exhausted. W2 requires 37 items more. Now consider the origin S2 that
has 30 items to spare. We allot 30 items to the cell (X22) so that the origin S2 is exhausted. Then,
move to origin S3 and supply 7 more items to the destination W2. Now the requirement of the
destination W2 is complete and S3 is left with 43 items and the same can be allotted to the
49
destination W3. Now the origin S3 is emptied and the requirement at the destination W3 is also
complete. This completes the initial solution to the problem.
To W1 W2 W3 Total Supply
From
S1 65 5 5 6 7 70
S2 4 30 2 5 30
S3 1 7 5 43 4 50
150
Least-Cost Method
The least-cost method finds a better starting solution by concentrating on the cheapest routes.
The method assigns as much as possible to the cell with the smallest unit cost (ties are broken
arbitrarily). Next, the satisfied row or column is crossed out and the amounts of supply and
demand are adjusted accordingly. If both a row and a column are satisfied simultaneously, only
one is crossed out, the same as in the northwest-corner method. Next, look for the uncrossed-out
cell with the smallest unit cost and repeat the process until exactly one row or column is left
uncrossed out.
Step 1: Determine the least cost among all the rows of the transportation table.
Step 2: Identify the row and allocate the maximum feasible quantity in the cell corresponding to
the least cost in the row. Then eliminate that row (column) when an allocation is made.
Step 3: Repeat steps 1 and 2 for the reduced transportation table until all the available quantities
are distributed to the required places. If the minimum cost is not unique, the tie can be broken
arbitrarily.
50
Step 4: Make sure that all the rim conditions are satisfied and cells are allocated.
To W1 W2 W3 Total Supply
From
S1 5 7 8 70
S2 4 4 6 30
S3 6 7 7 50
150
We examine the rows S1, S2 and S3, 4 is the least cost element in the cell (S2, W1) and (S2, W2)
and the tie can be broken arbitrarily. Select (S2, W1). The origin S2 can supply 30 items to W1
and thus origin S2 is exhausted. W1 still requires 35 more units. Hence, shade the row S2.
Shading S2, we observe that 5 is the least element in the cell (S1, W1) and examine the supply at
S1 and demand at W1. The destination W1 requires 35 items and this requirement is satisfied
from S1 so that the column W1 is shaded next. Next, we choose 7 as least element corresponding
to the cell (S1, W2). We supply 35 units from S1 to W2. Now, only one row is left behind. Hence,
we allow 7 items from S3 to W2 and 43 items S3 to W3.
To W1 W2 W3 Total Supply
From
S1 35 5 35 7 8 70
S2 30 4 4 6 30
S3 6 7 7 43 7 50
51
Total Demand 65 42 43 150
150
The cost of the allocation by the least cost method is (35 x 5) + (35 x 7) + (30 x 4) + (7 x 7) + (43
x 7) = 890
The quality of the least-cost starting solution is better than that of the north-west corner method
because it yields a smaller value of transportation cost.
This method is based on the 'difference' associated with each row and column in the matrix
giving unit cost of transportation cij. This 'difference' is defined as the arithmetic difference
between the smallest and next to the smallest element in that row or column. This difference in a
row or column indicates the minimum unit penalty incurred in failing to make an allocation to
the smallest cost cell in that row or column. This difference also provides a measure of proper
priorities for making allocations to the respective rows and column.
In other words, if we take a row, we have to allocate to the cell having the least cost and if we
fail to do so, extra cost will be incurred for a wrong choice, which is called penalty. The
minimum penalty is given by this difference. So, the procedure repeatedly makes the maximum
feasible allocation in the smallest cost cell of the remaining row or column, with the largest
penalty. Once an allocation is fully made in a row or column, the particular row or column is
eliminated. Hence and allocation already made cannot be changed. Repeat the same procedure of
finding penalty of all rows and columns, choosing the highest penalty in a row or column and
allotting as much as possible in the least cost cell in that row or column. Thus we eliminate
another fully allocated row or column. We repeat till all supply and demand are exhausted.
VAM is an improved version of the Least-Cost Method that generally, but not always, produces
better starting solutions.
Steps in VAM:
Step 1: For each row (column), determine a penalty measure by subtracting the smallest unit cost
element in the row (column) from the next smallest unit cost element in the same row (column).
Step 2: Identify the row or column with the largest penalty. If there is a tie (equal penalty) it can
be broken by selecting the cell where maximum allocation can be made. Allocate as much as
possible to the variable with the least unit cost in the selected row or column. Adjust the supply
and demand, and cross out the satisfied row or column. If a row and a column are satisfied
52
simultaneously, only one of the two is crossed out, and the remaining row (column) is assigned
zero supply (demand).
Step 3: (a) If exactly one row or column with zero supply or demand remains uncrossed out,
stop.
(b) If one row (column) with positive supply (demand) remains uncrossed out,
determine the basic variables in the row (column) by the least-cost method. Stop.
(c) If all the uncrossed out rows and columns have (remaining) zero supply and demand,
determine the zero basic variables by the least-cost method. Stop.
Step 4: Make sure that all the rim conditions are satisfied and cells are allocated.
To Total Supply
From W1 W2 W3
S1 65 5 5 7 8 70
S2 4 30 4 6 30
S3 6 7 7 43 7 50
150
The difference between the smallest and next to the smallest element in each row and in each
column is calculated. We choose the maximum from among the differences. The first individual
allocation will be to the smallest cost of a row or column with the largest difference. So we
select the column W2 (penalty = 3) for the first individual allocation, and allocate to (S2, W2) as
much as we can, since this cell has the least cost location. Thus 30 units from S 2 are allocated to
W2. This exhausts the supply from S2. However, there is still a demand of 12 units from W2. The
allocations to other cells in that column are 0. The next step is to cross out row S 2 (as it is
exhausted). The next largest unit difference corresponds to the row S1. This leads to an allocation
53
in the corresponding minimum cost location in row S1, namely cell (S1, W1). The maximum
possible allocation is only 65 as required by W1 from S1 and allocation of 0 to others in the row
S1. Column W1 is thus crossed out. Maximum difference is 1 in row S3 and in column W3. Select
arbitrarily S3 and allot the least cost cell (S1, W2) 5 units. Cross out row S1 for it is already
exhausted. Now, we have only one row S3 and two columns W2 and W3 indicating that the entire
available amount from S3 has to be moved to W2 and W3 as per their requirements.
The cost of allocation (i.e., the associated objective value) by Vogel's Approximation Method
will be: (65× 5) + (5× 7) + (30 × 4) + (7 × 7) + (43× 7) = 325 + 35 +120 + 49 + 301 = 830.
As we have discussed under the assumption of transportation problem, there are three cases.
These are:
Unbalanced case: a case where total supply exceeds total demand (SS > DD), and to
change this unbalanced case into its balanced form we should introduce dummy
receiver. These shipments indicate unused supply capacity.
Customers
To D1 D2 D3 D4 D5 Total
Supply
From
54
Total 20 20 15 10 5 75
Demand
70
Customers
To D1 D2 D3 D4 D5 Total
Supply
From
Total Demand 20 20 15 10 5 5 75
75
Unbalanced case: a case where total demand exceeds total supply (SS < DD), and to change this
unbalanced case into its balanced form we should introduce dummy supplier. These shows
unmet demand.
Customers
To D1 D2 D3 D4 D5 Total
Supply
From
Source
55
S2 X21 6 X22 1 X23 2 X24 5 X24 1 20
Total 20 20 15 10 5 65
Demand
70
Customers
To D1 D2 D3 D4 D5 Total
Supply
From
0 0 0 0 0 5
Total 20 20 15 10 5 70
56
Demand 70
Optimality test: A basic feasible solution is optimal if and only if for every
(i, j) such that is non-basic. Thus, the only work required by the optimality test is the
derivation of the values of and for the current basic feasible solution and then the
calculation of these will be described below. Since is required to be
zero if is a basic variable, and satisfy the set of equations for each (i, j)
such that is basic. There are basic variables. Since the number of unknowns (the
and ) is , one of these variables can be assigned a value arbitrarily without violating
the equations. The choice of this one variable and its value does not affect the value of any
, even when is non-basic, so the only (minor) difference it makes is in the ease
of solving these equations. A convenient choice for this purpose is to select the that has the
largest number of allocations in its row (break any tie arbitrarily) and to assign to it the value
zero. Because of the simple structure of these equations, it is then very simple to solve for the
remaining variables algebraically. If the values is negative we conclude that the
current basic feasible solution is not optimal.
To demonstrate, we give each equation that corresponds to a basic variable in the above initial
BF solution that we did in the LCM.
To W1 W2 W3 Total Supply
From
S1 35 5 35 7 8 70 u1
S2 30 4 4 6 30 u2
S3 6 7 7 43 7 50 u3
150
v1 v2 v3
57
b. Basic variables
Assign any one of the ui‟s or vj‟s the value zero. Here u1 is assigned zero.
, , let u1 = 0, v1 = 5
, , u2 = -1
, , v2 = 7
, , u3 = 0
, , v3 = 7
c. Non-basic variables
According to the optimality criterion for cost minimizing transportation problem, the current
solution is not optimal, since the opportunity costs of the unoccupied cells are not all zero or
positive. The value -2 is indicating that the total transportation cost can be reduced in the
multiple of 2 by shifting an allocation to this cell. If we do have more than one negatives, we
select the one with the larger in absolute terms.
Trace a closed loop from this cell. In order to maintain feasibility, examine the even numbered
cells at the corners of closed loop, and select the one that has the smallest allocation. This
determines the maximum number of units that can be shifted along the closed path. Subtract this
smallest allocation from even numbered cells of the closed loop and add to the odd numbered
cells. The even numbered vertices are donors while the odd numbered vertices are recipients.
35 35 .
[ . .] [ ]
. 7 43
Check for optimality.
To W1 W2 W3 Total Supply
From
S1 65 5 5 7 8 70 u1
58
S2 4 30 4 6 30 u2
S3 6 7 7 43 7 50 u3
150
v1 v2 v3
d. Basic variables
Assign any one of the ui‟s or vj‟s the value zero. Here v1 is assigned zero.
, , let v1 = 0, u1 = 5
, , v2 = 2
, , u2 = 2
, , u3 = 5
, , v3 = 2
e. Non-basic variables
Therefore, the current solution is optimal since all the values are greater than or
equal to zero.
There are many situations where the assignment of people or machines and so on to different
jobs is a necessary. Peoples are assigned to different jobs (works) like: workers are assigned to
different machines, clerks are assigned to various check-out counters, salesmen are assigned to
59
different sales areas, service crews are assigned to different districts, and so on are typical
examples of the assignment problems.
The assignment is a problem because people possess varying abilities for performing different
jobs and, therefore, the costs of performing the jobs by different people are different. Obviously,
if all persons could do a job in the same time or at the same cost then it would not matter who is
assigned on the job.
Thus, in an assignment problem, the question is how should the assignments be made in order
that the total cost of performing the job is minimum (or the total value is maximized when
payoffs are given in terms of, say profits).
"The best person for the job" is an apt description of the assignment model. The situation can be
illustrated by the assignment of workers with varying degrees of skill to jobs. A job that happens
to match a worker's skill costs less than one in which the operator is not as skillful. The objective
of the model is to determine the minimum-cost assignment of workers to jobs.
Job
C C C …. C
C C C …. C nxn
Person
: : : …. :
C C C …. C
1. Number of sources and destinations need 1. Number of workers and jobs need to be
not be equal. Hence, the cost matrix is not equal. Hence, the cost matrix is a square
necessarily be a square matrix. matrix.
2. indicates the quantity to be transported 2. indicates the jth job to be assigned to ith
from ith origin to jth destination. It can take person. It can take either the value 1 or 0.
any possible value.
3. The row and column sum is equal to SSi 3. The row and column sum is exactly 1.
and DDj
60
4. The problem is unbalanced if ∑ 4. The problem is unbalanced if the cost
∑ . matrix is not a square matrix.
A method, designed specifically to handle the assignment problems in an efficient way, which is
based on the concept of opportunity cost.
A typical balanced assignment problem involving a certain number of persons and an equal
number of jobs and with an objective function of the minimization type, the method is applied as
listed in the following steps.
Subtract the smallest cost element in each row of the cost table from each element in
that row. As a result, there shall be at least one zero in each row of this new table,
called the Reduced Cost Table.
In the reduced cost table, subtract the smallest cost element in each column from every
other entry in the column. As a consequence of this action, there would be at least one
zero in each of the rows and columns of the second reduced cost table.
Step 3: Draw the minimum number of horizontal and vertical lines (not the diagonal ones) that
are required to cover all the zero elements.
If the number of lines drawn is equal to n (the number of rows or columns) the solution
is optimal, and proceed to step 6. If the number of lines drawn is smaller than n, go to
step 4.
Step 4: Select the smallest uncovered (by the lines) cost element. Subtract this element from all
uncovered elements including itself and add this element to each value located at the
intersection of any two lines. The cost elements through which only one line passes
remain unaltered.
Step 6: Given the optimal solution, make the job assignments as indicated by the zero elements.
This is done as follows:
61
(a). Locate a row which contains only one zero element. Assign the job corresponding to
this element to its corresponding person. Cross out the zero‟s, if any, in the column
corresponding to the element, which is indicative of the fact that the particular job
and person are no more available.
(b). Repeat (a) for each of such rows which contain only one zero.
If there is no row with only a single zero element, perform similar operation in
respect of each column containing only one zero element, crossing out the zero(s),
if any, in the in which the element lies.
(c). If there is no row or column with only a single zero element left, then select a
row/column arbitrarily and choose one of the jobs (or persons) and make the
assignment. Now cross the remaining zeros in the column and row in respect of
which the assignment is made.
(d). Repeat steps (a) through (c) until all assignments are made.
(e). Determine the total cost with reference to the original cost table.
Example: Solve the following assignment problem for optimal solution using HAM. The time
taken (in minutes) by workers is presented in the table.
Job
Worker A B C D
1 45 40 51 67
2 57 42 63 55
3 49 52 48 64
4 41 45 60 55
Subtract the smallest cost element in each row of the cost table from each element in
that row. As a result, there shall be at least one zero in each row of this new table,
called the Reduced Cost Table.
Job
Worker A B C D
1 5 0 11 27
62
2 15 0 21 13
3 1 4 0 16
4 0 4 19 14
In the reduced cost table, subtract the smallest cost element in each column from every
other entry in the column.
Job
Worker A B C D
1 5 0 11 14
2 15 0 21 0
3 1 4 0 3
4 0 4 19 1
As a consequence of this action, there would be at least one zero in each of the rows and columns
of the second Reduced Cost Table.
As a general rule, we should first cover those rows/columns which contain larger
number of zeros.
Job
Worker A B C D
1 5 0 11 14
2 15 0 21 0
3 1 4 0 3
4 0 4 19 1
Step 4: Since the number of lines drawn is equal to 4 (= n), the optimal solution is obtained. The
assignments are made after scanning the rows and columns for unit zeros. Assignments
made are shown with squares, as follows.
Job
Worker A B C D
63
1 5 0 11 14
2 15 0 21 0
3 1 4 0 3
4 0 4 19 1
The total time associated with the optimal job assignment is:
1 B 40
2 D 55
3 C 48
4 A 41
184
Job
Mechanic 1 2 3 4 5
A 10 3 3 2 8
B 9 7 8 2 7
C 7 5 6 2 4
D 3 5 8 2 4
E 9 10 9 6 10
Prepare the modified matrix: the Reduced Cost Table would be as follows.
Job
Mechanic 1 2 3 4 5
64
A 8 1 1 0 6
B 7 5 6 0 5
C 5 3 4 0 2
D 1 3 6 0 2
E 3 4 3 0 4
Obtain column reductions and draw the minimum number of lines to cover all zeros.
Job
Mechanic 1 2 3 4 5
A 7 0 0 0 4
B 6 4 5 0 3
C 4 2 3 0 0
D 0 2 5 0 0
E 2 3 2 0 2
Since the number of lines covering all zeros is less than the number of columns/rows, we modify
the table by selecting the smallest uncovered (by the lines) cost element and subtract it from all
uncovered elements including itself and add this element to each value located at the intersection
of any two lines. The cost elements through which only one line passes remain unaltered.
Accordingly, the new table would appear as shown in the table below. The Reduced Cost Table
would be:
Job
Mechanic 1 2 3 4 5
A 7 0 0 2 6
B 4 2 3 0 3
C 2 0 1 0 0
D 0 2 5 2 2
E 0 1 0 0 2
65
The optimal assignments can be made as the least number of lines covering all zeros in table
equals.
Considering rows and columns, the assignments can be made in the following order:
Select the second row. Assign mechanic B to job 4. Cross out zeros at cells (C, 4) and (E,
4).
Consider row 4. Assign mechanic D to job 1. Cancel the zero at cell (E, 1).
Since there is A single zero in the 5th row, put mechanic E to job 3 and cross out the zero at
(A, 3).
There being only a single zero left in each of the 1st and 3th rows, we assign job 2 to
mechanic A and job 5 to C.
Job
Mechanic 1 2 3 4 5
A 7 0 0 2 6
B 4 2 3 0 3
C 2 0 1 0 0
D 0 2 5 2 2
E 0 1 0 0 2
The optimal job assignment and cost associated with assignment pattern is:
A 2 3
B 4 2
C 5 4
D 1 3
E 3 9
The Hungarian method of solving an assignment problem requires that the number of columns
should be equal to the number of rows. When they are equal, the problem is a balanced problem,
and when not, it is an unbalanced problem.
66
Thus, where there are 5 workers and 4 machines, or when there are 4 workers and 6 machines we
have unbalanced situations in which one-to-one match is not possible. In case the machines are
in excess, the excess machine(s) would remain idle and so is the case when men are in excess.
In such situations, dummy column(s)/row(s), whichever is smaller in number, are inserted with
zeros at the cost elements. After introducing dummy columns/rows, the problem is solved in the
usual manner.
Example: a company has 4 machines to do 3 jobs. Each job can be assigned to one machine. The
cost of doing the job in different machine is given below. Determine the optimal job assignment
which minimizes the total cost.
Machine
Jobs A B C D
1 18 24 28 32
2 8 13 17 18
3 10 15 19 22
Since the cost matrix is not a square matrix, we add a dummy row (Dm) with all elements zero.
Machine
Jobs A B C D
1 18 24 28 32
2 8 13 17 18
3 10 15 19 22
Dm 0 0 0 0
67