/CPS_TRC

Connected Population Synthesis Code

Primary LanguageJupyter NotebookMIT LicenseMIT

CPS_TRC

This repository contains the source code described in "Connected population synthesis for transportation simulation"(Zhang D., Cao J., Feygin S., Tang D.and Pozdnoukhov A., Connected population synthesis for transportation simulation. (published in Transportation Research Part C: Emerging Technologies), 2019)(pdf on ssrn)

Prerequisites

Running the tests

The connected population synthesis pipeline consists of three steps:

[Step 1] Bayesian Networks learning and simulation

Composition and socio-economic char- acteristics of the synthetic households are generated based on Bayesian network parameters estimated from a typical household survey data

We utilized R bnlearn package for bayesian networks parts.Please check bnlearn notebook

[Step 2] Community Allocation

We implemented our algorithm using CPLEX Python API, please check the source code packaged in Python class. We also implemented the parallel version using Python multiprocessing, please check the source code packaged in Python class

We also provided the ipython notebooks as examples. Please check non parallel version and parallel version

[Step 3] ERGM learning and simulation

We implemented the community-distance ERGM model using CVXPY, please check the source code packaged in Python class. We also provided the ipython notebook as examples. Please check the example with synthetic data. Due to data privacy issues the data for the paper isn't relesed

License

This project is licensed under the MIT License