Release Notes
Highlights
-
Added plotting capabilities for stochastic constraint problems, along with the new FCSA solver, the SAN-2 problem, and a corresponding demo notebook.
-
Refactored the solver, problem, and model classes, improved budget tracking, migrated configuration to Pydantic, and simplified how problem and solver metadata are specified.
-
Replaced the Ruby-based NOLHS generator with a native Python implementation integrated into the GUI and data-farming workflow.
-
Introduced input-model hooks that allow simulations to load data from custom sources, with a new data-driven walkthrough notebook.
-
Added a Rust-based MRG32K3A random number generator, optionally enabled via
MRG32K3A_BACKEND=rust; this will become the default in a future release. -
Added experimental support for patching simulation model with Rust implementation. This can be enabled by environment variable
SIMOPT_EXT=simopt_extensions, wheresimopt_extensionsis a user module that provides apatch_model*function.
Breaking Changes
-
Python 3.11 is now the minimum supported version.
-
Solver, problem, and model configuration has moved to Pydantic models and a new API; downstream scripts must adopt the updated schema.
Docs & Examples
-
Comprehensive documentation overhaul (available at https://simopt.readthedocs.io/) complete with in-depth model/problem/solver documentation, API reference, and testing guides.
-
Demos are maintained as notebooks and Python scripts, and can be executed either in Jupyter or as standalone scripts.
Compared to v1.2.0
- Fixed several bugs in v1.2.0