Научная статья на тему 'Использование искусственных нейронных сетей системы Simulink/Matlab в технической диагностике двигателей летательных аппаратов'

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

CC BY
1459
198
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ / НЕЙРОННЫЕ СЕТИ / ДИАГНОСТИКА АВИАЦИОННЫХ КОНСТРУКЦИЙ И ДВИГАТЕЛЕЙ ЛЕТАТЕЛЬНЫХ АППАРАТОВ / MATHEMATICAL MODELING / NEURAL NETWORKS / DIAGNOSTICS OF AIRCRAFT STRUCTURES AND AIRCRAFT ENGINES

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Гущин Сергей Владимирович, Полонский Анатолий Петрович

Рассматриваются вопросы обеспечения качества, надежности и ресурса летательных аппаратов и двигателей с использованием системы математического моделирования Matlab/Simulink, позволяющей создавать и обучать искусственные нейронные сети, способные выявлять сложные зависимости между входными и выходными данными, а также выполнять обобщения. Сеть сможет вернуть верный результат на основании данных, которые отсутствовали в обучающей выборке, а также неполных и/или «зашумленных», частично искаженных данных.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Гущин Сергей Владимирович, Полонский Анатолий Петрович

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

USE OF ARTIFICIAL NEURAL NETWORKS OF THE SIMULINK / MATLAB SYSTEM IN TECHNICAL DIAGNOSTICS OF AIRCRAFT ENGINES

The article discusses the problems of ensuring quality, reliability and service life of aircrafts and engines with the use of the Matlab / Simulink system of mathematical modeling, which allows to create and train artificial neural networks that can detect complex dependencies between input and output data, as well as perform generalizations. The network would be able to return the correct result on the basis of data that were not present in the training set, incomplete and / or noisy ones, and partly distorted data as well.

Текст научной работы на тему «Использование искусственных нейронных сетей системы Simulink/Matlab в технической диагностике двигателей летательных аппаратов»

УДК 629.7.03: 681.322:681.5

ИСПОЛЬЗОВАНИЕ ИСКУССТВЕННЫХ НЕЙРОННЫХ СЕТЕЙ СИСТЕМЫ SIMULINK/MATLAB В ТЕХНИЧЕСКОЙ ДИАГНОСТИКЕ ДВИГАТЕЛЕЙ ЛЕТАТЕЛЬНЫХ АППАРАТОВ

С.В. Гущин, А.П. Полонский

Национальный исследовательский Иркутский государственный технический университет, 664074, г. Иркутск, ул. Лермонтова, 83.

Рассматриваются вопросы обеспечения качества, надежности и ресурса летательных аппаратов и двигателей с использованием системы математического моделирования Matlab/Simulink, позволяющей создавать и обучать искусственные нейронные сети, способные выявлять сложные зависимости между входными и выходными данными, а также выполнять обобщения. Сеть сможет вернуть верный результат на основании данных, которые отсутствовали в обучающей выборке, а также неполных и/или «зашумленных», частично искаженных данных. Ил. 2. Библиогр. 8 назв.

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

USE OF ARTIFICIAL NEURAL NETWORKS OF THE SIMULINK / MATLAB SYSTEM IN TECHNICAL DIAGNOSTICS OF AIRCRAFT ENGINES S.V. Gushchin, A.P. Polonsky

National Research Irkutsk State Technical University, 83, Lermontov St., Irkutsk, 664074.

The article discusses the problems of ensuring quality, reliability and service life of aircrafts and engines with the use of the Matlab / Simulink system of mathematical modeling, which allows to create and train artificial neural networks that can detect complex dependencies between input and output data, as well as perform generalizations. The network would be able to return the correct result on the basis of data that were not present in the training set, incomplete and / or "noisy" ones, and partly distorted data as well. 2 figures. 8 sources.

Key words: mathematical modeling; neural networks; diagnostics of aircraft structures and aircraft engines.

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

ИНС представляют собой систему соединённых и взаимодействующих между собой простых процессоров (искусственных нейронов) (рис. 1).

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

1 Гущин Сергей Владимирович, кандидат технических наук, доцент кафедры самолетостроения и эксплуатации авиационной техники, тел.: (3952) 405133, gushin@istu.edu

Gushchin Sergey, Candidate of technical sciences, Associate Professor of the Department of Aircraft Construction and Maintenance, tel.: (3952) 405133, gushin@istu.edu

2Полонский Анатолий Петрович, кандидат технических наук, доцент кафедры самолетостроения и эксплуатации авиационной техники, тел.: (3952) 405133, a_polonsky@mail.ru

Polonsky Anatoly, Candidate of technical sciences, Associate Professor of the Department of Aircraft Construction and Maintenance, tel.: (3952) 405133, a_polonsky@mail.ru

менее, будучи соединёнными в достаточно большую сеть с управляемым взаимодействием, такие локально простые процессоры вместе способны выполнять довольно сложные задачи.

Рис. 1. Структура ИНС: 1 - входной слой; 2 - скрытый слой; 3 - выходной слой

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

НС не программируются в привычном смысле этого слова, они обучаются. Возможность обучения -одно из главных преимуществ нейронных сетей перед традиционными алгоритмами. Технически обучение заключается в нахождении коэффициентов связей между нейронами. В процессе обучения НС способна выявлять сложные зависимости между входными и выходными данными, а также выполнять обобщение. Это значит, что в случае успешного обучения сеть сможет вернуть верный результат на основании данных, которые отсутствовали в обучающей выборке, а также неполных и/или «зашумленных», частично искаженных данных.

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

Проблема кластеризации более сложная в сравнении с классификацией. Особенность ее заключается в том, что помимо отнесения образа к какой-либо

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

Формирование категорий напоминает процесс обучения у живых организмов, поэтому обычно эксперта называют супервизором или учителем. Учитель управляет обучением при помощи изменения параметров связей и реже - самой архитектуры сети. Задачей кластеризации является формирование обобщающих признаков в совокупности примеров. При увеличении числа примеров несущественные, случайные признаки сглаживаются, а часто встречающиеся -усиливаются, при этом происходит постепенное уточнение границ кластеров. Хорошо обученная НС способна извлекать признаки из новых примеров, ранее неизвестных диагностической системе, и принимать на их основе решения. Обучаемые НС могут производить из данных скрытые знания, т.е. создавать навык формирования категорий, но его логическая структура обычно остается скрытой от пользователя. Производство знаний из накопленных данных - одна из особенностей самоорганизующихся сетей (карт) Кохонена (Kohonen Self-organizing Map, SOM), ориентированных на кластерный анализ [2].

Несмотря на то что использование ИНС до сих пор не привело к каким-либо особенным достижениям, доверие и интерес к ним в научной среде в последние годы начал расти. Большой интерес к ним проявляют многие солидные научные организации США. Среди них Тихоокеанская северо-западная национальная лаборатория США (Pacific Northwestern National Laboratory - PNNL) и NASA. Аэрокосмическое агентство США в августе текущего года сообщило о своем намерении «поручить» нейросетям весьма ответственное дело. На их основе планируется создать интеллектуальную систему управления полетом истребителя NF-15B. Специалисты NASA рассчитывают на то, что ИНС дадут пилоту возможность не потерять управление машиной и осуществить безопасную посадку даже в случае серьезных неполадок бортовых систем или боевых повреждений.

В 1996 году фирмами Accurate Automation Corp (http://www.accurate-automation.com), Chattanooga, TN по заказу NASA и Air Force был разработан экспериментальный автопилотируемый гиперзвуковой самолет-разведчик LoFLYTE (Low-Observable Flight Test Experiment). Самолет имел длину всего 2,5 м и вес 32 кг и был предназначен для исследования новых принципов пилотирования. LoFLYTE использовал НС, позволяющие автопилоту обучаться, копируя приемы пилотирования летчика. Поскольку самолет был предназначен для полетов со скоростью 4-5 махов, то быстрота реакции пилота-человека могла быть недостаточной для адекватного отклика на изменение режима полета. В этом случае на помощь приходили НС, которые перенимали опыт управления у летчика и за счет высокой скорости обработки информации позволяли быстро находить выход в аварийных и экстремальных ситуациях [5].

В случае диагностики авиационных конструкций и двигателей летательных аппаратов (ЛА) НС может быть организована в трехслойную топологию с прямой передачей сигнала (см. рис. 1), при этом первый входной слой (Input Layer) служит классификатором неисправностей, второй выходной слой (Output Layer) аппроксимирует динамическую реакцию объекта диагностирования на данную неисправность, т. е. решает задачу регрессии. Промежуточный скрытый слой (Hidden Layer) способствует обучению многослойного персептрона в условиях воздействия случайных шумовых помех с помощью так называемой "сигмоидной" нелинейной функции, peгулирующей веса случайных сигналов между основными слоями на базе разности между создаваемым и желательным выходным сигналами нейросети.

Для создания ИНС в пакете Neural Networks Toolbox системы MATLAB имеются следующие функции [8]:

net=newff(PR, [S1 S2...SNI], {TF1 TF2...TFNI}, BTF, BLF, PF) - функция создания многослойной НС с обучением по методу обратного распространения ошибки:

PR - R х 2 - матрица минимальных и максимальных значений R входных элементов;

Si - размер i-го скрытого слоя для N1 слоев;

TFi - функция активации нейронов i-го слоя, по умолчанию 'tansig';

BTF - функция обучения сети, по умолчанию 'traingd';

BLF - функция настройки весов и смещений, по умолчанию 'learngdm';

PF - функция ошибки, по умолчанию 'mse'.

net=newrbe(P,T,goal,spread) - функция создания сети с радиальными базисными элементами c нулевой ошибкой на обучающей выборке:

P - R х Q -матрица Q входных векторов; T - S х Q - матрица Q целевых векторов; spread - отклонение (по умолчанию 1,0). Функции обучения нейронных сетей net=train(net,P,T) - функция обучения нейронной сети,

net - имя необученной сети; P - матрица входных значений нейронной сети; T - матрица выходных значений нейронной сети. Метод обучения задается с помощью параметра net.trainFcn, например net.trainFcn = 'trainbfg'. Функции использования нейронных сетей [Y]=sim(net,P) - функция, моделирующая работу нейронной сети: net - имя сети; P - ее входы.

gensim(net) - функция генерирует нейросетевой блок Simulink для последующего моделирования нейронной сети средствами этого пакета, net - имя созданной сети.

Для обработки экспериментальных данных и исследования газотурбинного двигателя (рис. 2), полученных при выполнении проверки технического состояния двигателей НК-8-2У [6], была использована ИНС пакета программ Simulink/Matlab.

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

V, мм/сек

/ \

J /

/X х

г /

д pjv ЧУ Г\ /V

Г ^ ч У J

30 20 10 0

3390 3425 3460 3495 3530 3565 3600 3635 3670 3705 т, час

а

V, мм/сек

/ ^ i У

/ \ J

А /

___' т

/

N

40 30 20 10 0

3390 3425 3460 3495 3530 3565 3600 3635 3670 3705

т, час

О

Рис. 2. Отклонение регистрируемой виброскорости по передней (а) и задней (б) опорам турбореактивного двигателя в зависимости от наработки

Аппроксимация функции с помощью НС проводилась на отрезке при величине наработки [3390, 3635], с используеванием следующих экспериментальных данных:

P=[3390, 3425, 3460, 3495, 3530, 3565, 3600, 3635] - наработка в часах;

T1=[0, 0, 10, 10, 6, 4, 14, 20] - виброскорость в мм/с на передней опоре двигателя;

Т2=[0, 2, 8, 8, 6, 10, 20, 30] - виброскорость в мм/с на задней опоре двигателя.

Для оценки числа нейронов в скрытых слоях однородных НС можно воспользоваться формулой для оценки необходимого числа синаптических весов Lw (в многослойной сети с сигмоидальными передаточными функциями):

(mN)/(1+log2N) < Lw < m(N/m +1 )(n + m + 1) + m, где n - размерность входного сигнала; m - размерность выходного сигнала; N - число элементов обучающей выборки.

В нашем случае при n = 1, m = 1, N = 8 необходимое количество синаптических весов будет равно: (1 х 8)/(1 + log28) < Lw < 1(8/1 + 1)(1 + 1 +1) + 1; 3,66 < Lw < 28.

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

net1 = newff(P, T1, 4).

Следующий этап - обучение созданной сети: net1 = train(net1,P,T1).

Функция train обучает заданную сеть net, используя вектор входов P и вектор выходов T1. Результат (структура обученной сети) присваивается переменной net1.

Проверка правильности обучения осуществляется с помощью функции использования НС Y1=sim(net1,P).

Результатом является вектор выходов Y1 как результат воздействия векторов входа на обученную сеть:

Y1 = [2,0105; 0,4258; 6,2591; 10,0477; 12,9218; 14,2367; 14,7273; 19,9605].

Если сравнить результат с требуемым T1=[0, 0, 10, 10, 6, 4, 14, 20], видно, что точность аппроксима-

ции недостаточно высока. Увеличив число скрытых нейронов до шести, можно достигнуть лучших результатов:

Y1 =[0,0180; 0,0059; 9,9088; 10,1282; 5,9983; 1,2487; 13,9986; 19,9941].

При тестировании ИНС по экспериментальным данным виброскорости на задней опоре двигателя получено, что данные реальных замеров Т2 и полученные при работе ИНС с шестью скрытыми нейронами Y2 достаточно хорошо согласуются: Т2=[0, 2, 8, 8, 6, 10, 20, 30];

Y2= [-2,2752; 2,2506; 7,9519; 6,6849; 6,7998; 9,9014; 19,1032; 24,5177].

Сравним сеть прямого распространения с сетью с радиальными базисными элементами: net1rbe = newrbe(P,T1).

Обучение такого типа сети занимает меньшее время. Проверка результата работы сети при помощи функции sim с учетом входного вектора наработки P: Y1R = sim(net1rbe, P).

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

T1=[0, 0, 10, 10, 6, 4, 14, 20];

Y1R = [-0,0000; -0,0000; 10,0000; 10,0000; 6,0000; 4,0000; 14,0000; 20,0000].

Применение сети с радиальными базисными элементами дает аналогичные результаты и для задней опоры двигателя: Т2=[0, 2, 8, 8, 6, 10, 20, 30];

Y2R = [-0,0000; 2,0000; 8,0000; 8,0000; 6,0000; 10,0000; 20,0000; 30,0000].

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

Перенести полученную обученную ИНС в среду SIMULINK можно с помощью команды gensim(net), где net - имя созданной ИНС. Это позволит использовать обученную ИНС в более сложных математических моделях, описывающих работу двигателей ЛА.

Таким образом, показано, что ИНС являются мощным и доступным инструментом, способным давать достоверные результаты при технической диагностике двигателей летательных аппаратов.

Библиографический список

1. Маккалох Дж., Питтс У. Логические исчисления идей, относящихся к нервной деятельности // Автоматы. М.: Изд-во иностранной литературы, 1956. С. 363-384.

2. Соловьев В.М. Построение диагностических экспертных систем на основе нейронных сетей // Известия Саратовского университета. Серия «Математика. Механика. Информатика». 2006. Вып. 1/2. Т. 6. С. 108-120.

3. Дубровин В.И., Субботин С.А. Нейросетевое моделирование и оценка параметров нелинейных регрессий // Нейрокомпьютеры и их применение: сб. докл. VI Всерос. конф. (16-18 февраля 2000г., Москва). М.: Издательское предприятие журнала «Радиотехника», 2000. С. 118-120.

4. Володко А.М. Автоматизированный мониторинг работоспособности и применения зарубежных вертолетов // Проблемы безопасности полетов: обзорная информация М.:

ВИНИТИ. 2003. Вып. 4. С. 3-48.

5. Кальченко Д. Нейронные сети: на пороге будущего // Компьютер Пресс. 2005. № 1. С. 86-90.

6. Полонский А.П., Хрюкина Р.Ф., Пущин Р.В. Исследование вибрационных характеристик лопаток ГТД // ВосточноСибирский авиационный сборник. 2005. Вып. 3.

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

7. Полонский А.П., Лодыгин А.А. Анализ результатов технического состояния двигателей НК-8-2У в условиях АТБ аэропорта «Иркутск» // Восточно-Сибирский авиационный сборник: межвузовский сборник науч. тр. Иркутск: Изд-во ИрГТУ, 2001. С. 146-147.

8. Щеников Я. А. Программное обеспечение процессов и систем: метод. указания к выполнению практ. занятий № 111. СПб.: Изд-во СПб госуниверситета аэрокосмического приборостроения, 2006. 78 с.

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