pub struct CalibrationObjective {
pub metric: ObjectiveMetric,
pub target: Option<f64>,
}Expand description
One iterable target: which scalar drives the loop + optional convergence threshold.
Fields§
§metric: ObjectiveMetricWhich scalar drives the loop.
target: Option<f64>Optional convergence target — stop when the multi-seed mean
loss is ≤ this. None (default) lets the loop run to
max_iterations / patience exhaustion.
Implementations§
Source§impl CalibrationObjective
impl CalibrationObjective
Sourcepub fn bf_composite() -> Self
pub fn bf_composite() -> Self
Default — minimise the BF composite mean, no explicit target.
Sourcepub fn with_metric(self, m: ObjectiveMetric) -> Self
pub fn with_metric(self, m: ObjectiveMetric) -> Self
Pick a specific metric. Identical to constructing the struct directly; provided as a fluent builder for callers that read nicer with a chained form.
Sourcepub fn with_target(self, t: f64) -> Self
pub fn with_target(self, t: f64) -> Self
Set a convergence target. Stops the loop when E_seed[L] ≤ t.
Sourcepub fn evaluate(&self, report: &BehavioralFidelityReport) -> Option<f64>
pub fn evaluate(&self, report: &BehavioralFidelityReport) -> Option<f64>
Compute the scalar loss for one report.
All three scalars are always present in the
BehavioralFidelityReport (the v5.x writer fills them via
#[serde(default)]-zero on older fixtures), so this never
returns None. The return is Option to allow a future
per-submetric variant to signal a missing-path error without
a breaking signature change.
Sourcepub fn aggregate(
&self,
reports: &[BehavioralFidelityReport],
) -> Option<(f64, f64)>
pub fn aggregate( &self, reports: &[BehavioralFidelityReport], ) -> Option<(f64, f64)>
Aggregate multiple BF reports into a single (mean, std) pair — the multi-seed harness the C3 loop relies on for noise-floor rejection (T3 methodology: single-shard composite CV ≈ 25 %, so a step must beat the prior best by > ~σ to be credited).
Returns None only when reports is empty.
Trait Implementations§
Source§impl Clone for CalibrationObjective
impl Clone for CalibrationObjective
Source§fn clone(&self) -> CalibrationObjective
fn clone(&self) -> CalibrationObjective
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CalibrationObjective
impl Debug for CalibrationObjective
Source§impl Default for CalibrationObjective
impl Default for CalibrationObjective
Source§fn default() -> CalibrationObjective
fn default() -> CalibrationObjective
Auto Trait Implementations§
impl Freeze for CalibrationObjective
impl RefUnwindSafe for CalibrationObjective
impl Send for CalibrationObjective
impl Sync for CalibrationObjective
impl Unpin for CalibrationObjective
impl UnsafeUnpin for CalibrationObjective
impl UnwindSafe for CalibrationObjective
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.