Skip to main contentIBM Quantum Documentation
You are viewing the API reference for an old version of Qiskit SDK. Switch to latest version

Optimizers

qiskit.aqua.components.optimizers

Aqua contains a variety of classical optimizers for use by quantum variational algorithms, such as VQE. Logically, these optimizers can be divided into two categories:

Local Optimizers

Given an optimization problem, a local optimizer is a function that attempts to find an optimal value within the neighboring set of a candidate solution.

Global Optimizers

Given an optimization problem, a global optimizer is a function that attempts to find an optimal value among all possible solutions.

Optimizer Base Class

OptimizerBase class for optimization algorithm.

Local Optimizers

ADAMAdam and AMSGRAD optimizer.
AQGDAnalytic Quantum Gradient Descent (AQGD) optimizer.
CGConjugate Gradient optimizer.
COBYLAConstrained Optimization By Linear Approximation optimizer.
L_BFGS_BLimited-memory BFGS Bound optimizer.
GSLSGaussian-smoothed Line Search.
NELDER_MEADNelder-Mead optimizer.
NFTNakanishi-Fujii-Todo algorithm.
P_BFGSParallelized Limited-memory BFGS optimizer.
POWELLPowell optimizer.
SLSQPSequential Least SQuares Programming optimizer.
SPSASimultaneous Perturbation Stochastic Approximation (SPSA) optimizer.
TNCTruncated Newton (TNC) optimizer.

Global Optimizers

The global optimizers here all use NLopt for their core function and can only be used if their dependent NLopt package is manually installed. See the following section for installation instructions.

The global optimizers are as follows:

CRSControlled Random Search (CRS) with local mutation optimizer.
DIRECT_LDIviding RECTangles Locally-biased optimizer.
DIRECT_L_RANDDIviding RECTangles Locally-biased Randomized optimizer.
ESCHESCH evolutionary optimizer.
ISRESImproved Stochastic Ranking Evolution Strategy optimizer.
Was this page helpful?