A simulation and AI development framework for air traffic control.
Project description
The bluebird_dt digital twin.
The python package bluebird_dt encodes a digital twin of an airspace, including classes that represent:
- The geometry of the airspace - Sectors, Volumes, Airways, Fixes, ...
- Aircraft, with properties such as location, heading, flight level, ...
- Predictors, to model how the aircraft parameters evolve with the simulation.
- Action, defining the schema by which agents can interact with the simulation.
- Infrastructure classes such as Simulator, ScenarioManagers, EventHandlers, logger, to allow the user to define and run simulated ATC scenarios.
The user will typically instantiate a Simulator, providing a scenario category and a scenario name. The Simulator instance can then evolve through finite time steps (typically 6 seconds), and at each step it can receive Actions, and provide an Environment, which contains the full instantaneous representation of the simulation state.
This basic loop is demonstrated in the example notebook simulation.ipynb.
Quickstart
Prerequisites
We recommend using the uv, package manager to install and run bluebird_dt. Installation instructions for UV are available here.
Installation
Clone the BluebirdATC repository, and cd to this directory:
git clone https://github.com/project-bluebird/BluebirdATC
cd BluebirdATC/bluebird-dt
You can then install all the dependencies by running the command
uv sync
(though they will anyway be installed when needed if you do uv run before any other command, e.g. uv run python).
Documentation
The online documentation for the bluebird_dt package can be found by running the command:
../scripts/docs-serve
from this directory, then navigating a web browser to http://localhost:8010.
Notebooks
Various examples of using the bluebird_dt package can be found in the form of Jupyter notebooks in the [examples] directory. To run these, type:
uv run jupyter notebook
then navigating a web browser to http://localhost:8888 (if it doesn't open automatically).
Running the digital twin as a server.
A FastApi app is included, allowing the simulation to be run as a server, with the user (or an agent) interacting via a REST API. For information on this, see here.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bluebird_dt-0.1.0.tar.gz.
File metadata
- Download URL: bluebird_dt-0.1.0.tar.gz
- Upload date:
- Size: 638.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.11 {"installer":{"name":"uv","version":"0.11.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
74f798d033195e6564b3eced44fbf787ebe74aa0c85b18f37879bfc3cdb98d3e
|
|
| MD5 |
66db3afcdfeb93c1746ab142a2b59a73
|
|
| BLAKE2b-256 |
d87cc2bfb6b6c0aab9d31a2f876aa98f86ba741e0832286a56c9d3e38a94304d
|
File details
Details for the file bluebird_dt-0.1.0-py3-none-any.whl.
File metadata
- Download URL: bluebird_dt-0.1.0-py3-none-any.whl
- Upload date:
- Size: 767.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.11 {"installer":{"name":"uv","version":"0.11.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a3cb925a89d37e84b077e6e5a7f16b594d0b23baa7bb820cfe759af5bd2f6396
|
|
| MD5 |
eff4376397df982feb3751580001e492
|
|
| BLAKE2b-256 |
f5f84003c211484d857c78883fe1c1d11d58367a8783fc09909fbf2d5b1ccfa6
|