Presentation is loading. Please wait.

Presentation is loading. Please wait.

Network Optimization Network optimization models: Special cases of linear programming models Important to identify problems that can be modeled as networks.

Similar presentations


Presentation on theme: "Network Optimization Network optimization models: Special cases of linear programming models Important to identify problems that can be modeled as networks."— Presentation transcript:

1 Network Optimization Network optimization models: Special cases of linear programming models Important to identify problems that can be modeled as networks because: (1) network representations make optimization models easier to visualize and explain (2) very efficient algorithms are available

2 Example of (Distribution) Network

3 Terminology Nodes and arcs Arc flow Upper and lower bounds Cost Gains and losses External flow Optimal flow

4 Network Flow Problems

5 Transportation Problem We wish to ship goods (a single commodity) from m sources to n destinations at minimum cost. Warehouse i has s i units available i = 1,..., m and destination j has a demand of d j, j = 1,..., n. Goal - Ship the goods from sources to destinations at minimum cost. Example PlantsSupplyMarketsDemand San Francisco 350 New York 325 Los Angeles 600 Chicago 300 Austin 275 Unit Shipping Costs From/ToNYChiAus SF2.51.71.8 LA--1.81.4

6 Total supply = 950, total demand = 900 Transportation problem is defined on a bipartite network Arcs only go from supply nodes to destination nodes To handle excess supply create a dummy destination with a demand of 50. The min-cost flow network for this transportation problem is given by: SF LA NY CHI AUS DUM [350] [600] [-50] [-275] [-300] [-325] (2.5) (1.7) (1.8) (0) (M) (1.8) (1.4) (0)

7  Costs on arcs to dummy destination = 0 (In some settings it would be necessary to include a nonzero warehousing cost.)  The objective coefficient on the LA  NY arc is M. This denotes a large value and effectively prohibits use of this arc (could eliminate arc).  We are assured of integer solutions because technological matrix A is totally unimodular. (important in some applications)

8 The LP formulation of the transportation problem with m sources and n destinations is given by: Min m  i=1 n  j=1 c ij x s.t. n  j=1 x ij = s i i = 1,…,m m  i=1 x ij = d j j = 1,…,n x ij  0i = 1,…,m; j = 1,…,n

9 Shortest Path Problem Given a network with “distances” on the arcs our goal is to find the shortest path from the origin to the destination. These distances might be length, time, cost, etc, and the values can be positive or negative. (A negative c ij can arise if we earn revenue by traversing an arc.) The shortest path problem may be formulated as a special case of the pure min-cost flow problem.

10 Example [1] [-1] 1 6 5 4 3 2 (1) (3) (6) (4) (2) (1) (7) (c ij ) cost or length We wish to find the shortest path from node 1 to node 6. To do so we place one unit of supply at node 1 and push it through the network to node 6 where there is one unit of demand. All other nodes in the network have external flows of zero.

11 Network Notation A = set of Arcs, N = set of nodes Forward Star for node i: FS(i) = { (i,j) : (i,j)  A } Reverse Star for node i: RS(i) = { (j,i) : (j,i)  A } i i FS(i) RS(i)

12 In general, if node s is the source node and node t is the termination node then the shortest path problem may be written as follows. Min  c ij x (i,j)  A s.t.  x ij   x ji = (i,j)  FS(i)(j,i)  RS(i) x ij  0,  (i,j)  A 1, i = s – 1, i = t 0, i  N \ {s,t} {

13 Maximum Flow Problem In the maximum flow problem our goal is to send the largest amount of flow possible from a specified source node to a specified destination node subject to arc capacities. This is a pure network flow problem (i.e., g ij = 1) in which all the (real) arc costs are zero (c ij = 0) and at least some of the arc capacities are finite. 1 2 3 4 5 6 (6) (1) (2) (4) (2) (1) (3) (7) 1 (u ij ) arc capacities Example

14 1 2 3 4 5 6 [x ij ] (u ij ) flow capacities Maximum flow = 5 Goal for Max Flow Problem Send as much flow as possible from node 1 to node 6 [2] (2) [3] (7) [2] (3) [2] (2) [1] (1) [3] (4) [2] (6) Solution

15 Examples of cuts in the network above are: S1S1 = {1} T1T1 = {2,3,4,5,6} = {1,2,3} T2T2 = {4,5,6} = {1,3,5} T3T3 = {2,4,6} The value of a cut V(S,T) is the sum of all the arc capacities that have their tails in S and their heads in T. V(S 1,T 1 ) = 10 V(S 3,T 3 ) = 12 Cut : A partition of the nodes into two sets S and T. The origin node must be in S and the destination node must be in T. S2S2 S3S3 V(S 2,T 2 ) = 5

16 Max-Flow Min-Cut Theorem The value of the maximum flow is equal to the value of the minimum cut. In our problem, S = {1,2,3} / T = {4,5,6} is a minimum cut. The arcs that go from S to T are (2,4), (2,5) and (3,5). Note that the flow on each of these arcs is at its capacity. As such, they may be viewed as the bottlenecks of the system.

17 Max Flow Problem Formulation There are several different linear programming formulations. We will use one based on the idea of a “circulation”. We suppose an artificial return arc from the destination to the origin with u ts = +  and c ts = 1. External flows (supplies and demands) are zero at all nodes. s t

18 Maximum Flow Model Max x ts s.t.  x ij   x ji = 0,   i  N (i,j)  FS(i) (j,i)  RS(i) 0  x ij  u ij   (i,j)  A Identify minimum cut from sensitivity report: (i)If the reduced cost for x ij has value 1 then arc (i,j) has its tail (i) in S and its head (j) in T. (ii)Reduced costs are the shadow prices on the simple bound constraint x ij  u ij. (iii)Value of another unit of capacity is 1 or 0 depending on whether or not the arc is part of the bottleneck Note that the sum of the arc capacities with reduced costs of 1 equals the max flow value.

19 Sensitivity Report for Max Flow Problem Adjustable Cells FinalReducedObjectiveAllowable CellNameValueCostCoefficientIncreaseDecrease $E$9Arc1 Flow3001E+300 $E$10Arc2 Flow20001 $E$11Arc3 Flow00001E+30 $E$12Arc4 Flow2101E+301 $E$13Arc5 Flow1101E+301 $E$14Arc6 Flow2101E+301 $E$15Arc7 Flow00001E+30 $E$16Arc8 Flow20001 $E$17Arc9 Flow3001E+300 $E$18Arc10 Flow5011E+301 Constraints FinalShadowConstraintAllowable CellNameValuePriceR.H. SideIncreaseDecrease $N$9Node1 Balance00003 $N$10Node2 Balance0001E+300 $N$11Node3 Balance00003 $N$12Node4 Balance01002 $N$13Node5 Balance01003 $N$14Node6 Balance01003

20 Minimum Cost Flow Problem Warehouses store a particular commodity in Phoenix, Austin and Gainesville. Customers - Chicago, LA, Dallas, Atlanta, & New York Supply [ s i ] at each warehouse i Demand [  d j ] of each customer j Shipping links depicted by arcs, flow on each arc is limited to 200 units. Dallas and Atlanta - transshipment hubs Per unit transportation cost ( c ij ) for each arc Problem - determine optimal shipping plan that minimizes transportation costs Example: Distribution problem

21 GAINS 8 ATL 5 NY 6 DAL 4 CHIC 2 AUS 7 LA 3 PHOE 1 (6) (3) (5) (7) (4) (2) (4) (5) (6) (4) (7) (6) (3) [–150] [200] [–300] [200] [–200] (2) (7) [–250] [700] [supply / demand] (shipping cost) arc lower bounds = 0 arc upper bounds = 200 Distribution Problem

22 GAINS ATL NY DAL CHIC AUS LA PHOE (200) (50) (200) [-150] [200] [-300] [200] [-200] (50) (100) [-250] [700] [supply / demand] (flow) Solution to Distribution Problem

23 This network flow problem is based on:  Conservation of flow at nodes. At each node flow in = flow out. At supply nodes there is an external inflow ( positive ) At demand nodes there is an external outflow ( negative ).  Flows on arcs must obey the arc’s bounds. lower bound & upper bound ( capacity )  Each arc has a per unit cost & the goal is to minimize total cost.

24 Distribution Network 8 5 6 4 2 7 3 1 (6) (3) (5) (7) (4) (2) (4) (5) (6) (4) (7) (6) (3) [-150] [200] [-300] [200] [-200] (2) (7) [-250] [700] [external flow] (cost) lower = 0, upper = 200

25 Linear Program Model for Distribution Problem Minimize z = 6x 12 + 3x 13 + 3x 14 + 7x 15 + … + 7x 86 Subject to conservation of flow constraints at each node: Node 1: x 12 + x 13 + x 14 + x 15 = 700 Node 2: –x 12 – x 62 – x 52 = –200 Node 3: –x 13 – x 43 – x 73 = –200 Node 4: x 42 + x 43 + x 45 + x 46 – x 14 – x 54 – x 74 = –300... Node 8: x 84 + x 85 + x 86 = 200 Bounds: 0 ≤ x ij ≤ 200 for all (i,j)  A


Download ppt "Network Optimization Network optimization models: Special cases of linear programming models Important to identify problems that can be modeled as networks."

Similar presentations


Ads by Google