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.5.tar.gz (9.9 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.5-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pyvrsim-0.0.5.tar.gz
  • Upload date:
  • Size: 9.9 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.5.tar.gz
Algorithm Hash digest
SHA256 4666c411235690b6504201ed9146ed00cb317737d7dbe5a958c48092a347fb53
MD5 90cf5335cea1fdc1750a7db6b4b8f5f3
BLAKE2b-256 409af8098cb4610ce3af5c35ecadb0e72d21fa491a800393ddf223dd98b493d4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyvrsim-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 9.3 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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 0ecb2038816aae919a503677c8bf41a279035e59c7324df2cf8e9896b0356534
MD5 9b91866ac0a1133529761dfd36008407
BLAKE2b-256 beba0fb72b9cf343f550c4e2204e6ec9d934f544c40d50a73eab8b1fc8e81293

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