Skip to content

Multiagent Probabilistic Shielding

This project studies how an agent can act well and stay safe when the world is uncertain and other agents are changing around it.

The guiding idea is:

World Modelling -> Opponent Modelling -> Probabilistic Shielding

First, the agent learns or builds a model of the environment. Then it uses that model to reason about other agents. Finally, it uses both pieces to filter risky decisions before they reach the environment.

What the Project Builds

The repository is organized around a three-stage workflow:

  1. World modelling learns environment dynamics and rewards over a legal joint state-action graph.
  2. Opponent modelling trains a stack of reasoning levels that estimate what the other agents will do.
  3. Probabilistic shielding wraps the learner with a runtime safety filter that replaces actions whose estimated probability of eventually reaching an unsafe state is too high.

The system is designed for multi-agent reinforcement-learning experiments where reward is not enough. A policy may score well but still take unacceptable risks, especially when other agents are strategic, adaptive, or poorly modelled.

How to Read These Docs

Start with Get Started if you want to run the project.

Read Concepts if you want the mental model before opening notebooks.

Use Workflows when you need to understand the artifact chain from notebooks to exports.

Use Reference for supported environments, algorithms, terminology, and common failure modes.

User Docs and Technical Notes

These pages are the user-facing documentation. They explain the project at the level needed to run, inspect, and discuss experiments.

Long-lived implementation notes live in AI notes. Those notes are deeper and more developer-oriented: design choices, migration details, and edge cases that should not crowd the main user docs.