hzhf: Generators for HZHF test function

Description Usage Arguments Details Value References See Also

Description

Hierarchical test functions by Horn and Zaefferer

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
makeHZHF(id, in.dim, k, c = 0.5, s = 0, check = TRUE)

makeHZHF01(in.dim, k, c = 0.5, s = 0, check = TRUE)

makeHZHF02(in.dim, k, c = 0.5, s = 0, check = TRUE)

makeHZHF03(in.dim, k, c = 0.5, s = 0, check = TRUE)

makeHZHF04(in.dim, k, c = 0.5, s = 0, check = TRUE)

makeHZHF05(in.dim, k, c = 0.5, s = 0, check = TRUE)

makeHZHF06(in.dim, k, c = 0.5, s = 0, check = TRUE)

makeHZHF07(in.dim, k, c = 0.5, s = 0, check = TRUE)

makeHZHF08(in.dim, k, c = 0.5, s = 0, check = TRUE)

makeHZHF09(in.dim, k, c = 0.5, s = 0, check = TRUE)

makeHZHF10(in.dim, k, c = 0.5, s = 0, check = TRUE)

makeHZHF11(in.dim, k, c = 0.5, s = 0, check = TRUE)

makeHZHF12(in.dim, k, c = 0.5, s = 0, check = TRUE)

makeHZHF13(in.dim, k, c = 0.5, s = 0, check = TRUE)

makeHZHF14(in.dim, k, c = 0.5, s = 0, check = TRUE)

makeHZHF15(in.dim, k, c = 0.5, s = 0, check = TRUE)

Arguments

id

[integer(1)]
ID of hzhf function to generate, element of 1, 2, ..., 15.

in.dim

[integer(1)]
Size of parameter space.

k

[integer(1)]
Number of non-hierarchical parameters. Must be smaller than in.dim - 1, must be divisible by 2 for HFHF6, HZHF7, HZHF8.

c

[double(1)]
Metaparameter of all test functions, size of hierarchical area, see details. Default is 0.5.

s

[double(1)]
Metaparameter of all test functions, shift of hierarchical area, see details.. Default is 0.

check

[logical(1)]
Shall parameter checks be performed befor each function evaluation? Default is TRUE

Details

Hierarchical test functions have several parameters that only influence the outcome if a certain condition is fullfilled. The HZHF test function family consists of 15 hierarchical test functions with numeric parameters z[1], ... z[in.dim]. The first k of these parameters always affect the function value while the last in.dim - k ones only do if z[1] fullfills a certain condition.

All HZHF functions are to be minimized and follow the scheme

f(z) = a(z[1], ..., z[k]) + if (z[1] < c) b(z[1], ..., z[in.dim]) else s

Here, c controls the size of the active region of the hierarchical parameters. s is a shift added to the function if the hierarchical parameters are inactive and controls a) whether an imputation approach is promising and b) the jump height at the discontinuity.

The function a and b are defined using different transformation of the WFG toolkit (A toolkit for multi-objective test functions). The 15 HZHF function differ in their properties, as for example modality and seperability.

For s = 0 and c < 0.7 the global optimum is allways at z[i] = 0.7 * i, i = 1, ..., in.dim (the hierarchical parameters are active). If s = 0 and c > 0.7 holds, the optimum is at z[i] = 0.7 * i, i = 1, ..., k, z[i] = NA, i = k + 1, ..., in.dim, i.e. the hierarchical parameters are inactive. The best possible function value is 0 in both cases.

If s < 0 and the optimum is in in the inactive region, its function value is shifted to s, but its location remains unchanged. If s < 0 and the optimum is in the active region, the former global optimum is only guarenteed to be a local optimum with function value 0. Their may be other local optima in the inactive regions with function values < 0, especially at the discontinuity z[1] = c. Unfortunately, we can not control those values.

If s > 0 and the optimum is in the active region, it is guarenteed to be the global optimum with function value 0. If, however, s > 0 and the optimum is in the inactive region, it is only guarenteed to be a local optimum with function value s. There may be other local optima in the active regions with function values between 0 and b, especially at the discontinuity z[1] = c. Unfortunately, we can not control those values.

Value

A hzhf_function, subclass of smoof_function.

References

Huband, Simon ; Hingston, Phil ; Barone, Luigi ; While, Lyndon: A Review of Multiobjective Test Problems and a Scalable Test Problem Toolkit. In: IEEE Trans. on Evolutionary Computation 10 (2006), No. 5, pp. 477-506

See Also

plot.hzhf_function


danielhorn/hierarchTestFuns documentation built on Oct. 3, 2019, 9:30 p.m.