Научная статья на тему 'Синтез диагностических моделей авиадвигателей на основе иерархических нейро-нечетких сетей'

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

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

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — С. А. Субботин

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

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

The actual problem of construction of diagnostic models of complex technical objects convenient for the analysis and use is solved. The method of synthesis of neuro-fuzzy diagnostic models for hierarchical decision making is offered. The software realizing an offered method and allowing to use it in practice is developed.

Текст научной работы на тему «Синтез диагностических моделей авиадвигателей на основе иерархических нейро-нечетких сетей»

УДК 621.39: 004.93

С. А. Субботин

СИНТЕЗ ДИАГНОСТИЧЕСКИХ МОДЕЛЕЙ АВИАДВИГАТЕЛЕЙ НА ОСНОВЕ ИЕРАРХИЧЕСКИХ НЕЙРО-НЕЧЕТКИХ СЕТЕЙ

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

Введение

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

Поэтому наиболее удобной формой представления диагностических моделей являются нейро-нечеткие сети, объединяющие в себе достоинства искусственных нейронных сетей и нечеткой логики [1-3].

В настоящее время известно достаточно много различных моделей и методов синтеза нейро-не-четких сетей, среди которых наиболее часто используют аппроксиматор Мамдани [1] и модель Такаги-Сугэно-Канга [2]. Общим недостатком известных моделей является то, что они не позволяют выделить иерархию принятия решений, а также обучаются в итеративном режиме, что усложняет их применение в диагностических системах.

Целью данной работы является создание метода для синтеза иерархических нейро-нечетких диагностических моделей.

Постановка задачи

Пусть мы имеем обучающую выборку <х, у>, х

= {х8}, х8 = {х8,}, у = {у8}, э = 1, 2,......, Б, ] = 1, 2, ...,

Ы, где N - количество признаков, Б - количество экземпляров обучающей выборки, х3 - значение ]-го признака э-го экземпляра, у8 - номер класса, сопоставленный э-му экземпляру обучающей выборки.

Задача построения диагностической модели на основе обучающей выборки <х, у> заключается в структурной и параметрической идентификации зависимости у = ^ш,х), где f - некоторая функция, структуру и управляемые параметры ш которой необходимо установить в процессе обучения (по-

строения модели).

В контексте синтеза нейро-нечеткой диагностической модели задача структурной идентификации состоит в выборе числа слоев, числа нейронов в слое, типов функций нейронов, принципа организации топологии сети, а также функций принадлежности к нечетким термам входного вектора значений признаков, описывающих состояние диагностируемого объекта. Задача параметрической идентификации нейро-нечеткой диагностической модели состоит в нахождении значений управляемых параметров модели: параметров функций принадлежности к нечетким термам, а также весовых коэффициентов нейронов сети.

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

Метод синтеза иерархических нейро-нечет-ких диагностических моделей

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

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

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

© С. А. Субботин, 2007

тивности признаков.

Метод синтеза иерархических нейро-нечетких сетей, реализующий данные соображения, заключается в выполнении такой последовательности шагов.

Шаг 1. Инициализация. Задать обучающую выборку <х, у>.

Шаг 2. Определить значения характеристик обучающей выборки и сформировать структуры данных.

Шаг 2.1 На основе обучающей выборки с помощью метода [4] найти {А(],к)}, {В(],к)}, {К(],к}}, {!]}, где к - номер интервала значений ]-го признака, к = 1, 2, ..., к]; к] - количество интервалов, на которые разбивается диапазон значений ]-го признака; А(], к), В(], к), К(], к) - соответственно, левая и правая границы, а также номер класса к-го интервала значений ]-го признака; !] - информативность ]-го признака.

Шаг 2.2 Определить общее количество интервалов для всех признаков обучающей выборки:

N

2 = 1 V j=l

Шаг 2.3 Сформировать массив узлов {и(р)}, р = 1, 2, ..., 2, которым последовательно сопоставить интервалы значений признаков в порядке увеличения номера признака и номера интервала значений признака. Добавить узел и(2+1) для объединения нечетких термов выходной переменной. Уста -новить общее количество узлов: т = 2+1.

Шаг 2.4 Сформировать матрицу связей между узлами М1, .])}, где v(i, ]) = 0, если связь между 1-ым и ]-ым узлами отсутствует, v(i, ] = 1, если имеется связь, направленная от ^го узла к ]-му узлу. Уста -новить: v(i, ] = 0, ^ ] =1, 2, ..., т.

Шаг 2.5 Сформировать массив типов узлов {]}, где ВД = 0, если ]-й узел имеет тип "И"; ВД = 1, если .]-й узел имеет тип "ИЛИ"; ВД = -1, если ]-й узел является входным нечетким термом или выходным узлом сети. Задать типы узлов: ОД = -1, ] = 1, 2, ..., т.

Шаг 2.6 Сформировать массив номеров уровней иерархии для узлов {И{]}}, где И(]) - номер уровня иерархии для ]-го узла. Задать уровни иерархии для узлов: И(])=1, ] = 1, 2, ..., т-1; И(т)= 0.

Шаг 2.7 Сформировать нечеткие термы - задать функции принадлежности для интервалов значений

признаков ц¡,к(х0 , где i - номер признака, к - номер интервала значений ^го признака. В качестве функций принадлежности предлагается использовать трапециевидные функции

W,k(x¡) =

0, если x¡ < 0,5(A(i,k) + B(i,k -1)), x¡ - 0,5(A(i,k) + B(i,k -1))

0,5(A(i,k) - B(i,k -1))

если 0,5(A(i,k) + B(i,k -1)) < x¡ < A(i,k), 1, A(i,k) < x¡ < B(i,k), 0,5(A(i,k +1) + B(i,k)) - x¡

0,5(Л(1,к +1) - Б(1,к))

если Б(1,к) < х, < 0,5(Б(1,к) + Л(1,к +1)), 0, если 0,5(Б(1,к) + Л(1,к +1)) < х,,

либо П-образные функции: н-у^х,) = ц1,к3(х1)ц1,к2(х1),

где Ц1,к8(х1) - Б-образная функция, а Ц ,,к2 (х,) - 2-образная функция:

0,если x¡ < 0,5(A(i,k) + B(i,k-1)), 1 1 í x¡ - A(i,k) i

— +—cosí-1-^-П i,

^i,kS(x¡) = ■] 2 2 ^0,5(A(i,k) - B(i,k -1)) J

если 0,5(A(i,k) + B(i,k -1)) < x¡ < A(i,k),

1, если x¡ > A(i,k);

1, если x¡ < B(i,k),

1 1 í x¡ - B(i,k) i

— + — cosí-1-^-П i,

2 2 ^0,5(A(i,k +1) - B(i,k)) J

если B(i,k) < x¡ < 0,5(B(i,k) + A(i,k +1)), 0, если x¡ > 0,5(B(i,k) + A(i,k +1)).

^i,kZ(xi) =

Шаг 3. Установить текущий номер класса q = 1.

Шаг 4. Если q > К, где К - количество классов, на которые делятся экземпляры обучающей выборки, тогда перейти на шаг 16.

Шаг 5. На основе обучающей выборки и параметров, определенных с помощью метода [4], сформировать матрицу правил г. Установить номер текущего уровня иерархии: И = 2.

Шаг 5.1 Установить: э = 1, э( = 1.

Шаг 5.2 Если э > Б, тогда перейти на шаг 6.

Шаг 5.3 Если уэ = q, тогда для V] =1, 2, ...,Ы, записать в ячейку г(э(, ] номер интервала, в который попало значение ]-го признака э-го экземпляра выборки, установить: э( = э(+1. Номера интервалов значений признаков записываются в сплошной нумерации по всем признакам в порядке возрастания номера признака и номера интервала значений внутри признака.

Шаг 5.4. Установить: э = э + 1. Перейти на шаг 5.2.

Шаг 6. Для каждого столбца матрицы г найти п(]) - количество интервалов ]-го признака, принадлежащих к q-му классу, ] = 1, 2,......, N. Упорядочить

столбцы матрицы г в порядке возрастания п(]).

Шаг 7. Установить: ] = Ы, з( = з(-1.

Шаг 8. Если ] < 2, тогда перейти на шаг 12.

Шаг 9. Для ]-го признака найти в г и обобщить правила с одинаковыми частями левее ]-го столбца.

Шаг 9.1 Установить: з = 1.

Шаг 9.2 Если з > з(, тогда перейти на шаг 10.

Шаг 9.3 Для интервала г(з, ^ найти все интервалы того же ]-го признака, имеющие одинаковые с ним левые части правил - строк матрицы г. Занести номера узлов для этих интервалов в вектор

К = {К;}, где К; - 1-й элемент вектора к.

Шаг 9.4 Определить 1 - длину вектора к. Если 1 > 0, тогда: добавить новый узел и(т+1); принять: т = т + 1, И(т) = И +1; установить для узла т тип

"ИЛИ": 1(т) = 1; добавить связи: v( К; , т) = 1; для р

= 1, 2,......, з(: если г(р,]) е к , тогда установить: г(р,

]) = т.

Шаг 9.5 Оставить в матрице г из каждой группы одинаковых правил только одно правило. Скорректировать соответствующим образом з(.

Шаг 9.6 Установить: з = з + 1. Перейти на шаг 9.2.

Шаг 10. Для з = 1, 2,......, з(: добавить новый

узел и(т+1); принять: т = т+1, И(т) = И + 2; установить для узла т тип "И": 1(т) = 0; добавить связи: v(г(з, ]), т) = 1, v(г(з, ]-1), т) = 1; установить: г(з, ]-1) = т.

Шаг 11. Установить: И = И+2, ] = ]-1. Перейти на шаг 8.

Шаг 12. Оставить в матрице г из каждой группы одинаковых правил только одно правило. Скорректировать соответствующим образом з(.

Шаг 13. Если з( > 1, тогда: добавить новый узел и(т+1); принять: т = т+1, И(т) = И+1; установить для узла т тип "ИЛИ": 1(т) = 0; добавить связи: v(з, т) =

1; для з = 1, 2, ......, з(; установить: г(1, 1) = т;

удалить из г все правила, кроме первого.

Шаг 14. Установить связь: v(r(1, 1), Z+q) = 1.

Шаг 15. Установить: q = q + 1. Перейти на шаг 4.

Ь(1).

Шаг 16. Установить: h(Z +1) = 1 + max

i = 1,2,...,z

Для каждого уровня иерархии п = 1, 2,

И^+1), определить N п - количество узлов, находящихся на уровне иерархии п.

Шаг 17. Останов.

Обобщенная схема иерархической нейро-нечет-кой сети, синтезируемой на основе предложенного метода,представлена на рис. 1.

Рис.1. Схема иерархической нейро-нечеткой сети

На входы сети подаются четкие значения признаков распознаваемого экземпляра. Первый слой сети содержит узлы, определяющие принадлежности значений признаков к нечетким термам -интервалам значений признаков. Скрытые слои сети реализуют иерархический вывод решения о принадлежности к нечетким термам выходной переменной. Четные скрытые слои (на рис. обозначены окружностями) содержат нейроны типа " ИЛИ", нечетные скрытые слои (на рис. обозначены квадратами) содержат нейроны типа "И". Последний слой сети содержит один нейрон, выполняющий объединение нечетких значений принадлежностей распознаваемого экземпляра к классам и приведение результата к четкому значению.

Дискриминантные функции нейронов будут определяться следующим образом:

(wM XM) =

((i) x((0}

ф1 '^(wy1' xj^O = min (wV''4 xj1 '} ,

П = 2, 4,......, h(Z+1)-1 ;

Ф^(wj1'1),xj1'1) = max {w(>,x() , П = 3, 5,......, h(Z+1)-2;

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

Yw Mx M

J J

фМ^M,xH) = -, n = h(Z+1), i = 1.

J J K /

Y x M j=I

Функции активации нейронов сети будут опре-

деляться по формулам:

у ^ )(x) = max {9(n'i)(w M,x М)} j J J >

П = 2, 4,......, h(Z+1)-1;

у(n'i)(x) = min {9(n'i)(w(n'i),xM)} , J J J

П = 3, 5,......, h(Z+1)-2;

y(n,i)(x) = round(x), П = h(Z+1), i = 1.

Весовые коэффициенты нейронов w (n,i), где j -

номер входа, i - номер нейрона, n - номер слоя, будут определяться по формуле:

j n = h(Z + 1),i = 1,J = 1, 2, ..., K, w M = -!v(j,i), n = 2, 4, ..., h(Z + 1)-1,i = 1, 2, ...,N n, j = 1, 2, ...,N n-1,

[1- v(j,i), n = 3, 5, ..., h(Z + 1)-2,i = 1, 2, ..., Nn, j = 1, 2, ...,Nn-1.

Сеть, синтезированная на основе приведенных выше формул, будет реализовать вывод на основе иерархической max-min композиции.

Данную сеть можно также модифицировать для реализации вывода на основе иерархической maxmax композиции. Четные скрытые слои будут, как и в предыдущем случае, содержать нейроны типа "ИЛИ", а нечетные скрытые слои будут содержать также нейроны типа " ИЛИ".

Параметры нейронов первого и последнего слоев будут определяться также как и ранее. Для нейронов скрытых слоев дискриминантные функции будут определяться как:

9M(wM,xМ) = min {wM,xМ} ,

П = 2, 3,......, h(Z+1)-1,

а функции активации будут определяться по формулам: y(n,i)(x) = max {9(n'i)(w(n,i),x(n,i))} ,

П = 2, 3,

h(Z+1)-1.

Весовые коэффициенты нейронов скрытых слоев будут определяться по формуле:

wM= v(j,i),n = 2, 3, ..., h(Z + 1)-1,i =1, 2, ...,Nn ,j = 1, 2, ...,Nn-1.

С помощью предложенного метода также можно синтезировать сеть, реализующую вывод на основе иерархической max-prod композиции. Четные скрытые слои будут, как и в предыдущем случае, содержать нейроны типа " ИЛИ", а нечетные скрытые слои будут содержать нейроны типа "PROD".

Параметры нейронов первого и последнего слоев будут определяться так-же как и ранее. Для

нейронов скрытых слоев дискриминантные функции будут определяться как:

ф(л.О(w(v),xМ) = min {wM,x, n = 2, 4,......, h(Z+1)-1;

Ф(пД)^H,x(пД)) = max {w(,x(} ,

n =3, 5,......, h(Z+1)-2;

а функции активации будут определяться как:

V(n,l)(x) = max {ф(п,1) (w H,x H)} j j j

n =2, 4,......, h(Z+1)-1;

v(n,i)(x) = Пф(п,1 W (n,i),x (n,i)) J

n = 3, 5,......, h(Z+1)-2.

Весовые коэффициенты нейронов скрытых слов будут определяться по формуле:

(I|i) = |v(j,i), n = 2, 4, ..., h(Z + 1)-1,i = 1, 2, ..., N n ,j = 1, 2, ...,N wj =[1- v(j,i), n = 3, 5, ..., h(Z +1)-2,i = 1, 2, ..., Nn,j = 1, 2, ...,Nn-1.

С помощью предложенного метода также можно синтезировать сеть, реализующую вывод на основе иерархической max-average композиции. Четные скрытые слои будут, как и в предыдущем случае, содержать нейроны типа "ИЛИ", а нечетные скрытые слои будут содержать нейроны типа "AVERAGE".

Параметры нейронов первого и последнего слоев будут определяться так-же как и ранее. Для нейронов скрытых слоев дискриминантные функции будут определяться как:

Ф(п,1 )(wM,xМ) = min {w(),x() ,

n = 2, 3,......, h(Z+1)-1,

а функции активации будут определяться как:

у (n,i)(x) = max {Ф(п^ (n,i),x (n,i))}

J 11, n = 2, 4,......, h(Z+1)-1;

, N n1

V(n,i)(x) = S Ф(лд)^ (n,i),x(n,i)) ,

N n-1 J=1

n = 3, 5,......, h(Z+1)-2.

Весовые коэффициенты нейронов скрытых слоев будут определяться по формуле:

wM= v(j,i),n = 2, 3, ..., h(Z+ 1)-1,i = 1, 2, ...,Nn,j = 1, 2, ...,Nn-1.

Эксперименты и результаты

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

Предложенный в данной работе метод синтеза иерархических нейро-нечетких моделей был программно реализован на языке пакета МА^АВ и использовался для проведения вычислительных экспериментов.

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

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

Результаты проведенных экспериментов позволяют рекомендовать разработанный метод и его программную реализацию для широкого внедре-

ния на производстве и в процессе эксплуатации

для диагностики сложных технических объектов и

систем.

Перечень ссылок

1. Круглов В.В., Борисов В.В. Искусственные нейронные сети: теория и практика. - М.: Горя -чая линия - Телеком, 2001. - 382 с.

2. Осовский С. Нейронные сети для обработки информации. - М.: Финансы и статистика, 2004.

- 344 с.

3. Ярушкина Н.Г. Основы теории нечетких и гибридных систем. - М.: Финансы и статистика, 2004. - 320 с.

4. Дубровин В.И., Субботин С.А. Алгоритм классификации с оценкой значимости признаков // Рад1оелектрон1ка. 1нформатика. УправлЫня. -2001. - № 2. - С. 145-150.

5. Дубровин В. И., Субботин С. А., Богуслаев А.В., Яценко В.К. Интеллектуальные средства диагностики и прогнозирования надежности авиадвигателей: Монография. - Запорожье: ОАО " Мотор-Сич", 2003.

- 279 с.

6. Адаменко В.А., Дубровин В.И., Субботин С.А. Диагностика лопаток авиадвигателей по спектрам затухающих колебаний после ударного возбуждения на основе нейронных сетей прямого распространения // Нов1 матер1али I технологИ' в металурги та машинобудуваннк -2000. - № 1. - С. 91-96.

Поступила в редакцию 11.12.2006

Вир1шено актуальну задачу побудови зручних для анал1зу i використання д1агностич-них моделей складних mexHi4Hux o6'eKmie. Запропоновано метод синтезу нейро-нечiтких дiагностичних моделей, що здiйснюють ieрархiчне прийняття рiшень. Розроблено про-грамне забезпечення, що реалiзуe запропонований метод i дозволяе використовувати його на практиц.

The actual problem of construction of diagnostic models of complex technical objects convenient for the analysis and use is solved. The method of synthesis of neuro-fuzzy diagnostic models for hierarchical decision making is offered. The software realizing an offered method and allowing to use it in practice is developed.

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