Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СИИ - лекции.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
313.86 Кб
Скачать

4.4. Фрейм

– это структура данных, предназначенная для представления класса объектов, явлений, процессов или стандартных ситуаций. Фреймы были предложены в качестве аппарата для представления знаний М. Минским в 1975 г.

Общий вид фрейма:

< ИФ, (ИС1, ЗС1, ПП1), …, (ИС i, ЗС i, ПП i),…, (ИСn, ЗСn, ППn) >

слот i

ИФ - имя фрейма, ИСi – имя i-го слота, ЗCi – значение i-го слота,

ППi – имя i –й присоединенной процедуры

Слоты – это незаполненные подструктуры фрейма, заполнение которых приводит к тому, что данный фрейм ставится в соответствие некоторому конкретному объекту, явлению, процессу или ситуации.

Фрейм с незаполненными или частично заполненными слотами описывает класс объектов, явлений, процессов и называется протофреймом. Заполнение слотов данного протофрейма конкретными данными (означивание фрейма) порождает фрейм-экземпляр, описывающий конкретный объект, явление, процесс из того класса, который представлен данным протофреймом.

Значениями слотов могут быть конкретные данные, описывающие состав, структуру и свойства составляющих частей данного объекта, а также имена других фреймов (ссылки на другие фреймы). Таким способом создается сеть фреймов, описывающая более сложные объекты. Имя присоединенной процедуры (ПП) означает обращение к определенной процедуре для выполнения каких-либо действий, вычисления каких-либо значений и т.п. Этим достигается соединение декларативного и процедурного представлений знаний. Данная модель освещена в литературе [4, 6-9].

Пример. Описание объекта: фрейм "Электростанция" .

< ЭЛЕКТРОСТАНЦИЯ

имя фрейма

слот 1 …(Имя эл-станции, Иркутская ГЭС ),

имя слота 1 значение слота 1

слот 2 …(Тип эл-станции, гидравлич-кая ),

имя слота 2 значение слота 2

слот 3…(Установленная мощность, 660 мвт ),

имя слота 3 значение слота 3

слот 4 …(Осн-е технол-е оборуд-е, "Техн. оборуд-е Ирк-й ГЭС") >

имя слота 4 значение слота 4

Слот 4 содержит ссылку на другой фрейм с именем "Техн. оборуд-е Ирк-й ГЭС".

Этот фрейм принадлежит группе фреймов, которые содержат характеристики оборудования различных ГЭС и имеют имена:

< "Техн. оборуд-е Братской ГЭС>

< "Техн. оборуд-е Волжской ГЭС>

..............................................

< "Техн. оборуд-е Ирк-й ГЭС >

5. Основы методологии разработки эс

Вопросы, подлежащие изучению

5.1. Применение принципа прототипирования при разработке ЭС. Этапы разработки ЭС, их цели и содержание. [4, 6, 8, 9, 17].

5.2. Виды инструментальных средств разработки ЭС (краткая характеристика) [4, 6, 9,15,17].

5.1. Процесс разработки эс

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

Это концепция, зародившаяся при разработке ЭС, стала основой методологии быстрой разработки приложений (Rapid Application Development - RAD), применяющейся сейчас при разработке и других сложных программных систем.

Современная технология создания ЭС, основанная на данном принципе, включает шесть этапов: идентификация, концептуализация, формализация, реализация, отладка и тестирование, опытная эксплуатация и внедрение. Этот процесс полно описан в [4, 6, 8, 9, 17].

5.2. Выделяют четыре категории инструментальных средств,

применяемых при разработке ЭС (в соответствии с их назначением и функциональными возможностями [4, 6, 9, 15,17].

1. Оболочки экспертных систем (Expert system shells). Средства этого типа создаются, как правило, на основе какой-нибудь экспертной системы, достаточно хорошо зарекомендовавшей себя на практике. При создании оболочки из системы-прототипа удаляются компоненты, слишком специфичные для области ее непосредственного применения, и оставляются те, которые не имеют узкой специализации. Примером может служить система EMYCIN, созданная на основе прошедшей длительную "обкатку" системы MYCIN [6].

2. Языки программирования высокого уровня. Их применение избавляет разработчика от необходимости углубляться в детали реализации системы - способы эффективного распределения памяти, низкоуровневые процедуры доступа и манипулирования данными. Исторически первыми языками, предназначенными для программирования задач ИИ и используемыми в дальнейшем для разработки ЭС, были LISP (начало 60-х гг.) и PROLOG (начало 70-х гг.). Первый основывался на едином списковом представлении программ и данных и методах работы со списками, второй - на идеях логического программирования. В настоящее время наряду с этими двумя языками достаточно широко применяются разработанные позже языки, составляющие три следующие группы: языки описания порождающих правил (наиболее известный - OPS5), объектно-ориентированные языки, языки логического программирования (типа PROLOG) [4, 6].

3. Многофункциональные программные среды (Multiple-paradigm programming - environment) - среды программирования, поддерживающие несколько парадигм. Они включают несколько программных модулей, что позволяет пользователю комбинировать в процессе разработки ЭС разные стили программирования. Одна из первых сред такого рода - LOOP, которая в рамках единой архитектуры обмена сообщениями объединила четыре парадигмы программирования: процедурно-ориентированное программирование (на основе языка LISP), программирование, ориентированное на правила, объектно-ориентированное программирование, программирование, ориентированное на данные [6]. На основе этой архитектуры во второй половине 1980х годов было разработано несколько коммерческих программных продуктов (наиболее известны KEE, KnowledgeCraft и ART), которые использовались для последующих разработок, таких как КАРРА и CLIPS. Многофункциональная среда CLIPS и ее более поздние версии широко применя.тся в настоящее время.

4. Дополнительные автономные программные модули - это некоторые полезные программы, которые можно выполнять вместе с приложением. Они предназначены для выполнения специфических задач в рамках выбранной архитектуры ЭС. Примеры: модуль работы с семантической сетью, использованный в системе VT[6], программный пакет Simkit из комплекта среды KEE, позволяющий использовать в ЭС методы моделирования.

В дальнейшем были разработаны мощные инструментальные комплексы для создания ЭС, представляющие собой интегрированные среды поддержки разработки ЭС. Характерными примерами являются комплекс G-2 (фирма Gensum, США) для создания ЭС реального времени и комплекс ЭКО для создания статических ЭС (Россия) [8]. Другие известные комплексы: ART, KEE, Knowledge Craft [4].