Quickstart
This guide walks you through setting up MAS-Aviary, running your first optimization, and viewing results.
Prerequisites
Python 3.12+ (for MAS-Aviary)
The Aviary MCP server (separate conda env, Python 3.11)
NVIDIA GPU with CUDA 12.x (for Qwen3-8B inference)
Installation
Clone the repository
git clone https://github.com/Jezemba/MAS-Aviary.git cd MAS-Aviary
Create and activate a virtual environment
python -m venv .venv source .venv/bin/activate # Linux / macOS .venv\Scripts\activate # Windows
Install dependencies
pip install -e .
Starting the Aviary MCP Server
The Aviary MCP server must be running before you launch any optimization. It exposes 9 aircraft design tools that agents interact with via the Model Context Protocol.
# Clone and install in a separate conda environment
git clone https://github.com/Jezemba/Aviary.git
cd Aviary
conda create -n aviary python=3.11 -y
conda activate aviary
pip install -r requirements.txt
# Start the server (listens on http://localhost:8600/mcp)
python server/aviary_mcp_server.py
See the Aviary README for full server documentation including design parameters, mission configuration, and tool reference.
Running a Single Optimization
The stat_batch_runner.py script executes one or more strategy combinations.
To run a single optimization with the Sequential + Iterative Feedback strategy:
python scripts/stat_batch_runner.py \
--repeats 1 \
--combinations aviary_sequential_iterative_feedback
This will:
Load the configuration from
config/aviary_run.yamland the strategy-specific YAML files.Instantiate the coordinator, strategy, and handler.
Spawn agents that connect to the Aviary MCP server.
Execute the optimization loop.
Write results to the
results/directory.
Understanding the Output
Results are written as JSON files under results/. Each file contains:
{
"combination": "aviary_sequential_iterative_feedback",
"run_id": "20260319_143022_abc123",
"status": "completed",
"metrics": {
"fuel_burned_kg": 12345.6,
"gross_takeoff_weight_kg": 78900.1,
"wing_mass_kg": 4567.8
},
"agent_logs": [ "..." ],
"duration_seconds": 120.5
}
Key fields:
combination – The strategy combination that was executed.
metrics – The final aircraft design metrics produced by Aviary.
agent_logs – Detailed logs of each agent’s tool calls and reasoning.
duration_seconds – Wall-clock time for the full run.
Running the Dashboard
MAS-Aviary includes a Streamlit dashboard for visualizing results across strategy combinations and repeat runs.
streamlit run src/ui/app.py
The dashboard opens in your browser and provides:
Strategy Comparison – Side-by-side metrics for all eight combinations.
Run History – Time-series view of repeated runs.
Agent Traces – Step-by-step replay of agent reasoning and tool calls.
Metric Distributions – Box plots and histograms for fuel, GTOW, and wing mass across repeats.
Next Steps
Read the Architecture page to understand how strategies and handlers compose.
See Configuration for a full reference of every YAML config file.
Browse the API Reference for module-level documentation.