github.com/sisl/POMDPStressTesting.jl ↗
Adaptive stress testing of black-box systems within POMDPs.jl
Open this visualization on its own page →
Contributors
1
Lines of Code
428
From
2020-01-16
To
2020-11-12
About sisl/POMDPStressTesting.jl
POMDPStressTesting.jl is a Julia package that implements adaptive stress testing for black-box systems within the POMDPs.jl ecosystem. The package allows researchers and developers to systematically test systems for failure modes by formulating stress testing as a decision-making problem that can be solved using various optimization algorithms.
The package provides a flexible framework where users define a GrayBox interface for their simulator and environment, and a BlackBox interface for the system under test. The GrayBox handles simulation dynamics and environmental distributions, while the BlackBox specifies how to initialize the system, evaluate its behavior, compute distance metrics to failure events, and detect when failures occur. Several solvers are available for finding failure cases, including Monte Carlo Tree Search with progressive widening, policy gradient methods like TRPO and PPO, cross-entropy method optimization, and random search baselines.
The project targets researchers and practitioners working on autonomous systems validation, safety verification, and robustness testing. It includes a complete example implementation for a simple Walk1D problem with both source code and Jupyter notebook documentation, making it accessible for users new to adaptive stress testing. The package is maintained as an open-source research tool and welcomes community contributions.