260 likes | 405 Views
Lecture 5 – Integration of Network Flow Programming Models. Topics Min-cost flow problem (general model) Mathematical formulation and problem characteristics Pure vs. generalized networks. Distribution Problem. [supply / demand]. arc lower bounds = 0. arc upper bounds = 200.
E N D
Lecture 5 – Integration of Network Flow Programming Models Topics • Min-cost flow problem (general model) • Mathematical formulation and problem characteristics • Pure vs. generalized networks
Distribution Problem [supply / demand] arc lower bounds = 0 arc upper bounds = 200 (shipping cost) [–200] [700] (6) NY 6 CHIC 2 [–250] PHOE 1 (4) (6) (7) (4) (3) (3) (5) (2) (5) LA 3 DAL 4 [–150] ATL 5 [–200] (7) (2) [–300] (4) (2) (7) (6) (5) GAINS 8 [200] AUS 7 [200]
Customers - Chicago, LA, Dallas, Atlanta, & New York Supply [ si ] at each warehouse i Demand [ dj] of each customer j Min-Cost Flow Problem Example: Distribution problem • Warehouses store a particular commodity in Phoenix, Austin and Gainesville. • Shipping links depicted by arcs, flow on each arc is limited to 200 units. • Dallas and Atlanta - transshipment hubs • Per unit transportation cost (cij) for each arc Problem: Determine optimal shipping plan that minimizes transportation costs
Notation for Min-Cost Flow Problem In general: [supply/demand] on nodes (shipping cost per unit) on arcs In example: all arcs have an upper bound of 200 nodes labeled with a number 1,...,8 • Must indicate notation that is included in model: • (cij) unit flow cost on arc (i,j) • (uij) capacity (or simple upper bound) on arc (i,j) • (gij) gain or loss on arc (i,j) • All 3 could be included: (cij, uij, gij)
Spreadsheet Input Data arc name origin node termination node lower bound upper bound cost gain xij i j lij uij cij gij external flow si or -di j i The origin node is the arc’s tail The termination node is called the head Supplies are positive and demands are negative
Data Entry Using Math Programming/Network Add-in. And here is the solution ...
Solution to Distribution Problem [supply / demand] (flow) [-200] [-250] (200) NY CHIC [700] (50) PHOE (100) (200) (200) [-150] (200) LA ATL DAL [-300] (50) [-200] (200) [200] GAINS AUS [200]
· 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 bounds; i.e., lower bound & upper bound (capacity) · Each arc has a per unit cost & the goal is to minimize total cost. Characteristics of Network Flow Problems
[external flow] (cost) lower = 0, upper = 200 Distribution Network Used in Formulation [-200] [-250] (6) 2 6 [700] 1 (4) (6) (7) (4) (5) (3) (3) (7) (2) (5) [-150] [-200] 4 3 5 (2) [-300] (4) (6) (2) (5) (7) [200] 8 7 [200] Notation
= 200 - -x - x x = - 200 - - 12 52 42 LP for Distribution Problem Pure network flow at each node is conserved flow across an arc is conserved no gains or losses can occur on arcs ¼ 6x 7x Min + 3x + + + + 4x + 3x 7x 86 16 12 14 13 85 + x + x x = 700 Node 1 Node 2 . . . x s.t. + x + x + x + x sit. 13 14 12 15 21 23 24 - = - 200 + x x - -x = - - x + x x 43 73 23 43 63 13 + + x + x - - x = - 300 x x x - - + x = -x x + x + x + x + x + + x 42 43 84 54 45 46 41 74 41 43 46 47 24 54 84 . . . . Flow balance constraints for each of the 8 nodes . . x x + x + 85 84 86 0 £ xij£ 200, for all (i,j) combinations which are arcs
Decision variables are the flow variables xij j i By examining the flow balance constraints we see that xijappears in exactly two of them: xij 0 . . . 0 +1 node i 0 (or in the other order if i >j) . . . 0 - 1 node j 0 . . . 0
Observations from LP Model • If we add the constraints we obtain zero on the left-hand side so the right-hand side must also be zero for feasibility. • In particular, this means • sum of supplies = sum of demands. • Mathematically, we have one redundant constraint. • Must be careful in interpreting shadow prices on the flow balance constraints. • Cannot change only a supply or demand and have model make sense.
Pure Minimum Cost Flow Problem G = (N, A) network with node set N and arc set A Indices i, jÎN denote nodes and (i, j) ÎA denote arcs Originating set of arcs for node i (tails are i) is the forward star of i FS(i) = {(i,j) : (i,j) Î A} Terminating set of arcs for node i is the reverse star of i RS(i) = {(j,i) : (j,i) ÎA}.
Flow Balance equation: åxij – åxji = bi (i,j)ÎFS(i) (j,i)ÎRS(i) where biis positive for supply and negative for demand at node i. In our example: FS(1) = { (1,2), (1,3), (1,4), (1, 5) } RS(1) = Ø FS(4) = { (4,2), (4,3), (4,5), (4,6) } RS(4) = { (1,4), (5, 4), (7,4), (8,4) }
Pure Min-Cost Flow Problem Indices/sets i, jÎN nodes arcs forward star of i reverse star of i (i, j) ÎA FS(i) RS(i) Data cij unit cost of flow on (i,j) lower bound on flow (i,j) upper bound on flow (i,j) external flow at node i lij uij bi
Decision Variables xij = flow on arc (i,j) Formulation åcijxij Min (i,j)ÎA åxij- å xji = bi, "i Î N s.t. (i,j)ÎFS(i) (j,i)ÎRS(i) lij £ xij£ uij, " (i,j) Î A
Generalized Minimum Cost Network Flow Model • Only one modification to “pure” formulation • a possible gain (or loss) on each arc, denoted by gij • If gij = 0.95 then 100 units of flow leaves node i and 95 units arrive at node j
Generalized Formulation åcijxij Min (i,j)ÎA åxij- ågjixji = bi, "iÎ N s.t. (i,j)ÎFS(i) (j,i)ÎRS(i) lij £ xij£ uij, " (i,j)ÎA Note that if gij =1 " (i,j) ÎA, then we obtain the “pure” model
Gains and Losses currency exchange Gain = 1.78 Swiss US francs $ 15% return on investment Gain = 1.15 Year 2 Year 1 • Might experience 5% spoilage of a perishable good during transportation on a particular arc. • gij= 0.95 for the associated arc (i,j). • In production of manufacturing formulations we might incur losses due to production defects. • In financial examples we can have gains due to currency exchange or gains due to returns on investments.
Pure Network Problems vs. General Network Problems If bi, lij and uijare integer-valued then all extreme points of the feasible region for a pure network flow problem give integer values for xij. FACT (Same cannot be said for generalized network models.) This integer property means that if we use the simplex method to solve a pure network flow problem then we are guaranteed that xij will be integer at optimality.
This is critical when we formulate the assignment, shortest path problems, and other network problems. Special cases of the pure min-cost flow model: • Transportation problem • Assignment problem • Shortest path problem • Maximum flow problem
Checking for Arbitrage Opportunities US $ Yen(100) CHF D-Mark Brit £ US $ 1 1 1.05 1.45 1.72 .68 Yen(100) 2 .95 1 1.41 1.64 .64 3 CHF .69 .71 1 1.14 .48 4 D-Mark .58 .61 1 .39 0.88 Brit £ 5 1.50 1.56 2.08 2.08 1 • The table is to be read as follows: • The 1.45 in row 1 column 3 means that $1 US will purchase 1.45 Swiss Francs (CHF). • In addition, there is a 1% fee that is charged on each exchange.
Arbitrage Network: Generalized Min-Cost Flow Problem Arc costs: cij = $ equivalent (first column of table) For example: c14 = 1, c35 = 0.69 [-1] US $ 1 Yen 5 Brit £ 2 4 D-Mark 3 CHF g12 = (1.05)(0.99) g51 = (1.50)(0.99) Each arc has a gain of gij. For example,
Solution to Arbitrage Network US $ Arc gains in optimal cycle: 1 0.674 g54 = 2.535 g43 = 0.871 g35 = 0.475 Brit £ 5 30.473 13.801 3 CHF Total cycle gain: = 1.0488 = 4.88% 4 34.986 D-Mark Note (£ $): g51 = 1.485 Start with 13.801 £ 34.986 D-Mark 30.473 CHF 14.475 £ Remove 0.674 £ $1 leaving 13.801 £
What You Should Known About General Network Flow Problems • How to formulate a general network flow problem as a linear program. • What the relationship is between the maximum flow and the minimum cut in a network. • What the implications are for a network flow problem with gains. • How to solve general network flow problems using the Excel add-ins.