Научная статья на тему 'Итерационный метод решения систем линейных уравнений с использованием q-градиента'

Итерационный метод решения систем линейных уравнений с использованием q-градиента Текст научной статьи по специальности «Математика»

CC BY
630
76
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
СИСТЕМА ЛИНЕЙНЫХ УРАВНЕНИЙ / ЦЕЛЕВАЯ ФУНКЦИЯ / ГРАДИЕНТНЫЙ МЕТОД / ИТЕРАЦИОННЫЙ МЕТОД / МОДЕЛИРОВАНИЕ / АЛГОРИТМ / ЭКСТРЕМУМ ФУНКЦИИ / Q-ПРОИЗВОДНАЯ / ОТНОСИТЕЛЬНАЯ ПОГРЕШНОСТЬ / НОРМА ВЕКТОРА / НЕВЯЗКА / ОБУСЛОВЛЕННОСТЬ ЗАДАЧИ / SYSTEM OF LINEAR EQUATIONS / THE OBJECTIVE FUNCTION / THE GRADIENT METHOD / ITERATIVE METHOD / MODELING / ALGORITHM / FUNCTION EXTREMUM / Q-DERIVATIVE / RELATIVE ERROR / NORM OF THE VECTOR / THE CONDITIONALITY OF THE PROBLEM

Аннотация научной статьи по математике, автор научной работы — Есаулов В. А., Гринченков Д. В., Мохов В. А.

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

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

An iterative method for solving systems of linear equations using the q-gradient

The purpose and objectives of this work is to develop methods of iterative methods for solving systems of linear equations. Achieving the goals and objectives achieved by the development of an iterative method using the apparatus q-differentiation. With the software package Matlab Computational experiments, which resulted in the performance of the proposed method is confirmed.

Текст научной работы на тему «Итерационный метод решения систем линейных уравнений с использованием q-градиента»

Итерационный метод решения систем линейных уравнений с использованием д-градиента

В.А. Есаулов, Д.В.Гринченков, В.А. Мохов

Южно-Российский государственный политехнический университет (НПИ) имени М.И.

Платова

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

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

Численное решение систем линейных алгебраических уравнений (СЛАУ) - одна из наиболее часто встречающихся задач в научно-технических исследованиях, экономике, статистике [1, 2]. Все используемые на практике методы решения СЛАУ можно разделить на прямые и итерационные [3]. Известно, что многие прямые методы решения СЛАУ, основанные на концепции абсолютной точности, при наличии погрешностей не могут быть положены в основу универсальных вычислительных программ для ЭВМ в силу неустойчивости решений к погрешностям.

Преимуществом итерационных методов является удобное применение в современной вычислительной технике. Они позволяют получить решение с заранее заданной точностью [3-5].

Введение

J

Построение итерационного метода решения СЛАУ с использованием q-

градиента

Общая схема организации итерационного процесса решения СЛАУ Ax = b имеет вид [1, 4]:

= ^(AXk -b), (1)

где Xk, Xk+j -приближения решения СЛАУ на k-й и (к+1)-й итерациях; тк - шаг итерационного процесса.

В ряде итерационных методов решение СЛАУ рассматривают как

задачу минимизации функции невязки [4, 5]:

/ \2 m ( n '

f (X) = ||AX - b||2 = £ £ajX} - Ь ^ min , (2)

i=i vj = J

где X - вектор переменных целевой функции.

В итерационной постановке (3) может решаться с применением градиентных методов, имеющих вид:

Xk+! = Xk -TkVf (Xk), (3)

Xk, Xk+1 - значения аргумента функции (2) на k-й и (k+1) -й итерациях; Рассмотрим итерационный процесс решения СЛАУ с применением q-производной [6, 7]. Использование q-производных при расчете антиградиента в методе наискорейшего спуска [6, 8] также дает возможность повышения качества поиска оптимума функции.

Определение q-производной имеет следующий вид [6]:

f (qx) - f (x)

DJ (x) =

, x * 0

qx - x df (0)

dx df ( x)

x = 0 , (4)

q = 1

dx

Используя в (3) q-градиент с учетом (4) получим следующий итерационный процесс:

J

^+1 = ^(\Хк - 2ATb)

(5)

где qk , 1 < qk < 2 - порядок q-градиента на к-й итерации;

А^ =((2Ат А + (1 + qk - 22)й1а%(АтА))) - главная матрица СЛАУ на к-й итерации.

Из (5) видно, что при фиксированном значении qk шаг тк может определяться вариационными методами решения СЛАУ [4, 5]. Так, для метода минимальных невязок, величина тк рассчитается как

(гк, Ла )

■ k' qt k

КМ

(6)

Где rk = 2ATb - A%Xk - величина невязки.

В случае использования метода наискорейшего спуска для тк имеем:

(7)

Клл)'

Рассмотрим варианты расчета оптимальной величины qk. Общая формула оценки величины qk может быть сформулирована через оценку минимума (1) на k-ой итерации:

f(Хк+1) = ||AXk+1 -b||2 ^min, (8)

С учетом представлений (6), (7), задачу (8) можно переформулировать как задачу поиска qk следующим образом:

f (xk+1) =

xk +

((k , Aq/k)

4k_ Aq/k

2 'k

- b

^ min , 1 < qk < 2,

(9)

С учетом (5), для формулы (7) оценки тк задача (8) примет вид

f ( Xk+1) =

2

xk +

((k ( Aq/k )

- b

qk k > у

^ min , 1 < qk < 2,

(10)

2

r

2

2

r

Поиск величины qk, как видно из (9), (10) представляет собой одномерную нелинейную задачу, может усложнить реализацию (5). В этой связи интерес представляет поиск способов упрощенного расчета qk, минимально снижающих точность расчета решения СЛАУ.

При поиске эвристики, адекватно описывающей расчет qk, будем исходить из определения q-производной (4). Из нее видно, что q показывает, во сколько раз отличаются начальная и конечная точки, в которых вычисляются значения функций.

Рассмотрим векторы Хк+1 и Хк. Вектор 4 = Хк+1 - Хк можно интерпретировать как невязку между приближениями, характеризующую сходимость процесса (1). С учетом 4 связь между координатами Хк+1 и Хк можно представить следующим образом:

Хк+1 = Хк +4 = (/+ок )Хк (11)

где Ок - матрица перехода, связывающая 4 и Хк;

I - единичная матрица.

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

Х' - Х'

0к = ЬХ^ (12)

где Х'к и Хкк+1 - '-е координаты векторов Хк и Хк+1.

Если считать, что компоненты Х'к и Х'к+1 достаточно близки по своему

значению, (23) можно аппроксимировать как

Х ' - Х ' Х ' - Х ' Х ' - Х '

ок = л к+1 лк к+1 лк к+1 лк (13)

Хк Хк+1 Х

Хк+, + Х'к

где Х =—— - среднее значение.

Выражение (12) можно определить как относительную погрешность координаты Х'к+1 относительно Х'к. С учетом геометрического смысла (4) элемент можно интерпретировать как порядок частной q-производной функции (2) по переменной xi. Таким образом, из анализа (12), (13) можно сделать вывод о том, что величину порядка qk можно оценить по величине погрешности между векторами Хки Хк.

Если рассмотреть величину порядка q-градиента в смысле (12), (13), то (5) можно записать следующим образом:

Хк+1 = Хк-Тк((2АтА + Ок • diag(АтА))хк -2АтЬ) (14)

Упростим (14), преобразовав элементы матрицы Ок в одно значение. Для этого оценим параметр порядка q-градиента qk как погрешность для векторов Хк+1 и Хк следующим образом:

1 , 1 , \Хк+1 - ХЛ /1 СЧ

qk =1=1 + и „ и (15)

IIх к+11

Формула (15) описывает степень близости Хк и Хкпри условии, что

Хкна к-й итерации можно рассматривать как точку минимума (1).

От выбора нормы || для оценки qk в (15) зависит точность решения в

итерационном процессе (5). Наиболее очевидным решением представляется выбор норм || || как наиболее часто встречающихся в практике

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

оценивания параметров матриц и характеристик итерационных процессов

[5].

Вычислительный эксперимент

Для сравнительного анализа степени эффективности с методикой (5) и ее вариациями (8)-(15) выбирались методы Зейделя, Якоби, а также минимальной невязки и наискорейшего спуска [9]. Максимальное число итераций для каждого из методов задавалось как 4000. Критерием останова

итерационных процессов являлось отношение ||Хк+1 - Хк|| 2 <8 , где 8 -

допустимая погрешность. Величина погрешности задавалась как 8 = 10-7.

В качестве тестовой СЛАУ выбиралась задача Филипса [10], известная своей плохой обусловленностью. Порядок СЛАУ составил 100. При этом в качестве начального приближения задавался нулевой вектор.

Данные о величине погрешности решения СЛАУ при использовании стандартных методов и (5) с расчетом порядка q-градиента из (9), из (10) приведены в табл. 1.

Таблица № 1.

. Сводная таблица погрешностей решения задачи Филипса

Численные методы решения СЛАУ Погрешность, %

Методы Зейделя и Якоби -

Метод минимальной невязки 1.79

Метод минимальной невязки для (3) 0.63

Метод наискорейшего спуска -

Метод наискорейшего спуска для (3) 0.646

Методика (5), определение qk из (9) 0.614

Методика (5), определение qk из (10) 0.5133

Оценки погрешности решения задачи Филипса при использовании модифицированных методик определения порядка q-градиента приведены в табл. 2.

Таблица № 2

Погрешности решения задачи Филипса при использовании упрощенных

методик расчета qk

Методы решения СЛАУ Погрешность, %

Методика (13), (14) с оценкой шага тк по (6) 0.5710

Методика (13), (14) с оценкой шага тк по (7) 0.6625

Методика (5) с оценкой шага тк по (6), оценка qk по (15)

Норма ||-| для оценки qk 0.5786

Норма | 2 для оценки qk 0.5725

Норма | для оценки q, ад ±К 0.5730

Методика (5) с оценкой шага тк по (7), оценка qk по (15)

Норма | для оценки qk 0.6405

Норма • 2 для оценки qk 0.6339

Норма ||-| для оценки q, ад ±и 0.6267

Знак «-» в табл. 1, 2 означает, что указанные методы расходятся. Из сравнительного анализа погрешностей в табл. 1, 2 вытекает, что наименьшую величину ошибки для решения задачи Филипса дает методика (5) с использованием (10). Вместе с тем, модификации (13) - (15) оценки порядка градиента дают сопоставимую величину ошибки при более простом способе расчета qk.

Заключение

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

Литература

1. Шарый С.П. Курс вычислительных методов. Учеб. пособие. -Новосибирск: Новосиб. гос. ун-т. , 2014 г. , 279 с.

2. Целигоров Н.А., Целигорова Е.Н., Мафура Г.В. Математические модели неопределённостей систем управления и методы, используемые для их исследования // Инженерный вестник Дона, 2012, № 4(часть 2) URL: ivdon.ru/ru/magazine/archive/ n4p2y2012/1340.

3. Бегляров В.В., Берёза А.Н. Гибридный эволюционный алгоритм решения систем линейных алгебраических уравнений, описывающих электрические цепи // Инженерный вестник Дона, 2013, №1 URL: ivdon.ru/ru/magazine/archive/ n1y2013/1540.

4. Хейгеман Л. Прикладные итерационные методы: пер. с англ. / Л. Хейгеман, Д. Янг. - М.: Мир, 1986. - 446 с.

5. Голуб Дж. Матричные вычисления: пер. с англ. / Дж. Голуб, Ч. Ван Лоун. - М.: Мир, 1999. - 548 с.

6. A. C. Soterroni, R. L. Galski and F. M. Ramos, "The q-gradient vector for unconstrained continuous optimization problem" // Operations Research Proceddings 2010, Springer-Verlag Berlin Heidelberg, pp. 365-370 (2011).

7. Ernst, T.: A method for q-calculus. J. Nonlinear Math. Phys. 10, рр. 487-525 (2003).

8. Ubaid M. Al-Saggaf, Muhammad Moinuddin, Muhammad Arif, Azzedine Zerguine. Theq-Least Mean Squares algorithm // Signal Processing 111 (2015), pp. 50-60.

9. Горбаченко В. И. Вычислительная линейная алгебра с примерами на MATLAB. — СПб.: БХВ-Петербург, 2011. — 320 с.

10. Phillips D.L. A technique for the numerical solution of integral equation of the first kind // J.ACM. - 1962. - № 9. - pp. 84-97.

References

1. Sharyj S.P. Kurs vychislitel'nyh metodov. Ucheb. Posobie [The course of computing methods. Tutorial]. Novosibirsk: Novosib. gos. un-t., 2014 g., 279 p.

2. Celigorov N.A., Celigorova E.N., Mafura G.V. Inzenernyj vestnik Dona (Rus), 2012, № 4(part 2) URL: ivdon.ru/ru/magazine/archive/n4p2y2012/1340.

3. Begljarov V.V., Berjoza A.N. Inzenernyj vestnik Dona (Rus), 2013, №1 URL: ivdon.ru/ru/magazine/archive/ n1y2013/1540.

4. Hageman L. Prikladnye iteratsionnye metody [Applied Iterative Methods]: per. s angl. L. Hageman, D. Young. M.: Mir, 1986. 446 p.

5. Golub H. Matrichnye vychisleniya [Matrix Computations]: per. s angl. H. Golub, Ch. Van Loun. M.: Mir, 1999. 548 p.

6. A. C. Soterroni, R. L. Galski and F. M. Ramos, "The q-gradient vector for unconstrained continuous optimization problem". Operations Research Proceddings 2010, Springer-Verlag Berlin Heidelberg, pp. 365-370 (2011).

7. Ernst, T.: A method for q-calculus. J. Nonlinear Math. Phys. 10, рр. 487525 (2003).

8. Ubaid M. Al-Saggaf, Muhammad Moinuddin, Muhammad Arif, Azzedine Zerguine. Theq-Least Mean Squares algorithm. Signal Processing 111 (2015), pp. 50-60

9. Gorbachenko V. I. Vychislitel'naya lineynaya algebra s primerami na MATLAB [Numerical Linear Algebra with examples in MATLAB]. SPb: BKhV-Peterburg, 2011. 320 p.

10. Phillips D.L. A technique for the numerical solution of integral equation of the first kind. J.ACM. 1962. № 9. pp. 84-97.

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