Test functions for global optimization algorithms
現在この提出コンテンツをフォロー中です。
- フォローしているコンテンツ フィードに更新が表示されます。
- コミュニケーション基本設定に応じて電子メールを受け取ることができます
This is a set of test functions which can be used to test the effectiveness of global optimization algorithms. Some are rather easy to optimize (rosenbrock, leon, ...), others next to impossible (crosslegtable, bukin6, ...).
All the test-functions are taken from either [1], [2] or [3] (see below). All functions may be called in two ways:
[dims, lb, ub, sol, fval_sol] = fun()
(e.g., no input arguments) This returns the number of dimensions of the function, the default lower and upper bounds, the solution vectors for all global minima and the corresponding function values. To calculate the function value for input X, use:
val = fun( [x1, x2, ..., xn] )
with the dimension [n] depending on the specific function [fun] (for most functions, n=2). Note the single vector argument--this is done in order to easily insert the function into a global optimizer that inserts a [N x n] matrix of trial vectors in these functions.
I also included a function to display most of the functions. This is called EZIMAGE, and can be called with a function handle argument:
ezimage(@himmelblau) (to plot the himmelblau function)
ezimage(@sinenvsin) (see screenshot)
...
or just as-is:
ezimage()
which lists all functions and waits for user input. This is meant to get a first impression of what the challenges are the test function has to offer.
FUTURE WORK:
- constrained single-objective functions
- (constrained ) multi-objective functions
sources:
[1] Mishra, Sudhanshu. "Some new test functions for global optimization and performance of repulsive particle swarm method". MPRA, 23rd august 2006. http://mpra.ub.uni-muenchen.de/2718/
[2] Z.K. Silagadze. "Finding two-dimensional peaks". 11th mar 2004. arXiv preprint: arXiv:physics/0402085v3
[3] W. Sun, Ya-X. Yuan. "Optimization theory and Methods. Nonlinear Programming". Springer verlag, 2006. ISBN-13:978-0-387-24975-9.
引用
Rody Oldenhuis (2026). Test functions for global optimization algorithms (https://github.com/rodyo/FEX-testfunctions/releases/tag/v1.5), GitHub. に取得済み.
謝辞
ヒントを与えたファイル: Constrained Particle Swarm Optimization
一般的な情報
- バージョン 1.5 (38.5 KB)
-
GitHub でライセンスを表示
MATLAB リリースの互換性
- すべてのリリースと互換性あり
プラットフォームの互換性
- Windows
- macOS
- Linux
GitHub の既定のブランチを使用するバージョンはダウンロードできません
| バージョン | 公開済み | リリース ノート | Action |
|---|---|---|---|
| 1.5 | See release notes for this release on GitHub: https://github.com/rodyo/FEX-testfunctions/releases/tag/v1.5 |
||
| 1.4.0.0 | Description update
|
||
| 1.3.0.0 | [linked to Github] |
||
| 1.2.0.0 | - Corrected bug in leon function (square -> cube)
|
||
| 1.1.0.0 | - updated all functions to automate finding its dimensions/bounds
|
||
| 1.0.0.0 |
