20 std::vector<std::size_t>
bar_counts(std::size_t full_size)
const;
22 std::vector<std::optional<double>>
cuts()
const;
24 void observe(
const std::vector<std::optional<double>>& scores);
26 bool prune(
double score, std::optional<double> cut)
const noexcept;
30 std::vector<double> rungs_;
33 std::vector<std::vector<double>> history_;
34 std::vector<std::size_t> cursors_;
Coordinator-owned rung history.
Pruner(PrunerKind kind, std::vector< double > rungs, unsigned eta, bool minimize)
Validates increasing fractions in (0, 1) and an elimination factor >= 2.
std::vector< std::optional< double > > cuts() const
Returns cuts based only on observations already committed by the coordinator.
bool prune(double score, std::optional< double > cut) const noexcept
Strictly losing scores are pruned; ties and missing cuts survive.
std::vector< std::size_t > bar_counts(std::size_t full_size) const
Returns prefix lengths, including the full window, without duplicates.
void observe(const std::vector< std::optional< double > > &scores)
Adds finite rung observations after an entire batch has finished.
@ None
Evaluation succeeded.
PrunerKind
Prefix pruning policy; disabled by default in the native runner.