flow-project / flow

Computational framework for reinforcement learning in traffic control
MIT License
1.04k stars 369 forks source link

Support for Swarm Intelligence and Evolutionary Algorithms #549

Open BHGEdeveloper opened 5 years ago

BHGEdeveloper commented 5 years ago

I am interested in using Flow for VANETs (Vehicular Ad hoc NETworks) routing protocols, which play a key role in the design and development of Intelligent Transportation Systems. Besides RL, genetic algorithms, particle swarm, ant and bee colony optimization based routing algorithms for VANETs already exists in literature. Does Flow supports these algorithms? If not, how difficult would it be to integrate these algorithms from python or C++ libraries.

eugenevinitsky commented 5 years ago

Definitely! Flow is abstractly written to support the gym interface so you can always write a wrapper environment that calls the step and reset methods of Flow and then performs training around it. Essentially all Flow cares about is that you have a method that computes actions and passes it to Flow's step function, and then a method for resetting the environment when a rollout is done. We do not however, have these algorithms built in. If you have a more specific use case in mind we're happy to help sketch out in detail what that might look like.

BHGEdeveloper commented 5 years ago

I know Flow is integrated with SUMO. For VANET experiments, I need wireless communication networks simulator such as OMNeT++ (https://omnetpp.org/intro/) alongside of road traffic network simulator like SUMO. Does Flow supports any wireless communication networks simulator?

eugenevinitsky commented 5 years ago

Hi @BHGEdeveloper we haven't put any work into integrating those wireless communication simulators; if you're interested in building out or testing such support I can't imagine it'll be a ton of work and we're happy to help you sketch out how the integration would look like!

Generally when I want to do vehicle to vehicle communication, I just make it part of the action space.