Metadata-Version: 2.1
Name: vrpy
Version: 0.1.0
Summary: A python framework for solving vehicle routing problems
Home-page: https://github.com/Kuifje02/vrpy
Author: Romain Montagne, David Torres
Author-email: r.montagne@hotmail.fr
License: MIT
Keywords: vehicle routing problem,vrp,column generation
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Description-Content-Type: text/x-rst
Requires-Dist: cspy
Requires-Dist: networkx
Requires-Dist: numpy
Requires-Dist: pulp

VRPy
====

VRPy is a python framework for solving Vehicle Routing Problems (VRP) including:

-   the Capacitated VRP (CVRP),
-   the CVRP with resource constraints,
-   the CVRP with time windows (CVRPTW),
-   the CVRP with simultaneous distribution and collection (CVRPSDC).

Check out the docs_ to find more variants and options.

.. _docs : https://vrpy.readthedocs.io/en/latest/

Simple example
--------------

.. code:: python

	>>> from networkx import DiGraph
	>>> from vrpy import VehicleRoutingProblem

	# Define the network
	>>> G = DiGraph()
	>>> G.add_edge("Source",1,cost=1,time=2)
	>>> G.add_edge("Source",2,cost=2,time=1)
	>>> G.add_edge(1,"Sink",cost=0,time=2)
	>>> G.add_edge(2,"Sink",cost=2,time=3)
	>>> G.add_edge(1,2,cost=1,time=1)
	>>> G.add_edge(2,1,cost=1,time=1)

	# Define the customers demands
	>>> G.nodes[1]["demand"] = 5
	>>> G.nodes[2]["demand"] = 4

	# Define the Vehicle Routing Problem
	>>> prob = VehicleRoutingProblem(G, load_capacity=10, duration=5)

	# Solve and display solution value
	>>> prob.solve()
	>>> print(prob.best_value)
	3
	>>> print(prob.best_routes)
	{1: ["Source",2,1,"Sink"]}

Install
-------

.. code:: sh

	pip install vrpy


Requirements
------------

	cspy_

	NetworkX_

	numpy_

	PuLP_

.. _cspy : https://pypi.org/project/cspy/
.. _NetworkX : https://pypi.org/project/networkx/
.. _numpy : https://pypi.org/project/numpy/
.. _PuLP : https://pypi.org/project/PuLP/

Documentation
-------------

Documentation is found here_.

.. _here : https://vrpy.readthedocs.io/en/latest/

Running the tests
-----------------

Unit Tests
~~~~~~~~~~

.. code:: sh

	cd tests
	pytest unittests/


Bugs
----

Please report any bugs that you find in the issues_ section. Or, even better, fork the repository on GitHub_ and create a pull request. Any contributions are welcome.

.. _issues : https://github.com/Kuifje02/vrpy/issues
.. _GitHub : https://github.com/Kuifje02/vrpy 

