Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Представление знаний в ИС / Конспект лекций.doc
Скачиваний:
137
Добавлен:
22.05.2015
Размер:
2.41 Mб
Скачать
  1. Модели представления знаний

Существуют десятки моделей (или языков) представления знаний для различных предметных областей. Большинство из них может быть сведено к следующим классам:

  • продукционные модели;

  • семантические сети;

  • фреймы;

  • формальные логические модели.

Коротко охарактеризуем каждую из этих моделей.

Продукционная модель

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

Под «условием» (антецедентом) понимается некоторое предложение-об­разец, по которому осуществляется поиск в базе знаний, а под «действием» (консеквентом)—действия, выполняемые при успешном исходе поиска (они могут быть промежуточными, выступающими далее как условия и терминальными или целевыми, завершающими работу системы).

Чаще всего вывод на такой базе знаний бывает прямой (от данных к по­иску цели) или обратный (от цели для ее подтверждения — к данным). Дан­ные — это исходные факты, хранящиеся в базе фактов, на основании кото­рых запускается машина вывода или интерпретатор правил, перебирающий правила из продукционной базы знаний (см. далее).

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

Семантические сети

Термин «семантическая» означает «смысловая», а сама семантика — это наука, устанавливающая отношения между символами и объектами, которые они обозначают, то есть наука, определяющая смысл знаков.

Семантическая сеть — это ориентированный граф, вершины которого — понятия, а дуги — отношения между ними.

В качестве понятий обычно выступают абстрактные или конкретные объекты, а отношения — это связи типа «это» («АКО — A-Kind-Of», «is»), «имеет частью» («haspart»), «принадлежит», «любит».

Характерной особенностью семантических сетей является обязательное наличие трех типов отношений:

  • класс — элемент класса (класс работников — менеджер);

  • свойство — значение (образование — высшее);

  • пример элемента класса (менеджер — Иванов И.И.).

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

    1. По количеству типов отношений:

а) однородные (с единственным типом отношений);

б) неоднородные (с различными типами отношений).

    1. По типам отношений:

а) бинарные (в которых отношения связывают два объекта);

б) n-арные (в которых есть специальные отношения, связывающие бо­лее двух понятий).

Наиболее часто в семантических сетях используются следующие отношения:

  • Связи типа «часть—целое» («класс—подкласс», «элемент—множество»,...);

  • функциональные связи (определяемые обычно глаголами «производит», «влияет»,…);

  • количественные (больше, меньше, равно,...);

  • пространственные (далеко от, близко от, за, под, над,...);

  • временные (раньше, позже, в течение,...);

  • атрибутивные связи (иметь свойство, иметь значение);

  • логические связи (и, или, не);

  • лингвистические связи.

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

Проблема поиска решения в базе знаний типа семантической сети сводится к задаче поиска фрагмента сети, соответствующего некоторой подсети, отражающей поставленный запрос к базе.

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

Прямая со стрелкой 11Прямая со стрелкой 10Прямая со стрелкой 9Прямая со стрелкой 8Прямая со стрелкой 7Прямая со стрелкой 6Прямая со стрелкой 5Прямая со стрелкой 4Прямая со стрелкой 3Прямая со стрелкой 2Прямая со стрелкой 1Прямая со стрелкой 16Прямая со стрелкой 15Прямая со стрелкой 14Прямая со стрелкой 13Прямая со стрелкой 12

Поставщик

Заказ

Датировка

Дата

Поставка

Изделия

Проект

Платеж

Количество

Величина

Стоимость

Объем

Время

Прямая со стрелкой 19Прямая со стрелкой 18Прямая со стрелкой 17


Рис. 4. Пример семантической сети

Недостатком этой модели является сложность организации процедуры поиска вывода на семантической сети.

Фреймы

Термин фрейм (от английского frame, что означает «каркас» или «рамка») был предложен Марвином Минским, одним из пионеров ИИ, в 70-е годы двадцатого века для обозначения структуры знаний для восприятия про­странственных сцен. Эта модель, как и семантическая сеть, имеет глубокое психологическое обоснование.

Фрейм— это абстрактный образ для представления некоего стереотипа восприятия.

В психологии и философии известно понятие абстрактного образа. На­пример, произнесение вслух слова «комната» порождает у слушающих образ комнаты: «жилое помещение с четырьмя стенами, полом, потолком, окнами и дверью, площадью 6-20 кв. м». Из этого описания ничего нельзя убрать (например, убрав окна, мы получим уже чулан, а не комнату), но в нем есть «дырки» или «слоты» — это незаполненные значения некоторых атрибутов, например, количество окон, цвет стен, высота потолка, покрытие пола и др.

В теории фреймов такой образ комнаты называется фреймом комнаты. Фреймом также называется и формализованная модель для отображения образа.

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

  • фреймы-структуры, использующиеся для обозначения объектов и поня­тий (заем, залог, вексель);

  • фреймы-роли (менеджер, кассир, клиент);

  • фреймы-сценарии (банкротство, собрание акционеров, именины);

  • фреймы-ситуации (тревога, авария, рабочий режим устройства).

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

(ИМЯ ФРЕЙМА:

(имя 1-го слота: значение 1-го слота),

(имя 2-го слота: значение 2-го слота),

………………………..........

(имя N-го слота: значение N-го слота)

)

Таблица 1

Имя фрейма

Имя слота

Значение слота

Способ получения значения

Присоединенная процедура

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

Существует несколько способов получения слотом значений во фрейме-экземпляре:

  • по умолчанию от фрейма-образца (Default-значение);

  • через наследование свойств от фрейма, указанного в слоте АКО;

  • по формуле, указанной в слоте;

  • через присоединенную процедуру;

  • явно из диалога с пользователем;

  • из базы данных.

Важнейшим свойством теории фреймов является заимствование из тео­рии семантических сетей — так называемое наследование свойств.И во фрей­мах, и в семантических сетях наследование происходит по АКО-связям (A-Kind-Of = это).Слот АКО указывает на фрейм более высокого уровня иерархии, откуда неявно наследуются, то есть переносятся, значения анало­гичных слотов.

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

Формальные логические модели

Традиционно в представлении знаний выделяют формальные логические мо­дели, основанные на классическомисчислении предикатовI-го порядка, ко­гда предметная область или задача описывается в виде набора аксиом.

В основе логических моделей лежит понятие формальной теории,зада­ваемой четверкойS = (B,F,A,R),где

  • B — счетное множество базовых символов (алфавит) теории S;

  • F — подмножество S, называемых формулами теории (под выражени­ями понимаются конечные последовательности базовых символов тео­рии S). Обычно существует эффективная процедура (множество синтак­сических правил), позволяющая строить из B синтаксически правильные выражения — формулы;

  • A — выделенное множество формул, называемых аксиомами теории S, т.е. множество априорно истинных формул;

  • R — конечное множество отношений r1,... ,rn между формулами, назы­ваемыми правилами вывода.

Для каждого fjсуществует целое положительное число j, такое, что для каждого множества, состоящего изjформул, и для каждой формулыfэф­фективно решается вопрос о том, находятся ли данные jформул в отно­шенииrj с формулойf. Если отношениеrjвыполняется, тоfназываетсянепосредственным следствиемданныхjформул по правилуrj. Следстви­ем (выводом)формулы fnв теории Sназывается всякая последовательностьf1,..., fnформул, такая, что для любогоiформулаr, есть либо аксиома тео­рии S,либо непосредственное следствие каких-либо предыдущих формул по одному из правил вывода. Правила вывода позволяют расширять множество формул, которые считаются истинными в рамках данной теории.

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

Формальная система Sназывается непротиворечивой,если не существует формулыA, такой, чтоAи¬A выводимывS.

Наиболее распространенной формальной системой, которая используется для представления знаний, является исчисление предикатов первого поряд­ка. Алфавит исчисления предикатов состоит из следующего набора симво­лов:

  • знаков пунктуации {,(,,,),.,;,};

  • пропозициональных связок ¬, ˄, ˅,→;

  • знаков кванторов ∀, ∃;

  • символов переменных xk, к = 1, 2,...;

  • n-местных функциональных букв: fkn , к ≥ 1, n ≥ 0 (fk0 называют кон­стантными буквами);

  • n-местных предикатных букв (символов): рkn, к ≥ 1, n ≥ 0.

Из символов алфавита можно строить различные выражения. Выделяют

термы, элементарные формулы (атомы) и правильно построенные формулы

(или просто формулы). Всякий символ переменной или константной буквы

есть терм.Если t1,... ,tn (n ≥ 1) термы, то и fkn(t1,... ,tn)является термом.

Если рkn— предикатная буква,a t1,... ,tn— термы, то рkn (t1,...,tn) — эле­ментарная формула(атом). Атом является правильно построенной форму­лой.ЕслиAиB— правильно построенные формулы, то ¬A, A ˄ B, A ˅B, A ^ ˄ Bесть правильно построенные формулы. ЕслиA— правильно постро­енная формула и x— переменная вA, то конструкции ( x A) и ( x A)— правильно построенные формулы. Выражение является правильно построен­ной формулой, только если оно получено с соблюдением приведенных выше правил.

Для того чтобы придать формуле содержание, ее интерпретируют как утверждение, касающееся рассматриваемой предметной области. Под интер­претациейпонимают всякую систему, состоящую из непустого множестваD, называемого областью интерпретации,и какого-либо соответствия, отно­сящего каждой предикатной букве рknнекотороеn-местное отношение вD; каждой функциональной буквеfknнекоторуюn-местную функцию, отобра­жающуюDn ¬D, и каждой константной буквеf— некоторый элемент изD. При заданной интерпретации переменные мыслятся «пробегающими» все значения из областиD этой интерпретации, а всякой элементарной форму­ле приписывается значение «истинно» (И) или «ложно» (Л). Приписывание значения элементарной формуле рkn(t1,... ,tn)осуществляется по следующе­му правилу: если термы предикатной буквы соответствуют элементам изD, удовлетворяющим отношению, определяемому данной интерпретацией, то значением элементарной формулы будет истина, в противном случае — ложь. Значение неэлементарной формулы вычисляется рекуррентно, исходя из значений составляющих ее формул. Очевидно, что значения формул могут быть истинными или ложными в зависимости от выбранной интерпретации.

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

Теорема 1. Пусть даны формулы B1,...,Bn и формула A. Формула A является логическим следствием B1,...,Bn тогда и только тогда, когда формула B1 ^ ... ^ Bn A общезначима, т.е. является истиной.

Напомним, что формула Aлогически следует из формулB1,..., Bnтогда и только тогда, когда всякая интерпретация I, удовлетворяющаяB1 ˄ ˄ Bn, удовлетворяет также иA. ФормулыB1,...Bn,называют посылками,аA заключением логического следованияи обозначают B1,... ,Bn A.

Задачей доказательства теоремы называют выяснение вопроса логиче­ского следования из заданного множества формул B1,..., Bn некоторой фор­мулыA, что равносильно доказательству общезначимости формулыB1 ˄... ˄ Bn ˄ Aили невыполнимости формулыB1 ˄ ... ˄ Bn ˄ (¬A).

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

Приведем пример записи некоторого факта в виде формулы исчисления предикатов:

ДАТЬ (МИХАИЛ, ВЛАДИМИРУ, КНИГУ);

(∃ x)( ЭЛЕМЕНТ (x, СОБЫТИЕ-ДАТЬ) ˄ ИСТОЧНИК (x, МИХАИЛ) ˄ АДРЕСАТ (x, ВЛАДИМИР) ˄ ОБЪЕКТ (x, КНИГА)).

Здесь описаны два способа записи одного факта: «Михаил дал книгу Вла­димиру».

Основным достоинством использования исчисления предикатов в каче­стве модели представления знаний является наличие единообразной фор­мальной процедуры доказательства теорем. Однако высокая степень едино­образия влечет за собой и основной недостаток данного подхода — сложность использования при доказательстве эвристик, отражающих специфику кон­кретной проблемной среды. Указанный недостаток особенно важен при по­строении экспертных систем, вычислительная мощность которых в основном определяется знаниями, характеризующими специфику проблемной среды. К другим недостаткам формальных систем следует отнести их монотон­ность,отсутствие средств для структурирования используемых элементов и недопустимость противоречий.

Стремление устранить недостатки формальных систем при их использо­вании в качестве моделей представления привело к появлению семиотиче­ских систем. Семиотическая система формально задается восьмеркой S = (B,F, A, R, Q(B),Q(F), Q(A), Q(R)).Здесь первые четыре компонента те же, что и в определении формальной системы (см. выше), а остальные ком­поненты — правила изменения первых четырех компонентов под влиянием накапливаемого в базе знаний интеллектуальной системы опыта о строении и функционировании сущностей в данной проблемной среде.

Мы опустим подробное описание логических моделей, т.к. исчисление предикатов 1-го порядка в промышленных экспертных системах практиче­ски не используется в силу того, что они предъявляют очень высокие требо­вания и ограничения к предметной области.