## 1 Introduction  
Many real-world problems in engineering and other research areas require multi-objective optimization, where it is necessary to find a set of solutions in the search space that are well-distributed along the Pareto-optimal front. Generally, in this type of problem the computation of possible solutions must consider the existence of two or more conflicting objective functions. A multi-objective optimization problem can be defined as follows:  
\[ \begin{array}{l}\min\mathbf{h}(\mathbf{z})=(h_{1}(\mathbf{z}),h_{2}(\mathbf{z}),\ldots,h_{m}( \mathbf{z}))\\ \mbox{where }\mathbf{z}\in Q,m\geq 2\end{array}  \tag{1}\]  
where each \(h_{i}(\mathbf{z})\) is a real-valued scalar function, \(\mathbf{h}(\mathbf{z})\) is the set of objective or cost functions that produce an \(m\)-dimensional vector in the \(\mathbb{R}^{m}\)-objective space when evaluated, \(\mathbf{z}=(z_{1},z_{2},\ldots,z_{n})\) is an \(n\)-dimensional vector in the search space \(\mathbb{R}^{n}\), and \(Q\subseteq\mathbb{R}^{n}\) is the set of all feasible solutions of Equation (1). In this type of problem, identifying the set of best possible solutions can in many cases be highly complicated or impossible. Rather than looking for globally optimal solutions to a multi-objective problem, it is possible to instead seek to compute satisfactory solutions that can be obtained in adequate time, mainly to find the Pareto optimal (PS) set of solutions. The mapping from the PS to the objective space is the Pareto front (_PF_). Examples of classical optimization techniques adapted to multi-objective problems are the Weighted Sum Method [1], e-constraint method [2], goal programming [3], and lexicographic ordering [4] among others. Multi-objective optimization evolutionary algorithms (MOEAs) are highly suitable for solving problems involving multiple objectives because they can generate a set of _PF_-approximate solutions in a single run [5]. In recent decades, many multi-objective optimization algorithms have been derived from classical single-objective metaheuristics, showing efficiency and effectiveness on various complex problems. Single-objective metaheuristics are optimization techniques that focus on finding a single optimal solution. Common examples include genetic algorithms (GA) [6], particle swarm optimization (PSO) [7], ant colony optimization (ACO) [8], and simulated annealing (SA) [9]. Several techniques based on single-objective metaheuristics have been developed to address multi-objective problems. Examples of the most outstanding options include the Non-Dominated Sorting Genetic Algorithm (NSGA-II), which extends GAs to handle multiple objectives using a non-dominated sorting scheme and population diversity [10]; the Multi-objective Evolutionary Algorithm Based on Decomposition (MOEA/D), which splits a multi-objective problem into several single-objective problems [11]; SPEA2, which uses a list of non-dominated solutions and assigns strengths to each solution to guide the search process [12]; Multi-objective PSO (MOPSO), which is an extension of PSO that allows it to handle multiple objectives while maintaining an archive of non-dominated solutions [13]; Multi-Objective Simulated Annealing (MOSA), which extends simulated annealing to handle multiple targets in order to maintain a balance between exploration and exploitation [14]; the Multi-objective Ant Lion Optimizer (MOALO), which expands the Ant Lion Optimizer by applying a repository to store non-dominated solutions in the Pareto set [15]; the Multi-objective Multi-Verse Optimizer (MOMOVO), which builds on the MVO to compare and optimize test and practical problems [16]; and the Multi-objective ACO (MOACO), which adapts the ACO for multi-objective optimization using multiple populations to improve computational efficiency [17; 18]. MOACO has also been employed to address multi-objective problems in airline crew turnover [19] and to improve the supply chain configurations [20].