Skip to content
cpbenchy 0.1.0.dev0 is in alpha: until version 1.0, commands, options, the Python API and the result format may still change. Pin the version you use.

Library

Everything that comes with cpbenchy, ready to use: observers, plugins, rules, commands and executors. Click one to see what it does and how to use it.

Updated View as Markdown

Before writing a plugin, look here: most of what experiments need already exists. Click a component to see what it does, how to use it, its options, and its implementation.

Everything here comes with cpbenchy. For files to copy and adapt, such as a scoring plugin, a loader for your own format or an analysis script, see the examples.

Competition output

Print answers the way solver competitions expect them.

Solutions

Check, keep and re-check the solutions solvers report.

Rules

Complete experiment setups, such as a competition track's.

Competitions

Enter a competition, or run as if you were in one.

Scoring and analysis

Rank solvers, and look inside the models that were run.

Running

Where and how the runs happen.

Adding to the library

Wrote something others could use? There are three ways to share it.

  • A file. Observers, plugins and loaders are plain Python files, and anyone can use one with -p file.py or --loader file.py:Name. Rules are TOML files, used with --rules file.toml.
  • A package. Publish it on PyPI with a cpbenchy entry point, and it is enabled wherever it is installed. See testing and sharing.
  • cpbenchy itself. Add the code (an observer in cpbenchy.observers, rules in src/cpbenchy/rules/) with a test. Then add an entry to docs/src/data/library.ts and a page in docs/src/content/docs/library/. The page’s facts (version, last update, authors, implementation) are read from the repository when the docs are built.
Navigation

Type to search…

↑↓ navigate↵ selectEsc close