Derivative-free optimization

From HandWiki

Derivative-free optimization (sometimes referred to as blackbox optimization), is a discipline in mathematical optimization that does not use derivative information in the classical sense to find optimal solutions: Sometimes information about the derivative of the objective function f is unavailable, unreliable or impractical to obtain. For example, f might be non-smooth, or time-consuming to evaluate, or in some way noisy, so that methods that rely on derivatives or approximate them via finite differences are of little use. The problem to find optimal points in such situations is referred to as derivative-free optimization, algorithms that do not use derivatives or finite differences are called derivative-free algorithms.[1]

Introduction

The problem to be solved is to numerically optimize an objective function [math]\displaystyle{ f\colon A\to\mathbb{R} }[/math] for some set [math]\displaystyle{ A }[/math] (usually [math]\displaystyle{ A\subset\mathbb{R}^n }[/math]), i.e. find [math]\displaystyle{ x_0\in A }[/math] such that without loss of generality [math]\displaystyle{ f(x_0)\leq f(x) }[/math] for all [math]\displaystyle{ x\in A }[/math].

When applicable, a common approach is to iteratively improve a parameter guess by local hill-climbing in the objective function landscape. Derivative-based algorithms use derivative information of [math]\displaystyle{ f }[/math] to find a good search direction, since for example the gradient gives the direction of steepest ascent. Derivative-based optimization is efficient at finding local optima for continuous-domain smooth single-modal problems. However, they can have problems when e.g. [math]\displaystyle{ A }[/math] is disconnected, or (mixed-)integer, or when [math]\displaystyle{ f }[/math] is expensive to evaluate, or is non-smooth, or noisy, so that (numeric approximations of) derivatives do not provide useful information. A slightly different problem is when [math]\displaystyle{ f }[/math] is multi-modal, in which case local derivative-based methods only give local optima, but might miss the global one.

In derivative-free optimization, various methods are employed to address these challenges using only function values of [math]\displaystyle{ f }[/math], but no derivatives. Some of these methods can be proved to discover optima, but some are rather metaheuristic since the problems are in general more difficult to solve compared to convex optimization. For these, the ambition is rather to efficiently find "good" parameter values which can be near-optimal given enough resources, but optimality guarantees can typically not be given. One should keep in mind that the challenges are diverse, so that one can usually not use one algorithm for all kinds of problems.

Algorithms

Notable derivative-free optimization algorithms include:

Benchmarks

There exist benchmarks for blackbox optimization algorithms, see e.g. the bbob-biobj tests.[2]

See also

References

  1. Conn, A. R.; Scheinberg, K.; Vicente, L. N. (2009). Introduction to Derivative-Free Optimization. MPS-SIAM Book Series on Optimization. Philadelphia: SIAM. http://www.mat.uc.pt/~lnv/idfo/. Retrieved 2014-01-18. 
  2. Using Well-Understood Single-Objective Functions in Multiobjective Black-Box Optimization Test Suites, https://arxiv.org/abs/1604.00359, 2016

External links

  • Audet, Charles; Kokkolaras, Michael (2016). "Blackbox and derivative-free optimization: theory, algorithms and applications". Optimization and Engineering 17: 1–2. doi:10.1007/s11081-016-9307-4.