FuzzyCLIPS Version 6.10d
User’s Guide
Integrated Reasoning Group
Institute for Information Technology
National Research Council Canada
Bob Orchard
October 2004
i
Abstract
FuzzyCLIPS
1
is an extended version of the CLIPS rule-based shell
2
for representing and manipulating fuzzy facts
and rules. In addition to the CLIPS functionality, FuzzyCLIPS can deal with exact, fuzzy (or inexact), and combined
reasoning, allowing fuzzy and normal terms to be freely mixed in the rules and facts of an expert system. The
system uses two basic inexact concepts, fuzziness and uncertainty.
Résumé
FuzzyCLIPS
3
est une version améliorée du système expert vide à base de règles.
4
CLIPS utilisé pour la représenta-
tion et la manipulation de faits et de règles flous. En plus de pouvoir executer les fonctions de CLIPS, FuzzyCLIPS
peut traiter le raisonnement exact, le raisonnement flou ou inexact et le raisonnement mixte permettant aux termes
flous et ordinaires d'être librement intégrés aux règles et aux faits d'un système expert. Le système utilise deux
concepts de base inexacts, le flou et l'incertitude.
1
Compatible with CLIPS version 6.10
2
CLIPS was developed by the Artificial Intelligence Section, Lyndon B. Johnson Space Center, NASA.
3
Compatible avec la version 6.10 de CLIPS.
4
CLIPS a été mis au point par la Artificial Intelligence Section, Lyndon B. Johnson Space Center, NASA.
ii
iii
Table of contents
1 Introduction ............................................................................................................ 1
2 Licence for NRC Software ..................................................................................... 2
2.1 Title and Conditions ....................................................................................... 2
2.2 Record of Use.................................................................................................. 2
2.3 Value of the Software ..................................................................................... 2
2.4 Warranty .......................................................................................................... 2
2.5 Commercial Uses............................................................................................ 2
3 Installation Information ......................................................................................... 3
3.1 Accessing FuzzyCLIPS................................................................................... 3
4 New Features in Recent Versions......................................................................... 5
4.1 Version 6.10d................................................................................................... 5
4.1.1 Added Ability to Turn Certainty Factor Calculations On and Off ................ 5
4.1.2 NOT patterns May Cause FuzzyCLIPS to Crash....................................... 6
5 Fuzzy Expert Systems ........................................................................................... 7
5.1 Fuzziness......................................................................................................... 7
5.2 Uncertainty ...................................................................................................... 9
5.3 Inference Techniques ................................................................................... 10
5.3.1 Simple Rules............................................................................................ 11
5.3.1.1 CRISP_ Simple Rule ................................................................................. 11
5.3.1.2 FUZZY_CRISP Simple Rule ........................................................................ 12
5.3.1.3 FUZZY_FUZZY Simple Rule ....................................................................... 14
5.3.2 Complex Rules ........................................................................................ 16
5.3.2.1 Multiple Consequents ................................................................................ 16
5.3.2.2 Multiple Antecedents ................................................................................. 16
5.3.3 Global Contribution .................................................................................. 17
5.3.4 Threshold Certainty Factors..................................................................... 18
5.3.5 Certainty Factors in Assert Statements.................................................... 20
5.4 Defuzzification............................................................................................... 21
5.4.1 Centre of Gravity Algorithm...................................................................... 21
5.4.2 Mean of Maxima Algorithm ...................................................................... 22
6 Using the FuzzyCLIPS Extensions ..................................................................... 24
6.1 Defining Fuzzy Variables in Deftemplate Constructs ................................ 24
6.1.1 Primary Terms ......................................................................................... 24
6.1.1.1 Singleton Representation............................................................................ 24
6.1.1.2 Standard Function Representation................................................................ 27
6.1.1.3 Linguistic Expression Representation ............................................................ 29
6.2 Standard Deftemplate Definitions with Fuzzy Slots (fields)...................... 30
6.3 Modifiers (Hedges) and Linguistic Expressions ........................................ 31
6.3.1 Predefined Modifiers................................................................................ 31
6.3.2 User Defined Modifiers ............................................................................ 37
6.3.3 Linguistic Expressions ............................................................................. 39
6.4 Using Fuzzy Variables in LHS Patterns....................................................... 40
6.5 Using Fuzzy Variables in Deffacts Constructs........................................... 42
6.6 Using Fuzzy Variables in Assert Statements.............................................. 43