Professional Documents
Culture Documents
1
INTRODUCTION TO OPERATIONS RESEARCH I
2
Alternatives of the decision problem can take the form of unknown variables.
Variables are used to construct the restrictions and objective criterion in the form of appropriate
mathematical functions.
The end result is mathematical model relating the variables, constraints and objective function.
Typical OR model:
It is optimal if, in addition to being feasible, it yields the best (maximum or minimum) value of the
objective function.
3
Decision problems must include important intangible factors that may not be readily quantifiable.
Foremost among these factors is the presence of human element in most decision elements.
Mathematical aspect of OR should be viewed in the wider context of the decision-making process.
OR models are designed to optimize a specific objective criterion subject to a set of constraints, however
the quality of the resulting solution depends on the completeness of the model in representing the real
system.
If the model happens to represent the real system reasonably well, then its solution is optimum also for the
real situation.
4
SOLVING THE OR MATHEMATICAL MODEL
In OR, we do not have a single general technique to solve all mathematical models that can arise in
practice.
Instead, the type and complexity of the mathematical model dictate the nature of the solution method.
In OR mathematical models:
Decision variables must be integers or continuous.
Objective and constraint functions can be linear or non-linear.
Optimization problems posed by these models give rise to a variety of solution methods, each designed to
account for special mathematical properties of the model.
5
Most prominent and successful of these techniques → linear programming
All objective and constraint functions linear
All variables continuous
Above techniques are only a few of the numerous techniques available that are used.
6
A peculiarity of most OR techniques is that solutions are not generally obtained in formula-like closed
forms.
An algorithm provides fixed computational rules that are applied repetitively to the problem, with each
repetition or iteration moving the solution closer to the optimum.
Because the computations associated with each iteration are typically tedious and voluminous, it is
imperative that these algorithms be executed on the computer.
7
Some mathematical models can be so complex that it is impossible to solve them by any of the available
optimization algorithms.
In such cases, it can be necessary to abandon the search for optimal solution and simply seek a good
solution using heuristics.
Heuristics generally applies approximate and practical rules based on experience to produce a good
solution to the problem.
Heuristics is much faster to arrive at the solution in comparison to exact optimization algorithm.
8
SIMULATION MODELING AND QUEUING
Despite impressive advances in mathematical modeling, many real situations still are well beyond the
capabilities of representing systems mathematically.
Even when it is plausible to formulate a proper mathematical model, the resulting optimization problem
can prove too complex for available solution algorithms.
Queuing models utilize probability and stochastic models to analyze waiting lines.
Simulation estimates the measures of performance by imitating the behavior of the real system.
9
The main difference between queuing and simulation is that queuing models are purely mathematical, and
hence are subject to specific assumptions that limit their scope of application.
Simulation, on the contrary, is flexible and can be used to analyze practically any queuing situation.
Execution of some simulation models, even on the fastest computers, can be slow.
10
LECTURE 2
INTRODUCTION TO OPERATIONS RESEARCH II
1
INTRODUCTION TO OPERATIONS RESEARCH II
This is a rare occurrence in OR, and most applications usually involve varying levels of approximations.
Figure 1 below depicts the levels of abstraction that characterize the development of an OR model.
We abstract or summarize the assumed real world from the real situation by concentrating on the
dominant variables that control the behavior of the real system.
The model expresses in an amenable manner the mathematical functions that represent the behavior of the
assumed real world.
2
Figure 1: Levels of abstraction in model development.
3
Modeling is the enterprise of devising a simplified representation of a complex system with the goal of
providing predictions of the system's performance measures of interest.
A model is designed to capture certain behavioral aspects of the modeled system which are of interest to
the analyst / modeler in order to gain knowledge and insight into the system's behavior.
While modeling is ultimately motivated by economic considerations, several motivational strands may be
discerned:
1. Evaluating system performance under ordinary and unusual scenarios.
2. Predicting the performance of experimental system designs.
3. Ranking multiple designs and analyzing their tradeoffs.
4
PHASES OF AN OPERATIONS RESEARCH STUDY
An OR study is rooted in teamwork, where the OR analysts and the client work side by side.
The OR analysts' expertise in modeling must be complemented by the experience and cooperation of the
client for whom the study is being carried out.
It is a science by virtue of the mathematical techniques it embodies, and it is an art because the success of
the phases leading to the solution of the mathematical model depends largely on the creativity and
experience of the operations research team.
Effective [OR] practice requires more than analytical competence: It also requires, among other attributes,
technical judgment (for example, when and how to use a given technique) and skills in communication
and organizational survival.
5
It is difficult to prescribe specific courses of action (similar to those dictated by the precise theory of
mathematical models) for these intangible factors.
6
Phase 3, dealing with model solution, is the best defined and generally the easiest to implement in an OR
study, because it deals mostly with precise mathematical models.
1. Problem Definition
It involves defining the scope of the problem under investigation.
7
2. Model Construction
It entails an attempt to translate the problem definition into mathematical relationships.
If the resulting model fits one of the standard mathematical models, such as linear programming, we can
usually reach a solution by using available algorithms.
Alternatively, if the mathematical relationships are too complex to allow the determination of an analytic
solution, the OR team may opt to simplify the model and use a heuristic approach, or they may consider
the use of simulation, if appropriate.
In some cases, mathematical, simulation, and heuristic models can be combined to solve the decision
problem.
8
3. Model Solution
It is by far the simplest of all OR phases because it involves the use of well-defined optimization
algorithms.
It deals with obtaining additional information about the behavior of the optimum solution when the model
undergoes some parameter changes.
Sensitivity analysis is particularly needed when the parameters of the model cannot be estimated
accurately.
In these cases, it is important to study the behavior of the optimum solution in the neighborhood of the
estimated parameters.
9
4. Model Validity
It checks whether or not the proposed model does what it purports to do-that is, does it predict adequately
the behavior of the system under study?
Initially, the OR team should be convinced that the model's output does not include surprises.
On the formal side, a common method for checking the validity of a model is to compare its output with
historical output data.
The model is valid if, under similar input conditions, it reasonably duplicates past performance.
10
Generally, however, there is no assurance that future performance will continue to duplicate past
behavior.
Also, because the model is usually based on careful examination of past data, the proposed comparison is
usually favorable.
If the proposed model represents a new or non-existing system, no historical data would be available.
In such cases, we can use simulation as an independent tool for verifying the output of the mathematical
model.
11
5. Implementation
Implementation of the solution of a validated model involves the translation of the results into
understandable operating instructions to be issued to the people who will administer the recommended
system.
12
LECTURE 3
INTRODUCTION TO OPERATIONS RESEARCH III
1
INTRODUCTION TO OPERATIONS RESEARCH III
Since war involved strategic and tactical problems that were highly complicated, to expect adequate
solutions from individuals or specialists in a single discipline was unrealistic.
Groups of individuals who were collectively considered specialists in mathematics, economics, statistics
and probability theory, engineering, and behavioural and physical sciences were formed as special units
within the armed forces in order to deal with the strategic and tactical problems of various military
operations.
2
After the war was over, scientists who had been active in military OR groups made efforts to apply OR
approach to civilian problems related to business, industry, research development, etc.
There were three important factors behind rapid development of using OR approach:
1. Economic and industrial boom after WW II resulted in greater mechanization, automation,
decentralization of operations and division of management functions.
3
In 1939, mathematicians L. Kantorvich and T. Koopmans developed mathematical theory of Linear
Programming.
In 1947, G. B. Dantzig developed simplex method for solving linear programs not possible by
graphical method.
Besides LP, many other techniques of OR such as statistical quality control, dynamic programming,
queuing theory and inventory theory were well developed before 1950.
Use of computers made it possible to apply many OR techniques for practical decision analysis.
4
During the 1950s, there was substantial progress in application of OR techniques for civilian activities
along with a greater interest in professional development and education of OR.
5
In 1965, project scheduling techniques P.E.R.T. and C.P.M. were developed as efficient tools for
scheduling and monitoring lengthy, complex and expensive projects of that time.
Due to OR's multi-disciplinary character and its application in varied fields, it has a bright future →
provided people devoted to study of OR can help meet the needs of society.
6
DEFINITIONS OF OPERATIONS RESEARCH
OR is the application of methods of science to complex problems in the direction and management of
large systems of men, machines, materials and money in industry, business, government and defence.
The distinctive approach is to develop a scientific model of the system incorporating measurement of
factors such as chance and risk, with which to predict and compare outcomes of alternative decisions,
strategies or controls.
The purpose is to help management in determining its policy and actions scientifically.
7
OR is the systematic application of quantitative methods, techniques and tools to the analysis of problems
involving the operation of systems.
OR utilizes planned approach/ scientific method and an interdisciplinary team in order to represent
complex functional relationships as mathematical models for the purpose of providing a quantitative basis
for decision making and uncovering new problems for quantitative analysis.
OR is concerned with scientifically deciding how to best design and operate man-machine systems that
usually require allocation of scarce resources.
8
OR is the application of scientific methods, techniques and tools to problems involving the operations of a
system so as to provide those in the control of the system with optimum solutions to the problems.
OR is the application of the scientific methods by scientists and subject specialists to the study of the
given operation.
Its purpose is to give administration, a basis for predicting quantitatively the most effective results of an
operation under given set of variable conditions and thereby to provide a sound basis for decision-making.
In OR, research techniques and scientific methods are employed for the analysis and also for studying the
current or future problems.
9
Although OR never makes decisions for the management, it presents management with a careful scientific
and quantitative analysis of problem so that the management will be in a more proper position to make
sounder decisions.
10
LECTURE 4
LINEAR PROGRAMMING, GRAPHICAL METHOD AND SIMPLEX METHOD I
1
LINEAR PROGRAMMING, GRAPHICAL METHOD AND SIMPLEX METHOD I
INTRODUCTION
We often face situations where decision making is a problem of planning activity.
The problem generally is of utilizing the scarce resources in an efficient manner so as to maximize the profit or to minimize
the cost or to yield the maximum production.
Linear programming in particular deals with the optimization (maximization or minimization) of linear functions subject to
linear constraints.
2
Linear programming is widely used to tackle a number of industrial, economic, marketing and distribution problems.
Oil refineries, chemical industries, steel industries and food processing industries are using linear programming with
considerable success.
In defence, this technique is being employed in inspection, optimal bombing pattern, design of weapons, etc.
Actually linear programming can be applied to any situation where a linear function of variables has to be optimized subject to
a set of linear equations or inequalities.
This lecture and next seven lectures present the principles of linear programming and the solution methods.
Beginning with the graphical method, the different forms of simplex method for solving linear programming problems and
duality theory are described.
3
FORMULATION OF THE LINEAR PROGRAMMING PROBLEM
To begin with, a problem is to be presented in a linear programming form which requires defining the variables involved,
establishing relationships between them and formulating the objective function and the constraints.
It is illustrated through a few examples, wherein the stress is on the analysis of the problem and formulation of the linear
programming model.
Example 1
A company produces two types of models: M1 and M2.
Each M1 model requires 4 hours of grinding and 2 hours of polishing, whereas each M2 model requires 2 hours of grinding and 5
hours of polishing.
Each grinder works for 40 hours a week and each polisher works for 60 hours a week.
How should the company allocate the production capacity to two types of models so that it makes the maximum profit in a week?
4
Solution
Let x1 be the number of M1 models and x2 the number of M2 models produced per week.
(i)
To produce these number of models, the total number of grinding hours needed per week:
Since the number of grinding hours available is not more than 80 and the number of polishing hours is not more than 180,
therefore:
(ii)
(iii)
5
Also since the negative number of models are not produced, obviously we must have:
(iv)
The variables that enter into the problem are called decision variables.
The expression (i) showing the relationship between the company's goal and the decision variables is called the objective
function.
The inequalities (ii), (iii) and (iv) are called the constraints.
The objective function and the constraints being all linear, it is a linear programming problem (L.P.P.).
6
Example 2
Consider the following problem faced by a production planner in a soft-drink plant.
However, each can be used on both types with some loss of efficiency.
The machines can be run 8 hours per day, 5 days per week.
Weekly production of drink cannot exceed 300,000 ounces and the market can absorb 25,000 8-ounce bottles and 7,000 16-ounce
bottles per week.
7
The planner wishes to maximize his profit subject, of course, to all the production and marketing restrictions.
Solution
Let x1 units of 8-ounce bottle and x2 units of 16-ounce bottle be produced per week.
(i)
Since an 8-ounce bottle takes 1/100 minutes and a 16-ounce bottle 1/40 minutes on machine A and the machine can run 8 hours
per day, 5 days per week, which means 2400 minutes per week, we therefore have:
(ii)
8
Also since an 8-ounce bottle takes 1/60 minutes and a 16-ounce bottle 1/75 minutes on machine B which can run 2400 minutes
per week, we therefore have:
(iii)
(iv)
As the market can absorb at the most 25,000 8-ounce bottles and 7,000 16-ounce bottles per week, therefore:
(v)
Hence this allocation problem of the production planner is to find x1, x2 which:
9
Example 3
A firm making castings uses electric furnace to melt iron with the following specifications:
Specifications and costs in dollars of various raw materials used for this purpose are given below:
If the total charge of iron metal required is 4 tonnes, find the weight in kg of each raw material that must be used in the optimal
mix at minimum cost.
10
Solution
Let x1, x2, x3 be the amounts in kg of these raw materials.
(i)
(ii)
(iii)
(iv)
11
For iron melt to have a maximum of 2.35% silicon:
(v)
Also since the materials added up must be equal to the full charge weight of 4 tonnes, we have:
(vi)
(vii)
12
LECTURE 5
LINEAR PROGRAMMING, GRAPHICAL METHOD AND SIMPLEX METHOD II
1
LINEAR PROGRAMMING, GRAPHICAL METHOD AND SIMPLEX METHOD II
GRAPHICAL METHOD
Linear programming problems involving only two variables can be effectively solved by a graphical technique.
Even then, the graphical method provides a pictorial representation of the solution and one gets ample insight into the basic
concepts used in solving large L.P.P.
Working Procedure
To solve a linear programming problem graphically, follow the following steps:
1. Formulate the given problem as a linear programming problem.
2. Plot the given constraints as equalities on x1, x2 - coordinate plane and determine the convex region formed by them.
3. Determine the vertices of the convex region and find the value of the objective function at each vertex.
The vertex which gives the optimal (maximum or minimum) value of the objective function gives the desired optimal solution
to the problem.
2
A region or a set of points is said to be convex if the line joining any two of its points lies completely in the region (or the set).
Figures 1 and 2 below represent convex regions, while Figures 3 and 4 do not form convex sets.
Otherwise:
Draw the dotted line through the origin representing the objective function with Z = 0.
As Z is increased from 0, this line moves to the right remaining parallel to itself.
We go on sliding this line (parallel to itself) till it is farthest away from the origin and passes through only one vertex of the
convex region.
When it is required to minimize Z, value of Z is increased till the dotted line passes through the nearest vertex of the convex
region.
3
Example 4
Solve the L.P.P. of Example 1 graphically.
Solution
We consider x1, x2 - coordinate system as shown in Figure 5.
The non-negativity restrictions (iv) imply that the values of x1, x2 lie in the first quadrant only.
4
We plot the lines:
Then any point on or below satisfies (ii) and any point on or below satisfies (iii).
This shows that the desired point (x1, x2) must be somewhere in the shaded convex region OABC.
This region is called the solution space or region of feasible solutions for the given problem.
Its vertices are O(0,0), A(20,0), B(2.5, 35) and C(0, 36).
5
Otherwise.
Our aim is to find the point in the solution space which maximizes the profit function Z.
To do this, we observe that on making Z = 0, (i) becomes which is represented by the dotted line LM through O.
As the value of Z is increased, the line LM starts moving parallel to itself towards the right.
In this way, we go on sliding LM till it is furthest away from the origin and passes through one of the corners of the convex
region.
It is also possible that such a line can be one of the edges of the solution space.
In that case, every point on that edge gives the same maximum value of Z.
6
Example 5
Find the maximum value of:
Solution
Any point (x, y) satisfying the conditions x ≥ 0, y ≥ 0 lies in the first quadrant only.
Also since , and , the desired point (x, y) lies within the convex region
ABCDE (shown shaded in Figure 6).
Its vertices are A(3, 3), B(20, 3), C(20, 10), D(18, 12) and E(12, 12).
7
The values of Z at these five vertices are , , , and .
Since the maximum value of Z is 72, which occurs at the vertex of D, the solution to the L.P.P. is:
8
SOME EXCEPTIONAL CASES
The constraints generally give region of feasible solution which can be bounded or unbounded.
In problems involving two variables and having a finite solution, we observed that the optimal solution existed at a vertex of
the feasible region.
It is actually true for all L.P. problems for which solutions exist.
Thus it can be stated that if there exists an optimal solution of an L.P.P., it will be at one of the vertices of the solution space.
We now solve below an example to illustrate an exceptional case of unbounded solution mentioned above.
9
Example 6
Using graphical method, solve the following L.P.P.:
Solution
We consider x1, x2 - coordinate system.
Any point (x1, x2) satisfying the restrictions (iv) lies in the first quadrant only.
The solution space satisfying the constraints (ii) and (iii) is the convex region shown shaded in Figure 7.
10
Here the solution space is unbounded.
11
The vertices of the feasible region (in the finite plane) are A(3, 1) and B(0, 4).
Values of the objective function (i) at these vertices are Z(A) = 9 and Z(B) = 12.
There are however points in this convex region for which Z will have much higher values.
For instance, the point (5, 5) lies in the shaded region and the value of Z thereat is 12.5.
12
LECTURE 6
LINEAR PROGRAMMING, GRAPHICAL METHOD AND SIMPLEX METHOD III
1
LINEAR PROGRAMMING, GRAPHICAL METHOD AND SIMPLEX METHOD III
Find the values of the variables x1, x2, ....., xn which maximize (or minimize) the objective function:
2
Definitions
1. A set of values x1, x2, ....., xn which satisfies the constraints of the L.P.P. is called its solution.
2. Any solution to a L.P.P. which satisfies the non-negativity restrictions of the problem is called its feasible solution.
3. Any feasible solution which maximizes (or minimizes) the objective function of the L.P.P. is called its optimal solution.
Some of the constraints in (ii) can be equalities, some others can be inequalities of (≤) type and remaining ones inequalities of
(≥) type.
The inequality constraints are changed to equalities by adding (or subtracting) non-negative variables to (from) the left hand
side of such constraints.
3
4. If the constraints of a general L.P.P. be:
4
CANONICAL AND STANDARD FORMS OF LINEAR PROGRAMMING PROBLEM
After the formulation of L.P.P., the next step is to obtain its solution.
However, before any method is used to find its solution, the problem must be presented in a suitable form.
1. Canonical Form
The general L.P.P. can always be expressed in the following form:
5
This form of the L.P.P. is called its canonical form and has the following characteristics:
(i) Objective function is of maximization type,
(ii) All constraints are of (≤) type,
(iii) All variables xi are non-negative.
The canonical form is a format for a L.P.P. which finds its use in the Duality theory.
2. Standard Form
The general L.P.P. can also be put in the following form:
6
This form of the L.P.P. is called its standard form and has the following characteristics:
(i) Objective function is of maximization type,
(ii) All constraints are expressed as equalities,
(iii) Right hand side of each constraint is non-negative,
(iv) All variables xi are non-negative.
Since
is equivalent to:
7
The inequality constraints can always be converted to equalities by adding (or subtracting) the slack (or surplus) variables to
the left hand side of such constraints.
So far, the decision variables x1, x2, ....., xn have been assumed to be all non-negative.
If a variable is negative, it can always be expressed as the difference of two non-negative variables, for example, a variable xi
can be written as:
8
Example 7
Convert the following L.P.P. to the standard form:
Solution
As x3 is unrestricted, we let:
where
9
The given constraints can now be expressed as:
10
SIMPLEX METHOD
1. While solving an L.P.P. graphically, the region of feasible solutions was found to be convex, bounded by the vertices and
edges joining them.
If the optimal solution is not unique, the optimal points are on an edge.
Essentially the problem is that of finding the particular vertex of the convex region which corresponds to the optimal solution.
The most commonly used method for locating the optimal vertex is the simplex method.
This method consists in moving step by step from one vertex to the adjacent one.
Of all the adjacent vertices, the one giving better value of the objective function over that of the preceding vertex, is chosen.
This method of jumping from one vertex to the other is then repeated.
Since the number of vertices is finite, the simplex method leads to an optimal vertex in a finite number of steps.
11
2. In simplex method, an infinite number of solutions is reduced to a finite number of promising solutions by using the following
facts:
(i). When there are m constraints and m + n (decision and slack) variables (m being ≤ n), the starting solution is found by
setting n variables equal to zero and then solving the remaining m equations, provided the solution exists and is unique.
The n zero variables are known as non-basic variables while the remaining m variables are called basic variables and
they form a basic solution.
This reduces the number of alternatives (basic solutions) for obtaining the optimal solution to m+nCn.
Such solutions are called basic infeasible solutions and should not be considered.
12
This is ensured by the feasibility condition.
If all the variables in the basic feasible solution are non-zero, then it is called non-degenerate solution and if some of
the variables are zero, it is called degenerate solution.
(iii). A new basic feasible solution can be obtained from the previous one by equating one of the basic variables to zero and
replacing it by a new non-basic variable.
The eliminated variable is called the leaving or outgoing variable while the new variable is known as the entering or
incoming variable.
The incoming variable must improve the value of the objective function which is ensured by the optimality condition.
The resulting solution is called the optimal basic feasible solution or simply optimal solution.
13
3. The simplex method is therefore based on the following two conditions:
I. Feasibility condition.
It ensures that if the starting solution is basic feasible, the subsequent solutions will also be basic feasible.
4. We shall now elaborate the above terms in relation to the general linear programming problem in standard form, which means:
(i). Solution. x1, x2, ......, xn is a solution of the general L.P.P. if it satisfies the constrains (2).
(ii). Feasible solution. x1, x2, ......, xn is a feasible solution of the general L.P.P. if it satisfies both the constraints (2) and the
non-negativity restrictions (3).
14
The set S of all feasible solutions is called the feasible region.
(iii). Basic solution is the solution of the m basic variables when each of the n non-basic variables is equated to zero.
(iv). Basic feasible solution is that basic solution which also satisfies the non-negativity restrictions (3).
(v). Optimal solution is that basic feasible solution which also optimizes the objective function (1) while satisfying the
conditions (2) and (3).
(vi). Non-degenerate basic feasible solution is that basic feasible solution which contains exactly m non-zero basic variables.
If any of the basic variables becomes zero, it is called a degenerate basic feasible solution.
15
Example 8
Find all the basic solutions of the following system of equations identifying in each case the basic and non-basic variables:
Investigate whether the basic solutions are degenerate basic solutions or not.
Solution
Since there are m + n = 3 variables and there are m = 2 constraints in this problem, a basic solution can be obtained by setting any
one variable equal to zero and then solving the resulting equations.
16
The basic feasible solutions are:
17
Example 9
Find an optimal solution to the following L.P.P. by computing all basic solutions and then finding one that maximizes the
objective function:
Solution
Since there are four variables and two constraints, a basic solution can be obtained by setting any two variables equal to zero and
then solving the resulting equations.
18
19
The optimal basic feasible solution therefore is:
20
LECTURE 7
LINEAR PROGRAMMING, GRAPHICAL METHOD AND SIMPLEX METHOD IV
1
LINEAR PROGRAMMING, GRAPHICAL METHOD AND SIMPLEX METHOD IV
Step 1.
(i) Check whether the objective function is to be maximized or minimized.
If any of the bi’s is negative, multiply both sides of that constraint by − 1 so as to make its right hand side positive.
2
Step 2.
Express the problem in the standard form.
Convert all inequalities of constraints into equations by introducing slack/surplus variables in the constraints giving equations of
the form:
Step 3.
Find an initial basic feasible solution.
If there are m equations involving n unknowns, then assign 0 values to any (n – m) of the variables for finding a solution.
Starting with a basic solution for which xj: j = 1, 2, ......, (n – m) are each 0, find all si.
3
The above information is conveniently expressed in the following simplex table:
The variables s1, s2, s3 etc are called basic variables and variables x1, x2, x3 etc are called non-basic variables.
cj row denotes the coefficients of variables in the objective function, while cB -column denotes the coefficients of the basic
variables only in the objective function.
b-column denotes the values of the basic variables while remaining variables will always be 0.
The coefficients of x’s (decision variables) in the constraint equations constitute the body matrix while coefficients of slack
variables constitute the unit matrix.
4
Step 4.
Apply optimality test.
Compute:
Cj-row is called net evaluation row and indicates the per unit increase in the objective function if the variables heading the
column is brought into the solution.
If all Cj are negative, then the initial basic feasible solution is optimal.
If even one Cj is positive, then the current feasible solution is not optimal (which means it can be improved) and proceed to the
next step.
5
Step 5.
(i) Identify the incoming and outgoing variables.
If there are more than one positive Cj, then the incoming variable is the one that heads the column containing maximum Cj.
The column containing it is known as the key column which is shown marked with an arrow at the bottom.
If more than one variable has the same maximum Cj, any of these variables can be selected arbitrarily as the incoming
variable.
Now divide the elements under b-column by the corresponding elements of key column and choose the row containing the
minimum positive ratio θ.
Then replace the corresponding basic variable (by making its value 0).
The corresponding row is called the key row which is shown marked with an arrow on its right end.
The element at the intersection of the key row and key column is called the key element which is shown bracketed.
6
If all these ratios are ≤ 0, the incoming variable can be made as large as we please without violating the feasibility condition.
Hence the problem has an unbounded solution and no further iteration is required.
Drop the outgoing variable and introduce the incoming variable along-with its associated value under cB column.
Convert the key element to unity by dividing the key row by the key element.
Then make all other elements of the key column zero by subtracting proper multiples of key row from the other rows.
This is nothing but the sweep-out process used to solve the linear equations.
Step 6.
Go to Step 4 and repeat the computational procedure until either an optimal (or an unbounded) solution is obtained.
7
Example 10
Using simplex method:
Solution
The solution consists of the following steps.
Step 1.
Check whether the objective function is to be maximized and all b’s are positive.
The problem being of maximization type and all b’s being ≥ 0, this step is not necessary.
Step 2.
Express the problem in the standard form.
8
By introducing the slack variables s1, s2, s3, the problem in standard form becomes:
Step 3.
Find an initial basic feasible solution.
There are three equations involving five unknowns and for obtaining a solution, we assign 0 values to any two of the variables.
Since all s1, s2, s3 are positive, the basic solution is also feasible and non-degenerate.
9
The basic feasible solution therefore is:
The initial basic feasible solution therefore is given by the following table:
10
Step 4.
Apply optimality test.
As Cj is positive under some columns, the initial basic feasible solution is not optimal (which means it can be improved) and we
proceed to the next step.
Step 5.
(i) Identify the incoming and outgoing variables.
The above table shows that x1 is the incoming variable as its incremental contribution Cj (= 5) is the maximum and column in
which it appears is the key column (shown marked by an arrow at the bottom).
Dividing the elements under b-column by the corresponding elements of key-column, we find minimum positive ratio θ is 2 in
two rows.
We therefore arbitrarily choose the row containing s1 as the key row (shown marked by an arrow on its right end).
The element at the intersection of the key row and the key column, which means (1), is the key element.
11
s1 is therefore the outgoing basic variable which will now become non-basic.
Having decided that x1 is to enter the solution, we have tried to find as to what maximum value x1 could have without violating
the constraints.
So removing s1, the new basis will contain x1, s2 and s3 as the basic variables.
To transform the initial set of equations with a basic feasible solution into an equivalent set of equations with a different basic
feasible solution, we make the key element unity.
Here the key element being unity, we retain the key row as it is.
Then to make all other elements in key column 0, we subtract proper multiples of key row from the other rows.
Here we subtract 5 times the elements of key row from the second row and 3 times the elements of the key row from the third
row.
12
These become the second and third rows of the next table.
We also change the corresponding value under cB column from 0 to 5, while replacing s1 by x1 under the basis.
Thus the second basic feasible solution is given by the following table.
As Cj is either 0 or negative under all columns, the above table gives the optimal basic feasible solution.
13
Example 11
A firm produces three products which are processed on three machines.
The profit per unit for products A, B and C is $4, $3 and $6 respectively.
Assume that all the units produced are consumed in the market.
14
Solution
Let the firm decide to produce x1, x2, x3 units of products A, B, C respectively.
Step 1.
Check whether the objective function is to be maximized and all b’s are positive.
The problem being of maximization type and all b’s being ≥ 0, this step is not necessary.
15
Step 2.
Express the problem in the standard form.
By introducing the slack variables s1, s2, s3, the problem in standard form becomes:
Step 3.
Find an initial basic feasible solution.
16
The initial basic feasible solution is therefore given by the following table:
Step 4.
Apply optimality test.
As Cj is positive under some columns, the initial basic feasible solution is not optimal and we proceed to the next step.
Step 5.
(i) Identify the incoming and outgoing variables.
The above table shows that x3 is the incoming variable while s2 is the outgoing variable and (3) is the key element.
17
(ii) Iterate towards the optimal solution.
Convert the key element to unity and make all other elements of key column 0.
Step 6.
As Cj is positive under the second column, the solution is not optimal and we proceed further.
18
Now x2 is the incoming variable and s1 is the outgoing variable and (3) is the key element for the next iteration.
Convert the key element to unity and make all other elements of the key column 0.
19
Remember:
(i) The incoming variable is the non-basic variable corresponding to the largest positive value of Cj.
(ii) The outgoing variable is the basic variable corresponding to the least positive ratio θ, obtained by dividing the b-column
elements by the corresponding key column elements.
20
LECTURE 8
LINEAR PROGRAMMING, GRAPHICAL METHOD AND SIMPLEX METHOD V
1
LINEAR PROGRAMMING, GRAPHICAL METHOD AND SIMPLEX METHOD V
There are however many problems wherein at least one of the constraints is of ( ≥) or ( = ) type and slack variables fail to give
such a solution.
There are two similar methods for solving such problems which are explained below.
Step 1.
Express the problem in standard form.
Step 2.
Add non-negative variables to the left hand side of all those constraints which are of (≥) or (=) type.
2
Such new variables are called artificial variables and the purpose of introducing these is only to obtain an initial basic feasible
solution.
As such, we would like to get rid of these variables and would not allow them to appear in the final solution.
For this purpose, we assign a very large penalty (‒M) to these artificial variables in the objective function.
Step 3.
Solve the modified L.P.P. by simplex method.
At any iteration of simplex method, one of the following three cases can arise:
(i) There remains no artificial variable in the basis and the optimality condition is satisfied.
(ii) There is at least one artificial variable in the basis at zero level (with 0 value in b-column) and the optimality condition is
satisfied.
3
(iii) There is at least one artificial variable in the basis at non-zero level (with positive value in b-column) and the optimality
condition is satisfied.
The final solution is not optimal, since the objective function contains an unknown quantity M.
Such a solution satisfies the constraints but does not optimize the objective function and is, therefore, called pseudo
optimal solution.
Step 4.
Continue the simplex method until either an optimal basic feasible solution is obtained or an unbounded solution is indicated.
The artificial variables are only a computational device for getting a starting solution.
Once an artificial variable leaves the basis, it has served its purpose and we forget about it, which means the column for this
variable is omitted from the next simplex table.
4
Example 12
Use Charne's penalty method to:
Solution
The solution consists of the following steps.
Step 1.
Express the problem in standard form.
The second and third inequalities are converted into equations by introducing the surplus and slack variables s1, s2 respectively.
Also the first and second constraints being of ( = ) and ( ≥ ) type, we introduce two artificial variables A1, A2.
5
Converting the minimization problem to the maximization form, the L.P.P. can be rewritten as:
Step 2.
Obtain an initial basic feasible solution.
As negative quantities are not feasible, s1 must be prevented from appearing in the initial solution.
This is done by letting s1 = 0. By setting the other non-basic variables x1, x2 each = 0, we obtain the initial basic feasible solution
as:
6
Thus the initial simplex table is:
Step 3.
Iterate towards optimal solution.
7
The new simplex table is:
8
Then the revised simplex table is:
9
The optimal value of the objective function therefore is:
10
LECTURE 9
LINEAR PROGRAMMING, GRAPHICAL METHOD AND SIMPLEX METHOD VI
1
LINEAR PROGRAMMING, GRAPHICAL METHOD AND SIMPLEX METHOD VI
Phase I
Step 1.
Express the given problem in the standard form by introducing slack, surplus and artificial variables.
Step 2.
Formulate the artificial objective function:
by assigning ( ‒ 1) cost to each of the artificial variables Ai and zero cost to all other variables.
Step 3.
Maximize Z* subject to the constraints of the original problem using the simplex method.
2
Then three cases arise:
(a) Max Z* < 0 and at least one artificial variable appears in the optimal basis at a positive level.
In this case, the original problem doesn't possess any feasible solution and the procedure comes to an end.
In this case, a basic feasible solution is obtained and we proceed to phase II for finding the optimal basic feasible solution to
the original problem.
(c) Max Z* = 0 and at least one artificial variable appears in the optimal basis at zero level.
Here a feasible solution to the auxiliary L.P.P. is also a feasible solution to the original problem with all artificial variables set
= 0.
To obtain a basic feasible solution, we prolong Phase I for pushing all the artificial variables out of the basis (without
proceeding on to phase II).
3
Phase II.
The basic feasible solution found at the end of Phase I is used as the starting solution for the original problem in this phase, which
means the final simplex table of Phase I is taken as the initial simplex table of Phase II and the artificial objective function is
replaced by the original objective function.
4
Example 13
Use two-phase method to:
Solution
Phase I
Step 1.
Express the given problem in standard form.
Introducing surplus variables s1, s2 and artificial variables A1, A2, the phase I problem in standard form becomes:
5
Step 2.
Find an initial basic feasible solution.
6
Step 3.
Iterate towards an optimal solution.
Making key element (3) unity and replacing A1 by x1, we have the new simplex table:
7
Making key element (4/3) unity and replacing A2 by x3, we obtain the revised simplex table:
Thus an optimal basic feasible solution to the auxiliary problem and therefore to the original problem has been attained.
8
Phase II.
Considering the actual costs associated with the original variables, the objective function is:
The optimal initial feasible solution thus obtained will be an optimal basic feasible solution to the original L.P.P.
Using final table of Phase I, the initial simplex table of Phase II is as follows:
9
An optimal basic feasible solution to the given problem therefore is:
10
LECTURE 10
LINEAR PROGRAMMING, GRAPHICAL METHOD AND SIMPLEX METHOD VII
1
LINEAR PROGRAMMING, GRAPHICAL METHOD AND SIMPLEX METHOD VII
DUALITY CONCEPT
One of the most interesting concepts in linear programming is the duality theory.
Every linear programming problem has associated with it, another linear programming problem involving the same data and
closely related optimal solutions.
While one of these is called the primal, the other is called the dual.
2
The importance of the duality concept is due to two main reasons.
Firstly, if the primal contains a large number of constraints and a small number of variables, the labour of computation can be
considerably reduced by converting it into the dual problem and then solving it.
Secondly, the interpretation of the dual variables from the cost or economic perspective proves extremely useful in making
future decisions in the activities being programmed.
3
Formulation of Dual Problem
We consider the following L.P.P.:
(i). The maximization problem in the primal becomes the minimization problem in the dual and vice versa.
(ii). ( ≤ ) type of constraints in the primal becomes ( ≥ ) type of constraints in the dual and vice versa.
(iii). The coefficients c1, c2, ......, cn in the objective function of the primal becomes b1, b2, ......, bm in the objective function of the
dual.
(iv). The constants b1, b2, ......, bm in the constraints of the primal becomes c1, c2, ......, cn in the constraints of the dual.
4
(v). If the primal has n variables and m constraints, the dual will have m variables and n constraints, which means the transpose
of the body matrix of the primal problem gives the body matrix of the dual.
(vi). The variables in both the primal and dual are non-negative.
5
Example 14
Write the dual of the following L.P.P.:
Solution
Since the problem is of minimization, all constraints should be of ≥ type.
6
Let y1, y2, y3, y4 and y5 be the dual variables associated with the above five constraints.
7
Formulation of Dual Problem When the Primal Has Equality Constraints
We consider the problem:
8
We now form the dual using y1’, y1”, y2 as the dual variables.
The term (y1’ − y1”) appears in both the objective function and all the constraints of the dual.
This will always happen whenever there is an equality constraint in the primal.
Then the new variable y1’ − y1” ( = y1 ) becomes unrestricted in sign being the difference of two non-negative variables and the
above dual variable takes the form:
9
In general, if the primal problem is:
Thus the dual variables corresponding to equality constraints are unrestricted in sign.
Conversely when the primal variables are unrestricted in sign, the corresponding dual constraints are equalities.
10
Example 15
Construct the dual of the L.P.P.:
Solution
Let y1 and y2 be the dual variables associated with the first and second constraints.
11
DUALITY PRINCIPLE
If the primal and the dual problems have feasible solutions, then both have optimal solutions and the optimal value of the
primal objective function is equal to the optimal value of the dual objective function, which means:
It suggests that an optimal solution to the primal problem can directly be obtained from that of the dual problem and vice
versa.
12
LECTURE 11
LINEAR PROGRAMMING, GRAPHICAL METHOD AND SIMPLEX METHOD VIII
1
LINEAR PROGRAMMING, GRAPHICAL METHOD AND SIMPLEX METHOD VIII
Using the primal-dual relationships for a problem, we have another method (known as Dual simplex method) for finding an
initial feasible solution.
Whereas the regular simplex method starts with a basic feasible (however non-optimal) solution and works towards
optimality, the dual simplex method starts with a basic infeasible (however optimal) solution and works towards feasibility.
The dual simplex method is quite similar to the regular simplex method, the only difference lies in the criterion used for
selecting the incoming and outgoing variables.
In the dual simplex method, we first determine the outgoing variable and then the incoming variable while in the case of
regular simplex method, reverse is done.
2
Working Procedure for Dual Simplex Method
Step 1.
(i) Convert the problem to maximization form, if it is not so.
Step 2.
Find the initial basic solution and express this information in the form of dual simplex table.
Step 3.
Test the nature of Cj = cj − Zj :
(a) If all Cj ≤ 0, and all bi ≥ 0, then optimal basic feasible solution has been attained.
3
Step 4.
Mark the outgoing variable.
This will be the key row and the corresponding basic variable is the outgoing variable.
Step 5.
Test the nature of key row elements:
(a) If all these elements are ≥ 0, the problem does not have a feasible solution.
(b) If at least one element < 0, find the ratios of the corresponding elements of Cj - row to these elements.
The corresponding column is the key column and the associated variable is the incoming variable.
4
Step 6.
Iterate towards optimal feasible solution.
Perform row operations as in the regular simplex method and repeat iterations until either an optimal feasible solution is attained
or there is an indication of non-existence of a feasible solution.
5
Example 16
Using dual simplex method:
Solution
The solution consists of the following steps.
Step 1.
(i) Convert the first and third constraints into ( ≤ ) type.
6
(ii) Express the problem in standard form.
Introducing slack variables s1, s2, s3, s4 the given problem takes the form:
Step 2.
Find the initial basic solution.
Setting the decision variables x1, x2 each equal to 0, we get the basic solution.
7
The initial solution is therefore given by the table below:
Step 3.
Test nature of Cj.
Since all Cj values are ≤ 0 and b1 = ‒ 1, b3 = ‒ 10, the initial solution is optimal but infeasible.
8
Step 4.
Mark the outgoing variable.
Since b3 is negative and numerically largest, the third row is the key row and s3 is the outgoing variable.
Step 5.
Calculate ratios of elements in Cj - row to the corresponding negative elements of the key row.
These ratios are ‒ 3/ ‒ 1 = 3, ‒ 2/ ‒ 2 = 1 (neglecting ratios corresponding to positive and zero elements of key row).
Since the smaller ratio is 1, therefore, x2 - column is the key column and (‒ 2) is the key element.
Step 6.
Iterate towards optimal feasible solution.
(i) Drop s3 and introduce x2 along-with its associated value ‒ 2 under cB column.
Convert the key element to unity and make all other elements of the key column 0.
9
Then the second solution is given by the table below.
Since all Cj values are ≤ 0 and b4 = ‒ 2, this solution is optimal but infeasible.
Since b4 is negative, the fourth row is the key row and s4 is the outgoing variable.
10
(iii) Calculate ratios of elements in Cj - row to the corresponding negative elements of the key row.
This ratio is ‒ 2/ ‒ (1/2) = 4 (neglecting other ratios corresponding to positive or zero elements of key row).
The x1 - column is the key column and (‒1/2) is the key element.
(iv) Drop s4 and introduce x1 with its associated value ‒ 3 under the cB column.
Convert the key element to unity and make all other elements of the key column 0.
Since all Cj values are ≤ 0 and all b's are ≥ 0, therefore this solution is optimal and feasible.
11
The optimal solution therefore is:
12
LECTURE 12
TRANSPORTATION PROBLEM I
1
TRANSPORTATION PROBLEM I
STANDARD FORM
A transportation problem involves m sources each of which has available ai [i = 1, 2, ..., m] units of a product,
and n destinations each of which requires bj [j = 1, 2, ..., n] units of this product.
The cost cij of transporting one unit of product from the ith source to the jth destination is given for each i and j.
The objective is to develop an integral transportation schedule that meets all demands from current inventory at
a minimum total shipping cost.
It is assumed that total supply and total demand are equal, which means:
(1)
2
Equation (1) is guaranteed by creating either a fictitious destination with a demand equal to the surplus if total
demand is less than total supply, or a fictitious source with a supply equal to the shortage if total demand equals
total supply.
Let xij represent the unknown number of units to be shipped from source i to destination j.
(2)
3
TRANSPORTATION ALGORITHM
Rather than determining the solution by a direct application of the simplex method to the above mathematical
model, we find it more efficient to work with Table 1 shown below.
All entries are self-explanatory, with the exception of the terms ui and v j, which are explained later.
4
The transportation algorithm is the simplex method specialized to the format of Table 1 and as usual, it involves:
1. Finding an initial basic feasible solution,
2. Testing the solution for optimality,
3. Improving the solution when it is not optimal, and
4. Repeating the steps 2 and 3 until the optimal solution is obtained.
Thereafter, continue by moving one cell to the right, if some supply remains, or if not, one cell down.
At each step, allocate as much as possible to the cell or variable under consideration without violating the
constraints: the sum of the ith row allocations cannot exceed ai, the sum of jth column allocations cannot exceed
bj, and no allocation can be negative.
5
Vogel's Method
For each row and each column having some supply or some demand remaining, calculate its difference, which is
the non-negative difference between the two smallest shipping costs cij associated with unassigned variables in
that row or column.
In this row or column, locate that unassigned variable or cell having the smallest unit shipping cost and allocate
to it as many units as possible without violating the constraints.
Recalculate the new differences and repeat the above procedure until all demands are satisfied.
6
Variables that are assigned values by either one of these starting procedures become the basic variables in the
initial solution.
We adopt the convention of not entering the non-basic variables in Table 1 – they are understood to be zero –
and of indicating basic-variable allocations in boldface type.
The Northwest Corner Rule is the simpler of the two rules to apply.
However, Vogel's method, which takes into account the unit shipping costs, usually results in a closer-to-
optimal starting solution.
7
TEST FOR OPTIMALITY
Assign any one of the ui or vj in Table 1 the value zero and calculate the remaining ui and ui so that for each
basic variable ui + vj = cij.
If all of these latter quantities are negative, the current solution is optimal, otherwise the current solution is not
optimal.
8
IMPROVING THE SOLUTION
Definition
A loop is a sequence of cells in Table 1 such that:
(i). each pair of consecutive cells lie in either the same row or the same column,
(ii). no two consecutive cells lie in the same row or column,
(iii). the first and last cells of the sequence lie in the same row or column, and
(iv). no cell appears more than once in the sequence.
Example 1
The sequences {(1, 2), (1, 4), (2, 4), (2, 6), (4, 6), (4, 2)} and {(1, 3), (1, 6), (3, 6), (3, 1), (2, 1), (2, 2), (4, 2), (4,
4), (2, 4), (2, 3)} illustrated in Figures 1 and 2 respectively are loops.
It is to be noted that a row or column can have more than two cells in the loop (as the second row of Figure 2),
but no more than two can be consecutive.
9
Figure 1: Example of loop.
10
We consider the non-basic variable corresponding to the most positive of the quantities ui + v j − cij calculated in
the test for optimality.
We construct a loop consisting exclusively of this incoming variable or cell and current basic variables or cells.
We then allocate to the incoming cell as many units as possible such that after appropriate adjustments have
been made to the other cells in the loop, the supply and demand constraints are not violated, all allocations
remain non-negative, and one of the old basic variables has been reduced to zero whereupon it ceases to be
basic.
11
If the process of improving the current basic solution results in two or more current basic variables being
reduced to zero simultaneously, only one is allowed to become non-basic (solver's choice, although the variable
with the largest unit shipping cost is preferred).
The other variables with lower unit shipping costs remain basic, but with zero allocation.
12
LECTURE 13
TRANSPORTATION PROBLEM II
1
TRANSPORTATION PROBLEM II
Example
SunRay Transport Company ships truckloads of grain from three silos to four mills.
The supply in truckloads and the demand also in truckloads together with the unit transportation costs per
truckload on the different routes are summarized in the transportation model in Table 2.
The unit transportation costs, cij, shown in the northeast corner of each box are in hundreds of dollars.
The model seeks the minimum-cost shipping schedule xij between silo i and mill j (i = 1, 2, 3 and j = 1, 2, 3, 4).
2
Solution
Northwest Corner Rule Starting Solution
The application of the Northwest Corner Rule to the Example transportation model gives the starting basic
solution in Table 3.
The arrows show the order in which the allocated amounts are generated.
3
Table 3: Northwest corner rule starting solution.
4
Vogel Approximation Method Starting Solution
VAM is next applied to Example transportation model to determine initial basic solution.
5
Because row 3 has the largest penalty (= 10) and cell (3, 1) has the smallest unit cost in that row, the amount 5 is
assigned to x31.
6
Table 5 shows that row 1 has the highest penalty (= 9).
Hence, we assign the maximum amount possible to cell (1,2), which yields x12 = 15 and simultaneously satisfies
both row 1 and column 2.
We arbitrarily cross out column 2 and adjust the supply in row 1 to zero.
Continuing in the same manner, row 2 will produce the highest penalty (= 11), and we assign x23 = 15, which
crosses out column 3 and leaves 10 units in row 2.
Applying the least-cost method to that column, we successively assign x14 = 0, x34 = 5, and x24 = 10 as shown in
Table 6.
7
Table 6: Completed assignments in VAM.
8
Solving Transportation Model after Starting with the Northwest Corner Solution
Table 7 gives the northwest-corner starting solution as determined in Table 3 above.
The determination of the entering variable from among the current non-basic variables (those that are not part of
the starting basic solution) is done by computing the non-basic coefficients, using the method of multipliers.
9
In the method of multipliers, we associate the multipliers ui and vj with row i and column j of the transportation
table.
For each current basic variable xij, these multipliers are shown to satisfy the following equations:
As Table 7 shows, the starting solution has 6 basic variables, which leads to 6 equations in 7 unknowns.
To solve these equations, the method of multipliers calls for arbitrarily setting any ui = 0, and then solving for
the remaining variables as shown below.
10
To summarize, we have:
11
The results of these evaluations are shown in the following table:
The entering variable is the one having the most positive coefficient.
12
The preceding computations are usually done directly on the transportation tableau as shown in Table 8,
meaning that it is not necessary really to write the (u, v)-equations explicitly.
Then we can compute the v-values of all the columns that have basic variables in row 1-namely, v1 and v2.
13
Next, we compute u2 based on the (u, v)-equation of basic x22.
Once all the u's and v's have been determined, we can evaluate the non-basic variables by computing ui + vj − cij
for each non-basic x ij.
These evaluations are shown in Table 8 in the boxed southeast corner of each cell.
Having identified x31 as the entering variable, we need to determine the leaving variable.
If x31 enters the solution to become basic, one of the current basic variables must leave as non-basic at zero
level.
14
The selection of x31 as the entering variable means that we want to ship through this route because it reduces the
total shipping cost.
What is the most that we can ship through the new route?
We observe in Table 8 that if route (3, 1) ships θ units (which means x31 = θ), then the maximum value of θ is
determined based on two conditions:
1. Supply limits and demand requirements remain satisfied.
2. Shipments through all routes remain nonnegative.
These two conditions determine the maximum value of θ and the leaving variable in the following manner.
First, construct a closed loop that starts and ends at the entering variable cell (3, 1).
The loop consists of connected horizontal and vertical segments only (no diagonals are allowed).
Except for the entering variable cell, each corner of the closed loop must coincide with a basic variable.
Table 9 shows the loop for x31. Exactly one loop exists for a given entering variable.
15
Next, we assign the amount θ to the entering variable cell (3, 1).
For the supply and demand limits to remain satisfied, we must alternate between subtracting and adding the
amount eat the successive corners of the loop as shown in Table 9 (it is immaterial whether the loop is traced in
a clockwise or counterclockwise direction).
16
For θ ≥ 0, the new values of the variables then remain nonnegative if:
The corresponding maximum value of θ is 5, which occurs when both x11 and x22 reach zero level.
Because only one current basic variable must leave the basic solution, we can choose either x11 or x22 as the
leaving variable.
The selection of x31 (= 5) as the entering variable and x11 as the leaving variable requires adjusting the values of
the basic variables at the corners of the closed loop as Table 10 shows.
The total cost associated with the new schedule is $45 less than in the previous schedule. Thus, the new cost is
$520 − $45 = $475.
17
Table 10: Iteration 2 calculations.
Given the new basic solution, we repeat the computation of the multipliers u and v, as Table 10 shows.
The closed loop shows that x14 = 10 and that the leaving variable is x24.
18
The new solution, shown in Table 11, costs $40 less than the preceding one, thus yielding the new cost $475 −
$40 = $435.
The new u i + vj − cij are now negative for all non-basic xij.
19
The following table summarizes the optimum solution.
It is $85 less than the starting solution obtained using Northwest Corner Rule.
20
LECTURE 14
ASSIGNMENT PROBLEM
1
ASSIGNMENT MODEL
INTRODUCTION
"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.
The general assignment model with n workers and n jobs is represented in Table 1.
The element cij represents the cost of assigning worker i to job j (i, j = 1, 2, ... , n).
There is no loss of generality in assuming that the number of workers always equals the number of jobs, because
we can always add fictitious workers or fictitious jobs to effect this assumption.
2
Table 1: General assignment model with n workers and n jobs.
The assignment model is actually a special case of the transportation model in which the workers represent the
sources, and the jobs represent the destinations.
The supply amount at each source and demand amount at each destination exactly equal 1.
In effect, the assignment model can be solved directly as a regular transportation model.
However, the fact that all the supply and demand amounts equal 1 has led to the development of a simple
solution algorithm called the Hungarian method as described below.
3
HUNGARIAN METHOD
Examples will be used to present the mechanics of the new algorithm.
Example 1
Three children, John, Karen, and Terri, want to earn some money to take care of personal expenses during a
school trip to the local zoo.
Their father has chosen three types of work for his children: mowing the lawn, painting the garage door, and
washing the family cars.
To avoid anticipated sibling competition, he asks them to submit (secret) bids for what they think is reasonable
pay for each of the three types of work.
The understanding is that all three children will abide by their father's decision as to who gets which work.
Based on this information, how should their father assign the work?
4
Table 2: Summary of children's bids.
Solution
The assignment problem will be solved by the Hungarian method.
Step 1.
For the original cost matrix, identify each row's minimum, and subtract it from all the entries of the row.
Step 2.
For the matrix resulting from step 1, identify each column's minimum, and subtract it from all the entries of the
column.
5
Step 3.
Identify the optimal solution as the feasible assignment associated with the zero elements of the matrix obtained
in step 2.
Let pi and qj be the minimum costs associated with row i and column j as defined in steps 1 and 2, respectively.
The row minimums of step 1 are computed from the original cost matrix as shown in Table 3.
Next, subtract the row minimum from each respective row to obtain the reduced matrix in Table 4.
6
Table 4: Step 2 of Hungarian method.
Subtracting these values from the respective columns, we get the reduced matrix in Table 5.
7
The cells with underscored zero entries provide the optimum solution.
This means that John gets to paint the garage door, Karen gets to mow the lawn, and Terri gets to wash the
family cars.
This amount also will always equal (p1 + p2 + p3) + (q1+ q2 + q3) = (9 + 9 + 8) + (0 + 1 + 0) = $27.
The given steps of the Hungarian method work well in the preceding example because the zero entries in the
final matrix happen to produce a feasible assignment (in the sense that each child is assigned a distinct type of
work).
In some cases, the zeros created by steps 1 and 2 may not yield a feasible solution directly, and further steps are
needed to find the optimal (feasible) assignment.
8
Example 2
We suppose that the situation discussed in Example 1 is extended to four children and four types of work.
9
Table 7: Reduced assignment matrix.
The locations of the zero entries do not allow assigning different types of work to all the children.
For example, if we assign work 1 to child 1, then column 1 will be eliminated, and child 3 will not have a zero
entry in the remaining three columns.
This obstacle can be accounted for by adding the following step to the procedure outlined in Example 1.
10
Step 2a.
If no feasible assignment (with all zero entries) can be secured from steps 1 and 2:
(i). Draw the minimum number of horizontal and vertical lines in the last reduced matrix that will cover all the
zero entries.
(ii). Select the smallest uncovered entry, subtract it from every uncovered entry, then add it to every entry at the
intersection of two lines.
(iii).If no feasible assignment can be found among the resulting zero entries, repeat step 2a.
The application of step 2a to the last matrix produces the shaded cells in Table 8.
11
Table 8: Application of step 2a to the above reduced assignment matrix.
This entry is added to the bold intersection cells and subtracted from the remaining shaded cells to produce the
matrix in Table 9.
12
Table 9: Optimal assignment matrix.
The optimum solution (shown by the underscored zeros) calls for assigning work 1 to child 1, work 2 to child 3,
work 3 to child 2, and work 4 to child 4.
The same cost is also determined by summing the pi's, the qj's, and the entry that was subtracted after the shaded
cells were determined: (1 + 7 + 4 + 5) + (0 + 0 + 3 + 0) + (1) = $21.
13
SIMPLEX EXPLANATION OF THE HUNGARIAN METHOD
The assignment problem in which n workers are assigned to n jobs can be represented as an LP model in the
following manner.
subject to:
14
The optimal solution of the preceding LP model remains unchanged if a constant is added to or subtracted from
any row or column of the cost matrix (cij).
To prove it, let pi and qj be constants subtracted from row i and column j.
Now:
15
Because the new objective function differs from the original one by a constant, the optimum values of xij must
be the same in both cases.
The development thus shows that steps 1 and 2 of the Hungarian method, which call for subtracting pi from row
i and then subtracting qj from column j, produce an equivalent assignment model.
In this regard, if a feasible solution can be found among the zero entries of the cost matrix created by steps 1 and
2, then it must be optimum because the cost in the modified matrix cannot be less than zero.
If the created zero entries cannot yield a feasible solution (as Example 2 demonstrates), then Step 2a described
above must be applied.
The validity of this procedure is again rooted in the simplex method of linear programming.
The details of the proof will not be described here because they are complicated.
16
LECTURE 15
INTEGER PROGRAMMING: BRANCH AND BOUND ALGORITHM
1
INTEGER PROGRAMMING: BRANCH AND BOUND ALGORITHM
FIRST APPROXIMATION
An integer program is a linear program with the added requirement that all variables be integers.
Therefore, a first approximation to the solution of any integer program can be obtained by ignoring the integer
requirement and solving the resulting linear program by one of the techniques already described.
If the optimal solution to the linear program happens to be integral, then this solution is also the optimal solution
to the original integer program.
Otherwise one can round the components of the first approximation to the nearest feasible integers and obtain a
second approximation.
This procedure is carried out especially when the first approximation involves large numbers, but it can be
inaccurate when numbers are small.
2
BRANCHING
If the first approximation contains a variable that is not integral, say xj*, then i1 < x j* < i2, where i1 and i2 are
consecutive non-negative integers.
Two new integer programs are then created by augmenting the original integer program with either the
constraint xj ≤ i1 or the constraint x j ≥ i2.
This process, called branching, has the effect of shrinking the feasible region in a way that eliminates from
further consideration the current non-integral solution for xj but still preserves all possible integral solutions to
the original problem.
3
Example 1
As the first approximation to the integer program:
(1)
we consider the associated linear program obtained by deleting the integer requirement.
By graphing, the solution is readily found to be x1* = 5.5, x2* = 0 with z* = 55.
Since 5 < x1* < 6, branching creates the two new integer programs:
(2)
4
and
(3)
For the two integer programs created by branching process, first approximations are obtained as before by
ignoring the integer requirements and solving the resulting linear programs.
If either first approximation is still non-integral, then the integer program which gave rise to that first
approximation becomes a candidate for further branching.
5
Example 2
Using graphical methods, we find that program 2 above has the first approximation x1* = 5, x2* = 0.2 with z* =
50.2, while program 3 has no feasible solution.
Since 0 < x2* < 1, we augment program 2 with either x2 ≤ 0 or x2 ≥ 1, and obtain the two new programs as
below.
(4)
6
and
(5)
With the integer requirements ignored, the solution to program 4 is x1* = 5, x2* = 0 with z* = 50, while the
solution to program 5 is x1* = 3, x2* = 1 with z* = 31.
Since both these first approximations are integral, no further branching is required.
7
BOUNDING
We assume that the objective function is to be maximized.
Branching continues until an integral first approximation (which is thus an integral solution) is obtained.
The value of the objective for this first integral solution becomes a lower bound for the problem, and all
programs whose first approximations, integral or not, yield values of the objective function smaller than the
lower bound are discarded.
Example 3
Program 4 possesses an integral solution with z* = 50, hence 50 becomes a lower bound for the problem.
Since 31 is less than the lower bound 50, program 5 is eliminated from further consideration, and would have
been so eliminated even if its first approximation had been non-integral.
8
Branching continues from those programs having non-integral first approximations that give values of the
objective function greater than the lower bound.
If, in the process, a new integral solution is uncovered having a value of the objective function greater than the
current lower bound, then this value of the objective function becomes the new lower bound.
The program that yielded the old lower bound is eliminated, as are all programs whose first approximations give
values of the objective function smaller than the new lower bound.
The branching process continues until there are no programs with non-integral first approximations remaining
under consideration.
At this stage, the current lower-bound solution is the optimal solution to the original program.
If the objective function is to be minimized, the procedure remains the same, except that upper bounds are used.
Thus, the value of the first integral solution becomes an upper bound for the problem, and programs are
eliminated when their first approximate z-values are greater than the current upper bound.
9
COMPUTATIONAL CONSIDERATIONS
One always branches from that program which appears most nearly optimal.
When there are a number of candidates for further branching, one chooses that having the largest z-value, if the
objective function is to be maximized, or that having the smallest z-value, if the objective function is to be
minimized.
If a first approximation involves more than one non-integral variable, the new constraints are imposed on that
variable which is furthest from being an integer, which means that variable whose fractional part is closest to
0.5.
10
Finally, it is possible for an integer program or an associated linear program to have more than one optimal
solution.
In both cases, we adhere to convention adopted earlier, arbitrarily designating one of the solutions as the optimal
one and disregarding the rest.
Example 4
We next draw a schematic tree diagram depicting the results of above Examples 1 through 3.
11
The original integer program 1 is designated by a circled 1, and all other programs formed through branching
are designated in the order of their creation by circled successive integers.
The first approximate solution to each program is written on the circle designating the program.
Each circle or program is then connected by a line to that circle or program which generated it via the branching
process.
The new constraint that defined the branch is written above the line.
12
Finally, a large cross is drawn through a circle if the corresponding program has been eliminated from further
consideration.
Hence, branch 3 was eliminated because it was not feasible, and branch 5 was eliminated by bounding in
Example 3.
Since there are no non-integral branches left to consider, the schematic tree diagram indicates that program 1 is
solved with x1* = 5, x2* = 0 and z* = 50.
13
SUMMARY
Integer linear programs are linear programs with some or all the variables restricted to integer (or discrete)
values.
The chapter presents the most prominent and computationally efficient algorithm of integer programming:
branch and bound (B&B).
A drawback of integer programming algorithms is their lack of consistency in solving integer problems.
Although these algorithms are proven theoretically to converge in a finite number of iterations, their
implementation on the computer (with its inherent machine round-off error) is a different experience.
One should keep it in mind during the study of the integer programming algorithms.
14
LECTURE 16
MANAGEMENT INFORMATION SYSTEMS I
1
MANAGEMENT INFORMATION SYSTEMS I
INTRODUCTION
Management Information System (M.I.S.) is basically concerned with processing data into information, which is
then communicated to the various Departments in an organization for appropriate decision-making.
Data collection involves the use of Information Technology (IT) devices comprising of computers and
telecommunications networks (E-Mail, Voice Mail, Internet, telephone, etc.)
Computers are important for more quantitative, than qualitative, data collection, storage and retrieval.
Special features of computers used for the processing of data into information are speed and accuracy, and
storage of large amount of data.
2
Telecommunications provide the means for one-way or two-way communication and for the transmission of
data and messages.
A lot of time and money are saved and the security of data and messages is also ensured.
It is important to note that whatever IT is installed must be appropriate to the organization, and to each
department.
3
ACCESSING INFORMATION
With the introduction of the Internet and the World Wide Web, students are able to access information faster
and more efficiently using modern Computer Systems.
In the past, one had to visit national and school libraries and spend large amounts of time accessing information.
Presently any individual can quickly access, save and print information from any location.
One can access the internet from Cyber Cafes, schools, mobile phones, at home and even at modern libraries
through internet service providers and telecommunication links.
Apart from the internet, information found in encyclopedias, tutorials and documentaries can be accessed from
CDs / DVDs which are read from computer systems.
4
COMPONENTS OF A COMPUTER SYSTEM
Modern computer systems consist of a central processing unit, primary storage, secondary storage, input, output
and communication devices.
Central processing unit (CPU) → manipulates and processes data, and controls the other parts of the
computer system.
Primary storage (RAM) → temporarily stores data and program instructions during processing.
Secondary storage (hard disk drives) → stores data and instructions when they are not used in processing.
Input devices (keyboard, mouse) → receive / convert data and instructions for processing in the computer.
Output devices (monitor, printer) → display / present data in a form that people can understand.
Communications devices (modems) → control the passing of information to and from communications
networks.
5
Computers are differently classified.
We can use size and processing speed to categorize contemporary computers as mainframes, midrange
computers, personal computers, workstations, and supercomputers.
Accessing information using the Internet or compact discs require a minimum of a desktop or laptop personal
computer.
These systems once equipped with a modem, browser software and CD-ROM are sufficient enough for
individuals to access and track information.
6
Figure 1: Computers for data processing and accessing information.
7
WHY DO PEOPLE NEED INFORMATION?
Individuals - Entertainment and enlightenment
Information
Data that have meaning within a context
Data after manipulation
Data in relationships
8
DATA MANIPULATION
Example
Customer survey
Reading through data collected from a customer survey with questions in various categories would be time-
consuming and not very helpful.
GENERATING INFORMATION
Industries take raw material as input, process it in industrial facilities, and produce marketable commodity as
output.
Computer-based information systems take data as raw material input, process it, and produce information as
output.
9
Figure 2: Input-process-output.
10
CHARACTERISTICS OF USEFUL INFORMATION
Relevance
Information must pertain to problem at hand.
Information must also be presented in a way that helps understanding it in a specific context.
Completeness
Partial information is often worse than no information.
Marketing data about household incomes can lead to bad decisions if not accompanied by vital information on
the consumption habits of the targeted population.
Accuracy
Erroneous information can lead to disastrous decisions.
Inaccurate record of a patient's reaction to an antibiotic can lead a doctor to harm the patient while believing that
he or she is helping the patient.
11
Currentness
Decisions are often based upon the latest information available, but what was a fact yesterday may not be one
today.
An investment decision to purchase a commodity today based on yesterday's prices may be costly mistake if the
price of the commodity has risen in the interim.
Economics
In a business setting, cost of obtaining information must be considered as one cost element involved in any
decision.
Demand for a new product must be researched to reduce risk of marketing failure, but if the market research is
too expensive, the cost of obtaining the information can diminish profit from sales.
12
Figure 3: Characteristics of useful information.
13
WHAT IS A SYSTEM?
System
A set of components that work together to achieve a common goal
Subsystem
One part of a system serving some useful purpose in the operation of the system
Closed system
Stand-alone system that has no contact with other systems
Open system
System that interfaces with other systems
14
Figure 4: Company accounting system.
15
INFORMATION AND MANAGERS
Information creates a framework for problem solving and decision making.
Information available keeps managers focused on overall goals and operations of business.
16
LECTURE 17
MANAGEMENT INFORMATION SYSTEMS II
1
MANAGEMENT INFORMATION SYSTEMS II
HUMANS COMPUTERS
2
Figure 5: Qualities of humans and computers that contribute to their association.
3
BENEFITS OF HUMAN-COMPUTER ASSOCIATION
Combined resources produce output that exceeds the sum of the outputs of the same resources employed
separately
Allows human thought to be translated into efficient processing of large amounts of data
4
COMPONENTS OF AN INFORMATION SYSTEM
Data
Input that the system takes to produce information
Hardware
Computer and its peripheral equipment → input, output, storage devices, data communication equipment
Software
Set of instructions that tell the computer how to take the data in, how to process it, how to display information,
and how to store data and information
5
Telecommunications
Hardware and software that facilitate fast transmission and reception of text, pictures, sound, and animation in
the form of electronic data
People
Analyze organizational information needs, design and construct information systems, write computer programs,
operate the hardware and maintain software
Procedures
Rules for achieving optimal and secure operations in data processing
Include priorities in running different applications on the computer and security measures
6
Figure 6: Components of an information system.
7
STAGES OF DATA PROCESSING
Input
Data is collected and entered into computer.
Data processing
Data is manipulated into information using mathematical, statistical, and other tools.
Output
Information is displayed or presented.
Storage
Data and information are maintained for later use.
8
OPPORTUNITIES IN INFORMATION SYSTEMS
Employers seek computer-literate professionals who know how to use information technology.
Careers in Information Systems include employments such as systems analyst, specialist in enterprise resource
planning (ERP), database administrator, telecommunications specialist, consulting, etc.
9
ETHICAL AND SOCIETAL ISSUES: THE NOT-SO-BRIGHT SIDE
Consumer Privacy
Organizations collect → and sometimes sell → huge amounts of data on individuals.
Employee Privacy
Employees remotely monitored in computer industry → it violates privacy and creates stress.
Freedom of Speech
Computers and internet increase opportunities for hate speech, intellectual property crime, and other intrusions
10
Professionalism
No mandatory or enforced code of ethics in computer industry → unlike other professions.
Social Inequality
Around 50% households in the world do not have a PC.
11
ERAS OF M.I.S. EVOLUTION CORRESPONDING TO FIVE PHASES IN THE DEVELOPMENT OF
COMPUTER TECHNOLOGY
Researchers identify five eras of Management Information System evolution corresponding to the five phases in
the development of computing technology:
(1). Mainframe and minicomputer computing,
(2). Personal computers
(3). Client / server networks
(4). Enterprise computing, and
(5). Cloud computing.
These computers would often take up whole rooms and require teams to run them.
As technology advanced, these computers were able to handle greater capacities and therefore reduce their cost.
Smaller, more affordable minicomputers allowed larger businesses to run their own computing centers in-house.
12
2. Personal Computers
The second era (personal computer) began in 1965 and accelerated the process of decentralizing computing
power from large data centers to smaller offices.
In the late 1970s minicomputer technology gave way to personal computers and relatively low cost computers
were becoming mass market commodities, allowing businesses to provide their employees access to computing
power that ten years before would have cost tens of thousands of dollars.
This proliferation of computers created a ready market for interconnecting networks and the popularization of
the Internet.
This lets thousands and even millions of people access data simultaneously.
13
4. Enterprise Computing
The fourth era of enterprise computing enabled by high speed networks, tied all aspects of the business
enterprise together offering rich information access encompassing the complete management structure.
5. Cloud Computing
The fifth era of cloud computing is the latest and employs networking technology to deliver applications as well
as data storage independent of the configuration, location or nature of the hardware.
This, along with high speed wifi networks, has led to new levels of mobility in which managers access the MIS
remotely with laptop, tablet computers and smartphones.
14
DEVELOPING INFORMATION SYSTEMS
System development → includes actions that are taken to create an information system that solves an
organizational problem
System design
Programming/implementation
Testing
Conversion
Production
Maintenance
15
These actions usually take place in the order specified above, however some will need to repeat or be
accomplished concurrently.
Conversion is the process of changing or converting the old system into the new.
This can be done in three basic ways as described below, which are the traditional conversion methods.
1. Direct method
The new system replaces the old at an appointed time.
2. Pilot study
Introducing the new system to a small portion of the operation to see how it compares.
If good then the new system expands to the rest of the company.
3. Phased approach
The new system is introduced in stages.
16
ADVANTAGES OF MANAGEMENT INFORMATION SYSTEM
The following are some of the benefits which can be attained using different kinds of MISs.
1. Companies are able to identify their strengths and weaknesses due to the presence of revenue reports,
employees' performance record, etc.
Identifying these aspects can help a company improve its business processes and operations.
2. They give an overall picture of the company, and act as a communication and planning tool.
17
3. The availability of customer data and feedback can help the company to align its business processes
according to the needs of its customers.
The effective management of customer data can help the company to perform direct marketing and
promotion activities.
4. Information is an important asset for any company in the modern competitive world.
Consumer buying trends and behaviors can be predicted by analysis of sales and revenue reports from each
operating region of the company.
Competitive advantage is a firm’s ability to do something in more improved way, faster, cheaper, or
uniquely, when compared with rival firms in the market.
18