В этой программе есть одно
В этой программе есть одно обычное для таких программ ограничение. В исходном состоянии рабочей памяти необходимо представить все симптомы, но многие пациенты говорят только о самом явном (боли) и могут даже и не упомянуть о других, например ссадине на лодыжке.
Модифицируйте программу таким образом, чтобы она запрашивала о забытых симптомах. Самый простой способ сделать это — добавить правила, которые в предпосылках имеют только одно условие — жалобы на боль. Такое условие, например, может иметь вид
(sign (symptom pain) (organ abdomen) (site lower))
Действие правила состоит в том, чтобы добавить в рабочую память вопрос, который нужно задать. Затем понадобится правило, которое собственно и задаст вопрос и поместит в рабочую память вектор sign, сформированный в соответствии с полученным ответом. Шаблон для вектора question (вопрос) имеет такой вид:
(deftemplate question
(field symptom (type SYMBOL))
(field organ (type SYMBOL) (default NIL))
(field answer (type SYMBOL) (default NIL)) )
Таким образом, и образец в левой части порождающего правила, и сопоставляемые с ним элементы в рабочей памяти должны соответствовать этим шаблонам.
В чем, по-вашему, состоит ограничение возможностей подхода, использующего свойство salience, описанное во врезке 5.5?
Листинг 5.5. Набор диагностических правил заболеваний брюшной полости на языке CLIPS
;; Шаблоны
;; Объект 'sign' - это симптом, связанный с органом
;; или придатком,
(deftemplate sign
(field symptom (type SYMBOL))
(field organ (type SYMBOL))
(field site (type SYMBOL)) )
;; Вектор 'diagnosis' классифицирует патологию
;; некоторого органа.
(deftemplate diagnosis
(field disorder (type SYMBOL))
(field organ (type SYMBOL) (default NIL))
)
;; Факты
;; Некоторые простые симптомы.
(deffacts the-facts
(sign (symptom pain) (organ abdomen) (site lower))
(sign (symptom poor-appetite))
(sign (symptom weight-loss))
)
;; ПРАВИЛА
;; Признаки: боль в нижней части брюшной полости И
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий