Encontrar la raíz cuadrada de una matriz laplaciana

11

Suponga que la siguiente matriz se da con su transpuesta . El producto rinde ,[ 0.500 - 0.333 - 0,167 - 0.500 0,667 - 0,167 - 0.500 - 0.333 0.833 ] A T A T A = G [ 0,750 - 0,334 - 0.417 - 0,334 0,667 - 0,333 - 0.417 - 0.333 0.750 ]A

[0.5000.3330.1670.5000.6670.1670.5000.3330.833]
ATATA=G
[0.7500.3340.4170.3340.6670.3330.4170.3330.750]

donde es una matriz laplaciana . Nota que las matrices y son de rango 2, con el valor propio cero correspondiente al vector propio .A G 1 n = [ 1 1 1 ] TGAG1n=[111]T

Me pregunto cuál sería la forma de obtener si solo se daIntenté la descomposición propia , y luego configuré , pero obtuve un resultado diferente. Supongo que esto tiene que ver con la deficiencia de rango. ¿Alguien podría explicar esto? Claramente, el ejemplo anterior es para ilustración; puede considerar la descomposición general de la matriz laplaciana de la forma anterior.G G = U E T T A ' = U E 1 / 2AGG=UEUTA=UE1/2


Como, por ejemplo, la descomposición de Cholesky podría usarse para encontrar , la descomposición en podría dar muchas soluciones. Estoy interesado en la solución que se podría expresar como donde es un matriz de identidad, , y siendo algunos vector satisfactorio . Si simplifica las cosas, podría suponer que las entradas de no son negativas. G A = ( I - 1 n w T ) , I 3 × 3 1 n = [ 1 1 1 ] w w T 1 n = 1 wG=LLTG

A=(I1nwT),
I3×31n=[1 1 1]wwT1n=1w
usero
fuente
Creo que el comentario que agregó sobre la representación de es solo parcialmente útil. Se supone que hay exactamente un valor propio igual a cero, pero la no determinación siempre está ahí, ¿no? A
Wolfgang Bangerth
@WolfgangBangerth Estoy tratando de descifrar el significado de "no determinación". Si ese es , se cumple para el ejemplo anterior, y no estoy seguro de si se puede generalizar para . Sin embargo, a excepción de , dudo que la solución siempre exista. det(A)=0A=I1nwTn=3
usero
No, lo que quise decir es que la solución a su problema no está determinada de manera única. Estaba señalando el hecho de que si la matriz tiene un valor propio cero o no, en realidad no cambia el hecho de que el problema de raíz cuadrada no tiene una solución única.
Wolfgang Bangerth

Respuestas:

11

Tenemos la matriz Laplacian matrix que tiene un conjunto de valores propios para donde siempre saber . Así, la matriz laplaciana es siempre simétrica positiva semi-definida. Debido a que la matriz no es definida simétrica positiva, tenemos que tener cuidado cuando discutimos la descomposición de Cholesky. La descomposición de Cholesky existe para una matriz positiva semi-definida, pero ya no es única. Por ejemplo, la matriz positiva semi-definida tiene infinitas Descomposiciones Cholesky G=ATAλ0λ1λnGRn×nλ0=0G

A=[0001],
A=[0001]=[00sinθcosθ][0sinθ0cosθ]=LLT.

Sin embargo, ya que tenemos una matriz que se sabe que es una matriz laplaciana que realmente podemos evitar las más sofisticadas herramientas de álgebra lineal como descomposiciones de Cholesky o la búsqueda de la raíz cuadrada de la matriz semi-definida positiva tal que recuperamos . Por ejemplo, si tenemos la matriz de Laplace , podemos usar la teoría de grafos para recuperar el matriz deseada . Lo hacemos formulando la matriz de incidencia orientada. Si definimos el número de aristas en el gráfico comoGGAGR4×4

G=[3111110010101001]
Amy el número de vértices que será entonces la matriz de incidencia orientada será matriz dada por donde denota el borde que conecta los vértices y . Si tomamos una gráfica para con cuatro vértices y tres aristas, entonces tenemos la matriz de incidencia orientada nAm×n
Aev={1if e=(v,w) and v<w1if e=(v,w) and v>w0otherwise,
e=(v,w)vwG
A=[110010101001],
G=ATA . Para el problema de la matriz que describes usted construir un gráfico para con el mismo número de aristas como vértices, entonces no debería tener la capacidad de reconstruir la matriz cuando sólo se le da la matriz laplaciana .GAG

Actualizar:

Si definimos la matriz diagonal de grados de vértice de un gráfico como y la matriz de adyacencia del gráfico como , entonces la matriz laplaciana del gráfico se define por . Por ejemplo, en el siguiente gráficoNMGG=NM

encontramos que la matriz laplaciana es Ahora relacionamos la con la matriz de incidencia orientada usando los bordes y nodos dados en el gráfico ilustrado. Nuevamente, encontramos las entradas de de

G=[3000010000100001][0111100010001000].
GAA
Aev={1if e=(v,w) and v<w1if e=(v,w) and v>w0otherwise,.
e1v1y . Entonces, para determinar notamos que el índice de es menor que el índice de (o tenemos el caso en la definición de ). Por lo tanto, . Del mismo modo, a modo de comparación de índices, podemos encontrar . continuación, damos de una manera más explícita haciendo referencia a los bordes y vértices representados. v2Ae1,v1v1v2v<wAevAe1,v1=1Ae1,v2=1A
A=v1v2v3v4e11100e21010e31001.

A continuación, generalizamos el concepto de la matriz laplaciana a un gráfico ponderado no dirigido. Deje que sea ​​un gráfico finito no dirigido definido por y su vértice y su conjunto de bordes, respectivamente. Para considerar un gráfico ponderado, definimos una función de peso que asigna un peso real no negativo a cada borde del gráfico. Denotaremos el peso unido al borde que conecta los vértices y por . En el caso de un gráfico ponderado, definimos el grado de cada vértice como la suma de todos los bordes ponderados conectados a , es decir, GrVE

w:V×VR+,
uvw(u,v)uVu
du=vVw(u,v).
A partir del gráfico dado podemos definir la matriz de adyacencia ponderada como con filas y columnas indexadas por cuyas entradas están dadas por . Sea la matriz diagonal indexada por con los grados de vértice en la diagonal, entonces podemos encontrar la matriz laplaciana ponderada igual que antes GrAd(Gr)n×nVw(u,v)D(Gr)VG
G=D(Gr)Ad(Gr).

En el problema de la publicación original, sabemos que De los comentarios que sabemos buscamos una factorización para donde y especificamos que tiene la forma donde . Para una generalidad completa, suponga que la matriz no tiene entradas cero. Por lo tanto, si formulamos la matriz de incidencia orientada ponderada para encontrar , queremos la matriz de adyacencia ponderada

G=[34135121323135121334].
GG=ATAAA=I1nwTwT1n=1AAAd(Gr)no tener entradas cero también, es decir, el gráfico ponderado tendrá bucles. En realidad, calcular la matriz de incidencia orientada ponderada parece difícil (aunque puede ser simplemente el resultado de mi inexperiencia con gráficos ponderados). Sin embargo, podemos encontrar una factorización de la forma que buscamos de manera ad hoc si suponemos que sabemos algo sobre los bucles en nuestro gráfico. Dividimos la matriz laplaciana ponderada en las matrices de grado y adyacencia de la siguiente manera G
G=[5400010001112][12135121313135121316]=D(Gr)Ad(Gr).

Por lo tanto, sabemos que los bucles en , y tienen pesos , y respectivamente. Si ponemos los pesos en los bucles en un vector = entonces podemos recuperar la matriz que queremos en la forma deseada v1v2v31/21/31/6w[12 13 16]TA
A=I1nwT=[121316122316121356].

Parece que si conocemos los bucles en nuestro gráfico ponderado podemos encontrar la matriz en la forma deseada. Nuevamente, esto se hizo de manera ad hoc (ya que no soy un teórico de gráficos), por lo que puede ser un truco que funcionó solo para este simple problema.A

Andrew Winters
fuente
Recuperar en el caso de Laplacian como usted describe no debería ser un problema (en su ejemplo, solo una fila / columna contiene elementos distintos de cero). Supongo que los asuntos se complican con el laplaciano general "completo" como en mi ejemplo. Dados los grados de libertad de , no estoy seguro de si se podría obtener la solución, sujeto a las restricciones que mencioné anteriormente. AGO(n2)G
usero
Correcto, el ejemplo que doy está muy simplificado, pero será posible en el caso general donde es una matriz completa. El problema de la teoría de gráficos se vuelve más complicado a medida que aumenta el número de aristas y vértices. En esencia, reemplazamos un problema difícil de factorización de matriz con un problema difícil de teoría de grafos. GG
Andrew Winters el
Ok, agradecería si intentas reconstruir como se da arriba de dado . AG
usero
@AndrewWinters: ¿Podría aclarar la forma se determina a partir de ? No me queda claro cómo procede su algoritmo en el caso general. AG
Geoff Oxberry
1
No creo que sea posible para un general, ya que parece que la forma de factorización específica solo existirá para ciertos tipos de gráficos ponderados. Entonces, las matrices laplacianas que tienen la forma son un subconjunto de todas las matrices laplacianas posibles. GA=I1nwTGG=ATA=(I1nwT)T(I1nwT)
Andrew Winters
9

Creo que está confundiendo la matriz única raíz cuadrada de la matriz semi-definida positiva de Hermitian , es decir, una matriz semi-definida positiva de Hermitian satisfactoria,AB

B2=A,

con el problema no único de encontrar una matriz satisfactoriaC

CHC=A,

donde claramente el mapeo , para cualquier unitaria , conserva la identidad. Como notó, una factorización de Cholesky proporciona una posible solución. Sin embargo, tenga en cuenta que Cholesky solo funciona para matrices Hermitian positivas definidas (con la posible excepción de una matriz semi-definida positiva Hermitian que es positiva definida si se eliminan la última fila y columna).CQCQ

Por último, uno puede definir de manera constructiva la matriz única raíz cuadrada de una matriz semi-definida positiva de Hermit a través de su descomposición de valor propio

A=UΛUH,

donde es unitario y es diagonal con entradas no negativas debido a que es positivo semi-definido. La raíz cuadrada de la matriz hermitiana se puede identificar fácilmente comoUΛA

B=UΛUH.
Jack Poulson
fuente
Tienes razón sobre la matriz de raíz cuadrada . Claramente, hay diferentes formas de lograr la factorización, pero podría garantizar que (de mi búsqueda) podría escribirse tal como lo formulé. A
usero
6

En esencia, lo que está pidiendo es encontrar la raíz cuadrada A de una matriz G, de modo que Hay muchas formas de hacerlo si es una matriz simétrica. Por ejemplo, si es simétrica, entonces la descomposición de Cholesky le proporciona una respuesta: . Pero ya encontró otra respuesta, con la matriz que ya tiene. Lo que esto simplemente significa es que hay muchas "raíces cuadradas" de la matriz , y si desea tener una en particular, debe reformular la pregunta de tal manera que especifique las propiedades estructurales de la "rama" de la raíz cuadrada que te interesa.

G=ATA.
GGG=LTLA=LAG

Yo diría que esta situación no es diferente a tomar la raíz cuadrada entre los números reales usando los números complejos: allí también, en general, tienes dos raíces, y tienes que decir cuál quieres que la respuesta sea única.

Wolfgang Bangerth
fuente
Definitivamente tienes razón. Otra forma sería el enfoque de descomposición espectral como digo anteriormente. He hecho una edición para hacer que la solución sea única. Esperemos que no complique las cosas.
usero
¿Existe siempre una solución con la restricción que doy arriba? Quizás sea válido solo para algunos casos, y no en general.
usero
En realidad, Cholesky no funciona en su caso, ya que (esencialmente) requiere que la matriz sea Hermitiana positiva-definida.
Jack Poulson
4

Creo que puede aplicar factorización para su matriz A. Dado que su matriz tiene valores propios no negativos, la matriz diagonal D tendrá entradas no negativas a lo largo del diagonal. Entonces puede factorizar fácilmente . Y obtienes la matriz . La descomposición propia no es numéricamente estable, por lo que creo que debería evitar este tipo de descomposición.LDLTD^=DG=LD^

Willowbrook
fuente
Tengo que estar en desacuerdo por dos razones: (1) factorización no funciona para matrices singulares (su matriz es singular), y (2) las descomposiciones de valores propios de las matrices hermitianas se consideran estables, ya que sus matrices de vectores propios son unitarias. LDLT
Jack Poulson el
1
@JackPoulson Intento con una matriz singular A en matlab y ejecuto ldl, funciona. Los valores propios cero corresponden a los ceros en la diagonal de D.
Willowbrook
2
Creo que encontrará que la rutina ' ' de MATLAB calcula un bloque descomposición con pivote , es decir, , donde no tiene que ser diagonal (puede tener bloques). Para evitar la división por cero debido a que la matriz es singular, las entradas diagonales cero se giran hacia la parte inferior derecha de la matriz. P A P = L D L T D 2 × 2LDLTPAP=LDLTD2×2
Jack Poulson el