Имеет ли какое-либо практическое значение «метод кофактора» для обращения матрицы?

13

Название вопроса. Этот метод включает использование «матрицы кофакторов» или «матрицы сопряжения» и дает явные формулы для компонентов обратной квадратной матрицы. Нелегко сделать вручную для матрицы больше, чем, скажем, 3×3 . Для матрицы n×N требуется вычисление определителя самой матрицы и вычисление N2 определителей (N-1)×(N-1) матриц. Так что я предполагаю, что это не так полезно для приложений. Но я хотел бы получить подтверждение.

Я не спрашиваю о теоретической значимости метода в доказательстве теорем о матрицах.

Стефан Смит
источник

Ответы:

11

Вы правы - это не имеет никакого практического значения для вычислений. Даже если бы вычисление определителя было операцией , сложность метода была бы по крайней мере O ( n 3 ) и, следовательно, такой же сложности, как исключение по Гауссу. На практике вычисление определителя матрицы на самом деле имеет экспоненциальную сложность, что делает этот метод совершенно непригодным для использования.O(n)O(n3)

Вольфганг Бангерт
источник
4
Я хочу добавить две вещи: Сложность правила Крамера (использующего детерминанты для вычисления обратного) - это Что намного намного больше, чем исключение Гаусса O ( n 3 ) . Кроме того, как правило, вы не хотите вычислять обратное, если вам абсолютно не нужно. O(n!)O(n3)
Павел
OTOH, могут быть некоторые обстоятельства, в которых может быть предпочтительным расширение Лапласа, например, матрицы с полосами. Но на самом деле в общем случае разложение Лапласа имеет сложность . O(n!)
JM
3
@ Stefan, да, исключение Гаусса можно использовать для вычисления определителей. Поскольку , а удаление по Гауссу создает (треугольные) факторы, детерминанты которых легко вычисляются, для этого действительно потребуется O ( n 3 ) усилий. det(AB)=det(A)det(B)O(n3)
JM
1
Да, вы правы - определитель может быть рассчитан за счет разложения (Наивный способ, показанный в учебниках с использованием рекурсивного расширения, является экспоненциальным в n - n ! Сложность, упомянутая Полом). Но это все равно дает общую сложность O ( n 5 ) для предложенного алгоритма - намного больше, чем исключение Гаусса, если его использовать, и даже больше, чем итерационные решатели. LUnn!O(n5)
Вольфганг Бангерт
1
LUAUL
9

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

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

nonbasketless
источник
Я полностью согласен, в некоторых случаях (в общем случае с небольшими матрицами) это очень помогает! (например, для вычисления барицентрических координат в небольшом симплексе)
BrunoLevy