Skip to content

Latest commit

 

History

History
58 lines (45 loc) · 1.53 KB

File metadata and controls

58 lines (45 loc) · 1.53 KB

Convex optimization for traffic assignment

Setup

To run the MATLAB implementation, see MATLAB setup

Python dependencies:

sudo easy_install pip
pip install -r requirements.txt

Also needed is scipy. If you find some missing dependencies, please add them here.

To build the simplex projection c extension:

  1. cd into python/c_extensions
  2. run python2 setup.py build_ext --inplace

Running via Python

Run the python implementation from the traffic-estimation/python directory.

To run the main test, see these examples:

cd ~/traffic-estimation/python
python main.py --file route_assignment_matrices_ntt.mat --log=DEBUG --solver LBFGS
python main.py --file route_assignment_matrices_ntt.mat --log=DEBUG --solver BB
python main.py --file route_assignment_matrices_ntt.mat --log=DEBUG --solver DORE

If the dataset you want to run is not in the data directory, symlink it in from the main dataset.

To run 3-fold cross validation test:

python CrossValidation.py --log=DEBUG

Running ISTTT

After generating the set of matrices run:

python ISTTT.py --log=DEBUG --solver BB

MATLAB setup

MATLAB dependencies (must be run every time MATLAB is started):

setup.m

Running via MATLAB

Run main.m.

References

Mark Schmidt's L1General, a set of Matlab routines for solving L1-regularization problems.