Package edu.cnu.mdi.sim.simanneal
package edu.cnu.mdi.sim.simanneal
Generic simulated annealing for minimizing finite-valued energy functions.
Problems create solutions and either reversible in-place moves or independent
candidate moves, while schedules and temperature heuristics control cooling
and termination.
-
ClassDescriptionOptional output channel for annealing status and UI hints.AnnealingMove<S extends AnnealingSolution<S>>Marker for a proposed annealing transition.Delivery limits for accepted-move listener notifications.AnnealingProblem<S extends AnnealingSolution<S>>An annealing problem defines the energy function and move generation for simulated annealing.Interface for defining an annealing schedule, which determines the temperature at each step of the simulated annealing process and when to stop.AnnealingSolution<S extends AnnealingSolution<S>>Interface for solutions used in simulated annealing.CandidateAnnealingMove<S extends AnnealingSolution<S>>An annealing proposal that produces a separate candidate solution.DeltaEnergyMove<S extends AnnealingSolution<S>>Optional interface for annealing moves that can provide an O(1) (or cheap) energy difference (ΔE) for the proposed move.A standard geometric (exponential) annealing schedule.Receives sampled, batched annealing diagnostics on the Swing EDT.Result of estimating the initial annealing temperature.ReversibleAnnealingMove<S extends AnnealingSolution<S>>An in-place annealing move that can restore the exact prior solution when a proposal is rejected.Configuration for a simulated-annealing run.SimulatedAnnealingSimulation<S extends AnnealingSolution<S>>A
Simulationimplementation that performs Simulated Annealing (SA) to minimize an energy (cost) function over a problem-defined solution space.Immutable state snapshot of a simulated annealing process.TemperatureHeuristic<S extends AnnealingSolution<S>>Strategy for estimating a suitable initial simulated-annealing temperature.