Flex.EngineAdapter behaviour (FLex v0.2.2)
View SourceSummary
Types
@type antecedent() :: [Flex.Variable.t(), ...]
@type consequent() :: Flex.Variable.t()
@type engine_state() :: %Flex.EngineAdapter.State{ crisp_output: integer() | float(), fuzzy_antecedent: map(), fuzzy_consequent: Flex.Variable.t(), input_vector: list(), type: Flex.EngineAdapter.Mamdani | Flex.EngineAdapter.TakagiSugeno }
Engine Adapter State.
:type
- defines the inference engine behavior (default: Mamdini).:fuzzy_antecedent
- fuzzification output.:fuzzy_consequent
- inference output.:crisp_output
- defuzzification output.
@type rules() :: [Flex.Rule.t(), ...]
Callbacks
@callback defuzzification(engine_state()) :: engine_state()
@callback fuzzification(engine_state(), antecedent()) :: engine_state()
@callback inference(engine_state(), rules(), consequent()) :: engine_state()
@callback validation(engine_state(), antecedent(), rules(), consequent()) :: engine_state()