Научная статья на тему 'Построение нейросетевой модели по дифференциальным уравнениям и экспериментальным данным'

Построение нейросетевой модели по дифференциальным уравнениям и экспериментальным данным Текст научной статьи по специальности «Математика»

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

Похожие темы научных работ по математике , автор научной работы — Васильев А. Н., Тархов Д. А.

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

Текст научной работы на тему «Построение нейросетевой модели по дифференциальным уравнениям и экспериментальным данным»

2. Kryzhanovsky B.V., Kryzhanovsky V.M., Mikaelian A.L. and Fonarev A. Parametric dynamic neural network recognition power// Optical Memory&Neural Network, 2001, Vol. 10, №4, pp.211-218.

3. Kryzhanovsky B.V., Mikaelian A.L. An associative memory capable of recognizing strongly correlated patterns// Doklady Mathematics, 2003, v.67, No.3, p.455-459.

4. Kanter I. Potts-glass models of neural networks// Physical Review A, 1988, v.37(7), pp. 2739-2742.

5. Cook J. The mean-field theory of a Q-state neural network model// Journal of Physics A, 1989, 22, 2000-2012.

6. VogtH., Zippelius A. Invariant recognition in Potts glass neural networks// Journal of Physics A, 1992, 25, 2209-2226.

7. Bolle D., Dupont P.& Huyghebaert J. Thermodynamics properties of the q-state Potts-glass neural network// Phys. Rew. A, 1992, 45, 4194-4197.

8. Wu F.Y. The Potts model// Review of Modern Physics, 1982, 54, 235-268.

9. Kryzhanovsky B.V., Kryzhanovsky M.V., Magomedov B.M. Vectorial perceptron as quick search algorithm// Optical Memory&Neural Network, 2004, vol.13, No.4.

10. Kryzhanovsky B.V., Litinskii L.B., Mikaelian A.L. Vector-neuron models of associative memory// Proc. of Int. Joint Conference on Neural Networks IJCNN-04, Budapest-2004, pp.909-1004.

11. Kryzhanovsky B. V., Litinskii and A.Fonarev L.B. Parametrical neural network based on the four-wave mixing process// Nuclear Instuments and Methods in Physics Research, 2003, A. vol 502, No.2-3, pp. 517 - 519.

12. Nakamura Y., Torii K., Munaka T.. Neural-network model composed of multidimensional spin neurons// Phys. Rev. E, 1995, vol.51, No.2, pp.1538-1546.

А.Н. Васильев, Д. А. Тархов

ПОСТРОЕНИЕ НЕЙРОСЕТЕВОЙ МОДЕЛИ ПО ДИФФЕРЕНЦИАЛЬНЫМ УРАВНЕНИЯМ И ЭКСПЕРИМЕНТАЛЬНЫМ ДАННЫМ

Задача построения робастной математической модели по разнородным данным, включающим как уравнения, так и экспериментальные наблюдения, является весьма актуальной для практики, и её недостаточная изученность вызвана трудностью применения к ней классических методов. Отдельные задачи такого рода рассматривались в [2] и в [1,3].

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

Обыкновенные дифференциальные уравнения

Приближённое решение классической задачи Коши у'(х) = Е(х, у), у(х0) = у0 на промежутке (а; Ь) может быть получено минимизацией функционала

1 (У) = | |у (х) - Е(х, у)|2 ёх + д -|у(х0) - у0|2 ^ шт на некотором множестве одно-

N N

мерных функций КБР-сетей вида у = ^о@(х, а,.) = ^ с, ехр[-аь. (х - а2,)2], где

1=1 ,=1

параметры а1, > 0. Можно при решении задачи минимизации функционала ошиб-

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

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

м

1 (у) = X | у'( х]) - Е (х], у( х] ))| + 8-1 у( х0) - Л|2,

]=1

где 8 > 0 - штрафной параметр,{(х])}|М= 1 - множество тестовых точек на интервале (а; Ь), которое меняется в процессе обучения. Дело в том, что обучение сети при фиксированном наборе контрольных точек и при большом числе функций часто приводит к переобучению, когда малые ошибки в точках тестового множества сопровождаются большими ошибками вне него. Перегенерация тестовых точек после определенного числа шагов процесса обучения сети делает процесс обучения более устойчивым. Если она производится на каждом шаге, то процесс обучения слишком сильно замедляется. Чересчур редкая перегенерация приводит к тому, что сеть успевает переобучиться и на новом множестве точек обучение начинается практически заново. Разумный выбор частоты перегенерации позволяет избежать той и другой опасности.

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

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

м 2

1 (у) = X|у'(х])-Е(х],у(х]))-#| +8-1у(х0 +С)-у0 -#012. Закон распределения и

]=1

амплитуды случайных добавок £ и #, ] = 0,...,М , определяется предполагаемыми свойствами ошибок. Эти добавки имеет смысл менять одновременно с тестовыми точками {(х])}|М= . При этом и веса сети можно рассматривать как случайные числа с некоторым законом распределения, параметры которого подбираются в процессе обучения, или как интервальные переменные с концами интервалов, которые также подлежат определению.

Обсудим подходы к выбору параметра 8 . Проще всего фиксировать его, заранее исходя из априорно заданной значимости удовлетворения уравнению и граничному условию. В таком подходе слишком много произвола. Более адекватным представляется выбор такого значения 8 перед началом обучения, чтобы оба слагаемых в выражении для функционала ошибки 1 (у) имели одинаковое значение

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

Гораздо более сложная проблема возникает, если нужно подобрать не только веса нейронной сети, но и её топологию, т.е. структуру модели. В этом случае можно применить один из структурных алгоритмов, рассмотренных в работах [47,13] - алгоритм кластеризации ошибок; вариант генетического алгоритма или алгоритма обучения ансамбля сетей-экспертов; алгоритм, опирающийся на критерии МГУА; многорядный алгоритм или другой алгоритм такого рода.

Многорядный алгоритм МГУА [6] в данном случае можно начать с построения набора линейных моделей с помощью метода главных компонентов, применённого к подвыборкам. На I + 1-м шаге работы алгоритма рассматриваем сети вида у,+1 = м0 + міуі , + м]у] , + р( ук ,). Здесь уи - і -й выход сети, получившийся после I -го шага. Если рассматриваются степенные связи, то добавляется слагаемое вида мрчур 1уд1. В разных моделях можно выбрать различные функции активации р. При этом у части моделей можно заранее обнулить часть коэффициентов, т.е. рассматривать модели с весами м0, м>і, мі по отдельности или вместе равными нулю. Можно часть моделей брать с м>рк = 0 . Параметры моделей подбираются исходя из оптимизации функционала 3(у).

Если решение ищется в виде КБР-сети, то проще всего применить алгоритм кластеризации ошибок [13]. При этом новые тестовые точки при перегенерации не обязательно выбирать распределёнными равномерно, их можно брать гуще там, где есть основание ожидать больших ошибок, например, в окрестности точек, в которых ошибки максимальны. Одна из проблем реализации алгоритма кластеризации ошибок для данной задачи состоит в том, что мы не можем просто приблизить кластер из ошибок базисной функцией - её веса надо подбирать таким образом, чтобы лучше удовлетворялось уравнение. Однако получившаяся задача всё-таки намного проще исходной, так как требует подбора только трёх параметров для каждого кластера.

Если точка х0 не принадлежит (а; Ь), то уже получается неклассическая задача. Более важной для приложений является возможность построения приближенных решений заведомо переопределенных задач. Простейшим примером является модификация задачи Коши, состоящая в замене равенства у( х0) = у0 на набор условий (обычно это результаты наблюдений) у(х1) = /1,...,у(хр) = / . При указанном подходе к построению аппроксимаций решения изменится лишь второе слагаемое в выражении для функционала ошибки - оно примет вид р 2

у(х%к)-/к\ , при этом погрешности в этих данных мало влияют на конструи-

к=1

руемое нейросетевое решение. Заметим, что некоторые из точек хк могут и не принадлежать промежутку (а; Ь). Если измерения обладают неравной точностью,

р2

то можно дополнительное слагаемое представить в виде ^£к|у(хк)-/к\ , где

к=1

более достоверные наблюдения входят с большими весами 8к.

Более сложной является задача поиска функции Е (х, у) по результатам наблюди

дений. Будем строить её в виде нейронной сети (х, у) = ^ ку(х, у; аі), где в каче-

і=1

стве функций V могут быть выбраны, например, КБР-функции. (В некоторых задачах удобен выбор «эллиптических» экспонент вида

v(х,у;а) = ехр[-а1(х -а4)2 -а2(х- а4)(у -а5) -а3(у -а5)2], с а1 > 0, а^ - 4а1а3 < 0). Возможен и другой выбор функций V. При этом одновременно строится и уравнение, и его решение. Для такой задачи наиболее перспективным представляется использование персептронов, что позволяет приблизить кусочно-линейную функцию, или многочленов с коэффициентами, являющимися персептронами. Если для определения структуры сети использовать многорядный алгоритм, то на каждом этапе построения (х, у) получается линейная система, что не имеет места для самого реше-

ния у(х), поэтому этапы уточнения уравнения и решения следует чередовать.

Возможен и другой подход, при котором сначала по данным наблюдений у(5с1) = Л,...,у(хр) = Лр строится нейросетевая интерполяция у(х). После этого по

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

очередь, аи и а3/ и, во вторую, - коэффициентов к.

Можно сочетать подбор Е (х, у) в виде нейронной сети и какой-либо классический способ численного решения дифференциального уравнения типа метода Рунге-Кутта.

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

3(у) = X|у"(х]) + ?(х])у(х])| + £(|у(хо)-уо|2 +1у(х)-у|). Приведённый выше

]=1

подход без труда позволяет рассматривать случай, когда точки х0 и х1 не принадлежат промежутку (а; Ь). Так же, как и ранее, можно искать решение у(х), принимающее заданные значения в отдельных точках у(5с1) = Л,...,у(хр) = Лр или

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

Более сложной и интересной для приложений является задача определения потенциала q(x) по данным наблюдений. Можно искать потенциал в виде КБР-

функции, например, в виде q(х) = Х ехр[-Ь1;. (х - Ь2/)2]. Коэффициенты этого

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

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

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

Без особых изменений рассматриваются и уравнения, не разрешённые относительно старшей производной. Например, в случае уравнения первого порядка Е(х, у, у') = 0 достаточно первое слагаемое в выражении для функционала

м 2

ошибки 3(у) заменить суммой X Е(х], у(х]), у'(х])) .

]=1

Принципиально новый класс моделей возникает, если рассмотреть многорядный алгоритм, у которого новый ряд селекции определяется равенством

й

ум = ^уц + ]■,/ + ук,1) + (у*,1), где ^- некоторая нелинейная акш-

вационная функция (например сигмоидного типа). Для построения каждой такой модели нужно определить всего четыре коэффициента, входящие линейно, хотя в результате получается весьма сложная нелинейная модель. Ещё более сложные модели возникают, если м> 1,м>рк,^Лк считать не константами, а функциями,

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

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

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

Моделирование динамического объекта

Алгоритмы, представленные в [13], можно применить и в ситуации, когда в описание временной модели входят дифференциальные уравнения.

Самая простая задача подобного рода может быть сформулирована следующим образом. Пусть некоторый объект задан дифференциальным уравнением у'(/) = Е(/,у) и начальным условием у(/0) = у0 и требуется построить его решение с течением времени, тогда можно применить практически ту же процедуру, что и для ограниченного интервала, только множество тестовых точек будет меняться, сдвигаясь со временем. Предложенная выше рандомизация (перегенерация тестовых точек) позволяет надеяться на получение в случае устойчивого решения адекватной модели, однако для неустойчивого решения модель со временем будет всё больше от него отличаться.

Более разумная постановка предполагает замену начального условия измерениями у(/.) = у 1, которые производятся время от времени. К такой задаче можно

применить одну из моделей из [13] с тем изменением, что в минимизируемый функционал войдут, помимо ошибок в заданном числе последних моментов вре-

мени, в которых производились измерения, ещё и невязки в удовлетворении уравнения. Эти невязки могут относиться к тем же моментам времени или к некоторым другим моментам соответствующего временного интервала.

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

Более интересная задача возникает, если мы подбираем само уравнение в процессе наблюдений. Естественно предположить, что Е(/, у) ищется в классе нейросетевых функций, рассмотренных ранее:

({, у) = Хк^ у;а.).

/=1

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

Если мы заменим Е(/, у) какой-либо конструкцией предыдущего раздела, то

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

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

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

Дифференциальные уравнения с частными производными

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

Используемое некоторыми западными авторами сочетание нейросетевой аппроксимации решений краевой задачи с помощью КБР-сети с методом коллокации (уравнение удовлетворяется не во всей области, а в конечном наборе точек) при неизменных базисных функциях [8] обладает существенными недостатками. Во-первых, неизвестно поведение решений между узлами коллокации, во-вторых, порядок и обусловленность получающихся систем могут быть слишком велики.

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

А(и) = g, и = и(х), х ейсЯр, В(и) г= /,

где А(и) - некоторый дифференциальный оператор, т.е. алгебраическое выражение, содержащее частные производные от неизвестной функции и ; В(и) - оператор, позволяющий задать граничные условия); Г - граница области й .

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

М М' 2

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

^ (и) =^|А(и(х_,)) - g (х] )| + £^| В (и (х')) - / (х' )| ,

,=1 ]=1

где х] - пробные точки в области й ; х' - на её границе Г .

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

Так же, как и для обыкновенных дифференциальных уравнений, можно строить модель в виде уравнения в частных производных по данным измерений, определяя коэффициенты этой модели как некоторые нейросетевые функции. В частности, в классе нейросетевых функций можно подбирать g (х), /(х), коэффициенты операторов А (и) и В(и), а также функцию, которая задаёт границу Г .

Обобщение на случай систем уравнений не вызывает особых трудностей.

Опишем общую постановку. Пусть задан набор условий К (ии u2,..., иг ) „ = 0} ,

I 5 )д=1

где й5 - некоторое множество, на котором соответствующее условие должно быть

выполнено; и5 - неизвестные функции. Операторы Ад могут задавать уравнения, а

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

N

ронной сети: и (х) = ^ с1 (х; а,. 5), 5 = 1...Г , подбирая веса - параметры аг- 5 и

С - путём минимизации функционала, составленного из слагаемых вида

М5 2

^ Ач (и1, и2,..., иг )(х ] ) , каждое из которых входит в сумму с некоторым весо-

]=1 ’ 5

вым множителем 8 > 0, обычно фиксируемым заранее или пересчитываемым

время от времени по указанной ранее процедуре.

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

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

Данный генетический подход легко адаптировать к распределённым вычислениям [13]. Наиболее естественный вариант возникает, если каждый коллектив сетей обучать в своём узле. При этом пересылаться между узлами должны только отдельные сети (набор весов и информация о структуре) или части сетей, предназначенные для скрещивания. Кроме того, пересылаться может некоторая информация, например значения оптимизируемых функционалов. Если узлов мало, тогда в одном узле могут обучаться несколько популяций, между ними разумно реализовать более интенсивное скрещивание, чем между популяциями из разных узлов. Если узлов много, то на каждом из них можно размещать часть популяции или даже отдельные элементы. Это не слишком сильно скажется на скорости вычислений, в особенности если сети большие, так как наиболее трудоёмкая операция - обучение сетей осуществляется локально.

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

N

1. Обучаем К наборов нейросетевых функций вида и5 (х) = Х (х; ),

в

2

. В этом

минимизируя функционал 3 (и1, и2,..., иг) = X5. X \А. (и^ иг )(х ]. )|

.=1 ]=1

случае можно взять числа N, 5 = 1...Г не слишком большими.

2. Для каждого набора вычисляем ошибки 2, = А (и1,и2,...,иг)(х,), при этом

в

набор тестовых точек х, из й = ^ й можно поменять по сравнению с предыду-

.=1

щим пунктом, главное условие - он должен быть достаточно представительным. Если значение А не определено в некоторой точке х,, то полагаем 2,. = 0 .

3. Проводим кластеризацию точек {(х ,22j 2,...,2jв)}.

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

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

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

К рассматриваемой задаче можно применить некоторый вариант многорядного алгоритма МГУА. Если рассматривается система уравнений, то на каждом этапе обучения часть уравнений может быть использована для подбора весов обучаемой нейронной сети, а часть - для выбора наилучших функций. Разумно эти части

1=1

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

1. Для каждого условия А (и1, и2,..., иг) = 0 выбираем некоторое множество

наборов базисных функций и1,и2,...,иг.

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

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

пересекающихся (близких) с областью йр . Для выбора можно использовать и

несколько таких функционалов.

4. Рассматриваем линейные комбинации получившихся функций и повторяем предыдущие шаги, подбирая веса сетей по одним функционалам, а выбор осуществляя по другим.

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

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

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

Кратко отметим задачи, на которых проверялись описанные подходы.

Через ир обозначим множество решений и двумерного уравнения Лапласа, принимающих значения /к в точках некоторого конечного множества Р (задание подобных условий - измерений - может сочетаться с указанием краевых условий на некоторых подмножествах точек границы дй). Тестовое решение и = ху восстанавливалось в круге с погрешностью е = 0.1 с помощью гауссовой КБР-сети из 30 функций по условию удовлетворения уравнению Лапласа в полукруге и наблюдениям в 3 случайных точках полукруга и 7 точках другого полукруга, известных с ошибкой е = 0.1. Граничные условия никак не задаются!

МР 2

функционалов вида ^8др ^ Ад (м1, и2,..., иг )(хід) , где Qp - номера областей,

?Ебр ’ І=1 ’ 4

Некоторые модельные задачи

Вместо оператора Лапласа в круге можно рассмотреть уравнение Шрёдингера с подлежащим определению потенциалом. Оператор Лапласа без труда можно поменять на эллиптический оператор A с разрывными коэффициентами в некоторой области Qc Rp. Эти коэффициенты также могут быть неизвестными функциями, подлежащими определению. Аналогично решается и задача с неизвестной границей раздела. Предложенная методика позволяет работать и с эволюционными уравнениями. Задание начальных и краевых условий позволяет формально искать решение задачи «назад», однако такая постановка делает задачу некорректной. Наш подход позволяет получить устойчивое нейросетевое решение этой задачи, которое можно рассматривать как её регуляризацию.

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Васильев А.Н., Тархов Д.А. Нейросетевой подход к решению некоторых неклассических задач математической физики // Труды VII Всероссийской научно-технической конференции «Нейроинформатика-2005», Ч. 2. М.: изд-во МИФИ. 2005. С.52-60.

2. Самарский А.А., Вабищевич П.Н. Численные методы решения обратных задач математической физики. М.: Едиториал УРСС, 2004. 480 с.

3. Troitskii V.A. Optimization Approaches to Some Observation Problems for PDE, www.inftech.webservis.ru

4. Васильев А.Н. Новые нейросетевые подходы к решению краевых задач в областях, допускающих декомпозицию // Нейрокомпьютеры: разработка, применение. М.: Радиотехника, 2006. №1-2.

5. Тархов Д.А. Нетрадиционные генетические алгоритмы декомпозиции и распределения при решении задач математической физики с помощью нейронных сетей // Нейрокомпьютеры: разработка, применение. М.: Радиотехника, 2006. №1-2.

6. Ивахненко А.Г., Юрачковский Ю.П. Моделирование сложных систем по экспериментальным данным. М.: Радио и связь, 1987. 120 с.

7. Растригин Л.А., Эренштейн Р.Х. Метод коллективного распознавания. М.: Энергоиз-дат, 1981. 80 с.

8. Fornberg Bengt, Larsson Elisabeth A Numerical Study of some Radial Basis Function based Solution Methods for Elliptic PDEs // Computers and Mathematics with Applications, 46 (2003), pp.891-902.

9. Васильев А.Н., Тархов Д.А. Применение нейронных сетей к неклассическим задачам математической физики // Доклады SCM'2003. Т. 1, 2003. С.337-340.

10. Васильев А.Н., Тархов Д.А. Нейросетевые подходы к решению краевых задач в многомерных составных областях // Известия ТРТУ. Таганрог: Изд-во ТРТУ, 2004. №9. С.80-89.

11. Васильев А.Н., Тархов Д.А. Применение искусственных нейронных сетей к моделированию многокомпонентных систем со свободной границей // Известия ТРТУ. Таганрог: Изд-во ТРТУ, 2004. №9. С. 89-100.

12. Васильев А., Тархов Д., Гущин Г. Моделирование калибратора переменного давления с помощью системы нейронных сетей // Доклады SCM2004. Т.1. 2004. С.304-308.

13. Тархов Д.А. Нейронные сети: модели и алгоритмы. М.: Радиотехника. 2005. 256 с.

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