WARNING : This projet is a work in progress, onging changes are likely to break some of the functionalities
CybMASDE (Cyber Multi-Agent System Design Environment) is a modular and extensible platform for the design, training, analysis, and deployment of multi-agent systems (MAS). It implements the MAMAD method (MOISE+MARL Assisted MAS Design), combining:
- Modelling: generation of simulated environments (via World Models or MCAS)
- Training: multi-agent learning constrained by organizational specifications (MOISE+MARL)
- Analyzing: inference and explainability of organizational structures (Auto-TEMM / TEMM)
- Transferring: deployment and synchronization with real environments
Its purpose is to produce joint policies that are efficient, stable, and explainable, applicable both in academic research and industrial contexts (with a strong focus on cyber-defense).
-
Structured project creation and validation (
init
,validate
) -
Automatic environment modelling via World Models (VAE, LSTM, JOPM) or manual modelling via MCAS
-
Multi-agent training with MARLlib + Ray RLlib (MAPPO, MADDPG, QMIX, etc.)
-
Native integration of MOISE+MARL organizational constraints (action masking, reward shaping)
-
Organizational analysis with Auto-TEMM: trajectory clustering, role/goal extraction, organizational metrics (SOF, FOF, OF)
-
Automatic or manual refinement loops combining training and analysis
-
Deployment into real environments, with two execution modes:
- DIRECT: policy embedded in the agents
- REMOTE: policy executed by CybMASDE, actions sent to agents via API
-
Result tracking and export (logs, metrics, visualizations, organizational specifications in JSON/CSV/YAML)
CybMASDE is organized around a Python backend orchestrated by a REST API, accessible via:
- a unified CLI (
cybmasde ...
) for automation (batch/HPC), - an Angular-based GUI for project configuration and visual monitoring.
Core technologies:
- Python 3.8+ / Flask: backend and REST API
- PyTorch: training World Models (VAE, LSTM)
- MARLlib + Ray RLlib: scalable multi-agent reinforcement learning
- Optuna: hyperparameter optimization
- Angular: modern and ergonomic GUI
git clone https://github.com/julien6/CybMASDE.git
cd CybMASDE
pip install -r requirements.txt
Optional: for the GUI
cd frontend
npm install
npm start
cybmasde init -n overcooked_test --template worldmodel
cybmasde validate
cybmasde run --full-auto \
--project ./overcooked_test \
--max-refine 10 \
--reward-threshold 3.5 \
--std-threshold 0.05 \
--accept-inferred
cybmasde deploy --remote --api http://localhost:8080/api
cybmasde export --format json --output ./results
<project_name>/
│── project_configuration.json # main configuration
│── modelling/ # simulated environments + MCAS
│── training/ # hyperparameters, checkpoints
│── analyzing/ # metrics, visualizations, inferred specs
│── transferring/ # configuration and deployment
└── label_manager.py # observation/action label mapping
- Academic research: rapid prototyping of MARL environments, organizational explainability via Auto-TEMM
- Cyber-defense: integration with real infrastructures (via environment APIs) to evaluate resilience and adaptability
- Industry: deployment of robust and interpretable policies in distributed environments
- Method MAMAD: MOISE+MARL Assisted MAS Design
- Organizational framework MOISE+MARL API (MMA): github.com/julien6/MOISE-MARL
- Libraries: MARLlib, Ray RLlib, Optuna
- Associated PhD thesis: see
/docs
Developed in the context of a PhD in Distributed AI for Cyber-Defense, by Julien Soule.