Use the CLI to generate a comprehensive benchmark suite:
otava-gen generate --output-dir ./benchmark --lengths 50 500 --seed 42
This creates:
manifest.json with metadata about each filesummary.json with overall statistics# Example Otava invocation (adjust based on Otava's actual CLI) otava analyze --input ./benchmark/0001_step_function_L500.csv
The manifest.json file contains ground truth for each test case:
import json with open("benchmark/manifest.json") as f: manifest = json.load(f) for entry in manifest: print(f"{entry['filename']}: {entry['n_change_points']} change points") print(f" Expected indices: {entry['change_point_indices']}")
When comparing algorithms, consider: