2. WHAT IS OPERATIONS RESEARCH
Operations research involves “research on operations.” It’s a field of science
Operations research is applied to problems that concern how to conduct and coordinate the
operations within an organization.
The “research” part of the name means that operations research uses an approach that resembles
the way research is conducted in established scientific fields.
It attempts to resolve the conflicts of interest among the components of the organization in a way
that is best for the organization as a whole.
OR frequently attempts to find a best solution (referred to as an optimal solution) for the problem
under consideration. Rather than simply improving the status quo, the goal is to identify a best
possible course of action.
3. WHAT IS OPTIMIZATION
• Mathematical optimization is the process of determining the maximum or the minimum of a
mathematical function either subjected to constraints or not.
• Optimization attempts to determine the best solution in terms of an objective that may be
conditional to a set of constraints
• It covers a broad set of mathematical tools and techniques developed to systematically search a
given objective function(s) for the best solution.
Operations research make use of optimization among various other techniques such as simulation, machine
learning, queuing theory etc. to model real life organizational problems and derive solutions to support
management decisions
4. LINEAR PROGRAMMING
• Linear programming is a type of mathematical programming technique that is popularly used for
modeling problems under Operations research.
• Linear programming uses a mathematical model to describe the problem of concern.
• The adjective linear means that all the mathematical functions in this model are required to be
linear functions. The word programming does not refer here to computer programming
• Rather, it is essentially a synonym for planning.
• Thus, linear programming involves the planning of activities to obtain an optimal result,
• A result that reaches the specified goal best among all feasible alternatives.
It involves the general problem of allocating limited resources among competing activities in a best possible (i.e.,
optimal) way. More precisely, this problem involves selecting the level of certain activities that compete for scarce
resources that are necessary to perform those activities.
7. FORMULATION AS A LINEAR PROGRAMMING
PROBLEM
To formulate the mathematical (linear programming) model for this problem, let
x1 number of batches of product 1 produced per week
x2 number of batches of product 2 produced per week
Z total profit per week (in thousands of dollars) from producing these two products
Lets come up with a suitable objective to solve the problem.
What do you think is a suitable objective for this problem ?
8. • Let's take profit as the suitable objective.
• Now let's write a function for the objective (Profit) using the decision variables. What are the
decision variables for this problem?
• level of X1 produced and level of X2 produced
• Using the information given in the table write an equation for the total profit using the two decision
variables.
• 𝑍 = 3000𝑋1 + 5000𝑋2 we can divide by 1000 and write 𝑍 = 3𝑋1 + 5𝑋2
0
4.5
0
10
20
30
40
50
60
70
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6 6.5 7 7.5 8 8.5
X2
quantity
Profit
X1 quantity
Objective function
It looks like the profit can increase limitless for large
values of x1 and x2.
Then why do we need a special technique of OR to
get the best value?
9. MODELING THE CONSTRAINT FUNCTIONS
• Any linear optimization problem will contain constraints. These constraints represent resource or input
limitations for the operation.
• What are limited resources you can identify in this problem?
• Plant-1 capacity
• Plant-2 capacity
• Plant-3 capacity
• Write the inequalities to represent the plant capacity constraints
𝑋1 ≤ 4
2𝑋2 ≤ 12
3𝑋1 + 2𝑋2 ≤ 18
X1 and X2 are product quantities, thus need to include a non-negative constraint as well
𝑋1 ≥ 0 𝑎𝑛𝑑 𝑋2 ≥ 0
10. • To summarize, in the mathematical language of linear programming, the problem is to choose
values of x1 and x2 so as to
Maximize Z = 3000X1+5000X2
Subjected to
X1 <= 4 Plant-1 capacity
2X2 <= 12 Plant-2 capacity
3X1+2X2 <= 18 Plant-3 capacity
X1 >= 0
X2 >= 0
How to solve ?
11. GRAPHICAL SOLUTION
• This very small problem has only two decision variables and therefore only two dimensions,
• So, a graphical procedure can be used to solve it.
• This procedure involves constructing a two-dimensional graph with X1 and X2 as the axes.
• The first step is to identify the values of (x1, x2) that are permitted by the restrictions.
• This is done by drawing each Line that borders the range of permissible values for one restriction.
13. GRAPHICAL SOLUTION
𝑋1 ≤ 4
2𝑋2 ≤ 12
3𝑋1 + 2𝑋2 ≤ 18
Feasible
region
Corner point
feasible solutions
In linear optimization, the
optimum solution will always be
on the edge of the feasible
region
14. OBTAINING THE SOLUTION
The purple line represents the relationship
between X1 and X2 for the same profit level.
Higher
profits
Solution
15. EXAMPLE
• The apex television company has to decide on the number of 27- and 20-inch sets to be produced
at one of its factories. Market research indicates that at most 40 of the 27-inch sets and 10 of the
20-inch sets can be sold per month. The maximum number of work-hours available is 500 per
month. A 27-inch set requires 20 work-hours and a 20-inch set requires 10 work-hours. Each 27-
inch set sold produces a profit of $120 and each 20-inch set produces a profit of $80. A
wholesaler has agreed to purchase all the television sets produced if the numbers do not exceed
the maxima indicated by the market research.
(A) formulate a linear programming model for this problem.
(b) use the graphical method to solve this model.
16. THE LINEAR PROGRAMMING MODEL
• As described in the introduction, the most common type of application of linear programming
involves allocating resources to activities. The amount available of each resource is limited, so a
careful allocation of resources to activities must be made.
• Determining this allocation involves choosing the levels of the activities that achieve the best
possible value of the overall measure of performance.
17. • In particular, this model is to select the values for x1, x2, . . . , xn so as to
A STANDARD FORM OF THE MODEL
Objective function
Resource Constraints
Non-negativity Constraint
18. OTHER FORMS
• Minimizing rather than maximizing the objective function:
• Some functional constraints with a greater-than-or-equal-to inequality:
• Some functional constraints in equation form:
• Deleting the non-negativity constraints for some decision variables:
How to
solve this
problem?
How to
solve this
problem?
19. SOLVING LINEAR
PROGRAMMING PROBLEMS:
THE SIMPLEX METHOD
• As you know by now the optimal solution is found among the corner points of the feasible region.
In the simplex method the idea is to move along
the constraint boundaries until the objective
function cannot improve further.
In this process, the objective function is
evaluated between adjacent CFPs.
Therefore, lets define adjacent CPFs:
An adjacent CPF solutions are CPFs that share
n-1 constraint boundaries. Where, n is the
number of decision variables.
Solution concept 1: The simplex method
focuses solely on CPF solutions. For any
problem with at least one optimal solution,
finding one requires only finding a best
CPF solution.
20. • There are n number of edges (boundaries) intersecting at every CPFs.
• Thus, when moving the objective function along the edges at every CPFs there is a choice to move the objective function
along any of the edges emanating from the CPFs.
• Then we choose to move along the edge that increases the objective function at the highest rate.
0
4.5
0
10
20
30
40
50
60
70
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6 6.5 7 7.5 8 8.5
X2
quantity
Profit
X1 quantity
Objective function
𝑍 = 3000𝑋1 + 5000𝑋2
At CPFs (0,0), we can
move along X1 or X2.
Looking at the objective
function we can see that
moving along X2 would
increase the objective at
the highest rate.
Solution concept 3: given a CPF solution, it is much quicker computationally to
gather information about its adjacent CPF solutions than about other CPF solutions.
Therefore, each time the simplex method performs an iteration to move from the
current CPF solution to a better one, it always chooses a CPF solution that is
adjacent to the current one. No other CPF solutions are considered.
Solution concept 2: After the current CPF solution is identified, the simplex method examines each
of the edges of the feasible region that emanate from this CPF solution. Each of these edges
leads to an adjacent CPF solution at the other end, but the simplex method does not even take the
time to solve for the adjacent CPF solution. Instead, it simply identifies the rate of improvement in Z
that would be obtained by moving along the edge.
21. • DETERMINING WHERE TO STOP
Once we reach a CPFs where the objective
function will not improve (decrease) further
by going along any of the edges emanating,
that CPFs is taken as the optimal solution.
Consider the point (2,6) the figure.
The objective function will decrease when
moving along any of the edges.
Solution concept 5: Whenever possible, the initialization of the simplex method
chooses the origin (all decision variables equal to zero) to be the initial CPF
solution.
choosing the origin commonly is possible when all the decision variables have
nonnegativity constraints, because the intersection of these constraint boundaries
yields the origin as a corner-point solution.
This solution then is a CPF solution unless it is infeasible because it violates one or
more of the functional constraints. If it is infeasible, special procedures are needed
to find the initial CPF solution.
Solution concept 4: The simplex method is an iterative
algorithm (a systematic solution procedure that keeps
repeating a fixed series of steps, called an iteration, until a
desired result has been obtained) with the following structure.
Solution concept 6: A positive rate of improvement in Z implies that
the adjacent CPF solution is better than the current CPF solution,
whereas a negative rate of improvement in Z implies that the
adjacent CPF solution is worse. Therefore, the optimality test consists
simply of checking whether any of the edges give a positive rate of
improvement in Z. If none do, then the current CPF solution is optimal.
22. SETTING UP THE SIMPLEX METHOD
• The previous discussion stressed the geometric concepts that underlie the simplex method.
• However, this algorithm normally is run on a computer, which can follow only algebraic instructions.
• Therefore, it is necessary to translate the conceptually geometric procedure just described into a usable
algebraic procedure.
• In this section, we introduce the algebraic language of the simplex method.
• The algebraic procedure is based on solving systems of equations.
• Therefore, the first step in setting up the simplex method is to convert the functional inequality constraints to
equivalent equality constraints. (The nonnegativity constraints are left as inequalities because they are
treated separately.)
• This conversion is accomplished by introducing slack Variables.
Consider the Plant-1 capacity constraint in the WYNDOR GLASS example.
𝑋1 ≤ 4
23. SETTING UP THE SIMPLEX METHOD
Consider the Plant-1 capacity constraint in the WYNDOR GLASS example.
𝑋1 ≤ 4
X1
X1 X3
Slack
By introducing the slack variable X3 we can now cover
the original constraint as follows:
𝑋1 + 𝑋3 = 4
and
𝑋3 ≥ 0
24. Upon the introduction of slack variables for the other functional constraints, the original linear programming model
for the example (shown below on the left) can now be replaced by the equivalent model (called the augmented
form of the model) shown below on the right:
SETTING UP THE SIMPLEX METHOD
• Although both forms of the model represent exactly the same problem, the new form is much more convenient for algebraic
manipulation and for identification of CPF solutions.
• We call this the augmented form of the problem because the original form has been augmented by some supplementary variables
needed to apply the simplex method.
25. INITIALIZATION OF THE SIMPLEX PROCESS
Write the system of equations
Z - 3X1 - 5X2 = 0
X1 + X3 = 4
2X2 + X4 = 12
3X1 + 2X2 + X5 = 18
X1 ≥ 0
X2 ≥ 0
X3 ≥ 0
X4 ≥ 0
X5 ≥ 0
For the augmented form of the example, notice that the system
of functional constraints has 5 variables and 3 equations.
Number of variables - number of equations = 5 - 3 = 2.
There are 2 degrees of freedom in solving the system
If the degrees of freedom is either 0 or negative, then there can
be only one feasible solution to the problem (no optimization
required)
• In order to solve the three equations any two variables must be chosen to be set equal to any arbitrary value and solve
for the remaining three variables.
• The simplex method uses zero for this arbitrary value. This is because the solutions to the problem are located on the
corner points.
• Thus, two of the variables (called the nonbasic variables) are set equal to zero, and then the simultaneous solution of
the three equations for the other three variables (called the basic variables) is a basic solution.
• Each combinations of nonbasic variables represent each corner point.
26. INITIALIZATION OF THE SIMPLEX PROCESS
(0,0,4,12,18)
(0,6,4,0,6)
(2,6,2,0,0) (4,6,0,0,-6)
(4,3,0,6,0)
(4,0,0,12,6)
A basic solution has the following properties:
1. Each variable is designated as either a nonbasic
variable or a basic variable.
2. The number of basic variables equals the number
of functional constraints (now equations). Therefore,
the number of nonbasic variables equals the total
number of variables minus the number of functional
constraints.
3. The nonbasic variables are set equal to zero.
4. The values of the basic variables are obtained as
the simultaneous solution of the system
of equations (functional constraints in augmented
form). (The set of basic variables is often referred to
as the basis.)
5. If the basic variables satisfy the nonnegativity
constraints, the basic solution is a BF solution.
augmented solution
A basic solution basic feasible (BF) solution
27. • Simplex algorithm needs a method to search along the corner points.
• Therefore, it is moving between adjacent corner points in search of the optimal.
INITIALIZATION OF THE SIMPLEX PROCESS
Two BF solutions are adjacent if all but one of their nonbasic variables are the same. This implies that all but one
of their basic variables also are the same, although perhaps with different numerical values.
Consequently, moving from the current BF solution to an adjacent one involves switching one variable from
nonbasic to basic and vice versa for one other variable.
28. INITIALIZATION OF THE SIMPLEX PROCESS
Step -1: The choice of x1 and x2 to be the nonbasic variables (the variables set equal to zero) for the initial BF
solution
Z - 3X1 - 5X2 = 0
X1 + X3 = 4
2X2 + X4 = 12
3X1 + 2X2 + X5 = 18
X1 = 0
X2 = 0
X3 = 4
X4 = 12
X5 = 18
Notice that this solution can be read immediately because each equation has just
one basic variable, which has a coefficient of 1, and this basic variable does not
appear in any other equation.
Step-2 :Optimality Test
Z = 3x1 + 5x2 = 0
0
1
2
3
29. Step 2: Because none of the basic variables (x3, x4, x5) have a nonzero coefficient in this objective function, the
coefficient of each nonbasic variable (x1, x2) gives the rate of improvement in Z if that variable were to be increased
from zero.
Iteration-1
Determining the Direction of Movement
Increasing one nonbasic variable from zero corresponds to moving along one edge emanating from the current
CPF solution.
Which nonbasic variable to increase from 0 ?
Z = 3x1 + 5x2
Increasing X2 will increase Z at the highest rate.
Therefore, X2 can be increased from zero, which
make it the entering basic variable.
However, in order to keep the system of
equations valid, when increasing X2 values of
the other basic variables must be adjusted
(equation 2 and 3).
As X2 is increased X4 and X5 must be decreased. However, one of
them will reach the limit first (non negativity).
30. MINIMUM RATIO TEST
• These calculations are referred to as the minimum ratio test.
• The objective of this test is to determine which basic variable drops to zero first as the entering basic variable is
increased.
• We can immediately rule out the basic variable in any equation where the coefficient of the entering basic variable
is zero or negative, since such a basic variable would not decrease as the entering basic variable is increased.
• However, for each equation where the coefficient of the entering basic variable is strictly positive ( > 0), this test
calculates the ratio of the right-hand side to the coefficient of the entering basic variable.
• The basic variable in the equation with the minimum ratio is the one that drops to zero first as the entering basic
variable is increased.
At any iteration of the simplex method, step 2 uses the minimum ratio test to determine which basic
variable drops to zero first as the entering basic variable is increased. Decreasing this basic variable to zero
will convert it to a nonbasic variable for the next BF solution. Therefore, this variable is called the leaving
basic variable for the current iteration
Thus, x2 can be increased just to 6, at which point x4 has dropped to 0. Increasing x2 beyond 6 would cause x4 to
become negative, which would violate feasibility. Thus, X2 is the entering basic variable and X4 is the leaving
basic variable.
31. SOLUTION TO ITERATION-1
• Recall the arrangement of coefficients in the system of equations when the initial BF solution was
obtained.
0 Z - 3X1 - 5X2 = 0
1 X1 + X3 = 4
2 2X2 + X4 = 12
3 3X1 + 2X2 + X5 = 18
0 0 0
1 0 0
0 1 0
0 0 1
Because of this arrangement, the solution to all basic
variables and the Z can be directly read from the
righthand side by setting nonbasic variables to zero.
Therefore, in order to solve the basic variables in the first
iteration we need to get the same arrangement of
coefficients to the new basic variable X2 (proper form
from Gaussian elimination)
We can use either of two types of elementary algebraic operations:
1. Multiply (or divide) an equation by a nonzero constant.
2. Add (or subtract) a multiple of one equation to (or from) another equation.
Coefficients of X2
Initial Iteration-1
5 0
0 0
2 1
2 0
32. SOLUTION TO ITERATION-1
Divide eq 2 by 2
0 Z - 3X1 - 5X2 = 0
1 X1 + X3 = 4
2 X2 + X4/2 = 6
3 3X1 + 2X2 + X5 = 18
Multiply eq 2 by 5 and add to eq 0
0 Z - 3X1 + 5X4/2 = 30
1 X1 + X3 = 4
2 X2 + X4/2 = 6
3 3X1 + 2X2 + X5 = 18
Multiply eq 2 by -2 and add to eq 3
0 Z - 3X1 + 5X4/2 = 30
1 X1 + X3 = 4
2 X2 + X4/2 = 6
3 3X1 + - X4 + X5 = 6
0 0 0
0 1 0
1 0 0
0 0 1
Solution to
basic variables
Optimality test: at least one
of the variables in the
objective function can
increase the value.
Proceed to next
iteration
33. SOLUTION TO ITERATION-2
(0 Z - 3X1 + 5X4/2 = 30
(1 X1 + X3 = 4
(2 X2 + X4/2 = 6
(3 3X1 + - X4 + X5 = 6
From Eq 0: X1 is the entering basic variable
Ratio test
(0 Z - 3X1 + 5X4/2 = 30
(1 X1 + X3 = 4 4
(2 X2 + X4/2 = 6
(3 3X1 + - X4 + X5 = 6 2Minimum
From ratio test: X5 is the leaving basic variable
0 Z + 3X4/2 + X5 = 36
1 X3 + X4/3 - X5/3 = 2
2 X2 + X4/2 = 6
3 X1 - X4/3 + X5/3 = 2
Optimality test: None of the
variables emanating from
the CP solution can increase
the objective function
Stop iteration and use the
optimal solution
35. USING EXCEL TO SOLVE THE LP PROBLEM
• As you can see the general LP problem contains more than two decision variables, in fact most real
applications contain hundreds of decision variables.
• However, graphical method is only possible for problems with a maximum of two variables.
• Simplex algorithm (simplex method) Developed by George Dantzig in 1947 is an efficient method
of solving large LP problems.
• Except for its use on very small problems, this method is always executed on a computer, and
sophisticated software packages are widely available.
• Simplex method is systematic way of searching for the optimum solution among the corner point
feasible solutions.
• Solver add in can be used to implement the simplex algorithm in Excel.
38. • AS YOU CAN SEE LINEAR PROGRAMMING WORKS WITH SEVERAL VERY RESTRICTIVE ASSUMPTIONS
• PROPORTIONALITY ASSUMPTION: THE CONTRIBUTION OF EACH ACTIVITY TO THE OBJECTIVE FUNCTION
AND THE LEFT HAND SIDE OF CONSTRAINTS IS PROPORTIONAL TO THE LEVEL OF ACTIVITY. IN OTHER
WORDS THE PERCENTAGE IMPACT PER UNITE OF ACTIVITY IS INDEPENDENT OF THE LEVEL OF ACTIVITY
Proportional
Not
Proportional
What are instances this
could happen?
Polynomial functions are non-linear in OR. In statistics the
definition can be different
ASSUMPTIONS OF LP
39. • ADDITIVITY : THE COMBINED EFFECT OF ALL ACTIVITY TO THE OBJECTIVE FUNCTION AND THE
CONSTRAINS EQUAL TO THE SUMMATION OF INDIVIDUAL IMPACTS.
INTRODUCTION TO NON-LINEAR PROGRAMMING
Additivity satisfied Additivity Not satisfied
• Divisibility: The variables in a linear programming
problem are no-integers (ratio scaled)
• This assumption is violated in when the variables have
stepwise increments such as shipping costs or assignments
(1,0)
Interaction
term