Dado A es d×d y de valor real:
La fórmula X=AXA puede reescribirse con X reordenados como vec(X) un vector columna de d2 elementos:
vec(X)=(AT⊗A)vec(X)
... donde ⊗ es el Producto de Kronecker , a d2×d2 matriz. Por lo tanto, hay soluciones distintas de cero si (AT⊗A) tiene cualesquiera valores propios iguales a 1, y la solución o soluciones son los vectores propios correspondientes.
En d2 valores propios de (AT⊗A) se puede obtener multiplicando todos los emparejamientos del d valores propios de A . Por tanto, si alguno de los valores propios de A tienen un valor absoluto de 1 (incluidos los valores complejos), o si cualquier par de ellos satisface λjλk=1 tiene una solución para X=AXA .
[En su caso A=BTB es simétrica por lo que todos los valores propios de A será real].
Por supuesto, puede que no sea posible escalarlo a ese X es una matriz de similitud. Es evidente que todas las soluciones X será singular, a menos que el determinante de A es 1 o -1. De hecho, cualquier X obtenido directamente a partir de un vector propio del producto de Kronecker será de rango 1, siendo el producto exterior de los vectores propios de A (esto se discute más adelante), por lo que un no-singular X sólo podría obtenerse mediante una suma de múltiples soluciones de este tipo.
Para el caso en que A es simétrica:
deje P=(AT⊗A)
- si X es una solución, entonces también lo es XT
- Para cada valor propio de P que es 1, el vector propio correspondiente da una solución para X .
- Si hay más de una solución, puedes combinarlas arbitrariamente de forma lineal para obtener otras.
- Si existe un valor propio unitario de P donde el vector propio correspondiente da X que no es simétrica, habrá otro que dé XT así que puedes sumarlos y obtener una solución simétrica. Estos son los valores propios unitarios de P que son productos de dos valores propios de A y, por tanto, se producen por parejas. Los que surgen de cuadrados de {-1,1} valores propios de A dan soluciones simétricas directamente.
Por tanto, cuantos más valores propios unitarios de P más soluciones simétricas tendrás; si tienes suficientes, puedes resolver cómo combinarlas para obtener un resultado con 1 a lo largo de la diagonal.
Por ejemplo, supongamos d=5 y los valores propios de A son [1,1,12,2,2] tendrá 8 valores propios unitarios de P - dos de elevarlos al cuadrado, 3+3 de multiplicarlos por pares; y así obtendrás 5 resultados simétricos para X . Aunque no estoy seguro de que los 5 sean independientes en sus diagonales.
Y cada X candidato -- el vector propio de P correspondiente a un valor propio de P que es el producto de dos valores propios dados de A -- puede hallarse como el producto exterior de los dos vectores propios correspondientes de A reordenado en un vector. O dejado en forma de matriz ya que desea X . Así que no necesita encontrar P o todos sus vectores propios.
En una aplicación práctica, puede ser necesario realizar un ajuste a las mejores soluciones simétricas disponibles, incluidas las correspondientes a valores propios de P que son "suficientemente cercanos" a 1.
O, si necesita ajustar los valores propios de A un poco para obtener una solución exacta para X es relativamente sencillo volver a reflejar esos cambios en B es decir, encontrar un nuevo B pero con un resultado exacto X solución. La nueva B tendrá la misma descomposición de valores singulares que el original pero con SV ligeramente diferentes:
(1) encontrar la descomposición eigen de A : BTB=A=QLQT ... donde L es una matriz diagonal con los valores propios de A y Q es una matriz ortonormal con los vectores propios en las columnas
(2) Buscar X solución(es) como arriba, ajustando los valores propios según sea necesario; Esto conduce a un nuevo conjunto de valores propios L′ y nuevo valor para A Llámalo A′=QL′QT
(3) encontrar una matriz diagonal R cuyos elementos diagonales son las raíces cuadradas de los factores por los que multiplicaste los valores propios. Entonces: L′=RLRA′=QRLRTQT
(4) encontrar un nuevo valor B′=BQRQT . Ahora B′TB′=QRQTBTBQRQT=QRQTAQRTQT=QRQTQLQTQRTQT=QRLRTQT=A′ Así que, suponiendo R se aproxima a una matriz de identidad, B′ se acerca al original B y da el valor exacto de X solución(es) seleccionada(s) ajustando los valores propios en (2)
0 votos
La matriz cero parece funcionar, ¿quieres excluirla?
0 votos
@MarkBennet: Gracias, simplemente se me olvidó comprobarlo. La matriz cero se excluye, ver la edición.
0 votos
Esto parece relevante: es.wikipedia.org/wiki/Ecuación_de_Lyapunov
0 votos
@RahulNarain: Desafortunadamente, este método no está restringido a matrices de similitud y siempre devuelve la matriz cero.