Лекция: Системы представления знаний

. Лекция: Системы представления знаний

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

Фреймы предложены в 1975 году Марвином Минским [31]. Фрейм (рамка в переводе с англ.) - это единица представления знаний, запомненная в прошлом, детали которой могут быть изменены согласно текущей ситуации. Фрейм представляет собой структуру данных, с помощью которых можно, например, описать обстановку в комнате или место встречи для проведения совещания. М.Минский предлагал эту модель для описания пространственных сцен. Однако с помощью фреймов можно описать ситуацию, сценарий, роль, структуру и т.д.

Фрейм отражает основные свойства объекта или явления. Структура фрейма записывается в виде списка свойств, называемых во фрейме слотами. Рассмотрим запись фрейма на языке FRL (Frame Representation Language) [32] - языке, похожем на LISP, но только внешне из-за наличия скобок.

Например, фрейм СТОЛ может быть записан в виде 3 слотов: слот НАЗНАЧЕНИЕ (purpose), слот ТИП (type) и слот ЦВЕТ (colour) следующим образом:

(frame СТОЛ (purpose (value(размещение предметов для деятельности рук))) (type (value(письменный))) (colour (value (коричневый))))

Во фрейме СТОЛ представлены только ДЕКЛАРАТИВНЫЕ средства для описания объекта, и такой фрейм носит название фрейм-образец. Однако существуют также фреймы-экземпляры, которые создаются для отображения фактических ситуаций на основе поступающих данных и ПРОЦЕДУРАЛЬНЫХ средств (демонов), например, следующих:

IF-DEFAULT - по умолчанию

IF-NEEDED - если необходимо

IF-ADDED - если добавлено

IF-REMOVED - если удалено

Слот IS-A или AKO (A Kind Of) определяет иерархию фреймов в сети фреймов. Такая связь обеспечивает наследование свойств. Слот isa указывает на фрейм более высокого уровня, откуда неявно наследуются свойства аналогичных слотов.

Рассмотрим фрагмент описания из "мира блоков" (рис. 2.1) в виде фреймов.


Рис. 2.1. "Мир блоков"

(frame (name (Cube)) (isa (Block World)) (length (NULL)) (width (IF-DEFAULT (use length))) (height (IF-DEFAULT (use length)))) (frame (name (B1)) (isa (Cube)) (color (red)) (length (80))) (frame (name (B2)) (isa (Cube)) (color (green)) (length (65)) (who_put (value (NULL)) (IF_NEEDED (askuser))))

Слот isa указывает на то, что объекты B1 и B2 являются подтипом объекта Cube и наследуют его свойства, а именно, length = width = height. Демон IF_NEEDED запускается автоматически, если понадобится узнать, кто поставил B2 на стол. Полученный ответ (Робби) будет подставлен в значение слота who_put. Аналогично работают демоны IF-ADDED и IF-REMOVED.

Допустим, однорукому роботу Робби дается приказ "Возьми желтый предмет, который поддерживает пирамиду". На языке представления знаний (ЯПЗ) вопрос записывается так:

(object ? X (color (yellow)) (hold ? Y (type (pyramid))))

Программа сопоставления с образцом находит в базе знаний описание объектов:

(frame (name (B3)) (type (block)) (color (yellow)) (size (20 20 20)) (coordinate (20 50 0)) (hold (P2)))

и

(frame (name (P2)) (type (pyramid)) ...)

Ответ получен X = B3, Y = P2 и Робби выдается команда take(object=B3).

Таков общий механизм представления знаний в виде фреймов. Реализация этого механизма потребует решения других, более сложных проблем, например, автоматического ввода знаний для трехмерных объектов, работы с трехмерными быстродвижущимися объектами (своеобразный тест на реакцию) и т.д. Эти проблемы ждут своего эффективного решения.

Исчисления предикатов

Предикатом называют предложение, принимающее только два значения: "истина" или "ложь". Для обозначения предикатов применяются… x(...) - существует такой x, что ... x(...) - для любого x

Системы продукций

где: Xi,Yi - логические выражения, Di - фактор достоверности (0,1) или фактор уверенности (0,100). Системы продукций - это набор правил, используемый как база знаний, поэтому… А.Ньюэлл и Г.Саймон отмечали в GPS, что продукции соответствуют навыкам решения задач человеком в долгосрочной памяти…

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

Пример семантической сети для предложения типа "Поставщик осуществил поставку изделий по заказу клиента до 1 июня 2004 года в количестве 1000… Рис. 2.3. Пример семантической сети На этом примере видно, что между объектами Поставщик и Поставка определено отношение "агент", между…

Нечеткая логика

Нечеткое подмножество N множества M определяется как множество упорядоченных пар N = {μN(x)/x}, где μN(x) - характеристическая функция… где Xi - i-е значение базовой шкалы, а знак "+" не является… Определим лингвистическую переменную (ЛП) как переменную, значение которой определяется набором словесных…