Construct a multi-objective function by putting together multiple single-objective smoof functions.

makeGOMOPFunction(dimensions = 2L, funs = list())

Arguments

dimensions

[integer(1)]
Size of corresponding parameter space.

funs

[list]
List of single-objective smoof functions.

Value

[smoof_multi_objective_function]

Details

The decision space of the resulting function is restricted to \([0,1]^d\). Each parameter \(x\) is stretched for each objective function. I.e., if \(f_1, \ldots, f_n\) are the single objective smoof functions with box constraints \([l_i, u_i], i = 1, \ldots, n\), then $$ f(x) = \left(f_1(l_1 + x * (u_1 - l_1)), \ldots, f_1(l_1 + x * (u_1 - l_1))\right) $$ for \(x \in [0,1]^d\) where the additions and multiplication are performed component-wise.