Sie sind auf Seite 1von 30

Czech Technical University in Prague

Faculty of Electrical Engineering


Department of Electroenergetics

Operation Research
Summary

Author:
Minh-Quan Dang
Draft N o 1

November 19, 2015


Prague

Abstract
This is the summary of the essay.

Keywords

Contents
Abstract

Keywords

List of Figures

List of Tables

1 Introduction
1.1 Definition Operation Research . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Problem when conducting OR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1
1
1

2 Linear Programming
2.1 Definition . . . . . . . . . . . . .
2.2 Type of LP problems . . . . . . .
2.3 Assumptions . . . . . . . . . . .
2.3.1 Proportionality(linearity)
2.3.2 Additivity . . . . . . . . .
2.3.3 Divisibility . . . . . . . .
2.3.4 Non-negativity . . . . . .
2.3.5 Certainty . . . . . . . . .
2.4 Solving the LP problem . . . . .

.
.
.
.
.
.
.
.
.

2
2
2
2
3
3
3
4
4
4

3 Graphic Solution for LP Problem


3.1 Possible outcome of graphical method . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7
8

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

4 Simplex Method
4.1 Algorithm . . . . . . . . . . . . . . . . . .
4.2 LP task standard form . . . . . . . . . . .
4.3 Possible outcome from simplex method . .
4.4 Solving LP problem with Simplex Method
4.4.1 Case of one optimal solution . . .
4.4.2 Case of Multiple optimal solution .
4.4.3 Case of Unbounded feasible region
4.4.4 Case of No feasible solution . . . .
4.5 Adapting to other model forms . . . . . .
4.5.1 Equality constrains . . . . . . . . .
4.5.2 Functional constraints in form .

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

10
10
10
11
11
11
13
14
15
15
15
15

5 Dual task
5.1 Rule to create dual task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 Duality theorems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3 Solving Dual task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16
16
17
17

6 Allocation tasks
6.1 Definition of allocation tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2 Transportation task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3 Solving balanced transportation tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18
18
18
18

7 Terminology

24

References

25

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.

LIST OF FIGURES

LIST OF FIGURES

List of Figures
1
2
3
4
5
6

Proportionality Assumption . . . . . . . . . . . . . . . .
Graphically expression of constrains . . . . . . . . . . .
Graphically expression of CF . . . . . . . . . . . . . . .
Graphically interpret when most favorable value exist .
Graphically interpret when no most favorable value exist
Pair of symmetric dual tasks . . . . . . . . . . . . . . .

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

3
7
7
8
8
16

LIST OF TABLES

LIST OF TABLES

List of Tables
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

Data for the example problem . . . . . . . . . . . .


Basic simplex table . . . . . . . . . . . . . . . . . .
Possible outcome from simplex method . . . . . . .
Initial simplex table of one OS . . . . . . . . . . .
First iteration simplex table of one OS . . . . . . .
2nd iteration simplex table of one OS . . . . . . .
Initial simplex table of Multiple OS . . . . . . . . .
First iteration simplex table of Multiple OS . . . .
Second iteration simplex table of Multiple OS . . .
Initial simplex table of Unbounded feasible region .
Example Balanced Transportation Task . . . . . .
Starting solution by North West corner method . .
Starting solution by row minimum method . . . .
Starting solution by column minimum method . .
Starting solution by column minimum method . .
Starting solution by Vogel method . . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

5
11
11
12
12
12
13
13
14
14
19
19
20
20
20
21

INTRODUCTION

Introduction

1.1

Definition Operation Research

If we define by meaning of terms so the Operations Research(OP) is:


Operations: The activities in which a organization is involved. The activity could be related to
such diverse areas as manufacturing, transportation, construction, telecommunications, financial
planning,health care, the military, and public services, to name just a few.
Research: The systematic investigation into and study of materials and sources in order to establish
facts and reach new conclusions.
Then the basic concept of OR could be expressed as three steps.
Step 1
Define the task, collecting data, define the criteria function and all variable and constrains.
Step 2
Base on collected data about criteria function, variable and constrains, we will construct a
mathematical model that attempts to simulate the real problem behavior.
Step 3
With the hypothesis that our model is a sufficiently precise model of the essential features of
the problem. Then we will use mathematical technique to find the optimal solution for the
problem. The modification and verification is needed

1.2

Problem when conducting OR

After the brief look on the definition of OR several questions is raised.


Step 1
1. What is the task for our research?
2. What is the feature of the task, is that any assumptions?
3. What is the variable which has influence to our task?
4. What is the criteria function for our task?
5. What is the constrains for our task and variable?
Step 2
1. How we can express our task by mathematical model?
2. Which form is convenient for further process?
3. Is our model reflex the real problem precisely?
4. What is level of uncertainty and how we much we can tolerate?
Step 3
1. Which technique we could use to solve the task?
2. What is the advantage and disadvantage of them?
3. Which one we should choose?
4. Is the solution is correct? How we can confirm ?

LINEAR PROGRAMMING

Linear Programming

2.1

Definition

Briefly, the most common type of application involves the general problem of allocating limited resources among competing activities in a best possible (i.e., optimal) way. [1]
Linear programming uses a mathematical model to describe the problem of concern. The problem is
maximization or minimization of criterion function value and at the same time fulfillment of all relevant
constraints.
Linear: All the mathematical functions in this model are required to be linear functions.
Programming: planning
We can understand that Linear programming is an OR which is:
Step 1: Define the Linear programming task include:
Linear criterion function
Set of constrains
Non-negative assumptions
Step 2: we use linear mathematical model to abstract the problem.
Step 3:we try to obtain an optimal result, the best goal among all feasible alternatives.

2.2

Type of LP problems

Linear programming deal with 3 typical problems:


1. Resorce-allocation (Maximum profit from production )
2. Cost-benefit-trade-off (Blending task to minimum effect)
3. Fixed-requirement

2.3

Assumptions

In the Step 1 when we start the research the problem in the real world is usually complicated and
difficult to comprehend all the aspects. For that reason we need to make some assumptions. The function
of assumption are:
1. Simplify the problem.
2. Fill up all unknown information
When using assumptions we must face a fact that this could be or not be correct. Sometime the assumption
is correct in this task but is incorrect in the other task. Then the necessary to consider the assumptions
with these questions:
1. Is that assumption logically acceptable for the task?
2. Is the validity of this assumption depend on tasks boundary(size, length ...)

2.3

Assumptions

LINEAR PROGRAMMING

Any change of the assumptions will lead to LP model update. There are 5 assumption is made for LP
task:
1. Proportionality(linearity)
2. Additivity
3. Divisibility
4. Non-negativity
5. Certainty
2.3.1

Proportionality(linearity)

The contribution of each activity to the value of the objective function Z is proportional to the level
of the activity xj , as represented by the cj xj term in the objective function. Similarly, the contribution of
each activity to the left-hand side of each functional constraint is proportional to the level of the activity
xj , as represented by the aij xj term in the constraint.
This assumption means we assume that all the output and input is linear dependence. In other word,
we can have as much input material as we want as long as the value lies within the constrains. This
assumption could not be correct for example when we buy to much goods the price for that goods will
change and for the same amount of money we could but less amount of goods than it should be.

Figure 1: Proportionality Assumption


2.3.2

Additivity

Every function in a linear programming model (whether the objective function or the function on
the left-hand side of a functional constraint) is the sum of the individual contributions of the respective
activities.
The basic idea of this assumption is we can define the sum by means of all variables are independent
to each other. The will be no cannibal effect, that means no complements nor substitutes. In other word,
there will no requirement for buying both 2 types of goods or 1 goods can replace for another goods.
2.3.3

Divisibility

Decision variables in a linear programming model are allowed to have any values, including noninteger
values, that satisfy the functional and nonnegativity constraints. Thus, these variables are not restricted

2.4

Solving the LP problem

LINEAR PROGRAMMING

to just integer values. Since each decision variable represents the level of some activity, it is being assumed
that the activities can be run at fractional levels.
This assumption we will ignore the fact that some goods we must buy as a whole pack, variable can
be taken as fraction.
2.3.4

Non-negativity

We assume the value of variable must not smaller than zero. The reason for this assumption related
to the task and variable definition. It will be non sense to deal will negative for example table or chair.
2.3.5

Certainty

The value assigned to each parameter of a linear programming model is assumed to be a known constant.
This assumption is also related to task definition while the task boundary is fixed. Then the input
parameter will not change by time or other factor.

2.4

Solving the LP problem

To understand the process for solving the LP problem we will go though an example and then make
the summary from that. The example is called Prototype Example [1]. Solving process includes:
1. Problem analyze
2. Identifine the needed data
3. Formulation as a LP Problem
4. Finding the optimal solution
Problem analyze:
A company which product glass (Plant 1), windows (Plant 2) and glass doors (Plant 3) decides to
produce new products.
Product 1: An 8-foot glass door with aluminum framing
Product 2: A 4x6 foot double-hung wood-framed window
The Product 1 requires the production capacity in Plant 1 and Plan 3 and Product 2 requires Plant 2
and 3. The question is how the company should produce in order to archive the biggest profit.
Definition of the problem
The task is determination of the production rate should be for the two products in order to maximize
the output profit, subject to the restriction imposed by the limited production capacities available in the
three plants. The production rate is defined as the number of batches produced per week. Production
rate can be none or as much as possible.
Identifine the needed data
Base on the task definition we recognize that we need to collect some data.
4

2.4

Solving the LP problem

LINEAR PROGRAMMING

1. Number of available production hour per week of each plant.


2. Number of hour required for produce one batch.
3. Profit per batch produced of each new product
Each category of data will be collected from other sources. Such as the manufacturing division , manufacturing engineer, marketing division, accounting department. The collected data will be gathered into
a table.
Table 1: Data for the example problem
Production Time
per Batch, Hours
Production
Plant

1
2
3
Profit per batch

1
0
3
$ 3,000

0
2
2
$ 5,000

Production Time
Available per Week, Hours
4
12
18

Formulation as a LP Problem
We will assign symbol for each decisiion variable
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
The problem now can express
Maximize Z = 3x1 + 5x2
subject to the restrictions

x1

2x2

12

3x1 + 2x2

18

x1

0,

x2

By word we can say the total profit Z is the sum of profit from each product. Plant 1 can produces
1 batch of production 1 per hour and for maximum 4 hours per week. Plant 2 can produces 2 batch of
production 2 per hour and for maximum 12 hours per week. Plant 2 can produces 3 batch of production
1 and 2 batch of production 2 per hour and for maximum 18 hours per week. The number of batches
cannot be negative value.
Now we have enough information to proceed to find the optimal solution.
Finding the optimal solution
The technique used for finding the optimal solution are:
5

2.4

Solving the LP problem

LINEAR PROGRAMMING

1. Graphic Solution
2. Simplex Method

GRAPHIC SOLUTION FOR LP PROBLEM

Graphic Solution for LP Problem

The basic principle for this method base on the fact that LP with 2 variable can be express graphically.
The constrains will some how limit an area of the plain then by moving the CF we can find the optimal
solution. Take a look on a example with 2 constrains

6x + 8y = M ax
Subject to
Constrain 1: 30x + 20y 300
Constrain 2: 5x + 10y 110
x, y 0

(a) Constrain 1: 30x + 20y 300

(b) Constrain 2: 5x + 10y 110

Figure 2: Graphically expression of constrains


As we can see on the chart the constrain will intersect two axis, which are non-negative assumption,
then limit an area of the plain. If we have the lower or equal constrain then the area will be the lower
part under the line. In contrast, the greater constrain will limit the higher part upon the line. All the
constrain and non-negative assumption will limit a feasible area where all constrains is sufficient by all
variable. The next step is looking for the optimal solution.

(a) Area divided

(b) Moving CF

Figure 3: Graphically expression of CF


The CF will divides the plain into two parts. When the CF line moves to the right that means we are
looking for the maximum value and when it moves to the left then we find the minimum value.

3.1

Possible outcome of graphical method

3.1

GRAPHIC SOLUTION FOR LP PROBLEM

Possible outcome of graphical method

The optimal solution depends on how the CF line intersect with the feasible area. There are 4
possibilities could happen:
1. One optimal solution only
2. Multiple optimal solutions
3. Unbounded solution
4. No feasible solution

(a) One optimal solution only

(b) Multiple optimal solutions

Figure 4: Graphically interpret when most favorable value exist


One optimal solution only
The optimal solution is one corner point of the feasible region. We determine which corner is optimal
solution by moving the CF line.
Multiple optimal solutions
When the CF line is align to one edge of the feasible region then there will be infinite number of
solution, each have the same optimal value of objective function.

(a) Unbounded solution

(b) No feasible solution

Figure 5: Graphically interpret when no most favorable value exist

3.1

Possible outcome of graphical method

GRAPHIC SOLUTION FOR LP PROBLEM

No feasible solution
This possibility happen when constrains are not consistent and there is no feasible region exist.
This outcome occurs only if:
1. It has no feasible solutions
2. The constraints do not prevent improving the value of the objective function (Z) indefinitely in the
favorable direction (positive or negative). Unbounded objective.

SIMPLEX METHOD

Simplex Method

4.1

Algorithm

1. Trasform the task into standard form


2. Identify the starting feasible solution (slack variable, artificial base)
3. Evaluate the (zj cj ) value for non-based value and presence of the optimal solution in initial
simplex table.
4. If no optimal solution reached then one new vector is included into base and one original base vector
is excluded to create new base using Max-Min principle.
5. Recalculate of simplex table until all base vector is elementary vectors
6. The optimal solution reached when all (zj cj ) value is non-positive for non-base vectors.

4.2

LP task standard form

Standard form of LP is important for solving especially when using simplex method and dual task.
f (x)

cx = M in

Ax =

If the LP task is not in the standard form we can transform it into standard form.
If creterion function is looking for Max instead of Min then we will multiple both side with -1
f (x) = M ax => f (x) = M in
Inequalities in constrains are changed to equalities using slack or surplus variable (method of artificial base).

Using slack variable x3


x1 + x2 1

x1 + x2 + x3 = 1

x1 + x2 = M in

x1 + x2 + wu1 + wu2 = M in

Using artificial base


x1 x2 1

x1 x2 x3 + u1 = 1

x1 + x2 2

x1 + x2 x4 + u2 = 2

x1 , x2 , x3 , x4

u1 , u2

The Simplex Tabular


f (x) =
X
ai xi =
x

ci xi = M in

bi
0
10

4.3

Possible outcome from simplex method

SIMPLEX METHOD

Table 2: Basic simplex table

B
P3
P4
zj
zj-cj

4.3

cB
c3
c4

cj
P0
b1
b2
c3 b1 + c4 b2
z0

c1
P1
a11
a12
c3 a1 1 + c4 a12
z1-c1

c2
P2
a21
a22
c3 a2 1 + c4 a22
z2-c2

c3
P3
a31
a32
c3 a3 1 + c4 a32
z3-c3

c4
P4
a41
a42
c3 a4 1 + c4 a42
z4-c4

h
b1/ai1
b2/ai2

Possible outcome from simplex method

1. One optimal solution


The value (zj cj ) < 0 for all non-base vector Pj That means there will be no improvement in
criterion function.
2. Multiple optimal solution
The value (zj cj ) = 0 for non-base vector Pr That means if we continue recalculate the simplex
table then we only jump from this corner point to another but CF value is constant.
3. Unbounded solution
For non base vector Pr we get zr cr > 0, but vector has no positive items)
4. No feasible solution
values of artificial variables are for optimum solution positive
Table 3: Possible outcome from simplex method

One optimal solution


Multiple optimal solution
Unbounded solution
No feasible solution

4.4
4.4.1

elementary var
0
0
0
-

zj-cj
non-base var
<0
0 and < 0
>0
-

artificial var
>0

Solving LP problem with Simplex Method


Case of one optimal solution

Original problem:
3x1 + 4x2 = M ax
Subject to
x1 + x2 5
x1 + 2x2 8
x1 , x2 0
Standard form

11

4.4

Solving LP problem with Simplex Method

SIMPLEX METHOD

3x1 4x2 = M in
Subject to
x1 + x2 + x3 = 5
x1 + 2x2 + x4 = 8
x1 , x2 0
Two slack variable x3 , x4 is added to transform inequality into equality relation.
Initial simplex table
Table 4: Initial simplex table of one OS

B
P3
P4
zj
zj-cj

cB
0
0

cj
P0
5
8
0
0

c1
P1
1
1
0
3

c2
P2
1
2
0
4 max

c3
P3
1
0
0
0

c4
P4
0
1
0
0

h
5
4 min

The value in the row zj cj still exists positive element then we must apply principle Max-Min. The
value z2 c2 is max so we will include vector P2 into base. The ratio h of P4 is min so we will exclude
vector P4 from the base.
First iteration
Table 5: First iteration simplex table of one OS

B
P3
P2
zj
zj-cj

cB
0
-4

cj
P0
1
4
-16
-16

c1
P1
0.5
0.5
-2
1 max

c2
P2
0
1
-4
0

c3
P3
1
0
0
0

c4
P4
-0.5
0.5
-2
-2

h
2 min
8

The value in the row zj cj still exists positive element then we must apply principle Max-Min.
2nd iteration
Table 6: 2nd iteration simplex table of one OS

B
P1
P2
zj
zj-cj

cB
-3
-4

cj
P0
2
3
-18
-18

c1
P1
1
0
-3
0

c2
P2
0
1
-4
0

c3
P3
2
-1
-2
-2

c4
P4
-1
1
-1
-1

After 2 iteration we can see that the value of (zj cj ) are zero for elementary vectors and negative
for non-base vector so we know the optimal solution is reached.
12

4.4

Solving LP problem with Simplex Method

SIMPLEX METHOD

The optimal solution is Min = -18 for (2,3,0,0), but because the original task is find Max then we
must transform it back. The final optimal solution for Max CF is 18.
4.4.2

Case of Multiple optimal solution

Original problem:
2x1 + x2 = M ax
Subject to
4x1 + 2x2 8
x1 + x2 3
x1 , x2 0
Standard form
2x1 x2 = M in
Subject to
4x1 + 2x2 + x3 = 8
x1 + x2 + x4 = 3
x1 , x2 0
Initial simplex table
Table 7: Initial simplex table of Multiple OS

B
P3
P4
zj
zj-cj

cB
0
0

cj
P0
8
3
0
0

2
P1
4
1
0
2 max

1
P2
2
1
0
1

0
P3
1
0
0
0

0
P4
0
1
0
0

h
2 min
3

We will include vector P1 and exclude vector P3 from the base.


First iteration
Table 8: First iteration simplex table of Multiple OS

B
P1
P4
Zj
Zj-Cj

Cb
-2
0

Cj
P0
2
1
-4
-4

-2
P1
1
0
-2
0

-1
P2
0.5
0.5
-1
0

0
P3
0.25
-0.25
-0.5
-0.5

0
P4
0
1
0
0

h
4
2 Min

Both zj-cj value of both elementary vector are 0 and negative for non-base vectors, that means the
optimal solution is reached. But not all non-base value has negative value zj-cj so we will have multiple
optimal solution. Then we should choose the other elementary vector to include for the next iteration for
confirmation.

13

4.4

Solving LP problem with Simplex Method

SIMPLEX METHOD

Second iteration
Table 9: Second iteration simplex table of Multiple OS

B
P1
P2
Zj
Zj-Cj

Cb
-2
-1

Cj
P0
1
2
-4
-4

-2
P1
1
0
-2
0

-1
P2
0
1
-1
0

0
P3
0.5
-0.5
-0.5
-0.5

0
P4
-1
2
0
0

We see that the zj-cj value is not change from the last iteration.
All optimal solution are a weighted average of these two optimal solutions
(x1 , x2 ) = w1 (2, 0) + w2 (1, 2)
where the weight w1 and w2 (convex combination) are numbers that sastifiy the relationships
w1 + w2 = 1 and w1 0, w2 0
4.4.3

Case of Unbounded feasible region

Original problem:
x1 x2 = M ax
Subject to
4x1 + 2x2 4
x2 4
x1 , x2 0
Standard form
x1 + x2 = M in
Subject to
4x1 + 2x2 + x3 = 4
x2 + x4 = 4
x1 , x2 0
Initial simplex table
Table 10: Initial simplex table of Unbounded feasible region

B
P3
P4
Zj
Zj-Cj

Cb
0
0

Cj
P0
4
4
0
0

-1
P1
-4
0
0
1 max

1
P2
2
1
0
-1

0
P3
1
0
0
0

0
P4
0
1
0
0

h
-1
Inf

The constrains do not prevent the value of the objective function Z from increasing indefinitely, so the
simplex method would stop with the message that Z is unbounded
14

4.5

Adapting to other model forms

4.4.4

SIMPLEX METHOD

Case of No feasible solution

Original problem:
x1 + x2 = M in
Subject to
x1 x2 1
x1 + x2 2
x1 , x2 0
Standard form

x1 + x2 + 0x3 + 0x4 + wV1 + wV2 = 0


Subject to
x1 x2 x3 + V1 = 1
x1 + x2 x4 + V2 = 2
x1 , x2 0

4.5
4.5.1

Adapting to other model forms


Equality constrains

All the equality constrains could be cover into a pair of inequality constrains.
Ax = b => Ax b and Ax b
. However we do not want to increase the number of variable so we use artificial-variable technique.
1. Introducing a nonnegative artificail variable
Ax + x
=b
2. Assign an overwhelming penalty to objective function.
Z = cx M x

4.5.2

Functional constraints in form

For this kind of constrains we introduce both a surplus variable and and artificial variable x

Ax b =>> Ax xi + xj = b
Z = cx =>> cx + 0xi + M xj

15

DUAL TASK

Dual task

Dual task is derived from the primary task, the meaning of dual task is process directly with specific
profit per unit of resource. Dual task is a deeper analysis of the task and sometime can be faster solved.

Figure 6: Pair of symmetric dual tasks

5.1

Rule to create dual task

The primary task has dimension m x n is transformed to the dual task with dimension n x m
The constrain in primary task can be transform into dual task:

g(y) = y.b = M in

yi (, +)

aij .xj bj

yj 0

xj 0

f (x) = c.x = M ax
n
X
aij .xj = bj
j=1
n
X
j=1

xj (, +)

m
X
i=1
m
X

aij .yj cj
aij .yj = cj

i=1

16

5.2

Duality theorems

5.2

DUAL TASK

Duality theorems

1st Theorem
If the optimal solution exists then both tasks has optimal solution and they are equal.
2nd Theorem
If given constraint of LP task is fulfilled as sharp inequality (i.e. is not effective) for optimum solution
then corresponding constraint in dual task is fulfilled as the equality

5.3

Solving Dual task

Dual task will be solved by the same method as primary task, which is:
1. Graphical method
2. Simplex method

17

ALLOCATION TASKS

Allocation tasks

6.1

Definition of allocation tasks

This task deals with limited and interchangeable sources to individual customers in optimal way.
For example we must produce a certain amount bj of products with i machines, each machine has
specific cost cij usd/h, productivity of each machine is kij product/hour and maximum hour of production
is ai hours. We can rewrite the task as follow:

The total cost is sum product of all costs:

m X
n
X

cij .xij

M in

xij

ai

kij .xij

bj

xij

i=1 j=1

The maximum production hours constrain:

n
X
j=1

Amount of product is productivity x hours:

m
X
i=1

6.2

Transportation task

This is a special case of allocation task when we apply two assumption:


1. coefficient kij = 1, that means we assume the same effectiveness of all sources.
2. Balance supplier and demand, ai = bj
Thank to assumptions we can have some remarks:
1. The problem has been remarkably simplified
2. Balanced transportation task always has optimal solution
3. We need only m+n-1 of linear independent vector.

6.3

Solving balanced transportation tasks

To solve this problem we must follow 2 steps:


1. Find the starting basic solution
There are 5 methods we can use to find the starting basic solution.
(a) North West corner method
(b) Row minimum method
(c) Column minimum method
(d) Smallest minimum method
(e) Vogel method
2. Find the optimum solution by MODI

18

6.3

Solving balanced transportation tasks

ALLOCATION TASKS

We will see an example for BTT


Table 11: Example Balanced Transportation Task
Productiviy/Plant
D1
D2
D3
b (Demand)

O1
/2
/5
/1
6

O2
/5
/4
/3
12

O3
/3
/8
/6
6

a (Capacity)
10
7
7

The value assigned in each DiOj cell is the cost of production.


Starting solution by North West corner method
Procedure:
upper left corner of the matrix is assigned with maximum possible capacity of transportation
recalculation of capacities and demands
exclusion of row or column with fully utilized capacity or satisfied demand
continuation till the full allocation
Table 12: Starting solution by North West corner method
Productiviy/Plant
D1
D2
D3
b (Demand)

O1
6/2
0/5
0/1
6

O2
4/5
7/4
1/3
12

O3
0/3
0/8
6/6
6

a (Capacity)
10
7
7

We start at cell D1O1 then fill max demand of O1 is 6. The other cells in O1 must be 0. Capacity on D1
still has 4 left so we fill 4 into cell D1O2. The capacity of D1 is reached then the other cell of D1 must be
0. The demand of O2 still has 8 left so we will fill 7 into cell D2O2 because capacity of D2 is 7. The rest 1
will be filled to cell D3O2. The capacity of D3 has 6 left as well as 6 needed at O3 which filled to cell D3O3.
Starting solution by row minimum method
Procedure:
1st row: maximum allocation in cell with minimum transportation cost
recalculation of capacities and demands
exclusion of row or column with fully utilized capacity or satisfied demand
continuation in 1st row in sub matrix
continuation till the full allocation

19

6.3

Solving balanced transportation tasks

ALLOCATION TASKS

Table 13: Starting solution by row minimum method


Productiviy/Plant
D1
D2
D3
b (Demand)

O1
6/2
0/5
0/1
6

O2
0/5
7/4
5/3
12

O3
4/3
0/8
2/6
6

a (Capacity)
10
7
7

We start at row D1, the minimum cost is cell D1O1 then we give 6 here and 4 to the D1O3 with cost
3. As a consequence, the rest cells of O1 is 0. For the row D2 the cell D2O2 has cost 4 then we fill 7 here
then the rest cell of D2 is 0. The row D3 we have cell D3O2 with cost 3 then we give here 5 as the rest
of demand of O2 and the final cell D3O3 is 2.
Starting solution by column minimum method
Table 14: Starting solution by column minimum method
Productiviy/Plant
D1
D2
D3
b (Demand)

O1
0/2
0/5
6/1
6

O2
4/5
7/4
1/3
12

O3
6/3
0/8
0/6
6

a (Capacity)
10
7
7

This method is similar to row minimum method only we looking for the minimum cost on each column
instead of row.
Starting solution by column minimum method
Procedure:
maximum allocation in cheapest cell
recalculation of capacities and demands
exclusion of row or column with fully utilized capacity or satisfied demand
continuation cheapest cell in sub matrix
continuation till the full allocation
Table 15: Starting solution by column minimum method
Productiviy/Plant
D1
D2
D3
b (Demand)

O1
0/2
0/5
6/1
6

O2
4/5
7/4
1/3
12

O3
6/3
0/8
0/6
6

a (Capacity)
10
7
7

We start at the cell with minimum cost D3O1 and fill it with 6. The rest of O2 will be 0 and we
continue with either cell D1O3 or D3O2. We choose the cell D1O3 and fill it will 6 as demand of O3.
Then cell D1O2 will be 4 to full fill capacity D1. Cell D3O2 is minimum cost now and we fill it with 1 to

20

6.3

Solving balanced transportation tasks

ALLOCATION TASKS

archive the capacity of D3. The last cell D2O2 is 7 consequently.


Starting solution by Vogel method
Procedure:
calculation of the difference between best and second best option for each row and column
risk reduction = assignment of maximum transportation to the cheapest cell in row/column with
highest difference (i.e. risk)
exclusion of row or column with fully utilized capacity or satisfied demand
continuation cheapest cell in sub matrix
continuation till the full allocation
Table 16: Starting solution by Vogel method
Productiviy/Plant
D1
D2
D3
b (Demand)

O1
4/2
0/5
2/1
6

diff 1b
diff 2b
diff 3b
diff 4

1
1
4

O2
0/5
7/4
5/3
12

O3
6/3
0/8
0/6
6

a (Capacity)
10
7
7

diff 1a
1
1
2

diff 2a
3
1
2

diff 3a

diff 4a

1
2

4
3

1
1
1

First we calculate the diff 1a and diff 1b by subtract the second smallest cost for the minimum cost in
the respected row or column. Then the biggest value of diff 1b O3 so we fill 6 into cell D1O3 with lowest
cost on the column O3. Now we can fill all the cell on the column O3. Next we calculate diff 2a,b by the
same process without participant of O3. The biggest is diff 2a D1 then we will fill 4 into D1O1 with min
cost of the row. We exclude row D1 from calculation of diff 3a,b. The max value is on diff 3b O1, so we
fill 2 into D3O1 and exclude column O1. The last diff 4a,b is calculated and the last two cells are fill with
the same manner.
MODI Method
This method include 2 steps:
1. Find the initial improvement of inital solution
2. Find close loop and iterate until finding optimal solution.
Step 1
First we will set one of ui or vj to zeros. The other value of ui and vj of occupied cells will be
determined from this setting by formular:
cij = ui + vj

21

6.3

Solving balanced transportation tasks

ALLOCATION TASKS

Then value dij = cij ui vj of the non-occupied cells is calculated:

Then value dij = ui + vj cij of the non-occupied cells is calculated.

22

6.3

Solving balanced transportation tasks

ALLOCATION TASKS

The cell with dij < 0 could be improved to reach the optimal solution.
Step 2
We identify a close loop to change transportation schedule. This loop starts at the non-occupied cell
and goes though occupied cells to returns to the starting point. At each corner, the cells will be assigned
minus or plus sign alternatively with starting point is plus.

We will reschedule the transport by minus value of transportation at minus-cells and add more value
to plus-cells. The value is chosen as the minimum of all minus-cells to avoid negative value.

We recalculate the value of ui and vj as well as dij of all occupied and non-occupied cells. If some dij
still smaller than 0 then we repeat step 2 until all dij is positive.

23

TERMINOLOGY

Terminology
1. Criterion function: c1 x1 + c2 x2 + ... + cn xn
function being maximize or minimize.
2. Functional constrains: ai1 x1 + ai2 x2 + ... + ain xn
3. No negativity constrains: xj 0
4. Feasible solution: is a solution for which all the constraints are satisfied.
5. Infeasible solution is a solution for which at least one constraint is violated.
6. Additivity The additivity assumption of linear programming holds if every function in the model
is the sum of the individual contributions of the respective activities.
7. corner-point feasible (CPF) solution is a solution that lies at a corner of the feasible region.
8. slope-intercept form: For the geometric representation of a linear programming problem with
two decision variables, the slope-intercept form of a line algebraically displays both the slope of the
line and the intercept of this line with the vertical axis.
3
1
x2 = x1 + Z 2
5
5

24

REFERENCES

REFERENCES

References
[1] Frederick S. Hillier and Gerald J. Lieberman. Introduction to Operation Research. McGraw-Hill Education, 2 Penn Plaza, New York,2015
[2] J. Knpek and Martin Dobi Lecture of course Operations Research. CVUT, Prague, 2015

25

Das könnte Ihnen auch gefallen