Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Продукционный язык ОРS

Фрейм-ориентированный язык FRL.

Основная единица знаний в таких языках – фрейм, представляющий собой информационную модель (или описание) некоторой стереотипной ситуации. Фрейм в FRL – совокупность поименованных, ассоциативных списков, содержащих до пяти уровней структур. Подструктурами фреймов могут быть слоты, аспекты, данные комментарии и сообщения. Основной структурной единицей являются слоты, отражающие связь между понятиями предметной области. Слот характеризуется своим именем и значением. Имена слотов назначаются проектировщиком базы знаний. Однако FRL имеет также и зарезервированные имена слотов: АКО, INSTANSE, CLAS SIFICATION. В качестве значения слотов могут выступать числа, символы, имена процедур. Фреймы в FRL строятся с помощью процедуры FASSERT. В FRL имеется семь зарезервированных аспектов: VALUE, DELAULT, IF-NEEDET, IF-ADDED, IF-REMOVED, IF-INSTANTIAL, REQUIRE. Данные из аспекта VALUE интерпретируются как значение слота, а из аспекта DELAULT – как значение по умолчанию. Остальные пять аспектов связывают с фреймом процедуральные знания. Процедуры из аспекта IF-ADDED активизируется в том случае, если в слот добавлены новые данные; процедуры из аспекта IF-REMOVED

- если из слота удаляется какое либо данное. Процедуры из аспекта IF-NEEDET запускаются при создании экземпляра фрейма. Аспект REQUIRE содержит процедуры, которые ограничивают значение слота.

Важным свойством языка является наличие в нем встроенного механизма «наследования свойств». Суть этого механизма заключается в том, что все понятия предметной области БЗ организовываются в виде иерархической классификационной системы, где каждое понятие связывается с помощью специальных отложений с более конкретными. Для реализации этих отложений существуют слоты ФКО и INSTANSE. Слот АКО связывает понятие с более общим (родовым). Слот INSTANSE. Связывает понятие с более конкретным (видом). Свойства, присущие всему классу, описывают только во фрейме класса, а остальные фреймы этого класса могут наследовать это свойство в случае надобности.

Процедуры обработки FRL подразделяются на независимые и присоединенные. Независимо от типа эти процедуры пишутся обычно на языке реализации самого FRL. На сегодняшний день большинство FRL-систем написаны на LISP.

Продукционный язык OPS является универсальным языком программирования, он в первую очередь предназначен для разработки систем ИИ, и, в частности экспертных систем. Программа на этом языке состоит из декларативной и продукционной частей. В языке имеются три вида операторов: оператор описания типов данных TYPE, оператор описания классов CLASS и оператор описания правил RULE. Декларативная часть программы содержит описание типов данных и классов элементов рабочей памяти. Элемент рабочей памяти (класс) является единственно возможным представителем данных в OPS программе. Он представляет собой фиксированную структуру, состоящую из совокупности пар «атрибут-значение». Атрибуты локализованы в пределах одного класса, некоторые атрибуты могут не иметь значения. Допустимые классы элементов рабочей памяти должны быть предварительно описаны в разделе определения классов. Определение класса задает его структуру, типы допустимых значений атрибутов, входящих в класс, и, если это необходимо, начальные значения атрибутов (значения по умолчанию).

Раздел правил записывается после декларативной части и представляет собой совокупность правил. Правило состоит из заголовка и тела правила. Заголовок начинается со слова RULE, за которым следует имя правила и описание переменных (если они используются). Тело правила состоит из левой части, задающей условие применимости правила, и правой части, содержащей последовательность выполняемых действий. Левая часть начинается словами IF, разделителем между левой и правой частями служит слово THEN. Например:

RULE ОСТАНОВКА УСТАНОВКИ 1

IF

ОБЪЕКТ

ИМЯ УСТАНОВКА _1

СОСТОЯНИЕ ОСТАНОВИЛАСЬ

AND

ОБЪЕКТ

ИМЯ УСТАНОВКА _2

СОСТОЯНИЕ РАБОТАЕТ

AND

ОБЪЕКТ

ИМЯ УСТАНОВКА _3

СОСТОЯНИЕ РАБОТАЕТ

THEN

WRITE Установка 1 остановилась

WRITE Распределить ее сырье между установкой 2 и установкой 3

Левая часть состоит из одного или более условных элементов. Каждый условный элемент задает образец, который сопоставляется с содержащимися в рабочей памяти элементами. Левая часть считается сопоставленной, если одновременно сопоставились все входящие в нее условные элементы. Разделителем между условными элементами служит слово AND или ANDNUT. В левой части могут быть использованы предикатные операторов: не равно¸ больше, меньше, не больше, не меньше, не входит в список и др.

Правая часть правила состоит из последовательности императивных утверждений, называемых действиями, которые разделяются на две группы: элементарные, обеспечивающие вывод решения, и вспомогательные, обеспечивающие ввод и другие сервисные возможности. К элементарным относятся: MARE – создание нового элемента рабочей памяти; REMOVE – удаление элемента из рабочей памяти; MODIFY – изменение значений атрибутов, уже находящихся в рабочей памяти. К вспомогательным относятся: HALT – явное прекращение программы; BIND – вызов функций или модулей на других языках программирования; SET – динамическое изменение стратегии вывода решений или подробности объяснения решений, а также операторы вывода сообщений на дисплей или принтер.

<== предыдущая лекция | следующая лекция ==>
Проблемно-ориентированные языки. Языки представления знаний | Расчет среднего уровня в интервальных рядах динамики
Поделиться с друзьями:


Дата добавления: 2014-01-11; Просмотров: 698; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.014 сек.