Научная статья на тему 'ИССЛЕДОВАНИЕ ПРИМЕНИМОСТИ НЕЙРОННЫХ СЕТЕЙ ПРЯМОГО РАСПРОСТРАНЕНИЯ В ЗАДАЧАХ САМОДИАГНОСТИКИ РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ'

ИССЛЕДОВАНИЕ ПРИМЕНИМОСТИ НЕЙРОННЫХ СЕТЕЙ ПРЯМОГО РАСПРОСТРАНЕНИЯ В ЗАДАЧАХ САМОДИАГНОСТИКИ РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
25
6
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
САМОДИАГНОСТИКА / РАСПРЕДЕЛЁННЫЕ ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ / ИСКУССТВЕННЫЕ НЕЙРОННЫЕ СЕТИ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Крамаренко Константин Евгеньевич, Молдованова Ольга Владимировна

В статье приведены результаты применения нейронных сетей прямого распространения к решению задачи самодиагностики распределённых вычислительных систем с использованием диагностической модели сравнения без применения дополнительных эвристик.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Крамаренко Константин Евгеньевич, Молдованова Ольга Владимировна

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

RESEARCH OF ARTIFICIAL NEURAL NETWORKS APPLICABILITY IN SELF-DIAGNOSIS PROBLEMS FOR DISTRIBUTED COMPUTER SYSTEMS

The article contains the results of artificial neural networks applicability for solving the problem of distributed computer systems self-diagnosis with comparison diagnosis model without additional heuristics.

Текст научной работы на тему «ИССЛЕДОВАНИЕ ПРИМЕНИМОСТИ НЕЙРОННЫХ СЕТЕЙ ПРЯМОГО РАСПРОСТРАНЕНИЯ В ЗАДАЧАХ САМОДИАГНОСТИКИ РАСПРЕДЕЛЁННЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ»

УДК 004.052.32

Исследование применимости нейронных сетей прямого распространения в задачах самодиагностики

1

распределенных вычислительных систем

К. Е. Крамаренко, О. В. Молдованова

В статье приведены результаты применения нейронных сетей прямого распространения к решению задачи самодиагностики распределённых вычислительных систем с использованием диагностической модели сравнения без применения дополнительных эвристик.

Ключевые слова: самодиагностика, распределённые вычислительные системы, искусственные нейронные сети.

1. Введение

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

Отказом называется событие, при котором ЭМ теряет способность выполнять заданные функции по переработке информации [1]. Отказ одной элементарной машины, участвующей в вычислительном процессе, может привести к некорректному результату вычислений и иметь разрушительные последствия в дальнейшем. Следовательно, организация отказоустойчивого функционирования распределённых ВС требует создания программных средств, обеспечивающих контроль и диагностику их функционирования. В вычислительной системе как совокупности из N элементарных машин, взаимодействующих между собой через сеть связи, может быть применён нетрадиционный подход к контролю и диагностике. Учитывая встроенный параллелизм и программируемость структуры, в пределах ВС можно организовывать топологически различные схемы из ЭМ, которые обеспечат полноту контроля работоспособности всей системы и диагностики неисправностей. Поэтому по отношению к таким ВС допустимо применение терминов «самоконтроль» и «самодиагностика» [1].

При этом система рассматривается как граф, вершинам которого соответствуют ЭМ системы. Каждый тест формирует дугу графа, направленную от тестирующего к тестируемому. Результату теста соответствует 0 (1), если тестируемая элементарная машина определена как исправная (неисправная). Это значение используется как вес соответствующей дуги в диагностическом графе. Предполагается, что либо одна из ЭМ, либо обе могут быть неисправными. Неисправная тестирующая элементарная машина может сгенерировать любой тесто-

1 Работа выполнена при поддержке Совета по грантам Президента РФ (грант МД-2620.2014.9), Российского фонда фундаментальных исследований (гранты 15-07-00048-а, 15-07-00653-а, 15-37-20113-мол_а_вед).

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

Для интерпретации результатов тестирования были предложены различные диагностические модели [2-6], позволяющие идентифицировать исправные и неисправные элементарные машины. К ним относятся модели, основанные на тестировании ЭМ друг друга, такие как: модель Препараты-Метца-Чиена [2] (Ргерага1а-Ме12е-СЫеп) и модель Барси-Грандони-Маестрини [3] (ВагеьОгапёош-МаеБШш). Диагностическая модель, описанная в [4-6], называется моделью сравнения и предполагает, что парам ЭМ назначаются некоторые тесты, результаты выполнения которых затем сравниваются.

Определение полного и корректного подмножества неисправных элементарных машин (образа неисправности) в системе является #Р-трудной задачей [7]. Но эта задача может быть решена за полиномиальное время при введении ограничения количества неисправных ЭМ в системе. Такие системы получили название ¿-диагностируемых [2], где I - максимальное количество неисправных элементарных машин, при котором возможно определение образа неисправности.

В настоящее время при решении задачи самодиагностики распределённых вычислительных систем широко используются генетические алгоритмы [8, 9], искусственные нейронные сети [10-12] и даже алгоритмы, в основе которых лежит функционирование искусственной иммунной системы [13]. Главным недостатком существующих решений для нейронных сетей является использование в дополнение к основным алгоритмам эвристик, позволяющих улучшить результат самодиагностики.

В статье приведены результаты применения нейронных сетей прямого распространения к решению задачи самодиагностики распределённых вычислительных систем с использованием диагностической модели сравнения без применения дополнительных эвристик.

2. Диагностическая модель сравнения

Рассматривается распределённая вычислительная система, состоящая из N элементарных машин (в дальнейшем - узлов), соединённых каналами связи. Каждый узел может находиться в исправном или неисправном состоянии. Паре узлов назначается на выполнение задача. Сравнение полученных результатов её решения даёт информацию о состоянии узлов. Если результаты совпадают - оба узла исправны, иначе один или оба узла являются неисправными. Множество всех результатов сравнения называется синдромом [6].

Модель сравнения, предложенная в [4, 5], предполагает наличие центрального обозревателя (высоконадёжной ЭМ), который назначает задачи из множества Т = {Т1, Т2, ..., Тк, ..., Тм] парам узлов, затем собирает результаты выполнения этих задач и производит диагностику системы.

Диагностическая модель сравнения описывается двумя ненаправленными графами: графом связей и графом тестов, или сравнений [10]. Граф связей G1 = (V, Е) представляет топологию вычислительной системы, где V - множество узлов, \У\ = N Е - множество рёбер. Каждое ребро в, = у у) представляет собой канал связи между парой у у) узлов ВС. Граф сравнений G2 = (V, С) показывает, какие пары узлов тестировались. Как и в случае с графом связей, V- множество узлов, \ V = N а С = {с,} - множество рёбер, соединяющих пары узлов (у,, у), выполняющих одну и ту же задачу Тк е Т. Обозначим множество узлов, с которым сравнивается узел как Г = {у : с, е С]. Сравнение узлов и V, даёт 0, если их результаты выполнения задачи Тк совпали; и 1 - в противном случае. Для двух исправных узлов результат сравнения всегда равен 0. Если только один из узлов является неисправным, результат сравнения всегда равен 1. А для двух неисправных узлов этот результат может принимать

значение как 0, так и 1. Синдром для диагностической модели сравнения представляет собой квадратную симметричную матрицу размером N х N.

Для проведения корректной самодиагностики распределённой ВС введено ограничение на максимальное количество г неисправных узлов, называемое степенью диагностируемости системы [2]. В [6] было показано, что для системы с N узлами, сравниваемыми попарно, г = N - 2.

3. Нейронные сети

Основной причиной выбора нейронных сетей для решения задачи самодиагностики является их интенсивное изучение в настоящее время как механизмов классификации и распознавания. Задачу самодиагностики с использованием диагностической модели сравнения можно рассматривать как задачу классификации, которая направлена на разделение узлов системы на исправные и неисправные. В данной работе мы сфокусируемся на нейронной сети прямого распространения (многослойный персептрон), потому что этот класс сетей является одним из самых изученных и существует множество реальных реализаций, основанных на нём [14]. Пример структуры сети приведён на рисунке ниже. Сигналы в такой сети распространяются от нейронов входного слоя к нейронам выходного.

Рис. 1. Пример структуры нейронной сети прямого распространения Выходной сигнал нейрона рассчитывается по следующей формуле:

Уг = /

л хл

Ш .

где уг - выходной сигнал, /- функция активации, х) -]-й входной сигнал, Шу - вес связи между г-м иу-м нейронами.

Обучение сети производится алгоритмом обратного распространения ошибки, который предполагает два прохода по всем слоям сети: прямой и обратный. Во время прямого прохода входной вектор подаётся на входной слой нейронной сети, после чего распространяется по сети до выходного слоя. В результате получаем набор выходных сигналов, который и является фактической реакцией сети на данный входной образ. Во время прямого прохода все синаптические веса сети остаются неизменными. Во время обратного прохода все синапти-

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

3.1 Нейросетевая интерпретация задачи

Структуру нейронной сети, решающую задачу диагностирования, представим следующим образом:

- количество входных нейронов соответствует размерности синдрома;

- количество выходных нейронов равно числу узлов системы;

- количество скрытых слоёв равно трём (вычислено опытным путём);

- количество нейронов в скрытых слоях вычисляется по следующей формуле:

f round(N + (logw(N/10 + N) ■ N)) , если mod(N, 10) = 0 f(x) = \ ,

{round(N + (logw(mod(N, 10)) ■ N)), если mod(N, 10) * 0

где N - количество узлов системы; round - округление до ближайшего целого; mod -остаток от деления.

4. Результаты

В данной работе было реализовано две версии диагностических алгоритмов. Первая (Алгоритм!) делит синдром на блоки длиной 8 и преобразует их в числа троичной системы исчисления и подаёт на вход полученную последовательность, а вторая версия (Алгоритм2) использует для входа сети нижний треугольник матрицы синдрома. При моделировании использовались случайно сгенерированные диагностические графы. И для каждого графа количество неисправных узлов составляло 10, 30, 50 и 70 процентов от общего количества узлов.

Алгоритмы самодиагностики распределённых вычислительных систем были реализованы и исследованы с помощью пакета Neural Network Toolbox™ интерактивной среды MATLAB (версия R2014b). Моделирование проводилось на следующих персональных компьютерах:

1) Intel Core i5, 3.20 GHz, RAM 8 GB DDR3;

2) Intel Core i7, 2.0 GHz, RAM 8 GB DDR3.

Эксперименты проводились с количеством узлов в системе 50, 100, 200 и выборками 100, 300 и 700 соответственно. Где 70% выборки составляла обучающая выборка, а 30% - тестовая выборка. Размеры выборок определены опытным путём. Для каждой размерности ВС генерировалось 5 различных диагностических графов. Результаты моделирования, приведённые на рис. 2-4, представляют собой средние значения.

Исходя из полученных результатов, можно сделать следующие выводы:

1) нейронные сети прямого распространения имеет смысл использовать для диагностиро-

вания вычислительных систем с процентом неисправных узлов не более 30;

2) несмотря на то, что Алгоритм1 и Алгоритм2 сокращают размер входных данных в 8 и

2 раза соответственно, сохраняется высокая обобщающая способность нейронной сети;

3) даже при небольшом размере обучающей выборки для каждой размерности вычисли-

тельной системы получается высокая точность диагностирования.

30 40 50

% неисправных узлов Рис. 2. Результаты диагностики ВС с 50 узлами 1 - Алгоритм!; 2 - Алгоритм2

10 20 30 40 50 60

% неисправных узлов Рис. 3. Результаты диагностики ВС со 100 узлами 1 - Алгоритм1; 2 - Алгоритм2

30 40 50

% неисправных узлов Рис. 4. Результаты диагностики ВС с 200 узлами 1 - Алгоритм!; 2 - Алгоритм2

5. Заключение

В статье приведены результаты применения нейронных сетей прямого распространения к решению задачи самодиагностики распределённых вычислительных систем с использованием диагностической модели сравнения без дополнительных эвристик. По полученным результатам даны рекомендации. В дальнейшем планируются эксперименты с большими размерностями вычислительных систем и другими классами искусственных нейронных сетей.

Литература

1. Хорошевский В.Г. Архитектура вычислительных систем: Учеб. пособие. - 2-е изд., пере-раб. и доп. - М.: Изд-во МГТУ им. Н.Э. Баумана, 2008. - 520 с.

2. Preparata F.P., Metze G., Chien R.T. On the Connection Assignment Problem of Diagnosable Systems. // IEEE Trans. Electron. Comput. 1967. V. EC-16. N 6. - pp. 848-854.

3. Barsi F., Grandoni F., Maestrini P. A Theory of Diagnosability of Digital Systems. // IEEE Trans. Comput. 1976. V. 25. N 6. - pp. 585-593.

4. Chwa K.Y., Hakimi S.L. Schemes for fault tolerant computing: a comparison of modularly redundant and t-diagnosable systems. // Information and Control 49, 1981. - pp. 212-238.

5. MalekM. A comparison connection assignment for diagnosis of multiprocessor systems // Proc. 7th International symposium on computer architecture, New York, 1980. - pp. 31-35.

6. Duarte Jr., E.P., Ziwich, R.P., Albini, L.C.P. A survey of comparison-based system-level diagnosis // ACM Comput. Surv. 43, 3, Article 22, 2011. - 56 p.

7. Blough D., Sullivan G., Masson G. Intermittent fault diagnosis in multiprocessor systems // IEEE Trans. on computers, 41, 1992. - pp. 1430-1441.

8. Elhadef M., Das Sh., Nayak A. A parallel genetic algorithm for identifying faults in large diagnosable systems. // The international journal of parallel, emergent and distributed systems, Vol. 20, No.2, June 2005. - pp. 113-125.

9. Elhadef M., Romdhane L.B., Ayeb B. Performance analysis of an evolutionary algorithm for fault detection in t-diagnosable multi-processor systems // International Journal of Parallel Emergent and Distributed Systems 10/2007. - 22 (5). - pp. 387-404.

10. Elhadef M. A modified Hopfield neural network for diagnosing comparison-based multiprocessor systems using partial syndromes // ICPADS, 2011, Parallel and Distributed Systems, International Conference on, Parallel and Distributed Systems, International Conference on 2011. -pp. 646-653.

11. Elhadef M., Nayak A. Comparison-Based System-Level Fault Diagnosis: A Neural Network Approach // IEEE Transactions on Parallel & Distributed Systems, 2012. - vol.23. - no. 6. - pp. 1047-1059.

12. Elhadef M., Romdhane L.B. Fault diagnosis using partial syndromes: a modified Hopfield neural network approach // International Journal of Parallel, Emergent and Distributed Systems, 2014. - Vol. 29. - No. 2. - pp. 119-146.

13. Elhadef M., Das Sh., Nayak A. System-Level Fault Diagnosis Using Comparison Models: An Artificial-Immune-Systems-Based Approach. // Journal of networks, Vol. 1, No. 5, September/October 2006. - pp. 43-53.

14. Осовский С. Нейронные сети для обработки информации / Пер. с польского И.Д. Рудин-ского. - М.: Финансы и статистика, 2004. - 344 с.

Статья поступила в редакцию 10.08.2015

Крамаренко Константин Евгеньевич

старший преподаватель Кафедры вычислительных систем СибГУТИ (630102, Новосибирск, ул. Кирова, 86) тел. (383) 269-82-86, e-mail: kostya.kram@gmail.com.

Молдованова Ольга Владимировна

к.т.н., доцент Кафедры вычислительных систем СибГУТИ (630102, Новосибирск, ул. Кирова, 86) тел. (383) 269-82-75, e-mail: ovm@csc.sibsutis.ru.

Research of artificial neural networks applicability in self-diagnosis problems for distributed computer systems

K. Kramarenko, O. Moldovanova

The article contains the results of artificial neural networks applicability for solving the problem of distributed computer systems self-diagnosis with comparison diagnosis model without additional heuristics.

Keywords: self-diagnosis, distributed computer systems, artificial neural networks.

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