Frequently Asked Questions#
Common Problems#
When I try to run POLARIS in the Visual Studio debugger, it tells me that I do not have access to “ALL_BUILD.” What gives?
Our CMake configuration sets the initial startup project to ALL_BUILD. You should change this in Visual Studio’s Solution Explorer by right-clicking “Solution ‘polaris’” and changing the startup project to Integrated Model (Or another startup project, if that’s what you are looking for).
When I try to build or run POLARIS, it fails because of a missing .dll or .h file (boost, odb, tensorflow, glpk, etc.)
You are either missing dependencies or they were not built correctly. For basic dependencies (ODB, boost, etc.) refer to this page.
There are some optional dependencies, such as tensorflow and glpk, that can be toggled in CMake and may not be included in our basic dependency package. These should be built in the same folder as the other dependencies, and there may be build scripts for them in the polarisdeps folder of the polaris-linux repo. If you want to disable them instead, you can build.py with the -e (enable)
flag or change the enable_libs
argument in your build-config.json. For example -e cplex
enables cplex, while -e cplex,-tensorflow
enables cplex and disables tensorflow.
What are the recommended hardware requirements for running POLARIS?
The hardware requirements of POLARIS are mainly driven by the RAM required for the model being run.
The general recommendations we use for running our internal models is:
At least 10 physical cores. 20-24 threads seems to be the point at which diminishing returns on parallelisation kick in.
At least 128GB RAM. Our Chicago metropolitan model consumes around 90-95GB on a typical run, models with larger zone systems can push this limit up to closer to 200GB but in general 128GB is sufficient in practice.
>1TB SSD. Given the amount of data being moved we find that faster drives (eg NVME) give lower runtimes. Also, our Chicago model generates approximately 6GB of (compressed) data for each iteration so we recommend allowing signifcant headroom in data storage to account for multiple iterations across testing scenarios.
Can I run POLARIS in the cloud?
Argonne is currently (2023/08) in the proces of evaluating the performance implications of Azure based cloud deployments of POLARIS. Following from this we hope to be able to provide POLARIS executables and runtime environments directly as Machine Images (AMI or VMI) to streamline partner deployments on to cloud platforms.
Theoretically, there is no difference in on-premise vs cloud deployment of the POLARIS executables, however care should be given to the data transfer requirements in a cloud environment. How will models be uploaded for running and how will results be retrieved?
From a cost perspective, the hardware listed in the above question can be purchased from Azure or AWS for between $1.30 and $1.80 USD/hr (PAYG price, may be cheaper with volume discounts). This means that a 10 iteration simulation of our standard Chicago model can be conducted for a cost of approximately $45-60. Depending on the planned number of simulations required and time constraints for those simulations dedicated on-premise hardware can be signficantly more cost-effective. However, if small numbers of simulation runs are planned (i.e. when evaluating POLARIS) a cloud based deployment is likely to be significantly faster and cheaper to provision.
What is this acronym used throughout the website?
Acronym |
Meaning |
---|---|
ABM |
Agent-based model (not to be confused with activity-based model) |
ADAPTS |
Agent-based Dynamic Activity Planning and Travel Scheduling |
BEV |
Battery Electric Vehicle |
DCFC |
Direct Current Fast Charging |
DRS |
Dynamic Ride-Sharing |
EV |
Electric Vehicle |
EVCS |
Electric Vehicle Charging Station |
eVMT |
Empty Vehicle Miles Traveled |
LOS |
Level of Service |
LR |
Long-range (EV) |
MNL |
Multinomial Logit |
POLARIS |
Planning and Operations Language for Agent-based Regional Integrated Simulation |
SAV |
Shared Autonomous Vehicle |
SAEV |
Shared Autonomous Electric Vehicle |
SoC |
State of Charge |
SR |
Short-range (EV) |
TAZ |
Traffic Analysis Zone |
TNC |
Transportation Network Company |