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.
Getting started
Installation
bluebird-dt is available on pypi, therefore it can be installed using
pip install bluebird-dt
or, if using UV, you can add it to your environment using
uv add bluebird-dt
Making an agent
To run your first simulation, run the following script which issues a single instruction to an aircraft.
from bluebird_dt.core import Action
from bluebird_dt.simulator.simulator import Simulator
# Use Simulator
sim = Simulator.from_category("Artificial", "I-Sector Two Aircraft")
# Evolve for 60 seconds, in 6 second radar sweeps
for _ in range(0, 10):
sim.evolve(6)
# List all the aircraft in the airspace
print(sim.manager.environment.aircraft)
# Issue an action to one of the aircraft
sim.manager.receive_actions(
[
Action("AIR0", "change_flight_level_to", 200)
]
)
This example is very simple, various examples of using the bluebird_dt package can be found in the form of Jupyter notebooks in the examples directory.
Documentation
The online documentation for the bluebird_dt package can be found at in https://docs.projectbluebird.ai
Running the digital twin as a server.
A FastApi app is available as bluebird-api, 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 GitHub or Pypi.
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.2.0.tar.gz.
File metadata
- Download URL: bluebird_dt-0.2.0.tar.gz
- Upload date:
- Size: 840.7 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 |
4e10bd7887730bc428f3a2c9f38f2cab455e6c9f6c6c3e259412afcdc88d1d0e
|
|
| MD5 |
e619fe734ba4dfdb26aecb03443ad33d
|
|
| BLAKE2b-256 |
6fc4101ebeddc0ead3a755b8744edf9aadce3b1152b1094bd2aaa1c39656cd1e
|
File details
Details for the file bluebird_dt-0.2.0-py3-none-any.whl.
File metadata
- Download URL: bluebird_dt-0.2.0-py3-none-any.whl
- Upload date:
- Size: 1.0 MB
- 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 |
299ec22fb33f0815e9f3528dfc110fa68572e9815580ec585ac2de183f56f096
|
|
| MD5 |
ae072a977c07bd65abad4afb0bf5d227
|
|
| BLAKE2b-256 |
79f380d59a57511eb4cc9e02faec44ef6a8f7725772391209f0c811c03f66aba
|