Flow is a computational framework for deep RL and control experiments for traffic microsimulation.

Overview

Build Status Docs Coverage Status Binder License

Flow

Flow is a computational framework for deep RL and control experiments for traffic microsimulation.

See our website for more information on the application of Flow to several mixed-autonomy traffic scenarios. Other results and videos are available as well.

More information

Technical questions

If you have a bug, please report it. Otherwise, join the Flow Users group on Slack!

Getting involved

We welcome your contributions.

Citing Flow

If you use Flow for academic research, you are highly encouraged to cite our paper:

C. Wu, A. Kreidieh, K. Parvate, E. Vinitsky, A. Bayen, "Flow: Architecture and Benchmarking for Reinforcement Learning in Traffic Control," CoRR, vol. abs/1710.05465, 2017. [Online]. Available: https://arxiv.org/abs/1710.05465

If you use the benchmarks, you are highly encouraged to cite our paper:

Vinitsky, E., Kreidieh, A., Le Flem, L., Kheterpal, N., Jang, K., Wu, F., ... & Bayen, A. M, Benchmarks for reinforcement learning in mixed-autonomy traffic. In Conference on Robot Learning (pp. 399-409). Available: http://proceedings.mlr.press/v87/vinitsky18a.html

Contributors

Flow is supported by the Mobile Sensing Lab at UC Berkeley and Amazon AWS Machine Learning research grants. The contributors are listed in Flow Team Page.

Comments
  • Failed to run examples/sumo/sugiyama.py

    Failed to run examples/sumo/sugiyama.py

    I followed the steps for the installation procedure (https://berkeleyflow.readthedocs.io/en/latest/flow_setup.html). However, when i tried to run the example ( in the "Testing the Installation" section) I get the following error:

    Traceback (most recent call last): File "examples/sumo/sugiyama.py", line 11, in from flow.envs.loop.loop_accel import AccelEnv, ADDITIONAL_ENV_PARAMS File "/home/dkoutras/flow/flow/envs/init.py", line 4, in from flow.envs.multiagent_env import MultiEnv File "/home/dkoutras/flow/flow/envs/multiagent_env.py", line 10, in from ray.rllib.env import MultiAgentEnv ModuleNotFoundError: No module named 'ray'

    I have not installed the ray library, but as mentioned in the corresponding section I sould not need it anyway. Any ideas ?

    opened by dimikout3 38
  • Increasing the number of vehicles in Figure Eight scenario

    Increasing the number of vehicles in Figure Eight scenario

    Choose an option This is a:

    • [x] Question
    • [x] Feature request

    Describe the issue Figure eight scenario only accommodates a maximum of 14 vehicles in Flow. Even if I give more than this, it is not effective. But I am planning to extend this to 100 vehicles involving RL and human vehicles. I just want to know the reason behind this limitation to be able to apply in a real world scenario. Can I add another route with this and expand the capacity_ Like merging one figure eight and one ring wave scenario or merging two figure eight scenarios to increase its capacity.

    Expected behavior Many vehicles in a single road track

    Desktop (please complete the following information):

    • OS: Ubuntu 18.04
    • Version [run python -c "import flow; print(flow.version)"]: Leave empty if not applicable.

    Additional context https://flow.readthedocs.io/en/latest/examples.html#figure-eight

    opened by pnp91 20
  • Observation outside expected value range when executing /examples/rllib/traffic_light_grid.py

    Observation outside expected value range when executing /examples/rllib/traffic_light_grid.py

    #Bug Description

    ValueError: ('Observation outside expected value range', Box(339,), array([0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0.05 , 0.05 , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0.37301541, 0.42857143, 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 2. , 3. , 3. , 0. , 0. , 3. , 3. , 0. , 3. , 0. , 0. , 1. , 1. , 0. , 1. , 1. , 1. , 0. , 1. , 0. , 0. , 1. , 1. , 0. , 0. , 1. , 0. ]))

    Bug Reproduce

    /examples/rllib/traffic_light_grid.py

    The exact command that you did run that caused the bug: python traffic_light_grid.py

    Output Log

    Traceback (most recent call last): File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/tune/trial_runner.py", line 498, in _process_trial result = self.trial_executor.fetch_result(trial) File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/tune/ray_trial_executor.py", line 342, in fetch_result result = ray.get(trial_future[0]) File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/worker.py", line 2247, in get raise value ray.exceptions.RayTaskError: ray_PPO:train() (pid=10958, host=611dabai) File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/rllib/agents/trainer.py", line 369, in train raise e File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/rllib/agents/trainer.py", line 358, in train result = Trainable.train(self) File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/tune/trainable.py", line 171, in train result = self._train() File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/rllib/agents/trainer_template.py", line 126, in _train fetches = self.optimizer.step() File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/rllib/optimizers/multi_gpu_optimizer.py", line 140, in step self.num_envs_per_worker, self.train_batch_size) File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/rllib/optimizers/rollout.py", line 29, in collect_samples next_sample = ray_get_and_free(fut_sample) File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/rllib/utils/memory.py", line 33, in ray_get_and_free result = ray.get(object_ids) ray.exceptions.RayTaskError: ray_RolloutWorker:sample() (pid=11185, host=611dabai) File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/rllib/evaluation/rollout_worker.py", line 453, in sample batches = [self.input_reader.next()] File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/rllib/evaluation/sampler.py", line 56, in next batches = [self.get_data()] File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/rllib/evaluation/sampler.py", line 97, in get_data item = next(self.rollout_provider) File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/rllib/evaluation/sampler.py", line 313, in _env_runner soft_horizon) File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/rllib/evaluation/sampler.py", line 401, in _process_observations policy_id).transform(raw_obs) File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/rllib/models/preprocessors.py", line 166, in transform self.check_shape(observation) File "/home/dl_e/anaconda3/envs/flow_backup/lib/python3.6/site-packages/ray/rllib/models/preprocessors.py", line 61, in check_shape self._obs_space, observation) ValueError: ('Observation outside expected value range', Box(339,), array([0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0.05 , 0.05 , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0.37301541, 0.42857143, 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 0. , 2. , 3. , 3. , 0. , 0. , 3. , 3. , 0. , 3. , 0. , 0. , 1. , 1. , 0. , 1. , 1. , 1. , 0. , 1. , 0. , 0. , 1. , 1. , 0. , 0. , 1. , 0. ]))

    Versions

    • OS: ubuntu 16.04
    • Flow version: 0.5.0.dev
    • Flow commit number: fatal: there is no submission
    bug 
    opened by ZJP-c4cld 18
  • Error while running sumo/sugiyama.py

    Error while running sumo/sugiyama.py

    Hi, I don't know what happend but I am having trouble with flow right now. What use to work doesn't anymore. I 'm going to try to find out about that error but if anyone knows.

    Warning: Cannot find local schema '/Users/username/flow/bin/data/xsd/types_file.xsd', will try website lookup.```
    opened by lucfisc 18
  • Environment.yml is broken

    Environment.yml is broken

    Numpy=1.13.0 leads to some crazy looking error. This is extremely high priority, I will confirm that it passes on my machine and @AboudyKreidieh can you try it on your machine and confirm this works?

    opened by eugenevinitsky 16
  • There are always errors in OSX following Installing procedure

    There are always errors in OSX following Installing procedure

    Choose an option This is a:

    • [x] Question

    Describe the issue When coming to the Installing Flow and SUMO, after downloading SUMO’s github directory, something goes wrong and I cannot figure it out.

    I input the code into terminal export CPPFLAGS=-I/opt/X11/include export LDFLAGS=-L/opt/X11/lib ./configure CXX=clang++ CXXFLAGS="-stdlib=libc++ -std=gnu++11" --with-xerces=/usr/local --with-proj-gdal=/usr/local make -j$nproc But I got MacBook-Pro-3:sumo mac$ make -j$nproc make: *** No targets specified and no makefile found. Stop. I have tried many times and dont know why

    opened by CYBruce 15
  • Better folder structure and file names

    Better folder structure and file names

    Pull request information

    • Status: In development
    • Kind of changes: File and class names of environments/scenarios, structure of example folders
    • Related PR or issue: #564

    Description

    This PR introduces major changes to file names and folder structures, as well as fo some class names, mainly for the following folders:

    • envs
    • multiagent_envs (now is a subfolder under envs)
    • scenarios
    • examples
    • removal of cooperative_merge (and loop_merge)

    TODO:

    • [x] better names for environments --> NL
    • [x] merge multiagent_envs into envs --> AY
    • [x] better name for scenarios so that they match the environments --> AY
    • [x] better file names (e.g. sugiyama, loop,ring -> ring) --> AY, NL

    This is how the new envs folder looks like (some classes names have also been changed):

    envs
    ├── __init__.py
    ├── base.py
    ├── bay_bridge.py
    ├── bottleneck.py
    ├── merge.py
    ├── multiagent
    │   ├── __init__.py
    │   ├── base.py
    │   ├── highway.py
    │   ├── ring
    │   │   ├── __init__.py
    │   │   ├── accel.py
    │   │   └── wave_attenuation.py
    │   └── traffic_light_grid.py
    ├── ring
    │   ├── __init__.py
    │   ├── accel.py
    │   ├── lane_change_accel.py
    │   └── wave_attenuation.py
    ├── test.py
    └── traffic_light_grid.py
    

    This is how the new scenarios folder looks like (some classes names have also been changed):

    scenarios/
    ├── __init__.py
    ├── base.py
    ├── bay_bridge.py
    ├── bay_bridge_toll.py
    ├── bottleneck.py
    ├── figure_eight.py
    ├── highway.py
    ├── merge.py
    ├── minicity.py
    ├── multi_ring.py
    ├── ring.py
    └── traffic_light_grid.py
    
    upgrade 
    opened by nathanlct 13
  • Having both RL and actuated traffic lights in a simple grid scenario

    Having both RL and actuated traffic lights in a simple grid scenario

    [QUESTION] Hello! I am trying to create a simple grid scenario containing at the same time actuated traffic lights and a group of RL-based traffic lights. I am modifying the following scripts:

    • flow/examples/rllib/green_wave.py (Experiment)
    • flow/scenatios/grid.py (Scenario)
    • flow/envs/green_wave_env.py (Environment)

    According to the ADDITIONAL_ENV_PARAMS variable, either all traffic lights are "controlled" (RL) or either they are all actuated. I've tried to add every TL manually in the grid scenario but it seems that in the end the ADDITIONAL_ENV_PARAMS variable is who determines how traffic lights are managed in the simulation. Is there a way I could do this? I didn't find any documentation about it.

    Thank you very much!

    Antonio

    opened by Antonio-Dominguez 13
  • use

    use "conda env create -f environment.yml", but failed?

    The conflict is caused by: The user requested redis~=2.10.6 ray 0.8.0 depends on redis>=3.3.2

    To fix this you could try to:

    1. loosen the range of package versions you've specified
    2. remove package versions to allow pip attempt to solve the dependency conflict

    Pip subprocess error: ERROR: Cannot install -r /Users/dulei/Documents/Flow/flow/condaenv.k_4i73t0.requirements.txt (line 18) and redis~=2.10.6 because these package versions have conflicting dependencies. ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/user_guide/#fixing-conflicting-dependencies

    failed

    CondaEnvException: Pip failed

    bug 
    opened by Dukering 12
  • ImportError: No module named traci

    ImportError: No module named traci

    Sorry for the problem again, I solved the problem yesterday and made sugiyama.py run correctly. However, when I rerun the sugiyama.py today, I got another problem saying "No module named traci". I'm sure I activate the source flow. Also I find the 'traci' direptory locally. 2018-12-11 2 24 58

    opened by CYBruce 12
  • Error with commandline when running examples/sumo/sugiyama.py

    Error with commandline when running examples/sumo/sugiyama.py

    Versions: Ubuntu 16.04 Python 3.5

    Problem: The following error codes occur after running examples/sumo/sugiyama.py

    Loading configuration... done. Success. Error: On processing option '--num-clients': No option with the name 'num-clients' exists. Error: The parameter '1' is not allowed in this context. Switch or parameter name expected. Error: On processing option '--collision.check-junctions': No option with the name 'collision.check-junctions' exists. Error: The parameter 'true' is not allowed in this context. Switch or parameter name expected. Error: Could not parse commandline options. Quitting (on error). Could not connect to TraCI server at localhost:51587 [Errno 111] Connection refused Retrying in 1 seconds Could not connect to TraCI server at localhost:51587 [Errno 111] Connection refused

    The sumo gui pops up with the above error codes. Flow had already been activated with 'source activate flow.' Any help would be appreciated.

    Thanks!

    opened by KidTrunks 11
  • Bump tensorflow from 1.15.2 to 2.9.3

    Bump tensorflow from 1.15.2 to 2.9.3

    Bumps tensorflow from 1.15.2 to 2.9.3.

    Release notes

    Sourced from tensorflow's releases.

    TensorFlow 2.9.3

    Release 2.9.3

    This release introduces several vulnerability fixes:

    TensorFlow 2.9.2

    Release 2.9.2

    This releases introduces several vulnerability fixes:

    ... (truncated)

    Changelog

    Sourced from tensorflow's changelog.

    Release 2.9.3

    This release introduces several vulnerability fixes:

    Release 2.8.4

    This release introduces several vulnerability fixes:

    ... (truncated)

    Commits
    • a5ed5f3 Merge pull request #58584 from tensorflow/vinila21-patch-2
    • 258f9a1 Update py_func.cc
    • cd27cfb Merge pull request #58580 from tensorflow-jenkins/version-numbers-2.9.3-24474
    • 3e75385 Update version numbers to 2.9.3
    • bc72c39 Merge pull request #58482 from tensorflow-jenkins/relnotes-2.9.3-25695
    • 3506c90 Update RELEASE.md
    • 8dcb48e Update RELEASE.md
    • 4f34ec8 Merge pull request #58576 from pak-laura/c2.99f03a9d3bafe902c1e6beb105b2f2417...
    • 6fc67e4 Replace CHECK with returning an InternalError on failing to create python tuple
    • 5dbe90a Merge pull request #58570 from tensorflow/r2.9-7b174a0f2e4
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Update requirements.txt and environment.yml

    Update requirements.txt and environment.yml

    Bug Description

    It is impossible to create an environment or install the proper dependencies for Flow to work, with the current environment.yml and requirements.txt. This is because the dependencies are mostly outdated and have conflicts, which need to be resolved during installation.

    I personally had a hard time before I could actually get Flow to work on my Ubuntu 18.04 machine, so I'm posting the changes that MIGHT work for you as well (this totally depends on your machine as I have not tested it on any other OS).

    environment.yml:

    name: flow
    
    dependencies:
        - python==3.7.3
        - pip:
            - scipy==1.1.0
            - lxml==4.4.1
            - six==1.11.0
            - path.py
            - python-dateutil==2.7.3
            - pip>=18.0
            - tensorflow==1.15.2
            - setuptools==41.0.0
            - plotly==2.4.0
            - gym==0.14.0
            - pyprind==2.11.2
            - nose2==0.8.0
            - cached_property
            - joblib==0.10.3
            - matplotlib==3.0.0
            - dill
            - lz4
            - ray==0.8.0
            - setproctitle
            - psutil
            - opencv-python
            - boto3==1.10.45
            - redis
    

    requirements.txt

    gym==0.14.0
    numpy==1.18.4
    scipy==1.1.0
    lxml==4.4.1
    pyprind==2.11.2
    nose2==0.8.0
    six==1.11.0
    path.py
    joblib==0.10.3
    python-dateutil==2.7.3
    cached_property
    pyglet==1.3.2
    matplotlib==3.1.0
    imutils==0.5.1
    numpydoc
    ray==0.8.0
    opencv-python
    dill
    lz4
    setproctitle
    psutil
    opencv-python
    boto3==1.10.45
    redis
    pandas==0.24.2
    plotly==2.4.0
    tabulate
    tensorflow==1.15.2
    awscli==1.16.309
    torch==1.4.0
    pytz
    tensorboardX
    

    If you still have some dependency issues, just make sure that you remove the versions from the above files and allow pip to resolve any conflicts. Another tip is to uninstall and reinstall packages if they throw ImportError, ModuleNotFoundError etc.

    Also, any help regarding how to install Flow on Windows would be greatly appreciated.

    bug 
    opened by bharath2438 1
  • Bump joblib from 0.10.3 to 1.2.0

    Bump joblib from 0.10.3 to 1.2.0

    Bumps joblib from 0.10.3 to 1.2.0.

    Changelog

    Sourced from joblib's changelog.

    Release 1.2.0

    • Fix a security issue where eval(pre_dispatch) could potentially run arbitrary code. Now only basic numerics are supported. joblib/joblib#1327

    • Make sure that joblib works even when multiprocessing is not available, for instance with Pyodide joblib/joblib#1256

    • Avoid unnecessary warnings when workers and main process delete the temporary memmap folder contents concurrently. joblib/joblib#1263

    • Fix memory alignment bug for pickles containing numpy arrays. This is especially important when loading the pickle with mmap_mode != None as the resulting numpy.memmap object would not be able to correct the misalignment without performing a memory copy. This bug would cause invalid computation and segmentation faults with native code that would directly access the underlying data buffer of a numpy array, for instance C/C++/Cython code compiled with older GCC versions or some old OpenBLAS written in platform specific assembly. joblib/joblib#1254

    • Vendor cloudpickle 2.2.0 which adds support for PyPy 3.8+.

    • Vendor loky 3.3.0 which fixes several bugs including:

      • robustly forcibly terminating worker processes in case of a crash (joblib/joblib#1269);

      • avoiding leaking worker processes in case of nested loky parallel calls;

      • reliability spawn the correct number of reusable workers.

    Release 1.1.0

    • Fix byte order inconsistency issue during deserialization using joblib.load in cross-endian environment: the numpy arrays are now always loaded to use the system byte order, independently of the byte order of the system that serialized the pickle. joblib/joblib#1181

    • Fix joblib.Memory bug with the ignore parameter when the cached function is a decorated function.

    ... (truncated)

    Commits
    • 5991350 Release 1.2.0
    • 3fa2188 MAINT cleanup numpy warnings related to np.matrix in tests (#1340)
    • cea26ff CI test the future loky-3.3.0 branch (#1338)
    • 8aca6f4 MAINT: remove pytest.warns(None) warnings in pytest 7 (#1264)
    • 067ed4f XFAIL test_child_raises_parent_exits_cleanly with multiprocessing (#1339)
    • ac4ebd5 MAINT add back pytest warnings plugin (#1337)
    • a23427d Test child raises parent exits cleanly more reliable on macos (#1335)
    • ac09691 [MAINT] various test updates (#1334)
    • 4a314b1 Vendor loky 3.2.0 (#1333)
    • bdf47e9 Make test_parallel_with_interactively_defined_functions_default_backend timeo...
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Retrieving datas from SUMO simulation started with flow using TraCI from another terminal

    Retrieving datas from SUMO simulation started with flow using TraCI from another terminal

    I am using Flow to start a SUMO simulation integrating deep reinforcement learning inside the process. I am also using another computer to retrieve some data from the simulation using TraCI.

    The first problem is that flow does not assign the port I choose correctly. Secondly, the other computer connects to the SUMO simulation using TraCI, but as soon as it starts it goes out and doesn't save anything. The simulation keeps going on on the other computer.

    • THIS IS THE CODE I USE ON THE FIRST COMPUTER TO ASSIGN THE PORT AND THE CLIENTS FOR SUMO

    sim_params = SumoParams(port=45678, render=VISUALIZE_SIM_IN_SUMO, sim_step=1, num_clients=2)

    • THIS IS THE CODE I USE ON THE SECOND COMPUTER TO CONNECT WITH TRACI AND RETRIEVE DATA

    PORT = 49745 ( I need to set it once I start the simulation on the first computer since Flow does not use the port I specified at the beginning)

    traci.init(PORT,tc.DEFAULT_NUM_RETRIES,"second_computer.local") traci.setOrder(2) # number can be anything as long as each client gets its number

    If this solution is not achievable, do you know how to get this data from another terminal ?

    opened by LorenzoUccello 0
  • Bump lxml from 4.4.1 to 4.9.1

    Bump lxml from 4.4.1 to 4.9.1

    Bumps lxml from 4.4.1 to 4.9.1.

    Changelog

    Sourced from lxml's changelog.

    4.9.1 (2022-07-01)

    Bugs fixed

    • A crash was resolved when using iterwalk() (or canonicalize()) after parsing certain incorrect input. Note that iterwalk() can crash on valid input parsed with the same parser after failing to parse the incorrect input.

    4.9.0 (2022-06-01)

    Bugs fixed

    • GH#341: The mixin inheritance order in lxml.html was corrected. Patch by xmo-odoo.

    Other changes

    • Built with Cython 0.29.30 to adapt to changes in Python 3.11 and 3.12.

    • Wheels include zlib 1.2.12, libxml2 2.9.14 and libxslt 1.1.35 (libxml2 2.9.12+ and libxslt 1.1.34 on Windows).

    • GH#343: Windows-AArch64 build support in Visual Studio. Patch by Steve Dower.

    4.8.0 (2022-02-17)

    Features added

    • GH#337: Path-like objects are now supported throughout the API instead of just strings. Patch by Henning Janssen.

    • The ElementMaker now supports QName values as tags, which always override the default namespace of the factory.

    Bugs fixed

    • GH#338: In lxml.objectify, the XSI float annotation "nan" and "inf" were spelled in lower case, whereas XML Schema datatypes define them as "NaN" and "INF" respectively.

    ... (truncated)

    Commits
    • d01872c Prevent parse failure in new test from leaking into later test runs.
    • d65e632 Prepare release of lxml 4.9.1.
    • 86368e9 Fix a crash when incorrect parser input occurs together with usages of iterwa...
    • 50c2764 Delete unused Travis CI config and reference in docs (GH-345)
    • 8f0bf2d Try to speed up the musllinux AArch64 build by splitting the different CPytho...
    • b9f7074 Remove debug print from test.
    • b224e0f Try to install 'xz' in wheel builds, if available, since it's now needed to e...
    • 897ebfa Update macOS deployment target version from 10.14 to 10.15 since 10.14 starts...
    • 853c9e9 Prepare release of 4.9.0.
    • d3f77e6 Add a test for https://bugs.launchpad.net/lxml/+bug/1965070 leaving out the a...
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump numpy from 1.18.4 to 1.22.0

    Bump numpy from 1.18.4 to 1.22.0

    Bumps numpy from 1.18.4 to 1.22.0.

    Release notes

    Sourced from numpy's releases.

    v1.22.0

    NumPy 1.22.0 Release Notes

    NumPy 1.22.0 is a big release featuring the work of 153 contributors spread over 609 pull requests. There have been many improvements, highlights are:

    • Annotations of the main namespace are essentially complete. Upstream is a moving target, so there will likely be further improvements, but the major work is done. This is probably the most user visible enhancement in this release.
    • A preliminary version of the proposed Array-API is provided. This is a step in creating a standard collection of functions that can be used across application such as CuPy and JAX.
    • NumPy now has a DLPack backend. DLPack provides a common interchange format for array (tensor) data.
    • New methods for quantile, percentile, and related functions. The new methods provide a complete set of the methods commonly found in the literature.
    • A new configurable allocator for use by downstream projects.

    These are in addition to the ongoing work to provide SIMD support for commonly used functions, improvements to F2PY, and better documentation.

    The Python versions supported in this release are 3.8-3.10, Python 3.7 has been dropped. Note that 32 bit wheels are only provided for Python 3.8 and 3.9 on Windows, all other wheels are 64 bits on account of Ubuntu, Fedora, and other Linux distributions dropping 32 bit support. All 64 bit wheels are also linked with 64 bit integer OpenBLAS, which should fix the occasional problems encountered by folks using truly huge arrays.

    Expired deprecations

    Deprecated numeric style dtype strings have been removed

    Using the strings "Bytes0", "Datetime64", "Str0", "Uint32", and "Uint64" as a dtype will now raise a TypeError.

    (gh-19539)

    Expired deprecations for loads, ndfromtxt, and mafromtxt in npyio

    numpy.loads was deprecated in v1.15, with the recommendation that users use pickle.loads instead. ndfromtxt and mafromtxt were both deprecated in v1.17 - users should use numpy.genfromtxt instead with the appropriate value for the usemask parameter.

    (gh-19615)

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
Releases(v0.4.1)
  • v0.4.1(Sep 8, 2019)

    • introduced support for a new RL library, stable-baselines: https://github.com/hill-a/stable-baselines
    • removed and deprecated all rllab features
    • introduced a multi-lane generic highway network with on- and off-ramps
    • added a tutorial on running the bottleneck experiments
    • added a tutorial for running RLlib experiments on EC2 servers
    • some refactoring to features in grid network
    • increased unit test coverage for renderer features
    Source code(tar.gz)
    Source code(zip)
  • v0.4.0(Jul 21, 2019)

  • v0.3.1(Jun 11, 2019)

    This is the final release before we are switching to a more recent version of SUMO. Some changes include:

    • Cleanup to many of the scripts from redundant or unsed pieces of code.
    • Modifications to aimsun functionality and inclusion of an aimsun scripting class.
    • Extended unit test coverage. Our coverage is now about 90%.
    • Tutorials on using OpenStreetMap and Network Template scenarios.
    • Updated behavior to some of the examples and benchmarks to be compatible with the newer version of SUMO.
    Source code(tar.gz)
    Source code(zip)
  • v0.3.0(Mar 7, 2019)

    • support for a new traffic simulator: Aimsun
    • simulator specific commands were abstracted and moved from the environments to a kernel class, consisting of simulation, scenario, vehicle, and traffic_light subkernels. The subkernels were implemented for SUMO and Aimsun, and further ones can be created to support a plethora of other traffic simulators
    Source code(tar.gz)
    Source code(zip)
Owner
null
Provide baselines and evaluation metrics of the task: traffic flow prediction

Note: This repo is adpoted from https://github.com/UNIMIBInside/Smart-Mobility-Prediction. Due to technical reasons, I did not fork their code. Introd

Zhangzhi Peng 11 Nov 2, 2022
DeepSTD: Mining Spatio-temporal Disturbances of Multiple Context Factors for Citywide Traffic Flow Prediction

DeepSTD: Mining Spatio-temporal Disturbances of Multiple Context Factors for Citywide Traffic Flow Prediction This is the implementation of DeepSTD in

null 5 Sep 26, 2022
DI-smartcross - Decision Intelligence Platform for Traffic Crossing Signal Control

DI-smartcross DI-smartcross - Decision Intelligence Platform for Traffic Crossin

OpenDILab 213 Jan 2, 2023
Just Go with the Flow: Self-Supervised Scene Flow Estimation

Just Go with the Flow: Self-Supervised Scene Flow Estimation Code release for the paper Just Go with the Flow: Self-Supervised Scene Flow Estimation,

Himangi Mittal 50 Nov 22, 2022
PyTorch framework, for reproducing experiments from the paper Implicit Regularization in Hierarchical Tensor Factorization and Deep Convolutional Neural Networks

Implicit Regularization in Hierarchical Tensor Factorization and Deep Convolutional Neural Networks. Code, based on the PyTorch framework, for reprodu

Asaf 3 Dec 27, 2022
PyTorch Personal Trainer: My framework for deep learning experiments

Alex's PyTorch Personal Trainer (ptpt) (name subject to change) This repository contains my personal lightweight framework for deep learning projects

Alex McKinney 8 Jul 14, 2022
A general framework for deep learning experiments under PyTorch based on pytorch-lightning

torchx Torchx is a general framework for deep learning experiments under PyTorch based on pytorch-lightning. TODO list gan-like training wrapper text

Yingtian Liu 6 Mar 17, 2022
A Python framework for developing parallelized Computational Fluid Dynamics software to solve the hyperbolic 2D Euler equations on distributed, multi-block structured grids.

pyHype: Computational Fluid Dynamics in Python pyHype is a Python framework for developing parallelized Computational Fluid Dynamics software to solve

Mohamed Khalil 21 Nov 22, 2022
ROS-UGV-Control-Interface - Control interface which can be used in any UGV

ROS-UGV-Control-Interface Cam Closed: Cam Opened:

Ahmet Fatih Akcan 1 Nov 4, 2022
Hand Gesture Volume Control is AIML based project which uses image processing to control the volume of your Computer.

Hand Gesture Volume Control Modules There are basically three modules Handtracking Program Handtracking Module Volume Control Program Handtracking Pro

VITTAL 1 Jan 12, 2022
null 190 Jan 3, 2023
Computational Methods Course at UdeA. Forked and size reduced from:

Computational Methods for Physics & Astronomy Book version at: https://restrepo.github.io/ComputationalMethods by: Sebastian Bustamante 2014/2015 Dieg

Diego Restrepo 11 Sep 10, 2022
Official PyTorch code for Hierarchical Conditional Flow: A Unified Framework for Image Super-Resolution and Image Rescaling (HCFlow, ICCV2021)

Hierarchical Conditional Flow: A Unified Framework for Image Super-Resolution and Image Rescaling (HCFlow, ICCV2021) This repository is the official P

Jingyun Liang 159 Dec 30, 2022
Official PyTorch code for Hierarchical Conditional Flow: A Unified Framework for Image Super-Resolution and Image Rescaling (HCFlow, ICCV2021)

Hierarchical Conditional Flow: A Unified Framework for Image Super-Resolution and Image Rescaling (HCFlow, ICCV2021) This repository is the official P

Jingyun Liang 159 Dec 30, 2022
AI Flow is an open source framework that bridges big data and artificial intelligence.

Flink AI Flow Introduction Flink AI Flow is an open source framework that bridges big data and artificial intelligence. It manages the entire machine

null 144 Dec 30, 2022
Algorithmic trading with deep learning experiments

Deep-Trading Algorithmic trading with deep learning experiments. Now released part one - simple time series forecasting. I plan to implement more soph

Alex Honchar 1.4k Jan 2, 2023
TorchOk - The toolkit for fast Deep Learning experiments in Computer Vision

TorchOk - The toolkit for fast Deep Learning experiments in Computer Vision

null 52 Dec 23, 2022
Code to reproduce the experiments from our NeurIPS 2021 paper " The Limitations of Large Width in Neural Networks: A Deep Gaussian Process Perspective"

Code To run: python runner.py new --save <SAVE_NAME> --data <PATH_TO_DATA_DIR> --dataset <DATASET> --model <model_name> [options] --n 1000 - train - t

Geoff Pleiss 5 Dec 12, 2022