Global Optimization Toolbox

Solve multiple maxima, multiple minima, and nonsmooth optimization problems

Global Optimization Toolbox provides methods that search for global solutions to problems that contain multiple maxima or minima. It includes global search, multistart, pattern search, genetic algorithm, and simulated annealing solvers. You can use these solvers to solve optimization problems where the objective or constraint function is continuous, discontinuous, stochastic, does not possess derivatives, or includes simulations or black-box functions with undefined values for some parameter settings.

Genetic algorithm and pattern search solvers support algorithmic customization. You can create a custom genetic algorithm variant by modifying initial population and fitness scaling options or by defining parent selection, crossover, and mutation functions. You can customize pattern search by defining polling, searching, and other functions.

Getting Started

Learn the basics of Global Optimization Toolbox

Optimization Problem Setup

Choose solver, define objective function and constraints, compute in parallel

Global or Multiple Starting Point Search

Multiple starting point solvers for gradient-based optimization, constrained or unconstrained

Direct Search

Pattern search solver for derivative-free optimization, constrained or unconstrained

Genetic Algorithm

Genetic algorithm solver for mixed-integer or continuous-variable optimization, constrained or unconstrained

Particle Swarm

Particle swarm solver for derivative-free unconstrained optimization or optimization with bounds

Simulated Annealing

Simulated annealing solver for derivative-free unconstrained optimization or optimization with bounds

Multiobjective Optimization

Pareto sets via genetic algorithm with or without constraints