Houdini 17.0 Nodes VOP nodes

Fuzzy Defuzz VOP node

Performs a defuzzify operation between its input fuzzy sets and returns a crisp value.

On this page

This operator is a Fuzzy Logic VOP that performs a defuzzify operation between its input fuzzy sets and outputs a crisp value mapped between a user defined minimum and maximum value for the output variable. This node takes as input up to 64 FuzzySet structs that represent the fuzzy sets that comprise the output variable for defuzzification.

A defuzzify operation is comprised of three steps: implication, aggregation, and defuzzification. In the implication step, each fuzzy set’s membership function is clipped by the truth value of the set. In aggregation the input fuzzy sets are aggregated into a single fuzzy set (called the aggregated fuzzy set). In defuzzification, the crisp value for the output variable is calculated by finding the centroid of the aggregated fuzzy set.

Typically, a Fuzzy Defuzz VOP is used to connect an output fuzzy value from a fuzzy logic network to either a boolean decision making network, or directly to a control system.

A Fuzzy Defuzz VOP can optionally specify a fuzzy set for the complement of the input fuzzy sets (effectively an "else" in an "if/else" statement). The truth of the fuzzy set is defined as the complement of the truths of each input, and the membership function is defined using the same parameter interface from Fuzzy Inference.

Parameters

Aggregation Method

The method to use to aggregate the input fuzzy sets into an aggregated fuzzy set. The two supported options are to take the maximum value at each sample, or to take the sum of the values at each sample.

Override Crisp Range

Toggles whether the crisp range for the output variable is defined on this Defuzz VOP, or on each FuzzySet struct that is connected as an input. If this is not toggled, the crisp range is the union of each range on the input FuzzySet structs.

Minimum Value

An override for the crisp minimum for the crisp variable. This overrides the minimum specified in any input FuzzySet struct. The minimum for the else FuzzySet is controlled separately.

Maximum Value

An override for the crisp maximum for the crisp variable. This overrides the maximum specified in any input FuzzySet struct. The maximum for the else FuzzySet is controlled separately.

Toggle Else Value

Toggles the optional fuzzy set representing an "else" statement.

Inputs

Input Number 1…N

The input fuzzy sets to be combined together. Each input should be a FuzzySet struct.

Next Input

Where the next input value should be connected. Up to 64 inputs can be specified.

Outputs

Combined Value

The defuzzified crisp output.

Examples

Fuzzy Logic Obstacle Avoidance Example Example for Fuzzy Defuzz VOP node

This example shows agent obstacle avoidance and path following implemented using a fuzzy logic controller.

Fuzzy Logic State Transition Example Example for Fuzzy Defuzz VOP node

This example shows a crowd setup where the state transition is triggered on a fuzzy network setup.

The following examples include this node.

Fuzzy Logic Obstacle Avoidance Example Example for Fuzzy Defuzz VOP node

This example shows agent obstacle avoidance and path following implemented using a fuzzy logic controller.

See also

VOP nodes