BusPlan
github.com
What it is
BusPlan is a free, open-source tool for school districts that generates optimized routes from existing student, stop, and school-location data. It seeks to minimize bus driving time and can impose a maximum student ride-time constraint. The workflow accepts CSV files for locations, students, candidate stops, stop eligibility, and garage bus limits. Preparation instructions create candidate stops within one mile of each student and calculate walking-distance eligibility. OpenStreetMap extracts are used to build OpenTripPlanner routing graphs, which supply route costs. OptaPlanner provides the constraint-solving engine. Results are CSV files listing ordered stops for each route and assigning students to route-and-stop combinations. A script calculates student ride times, and a Jupyter notebook supports route analysis. BusPlan is distributed as source code and setup instructions on GitHub under the Apache License, Version 2.0. The repository does not list a packaged desktop or mobile download or a support service.
Spec sheet
- Purpose
- BusPlan generates school bus routes for existing students, stops, and school locations, optimizing for minimum bus drive time.Read 9 Oct 2026 · github.com
- Intended users
- The project describes its goal as reducing public school budgets and helping students spend less time riding to school.Read 9 Oct 2026 · github.com
- Integrations
- The documented workflow uses OpenStreetMap extracts with OpenTripPlanner for routing and OptaPlanner for optimization.Read 8 Oct 2026 · github.com
- Security
- The repository page does not state any product-specific security certifications or compliance claims.Read 9 Oct 2026 · github.com
- Support
- The repository provides setup and usage instructions in its README; it does not state a support service.Read 8 Oct 2026 · github.com
- License
- The repository provides the software under the Apache License, Version 2.0.Read 9 Oct 2026 · github.com
- Headquarters
- Philadelphia, Pennsylvania, USARead 28 Sep 2026 · github.com
- Analysis
- The repository includes instructions and a Jupyter notebook for analyzing student ride times and routes.Read 9 Oct 2026 · github.com
- Distribution
- The repository provides source code and setup instructions, with no packaged desktop or mobile download listed.Read 9 Oct 2026 · github.com
- Input data
- The setup instructions use CSV files for network nodes, students, eligible stops, and garage bus limits.Read 9 Oct 2026 · github.com
- Open source license
- The repository provides the software under the Apache License, Version 2.0.Read 8 Oct 2026 · github.com
- Optimization
- Routes are optimized to minimize bus drive time and can be constrained by maximum student ride time.Read 8 Oct 2026 · github.com
- Optimization engine
- BusPlan uses OptaPlanner as its constraint solver.Read 9 Oct 2026 · github.com
- Outputs
- The solver produces CSV files containing ordered route stops and student assignments, which can then be converted into mappable routes.Read 9 Oct 2026 · github.com
- Potential constraints
- The project page describes planned solver improvements for bus fleet size, capacity, student age, special needs and buses serving multiple schools.Read 8 Oct 2026 · fellowship.azavea.com
- Project context
- Azavea says it worked with the School District of Philadelphia to investigate algorithmically optimized school bus routing.Read 8 Oct 2026 · fellowship.azavea.com
- Ride time constraint
- Routes can be constrained to limit maximum student ride time.Read 9 Oct 2026 · github.com
- Routing and solver
- The project uses OpenTripPlanner to generate route costs and OptaPlanner as a constraint solver.Read 8 Oct 2026 · github.com
- Routing engine
- BusPlan uses OpenTripPlanner to generate route costs.Read 9 Oct 2026 · github.com
- Setup requirement
- The getting-started instructions require generating OpenTripPlanner routing graphs from OpenStreetMap extracts.Read 9 Oct 2026 · github.com
- Stop eligibility
- The data-preparation instructions generate candidate stops within a one-mile radius of each student and calculate walk-distance eligibility.Read 9 Oct 2026 · github.com
Plans and prices
Strong points and limits
Strong points
- Free plan and Apache 2.0 license
- Optimizes drive time and ride-time limits
- CSV route and student assignments
- Ride-time script and analysis notebook
- OpenTripPlanner and OptaPlanner workflow
Limits
- Self-hosted setup is required
- Requires OpenStreetMap routing graphs
- No packaged desktop or mobile download
- No support service is stated
Who it suits
It suits school districts and teams comfortable preparing CSV data, generating routing graphs, and running self-hosted open-source software.
Verdict
BusPlan provides a defined, reproducible workflow for school-bus route optimization, with CSV inputs, constraint controls, and analysis outputs. Its self-hosted setup and routing-graph preparation make it a technical deployment rather than a ready-made hosted service.
Where Specifiction places it
- School Bus Routing Software#6 of 248.3