Разработка интеллектуальных информационных систем с использованием CLIPS. Дякин В.Н. - 4 стр.

UptoLike

Составители: 

ВВЕДЕНИЕ
Предметом изучения дисциплины "Интеллектуальные информационные системы" является исследование методик и ин-
струментальных средств разработки информационных систем с элементами искусственного интеллекта. Наиболее распро-
страненным типом таких систем являются так называемые экспертные системы.
Предлагается использовать для разработки экспертных систем язык представления знаний CLIPS. Первоначально аб-
бревиатура CLIPS была названием языкаС Language Integrated Production System (язык С, интегрированный с продукцион-
ными системами), удобного для разработки баз знаний и макетов экспертных систем. CLIPS начал разрабатываться в косми-
ческом центре NASA в 1984 г. Теперь CLIPS представляет собой современный инструмент, предназначенный для создания
экспертных систем (expert system tool). CLIPS состоит из интерактивной средыэкспертной оболочки со своим способом
представления знаний, гибкого и мощного языка и нескольких вспомогательных инструментов. Сейчас, благодаря доброй
воле своих создателей, CLIPS является абсолютно свободно распространяемым программным продуктом. Всем желающим
доступен как сам CLIPS последней версии, так и его исходные коды. Официальный сайт CLIPS располагается по адресу:
http://www.ghg.net/clips/CLIPS.html. Этот сайт поможет получить как сам CLIPS, так и всевозможный материал для его изуче-
ния и освоения (документацию, примеры, советы специалистов, исходные коды и многое другое).
Благодаря тому, что CLIPS является свободно распространяемым программным продуктом с доступными исходными
кодами, в последнее время было выпущено множество программ и библиотек, усовершенствующих и дополняющих воз-
можности CLIPS. Некоторые из этих продуктов являются собственностью выпустивших их компаний и предназначены для
внутреннего использования или коммерческого распространения, другие, как и сам CLIPS, распространяются свободно. В
качестве самых известных примеров подобных проектов можно привести DLL/OCX-библиотеку, позволяющую использо-
вать механизм логического вывода CLIPS в ваших приложениях, Fuzzy CLIPS. CLIPS++, CLIPS code generator.
Таким образом, возникает возможность применять конструкции CLIPS в приложениях, разработанных в других про-
граммных средах, таких как Visual Studio.
Для получения практических навыков работы с CLIPS студентам предлагается выполнить две лабораторные работы. В
первой должны быть использованы базовые конструкции исходного CLIPS для разработки прототипа экспертной системы.
Во второй для реализации прототипа системы следует применять объектно-ориентированное расширение CLIPS под назва-
нием COOL.
ОПИСАНИЕ ОСНОВНЫХ КОНСТРУКЦИЙ ЯЗЫКА
ПРЕДСТАВЛЕНИЯ ЗНАНИЙ CLIPS ВЕРСИИ 6.22
Экспертные системы, созданные с помощью CLIPS, могут быть запущены тремя основными способами:
вводом соответствующих команд и конструкторов языка непосредственно в среду CLIPS;
использованием интерактивного оконного интерфейса CLIPS (например для версий Windows или Macintosh);
с помощью программ-оболочек, реализующих свой интерфейс общения с пользователем и использующих механизмы
представления знаний и логического вывода CLIPS.
Windows-версия среды CLIPS полностью совместима с базовой спецификацией языка. Ввод команд осуществляется не-
посредственно в главное окно CLIPS. Однако по сравнению с базовой Windows-версия предоставляет множество дополни-
тельных визуальных инструментов (например, менеджеры фактов или правил), значительно облегчающих жизнь разработ-
чика экспертных систем.
Отличительной особенностью CLIPS являются конструкторы для создания баз знаний (БЗ):
defrule – определение правил;
deffacts – определение фактов;
deftemplate – определение шаблона факта;
defglobal – определение глобальных переменных;
deffunction – определение функций;
defmodule – определение модулей (совокупности правил);
defclass – определение классов;
defintances
определение объектов по шаблону, заданному
defclass;
defmessagehandler определение сообщений для объектов;
defgeneric – создание заголовка родовой функции;
defmethod – определение метода родовой функции.
CLIPS поддерживает следующие типы данных: integer, float, string, symbol, external-address, fact-address, instance-name,
instance-address.
Пример integer: 594, 23, +51, 17.
Пример float: 594e
2
, 23.45, +51.0, 17.5e
5
.
String – это строка символов, заключенная в двойные кавычки.
Пример string: "expert", "Phil Blake", "состояние $-0$", "quote=\".