logo
Базы знаний интелл

3.4.4. Объектно-структурный подход (осп)

Можно предложить в качестве базисной парадигмы методологии структурного анализа знаний и формирования поля знаний РZ обобщенный объектно-структурный подход (ОСП), последовательно разработанный от математического обоснования до технологии и программной реализации [Гаврилова, 1995]. Основные постулаты этой парадигмы заимствованы из ООП и расширены.

1. Системность (взаимосвязь между понятиями).

2. Абстрагирование (выявление существенных характеристик понятия, которые отличают его от других).

3. Иерархия (ранжирование на упорядоченные системы абстракций).

4. Типизация (выделение классов понятий с частичным наследованием свойств в подклассах).

5. Модульность (разбиение задачи на подзадачи или «возможные миры»).

6. Наглядность и простота нотации.

Использование пятого постулата ОСП в инженерии знаний позволяет строить глобальные БЗ с возможностью выделить локальные задачи с помощью горизонтальных и вертикальных сечений на отдельные модули пространства-описания предметной области.

Шестой постулат внесен в список последним, но не по значимости. В инженерии знаний формирование Р7 традиционно является критической точкой [Гаврилова, Червинская, Яшин, 1988; Гаврилова, Червинская, 1992], так как создаваемая неформальная модель предметной области должна быть предельно ясной и лаконичной. Традиционно языком инженерии знаний были диаграммы, таблицы и другие графические элементы, способствующие наглядности представлений. Именно поэтому предлагаемый в данной работе подход к языку связан с возможной визуализацией процесса проектирования.

ОСП позволяет наглядно и компактно отобразить объекты и отношения предметной области на основе использования шести постулатов.

Объектно-структурный подход подразумевает интегрированное использование сформулированных выше постулатов от первой до последней стадий разработки БЗ интеллектуальных и обучающих систем. На основе ОСП предлагается алгоритм объектно-структурного анализа (ОСА) предметной области, позволяющего оптимизировать и упорядочить достаточно размытые процедуры структурирования знаний.

Стратификация знаний

Основы ОСА были предложены автором еще в работах [Гаврилова, 1989; Гаврилова, Красовская, 1990] и успешно применялись при разработке ЭС МИКРОЛЮШЕР [Гаврилова, Тишкин, Золотарев, 1989] и АВЭКС [Гаврилова, Минко-ва, Карапетян,1992].

ОСА подразумевает дезагрегацию ПО, как правило, на восемь страт или слоев (табл. 3.1 и 3.2).

Таблица 3.1.

Стратификация знаний предметной области

s_1

ЗАЧЕМ-знания

Стратегический анализ: назначение и функции системы

s_2

КТО-знания

Организационный анализ: коллектив разработчиков системы

s_3

НТО-знания

Концептуальный анализ: основные концепты, понятийная

структура

s_4

КАК-знания

Функциональный анализ: гипотезы и модели принятия решения

s_5

ГДЕ-знания

Пространственный анализ: окружение, оборудование,

коммуникации

s_6

КОГДА-знания

Временной анализ: временные параметры и ограничения

s_7

ПОЧЕМУ-знания

Каузальный или причинно-следственный анализ: формирование подсистемы объяснений

s_8

СКОЛЬКО-знания

Экономический анализ: ресурсы, затраты, прибыль, окупаемость

Объектно-структурный анализ подразумевает разработку и использование матрицы ОСА (см. табл. 3.2), которая позволяет всю собранную информацию дезагрегировать последовательно по слоям-стратам (вертикальный анализ), а затем по уровням — от уровня проблемы до уровня подзадачи (горизонтальный анализ). Или наоборот — сначала по уровням, а потом по стратам.

Таблица 3.2.

Матрица объектно-структурного анализа

Уровни Страты

Уровень области u1

Уровень проблемы u2

Уровень задачи uэ

Уровень подзадачи u4

un

Стратегический анализ s1

Е11

Е12

Е13

Е14

Е1n

Организационный анализ s2

Е21

Концептуальный анализ s3

E31

Функциональный анализ s4

E41

Пространственный анализ s5

Е51

Временной анализ ss

Е61

Каузальный анализ s7

Е71

Экономический анализ s8

Е81

….

Еij

sm

Em1

Emn

При необходимости число страт может быть увеличено. В свою очередь знания каждой страты подвергаются дальнейшему ОСА и декомпозируются на составляющие

|| emn || ,

где m — номер уровня,

n — номер страты,

етп принадлежит множеству К всех концептов (понятий) предметной области.

(1)

Матрица (1) является матрицей над К. Пусть М(К) — совокупность всех mn матриц над К. Тогда можно определить клеточную матрицу Е, в которой

m = ml + ... + mk,

n = nl + ... + nl,

где m и n— целые положительные числа. Е Î Mm,n (К), и ее можно представить в виде:

(2)

где Ev Î Мm (К), n = l,...,k; v = 1,...,l.

Матрица Е является несимметричной, так как часть клеточных элементов Emv могут подвергаться декомпозиции, а часть представляет некоторые базисные атомарные концепты из К, не подлежащие детализации.

Предлагаемый подход предполагает реализацию концепции последовательного генезиса ОСП через ОСА к объектно-структурной разработке (ОСР).

Алгоритм ОСА

Алгоритм ОСА (объектно-структурного анализа) предназначен для детального практического структурирования знаний ПО. В основе ОСА заложен алгоритм заполнения ОСА-матрицы Еmn. Алгоритм содержит последовательность аналитических процедур, позволяющих упростить и оптимизировать процесс структурирования. Алгоритм разделяется на две составляющие:

• А_I. Глобальный (вертикальный) анализ, включающий разбиение ПО на методологические страты (чтио-знания, кяк-знания и т. д.) на уровне всей ПО. В результате заполняется первый столбец матрицы (2).

• А_II. Анализ страт (горизонтальный), включающий построение многоуровневых структур по отдельным стратам. Число уровней п определяется особенностями стратифицированных знаний ПО и может существенно отличаться для разных страт. С точки зрения методологии n < 3 свидетельствует о слабой проработке ПО.

Первый уровень соответствует уровню всей ПО (уровень области). Второй — уровню проблемы, выделенной для решения. Третий — уровню конкретной решаемой задачи. Дальнейшие уровни соответствуют подзадачам, если имеет смысл их выделять.

При этом возможно как последовательное применение восходящей (bottom-up) и нисходящей концепций (top-down),.так и их одновременное применение.

Глобальный анализ

Технология глобального анализа сводится к разбиению пространства основной задачи структурирования ПО на подзадачи, соответствующие особенностям ПО. Для разработки интеллектуальных систем существует минимальный набор s-страт, обеспечивающий формирование БЗ. Минимальный набор включает три страты:

• s3 — формирование концептуальной структуры Sk;

• s4 — формирование функциональной структуры Sf;

• s7 — формирование подсистемы объяснений So.

Формирование остальных страт позволяет существенно оптимизировать процесс разработки и избежать многих традиционных ошибок проектирования. Страты s4 и s5 являются дополнительными и формируются в случаях, когда знания предметной области существенно зависят от временных и пространственных параметров (системы реального времени, планирование действий роботов и т. п.).

Алгоритм А_1 глобального анализа может быть кратко сформулирован следующим образом:

• А_1_1. Собрать все материалы по идентификации задачи и по результатам извлечения знаний.

• А_1_2. Выбрать набор страт N, подлежащих формированию (Nmin = 3).

• А_1_3. Отобрать всю информацию по первой выбранной страте (i- 1, где i — номер из выбранного набора страт N).

• А_1_4. Повторить шаг А_1_3 для i+1 для всех выбранных страт до i  N.

• А_1_5. Если часть информации останется неиспользованной, увеличить число страт и повторить для новых страт шаг А_1_3; иначе перейти к последовательной реализации алгоритмов горизонтального анализа страт А_2.

Анализ страт

Последовательность шагов горизонтального анализа зависит от номера страты, но фактически сводится к реализации дуальной концепции структурирования для решения конкретной подзадачи.

Ниже предлагается алгоритм ОСА для одной из обязательных страт s3 (ЧТО-анализ), результатом которого является формирование концептуальной структуры предметной области Sk.

• А_2_3_1. Из группы информации, соответствующей ЧТО-страте, выбрать все значимые понятия и сформулировать соответствующие концепты.

• А_2_3_2. Выявить имеющиеся иерархии и зафиксировать их графически в виде структуры.

• А_2_3_3. Детализировать концепты, пользуясь нисходящей концепцией (top-down).

• А_2_3_4. Образовать метапонятия по концепции (bottom-up).

• А_2_3_5. Исключить повторы, избыточность и синонимию.

• А_2_3_6. Обсудить понятия, не вошедшие в структуру Sf, с экспертом и перенести их в другие страты или исключить.

• А_2_3_7. Полученный граф или набор графов разделить на уровни и обозначить — согласно матрице ОСА (1).

Аналогичные алгоритмы разработаны для всех страт и апробированы при разработке экспертных систем ПРОГОР и АВЭКС.