A friendly python library for fuzzy logic reasoning
Fixed a bug with matplotlib version >=3.8
You can now replace fuzzy rules in your rule base with the replace_rule
method, and visualize or export the current rule base with get_rules
.
You can now plot membership values of a given element of the universe of discourse using the plotting facilities of simpful.
Just pass the element
argument in the draw
, plot
, and plot_variable
methods, or a 'element_dict' to the produce_figure
method.
The argument 'TGT' has been kept for retro-compatibility, but it is now considered deprecated and it will be removed in future releases.
Thanks to some valuable contributions from @akdenizince, we now support weighted fuzzy rules and extended aggregation functions for Mamdani inference.
A pre-implemented probabilistic OR (probor) function was added to be used as aggregation function, along with Python built-ins (sum and max). If you have special aggregation functions, you can also pass them via the aggregation_function
argument (code here, documentation here).
A pointer to an aggregation function can now be specified when calling the Mamdani_inference
method, with the argument aggregation_function
.
This new version supports weighted fuzzy rule bases in Takagi-Sugeno fuzzy systems.
Simpful can now parse any alphanumeric character and the _ .