Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по СИИ.doc
Скачиваний:
176
Добавлен:
02.05.2014
Размер:
3.54 Mб
Скачать

2.5.7. Метаструктура модуля управления

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

В общем виде к его функциям относятся следующие:

  • управление аппаратом активации;

  • управление ассоциативным выбором правил;

  • разрешение конфликта (выбор правила из конфликтного множе­ства);

  • редактирование базы данных.

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

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

Рис.1.2. Построение по данным типа "строка" древесной структуры

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

Таким образом, весь комплекс может строиться как параллельная асинхронная система (рис.1.3.).

Рис.1.3. Асинхронная структура ПСМ

Кроме этого разложение описания предметной области на уровни является одной из важнейших частей при построении эффективных мо­дулей ПСМ. При этом многоуровневое описание предметной области ка­жется и более естественным.

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

Вертикальное измерение этой схемы соответствует иерархии знаний (уровень абстракции), а горизонтальное — иерархии метапродукций. Иерархическая организация модуля ПСМ расширяет возможности си­стем продукций и имеет высокопараллельную структуру — свойство, вызывающее в настоящее время все больший интерес с точки зрения параллельных вычислений [109]. Понятие ПСМ может быть расширено до параллельно-последователь­ного модуля, общая схема которого изображена на рис. 1.5.

Рис. 1.4. Структура иерархической системы продукций

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

Общие продукции редактируют общую базу данных, информация из ко­торой становится доступной каждому локальному процессу. Таким обра­зом, каждый источник знаний на промежуточном шаге вычислений может использовать как последовательную, так и параллельную информацию. Общую базу данных называют также доской объявлений (black-board).

Рис. 1.5. Структура параллельно-последовательного ПСМ

Несмотря на то, что большинство современных ПСМ являются в на­стоящее время последовательными, будущие ПСМ станут параллельны­ми, успешно реализуемыми на многопроцессорных ЭВМ [109].

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

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

Эти знания условно можно разделить на три группы:

  1. представленные в базе (знания о задаче);

  2. заложенные в продукции (знания о предметной области);

  3. управляющие (знания о процессах, стратегиях и структурах, исполь­зуемых при решении задач).

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