Class: MetaheuristicAlgorithms::FunctionWrappers::EasomFunctionWrapper

Inherits:
AbstractWrapper
  • Object
show all
Includes:
CalculationHelper
Defined in:
lib/metaheuristic_algorithms/function_wrappers/easom_function_wrapper.rb

Instance Method Summary collapse

Methods included from CalculationHelper

#bigdecimal_acos, #bigdecimal_asin, #bigdecimal_atan2, #bigdecimal_cos, #bigdecimal_exp, #bigdecimal_sin, #bigdecimal_sqrt, #bigdecimal_tan, #degree_to_radian, #radian_to_degree

Instance Method Details

#initial_decision_variable_value_estimatesObject



25
26
27
# File 'lib/metaheuristic_algorithms/function_wrappers/easom_function_wrapper.rb', line 25

def initial_decision_variable_value_estimates
  raise "#{__method__} method must be implemented in the subclass"
end

#maximum_decision_variable_valuesObject



10
11
12
13
# File 'lib/metaheuristic_algorithms/function_wrappers/easom_function_wrapper.rb', line 10

def maximum_decision_variable_values
  # [BigDecimal('10')]
  [10]
end

#miminum_decision_variable_valuesObject



15
16
17
18
# File 'lib/metaheuristic_algorithms/function_wrappers/easom_function_wrapper.rb', line 15

def miminum_decision_variable_values
  # [BigDecimal('-10')]
  [-10]
end

#objective_function_value(decision_variable_values) ⇒ Object



20
21
22
23
# File 'lib/metaheuristic_algorithms/function_wrappers/easom_function_wrapper.rb', line 20

def objective_function_value(decision_variable_values)
  # -bigdecimal_cos(decision_variable_values[0]) * BigMath.exp((-(decision_variable_values[0] - BigMath.PI(10)).power(2)), 10)
  -Math.cos(decision_variable_values[0]) * Math.exp(-(decision_variable_values[0] - Math::PI)**2)
end