Mengapa pantulan Householder tidak dapat mendiagonalisasi sebuah matriks?

16

Saat menghitung faktorisasi QR dalam praktiknya, seseorang menggunakan pantulan Householder untuk menghilangkan bagian bawah dari sebuah matriks. Saya tahu bahwa untuk menghitung nilai eigen dari matriks simetris, yang terbaik yang dapat Anda lakukan dengan pantulan Householder adalah membuatnya menjadi bentuk tridiagonal. Apakah ada cara yang jelas untuk melihat mengapa ia tidak dapat sepenuhnya didiagonalisasi dengan cara ini? Saya mencoba menjelaskan ini secara sederhana tetapi saya tidak dapat memberikan presentasi yang jelas.

Victor Liu
sumber

Jawaban:

12

Saat menghitung nilai eigen dari matriks simetris MRn×n hal terbaik yang dapat Anda lakukan dengan reflektor Householder adalah mengarahkan M ke bentuk tridiagonal. Seperti yang telah disebutkan dalam jawaban sebelumnya karena M. adalah simetris ada transformasi kesamaan orthogonal yang menghasilkan matriks diagonal, yaitu, D=STMS . Ini akan menjadi nyaman jika kita bisa menemukan aksi matriks orthogonal diketahui S ketat menggunakan Householder reflektor dengan menghitung urutan reflektor dan menerapkan HT dari kiri ke M dan Hdari kanan ke . Namun ini tidak mungkin karena cara reflektor Householder dirancang untuk nol kolom. Jika kita menghitung reflektor Householder untuk nol semua angka di bawah M 11 kita menemukan M = (M.M11

M.=()H1TM.=(0000).
But now the entries M12M1n have been altered by the reflector H1T applied on the left. Thus when we apply H1 on the right it will no longer zero out the first row of M. leaving only M.11. Instead we will obtain
H1TM=(0000)H1TMH1=().
Where not only did we not zero out the row but we may destroy the zero structure we just introduced with the reflector H1T.

MH1T

M=()H1TM=(000).
Thus when we apply the same reflector from the right we obtain
H1TM=(000)H1TMH1=(000000).

Applied recursively this allows us to drive M to a tridiagonal matrix T. You can complete the diagonalization of M efficiently, as was mentioned previously, using Jacobi or Givens rotations both of which are found in the Golub and Van Loan book Matrix Computations. The accumulated actions of the sequence of Householder reflectors and Jacobi or Givens rotations allows us to find the action of the orthogonal matrices ST and S without explicitly forming them.

Andrew Winters
sumber
11

As the Comments to other Answers clarify, the real issue here is not a shortcoming of Householder matrices but rather a question as to why iterative rather than direct ("closed-form") methods are used to diagonalize (real) symmetric matrices (via orthogonal similarity).

Indeed any orthogonal matrix can be expressed as a product of Householder matrices, so if we knew the diagonal form of a symmetric matrix (its eigenvalues), we could solve for a complete set of orthonormalized eigenvectors and represent the corresponding change of basis matrix as a product of Householder transformations in polynomial time.

So let's turn to Victor's parenthetical comment "other than Abel's theorem" because we are effectively asking why iterative methods should be used find the roots of a polynomial rather than a direct method. Of course the eigenvalues of a real symmetric matrix are the roots of its characteristic polynomial, and it is possible to go in the other direction as well. Given a real polynomial with only real roots, it is possible to construct a tridiagonal symmetric companion matrix from a Sturm sequence for the polynomial. See also that poster Denis Serre's Exercise 92 in this set. This is rather nice for showing the equivalence of those problems since we've seen (@AndrewWinters) the direct application of Householder matrices will tridiagonalize a real symmetric matrix.

Analysis of the arithmetic complexity for an iterative (root isolation) method is given in Reif (1999), An Efficient Algorithm for the Real Root and Symmetric Tridiagonal Eigenvalue Problems. Reif's approach improves on tailored versions of QR for companion matrices, giving O(nlog3n) instead of O(n2) complexity.

The Abel-Galois-Ruffini Theorem says that no general formula for roots of polynomials above degree four can be given in terms of radicals (and usual arithmetic). However there are closed forms for roots in terms of more exotic operations. In principle one might base eigenvalue/diagonalization methods on such approaches, but one encounters some practical difficulties:

  1. The Bring radical (aka ultraradical) is a function of one variable, in that respect like taking a square root. Jerrad (c. 1835) showed that solving the general quintic could be reduced to solving t5+ta=0, so that univariate function t(a) (used in addition to radicals and other usual arithmetic) allows all quintics to be solved.

  2. This breaks down with degree six polynomials and above, although various ways can be found to solve them using functions of just two variables. Hilbert's 13th Problem was the conjecture that general degree seven polynomials could not be solved using only functions of at most two variables, but in 1957 V.I. Arnold showed they could. Among the multivariable function families that can be used to get solutions to arbitrary degree polynomials are Mellin integrals, hypergeometric and Siegel theta functions.

  3. Besides implementing somewhat exotic special functions of more than one argument, we need direct methods for solving polynomials which work for general degree n rather than ad hoc or degree specific methods. Guàrdia (2002) gives "a very simple expression of the roots of a polynomial of arbitrary degree in terms of derivatives of hyperelliptic theta functions." However this approach requires making choices of Weierstrass points on hyperelliptic curve Cf:Y2=f(x) where all roots of polynomial f(x) are sought. A good choice leads to expressing less than half of those roots, and it appears this approach requires repeated trials to get all of them. Each trial involves solving a homogeneous linear system at O(n3) cost.

Therefore the indirect/iterative methods for isolating real roots (equiv. eigenvalues of symmetric matrices), even to high precision, currently have practical advantages over the known direct/exact methods for these problems.

hardmath
sumber
Some notes: 1. a practical method for building the tridiagonal companion matrix from Sturm sequences was outlined in papers by Fiedler and Schmeisser; I gave a Mathematica implementation here, and it should not be too hard to implement in a more traditional language.
J. M.
2. With respect to the "theta function" approach for polynomial roots (which I agree is a bit too unwieldy for practical use), Umemura outlines an approach using Riemann theta functions.
J. M.
2

For what reason do you assume that this is impossible?

Any symmetric real matrix S can be orthogonally diagonalized, i.e. S=GDGt, where G is orthogonal and D is diagonal.

Any orthogonal matrix of size n×n can be constructed as a product of at most n such reflections.Wikipedia. Therefore you have this decomposition.

I am not sure about the last statement, I just cite it (and I think it is correct). As far as I understand your question, it boils down to whether any orthogonal matrix can be decomposed into a sequence of Householder transforms.

shuhalo
sumber
2
I should have been more specific. The first step to diagonalizing a symmetric matrix is applying Householder until it is tridiagonal. Next, QR iterations are performed. This process cannot be completed using only closed-form Householder transformations. Why? (other than Abel's theorem)
Victor Liu
1
You can do it with Jacobi rotations. Golub and Van Loan write that Jacobi is the same as Givens. Householder is just another way of doing Givens. In practice, the "correct" way might be with QR if it is faster.
power
1

If the eigenvalues are already known (from a preliminary calculation based on the usual approach), one can use them to triangulize a nonsymmetric matrix (or diagonalize a symmetric matrix) by a product on n1 Householder reflections. In the kth step the kth column is brought to triangular form. (This also provides a simple inductive proof of the existence of the Schur factorization.)

It is actually useful for methods where one repeatedly needs the orthoginal matrix in a numerically stable factored form.

Arnold Neumaier
sumber