mod additive_independence¶
- module additive_independence¶
Rank-1 (mean-field) independence-sampler simulated annealing.
This is the unified MCMC+SA point that the separable surrogate enables. A pilot fits an
AdditiveSurrogateover alldcoordinates; the remaining budget is spent in geometric-temperature epochs. Each epoch draws a block of proposals from the tempered surrogate density by independent per-coordinate inverse-CDF sampling (the global independence Move), mixed with alocal_fracGaussian random walk around the incumbent (the local Move), and every proposal is accepted by a Metropolis rule against the true objective (the Accept slot). Because the surrogate density factorises across coordinates for a separable objective, one global draw places every coordinate at its own tempered optimum at once – the regime a local random-walk proposal, whose efficiency decays like1/d, cannot reach. The Metropolis accept against the true objective removes the mean-field bias.Functions
- fn additive_independence_sa<O: Objective<f64>>(obj: &O, seed: u64, max_fevals: usize, degree: usize, grid_m: usize, local_frac: f64, n_epochs: usize, n_pilot: usize) -> AdditiveIndependenceResult¶
Run rank-1 independence-sampler SA on
objunder a shared work-unit budget.max_fevalsbounds the total true-objective evaluations (pilot included), so the driver runs at parity with every other point of the algebra.degreeis the per-coordinate Chebyshev degree,grid_mthe inverse-CDF grid resolution,local_fracthe fraction of each epoch’s proposals spent on the local random walk, andn_epochsthe number of temperature levels.
Structs and Unions