pub fn finish_drifted(
f_finish: Number,
f_relaxed: Number,
relaxed_slack: Number,
) -> boolExpand description
Did an exact finish drift off the relaxed answer it started from? True
when the finish’s minimized objective is worse than the relaxed point’s by
more than same_answer_allowance, with relaxed_slack the relaxed
point’s relaxation_slack and no complementarity_gap term. A finish
solves the degenerate exact product and can wander: MacMPEC
pack-comp1p-32’s continuation reaches 0.65304 at τ = 1e-8 (products
5e-9) and its finish then crawls through restoration to 0.783, which used
to replace it; the relaxed point is kept instead. On scholtes4 the
finish’s 3e-11 is the exact answer and the relaxed -2e-4 is slack
(λ·τ = 1e-4, allowance 1e-3), and the finish is kept – at any
scaling of the objective. A slack that is not finite keeps the finish:
there is nothing to measure the drift against.
The gap is left out on measurement. A finish that wandered is typically
poorly converged, and its gap is then large enough to excuse the wander:
with the two points’ summed gaps in the allowance, MacMPEC
incid-set2c-8 (finish 7.77e-3 against 5.47e-3 relaxed),
pack-comp2p-16, qpec-100-3 and incid-set2c-32 all kept their
drifted finishes and fell from at to worse. Both objectives are values
at real points, so a finish that reads higher is worse however loosely it
converged.