Научная статья на тему 'Релаксационные методы жесткой оптимизации'

Релаксационные методы жесткой оптимизации Текст научной статьи по специальности «Математика»

CC BY
235
19
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МЕТОДЫ ПОСЛЕДОВАТЕЛЬНОЙ РЕЛАКСАЦИ / SEQUENCE RELAXATION METHODS / НЕВЫПУКЛЫЕ ЗАДАЧИ / NON-CONVEX OPTIMIZATION PROBLEMS / ЖЕСТКИЕ ФУНКЦИОНАЛЫ / STIFF FUNCTIONALS

Аннотация научной статьи по математике, автор научной работы — Черноруцкий Игорь Георгиевич

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

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

SEQUENCE RELAXATION METHODS FOR STIFF OPTIMIZATION PROBLEMS

New sequence relaxation methods are discussed. In contrast to the classical relaxation procedures, the methods retain the convergence and efficiency for non-convex nonlinear programming problems under conditions of high stiffness of target functionals.

Текст научной работы на тему «Релаксационные методы жесткой оптимизации»

УДК 681.3.06

И.Г. Черноруцкий

релаксационные методы жесткой оптимизации

I.G. Chernorutskiy

sequence relaxation methods for stiff optimization

problems

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

МЕТОДЫ ПОСЛЕДОВАТЕЛЬНОЙ РЕЛАКСАЦИИ; НЕВЫПУКЛЫЕ ЗАДАЧИ; ЖЕСТКИЕ

функционалы.

New sequence relaxation methods are discussed. In contrast to the classical relaxation procedures, the methods retain the convergence and efficiency for non-convex nonlinear programming problems under conditions of high stiffness of target functionals.

SEQUENCE RELAXATION METHODS; NON-CONVEX OPTIMIZATION PROBLEMS; STIFF FUNCTIONALS.

Решается задача безусловной минимизации вида

J(x) ^ min, x = (x:,x2, ..., xn) e Rn,

x

J e C2(Rn)

с жестким в смысле определения [1] целевым функционалом. Основные проблемы, связанные с минимизацией жестких функционалов, изложены в [1—8].

Для построения минимизирующей

последовательности {x'}, lim J(xi) e .

i

e Arg min J(x) рассматривается класс ме-

x

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

Например, в соответствии с классическим методом циклического покоординатного спуска Гаусса—Зейделя (ЦПС), использующим естественную систему координат, переход от вектора x i к вектору x'+1 происходит следующим образом: для l e [1: n] компонент x'+1 вектора x'+1 определяется как

xi+1 e Arg min JW+1, x2+1, ...,

x,_1 , x, xi+1, ... , xn ).

В общем случае при использовании системы координат u1, u2, ..., un вектор x'+1 получается из вектора x i следующим образом:

x''1 e Arg min J(x''1 -1 + hul), l = 1,..., n;

heR1

-»ЛО _ ,n _ „''+1

Л — Л ^ Л — Л ■

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

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

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

Этот вывод в известной степени подтверждается следующей теоремой.

Теорема 1. Пусть А — симметричная матрица п х п; [и'} — ортонормированные собственные векторы; X. — собственные зна-

чения. Тогда при X. ф X^ с точностью до величин второго порядка малости имеем

(и' + ¿и', и1) = (X' - Х)— 1{^А)и', и1), (1)

где ¿А — возмущение матрицы А, ¿и' — соответствующее возмущение вектора и..

Доказательство. Отбрасывая величины второго порядка малости, из равенства Аи' = Х'и' получим:

(¿А) и' + ^¿и' = ХЯи' + ¿Х.и'.

Отсюда, умножая обе части равенства скалярно на и>, имеем

((¿А)и', и) + (Айи', и1) =

= (ХЯи', и■!) + (¿Хм', и1).

В силу равенств (и, и) = 0, (^¿и', и1) = = Х^и', и1) имеем

(X, — Хр^и', и1) = ((¿А)и', и1),

откуда следует (1). Теорема доказана.

Пусть теперь

п-г п

М1 =^ а1и', м2 = ^ а и

' = 1 1=п-г + 1

есть два линейных многообразия, порожденных непересекающимися системами собственных векторов [и'', ' е [1: п — г]}, [и1, 1 е [п — г + 1: п]} матрицы А. Если соответствующие множества собственных значений [Х', ' е [1: п — г]}, [Х, 1 е [п — г + 1: п]} строго разделены в смысле |Х;| >> |Х.|, то из (1) следует (и' + ¿и', и1) = 0 при достаточно малой величине ¡¿АЦ/^]. Это означает, что все собственные векторы под действием возмущения ¿А изменяются только в пределах своих линейных многообразий, сохраняя с высокой точностью свойство ортогональности к векторам из дополнительных многообразий. При этом сами вариации векторов при близких X. = Х. собственных значениях в пределах фиксированного линейного многообразия, как это следует из (1), могут быть весьма значительными.

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

ров матрицы A. Оператор Л характеризуется тем, что если спектр матрицы А разделяется на р групп

Ц(A), i g [1: kt], = n

t=1

«близких» между собой собственных чисел, то каждой группе соответствует набор столбцов {vit} матрицы V, задающий точное линейное многообразие, порожденное соответствующими столбцами {ui} точной матрицы U.

Рассмотрим квадратичную аппроксимацию

f(x) = 1/2(Ax, x> - (b, x) + с

(2)

исходного функционала /(х) в окрестности точки х. Допустим, что известна матрица А и ортогональная матрица и, приводящая ее к диагональному виду итАи = д1а£А.. Тогда замена переменных х = иу приводит квадратичный функционал к сепарабельному виду:

f ( x ) = f (Uy ) = £ f ( y ),

(3)

где /. — квадратичные функции одной переменной (параболы).

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

В действительности бывает задана не матрица А, а возмущенная матрица А + ¿А, где ¿А отражает как неопределенность задания исходной матрицы А, так и последующие ошибки округления при проведении собственно процесса диагонализации. В связи с этим вместо точной матрицы и оказывается доступной некоторая матрица V = Л(А). Свойства оператора Л были рас-

смотрены выше. Замена переменных х = Vy уже не приводит к представлению (3). Для изучения создавшейся ситуации важное значение имеет следующая теорема.

Теорема 2. Пусть собственные значения {А,.} и отвечающие им ортонормиро-ванные собственные векторы {и.}, / е [1: п], некоторой симметричной матрицы А разделены произвольным образом на р групп

р

, и", I е [1 : к1],г е [1 : р],^^ = п так, что

г=1

иш ф и", г Ф Г', I е [1: к,], / е [1: ке], где , и1 означают /-е собственное число и соответствующий собственный вектор группы г. Тогда, если в каждом линейном многообразии М1 размерности к( с базисом {ий}, I е [1: к] задать иной ортонормиро-ванный базис {м^г}, I е [1: кг], связанный с исходным базисом линейным соотношением

w

it = £alumt, i g [1: kt], <.g R1,

то существует такая матрица Р перестановок столбцов, что

1. преобразование подобия

ЖТАЖ, V = {м>11, ...,м^к1\ ...,^крр}, V = ЦР

приводит матрицу А к блочно-диагональ-ному виду

жтаж = ^(д, а2, ..., ар), ЖТ = V

с квадратными (кг х к) матрицами А( на главной диагонали;

2. собственные значения матрицы А(

есть

Ц, i G [1: kt],t G [1: p].

Доказательство. Первое утверждение проверяется непосредственно с учетом ортонормированности векторов базиса {и'}. Для доказательства второго утверждения достаточно заметить, что вид и расположение матрицы Ат при фиксированном многообразии Мт не зависят от способа задания остальных многообразий М, г Ф т. Поэтому, предположив, что все к( = 1 при г Ф т, получим, что все оставшиеся многообразия будут содержать по одному собственному вектору и собственному числу. Тогда будем иметь:

m=1

=1

ЖТАЖ = а1аЕ(Х1, Х2, ..., Ат,..., ХР).

Учитывая, что преобразование подобия не изменяет спектр матрицы, приходим к требуемому заключению. Теорема доказана.

Теорема 3. Пусть V = Л(А), тогда

1. замена переменных х = Уу с точностью до нумерации компонентов вектора у приводит функционал (2) к блочно-сепарабельному виду

/ (х) = / (Уу) = I (у) = (у'), (4)

,=1

где

у = (У1, ■■■, Уп) = (у1, ■••, УР),

у' = (у!,..., у'к,),

У, (у') = у2{ 4у', У) - (ь', у) + с,, С' е Я1;

2. собственные значения матрицы ft' равны

Х\(А), ' е [1: к,],' е [1 : р].

Доказательство. Имеем V = ЖР, где Р — некоторая матрица перестановок столбцов. Поэтому

f (х) = 2 {УТАУу, у) - {УТЬ, у) + с = = ! (рТЖТАЖРу, у*! - рРЖ\ у! + с =

= 2 ^ТАЖ1, - ЖТЬ, + с, 1 = ру.

Согласно теореме 2, матрица ЖТАЖ имеет блочно-диагональную структуру, что и доказывает первое утверждение. Второе утверждение есть прямое следствие второго утверждения теоремы 2.

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

Следствие. Пусть собственные числа матрицы А удовлетворяют неравенствам Х, > Х >> |Х А > ■ > |Х |; тогда

1 п—г 1 п—г+11 1 п1 ^

1. замена переменных х = Уу, V = Л(А), где V = (у11, ■.., у1п—г, V21, ■ .., v2г)T,

Vи = ^ а!т1ит; V2'' =± а2т1ип-г+т

т=1 т=1

с точностью до нумерации компонентов вектора у приводит Дх) к виду

ф) = ф) + иу), у = (у1, у2), (5)

где у1 = (ур ■.., уп—г), у2 = (уп—г+1, ■••, уп); 72

2. п << п, П2 << П, где п,- — показатели жесткости задач f. ^ min, i = 1, 2.

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

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

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

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

Исследование сходимости методов ОПС в предположении точной линейной оптимизации вдоль направляющих ортов может быть основано на общем подходе к исследованию алгоритмов нелинейного программирования [9]. Пусть решается задача J(x) ^ min, x е Я", J(x) е С1(Я"). Рассмотрим произвольный алгоритм, строящий последовательность точек {xk}, причем каждая точка xk+1 получается из xk последовательной минимизацией функционала J(x) вдоль направлений d1, ..., d", начиная из точки xk. Предполагается, что матрица D = (d1, ..., d") может зависеть от номера k, являясь при любом k ортогональной.

Легко видеть, что метод ЦПС, метод Розенброка, а также методы ОПС описываются приведенной общей схемой. Можно доказать, что все эти методы при некоторых естественных ограничениях сходятся, т. к. сходится базовый алгоритм.

Лемма 1. Пусть J(x) е C1(Rn) и пусть задана последовательность точек {xk, k = 1, 2, ...} из Rn такая, что

1. Vk J(xk+1) < J(xk);

2. J(xk) ^ J, k е K,

где K — некоторое бесконечное подмножество индексов.

Тогда lim J (xk) = lim J (xk) = J.

k keK

Доказательство содержится в [10]. В лемме утверждается, что если последовательность значений функционала {Jk} является монотонно невозрастающей и ее подпоследовательность {Jk, k е K} сходится к некоторому значению J, то вся последовательность {Jk}, сходится к этому же значению.

Теорема 4. Пусть

1. J(x) е C1(Rn);

2. множество решений, определяемое как X = {x е Rn | J'(x) = 0} непусто;

3. множество 0 = { x е Rn | J(x) < J(x0)}, где x0 — заданная начальная точка, ограничено и замкнуто (компактно) в Rn;

4. минимум функционала J вдоль любой прямой в Rn единственен;

5. если J (xk) = 0, то алгоритм останавливается в xk.

Тогда каждая предельная точка последовательности {xk}, построенной базовым алгоритмом, принадлежит множеству X".

Доказательство. Если последовательность {xk} конечна, то это значит, что алгоритм остановился в точке xk е X", и утверждение теоремы очевидно. Допустим поэтому, что алгоритм порождает бесконечную последовательность точек {л*}. Согласно третьему предположению все точки расположены в компактном множестве 0 и, следовательно, должна существовать подпоследовательность {xk, k е K}, сходящаяся при k ^ ж к некоторой точке x. Покажем, что x е X", то есть J (x) = 0.

Рассмотрим подпоследовательность {xk+1, k е K}. Она также содержится в 0, и поэтому существует K с K такое, что xk+1 ^ x' при k е K, где x' — некоторая точка из 0. Из сходимости последовательностей {xk, k е K}, {xk+1, k е K} следует в силу непрерывности J сходимость последовательностей {J(xk), k е K}, {J(x* + 1), k е K}, соот-

ветственно, к значениям /(х), /(х). В силу леммы 4.1 вся последовательность {/(хк)} также оказывается сходящейся к некоторой величине / и при этом /(х) = /(х') = /.

Ниже будет показано, что точка х' получается из х последовательной минимизацией вдоль некоторых ортогональных направлений д1, ..., дп. Поэтому в силу четвертого предположения из равенства /(х) = /(х) следует х = х. Это значит, что убывания / нет ни в одном из направлений д'', то есть проекции вектора градиента /(х) на д'', I е [1: п] равны нулю. Отсюда следует, что / (х) = 0.

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

Пусть Лк — матрица порядка п х п, столбцами которой являются построенные на к-й итерации направления спуска {Ск}, I е [1: п]; то есть хк+1 = хк + ^кХк, где Хк = (Хк1, ..., Хкп)т — вектор значений шагов вдоль направлений с!1к, ..., соответственно.

Обозначая у1к = хк, у'+1> к = ук + Х1^СИк, ' е [1: п], получим, что хк+1 = у + 1,к и

/(У}+1,к) < /(УЛ + XС'), X е Я1, ' е [1 : п].(6)

Рассмотрим последовательность матриц {^к}, к е К. Из этой последовательности можно выделить подпоследовательность, для которой первый столбец сС1к будет сходиться к некоторому вектору д1. Это следует из того, что множество векторов, норма которых равна единице, компактно. Из этой подпоследовательности можно снова извлечь подпоследовательность, для которой не только С-к ^ д1, но и сРк ^ д2 и т. д. В итоге существует такое К' с К, что Лк ^ б. Причем ёе! б = 1 ф 0, так как для всех к ёе! Лк = 1. Имеем, таким образом,

хк ^ х, хк+1 ^ X, Бк ^ б, к е К'. (7)

Поэтому из соотношения хк+1 = хк + Бкхк имеем

Хк ^ X = б- 1(х' - х). (8)

Следовательно, х = х + бХ. Пусть у1 = х

и у'+1 = у + ХЛК Чтобы доказать, что вектор х может быть получен из х последовательной минимизацией / по направлениям д', I е [1: п], достаточно показать, что

/(У+1) < /(у1 + Хд1), Х е Я1, 1е [1 : п]. (9)

Из (7), (8) следует, что у к ^ у1, 1 е [1: п + 1] при к е К". Поэтому в силу непрерывности / неравенство (9) следует из (6). Теорема доказана полностью.

Сделаем несколько замечаний общего характера. Вопросам выяснения условий сходимости алгоритмов оптимизации уделяется большое внимание. При этом исследуется сходимость последовательности [хк}, генерируемой алгоритмом, к некоторому фиксированному множеству X*, которое называется множеством решений. Наиболее естественный подход к введению понятия множества решений заключается в определении X* = [х* е Б с Яп | /(х*) < /(х), х е П}, где П — множество допустимых точек из Яп. Иначе говоря, х* — решение, если это точка глобального минимума. Однако в действительности такой подход не всегда возможен, и мы вынуждены останавливать процесс при выполнении более слабых предположений относительно полученных алгоритмом точек. чаще всего для описания множества X применяются необходимые условия экстремума, и тогда полагают: X* = [х* е П с Яп | /'(х*) = 0}. Возможны и другие способы задания X', которые столь же легко позволяют проверить принадлежность точки хк множеству решений. Типичное для приложений множество решений может быть задано следующим образом:

X* = [х* е П с Яп |/(х*) < /},

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

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

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

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

Реализация методов обобщенного покоординатного спуска

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

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

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

х = Бу, Б = ^Ц). (10)

Диагональная матрица масштабов П

хранится в соответствующей «общей» области подпрограммы, вычисляющей значения /(х), и модифицируется в начале каждого нового цикла оптимизации исходя из равенства

= тт{82,тах{|х,.|, 8Л, 8,- > 0, (11)

где х- — лучшее значение /-й переменной, полученное к началу следующего цикла; 81 = е м — заданное пороговое значение, исключающее появление нулевых ¿.; 82 = ем1- В методах второго порядка, рассматриваемых в данной статье, считается, что новый цикл начинается с процедуры вычисления аппроксимации матрицы вторых производных (т(х). Начальное масштабирование проводится на основе заданных начальных значений х0. В ряде случаев лучшие результаты дает комбинированный метод, использующий дополнительное масштабирование на основе принципа «равного влияния», согласно которому диагональная матрица масштабов Б выбирается из условия балансирования производных:

(

4 = к , =

д/

дх.

-

+ е.

+ е.

(12)

где, например, к = 1. В этом случае (при отсутствии влияния еМ) будем иметь

д/ (Бу) = Бд/ = (1,...,1)Г.

ду дх

При реализации масштабов (12) в начале каждого цикла оптимизации необходимо проводить анализ чувствительности для получения грубой аппроксимации вектора д//дх в окрестности точки X.

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

Обратимся к нормализации значений минимизируемого функционала. Теоретически масштаб значений целевого функционала /(х) не оказывает влияния на процесс поиска. Однако при численной реализации алгоритма выбор масштаба /(х) является

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

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

В задачах большой размерности по

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

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

Ак+1 = U¡AkUk, А = A, k = 1,2,..., (13)

являющихся преобразованиями вращения. В результате надлежащего выбора последовательности {Uk} получаем lim Ак = D = UAU, k ^ ю, где D = diag(A.) -диагональная матрица; U = UüUlU2^ — ортогональная матрица. Так как (4) есть преобразования подобия, то на диагонали матрицы D расположены собственные числа матрицы А; столбцы матрицы U есть собственные векторы матрицы А. В действительности вместо матрицы U получается некоторая матрица V = Л(АЛ отличная, вообще говоря, от истинной матрицы U. Основные характеристики оператора Л были рассмотрены выше.

Элементарный шаг (13) процесса Яко-би заключается в преобразовании посредством матрицы Uk = {u„}, отличающейся от единичной элементами u = u = cos ф,

pp qq ^'

upq = up = sin ф. Угол вращения ф выбирается таким образом, чтобы сделать элемент aq матрицы А нулем. Вопросы сходимости различных численных схем, реализующих метод Якоби, рассмотрены в [14].

3a основу может быть взят алгоритм jacobi из сборника алгоритмов линейной алгебры [15], реализующий так называемый частный циклический метод Якоби. В этом методе аннулированию подвергаются все элементы верхней треугольной части матрицы А с применением построчного выбора.

При таком выборе индексы элементов а пробегают последовательность значений (1, 2), (1, 3), ..., (1, п); (2, 3), (2, 4), ..., (2, п); ...; (п — 1, п). Затем начинается новый цикл перебора элементов в том же порядке. Эмпирическая оценка трудоемкости процесса построения матрицы Л(Д) позволяет выразить необходимое время Т работы процессора через размерность п решаемой задачи. Известно, что для матриц до 50-го порядка и длин машинных слов от 32 до 48 двоичных разрядов общее число циклов в процессе вращений Якоби в среднем не превышает 6—10 (под циклом понимается любая последовательность из (п2 — п)/2 вращений). При этом Т = кп3, где коэффициент к определяется быстродействием применяемой вычислительной системы и приблизительно равен 40у где ^ — время выполнения операции умножения.

Полученная оценка, а также опыт практической работы показывают, что при умеренных п время реализации оператора Л для многих практических случаев невелико и сравнимо с временем однократного вычисления значения минимизируемого функционала. Упоминавшаяся выше комбинация метода Хаусхолдера и бЯ-алгоритма оказывается приблизительно в 1,5—2 раза быстрее, что может иметь значение при достаточно больших п.

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

список литературы

1. Черноруцкий И.Г. Методы оптимиза- Петербург, 2011. 384 с. ции. Компьютерные технологии. СПб.: БХВ- 2. Черноруцкий И.Г. Методы параметриче-

ской оптимизации в задачах идентификации // Научно-технические ведомости СПбГПУ. Информатика. Телекоммуникации. Управление. СПб.: Изд-во СПбГПУ, 2009. № 2(76). С. 150-155.

3. Черноруцкий И.Г. Параметрические методы синтеза систем управления // Научно-технические ведомости СПбГПУ. Информатика. Телекоммуникации. Управление. СПб.: Изд-во СПбГПУ, 2009. № 2(76). С. 111-115.

4. Черноруцкий И.Г. Алгоритмические проблемы жесткой оптимизации // Научно-технические ведомости СПбГПУ. Информатика. Телекоммуникации. Управление. СПб.: Изд-во СПбГПУ, 2012. № 6(162). С. 141-152.

5. Ракитский Ю.В., Устинов С.м., Черноруцкий И.Г. Численные методы решения жестких систем. М.: Наука, 1979. 208 с.

6. Черноруцкий И.Г. функции релаксации градиентных методов // Научно-технические ведомости СПбГПУ. Информатика. Телекоммуникации. Управление. СПб.: Изд-во СПбГПУ, 2012. № 3(150). С. 66-72.

7. Черноруцкий И.Г. Некоторые стандартные схемы параметрической оптимизации // Научно-

технические ведомости СПбГПУ. Информатика. Телекоммуникации. Управление. СПб.: Изд-во СПбГПУ, 2012. № 6(162). С. 128-133.

8. Черноруцкий И.Г. Градиентные методы с экспоненциальной функцией релаксации // Научно-технические ведомости СПбГПУ. Информатика. Телекоммуникации. Управление. СПб.: Изд-во СПбГПУ, 2013. № 5(181). С. 58-66.

9. Базара м., Шетти к. Нелинейное программирование. М.: Мир, 1982.

10. Зангвилл У.И. Нелинейное программирование. М.: Сов. радио, 1973.

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

11. Уилкинсон Дж.Х. Алгебраическая проблема собственных значений. М.: Наука, 1970.

12. Парлетт Б. Симметричная проблема собственных значений. М.: Мир, 1983.

13. Химмельблау Д. Прикладное нелинейное программирование. М.: Мир, 1975.

14. фаддеев Д.к., фаддеева В.Н. Вычислительные методы линейной алгебры. М.: физ-матгиз, 1963.

15. Уилкинсон Дж.Х., Райнш С. Справочник алгоритмов на языке АЛГОЛ. М.: Машиностроение, 1976.

references

1. Chernorutskiy I.G. Metody optimizatsii. Kompyuternyye tekhnologii. St. Petersburg: BKhV-Petersburg Publ., 2011, 384 p. (rus)

2. Chernorutskiy I.G. Metody parametricheskoy optimizatsii v zadachakh identifikatsii [Methods of parametrical optimisation in identification problems], Nauchno-tekhnicheskiye vedomosti SPbGPU. Informatika. Telekommunikatsii. Upravlenie. St. Petersburg: SPbGPU Publ., 2009, No. 2(76), Pp. 150-155. (rus)

3. Chernorutskiy I.G. Parametricheskiye metody sinteza sistem upravleniya [Parametrical methods of synthesis of control systems], Nauchno-tekhnicheskiye vedomosti SPbGPU. Informatika. Telekommunikatsii. Upravlenie. St. Petersburg: SPbGPU Publ., 2009, No. 2(76), Pp. 111-115. (rus)

4. Chernorutskiy I.G. Algoritmicheskiye problemy zhestkoy optimizatsii [Algorithmic problems of stiff optimization], Nauchno-tekhnicheskiye vedomosti SPbGPU.Informatika. Telekommunikatsii. Upravlenie. St. Petersburg: SPbGPU Publ., 2012, No. 6(162), Pp. 141-152. (rus)

5. Rakitskiy Yu.V., Ustinov S.M., Chernorutskiy I.G. Chislennyye metody resheniya zhestkikh sistem. Moscow: Nauka Publ., 1979, 208 p. (rus)

6. Chernorutskiy I.G. Funktsii relaksatsii gradiyentnykh metodov [Relaxation function

of gradient methods], Nauchno-tekhnicheskiye vedomosti SPbGPU. Informatika. Telekommunikatsii. Upravlenie. St. Petersburg: SPbGPU Publ., 2012, No. 3(150), Pp. 66-72. (rus)

7. Chernorutskiy I.G. Nekotoryye standartnyye skhemy parametricheskoy optimizatsii [Standard schemes of parametric optimization], Nauchno-tekhnicheskiye vedomosti SPbGPU. Informatika. Telekommunikatsii. Upravlenie. St. Petersburg: SPbGPu Publ., 2012, No. 6(162), Pp. 128-133. (rus)

8. Chernorutskiy I.G. Gradiyentnyye metody s eksponentsialnoy funktsiyey relaksatsii [Gradient methods with exponent relaxation function], Nauchno-tekhnicheskiye vedomosti SPbGPU. Informatika. Telekommunikatsii. Upravlenie. St. Petersburg: SPbGPU Publ., 2013, No. 5 (181), Pp. 58-66. (rus)

9. Bazara M, Shetti K. Nelineynoye programmirovaniye. Moscow: Mir Publ., 1982. (rus)

10. Zangvill U.I. Nelineynoye programmirovaniye. Moscow: Sovetscoe radio Publ., 1973. (rus)

11. Uilkinson Dzh.kh. Algebraicheskaya problema sobstvennykh znacheniy. Moscow: Nauka Publ., 1970. (rus)

12. Parlett B. Simmetrichnaya problema sobstvennykh znacheniy. Moscow: Mir Publ., 1983. (rus)

13. Khimmelblau D. Prikladnoye nelineynoye programmirovaniye. Moscow: Mir Publ., 1975. (rus)

14. Faddeyev D.K., Faddeyeva V.N. Vychislitelnyye metody lineynoy algebry. Moscow: Fizmatgiz Publ.,

1963. (rus)

15. Uilkinson Dzh.kh., Raynsh S. Spravochnik algoritmov na yazyke ALGOL. Moscow: Mashinostroyeniye Publ., 1976. (rus)

ЧЕРНОРУцкИй Игорь Георгиевич — заведующий кафедрой информационных и управляющих систем Института информационных технологий и управления Санкт-Петербургского государственного политехнического университета, доктор технических наук.

195251, Россия, Санкт-Петербург, ул. Политехническая, д. 29. E-mail: igcher1946@mail.ru

CHERNORUTSKIY, Igor G. St. Petersburg State Polytechnical University. 195251, Politekhnicheskaya Str. 29, St. Petersburg, Russia. E-mail: igcher1946@mail.ru

© Санкт-Петербургский государственный политехнический университет, 2014

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