Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаба 6 Разработка и реализация модели описания предметной области.doc
Скачиваний:
35
Добавлен:
15.06.2014
Размер:
112.13 Кб
Скачать

Лабораторная работа №6: «Разработка и реализация модели описания предметной области»

Цель работы – изучение способов представления и обработки знаний предметной области; реализация модели представления знаний и операций по ее обработке.

Теоретические сведения

В процессе проектирования интеллектуальных компонент сложных систем участвуют три определенным образом связанных объекта: предметная область, мысленный образ предметной области, база знаний. Предметная область (ПО) – часть объективной реальности, представляющая интерес для создателя интеллектуальной системы (ИС) и существующая независимо как от создателя системы, так и от самой системы. В процессе познания в сознании исследователя складывается некоторый мысленный образ ПО (знания). Мысленный образ ПО является отражением объективной реальности в сознании разработчика ИС и существует независимо от предметной области и базы знаний (БЗ). База знаний – это формальное представление мысленного образа предметной области внутри интеллектуальной системы. Таким образом, база знаний – это строгое формальное представление целостной непротиворечивой системы суждений, отражающих знание создателем ИС интересующей его предметной области.

Концептуальная схема предметной области обычно состоит из двух частей: 1) часть, описывающая множество М всевозможных состояний, и 2) часть, характеризующая множество R возможных переходов из одного состояния в другое. Часть М называется описанием статики ПО, статическими правилами, аксиомами статики. Часть называется R описанием динамики ПО, динамическими правилами, аксиомами динамики, правилами перехода. С теоретико–множественной точки зрения ПО представляется как структура <S, T1,…, Tn>, S – множество индивидов, T1,…, Tn – отношения. Суждение о принадлежности некоторой сущности к одной из компонент структуры S или Ti называется элементарным фактом. Множество состояний предметной области можно представить как множество структур {<S, T1,…, Tn>i}.

Элементы ПО, связанные с реализацией интеллектуальных компонент систем, фиксируются средствами языка (естественного или искусственного). Язык выступает как средство описания объектов, ситуаций, складывающихся на этих объектах, и процедур управления. Для этой цели в языке выделяются следующие единицы [1]: понятия, имена, отношения, действия, квантификаторы, модификаторы, модальности, оценки. В свою очередь в отношениях языка можно выделить следующие группы: отношения классификации, признаковые отношения, количественный отношения, отношения сравнения, отношения принадлежности, временные отношения, пространственные отношения, инструментальные отношения, информационные отношения, порядковые отношения и т. п. Действия также бывают разных типов: императивы, процессы, состояния и т. п.

Вслед за этапом описания предметной области на естественном или искусственном языке описания ПО идет этап формализации знаний с помощью модели знаний и далее описания этих моделей на языках представления знаний.

Модель знаний – это формализм, предназначенный для описания знаний. Модели знаний обычно делят на логические (формальные) и эвристические (формализованные) [2, 3]. К эвристическим моделям, используемым в ЭС, относятся сетевые, фреймовые, продукционные модели.

Логические модели [2, 3]. В основе логических моделей представления знаний лежит понятие формальной теории, базирующейся на формализме языков математической логики. Формальная теория задается четверкой:

S=<B, F, A, R>.

Здесь B – счетное множество базовых символов (алфавит) теории S. F – подмножество выражений теории S, называемых формулами теории (под выражениями понимаются конечные последовательности базовых символов теории S). Обычно имеется эффективная процедура (множество синтаксических правил) построения из B синтаксически правильных выражений, являющихся формулами. А – выделенное множество формул, называемых аксиомами теории S, т.е. множество априорно истинных формул, R – конечное множество отношений {} между формулами, называемых правилами вывода.

Формальная теория называется разрешимой, если существует единая эффективная процедура, позволяющая узнать для любой данной формулы, существует ли ее вывод в S.

Языками формальных теорий являются исчисление предикатов, исчисление высказываний, многозначные и модальные логики.

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

Система продукций[2, 3] – это система управления множеством правил, срабатывающих только при выполнении некоторых определенных условий. Условия применимости могут меняться в процессе функционирования продукционной системы в зависимости от получения той или иной информации во время вывода. Условие применимости правила специфицирует некоторые требования к текущему состоянию, а действие содержит описание тех операций, которые надо произвести, если эти требования выполняются. Продукционные правила представляются следующим образом :

<правило>::=(ЕСЛИ<условие>ТО<действие>ИНАЧЕ<действие>

< условие >::=(И{<предложение>}*)

<предложение>::=(ИЛИ{<предложения>}*)|(<предикат><тройка>)

<тройка>::=(<объект><атрибут><значение>)

<действие>::={<заключение>}*|<процедура>

<заключение>::=(<тройка><коэффициент определенности>)

Здесь при истинности условия выполняется действие, стоящее за указателем ТО, а при ложности – действие, стоящее за указателем ИНАЧЕ. Сущности, помеченные звездочкой, могут появиться один или более раз.

Для обработки знаний в продукционных системах создаются специальные языковые средства.

Семантические сети [2, 3] используют структурные элементы, состоящие из двух компонент – вершин (помеченных и непомеченных узлов) и связывающих их ориентированных помеченных дуг, где узел представляет некоторый объект, а направленная дуга – бинарное отношение между объектами. Таким образом, семантическая сеть представляется в виде помеченного ориентированного графа, в котором вершина может являться графом. В сетевых моделях представления знаний в явной форме описаны все отношения, образующие модель. Семантические сети бывают двух видов: экстенсиональные семантические сети (ЭСС) и интенсиональные семантические сети (ИСС). ЭСС отражают знания о некотором конкретном факте или о некоторой конкретной ситуации. Вершинам ЭСС соответствуют некоторые объекты, присутствующие в данном факте и выделяемые с помощью индивидуальных имен из класса однотипных объектов, а связям (дугам) – конкретные отношения, которые связывают их в описываемой ситуации или факте. ИСС структурно ничем не отличается от ЭСС. Но только ее вершинам соответствуют имена классов, а не индивидуальные имена, а связи отражают те отношения, которые всегда присущи этим объектам. Для описания семантических сетей используются специальные графовые или теоретико–множественные языки.

Фреймы [2, 3] (иногда их рассматривают как развитие и обобщение семантических сетей) представляют собой иерархические информационные структуры для описания типовых объектов, событий, стереотипных ситуаций или действий в конкретной предметной области.

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

f = [<>, <>,..., <>],

где f – имя фрейма, – имя слота, – значение слота.

В свою очередь, слот задается как

{<имя слота>; <f1><v1>; …;< fn>< vn>;<q1>; …;< qm>},

где fi – имена атрибутов, характерных для данного слота, vi – значения этих атрибутов, qi – ссылки на другие слоты.

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

Объектная форма представления знаний [3] получила развитие в связи с распространением объектно–ориентированных языков программирования. Она позволяет соединить декларативность описания с привычным процедурным стилем и эффективно использовать уже разработанное программное обеспечение на традиционных процедурных языках программирования.