Оболочка создания экспертной системы Clips Группа: Р-522

advertisement
Оболочка создания
экспертной системы Clips
Группа:
Выполнила:
Р-522
Ю. А. Осипова
Понятие CLIPS
CLIPS (С Language Integrated Production
System) является одним из распространенных
инструментальных средств разработки
экспертных систем (ЭС). Представляя собой
логически полную среду, содержащую
встроенный редактор и средства отладки,
CLIPS является оболочкой ЭС. Разработчиком
CLIPS является Национальное
Аэрокосмическое Агентство США.
Классификация моделей
представления знаний
CLIPS использует продукционную
модель представления знаний и
поэтому содержит три основных
элемента:
1. список фактов
2. базу знаний
3. блок вывода
При формализации знаний существует
проблема, затрудняющая использование
традиционного математического аппарата. Это
проблема описания понятий, оперирующих
качественными характеристиками объектов
(юность, зрелость, детство и т. п.).
Эти характеристики обычно размыты, и не
могут быть однозначно интерпретированы,
однако содержат важную информацию
(например, “одним из возможных признаков
возраста является юность”).
Нечёткие множества, определяющие
значение переменной «возраст»
Формирование нечётких
множеств
Преимущества Clips:
• Полностью реализована на языке С, где
•
•
исходные тексты ее программ опубликованы
в сети Интернет
В CLIPS используется оригинальный LIPSподобный язык программирования,
ориентированный на разработку ЭС
CLIPS поддерживает две парадигмы
программирования:
-объектно-ориентированную
-процедурную
Функцией в CLIPS
Под функцией в CLIPS понимается
фрагмент исполняемого кода, с которым
связано уникальное имя и который
возвращает полезное значение или имеет
полезный побочный эффект (например,
вывод информации на экран).
Основные стандартные арифметические и
математические функции:
•
•
•
•
•
•
•
•
•
•
+ Сложение
- Вычитание
* Умножение
/ Деление
* * Возведение в степень
Abs Определение абсолютного значения
Sqrt Вычисление квадратного корня
Mod Взятие по модулю
Min Нахождение минимума
Мах Нахождение максимума
В CLIPS существует несколько
описывающих конструкций:
-defmodule,
-defrule,
-deffacts,
-deftemplate,
-defglobal,
-deffunction,
-defclass,
-definstances,
-Defgeneric,
-defmessage-handler
Факты
Факты являются одной из основных форм
представления информации в системе CLIPS.
Каждый факт представляет фрагмент
информации, который был помещен в
текущий список фактов, называемый fact-list.
Факт представляет собой основную единицу
данных, используемую правилами.
Факты
Существует два основных вида фактов:
1. Статические
2. Неизменные
Общая структура конструкции
deftemplate такова:
(deftemplate )
(slot-1)
(slot-2)
…
(slot-N)
имя слота или полей
Правила
Правило состоит из двух частей:
1. антицедента (условия), который
является аналогом условия в if-then
операторе и записывается слева
2. консеквента (заключения), который
является аналогом then части этого
оператора записывается справа.
Переменные
Как и в других языках программирования, в
CLIPS для хранения значений используются
переменные. В отличие от фактов,
содержание переменной динамично и
изменяется по мере того, как изменяется
присвоенное ей значение.
Идентификатор переменной всегда начинается
с вопросительного знака, за которым следует
ее имя.
Заключение
CLIPS предлагает аппарат для работы с
нечёткими множествами, что может быть
полезно для математиков, ведущих работу в
области прогнозирования и оценки качества.
В более широком смысле язык CLIPS можно
использовать для построения экспертных
систем, которые смогут заменить человека
при принятии решений, основанных на
логическом выводе, например, при
постановке диагноза на основе базы
симптомов.
Download