Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Линейная алгебра

..pdf
Скачиваний:
31
Добавлен:
12.11.2023
Размер:
13.06 Mб
Скачать

Для построения псевдообратной матрицы А+ к (тх п)-матрице А можно пользоваться методом Гревилля, не требующим знания скелет­ ного разложения матрицы А и вычисления определителей. Для этого вводят обозначения: а* - к-й столбец матрицы А } k = 1 ,2 ,..., п; Ак = (a i,..., а*) - матрица, образованная первыми к столбцами ма­

трицы

А,

к

= 1,2,

Ък -

последняя строка

матрицы

к = 1 ,2 ,..., п, и применяют формулы

 

М

= a*

=

(a j^ i)-1 ^

и при

к = 1 ,2 ,...,п

) ,

где

= A ^dkbk, dk =

причем при с* = а* -

Ak-id k # О

 

 

 

= с + = (cjcit)"1^ ,

(6.57)

а при с* = О

 

 

 

 

 

 

 

6t = (I + d M ) 4 ^ - r

 

Матрица

, построенная по формулам (6.57), является псевдообрат­

ной к матрице A*, fc = 1 ,2 ,..., п. В частности, А+ = А+

При вычислении псевдообратной матрицы А+ можно также (см.

[5], гл. 5, § 42)

каждый ее j -й столбец Xj = (a?ij, j,

яп>)Т

(j = 1 ,2 ,..., п),

находить как нормальное псевдорешение системы

 

AXj = Ej ,

(6.58)

где Ej - j-й столбец единичной матрицы порядка га (о псевдореше­ ниях смотри ниже в п. 6.14).

Пример 1. Найти псевдообратную матрицу для матрицы

/

1

0

0

1 \

А =

0

1

0

1

V

о

о

1

1 /

Решение. Ранг матрицы А равен трем и совпадает с числом ее строк. Поэтому применима формула (6.53"), по которой

 

 

/ 1

0

0

\

= А \ А А 'Т 1

=

О

1

О

 

О

0

1

 

 

 

 

 

 

\ i

1

1

/

 

' 1 0

0

1

1 0

0 \ \ -1

1

3 - 1

- 1

X

0 1

0

1

0

1

0

- 1

3

- 1

0

0

1

" 4

- 1

- 1

3

 

0

1

1

 

1

1

1 / )

 

1

1

1

 

 

 

 

 

Бели воспользоваться сингулярным разложением матрицы А (см.

п. 6.10, пример 1), то по формуле (6.56) получим

 

 

 

 

 

/_ J _

1

1

\

 

 

 

 

 

1

2V5

ч/5

ч/б

 

о

\

 

 

 

 

 

 

 

1

1

1

 

 

А+ = PE+Q* =

 

2ч/З

"72

V6

 

 

0

 

 

1

о

2

 

 

1

 

 

 

 

 

 

 

 

 

 

2V5

 

7 5

 

 

0

/

 

 

\2vl

 

о -2

/

 

 

 

 

 

 

 

'

А

1

 

 

3

- 1

- 1

\

 

ч/З

ч/З

 

А

 

1

 

о

- 1

3

- 1

 

 

 

7 ?

 

- 1

- 1

3

 

 

1

 

1

 

2

1

1

 

 

 

\ч/б

 

ч/б

75 /

1

/

 

 

 

 

 

П ример 2. Найти псевдообратную матрицу для матрицы

Реш ение. В примере из п. 6.12 найдено скелетное разложение

А = В С = I

-

Чтобы применить формулу (6.53), сначала вычисляем

С+ = С*{СС* ) -1 =

В+ = {ВЛВ )-1 В* =

( 2

- 1

0

\

1 / 3

V - 1

1

Ч

~

6 V 1

Теперь по формуле (6.53) получаем

А+ = С+В+ = J-

Если воспользоваться сингулярным разложением матрицы А (см.

п.6.10, пример 2), то по формуле (6.56) получим

=Р£+<?*= -)= о 4-

Пример 3. Найти псевдообратную матрицу А+ к матрице

Решение. Ранг матрицы А равен числу ее столбцов. Поэтому при­ менима формула (6.53'). По ней получаем

А+ = {А* А)~ 1А* =

i

 

 

1

t

1

\

 

1 \ V

(

 

 

1

1

) =

 

1 )

)

( . -1

 

4

 

 

 

 

 

1 i

1 \ _ 1 (

 

3

- 1 - 2г

-i

1 4

 

4 V - 1 + 2i

3 ' ) «

(

i+ <

—1 + i

 

2 - 2 i

 

{ —1 — i

 

l - i i 2 + 2i

 

Пример 4. Для матрицы

 

 

 

 

 

 

 

 

1

- 1

 

0 \

 

 

 

- 1

2

 

1

 

 

 

А =

2

- 3

- 1

 

 

 

 

0

0

 

1 /

 

 

 

найти методом Гревилля псевдообратную матрицу.

Реш ение. По формулам (6.57) при к = 1 получаем

A f = (a jc u y 'a l =

 

/

 

1 \ \ _1

 

 

 

 

 

 

 

 

(1 ,-1 ,2 ,0 )

- 1

(1,

1 ,2 ,0 ) -

( б>

 

g . j . o )

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

\

 

 

о

У

У

 

 

 

 

 

При к = 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

- 1

\

3

 

 

 

 

d2

A ta, = (I,

 

 

2

 

 

 

 

 

 

 

 

2 ’

 

 

 

 

 

 

 

 

- 3

 

 

 

 

 

 

 

 

- 1

\

о /

 

 

 

 

 

 

 

 

/

1 \

 

 

 

 

 

 

а2 ~ Aid2 =

2

 

 

- 1

 

2

# 0 .

 

С2

- 3

 

 

2

 

 

/

 

 

0

 

Поэтому

 

 

о

V

0)

 

1

/

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

/

 

 

 

 

 

 

 

^2 —

(c j С2)

ХС2 =

(

Й

'

0 '

 

1)

 

 

 

 

 

 

 

 

 

1 /

/

 

 

 

 

 

4

H

 

=

 

(

 

U

)

o

И

 

 

 

3 / 1

1

2\

 

 

 

 

= Ai — ^2^2 =

1 1

2 Л

H I I i

 

 

 

 

 

 

 

6 ’ 6 ’ 3 ’ 7 + 2 \ 3 ’ 3 ’ ° ’ ЗУ

з’ з’ з’

 

Следовательно,

 

 

 

 

 

 

 

 

 

При к = 3

0 \

1 - 1

 

0 ^

(

\

- \ \

(О-

 

1 )

 

о

Ч

с3 =

1

 

- 1

2

 

 

аз — A^dз =

 

2

- 3

 

 

 

-1

 

 

 

Поэтому

 

 

 

 

 

 

Ь3

(I + dJd3) - 4 l A t

( l

+ (

l , l ) (

j ) )

к

При вычислении псевдообратной матрицы А+ к действительной ( т х п)-матрице А можно пользоваться итерационной формулой БенИзраэля

= *(*> [2Е -

, Х<°) = аА т , * = 0 ,1 ,2 ,..., (6.59)

где а - число, удовлетворяющее условию

л

а <

2

0 <

-г-----

 

 

^шах

при Лтах, являющимся максимальным собственным значением ма­ трицы АГА, или, что то же самое, матрицы ААТ Вместо Атах можно брать какую-либо норму этих матриц (о норме матриц см. п. 6.16). При известном Атах обычно полагают а = 1.6/Атах. Так для матрицы

 

1

1

А =

2

0

 

- 1

3

характеристический многочлен

1

II и"

2 - А

2

2

 

2

4 — А

- 2

= —А(А2 - 16А + 5А)

2

- 2

1 0 - А

 

имеет корни Ai = 8 + л/8,

II CN

00

-

л/8, Аз

Х<0) = аАт= 0.14775922

0 о 0

Тогда по формуле (6.59) при к = 1,2,3,4 получим

X (i)

_ х (0) J2E _ ^ (0 )| _

 

 

 

 

=

(

0^20818728

032904341

-0033524986

 

 

 

\

012085613

0087331148

0.18790611 )

 

 

хЮ

=

(

0.21593801

0.35261602

—OQ57098541

)

V

01365737

0.079468314

02507842

 

 

Х<3

=

(

0.21453365

0.35672228

-0069534975

 

 

^

0.141999

0.072605168

0.28121786 )

'

 

 

* («)

=

(

0.21422526

0.35717893

-0.071375151

)

 

 

1

0.14275098

0.071507542

0.28566921

 

 

 

 

 

 

В каждом приведенном приближении к матрице А+ подчеркнуты верные знаки элементов матрицы А+

При вычислении псевдообратной матрицы на ЭВМ наиболее на­ дежным и эффективным является метод, основанный на представле­ нии матрицы в виде сингулярного разложения. Стандартные про­ граммы к этому методу см. [29], [33], [37].

6.14.Решение систем линейных уравнений по методу наименьших квадратов

Пусть дана действительная или комплексная система линейных уравнений

ацХ1 -f ... + aiпхп = 6i,

(6.60)

Ят1®1 + •••+ flmn^n — bm,

или, что то же самое, в матричной форме

АХ = Ь.

В общем случае эта система может быть и несовместной. То­ гда решать ее точно не имеет смысла. Поэтому систему (6.60), совместная она или несовместная, обычно решают приближенно по методу наименьших квадратов (МНК), то есть находят такие ее

приближенные решения (псевдорешения или обобщенные решения)

X = ( ® i , Х 2 , •••, ® п )Т , П ри КОТОРЫХ фуНКЦИЯ

F (X ) = |АХ - Ъ\2 Е У! а*зхз ~ ь

(6.61)

к—1

 

имеет наименьшее значение. Очевидно, что в тех случаях, когда си­ стема (6.60) совместная, любое ее решение в обычном смысле является псевдорешением, и наоборот.

Среди всех псевдорешений нормальным называют то, которое имеет наименьшую длину) или , что то же самое, такое псевдореше­ ние Х° = (xj, х ° ,..., х °)т , ПРИ котором функция

Ф(Х) = |*1а = £|*<1а

(6.62)

*=1

 

имеет наименьшее значение.

Практическая необходимость такого подхода возникает, напри­ мер, если в эмпирической формуле

x\ai + х2а2 + ... + хпап = 6

нужно найти коэффициенты xi, х2, ..., х„ по результатам наблюде­ ний (измерений) величин ai, ..., an, b.

Пусть имеем следующие результаты наблюдений:

Номер наблюдений

П1

a2

an

b

1

ап

ai2

ain

bi

2

a2i

<*22

<*2n

h

. . .

 

.. .

 

 

ш

ami

«m2

amn

bm

Подставляя данные каждого наблюдения в рассматриваемое вы­ ражение, придем к системе АХ = Ь. Эта система вследствие ошибок

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

Исходя из определения псевдорешений, укажем способ их нахо­ ждения. Для этого замечаем, что левая часть г-го уравнения системы (6.60) при любом наборе значений хх, Х2, . . хп отличается от его правой части на некоторую невязку Поэтому вместо системы (6.60) будем рассматривать систему

 

ацХ\ + CZ12X2 + •••+ а1пхп + z1

=

Ьи

 

 

01®1 + flm2®2 + •••"Ь вшп®л Н" zm

Ьт,

 

т.е. систему АХ + Z = 6.

 

 

 

Для того, чтобы функция

 

 

 

 

F (X ) = |АХ - 6|2

 

 

 

имела наименьшее значение, длина вектора Z должна быть мини­

мальной.

Это возможно лишь когда в равенстве АХ + Z = Ъвек­

тор АХ =

А\Х\ + Аъх2 + ... + Апхп является ортогональной проек­

цией (см.

п.6.4) вектора Ь на пространство L(A)

столбцов А\, Аъ,

..., Ап матрицы А, а вектор Z — ортогональной составляющей век­

тора Ь. Поэтому вектор Z должен быть ортогональным к каждому

вектору-столбцу Aj матрицы А. Следовательно, (Z, Aj) =

AjZ = 0

при j = 1,п. В матричной форме это означает, что A*Z =

0. Учи­

тывая это равенство при умножении слева равенства АХ + Z = Ьна

матрицу А*, Цолучим систему

 

 

 

 

А*АХ = АЧ.

 

 

(6.63)

К системе (6.63) можно прийти также, используя методы матема­ тического анализа, а именно, приравняв к нулю дифференциал

dF(X) =

dX*-A*AX + X *A *A -d X -b *A d X -d X * -A *b =

=

dX' А*АХ + dX* А*АХ - dX* . АЧ - dX* АЧ =

= 2dXm-[A*A X -A *b]

функции

F (X ) = \АХ - 6|2 = (А Х - Ь У ( А Х - Ь ) = ( Х * А * - Ь ) ( А Х - Ь ) =

=Х*А*АХ — ЪАХ — Х*А*Ь — 6*6.

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

Общее решение системы (6.63) является решением системы (6.60). В матричной форме оно записывается в виде

X = А+Ь+ (Е - А+А)С,

(6.64)

где А+ - псевдообратная матрица к матрице А и С = (ci, сг,..., с„)т

— произвольный вектор.

Отыскание общего псевдорешения системы (6.60) можно заменить

также отысканием общего решения совместной системы

 

АХ — npL(A)6,

(6.65)

где L(A) — подпространство столбцов матрицы А.

Для выделения нормального псевдорешения из общего псевдоре­ шения X нужно найти такой вектор, при котором функция Ф(Х) = \2 достигает своего минимума. Нормальное псевдорешение Х° можно также находить по указанным ниже формулам и правилам.

Общее псевдорешение X и нормальное псевдорешение Х° можно представить в виде следующих формул.

Если (тхп)-матрица А системы (6.63) имеет ранг г, то для общего

псевдорешенил X

справедлива формула

 

X = a iei + ... + OLTeT+

ttr+ier+i + ... + оспеи,

(6.66)

а для нормального псевдорешенил Х° - формула

 

 

Х° = aiei + ... + агег,

(6.67)

гДе ei, ег, ..., еп -

правые сингулярные векторы матрицы А ,

 

 

оц =

г = I7F,

(6.68)

аг+1, а Г+2, ..., осп — произвольные числа, tfi, 02, •••, аг — ненулевые сингулярные числа матрицы А.

Если система (6.60) имеет симметрическую матрицу А порядка п и ранга г, то для общего псевдорешения применима формула

X = ос\е\ + ... + с*гег + &г+\ег+1 + ... + оспеп,

(6.69)

а для нормального псевдорешения - формула

Х ° = ot\e\ + ... + агег,

(6.70)

где ei, ег, ..., еп — ортонормированная система собственных век­ торов оператора с матрицей А, принадлежащих соответственно соб­ ственным значениям Ai, А2, ..., А„ (А» ф 0 при i = 1, г), причем векторы ei, ег, ..., еп являются правыми сингулярными векторами матрицы А ,

а,- = при: * = 1, г f (6.71)

агг+i, ar+2, ..., ап - произвольные числа.

Для отыскания нормального решения применяется также формула

Х ° = А+Ь,

(6.72)

где ^4+ — псевдообратная матрица к матрице А и метод регуляризации, о котором пойдет речь в следующем параграфе.

Отыскание нормального решения произвольной системы можно свести к решению одной или двух систем с невырожденными ма­

трицами.

Действительно, если дана совместная или несовместная

система

ВХ = Ъ с (ш х п)-матрицей В ранга г = п,

то домно-

жая ее на матрицу В* слева, придем к системе В*ВХ =

В*Ь с не­

вырожденной матрицей В*В ранга п. Решая эту систему, получим

X = (В* В )"1В*Ь = В+Ь= = Х ° .

Если дана совместная или несовместная система СХ = 6 c(m x n )- матрицей С ранга г = m, то X будем искать в виде X = C*Z. Тогда придем к системе CC*Z = 6 с невырожденной матрицей СС* ранга

т . Поэтому X = C*Z = C *(C C *)-4 = С+6.

Пусть, наконец, дана совместная или несовместная система АХ =

= 6 с ( т х п)-матрицей А ранга г ф т , п.

Матрицу А представим

в виде скелетного разложения А = ВС с ( т

х п)-матрицей В ранга

г и (г х п)-матрицей С ранга г. Тогда система АХ =

Ьпримет вид

ВСХ = Ь. Полагая У = С Х , придем к системе ВУ =

6, которая по

только что рассмотренному первому случаю дает У = СХ = В+6. Отсюда по второму случаю получаем

X = С+У = С+В+6 = А+Ь = Х °