Git Product home page Git Product logo

gym-guidance-collision-avoidance-single's Introduction

Status: Active (under active development, breaking changes may occur)

Reference: https://www.researchgate.net/publication/339630970_Autonomous_On-Demand_Free_Flight_Operations_in_Urban_Air_Mobility_using_Monte_Carlo_Tree_Search

gym-guidance-collision-avoidance-single

Control a single aircraft (yellow aircraft) to reach the goal position (green star) while avoiding conflicts with other intruder aircraft (red aircraft).

Parameter of the environments can be found in config.py.

SingleAircraftEnv

The action space is discrete: -1, 0, 1 for change of heading and -1, 0, 1 for the throttle.

SingleAircraft2Env

The action space is continuous: [-1, 1] for change of heading and [-1, 1] for the throttle.

SingleAircraftStackEnv

The input state is the whole image of the map, with four most recent frames stacked together. Action space is discrete.

SingleAircraftHEREnv

The environment designed to implement Hindsight Experience Replay algorithm. The observation space is of the following form:

OrderedDict([('achieved_goal', Box),
             ('desired_goal', Box),
             ('observation', Box)])

The action space is continuous.

SingleAircraftDiscrete3HEREnv, SingleAircraftDiscrete9HEREnv

The environment designed to implement Hindsight Experience Replay algorithm with 3/9 discrete actions.

OpenAI baselines

You can use baselines algorithms from OpenAI to solve this problem. Simply run the following:

For discrete action space

cd baselines-master
python -m baselines.run --env=guidance-collision-avoidance-single-v0 --alg=deepq

For continuous action space

cd baselines-master
python -m baselines.run --env=guidance-collision-avoidance-single-continuous-action-v0 --alg=ddpg

Optional arguments:

--save_path the path where you want to save the model

--load_path the path where you want to load the model

--num_timesteps total time steps the agent will be trained

More optional can be found in the documentation of OpenAI baselines repository.

MCTS

Use Monte Carlo Tree Search Algorithm to solve this problem. Details can be found at the above reference. Run

cd Algorithms/MCTS
python Agent.py

gym-guidance-collision-avoidance-single's People

Contributors

lisenddd avatar xuxiyang1993 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.