Main Content

Global or Multiple Starting Point Search

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

These solvers apply to problems with smooth objective functions and constraints. They run Optimization Toolbox™ solvers repeatedly to try to locate a global solution or multiple local solutions.


createOptimProblemCreate optimization problem structure
listList start points
runRun multiple-start solver


expand all

GlobalSearchFind global minimum
MultiStartFind multiple local minima
CustomStartPointSetCustom start points
GlobalOptimSolutionOptimization solution
RandomStartPointSetRandom start points


GlobalSearch and MultiStart Optimization Basics

Find Global or Multiple Local Minima

Example showing that GlobalSearch returns fewer solutions than MultiStart, often with higher quality.

Maximizing Monochromatic Polarized Light Interference Patterns Using GlobalSearch and MultiStart

Find a global minimum in a problem having multiple local minima.

Optimize Using Only Feasible Start Points

Example showing how to avoid starting from infeasible points.

MultiStart Using lsqcurvefit or lsqnonlin

Shows how to use MultiStart to help find a global minimum to a least-squares problem.

Optimization Workflow

Workflow for GlobalSearch and MultiStart

How to set up and run the solvers.

Create Problem Structure

Provides detailed steps for creating a problem structure.

Create Solver Object

Describes what a solver object is, and how to set its properties.

Set Start Points for MultiStart

Provides details on the ways to set the start points.

Run the Solver

Provides basic examples of the complete workflow for both GlobalSearch and MultiStart.

Techniques for Effective Search

Parallel MultiStart

Shows how to compute in parallel for faster searches.

Isolated Global Minimum

An extended example showing ways to search for a global minimum.

Refine Start Points

Examples of how to search your space effectively and efficiently.

Change Options

Considerations in setting local solver options and global solver properties.

Reproduce Results

How to set random seeds to reproduce results.

Examine Results

Iterative Display

Describes the two types of iterative display for monitoring solver progress.

Global Output Structures

Describes the types of output structures that GlobalSearch and MultiStart can return.

Visualize the Basins of Attraction

Example showing how to plot multiple initial and final points in a 2-D problem.

Output Functions for GlobalSearch and MultiStart

Provides details and an example of monitoring and halting solvers by using output functions.

Plot Functions for GlobalSearch and MultiStart

How to use both built-in and custom plot functions for monitoring solution progress.

Multiple Start Solver Background

Problems That GlobalSearch and MultiStart Can Solve

GlobalSearch and MultiStart apply to smooth problems where there are multiple local solutions.

How GlobalSearch and MultiStart Work

Describes the solver algorithms.

Single Solution

Describes the first output, usually called x, from GlobalSearch and MultiStart.

Multiple Solutions

Describes how to obtain multiple solutions from GlobalSearch and MultiStart, and how to change the definition of distinct solutions.

GlobalSearch and MultiStart Properties (Options)

Describes properties of GlobalSearch and MultiStart objects.