Main Content

Surrogate Optimization

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

Use surrogate optimization for expensive (time-consuming) objective functions. The solver requires finite bounds on all variables, allows for nonlinear inequality constraints, and accepts integer constraints on selected variables. The solver can optionally save its state after each function evaluation, enabling recovery from premature stops.


expand all

surrogateoptSurrogate optimization for global minimization of time-consuming objective functions
packfcnCombine objective and nonlinear constraint functions
optimoptionsCreate optimization options
resetoptionsReset options

Live Editor Tasks

OptimizeOptimize or solve equations in the Live Editor


Problem-Based Surrogate Optimization

Optimize Multidimensional Function Using surrogateopt, Problem-Based

Basic example minimizing a multidimensional function in the problem-based approach.

Mixed-Integer Surrogate Optimization, Problem-Based

Solve integer and mixed-integer problems using the problem-based approach and surrogateopt.

Solve Feasibility Problem Using surrogateopt, Problem-Based

Solve a feasibility problem using the problem-based approach and surrogateopt solver.

Optimize Using Surrogate Optimization

Surrogate Optimization of Multidimensional Function

Solve a multidimensional problem using surrogateopt, patternsearch, and fmincon, and then compare the results.

Modify surrogateopt Options

Search for the global minimum using surrogateopt, and then modify options of the function to revise the search.

Interpret surrogateoptplot

How to interpret a surrogateoptplot plot.

Compare Surrogate Optimization with Other Solvers

Compare surrogateopt to patternsearch and fmincon on a nonsmooth problem.

Surrogate Optimization of Six-Element Yagi-Uda Antenna

Solve an antenna design problem using surrogate optimization.

Work with Checkpoint Files

Shows how to use checkpoint files to restart, recover, analyze, or extend an optimization.

Surrogate Optimization with Nonlinear Constraint

Solve a problem containing a nonlinear ODE with a nonlinear constraint using surrogateopt.

Convert Nonlinear Constraints Between surrogateopt Form and Other Solver Forms

Presents techniques for converting objective and nonlinear constraint functions for other solvers to and from surrogateopt form.

Mixed-Integer Surrogate Optimization

Integer-constrained surrogate optimization.

Integer Optimization with Custom Output Function

Choose components from lists to best fit a response curve.

Solve Nonlinear Problem with Integer and Nonlinear Constraints

Solve a nonlinear problem with both integer and nonlinear constraints.

Solve Feasibility Problem

Use surrogateopt to solve a feasibility problem.

Fix Variables in surrogateopt

Fix some variables by setting their upper and lower bounds equal.

Vectorized Surrogate Optimization for Custom Parallel Simulation

This example shows how to perform custom parallel optimization using the surrogateopt UseVectorized and BatchUpdateInterval options.

Improve surrogateopt Solution or Process

Hints for obtaining a better solution or obtaining a solution more quickly.

Surrogate Optimization Background

What Is Surrogate Optimization?

Surrogate optimization attempts to find a global minimum of an objective function using few objective function evaluations.

Surrogate Optimization Algorithm

Learn details of the surrogate optimization algorithm, when run in serial or parallel.

Surrogate Optimization Options

Explore the options for surrogate optimization, including algorithm control, stopping criteria, command-line display, and output and plot functions.

Related Information