
eqasim workshop 2025
Introduction
8 December 2025


-
Introduction (10h00 - 10h30)
- Overview
- Maintenance topics
-
Ongoing developments (10h30 - 12h00)
- MobiSurvStd: A tool to standardize French mobility survey datasets (CY Cergy)
- A standard baseline MATSim simulation for eqasim (IRT SystemX)
- Weekly activity schedules in eqasim (IFP energies nouvelles)
- Advances on eqasim for Switzerland (ETH Zurich)
-
Lunch (12h00 - 13h00) until 13h50
-
Use cases (13h00 - 14h00)
- Synthetic populations for household energy consumption (EDF / SMACH)
- The use of eqasim in air quality assessment (AirBreizh)
- Discussion (14h00 - ...)
Agenda


-
Website content
- General information on eqasim-synpop and eqasim-java
- General information on eqasim-synpop and eqasim-java
-
Contributors / users
- Let us know if you want to be listed.
- Logo and contact person
-
Projects (new section)
- Give information if you want your project(s) to be listed.
- Involved actors, subject, how eqasim is used, links and resources.
-
Publications (new section)
- Help us find all eqasim-related publciations.
- Articles about eqasim (methodology)
- Articles where eqasim is used
New website



-
Website content
- General information on eqasim-synpop and eqasim-java
- General information on eqasim-synpop and eqasim-java
-
Contributors / users
- Let us know if you want to be listed.
- Logo and contact person
-
Projects (new section)
- Give information if you want your project(s) to be listed.
- Involved actors, subject, how eqasim is used, links and resources.
-
Publications (new section)
- Help us find all eqasim-related publciations.
- Articles about eqasim (methodology)
- Articles where eqasim is used
New website














-
Conventional commits and changelog
- We now follow a specific pattern for naming commits.
- This creates automatic changelogs for us!
-
Releases and versioning
- We now use release-please to generate version automatically
- Based on the PRs that have been made in the meantime.
-
Documentation
- Now automatically built and updated.
- Now automatically built and updated.
-
Code formatting
- Has been tested, not yet implemented (open PRs).
Repository management


-
Renaming the repository
- Before the end of the year
- Before the end of the year
-
Main branch
- Rename the develop branch to the more common main
- Rename the develop branch to the more common main
-
Update to recent data sets from INSEE
- Thanks to tellae!
- Thanks to tellae!
-
Releases
- Create new releases more frequently.
- Create new release in the coming days.
eqasim-synpop: France

ile-de-france
eqasim-france
develop
main
1.4.0

-
New application case for eqasim
- Developed in collaboration for TU Munich
- Used in various projects at TUM now
- Maybe extension to other regions in Germany?
eqasim-synpop: Bavaria





-
California
- Currently being updated to new data sets (at UCLA)
- Currently being updated to new data sets (at UCLA)
-
Switzerland
- Specific session later in the day
- Specific session later in the day
-
All cases
- Switch to the main branch
- Rename to eqasim-org/eqasim-{case}
- Need to adapt for repository maintenance practices (like France)?
- Can we set up a reguarly executed test environment that includes data downloading and running the pipelines?
eqasim-synpop: other cases


-
Policies
- Added integrated functionality to simulate specific policies in eqasim
- Needs
betterdocumentation
-
On-demand transport
- Added a set of easy-to-use configuration scripts for on-demand transport (Tarek)
- Added a set of easy-to-use configuration scripts for on-demand transport (Tarek)
-
Documentation
- Everything needs to have better (and automated) documentation!
- Everything needs to have better (and automated) documentation!
-
Contributing to MATSim
- Planning which components can be send back to MATSim
- Planning which components can be send back to MATSim
- Create a new release in the next days
eqasim-java



- Make a fork & clone it
Contributing


git clone git@github.com:user/ile-de-france.git

- Make a fork & clone it
- Make a branch
Contributing

git branch my_changes

- Make a fork & clone it
- Make a branch
- Integrate your changes & commit & push
Contributing

git commit -m "feat: new great feature"
git push origin my_changes

- Make a fork & clone it
- Make a branch
- Integrate your changes & commit & push
- Send a Pull Request (PR) on Github
Contributing



- Make a fork & clone it
- Make a branch
- Integrate your changes & commit & push
- Send a Pull Request (PR) on Github
- Continuous testing will check the code
Contributing



- Make a fork & clone it
- Make a branch
- Integrate your changes & commit & push
- Send a Pull Request (PR) on Github
- Continuous testing will check the code
- Maintainers will review the changes before merging them in
Contributing


- Functionality to replace or extend individual parts of the pipeline
Aliasing



- Functionality to replace or extend individual parts of the pipeline
Aliasing




- Example: force field in secondary activity distribution (PR 385)
Optional execution



- Example: force field in secondary activity distribution (PR 385)
Optional execution




A standard baseline MATSim simulation for eqasim

Objective
- Synthetic population process is stable and practically tested
- We are missing a common starting point for setting up a full simulation
Standard baseline simulation

Idea
- Set up a unified calibration / choice model estimation process for an eqasim simulation (in France)

Standard baseline simulation

Household travel survey
Idea:
- Provide an open and accessible, well-calibrated agent-based simulation for Île-de-France
- Develop a standardized pipeline for the estimation of the discrete choice model and network calibration
Status:
- Under development in bits and pieces since ~2023
- Île-de-France simulation almost ready to be published!
EGT

Standard baseline simulation

Transit calibration
Household travel survey
Input: All trips of the survey that have been performed using public transport, with origin, destination and departure time.
EGT
Approach: Calibrate routing parameters of public transport routing algorithm (RAPTOR) to fit
(1) Distribution of legs by public transport mode
(2) Distribution of transfer counts
Adaptation of parameters
Distribution modes
Distribution transfers




Standard baseline simulation

Transit calibration
Freeflow calibration
Household travel survey
EGT
Input:
- A representative selection of car trips from the survey including origin, destination (and weight)
- Road network with speed limit travel times
Approach:
(1) Route trips using API (TomTom) without congestion (3am)
(2) Calibrate "crossing penalties" at nodes by road type



Standard baseline simulation

Transit calibration
Freeflow calibration
Household travel survey
EGT
Input:
- A representative selection of car trips from the survey including origin, destination (and weight)
- Road network with speed limit travel times
Approach:
(1) Route trips using API (TomTom) without congestion (3am)
(2) Calibrate "crossing penalties" at nodes by road type




Standard baseline simulation

Transit calibration
Freeflow calibration
Congestion model
Household travel survey
EGT
Input: A representative selection of car trips from the survey including origin, destination, departure time, and calculated free-flow travel times
Approach:
(1) Route trips using API (TomTom) with congestion (at trip departure time)
(2) Calibrate hourly correction factors

Linear regression

Standard baseline simulation

Transit calibration
Freeflow calibration
Congestion model
Model estimation
Household travel survey
EGT
Approach:
(1) Route all trips of the survey for all mode alternatives
(2) Estimate a multi-nomial logit model using Biogeme
- Automatic construction of zonal dummies (if requested)
- Modes: Car driver, car passenger, public transport, bicycle, walking
- Currently R2 = 0.52
- Value of time comparable to existing studies (Meunier & Quinet, ...)
- Automatic calculation and reporting of elasticities

Standard baseline simulation

Transit calibration
Freeflow calibration
Congestion model
Model estimation
Household travel survey
EGT
Approach:
(1) Route all trips of the survey for all mode alternatives
(2) Estimate a multi-nomial logit model using Biogeme
Focus: Parking model
- Parking costs obtained across Île-de-France from open web sources
- Calculation of "parking pressure"
- High model impact!

Registered vehicles inside IRIS
Road network inside IRIS
P =
* from INSEE data

Standard baseline simulation

Capacity calibration
Transit calibration
Freeflow calibration
Congestion model
Model estimation
Household travel survey
EGT
Approach:
(1) Implement choice model in agent-based simulation
(2) Verify point-to-point travel times between simulation and API
(3) Adjust a (global) capacity factor across the network
Comparison
Simulation
Capacity factor
Point-to-point travel times
* no flow comparison!

Standard baseline simulation

Capacity calibration
Transit calibration
Freeflow calibration
Congestion model
Model estimation
Household travel survey
EGT
Validation:
- Global mode share
- Mode share by distance
- CDF of travel times by mode
- Others possible; some within limits (traffic counts, transit counts, ...)

* not the latest results

Standard baseline simulation

Capacity calibration
Transit calibration
Freeflow calibration
Congestion model
Model estimation
Household travel survey
EGT
Validation:
- Global mode share
- Mode share by distance
- CDF of travel times by mode
- Others possible; some within limits (traffic counts, transit counts, ...)


* not the latest results

Standard baseline simulation

Capacity calibration
Transit calibration
Freeflow calibration
Congestion model
Model estimation
Household travel survey
EGT
Validation:
- Global mode share
- Mode share by distance
- CDF of travel times by mode
- Others possible; some within limits (traffic counts, transit counts, ...)


* not the latest results

Standard baseline simulation

Capacity calibration
Transit calibration
Freeflow calibration
Congestion model
Model estimation
Household travel survey
EGT
Validation:
- Global mode share
- Mode share by distance
- CDF of travel times by mode
- Others possible; some within limits (traffic counts, transit counts, ...)

* not the latest results

Standard baseline simulation

Capacity calibration
Transit calibration
Freeflow calibration
Congestion model
Model estimation
Household travel survey
EGT
Baseline simulation for Île-de-France ready to publish!
Fully automatized and replicable processing pipeline using snakemake


Standard baseline simulation

Capacity calibration
Transit calibration
Freeflow calibration
Congestion model
Model estimation
Household travel survey
EDGT, EMC2, ...
Can this be generalized to other cases?
Most likely!
!

Standard baseline simulation

Capacity calibration
Transit calibration
Freeflow calibration
Congestion model
Model estimation
Household travel survey
EDGT, EMC2, ...
Spatialization



Can this be generalized to other cases?
Most likely!
Balac, M., Hörl, S., & Schmid, B. (2024). Discrete choice modeling with anonymized data. Transportation, 51(2), 351–370.

Standard baseline simulation

Capacity calibration
Transit calibration
Freeflow calibration
Congestion model
Model estimation
Household travel survey
Spatialization

Lille
Paris
Strasbourg
Lyon
Toulouse
Bordeaux
Nantes
Rennes
Compare individual model results based on same structure
EDGT, EMC2, ...

Standard baseline simulation

Capacity calibration
Transit calibration
Freeflow calibration
Congestion model
Model estimation
Household travel survey
Spatialization

Lille
Paris
Strasbourg
Lyon
Toulouse
Bordeaux
Nantes
Rennes
Estimate a joint model for France?
EDGT, EMC2, ...
eqasim workshop 2025
By Sebastian Hörl
eqasim workshop 2025
eqasim workshop 2025, IRT SystemX, 8 December 2025
- 13