|Views: 21
|Likes: 2

Published by gayanera

See more

See less

Chapter 5 Page 1

Network Flow Programming Methods

The focus of this chapter is on the development of algorithms for solving network flowproblems. We begin with a discussion of the most prominent special cases, including thetransportation problem, the shortest path problem, the maximum flow problem and theirvariants, and conclude with a presentation of the primal simplex algorithm for the pureminimum cost flow problem. Although virtually all of the special cases are instances of theminimum cost flow problem, a great deal can be learned by studying them separately. Theindividual algorithms provide insight into different ways of solving problems, and have thebenefit of being extremely efficient. In addition, many applications of the minimum costflow problem embody features of the special cases. From a modeling perspective, it ishelpful to know how these features can be incorporated in broader formulations.

5.1 Transportation Problem

The transportation problem is concerned with finding an optimal distribution plan for asingle commodity. A given supply of the commodity is available at a number of sources,there is a specified demand for the commodity at each of a number of destinations, and thetransportation cost between each source-destination pair is known. In the simplest case,the unit transportation cost is constant. The problem is to find the optimal distribution planfor shipments from sources to destinations that minimizes the total transportation cost.

Matrix Model

The traditional way to describe a transportation problem is with a matrixor tableau as in Fig. 1. The

m

sources at which the commodity isavailable are identified by name at the left side of the matrix, and the

n

destinations to which the commodity is to be shipped are arrayed alongthe top. The quantities available at the sources are shown as numbers atthe right of the matrix with

s

i

the supply at source

i

. The quantitiesrequired by the destinations are shown as numbers along the bottomwith the demand

d

j

required at destination

j

. The numbers in the bodyof the matrix are the unit costs of shipping from sources to destinationswith

c

ij

the cost from source

i

to destination

j

. If it is not possible toship between a given source and destination, a large cost of

M

is enteredin the appropriate cell.A requirement of most solution algorithms is that total supplyequal total demand; i.e.,

Σ

i

s

i

=

Σ

j

d

j

. This is known as the

feasibility property

. All instances of the traditional transportation problem can bemodified so that this requirement is satisfied by simply adding either adummy source if demand exceeds supply, or a dummy destination if supply exceeds demand.

2

Network Flow Programming Methods Destinations

d

1

d

2

…

d

n

Supplies

s

1

c

11

c

12

…

c

1

n

s

1

Sources

s

2

c

21

c

22

…

c

2

n

s

2

:::::

s

m

c

m

1

c

m

2

…

c

mn

s

m

Demandsd

1

d

2

…

d

n

Figure 1

.

Matrix model of the transportation problemA solution to this model is an assignment of flows to the cells of the matrix. In general, we call

x

ij

the flow in the cell representing ship-ments from source

s

i

to destination

d

j

. For a feasible solution, the sumof the flows across a row of the matrix must equal the supply at the as-sociated source, and the sum of the flows down a column of the matrixmust equal the demand at the associated destination.A numerical example is given in Fig. 2a. The optimal solution isdisplayed in Fig. 2b.a. Transportation modelb. Optimal solution

d

1

d

2

d

3

Supply

d

1

d

2

d

3

Shipped

s

1

9121015

s

1

051015

s

2

8151215

s

2

100515

s

3

13171915

s

3

015015

Demand

102015

Received

102015Figure 2. Instance of transportation problem in matrix formatThe transportation problem is a linear program so it can be solved usingthe simplex method described in earlier chapters. Because of its specialstructure, however, the simplex method can be considerably simplified.In the following, we assume that total supply equals total demand.

Example

Throughout this section we use the example presented in Fig. 3 inmatrix or tableau format. The example has three sources and fivedestinations. The supplies at the sources are shown in the right columnof the table, and the demands at the destinations are shown along thebottom.

Simplex Method for the Transportation Problem

3

D1 D2 D3 D4 D5

Supply

S1

1515161111

5 10 15S2

13111596

0 15 15S3

8121178

0 5 10 15

Demand

5 10 15 5 10

Figure 3. Example problemA cell is identified for each supply-demand combination, and theunit cost of shipping is the boxed number in the upper left corner of thecell. The bold number in the lower right is the flow assigned to the cell.Because the total supply equals the total demand, the flows in each rowsum to the supply at the corresponding source. The flows in eachcolumn sum to the demand at the corresponding destination. The flowsshown in Fig. 3 are feasible but not optimal. The goal of this section isto describe an algorithm to find the optimal flow, that is, the flow thatminimizes total cost.

Theory

Primal Linear Programming Model

Let

x

ij

be the flow from source

i

to destination

j

. The transportationproblem has a linear programming model.Minimize the total shipping cost:Minimize

Z

=

c

ij

x

ij j

=

1

n

∑

i

=

1

m

∑

subject to(i) the supply at each source must be used:

∑

j

=1

n

x

ij

=

s

i

for

i

= 1,...,

m

.PS(

i)

(ii) the demand at each destination must be met:

∑

i

=1

m

x

ij

=

d

j

for

j

= 1, ...,

n

.PD(

i

)(iii) nonnegativity:

x

ij

≥

0 for

i

= 1,...,

m

and

j

= 1,...,

n

.Although we have an equality constraint for every source anddestination, one of the equality constraints of the model is redundant.