2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу Пред.  1, 2, 3
 
 Re: Нахождение обратной матрицы
Сообщение13.03.2010, 08:13 
У первой матрицы детерминант - $3\cdot 10^{-16}$.
Т.е. матрица плохо обусловленная: http://www.statsoft.ru/home/portal/glossary/glossarytwo/M%5CMatrixIllConditioning.htm

 
 
 
 Re: Нахождение обратной матрицы
Сообщение13.03.2010, 12:32 
venco в сообщении #297142 писал(а):
У первой матрицы детерминант - $3\cdot 10^{-16}$.
Т.е. матрица плохо обусловленная

Строго говоря -- не "т.е.".
Хотя, конечно, если элементы матрицы порядка единицы, то малость детерминанта влечёт за собой и большое значение числа обусловленности.

Но в данном случае про обусловленность говорить вообще не приходится:

Код:
>> eig(A*A')
ans =
   -1.179611963664229e-016
    6.732649963569620e-001
    1.000000000000001e+000

>> sqrt(abs(eig(A*A')))
ans =
    1.086099426233266e-008
    8.205272672842519e-001
    1.000000000000000e+000

>> cond(A)
ans =
    1.352684370782016e+015

>> det(A)
ans =
    6.118780016153565e-016

>> det(A*A')
ans =
     0

Все численные значения противоречат друг другу (особенно приятно наблюдать отрицательное собственное число матрицы $A\cdot A^T$). А это означает, что конкретно эта матрица в точности вырожденная (в пределах погрешностей округления, естественно).

vitaly333 в сообщении #297089 писал(а):
Как контролировать рост элементов в матрице при обращении?
(При обращении используется LU -разложение с последующем решением треугольных систем)

Задать порог, ниже которого ведущий элемент считается нулевым -- и, значит, сама матрица формально считается вырожденной.

 
 
 
 Re: Нахождение обратной матрицы
Сообщение13.03.2010, 16:32 
vitaly333 писал(а):
Пытаюсь обратить след матрицу:
.............................................
В результате получаются громадные числа:
.............................................
Если исходную матрицу округлить скажем до 3 знака:
............................................
то результат получается совсем другой:
............................................
В чем дело? Почему такие разные результаты?

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

 
 
 
 Re: Нахождение обратной матрицы
Сообщение14.03.2010, 16:22 
Цитата:
эта матрица в точности вырожденная (в пределах погрешностей округления, естественно).

Как же её обратить?

 
 
 
 Re: Нахождение обратной матрицы
Сообщение14.03.2010, 18:35 
vitaly333 в сообщении #297558 писал(а):
Цитата:
эта матрица в точности вырожденная (в пределах погрешностей округления, естественно).
Как же её обратить?
Мне это напомнило "Понедельник" Стругацких:
"- Я и сам знаю, что задача не имеет решения! Меня интересует как ее решить!"

Иногда, в зависимости от конкретной задачи, вместо обратной матрицы можно использовать псевдообратную:
А. Алберт. Регрессия, псевдоинверсия и рекуррентное оценивание. Наука. 1977.
Ключевые слова: псевдоинверсия, псевдообращение, pseudoinverse, generalized inverse.

 
 
 
 Re: Нахождение обратной матрицы
Сообщение14.03.2010, 20:15 
Цитата:
Иногда, в зависимости от конкретной задачи

В каких случаях это возможно?

 
 
 
 Re: Нахождение обратной матрицы
Сообщение15.03.2010, 10:23 
Yuri Gendelman в сообщении #297658 писал(а):
Ключевые слова: псевдоинверсия, псевдообращение, pseudoinverse, generalized inverse.

Ещё одно ключевое сочетание: "нормальное псевдорешение".

vitaly333 в сообщении #297722 писал(а):
В каких случаях это возможно?

Возможно -- всегда, а нужно или нет -- зависит от конкретной задачи.

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

 
 
 [ Сообщений: 37 ]  На страницу Пред.  1, 2, 3


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group