Aggregated
Aggregated
¶
Bases: Term
Special term that represents a fuzzy set of activated terms to mainly serve as the fuzzy output value of output variables.
Equation
\(\mu(x)=\bigoplus_i^n\alpha_i\otimes\mu_i(x) = \alpha_1\otimes\mu_1(x) \oplus \ldots \oplus \alpha_n\otimes\mu_n(x)\)
where
- \(\alpha_i\): activation degree of term \(i\)
- \(\mu_i\): membership function of term \(i\)
- \(\otimes\): implication operator
- \(\oplus\): aggregation operator
related
Attributes¶
Functions¶
__init__
¶
__init__(
name: str = "",
minimum: float = nan,
maximum: float = nan,
aggregation: SNorm | None = None,
terms: Iterable[Activated] | None = None,
) -> None
Constructor.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
name |
str
|
name of the aggregated term |
''
|
minimum |
float
|
minimum value of the range of the fuzzy set |
nan
|
maximum |
float
|
maximum value of the range of the fuzzy set |
nan
|
aggregation |
SNorm | None
|
aggregation operator |
None
|
terms |
Iterable[Activated] | None
|
list of activated terms |
None
|
__repr__
¶
__repr__() -> str
Return the code to construct the term in Python.
Returns:
Type | Description |
---|---|
str
|
code to construct the term in Python. |
activation_degree
¶
grouped_terms
¶
highest_activated_term
¶
highest_activated_term() -> Activated | None
Find the term with the maximum aggregated activation degree.
Returns:
Type | Description |
---|---|
Activated | None
|
term with the maximum aggregated activation degree. |
Raises:
Type | Description |
---|---|
ValueError
|
when working with vectorization (eg, size(activation_degree) > 1) |
membership
¶
Aggregate the activated terms' membership function values of \(x\) using the aggregation operator.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
x |
Scalar
|
scalar |
required |
Returns:
Type | Description |
---|---|
Scalar
|
\(\mu(x)=\bigoplus_i^n\alpha_i\otimes\mu_i(x) = \alpha_1\otimes\mu_1(x) \oplus \ldots \oplus \alpha_n\otimes\mu_n(x)\) |