. 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

155
. 1 Chapter 7 Transportation, Assignment and Transshipment Problems

Transcript of . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

Page 1: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

1

Chapter 7Transportation, Assignment and

Transshipment Problems

Page 2: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

2

ApplicationsPhysical analog

of nodes Physical analog

of arcsFlow

Communicationsystems

phone exchanges, computers, transmission

facilities, satellites

Cables, fiber optic links, microwave

relay links

Voice messages, Data,

Video transmissions

Hydraulic systemsPumping stationsReservoirs, Lakes

PipelinesWater, Gas, Oil,Hydraulic fluids

Integrated computer circuits

Gates, registers,processors

Wires Electrical current

Mechanical systems JointsRods, Beams,

SpringsHeat, Energy

Transportationsystems

Intersections, Airports,

Rail yards

Highways,Airline routes

Railbeds

Passengers, freight,

vehicles, operators

Applications of Network Optimization

Page 3: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

3

Description

A transportation problem basically deals with the problem, which aims to find the best way to fulfill the demand of n demand points using the capacities of m supply points. While trying to find the best way, generally a variable cost of shipping the product from one supply point to a demand point or a similar constraint should be taken into consideration.

Page 4: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

4

7.1 Formulating Transportation Problems

Example 1: Powerco has three electric power plants that supply the electric needs of four cities.•The associated supply of each plant and demand of each city is given in the table 1.•The cost of sending 1 million kwh of electricity from a plant to a city depends on the distance the electricity must travel.

Page 5: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

5

Transportation tableau

A transportation problem is specified by the supply, the demand, and the shipping costs. So the relevant data can be summarized in a transportation tableau. The transportation tableau implicitly expresses the supply and demand constraints and the shipping cost between each demand and supply point.

Page 6: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

6

Table 1. Shipping costs, Supply, and Demand for Powerco Example

From To

City 1 City 2 City 3 City 4 Supply (Million kwh)

Plant 1 $8 $6 $10 $9 35

Plant 2 $9 $12 $13 $7 50

Plant 3 $14 $9 $16 $5 40

Demand (Million kwh)

45 20 30 30

Transportation Tableau

Page 7: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

7

Solution

1. Decision Variable:

Since we have to determine how much electricity is sent from each plant to each city;

Xij = Amount of electricity produced at plant i and sent to city j

X14 = Amount of electricity produced at plant 1 and sent to city 4

Page 8: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

8

2. Objective function

Since we want to minimize the total cost of shipping from plants to cities;

Minimize Z = 8X11+6X12+10X13+9X14

+9X21+12X22+13X23+7X24

+14X31+9X32+16X33+5X34

Page 9: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

9

3. Supply Constraints

Since each supply point has a limited production capacity;

X11+X12+X13+X14 <= 35

X21+X22+X23+X24 <= 50

X31+X32+X33+X34 <= 40

Page 10: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

10

4. Demand Constraints

Since each supply point has a limited production capacity;

X11+X21+X31 >= 45

X12+X22+X32 >= 20

X13+X23+X33 >= 30

X14+X24+X34 >= 30

Page 11: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

11

5. Sign Constraints

Since a negative amount of electricity can not be shipped all Xij’s must be non negative;

Xij >= 0 (i= 1,2,3; j= 1,2,3,4)

Page 12: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

12

LP Formulation of Powerco’s Problem

Min Z = 8X11+6X12+10X13+9X14+9X21+12X22+13X23+7X24

+14X31+9X32+16X33+5X34

S.T.: X11+X12+X13+X14 <= 35 (Supply Constraints)

X21+X22+X23+X24 <= 50

X31+X32+X33+X34 <= 40

X11+X21+X31 >= 45 (Demand Constraints)

X12+X22+X32 >= 20

X13+X23+X33 >= 30

X14+X24+X34 >= 30

Xij >= 0 (i= 1,2,3; j= 1,2,3,4)

Page 13: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

13

General Description of a Transportation Problem

1. A set of m supply points from which a good is shipped. Supply point i can supply at most si units.

2. A set of n demand points to which the good is shipped. Demand point j must receive at least di units of the shipped good.

3. Each unit produced at supply point i and shipped to demand point j incurs a variable cost of cij.

Page 14: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

14

Xij = number of units shipped from supply point i to demand point j

),...,2,1;,...,2,1(0

),...,2,1(

),...,2,1(..

min

1

1

1 1

njmiX

njdX

misXts

Xc

ij

mi

i

jij

nj

j

iij

mi

i

nj

j

ijij

Page 15: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

15

Balanced Transportation Problem

If Total supply equals to total demand, the problem is said to be a balanced transportation problem:

nj

j

j

mi

i

i ds11

Page 16: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

16

Balancing a TP if total supply exceeds total demand

If total supply exceeds total demand, we can balance the problem by adding dummy demand point. Since shipments to the dummy demand point are not real, they are assigned a cost of zero.

Page 17: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

17

Balancing a transportation problem if total supply is less than total demand

If a transportation problem has a total supply that is strictly less than total demand the problem has no feasible solution. There is no doubt that in such a case one or more of the demand will be left unmet. Generally in such situations a penalty cost is often associated with unmet demand and as one can guess this time the total penalty cost is desired to be minimum

Page 18: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

18

7.2 Finding Basic Feasible Solution for TP

Unlike other Linear Programming problems, a balanced TP with m supply points and n demand points is easier to solve, although it has m + n equality constraints. The reason for that is, if a set of decision variables (xij’s) satisfy all but one constraint, the values for xij’s will satisfy that remaining constraint automatically.

Page 19: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

19

Methods to find the bfs for a balanced TP

There are three basic methods:

1. Northwest Corner Method

2. Minimum Cost Method

3. Vogel’s Method

Page 20: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

20

1. Northwest Corner Method

To find the bfs by the NWC method:

Begin in the upper left (northwest) corner of the transportation tableau and set x11 as large as possible (here the limitations for setting x11 to a larger number, will be the demand of demand point 1 and the supply of supply point 1. Your x11 value can not be greater than minimum of this 2 values).

Page 21: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

21

According to the explanations in the previous slide we can set x11=3 (meaning demand of demand point 1 is satisfied by supply point 1).

5

6

2

3 5 2 3

3 2

6

2

X 5 2 3

Page 22: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

22

After we check the east and south cells, we saw that we can go east (meaning supply point 1 still has capacity to fulfill some demand).

3 2 X

6

2

X 3 2 3

3 2 X

3 3

2

X X 2 3

Page 23: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

23

After applying the same procedure, we saw that we can go south this time (meaning demand point 2 needs more supply by supply point 2).

3 2 X

3 2 1

2

X X X 3

3 2 X

3 2 1 X

2

X X X 2

Page 24: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

24

Finally, we will have the following bfs, which is: x11=3, x12=2, x22=3, x23=2, x24=1, x34=2

3 2 X

3 2 1 X

2 X

X X X X

Page 25: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

25

2. Minimum Cost Method

The Northwest Corner Method dos not utilize shipping costs. It can yield an initial bfs easily but the total shipping cost may be very high. The minimum cost method uses shipping costs in order come up with a bfs that has a lower cost. To begin the minimum cost method, first we find the decision variable with the smallest shipping cost (Xij). Then assign Xij its largest possible value, which is the minimum of si and dj

Page 26: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

26

After that, as in the Northwest Corner Method we should cross out row i and column j and reduce the supply or demand of the noncrossed-out row or column by the value of Xij. Then we will choose the cell with the minimum cost of shipping from the cells that do not lie in a crossed-out row or column and we will repeat the procedure.

Page 27: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

27

An example for Minimum Cost MethodStep 1: Select the cell with minimum cost.

2 3 5 6

2 1 3 5

3 8 4 6

5

10

15

12 8 4 6

Page 28: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

28

Step 2: Cross-out column 2

2 3 5 6

2 1 3 5

8

3 8 4 6

12 X 4 6

5

2

15

Page 29: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

29

Step 3: Find the new cell with minimum shipping cost and cross-out row 2

2 3 5 6

2 1 3 5

2 8

3 8 4 6

5

X

15

10 X 4 6

Page 30: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

30

Step 4: Find the new cell with minimum shipping cost and cross-out row 1

2 3 5 6

5

2 1 3 5

2 8

3 8 4 6

X

X

15

5 X 4 6

Page 31: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

31

Step 5: Find the new cell with minimum shipping cost and cross-out column 1

2 3 5 6

5

2 1 3 5

2 8

3 8 4 6

5

X

X

10

X X 4 6

Page 32: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

32

Step 6: Find the new cell with minimum shipping cost and cross-out column 3

2 3 5 6

5

2 1 3 5

2 8

3 8 4 6

5 4

X

X

6

X X X 6

Page 33: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

33

Step 7: Finally assign 6 to last cell. The bfs is found as: X11=5, X21=2, X22=8, X31=5, X33=4 and X34=6

2 3 5 6

5

2 1 3 5

2 8

3 8 4 6

5 4 6

X

X

X

X X X X

Page 34: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

34

3. Vogel’s Method

Begin with computing each row and column a penalty. The penalty will be equal to the difference between the two smallest shipping costs in the row or column. Identify the row or column with the largest penalty. Find the first basic variable which has the smallest shipping cost in that row or column. Then assign the highest possible value to that variable, and cross-out the row or column as in the previous methods. Compute new penalties and use the same procedure.

Page 35: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

35

An example for Vogel’s MethodStep 1: Compute the penalties.

Supply Row Penalty

6 7 8

15 80 78

Demand

Column Penalty 15-6=9 80-7=73 78-8=70

7-6=1

78-15=63

15 5 5

10

15

Page 36: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

36

Step 2: Identify the largest penalty and assign the highest possible value to the variable.

Supply Row Penalty

6 7 8

5

15 80 78

Demand

Column Penalty 15-6=9 _ 78-8=70

8-6=2

78-15=63

15 X 5

5

15

Page 37: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

37

Step 3: Identify the largest penalty and assign the highest possible value to the variable.

Supply Row Penalty

6 7 8

5 5

15 80 78

Demand

Column Penalty 15-6=9 _ _

_

_

15 X X

0

15

Page 38: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

38

Step 4: Identify the largest penalty and assign the highest possible value to the variable.

Supply Row Penalty

6 7 8

0 5 5

15 80 78

Demand

Column Penalty _ _ _

_

_

15 X X

X

15

Page 39: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

39

Step 5: Finally the bfs is found as X11=0, X12=5, X13=5, and X21=15

Supply Row Penalty

6 7 8

0 5 5

15 80 78

15

Demand

Column Penalty _ _ _

_

_

X X X

X

X

Page 40: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

40

7.3 The Transportation Simplex Method

In this section we will explain how the simplex algorithm is used to solve a transportation problem.

Page 41: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

41

How to Pivot a Transportation Problem

Based on the transportation tableau, the following steps should be performed.

Step 1. Determine (by a criterion to be developed shortly, for example northwest corner method) the variable that should enter the basis.

Step 2. Find the loop (it can be shown that there is only one loop) involving the entering variable and some of the basic variables.

Step 3. Counting the cells in the loop, label them as even cells or odd cells.

Page 42: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

42

Step 4. Find the odd cells whose variable assumes the smallest value. Call this value θ. The variable corresponding to this odd cell will leave the basis. To perform the pivot, decrease the value of each odd cell by θ and increase the value of each even cell by θ. The variables that are not in the loop remain unchanged. The pivot is now complete. If θ=0, the entering variable will equal 0, and an odd variable that has a current value of 0 will leave the basis. In this case a degenerate bfs existed before and will result after the pivot. If more than one odd cell in the loop equals θ, you may arbitrarily choose one of these odd cells to leave the basis; again a degenerate bfs will result

Page 43: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

43

7.5. Assignment ProblemsExample: Machineco has four jobs to be completed. Each machine must be assigned to complete one job. The time required to setup each machine for completing each job is shown in the table below. Machinco wants to minimize the total setup time needed to complete the four jobs.

Page 44: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

44

Setup times

(Also called the cost matrix)

Time (Hours)

Job1 Job2 Job3 Job4

Machine 1 14 5 8 7

Machine 2 2 12 6 5

Machine 3 7 8 3 9

Machine 4 2 4 6 10

Page 45: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

45

The ModelAccording to the setup table Machinco’s problem can be formulated as follows (for i,j=1,2,3,4):

10

1

1

1

1

1

1

1

1..

10629387

5612278514min

44342414

43332313

42322212

41312111

44434241

34333231

24232221

14131211

4443424134333231

2423222114131211

ijij orXX

XXXX

XXXX

XXXX

XXXX

XXXX

XXXX

XXXX

XXXXts

XXXXXXXX

XXXXXXXXZ

Page 46: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

46

For the model on the previous page note that:

Xij=1 if machine i is assigned to meet the demands of job j

Xij=0 if machine i is not assigned to meet the demands of job j

In general an assignment problem is balanced transportation problem in which all supplies and demands are equal to 1.

Page 47: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

47

The Assignment Problem

In general the LP formulation is given as

Minimize 1 1

1

1

1 1

1 1

0

, , ,

, , ,

or 1,

n n

ij iji j

n

ijj

n

iji

ij

c x

x i n

x j n

x ij

Each supply is 1

Each demand is 1

Page 48: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

48

Comments on the Assignment Problem

• The Air Force has used this for assigning thousands of people to jobs.

• This is a classical problem. Research on the assignment problem predates research on LPs.

• Very efficient special purpose solution techniques exist. – 10 years ago, Yusin Lee and J. Orlin solved a problem

with 2 million nodes and 40 million arcs in ½ hour.

Page 49: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

49

Although the transportation simplex appears to be very efficient, there is a certain class of transportation problems, called assignment problems, for which the transportation simplex is often very inefficient. For that reason there is an other method called The Hungarian Method. The steps of The Hungarian Method are as listed below:

Step1. Find a bfs. Find the minimum element in each row of the mxm cost matrix. Construct a new matrix by subtracting from each cost the minimum cost in its row. For this new matrix, find the minimum cost in each column. Construct a new matrix (reduced cost matrix) by subtracting from each cost the minimum cost in its column.

Page 50: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

50

Step2. Draw the minimum number of lines (horizontal and/or vertical) that are needed to cover all zeros in the reduced cost matrix. If m lines are required , an optimal solution is available among the covered zeros in the matrix. If fewer than m lines are required, proceed to step 3.

Step3. Find the smallest nonzero element (call its value k) in the reduced cost matrix that is uncovered by the lines drawn in step 2. Now subtract k from each uncovered element of the reduced cost matrix and add k to each element that is covered by two lines. Return to step2.

Page 51: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

51

7.6 Transshipment ProblemsA transportation problem allows only shipments that go directly from supply points to demand points. In many situations, shipments are allowed between supply points or between demand points. Sometimes there may also be points (called transshipment points) through which goods can be transshipped on their journey from a supply point to a demand point. Fortunately, the optimal solution to a transshipment problem can be found by solving a transportation problem.

Page 52: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

52

Transshipment Problem

• An extension of a transportation problem– More general than the transportation problem in that in this

problem there are intermediate “transshipment points”. In addition, shipments may be allowed between supply points and/or between demand points

• LP Formulation– Supply point: it can send goods to another point but cannot

receive goods from any other point

– Demand point It can receive goods from other points but cannot send goods to any other point

– Transshipment point: It can both receive goods from other points send goods to other points

Page 53: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

53

The following steps describe how the optimal solution to a transshipment problem can be found by solving a transportation problem.

Step1. If necessary, add a dummy demand point (with a supply of 0 and a demand equal to the problem’s excess supply) to balance the problem. Shipments to the dummy and from a point to itself will be zero. Let s= total available supply.

Step2. Construct a transportation tableau as follows: A row in the tableau will be needed for each supply point and transshipment point, and a column will be needed for each demand point and transshipment point.

Page 54: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

54

Each supply point will have a supply equal to it’s original supply, and each demand point will have a demand to its original demand. Let s= total available supply. Then each transshipment point will have a supply equal to (point’s original supply)+s and a demand equal to (point’s original demand)+s. This ensures that any transshipment point that is a net supplier will have a net outflow equal to point’s original supply and a net demander will have a net inflow equal to point’s original demand. Although we don’t know how much will be shipped through each transshipment point, we can be sure that the total amount will not exceed s.

Page 55: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

55

Transshipment Example• Example 5: Widgetco manufactures widgets at two

factories, one in Memphis and one in Denver. The Memphis factory can produce as 150 widgets, and the Denver factory can produce as many as 200 widgets per day. Widgets are shipped by air to customers in LA and Boston. The customers in each city require 130 widgets per day. Because of the deregulation of airfares, Widgetco believes that it may be cheaper first fly some widgets to NY or Chicago and then fly them to their final destinations. The cost of flying a widget are shown next. Widgetco wants to minimize the total cost of shipping the required widgets to customers.

Page 56: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

56

Transportation Tableau Associated with the Transshipment Example

• NY Chicago LA Boston Dummy Supply

• Memphis $8 $13 $25 $28 $0 150

• Denver $15 $12 $26 $25 $0 200

• NY $0 $6 $16 $17 $0 350

• Chicago $6 $0 $14 $16 $0 350

• Demand 350 350 130 130 90

• Supply points: Memphis, Denver

• Demand Points: LA Boston

• Transshipment Points: NY, Chicago

• The problem can be solved using the transportation simplex method

Page 57: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

57

Limitations of Transportation Problem

• One commodity ONLY: any one product supplied and demanded at multiple locations – Merchandise– Electricity, water

• Invalid for multiple commodities: (UNLESS transporting any one of the multiple commodities is completely independent of transporting any other commodity and hence can be treated by itself alone)– Example: transporting product 1 and product 2 from the

supply points to the demand points where the total amount (of the two products) transported on a link is subject to a capacity constraint

– Example: where economy of scale can be achieved by transporting the two products on the same link at a larger total volume and at a lower unit cost of transportation

Page 58: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

58

Limitations of Transportation Problem– Difficult to generalize the technique to accommodate

(these are generic difficulty for “mathematical programming,” including linear and non-linear programming

• Economy of scale the per-unit cost of transportation on a link decreasing with the volume (nonlinear and concave; there is a trick to convert a “non-linear program with a piecewise linear but convex objective function to a linear program; no such tricks exists for a piecewise linear but concave objective function)

• Fixed-cost: transportation usually involves fixed charges. For example, the cost of truck rental (or cost of trucking in general) consists of a fixed charge that is independent of the mileage and a mileage charge that is proportional to the total mileage driven. Such fixed charges render the objective function NON-LINEAR and CONCAVE and make the problem much more difficult to solve

Page 59: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

59

Chapter 8Network Models

Page 60: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

60

Networks are Everywhere• Physical Networks

– Road Networks– Railway Networks– Airline traffic Networks– Electrical networks, e.g., the power grid

• Abstract networks– organizational charts– precedence relationships in projects

• Others?

Page 61: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

61

Overview: • Networks and graphs are powerful

modeling tools.

• Most OR models have networks or graphs as a major aspect

• Each representation has its advantages– Major purpose of a representation

• efficiency in algorithms

• ease of use

Page 62: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

62

Description

Many important optimization problems can be analyzed by means of graphical or network representation. In this chapter the following network models will be discussed:

1. Shortest path problems

2. Maximum flow problems

3. CPM-PERT project scheduling models

4. Minimum Cost Network Flow Problems5. Minimum spanning tree problems

Page 63: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

63

WHAT IS CPM/PERT FOR?

CPM/PERT are fundamental tools of project management and are used for one of a kind, often large and expensive, decisions such as building docks, airports and starting a new factory. Such decisions can be described via mathematical models, but this is not essential. Some would argue that CPM/PERT is not a pure OR topic. CPM/PERT really falls into gray area that can be claimed by fields other than OR also.

Page 64: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

64

General Comments on CPM/PERT vs. ALB

Assembly Line Balancing (ALB) are naturally not discussed in this text, but it is important to be aware of the huge difference between the ALB and CPM/PERT concepts because the precedence diagrams look so similar.

Activity on node (AON) method of network precedence diagram drawing and the ALB diagram are identical looking at first. The ALB deals with small repetitive items such as TV’s while CPM/PERT deals with large one of a kind projects.

Page 65: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

65

Network Analysis and Their LP Connections

• Several Major Basic Classes of Network Problems– How to recognize and formulate them? What are the

features they can be used to model? What are their limitations?

– All can be formulated as an LP

– Several important “ad-hoc” algorithms and their rationales will be provided

• Most efficient transportation of goods, information etc. through a network– Transportation problem (already discussed)

– Transshipment problem

Page 66: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

66

Network Analysis and Their LP Connections

• Most efficient way to go from one point to another in a distance network or networks representing non-distance phenomenon, e.g., the “cost network” representing production, inventory, and other costs– Shortest path problem:

• Find the shortest path between two points in a network• Dijkstra algorithm• Limitations: Breakdown of the Dijkstra’s algorithm when “side

constraints” are added• LP formulation• LP formulation to accommodate some side constraints, e.g.,

disallowing use of two particular links in the shortest path

– An example application to non-distance contexts: Minimum production and inventory cost in the context of dynamic programming.

Page 67: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

67

Network Analysis and Their LP Connections

– Maximum amount of flow from one point to another in a capacitated network

• Maximum flow problem

• The flow-augmenting algorithm

• Limitations: breakdown of the flow-augmenting algorithm when “side-constraints” are added

• LP formulation

• LP formulation to accommodate some “side-constraints,” e.g., no link carrying more than 30% of the whole flow so as to avoid drastic reduction of flow after failure of any one flow-carrying link

Page 68: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

68

8.1 Basic DefinitionsA graph or network is defined by two sets of symbols:• Nodes: A set of points or vertices(call it V) are called nodes of a graph or network.

• Arcs: An arc consists of an ordered pair of vertices and represents a possible direction of motion that may occur between vertices.

1 2

Nodes

1 2

Arc

Page 69: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

69

• Chain: A sequence of arcs such that every arc has exactly one vertex in common with the previous arc is called a chain.

1 2

Common vertex between two arcs

Page 70: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

70

• Path: A path is a chain in which the terminal node of each arc is identical to the initial node of next arc.

For example in the figure below (1,2)-(2,3)-(4,3) is a chain but not a path; (1,2)-(2,3)-(3,4) is a chain and a path, which represents a way to travel from node 1 to node 4.

2 3

1 4

Page 71: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

71

Essence of Dijkstra’s Shortest- Path Algorithm

• Key Points regarding the nature of the algorithm– In each iteration, the shortest path from the origin

to one of the rest of the nodes is found. That is, we obtain one new “solved” node in each iteration. (More than one such path and node may be found in one iteration when there is a tie. There may also exist multiple shortest paths from the origin to some nodes.)

– The algorithm stops when the shortest path to the destination is found

Page 72: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

72

Essence of Dijkstra’s Shortest- Path Algorithm

• General thought process involved in each iteration– Let S be the current set of “solved nodes” (the set

of nodes whose shortest paths from the origin been found), N be the set of all nodes, and N – S be the set of “unsolved nodes

• 1. The next “solved” node should be reachable directly from one of the solved nodes via one direct link or arc (these nodes can be called neighboring nodes of the current solved nodes). Therefore, we consider only such nodes and all the links providing the access from the current solved nodes to these neighboring nodes (but no other links).

Page 73: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

73

Essence of Dijkstra’s Shortest- Path Algorithm

– 2. For each of these neighboring nodes, find the shortest path from the origin via only current solved nodes and the corresponding distance from the origin

– 3. In general, there exist multiple such neighboring nodes.The shortest path to one of these nodes is claimed to have been found. This node is the one that has the shortest distance from the origin among these neighboring nodes being considered. Call this new node “solved node.”

Page 74: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

74

Algorithm for the Shortest Path Problem• Objective of the nth iteration: Find the nth nearest node to the

origin (to be repeated for n = 1, 2, … until the nth nearest node is the destination)

• Input for the nth Iteration: (n – 1) nearest nodes to the origin (solved for at the previous iterations), including their shortest path and distance from the origin. (These nodes plus the origin will be called solved nodes; the others are unsolved nodes)

• Candidates for the nth nearest node: Each solved node that is directly connected by a link to one or more unsolved nodes provides one candidate the unsolved node with the shortest connecting link (ties provide additional candidates)

• Calculation of nth nearest node: For each solved node and its candidate, add the distance between them and the distance of the shortest path from the origin to this solved node. The candidate with the smallest such total distance is the nth nearest node (ties provide additional solved nodes), and its shortest path is the one generating this distance.

Page 75: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

75

The Road System for Seervada Park• Cars are not allowed into the park• There is a narrow winding road system for trams and

for jeeps driven by the park rangers– The road system is shown without curves in the next slide– Location O is the entrance into the park– Other letters designate the locations of the ranger stations – The scenic wonder is at location T– The numbers give the distance of these winding roads in

miles• The park management wishes to determine which

route from the park entrance to station T has the smallest total distance for the operation of the trams

Page 76: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

76

The Road System for Seervada Park

O

A

B

C

D

E

T2

1

2

3

4

7

41

7

5

5

4

Page 77: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

77

Dijkstra’s Algorithm for Shortest Path on a Network with Positive Arc Lengths

• Oth iteration: Shortest distance from node O to Node O. S = {O}.

• Ist iteration:– Step 1: Neighboring Nodes = {A, B, C}– Step 2: Shortest path from O to neighboring nodes

that traverse through the current set of solved nodes S. Min {2, 5, 4} = 2 (corresponding to node A).

– Step 3: The shortest path from O to A has been found with a distance of 2. S = {O, A}

Page 78: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

78

Dijkstra’s Algorithm for Shortest Path on a Network with Positive Arc Lengths

O

A

B

C

Solved Nodes2

5

4

Page 79: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

79

Dijkstra’s Algorithm for Shortest Path on a Network with Positive Arc Lengths

• 2nd Iteration: – Step 1: Neighboring nodes = {B, C, D}– Step 2: Min (Min (2 + 2, 5), 4, (2 + 7)) = 4. – Step 3: Shortest path from B and C has been

found. S = {O, A, B, C}

O

A D

C

B

7

2

5

4

Current Solved Nodes

(2)

(0)

Page 80: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

80

Dijkstra’s Algorithm for Shortest Path on a Network with Positive Arc Lengths

• 3rd Iteration:

– Step 1: Neighboring nodes = {D, E}. Only AD, BD, BE, and CE

– Step 2: Min(Min(2 + 7, 4+4), Min(4 + 3, 4+4)) = 7

– Step 3: The shortest path to E has been found S = {O, A, B, C, E}

O

A

B

C

D

E

7

4

3

4

Current Solved Nodes

(2)

(4)

(4)

Page 81: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

81

Dijkstra’s Algorithm for Shortest Path on a Network with Positive Arc Lengths

• Iteration 4– Step 1: Include (only) Nodes D and T. Include

only arcs AD, BD, ED, & ET– Step 2: Min((min(2+7, 4+4, 7+1), (7+7))) = 8– Step 3: Shortest path from node O to Node D has

been found. S = {O, A, B, C, D, E}

O

A

B

C

E

D

T

(2)

(4)

(4) (7)

7

4

1

7Current solved nodes

Page 82: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

82

Dijkstra’s Algorithm for Shortest Path on a Network with Positive Arc Lengths

• Iteration 5

– Step 1: Include only node T and include arcs DT and ET

– Step 2: Min(8+5, 7+7) = 13 (no other competing nodes)

– Step 3: The shortest path from the origin to T, the destination, has been found, with a distance of 13

O

A

B

C

D

E

T(0)

(2)

(4)

(4)

(8)

(7)

5

7

Current solved nodes

Page 83: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

83

Dijkstra’s Algorithm for Shortest Path on a Network with Positive Arc Lengths

• Final Solution

• Incidentally, we have also found the nth nearest node from the origin sequentially

O

A

B

C

D

E

T

2

4(0)

2

4

31

5

(2)

(4)

(4)

(7)

(8)

(13)

Page 84: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

84

Shortest-Path Algorithm Applied to Seervada Park Problem

n Solved Nodes Directly Connected to Unsolved Nodes

Closest Connected Unsolved

Node

Total Distance Involved

Nth Nearest Node

Minimum Distance

Last Connection

1 O A 2 A 2 OA

2, 3 O

A

C

B

4

2+2=4

C

B

4

4

OC

AB

4 A

B

C

D

E

E

2+7=9

4+3=7

4+4=8

E 7 BE

5 A

B

E

D

DD

2+7=9

4+4=8

7+1=8

D

D

8

8

BD

ED

6 D

E

T

T

8+5=13

7+7=14

T 13 DT

Page 85: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

85

LP Formulation of the Shortest Path Problem

• Consider the following shortest path problem from node 1 to node 6

: denotes a link

• Send one unit of flow from node 1 to node 6

1

2

3

4

5

6

4

3

2

3

3

2

1

2

5

4

36

7

2

Page 86: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

86

LP Formulation of the Shortest Path Problem

• Use flow conservation constraints– (Outflow from any node – inflow to that node) = 0– For origin = 1– For destination = -1– For all other nodes = 0– Let xj denote the flow along link j, j = 1, 2, .., 7, xj

= 0 or 1– It turns out that this 0-1 constraints can be replaced

by 0 xj 1, which can in turn be replaced by xj 0

Page 87: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

87

LP Formulation of the Shortest Path Problem

• Min 4x1 + 3x2 + 3x3 + 2x4 + 3x5 + 2x6 + 2x7

• S.t. x1 + x2 = 1

• -x1 + x3 + x4 = 0

• - x2 + x5 = 0

• - x3 + x6 = 0

• - x4 – x5 + x7 = 0

• - x6 – x7 = -1

• Xj 0, j = 1, 2, …, 7 (xj integers)

Page 88: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

88

Maximum Flow Problem

• Maximum flow problem description– All flow through a directed and connected network

originates at one node (source) and terminates at one another node (sink)

– All the remaining nodes are transshipment nodes

– Flow through an arc is allowed only in the direction indicated by the arrowhead, where the maximum amount of flow is given by the capacity of that arc. At the source, all arcs point away from the node. At the sink, all arcs point into the node

– The objective is to maximize the total amount of flow from the source to the sink (measured as the amount leaving the source or the amount entering the sink)

Page 89: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

89

Maximum Flow Problem

• Typical applications– Maximize the flow through a company’s

distribution network from its factories to its customers

– Maximize the flow through a company’s supply network from its vendors to its factories

– Maximize the flow of oil through a system of pipelines

– Maximize the flow of water through a system of aqueducts

– Maximize the flow of vehicles through a transportation network

Page 90: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

90

Maximum Flow Algorithm

• Some Terminology– The residual network shows the remaining arc

capacities for assigning additional flows after some flows have been assigned to the arcs

O B2

5

The residual capacity for flow from node O to Node B

The residual capacity for assigning some flow from node B to node O

Page 91: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

91

Maximum Flow Algorithm

– An augmenting path is a directed path from the source to the sink in the residual network such that every arc on this path has strictly positive residual capacity

– The residual capacity of the augmenting path is the minimum of these residual capacities (the amount of flow that can feasibly be added to the entire path)

• Basic idea– Repeatedly select some augmenting path and add a flow

equal to its residual capacity to that path in the original network. This process continues until there are no more augmenting paths, so that the flow from the source to the sink cannot be increased further

Page 92: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

92

Maximum Flow Algorithm• The Augmenting Path Algorithm

– Assume that the arc capacities are either integers or rational numbers

• 1. identify an augmenting path by finding some directed path from the source to the sink in the residual network such that every arc on this path has strictly positive residual capacity. If no such path exists, the net flows already assigned constitute an optimal flow pattern

• 2. Identify the residual capacity c* of this augmenting path by finding the minimum of the residual capacities of the arcs on this path. Increase the flow in this path by c*

Page 93: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

93

Maximum Flow Example• During the peak season the park management of the

Seervada park would like to determine how to route the various tram trips from the park entrance (Station O) to the scenic (Station T) to maximize the number of trips per day. Each tram will return by the same route it took on the outgoing trip so the analysis focuses on outgoing trips only. To avoid unduly disturbing the ecology and wildlife of the region, strict upper limits have been imposed on the number of outgoing trips allowed per day in the outbound direction on each individual road. For each road the direction of travel for outgoing trips is indicated by an arrow in the next slide. The number at the base of the arrow gives the upper limit on the number of outgoing trips allowed per day.

Page 94: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

94

Maximum Flow Example

• Consider the problem of sending as many units from node O to node T for the following network (current flow, capacity):

O

A

B

C

D

E

T

(0,5)

(0,2)

(0,1)

(0,5)

(0,4)

(0,6)

(0,4)

(0,1)

(0,3)

(0,9)

(0,7)

(0,4)

Page 95: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

95

Maximum Flow Example• Iteration 1: one of the several augmenting paths is OBET, which has a

residual capacity of min{7, 5, 6} = 5. By assigning the flow of 5 to this path, the resulting network is shown above

O

A

B

C

D

E

T

(0,5)

(0,2)

(0,1)

(5,5)

(0,4)

(5,6)

(0,4)

(0,1)

(0,3)

(0,9)

(5,7)

(0,4)

Page 96: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

96

Maximum Flow Example

• Iteration 2: Assign a flow of 3 to the augmenting path OADT. The resulting residual network is

O

A

B

C

D

E

T

(3,5)

(0,2)

(0,1)

(5,5)

(0,4)

(5,6)

(0,4)

(0,1)

(3,3)

(3,9)

(5,7)

(0,4)

Page 97: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

97

Maximum Flow Example

• Iteration 3: Assign a flow of 1 to the augmenting path OABDT. The resulting residual network is

O

A

B

C

D

E

T

(4,5)

(0,2)

(1,1)

(5,5)

(0,4)

(5,6)

(1,4)

(0,1)

(3,3)

(4,9)

(5,7)

(0,4)

Page 98: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

98

Maximum Flow Example• Iteration 4: Assign a flow of 2 to the augmenting path OBDT. The

resulting residual network is

O

A

B

C

D

E

T

(4,5)

(0,2)

(1,1)

(5,5)

(0,4)

(5,6)

(3,4)

(0,1)

(3,3)

(6,9)

(7,7)

(0,4)

Page 99: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

99

Maximum Flow Example

Iteration 5: Assign a flow of 1 to the augmenting path OCEDT. The resulting residual network is

O

A

B

C

D

E

T

(4,5)

(0,2)

(1,1)

(5,5)

(1,4)

(5,6)

(3,4)

(1,1)

(3,3)

(7,9)

(7,7)

(1,4)

Page 100: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

100

Maximum Flow Example

Iteration 6: Assign a flow of 1 to the augmenting path OCET. The resulting residual network is

O

A

B

C

D

E

T

(4,5)

(0,2)

(1,1)

(5,5)

(2,4)

(6,6)

(3,4)

(1,1)

(3,3)

(7,9)

(7,7)

(2,4)

Page 101: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

101

Maximum Flow Example• There are no more flow augmenting paths, so the current

flow pattern is optimal

13

O

C

A

B

E

D

T

13

4

7

2

1

3

3

5

6

1

7

2

Page 102: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

102

Maximum Flow Example• Recognizing optimality• Max-flow min-cut theorem can be useful• A cut is defined as any set of directed arcs

containing at least one arc from every directed path from the source to the sink

• For any particular cut, the cut value is the sum of the arc capacities of the arcs of the cut

• The theorem states that, for any network with a single source and sink, the maximum feasible flow from the source to the sink equals the minimum cut value for all cuts of the network

Page 103: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

103

8.3 Maximum Flow Problems

Many situations can be modeled by a network in which the arcs may be thought of as having a capacity that limits the quantity of a product that may be shipped through the arc. In these situations, it is often desired to transport the maximum amount of flow from a starting point (called the source) to a terminal point (called the sink). Such problems are called maximum flow problems.

Page 104: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

104

An example for maximum flow problemSunco Oil wants to ship the maximum possible amount of oil (per hour) via pipeline from node so to node si as shown in the figure below.

so si21(2)2 (1)3 (2)2

(1)3

a0

3(1)4 (1)1

The various arcs represent pipelines of different diameters. The maximum number of barrels of oil that can be pumped througheach arc is shown in the table above (also called arc capacity).

Arc Capacity

(so,1) 2

(so,2) 3

(1,2) 3

(1,3) 4

(3,si) 1

(2,si) 2

Page 105: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

105

For reasons that will become clear soon, an artificial arc called a0 is added from the sink to the source. To formulate an LP about this problem first we should determine the decision variable.

Xij = Millions of barrels of oil per hour that will pass through arc(i,j) of pipeline.

For a flow to be feasible it needs to be in the following range:

0 <= flow through each arc <= arc capacity

And

Flow into node i = Flow out from node i

Page 106: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

106

Let X0 be the flow through the artificial arc, the conservation of flow implies that X0 = total amount of oil entering the sink. Thus, Sunco’s goal is to maximize X0.

Max Z= X0

S.t. Xso,1<=2 (Arc Capacity constraints)

Xso,2<=3

X12<=3

X2,si<=2

X13<=4

X3,si<=1

X0=Xso,1+Xso,2 (Node so flow constraints)

Xso,1=X12+X13 (Node 1 flow constraints)

Xso,2+X12=X2,si (Node 2 flow constraints)

X13=X3,si (Node 3 flow constraints)

X3,si+X2,si=X0 (Node si flow constraints)

Xij>=0

Page 107: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

107

One optimal solution to this LP is Z=3, Xso,1=2, X13=1, X12=1, Xso,2=1, X3,si=1, X2,si=2, Xo=3.

Page 108: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

108

8.6 Minimum Spanning Tree Problems

Suppose that each arc (i,j) in a network has a length associated with it and that arc (i,j) represents a way of connecting node i to node j. For example, if each node in a network represents a computer in a computer network, arc(i,j) might represent an underground cable that connects computer i to computer j. In many applications, we want to determine the set of arcs in a network that connect all nodes such that the sum of the length of the arcs is minimized. Clearly, such a group of arcs contain no loop.

Page 109: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

109

Minimum Spanning Tree Problem• An undirected and connected network is being

considered, where the given information includes some measure of the positive length (distance, cost, time, etc.) associated with each link

• Both the shortest path and minimum spanning tree problems involve choosing a set of links that have the shortest total length among all sets of links that satisfy a certain property– For the shortest-path problem this property is that the

chosen links must provide a path between the origin and the destination

– For the minimum spanning tree problem, the required property is that the chosen links must provide a path between each pair of nodes

Page 110: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

110

Some Applications• Design of telecommunication networks (fiber-optic

networks, computer networks, leased-line telephone networks, cable television networks, etc.)

• Design of lightly used transportation network to minimize the total cost of providing the links (rail lines, roads, etc.)

• Design of a network of high-voltage electrical transmission lines

• Design of a network of wiring on electrical equipment (e.g., a digital computer system) to minimize the total length of the wire

• Design of a network of pipelines to connect a number of locations

Page 111: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

111

For a network with n nodes, a spanning tree is a group of n-1 arcs that connects all nodes of the network and contains no loops.

1

3

212

7

4(1,2)-(2,3)-(3,1) is a loop

(1,3)-(2,3) is the minimum spanning tree

Page 112: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

112

Minimum Spanning Tree Problem Description

• You are given the nodes of the network but not the links. Instead you are given the potential links and the positive length for each if it is inserted into the network (alternative measures for length of a link include distance, cost, and time)

• You wish to design the network by inserting enough links to satisfy the requirement that there be a path between every pair of nodes

• The objective is to satisfy this requirement in a way that minimizes the total length of links inserted into the network

Page 113: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

113

Minimum Spanning Tree Algorithm• Greedy Algorithm

– 1. Select any node arbitrarily, and then connect (i.e., add a link) to the nearest distinct node

– 2. Identify the unconnected node that is closest to a connected node, and then connect these two nodes (i.e., add a link between them). Repeat the step until all nodes have been connected

– 3. Tie breaking: Ties for the nearest distinct node (step 1) or the closest unconnected node (step 2) may be broken arbitrarily, and the algorithm will still yield an optimal solution.

• Fastest way of executing algorithm manually is the graphical approach illustrated next

Page 114: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

114

Example: The State University campus has five computers. The distances between computers are given in the figure below. What is the minimum length of cable required to interconnect the computers? Note that if two computers are not connected this is because of underground rock formations.

4

2

5

3

1

6

4

5

1

3

2

2

2

4

Page 115: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

115

Solution: We want to find the minimum spanning tree.• Iteration 1: Following the MST algorithm discussed before, we arbitrarily choose node 1 to begin. The closest node is node 2. Now C={1,2}, Ć={3,4,5}, and arc(1,2) will be in the minimum spanning tree.

4

2

5

3

1

6

4

5

1

3

2

2

2

4

Page 116: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

116

• Iteration 2: Node 5 is closest to C. since node 5 is two blocks from node 1 and node 2, we may include either arc(2,5) or arc(1,5) in the minimum spanning tree. We arbitrarily choose to include arc(2,5). Then C={1,2,5} and Ć={3,4}.

4

2

5

3

1

6

4

5

1

3

2

2

2

4

Page 117: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

117

• Iteration 3: Since node 3 is two blocks from node 5, we may include arc(5,3) in the minimum spanning tree. Now C={1,2,5,3} and Ć={4}.

4

2

5

3

1

6

4

5

1

3

2

2

2

4

Page 118: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

118

• Iteration 4: Node 5 is the closest node to node 4. Thus, we add arc(5,4) to the minimum spanning tree.

We now have a minimum spanning tree consisting of arcs(1,2), (2,5), (5,3), and (5,4). The length of the minimum spanning tree is 1+2+2+4=9 blocks.

4

2

5

3

1

6

4

5

1

3

2

2

2

4

Page 119: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

119

8.4 CPM and PERTNetwork models can be used as an aid in the scheduling of large complex projects that consist of many activities.

CPM: If the duration of each activity is known with certainty, the Critical Path Method (CPM) can be used to determine the length of time required to complete a project.

PERT: If the duration of activities is not known with certainty, the Program Evaluation and Review Technique (PERT) can be used to estimate the probability that the project will be completed by a given deadline.

Page 120: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

120

CPM and PERT are used in many applications including the following:

• Scheduling construction projects such as office buildings, highways and swimming pools• Developing countdown and “hold” procedure for the launching of space crafts• Installing new computer systems• Designing and marketing new products• Completing corporate mergers• Building ships

Page 121: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

121

Project Planning, Scheduling and Control

• Planning: organized approach to accomplish the goal of minimizing elapsed time of project– defines objectives and tasks; represents tasks interactions on

a network; estimates time and resources

• Scheduling: a time-phased commitment of resources– identifies critical tasks which, if delayed, will delay the

project’s completion time.

• Control: means of monitoring and revising the progress of a project

Page 122: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

122

Network Representation• Tasks (or activities) are represented by arcs

– Each task has a duration denoted by tj

– Node 0 represents the “start” and node n denotes the “finish” of the project

• Precedence relations are shown by “arcs”– specify what other tasks must be completed before the task in

question can begin.

• A path is a sequence of linked tasks going from beginning to end

• Critical path is the longest path

Page 123: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

123

To apply CPM and PERT, we need a list of activities that make up the project. The project is considered to be completed when all activities have been completed. For each activity there is a set of activities (called the predecessors of the activity) that must be completed before the activity begins. A project network is used to represent the precedence relationships between activities. In the following discussions the activities will be represented by arcs and the nodes will be used to represent completion of a set of activities (Activity on arc (AOA) type of network).

1 32A B

Activity A must be completed before activity B starts

Page 124: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

124

While constructing an AOA type of project diagram one should use the following rules:• Node 1 represents the start of the project. An arc should lead from node 1 to represent each activity that has no predecessors.

• A node (called the finish node) representing the completion of the project should be included in the network.

• Number the nodes in the network so that the node representing the completion time of an activity always has a larger number than the node representing the beginning of an activity.

• An activity should not be represented by more than one arc in the network

• Two nodes can be connected by at most one arc.

To avoid violating rules 4 and 5, it can be sometimes necessary to utilize a dummy activity that takes zero time.

Page 125: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

125

Formulating the CPM Problem

Input Data:Precedence relationships and durations

Decision Variable:ESi : Earliest starting times for each of the tasks

Objective:Minimize the elapsed time of the projectwhere node n is the last node in the graph

Page 126: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

126

Constraints

• If tj is the earliest starting time of a task, ESi is the earliest starting time of an immediate predecessor and ti is the duration of the immediate predecessor, then we have

ESj ESi + ti for every arc (i, j)

Page 127: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

127

Critical Path Definitions• Earliest Start Time (ES) is the earliest time a task

can feasibly start• Earliest Finish Time (EF) is the earliest time a

task can feasibly end• Latest Start Time (LS) is the latest time a task can

feasibly start, without delaying the project at all.• Latest Finish Time (LF) is the latest time a task

can feasibly end, without delaying the project at all

Page 128: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

128

Critical Path Method

• Forward Pass – Go through the jobs in order– Start each job at the earliest time while satisfying the

precedence constraints– It finds the earliest start and finish times– EFi = ESi + ti

– Earliest start time for an activity leaving a particular node is equal to the largest of the earliest finish times for all activities entering the node.

Page 129: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

129

CPM: The Backward Pass

• Fix the finishing time• Look at tasks in reverse order• Lay out tasks one at a time on the Gantt chart

starting at the finish and working backwards to the start

• Start the task at its latest starting time– LSi = LFi - ti

– Latest finish time for an activity entering a particular node is equal to the smallest of the latest start times for all activities leaving the node.

Page 130: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

130

CPM and Critical Path

• Theorem: The minimum length of the schedule is the length of the longest path. The longest path is called the critical path

Look for tasks whose earliest start time and latest start time are the same. These tasks are critical, and are on a critical path.

Page 131: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

131

CPM and Critical Path

• Critical path are found by identifying those tasks where ES=LS (equivalently, EF=LF)

• No flexibility in scheduling tasks on the critical path• The makespan of the critical path equals the LF of the

final task• Slack is the difference between LS and ES, or LF and EF.

An activity with a slack of zero is on the critical path

Page 132: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

132

An example for CPM

Widgetco is about to introduce a new product. A list of activities and the precedence relationships are given in the table below. Draw a project diagram for this project.

Activity Predecessors Duration(days)

A:train workers - 6

B:purchase raw materials - 9

C:produce product 1 A, B 8

D:produce product 2 A, B 7

E:test product 2 D 10

F:assemble products 1&2 C, E 12

Page 133: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

133

Project Diagram for Widgetco

1

65

42

3A 6

B 9

Dummy

C 8

D 7

E 10

F 12

Node 1 = starting nodeNode 6 = finish node

Page 134: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

134

Project Diagram for Widgetco Forward Pass (ES,EF)

1

65

42

3A 6

B 9

Dummy

C 8

D 7

E 10

F 12

Node 1 = starting nodeNode 6 = finish node

(0,6)

(0,9)

(9,17)

(9,16)(16,26)

(26,38)

Page 135: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

135

Project Diagram for Widgetco Backward Pass (LS,LF)

1

65

42

3A 6

B 9

Dummy

C 8

D 7

E 10

F 12

Node 1 = starting nodeNode 6 = finish node

(3,9)

(0,9)

(18,26)

(9,16)(16,26)

(26,38)

Page 136: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

136

For Widgetco example ES(i)’s and LS(i)’s are as follows:

Activity ES(i) LS(i)

A 0 3

B 0 0

C 9 18

D 9 9

E 16 16

F 26 26

Page 137: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

137

According to the table on the previous slide the slacks are computed as follows:

Activity B: 0

Activity A: 3

Activity D: 0

Activity C: 9

Activity E: 0

Activity F: 0

Page 138: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

138

Critical path

• An activity with a slack of zero is a critical activity• A path from node 1 to the finish node that consists entirely of critical activities is called a critical path.

For Widgetco example B-D-E-F is a critical path.

The Makespan is equal to 38

Page 139: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

139

Using LP to find a critical pathDecision variable:

Xij:the time that the event corresponding to node j occurs

Since our goal is to minimize the time required to complete the project, we use an objective function of:

Z=XF-X1

Note that for each activity (i,j), before j occurs , i must occur and activity (i,j) must be completed.

Page 140: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

140

Min Z =X6-X1

S.T. X3>=X1+6 (Arc (1,3) constraint)

X2>=X1+9 (Arc (1,2) constraint)

X5>=X3+8 (Arc (3,5) constraint)

X4>=X3+7 (Arc (3,4) constraint)

X5>=X4+10 (Arc (4,5) constraint)

X6>=X5+12 (Arc (5,6) constraint)

X3>=X2 (Arc (2,3) constraint)

The optimal solution to this LP is Z=38, X1=0, X2=9, X3=9, X4=16, X5=26, X6=38

Page 141: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

141

On variability of tasks• Consider 10 independent tasks

– each takes 1 unit of time on average– the time it takes is uniformly distributed between 0

and 2.

CPM (uses expected value) Modeling Randomness

The random schedule takes longer

Page 142: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

142

On Incorporating Variability

• Program Evaluation and Review Technique (PERT) – Attempts to incorporate variability in the durations– Assume mean, , and variance, 2, of the durations

can be estimated

• Simulation– Model variability using any distribution– simulate to see how long a schedule will take

Page 143: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

143

PERTCPM assumes that the duration of each activity is known with certainty. For many projects, this is clearly not applicable. PERT is an attempt to correct this shortcoming of CPM by modeling the duration of each activity as a random variable. For each activity, PERT requires that the project manager estimate the following three quantities:

a : estimate of the activity’s duration under the most favorable conditions

b : estimate of the activity’s duration under the least favorable conditions

m : most likely value for the activity’s duration

Page 144: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

144

Let Tij be the duration of activity (i,j). PERT requires the assumption that Tij follows a beta distribution. According to this assumption, it can be shown that the mean and variance of Tij may be approximated by

36

)(var

6

4)(

2abT

bmaTE

ij

ij

Page 145: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

145

PERT requires the assumption that the durations of all activities are independent. Thus,

pathji

ijTE),(

)(

pathji

ijT),(

var

: expected duration of activities on any path

: variance of duration of activities on any path

Page 146: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

146

Let CP be the random variable denoting the total duration of the activities on a critical path found by CPM. PERT assumes that the critical path found by CPM contains enough activities to allow us to invoke the Central Limit Theorem and conclude that the following is normally distributed:

thcriticalpaji

ijTCP),(

Page 147: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

147

a, b and m for activities in Widgetco

Activity a b m

(1,2) 5 13 9

(1,3) 2 10 6

(3,5) 3 13 8

(3,4) 1 13 7

(4,5) 8 12 10

(5,6) 9 15 12

Page 148: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

148

According to the table on the previous slide:

136

)915(var,12

6

48159)(

44.036

)812(var,10

6

40128)(

436

)113(var,7

6

28131)(

78.236

)313(var,8

6

32133)(

78.136

)210(var,6

6

24102)(

78.136

)513(var,9

6

36135)(

2

5656

2

4545

2

3434

2

3535

2

1313

2

1212

TTE

TTE

TTE

TTE

TTE

TTE

Page 149: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

149

Of course, the fact that arc (2,3) is a dummy arc yields

E(T23)=varT23=0

The critical path was B-D-E-F. Thus,

E(CP)=9+0+7+10+12=38

varCP=1.78+0+4+0.44+1=7.22

Then the standard deviation for CP is (7.22)1/2=2.69

And

13.0)12.1()69.2

3835

69.2

38()35(

ZP

CPPCPP

Page 150: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

150

PERT implies that there is a 13% chance that the project will be completed within 35 days.

Page 151: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

151

More on Project Management• CPM

– Advantage of ease of use– Lays out the Gantt chart (nicely visual)– Identifies the critical path– Used in practice on large projects

• e.g., used for the big dig

• Other issues– Tasks take resources, which are limited– Task times are really random variables– Unpredictable things happen

Page 152: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

152

Incorporating Resource Constraints

• Each task can have resources that it needs– 3 construction workers– 1 crane– etc

• In scheduling, do not use more resources than are available at any time– Makes the problem much more difficult to

solve exactly. Heuristics are used.

Page 153: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

153

Dealing with the unknown

• VERY hard to model• How does one model totally unforeseen

events?– In the Big Dig, there is a leak in digging a tunnel

despite assurances it would not happen– In the Hubble telescope, a firm assures that the

mirrors are ground properly. By the time the mistake is discovered, the telescope is in outer space.

Page 154: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

154

Project Management Software

• Explosive growth in software packages using these techniques

• Cost and capabilities vary greatly

• Yearly survey in PM Network

• Microsoft Project is most commonly used package today – Free 60 day trial versions:

http://www.microsoft.com/office/98/project/ trial/info.htm

Page 155: . 1 Chapter 7 Transportation, Assignment and Transshipment Problems.

.

155

Summary

• Project management

• Simple model: we use estimates of the time for each task, and we use the precedence constraints