Python code for a link-based stochastic user equilibrium based on the network-GEV model and its solution algorithms for both primal and dual problems.
For more details, please see our paper that has been published in Transportation Research Part B: Methodological.
Oyama, Y., Hara, Y., Akamatsu, T. (2022) Markovian traffic equilibrium assignment based on network generalized extreme value model. Transportation Research Part B: Methodological 155: 135-159.
Please cite this paper if you find this code useful:
@article{oyama2022markovian,
title={Markovian traffic equilibrium assignment based on network generalized extreme value model},
author={Oyama, Yuki and Hara, Yusuke and Akamatsu, Takashi},
journal={Transportation Research Part B: Methodological},
volume={155},
pages={135--159},
year={2022},
publisher={Elsevier}
}
Solve the NGEV equilibrium with Accelerated Gradient Projection method (the dual algorithm) in the Sioux Falls network.
python run.py --model_name 'NGEVMCA' --optimizers 'AGDBT'
Loading model options ('syntax' for parameter specification):
- Logit-based Dial assignment (LogitDial)
- Logit-based Markov chain assignment (LogitMCA)
- NGEV-based Dial assignment (NGEVDial)
- NGEV-based Markov chain assignment (NGEVMCA)
- Probit assignment (Probit)
Solution algorithm options:
- Method of Successive Averages (MSA)
- Partial Linearization (PL)
- Gradient Projection (GP/GD)
- Accelerated Gradient Projection (AGP/AGD)