DYNAMIC VEHICLE ROUTING PROBLEM
description
Transcript of DYNAMIC VEHICLE ROUTING PROBLEM
![Page 1: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/1.jpg)
DYNAMIC VEHICLE ROUTING PROBLEM
![Page 2: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/2.jpg)
AGENDA Overview of the Problem Problem & Solution Representation Constructive Heuristics
Savings Algorithm Meta-heuristics Approaches
Solution Construction Greedy Randomised Adaptive Search Procedure
(GRASP) Solution Modification
Tabu Search Solution Recombination
Genetic Algorithm Dynamic Aspect of the Problem
![Page 3: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/3.jpg)
VEHICLE ROUTING PROBLEMOVERVIEW
Depot
Limited Capacity
1pm-2pm
4pm-5pm3pm-4pm
Pickup
Delivery
Last In First Out
D=7D=2
D=5D=3
D=4
D=8
D=1
D=2
![Page 4: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/4.jpg)
PROBLEM REPRESENTATION Set V = {0,1, ... ,n} of vertices
0 is depot - assigned demand of 0 (d0 =0) 1,...,n are customers – assigned demand di ≤ C
Set E of edges with ci j being the cost of going from customer i to customer j. Symmetric cost ci j = cj i
xi j k is binary decision variable whether vehicle k traverse edge (i,j)
![Page 5: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/5.jpg)
![Page 6: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/6.jpg)
![Page 7: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/7.jpg)
![Page 8: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/8.jpg)
SOLUTION REPRESENTATIONPermutation-like Coding:
(0, 7, 10, 8, 0, 1, 6, 0, 2, 9, 0, 5, 4, 3, 0)
![Page 9: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/9.jpg)
CONSTRUCTIVE HEURISTICS Start with an empty solution Construct the solution from ground up Using Heuristics – rule of thump, experience,
intuition, … Saving Algorithm
![Page 10: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/10.jpg)
SAVING ALGORITHM (CONCEPT)
![Page 11: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/11.jpg)
SAVING ALGORITHM (IMPLEMENTATION)
Initialisation: At first every customer is serviced by a separate vehicle
Calculate Saving List for every pair of customers and sort it in descending order
si j = c0 i + c0 j – ci j
Going down the Saving List, if can merger then merge . Condition: Total demand is within capacity Both customers adjacent to depot
![Page 12: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/12.jpg)
SAVING ALGORITHM (IMPLEMENTATION)
![Page 13: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/13.jpg)
![Page 14: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/14.jpg)
![Page 15: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/15.jpg)
![Page 16: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/16.jpg)
![Page 17: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/17.jpg)
![Page 18: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/18.jpg)
![Page 19: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/19.jpg)
![Page 20: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/20.jpg)
SAVING ALGORITHM(RESULT)
Total Length: 258.4
![Page 21: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/21.jpg)
META-HEURISTIC APPROACHESSOLUTION CONSTRUCTION
Greedy Randomized Adaptive Search Procedure (GRASP)
Calculate seed customers S ={ i, j, k } Create partial solution s based on seed
customers s = R = { (0, i, 0), (0, j, 0), (0, k, 0) }
Iteratively insert un-routed customers until the solution is complete
![Page 22: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/22.jpg)
CALCULATE SEED CUSTOMERS CREATION OF THE PARTIAL
ROUTES Select customers of different geographical
regions Use as few seed customers as possible
Choose customer with highest cost from depot as first seed
Iteratively selecting customers with the highest minimum cost to all other seed customers until enough
![Page 23: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/23.jpg)
CALCULATE SEED CUSTOMERS CREATION OF THE PARTIAL
ROUTES S ={ 1, 2, 3, 7 } s = R = { (0, 1, 0), (0, 2, 0), (0, 3, 0), (0, 7, 0)
} N ={ 4, 5, 6, 8, 9, 10 }
![Page 24: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/24.jpg)
ITERATIVE INSERT OF UN-ROUTED CUSTOMERS
Evaluate Un-Routed Customers Insertion priority determined by insertion
cost
![Page 25: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/25.jpg)
ITERATIVE INSERT OF UN-ROUTED CUSTOMERS
S ={ 1, 2, 3, 7 } s = R = { (0, 1, 0), (0, 2, 0), (0, 3, 0), (0, 7, 0)
} N ={ 4, 5, 6, 8, 9, 10 }
![Page 26: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/26.jpg)
ITERATIVE INSERT OF UN-ROUTED CUSTOMERS
Values are sorted in decreasing order(ip8, ip10, ip9, ip4, ip5, ip6)
Build restricted candidate list(ip8, ip10, ip9, ip4)
Choose a random customer from this list and insert at position with least cost
![Page 27: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/27.jpg)
![Page 28: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/28.jpg)
![Page 29: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/29.jpg)
![Page 30: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/30.jpg)
![Page 31: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/31.jpg)
![Page 32: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/32.jpg)
Total Length: 258.4
![Page 33: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/33.jpg)
META-HEURISTIC APPROACHESSOLUTION MODIFICATION
Tabu Search Neighbourhood Concept
Sum of the cost of the edges removed must be higher then the sum of the cost of edges inserted
![Page 34: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/34.jpg)
META-HEURISTIC APPROACHESSOLUTION MODIFICATION
Neighbourhood Concept (Extension)
![Page 35: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/35.jpg)
TABU SEARCH Iteratively remove and add edges using neighborhood
operator to improve current solution
Use a tabu listRecency-based information (short term memory)List has limited number of element
Edges removed by the neighborhood operator are added to tabu list and may not be added again to prevent cycling.
Terminate: Maximum amount of iterations Maximum allowed execution time Best known solution has not been improving
![Page 36: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/36.jpg)
META-HEURISTIC APPROACHESSOLUTION RECOMBINATION
Genetic Algorithm Operates on a on a large set of solutions
(may not be optimal) called population Build a new generation of solutions through
parent selection and crossover operator Purpose: combine properties of different
solutions and create new ones Mutation operator: preserve diversity,
prevent premature convergence Replacement operator: builds new population
out of old and new individuals
![Page 37: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/37.jpg)
GENETIC ALGORITHM Crossover operators:
A random route in parent s2 is chosen(0, 7, 2, 10, 0)
Customers of this route are removed in parent s1 s1 temp: (0, 4, 1, 0, 8, 0, 9, 5, 3, 0, 6, 0)
Removed customers are inserted one by one by GRASP method
![Page 38: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/38.jpg)
GENETIC ALGORITHM Crossover operators – result:
Mutation operator: randomly changing the solution
![Page 39: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/39.jpg)
DYNAMIC ASPECT OF VEHICLE ROUTING PROBLEM
Static VS Dynamic: information used in planning may (and is very likely to) change: Number of customers Demand of customers Number of trucks available Cost / Travelling time between customers
Approach: A daily list is prepared with available information Create a system to respond to real time request Objective: Optimal operation & Minimal
disruption to already planned daily list
![Page 40: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/40.jpg)
MY PROJECTWEB 2.0 GOOGLE MAP
APPLICATION
![Page 41: DYNAMIC VEHICLE ROUTING PROBLEM](https://reader034.fdocuments.in/reader034/viewer/2022050822/568161b4550346895dd17e69/html5/thumbnails/41.jpg)
THANK YOU!