Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Экспертная система CLIPS



CLIPS, (от англ. C Language Integrated Production System) — программная экспертная система. Синтаксис и название предложены Чарльзом Форги (Charles Forgy) в OPS (Official Production System).

Первоначально аббревиатура CLIPS была названием языка – С Language Integrated Production System (язык С, интегрированный с продукционными системами), удобного для разработки баз знаний и макетов экспертных систем. CLIPS начал разрабатываться в космическом центре NASA в 1984 г. Теперь CLIPS представляет собой современный инструмент, предназначенный для создания экспертных систем (expert system tool).

CLIPS состоит из интерактивной среды – экспертной оболочки со своим способом представления знаний, гибкого и мощного языка и нескольких вспомогательных инструментов.

CLIPS является одной из наиболее широко используемых экспертных систем. Распространение эта система получила благодаря своей скорости, эффективности и бесплатности. Несмотря на то, что теперь она является общественным достоянием, она до сих пор обновляется и поддерживается своим изначальным автором, Гэри Райли (Gary Riley).

Сейчас CLIPS является абсолютно свободно распространяемым программным продуктом. Всем желающим доступен как сам CLIPS последней версии, так и его исходные коды. Официальный сайт CLIPS располагается по адресу: http://www.ghg.net/clips/CLIPS.html. Этот сайт поможет получить как сам CLIPS, так и всевозможный материал для его изучения и освоения (документацию, примеры, советы специалистов, исходные коды и многое другое).

Благодаря тому, что CLIPS является свободно распространяемым программным продуктом с доступными исходными кодами, в последнее время было выпущено множество программ и библиотек, совершенствующих и дополняющих возможности CLIPS. Некоторые из этих продуктов являются собственностью выпустивших их компаний и предназначены для внутреннего использования или коммерческого распространения, другие, как и сам CLIPS, распространяются свободно. В качестве самых известных примеров подобных проектов можно привести DLL/OCX-библиотеку, позволяющую использовать механизм логического вывода CLIPS приложениях, Fuzzy CLIPS, CLIPS++, CLIPS code generator.

CLIPS включает полноценный объектно-ориентированный язык COOL для написания экспертных систем. Хотя она написана на языке Си, её интерфейс намного ближе к языку программирования LISP. Расширения можно создавать на языке Си, кроме того, можно интегрировать CLIPS в программы на языке Си.

CLIPS использует продукционную модель представления знаний, то есть модель, основанную на правилах и позволяющую представить знание в виде предложений типа «Если (условие), то (действие)». Поэтому CLIPS содержит три основных элемента:

- список фактов;

- базу знаний;

- блок вывода.

Кроме того, CLIPS поддерживает еще две парадигмы программирования: объектно-ориентированную и процедурную.

CLIPS поддерживает эвристическую и процедурную парадигму представления знаний. Для представления знаний в процедурной парадигме CLIPS предоставляет такие механизмы, как глобальные переменные, функции и родовые функции.

Кроме того, существует такой способ представления знаний, как правила. Правила в CLIPS служат для представления эвристик или так называемых "эмпирических правил" действий при возникновении некоторой ситуации. Разработчик экспертной системы определяет набор правил, которые вместе работают над решением некоторой задачи. Правила состоят из предпосылок и следствия. Предпосылки называются также ЕСЛИ-частью правила, левой частью правила или LHS правила (left-hand side of rule). Следствие называется ТО-частью правила, правой частью правила или RHS правила (right-hand side of rule).

Одной из основных форм представления информации в системе CLIPS являются факты. Каждый факт представляет фрагмент информации, который был помещен в текущий список фактов. Этот список называется fact-list. Факт представляет собой основную единицу данных, используемую правилами.

Факты могут добавляться к списку фактов, удаляться из него, изменяться и дублироваться самим пользователем или программой.

Единственным ограничением количества фактов в списке и объема информации, который может быть сохранен в факте, является размер памяти компьютера. Если при добавлении нового факта к списку обнаруживается, что он полностью совпадает с одним из уже включенных в список фактов, то эта операция игнорируется.

В завершение следует иметь в виду, что CLIPS может неудовлетворительно работать в реальном времени, когда потребуется время реакции менее 0,1 с. В этом случае надо исследовать на разработанном прототипе механизмы вывода для всего множества правил предметной области на различных по производительности компьютерах. Как правило, современные персональные компьютеры обеспечивают работу с продукционными системами объемом 1000 – 2000 правил в реальном времени. Web-ориентированные средства на базе JAVA (системы Exsys Corvid, JESS) являются более медленными, чем, например, CLIPS 6 или OPS-2000. Поэтому CLIPS – лучший на сегодня выбор для работы в реальном времени среди распространяемых свободно оболочек ЭС, разработанных на C++.





Дата публикования: 2015-01-10; Прочитано: 3711 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...