Skip to main content

A python package for operations research and data science problems.

Project description

(In Development)

python package


A library for operations research and data science.

implementation types

  • graph theory
  • genetic algorithm
  • simulation
  • machine learning

motivation behind the project


  1. Open-source software development
  2. Data Science
  3. Operations Research
  4. Financial Engineering
  5. Visualizations in Python or JavaScript
  6. Big splash! NumPy, Pandas, D3.js, Plotly, Matplotlib, IPython and jupyter, scikit-learn and SciPy, git, Google OR Tools (ortools), Pyomo, Supply Chain Guru, Keras, Hadoop, AWS, GCP, Vagrant

Development & Documentation

pyords Bundles

Bundles are self-contained problem definitions implemented as modular instances. That's wanna-be fancy for packaged units of code that are very plug-in and play. Contributing to Bundle development:

  1. Design the problem as a Case where the Case can be tested against various Bundles that solve the problem defined in the Case. For the purposes of this README we'll use VrpVehicleCase. Cases must help define what is required of a feature implementation (or the improvement of one). For our VrpVehicleCase we'll assume a set of data and configurations for basic vrp model requirements and a desired output of optimized vehicles to append to our data.

  2. Build a Bundle. The bundle should be specific to the Case(s) it solves. Maybe you see where I'm going with this. There are two core components of this library:

    • Bundles
    • Cases
  3. Test the Case against its Bundle.

  4. Submit implementation with documentation supporting the reason for its development.


  • defines allowable data for one or many vehicles outputs via vrp optimization
  • defines input expectations & tests
  • defines Case expectations & tests
  • defines output expectations & tests
  • related:
    • GeoBundle
    • OrBundle


  • processed zipcode outputs, lat and lon outputs, haversine distance outputs, and lat and lon cluster outputs
  • integrations:
  • related:
    • ZipcodeCleanCase
    • LatLonCase
    • LatLonDistanceCase
    • LatLonClusterCase


  • operations research optimizations: vrp, network optimization, scheduling.
  • opportunity analysis, health checks.
  • implementations:
    • Vrp optimization via Google OrTools
    • Schedule optimization via Genetic Algorithm
  • integrations:

using pyords Bundles for vehicle optimization

import pyords as pyr

df = pd.read_csv('my_shipment_data.csv')

# TODO: implement this bundle (currently not refactored)
geobndl = pyr.GeoBundle(zipcodes=df.zipcodes)
lats, lons = geo_bndl.pgeo('US')
matrix = geobndl.haversine_all_from(origin=origin, 'mi')
clusters = geobndl.cluster(by='geocodes')

vrpbndl = pyr.VrpBundle(matrix=matrix, demand=df.pallets)
df =

Testing pyords Bundles :white_check_mark:

import pyords as pyr

class VrpVehicleCase:
    inputs = {
        'matrix': [[0, 1, 2], [1, 0, 2], [2, 2, 0]],
        'demand': [0, 3, 4],
        'max_vehicle_capacity': 5,
        'partitions': [1, 1, 1],
        'max_search_seconds': 30

    outputs = {
        'vehicle_id': [1, 2]

    implementation = None # TODO: pyr.ortools.vrp

    def run(self):
        bndl = pyr.VrpBundle(case=self)

        assert bndl.test()

        return self

if __name__ == '__main__':

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

pyords-0.0.9.tar.gz (17.4 kB view hashes)

Uploaded source

Built Distribution

pyords-0.0.9-py3-none-any.whl (20.6 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page