FisPro (Fuzzy Inference System Professional) allows to create fuzzy inference systems and to use them for reasoning purposes, especially for simulating a physical or biological system. Fuzzy inference systems are briefly described in the fuzzy logic glossary given in the user documentation. They are based on fuzzy rules, which have a good capability for managing progressive phenomenons. Fuzzy logic, since the pioneer work by Zadeh, has proven to be a powerful interface between symbolic and numerical spaces. One of the reasons for this success is the ability of fuzzy systems to incorporate human expert knowledge with its nuances, as well as to express the behaviour of the system in an interpretable way for humans. Another reason is the possibility of designing data-driven FIS to make the most of available data.
Despite these assets, using FIS as a collaborative framework for system modelling has not been paid as much attention as it deserves, and this ascertainment was our main incentive for starting the FisPro project a few years ago. With this in mind, we concentrated our efforts on three points:
- The rule base interpretability. This is the main originality of FisPro, as interpretability is guaranteed in each step of the design: variable partitioning, rule induction, rule base simplification, optimization.
- A modular, portable software architecture that allows platform independence and facilitates extension writing.
- A free and open source software, licensed to grant the right of users to use, study, change, and improve its design through the availability of its source code.
FisPro implementation allows to design fuzzy systems from the expert knowledge available in a given field, for instance in winemaking. This approach is illustrated by an example given in the user guide Starting with FisPro.
FisPro also allows the complete design of a fuzzy inference system from the numerical data related to the problem under study. Many automatic learning methods unfortunately lead to “black box” systems. In FisPro, so that the user understands how the fuzzy system operates, constraints are imposed to the algorithms to make the reasoning rules easy to interpret. This novel approach is one of the originalities of the software. Some examples are given in the user guide Learning with FisPro.
Both approaches, expert rule design and automatic induction, can be combined to create more complete and better performing systems. FisPro offers educational tools that illustrate the reasoning mechanism, and other tools to measure the system performance on datasets.
This software is made of two distinct parts: a C++ function library, which can be used independently, and a graphical Java interface, which implements most functionalities if the C++ library. It is portable, and can run on most existing platforms.
The authors of FisPro initially worked in the application field of modelling in agriculture and food industry, where the cooperation between expert knowledge and data is of prime concern. Thus the first FisPro applications were related to these topics. Nevertheless, the areas of use go well beyond these initial ones (see the contributions for examples).
- S. Guillaume and B. Charnomordic, “Learning interpretable fuzzy inference systems with fispro,” International journal of information sciences, vol. 181, iss. 20, pp. 4409-4427, 2011.
[Bibtex]@article{Guillaume2011, author = "Serge Guillaume and Brigitte Charnomordic", title = "Learning interpretable Fuzzy Inference Systems with FisPro", journal = "International Journal of Information Sciences", volume = "181", number = "20", note = "Special Issue on Interpretable Fuzzy Systems", pages = "4409-4427", year = "2011", doi = "10.1016/j.ins.2011.03.025", }
- S. Guillaume and B. Charnomordic, “Fuzzy inference systems: an integrated modelling environment for collaboration between expert knowledge and data using fispro,” Expert systems with applications, vol. 39, pp. 8744-8755, 2012.
[Bibtex]@Article{ExpertSystems12, author = {Serge Guillaume and Brigitte Charnomordic}, title = {Fuzzy Inference Systems: an integrated modelling environment for collaboration between expert knowledge and data using FisPro}, journal = {Expert Systems with Applications}, volume = {39}, issue = {10}, pages = {8744-8755}, year = {2012}, month = {August}, doi = {10.1016/j.eswa.2012.01.206}, }