1 / 29

A Linear Programming Formulation of Flows over Time with Piecewise Constant Capacity and Transit Times

A Linear Programming Formulation of Flows over Time with Piecewise Constant Capacity and Transit Times. by Juan Alonso and Kevin Fall. Introduction . Algorithm to optimally solve a Delay-Tolerant Network (DTN) routing problem Assumes contacts are known in advance Two steps

makaila
Download Presentation

A Linear Programming Formulation of Flows over Time with Piecewise Constant Capacity and Transit Times

An Image/Link below is provided (as is) to download presentation 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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Linear Programming Formulation of Flows over Time with Piecewise Constant Capacity and Transit Times by Juan Alonso and Kevin Fall Sharlee Climer CS679

  2. Introduction • Algorithm to optimally solve a Delay-Tolerant Network (DTN) routing problem • Assumes contacts are known in advance • Two steps • Time discretized appropriately • Linear Program (LP) is solved • Present two LPs Sharlee Climer CS679

  3. DTN Routing Problem • Similar to dynamic multicommodity flow or quickest transshipment problem • Edge capacities vary with time • Transit delays along edge vary with time • Capacities and/or delays can be zero • Finite buffer at each vertex Sharlee Climer CS679

  4. Assumptions • V, C, and multigraph G = (V,E) are given • each contact, Ci = (ei, Ii, ci, di) • flow is permitted to depart along ei during Ii • ci is capacity and di is delay • bv is buffer capacity at vertex v • A commodity demand matrix is given: Sharlee Climer CS679

  5. Outline • Discretize time for example • Set up LP for example • Alternate LP • Contributions of paper Sharlee Climer CS679

  6. Discretize time Sharlee Climer CS679

  7. Discretize time T1 = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12} D = {1, 2, 3, 4} D = 4 Sharlee Climer CS679

  8. Discretize time t0 = 0 th = 12 T2 = {-4, 0, 1, 2, 3, …, 12, 16} Sharlee Climer CS679

  9. Discretize time T2 = {-4, 0, 1, 2, 3, …, 12, 16} I2 = { [-4, 0], [0, 1], [1, 2], … , [11, 12], [12, 16] } Sharlee Climer CS679

  10. Discretize time Capacities: Sharlee Climer CS679

  11. Discretize time Delays: Sharlee Climer CS679

  12. Discretize time D’ = { 1, 2, 3, 4, 4, 1, 1, … , 1, 4} = { 1, 2, 3, 4} Sharlee Climer CS679

  13. Discretize time D’ = { 1/1, 2/1, 3/1, 4/1 } ni= { 1, 2, 3, 4 } mi = { 1 } Sharlee Climer CS679

  14. Discretize time ni= { 1, 2, 3, 4 } mi = { 1 } q = lcm { 1 } = 1 p = gcd { 1 (1/1), 2 (1/1), 3 (1/1), 4 (1/1) } = 1 e = 1 Sharlee Climer CS679

  15. Discretize time Te = { t0 + le | lin Z } = Z TE = { -4, -3, -2, -1, 0, 1, …, 16 } TR = { 0, 1, 2, … , 16 } TX = { 0, 1, 2, … , 12} Sharlee Climer CS679

  16. Discretize time Capacities: Sharlee Climer CS679

  17. Discretize time Delays: Sharlee Climer CS679

  18. LP formulation Amount of commodity k of priority l occupying the buffer at node v at time t in TR Amount of data from i(k) to t(k) and priority l that is transmitted at i(e) during I in IE Amount of data from i(k) to t(k) and priority l that is received at t(e) during I in IR (That’s 4,288 decision variables for our small example!) Sharlee Climer CS679

  19. LP formulation min { 1 x -3 x [ X(1,1,1,-3) + X(1,1,2,-3) + X(1,1,3,-3) + … + X(1,1,10,-3) ] + 1 x -2 x [ X(1,1,1,-2) + X(1,1,2,-2) + X(1,1,3,-2) + … + X(1,1,10,-2) ] + . 1 x 16 x [ X(1,1,1,16) + X(1,1,2,16) + X(1,1,3,16) + … + X(1,1,10,16) ] + 2 x -3 x [ X(1,2,1,-3) + X(1,2,2,-3) + X(1,2,3,-3) + … + X(1,2,10,-3) ] + 2 x -2 x [ X(1,2,1,-2) + X(1,2,2,-2) + X(1,2,3,-2) + … + X(1,2,10,-2) ] + . 2 x 16 x [ X(1,2,1,16) + X(1,2,2,16) + X(1,2,3,16) + … + X(1,2,10,16) ] + . 1 x -3 x [ X(2,1,1,-3) + X(2,1,2,-3) + X(2,1,3,-3) + … + X(2,1,10,-3) ] + . 1 x 16 x [ X(2,1,1,16) + X(2,1,2,16) + X(2,1,3,16) + … + X(2,1,10,16) ] + 1 x -3 x [ X(3,1,1,-3) + X(3,1,2,-3) + X(3,1,3,-3) + … + X(3,1,10,-3) ] + . 1 x 16 x [ X(3,1,1,16) + X(3,1,2,16) + X(3,1,3,16) + … + X(3,1,10,16) ] } Sharlee Climer CS679

  20. LP formulation constraints (2): K = { 1, 2, 3 } L = { 1, 2 } V = { 1, 2, … , 8 } IR = { 1, 2, … , 16 } for k = 1, l = 1, v = 3, Iq= 4: I3 = { 1, 2 }, O3 = { 5 } R(1,1,1,4) + R(1,1,2,4) – X(1,1,5,4) = N(1,1,3,4) – N(1,1,3,3) The difference between total incoming and total outgoing flow at a node, over a time interval, for a commodity with a given priority, is equal to the net buffer occupancy for the node, interval, commodity, and priority. (768 constraints) Sharlee Climer CS679

  21. LP formulation constraints (3): K = { 1, 2, 3 } L = { 1, 2 } E = { 1, 2, … , 10 } IE = { -3, -2, -1, 0, 1, … , 16 } for k = 1, l = 1, e = 5, Iq= 4: R(1,1,5,4) = X(1,1,5,3) The traffic received at the endpoint of e during time interval I is equal to the traffic transmitted at the initial point of e during I – de,I. Sharlee Climer CS679

  22. LP formulation constraints (4): K = { 1, 2, 3 } L = { 1, 2 } V = { 1, 2, … , 8 } TR = { 0, 1, 2, … , 16 } for v = 3, tq= 4: N(1,1,3,4) + N(1,2,3,4) + N(2,1,3,4) + N(3,1,3,4) <= 1 The total buffer occupancy at a node can never exceed the buffer capacity. Sharlee Climer CS679

  23. LP formulation constraints (5): K = { 1, 2, 3 } L = { 1, 2 } E = { 1, 2, … , 10 } IE = { -3, -2, -1, 0, 1, … , 16 } for e = 5, Iq= 4: X(1,1,5,4) + X(1,2,5,4) + X(2,1,5,4) + X(3,1,5,4) <= 0 x 1 The total flow over a link during a certain time interval cannot exceed the link capacity multiplied by the amount of time that the link is open. Sharlee Climer CS679

  24. LP formulation • constraints (6): K = { 1, 2, 3 } • L = { 1, 2 } • V = { 1, 2, … , 8 } • IR = { 1, 2, … , 16 } • for k = 1, l = 1, v = 3: I3 = { 1, 2 }, O3 = { 5 } • { X(1,1,5,1) + X(1,1,5,2) + … + X(1,1,5,16) } • { R(1,1,1,1) + R(1,1,1,2) +… + R(1,1,1,16) + R(1,1,2,1) + … + R(1,1,2,16) } = 0 • When all time has elapsed, the difference between total incoming and total outgoing flow at a node (for a given commodity and priority) is equal to zero at transient nodes, and equal to mk,l [-mk,l] when v = i(k) [v = t(k)]. Sharlee Climer CS679

  25. LP formulation constraints (7): K = { 1, 2, 3 } L = { 1, 2 } V = { 1, 2, … , 8 } for k = 1, l = 1, v = 1: N(1,1,1,0) = 1 At the beginning, only those nodes having messages to send have an occupied buffer, in the expressed amount. Sharlee Climer CS679

  26. Alternate LP formulation LHS (6) = LHS (2) = Sharlee Climer CS679

  27. Alternate LP formulation constraints (7) constraints (12) (replaces (6)) Sharlee Climer CS679

  28. Contributions • Concise definition • Compare approximate algorithms • Starting point • Improve LP • Improve lowerbound • Improve upperbound Sharlee Climer CS679

  29. Questions? Sharlee Climer CS679

More Related