mod amsa

module amsa

Standalone whitened BFWT annealed descent (AmSa).

The portfolio’s am_sa arm pairs the budget-feasible window temperature (D11) with Haario covariance whitening, the anisotropic critical temperature result mandating the latter: on a general quadratic the descent window collapses by a factor of order d/kappa along soft eigendirections, and a whitened proposal restores theta_c = 2. This module owns that machinery and exposes it as a standalone solver so the algorithm can be measured on its own, outside the bandit.

Functions

fn amsa_optimize<O, G>(obj: &O, grad: Option<&G>, budget: usize, seed: u64, x0: Option<ArrayView1<f64>>) -> AmsaResult
where
    O: Objective<f64>,
    G: Gradient<f64>

Run whitened BFWT annealed descent under a work-unit budget.

One work unit is one objective or one gradient evaluation. The SA phase spends three quarters of the budget on a single adaptive chain with BFWT temperature, Haario covariance whitening, Robbins–Monro scale control, an online barrier estimate from rejected uphill moves, and IPOP-style reseeds on stagnation; the final quarter runs the stall-recovering projected quasi-Newton polish from the incumbent when a gradient is available.

Structs and Unions

struct AmsaResult

Result of one standalone AmSa run.

best_pos: Array1<f64>

Best feasible position found.

best_val: f64

Objective at best_pos.

n_evals: usize

Objective evaluations charged.

n_grads: usize

Gradient evaluations charged (polish tail).

n_reseeds: usize

IPOP-style reseeds performed.