Releases#

The following headers cover all published releases of the POLARIS framework.

2026.07 - Release July 2026 (PUG’26)#

This release is aligned with the Polaris User Group meeting and lands two headline capabilities: an operational co-simulation bridge to SUMO and a multi-stage charge-scheduling framework for all-electric TNC/SAEV fleets. Alongside these, the C++ engine received a substantial modernization and performance pass, and the Python polaris_api was extended well beyond routing so that core POLARIS models can now be driven directly from Python.

This release contains 111 merged branches to the core POLARIS C++ engine and is supported by 130 merge requests to the polaris-studio suite of supporting tools. As in previous cycles these reflect our ongoing focus on stability, validation, documentation, analytics, and high-performance computing.

Core POLARIS (C++ engine)#

Major Features:

  • [New] SUMO integration - a first operational co-simulation bridge to SUMO, including a runner driven from the shared library.

  • [New] Multi-stage charge scheduling for all-electric TNC fleets - day-ahead, rolling-horizon, and within-day control strategies for SAEV charging, with electricity-price and emissions-aware optimisation (supports V2G-related work).

  • [New] Weather impacts on traffic flow - vehicles adjust traffic behaviour by weather intensity, replacing the old half-implemented ITS simulator with a maintained WeatherImpact implementation.

  • [New] Freight size model and linking of highway links to truck-stop / lodging locations for long-haul freight.

  • [New] E-commerce demand model with associated destination/delivery choice.

  • Linear EV energy-consumption model for more realistic electric discharge.

  • Parking cost now enters destination choice for greater price sensitivity.

  • Household “time in dwelling” and activity-timing improvements, plus a resurrected stand-alone population synthesizer with single-person gender control.

Performance & threading:

  • One shared routable network across all threads (16-25% routing time savings on Austin/Chicago), an idle-timer based threading-efficiency pass, and spin-wait improvements.

  • Built-in timing added to core.diagnostics, and an early_exit = AT_TIME(...) option to stop a run at a chosen simulation time.

  • Aggregate-routing fixes and deprecation of the old boolean flag.

Python API & tooling:

  • The exposed shared library was expanded from a router into a general polaris_api - it can now construct trips, run simulations, execute the time-in-home model, and perform household transactions and population synthesis directly from Python.

  • Multithreaded batch router that loads and runs a full simulation environment from arrays or files.

  • Result HDF5 now records population sample rate; connections and link types added to the result database; VMT/VHT by link supports restricted lanes.

Under the hood:

  • Large C++ modernization: unnested namespaces, removal of legacy macros, CRTP experimentation, smart-pointer adoption, header/include cleanup, and migration of Location IDs to int64.

  • Fixed a class of size()-1 unsigned-underflow bugs across the codebase.

  • Every existing parameter now ships with a documented default value and units.

  • Friendlier, more approachable CSV error reporting.

  • Containerisation overhaul: Integrated_Model.sif renamed to polaris.sif (now able to launch any bundled app), a self-contained license_server.sif, and a CPLEX apptainer for LCRC.

  • Windows licensed-build fixes (correct argument parsing, RelWithDebInfo for usable stack traces) and a split, parallelised Windows publish pipeline.

PolarisStudio (Python tools)#

Major Features:

  • GTFS importer overhaul - rebuilt for compatibility with the latest GTFS standard, preserving additional fields, adding feed_info/transfers support and a new transit_transfers table.

  • Improved public-transport editor - ~50% faster GTFS import, route-pattern duplication and extension tools, and adoption of the AequilibraE map-matcher.

  • Active-mode (walk/bike) graph and generation of traffic lights from traffic volumes.

  • Centralized unit conversions across the package for consistency with the C++ engine.

  • Population synthesis analysis tooling and support for 2020-census popsyn data.

  • Retrieval of turn MOE for intersections; consistent transit-link construction from pattern shapes.

Analytics & KPIs:

  • New KPIs including TNC fleet size, replan options, TEMPO metrics, and Autonomie AI energy / fuel-consumption metrics; expanded KPI documentation.

  • Parking calibration and e-commerce calibration workflows.

Quality, packaging & HPC:

  • Binaries are now downloaded from polaris.taps.anl.gov rather than shipped on PyPI, and Antares can be enabled directly from studio.

  • Python 3.10-3.13 support (with an explicit upper bound), adaptation to Pandas 3.0, refreshed linting dependencies, and published CI coverage from the Linux unit tests.

  • Parameter-set validation: version checks from the CLI, incompatible-parameter-set detection, and flattened strategy/operator checks.

  • Robust setup_venv.sh / spatialite bootstrap on fresh Ubuntu and WSL.

  • New reference models added to the test fold (Nashville, Atlanta MPO).

2025.12 - Release December 2025#

Documentation (http://polaris.taps.anl.gov) has significantly improved. Some highlights of the improvements are listed here:

  • Split documentation website between the release version and latest development version (http://polaris.taps.anl.gov/latest_dev)

  • Explanation of the Polaris run process, including an explanation of convergence and convergence criteria

  • Elaboration on run parameters for runs and individual iterations

  • Analysis section was expanded with examples and further options

  • Further explanation of traffic skims, file setup, and variables stored

  • Expanded on SVTrip and AutonomieExpress

  • Wrote sections on network transit editing and calibration

This is supported by over 246 merge requests to our polaris-studio suite of supporting tools. These again reflect our areas of focus with large numbers of validations (to ensure stability) and documentation commits. Analytics and high performance computing changes also factored heavily in the mix.

Major Features:

  • Added restore() function to Polaris, letting users generate runnable SQLite from tables stored in CSV

  • Added langragian coordinate path reader

  • Added function to normalize result MOE based on the available supply file

  • Added new KPI comparisons (trip cost, etc.)

  • Updated error reporting to be less intimidating and more clear about the actual error

  • Fixed runtime and installation bugs (spatialite installation, directory handling, etc.)

Under the hood this release contains of 138 merged branches to the core POLARIS c++ engine including 4 major new features.

  • [New] School location choice updated with better handling of small vs large educational institutions

  • [New] Significant improvement to parking choice modelling including addition of a more realistic price model

  • [New] Explicitly model managed lanes for autonomous vehicles

  • [New] Mixed logit mode choice model

  • Actual simulated VOTT for all trips now stored in trip table

  • Ability to set tolls for MDT/HDT separately to LDT

  • Better integration of custom memory allocation with standard c++ new/delete keywords

  • Weather and Accident Events from ITS

  • Create Link_Data and Intersection_Data class for API access

  • Bigger and better stacktrace lib

  • Add significant and useful metadata to Skim OMX and Results HDF5 files

  • Better handling of determinism in stochastic processes through separation of random number generation and evaluation

  • Built in Basic Function Profiler

  • Updates to population synthesis regions

  • Improvements in the freight mode choice model including cost parameters and transfer port selection.

  • Add freight autonomous vehicles and autonomous truck operators for long-haul shipment transportation.

2025.06 - Release June 2025 (PUG’25)#

This release is aligned with the Polaris User Group meeting in Chicago June 2025 and brings major new capabilities in the freight modelling space with the inclusion of the first version of POLARIS’ integrated Agent Based Freight framework. This includes a new database (Model-Freight.sqlite) to represent the various entities that make up the freight ecosystem along with core algorithms for tour formation, routing and point of entry determination.

Documentation (http://polaris.taps.anl.gov) has significantly improved across all three pillars (C++, Python, QGIS) of the POLARIS eco-system. Some highlights of the improvements are listed here:

  • Performance effects of trajectory sampling decisions

  • Traffic flow theory

  • Random choice theory and practice

  • Routing parameters and theory

  • Generally applicable training slide decks from PUG 2024

  • Improved results database and H5 Structure

  • Common macros

  • Bloomington demo model

The following major features have been added to Polaris-Studio

  • Common geometry layers (County, Census Tracts) added to Supply database

  • Static assignment using Aequilibrae

  • Extraction of demand data for use with aggregate modelling platforms

  • Automated Network simplification

  • GMNS and Overture maps importer

  • Matrix Converter to convert skims between zone systems

  • Singularity/Apptainer image available with all dependencies

  • Calibrating capacities using speed by link type and time-period

Further to the freight modelling framwwork, the following major updates have been made to the underlying transport simulation engine:

  • TNC - Improvements to default, Corner-to-Corner and Alonso-Mora matching strategies

  • Core Speed and Stability Updates

  • Updated Database structures

  • Traffic simulator supports Lagrangian Coordinates for increased temporal granularity and better representation of the fundamental diagram

2025.01 - Release Jan 2025#

This release comprises 160 merged changes. In line with our current focus on improving the stability and maintainability of the codebase, the majority of these are refactoring, bug fix and documentation focussed changes. However there were still 38 merge requests which added new functionality to the code base.

Breakdown of 160 merged PRs since previous release

The major features added are:

  • Support for licensing on linux based operating systems

  • Migration of all path data from SQLite -> HDF5

  • Support for Left Hand Side of driving

  • Integration of OR-Tools support for greater flexibility in choice of optimisation solver

  • Increased granularity of long-term decision making (telecommute frequency, work location, etc)

  • Reorganize Core POLARIS to allow distribution as a header/library style API (Core Task 2.2)

  • Updated Telecommuting Model

This is supported by over 200 merge requests on polaris-studio. These again reflect our areas of focus with large numbers of validations (to ensure stability) and documentation commits. Analytics and high performance computing changes also factored heavily in the mix.

Breakdown of 240 merged PRs since previous release

Major Features

  • NUMA awareness for better performance on multiple CPU systems

  • Tooling for import of DOT fixed-trip tables

  • “Import from Overture maps” functionality

  • Better control over workplace stabilization and calibration iterations

  • Substantial increase in captured and plotted KPI metrics

  • Expanded data validations and checks across all databases

2024.03 - Released March 2024#

Our first official release of POLARIS via PyPi!!

This release sets the framework for our goal of reducing the learning curve for POLARIS with online documentation and simplified installation (just pip install polaris-studio).

  • POLARIS

    • Windows only licenced executables

  • PolarisStudio

  • QPolaris