Предобуславливание

Материал из testwiki
Версия от 14:25, 20 октября 2024; imported>MBHbot (Геометрическая интерпретация: Project talk:Викификатор#Шаблон:Rq, replaced: {{rq|source}} → {{подст:нет источников}})
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску

Предобуславливание (также предобусловливание) — процесс преобразования условий задачи для её более корректного численного решения. Предобуславливание обычно связано с уменьшением числа обусловленности задачиШаблон:Уточнить. Предобуславливаемая задача обычно затем решается итерационным методом.

Предобуславливание для систем линейных алгебраических уравнений

В линейной алгебре и вычислительной математике P предобуславливатель для матрицы A если у матрицы P1A число обусловленности меньше, чем у A. Также чаще говорят, что T=P1 это предобуславливатель, чем просто P, так как точное значение P обычно требует больших затрат на вычисление. Поэтому под предобуславливанием часто понимают вычисление T=P1, точнее произведение вектора-столбца или матрицу векторов-столбцов на T=P1, что обычно выполняется сложными программными пакетами с использованием итерационных методов, где в конечном итоге не вычисляются точные значения ни для P, ни для T=P1.

Предобуславливание используется в итерационных методах при решении систем линейных алгебраических уравнений вида Ax=b, так как скорость сходимости для большинства итерационных линейных решателей увеличивается с уменьшением числа обусловленности в результате предобуславливания. Решатели с предобуславливанием обычно эффективнее, чем использование простых решателей, например, таких как метод Гаусса в случае больших и особенно в случае разреженных матриц. Итерационные решатели с предобуславливанием могут использовать безматричные методы, в которых матрица коэффициентов A не хранится отдельно, а доступ к её элементам происходит через произведения матриц-векторов.

Определение

Вместо решения исходной системы линейных алгебраических уравнений можно решать предобусловленную систему AP1Px=b, которую можно решить через форму AP1y=b, где y удовлетворяет условию Px=y, или решить предобусловленную слева систему: P1(Axb)=0.

В результате получается то же решение, что и в исходной системе, до тех пор пока матрица-предобуславливатель P невырождена. Наиболее распространенным является предобуславливание слева. Целью предобуславливания является уменьшение числа обусловленности левой или правой предобусловленной системы — P1A или AP1 соответственно. Предобусловленная матрица P1A или AP1 почти никогда не формируется отдельно. Вместо этого операция предобуславливания P1 выполняется только над уже готовыми векторами, которые получаются в результате расчета итерационными методами.

Использование P это всегда компромисс. Так как оператор P1 применяется на каждом шаге итерационного линейного решателя, операция P1 должна быть легко вычисляемой (по времени вычисления). Наиболее быстрым предобуславливателем в этом случае будет P=I, так как P1=I. Очевидно, что в результате работы такого предобуславливателя получается исходная система. Другая крайность — выбор P=A, что даст P1A=AP1=I, при этом будет получено оптимальное число обусловленности 1, требующее одной итерации для того, чтобы решение сошлось. Тем не менее в этом случае P1=A1 и сложность вычисления предобуславливателя сравнима со сложностью решения исходной системы. Поэтому необходимо выбирать P где-то между двумя этими крайними случаями, пытаясь получить минимальное число итераций сохраняя легкость вычисления P1. Некоторые примеры основных подходов предобуславливания описаны ниже.

Итерационные методы с предобуславливанием

Итерационные методы с предобуславливанием для Axb=0 в большинстве случаев математически эквивалентны стандартным итерационным методам, выполняемым над предобусловленной системой P1(Axb)=0. Например, стандартный метод итераций Ричардсона для решения Axb=0 будет выглядеть как

𝐱n+1=𝐱nγn(A𝐱n𝐛), n0.

В случае предобусловленной системы P1(Axb)=0, предобусловленный метод будет выглядеть как

𝐱n+1=𝐱nγnP1(A𝐱n𝐛), n0.

Примерами наиболее популярных итерационных методов с предобуславливанием для линейных систем являются метод сопряженных градиентов с предобуславливанием, метод бисопряженных градиентов и метод обобщенных минимальных невязок. В итерационных методах, которые вычисляют итерационные параметры через скалярные произведения, требуются соответствующие изменения в скалярном произведении вместе с заменой P1(Axb)=0 на Axb=0.

Геометрическая интерпретация

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

Шаблон:Нет источников Шаблон:Методы решения СЛАУ