Skip to main content

A Python simulator for generating vehicle routing (VRP), capacitated vehicle routing (CVRP) and and drone routing problems (DRP) data.

Project description

PyVRSim: Vehicle Routing Data Simulator in Python

Pyvrsim is an open-source, user-friendly Python 3 library designed for simulating data related to vehicle routing, capacitated vehicle routing, and drone routing problems. Utilizing the Google API, Pyrosim extracts real distances and estimated times between locations, enhancing the accuracy and realism of simulations.

My Logo

Installation

To install Pyvrsim, simply use pip to download and install the library from PyPI (Python Package Index). The library is at PyPI at this page https://pypi.org/project/pyvrsim.

Install Pyrosim with the following command:

pip install pyvrsim

Features

Geographical Realism

  • Integrate with geographical data sources or APIs to retrieve real-world maps, roads, and locations.
  • Allow users to specify regions of interest, and generate routing problems based on actual geographical data.

Customizable Parameters:

  • Provide a wide range of parameters for users to customize, such as the number of locations, distribution of customers, vehicle capacities, time windows, and drone capabilities.
  • Allow users to set constraints and preferences for their specific scenarios.

Seasonal Variations:

  • Introduce the concept of seasonal variations, where the characteristics of the routing problem (e.g., demand, road conditions) change based on seasons.
  • Enable users to simulate how routing problems may differ during different times of the year.

Traffic Conditions:

  • Incorporate options to simulate varying traffic conditions throughout the day.
  • Allow users to set peak hours, road closures, or traffic congestion parameters to make the generated data more dynamic.

Dynamic Customer Behavior:

  • Model dynamic customer behavior, such as changing demand patterns, cancellations, or urgency levels.
  • Introduce randomness in customer behavior to simulate real-world uncertainties.

Integration with External APIs:

  • Allow users to integrate external APIs for additional data, such as weather conditions, special events, or road closures, that can impact routing decisions.

Drone-Specific Parameters:

  • Extend the data generation for Drone Routing Problems by including parameters specific to drones, such as flight range, recharge time, and restrictions on flying over certain areas.

Data Validation:

  • Implement mechanisms to validate generated data for consistency and realism.
  • Provide feedback to users if the specified parameters result in unrealistic or impractical routing problems.

Exporting to Standard Formats:

  • Provide a visual preview of the generated data, allowing users to inspect the distribution of customers, road networks, and other relevant details before exporting.

Documentation and Examples:

  • Include comprehensive documentation with examples demonstrating how to use the data generation features effectively.
  • Provide guidance on how users can incorporate the generated data into their own projects.

VRP Variants

Classical VRP (CVRP):

  • Involves a fleet of vehicles delivering goods from a central depot to a set of customers.
  • Objective is to minimize the total distance traveled or the number of vehicles used while satisfying customer demand and capacity constraints.

VRP with Time Windows (VRPTW):

  • Adds time windows to the CVRP, where each customer has a specified time frame during which deliveries must be made.

VRP with Pickup and Delivery (VRPPD):

  • Includes both delivery and pickup locations, where vehicles must pick up and deliver goods.

VRP with Split Deliveries:

  • Permits the splitting of a customer's demand across multiple vehicles.

Stochastic VRP (SVRP):

  • Incorporates uncertainty in parameters such as travel times or customer demand.

Periodic VRP (PVRP):

  • Addresses situations where customers must be visited periodically, rather than just once.

Capacitated VRP (CVRP):

  • Introduces capacity constraints on the vehicles, ensuring that the total demand served by each vehicle does not exceed its capacity.

VRP with Multiple Depots (MDVRP):

  • Involves multiple depots from which vehicles must start and end their routes.

VRP with Time-dependent Travel Times (VRPTD):

  • Considers varying travel times based on the time of day or traffic conditions.

VRP variants with drones:

VRP with Drones (VRPD):

  • Integrates drones into the delivery process, allowing them to transport goods between the depot and customers or between customers.

VRP with Hybrid Fleet (VRPHF):

  • Involves a combination of traditional vehicles and drones in the fleet.

VRP with Drone Recharging (VRPDR):

  • Considers the need for drones to recharge their batteries during the delivery process.

VRP with Drones and Time Windows (VRPDTW):

  • Combines the time window constraints with the integration of drones.

VRP with Drones and Split Deliveries:

  • Incorporates both the capability of drones and the option to split deliveries.

VRP with Drones and Pickup-Delivery (VRPDPD):

  • Extends the VRPPD to include drones in the pickup and delivery operations.

Usage

Examples here.

Documentation

Documentation sources here.

License

My license here.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyvrsim-0.0.6.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyvrsim-0.0.6-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

File details

Details for the file pyvrsim-0.0.6.tar.gz.

File metadata

  • Download URL: pyvrsim-0.0.6.tar.gz
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.8.18

File hashes

Hashes for pyvrsim-0.0.6.tar.gz
Algorithm Hash digest
SHA256 ae16d4650e1e28f76accff051b2aa5715b4df55a773036c88536562b9f7adc9e
MD5 35fa6f0f954f6ba6fa05e52bb4ab23ea
BLAKE2b-256 075e21b1f73299c532d4ed3a88c0cdc98873d0ac28b75f8ddcde99ec0c407744

See more details on using hashes here.

File details

Details for the file pyvrsim-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: pyvrsim-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 11.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.8.18

File hashes

Hashes for pyvrsim-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 a5dde9fa9f4a9e5677a5d80a58b8c4f2fe0a82d4bacbddb3fe7874c3a20d787e
MD5 0ccf899ea011e840854b01d2ac30e369
BLAKE2b-256 80c0c35a47a4da4900687d458cbe66cf6c8a6b6b185872b6b47c8982a4188c07

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page