0% found this document useful (0 votes)
25 views18 pages

jFuzzyLogic IEEE 2012

The document discusses jFuzzyLogic, an open-source fuzzy logic inference system implementation. It follows the IEC 61131-7 fuzzy control language standard to provide compatibility. The library is extensible, robust, and aims to solve problems with other fuzzy logic tools by being standardized, platform independent, and with an open license.

Uploaded by

mkjain7428
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views18 pages

jFuzzyLogic IEEE 2012

The document discusses jFuzzyLogic, an open-source fuzzy logic inference system implementation. It follows the IEC 61131-7 fuzzy control language standard to provide compatibility. The library is extensible, robust, and aims to solve problems with other fuzzy logic tools by being standardized, platform independent, and with an open license.

Uploaded by

mkjain7428
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 18

jFuzzyLogic

A Robust and Flexible Fuzzy-Logic Inference System


Language Implementation

Pablo Cingolani & Jesús Alcalá-Fdez


A picture of the Fuzzy software status
Many options…
…but there are some problems
• No standards.
• File format incompatibility: A fuzzy system created using
one program doesn’t work on another one.
• Every project re-writes same boilerplate code instead of
focusing on new features.
• Platforms incompatibilities.
• Dead code: Projects that either don’t compile or haven’t
released code for years.
• Some licenses are: “only academic”, “the code will be
provided upon request” or just unfriendly licensing
schemes.
We need a simple solution to these problems
jFuzzyLogic
• Standardization: reduces programming work and learning
curve. Standard IEC 61131-7.

• Extensibility: Object model and API allows to create a wide


range of applications.

• Robust For industrial application.

• Open license for everyone.

• Platform independent.
Fuzzy Control Language (FCL)
• Defined by International Electrotechnical
Commission (IEC)
• Norm IEC-61131 defines six programming
languages.
• Five of this languages are used in standard
Programmable logic controllers (PLC)
• It also defines data types and programming
modularity.
FCL is easy to learn
FCL example
jFuzzyLogic implements all FCL features
Aggregation, Activation, Accumulation
In the norm, the names used for these definition may differ from textbooks
Aggregation, Activation, Accumulation

Method name Means Implemented in


jFuzzyLogic
Aggregation How t-norms and t-conorms playing the Minimum, Product or
role of AND, OR and NOT operators Bounded difference
Activation How rule antecedents modify rule Minimum and Product
consequents
Accumulation How the consequents from multiple Maximum, Bounded
rules are combined sum, Normed sum,
Probabilistic OR, and
Sum
jFuzzyLogic implements extensions to the norm
Membership functions
• The norm only defines two: singleton or points
• We also support: trian, trape, gbell, gauss, sigm, etc.
Membership functions
• Support arbitrary mathematical expressions.
• Membership functions can be parameterized.
E.g.:
jFuzzyLogic is exntesible
• Modularity: It is possible to add custom aggregation, activation
or accumulation methods, defuzzifiers, or member- ship
functions by extending the provided object tree.
• Dynamic changes: Supports dynamic changes made onto a
fuzzy inference system:
– Variables can be used as membership function parameters
– Rules can be added or deleted from rule blocks dynamically
– Rule weights can be modified dynamically
– Membership functions can use combinations of pre-defined
functions.
• Optimization API: An optimization API allows fine tuning
membership function rules and rule weights.
Conclusions
jFuzzyLogic:
– Implements standard IEC-61131-7 (FCL).
– Using a standard solves the compatibility problem
– Library ready to use: Saves you time by not re-
inventing the wheel.
– Extensible & Flexible: You can focus on your
project.
– Robust: Currently used in industrial projects.
– Open: Friendly licensing.

You might also like