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

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

Основные постулаты этой парадигмы заимствованы из ООП и расширены.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

по уровням — от уровня проблемы до уровня подзадачи (горизонтальный анализ). Или наоборот — сначала по уровням, а потом по стратам.

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

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

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

где шип— целые положительные числа. Е G Mmn (К), и ее можно представить в виде:

где Едѵ G Мтц (К), ц *= ѵ =

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

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

Алгоритм ОСА

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

•    А_1_4. Повторить шаг А_1_3 для і+1 для всех выбранных страт до і <= 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).

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

Технологии инженерии знаний

□    Классификация методов практического извлечения знаний

□    Коммуникативные методы

□    Текстологические методы

□    Простейшие методы структурирования

□    Состояние и перспективы автоматизированного приобретения знаний

□    Примеры методов и систем приобретения знаний

4.1. Классификация методов практического извлечения знаний

Подробно рассмотрев в главе 3 теоретические аспекты инженерии знаний, мы, однако, в явном виде не определили, каким практическим методом эти знания будут получены. В неявном виде предполагалось, что это некоторое взаимодействие инженера по знаниям и эксперта в форме непосредственного живого общения. Однако это не единственная форма извлечения знаний, хотя и довольно распространенная. В работах [Волков, Ломнев, 1989; Осипов, 1998; Boose, 1989; Cullen, Bryman, 1988; Gammack, Young, 1985; Hart 1986] упоминается около 15 ручных (неавтоматизированных) методов извлечения и более 20 автоматизированных методов приобретения и формирования знаний.

Рисунок 4.1 иллюстрирует предлагаемую классификацию методов извлечения знаний, в которой используются наиболее употребительные термины, что позволит инженерам по знаниям в зависимости от конкретной задачи и ситуации выбрать подходящий метод.

Из предложенной схемы классификации видно, что основной принцип деления связан с источником знаний.

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