Note
Go to the end to download the full example code.
Using Autonomie Express for Link-Level and Regional Energy#
In the SVTrip example, we see how POLARIS model outputs can be processed to obtain speed profile data. Vehicle speed profiles, along with its class and powertrain information, can be used with Autonomie Express to obtain detailed energy results at the link level. This example will outline some help on using Autonomie Express, key links to documentation and help, and screenshots from the Autonomie Express interface. Results from Autonomie Express can then be added back to POLARIS outputs to visualize link-level energy outcomes.
Key contacts for help with Autonomie Express: - Autonomie Express Page <https://vms.taps.anl.gov/tools/autonomie/express_version/> - AMBER Page <https://vms.taps.anl.gov/tools/amber/>
- Guided video for using Autonomie Express is also available here_:
_here: https://www.youtube.com/watch?v=hQQNFBkLGHc&ab_channel=ArgonneVehicle%26MobilitySystemsGroup
Steps to use Autonomie Express workflow#
Launch AMBER and select the Autonomie Express workflow
This opens the workflow options that contain a total of 5 steps (4 to run and 1 to visualize results) 1) Trip Selection, to specify the input trips information 2) Trip Assignment, to specify which vehicle to use and how to distribute the trips to those vehicles 3) Trip Export, to specify where you want the results saved 4) Trip Run, to specify how you want the simulation to be run 5) Results, to view the simulation results in summary graphs and in a tabular format with a Pivot table
Note: additional optional parameters can be provided in each individual step. See the help functionality in Autonomie Express for more details.
- Trip Selection
The SVTrip outputs from post-processing POLARIS can be used as the input to this step. To do so, select SVTrip from the dropdown. Browse to the directory that contain the SVTrip .mat files. Select the workflow file corresponding to the SVTrip-generated heavy-duty (HD) cycles.

- Trip Assignment
The assignment type called ‘All Combinations” will run energy outcomes for the speed profiles in the SVTrip .mat files for all available vehicle powertrain and class combinations in Autonomie Express. This means that for each trip from POLARIS, you will obtain multiple results showcasing energy results (1 to many). In many cases, POLARIS scenarios account for specific distributions of vehicle powertrain, class, automation, and other technology. In that case, it is useful to choose the assignment type ‘Match’. One trip from POLARIS will result in one energy result (1 to 1).
- Trip Export
This step specifies where Autonomie outputs will be stored. No changes needed for standard runs. The export format in Autonomie Express is fixed and cannot be modified.

- Trip Run
In this step, you can specify where the temporary run files should be created during the simulations, which GREET file to use to compute the pollutant parameters, and whether to run in debug mode or not. Finally, you can click the button at the bottom to ‘Run’ the Autonomie simulation.
- Simulation Results
Explore the visualization provided by the AMBER interface that help confirm results are reasonable. A variety of options exist here and can be explored.
Adding Energy Results into the POLARIS Demand Database#
Energy results from Autonomie Express are created in csv files. This data can be processed back into the POLARIS database. This helps view energy at the individual trip level alongside information generated for that trip within POLARIS. Additionally, data can be aggregated spatially and temporally based on trip characteristics.
Imports#
from polaris.utils.testing.temp_model import TempModel
from polaris.analyze.energy_metrics import EnergyMetrics
Create a class with Autonomie results and the POLARIS demand database
model_dir = TempModel("Grid")
iteration_dir = model_dir / "Grid_iteration_1"
energy_metrics = EnergyMetrics(
demand_file=iteration_dir / "Grid-Demand.sqlite", autonomie_energy_folder=iteration_dir / "autonomie_result"
)
Add tables that process raw energy results and aggregate by mode, automation, and vehicle type
energy_metrics.energy_use_by_automation()
energy_metrics.energy_use_by_mode()
energy_metrics.energy_use_by_veh_type()
energy_metrics.energy_use_total()
energy_metrics.energy_use_freight_only()