math-optim/bench/cec2020/vars.go
leo 99c39537fe
All checks were successful
continuous-integration/drone/push Build is passing
cec2020: add GetMaxFES
2023-02-09 03:29:08 +01:00

63 lines
1.5 KiB
Go

// Copyright 2023 wanderer <a_mirre at utb dot cz>
// SPDX-License-Identifier: GPL-3.0-or-later
package cec2020
import "git.dotya.ml/wanderer/math-optim/bench"
/*
extern double *OShift,*M,*y,*z,*x_bound;
extern int ini_flag,n_flag,func_flag,*SS;
*/
// Functions is a string-func map of function names and specific bench funcs
// for easier iterable access.
var Functions = map[string]func([]float64) float64{
"Bent Cigar": BentCigar,
"Schwefel Modified": Schwefel,
"Lunacek Bi-Rastrigin": LunacekBiRastrigin,
"Rosenbrock-Griewank": RosenbrockGriewank,
"Hybrid1": Hybrid1,
"Hybrid2": Hybrid2,
"Hybrid3": Hybrid3,
// TODO(me): these panic right now.
// "Composition1": Composition1,
// "Composition2": Composition2,
// "Composition3": Composition3,
}
// FuncNames represents a numbered list of function name.
var FuncNames = map[int]string{
0: "Bent Cigar",
1: "Schwefel Modified",
2: "Lunacek Bi-Rastrigin",
3: "Rosenbrock-Griewank",
4: "Hybrid1",
5: "Hybrid2",
6: "Hybrid3",
// TODO(me): these panic right now.
// 7: "Composition1",
// 8: "Composition2",
// 9: "Composition3",
}
// SearchRange specifies the CEC2020 search range.
var SearchRange = bench.NewfuncParams(searchRangeMin, searchRangeMax)
var (
// Dimensions to bench.
Dimensions = []int{
5,
10,
15,
20,
}
// MaxFES as specified for each dimension.
MaxFES = []int{
50000,
1000000,
3000000,
10000000,
}
)