УДК 519.632
К.Е. БУРНАЕВ, БелГТУ им. Шухова (Белгород, Россия)
МОДЕЛИРОВАНИЕ НЕСТАЦИОНАРНЫХ ПОЛЕЙ В НЕОДНОРОДНЫХ ОБЛАСТЯХ С ПОМОЩЬЮ НЕЙРОННЫХ СЕТЕЙ
У статті розглядається можливість отримання наближеного рішення диференційних рівнянь у частинних похідних за допомогою одношарових нейронних мереж із зворотними зв'язками. Представлений приклад застосування мереж вказаної структури для вирішення диференційного рівняння.
The possibility of solving partial derivative differential equations by using neural networks with specific structure is investigated in the article. The simple single-layer neural network ability to approximate the solution of PDE is proved. A simple example of described method application is given.
Постановка проблемы. Задана n -мерная область Q произвольной формы и интервал времени [0, t\. На границе Г области определены краевые условия F(r, t), r є Г. Дано дифференциальное уравнение в частных производных с переменными коэффициентами
где г - произвольный п -мерный вектор, г ей, к (г, t) - известная гладкая функция, определенная на области й , удовлетворяющая условию
0 < сх < к(г, t) < с2. (2)
Необходимо найти функцию Р (г, t).
С точки зрения практики, решение такого дифференциального уравнения соответствует моделированию нестационарного поля в среде с неоднородными характеристиками - например, температурного поля в объекте с непостоянной теплопроводностью или плотностью. Уравнения этого класса часто встречаются при решении практических задач; хотя общие принципы решения этих задач исследованы, алгоритмы решения остаются крайне требовательными к вычислительным ресурсам.
Анализ литературы. Несмотря на то, что принципы решения таких дифференциальных уравнений хорошо изучены, сам процесс решения представляется сложным. В большинстве случаев задача сводится к сверхбольшой системе линейных алгебраических уравнений, решение которой дает приближенное значение искомой функции в некотором наборе точек -узлов дискретизации. Заметим, что распространенные методы решения таких
систем являются итеративными и предполагают последовательную, а не параллельную обработку данных; таким образом, для ускорения процесса решения системы требуется увеличивать производительность процессора [1].
С другой стороны, в настоящее время начали получать всё большее распространение многоядерные процессоры, позволяющие использовать явный параллелизм вычислений даже при наличии только одного компьютера. Кроме того, большая часть организаций, которым могут потребоваться решение подобных задач, обладает больших количеством относительно маломощных рабочих станций, объединенных локальными сетями. Таким образом, оптимальное использование существующих ресурсов возможно только при максимальном распараллеливании процессов вычислений, что во многих случаях легко достигается при использовании нейронных сетей.
На текущий момент существует три основных направления применения нейронных сетей при решении дифференциальных уравнений в частных производных с постоянными коэффициентами. Первое использует идеи метода конечных элементов, а именно - приближение точного решения дифференциального уравнения с помощью набора простых базисных функций. Такая форма решения может быть отображена на архитектуру нейронной сети прямого распространения, в которой активационные функции нейронов соответствуют используемым базисным функциям, а весовые коэффициенты -коэффициентам, используемым при аппроксимации. Недостатком этого метода является то, что количество базисных функций очень велико и быстро растет с увеличением количества узлов задачи; при увеличении размерности задачи увеличивается количество параметров, необходимых для задания базисных функций. Это приводит к тому, что метод плохо масштабируется и начинает проигрывать обычным численным методам при решении задач большой размерности [2].
Второе направление - решение полученной при применении метода конечных разностей системы линейных алгебраических уравнений обращением матрицы с помощью обучаемой нейронной сети с архитектурой Хопфилда. Как известно, обучение сети с такой архитектурой соответствует минимизации энергетической функции. Если полученную систему линейных алгебраических уравнений отобразить на нейронную сеть так, чтобы энергетическая функция соответствовала невязке решения системы линейных уравнений, в результате обучения нейронной сети будет получено приближенное решение системы. Недостатком этого метода является большое время обучения и то, что обученную нейронную сеть нельзя применить для решения другой системы уравнений [3, 4].
Третье направление - получение дифференцируемого аналитического решения с помощью нейронных сетей специфической структуры. В отличие от предыдущих двух методов, этот метод дает приближенное аналитическое, а не численное решение поставленной задачи, представленное в виде суперпозиции двух функций
и (х) = А (х) - Г(х, N (х, р)),
(3)
где функция А(х) удовлетворяет краевым условиям, а Г(х, у) обращается на границе области в ноль и частично задается нейронной сетью N(х, р), являющейся обычным трехслойным перцептроном, обучаемом на наборе заранее известных точек решения. Эта методика требует, чтобы область, в которой производится поиск решения, была прямоугольной, что не всегда возможно. Кроме того, для обучения перцептрона требуется наличие решения задачи на более грубой сетке, что подразумевает использование какого-либо другого метода в связке с этим [5, 6].
Отметим, что все подходы, перечисленные выше, предполагают, что решается дифференциальное уравнение с постоянными коэффициентами. Это накладывает серьезные ограничения на круг решаемых задач.
Цель статьи: предложить способ решения дифференциальных уравнений в частных производных с переменными коэффициентами, который бы обладал возможностью простого распараллеливания вычислений и в то же время точностью, сравнимой с распространенными универсальными численными методами.
Предлагаемая методика. Для решения задачи используем ячеистую нейронную сеть. Ячеистые нейронные сети представляют собой большие массивы одинаковых динамических систем - ячеек, которые удовлетворяют следующим требованиям: 1) все взаимодействия ограничиваются некоторым конечным радиусом и 2) переменные, описывающие состояние нейронной сети, являются непрерывными [7, 8].
Выделим в области й N узлов дискретизации с координатами г1, ..., гм, образующие п -мерную однородную прямоугольную сетку дискретизации с шагом кі по і -й координате; разобьем временной промежуток на т отрезков длиной г .
Структуру сети можно описать следующим образом: сеть состоит из т слоев, каждый из которых представляет собой п -мерную прямоугольную решетку нейронов, имеющих линейные активационные функции /(х) = х . Каждый нейрон с координатами (г,..., ги) внутри слоя соответствует узлу дискретизации с координатами (г1И1,тпИп). Слой с номером і, і є(0, т-і) соответствует моменту времени і г. Каждый нейрон имеет 2п связей с непосредственными соседями внутри слоя, обратную связь и две связи с нейронами с тем же номером в предыдущем и последующем слоях (за исключением нейронов первого и последнего слоя, у которых одна их этих связей будет отсутствовать).
Введем дополнительные вспомогательные обозначения: номер нейрона в слое і с координатами х внутри слоя - L(x, і); номер нейрона, предшествующего или последующего і -му по у -й координате - P(i, у) и 5(і,у) соответственно; выходное значение і -го нейрона обозначим как / ; множество номеров нейронов, соседствующих с нейроном і - В(і).
Определим веса связей, которые будут использоваться в сети. Вес обратной связи:
w,, = b -
1 - b кікі
(4)
где кі = к (гі, ґ) - значение коэффициента, характеризующего свойства среды в данной точке (например, величины теплопроводности при моделировании теплового поля), ^ - вспомогательная величина, определяемая выражением
к, =к (ri,t Ё
2к
L(P(r,i),t)
2к
L(S (r,i ),t)
i=1 ^ IiL(p(7,i ),t) + KL(7,t)
+к
к L(S (г,і ),t) + kL(f,t)
(5)
Вес связи между нейронами внутри слоя:
w =
wJ
1 - b 2к,
кj к, + кj
і є
0, і г b(j)
Вес связи между нейронами разных слоев:
1 - b
Wl(x,i)L(x,i+i) = , ,
KL( x,i)KL(x,i)
(6)
(7)
Заметим, что, в отличие от связей внутри слоя, межслойные связи являются однонаправленными.
Используем информацию о граничных условиях следующим образом: сделаем активационные функции нейронов, соответствующим узлам дискретизации, для которых выполняется условие f(r,t)=ц(г,t) = const, константными - f (*) = цг- = const. Аналогично изменим активационные функции нейронов, соответствующих узлам, в которых задано граничное условие вида f '(r, t) = ц(г, t) = const на функции вида:
f (x) = k
Л
x + -
2n
(В)
i У
v
и вес обратной связи:
(10)
где а =т—^ - коэффициент, зависящий от количества соседних узлов.
Заметим, что стабильное состояние сети удовлетворяет конечно-разностному представлению дифференциального уравнения
/ (х.I)~ / (Х,I + т) =
X
= IГ„(х+*.,) /(х + К <)_/(х. <) _ а{х ') /(х.,)-/(х - К.|)
А V К К
где а(х, t) - разностный коэффициент, вычисляемый по формуле:
„Л. Л_ —к(х + к, ()к(х, t) а(х, t) — / ч .
к (х + к, t) + к (х, t)
вследствие того, что равенство
/ь(х.1) = ^^( х.1 )^(х.1 )/к(х.1) + ^^(х.1_1)^(х.1 )./к(х.1_1) +
п
+ ^ (^^(Р(ж.г).I)/Ь(р(х.1),1) + ^£(5(х.г). I )/1(5(х.г).1}) .
г—1
(11)
(12)
описывающее стабильное состояние нейронной сети, может быть преобразовано к виду:
/Ь( х.1)
Ь --
1 _ Ь
V кь(х.1 )кь(х.1) у
4- . 1 _ Ь 4- ,
/ь(х.1) + "гГ” лТ^ Г /ь(х.1 -1) +
к1(х.1 )к1{х.1)
) г—1
/ь(р(х.г ).1)
7 7 ^ 1Л.г ).1 )+ у у */£(5(х.г ).1)
^Ь(х.1) + ^Ь(р(х.г ).1) ^Ь(х.1) + ^£(5(х.г ^)
"А(5 (х.г ).1)
(13)
/Ь(х.1) Л(х.!-1) ^£(х .I )^£(х.1 )/Ь(х.1) +
кь(х.1
г —1
2&
£(р(х .г ).1)
^£(х .I) + ^£(р(х .г ).1)
/ь(р(х.г )|) +
2&
£(5 (х.г ).1)
^£(х .I) + ^£(5 (х.г).1)
■/£(5 (х.г )
(14)
+
А(X.,) Л(Х.,-1) kL(X.t)1 2 11 '
^ ^CaP'XiV) Оі(Р(Х.І „)-Л(.Х,))+
к
Х(х.,) + kL(p(x.i).,)
2к к
L(x.t) Ц$(х^ ).t) (/ — / )
, , V L(S(X.І).,) /1(Х,г))
Ь(хл)+ кЦя(х.І).,) ((,). ) ( ,
Л
Граничные условия выполняются в силу того, что активационные функции нейронов, соответствующих граничным узлам, являются константными. Таким образом, стабильное состояние сети эквивалентно приближенному численному решению поставленной задачи.
Единственность стабильного состояния очевидным образом вытекает из приведенных выше преобразований. Покажем, что это стабильное состояние сети достижимо. Введем следующие вспомогательные обозначения: Ж -матрица весов сети, Е - вектор выходных значений нейронов сети, Б -вектор единичных смещений нейронов. Заметим, что в силу линейности активационных функций, Е+1 = ЖЕ + Б.
Докажем, что сеть не может бесконечно осциллировать между несколькими состояниями с помощью доказательства от противного. Пусть существует набор попарно различных состояний сети Е..... такой, что
(16)
Тогда должно выполняться следующее равенство:
( п—1
і = і1Жп + Б
V і=1
( п—1 Л
(е — Жп )і = Б ІЖ
V і=1
(17)
(18)
Заметим, что для любого п Жп Ф Е. Решая полученное матричное уравнение относительно Е, получаем
Б
І =-
( п—1 ^
І Vі
V і=1 У
Б
п—1
1 — Ж
(19)
і = ІЖ + Б = -^Ж + Б = —— = і .
2 1 1 — Ж 1 — Ж 1
(20)
что противоречит начальному предположению о том, что состояния іі попарно неравны.
І=1
I = 1
Покажем, что выходные значения нейронов сети ограничены. В общем случае, когда нейроны могут иметь и константные, и линейные активационные функции, выходные значения нейронов на каждом шаге можно определить с помощью выражения
і +1 = і'ЖЬ + С. (21)
где С - вектор константных выходных значений, содержащий нулевые значения в элементах, соответствующих нейронам с линейными активационными функциями; Ь - квадратная матрица размером п, элементы которой определяются по следующему правилу:
1и = 1 , если і -й нейрон имеет линейную активационную функцию,
1^ = 0 во всех прочих случаях.
Заметим, что СЖЬ = 0 . Тогда
Е = Е0 |), + С . (22)
Так как ||Ж|| < 1, то и ||жЦ| < 1. Следовательно
N . . N.. N N N
11#+Ц| < І|# І + ІС < Л/о + Л Сі < с. (23)
і=1 і=1 і=1 і=1 і=1 Очевидно, что никакой выходной сигнал не будет по модулю превышать этого постоянного значения.
Пример. Для иллюстрации рассмотренной методики используем уравнение распространения теплового импульса в составном стержне с кусочно-линейным коэффициентом теплопроводности.
/=к2 д/
дґ дх2 .
/ (0.0) = /0;
/ (0.,) = 0;
7 (І.,) = 0; .
/ (х.0) = 0;
/о = 10.
Будем считать, что стержень состоит из частей длины 0.1/ = 1 с чередующимися коэффициентами теплопроводности к1 = 10 и к2 = 20 .
Результат решения задачи с применением нейронных сетей приведен на рисунке. Решение, полученной с помощью нейронной сети, соответствующей равномерной сетке дискретизации, состоящей из 100 = 10*10 узлов. отклоняется от аналитического на величины порядка 10 6, сравнимые с величиной, используемой в критерии завершения работы сети.
0.3
0.25
0.2
0.15
0.1
0.05
а 2 А 6 8 10 12 14 1В 18 20
Рис. Общий вид решения примера
Выводы. Предложенная нейронная сеть позволяет получать приближенное численное решение параболических дифференциальных уравнений в частных производных с переменными коэффициентами. В силу небольшого радиуса взаимодействия между нейронами в сети, предложенной структуры, вычисления, использующие её, могут быть эффективно распараллелены.
Список литературы: 1. Арфкен Г. Математические методы в физике. - М: Атомиздат, 1969. -712 с. 2. Lee H., Kang I. Neural algorithms for solving differential equations // Journal of Computational Physics. - 1990. - V. 91. - P.110-117. 3. Wang L., Mendel JM. Structured trainable networks for matrix algebra // IEEE Int. Joint Conference on Neural Networks. - 1990. - V. 2. - P. 125-128. 3. Gupta A., Karypis G., Kumar V. Highly Scalable Parallel Algorithms for Sparse Matrix Factorizations // IEEE Transactions on Parallel and Distributed Systems. - 1995. - V. 8. - № 5. - P. 502-520. 5. Lagaris I.E., Likas A., Fotiadis D.I. Artificial Neural Networks for Solving Ordinary and Partial Differential Equations // IEEE Transactions on Neural Networks. - 1998. - V. 9. - № 5. - P. 422-448. 6. Lagaris I.E., Likas A., Fotiadis D.I. Artificial Neural Networks for Solving Ordinary and Partial Differential Equations // IEEE Trans. on Neural Networks. - 1998. - V. 4. - P. 987-1000. 7. Rekeczky С., Szatmari I., Foldesy P., Roska T. Analogic Cellular PDE Machines. - Computer and Automation Research Institute. Hungarian Academy of Sciences, Budapest, Hungary. Tech. Report, 2004. 8. Fortuna L., Arena P., Balya D., Zarandy A. Cellular Neural Networks: A Paradigm for Nonlinear Spatio-Temporal Processing // Circuits and Systems Magazine, IEEE. - 2001. - V. 1. - № 4. - P. 6-21.
Поступила в редакцию П.10.2005