Expand description
A type-safe fuzzy control library for Rust.
This library provides a complete implementation of fuzzy logic control systems, with strong type safety guarantees and generic support for different numeric types.
§Overview
A fuzzy control system operates in three main stages:
- Fuzzification: Convert crisp input values into fuzzy membership degrees
- Inference: Apply fuzzy rules to determine fuzzy outputs
- Defuzzification: Convert fuzzy outputs back into crisp control values
Modules§
- defuzzification
- Defuzzification methods for converting fuzzy outputs to crisp values.
- membership_
functions - Common membership function implementations.
- operators
- Standard implementations of T-norm and S-norm operators.
- visualization
- Visualization utilities for fuzzy control systems (SVG-based).
Structs§
- Condition
- Represents a condition in a fuzzy rule antecedent.
- Consequent
- Represents a consequent in a fuzzy rule.
- Fuzzy
Controller - The main fuzzy control system.
- Fuzzy
Controller Builder - Builder for fuzzy controller
- Fuzzy
Rule - A fuzzy rule expressing IF-THEN logic.
- Fuzzy
Set - A fuzzy set associates a linguistic term with a membership function.
- Linguistic
Variable - A linguistic variable represents a domain concept with associated fuzzy sets.
- Membership
Degree - Represents a fuzzy membership degree constrained to the range [0, 1].
Enums§
- Membership
Error - Errors that can occur during fuzzy logic operations.
- Rule
Operator - Operators for combining rule antecedents.
Traits§
- Float
- Trait alias for numeric types that can be used in fuzzy computations.
- Membership
Function - A membership function maps domain values to fuzzy membership degrees.
- SNorm
- S-norm operators implement fuzzy OR operations.
- TNorm
- T-norm operators implement fuzzy AND operations.