Помощь в написании студенческих работ
Антистрессовый сервис

Работа с CLIPS

РефератПомощь в написанииУзнать стоимостьмоей работы

Запись является ответом CLIPS, сообщающим, что новый факт с номером «О» помещен в базу фактов. Команда (facts) выводит список фактов, например: При таком выводе результат одного правила может быть использован как паттерн другого правила. Например, можно добавить правило: Факты могут удаляться из базы фактов командой (retract). Например, можно добавить в базу два факта: Удаление информации… Читать ещё >

Работа с CLIPS (реферат, курсовая, диплом, контрольная)

Пользовательский интерфейс CLIPS имеет версию, основанную на меню, и возможности управления из командной строки. Команды меню отображаются в окне системы. В командной строке окна команды вводятся в обязательных скобках.

Чтобы запустить CLIPS, нужно щелкнуть два раза в окне системы на CLIPSWin. exe файл. Появится окно, не отображающее ничего, кроме команды CLIPS>. Это — поле, где можно писать команды и программу. Заметим, что команды CLIPS всегда заключаются в скобки.

Далее приведен список нескольких важных команд:

  • (exit) — выход из CLIPS;
  • (clear) — удаление фактов и правил из памяти. Эквивалент выхода и рестарта CLIPS;
  • (reset) — удаление информации о фактах из памяти (но не правил) и перезапуск процесса;
  • (run) — старт выполнения CLIPS-программы.

Эти команды могут также быть выполнены из меню CLIPS.

CLIPS использует список фактов и набор команд, которые оперируют ими. Факт представляет собой элемент информации, например (colour green) или (parent_of John). Факты создаются и помещаются в базу фактов командой (assert (fact)), например:

CLIPS>(assert (colour green)).

Запись является ответом CLIPS, сообщающим, что новый факт с номером «О» помещен в базу фактов. Команда (facts) выводит список фактов, например:

CLIPS>(facts) f-0 (colour green).

For a total of 1 fact.

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

CLIPS>(assert (colour green)).

CLIPS>(assert (colour red)).

а затем удалить первый факт и отобразить список файлов:

CLIPS>(retract 0).

CLIPS>(facts) f-1 (colour red).

For a total of 1 fact.

Заметим, что при удалении факта нужно специфицировать только его номер (индекс), а не сам факт. При этом индексы фактов повторно не используются. Так, если факт с индексом «О» был удален, следующий факт будет иметь индекс «2», а не «О».

Используя факты, введенные в базу фактов, можно создавать правила и помещать их в базу правил. Из фактов и правил разрабатывается программа, способная реализовать некоторые нужные функции. В общем виде правило выражается в форме продукции IF something is true THEN do some action.

Например, можно записать такое правило:

  • (defrule duck
  • (animal-is duck)

=>

(assert (sound-is quack))).

Это правило состоит из трех частей. Первая часть (defrule duck просто дает правилу уникальное имя. Вторая часть (animal-is duck) является паттерном (левая условная часть правила), а последняя часть, (assert (sound-is quack)) есть действие (правая заключающая часть правила). На обычном языке это означает «если имеется факт (animal-is duck) в базе фактов, то в нее добавляется новый факт (soundis quack)». Добавление нового факта в базу фактов производится после запуска правила командой (run). Это — результат работы интерпретатора, выполняющего продукционный вывод по алгоритму Rete, реализующему прямую цепочку вывода в системе продукционных правил и фактов.

При таком выводе результат одного правила может быть использован как паттерн другого правила. Например, можно добавить правило:

  • (defrule is-it-a-duck
  • (animal-has webbed-feet)
  • (animal-has feathers)

=>

(assert (animal-is duck))).

Затем ввести команду (reset), чтобы очистить факты, не трогая правила. Заметим, что это правило имеет два паттерна, причем оба они должны быть удовлетворены, чтобы было сделано действие. Оно транслируется как «IF the animal has webbed feet AND the animal has feathers THEN the animal is a duck». Если теперь добавить в базу факты (animal-has webbedfeet) и (animal-has feathers), после запуска правил командой (run) в базе появятся 4 факта. Сначала правило is-it-a-duck запускается, добавляя факт (animal-is duck). Этот факт затем обрабатывается правилом duck, которое добавляет факт (sound-is quack). Это демонстрирует способность интерпретатора выполнять цепочечный вывод.

Естественно, неэффективно записывать все правила каждый раз, когда необходимо запустить CLIPS. Более эффективно загружать правила из файла, используя команду 'Load Constructs. из файла меню. CLIPS воспринимает файлы с расширением .CLP и имеет редактор для помощи в их создании.

Показать весь текст
Заполнить форму текущей работой