The NashFlowComputation Tool (NFC) allows the computation of normalized thin flows with resetting and consequently Nash flows over time with or without spillback. NFC, being embedded in a graphical user-interface, facilitates not only quick and easy creation of networks but also the analysis of e.g. earliest arrival time functions and inflow functions in a dynamic equilibrium, which can be computed with a single click for further research. The flow models used are due to [1] in the basic case without spillback and due to [2] in the case of spillback. The algorithms to compute thin flows are based on [2] and [3].
At the moment, NFC is only able to handle single-commodity flow networks. For a useful tool to compute multi-commodity flows (although no equilibria), please check out this repository.
NFC was developed being part of a bachelor thesis [3] and then afterwards enhanced within the TU Berlin/ECMath project Dynamic Models and Algorithms for Equilibria in Traffic Networks.
NFC was designed to run on Linux-based OS. If the packages below can be installed, then the tool should run on other OS as well.
- Python >= 3.7
- matplotlib >= 3.1
- numpy >= 1.17
- networkx >= 2.4
- SCIP >= 7.0
Run mainControl.py to open the GUI.
- [1] Koch, Ronald, and Martin Skutella. "Nash equilibria and the price of anarchy for flows over time." Theory of Computing Systems 49.1 (2011): 71-97.
- [2] Sering, Leon, and Laura Vargas Koch. "Nash flows over time with spillback." Proceedings of the Thirtieth Annual ACM-SIAM Symposium on Discrete Algorithms. Society for Industrial and Applied Mathematics, 2019.
- [3] Zimmer, Max. "Nash Flows Over Time: Models and Computation." Bachelor Thesis at TU Berlin (2017)