Accelerating the pace of engineering and science

# Global Optimization Toolbox

## Multiobjective Genetic Algorithm Solver

Multiobjective optimization is concerned with the minimization of multiple objective functions that are subject to a set of constraints. The multiobjective genetic algorithm solver is used to solve multiobjective optimization problems by identifying the Pareto front—the set of evenly distributed nondominated optimal solutions. You can use this solver to solve smooth or nonsmooth optimization problems with or without bound and linear constraints. The multiobjective genetic algorithm does not require the functions to be differentiable or continuous.

The following table shows the standard multiobjective genetic algorithm options provided by Global Optimization Toolbox.

StepMultiobjective Genetic Algorithm Option
CreationUniform, feasible
Fitness scalingRank-based, proportional, top (truncation), linear scaling, shift
SelectionTournament
CrossoverArithmetic, heuristic, inter­mediate, scattered, single-point, two-point
MutationAdaptive feasible, Gaussian, uniform
PlottingAverage Pareto distance, average Pareto spread, distance among individuals, diversity of population, expectation of individuals, Pareto front, rank histogram, selection index, stopping conditions

Global Optimization Toolbox also lets you specify:

• Population size
• Crossover fraction
• Pareto fraction
• Distance measure across individuals
• Migration among subpopulations (using ring topology)
• Linear and bound constraints for an optimization problem

You can customize these algorithm options by providing user-defined functions and represent the problem in a variety of data formats, for example by defining variables that are integers, mixed integers, categorical, or complex.

You can base the stopping criteria for the algorithm on time, fitness limit, or number of generations. And you can vectorize your fitness function to improve execution speed or execute the objective functions in parallel (using Parallel Computing Toolbox).

Multiobjective genetic algorithm defined in the Optimization app (top), used to identify the Pareto front containing disconnected regions (middle) for the Kursawe function (bottom).