Introduction
Aerie is an open source, extensible software system for planning, scheduling, and commanding space missions. Developed and maintained by NASA's Advanced Multi-Mission Operation System (AMMOS), it provides modeling and simulation capabilities that can be used for mission planning and analysis during project formulation all the way through operations, where it can be used to manage and validate spacecraft activity plans. Aerie is actively being used on flagship missions like Europa Clipper, but is equally suitable for smaller missions and constellations.
Some of the main features of Aerie include:
- A library to write mission models in the Java programming language
- A highly performant discrete-event simulator
- An embedded domain specific language (EDSL) for defining and executing goal-based scheduling rules
- An EDSL for defining and executing activity and resource constraints
- An EDSL for defining and executing activity command expansions
- An EDSL for defining sequences, and a fully-featured browser-based sequence editor
- A GraphQL API so you can easily build tools on top of Aerie
- A web-based client application
As a multi-tenant system, Aerie allows multiple distributed users to collaborate in real-time on a single plan or concurrently work on multiple plans for multiple missions. Additionally, Aerie's service based architecture allows for efficient system deployment and scalability on the cloud.
Fast Track ⏱️
Understand Aerie in 5 minutes by trying it out!
Before starting you first need to install Docker on your local machine. The Aerie system is essentially a collection of OCI images.
If you’re running macOS, Linux, or another Unix-like OS you can use following two commands in your terminal to download the Docker Compose file and
.env
file:curl https://raw.githubusercontent.com/NASA-AMMOS/aerie-mission-model-template/main/docker-compose.yml --output docker-compose.yml
curl https://raw.githubusercontent.com/NASA-AMMOS/aerie-mission-model-template/refs/heads/main/.env.template --output .envIf you're running a different OS and do not have curl available you can download the docker-compose.yml here and the .env file here (rename to
.env
).Note that this compose file starts the latest version of Aerie. The Aerie version can be specified by changing the
DOCKER_TAG
variable in the.env
file to any valid Aerie release.To start the Aerie services you can use the following command in the same directory as the
docker-compose.yml
file from the previous step:docker compose up
Visit http://localhost/ to view the Aerie UI.
Note that the fast track deployment is not configured to connect to an authentication and authorization provider, therefore any credentials are accepted.
Head over to the planning documentation to learn how to upload a mission model.