1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194
|
CLIPS> (load "/home/yoda/ugai/board/clips/examples/animal.clp")
Defining defrule: propogate-goal +j+j
Defining defrule: goal-satified =j+j+j
Defining defrule: remove-rule-no-match +j+j
Defining defrule: modify-rule-match =j+j
Defining defrule: rule-satisfied =j+j
Defining defrule: ask-question-no-legalvalues +j+j+j
Defining defrule: ask-question-legalvalues +j+j+j
Redefining defrule: rule-satisfied =j+j
Redefining defrule: ask-question-no-legalvalues +j+j+j
Redefining defrule: ask-question-legalvalues +j+j+j
Defining deffacts: knowledge-base
CLIPS> (reset)
CLIPS> (run)
Does your animal have a backbone? (yes no) yes
Is the animal warm blooded? (yes no) yes
Normally, does the female of your animal nurse its
young with milk? (yes no) yes
Does your animal eat red meat? (yes no) no
Does your animal have hooves? (yes no) yes
Does your animal stand on two toes/hooves per foot? (yes no) yes
Does your animal have horns? (yes no) no
Does your animal normally live in the desert? (yes no) yes
I think your animal is a camel
CLIPS> (clear)
CLIPS> (load "/home/yoda/ugai/board/clips/examples/auto.clp")
Defining deffunction: ask-question
Defining deffunction: yes-or-no-p
Defining defrule: normal-engine-state-conclusions +j
Defining defrule: unsatisfactory-engine-state-conclusions +j
Defining defrule: determine-engine-state +j+j
Defining defrule: determine-rotation-state +j+j+j
Defining defrule: determine-sluggishness =j+j
Defining defrule: determine-misfiring =j=j
Defining defrule: determine-knocking =j=j
Defining defrule: determine-low-output =j+j+j
Defining defrule: determine-gas-level =j+j+j
Defining defrule: determine-battery-state +j+j+j
Defining defrule: determine-point-surface-state =j+j+j
+j+j
Defining defrule: determine-conductivity-test =j+j+j+j
Defining defrule: no-repairs +j
Defining defrule: system-banner +j
Defining defrule: print-repair +j
CLIPS> (reset)
CLIPS> (run)
The Engine Diagnosis Expert System
Does the engine start (yes/no)? no
Does the engine rotate (yes/no)? yes
What is the surface state of the points (normal/burned/contaminated)? normal
Does the tank have any gas in it (yes/no)? yes
Suggested Repair:
Take your car to a mechanic.
CLIPS> (run)
CLIPS> (reset)
CLIPS> (run)
The Engine Diagnosis Expert System
Does the engine start (yes/no)? yes
Does the engine run normally (yes/no)? no
Is the engine sluggish (yes/no)? yes
Suggested Repair:
Clean the fuel line.
CLIPS> (clear)
CLIPS> (load "/home/yoda/ugai/board/clips/examples/wine.clp")
Defining deffunction: ask-question
Defining deffacts: valid-combinations
Defining defrule: choose-body-for-spicy-sauce +j+j+j
Defining defrule: choose-body-for-delicate-taste =j+j
Defining defrule: choose-body-for-average-taste =j+j
Defining defrule: choose-body-for-strong-taste =j+j
Defining defrule: choose-body-for-cream-sauce =j=j+j
Defining defrule: choose-color-for-meat =j+j+j
Defining defrule: choose-color-for-poultry =j+j+j
Defining defrule: choose-color-for-fish =j+j
Defining defrule: choose-color-for-tomato-sauce =j+j+j+j
Defining defrule: choose-color-for-turkey =j=j+j
Defining defrule: choose-color-for-cream-sauce =j+j+j+j
Defining defrule: choose-color-for-sweet-sauce =j=j+j
Defining defrule: spicy-sauce-is-spicy-feature =j=j=j
Defining defrule: best-body-always-recommended +j+j
Defining defrule: preferred-body-may-be-recommended =j+j+j
Defining defrule: recommend-medium-body-1 =j+j+j
Defining defrule: recommend-medium-body-2 =j+j+j
Defining defrule: best-color-always-recommended =j+j
Defining defrule: preferred-color-may-be-recommended =j+j+j
Defining defrule: preferred-color-is-unknown =j+j
Defining defrule: best-sweetness-always-recommended =j+j
Defining defrule: preferred-sweetness-may-be-recommended =j=j+j
Defining defrule: recommend-medium-sweetness-1 =j+j+j
Defining defrule: recommend-medium-sweetness-2 =j+j+j
Defining defrule: use-prefered-body-if-no-best-body +j+j+j
Defining defrule: use-medium-body-if-no-best-body =j+j
Defining defrule: use-preferred-color-if-no-best-color =j+j+j
Defining defrule: use-medium-sweetness-if-preference-unknown =j+j+j
Defining defrule: use-preferred-sweetness-if-no-best-sweetness =j=j+j
Defining defrule: recommend-gamay +j+j+j+j
=j=j=j+j
Defining defrule: recommend-chablis =j+j+j+j
Defining defrule: recommend-sauvignon-blanc =j=j+j+j
Defining defrule: recommend-chardonnay =j=j=j+j
=j=j=j=j
=j=j+j+j
=j=j=j+j
Defining defrule: recommend-soave =j=j=j+j
=j=j=j=j
Defining defrule: recommend-riesling =j=j=j=j
=j=j=j+j
=j=j=j=j
=j=j=j+j
Defining defrule: recommend-geverztraminer =j=j=j+j
Defining defrule: recommend-chenin-blanc =j=j=j=j
=j=j=j=j
Defining defrule: recommend-valpolicella =j=j+j
Defining defrule: recommend-zinfandel-and-cabernet-sauvignon =j=j+j
=j=j+j
Defining defrule: recommend-pinot-noir =j=j=j=j
Defining defrule: recommend-burgundy =j=j+j
Defining defrule: question-1 +j+j
Defining defrule: question-2 =j+j+j
Defining defrule: question-3 =j+j+j
Defining defrule: question-4 =j+j
Defining defrule: question-5 =j+j+j
Defining defrule: question-6 =j+j
Defining defrule: question-7 =j+j
Defining defrule: question-8 =j+j
Defining defrule: question-9 =j+j
Defining defrule: ask-another-question +j
Defining defrule: print-wine +j+j+j
Defining defrule: end-spaces =j+j
Defining defrule: remove-poor-wine-choices +j+j
Defining defrule: combine-certainties +j+j+j
Defining defrule: change-to-phase-1 +j
Defining defrule: change-to-phase-2 =j
Defining defrule: change-to-phase-3 =j
Defining defrule: change-to-phase-4 =j
Defining defrule: change-to-phase-5 =j
Defining defrule: change-to-phase-6 =j
CLIPS> (reset)
CLIPS> (run)
Is the main component of the meal meat, fish, or poultry? fis
Is the main component of the meal meat, fish, or poultry? fish
Does the meal have a sauce on it? no
Is the flavor of the meal delicate, average, or strong? average
Do you generally prefer light, medium, or full bodied wines? full
Do you generally prefer red or white wines? red
Do you generally prefer dry, medium, or sweet wines? dry
SELECTED WINES
WINE CERTAINTY
-------------------------------
Chardonnay 81%
Sauvignon-Blanc 72%
Chablis 30%
Soave 30%
CLIPS> (reset)
CLIPS> (run)
Is the main component of the meal meat, fish, or poultry? meat
Does the meal have veal in it? no
Does the meal have a sauce on it? yes
Is the sauce for the meal spicy, sweet, cream, or tomato? spicy
Is the flavor of the meal delicate, average, or strong? strong
Do you generally prefer light, medium, or full bodied wines? full
Do you generally prefer red or white wines? red
Do you generally prefer dry, medium, or sweet wines? medium
SELECTED WINES
WINE CERTAINTY
-------------------------------
Cabernet-Sauvignon 91%
Zinfandel 91%
Burgundy 91%
Gamay 40%
Pinot-Noir 40%
CLIPS> (dribble-off)
|