WWW.DISSERS.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

   Добро пожаловать!

Pages:     || 2 | 3 | 4 |
Электронный журнал «ИССЛЕДОВАНО В РОССИИ» 2042 http://zhurnal.ape.relarn.ru/articles/2003/168.pdf Метод нечеткой линеаризации для численного решения алгебраических и дифференциальных уравнений Евдокимов А.В. (eval@applmech.mipt.ru ) Московский Физико-Технический Институт (Государственный университет) 1. Постановка задачи Нечеткие методы применяются при математических расчетах в слабо формализуемых предметных областях, когда нельзя пользоваться стохастическими методами (собранными, например, в [9]) ввиду неприменимости понятия случайной функции и отсутствия информации о распределениях вероятностей параметров. Нечеткие числа могут быть заданы в различных формах (иметь различные функции принадлежности). В частности, к ним относятся LR-числа [3], гауссовские числа (нормально распределенные случайные величины с заданной дисперсией), числа, представленные в виде набора интервалов [2] и т. д.

Для каждой из этих форм существует несколько вариантов алгебры, которые напрямую используются в численных методах решения алгебраических уравнений [2,3,10] и задач оптимизации [7]; при этом часто даже не требуется модификация алгоритма, предназначенного для решения данной задачи в вещественных числах. Однако существующие алгебры либо определяют функцию принадлежности результата операции на максимально широком носителе (например, стандартный интервальный анализ), что обеспечивает математическую строгость (но при решении практических задач дает завышенную степень неопределенности) [1], либо необоснованно уменьшают неопределенность результата искусственными приемами. К алгебраическим подходам второго типа, которые более применимы на практике, но могут давать некорректные результаты, относятся многочисленные модификации интервальной алгебры («нестандартные вычитание и деление», мнимые интервалы, квазилинейное пространство и т. п.) [1,2,4,6], а также приближенная арифметика LR-чисел [3]. Найти удовлетворительный компромисс между строгостью, практичностью и универсальностью нечетких расчетов пока удается только в простых частных случаях — в частности, в безытерационных методах решения линейных алгебраических уравнений с некоторыми ограничениями (например, интервальный метод прогонки) [5,6]. Несмотря на то, что численные методы для дифференциальных уравнений выглядят как алгебраические соотношения, задачу использования при их расчете какой-либо алгебры нечетких чисел (без модификации четкого численного метода) пока нельзя назвать решенной [8].

Поэтому сейчас более перспективным считается альтернативное направление развития нечеткой математики (уже сугубо численное), в котором функции принадлежности нечетких результатов (как правило, разложенные на интервалы) восстанавливаются на основе многократных решений четких задач c комбинированием значений параметров [11,13]. Этот подход идейно близок численном методам типа Монте-Карло [9] для решения стохастических уравнений, обладает по сравнению с ними более широкой областью применения, но требует еще более значительных вычислительных ресурсов. Он предполагает одновременное хранение и обработку очень большого числа «копий» переменных (порядка MK, где K – число нечетких параметров); попытки уменьшить это число (за счет M, с последующей интерполяцией) математически корректны лишь при малых K. Несомненным преимуществом таких методов является лишь выгодность применения параллельных вычислений.

В обоих указанных подходах либо используется фиксированное представление нечетких чисел, либо произвольное представление с той или иной степенью точности аппроксимируется набором интервалов. В то же время, при внедрении нечеткого анализа в Электронный журнал «ИССЛЕДОВАНО В РОССИИ» 2043 http://zhurnal.ape.relarn.ru/articles/2003/168.pdf программные пакеты моделирования крайне желательным свойством является независимость расчетов от конкретного способа формализации нечеткости (выбор которого зависит от задачи, неизвестной при разработке пакета). Поэтому актуальной является задача такой формулировки методов решения дифференциальных и нелинейных алгебраических уравнений, которая бы не зависела от формы нечетких чисел.

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

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

Нестандартные же алгебры (например, алгебра мнимых интервалов [1]), напротив, независимые нечеткие числа обрабатывают как зависимые.

Таблица 1. Сравнение предлагаемого метода нечеткой линеаризации с существующими подходами к численному решению нечетких уравнений Подход Сравнение метода нечеткой линеаризации* с подходом Общее Преимущества Недостатки I. Сведение Сопоставимая 1. Отсутствие а) привязки к 1. Слабая к системе степень классу задач, б) ограничений теоретическая четких задач неопределенности на число нечетких база.

результатов параметров, в) 2. Более необходимости приближенное аналитических выкладок и описание интервального нелинейностей представления. 2. Высокая производительность II. На основе 1. Высокая 1. Расчет не максимально Отсутствие строгой алгебры универсальность. возможной, а «характерной» гарантированной 2. Использование неопределенности. принадлежности стандартных 2. Возможность деления на к множеству– («четких») число, интервальное результату численных представление которого методов содержит ноль III. На основе —//—. 1. Автоматическое Большие «исскуственной» Уменьшение различение зависимых и затраты памяти алгебры неопределенности независимых нечетких и машинного учетом операций с чисел. 2. Использование времени зависимыми любого представления числами чисел. 3. см. II–Таким образом, целью данной работы является построение приближенного метода проведения алгебраических операций над нечеткими числами с учетом зависимости чиселоперандов, применимого (в сочетании с произвольными четкими численными методами) для решения нечетких алгебраических и дифференциальных задач. Метод ориентирован на преодоление проблемы экспоненциального роста вычислительных затрат с числом нечетких * Некоторые преимущества относятся только к прямому методу линеаризации.

Электронный журнал «ИССЛЕДОВАНО В РОССИИ» 2044 http://zhurnal.ape.relarn.ru/articles/2003/168.pdf параметров, которая характерна для современных неалгебраических методов. Метод имеет сходную формулировку и дает близкие результаты для различных форм нечетких чисел. На примере гауссовских и интервальных чисел эффективность метода в работе показывается в применении к нечеткой алгебраической модели сердца и к нескольким дифференциальным задачам из различных областей.

2. Метод нечеткой линеаризации для расчета нечетких уравнений 2.1. Метод линеаризации как метод учета зависимостей чисел Идея преодоления проблемы операций над зависимыми нечеткими числами состоит в том, что число должно хранить не только свое текущее значение (включающее некоторым образом формализованную погрешность), но и информацию о том, из каких исходных данных и как это число было получено. Это дополнительно дает очень полезную в приложениях возможность анализа результатов численных экспериментов на предмет того, каким образом сказались на них заданные исходные данные. Однако буквальная реализация указанной идеи приводит к неадекватным затратам памяти и времени расчетов: фактически, нечеткое число превращается из значения в формулу зависимости значения от исходных данных; причем с каждым параметром этой формулы при любой арифметической операции должны производиться сложные вычисления.

В целях экономии ресурсов любое нечеткое число (независимо от способа его формализации) предлагается представлять в виде линейной комбинации по нечетким числам – исходным данным, что выражается формулой Ki xi = x0i + x0i +, (1) cij j cij jk k j{ j}i k=где x0i — часть числа xi, не зависящая от исходных нечетких чисел j. В числе (xi) должны храниться лишь ссылки на эти числа (или их идентификаторы j, в зависимости от языка реализации), и скалярные коэффициенты cij при них. Ниже такая конструкция называется «линеаризованной историей» числа. В отличие от отмеченного выше полного варианта хранения информации об истории, текущее значение нечеткого числа (формализованное одним из указанных во введении способов) при использовании линеаризованной истории не теряет смысла и также должно храниться в числе.

Алгоритм арифметической операции над числами x1 и x2 (i=1,2) таков:

1. Определяется набор исходных данных {j}, которые должны входить в линеаризованную историю результата операции. В простейшем случае это делается объединением множеств {j}1 и {j}2, хотя число элементов множества {j} может быть уменьшено (см.

2.3).

2. Для каждого j{j}1{j}2 рассчитываются коэффициенты линейной комбинации (для остальных j из {j}1 или {j}2 расчет тривиален). В случае сложения/вычитания это можно сделать точно:

x = x1 ± x2 c± = c1 j ± c2 j, (2а) j в случае умножения/деления — лишь приближенно (заменяя по очереди каждый из нечетких операндов xi на его среднее скалярное значение ai):

x = x1x2 c* q c1 ja2 + (1- q)c2 ja1, (2б) j где вес q является одинаковым для всех j, в простейшем случае равен 1/2 и может зависеть от всех произведений cija3–i. Выбор весовой функции q влияет на погрешность метода. В случае деления можно использовать дополнительное (по сравнению с умножением) приближение 1/xx/a2 (которое часто встречается в нечеткой алгебре):

x = x1/x2 c c* a2, (2в) j j Электронный журнал «ИССЛЕДОВАНО В РОССИИ» 2045 http://zhurnal.ape.relarn.ru/articles/2003/168.pdf однако вместо этого рекомендуется рассматривать 1/x как элементарную функцию (см.

формулу (6)), вследствие чего x = x1/x2 c - c* a2. (2в) j j 3. Вычисляется величина поправки к погрешности, обусловленной наличием в линеаризованных историях x1 и x2 одних и тех же чисел j. Данный шаг алгоритма является единственным, который требует проведения различных аналитических выкладок для разных форм нечетких чисел. В случае гауссовских чисел эти выкладки (см. ниже) дают для сложения/вычитания 2 = ±2, s+ = c1 jc2 j2 (3а) s+ j j j j для умножения — 2 2 = 2, s* = (c1 jc2 j) (a ) (3б) s* j j j j j а для деления — 2 = - (3в) s*, j a2 j где 2j — дисперсии исходных нечетких чисел, 2 — (аддитивная) поправка к дисперсии 2, вычисляемой на шаге 4.

4. По правилам соответствующей нечеткой алгебры проводится обычная арифметическая операция (с числами x1 и x2 как с независимыми). Например, для гауссовского числа на этом шаге вычисляется как среднее значение a, так и его дисперсия 2; для сложения/вычитания независимых чисел x1 и x2 имеем 2 = 12 + 22, (4а) для умножения/деления — 2 = a2(12/a12 + 22/a22). (4б) Итоговая погрешность (в данном случае — дисперсия) рассчитывается с учетом найденной на шаге 3 поправки.

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

Для доказательства формул коррекции погрешности (3) обозначим н2 дисперсию, получаемую в предположении о независимости операндов, а Sн — слагаемые, соответствующие исходным числам m, входящим только в один из операндов: m{j}, m{j}1{j}2. Тогда в случае сложения/вычитания 2 2 + 2 = (c ) + Sн, н j j j 2 2 = (c1 j ) + (c2 j ) + Sн, следовательно, так как cj = c1j ± c2j, н j j j j 2 2 2 = [(c1 j ± c2 j) - c1 j - c2 j]2 = ±2 c2 j2, что и требовалось доказать.

j c1 j j j j Доказательство в случае умножения базируется на формуле дисперсии произведения независимых (2 = a2(12/a12 + 22/a22)) и на формуле дисперсии функции ((x2) = |2x|(x)):

2 = (c1 jc2 j(2)) + Sн = 4 (c1 jc2 j ) + Sн, j j j j j Электронный журнал «ИССЛЕДОВАНО В РОССИИ» 2046 http://zhurnal.ape.relarn.ru/articles/2003/168.pdf 2 = (c1 jc2 j )+ Sн = (c1 jc2 j ) (2 2 + 2 2)+ Sн, н 2 j j j j j j j j j j 2 2 = 2 - 2 = 4 (c1 jc2 j ) - 2 (c1 jc2 j2) 2 2 2 (c1 jc2 ja ).

н j j j j j j j j j j Формула для деления (3в) не следует из формулы для умножения (хотя они отличаются только множителем –a24). Ее вывод здесь не приводится по причине своей громоздкости.

2.2. Прямой вариант метода нечеткой линеаризации Следует заметить, что в стандартной нечеткой алгебре (гауссовских и большинства других нечетких чисел) отсутствует свойство дистрибутивности погрешности (ширины интервала и т. п.). В частности, если x = a·(b+c), а y = a·b+a·c, то алгебра независимых гауссовских чисел (см. формулы 4) дает (x2–y2) = 2·b·c·a2. Поправка из формулы (3а), учитывающая, что оба числа a в формуле для y — это одно и то же число, возвращает свойство дистрибутивности погрешности. Однако это верно только в том случае, если нечеткие числа, содержащие в своей линеаризованной истории одно и то же исходное нечеткое число, входят в формулы аддитивно (не перемножаясь). В противном случае даже предлагаемая поправка к погрешности (см. формулу 3б) не обеспечивает свойство дистрибутивности. Точнее, это свойство можно обеспечить за счет выбора весового коэффициента q, но далеко не всегда и лишь ценой весьма ресурсоемких расчетов.

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

2(x1 + x2 ) = (5а) c22, j j j 2 2 2 2(x1x2) = (c1 j1c2 j2 ) 2( )+ x012 + x021, где (5б) j1 j2 j1 j2( )= a2 2 + a2 2 для j1j2, j1 j2 j2 j1 j1 j2( )= 4a22 для j1=j2=j.

Pages:     || 2 | 3 | 4 |



© 2011 www.dissers.ru - «Бесплатная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.