Class: MinOmniTest

Inherits:
MinFuncOfDimensionObj
  • Object
show all
Defined in:
lib/feldtruby/optimize/problems/multi_objective_problems.rb

Overview

This is the OmniTest bi-criteria test function as described in the paper:

Shir et al, "Enhancing Decision Space Diversity in Evolutionary Multiobjective Algorithms", 2009.

They used dimensions == 5.

Instance Method Summary collapse

Instance Method Details

#calc_func1(x) ⇒ Object



51
52
53
# File 'lib/feldtruby/optimize/problems/multi_objective_problems.rb', line 51

def calc_func1(x)
  x.map {|xi| Math.sin(Math::PI * xi)}.sum
end

#calc_func2(x) ⇒ Object



55
56
57
# File 'lib/feldtruby/optimize/problems/multi_objective_problems.rb', line 55

def calc_func2(x)
  x.map {|xi| Math.cos(Math::PI * xi)}.sum
end

#domain_per_dimensionObject



39
40
41
# File 'lib/feldtruby/optimize/problems/multi_objective_problems.rb', line 39

def domain_per_dimension
  [0.0, 6.0]
end

#minimum1Object



43
44
45
# File 'lib/feldtruby/optimize/problems/multi_objective_problems.rb', line 43

def minimum1
  @minimum1 ||= (-1 * dimensions)
end

#minimum2Object



47
48
49
# File 'lib/feldtruby/optimize/problems/multi_objective_problems.rb', line 47

def minimum2
  @minimum2 ||= (-1 * dimensions)
end