6 releases (1 stable)
new 1.0.0 | Mar 6, 2025 |
---|---|
0.5.0 | Nov 30, 2024 |
0.4.1 | Jun 28, 2024 |
0.4.0 | Feb 20, 2024 |
0.1.0 | Nov 27, 2019 |
#111 in Games
137 downloads per month
16KB
213 lines
Little Sorry
A Rust library for exploring regret minimization algorithms, with a focus on game theory applications.
Features
- Regret matching implementation
- Rock Paper Scissors (RPS) example game
- Highly performant using ndarray for numerical operations
- Thread-safe with no unsafe code (except for carefully bounded enum conversions)
Getting Started
Add this to your Cargo.toml
:
[dependencies]
little-sorry = "0.5.0"
How It Works
The library implements regret minimization algorithms, which are used in game theory to find optimal strategies in imperfect-information games. The core algorithm tracks:
- Action probabilities for each possible move
- Cumulative regret for not taking alternative actions
- Strategy updates based on regret matching
The RPS example demonstrates these concepts in a simple zero-sum game setting.
Building and Testing
# Run all tests
cargo test
# Run benchmarks
cargo bench
# Build in release mode
cargo build --release
License
Licensed under the Apache License, Version 2.0.
Dependencies
~4MB
~74K SLoC