Adaptive tournament planning engine
Project description
AdaptiveSolvePlanner
AdaptiveSolvePlanner is a production-oriented adaptive tournament planner and solver. It supports sequential and process-parallel search over retention/decay parameters to produce "nice" tournament round plans (groups, qualifiers, wildcards) while honoring configurable limits.
Quickstart
To install from PyPI:
python -m pip install adaptivesolveplanner
To install latest from GitHub:
pip install git+https://github.com/Smoki-Cool/adaptivesolveplanner.git
Example:
from adaptive_solve_planner import plan
p = plan(start_guess=100, finals_target=12, rounds_desired=5, strictness="generous",
prefer_wc=True, allow_wc_down=True, top_k_per_round=12, max_nodes=300000, time_limit=12.0)
print(p["_meta"])
for r in p["rows"]:
print(r)
API
Two primary entry points:
plan(...)— sequential single-process plannerparallel_plan(...)— process-parallel planner with auto-tuning
Both return a dict with:
rows— per-round dictsfinal_total— final number of players_meta— diagnostic metadata_score— score used for selecting best plan
See examples/ for runnable samples.
Configuration
PlannerConfig centralizes defaults and can be overridden from environment variables using the ASP_ prefix (e.g. ASP_WC_PCT=0.12). See adaptive_solve_planner/config.py.
CLI
If you installed the package with the console script, run:
adaptivesolveplanner --help
Development
Create a virtualenv, install dev requirements, run tests:
python -m venv .venv
source .venv/bin/activate
pip install -U pip
pip install build twine pytest
python -m pytest
Contributing
See CONTRIBUTING.md.
License
This project is licensed under the GNU General Public License v3.0 — see the LICENSE file.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file adaptivesolveplanner-0.1.3.dev0.tar.gz.
File metadata
- Download URL: adaptivesolveplanner-0.1.3.dev0.tar.gz
- Upload date:
- Size: 45.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0205a63a64f60680bfb706f67c98555fdb6ddef8f6a4203690e3f9652b48e4ce
|
|
| MD5 |
c80886feae1a77dd7487cd3485d78576
|
|
| BLAKE2b-256 |
431730f675ce7f7ed25aaa026efbad518d22ff2dbc9aee42e779dab13592ef84
|
File details
Details for the file adaptivesolveplanner-0.1.3.dev0-py3-none-any.whl.
File metadata
- Download URL: adaptivesolveplanner-0.1.3.dev0-py3-none-any.whl
- Upload date:
- Size: 33.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9f7980bd12137d087da8eb9c433cf1b505f17f0bdd45d3e2c955973257ff7a68
|
|
| MD5 |
45737669b633d769a0035050ff96922f
|
|
| BLAKE2b-256 |
fd3dcb049c0e93f38bc623c79a1bb9377dc7a438fbdb2ad2e3d637e45d1d0b6d
|