Class: FuzzyRule

Inherits:
Object
  • Object
show all
Defined in:
lib/fuzzy_rule.rb

Instance Method Summary collapse

Constructor Details

#initialize(arguments, result) ⇒ FuzzyRule

Returns a new instance of FuzzyRule.



2
3
4
5
# File 'lib/fuzzy_rule.rb', line 2

def initialize(arguments, result)
  @arguments = arguments
  @result = result
end

Instance Method Details

#larsen(values) ⇒ Object



15
16
17
18
# File 'lib/fuzzy_rule.rb', line 15

def larsen(values)
  min = minOfArguments(values)
  @result.scale(min)
end

#mandani(values) ⇒ Object



20
21
22
23
# File 'lib/fuzzy_rule.rb', line 20

def mandani(values)
  min = minOfArguments(values)
  @result.min(min)
end

#minOfArguments(values) ⇒ Object



7
8
9
10
11
12
13
# File 'lib/fuzzy_rule.rb', line 7

def minOfArguments(values)
  tmp = []
  for i in 0..(values.length-1)
    tmp << @arguments[i][values[i]]
  end
  tmp.min
end