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)
Deep learning model, heat map, data prepo

deep learning model, heat map, data prepo

Pamela Dekas 1 Jan 14, 2022
Single-Stage Instance Shadow Detection with Bidirectional Relation Learning (CVPR 2021 Oral)

Single-Stage Instance Shadow Detection with Bidirectional Relation Learning (CVPR 2021 Oral) Tianyu Wang*, Xiaowei Hu*, Chi-Wing Fu, and Pheng-Ann Hen

Steve Wong 51 Oct 20, 2022
DeepAL: Deep Active Learning in Python

DeepAL: Deep Active Learning in Python Python implementations of the following active learning algorithms: Random Sampling Least Confidence [1] Margin

Kuan-Hao Huang 583 Jan 03, 2023
Shuffle Attention for MobileNetV3

SA-MobileNetV3 Shuffle Attention for MobileNetV3 Train Run the following command for train model on your own dataset: python train.py --dataset mnist

Sajjad Aemmi 36 Dec 28, 2022
Official implementation of "StyleCariGAN: Caricature Generation via StyleGAN Feature Map Modulation" (SIGGRAPH 2021)

StyleCariGAN in PyTorch Official implementation of StyleCariGAN:Caricature Generation via StyleGAN Feature Map Modulation in PyTorch Requirements PyTo

PeterZhouSZ 49 Oct 31, 2022
FS-Mol: A Few-Shot Learning Dataset of Molecules

FS-Mol is A Few-Shot Learning Dataset of Molecules, containing molecular compounds with measurements of activity against a variety of protein targets. The dataset is presented with a model evaluation

Microsoft 114 Dec 15, 2022
Official Python implementation of the 'Sparse deconvolution'-v0.3.0

Sparse deconvolution Python v0.3.0 Official Python implementation of the 'Sparse deconvolution', and the CPU (NumPy) and GPU (CuPy) calculation backen

Weisong Zhao 23 Dec 28, 2022
An educational resource to help anyone learn deep reinforcement learning.

Status: Maintenance (expect bug fixes and minor updates) Welcome to Spinning Up in Deep RL! This is an educational resource produced by OpenAI that ma

OpenAI 7.6k Jan 09, 2023
PyG (PyTorch Geometric) - A library built upon PyTorch to easily write and train Graph Neural Networks (GNNs)

PyG (PyTorch Geometric) is a library built upon PyTorch to easily write and train Graph Neural Networks (GNNs) for a wide range of applications related to structured data.

PyG 16.5k Jan 08, 2023
Video Matting Refinement For Python

Video-matting refinement Library (use pip to install) scikit-image numpy av matplotlib Run Static background python path_to_video.mp4 Moving backgroun

3 Jan 11, 2022
ElegantRL is featured with lightweight, efficient and stable, for researchers and practitioners.

Lightweight, efficient and stable implementations of deep reinforcement learning algorithms using PyTorch. 🔥

AI4Finance 2.5k Jan 08, 2023
Quantum-enhanced transformer neural network

Example of a Quantum-enhanced transformer neural network Get the code: git clone https://github.com/rdisipio/qtransformer.git cd qtransformer Create

Riccardo Di Sipio 61 Nov 08, 2022
Python Assignments for the Deep Learning lectures by Andrew NG on coursera with complete submission for grading capability.

Python Assignments for the Deep Learning lectures by Andrew NG on coursera with complete submission for grading capability.

Utkarsh Agiwal 1 Feb 03, 2022
use tensorflow 2.0 to tell a dog and cat from a specified picture

dog_or_cat use tensorflow 2.0 to tell a dog and cat from a specified picture This is one of the classic experiments for the introduction of deep learn

你这个代码我看不懂 1 Oct 22, 2021
A Strong Baseline for Image Semantic Segmentation

A Strong Baseline for Image Semantic Segmentation Introduction This project is an open source semantic segmentation toolbox based on PyTorch. It is ba

Clark He 49 Sep 20, 2022
Implement the Pareto Optimizer and pcgrad to make a self-adaptive loss for multi-task

multi-task_losses_optimizer Implement the Pareto Optimizer and pcgrad to make a self-adaptive loss for multi-task 已经实验过了,不会有cuda out of memory情况 ##Par

14 Dec 25, 2022
GAN JAX - A toy project to generate images from GANs with JAX

GAN JAX - A toy project to generate images from GANs with JAX This project aims to bring the power of JAX, a Python framework developped by Google and

Valentin Goldité 14 Nov 29, 2022
Systematic generalisation with group invariant predictions

Requirements are Python 3, TensorFlow v1.14, Numpy, Scipy, Scikit-Learn, Matplotlib, Pillow, Scikit-Image, h5py, tqdm. Experiments were run on V100 GPUs (16 and 32GB).

Faruk Ahmed 30 Dec 01, 2022
Official code for Spoken ObjectNet: A Bias-Controlled Spoken Caption Dataset

Official code for our Interspeech 2021 - Spoken ObjectNet: A Bias-Controlled Spoken Caption Dataset [1]*. Visually-grounded spoken language datasets c

Ian Palmer 3 Jan 26, 2022
Official implementation of "Implicit Neural Representations with Periodic Activation Functions"

Implicit Neural Representations with Periodic Activation Functions Project Page | Paper | Data Vincent Sitzmann*, Julien N. P. Martel*, Alexander W. B

Vincent Sitzmann 1.4k Jan 06, 2023