Skip to content

Experiments

Experiment notebooks compare reward and safety behavior across baseline and shielded agents.

Standard Flags

Experiment notebooks commonly use these run switches:

  • run_ippo
  • run_ippo_lag
  • run_icpo
  • run_ippo_shielded
  • run_ippo_true_shielded
  • just_vis

Shield-specific debugging often uses:

  • shield_debug_mode
  • shield_trace_limit
  • shield_missing_coverage_log_limit
  • shield_patience

Use command-line kebab case when running scripts:

uv run python notebooks/matrix/chicken/experiments_mo.py \
  --run-ippo=true \
  --run-ippo-shielded=true \
  --shield-debug-mode=minimal

Baseline Runs

Baseline IPPO, IPPO Lagrangian, and ICPO runs only need the environment. They do not need world-model or opponent-model artifacts.

This is useful when checking that an environment and training loop work before running the full shielded pipeline.

Shielded Runs

Learned shielded runs need:

wm/env_transition_graph.pkl
om/iop_stack.pt

True-shielded runs need the cached exact true-shield graph under the environment's true_shield/ export directory.

Results

Experiment outputs usually include:

  • history files,
  • cumulative reward and safety plots,
  • episodic reward and safety plots,
  • shield telemetry summaries,
  • timing entries in the shared timing sidecar.

The exact file set depends on the environment and selected run flags.