- 117 Views
- Uploaded on
- Presentation posted in: General

Chapter 5 Network Flow Programming Models

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Chapter 5

Network Flow Programming Models

A network is a set of nodes joined by a set of arcs, much like a highway system linking major cities or a power grid that supplies electricity to a community over high-tension wires.

We consider in this chapter networks in which the arcs carry flow and the total flow entering each node must equal the total flow leaving each node.

One optimization problem that is defined on a network is to determine the assignment of flows to the arcs such that the total cost of the flow is minimized. This is called the network flow programming (NFP) problem or, alternatively , the minimum-cost flow problem.

4. The NFP problem has a linear programming (LP) model, so NFP can be considered a special case of LP.

Introduction

Problems that can be modeled with NFP include some of the classical problems of OR such as the assignment problem, the shortest path problem, the maximum flow problem, the pure minimum-cost flow problem, and the generalized minimum-cost flow problem.

As an introduction we provide a graphical representation of a typical model. The situation associated with the model involves the distribution of a single commodity across the country. When more than one commodity flows in a network, the underlying problem becomes much more difficult to solve.

NODES AND ARCS

The network flow model consists of nodes and arcs. In the context of modeling a problem, each node, shown as a circle, represents some aspect of the problem, such as a physical location, an individual worker, or a point in time.

2. For modeling purposes, it is often convenient to assign names to the nodes. Arcs are directed line segments that generally pass from an origin node to a terminal node, although in the case of external flow, an arc may be incident to only one node. If an arc does not have a direction, it is sometimes referred to as an edge. The number of nodes is denoted by m, and the number of arcs by n.

ARC FLOW

Flow is associated with the network, entering and leaving at the nodes and passing through the arcs.

The flow in arc k is xk.When flow is conserved at the nodes, the total flow entering a node must equal the total flow leaving the node.

The arc flows are the decision variables for the network flow programming model.

UPPER AND LOWER BOUNDS ON FLOW

Flow is limited in an arc by lower and upper bounds. Sometimes

the term capacity refers to the upper bound on flow. We use lk

and ukfor the lower and upper bounds of arc k, respectively.

COST

The criterion for optimality is cost. Associated with each arc k is

the cost per unit of flowck. Negative values of ck correspond to

revenues.

GAIN

The arc gaingkmultiplies the flow at the beginning of the arc to obtain the flow at the end of the arc. When a flow xk is assigned to an arc, this flow leaves the origin node of the arc. The flow entering the terminal node is gkxk.

The arc's lower bound, upper bound, and cost all refer to the flow at the beginning of the arc. Gains less than 1 model losses, such as evaporation or spoilage. Gains greater than 1 model

growth in flow.

A network in which all arcs have unit gains is called a pure network. The optimal solution for a pure network with integer parameters always has integer flows. If some gains have values other than 1, the network is a generalized network, and the solution is not usually integral.

ARC PARAMETERS

In a network diagram, the arc parameters are shown adjacent to

arcs and are enclosed in parentheses (e.g., lower bound, upper bound, cost, gain). When a parameter is not shown, it assumes its default value. Default values are 0 for the lower bound, for the upper bound, 0 for the cost, and 1 for the gain.

EXTERNAL FLOWS

The external flow at node i, denoted by bi is the flow that must enter node i from sources, or leave node i for destinations outside the network. A positive external flow enters the node, and a negative external flow leaves the node. In a network diagram, the external flow is shown in square brackets adjacent to the node.

FEASIBLE FLOW

When an assignment of flows to the arcs satisfies conservation of flow for each node and is within the bounds of each arc, the flow is said to be feasible.

OPTIMAL FLOW

The feasible flow that minimizes the sum of all arc costs is the optimal flow.

In the statement of the classical transportation problem, balance is present, which means that the total supply always equals the total demand-i.e.,

2. This is the case in our example and is a sufficient condition for feasibility. Instances of the problem can always be put into this form with the addition of a dummy supply point (call it m +1) when demand exceeds supply, or a dummy demand point (call it n +1 ) when supply exceeds demand.

3. If denotes the excess, we set . All unit costs, , associated with the corresponding shipments are set equal to zero.

1. The network has a special form important in graph theory. It is called a bipartite network, which means that the nodes can be divided into two subsets with all arcs going from one subset to the other. The optimal solution for this example is shown in Figure 5.5

Assignment Problem

A typical assignment problem, presented in the classic form, is shown in Figure 5.6. Here there are five workers that are to be assigned to five jobs. The numbers in the matrix indicate the cost of worker i doing job j. Jobs with costs of M are disallowed assignments. The problem is to match workers and jobs at minimum cost.

Shortest Path Problem

The problem is to find the shortest path from some specified node, node A for example, to some other node or perhaps to all other nodes.

The latter problem is called the shortest path tree problem because the collection of all shortest paths from a specified node forms a graph structure called a tree.

Since it is not much more difficult to find the paths to all nodes than it is to find the path to one node, the shortest path tree problem is usually solved.

The NFP equivalent of the shortest path tree problem is formed by equating arc distance to arc cost, assigning a fixed external flow of m - 1 ( m is the number of nodes ) to the source node, and assigning fixed external flows of -1 to every other node.

Maximum Flow Problem

The problem is to find the maximum possible flow from a given source node s to a given sink node t. All arc costs are zero with the exception that the cost on the arc leaving the sink is set to -1. Since the objective is to minimize cost, the maximum possible flow is delivered to the sink node.

By convention, we assign a large number M to the upper bound on flow into the source and out of the sink node.

The individual arc flows that yield this result are shown in parentheses. The bold arcs in the figure, {(1,3), (2,6), (2,7), (5,8)}, are called the minimal cut. In general, a cut is a set of arcs such that if they are removed from the graph, no flow can pass from the source to the sink.

A cut partitions the nodes in a graph into two disjoint subsets or subgraphs. The arcs in the minimal cut are the bottlenecks that are restricting the maximum flow. The fact that the sum of the capacities of the arcs on the minimal cut equals the maximum flow in this example is not a coincidence.

It is always the case and is a famous primal-dual result in network theory called the max-flow min-cut theorem. The arcs comprising the minimal cut can be identified using sensitivity analysis.

Transportation Problem with Costs and Revenues

- Consider a company that has two plants (S1 and S2) and four customers (D1,D2,D3, and D4). The problem faced by the plant manager is to find the optimal shipping pattern that maximizes the net profit-that is, revenue less shipping costs less manufacturing costs.
- The only difference is that the quantities available at the sources and the amounts demanded by the customers are no longer fixed but are given by a range of values.

5.2 EXTENSIONS OF THE BASIC MODELS

*Treat extra supply and demand as capacity of external flows.

Multiperiod Operations

The company needs to establish a shipping schedule for the next two months. The demands for each customer are 15 units in the first month and 20 units in the second month. These demands must be met. Plant S1 has a manufacturing capacity of 30 units per month and plant S2 has a capacity of 50 units per month. In the first month ,the production cost are $8 per unit at plan S1 has and $l0 per unit at plant S2. In the second month, the unit costs are $9 per unit at both plants. Products can be stored at the customer sites from one month to the next at a cost of $1 perunit. Products cannot be stored at the plants. Shipping costs are as given in the preceding example except that the shipping company is offering a discount of $1 per unit on all routes during the first month. The goal is to minimize total production costs, shipping costs, and inventory costs over the two-month period. Not all production capacity needs to be utilized.

5.2 EXTENSIONS OF THE BASIC MODELS

5.2 EXTENSIONS OF THE BASIC MODELS

Because there are no longer any minimum shipping requirements, there are no square brackets above the source nodes. The first number in parentheses on an arc entering a source node represents an upper bound on the available supply. Also, demand is fixed at each destination-i.e., there is no extra demand.

5.2 EXTENSIONS OF THE BASIC MODELS

Transshipment Problem

This model contains intermediate nodes with nonnegative supply or demand requirements and with arcs between pairs of sources or pairs of destinations.

5.2 EXTENSIONS OF THE BASIC MODELS

A transshipment problem can be transformed into a balanced transportation problem. The associated NFP model is bipartite. To begin, we assume that there are m pure supply points, n pure demand points, and p transshipment points.

For an NFP model, a pure supply point would have only leaving arcs whereas a pure demand point would have only entering arcs. We let sT be the total supply available for the problem- i.e., ~

and we let tk be the net stock position at transshipment node k for k= 1,..., p.If stock is supplied at node k, then tk is positive, and if stock is demanded at node k, then tk is negative. In the example, m=n=p= 3, with sT= 17.

5.2 EXTENSIONS OF THE BASIC MODELS

Step 1: If necessary, put the problem into balanced form by adding

either a dummy supply point to meet the excess demand or a

dummy demand point to absorb the excess supply. Shipments

to or from the dummy node will have zero shipping cost.

Step 2: Construct a transportation tableau with m + p rows-one for

each supply point and transshipment point-and n +p columns

-one for each demand point and transshipment point. Each

pure supply point i will have a supply equal to its original

value si, and each pure demand point j will have a demand

equal to its original value dj. Each transshipment point k will

have a supply equal to sk = tk + sT. and a demand equal to

dk = sT.

5.2 EXTENSIONS OF THE BASIC MODELS

we assign a large cost M to shipments that are not permissible. To facilitate modeling, we allow a shipment from a transshipment point to itself and assign it a unit transportation cost of zero-that is, we include xkk in the model and set ckk=0for k= i,...,p.

5.2 EXTENSIONS OF THE BASIC MODELS

5.2 EXTENSIONS OF THE BASIC MODELS

sT+tk

sT

1. The decision variable xkk corresponds to a fictitious shipment. For each transshipment point k that has a nonnegative quantity to be supplied (tk≥0), the net difference between the amount demanded (dk = sT) and the fictitious shipment xkk represents the transshipment quantity. Similarly , for each transshipment point k that has a negative quantity (tk < 0) indicating the number of units demanded, the net difference between the amount supplied (sk= dk+ sT) and the fictitious shipment xkkrepresents the transshipment quantity. Because the fictitious shipment variables xkk have ckk = 0, their levels do not contribute to the total cost of transportation.

2. To achieve the conversion to a standard transportation model, we have introduced sT which can be thought of as a fictitious buffer stock at each transshipment node k. Because sT has been included in both sk and dk the sum of all the si, remains equal to the sum of all the dj. Thus, balance is maintained. The total amount of stock transshipped through point k is sT - xkk if tk≥0,and tk+sT–xkk , if tk <0.

(For T3: 17-14=3; For T1: -2+17-15=0)

5.2 EXTENSIONS OF THE BASIC MODELS

Transformation of Flow

A company makes three products at four plants. Because of differences in labor skills, the amount of time required to manufacture the products varies among the plants. The time

requirements (in minutes per unit) are shown in the matrix in Figure 5.19. A dash indicates that the specified product cannot be made at the specified plant. The demands for the three products are also shown. The total time available at each plant is 25 hours per week, but it is not necessary that all of it be used. The hourly charges for labor are $10, $12, $9, and $13 for plants 1, 2,3, and 4, respectively. There is no labor charge for time not used. The problem is to construct and solve a network model that can be used to minimize total manufacturing costs while meeting all demand. The requirements data are given in minutes per unit, so to compute the appropriate gain factors it is necessary to invert the quantities in Figure 5.19 and then multiply by 60 to find units per hour. The gain for plant 1 producing product A is

60 (min/hr) / 30 (min/unit) = 2 units per hour.

5.2 EXTENSIONS OF THE BASIC MODELS

5.2 EXTENSIONS OF THE BASIC MODELS

Convex Costs and Concave Revenues

Consider an arc that carries flow between two nodes. Suppose that the first 10 units of flow have a unit cost of $5, the next five units have a unit cost of $8, and any additional units have a unit cost of $10. When unit cost is increasing with flow, the arc cost is a convex function of the flow and can be modeled with multiple arcs.

Unfortunately, concave cost functions and convex revenue functions cannot be transformed into linear models. To deal with such functions, it would be necessary to introduce integer variables into the formulation to ensure that arcs were selected in the proper order, higher-cost arcs first in the case of concave costs.

5.2 EXTENSIONS OF THE BASIC MODELS

5.2 EXTENSIONS OF THE BASIC MODELS

Undirected Edges

5.2 EXTENSIONS OF THE BASIC MODELS

Elimination of Arc Lower Bounds

Determining Economic Life

Consider an investment in a machine with an initial purchase price of $1000. It is anticipated that the machine will be used far into the future. Given that the salvage value is decreasing and operating costs are increasing, there must be some optimal time at which the machine should be replaced. The optimal replacement time is called the economic life of the machine.

Time value of money principle. Specifically, the present value of an amount cn received n years from now is computed as follows.

The term is the discount factor.

5.2 EXTENSIONS OF THE BASIC MODELS

5.2 EXTENSIONS OF THE BASIC MODELS

To find a general expression for the present value of the cash flow as a function of the time of disposal, let cnbe the cost expended at time n, let N be the life of the machine, and let sN be the amount realized when the machine is disposed of at time N. The net present value for a lifetime of N years, PN, is then

5.2 EXTENSIONS OF THE BASIC MODELS

For the specific case for N= 3 and assuming that i is 20%, we have

p3= 1000+ 833.33 + 833.33 + 810.19 = $3476.85

Note that the fourth term in this expression is the present value of the combined operating cost and salvage value in year 3.

1000

1400

1000

1200

There is no optimization in the network shown in Figure 5.28. The fixed flow at node 0 is forced on the network, resulting in the arc flows

X0 = 1, X1 = 0.833,X2 = 0.8332, X3 = 0.8333, P3 = 3476.85

The cost associated with the network is the present value of the cash flows for the machine.

5.2 EXTENSIONS OF THE BASIC MODELS

We might ask for the present value of a series of replacements

over an infinite period for the cash flows depicted in Figure 5.29.

Without proving this result, we observe that the NFP model of a continuous series of replacements can be represented by the cycle shown in Figure 5.30.

The economic life of 3 years is the life that minimizes the present value of ownership over an infinite time horizon. To find this value, an optimization problem must be solved. The NFP model for our example is depicted in Figure 5.31. There are five cycles or alternative paths representing replacement after years 1 through 5, respectively.

5.2 EXTENSIONS OF THE BASIC MODELS

5.2 EXTENSIONS OF THE BASIC MODELS

The result indicates that the machine should be replaced every 2 years. The cost of the optimal flow, $8045.46, is the present value of the costs incurred by following the optimal policy forever.

Every NFP model has an LP equivalent.

5.3LINEAR PROGRAMMING MODEL

Lower bounds on flow (the upper bounds are infinite):

xk≥0, k=l,2, ...,10

5.4 MINIMUM-COST FLOW PROBLEM

The problem is to determine an optimal distribution plan that minimizes the total cost of shipping while meeting all customer demands with available supplies.

We call the models pure minimum-cost flowmodels, because the flow entering an arc at its originating node is equal to the flow leaving the arc at its terminal node.

2. The pure minimum-cost flow model is contrasted later in the chapter with the generalized network flow model, which does not have this requirement.

3. The pure model has the important property of integral optimal solutions. Whenever all node external flows and all arc upper and lower bounds are integer valued, the solution to the pure model is also integer valued.

5.4 MINIMUM-COST FLOW PROBLEM

Linear Programming Model

Generalized Minimum-Cost Flow Problem

We introduce an arc gain parameter to handle losses or gains that

occur along a link. Figure 5.39 illustrates the effect of the gain on

flow. We model the 5% loss from Phoenix to Chicago with a gain

of 0.95 on the arc. Thus, 200 units leave Phoenix, but only 190

units arrive at Chicago.

Node Restrictions and Costs

The airport has instituted a fee for each unit transferred and limits transfers to 100 units per week. In addition, there is a spoilage of 10% of the units that are handled.

We allow for these possibilities by dividing the Atlanta node into two nodes, as shown in Figure 5.42, and adding an arc between them. The flow that actually passes through Atlanta now flows on arc 18, and any information related to that flow is described by the parameters of the arc.

Homework 5

A company has one manufacturing plant and three sales outlets (A, B and C). Unit shipping costs from the plant to outlets A, B and C are $4, $6 and $8, respectively. The company wishes to develop a production, shipping and sales plan for three periods. The corresponding data are given below. The plant has the capability of storing up to 100 units of product stored from one period to the next. The storage cost is $1 per unit per period. Find a plan that maximizes profit.