# Optimization

Optimization in modeFRONTIER

modeFRONTIER employs true multi-objective optimization. modeFRONTIER explores the design space in search for the Pareto Frontier, where each objective can no longer be improved without compromising others.

This is opposed to the single-objective approach where an objective function is used to take into account all objectives by using weighting factors (determined a priori). The disadvantages of using an objective function are that it is difficult to determine an appropriate weighting factor; objective functions can sometimes be meaningless; and that compromises are not properly explored.

For initial exploration of the design space, design of experiments (DOE) is a methodology that maximizes knowledge gained from experimental data, thereby reducing the required number of experiments, saving time and cost.  modeFRONTIER is capable of employing various DOE:

For optimization, modeFRONTIER uses selected optimization algorithms to process existing outputs in order to produce new sets of improved input parameters. The available algorithms are:

Among the most commonly used optimization algorithms in modeFRONTIER are:

Optimization Algorithms

• SIMPLEX

A simplex is a polyhedron containing N + 1 points in an N dimensional space. Therefore, a simplex in two dimensions is a triangle, in three dimensions is a tetrahedron, and so forth. The SIMPLEX is a single-objective optimization algorithm. At each iteration, the vertex on the simplex with the worst configuration is moved in search for a better configuration.

• Multi-objective Genetic Algorithm

A genetic algorithm is a search method that mimics the process of natural evolution. A starting population's configurations are encoded into a collection of string known as chromosomes. These chromosomes undergo inheritance, mutation, selection and crossover much like natural evolution. After sufficient iterations or generations, 'survival of the fittest' rule would remove the weaker designs and the better solution would remain.

• Multi-objective Game Theory

Each objective is seen as a player and assigned several variables. During each iteration or step, each player will attempt to optimize its own objective by application of single-objective algorithm (such as SIMPLEX) on its variables.