Presentation is loading. Please wait.

Presentation is loading. Please wait.

Solving the Vehicle Routing Problem with Multiple Multi-Capacity Vehicles Michael Sanders.

Similar presentations


Presentation on theme: "Solving the Vehicle Routing Problem with Multiple Multi-Capacity Vehicles Michael Sanders."— Presentation transcript:

1 Solving the Vehicle Routing Problem with Multiple Multi-Capacity Vehicles Michael Sanders

2 Overall Goals Create a program that given: Create a program that given: List of delivery points List of delivery points Number and capacity of vehicles Number and capacity of vehicles List of roads List of roads Return a list of routes that most efficiently utilize vehicles Return a list of routes that most efficiently utilize vehicles Efficiency undefined, but probably will be product delivered over distance traveled Efficiency undefined, but probably will be product delivered over distance traveled

3 Current Goals Create a program that given: Create a program that given: List of roads w/ geographic coordinates and address information List of roads w/ geographic coordinates and address information Returns the quickest route between those two points Returns the quickest route between those two points

4 Scope Heuristics Heuristics In both aspects of program In both aspects of program A* search A* search Used to find shortest route between two locations Used to find shortest route between two locations Will use heuristic based on geographical coordinates Will use heuristic based on geographical coordinates

5 Previous Research Vehicle Routing Problem (VRP) Vehicle Routing Problem (VRP) Extensively researched Extensively researched Solutions Solutions Agent architecture Agent architecture Used agents to represent vehicles and “auctioneer” that assigned customers to routes Used agents to represent vehicles and “auctioneer” that assigned customers to routes Ant colony optimization Ant colony optimization Could solve variants of VRP Could solve variants of VRP

6 Variants of VRP Variants Variants VRP with Time Windows (VRPTW) VRP with Time Windows (VRPTW) Requires deliveries to be in specific time ranges for each delivery Requires deliveries to be in specific time ranges for each delivery Multi-Depot VRP (MDVRP) Multi-Depot VRP (MDVRP) Multiple origins for vehicles Multiple origins for vehicles

7 Components Route finder Route finder Given two intersections, find shortest-time route between the two Given two intersections, find shortest-time route between the two Delivery route creator Delivery route creator Using list of delivery points and quantity to be delivered, utilizes other component to most efficiently deliver the product Using list of delivery points and quantity to be delivered, utilizes other component to most efficiently deliver the product

8 Route Finder Program responsible finding quickest route Program responsible finding quickest route Uses A* search with a geographic heuristic Uses A* search with a geographic heuristic Will use latitude and longitude coordinates to help find best route Will use latitude and longitude coordinates to help find best route Will use speed limit information as well to find quickest route as well Will use speed limit information as well to find quickest route as well Uses Fairfax Cty and Census data Uses Fairfax Cty and Census data

9 Distance Method def find_dist coord1, coord2 dLat=coord1[0].to_f-coord2[0].to_fdLong=coord1[1].to_f-coord2[1].to_f dLat *= 69.1703234283616#Convert to miles dLong *= (Math.cos(coord1[0].to_f* 0.0174532925199433) * 69.1703234283616) dist = Math.hypot(dLat, dLong) return dist end

10 Timeline Breadth-first search version of route finder is working Breadth-first search version of route finder is working Next goal: implement heuristic Next goal: implement heuristic Route creator will follow after that Route creator will follow after that Aiming to be done early spring in time for volunteer group’s delivery day to test program Aiming to be done early spring in time for volunteer group’s delivery day to test program

11 Testing Currently running route finder and evaluating answer against what I know to be best route Currently running route finder and evaluating answer against what I know to be best route As heuristic is implemented, results can be compared against commercially available mapping programs such as Google Maps As heuristic is implemented, results can be compared against commercially available mapping programs such as Google Maps

12 Other Information Language Language Ruby Ruby Problems Problems Road data Road data Not complete in certain fields—addresses, coordinates, speed limits, etc. Not complete in certain fields—addresses, coordinates, speed limits, etc. Delivery data is not standardized Delivery data is not standardized Road names not standard throughout list Road names not standard throughout list

13 Source of Road Data US Census Bureau US Census Bureau Sample data line:11106 75990609 A Great Neck Ct A41 3701 3899 3700 389800002230922309 51510590599478394783 541445414441600041600030103010 - 77096339+38714921 -77098977+38714251 Sample data line:11106 75990609 A Great Neck Ct A41 3701 3899 3700 389800002230922309 51510590599478394783 541445414441600041600030103010 - 77096339+38714921 -77098977+38714251

14 Things Learned Use of hash tables and array storage Use of hash tables and array storage Inprocessing of data Inprocessing of data

15 Testing Analysis Route finder is currently successful so far Route finder is currently successful so far Is capable of finding route between two addresses very close to each other Is capable of finding route between two addresses very close to each other However, is very inefficient However, is very inefficient Breadth-first search Breadth-first search Given complexity of local road network, finding a route between intersections that are far away can take days Given complexity of local road network, finding a route between intersections that are far away can take days

16 Main Points Importance of the route finder Importance of the route finder Crucial to the route creator’s ability to function Crucial to the route creator’s ability to function Ways of implementing a heuristic in the route creator Ways of implementing a heuristic in the route creator Some ideas from literature research Some ideas from literature research


Download ppt "Solving the Vehicle Routing Problem with Multiple Multi-Capacity Vehicles Michael Sanders."

Similar presentations


Ads by Google