Современные информационные технологии/3. Программное обеспечение

аспирант Мурашкина Е.Н., д.т.н, профессор Михеев М.Ю.

Пензенский государственный технологический университет, Россия

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

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

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

Рисунок 1 – пример сигнала сложной формы

Сигнал сложно формы можно получить и при помощи модели представленной на рисунке 2.

C:\Total Commander PowerUser v53\Programm\SoftMaker Office 2010\SoftMaker\Settings\temp\1fdc6343.tmp\img19262.PNG

Рисунок 2 – имитационная модель источника сигналов сложной формы

Описание блоков, необходимых для построения имитационной модели, приведено в таблице 1.

Таблица 1 – Описание блоков имитационной модели

Наименование блока

Тип блока

Назначение

1.

Ramp

Генератор линейного тренда

Генерация аргумента функции

2.

Frequency Hz

Математическая функция

В данном блоке задается частота сигнала

3.

Phase

Математическая функция

В данном блоке задается фаза сигнала

4.

Product

Математическая функция

Выполняет умножение входных переменных

5.

MATLAB Fcn

Математическая функция

В данном блоке задается необходимая математическая функция. Входное значение является одновременно и значением переменной данной функции

6.

Function

Математическая функция

В данном блоке задается функция Sin

7.

Scope1

S-функция

Отображает график сигнала

По полученным данным с имитационной модели можно определить параметры сигнала сложной формы.

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

Для реализации подсистемы идентификации было решено использовать среду Matlab Simulink. В ней была создана модель идентификации сигналов, показанная на рисунке 3.

C:\Total Commander PowerUser v53\Programm\SoftMaker Office 2010\SoftMaker\Settings\temp\1fdc6343.tmp\img16374.PNG

Рисунок 3 – модель подсистемы идентификации сигналов

С помощью m-файла, сгенерирована нейронная сеть типа GRNN, код m-файла приведен ниже.

clear;clc;

hhandle = open('ident.mdl');

set_param('ident/SELECTOR','Value','1');

set_param('ident/SIGNAL_OUT','VariableName','P1');

sim('ident.mdl');

set_param('ident/SELECTOR','Value','2');

set_param('ident/SIGNAL_OUT','VariableName','P2');

sim('ident.mdl');

set_param('ident/SELECTOR','Value','3');

set_param('ident/SIGNAL_OUT','VariableName','P3');

sim('ident.mdl');

set_param('ident/SELECTOR','Value','4');

set_param('ident/SIGNAL_OUT','VariableName','P4');

sim('ident.mdl');

set_param('ident/SELECTOR','Value','5');

set_param('ident/SIGNAL_OUT','VariableName','P5');

sim('ident.mdl');

set_param('ident/SELECTOR','Value','6');

set_param('ident/SIGNAL_OUT','VariableName','P6');

sim('ident.mdl');

set_param('ident/SELECTOR','Value','7');

set_param('ident/SIGNAL_OUT','VariableName','P7');

sim('ident.mdl');

set_param('ident/SELECTOR','Value','8');

set_param('ident/SIGNAL_OUT','VariableName','P8');

sim('ident.mdl');

set_param('ident/SELECTOR','Value','9');

set_param('ident/SIGNAL_OUT','VariableName','P9');

sim('ident.mdl');

set_param('ident/SELECTOR','Value','10');

set_param('ident/SIGNAL_OUT','VariableName','P10');

sim('ident.mdl');

set_param('ident/SELECTOR','Value','11');

set_param('ident/SIGNAL_OUT','VariableName','P11');

sim('ident.mdl');

P = [P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11];

T = [0.01 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1];

net=newgrnn(P,T);

gensim(net)

Описание блоков, используемых на рисунке 6, представлены в таблице 2.

Таблица 2 – Назначение блоков модели идентификации

Название блока

Назначение блока

Constant

в этом блоке задается номер сигнала

Source

подсистема источников сигнала

Scope

блок графического отображения сигнала

Transform

блок преобразования сигналов

Neural Network

нейронная сеть

Display

числовое отображение информации

В данной модели (Рисунок 3) сначала задается номер сигнала в блоке Constant. После запуска модели в блоке Source выбирается сигнал, заданный в блоке Constant. Сигнал преобразуется в блоке Transform для нормального восприятия его нейронной сетью. Затем сигнал сравнивается с образцами, записанными в предварительно обученной нейронной сети Neural Network. Блок Display показывает результат идентификации – степень отклонения сигнала сложной формы от допустимого значения.

Для модели подсистемы идентификации была сгенерирована и обучена нейронная сеть. Сеть обучалась на основе сигналов, генерируемых моделью, представленной ниже (Рисунок 4).

C:\Total Commander PowerUser v53\Programm\SoftMaker Office 2010\SoftMaker\Settings\temp\1fdc6343.tmp\img28136.PNG

Рисунок 4 – модель генерации сигналов

Модель состоит из блоков:

– Constant – блок подачи единичного постоянного сигнала;

– Source – подсистема источников сигнала;

– Transform – блок преобразования сигналов;

– To Workspace – блок, сохраняющий результаты моделирования.

На основе собранных данных создается обобщенная регрессионная сеть GRNN. Сеть была обучена с помощью сигналов блока Source (Рисунок 5). В нем задано 11 сигналов с разной вероятностью отклонения сигнала сложной формы от допустимого значения. Данные сигналы являлись обучающей выборкой для вероятностной нейронной сети.

Данная подсистема состоит из блоков:

– Signal – блок источника сигнала сложной формы (Рисунок 2).

– Multiport Switch – многовходовый переключатель.

– Scope – блок графического отображения сигналов.

C:\Total Commander PowerUser v53\Programm\SoftMaker Office 2010\SoftMaker\Settings\temp\1fdc6343.tmp\img06835.PNG

Рисунок 5 – подсистема источников сигнала Source

Сигналы из блока Source соответствуют степени отклонения сигнала сложной формы от допустимого значения. Ниже приведена таблица соответствия показаний дисплея и величин отклонения (Таблица 3).

Таблица 3 – Таблица соответствия показаний дисплея и отклонения

№ сигнала

Показание дисплея

Величина отклонения

1

0

критическая ситуация

2

0,1

9 %

3

0,2

8 %

4

0,3

7 %

5

0,4

6 %

6

0,5

5 %

7

0,6

4 %

8

0,7

3 %

9

0,8

2 %

10

0,9

1 %

11

1

колебания в пределах нормы

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

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

Литература:

1. Галушкин А.И. Нейронные сети – М: Горячая Линия – Телеком, 2012г. – 496 с.

2. MathWorks – MATLAB and Simulink for Technical Computing. Режим доступа: http://www.mathworks.com/, свободный.

3. Seismometers // IMV CORPORATION. Режим доступа: http://www.imv.co.jp/e/products/seismometer/watch/index.php, свободный.

4. SimulinkVideos and Examples Режим доступа: http://www.mathworks.com/products/simulink/examples.html?s_cid=BB, свободный.

5. Simulink Documention Режим доступа: http://www.mathworks.com/help/simulink/index.html?s_cid=BB, свободный.

6. Гради Буч, Джеймс Рамбо, Ивар Якобсон Введение в UML от создателей языка. Пер: Н. Мухин – М: ДМК Пресс, 2011г, – 496с.

7. Перьков В.В. Система передачи дискретной информации сигналами сложной формы (Патент RU 2024198).