Route13
is a framework for building simulators and optimizers for transportation networks. Route13
includes a number of naive, brute-force and heuristics based optimizers, but its pluggable architecture allows the use of more sophisticated optimizers, such as
linear programming solvers
and ML models. Route13
scenarios include forklifts in warehouses, baggage carts at airports, and trucks on highways. Basically anything that involves workers or equipment moving loads over a network while satisfying constraints around delivery times, equipment capacities, and worker schedules.
For information on how Route13
works, please see our
design documents.
Route13
is a Node.js project,
written in TypeScript.
In order to use Route13
you must have
Node installed on your machine.
Route13
has been tested with Node version 10.15.3.
Route13
is be available as an npm package. To install Route13
,
% npm install route13
To run the samples, it is best to build Route13
from sources. First, clone the repo:
% git clone https://github.com/MikeHopcroft/route13.git
Then run the following commands from the root of the repo:
% cd route13
% npm install
% npm run compile
Unit tests are based on Mocha and Chai and can be run with
% npm run test
Route13
provides a number of sample applications that demonstrate various aspects of configuring and running simulations and optimizers.
- Hello Route13 - shows how to configure and run a basic simulation.
- Route Planning - demonstrates how to find the optimal route for a single
Cart
to perform a set ofJobs
. - Graph - demonstrates the use of the Floyd-Warshall algorithm to find shortest paths and estimate travel times.
- Job Assignment - demonstrates use of a brute-force optimizer to assign a of
Jobs
to a pool ofCarts
. - Staffing Generator - example of a synthetic generator that produces
OutOfService
events for a hypothetical workforce, consisting of multiple crews, each working a specific shift. - Transfer Generator - example of a synthetic generator that produces
TransferJob
events for a synthetic schedule of random arrivals and departures. - Full Route13 - simulates operations during a 24 hour period using 52 synthetic
TransferJobs
.
Section coming soon.
Section coming soon. For now, please see our design documents.
Section coming soon.