mod minimum_information

module minimum_information

Same-PES allocation by information about the lowest reachable minimum.

A search mechanism maps a source structure to a terminal quenched energy. Separate Gaussian processes model the energy change produced by basin escape and minimum-mode riding. Their only shared random variable is the identity-and-energy pair of the lowest terminal minimum on the current finite action set. A moment-matched joint entropy search acquisition measures information about that pair; division by the action’s charged PES cost gives the common allocation currency.

Stationary-point counts, graph edges, transition rates, committors, and network-completeness estimates are deliberately absent. They remain valid output data for a downstream landscape database, but do not define a global-minimum search reward.

Enums

enum MinimumInformationError

Invalid action-model configuration or observation.

InvalidModelScale

GP scales must be finite and positive.

InvalidModelRank

Kernel approximation rank must be positive.

InvalidAction

Candidate data must be finite and cost positive.

FeatureDimension

One operator always consumes a fixed feature dimension.

mechanism: SearchMechanism

Operator whose feature shape changed.

expected: usize

Dimension fixed by its first observation.

actual: usize

Supplied dimension.

BatchFamilyDimension

A batch family label is required for every candidate action.

candidates: usize

Number of candidate actions.

families: usize

Number of supplied family labels.

enum SearchMechanism

Proposal operator whose terminal quenched energy is modelled.

BasinEscape

Perturb a minimum and quench the resulting structure.

SaddleRide

Follow a minimum mode and quench the downhill branch or branches.

Implementations

impl SearchMechanism

Structs and Unions

struct MinimumInformationSearch

Independent operator models coupled only through the target minimum pair.

Implementations

impl MinimumInformationSearch

Functions

fn assign_batch(&mut self, candidates: &[SearchActionCandidate], families: &[usize], batch_size: usize, max_family_size: usize, minimum_samples: usize) -> Result<Vec<usize>, MinimumInformationError>

Select a parallel action batch by conditional joint-optimum information.

Singleton terms are JES information about the optimum identity and value. The predictive-observation log determinant discounts redundant actions without a diversity coefficient. Greedy increments are divided by each action’s charged PES cost. families supplies the partition constrained by max_family_size; a candidate remains selectable until its family reaches that capacity. Selected indices are returned in candidate order so assignment does not depend on greedy discovery order.

fn compression(&self, mechanism: SearchMechanism) -> FunnelCompression

Retained rank and cumulative covariance-loss evidence for one operator.

fn incumbent_terminal_energy(&self) -> Option<f64>

Lowest terminal energy seen through either operator.

fn new(length_scale: f64, amplitude: f64, noise: f64) -> Result<Self, MinimumInformationError>

Construct two zero-change-prior GP models with identical scales.

fn new_with_maximum_model_rank(length_scale: f64, amplitude: f64, noise: f64, maximum_model_rank: usize) -> Result<Self, MinimumInformationError>

Construct bounded zero-change-prior GP models with identical scales.

fn observations(&self, mechanism: SearchMechanism) -> u64

Number of terminal outcomes learned for one operator.

fn observe(&mut self, mechanism: SearchMechanism, feature: &[f64], source_energy: f64, terminal_energy: f64) -> Result<(), MinimumInformationError>

Observe the terminal energy returned by one charged action.

An unsuccessful action is represented by terminal_energy == source_energy: the live minimum remains available and the observation is finite rather than censored away.

fn score(&mut self, candidates: &[SearchActionCandidate], minimum_samples: usize) -> Result<Vec<SearchActionScore>, MinimumInformationError>

Score a finite action set by joint minimum information per PES call.

fn version(&self) -> u64

Monotonic evidence version used as a role-assignment epoch.

struct SearchActionCandidate

One finite action whose result would update a terminal-energy model.

mechanism: SearchMechanism

Proposal operator.

feature: Vec<f64>

Operator-specific, same-system feature vector.

source_energy: f64

Exact energy of the source minimum.

expected_charged_evaluations: f64

Expected PES calls charged by this action.

struct SearchActionScore

Joint minimum information attached to one input candidate.

candidate: usize

Candidate index in the input slice.

mechanism: SearchMechanism

Proposal operator.

information: f64

Moment-matched information about the minimum identity and energy.

information_per_charged_evaluation: f64

Information divided by expected charged PES evaluations.