模式匹配两个模糊变量

时间:2018-12-05 04:09:48

标签: clips

我正在尝试编写一个程序,该程序将根据用户指定的一组偏好向用户推荐汽车。我遇到了一个问题,即我不确定如何将用户的输入与我存储为事实(汽车)的模糊值进行比较。这类似于我的代码。希望您能看到我正在尝试做的事情。

(defrule determine-budget
    (not (cost ?))
    =>
    (printout t "What is your budget? (integer from 0-100000)")
    (bind ?response (read))
    (assert (cost ?response)))

(defrule fuzzify-cost 
    (cost ?p)
    =>
    (assert (fcost (?p 0) (?p 1) (?p 0))))

(defrule find-car
    (fcost ?c)
    (car (name ?id) (cost ?c))
    =>
    (printout t crlf "Your best match is a(n) " ?id "!" crlf))

编辑:我想我实际上是在尝试寻找一个包含用户输入的明晰值的模糊值?我只是不确定该怎么做。 编辑2.0:我决定只提示用户输入语言。但是,我仍然不知道如何使用它来检查成员身份,因为字符串似乎不起作用。

0 个答案:

没有答案