= !BluePrint: Vehicle Routing = [[TOC]] == Introduction == The Vehicle Routing Problem (VRP), tries to optimise the transportation of resources from a warehouse, to various other shelters, based on a variety of factors. Another motivation of this module, is to provide an appropriate planning mechanism, for the users involved. The main aim, of this module, is to get rid of any manual calculations, during this optimisation. This solution results in: * Better management of routing vehicles * Route planning for resources This module is basically an extension of this problem: http://en.wikipedia.org/wiki/Vehicle_routing_problem == Stakeholders == ''' Users ''' * Supplier (Warehouse) (includes Warehouse Manager, Fleet Manager, Finance Officer) * Shelter (includes Volunteers at Shelter) * Transport Staffers (Driver) ''' Who are affected? ''' * Sahana Developers - Few of the models, should be tweaked * Warehouse - Extra information to be provided about capacity of vehicles * Transport Staffers - Additional communication about routes to be taken * Volunteers at Shelter - Additional data, about arrival time(s) of resources == User Stories == * Supplier wants the solution to, share the resources requested amongst his vehicles, so that, he doesn’t waste time, doing so. * Supplier wants the solution to, give an efficient route for all of his vehicles, so that, he doesn’t waste fuel, taking longer routes. * Volunteers at Shelter wants the solution to, give ETA, of the requested resources, so that, they can plan accordingly. * Volunteers at Shelter wants the solution to, tell where the current location of the dispatched resources are. * Driver wants the solution to, give the route to his vehicle. == Requirements == === Functional === === Non-functional === http://en.wikipedia.org/wiki/Non-functional_requirements === Interoperability === === Standards === === System Constraints === == Design == === Data Model === (e.g. EER or class diagrams) === Workflows === === Site Map === === Wireframes === === Technologies === == Current Implementation == <*a brief description of the implementation (date/time, name, design options chosen)> <*a link to the code> <*list of deployments of the implementation> <*links to case studies> <*short analysis of achievements/problems> == Planned Implementation == Base case: Known/Given: - a transportation network with known status of availability - a set of suppliers, having a fleet of vehicles of given capacities, and a warehouse of goods - a set of demands (who, what, when) Assumptions: - sufficient vehicles - sufficient drivers - sufficient fuel - vehicles transport all the fuel they need for transport Goal: - satisfy all demands within their time windows - minimize total distance (assume for the moment that this also minimizes delivery time) == Future Extensions == Potential features: i) delivery time windows (I have already included them into the base case) ii) minimize fuel consumption iii) maximize the number of demands satisfied iv) handle routes that suddenly become unavailable v) re-optimization of plan if routes become available again, without sending vehicles home vi) handle different types of routes (street, air, water, protection required, ...) vii) handle case of too few vehicles to transport all in one shot viii) low fuel at start ix) low fuel availability within the network to refuel vehicle x) handle time for loading/unloading xi) handle breakdowns of vehicles xii) online version with new demands coming in over time xiii) assignment of drivers to vehicles == Outstanding Questions == == References == ---- BluePrint