This project is a fork of the BlueSky Air Traffic Simulator developed by TU Delft, focused on advancing air traffic management for Urban Air Mobility (UAM).
The platform uses the Demand Capacity Balancing (DCB) algorithm to precondition traffic, followed by a tactical deconfliction method that provides maneuver advisories, such as speed changes, to mitigate in-air collisions. For detailed insights, refer to our research paper: Integrated Conflict Management for UAM with Strategic Demand Capacity Balancing and Learning-based Tactical Deconfliction.
Video Demonstrations:
Please note that this repository currently includes only the DCB algorithm and the rule-based tactical deconfliction method. The reinforcement learning tactical methods described in the paper will be publicly available soon after our internal review.
To get started with the Integrated Conflict Management Platform for UAM, follow these steps:
- Clone the Codebase: Begin by cloning the codebase and installing the necessary packages.
- Generate Scenario Files:
Navigate to
bluesky-DCB/supports
and rungenerate_scn_files.py
. This script calls the DCB module to generate scenario files. - Run the Simulation:
Test the performance of the DCB and tactical deconfliction method by running the simulation script located at
bluesky-DCB/rule_based_tactical.py
. - Replay Experiment and Access GUI:
To replay the experiment and view the GUI, run
bluesky-DCB/BlueSky.py
. Then, clickFile -> Open
and select the saved scenario filerb_result.scn
. - View Experiment Results:
All necessary experiment results, including data and logs, are saved in the
bluesky-DCB/result
directory.
BlueSky is meant as a tool to perform research on Air Traffic Management and Air Traffic Flows, and is distributed under the GNU General Public License v3.
The goal of BlueSky is to provide everybody who wants to visualize, analyze or simulate air traffic with a tool to do so without any restrictions, licenses or limitations. It can be copied, modified, cited, etc. without any limitations.
Citation info: J. M. Hoekstra and J. Ellerbroek, "BlueSky ATC Simulator Project: an Open Data and Open Source Approach", Proceedings of the seventh International Conference for Research on Air Transport (ICRAT), 2016.
BlueSky is also available as a pip package, for which periodically version releases are made. You can find the latest release here: https://github.com/TUDelft-CNS-ATM/bluesky/releases The BlueSky pip package is installed with the following command:
pip install bluesky-simulator[full]
Using ZSH? Add quotes around the package name: "bluesky-simulator[full]"
. For more installation instructions go to the Wiki.
Installation and user guides are accessible at: https://github.com/TUDelft-CNS-ATM/bluesky/wiki
- Written in the freely available, ultra-simple-hence-easy-to-learn, multi-platform language Python 3 (using numpy and either pygame or Qt+OpenGL for visualisation) with source
- Extensible by means of self-contained plugins
- Contains open source data on navaids, performance data of aircraft and geography
- Global coverage navaid and airport data
- Contains simulations of aircraft performance, flight management system (LNAV, VNAV under construction), autopilot, conflict detection and resolution and airborne separation assurance systems
- Compatible with BADA 3.x data
- Compatible wth NLR Traffic Manager TMX as used by NLR and NASA LaRC
- Traffic is controlled via user inputs in a console window or by playing scenario files (.SCN) containing the same commands with a time stamp before the command ("HH:MM:SS.hh>")
- Mouse clicks in traffic window are use in console for lat/lon/heading and position inputs
BlueSky can be considered 'perpetual beta'. We would like to encourage anyone with a strong interest in ATM and/or Python to join us. Please feel free to comment, criticise, and contribute to this project. Please send suggestions, proposed changes or contributions through GitHub pull requests, preferably after debugging it and optimising it for run-time performance.