Expand description
Automated sifting pattern discovery.
Provides a pluggable generate-evaluate framework for discovering narratively interesting patterns from simulation trace data.
§Architecture
The system works as an iterative loop:
- A
CandidateGeneratorproposes candidate patterns from aTraceCorpus PatternEvaluators score each candidate- Scored results feed back to the generator for the next round
- A
PatternFilterdecides which patterns to keep
The DiscoverySession orchestrates this loop with configurable budgets.
Modules§
Structs§
- Discovery
Session - Orchestrates the generate-evaluate loop with configurable budgets.
- Pairwise
Hit - A co-occurrence of two edges sharing a node with a computed Allen relation.
- Pattern
Score - Per-evaluator scores for a candidate pattern.
- Scored
Pattern - A candidate pattern paired with its evaluation scores.
- Session
Config - Configuration for a discovery session.
- Session
History - The result of a completed discovery session.
- Threshold
Filter - Accepts patterns whose composite score meets or exceeds a threshold.
- Trace
Corpus - An indexed log of edges for pattern discovery.
- Trace
Edge - A single edge in a trace corpus.
Enums§
- Shared
Node - How two edges share a node.
Traits§
- Candidate
Generator - Proposes candidate patterns. Receives scored feedback to guide the next round.
- Pattern
Evaluator - Scores a candidate pattern against a corpus.
- Pattern
Filter - Decides whether a scored pattern is worth keeping.
Functions§
- pattern_
to_ dsl - Convert a
Pattern<String, String>to fabula DSL text.