Heuristic and metaheuristic algorithms are used iteratively to approximate
challenging optimization problem-solving. A metaheuristic algorithm refers to a higher
level master strategy which guides and controls the operations of other lower-level
subordinate heuristic algorithms. Different concepts and operators are combined for
exploring the search space of an optimization problem. The capacity of such techniques
to solve NP-hard combinatorial problems and continuous optimization is well known.
An illustrative and reference metaheuristic is given by the simulated annealing (SA)
algorithm for solving optimization problems. SA is not an evolutionary algorithm since
new solutions are mainly generated by using a sequence of random walks. We
introduce both SA metaheuristic techniques for single-objective (SA) and multiobjective
(MOSA) optimization problems. This study solves numerical test problems,
such as the Ursem’s test function, the six-hump camel back test function, and ZDT1 to
ZDT3 test problems. Routines from different software packages are used such as
Mathematica® and other free open software packages. The applications show the
capacity to approximate various Pareto-optimal fronts which shape can be convex or
non-convex.
Keywords: Acceptance function, Boltzmann constant, Cooling schedule,
Crossover operator, Escape mechanism, Local search, Master strategy,
Metaheuristic algorithm, Mathematica® software, Metropolis criterion, MOSA
algorithm, Mutation operator, Pareto-optimal front, Population-based algorithm,
Simulated annealing, OPT4J software, Thermal equilibrium, Ursem’s test
function.