# Mathematical functions for testing optimization algorithms

## "ANDRE"

• This set of twenty mathematical functions is taken from [1].
• Functions have one to twenty variables.
• Some of them are smooth or not.
• Most of them are multi-modal.
• zip archiv of matlab codes: andre-matlab-v0.0.2.zip (25.5kB, version 0.0.2 released 19 Feb 2009)
• C++ classes for particular functions as offsprings of class function.h:
andre.cpp(15kB, version 0.0.1 released 23 Jan 2009)
andre.h(2kB, version 0.0.1 released 23 Jan 2009)
function.h(1kB, version 0.0.1 released 23 Jan 2009)

Note: These functions in cpp are multiplied by (-1) in order to be then maximized.
• analytical expressions and some other figures: andre.pdf (839kB, version 0.0.2 released 16 Feb 2009)

### Comparison of some algorithms - test with known optimum

• Algorithms were started 100times and stopped when the optimum was found with the given precission or the objective function was evaluated 2,000,000times (in case of GRBFN, the function calls limit was set to 1000 because of insufficient memory).
• Test was performed on andre-matlab-v0.0.2.
• Number of runs, were optimum was found with given precision - so-called succes rate (SR) and average number of fitness calls (ANFC) over succesful runs are given in following Table:
 Monte Carlo FMINCON with restart GRADE GRADE+CERAF GRBFN Function Dim Optimum Precission SR ANFC SR ANFC restarts SR ANFC SR ANFC SR ANFC F1 1 -1.12323 0.011232 100 58 100 27 3 100 55 100 55 100 23 F3 1 -12.0312 0.120312 100 122 100 57 5 100 95 100 95 100 43 Branin 2 0.39789 0.003979 100 12979 100 24 1 100 348 100 348 100 51 Camelback 2 -1.03163 0.010316 100 2026 100 40 1 100 198 100 198 100 61 Goldprice 2 3 0.03 100 49463 100 63 1 100 337 100 337 100 217 PShubert1 2 -186.731 1.867309 100 86028 100 2097 53 100 3879 100 1402 78 573 PShubert2 2 -186.731 1.867309 100 86521 100 1615 40 100 2333 100 896 98 540 Quartic 2 -0.35239 0.003524 100 25814 100 56 2 100 320 100 331 100 83 Shubert 2 -186.731 1.867309 100 7658 100 375 12 100 606 100 603 100 499 Hartman1 3 -3.86278 0.038678 100 1705 100 63 1 100 284 100 292 100 34 Shekel1 4 -10.1532 0.101532 0 ------- 100 335 3 100 47577 100 4078 0 --- Shekel2 4 -10.4029 0.104029 0 ------- 100 255 2 100 15356 100 2686 0 --- Shekel3 4 -10.5364 0.105364 0 ------- 100 284 2 100 7310 100 2496 0 --- Hartman2 6 -3.32237 0.033224 2 1283866 100 200 1 59 123727 100 9881 100 130 Hosc45 10 1 0.01 0 ------- 100 264 3 100 2147 100 2096 --- --- Brown1 20 2 0.02 0 ------- 100 286979 147 100 176628 100 182390 --- --- Brown3 20 0 0.1 0 ------- 100 5660 4 100 36568 100 36090 --- --- F5n 20 0 0.1 0 ------- 100 15838 8 100 6734 100 7284 --- --- F10n 20 0 0.1 0 ------- 0 ------ --- 78 89715 100 226374 --- --- F15n 20 0 0.1 0 ------- 0 ------ --- 100 22378 100 25528 --- --- montecarlo_1.zip fmincon+restart_1.zip grade_1.zip grade+ceraf_1.zip grbfn_1.zip 13.6kB 13.1kB 61.2kB 65.8kB 30.9kB
• Other publications:
• Comparison of Standard Binary Genetic Algorithm (SBGA), Extended Binary Genetic Algorithm (EBGA), Differential Evolution (DE) and Siplified Atavistic Differential Evolution (SADE) and SADE+CERAF is presented in [2].
• Comparison of SADE algorithm, GRADE algorithm, GRADE algorithm extended by CERAF strategy and GRBFN strategy is presented in Chapter 4 of [3].
• Comparison in modified version of DE and evolutionary strategy is presented in Master thesis of Josef Nosek [4] in czech language.
• News:
• 19 Feb 2009: Version 0.0.2 of matlab implementation is released. In previous version, there were errors in definition of PShubert2, Shekel2 and 3, Hartman2config, F5n and F15n. Those errors are corrected. Function Shekel1, Hartman1 and Hartman2 are rewrited for simplification. All config files are modified in order to be easily implemented to matlab version of GRADE algorithm. For the same purpose, *eval functions were added.
• 16 Feb 2009: There was some an error in PShubert1,2 expression in andre.pdf, v0.0.1 and it was corrected in v0.0.2. The same error is in publications [2] and [3]. C++ code is correct, the error was in matlab codes only in PShubert2 and it will be corrected soon.
 [1] J. Andre and P. Siarry and T. Dognon: An improvement of the standard genetic algorithm fighting premature convergence in continuous optimization, Advances in Engineering Software, 32 (1), 49-60, (2000) [2] O. Hrstka and A. Kučerová: . Advances in Engineering Software, 35 (3-4), 237-246, (2004) BiBTeX entry, e-print: arXiv:0902.1629 [3] A. Kučerová: Identification of nonlinear mechanical model parameters based on softcomputing methods, Ph.D. thesis, Ecole Normale Supérieure de Cachan, Laboratoire de Mécanique et Technologie, 2007, PDF (5.03MB),   prezentation (4.55MB),   BiBTeX entry [4] J. Nosek: Stochastická optimalizace návrhu konstrukcí, Master thesis, Czech Technical University in Prague, Faculty of Civil Engineering, Department of Mechanics, 2008, PDF (2.01MB)

Last modification: 13 Oct 2009