Sunteți pe pagina 1din 40

CHAPTER 22

Additional Network and LP Algorithms

22.1

MINIMUM-COST CAPACITATED FLOW PROBLEM

The minimum-cost capacitated flow problem is based on the following assumptions:

1. All arcs are directional (one way).

2. A (nonnegative) unit flow cost is associated with each arc.

3. Arcs may have positive lower-capacity limits.

4. Any node in the network may act as a source or as a sink.

The new model determines the flows that minimize the total cost while satisfying the flow restrictions on the arcs and the supply and demand amounts at the nodes.We first present the capacitated network flow model and its equivalent linear programming for- mulation. The linear programming formulation is then used as the basis for the develop- ment of a special capacitated simplex algorithm for solving the network flow model.

22.1.1

Network Representation

Consider a capacitated network set of arcs and define

G

= (N , A)

, where

N

is the set of nodes and

A

is the

x ij =

u

c

f

amount of flow from node

i

to node

i, j

j

ij (l ij ) =

ij =

i

=

upper (lower) capacity of arc (

i

to node

unit flow cost from node

net flow at node

i

Figure 22.1 depicts these definitions on arc

j

)

(

i, j,)

.The label

[f

i

]

assumes a positive

(negative) value when a net supply (demand) is associated with node i .

22.2

Chapter 22

Additional Network and LP Algorithms

FIGURE 22.1

Capacitated arc with external flow

[f i ] [f j ] $ c ij i j (l ij , u
[f i ]
[f j
]
$ c ij
i
j
(l ij , u ij )

x ij

FIGURE 22.2

Capacitated network for Example 22.1-1

[100]

[200]

[ 150] $1 4 1 (50, 80) $2 $1 $4 $3 (70, 120) [50] 6
[ 150]
$1
4
1 (50, 80)
$2
$1
$4
$3
(70, 120)
[50]
6
$4
3 $2
$5
(100, 120)
2 $6
5

[ 80]

[ 120]

Example 22.1-1

GrainCo supplies corn from three silos to three poultry farms. The supply amounts at the three silos are 100, 200, and 50 thousand bushels and the demands at the three farms are 150, 80, and 120 thousand bushels. GrainCo mostly uses railroads to transport the corn to the farms, with the exception of three routes where trucks are used. Figure 22.2 shows the available route between the silos and the farms. The silos are repre-

sented by nodes 1, 2, and 3 whose supply amounts are [100], [200], and [50], respectively.The farms

],

respectively. The routes allow transshipping between the silos. Arcs (1, 4), (3, 4), and (4, 6) are

truck routes. These routes have minimum and maximum capacities. For example, the capacity of route (1, 4) is between 50 and 80 thousand bushels. All other routes use trainloads, whose maximum capacity is practically unlimited. The transportation costs per bushel are indicated on the respective arcs.

are represented by nodes 4, 5, and 6 whose demand amounts are [

- 150

], [

- 80

], and [

- 120

PROBLEM SET 22.1A

*1.

A product is manufactured to satisfy demand over a 4-period planning horizon according to the following data:

Period

Units of demand

Unit production

cost ($)

Unit holding

cost ($)

1

100

24

1

2

110

26

2

3

95

21

1

4

125

24

2

Given that no back-ordering is allowed, represent the problem as a network model.

22.1

Minimum-Cost Capacitated Flow Problem

22.3

2. In Problem 1, suppose that back-ordering is allowed at a penalty of $1.50 per unit per period. Formulate the problem as a network model.

3. In Problem 1, suppose that the production capacities of periods 1 to 4 are 110, 95, 125, and 100 units, respectively, in which case the given demand cannot be satisfied without back-ordering. Assuming that the penalty cost for back-ordering is $1.5 per unit per period, formulate the problem as a network model.

4. Daw Chemical owns two plants that manufacture a basic chemical compound for two customers at the rate of 660 and 800 tons per month. The monthly production capacity of plant 1 is between 400 and 800 tons and that of plant 2 is between 450 and 900 tons. The production costs per ton in plants 1 and 2 are $25 and $28, respectively. Raw material for the plants is provided by two suppliers, who are contracted to ship at least 500 and 700 tons per month for plants 1 and 2 at the costs of $200 and $210 per ton, respectively. Daw Chemical also pays for the transportation cost of both the raw material and the final compound. The costs per ton of transporting the raw material from supplier 1 to plants 1 and 2 are $10 and $12, respectively. Similar costs from supplier 2 are $9 and $13, respectively. The transportation costs per ton from plant 1 to clients 1 and 2 are $3 and $4, and from plant 2 are $5 and $2, respectively. Assuming that 1 ton of raw material produces 1 ton of the final compound, formulate the problem as a network model.

5. Two nonintegrated public schools are required to change the racial balance of their enrollments by accepting minority students. Minority enrollment must be between 30% and 40% in both schools. Nonminority students live in two communities, and minority students live in three other communities. Traveled distances, in miles, from the five communities to the two schools are summarized in the following table:

Round-trip miles from school to

Minority areas

Nonminority areas

 

Maximum

School

enrollment

1

2

3

1

2

1 1500

20

12

10

4

5

2 2000

15

18

8

6

5

Student population

500

450

300

1000

1000

Formulate the problem as a network model to determine the number of minority and nonminority students enrolled in each school.

6. Charnes and Cooper (1967) During the next three months, farmers harvest their crops and sell it to a local silo. The silo in turn can sell the crop to retailers. The following table provides the purchasing cost and selling price per ton during the harvest season.

Month

Purchasing cost per ton ($)

Selling price per ton ($)

1 200

250

2 190

230

3 195

240

22.4

Chapter 22

Additional Network and LP Algorithms

The maximum capacity of the silo is 800 tons. The owner has $100, 000 cash on hand which can be used to purchase new crops. Also, initially, at the start of month 1, the silo is half full. It is estimated that the storage cost per ton per month is $10. Surplus cash earns 1% interest monthly. The objective is to determine the buy/sell policy the owner must follow to maximize the total cash accumulation at the end of the three-month season. Formulate the problem as a network model.

22.1.2 Linear Programming Formulation

The formulation of the capacitated network model as a linear program provides the foundation for the development of the capacitated simplex algorithm, which we will present in the next section. Using the notation introduced in Section 22.1.1, the linear program for the capacitated network is given as

subject to

The equation for node

Minimize z =

(i, j) a

H A

a

c ij x ij

a x jk - a

k

i

x ij = f j , j H N

(j, k ) H A

(i, j) H A

l ij x ij

u ij , (i, j) A

j measures the net flow

f

j

in node

j

as

(Outgoing flow from node j) - (Incoming flow into node j) = f j

Node

j

acts as a source if

f

j

7 0

and as a sink if f

We can always remove the lower bound

substitution

6 0.

j

l ij

from the constraints by using the

x ij = x

œ ij + l ij

The new flow variable,

i

becomes

x

œ

ij

, has an upper limit of

j

is

. Additionally, the net flow

f j + l ij . Figure 22.3 shows the transforma-

u ij - l ij

at node

tion of activity ( i, j

f

) after the lower bound is substituted out.

i - l ij

, and that at node

Example 22.1-2

Write the linear program for the network in Figure 22.2, before and after the lower bounds are substituted out.

FIGURE 22.3

Removal of lower bound in arcs

[f i ] [f j ] [f i l ij ] [f j l ]
[f i ]
[f j
]
[f i l ij ]
[f j l
]
ij
$ c ij
$ c ij
i
j
i
j
(l ij , u ij )
(u ij l ij )
x ij
x ij

22.1

Minimum-Cost Capacitated Flow Problem

22.5

The main constraints of the linear program relate the input and output flow for each node, which yields the following LP:

 

x 12

x 13

x 14

x 23

x 25

x 34

x 35

x 46

x 56

Minimize

3

4

1

5

6

1

2

2

4

Node 1

111

 

=

100

Node

2

- 1

1

1

=

200

Node

3

- 1

- 1

1

1

=

50

Node

4

- 1

- 1

1

=

- 150

Node

5

- 1

- 1

1

= = - 120

- 80

Node

6

- 1

- 1

Lower bounds

0

0

50

0

0

70

0

0

100

Upper bounds

q

q

80

q

q

120

q

q

120

x ij

Note the arrangement of the constraints coefficients. The column associated with variable

, a typical property of network models. The

has exactly one

+ 1

in row

i

and one

- 1

in row

j

rest of the coefficients are all 0. This structure is typical of network flow models.

x

The optimum solution is

,

The variables with lower bounds are substituted as

z = $1, 870, 000

x

46

= 20

, and x

56

with

= 100

x

13

= 20

(thousand bushels),

x

14

= 80

23 =

20 ,

x

25

= 180

,

x

34

= 90

. All the remaining variables are zero.

x

x

x

14

34

56

œ

= x 14 = x 34 = x 56

œ

œ

+

+

+

50

70

100

The substitution leads to the following LP:

,

 

x 12

x 13

œ

x 14

x 23

x 25

œ

x 34

x 35

x 46

œ

x 56

Minimize

3

4

1

5

6

1

2

2

4

Node 1

111

 

=

50

Node

2

- 1

1

1

=

200

Node

3

- 1

- 1

1

1

=

- 20

Node

4

- 1

- 1

1

= = - 180 =

- 20

- 30

Node

5

- 1

- 1

1

Node

6

- 1

- 1

Upper bounds

q

q

30

q

q

50

q

q

20

The corresponding network after substituting out the lower bounds is shown in Figure 22.4. Note that the lower-bound substitution can be done directly from Figure 22.2

using the substitution in Figure 22.3 and without the need to express the problem as a linear program first.

z = 1350 + 50 * 1 + 70 * 1 + 100 *

),

),

x

4 = $1870

The optimum solution is

thousand) with

= 180 ,

x

œ

34

= 20

(or

z œ = $1, 350 thousand (or

x

x

34

13

= 20

(thousand bushels),

= 20

+ 70

= 90

),

x

46

= 20

,

x

œ

14

x

œ

56

= 30

=

0

(or

(or

x

x

14

56

= 30

+ 50

= 80

= 100

25

=

0

+ 100

which, of course, is the same solution given by the before-substitution solution.

22.6

Chapter 22

Additional Network and LP Algorithms

FIGURE 22.4

Network of Example 22.1-2 after substituting out lower bounds

[50]

[200]

[ 30] $1 1 4 (30) $2 $1 $4 $3 [ 20] (50) 6 $4
[ 30]
$1
1
4
(30)
$2
$1
$4
$3
[ 20]
(50)
6
$4
3 $2
$5
(20)
2 $6
5

[ 180]

[ 20]

Example 22.1-3

(Employment Scheduling)

This example illustrates a network model that initially does not satisfy the “node flow” requirement (i.e., node output flow less node input flow equals node net flow), but that can be converted to this form readily through special manipulation of the constraints of the linear program. Tempo Employment Agency has a contract to provide workers over the next 4 months (January to April) according to the following schedule:

Month

January

February

March

April

No. of workers

100

120

80

170

Because of change in demand, it may be economical to retain more workers than needed in a given month. The cost of recruiting and maintaining a worker depends on the length of the employment period, as the following table shows:

Employment period (months)

1

2

3

4

Cost per worker ($)

100

130

180

220

Let

x

ij =

number of workers hired at the start of month and terminated at the start of month j

i

For example,

problem as a linear program for the 4-month period, we add May as a dummy month (month 5),

so that

such that

i k 6 j.

be the surplus number of workers in month i, the linear program is given as

gives the number of workers hired in January for 1 month only. To formulate the

x 12

x 45

defines hiring in April for April.

The constraints recognize that the demand for period

Letting s

i

Ú

0

k can be satisfied by all

x ij

 

x 12

x 13

x 14

x 15

x 23

x 24

x 25

x 34

x 35

x 45

s 1

s 2

s 3

s 4

Minimize

100

130

180

220

100

130

180

100

130

100

January

1111

 

- 1

= 100

February

1

1

1

1

1

1

- 1

= 120

March

1

1

1

1

1

1

- 1

=

80

April

1

1

1

1

- 1

= 170

22.1

Minimum-Cost Capacitated Flow Problem

22.7

, (see Example 22.1-2). Nevertheless, the given linear program can be converted into an equiva- lent network flow model by using the following arithmetic manipulations:

) special structure of the network flow model

The preceding LP does not have the (

- 1 + 1

1.

In an

n

n

-equation linear program, create a new equation,

- 1

.

by

n + 1

, by multiplying equation

2. Leave Equation 1 unchanged.

3. For

i

The application of these manipulations to the employment scheduling example yields the following linear program, whose structure fits the network flow model:

i =

2, 3

,

,

n

, replace each equation

with (equation )

i -

(equation

i - 1

).

 

x 12

x 13

x 14

x 15

x 23

x 24

x 25

x 34

x 35

x 45

s 1

s 2

s 3

s 4

Minimize

100

130

180

220

100

130

180

100

130

100

January

1111

 

- 1

=

100

February

- 1

111

 

1

- 1

=

20

March

- 1

- 1

11

 

1

- 1

=

- 40

April

- 1

- 1

- 1

1

1

- 1

90

= = - 170

May

- 1

- 1

- 1

- 1

1

Using the preceding formulation, the employment scheduling model can be represented equivalently by the minimum cost flow network shown in Figure 22.5. Actually, because the arcs have no upper bounds, the problem can be solved also as a transshipment model (see Appendix to this section).

, and all the remaining variables are

zero. The following table summarizes the hiring and firing activities over the 4-month horizon.

The total cost is $30, 600.

The optimum solution is

x

15

= 100 ,

x

25

= 20

, x

45

= 50

Month

Number of workers hired

Number of workers fired

Net number

of workers

January

100

0

100

February

20

0

120

March

0

0

120

April

50

0

170

FIGURE 22.5

Network representation of employment scheduling problem

x 15 x 14 x 35 x 13 x 12 x 34 x 45 s
x 15
x 14
x 35
x 13
x 12
x 34
x 45
s 2
1
2
345
s
1
s 3
s 4
[100]
[20]
x 23
[ 40]
[90]
[ 170]
x 24
x 25

22.8

Chapter 22

Additional Network and LP Algorithms

PROBLEM SET 22.1B

*1.

Write the linear program associated with the minimum-cost flow network in Figure 22.6, before and after the lower bounds are substituted out.

2.

Use inspection to find a feasible solution to the minimum-cost network model of the employment scheduling problem in Example 22.1-3 (Figure 22.5). Interpret the solution by showing the pattern of hiring and firing that satisfies the demand for each month, and compute the associated total cost.

3.

Reformulate the employment scheduling model of Example 22.1-3, assuming that a worker must be hired for at least 2 months. Write the linear program, and convert it to a minimum-cost flow network.

4.

Develop the linear program and the associated minimum-cost flow network for the employment scheduling model of Example 22.1-3 using the following 5-month demand data. The per-worker costs of recruiting and maintaining a worker for periods of 1 to 5 months are $50, $70, $85, $100, and $130, respectively.

(a)

 

Month

1

2

3

4

5

Number of workers

300

180

90

170

200

 

(b)

 

Month

1

2

3

4

5

Number of workers

200

220

300

50

240

5.

Conversion of a capacitated network into an uncapacitated network. Show that an arc

(i : j) with capacitated flow

(i : k)

(input) flow of

converted to an uncapacitated transportation model (Section 5.1). Apply the resulting transformation to the network in Figure 22.7, and find the optimum solution to the original network by solving the uncapacitated transportation model.

x ij u ij

can be replaced with two uncapacitated arcs

[ - u

ij

]

at node

k

and an additional

and

(j : k)

[ + u

with a net (output) flow of

ij ]

at node

j

. The result is that the capacitated network can be

FIGURE 22.6 Network for Problem 1, Set 22.1b

(0, $6 ) [20] 3 $4 (10, ) $1 $3 [50] 1 2 4 [
(0, $6 )
[20]
3
$4
(10, )
$1
$3
[50]
1
2
4
[ 30]
(0, )
(10, )
(30, $5 40)

[ 40]

22.1

Minimum-Cost Capacitated Flow Problem

22.9

$8 (50) 2 [100] 1 4 [ 100] $2 (50) $4 ( 3 ) $1
$8
(50)
2
[100]
1
4
[ 100]
$2
(50)
$4
(
3
)
$1
(60)
$1
(90)

FIGURE 22.7

Network for Problem 5, Set 22.1b

22.1.3 Capacitated Network Simplex Algorithm

The algorithm is based on the exact steps of the regular simplex method, but it is designed to exploit the special network structure of the minimum-cost flow model.

as defined in the linear program of Section

22.1.2, the capacitated simplex algorithm stipulates that the network must satisfy

Given that

f

i

is the net flow at node

i

n

a f i = 0

i = 1

The condition says that the total supply in the network equals the total demand. We can always satisfy this requirement by adding a balancing dummy source or destina- tion, which we connect to all other nodes in the network by arcs with zero unit cost and infinite capacity. However, the balancing of the network does not guarantee feasibility, as this depends on the capacities of the arcs. We now present the steps of the capacitated algorithm. Familiarity with the sim- plex method and duality theory (Chapters 3 and 4) is essential. Also, knowledge of the upper-bounded simplex method (Section 7.3) is helpful.

Step 0.

Determine a starting basic feasible solution (set of arcs) for the network. Go

Step 1.

to step 1. Determine an entering arc (variable) using the simplex method optimality

Step 2.

condition. If the solution is optimal, stop; otherwise, go to step 2. Determine the leaving arc (variable) using the simplex method feasibility condition. Determine the new solution, then go to step 1.

) consists of

n - 1

It can be proved that a basic solution always corresponds to a spanning tree of the network (see Section 6.2). The entering arc (step 1) is determined by computing the objective coefficients

, the

current basis is optimum. Otherwise, we select the nonbasic arc with the most positive objective coefficients to enter the basis. The computation of objective coefficients is based on duality, exactly as we did with the transportation model (see Section 5.3.2). Using the linear program defined in

for all the current nonbasic arcs (

arcs.

An

n

-node network with zero net flow (i.e.,

f + f +

1

2

Á

+ f

n

= 0

independent constraint equations.Thus, a basic solution must include

n - 1

i, j

). If all the objective coefficients are

0

22.10

Chapter 22

Additional Network and LP Algorithms

Section 22.1.2, let w

the dual problem (excluding the upper bounds) is given as

i be the dual variable associated with the constraint of node i , then

subject to

n

Maximize z = a

i = 1

f i w i

w i - w j

c ij , (i, j) H A

w i unrestricted in sign, i = 1, 2, Á , n

From the theory of linear programming, we have

w i - w j

= c ij , for basic arc ( i, j)

Because the original linear program (Section 22.1.2) has one redundant constraint by

definition, we can assign an arbitrary value to one of the dual variables (compare with

0 . We

to determine the remaining dual values.

is

the difference between the left-hand side and the right-hand side of the associated dual

constraint, that is,

z ij = w i - w j

the objective coefficient of the variable

z ij - c ij = w i - w j - c ij

The only remaining detail is to show how the leaving variable is determined. The following numeric example provides this detail.

From Section 4.2.4, Formula 2, we know that the objective coefficient of nonbasic

then solve the (basic) equations

the transportation algorithm, Section 5.3). For convenience, we will set

w 1

=

w i - w j = c ij

Letting

x ij

x ij

w i - w j - c ij .

is computed as

Example 22.1-4

A network of pipelines connects two water desalination plants to two cities. The daily supply amounts at the two plants are 40 and 50 million gallons, and the daily demand amounts at cities

1 and 2 are 30 and 60 million gallons, respectively. Nodes 1 and 2 represent plants 1 and 2, respec-

tively, and nodes 4 and 5 represent cities 1 and 2, respectively. Node 3 is a booster station between the plants and the cities. The model is already balanced because the sum of the supply at nodes

1 and 2 equals the sum of the demand at nodes 4 and 5. Figure 22.8 gives the associated network.

Iteration 0

Step 0. Determination of a Starting Basic Feasible Solution: The starting basic solution must be a spanning tree. The feasible spanning tree in Figure 22.9 (shown with solid arcs) is obtained by inspection. Normally, we use an artificial-variable technique to find such a solution (for details, see Bazaraa et al., 1990, pp. 440–446). In Figure 22.9, the basic feasible solution consists of (solid) arcs (1, 3), (1, 4), (2, 3), and (3, 5) with the feasible flows of 30, 10, 50, and 60 units, respectively. The remaining (dashed) arcs (1, 2), (2, 5), and (4, 5) represent the nonbasic variables.

units is assigned to an

The notation

( ) shown on the arcs indicates that a flow of

x c

x

arc with capacity c . The default values for x and c are 0 and q , respectively.

22.1

Minimum-Cost Capacitated Flow Problem

22.11

Unit cost Arc capacity $5 Plant 1 [40] 4 [ 30] City 1 ( $8
Unit cost
Arc capacity
$5
Plant 1
[40]
4
[ 30] City 1
( $8 )
1 (35)
$7
$3
( )
3
$4
(
)
(10)
$1
Plant 2
[50]
5
[ 60]
City 2
2 (30)
w
1 0
w
5
4
$2
(60)

FIGURE 22.8

Network for Example 22.1-4

$5 [40] 4 [ 30] $8 ) 1 30(35) 60( $7 w 3 7 10(10)
$5
[40]
4
[
30]
$8 )
1 30(35)
60(
$7
w 3 7
10(10)
$3
$4
(
)
3
$1
[50]
5
[
60]
2 (30)
w
2 5
w 5 15
$2
50(60)

z

12 c 12 0 ( 5) 3 2

z

25 c 25 5 ( 15) 1 9

z

45 c 45 5 ( 15) 4 6

Arc (2, 5) reaches upper bound at 30.

Substitute x 25 30 x 52 .

Reduce x 23 and x 35 each by 30.

FIGURE 22.9

Network for iteration 0

Iteration 1

Step 1.

Determination of the entering arc: We obtain the dual values by solving the current basic equations

w 1

= 0

We thus get,

w i - w j =

c ij , for basic arc (i, j)

Arc(1, 3): w 1 - Arc(1, 4): w 1 -

Arc(2, 3): w 2 - w 3 = 2, hence w 2 =

Arc(3, 5): w 3 - w 5 = 8, hence w 5 =

w 3 = w 4 =

7, hence w 3 = - 7

5, hence w 4 = - 5

- 5

- 15

Now, we compute for the nonbasic arcs as

-

z ij - c ij

Arc (1, 2): w 1 - w 2 - c 12

Arc (2, 5): w 2 - w 5 Arc (4, 5): w 4 - w 5

- c 25 - c 45

= 0

( - 5)

= ( - 5) -

-

=

( - 5)

- 3

= 2

-

( - 15) -

( - 15)

1 = 9

6

4 =

Thus, arc (2, 5) enters the basic solution.

22.12

Chapter 22

Additional Network and LP Algorithms

Step 2. Determination of the leaving arc: From Figure 22.9, arc (2, 5) forms a loop with basic arcs (2, 3) and (3, 5). From the definition of the spanning tree, no other loop can be formed. Because the flow in the new arc (2, 5) must be increased, we adjust the flow in the arcs of the loop by an equal amount to maintain the feasibility of the new solu-

+ ) flow in the loop by the direction

) to the

remaining arcs of the loop, depending on whether the flow of each arc is with or against the direction of flow of the entering arc. These sign conventions are shown in

Figure 22.9. Determination of the maximum level of flow in the entering arc (2, 5) is based on two conditions:

tion. To achieve this, we identify the positive (

of flow of the entering arc (i.e., from 2 to 5). We then assign (

+

) or (

-

1. New flow in the current basic arcs of the loop cannot be negative.

2. New flow in the entering arc cannot exceed its capacity.

The application of condition 1 shows that the flows in arcs (2, 3) and (3, 5) cannot be

units. By condition 2, the flow in arc (2, 5) can

be increased to at most the arc capacity (

units. The new flows in the loop are thus 30 units in arc (2,

5),

Because none of the current basic arcs leave the basis at zero level, the new arc (2, 5) must remain nonbasic at upper bound. However, to avoid dealing with nonbasic

arcs that are at capacity (or upper bound) level, we implement the substitution

the loop is min {30, 50} = 30

decreased by more than min

units).Thus, the maximum flow change in

{50, 60} = 50

= 30

60

50

- 30

= 20

units in arc (2, 3), and

- 30

= 30

units in arc (3, 5).

x 25

= 30

-

x 52 , 0

x 52

30

This substitution is effected in the flow equations associated with nodes 2 and 5 as follows. Consider

Current flow equation at node 2:

Current flow equation at node 5: x 25 + x 35 + x 45 = 60

+ x 12 = x 23 + x 25

50

Then, the substitution

x 25

= 30 - x 52 gives

New flow equation at node 2:

New flow equation at node 5: x 35 + x 45 = x 52 + 30

+ x 52 = x 23

20

+ x 12

The results of these changes are shown in Figure 22.10. The direction of flow in

, as desired. The substitution also

- $1. We will indicate this direction

arc (2, 5) is now reversed to

5 : 2

with x

52

= 0

requires changing the unit cost of arc (5, 2) to

reversal on the network by tagging the arc capacity with an asterisk.

Iteration 2.

(verify!) and shows that arc

(4, 5) enters the basic solution. It also defines the loop associated with the new entering arc and assigns the signs to its arcs. The flow in arc (4, 5) can be increased by the smallest of

Figure 22.10 summarizes the new values of

z ij - c ij

1. Maximum allowable increase in entering arc (4, 5) = q

22.1

Minimum-Cost Capacitated Flow Problem

22.13

w 1 0 w 5 4 $5 [40] 4 [ 30] z 12 c 12
w
1 0
w
5
4
$5
[40]
4
[
30]
z
12 c 12 0 ( 5) 3 2
1 30(35)
z
52 c 52 15 ( 5) ( 1) 9
z
45 c 45 5 ( 15) 4 6
$8
w 3 7
30(
)
Arc (4, 5) enters at level 5.
$3
$4
(
)
3
Arc (1, 4) leaves at upper bound.
$7
10(10)
Substitute x 14 35 x 41 .
$1
[20]
5
[
30]
Reduce x 13 and x 35 each by 5.
2 (30)*
w 2 5
w 5 15
FIGURE 22.10
Network for iteration 1
3. Maximum allowable decrease in arc
(1, 3)
=
10
units
4. Maximum allowable decrease in arc
(3, 5)
= 30
units
$2
20(60)

Iteration 3.

Thus, the flow in arc (4, 5) can be increased to 5 units, which will make (4, 5)

basic and will force basic arc (1, 4) to be nonbasic at its upper bound (

, the network is changed as shown in

Figure 22.11, with arcs (1, 3), (2, 3), (3, 5), and (4, 5) forming the basic (spanning

- $5. Also,

tree) solution. The reversal of flow in arc (1, 4) changes its unit cost to

convince yourself that the substitution in the flow equations of nodes 1 and 4 will

net 5 input units at each node.

= 35 ).

Using the substitution

x 14

= 35 - x 41

The computations of the new for the nonbasic arcs (1, 2), (4, 1), and (5, 2)

z ij - c ij

are summarized in Figure 22.11, which shows that arc (1, 2) enters at level 5, and

arc (1, 3) becomes nonbasic at level 0. Figure 22.12 depicts the new solution.

Iteration 4.

The new in Figure 22.12 shows that the solution is optimum. Back-

z ij - c ij

substitution yields the values of the original variables, as shown in Figure 22.12.

FIGURE 22.11

Network for iteration 2

$7 5(10) $8 ) 25( w 1 0 w 4 11 $5 [5] 4 [5]
$7
5(10)
$8 )
25(
w
1 0
w
4 11
$5
[5]
4
[5]
1 (35)*
w 3 7
$3
$4
5(
)
3
$1
[20]
5
[
30]
2 (30)*
w 2 5
w 5 15
$2
20(60)

z

12 c 12 0 ( 5) 3 2

z

41 c 41 11 0 ( 5) 6

z

52 c 52 15 ( 5) ( 1) 9

Arc (1, 2) enters at level 5.

Arc (1, 3) leaves at level 0.

Increase x 23 by 5.

22.14

Chapter 22

Additional Network and LP Algorithms

w 1 0 w 4 9 $5 [5] 1 4 [5] (35)* $8 w 3
w 1 0
w
4 9
$5
[5]
1
4
[5]
(35)*
$8
w 3 5
$3
5( )
$4
5( )
25(
)
3
$7
(10)
$1
[20]
2
5
[ 30]
(30)*
w 2 3
w 5 13
$2
25(60)

FIGURE 22.12

Network for iteration 3

z

13 c 13 0 ( 5) 7 2

z

41 c 41 9 0 ( 5) 4

z

52 c 52 13 ( 3) ( 1) 9

Optimum solution:

x

12 5, x 13 0

x

14 35 0 35

x

23 25

x

25 30 0 30

x

35 25, x 45 5

Total cost $490

Solver Moment

The basic idea of the Excel Solver minimum cost capacitated model is similar to the one detailed in Example 6.3-6 for the shortest-route model. File solverEx22.1-4.xls provides the details.

AMPL Moment

File amplEx22.1-4.txt is a general model that can be used to solve the minimum cost capacitated problem of any size. The idea of the model is similar to that of the shortest-route AMPL model for Example 6.3-6.

PROBLEM SET 22.1C

*1.

Solve Problem 1, Set 22.1a, by the capacitated simplex algorithm.

2.

Solve Problem 2, Set 22.1a, by the capacitated simplex algorithm, and also show that it can be solved by the transshipment model.

3.

Solve Problem 3, Set 22.1a, by the capacitated simplex algorithm.

4.

Solve Problem 4, Set 22.1a, by the capacitated simplex algorithm.

*5.

Solve Problem 5, Set 22.1a, by the capacitated simplex algorithm.

6.

Solve the employment scheduling problem of Example 22.1-3 by the capacitated simplex algorithm.

7.

Wyoming Electric uses existing slurry pipes to transport coal (carried by pumped water) from three mining areas (1, 2, and 3) to three power plants (4, 5, and 6). Each pipe can transport at most 10 tons per hour. The transportation costs per ton and the supply and demand per hour are given in the following table:

 

4

5

6

Supply

1 $5

 

$8

$4

8

2 $6

$9

$12

10

3 $3

$1

$5

18

Demand

16

6

14

Determine the optimum shipping schedule.

22.1

Minimum-Cost Capacitated Flow Problem

22.15

5 2 5 11 6 2 8 10 1 4 7 4 3 7 9
5
2
5
11
6
2
8
10
1
4
7
4
3
7
9
1
3
6

FIGURE 22.13 Network for Problem 8, Set 22.1c

8.

The network in Figure 22.13 gives the distances among seven cities. Use the capacitated simplex algorithm to find the shortest distance between nodes 1 and 7. (Hint: Assume

that nodes 1 and 7 have net flows of [ zero net flow.)

+ 1

] and [

- 1

], respectively. All the other nodes have

9.

Show how the capacitated minimum-cost flow model can be specialized to represent the maximum flow model of Section 6.4. Apply the transformation to the network in Example 6.4-2. For convenience, assume that the flow capacity from 4 to 3 is zero. All the remaining data are unchanged.

10.

Solve the following problems using Excel Solver and AMPL:

(a)

Problem 3, Set 22.1a.

(b)

Problem 4, Set 22.1a.

(c)

Problem 7, Set 22.1c.

(d)

Problem 8, Set 22.1c.

APPENDIX: Transshipment Model

The transshipment model is an “old” technique that converts minimum cost trans- portation network to the regular transportation model presented in Chapter 5.This is a special case of the highly efficient minimum cost network presented above in that it does not allow capacity restrictions on the shipping routes. The transshipment model is rarely used in practice because it is not as efficient as the general network model. It is presented here, however, because it demonstrates the interesting use of buffers to convert transient shipping to direct shipping.

Example 22.1.5

Two automobile plants,

transit centers,

at plants

, are 800, 900, and 500 cars, respectively. The shipping costs per car (in hundreds

of dollars) between pairs of nodes are shown on the connecting links (or arcs) of the network.

P1

T2

, , according to the network shown in Figure 22.14. The supply amounts

, by way of two

and

P2

, are linked to three dealers,

D1 D2

, and

D3

T1

and

D3

and

P2

P1

, and

are 1000 and 1200 cars, respectively, and the demand amounts at dealers

D1 D2

,

22.16

Chapter 22

Additional Network and LP Algorithms

1000

1200

FIGURE 22.14

Transshipment network between plants and dealers

D1 8 3 P1 T1 5 6 4 7 D2 2 4 5 P2 T2
D1
8
3
P1
T1
5
6
4
7
D2
2
4
5
P2
T2
3
9
D3

800

900

500

Transshipment occurs in the network in Figure 5.7 because the entire supply amount of 2200

(

. In this regard, each

, and a destination and is referred to as a transshipment node. The remaining nodes are either

node of the network with both input and output arcs (

) acts as both a source

work before ultimately reaching their destinations at nodes

could conceivably pass through any node of the net-

= 1000 + 1200

) cars at nodes

P1

and

P2

D1 D2

, and

D3

, and D2

, T1 T2 D1

,

pure supply nodes (

P1

and

P2

) or pure demand nodes (

D3

).

The transshipment model can be converted into a regular transportation model with

). The

, amounts of supply and demand at the different nodes are computed as

6 sources (

P1 P2 T1 T2 D1

,

,

,

, and

D2

) and five destinations (

T1 T2 D1 D2

,

,

,

, and

D3

Supply at a pure supply node

Demand at a pure demand node Supply at a transshipment node Demand at a transshipment node

= Original supply

= Original demand = Original supply + Buffer amount = Original demand + Buffer amount

The buffer amount should be sufficiently large to allow all of the original supply (or

B be the desired buffer

demand) units to pass through any of the transshipment nodes. Let amount; then

B = Total supply (or demand)

= 1000 + 1200 (or 800 + 900 + 500)

= 2200 cars

Using the buffer

regular transportation model as in the table below.

B and the unit shipping costs given in the network, we construct the equivalent

 

T1

T2

D1

D2

D3

P1

3

4

 

MMM

 

1000

P2

2

5

 

MMM

 

1200

T1

 

0786

   

M

B

T2

M

0

M

4

9

B

D1

M

M

0

5

M

B

D2

M

M

M

0

3

B

B

B

800 + B

900 + B

500

22.1

Minimum-Cost Capacitated Flow Problem

22.17

1000

1200

400 D1 P1 T1 D2 500 P2 T2 1000 D3 800 1000 1200
400
D1
P1
T1
D2
500
P2
T2
1000
D3
800
1000
1200

800

900

500

FIGURE 22.15 Solution of the transshipment model

The solution of the resulting transportation model (determined by TORA) is shown in

receives 1400 cars, keeps 900 cars to

Figure 22.15. Note the effect of transshipment: Dealer

D2

satisfy its demand, and sends the remaining 500 cars to dealer

D3 .

PROBLEM SET 22.1D 1

1. The network in Figure 22.16 gives the shipping routes from nodes 1 and 2 to nodes 5 and 6 by way of nodes 3 and 4. The unit shipping costs are shown on the respective arcs.

(a)

Develop the corresponding transshipment model.

(b)

Solve the problem, and show how the shipments are routed from the sources to the

destinations.

2. In Problem 1, suppose that source node 1 can be linked to source node 2 with a unit shipping cost of $1. The unit shipping cost from node 1 to node 3 is increased to $5.

100

200

900

1400

1000

1 6 1 3 5 4 1 3 5 1 3 2 8 2 4
1
6
1
3 5
4
1
3 5
1
3
2 8
2
4 6

150

150

1 6 1 .2 .3 4 4.5 .8 6 2 .5 7 3 4.3 2.1
1
6
1
.2
.3
4
4.5
.8
6
2
.5
7
3
4.3
2.1
5
2
4.6
1.9
3
8

1100

1000

1200

FIGURE 22.16

Network for Problem 1, Set 22.D

FIGURE 22.17 Network for Problem 3, Set 22.1D

1 You are encouraged to use TORA, Excel Solver, or AMPL to solve the problems in this set.

22.18

Chapter 22

Additional Network and LP Algorithms

Formulate the problem as a transshipment model, and find the optimum shipping schedule.

3. The network in Figure 22.17 shows the routes for shipping cars from three plants (nodes 1, 2, and 3) to three dealers (nodes 6 to 8) by way of two distribution centers (nodes 4 and 5). The shipping costs per car (in $100) are shown on the arcs.

(a)

Solve the problem as a transshipment model.

(b)

Find the new optimum solution assuming that distribution center 4 can sell 240 cars

directly to customers.

4. Consider the transportation problem in which two factories supply three stores with a commodity. The numbers of supply units available at sources 1 and 2 are 200 and 300, respectively; those demanded at stores 1, 2, and 3 are 100, 200, and 50, respectively. Units may be transshipped among the factories and the stores before reaching their final desti- nation. Find the optimal shipping schedule based on the unit costs in the following table.

Factory

Store

12123

 

1

$0

$6

$7

$8

$9

Factory

2

$6

$0

$5

$4

$3

1

$7

$2

$0

$5

$1

Store

2

$1

$5

$1

$0

$4

3

$8

$9

$7

$6

$0

5. Consider the oil pipeline network shown in Figure 22.18. The different nodes represent pumping and receiving stations. Distances in miles between the stations are shown on the network. The transportation cost per gallon between two nodes is directly proportional to the length of the pipeline. Develop the associated transshipment model, and find the optimum solution.

6. Shortest-Route Problem. Find the shortest route between nodes 1 and 7 of the network in Figure 22.19 by formulating the problem as a transshipment model. The distances between the different nodes are shown on the network. (Hint: Assume that node 1 has a net supply of 1 unit, and node 7 has a net demand also of 1 unit.)