КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Модель представления знаний в виде фреймовПродукционные системы, базы знаний которых насчитывают сотни правил, отнюдь не считаются чем-то необычным. При такой сложности системы для инженера знаний процесс обновления состава правил и контроль связей между ними становится весьма затруднительным, поскольку добавляемые правила могут дублировать имеющиеся или вступать с ними в противоречие. Для выявления подобных фактов можно использовать программные средства, но включение их в работу системы приводит к еще более тяжелым последствиям – потере ею работоспособности, так как в этом случае инженер знаний теряет представление о том, как взаимодействуют правила. При этом количество опосредованных родовидовых связей между понятиями резко возрастает, и инженеру знаний трудно их контролировать. Представление знаний, основанное на фреймах, является альтернативным по отношению к системам продукции: оно дает возможность хранить родовидовую иерархию понятий в БЗ в явной форме. Термин “фрейм” (от английского frame, что означает “каркас” или “рамка”) был предложен Марвином Минским в 1979 г. для обозначения структуры данных при восприятии пространственных сцен. Эта модель имеет психологическое обоснование. Фрейм – это абстрактный образ для представления некоего стереотипа восприятия [1]. Во фреймовой системе единицей представления знания является объект, называемый фреймом. Он является формой представления некоторой ситуации, которую можно (или целесообразно) описывать некоторой совокупностью понятий и сущностей. В качестве идентификатора фрейму присваивается имя. Это имя должно быть единственным во всей фреймовой системе. Фрейм имеет определенную внутреннюю структуру, состоящую из множества элементов, называемых слотами, которым также присваиваются имена. Каждый слот, в свою очередь, представляется определенной структурой данных. Иногда слот включает компонент, называемый фасетом, который задает диапазон или перечень его возможных значений. Фасет указывает также граничные значения заполнителя слота (например, максимально допустимое число братьев). Помимо конкретного значения, в слоте могут храниться процедуры и правила, которые вызываются при необходимости вычисления этого значения. Совокупность фреймов, моделирующая какую-либо предметную область, представляет собой иерархическую структуру, в которую фреймы соединяются с помощью родовидовых связей (рис. 2.2). На верхнем уровне иерархии находится фрейм, содержащий наиболее общую информацию, истинную для всех остальных фреймов. Фреймы обладают способностью наследовать значения характеристик своих родителей, находящихся на более высоком уровне иерархии. Так, фрейм АФРИКАНСКИЙ СЛОН наследует от фрейма СЛОН значение СЕРЫЙ характеристики ЦВЕТ. Значения характеристик фреймов могут передаваться по умолчанию фреймам, находящимся ниже их в иерархии, но если последние содержат собственные значения данных характеристик, то в качестве истинных применяются именно они [4]. Это обстоятельство позволяет легко учитывать во фреймовых системах различного рода исключения. В частности, во фрейме АЗИАТСКИЙ СЛОН значением слота ЦВЕТ будет КОРИЧНЕВЫЙ, а не СЕРЫЙ, которое могло бы в нем находиться, если бы предпочтение при выборе отдавалось не собственному значению, а наследуемому от фрейма СЛОН (рис. 2.3).
Рис. 2.2. Иерархическая структура фрейма
Различают статические и динамические системы фреймов. В системах первого типа фреймы не могут быть изменены в процессе решения задачи, в системах второго типа это допустимо.
Рис. 2.3. Пример наследования свойств
О системах программирования, основанных на фреймах, говорят, что они являются объектно-ориентированными системами. Каждый фрейм соответствует некоторому объекту предметной области, а слоты содержат данные, описывающие этот объект, т.е. в слотах находятся значения признаков объекта. Фрейм может быть представлен в виде списка свойств, а если использовать средства БД, то в виде записи (кортежа). Выводы во фреймовой системе исполняются обменами сообщений между фреймами. Наиболее ярко достоинства фреймовых систем представления знаний проявляются в том случае, если родовидовые связи изменяются не часто и предметная область насчитывает немного исключений. Во фреймовых системах данные о родовидовых связях хранятся явно, т.е. так же, как и знания всех других типов. Значения слотов представляются в системе в единственном экземпляре, поскольку включаются только в один фрейм, описывающий наиболее общее понятие из всех тех, которые содержат слот с данным именем. Такое свойство систем фреймов дает возможность уменьшить объем памяти, необходимый для их размещения в компьютере. Еще одно достоинство фреймов состоит в том, что значение любого слота при необходимости может быть вычислено с помощью соответствующих процедур или найдено эвристическими методами. Для этого инженер знаний должен заранее разработать все требуемые процедуры и эвристические методы, чтобы включить их в систему на этапе ее проектирования. Как недостаток фреймовых систем, следует отметить их относительно высокую сложность, что проявляется в снижении скорости работы механизма вывода и в увеличении трудоемкости внесения изменений в родовидовую иерархию. В настоящее время имеется лишь небольшое число ЭС, где для представления знаний служат фреймы. Самая популярная среди них – КЕЕ, созданная компанией Intel licorp. Система КЕЕ имеет развитые встроенные графические средства объяснения и тестирования как динамических процессов, происходящих в ходе решения задачи, так и статического состояния БЗ. В качестве средств приобретения знаний используется интеллектуальный редактор БЗ. Система КЕЕ является экспертной оболочкой, эффективным средством автоматизации проектирования ЭС, ориентированным на использование в различных приложениях. Программное обеспечение этой системы выполнено на языке ЛИСП и требует применения специальной аппаратуры. Стоимость самих программ приблизительно 60 000 $, а к ней еще нужно добавить стоимость ЛИСП-машины, на которой они выполняются, т.е. еще 50 000 – 100 000 $. Стоимость же полного комплекта системы составляет не менее 250 000 $ [4].
|