Universität Dortmund. Wirtschafts- und Sozialwissenschaftliche Fakultät. Fachgebiet " Operations Research und Wirtschaftsinformatik "
|
|
- Christal Blankenship
- 5 years ago
- Views:
Transcription
1 Universität Dortmund Wirtschafts- und Sozialwissenschaftliche Fakultät Fachgebiet " Operations Research und Wirtschaftsinformatik " On dynamic pickup and delivery vehicle routing with several time windows and waiting times Anke Fabri No.: 26 Date: Operations Research und Wirtschaftsinformatik D Dortmund Vogelpothsweg 87 (Gebäude Mathematik) Raum M 841 : Fax: a.fabri@wiso.uni-dortmund.de Internet:
2 On dynamic pickup and delivery vehicle routing with several time windows and waiting times Anke Fabri University of Dortmund, Operations Research and Wirtschaftsinformatik, Vogelpothsweg 87, D Dortmund, Germany Abstract. In [1] a very fast and efficient heuristic for rooting a fleet of vehicles for dynamic combined pickup and delivery services is introduced. The authors assume that every client names a stretch-factor that denotes the maximal relative deviation from the shortest path between pickup and delivery point. Waiting times are not allowed. As these assumptions are not very realistic, this paper now presents the results of adapting this algorithm to the dynamic pickup and delivery vehicle routing problem with several time windows. Waiting times of vehicles are admitted. Moreover, the computational results are considerably improved by local search techniques making use of free computational capacities. 1 Introduction The problem consists in routing a set F of vehicles serving a set N of demands. The road network is represented by a graph G = (V, E) whose vertices V are the possible pickup and delivery points and whose arcs correspond to roads connecting these points. The travel cost of each arc is represented by the function d : E R +. The planning horizon is denoted the interval [P 1, P 2 ]. Demands for transportation pop up dynamically and we do not have any information about quantity and location of further demands. Each demand i N consists of an amount of goods to be transported by one of the vehicles a pick-up point u i V a delivery point v i V a first time window [a i, b i ] [P 1, P 2 ] during which pickup has to take place a second time window [c i, e i ] [P 1, P 2 ] during which delivery has to be carried out. Any vehicle f F is characterized by a starting point s f V where the vehicle is located at time P 1 an end point z f V where the vehicle shall be at time P 2 its capacity k f. 1
3 When at any time τ [P 1, P 2 ] a new demand pops up, we have to decide online either to accept or to reject that demand. Further, the accepted demands have to be assigned to the vehicles and each vehicle must be routed. The objective function is to minimize the distance travelled by all vehicles during the planning horizon [P 1, P 2 ]. Note: in [1], the customers have to name a stretch-factor that denotes the maximal factor real travel time may exceed the shortest direct way travel time. This stretch-factor is now replaced by the second time window. This paper is organized as follows: Section 2 outlines a solution algorithm. First, the main ideas of the algorithm as proposed in [1] are presented. Then the consideration of a second time window for each demand and the admittance of waiting times are motivated and implemented, before the applied local search techniques are presented. In every section the computational results are given. Section 3 contains the conclusion. 2 Solution Algorithm The solution algorithm proposed in [1] is a heuristic approach. It is explained in section 2.1. The implementation of the second time window [c i, e i ] and the admittance of waiting times are presented in section 2.2. Further, the introduced local search techniques are stated in section Heurisitic Approach The algorithm mainly consists of two parts: a quick single vehicle routing algorithm and a heuristic to solve the multi vehicle routing problem, based on the results of the exact single vehicle routing. The following paragraph deals with the exact single vehicle routing algorithm. Thereafter the paragraph Multi Vehicle Routing outlines the heuristic to assign demands to a set of vehicles. Single Vehicle Routing The single vehicle routing problem consists in sequencing the pickup and delivery points of demands i N f where N f N denotes the set of demands i N assigned to some fixed vehicle f F. The sequence has to satisfy the following constraints: 2
4 For each demand i N f the goods must be picked up before they can be delivered. The time windows [a i, b i ] and [c i, e i ] must be met by the pickup and delivery times of demand i. The vehicle s capacity must not be exceeded. The total travel cost shall be minimized. Using the dynamic programming approach presented in [1], the constraint dealing the correct order of pickup and delivery points is satisfied automatically and cycles are avoided. The idea of that algorithm is as follows: For any vehicle f F a graph H f = (V f, E f ) with the following structure is generated. At any time τ [P 1, P 2 ] each accepted demand i N f that occurred in [P 1, τ] has its unique status j(i) {0, 1, 2} assigned, where j(i) = 0 means goods of demand i are already delivered, j(i) = 1 says goods of demand i are picked up but not yet delivered and j(i) = 2 indicates goods of demand i still wait for pickup. A status vector of vehicle f at time τ is a vector (j(i 1 ), j(i 2 ),... j(i nf )) that represents the status of each demand i N f at time τ with {i 1, i 2,... i nf } = N f. The set of all possible status vectors of demands i N f form the set of vertices V f. Two vertices k, l V f are connected by an edge (k, l) E f whenever vector l can be obtained from vector k by subtracting 1 to exactly one vector element j(i), i N f. The source vertex is the vector (2, 2,..., 2) i.e. goods of all accepted demands i N F still wait for pickup, the sink vertex is the vector (0, 0,..., 0): goods of all accepted demands i N F have been delivered. The problem now consists in finding a shortest path from the source to the sink vertex, subject to time window and stretch-factor constraints respectively. (see [1]) To solve this shortest-path problem the A*-Algorithm proposed in [2] is used. To reduce computation times, a function C(x) is introduced to estimate the cost of the shortest route from the source to the sink passing vertex x V f. C(x) has to be a lower bound for the real costs of the route. In that case the algorithm computes an optimal solution. Further the authors have shown that the algorithm is also optimal in the sense that it expands the fewest possible nodes necessary to find an optimal path, compared to other algorithms not better informed than A*. The only constraint for this property is that the function C(x) has to satisfy the triangle inequality. The function to estimate the cost chosen in [1] is composed of two functions g(x) and h(x): C(x) = g(x) + h(x), where g(x) denotes the known cost from the source to vertex x V f and h(x) estimates the cost of the route from vertex x to the sink. 3
5 At time τ [P 1, P 2 ], let λ(x) V denote the last pickup or delivery point visited by the vehicle. Further let S k (x), k {0, 1, 2}, be the set of demands i N f with j(i) = k. Then for every demand i N f h i (x) is defined as 0 i S 0 (x) h i (x) = d(λ(x), v i ) i S 1 (x) d(λ(x), u i ) + d(u i, v i ) i S 2 (x) h i (x) indicates the cost if only demand i N f remained to be satisfied. With h(x) = max i N f h i (x) h(x) denotes the length of the tour at least necessary to comply with all demands. function C(x) satisfies the triangle inequality. The Multi Vehicle Routing When at time τ a new demand pops up, we have to decide quickly either to accept or to reject it. For such a decision the actual allocation demands - vehicles must possibly be modified and new optimal routes must be computed. As the assignment problem is really hard to solve and usually many demands have to be treated during [P 1, P 2 ], a heuristic is chosen to solve this part of the problem. Whenever a new demand pops up, it is successively assigned to any vehicle f F. Then, the single vehicle routing problem is solved for each vehicle with the new demand provisionally assigned. If a feasible solution for at least one vehicle f is found, the demand is accepted and will be assigned to the vehicle with minimum additional costs. Otherwise the demand is rejected and will not be considered any longer. This heuristic turns out to be really fast as long as the number of demands assigned to one vehicle does not exceed a certain number. The single vehicle routing is solved optimally, so the computation time rises exponentially with rising numbers of demands assigned to one vehicle. However it is fast enough to decide online (e.g.during a phone call) whether a demand can be accepted or not. Computational results A. Potini and G. Viola implemented the algorithm presented in [1]. They provided their implementation and its description in [3]. All test results are based on their implementation. The tests were performed with 100 instances each. Typically an instance contains 100, 400 or 1000 demands. The average arrival rate is 1 demand/minute. The tables show the number of demands, the percentage of accepted demands, the number of vehicles used to satisfy the accepted demands, the maximal computation time per demand, the average computation time of single vehicle routing (svr), the costs per demand and the number of test instances that were computed correctly. The average computation time of single vehicle routing determines 4
6 the average computation time per demand. Nevertheless, any demand has to be answered online, so the maximum computation time per demand is indicated. The number of test instances that were computed correctly may be smaller than the 100 test instances provided because the implementation has some bugs such as memory leaks. These bugs may let the program crash down, but they have no influence on the result whenever the program runs through. Test 1: 100 vehicles of capacity ,80% 25, , ,27% 33, , ,39% 43, ,72 7 Test 2: 20 vehicles of capacity ,34% 20, , ,19% 20, , Test 3: 10 vehicles of capacity ,77% 10, , ,89% 10, , ,40% 10, ,69 1 5
7 2.2 Second Time Window The problem model used in [1] has two weak points: the vehicles are not allowed to wait and the clients have to name a stretch-factor. Contemplating Test 1, attention is attracted by the fact that 100 vehicles cannot satisfy 100 demands. Further it is conspicuous that 400 demands have a higher acceptance rate than 100 demands. This curiosity is caused by the fact that vehicles are not allowed to wait for pickup or delivery: either the arrival time is within the specified time window or the demand is neglected. This may be useful when persons are transported to avoid disgust, but even in this case soft lower bounds of the time windows would be more appropriate to allow negligible waiting times. If the vehicle is still empty, forbidding waiting times does not make any sense: the demand cannot be accepted because the vehicle starts at once to the customer s pickup point and arrives too early. In this case the demand is rejected because it appeared too early. Moreover, in practical situation a transportation company would even benefit from early booking as the assignment can be done better since there is enough time to spent for a more sophisticated optimization routine. So waiting times have to be allowed. The use of a stretch-factor as done in [1] is just as far from reality as the forbidden waiting times. In [1], the clients have to name a time window for pickup and a stretch-factor that describes the maximal factor that the effective travel time may exceed the minimal travel time. Replacing the respective stretch-factors by the second time windows has several advantages: Asking the customer for a second time window does not raise any complication. If the customer must name a stretch-factor, one must first explain function and kind of a stretch-factor and inform the customer about the minimum travel time. Even then the customer will often have difficulties to name such a factor. In contrast everyone easily understands the meaning of a time window. Naming such a time interval will not cause any difficulties. In general the delivery time is much more important than the travelling duration. For instance customers might have to satisfy due dates, persons want to keep appointments, the delivery must be according to the Just-in-time-concept, etc. Whenever someone insists on a short travel time, time windows can still be modified such that a short travel time must be realized. 6
8 I tw_min I I I I a tw_max a + SP a + d SP time t Figure 1: Delivery time window implied by a stretch factor δ The delivery time can be influenced by the customer by naming the time window. In [1], the customer has only little influence on the delivery time because it depends on the effective pickup time α and the stretch-factor δ: Figure 1 shows the implied delivery time window [α + SP, α + δsp ] where SP (shortest path) is the minimum travel time needed to travel from the pickup to the delivery point. [tw min, tw max] characterizes the pickup time window. As the customer does not know when exactly within the pickup time window the pickup will take place, the delivery time window he can calculate is [tw min + SP, tw max + δsp ]. This time window is too large and imprecise and for an average customer too difficult to handle. Hence, to meet the customers concerns and to simplify booking, the stretch-factor is replaced by the delivery time window. To be able to compare the computational results of the new algorithm with the algorithm in [1], the second time window is chosen depending on the stretch-factor used to test the previous implementation while all other information are left unchanged. So the computational results are better comparable, but the second time window constraint is stricter than the stretch-factor constraint. That is the reason for which the cost per demand increases. The program also does no longer crash that often because less feasible solutions are created. As now also waiting times are allowed, the acceptance rate of the instances with a high vehicle to demands ratio is much better than before. Test 1: 100 vehicles of capacity ,97% 28, , , ,60% 36, , , ,03% 45, , ,
9 Test 2: 20 vehicles of capacity ,65% 20, , , ,72% 20, , , ,53% 20, , , Test 3: 10 vehicles of capacity ,75% 10, , , ,66% 10, , , ,54% 10, , , Local Search Techniques The heuristic to assign the demands to the vehicles turns out to be very fast, but in general it does not produce an optimal solution. Now, the free computational capacities shall be used to improve the assignment. A local search algorithm has to be adapted to the very special structure of the Dynamic Pickup and Delivery Vehicle Routing Problem with Time Windows consisting of the following observations: As new demands pop up dynamically, the solution changes permanently. This structure impedes performing the local search on a final solution. But at every time τ [P 1, P 2 ] there is a current feasible solution available that can be improved. New feasible solutions have to be provided at once : whenever a new demand pops up, it must be accepted or rejected within a very short period (e.g. telephone call). The use of local search to improve the assignment must not affect the computation times needed to accept or reject a new demand. On the other hand, it must provide a new solution to work with whenever a further demand pops up. It is not necessarily possible to improve every solution by local search techniques. If demands pop up very quickly, there might be no time to improve a given assignment. 8
10 After some time, parts of the solution are no longer modifiable because the vehicles are already serving the demands. Therefore a local search process is adapted as follows: whenever there is no new demand to be answered, the local search procedure starts with the current assignment and routings as start solution. It is executed step by step until either a new demand pops up or the local search is finished: After every step of local search the algorithm checks for new incoming demands. If there are none, the next step of local search is performed. Otherwise the acceptance or rejection of the new demand is calculated based on the current solution provided by local search. Tabu sets are introduced to avoid that a demand i N that cannot be shifted from one vehicle to another blocks the local search. Every demand i N that was selected by local search must not be selected again until a certain number of alterations in the assignment have taken place. An alteration is defined by accepting a new demand or shifting an accepted demand. The best results were achieved when demands were forbidden to select until two alterations had taken place. Based on this general process several variations of local search algorithms have been implemented and tested. Mainly two neighborhood concepts have been used. They are presented in the following paragraph. Thereafter, the implemented local search algorithms and their computational results are described Neighborhoods Let T be the set of all feasible solutions at time τ. A feasible solution t T consists of an assignment of all accepted demands i N to vehicles f F and an optimal routing for each vehicle f F. Hence, the feasible solution t consists of the tours t f of all vehicles f F, t = (t 1, t 2,..., t m ) with m = #F. A tour t f for vehicle f is a sequence of all pickup and delivery points that vehicle f still has to serve, starting at the last visited point λ(x f ) of vehicle f and terminating in z f. Let W f denote this set of points to be served by vehicle f and w k W f for all 1 k n f, n f = #W f. Let (k 1, k 2,... k nf ) be a permutation of (1, 2,... n f ). Then a tour t f can be written as t f = (λ(x f ), w k1, w k2,... w knf, z f ). A neighborhood U(t) is a set of feasible solutions created from a given one t T. To generate feasible solutions differing from t, the following conditions must be taken into account: Demands i N with j(i) = 1 at time τ cannot be shifted to another vehicle. Demands i N with j(i) = 0 at time τ are no longer considered. 9
11 w = u k i w = v l i w 1 w k+1 w l-1 w l+1 w w k-1 n f w = u k i w = v k+1 i w 1 w k-1 w k+2 w nf Legend: originally used arc new introduced arc Figure 2: Modified routes for l > k + 1 and l = k + 1 Shifting One Demand Whenever a demand i pops up, it is assigned to the vehicle with free capacities and lowest additional cost for serving this demand without having any information about the following demands. But when some more demands i + 1, i + 2,... have arrived, it might be cheaper to assign demand i to another vehicle, for instance when pickup and delivery points of demand i + 1 lay next to pickup and delivery points of demand i, but the vehicle that serves demand i has no free capacities left to serve also demand i + 1. Therefore, one demand i N shall be shifted from a vehicle f 1 F to some vehicle f 2 F with f 1 f 2. A demand i N is to be found satisfying the following conditions: the status is j(i) = 2 and there is no vehicle already on the way to its pickup point savings are maximal As the computational effort to find the cheapest solution in U 1 (t) over all demands i N with status j(i) = 2 is too high, a heuristic is introduced. It is based on the idea that the saving is the higher the farer the detour is the vehicle has to admit to serve demand i. So the savings c(i) of demand i assigned to vehicle f F are calculated as the difference between the cost of the actual route t f and the cost of this route if demand i was omitted. For demand i N with pickup point w k = u i and delivery point w l = v i with w k, w l W f, k < l, the savings are calculated as follows: d wk 1,u i + d ui,w k+1 d wk 1,w k+1 + d wl 1,v i + d vi,w l+1 d wl 1,w l+1 l > k + 1 c(i) = d wk 1,u i + d ui,v i + d vi, w k+2 d wk 1,w k+2 l = k + 1 Figure 2 illustrates the arcs used by vehicle f during its tour t f and during that tour excluding demand i. 10
12 Let vector t T be a feasible solution. Further, S 2 (X [f] ) denotes the set of demands i N f with status j(i) = 2. Then the neighborhood U 1 (t) is defined as the set of feasible solutions differing from t in the way that demand i N with highest savings c(i ) is shifted from vehicle f 1 F it was previously assigned to to another vehicle f 2 F, f 1 f 2 : U 1 (t) = {(t 1,..., t m) T I (f 1, f 2 ) F F, i N : c(i ) = max f F max i S 2 (X [f] ) c(i) (u i t f1 ) (u i t f 2 )} Shifting Two Demands Supposing a glut of demands it is possible that demands cannot be shifted because there is no vehicle left with free capacity. So neighborhood U 2 (t) is constructed in a way that no free capacities are necessary. The demand i N with highest savings c(i ) of all demands i N with j(i ) = 2 is chosen and shifted from vehicle f 1 F to vehicle f 2 F while at the same time demand i N f2 with highest savings c(i ) of all i S 2 (X [f2] ) is shifted from vehicle f 2 F to vehicle f 1 F. U 2 (t) = {(t 1,..., t m) T I (f 1, f 2 ) F F with f 1 f 2, (i, i ) N N : c(i ) = max f F max i S 2 (X [f] ) c(i) c(i ) = (u i t f1 ) (u i t f 2 ) (u i t f 1 )} max c(i) i S 2 (X [f 2 ] ) As the computational effort to find the best pair of demands (i, i ) N N is nearly twice as high as the effort to assign a new demand, the local search routine stops as soon as a better solution is found Algorithms A couple of versions of local search algorithms based on the two neighborhood concepts given above have been implemented and tested. The most important of them are presented in the following paragraphs. Shifting One Demand - Procedure (SOD-Proc) Based on the neighborhood U 1 the first local search algorithm is implemented. Whenever there is no new demand to be assigned, the local search tries to shift demand i N with j(i ) = 2 and highest savings c(i ) from the originally assigned vehicle f 1 F to another vehicle f 2 F, f 1 f 2. Demands that have been selected by local search must not be reselected until at least two alterations in the assignment have taken place. After each step, local search checks for new incoming demands. When a new demand pops up, local search stops and the new demand is answered. Otherwise the next step of local search is performed. The implementation leads to the following results: 11
13 Test 1: 100 vehicles of capacity ,85% 27, , ,89% 37, , ,48% 47, , Test 2: 20 vehicles of capacity ,24% 20, , ,95% 19, , ,73% 19, ,91 98 Test 3: 10 vehicles of capacity ,24% 10, , ,14% 10, , ,40% 9, ,99 96 The tests show that up to 40% of the cost per demand could be saved. On the other hand, computational efforts have raised a lot compared to the results given above. Therefore the acceptance rates have declined. As the tests have been executed in a test environment with faster time progress to accelerate the testing process, this does not affect real-time computation. After all, the computation time is low enough. 12
14 Shifting Two Demands - Procedure (STD-Proc) The second implemented local search algorithm is based on the neighborhood U 2. Demand i N with status j(i ) = 2 and highest savings c(i ) is shifted from vehicle f 1 F to vehicle f 2 F, f 1 f 2, while at the same time demand i with status j(i ) = 2 and highest savings c(i ) of all demands assigned to vehicle f 2 is shifted from vehicle f 2 to vehicle f 1. To avoid exploding computational times, the first better solution found is considered the new local optimum. The following computational results were obtained by that implementation: Test 1: 100 vehicles of capacity ,24% 25, , ,08% 37, , ,16% 43, ,94 90 Test 2: 20 vehicles of capacity ,22% 19, , ,65% 20, , ,11% 20, ,86 98 Test 3: 10 vehicles of capacity ,91% 10, , ,54% 10, , ,86% 10, ,53 90 The cost per demand is also lower than before. After all, the results of the first local search algorithm Shifting one demand could not be reached. The hit ratio that shifting especially these two chosen demands is cheaper than before is quite small. The additional computational effort cannot be supported for such a poor result. 13
15 Hybrid Algorithms of SOD and STD Proc As in SOD-Proc demands may not be shifted according to capacity constraints, the results might be improved by combining both versions, in spite of the poor hit ratio of STD-Proc. The following hybrid algorithms were implemented and tested: Alternating Application Of Both Techniques If there is no new demand, e.g. the first step of local search is executed with SOD-Proc. The next step is performed using STD-Proc, and so on. Whenever local search is interrupted by a new demand, it memorizes which neighborhood is to be used next. Having accepted or rejected the new demand, local search continues with that neighborhood. The results were much poorer than the results of SOD-Proc. Successive Execution Of Both Techniques Whenever there is no new demand, one step of SOD-Proc and one step of STD-Proc are executed successively without taking care of eventually raising new demands. The results were better than the results of the foregoing presented alternating application algorithm, but they did not even approximately reach the results of SOD-Proc. In contrast, computation times raised a lot. Successive Execution Of Both Techniques With Different Tabu Sets As demands that could not be shifted by one procedure are not allowed to be shifted by the second one in the previous combination, this algorithm realizes two different tabu sets, so that demands that could not be shifted by one procedure can still be selected by the other one. The results show that the cost per demand is comparable to the results of SOD-Proc, but the computational effort is much higher than before. SOD-Proc Enforced To take even more advantage of the good results of SOD-Proc, one step of SOD-Proc is executed every time a new demand is assigned, in addition to the local search performance using the free computational resources when no new demand raised. The results show that costs per demand are only comparable to SOD-Proc, while the computational effort is much higher. 14
16 3 Conclusion The algorithm presented in [1] delivers solutions quickly, but it is based on two unrealistic assumptions: Every client has to name a stretch-factor that limits the travel time and Vehicles are not allowed to wait. Further the implementation provided has some bugs respecting memory management (see [3]). Nevertheless the computational results are satisfactory. The stretch-factor is very difficult to handle and does not take into account that the delivery time is often very important, at least much more important than the travel time. Replacing the stretch-factor by a delivery time window has a lot of advantages for the client. Also the forbidden waiting times for the vehicles cause some unnecessary trouble. For these reasons the algorithm has successfully been adapted to a delivery time window for each demand; waiting times are now allowed. The results show that less memory leaks take place. The computation times are still small enough to answer every demand online. To assign the demands to the vehicles, a heuristic is used, while the vehicle routing problem is solved at optimality. To improve the assignment a local search algorithm is implemented that uses free computational capacities. Whenever there is computation time left, local search is performed. This way the assignment can be improved without raising computation times. Best results for local search were attained with SOD-Proc where in every step one demand is shifted to another vehicle whenever no demands have raised. The less vehicles are available and the more demands pop up, the better works local search: in the test with 100 vehicles costs could hardly be reduced, but in the test with only 20 vehicles, decreases of 3,81% at 100 demands, of 9,77 % at 400 demands up to 10,74 % at 1000 demands were achieved. The test with only 10 available vehicles shows decreases of 10,34 % at 100 demands and of 24,46 % at 400 demands. At 1000 demands the cost decreased even 23,95 % and at the same time the acceptance rate raised 48,07%. To sum it up, the introduction of waiting times, delivery time windows and the local search optimization routine lead to the following decisive improvements: The assumptions were adapted to a more realistic model. The rate of accepted demands has increased. Costs per demand have decreased. Memory leaks were reduced. 15
17 References [1] M. Caramia, G. F. Italiano, G. Oriolo, A. Pacifici, A. Perugia: Routing a fleet of vehicles for dynamic combined pickup and delivery services; Proceedings of the Symposium on Operation Research 2001, 3-8; Springer-Verlag Berlin/Heidelberg [2] P. E. Hart, N. J. Nilsson, B. Raphael: A Formal Basis for the Heuristic Determination of Minimum Cost Paths; IEEE transactions of systems science and cybernetics, Vol. 4, No.2, 1968 [3] A. Potini, G. Viola: CabDispatcher: sistema software per l instradamento di una flotta di veicoli nell ambito di un servizio di trasporto collettivo; Rome, March
Online Dial-A-Ride Problem with Time Windows: an exact algorithm using status vectors
Online Dial-A-Ride Problem with Time Windows: an exact algorithm using status vectors A. Fabri 1 and P. Recht 2 1 Universität Dortmund a.fabri@wiso.uni-dortmund.de 2 Universität Dortmund p.recht@wiso.uni-dortmund.de
More informationIntroduction to Approximation Algorithms
Introduction to Approximation Algorithms Dr. Gautam K. Das Departmet of Mathematics Indian Institute of Technology Guwahati, India gkd@iitg.ernet.in February 19, 2016 Outline of the lecture Background
More informationBranch-and-Bound Algorithms for Constrained Paths and Path Pairs and Their Application to Transparent WDM Networks
Branch-and-Bound Algorithms for Constrained Paths and Path Pairs and Their Application to Transparent WDM Networks Franz Rambach Student of the TUM Telephone: 0049 89 12308564 Email: rambach@in.tum.de
More informationThe Service-Time Restricted Capacitated Arc Routing Problem
The Service-Time Restricted Capacitated Arc Routing Problem Lise Lystlund Aarhus University Århus, Denmark Sanne Wøhlk CORAL - Centre of OR Applications in Logistics, Aarhus School of Business, Aarhus
More informationCrew Scheduling Problem: A Column Generation Approach Improved by a Genetic Algorithm. Santos and Mateus (2007)
In the name of God Crew Scheduling Problem: A Column Generation Approach Improved by a Genetic Algorithm Spring 2009 Instructor: Dr. Masoud Yaghini Outlines Problem Definition Modeling As A Set Partitioning
More informationUNIT 4 Branch and Bound
UNIT 4 Branch and Bound General method: Branch and Bound is another method to systematically search a solution space. Just like backtracking, we will use bounding functions to avoid generating subtrees
More informationSearching with Partial Information
Searching with Partial Information Above we (unrealistically) assumed that the environment is fully observable and deterministic Moreover, we assumed that the agent knows what the effects of each action
More informationVehicle Routing Heuristic Methods
DM87 SCHEDULING, TIMETABLING AND ROUTING Outline 1. Construction Heuristics for VRPTW Lecture 19 Vehicle Routing Heuristic Methods 2. Local Search 3. Metaheuristics Marco Chiarandini 4. Other Variants
More informationAdvanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras
Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Lecture 28 Chinese Postman Problem In this lecture we study the Chinese postman
More informationDynamic Vehicle Routing Using Hybrid Genetic Algorithms
Proceedings of the 1999 EEE nternational Conference on Robotics & Automation Detroit, Michigan May 1999 Dynamic Vehicle Routing Using Hybrid Genetic Algorithms Wan-rong Jih jih@robot.csie.ntu.edu.tw Jane
More informationNotes for Lecture 24
U.C. Berkeley CS170: Intro to CS Theory Handout N24 Professor Luca Trevisan December 4, 2001 Notes for Lecture 24 1 Some NP-complete Numerical Problems 1.1 Subset Sum The Subset Sum problem is defined
More informationCopyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch.
Iterative Improvement Algorithm design technique for solving optimization problems Start with a feasible solution Repeat the following step until no improvement can be found: change the current feasible
More informationval(y, I) α (9.0.2) α (9.0.3)
CS787: Advanced Algorithms Lecture 9: Approximation Algorithms In this lecture we will discuss some NP-complete optimization problems and give algorithms for solving them that produce a nearly optimal,
More information3 SOLVING PROBLEMS BY SEARCHING
48 3 SOLVING PROBLEMS BY SEARCHING A goal-based agent aims at solving problems by performing actions that lead to desirable states Let us first consider the uninformed situation in which the agent is not
More informationBranch-price-and-cut for vehicle routing. Guy Desaulniers
Guy Desaulniers Professor, Polytechnique Montréal, Canada Director, GERAD, Canada VeRoLog PhD School 2018 Cagliari, Italy, June 2, 2018 Outline 1 VRPTW definition 2 Mathematical formulations Arc-flow formulation
More informationCS 372: Computational Geometry Lecture 10 Linear Programming in Fixed Dimension
CS 372: Computational Geometry Lecture 10 Linear Programming in Fixed Dimension Antoine Vigneron King Abdullah University of Science and Technology November 7, 2012 Antoine Vigneron (KAUST) CS 372 Lecture
More information3 No-Wait Job Shops with Variable Processing Times
3 No-Wait Job Shops with Variable Processing Times In this chapter we assume that, on top of the classical no-wait job shop setting, we are given a set of processing times for each operation. We may select
More informationCMSC 451: Lecture 22 Approximation Algorithms: Vertex Cover and TSP Tuesday, Dec 5, 2017
CMSC 451: Lecture 22 Approximation Algorithms: Vertex Cover and TSP Tuesday, Dec 5, 2017 Reading: Section 9.2 of DPV. Section 11.3 of KT presents a different approximation algorithm for Vertex Cover. Coping
More informationComputational Complexity CSC Professor: Tom Altman. Capacitated Problem
Computational Complexity CSC 5802 Professor: Tom Altman Capacitated Problem Agenda: Definition Example Solution Techniques Implementation Capacitated VRP (CPRV) CVRP is a Vehicle Routing Problem (VRP)
More informationBidirectional search and Goal-directed Dijkstra
Computing the shortest path Bidirectional search and Goal-directed Dijkstra Alexander Kozyntsev October 18, 2010 Abstract We study the problem of finding a shortest path between two vertices in a directed
More informationEXERCISES SHORTEST PATHS: APPLICATIONS, OPTIMIZATION, VARIATIONS, AND SOLVING THE CONSTRAINED SHORTEST PATH PROBLEM. 1 Applications and Modelling
SHORTEST PATHS: APPLICATIONS, OPTIMIZATION, VARIATIONS, AND SOLVING THE CONSTRAINED SHORTEST PATH PROBLEM EXERCISES Prepared by Natashia Boland 1 and Irina Dumitrescu 2 1 Applications and Modelling 1.1
More informationScheduling in Multiprocessor System Using Genetic Algorithms
Scheduling in Multiprocessor System Using Genetic Algorithms Keshav Dahal 1, Alamgir Hossain 1, Benzy Varghese 1, Ajith Abraham 2, Fatos Xhafa 3, Atanasi Daradoumis 4 1 University of Bradford, UK, {k.p.dahal;
More informationColumn Generation Method for an Agent Scheduling Problem
Column Generation Method for an Agent Scheduling Problem Balázs Dezső Alpár Jüttner Péter Kovács Dept. of Algorithms and Their Applications, and Dept. of Operations Research Eötvös Loránd University, Budapest,
More informationConstraint Satisfaction Problems
Constraint Satisfaction Problems Greedy Local Search Bernhard Nebel, Julien Hué, and Stefan Wölfl Albert-Ludwigs-Universität Freiburg June 19, 2007 Nebel, Hué and Wölfl (Universität Freiburg) Constraint
More information5. Lecture notes on matroid intersection
Massachusetts Institute of Technology Handout 14 18.433: Combinatorial Optimization April 1st, 2009 Michel X. Goemans 5. Lecture notes on matroid intersection One nice feature about matroids is that a
More information6 ROUTING PROBLEMS VEHICLE ROUTING PROBLEMS. Vehicle Routing Problem, VRP:
6 ROUTING PROBLEMS VEHICLE ROUTING PROBLEMS Vehicle Routing Problem, VRP: Customers i=1,...,n with demands of a product must be served using a fleet of vehicles for the deliveries. The vehicles, with given
More informationOptimal tour along pubs in the UK
1 From Facebook Optimal tour along 24727 pubs in the UK Road distance (by google maps) see also http://www.math.uwaterloo.ca/tsp/pubs/index.html (part of TSP homepage http://www.math.uwaterloo.ca/tsp/
More informationProblem Set 6 (Due: Wednesday, December 6, 2006)
Urban OR Fall 2006 Problem Set 6 (Due: Wednesday, December 6, 2006) Problem 1 Problem 6.6 in Larson and Odoni Problem 2 Exercise 6.7 (page 442) in Larson and Odoni. Problem Suppose we have a network G(N,
More informationLecture 1. 2 Motivation: Fast. Reliable. Cheap. Choose two.
Approximation Algorithms and Hardness of Approximation February 19, 2013 Lecture 1 Lecturer: Ola Svensson Scribes: Alantha Newman 1 Class Information 4 credits Lecturers: Ola Svensson (ola.svensson@epfl.ch)
More informationA comparison of two new exact algorithms for the robust shortest path problem
TRISTAN V: The Fifth Triennal Symposium on Transportation Analysis 1 A comparison of two new exact algorithms for the robust shortest path problem Roberto Montemanni Luca Maria Gambardella Alberto Donati
More informationConflict-free Real-time AGV Routing
Conflict-free Real-time AGV Routing Rolf H. Möhring, Ekkehard Köhler, Ewgenij Gawrilow, and Björn Stenzel Technische Universität Berlin, Institut für Mathematik, MA 6-1, Straße des 17. Juni 136, 1623 Berlin,
More informationModule 4. Constraint satisfaction problems. Version 2 CSE IIT, Kharagpur
Module 4 Constraint satisfaction problems Lesson 10 Constraint satisfaction problems - II 4.5 Variable and Value Ordering A search algorithm for constraint satisfaction requires the order in which variables
More informationFundamentals of Operations Research. Prof. G. Srinivasan. Department of Management Studies. Indian Institute of Technology, Madras. Lecture No.
Fundamentals of Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Lecture No. # 13 Transportation Problem, Methods for Initial Basic Feasible
More informationGreedy algorithms Or Do the right thing
Greedy algorithms Or Do the right thing March 1, 2005 1 Greedy Algorithm Basic idea: When solving a problem do locally the right thing. Problem: Usually does not work. VertexCover (Optimization Version)
More informationVariable Neighborhood Search for the Dial-a-Ride Problem
Variable Neighborhood Search for the Dial-a-Ride Problem Sophie N. Parragh, Karl F. Doerner, Richard F. Hartl Department of Business Administration, University of Vienna, Bruenner Strasse 72, 1210 Vienna,
More informationTechnische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik. Combinatorial Optimization (MA 4502)
Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik Combinatorial Optimization (MA 4502) Dr. Michael Ritter Problem Sheet 4 Homework Problems Problem
More information6. Lecture notes on matroid intersection
Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans May 2, 2017 6. Lecture notes on matroid intersection One nice feature about matroids is that a simple greedy algorithm
More informationDistributed minimum spanning tree problem
Distributed minimum spanning tree problem Juho-Kustaa Kangas 24th November 2012 Abstract Given a connected weighted undirected graph, the minimum spanning tree problem asks for a spanning subtree with
More informationIMPLEMENTATION OF A FIXING STRATEGY AND PARALLELIZATION IN A RECENT GLOBAL OPTIMIZATION METHOD
IMPLEMENTATION OF A FIXING STRATEGY AND PARALLELIZATION IN A RECENT GLOBAL OPTIMIZATION METHOD Figen Öztoprak, Ş.İlker Birbil Sabancı University Istanbul, Turkey figen@su.sabanciuniv.edu, sibirbil@sabanciuniv.edu
More informationMethods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem
Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem L. De Giovanni M. Di Summa The Traveling Salesman Problem (TSP) is an optimization problem on a directed
More informationInterrupts and real time
Page 1 of 7 Interrupts and real time Problem 1. A computer system has three devices whose characteristics are summarized in the following table: Device Service Time Interrupt Frequency Allowable Latency
More informationPiecewise Defined Functions
Piecewise Defined Functions Most of the functions that we ve looked at this semester can be expressed as a single equation. For example, f(x) =3x 2 5x +2,org(x) = x 1, or h(x) =e 3x 1. Sometimes an equation
More informationLast topic: Summary; Heuristics and Approximation Algorithms Topics we studied so far:
Last topic: Summary; Heuristics and Approximation Algorithms Topics we studied so far: I Strength of formulations; improving formulations by adding valid inequalities I Relaxations and dual problems; obtaining
More informationThe Join the Club Interpretation of Some. Graph Algorithms
The Join the Club Interpretation of Some Graph Algorithms Harold Reiter Isaac Sonin June 8, 2000 Abstract Several important tree construction algorithms of graph theory are described and discussed using
More informationTheorem 2.9: nearest addition algorithm
There are severe limits on our ability to compute near-optimal tours It is NP-complete to decide whether a given undirected =(,)has a Hamiltonian cycle An approximation algorithm for the TSP can be used
More informationP and NP CISC4080, Computer Algorithms CIS, Fordham Univ. Instructor: X. Zhang
P and NP CISC4080, Computer Algorithms CIS, Fordham Univ. Instructor: X. Zhang Efficient Algorithms So far, we have developed algorithms for finding shortest paths in graphs, minimum spanning trees in
More informationAlgorithms for Euclidean TSP
This week, paper [2] by Arora. See the slides for figures. See also http://www.cs.princeton.edu/~arora/pubs/arorageo.ps Algorithms for Introduction This lecture is about the polynomial time approximation
More informationDiscrete Optimization. Lecture Notes 2
Discrete Optimization. Lecture Notes 2 Disjunctive Constraints Defining variables and formulating linear constraints can be straightforward or more sophisticated, depending on the problem structure. The
More informationMathematical and Algorithmic Foundations Linear Programming and Matchings
Adavnced Algorithms Lectures Mathematical and Algorithmic Foundations Linear Programming and Matchings Paul G. Spirakis Department of Computer Science University of Patras and Liverpool Paul G. Spirakis
More informationOnline Graph Exploration
Distributed Computing Online Graph Exploration Semester thesis Simon Hungerbühler simonhu@ethz.ch Distributed Computing Group Computer Engineering and Networks Laboratory ETH Zürich Supervisors: Sebastian
More informationOutline. Optimales Recycling - Tourenplanung in der Altglasentsorgung
1 Optimales Recycling - Ruhr-Universität Bochum, 15.02.2013 2 1. Introduction and Motivation 2. Problem Definition 3. Literature Review 4. Mathematical Model 5. Variable Neighborhood Search 6. Numerical
More informationKanban Size and its Effect on JIT Production Systems
Kanban Size and its Effect on JIT Production Systems Ing. Olga MAŘÍKOVÁ 1. INTRODUCTION Integrated planning, formation, carrying out and controlling of tangible and with them connected information flows
More informationSource. Sink. Chapter 10: Iterative Programming Maximum Flow Problem. CmSc250 Intro to Algorithms
Chapter 10: Iterative Programming Maximum Flow Problem CmSc20 Intro to Algorithms A flow network is a model of a system where some material is produced at its source, travels through the system, and is
More informationMATH3016: OPTIMIZATION
MATH3016: OPTIMIZATION Lecturer: Dr Huifu Xu School of Mathematics University of Southampton Highfield SO17 1BJ Southampton Email: h.xu@soton.ac.uk 1 Introduction What is optimization? Optimization is
More information(Refer Slide Time: 01:00)
Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Lecture minus 26 Heuristics for TSP In this lecture, we continue our discussion
More informationThe Traveling Salesperson Problem with Forbidden Neighborhoods on Regular 3D Grids
The Traveling Salesperson Problem with Forbidden Neighborhoods on Regular 3D Grids Anja Fischer, Philipp Hungerländer 2, and Anna Jellen 2 Tehnische Universität Dortmund, Germany, anja2.fischer@tu-dortmund.de,
More informationCSE 417 Branch & Bound (pt 4) Branch & Bound
CSE 417 Branch & Bound (pt 4) Branch & Bound Reminders > HW8 due today > HW9 will be posted tomorrow start early program will be slow, so debugging will be slow... Review of previous lectures > Complexity
More informationThe Heuristic Strategy Implementation to the Hopfield -Tank TSP Neural Algorithm
The Heuristic Strategy Implementation to the Hopfield -Tank TSP Neural Algorithm N. Kovač, S. Bauk Faculty of Maritime Studies, University of Montenegro Dobrota 36, 85 330 Kotor, Serbia and Montenegro
More information15.082J and 6.855J. Lagrangian Relaxation 2 Algorithms Application to LPs
15.082J and 6.855J Lagrangian Relaxation 2 Algorithms Application to LPs 1 The Constrained Shortest Path Problem (1,10) 2 (1,1) 4 (2,3) (1,7) 1 (10,3) (1,2) (10,1) (5,7) 3 (12,3) 5 (2,2) 6 Find the shortest
More informationP and NP CISC5835, Algorithms for Big Data CIS, Fordham Univ. Instructor: X. Zhang
P and NP CISC5835, Algorithms for Big Data CIS, Fordham Univ. Instructor: X. Zhang Efficient Algorithms So far, we have developed algorithms for finding shortest paths in graphs, minimum spanning trees
More informationUnit 8: Coping with NP-Completeness. Complexity classes Reducibility and NP-completeness proofs Coping with NP-complete problems. Y.-W.
: Coping with NP-Completeness Course contents: Complexity classes Reducibility and NP-completeness proofs Coping with NP-complete problems Reading: Chapter 34 Chapter 35.1, 35.2 Y.-W. Chang 1 Complexity
More informationApproximation Algorithms
Approximation Algorithms Subhash Suri June 5, 2018 1 Figure of Merit: Performance Ratio Suppose we are working on an optimization problem in which each potential solution has a positive cost, and we want
More informationBasic Motion Planning Algorithms
Basic Motion Planning Algorithms Sohaib Younis Intelligent Robotics 7 January, 2013 1 Outline Introduction Environment Map Dijkstra's algorithm A* algorithm Summary 2 Introduction Definition: Motion Planning
More informationOn the Max Coloring Problem
On the Max Coloring Problem Leah Epstein Asaf Levin May 22, 2010 Abstract We consider max coloring on hereditary graph classes. The problem is defined as follows. Given a graph G = (V, E) and positive
More informationCh 4 : CPU scheduling
Ch 4 : CPU scheduling It's the basis of multiprogramming operating systems. By switching the CPU among processes, the operating system can make the computer more productive In a single-processor system,
More informationarxiv:cs/ v1 [cs.ds] 20 Feb 2003
The Traveling Salesman Problem for Cubic Graphs David Eppstein School of Information & Computer Science University of California, Irvine Irvine, CA 92697-3425, USA eppstein@ics.uci.edu arxiv:cs/0302030v1
More informationAdvanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras
Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Lecture - 35 Quadratic Programming In this lecture, we continue our discussion on
More informationA CSP Search Algorithm with Reduced Branching Factor
A CSP Search Algorithm with Reduced Branching Factor Igor Razgon and Amnon Meisels Department of Computer Science, Ben-Gurion University of the Negev, Beer-Sheva, 84-105, Israel {irazgon,am}@cs.bgu.ac.il
More informationSolving Large Aircraft Landing Problems on Multiple Runways by Applying a Constraint Programming Approach
Solving Large Aircraft Landing Problems on Multiple Runways by Applying a Constraint Programming Approach Amir Salehipour School of Mathematical and Physical Sciences, The University of Newcastle, Australia
More informationAssignment 5: Solutions
Algorithm Design Techniques Assignment 5: Solutions () Port Authority. [This problem is more commonly called the Bin Packing Problem.] (a) Suppose K = 3 and (w, w, w 3, w 4 ) = (,,, ). The optimal solution
More informationSolution for Homework set 3
TTIC 300 and CMSC 37000 Algorithms Winter 07 Solution for Homework set 3 Question (0 points) We are given a directed graph G = (V, E), with two special vertices s and t, and non-negative integral capacities
More informationFoundations of Computing
Foundations of Computing Darmstadt University of Technology Dept. Computer Science Winter Term 2005 / 2006 Copyright c 2004 by Matthias Müller-Hannemann and Karsten Weihe All rights reserved http://www.algo.informatik.tu-darmstadt.de/
More informationDistributed Simulation for Structural VHDL Netlists
Distributed Simulation for Structural VHDL Netlists Werner van Almsick 1, Wilfried Daehn 1, David Bernstein 2 1 SICAN GmbH, Germany 2 Vantage Analysis Systems, USA Abstract: This article describes the
More informationCommando: Solution. Solution 3 O(n): Consider two decisions i<j, we choose i instead of j if and only if : A S j S i
Commando: Solution Commando: Solution Solution 1 O(n 3 ): Using dynamic programming, let f(n) indicate the maximum battle effectiveness after adjustment. We have transfer equations below: n f(n) = max
More informationAlgorithms and Experimental Study for the Traveling Salesman Problem of Second Order. Gerold Jäger
Algorithms and Experimental Study for the Traveling Salesman Problem of Second Order Gerold Jäger joint work with Paul Molitor University Halle-Wittenberg, Germany August 22, 2008 Overview 1 Introduction
More informationDominance Constraints and Dominance Graphs
Dominance Constraints and Dominance Graphs David Steurer Saarland University Abstract. Dominance constraints logically describe trees in terms of their adjacency and dominance, i.e. reachability, relation.
More information7KH9HKLFOH5RXWLQJSUREOHP
7K9KO5RXWJSUREOP Given a set of vehicles with a certain capacity located at a depot and a set of customers with different demands at various locations, the vehicle routing problem (VRP) is how to satisfy
More informationUNIT 3. Greedy Method. Design and Analysis of Algorithms GENERAL METHOD
UNIT 3 Greedy Method GENERAL METHOD Greedy is the most straight forward design technique. Most of the problems have n inputs and require us to obtain a subset that satisfies some constraints. Any subset
More informationCOMP 355 Advanced Algorithms Approximation Algorithms: VC and TSP Chapter 11 (KT) Section (CLRS)
COMP 355 Advanced Algorithms Approximation Algorithms: VC and TSP Chapter 11 (KT) Section 35.1-35.2(CLRS) 1 Coping with NP-Completeness Brute-force search: This is usually only a viable option for small
More information35 Approximation Algorithms
35 Approximation Algorithms Many problems of practical significance are NP-complete, yet they are too important to abandon merely because we don t know how to find an optimal solution in polynomial time.
More informationMLR Institute of Technology
Course Name : Engineering Optimization Course Code : 56021 Class : III Year Branch : Aeronautical Engineering Year : 2014-15 Course Faculty : Mr Vamsi Krishna Chowduru, Assistant Professor Course Objective
More informationPreprint Stephan Dempe, Alina Ruziyeva The Karush-Kuhn-Tucker optimality conditions in fuzzy optimization ISSN
Fakultät für Mathematik und Informatik Preprint 2010-06 Stephan Dempe, Alina Ruziyeva The Karush-Kuhn-Tucker optimality conditions in fuzzy optimization ISSN 1433-9307 Stephan Dempe, Alina Ruziyeva The
More informationGraph Theory. Chapter 4.
Graph Theory. Chapter 4. Wandering. Here is an algorithm, due to Tarry, that constructs a walk in a connected graph, starting at any vertex v 0, traversing each edge exactly once in each direction, and
More informationHow to Sort by Walking on a Tree
How to Sort by Walking on a Tree Daniel Graf ETH Zürich, Department of Computer Science grafdan@ethz.ch Abstract. Consider a graph G with n vertices. On each vertex we place a box. These n vertices and
More informationCOMP3121/3821/9101/ s1 Assignment 1
Sample solutions to assignment 1 1. (a) Describe an O(n log n) algorithm (in the sense of the worst case performance) that, given an array S of n integers and another integer x, determines whether or not
More informationSimple Graph. General Graph
Graph Theory A graph is a collection of points (also called vertices) and lines (also called edges), with each edge ending at a vertex In general, it is allowed for more than one edge to have the same
More informationUsing Column Generation for the Pickup and Delivery Problem with Disturbances
Master Thesis Using Column Generation for the Pickup and Delivery Problem with Disturbances Author: Dirk Koning Supervisors: dr. ir. J.M. van den Akker dr. J.A. Hoogeveen Thesis number: ICA-0319791 June
More informationRecursive column generation for the Tactical Berth Allocation Problem
Recursive column generation for the Tactical Berth Allocation Problem Ilaria Vacca 1 Matteo Salani 2 Michel Bierlaire 1 1 Transport and Mobility Laboratory, EPFL, Lausanne, Switzerland 2 IDSIA, Lugano,
More informationA genetic algorithm for kidney transplantation matching
A genetic algorithm for kidney transplantation matching S. Goezinne Research Paper Business Analytics Supervisors: R. Bekker and K. Glorie March 2016 VU Amsterdam Faculty of Exact Sciences De Boelelaan
More informationLinear Programming in Small Dimensions
Linear Programming in Small Dimensions Lekcija 7 sergio.cabello@fmf.uni-lj.si FMF Univerza v Ljubljani Edited from slides by Antoine Vigneron Outline linear programming, motivation and definition one dimensional
More informationMethods and Models for Combinatorial Optimization Modeling by Linear Programming
Methods and Models for Combinatorial Optimization Modeling by Linear Programming Luigi De Giovanni, Marco Di Summa 1 Linear programming models Linear programming models are a special class of mathematical
More informationFault tolerant TTCAN networks
Fault tolerant TTCAN networks B. MŸller, T. FŸhrer, F. Hartwich, R. Hugel, H. Weiler, Robert Bosch GmbH TTCAN is a time triggered layer using the CAN protocol to communicate in a time triggered fashion.
More informationCS261: A Second Course in Algorithms Lecture #16: The Traveling Salesman Problem
CS61: A Second Course in Algorithms Lecture #16: The Traveling Salesman Problem Tim Roughgarden February 5, 016 1 The Traveling Salesman Problem (TSP) In this lecture we study a famous computational problem,
More informationWelfare Navigation Using Genetic Algorithm
Welfare Navigation Using Genetic Algorithm David Erukhimovich and Yoel Zeldes Hebrew University of Jerusalem AI course final project Abstract Using standard navigation algorithms and applications (such
More informationAdvanced Algorithms Class Notes for Monday, October 23, 2012 Min Ye, Mingfu Shao, and Bernard Moret
Advanced Algorithms Class Notes for Monday, October 23, 2012 Min Ye, Mingfu Shao, and Bernard Moret Greedy Algorithms (continued) The best known application where the greedy algorithm is optimal is surely
More informationRegensburger DISKUSSIONSBEITRÄGE zur Wirtschaftswissenschaft
Regensburger DISKUSSIONSBEITRÄGE zur Wirtschaftswissenschaft A Cluster Based Scatter Search Heuristic for the Vehicle Routing Problem University of Regensburg Discussion Papers in Economics No. 415, November
More information56:272 Integer Programming & Network Flows Final Examination -- December 14, 1998
56:272 Integer Programming & Network Flows Final Examination -- December 14, 1998 Part A: Answer any four of the five problems. (15 points each) 1. Transportation problem 2. Integer LP Model Formulation
More informationTravelling Salesman Problem: Tabu Search
Travelling Salesman Problem: Tabu Search (Anonymized) April 2017 Abstract The Tabu Search algorithm is a heuristic method to find optimal solutions to the Travelling Salesman Problem (TSP). It is a local
More informationA Tabu Search solution algorithm
Chapter 5 A Tabu Search solution algorithm The TS examines a trajectory sequence of solutions and moves to the best neighbor of the current solution. To avoid cycling, solutions that were recently examined
More informationLECTURES 3 and 4: Flows and Matchings
LECTURES 3 and 4: Flows and Matchings 1 Max Flow MAX FLOW (SP). Instance: Directed graph N = (V,A), two nodes s,t V, and capacities on the arcs c : A R +. A flow is a set of numbers on the arcs such that
More information