Discrete facility location problems

Size: px
Start display at page:

Download "Discrete facility location problems"

Transcription

1 Discrete facility location problems Theory, Algorithms, and extensions to multiple objectives Sune Lauth Gadegaard Department of Economics and Business Economics, Aarhus University June 22, 2016 CORAL AARHUS UNIVERSITY

2 Outline Overview of the PhD process Introduction to discrete facility location problems Motivation Branch and cut Single objective problems A cut and solve approach (First paper) A semi Lagrangean approach (Second paper) Bi objective problems An ε constrained approach for cost bottleneck FLPs (Third paper) Bound set based branch and bound algorithms for bi objective combinatorial optimization (Fourth paper)

3 The process

4 The process Start (Feb. 2013)

5 The process School on Column Generation Paris NetOpt Lisbon Start (Feb. 2013) Stochastic programming Research Convex optimization processes Course on NetOpt Edinburgh in logistics Teaching Lisbon

6 The process Start (Feb. 2013) EURO-INFORMS Rome Stochastic programming School on Column Generation Paris IFORS Barcelona NetOpt Lisbon MCDM Hamburg INFORMS Philadelphia Research Convex optimization processes Course on NetOpt Edinburgh in logistics Teaching Lisbon

7 The process Start (Feb. 2013) EURO-INFORMS Rome Stochastic programming Teaching School on Column Generation Paris IFORS Barcelona NetOpt Lisbon Summer university MCDM Hamburg INFORMS Philadelphia Research Convex optimization processes Course on NetOpt Edinburgh in logistics Teaching Lisbon Supervision

8 The process Start (Feb. 2013) EURO-INFORMS Rome Stochastic programming Teaching School on Column Generation Paris IFORS Barcelona Lancaster Ehrgott NetOpt Lisbon Summer university MCDM Hamburg INFORMS Philadelphia Research Convex optimization processes Course on NetOpt Edinburgh in logistics Teaching Lisbon Supervision

9 The process Start (Feb. 2013) EURO-INFORMS Rome Stochastic programming Teaching School on Column Generation Paris IFORS Barcelona Lancaster Ehrgott NetOpt Lisbon Summer university MCDM Hamburg INFORMS Philadelphia Research Convex optimization processes Course on NetOpt Edinburgh in logistics Teaching Lisbon Supervision Hand in

10 The process Start (Feb. 2013) EURO-INFORMS Rome Stochastic programming Teaching School on Column Generation Paris IFORS Barcelona Lancaster Ehrgott NetOpt Lisbon Summer university MCDM Hamburg INFORMS Philadelphia Research Convex optimization processes Course on NetOpt Edinburgh in logistics Teaching Lisbon Four research projects Supervision Hand in

11 Motivation

12 Motivation Location problems in the public sector Fire and police stations and hospitals Schools Emergency centers Sirens

13 Motivation Location problems in the public sector Fire and police stations and hospitals Schools Emergency centers Sirens

14 Motivation Location problems in the public sector Fire and police stations and hospitals Schools Emergency centers Sirens

15 Motivation Location problems in the private sector Storage facilities Production facilities Supplier selection

16 Motivation Location problems in the private sector Storage facilities Production facilities Supplier selection

17 Description Description of the Single Source Capacitated Facility Location Problem (SSCFLP)

18 Description Description of the Single Source Capacitated Facility Location Problem (SSCFLP) Assumptions: 1. Finite sets of customers and potential facility sites. 2. Demands and capacities are fixed and known. 3. Costs are fixed and known. 4. Each customer has to be serviced from one, and only one, open facility.

19 Description Description of the Single Source Capacitated Facility Location Problem (SSCFLP) Assumptions: Decisions: 1. Finite sets of customers and potential facility sites. 2. Demands and capacities are fixed and known. 3. Costs are fixed and known. 4. Each customer has to be serviced from one, and only one, open facility. 1. Which potential facilities should be open in an optimal solution (location decision) 2. Given a set of open facilities, which facility should the individual customer be allocated to (allocation decision).

20 Description Description of the Single Source Capacitated Facility Location Problem (SSCFLP) Assumptions: Decisions: 1. Finite sets of customers and potential facility sites. 2. Demands and capacities are fixed and known. 3. Costs are fixed and known. 4. Each customer has to be serviced from one, and only one, open facility. 1. Which potential facilities should be open in an optimal solution (location decision) 2. Given a set of open facilities, which facility should the individual customer be allocated to (allocation decision). Objective: Minimize the total cost: Cost of locating facilities + cost of allocating customers

21 Illustration

22 Illustration

23 Illustration

24 Illustration

25 Illustration

26 Solution procedure Procedure, that guarantees to find optimal solutions (one of minimum cost!).

27 Solution procedure Procedure, that guarantees to find optimal solutions (one of minimum cost!). Uses optimistic and pessimistic estimates to squeeze optimal solution value.

28 Solution procedure Procedure, that guarantees to find optimal solutions (one of minimum cost!). Uses optimistic and pessimistic estimates to squeeze optimal solution value. Enumerates (implicitly) all solutions to the optimization problem.

29 Solution procedure Procedure, that guarantees to find optimal solutions (one of minimum cost!). Uses optimistic and pessimistic estimates to squeeze optimal solution value. Enumerates (implicitly) all solutions to the optimization problem. Adds cutting planes to make the optimistic estimate more accurate.

30 Solution procedure Procedure, that guarantees to find optimal solutions (one of minimum cost!). Uses optimistic and pessimistic estimates to squeeze optimal solution value. Enumerates (implicitly) all solutions to the optimization problem. Adds cutting planes to make the optimistic estimate more accurate. Cost

31 Solution procedure Procedure, that guarantees to find optimal solutions (one of minimum cost!). Uses optimistic and pessimistic estimates to squeeze optimal solution value. Enumerates (implicitly) all solutions to the optimization problem. Adds cutting planes to make the optimistic estimate more accurate. Cost Pessimistic

32 Solution procedure Procedure, that guarantees to find optimal solutions (one of minimum cost!). Uses optimistic and pessimistic estimates to squeeze optimal solution value. Enumerates (implicitly) all solutions to the optimization problem. Adds cutting planes to make the optimistic estimate more accurate. Cost Pessimistic Optimistic

33 Solution procedure Procedure, that guarantees to find optimal solutions (one of minimum cost!). Uses optimistic and pessimistic estimates to squeeze optimal solution value. Enumerates (implicitly) all solutions to the optimization problem. Adds cutting planes to make the optimistic estimate more accurate. Cost Pessimistic Optimal Optimistic

34 Solution procedure Procedure, that guarantees to find optimal solutions (one of minimum cost!). Uses optimistic and pessimistic estimates to squeeze optimal solution value. Enumerates (implicitly) all solutions to the optimization problem. Adds cutting planes to make the optimistic estimate more accurate. Cost Pessimistic Optimal Optimistic

35 Solution procedure Procedure, that guarantees to find optimal solutions (one of minimum cost!). Uses optimistic and pessimistic estimates to squeeze optimal solution value. Enumerates (implicitly) all solutions to the optimization problem. Adds cutting planes to make the optimistic estimate more accurate. Cost Optimal Pessimistic Optimistic

36 Tree structure Suppose we know a solution that costs us kroner. Facility in Holstebro open Optimistic estimate = Facility in Holstebro closed Optimistic estimate = People from Struer goes to Holstebro People from Struer does not go to Holstebro

37 The first paper Joint work with Andreas Klose & Lars Relund Nielsen

38 Goal and purpose Want to solve the SSCFLP to proven optimality Want to do it as fast as possible Want an algorithm which is robust

39 Outline of procedure

40 Outline of procedure Make an initial optimistic estimate

41 Outline of procedure Make an initial optimistic estimate Make an initial pessimistic estimate

42 Outline of procedure Make an initial optimistic estimate Make an initial pessimistic estimate Stop, we are done

43 Outline of procedure Make an initial optimistic estimate Make an initial pessimistic estimate Stop, we are done Close the remaining gap

44 An optimistic estimate

45 An optimistic estimate Drop the single source requirement Allow each customer to be serviced from multiple facilities.

46 An optimistic estimate Drop the single source requirement Allow each customer to be serviced from multiple facilities. s = 3 s = 3 s = 3 d = 2 d = 2 d = 2

47 An optimistic estimate Drop the single source requirement Allow each customer to be serviced from multiple facilities. s = 3 s = 3 s = d = 2 d = 2 d = 2

48 Making the optimistic estimate more accurate We can add more information by generating cutting planes

49 Making the optimistic estimate more accurate We can add more information by generating cutting planes Example Consider facility 1 with capacity of 5. Four customers with demands d 1 = 2, d 2 = 2, d 3 = 3 and d 4 = 4 x ij = 1 iff facility i serves customer j

50 Making the optimistic estimate more accurate We can add more information by generating cutting planes Example Consider facility 1 with capacity of 5. Four customers with demands d 1 = 2, d 2 = 2, d 3 = 3 and d 4 = 4 x ij = 1 iff facility i serves customer j 2x 1,1 + 2x 1,2 + 3x 1,3 + 4x 1,4 5y 1

51 Making the optimistic estimate more accurate We can add more information by generating cutting planes Example Consider facility 1 with capacity of 5. Four customers with demands d 1 = 2, d 2 = 2, d 3 = 3 and d 4 = 4 x ij = 1 iff facility i serves customer j 2x 1,1 + 2x 1,2 + 3x 1,3 + 4x 1,4 5y 1 x 1,1 + x 1,2 + x 1,3 + x 1,4 2

52 Making the optimistic estimate more accurate We can add more information by generating cutting planes Example Consider facility 1 with capacity of 5. Four customers with demands d 1 = 2, d 2 = 2, d 3 = 3 and d 4 = 4 x ij = 1 iff facility i serves customer j 2x 1,1 + 2x 1,2 + 3x 1,3 + 4x 1,4 5y 1 x 1,1 + x 1,2 + x 1,3 + x 1,4 2 x 1,1 + x 1,4 1

53 Making the optimistic estimate more accurate We can add more information by generating cutting planes Example Consider facility 1 with capacity of 5. Four customers with demands d 1 = 2, d 2 = 2, d 3 = 3 and d 4 = 4 x ij = 1 iff facility i serves customer j 2x 1,1 + 2x 1,2 + 3x 1,3 + 4x 1,4 5y 1 x 1,1 + x 1,2 + x 1,3 + x 1,4 2 x 1,1 + x 1,4 1 x 1,2 + x 1,4 1

54 Making the optimistic estimate more accurate We can add more information by generating cutting planes Example Consider facility 1 with capacity of 5. Four customers with demands d 1 = 2, d 2 = 2, d 3 = 3 and d 4 = 4 x ij = 1 iff facility i serves customer j 2x 1,1 + 2x 1,2 + 3x 1,3 + 4x 1,4 5y 1 x 1,1 + x 1,2 + x 1,3 + x 1,4 2 x 1,1 + x 1,4 1 x 1,2 + x 1,4 1 x 1,3 + x 1,4 1

55 Making the optimistic estimate more accurate We can add more information by generating cutting planes Example Consider facility 1 with capacity of 5. Four customers with demands d 1 = 2, d 2 = 2, d 3 = 3 and d 4 = 4 x ij = 1 iff facility i serves customer j 2x 1,1 + 2x 1,2 + 3x 1,3 + 4x 1,4 5y 1 x 1,1 + x 1,2 + x 1,3 + x 1,4 2y 1 x 1,1 + x 1,4 1y 1 x 1,2 + x 1,4 1y 1 x 1,3 + x 1,4 1y 1

56 Making the optimistic estimate more accurate Theorem All (interesting) strong inequalities (facets) for the capacity constraints can be obtained from strong inequalities (facets) of a similar knapsack constraint.

57 Making a (not too) pessimistic estimate 1. Obtain a feasible solution. 2. Solve a much reduced problem centered at the current solution. 3. Obtain a new solution and make that the current. 4. Remove the neighborhood around previous solution and go to 2.

58 Closing the gap: Cut and solve 1. Solve the full problem with single source requirement removed (optimistic estimate). 2. Partition the set of facilities into two sets: open and closed ones. 3. Solve the problem with all closed facilities fixed (pessimistic estimate). 4. Require that at least one of the closed facilities should be open in the next iteration. Repeat from 1.

59 Cut and solve: Illustration

60 Cut and solve: Illustration

61 Cut and solve: Illustration

62 Cut and solve: Illustration

63 Results Cost Pessimistic opt Optimistic

64 Results Cost Pessimistic opt Optimistic 0.03 to 0.3 percent off on average

65 Results Cost Pessimistic opt 0.17 to 1.09 percent off on average Optimistic

66 Results Closing the gap (comparing with CPLEX) For easy instances (solved within 2 seconds) CPLEX is slightly faster than cut and solve. For larger and harder instances cut and solve performs between 5 and 135 times better.

67 Results Closing the gap (comparing with CPLEX) For easy instances (solved within 2 seconds) CPLEX is slightly faster than cut and solve. For larger and harder instances cut and solve performs between 5 and 135 times better. Comparing with customized algorithm (Yang et. al (2012)) Our improved algorithm runs 12 to 85 times faster than Yang s on average. Reason: Smart way of generating cutting planes, definition of subproblems, stopping optimization early, quality of the initial pessimistic estimate.

68 The second paper

69 Motivation Too many possible assignments! 80 potential facility sites and 400 customers leads to variables

70 Motivation Too many possible assignments! 80 potential facility sites and 400 customers leads to variables Hard to find feasible solutions in the subproblems

71 Semi Lagrangean relaxation We have a tough constraint: All customers have to be serviced by exactly one facility

72 Semi Lagrangean relaxation We have a tough constraint: All customers have to be serviced by exactly one facility All customers have to be serviced by at most one facility AND All customers have to be serviced by at least one facility

73 Semi Lagrangean relaxation We keep the serviced by at most one facility

74 Semi Lagrangean relaxation We keep the serviced by at most one facility Remove the serviced by at least one facility

75 Semi Lagrangean relaxation We keep the serviced by at most one facility Remove the serviced by at least one facility Easy to find a solution!

76 Semi Lagrangean relaxation We keep the serviced by at most one facility Remove the serviced by at least one facility Easy to find a solution! If a customer is not serviced, we add cost of λ kroner per unserviced customer.

77 Semi Lagrangean relaxation We keep the serviced by at most one facility Remove the serviced by at least one facility Easy to find a solution! If a customer is not serviced, we add cost of λ kroner per unserviced customer. Thin out by removing all possible assignments that costs us more than λ kroner.

78 A dual ascent algorithm 1. Set an initial penalty price λ. 2. Remove all assignments that costs more than λ. 3. Solve the SSCFLP with only service by at most one facility constraints (semi Lagrangean subproblem). If all customers are serviced, then the solution is optimal. Else, the penalty price was too low, increase it and go to 2.

79 Integrating cut and solve and dual ascent There are two obvious ways to integrate

80 Integrating cut and solve and dual ascent There are two obvious ways to integrate Solve the semi Lagrangean subproblems using the cut and solve algorithm

81 Integrating cut and solve and dual ascent There are two obvious ways to integrate Solve the semi Lagrangean subproblems using the cut and solve algorithm Solve the cut and solve subproblems using the dual ascent algorithm

82 Results 5,000 CPU seconds 4,000 3,000 2,000 1,000 0 Small Tight Less tight Loose DA-CS CS-DA CS

83 The third paper Joint work with Andreas Klose & Lars Relund Nielsen

84 Motivation There is almost always more than one objective when making decisions 1. Minimize cost. 2. Minimize environmental impact. 3. Minimize violation of some constraints (laws). 4. Maximizing equity/fairness of a solution.

85 Motivation There is almost always more than one objective when making decisions 1. Minimize cost. 2. Minimize environmental impact. 3. Minimize violation of some constraints (laws). 4. Maximizing equity/fairness of a solution. What is better? Profit of 10 kroner and a variance of 7 or a profit of 5 and variance of 0.5?

86 Motivation There is almost always more than one objective when making decisions 1. Minimize cost. 2. Minimize environmental impact. 3. Minimize violation of some constraints (laws). 4. Maximizing equity/fairness of a solution. What is better? Profit of 10 kroner and a variance of 7 or a profit of 5 and variance of 0.5? We want to find all the rational compromises between conflicting objectives.

87 Pareto optimal/rational compromise Definition (Pareto optimal) Given two objectives a decision is said to be Pareto optimal if non of the objectives can be improved without deteriorating the other.

88 Pareto optimal: Illustration Cost

89 Pareto optimal: Illustration Cost Optimal = 10

90 Pareto optimal: Illustration Cost Optimal = 10 (1000,10) Environmental impact

91 Pareto optimal: Illustration Cost (100,55) Optimal = 10 (1000,10) Environmental impact

92 Pareto optimal: Illustration Cost (100,55) Optimal = 10 (1000,10) Environmental impact

93 Pareto optimal: Illustration Cost (100,55) Optimal = 10 (1000,10) Environmental impact The non dominated frontier.

94 A solution procedure ε constrained method: 1. Minimizes only one objective. 2. Keeps the other constrained from above (ε is the upper bound). 3. Continuously lowers the value of ε. 4. Builds the non dominated frontier from one end to the other.

95 Illustration of ε constraineapproach Cost Optimal = 10 Environmental impact

96 Illustration of ε constraineapproach Cost Optimal = 10 Environmental impact

97 Illustration of ε constraineapproach Cost Optimal = 10 Environmental impact

98 The bi objective cost bottleneck location problem (BOCBLP) We add an additional objective function: 1. Minimize total cost of opening facilities and servicing customers.

99 The bi objective cost bottleneck location problem (BOCBLP) We add an additional objective function: 1. Minimize total cost of opening facilities and servicing customers. 2. Minimize the maximum distance from a customer to the facility she is assigned to.

100 ε constrained method for the BOCBLP Set ε =

101 ε constrained method for the BOCBLP Set ε = Remove assignments

102 ε constrained method for the BOCBLP Set ε = Remove assignments Minimize cost

103 ε constrained method for the BOCBLP Set ε = Remove assignments Minimize cost Solution exists?

104 ε constrained method for the BOCBLP Set ε = Remove assignments Minimize cost Solution exists? no Stop

105 ε constrained method for the BOCBLP Set ε = Remove assignments Minimize cost Update ε yes Solution exists? no Stop

106 ε constrained method for the BOCBLP Set ε = Remove assignments Minimize cost Update ε yes Solution exists? no Stop

107 ε constrained method illustrated

108 ε constrained method illustrated

109 Outline Introduction Single objective SSCFLP Bi objective SSCFLP Results We tested with three different cost structures: tij tij cij tij cij cij

110 Results For the single source capacitated BOCBLP, negatively correlated cost/time produced many more non dominated solutions. Generally very few redundant iterations. Comparing with another standard method Two phase method generally much slower: between 2 and 100 times slower than ε method. Two phase method suffers from bad scaling and too large programs. The shape of the frontier does not fit well to the two phase method.

111 The fourth paper Joint work with Matthias Ehrgott & Lars Relund Nielsen

112 A direct approach

113 A direct approach The ε constraint approach required effective solution of the subproblems. We have to know the problem type before a priori

114 A direct approach The ε constraint approach required effective solution of the subproblems. We have to know the problem type before a priori We want to be able to solve general problems, with no particular structure.

115 Bound sets Cost 1 optimal optimal Cost 2

116 Bound sets Cost 1 optimal optimal Cost 2

117 Bound sets Cost 1 optimal optimal Cost 2

118 Bound sets Cost 1 optimal optimal Cost 2

119 Bound sets Cost 1 optimal optimal Cost 2

120 Bound sets Cost 1 optimal optimal Cost 2

121 Bound sets Lower bound set Optimistic estimate of the non dominated frontier

122 Bound sets Lower bound set Optimistic estimate of the non dominated frontier A set of points ensuring, that all solutions lie above!

123 Bound sets Lower bound set Optimistic estimate of the non dominated frontier A set of points ensuring, that all solutions lie above! Disregard integrality constraints

124 Bound sets Lower bound set Optimistic estimate of the non dominated frontier A set of points ensuring, that all solutions lie above! Disregard integrality constraints Upper bound set Pessimistic estimate of the non dominated frontier

125 Bound sets Lower bound set Optimistic estimate of the non dominated frontier A set of points ensuring, that all solutions lie above! Disregard integrality constraints Upper bound set Pessimistic estimate of the non dominated frontier We only need to look for Pareto solutions below the upper bound set

126 Bound sets Lower bound set Optimistic estimate of the non dominated frontier A set of points ensuring, that all solutions lie above! Disregard integrality constraints Upper bound set Pessimistic estimate of the non dominated frontier We only need to look for Pareto solutions below the upper bound set Cost points of feasible solutions

127 Bound sets Lower bound set Optimistic estimate of the non dominated frontier A set of points ensuring, that all solutions lie above! Disregard integrality constraints Upper bound set Pessimistic estimate of the non dominated frontier We only need to look for Pareto solutions below the upper bound set Cost points of feasible solutions We only need to search between the upper and lower bound sets

128 Problem splitting We can split the problem into smaller problems

129 Problem splitting We can split the problem into smaller problems 1. Facility in Holstebro is open Facility in Holstebro is not open

130 Problem splitting We can split the problem into smaller problems 1. Facility in Holstebro is open Facility in Holstebro is not open 2. Objective 1 must improve Objective 2 must improve

131 Problem splitting We can split the problem into smaller problems 1. Facility in Holstebro is open Facility in Holstebro is not open 2. Objective 1 must improve Objective 2 must improve 3. Solutions must be Pareto optimal

132 Illustration Cost2 Cost1

133 Illustration Cost2 Cost1

134 Illustration Cost2 Cost1

135 Illustration Cost2 Cost1

136 The procedure Choose a subproblem

137 The procedure Choose a subproblem Compare bounds

138 The procedure Choose a subproblem Compare bounds Room between bounds?

139 The procedure Choose a subproblem Compare bounds Room between bounds? yes Split subproblem

140 The procedure Choose a subproblem Compare bounds Room between bounds? yes Add new to list Split subproblem

141 The procedure Choose a subproblem Compare bounds Room between bounds? yes Add new to list Split subproblem

142 The procedure no Choose a subproblem Compare bounds Room between bounds? yes Add new to list Split subproblem

143 Results Tested different ways of comparing lower and upper bound sets

144 Results Tested different ways of comparing lower and upper bound sets 1. When stating the lower bound sets explicitly, LP based test worse than point in polytope test.

145 Results Tested different ways of comparing lower and upper bound sets 1. When stating the lower bound sets explicitly, LP based test worse than point in polytope test. 2. When stating the lower bound sets implicitly, new splitting scheme is not improving the performance

146 Results Tested if a bi objective approach to cutting planes works

147 Results Tested if a bi objective approach to cutting planes works It does! The algorithm becomes much more robust and also faster.

148 Results Tested if a bi objective approach to cutting planes works It does! The algorithm becomes much more robust and also faster. Tested an updating strategy of the lower bound set Works very well. Lower bounds are worse, but we can check many more subproblems.

149 Results Compared with a two phase method

150 Results Compared with a two phase method 1. Ranking based two phase method works very bad on our problems

151 Results Compared with a two phase method 1. Ranking based two phase method works very bad on our problems 2. PSM based two phase method works better, and even best on smaller problems

152 Results Compared with a two phase method 1. Ranking based two phase method works very bad on our problems 2. PSM based two phase method works better, and even best on smaller problems 3. Our best algorithm, outperforms two phase methods on larger problems

153 Thanks

154 Thanks Thanks for listening!

155 Thanks Thanks for listening! Thanks to the committee

156 Thanks Thanks for listening! Thanks to the committee Thanks to Matthias Ehrgott

157 Thanks Thanks for listening! Thanks to the committee Thanks to Matthias Ehrgott Thanks to Lars, Andreas, and Kim