Лекции.ИНФО


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



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

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

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

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

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

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

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

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

 
 

 


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

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

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

 

 

 
 

 


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

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

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

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

 
 

 


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

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

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

 

 
 

 


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

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

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

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

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

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

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

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

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

2.5.8. Технология поддержки разработок продукцион­ных систем

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

В случае, когда разработчиков прикладной системы устраивают про­ектные решения, принятые в оболочке, то ее использование являет­ся одним из самых быстрых способов реализации будущей проблемно-ориентированной системы. Однако на практике введенные в оболочках ограничения часто оказываются слишком жесткими. Поэтому в настоя­щее время широкое распространение получила идея создания специаль­ного программного окружения разработки систем продукций (а в общем случае экспертных систем). Такие системы называют инстру­ментальными, или технологическими, пакетами (knowledge engineering environment, knowledge engineering tool kits). К числу таких систем от­носят EXPERT, AGE, OPS и другие [95].

В настоящее время завоевали популярность системы поддержки ин­женерии знаний второго поколения. К ним относят KEE, ART и другие [49]. Эти системы используют богатый спектр возможностей для пред­ставления знаний и ориентированы на мощные персональные компьюте­ры с организацией "дружелюбного" интерфейса на основе многооконной графики. Кроме этого происходит выработка новой парадигмы при разработке средств представления знаний, когда модель определяет средства специ­фикации, а ЭВМ проектируется под класс моделей.

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

В заключение данного раздела приведем основные работы, которые посвящены выработке метамодели ПСМ, вопросам технологии, описа­нию оригинальных алгоритмов отдельных компонентов ПСМ. Большое влияние на развитие технологии конструирования ПСМ оказали рабо­ты [23,83]. В монографии [50] содержится богатый перечень компонен­тов ПСМ различной архитектуры. Подробное описание RETE алгоритма можно найти в [94]. Технологии виртуальных машин посвящены статьи [38,40]. Развитие архитектуры ПСМ в сторону параллельных и иерархи­ческих предлагается в трудах IJCAI'79 [110,126]. Труды IJCAI'81 — 95 содержат описание огромного количества экспертных систем, большая часть которых основана на представлении баз знаний в виде систем про­дукций. В монографиях [49,53,61] содержится обширный перечень оболо­чек и инструментальных систем. Подробное изучение метамодели систем продукций позволило перейти к построению формальных моделей и ис­следовать свойства этого средства представления знаний.









Читайте также:

Последнее изменение этой страницы: 2016-03-17; Просмотров: 81;


lektsia.info 2017 год. Все права принадлежат их авторам! Главная