Научная статья на тему 'К проблеме обработки знаний, представленных в виде сети фреймов, в гиперкубовой многопроцессорной системе'

К проблеме обработки знаний, представленных в виде сети фреймов, в гиперкубовой многопроцессорной системе Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
144
44
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «К проблеме обработки знаний, представленных в виде сети фреймов, в гиперкубовой многопроцессорной системе»

УДК 658.512

М.В. Жуковская

К проблеме обработки знаний, представленных в виде сети фреймов, в гиперкубовой многопроцессорной системе.

1. Размещение сети фреймов в многопроцессорной системе

При работе со знаниями, представленными любым из известных способов, имеются некоторые операции, существенного повышения эффективности исполнения которых можно добиться только используя параллельную обработку знаний. В основном это операции, связанные с поиском, возникающие на этапах выбора знаний по запросам пользователя, логического вывода, корректировки системы знаний при изменении отдельных ее частей. Существуют разработки по созданию параллельных машин обработки знаний. Как правило, в них используется представление знаний в виде семантических сетей и продукционных систем. Вести распределенную обработку знаний можно и в сетях фреймов. По определению, данному М. Минским в [1], фрейм это иерархическая сеть, состоящая из верхнего уровня (понятий, всегда справедливых для данной ситуации) и нижнего уровня (терминалов). Сеть фреймов (СФ) подразумевает принадлежность одних и тех же терминалов многим фреймам, кроме этого, верхние уровни одних фреймов могут образовывать нижние уровни других. Рассмотрим различные способы размещения информации о СФ в многопроцессорной системе (МПС). Пусть МПС состоит из однотипных процессорных элементов (ПЭ), предназначенных для хранения и обработки одного фрагмента СФ, причем фрагментом может быть:

дуга СФ(1);

узел СФ (2);

фрейм (3).

Сравним (2) и (3) варианты. Достоинство (1) - нет дублирования узлов СФ. Структура информации, обрабатываемой в ПЭ, более простая, чем в случае (3), но связи между ПЭ будут использоваться для восстановления структуры фреймов. При обработке в ПЭ всего фрейма связи между ПЭ будут освобождены для взаимодействия между фреймами на уровне структурных единиц; но из-за того, что этот вид связей не является основным для СФ, эффективность от распараллеливания процедуры обработки знаний сильно падает и затрудняются ассоциативные операции над СФ.

Рассмотрим (1) и (2). В [2] отмечено, что сеть можно разместить в однородной МПС, используя следующие способы:

1) поместить в ПЭ дугу (для бинарных отношений); при этом требуются ПЭ с ограниченной памятью и простыми процедурами обработки информации;

2) поместить в ПЭ фрагмент сети, состоящий из вершины и входящих в нее дуг; предполагается существование неограниченной памяти и сложных процедур обработки.

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

Известия ТРТУ

Тематический выпуск

сравнению с (1), но уменьшается минимальное количество ПЭ, которое равно числу узлов, а не дуг СФ.

Организация обмена сообщениями между ПЭ

Для обеспечения эффективной обработки СФ в МПС необходимо объединение ПЭ в такую структуру, которая обеспечивает возможность коммутации любых Двух ПЭ и обладает процедурой маршрутизации, свободной от блокировок. Для этой цели подходят структуры типа “гиперкуб” (ГК), и в особенности такая его модификация, как “обобщенный гиперкуб” Обобщенный ГК 4x4 изображен на рис.1 и представляет собой граф, объединяющий определенным образом полные подграфы.

Обобщенный ГК 4:4.

Первый такт полного обмена

/ 1 4

\ \

'п \ \

\ \

Рис. 1.

Основным способом обмена данными при обработке СФ в МПС является передача сообщения, несущего информацию от ПЭ - источника ко всем остальным ПЭ. В [3] предлагается использовать процедуру обмена сообщениями, которая обеспечивает полный обмен между всеми ПЭ за т тактов. В первом такте происходит передача сообщений по вертикальным связям (рис.2), затем Циклический обмен по горизонтальным связям за т-1 тактов (рис. 3). Во время первого такта каждый ПЭ передает только свое сообщение, а принимает п-1 сообщений от ближайших соседей по вертикали. Во время следующих тактов каждая вершина передает и принимает пакет сообщений, полученных вершинами в 1'М такте. Таким образом, при данной процедуре обмена наблюдается Многократное дублирование сообщений, но благодаря этому обеспечивается вЬ1сокая устойчивость к отказам.

^ЯаТджааы ргеррссйЖтокта)шуер1нцтГи,шГтеллектуальныТ1^П7^Г 2,3,4 такты полного обмена 1,2 такты пересылки

Рис.З.

Рис.4.

При асинхронной организации работы МПС, организованной по типу “обобщенный ГК”, можно использовать следующую процедуру установления путей передачи сообщений между ПЭ. Представим ГК в как совокупность вершин { 9 11}, где I - номер строки, \ = 1..п, ] - номер столбца,} = 1..т. После того, как

вершина да^ сформировала свое сообщение, она посылает его всем соседним ПЭ,

снабдив своим адресом М(а,Ь). Кроме адреса и информационного поля, сообщение имеет специальный счетчик 1, который увеличивается при каждой пересылке. После получения вершиной д ^ сообщения с адресом (а,Ь), выбор вершин для передачи

сообщения происходит по следующему правилу :

если 1<>а, то дальнейшая пересылка не производится; иначе

если f = т сИу 2 , то д д | передает М(а,Ь) всем д^ у где к = 1 ..п, к<>1 (соседям по вертикали);

иначе д , j передает М(а,в) всем д^ где к = 1..П, к<>1, и, кроме этого, в вершину

с координатами (I, тах (| Ь-]-1 |, | Ь-|+1 |)).

На рис.4 показаны первые такты передачи сообщения вершины д^з

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

3. Реализация загрузки фреймов в МПС.

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

фС1 = (П/п)*(^/м )>

Ч 8

где п • общее число обращений к СФ, П| • число обращений к \ - му фрейму, N1^ -число дуг во фрейме, Ы8 - число дуг в ГК, покрывающее данный фрейм. Для СФ ФСС вычисляется как сумма ФС|: ФСС = £ ФС|

Таким образом, при оптимальном размещении СФ в ГК ( ^ = М8 для всех Фреймов), ФСС= 1.

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

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

Сама процедура загрузки СФ трудно поддается распараллеливанию. Рассмотрим ее последовательную схему.

Размещение узла фрейма предполагает выбор ПЭ с учетом требования минимизации числа ребер ГК, покрывающих фрейм, и запись информации об узле в выбранный ПЭ; либо добавление информации о новом фрейме, если в МПС уже есть ПЭ, содержащий данный узел СФ. Так как фрейм фактически представляет собой древовидную структуру, поиск вершины в ГК для размещения узла фрейма осуществляется следующим образом:

• если у узла нет сыновей или его сыновья еще не размещены, то его надо разместить поближе к отцу;

• если у узла нет сыновей и отца, то его можно поместить в любой свободный ПЭ;

• иначе необходимо разместить узел как можно ближе к отцу и уже размещенным сыновьям.

Выбор узлов при размещении фрейма можно производить двумя способами в зависимости от используемой схемы загрузки:

• загрузка “в глубину” используется рекурсивное определение фрейм размещен, если размещен его верхний уровень и остальная часть.

• загрузка “в ширину” - нижний уровень размещается только после того, как размещены все узлы верхнего уровня.

При моделировании описанной процедуры были получены следующие Результаты:

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

2. Величина перекрытия узлов сети фреймами не влияет на ФСС.

3. Увеличение размерности ГК свыше минимально необходимой (по числу узлов СФ) и переразмещение данной СФ в новой структуре незначительно увеличивает величину ФСС.

4. При увеличении п по сравнению с т, ФСС возрастает.

5. Эффективность последовательной загрузки “в глубину” и “в ширину” практически одинакова.

6. В структурах с небольшим значением п по сравнению с т загрузка “в глубину” эффективнее чем “в ширину”

7. Величина ФСС для п.2-5 находится в диапазоне 0.4 .. 0.7.

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

ЛИТЕРАТУРА.

1. Минский М. Фреймы для представления знаний. М.:Энергия ,1979.

2. Гордиенко Е., Захаров В., Миронов А.. Реализация параллельных алгоритмов логического вывода в матричной однородной среде. II Техническая кибернетика, №5 1985.

3. Кодачигов В. Электронная коммутация информационных каналов. / Ростов: РГУ.1983.

i Надоели баннеры? Вы всегда можете отключить рекламу.