Version 14 (modified by Adhitya Kamakshidasan, 9 years ago) ( diff )


BluePrint: Vehicle Routing


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:



  • 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.


<Group requirements in subsections, e.g. etc.> < requirements> <Identify different types of requirements:>





System Constraints


<Where relevant include alternative design options>

Data Model

(e.g. EER or class diagrams)


  1. Request for resources, has come into the database (some generic request, by anyone)
  2. Warehouse manager, gets the details of the shelters and resources to supply
  3. Fleet Manager, supplies to the warehouse, with vehicles
  4. VRP Module is run upon
  5. This gives the following output
    • Route for each vehicle
    • Cost per vehicle
    • Resources in each vehicle
    • Time to reach shelter, by each Vehicle
  6. Cost per vehicle, is given to Finance Officer, for approval
  7. Route and Cost per vehicle, is given to each Driver
  8. Time to reach shelter, by each Vehicle, is given to respective Volunteers
  9. Journey begins

Site Map

<for User Interface solutions>


<for User Interface solutions>


Current Implementation

<Leave open for a list of existing implementation of this solution in Sahana Eden:> <*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


  • A transportation network
  • A single supplier, having a fleet of vehicles of given capacities, and a warehouse of goods
  • A set of demands (who, what, when)


  • All routes in the transportation network, are accessible
  • Sufficient vehicles
  • Sufficient drivers
  • Sufficient fuel
  • Vehicles transport all the fuel they need for transport
  • Minimizing total distance also minimizes delivery time


  • Satisfy all demands within their time windows
  • Minimize total distance

Future Extensions

<List of features which could be included, but are outside of the scope of this extension>

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

<Questions about the features or design that haven't been (and need to be) answered>


<Links to external resources>


Note: See TracWiki for help on using the wiki.