Доклады Российской академии наук. Математика, информатика, процессы управления, 2022, T. 503, № 1, стр. 91-94

НЕЯВНАЯ ИТЕРАЦИОННАЯ СХЕМА НА ОСНОВЕ РАСШИРЕННЫХ ЛИНЕЙНЫХ СИСТЕМ

А. И. Жданов 1*

1 Самарский государственный технический университет
Самара, Россия

* E-mail: zhdanovaleksan@yandex.ru

Поступила в редакцию 12.02.2021
После доработки 01.06.2021
Принята к публикации 24.01.2022

Полный текст (PDF)

Аннотация

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

Ключевые слова: неявная итерационная схема, регуляризованная расширенная линейная система, итеративные алгоритмы регуляризации на основе расширенных систем

1. ВВЕДЕНИЕ

Известно, что многие вычислительные задачи принадлежат к классу некорректных или плохо обусловленных задач. Для решения этих задач широко используются многочисленные методы регуляризации. Одним из наиболее эффективных методов регуляризации продолжает оставаться метод регуляризации А.Н. Тихонова [1].

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

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

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

2. НОВАЯ НЕЯВНАЯ ИТЕРАЦИОННАЯ СХЕМА

Рассматривается произвольная СЛАУ

(1)
$Au = f,$
где $A \in {{\mathbb{C}}^{{m \times n}}}$, $f \in {{\mathbb{C}}^{m}}$, $u \in {{\mathbb{C}}^{n}}$, $m \geqslant n$ и ${\text{rank}}(A) = n$.

Для построения классического варианта неявной итерационной схемы [2] используется симметризация Гаусса произвольной СЛАУ (1), приводящая к нормальной системе уравнений

(2)
$A{\text{*}}Au = A{\text{*}}f,$
где A* – матрица, сопряженная к матрице A.

На основе нормальной системы (2) непосредственно получается классическая форма неявной итерационной схемы (неявный метод простых итераций) для решения произвольных СЛАУ (1):

(3)
$\begin{gathered} ({{\omega }^{2}}{{E}_{n}} + A{\text{*}}A){{u}_{{k + 1}}} = \\ = \;{{\omega }^{2}}{{u}_{k}} + A{\text{*}}f \Leftrightarrow {{G}_{\omega }}{{u}_{{k + 1}}} = {{\omega }^{2}}{{u}_{k}} + b, \\ \end{gathered} $
где $\omega > 0$, ${{E}_{n}}$ – единичная матрица порядка n и $k = 0,\;1,\; \ldots $

Неявная итерационная схема (3) широко используется для получения итерационных алгоритмов регуляризации [2, 3, 5], где номер остановки по k выполняет роль параметра регуляризации.

Ниже приводится новый вариант неявной итерационной схемы.

Преобразуем (3) к виду

$A{\text{*}}A{{u}_{{k + 1}}} - A{\text{*}}f + {{\omega }^{2}}{{u}_{{k + 1}}} = {{\omega }^{2}}{{u}_{k}}$
или

(4)
$A{\text{*}}(f - A{{u}_{{k + 1}}}) - {{\omega }^{2}}{{u}_{{k + 1}}} = - {{\omega }^{2}}{{u}_{k}}.$

Пусть

(5)
${{r}_{{k + 1}}} = f - A{{u}_{{k + 1}}},$
тогда (4) можно записать в виде
(6)
$A{\text{*}}{{r}_{{k + 1}}} - \alpha {{u}_{{k + 1}}} = - \alpha {{u}_{k}},$
а (5) в виде

(7)
${{r}_{{k + 1}}} + A{{u}_{{k + 1}}} = f.$

Введем новую переменную ${{y}_{k}} = {{\omega }^{{ - 1}}}{{r}_{k}}$. Объединяя уравнения (6) и (7), получаем расширенную СЛАУ

(8)
$\begin{gathered} \omega {{y}_{{k + 1}}} + A{{u}_{{k + 1}}} = f, \\ A{\text{*}}{{y}_{{k + 1}}} - \omega {{u}_{{k + 1}}} = - \omega {{u}_{k}}. \\ \end{gathered} $

Из (8) непосредственно следует

Утверждение. Неявный метод простых итераций (3) эквивалентен решению последовательности регуляризованных расширенных систем

(9)
$\begin{gathered} \left( {\begin{array}{*{20}{c}} {\omega {{E}_{m}}}&A \\ {A{\text{*}}}&{ - \omega {{E}_{n}}} \end{array}} \right)\left( \begin{gathered} {{y}_{{k + 1}}} \hfill \\ {{u}_{{k + 1}}} \hfill \\ \end{gathered} \right) = \\ = \;\left( \begin{gathered} f \\ - \omega {{u}_{k}} \\ \end{gathered} \right) \Leftrightarrow {{B}_{\omega }}{{z}_{{k + 1}}} = g_{k}^{\omega }. \\ \end{gathered} $

Итерационный метод (9) можно рассматривать как специальную вычислительную схему метода (3). Однако при малых α вычисления по итерационной схеме (4) могут, в виду большей численной устойчивости, оказаться намного более целесообразными, чем вычисления по итерационной схеме (3). Кроме того, формирование матрицы A*A может приводить к ее полному заполнению, даже если исходная матрица A является сильно разреженной, что в конечном итоге не позволяет использовать алгоритм (3) для решения больших разреженных задач.

Спектральное число обусловленности СЛАУ на каждой итерации в алгоритме (3) равно

${{\mu }_{2}}({{G}_{\omega }}) = \frac{{\sigma _{1}^{2} + {{\omega }^{2}}}}{{\sigma _{n}^{2} + {{\omega }^{2}}}},$
где ${{\sigma }_{1}}$ и ${{\sigma }_{n}}$ – максимальное и минимальное сингулярные числа матрицы $A$ соответственно.

Как показано в [6], собственными значениями матрицы ${{B}_{\omega }}$, ${{\lambda }_{j}}({{B}_{\omega }})$, $j = 1, \ldots ,m + n$, являются числа $ \pm \sqrt {\sigma _{i}^{2} + {{\omega }^{2}}} $, $i = 1,\;2,\; \ldots ,\;\tau $, а также ω и –ω кратностей $m - \tau $ и $n - \tau $ соответственно, где $\tau = {\text{rank}}(A)$ и ${{\sigma }_{1}} \geqslant {{\sigma }_{2}} \geqslant \; \ldots \; \geqslant {{\sigma }_{\tau }} > 0$ – сингулярные числа матрицы A. Для частного случая, когда $A \in {{\mathbb{R}}^{{m \times n}}}$, аналогичный результат приведен (без доказательства) в работе М.А. Саундерса [7].

Так как ${{B}_{\omega }} = B_{\omega }^{*}$ и $\tau = n$, то спектральное число обусловленности матрицы ${{B}_{\omega }}$

(10)
$\begin{gathered} {{\mu }_{2}}({{B}_{\omega }}) = {{\left\| {{{B}_{\omega }}} \right\|}_{2}} \cdot {{\left\| {B_{\omega }^{{ - 1}}} \right\|}_{2}} = \\ = \;\frac{{\mathop {\max }\limits_{1 \leqslant j \leqslant m + n} \left| {{{\lambda }_{j}}({{B}_{\omega }})} \right|}}{{\mathop {\min }\limits_{1 \leqslant j \leqslant m + n} \left| {{{\lambda }_{j}}({{B}_{\omega }})} \right|}} = \sqrt {\frac{{\sigma _{1}^{2} + {{\omega }^{2}}}}{{\sigma _{n}^{2} + {{\omega }^{2}}}}} , \\ \end{gathered} $
где ${{\left\| {\, \cdot \,} \right\|}_{2}}$ – спектральная матричная норма.

Из (10) следует, что если ${{\sigma }_{n}} < \omega < {{\sigma }_{1}}$, то

(11)
${{\mu }_{2}}({{B}_{\omega }}) \approx \frac{{{{\sigma }_{1}}}}{\omega } = \frac{{{{{\left\| A \right\|}}_{2}}}}{\omega },$
несмотря на число обусловленности матрицы A.

Из (11) получаем важный практический результат: если ${{\sigma }_{n}} < \omega < {{\sigma }_{1}}$, то число обусловленности матрицы ${{B}_{\omega }}$ не зависит от обусловленности матрицы A и, следовательно, для плохо обусловленных матриц A число обусловленности ${{\mu }_{2}}({{B}_{\omega }}) \ll {{\mu }_{2}}({{G}_{\omega }})$, так как ${{\mu }_{2}}({{B}_{\omega }}) = \sqrt {{{\mu }_{2}}({{G}_{\omega }})} $. Этот факт гарантирует, что неявная итерационная схема (9), на основе расширенных систем, будет обладать более высокой вычислительной устойчивостью по сравнению с итерационной схемой (3), на основе нормальных систем, при одном и том же значении параметра $\omega $.

3. ИТЕРАЦИОННАЯ РЕГУЛЯРИЗИРУЮЩАЯ СХЕМА

Пусть вместо точных исходных данных $(A,f)$ заданы возмущенные исходные данные $(A,\tilde {f})$, где $\left\| {\tilde {f} - f} \right\| \leqslant \delta $. Здесь $\left\| f \right\|$ – евклидова векторная норма.

Для построения итерационной регуляризирующей схемы воспользуемся итерационным алгоритмом (9):

(12)
$\begin{gathered} \left( {\begin{array}{*{20}{c}} {\omega {{E}_{m}}}&A \\ {A{\text{*}}}&{ - \omega {{E}_{n}}} \end{array}} \right)\left( \begin{gathered} {{y}_{{k + 1}}} \hfill \\ {{u}_{{k + 1}}} \hfill \\ \end{gathered} \right) = \\ = \left( \begin{gathered} {\tilde {f}} \\ - \omega {{u}_{k}} \\ \end{gathered} \right) \Leftrightarrow {{B}_{\omega }}{{z}_{{k + 1}}} = \tilde {g}_{k}^{\omega }. \\ \end{gathered} $

В качестве критерия остановки будет использовано минимальное число k, такое, что

(13)
${{k}_{\delta }} = \min \left\{ {k \in \mathbb{N}{\text{:}}\;{\text{||}}A{{u}_{k}} - \tilde {f}{\text{||}} \leqslant c\delta } \right\},$
где константа $c > 1$.

Параметр ${{k}_{\delta }}$, момент останова для итерационной схемы (12), играет роль параметра регуляризации на основе принципа невязки [2], а ${{u}_{{{{k}_{\delta }}}}}$ является регуляризованным решением.

Так как $\tilde {f} - A{{u}_{k}} = \omega {{y}_{k}}$, то критерий остановки (13) можно представить в виде

(14)
${{k}_{\delta }} = \min \left\{ {k \in \mathbb{N}{\text{:}}\;\omega \left\| {{{y}_{k}}} \right\| \leqslant c\delta } \right\}.$

Использование (14) позволяет снизить вычислительные затраты по сравнению с (13).

4. АНАЛИЗ СХОДИМОСТИ И ЧИСЛЕННЫЙ ПРИМЕР

Итерационную схему (3) можно записать в виде

(15)
${{u}_{{k + 1}}} = \Phi (\omega ){{u}_{k}} + {{g}^{\omega }},$
где $\Phi (\omega ) = {{\omega }^{2}}{{({{\omega }^{2}}{{E}_{n}} + A{\text{*}}A)}^{{ - 1}}}$ – итерационная матрица, а ${{g}^{\omega }} = {{({{\omega }^{2}}{{E}_{n}} + A{\text{*}}A)}^{{ - 1}}}b$.

Скорость сходимости итерационного процесса (15) определяется множителем сходимости $\rho (\Phi (\omega ))$, где $\rho ( \cdot )$ – спектральный радиус матрицы. В [4] показано, что $\rho (\Phi (\omega )) = \frac{1}{{1 + {{\lambda }^{2}}}}$, где $\lambda = \frac{{{{\sigma }_{n}}}}{\omega }$.

Очевидно, что ${{\mu }_{2}}(G(\omega )) \to 2$ и ${{\mu }_{2}}(B(\omega )) \to \sqrt 2 $ при $\omega \to \infty $, где $G(\omega ) = {{G}_{\omega }}$ и $B(\omega ) = {{B}_{\omega }}$. Однако при $\omega \to \infty $ спектральный радиус $\rho (\Phi (\omega )) \to 1$, что приводит к сильному замедлению скорости сходимости.

Видно, что параметр ω, с одной стороны, выполняет роль предобусловливателя, но, с другой стороны, требуется компромис при выборе параметра $\omega $ для обеспечения достаточной скорости сходимости алгоритма. Относительно стандартного алгоритма типа (3) замечание о скорости сходимости было сделано в недавней работе [8].

Исследуем сравнение скорости сходимости и чисел обусловленности для алгоритмов (3) и (12).

Пусть параметры ${{\omega }_{1}}$ и ${{\omega }_{2}}$ выбираются из условия ${{\mu }_{2}}(G({{\omega }_{1}})) = {{\mu }_{2}}(B({{\omega }_{2}}))$. Так как μ2(Bω) = = $\sqrt {{{\mu }_{2}}({{G}_{\omega }})} $, то очевидно, что ${{\omega }_{2}} < {{\omega }_{1}}$ и, следовательно, $\rho (\Phi ({{\omega }_{2}})) < \rho (\Phi ({{\omega }_{1}}))$. Это означает, что неявная итерационная схема (12), на основе расширенных систем, имеет более высокую скорость сходимости по сравнению с (3), на основе нормальных уравнений, при одном и том же числе обусловленности СЛАУ в обоих итерационных схемах.

Рассмотрим случай, когда $\mu _{2}^{2}(A)\, = \,{{\mu }_{2}}(G(0))\, > \,{{\epsilon }^{{ - 1/2}}}$, где $\epsilon $ – машинный эпсилон. В этом случае для обеспечения гарантированной точности вычислений на каждой итерации неявных итерационных схем (3) и (12) параметры ${{\omega }_{1}}$ и ${{\omega }_{2}}$ должны удовлетворять условиям ${{\mu }_{2}}(G({{\omega }_{1}}))\, \leqslant \,{{\epsilon }^{{ - 1/2}}}$ и ${{\mu }_{2}}(B({{\omega }_{2}}))\, \leqslant \,{{\epsilon }^{{ - 1/2}}}$ соответственно.

Если параметры ${{\omega }_{1}}$ и ${{\omega }_{2}}$ удовлетворяют условию

(16)
${{\mu }_{2}}(G({{\omega }_{1}})) = {{\mu }_{2}}(B({{\omega }_{2}})) \leqslant {{\epsilon }^{{ - 1/2}}},$
то в этом случае ${{\omega }_{2}} \ll {{\omega }_{1}}$. Отсюда непосредственно имеем, что $\rho (\Phi ({{\omega }_{2}})) \ll \rho (\Phi ({{\omega }_{1}}))$. Следовательно, при одинаковых числах обусловленности СЛАУ в алгоритмах (3) и (12), алгоритм (12), на основе расширенных линейных систем, будет иметь существенно более высокую скорость сходимости. Этот факт иллюстрируется следующим простым примером.

Численный пример. Рассмотрим СЛАУ Au = f, где

(17)
$\begin{gathered} A = \left( {\begin{array}{*{20}{c}} 3&{ - 7.00001} \\ 3&{ - 7} \\ 3&{ - 7} \end{array}} \right) \in {{\mathbb{R}}^{{3 \times 2}}}, \\ f = \left( \begin{gathered} 0.99998 \\ 1 \\ 1 \\ \end{gathered} \right) \in {{\mathbb{R}}^{3}}. \\ \end{gathered} $
СЛАУ (17) совместна, ее точное решение ${{u}_{*}}\, = \,\left( \begin{gathered} 5 \hfill \\ 2 \hfill \\ \end{gathered} \right)$, а ${{\sigma }_{1}} = 13.19$, ${{\sigma }_{2}} = 3.21 \times {{10}^{{ - 6}}}$ и ${{\mu }_{2}}(A) \approx 4.10 \times {{10}^{6}}$. Для решения СЛАУ (17) использовались алгоритмы (3) и (12). Все вычисления выполнялись в Matlab, где $\epsilon \approx 2.22 \times {{10}^{{ - 16}}}$. В данном примере $\tilde {f} = f$. В алгоритмах (3) и (12) параметры выбирались в соответствии с (16):

(18)
${{\mu }_{2}}(G({{\omega }_{1}})) = {{\mu }_{2}}(B({{\omega }_{2}})) = 2.9 \times {{10}^{6}}.$

Из (18) получаем, что для алгоритма (3) ω1 = = $0.007745$, а для алгоритма (12) ${{\omega }_{2}} = 3.21 \times {{10}^{{ - 6}}}$. Для решения СЛАУ в алгоритме (3) применялся метод Холецкого, а в (12) – метод LU-разложения. В качестве критерия остановки использовался критерий:

(19)
$\left\| {A{{u}_{k}} - f} \right\| \leqslant 1.2 \times \epsilon .$

Для алгоритма (12) этот критерий, в соответствии с (14), имеет вид $\omega \left\| {{{y}_{k}}} \right\| \leqslant 1.2 \times \epsilon $.

Результаты вычислений. Алгоритм (3), на основе нормальных уравнений, не позволил вообще выполнить критерий (19). Через $k = 1000$, невязка $\left\| {A{{u}_{{1000}}} - f} \right\| = 1.73$ × 10–5, а относительная погрешность решения $\frac{{\left\| {{{u}_{{1000}}} - {{u}_{*}}} \right\|}}{{\left\| {{{u}_{*}}} \right\|}} \approx 0.99953$ соответственно.

Для алгоритма (12), на основе расширенных линейных систем, критерий остановки (19) был выполнен при $k = 37$, а относительная погрешность, соответственно, равна

$\frac{{\left\| {{{u}_{{37}}} - {{u}_{*}}} \right\|}}{{\left\| {{{u}_{*}}} \right\|}} \approx 1.57 \times {{10}^{{ - 11}}}.$

5. ЗАКЛЮЧЕНИЕ

Новый вариант неявной итерационной схемы (9) обладает следующими наиболее важными преимуществами перед классической неявной итерационной схемой (3), основанной на нормальной системе уравнений:

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

2. При одном и том же числе обусловленности матриц ${{G}_{\omega }}$ и ${{B}_{\omega }}$ неявная итерационная схема (9) позволяет получить существенно более высокую скорость сходимости при решении плохо обусловленных задач. Этот факт особенно важен при решении задач большой размерноcти.

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

  1. Морозов В.А. Алгоритмические основы методов решения некорректных задач // Вычисл. методы и программирование. 2003. Т. 45. С. 130–141.

  2. Вайникко Г.М., Веретенников А.Ю. Итерационные процедуры в некорректных задачах. М.: Наука, 1986.

  3. Buccini A., Donatelli M., Reichel L. Itereated Tikhonov regularization with a general penalty terms // Numer. Linear Algebra Appl. 2017. V. 24. P. 1–12.

  4. Zhdanov A.I. Implicit iterative schemes based on singular decomposition and regularizing algorithms // Vestn. Samar. Gos. Tekhn. Univ., Ser. Fiz.-Mat. Nauki [J. Samara State Tech. Univ., Ser. Phys. Math. Sci.]. 2018. V. 22. № 3. P. 549–556.

  5. Nagy J., Palmer K., Perrone L. Iterative methods for image deblurring: a Matlab object- oriented approach // Numer. Algorithms. 2004. V. 36. P. 73–93.

  6. Zhdanov A.I. The Method of Augmented Regularized Normal Equations // Comput. Math. and Mathem. Phys. 2012. V. 52. № 2. P. 194–197.

  7. Saunders M.A. Solution of sparse rectangular systems using LSQR and CRAIG // BIT. 1995. V. 35. P. 588–604.

  8. Spigler R. On the numerical of ill-conditioned linear systems by regularization and iteration // Numer. Linear Algebra Appl. 2020. P. 1–22.

Дополнительные материалы отсутствуют.

Инструменты

Доклады Российской академии наук. Математика, информатика, процессы управления