decomposition for network design
play

Decomposition for Network Design Bernard Gendron March 16-17, 2016 - PowerPoint PPT Presentation

Decomposition for Network Design Bernard Gendron March 16-17, 2016 EPFL, Lausanne, Switzerland CIRRELT and D epartement dinformatique et de recherche op erationnelle, Universit e de Montr eal, Canada Outline of lesson 5:


  1. Decomposition for Network Design Bernard Gendron ∗ March 16-17, 2016 EPFL, Lausanne, Switzerland ∗ CIRRELT and D´ epartement d’informatique et de recherche op´ erationnelle, Universit´ e de Montr´ eal, Canada

  2. Outline of lesson 5: Multicommodity capacitated network design Fixed-charge problem Modelling alternatives Cutting-plane method Column-and-row generation Lagrangian relaxation Benders decomposition Capacity installation case General integer formulation Binary formulation Polyhedral results Column-and-row generation

  3. Multicommodity capacitated fixed-charge network design ◮ Directed network G = ( N , A ), with node set N and arc set A ◮ Commodity set K : known demand d k between origin O ( k ) and destination D ( k ) for each k ∈ K ◮ Unit transportation cost c ij on each arc ( i , j ) ◮ Capacity u ij on each arc ( i , j ) ◮ Fixed charge f ij incurred whenever arc ( i , j ) is used to transport some commodity units

  4. Problem formulation (MCNDF) � � � c ij x k Z = min ij + f ij y ij k ∈ K ( i , j ) ∈ A ( i , j ) ∈ A  d k , i = O ( k )  � � x k x k d k , ij − ji = − i = D ( k ) i ∈ N , k ∈ K  0 , i � = O ( k ) , D ( k ) j ∈ N + j ∈ N − i i � x k ij ≤ u ij y ij ( i , j ) ∈ A k ∈ K x k ij ≥ 0 ( i , j ) ∈ A , k ∈ K y ij ∈ { 0 , 1 } ( i , j ) ∈ A ◮ How would you solve the LP relaxation? What do you think of the lower bound?

  5. Commodity representation ◮ Each commodity is identified with one origin and one destination: disaggregated representation ◮ Give an estimate of the maximum number of commodities

  6. Commodity representation ◮ Each commodity is identified with one origin and one destination: disaggregated representation ◮ Give an estimate of the maximum number of commodities ◮ In this model, costs and capacities are independent of the commodities ◮ Use this observation to suggest a different way of representing the commodities

  7. Commodity representation ◮ Each commodity is identified with one origin and one destination: disaggregated representation ◮ Give an estimate of the maximum number of commodities ◮ In this model, costs and capacities are independent of the commodities ◮ Use this observation to suggest a different way of representing the commodities ◮ All commodities with the same origin can be identified as a single commodity with multiple destinations: aggregated representation ◮ What is the maximum number of commodities in this representation?

  8. Commodity representation ◮ Each commodity is identified with one origin and one destination: disaggregated representation ◮ Give an estimate of the maximum number of commodities ◮ In this model, costs and capacities are independent of the commodities ◮ Use this observation to suggest a different way of representing the commodities ◮ All commodities with the same origin can be identified as a single commodity with multiple destinations: aggregated representation ◮ What is the maximum number of commodities in this representation? ◮ | N | instead of | N | 2 , so much less variables! ◮ Which representation is better and why?

  9. Basic inequalities ◮ Suggest simple valid inequalities to improve the LP relaxation

  10. Basic inequalities ◮ Suggest simple valid inequalities to improve the LP relaxation ◮ Strong inequality (SI) x k d k y ij ( i , j ) ∈ A , k ∈ K ≤ ij ◮ S ⊂ N is a cutset if at least one commodity has its origin in S and its destination in ¯ S = N \ S ◮ ( S , ¯ S ): set of arcs ( i , j ) that cross cutset S ( i ∈ S and j ∈ ¯ S ) S ) : demand of all commodities with origin in S - destination in ¯ ◮ d ( S , ¯ S ◮ Suggest a simple valid inequality based on a cutset ( S , ¯ S )

  11. Basic inequalities ◮ Suggest simple valid inequalities to improve the LP relaxation ◮ Strong inequality (SI) x k d k y ij ( i , j ) ∈ A , k ∈ K ≤ ij ◮ S ⊂ N is a cutset if at least one commodity has its origin in S and its destination in ¯ S = N \ S ◮ ( S , ¯ S ): set of arcs ( i , j ) that cross cutset S ( i ∈ S and j ∈ ¯ S ) S ) : demand of all commodities with origin in S - destination in ¯ ◮ d ( S , ¯ S ◮ Suggest a simple valid inequality based on a cutset ( S , ¯ S ) ◮ Cutset inequality � u ij y ij ≥ d ( S , ¯ S ) ( i , j ) ∈ ( S , ¯ S ) ◮ Does this inequality improve the LP relaxation lower bound?

  12. Knapsack inequalities S ): set of arcs such that � ◮ Cover C ⊆ ( S , ¯ S ) \ C u ij < d ( S , ¯ ( i , j ) ∈ ( S , ¯ S ) ◮ Suggest a simple valid inequality based on a cover

  13. Knapsack inequalities S ): set of arcs such that � ◮ Cover C ⊆ ( S , ¯ S ) \ C u ij < d ( S , ¯ ( i , j ) ∈ ( S , ¯ S ) ◮ Suggest a simple valid inequality based on a cover ◮ Cover inequality (CI) � ≥ 1 y ij ( i , j ) ∈ C ◮ l S : minimum number of arcs in ( S , ¯ S ) needed to satisfy d ( S , ¯ S ) ◮ Give an algorithm to compute l S and a valid inequality based on l S

  14. Knapsack inequalities S ): set of arcs such that � ◮ Cover C ⊆ ( S , ¯ S ) \ C u ij < d ( S , ¯ ( i , j ) ∈ ( S , ¯ S ) ◮ Suggest a simple valid inequality based on a cover ◮ Cover inequality (CI) � ≥ 1 y ij ( i , j ) ∈ C ◮ l S : minimum number of arcs in ( S , ¯ S ) needed to satisfy d ( S , ¯ S ) ◮ Give an algorithm to compute l S and a valid inequality based on l S ◮ Minimum cardinality inequality (MCI) � y ij ≥ l S ( i , j ) ∈ ( S , ¯ S )

  15. Flow cover/pack inequalities ◮ Flow cover inequality (FCI) � � � ( x L ij + ( b L ij − µ ) + (1 − y ij )) min { b L b L ≤ ji , µ } y ji + ji ( i , j ) ∈ C 1 ( j , i ) ∈ D 2 ( j , i ) ∈ C 2 � + d L x L S ) + ( S , ¯ ji ( j , i ) ∈ (¯ S , S ) \ C 2 ∪ D 2 ◮ Flow pack inequality (FPI) � � � x L ( x L ij − min { b L ( b L ji + µ ) + (1 − y ji ) + ij + ij , − µ } y ij )) ≤ − ( i , j ) ∈ C 1 ( i , j ) ∈ D 1 ( j , i ) ∈ C 2 � � x L b L ji + ij ( j , i ) ∈ (¯ S , S ) \ C 2 ( i , j ) ∈ C 1

  16. Cutting-plane method ◮ Starting with the weak LP relaxation, iteratively add violated valid inequalities: ◮ To be more efficient: keep the problem size as small as possible ◮ To be more effective: improve the lower bound ◮ But the black-box solver already does that, so why not simply use it? ◮ True, but we can be more efficient and more effective by exploiting the structure of MCNDF ◮ Five classes of valid inequalities: ◮ Strong inequalities (SI) ◮ Cover inequalities (CI) ◮ Minimum cardinality inequalities (MCI) ◮ Flow cover inequalities (FCI) ◮ Flow pack inequalities (FPI)

  17. Cutting-plane method: computational results ◮ The disaggregated commodity representation outperforms the aggregated one, even when all inequalities are generated ◮ Single-node cutset inequalities are almost as effective as multi-node cutset inequalities, but much faster to generate ◮ On instances with few commodities O(10) and many nodes O(100), FCI/FPI are the most effective (but costly) ◮ On instances with many commodities O(100) and few nodes O(10), SI are the most effective and fast to generate ◮ Cut-and-branch with CPLEX: our cutting-plane method is competitive with CPLEX own cutting-plane ◮ Slower on instances with few commodities O(10) and many nodes O(100) ◮ Faster on instances with many commodities O(100) and few nodes O(10) ◮ A branch-and-cut algorithm has been developed based on the same cutting-plane method

  18. Column-and-row generation ◮ Extension of the cutting-plane method ◮ At each iteration, not all the flow variables are generated ◮ Flow variables are gradually added to the LP relaxation by pricing the variables: ◮ Solve the restricted LP relaxation ◮ Compute the reduced costs of non-generated flow variables ◮ Add (some of) the variables with negative reduced costs ◮ The restricted LP relaxation is solved by the cutting-plane method (only SI are added)

  19. Restricted LP relaxation � � � c ij x k min ij + f ij y ij ( i , j ) ∈ A + k ∈ � ( i , j ) ∈ A + K ij  d k , if i = O ( k )  � � x k x k − d k , i ∈ N , k ∈ K ( π k ij − ji = if i = D ( k ) i )  0 , otherwise j ∈ � N + j ∈ � N − i ( k ) i ( k ) � x k ij ≤ u ij y ij ( i , j ) ∈ A + ( α ij ) k ∈ � K ij x k ij ≤ d k y ij , ( i , j ) ∈ A + , k ∈ K ij ⊆ � ( β k K ij ij ) y ij ≤ 1 , ( i , j ) ∈ A + ( γ ij ) ( i , j ) ∈ A + , k ∈ � x k ij ≥ 0 , K ij y ij ≥ 0 , ( i , j ) ∈ A +

  20. LP dual

  21. LP dual d k � � � � π k D ( k ) − π k max − γ ij O ( k ) k ∈ K ( i , j ) ∈ A

  22. LP dual d k � � � � π k D ( k ) − π k max − γ ij O ( k ) k ∈ K ( i , j ) ∈ A π k j − π k i − α ij − β k ( x k ij ≤ c ij , ( i , j ) ∈ A , k ∈ K ij )

  23. LP dual d k � � � � π k D ( k ) − π k max − γ ij O ( k ) k ∈ K ( i , j ) ∈ A π k j − π k i − α ij − β k ( x k ij ≤ c ij , ( i , j ) ∈ A , k ∈ K ij ) � d k β k u ij α ij + ij − γ ij ≤ f ij , ( i , j ) ∈ A ( y ij ) k ∈ K

  24. LP dual d k � � � � π k D ( k ) − π k max − γ ij O ( k ) k ∈ K ( i , j ) ∈ A π k j − π k i − α ij − β k ( x k ij ≤ c ij , ( i , j ) ∈ A , k ∈ K ij ) � d k β k u ij α ij + ij − γ ij ≤ f ij , ( i , j ) ∈ A ( y ij ) k ∈ K α ij ≥ 0 , ( i , j ) ∈ A β k ij ≥ 0 , ( i , j ) ∈ A , k ∈ K γ ij ≥ 0 , ( i , j ) ∈ A

  25. Complementary slackness conditions

Recommend


More recommend