Ниже приведен фрагмент программы Wine
5. Ниже приведен фрагмент программы Wine Advisor (Советчик для любителей вин) на языке CLIPS (программа разработана Рандом Вальцманом для системы Teknowledge OPS5). В программу вводится название блюда, а она предлагает список вин, рекомендуемых к этому блюду. Программа работает по принципу эвристической классификации, поскольку построена на предположении о наличии прямого соответствия между основными характеристиками блюда (например, из мяса или рыбы, типа приправ и т.п.) и классом рекомендуемых вин (в характеристики класса входит цвет, крепость, сахаристость и т.п.).
I) Ваша задача состоит в том, чтобы проанализировать представленный набор правил и принять решение о том, как организовать базу знаний о блюдах и винах, как поступать с неопределенностью, как переходить от одной стадии процесса логического вывода к другой. Комментарии в тексте программы помогут вам понять ее суть и укажут способ расширения ее возможностей. В случае необходимости пользуйтесь описанием языка CLIPS, приведенном в Приложении.
;; Шаблоны
(def template wine
(field property (type SYMBOL))
(field is (type SYMBOL))
(field cert (type FLOAT))
)
(def template meal
(field property (type SYMBOL))
(field is (type SYMBOL))
)
(deftemplate decision
(field re (type SYMBOL)) (field is (type SYMBOL))
)
;; Факты
(deffacts the-facts
(task dish) )
;; Порождающие правила в формате
;; (defrule <наименование_правила> <прав часть>
;; =>
;; <лев_часть> ).
;; ПРАВИЛА, КАСАЮЩИЕСЯ БЛЮД.
Эти правила соответствуют этапу абстрагирования данных.
Правило dish-type вызывается первым, поскольку оно устанавливает модель среды в соответствии с имеющимися фактами при перезапуске исполнительной системы CLIPS,
(defrule dish-type (initial-fact) (task dish) =>
(printout t crlf
"Is the main dish of the meal MEAT, FISH or POULTRY?"
;; Блюдо приготовлено из МЯСА, РЫБЫ или ПТИЦЫ?
t crlf) (assert (meal (property dish-type)
(is read)))) )
;; Правило meat собирает дополнительные сведения
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий