Main Content

Global Optimization Toolbox

Solve multiple maxima, multiple minima, and nonsmooth optimization problems

Global Optimization Toolbox provides functions that search for global solutions to problems that contain multiple maxima or minima. Toolbox solvers include surrogate, pattern search, genetic algorithm, particle swarm, simulated annealing, multistart, and global search. You can use these solvers for optimization problems where the objective or constraint function is continuous, discontinuous, stochastic, does not possess derivatives, or includes simulations or black-box functions. For problems with multiple objectives, you can identify a Pareto front using genetic algorithm or pattern search solvers.

You can improve solver effectiveness by adjusting options and, for applicable solvers, customizing creation, update, and search functions. You can use custom data types with the genetic algorithm and simulated annealing solvers to represent problems not easily expressed with standard data types. The hybrid function option lets you improve a solution by applying a second solver after the first.

Get Started

Learn the basics of Global Optimization Toolbox

Problem-Based Optimization Setup

Create optimization variables, create problem with objective and constraints, call solve

Solver-Based 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

Surrogate Optimization

Surrogate optimization solver for expensive objective functions, with bounds and optional integer constraints

Simulated Annealing

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

Multiobjective Optimization

Pareto sets via genetic or pattern search algorithms, with or without constraints