Encontrando a raiz quadrada de uma matriz laplaciana

11

Suponha que a seguinte matriz seja dada com sua transposta . O produto gera ,A

[0.5000.3330.1670.5000.6670.1670.5000.3330.833]
ATATA=G
[0.7500.3340.4170.3340.6670.3330.4170.3330.750]

onde é uma matriz laplaciana . Note-se que as matrizes e são de grau 2, com o valor próprio correspondente a zero, eigenvector .GAG1n=[111]T

Eu me pergunto qual seria o caminho para obter se apenas fosse dado. Tentei eigendecomposition e defina , mas obtive um resultado diferente. Eu acho que isso tem a ver com deficiência de classificação. Alguém poderia explicar isso? Claramente, o exemplo acima é para ilustração; você pode considerar a decomposição geral da matriz laplaciana da forma acima.L L = L E L T A ' = L E 1 / 2AGG=UEUTA=UE1/2


Como, por exemplo, a decomposição de Cholesky poderia ser usada para encontrar , a decomposição em poderia render muitas soluções. Eu estou interessado na solução que pode ser expressa como onde é um matriz identidade, , e sendo alguns vetor satisfazendo . Se isso simplificar, você poderá assumir que as entradas de não são negativas. L A = ( I - 1 n w o t ) , eu 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
fonte
Acho que o comentário que você adicionou sobre a representação de é apenas parcialmente útil. Ele assume que existe exatamente um autovalor igual a zero, mas a não-determinação está sempre presente, não é? A
Wolfgang Bangerth
@WolfgangBangerth Estou tentando descobrir o significado de "não-determinação". Se isso for , que detém para o exemplo acima, e eu não tenho certeza se ele pode ser generalizada para . No entanto, exceto , duvido que a solução sempre exista. A = I - 1 n w T n = 3det(A)=0A=I1nwTn=3
usando o seguinte comando
Não, o que eu quis dizer é que a solução para o seu problema não é determinada exclusivamente. Eu estava apontando o fato de que se a matriz tem um autovalor zero ou não, na verdade, não muda o fato de que o problema da raiz quadrada não tem solução única.
Wolfgang Bangerth

Respostas:

11

Temos a matriz Laplaciana que possui um conjunto de autovalores para em que sempre know . Assim, a matriz laplaciana é sempre semi-definida positiva simétrica. Como a matriz não é definida positivamente simétrica, precisamos ter cuidado ao discutir a decomposição de Cholesky. A decomposição de Cholesky existe para uma matriz semi-definida positiva, mas não é mais única. Por exemplo, a matriz semi-definida positiva tem infinitamente muitos Decomposições de Cholesky λ 0λ 1λ n G R n × n λ 0 = 0 G A = [G=ATAλ0λ1λnGRn×nλ0=0GA= [

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

No entanto, porque temos uma matriz que é conhecido por ser uma matriz Laplacian podemos realmente evitar as ferramentas de álgebra linear mais sofisticados como decomposições de Cholesky ou encontrar a raiz quadrada da matriz semi-definida positiva tal que nós recuperamos . Por exemplo, se tivermos a matriz Laplace , podemos usar a teoria dos grafos para recuperar o matriz desejada . Fazemos isso formulando a matriz de incidência orientada. Se definirmos o número de arestas no gráfico comoG A G R 4 × 4 G = [GGAGR4×4 AmnUmm×n A e v = { 1 se  de e = ( v , w )  e  v < w - 1 se  de e = ( v , w )  e  v > w 0 de outro modo , e=(v,w)vwGA= [

G=[3111110010101001]
Ame o número de vértices a serem , a matriz de incidência orientada será matriz dada por onde denota a aresta que liga os vértices e . Se pegarmos um gráfico para com quatro vértices e três arestas, teremos a matriz de incidência 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 o problema matriz que descrevem que seria construir um gráfico para com o mesmo número de arestas como vértices, então deve ter a capacidade de reconstruir a matriz quando são dadas somente a matriz Laplaciano .GAG

Atualizar:

Se definirmos a matriz diagonal dos graus de vértice de um gráfico como e a matriz de adjacência do gráfico como , a matriz laplaciana do gráfico é definida por . Por exemplo, no gráfico a seguirNMGG=NM

descobrimos que a matriz laplaciana é Agora, relacionamos o à matriz de incidência orientada usando as arestas e os nós dados no gráfico mostrado. Mais uma vez, encontramos as entradas de de GA

G=[3000010000100001][0111100010001000].
GAA
Aev={1if e=(v,w) and v<w1if e=(v,w) and v>w0otherwise,.
e1v1e . Portanto, para determinar , observamos que o índice de é menor que o índice de (ou temos o caso na definição de ). Assim, . Da mesma forma, pela maneira de comparar índices, podemos encontrar . Damos abaixo de uma maneira mais explícita, referenciando as arestas e vértices mostrados. v2Ae1,v1v1v2v<wAevAe1,v1=1Ae1,v2=1A
A=v1v2v3v4e11100e21010e31001.

A seguir, generalizamos o conceito da matriz laplaciana em um gráfico não direcionado ponderado. Seja um gráfico finito não direcionado, definido por e seu conjunto de vértices e arestas, respectivamente. Para considerar um gráfico ponderado, definimos uma função de peso que atribui um peso real não negativo a cada extremidade do gráfico. Denotaremos o peso anexado aos vértices de conexão das arestas e por . No caso de um gráfico ponderado, definimos o grau de cada vértice como a soma de todas as arestas ponderadas conectadas a , ou seja, VGrVE

w:V×VR+,
uvw(u,v)uVu
du=vVw(u,v).
No gráfico dado , podemos definir a matriz de adjacência ponderada como com linhas e colunas indexadas por cujas entradas são dadas por . Seja a matriz diagonal indexada por com os graus dos vértices na diagonal, podemos encontrar a matriz laplaciana ponderada exatamente como antes de GrAd(Gr)n×nVw(u,v)D(Gr)VG
G=D(Gr)Ad(Gr).

No problema da postagem original, sabemos que A partir dos comentários, sabemos que buscamos uma fatoração para onde e especificamos tem o formato onde . Para generalidade total, assuma que a matriz não possui zero entradas. Assim, se formularmos a matriz de incidência orientada ponderada para encontrar , queremos a matriz de adjacência ponderada

G=[34135121323135121334].
GG=ATAAA=I1nwTwT1n=1AAAd(Gr)para não ter zero entradas também, ou seja, o gráfico ponderado terá loops. Realmente, calcular a matriz de incidência orientada ponderada parece difícil (embora possa simplesmente ser resultado da minha inexperiência com gráficos ponderados). No entanto, podemos encontrar uma fatoração da forma que procuramos de maneira ad hoc, se assumirmos que sabemos algo sobre os loops em nosso gráfico. Dividimos a matriz laplaciana ponderada nas matrizes de grau e adjacência da seguinte forma: G
G=[5400010001112][12135121313135121316]=D(Gr)Ad(Gr).

Portanto, sabemos que os loops em , e têm pesos , e respectivamente. Se colocarmos os pesos nos loops em um vetor = então podemos recuperar a matriz que queremos no formato desejado v1v2v31/21/31/6w[12 13 16]TA
A=I1nwT=[121316122316121356].

Parece que, se tivermos conhecimento dos loops em nosso gráfico ponderado, podemos encontrar a matriz na forma desejada. Novamente, isso foi feito de maneira ad hoc (como eu não sou um teórico dos grafos), portanto pode ser um hack que funcionou apenas para esse problema simples.A

Andrew Winters
fonte
Recuperar no caso do Laplacian como você descreve, não deve ser um problema (no exemplo, apenas uma linha / coluna contém elementos diferentes de zero). Eu acho que as questões complicam com o Laplaciano geral "completo", como no meu exemplo. Dados os graus de liberdade de , não tenho certeza se a solução pode ser obtida, sujeita às restrições fornecidas acima. AGO(n2)G
usando o seguinte comando
Certo, o exemplo dado por é altamente simplificado, mas será possível no caso geral em que é uma matriz completa. O problema da teoria dos grafos se torna mais complicado à medida que você aumenta o número de arestas e vértices. Em essência, substituímos um problema difícil de fatoração da matriz por um problema difícil da teoria dos grafos. GG
Andrew Winters
Ok, eu agradeceria se você tentar reconstruir como é dado acima de fornecido . AG
usando o seguinte comando
@AndrewWinters: Você poderia esclarecer como é determinado a partir de ? Não está claro para mim como o seu algoritmo procede no caso geral. AG
quer
1
Eu não acho que será possível para um geral , pois parece que a forma de fatoração específica existirá apenas para certos tipos de gráficos ponderados. Portanto, as matrizes laplacianas que têm a forma são um subconjunto de todas as possíveis matrizes laplacianas. A = I - 1 n w TGA=I1nwTGG=ATA=(I1nwT)T(I1nwT)
Andrew Winters
9

Eu acho que você está confundindo a matriz quadrada única da matriz semi-definida positiva hermitiana , ou seja, uma matriz semi-definida positiva hermitiana satisfazendo,AB

B2=A,

com o problema não único de encontrar uma matriz satisfazendoC

CHC=A,

onde claramente o mapeamento , para qualquer unitário , preserva a identidade. Como você notou, uma fatoração de Cholesky fornece uma solução possível. No entanto, observe que Cholesky funciona apenas para matrizes definidas positivamente hermitianas (com a possível exceção de uma matriz semi-definida positiva hermitiana que é definida positiva se a última linha e coluna forem removidas).CQCQ

Por fim, pode-se definir construtivamente a raiz quadrada da matriz exclusiva de uma matriz semi-definida positiva hermitiana por meio de sua decomposição de autovalor, digamos

A=UΛUH,

onde é unitário e é diagonal com entradas não negativas devido a ser semi-definido positivo. A raiz quadrada da matriz hermitiana pode ser facilmente identificada comoΛ AUΛA

B=UΛUH.
Jack Poulson
fonte
Você está certo sobre a raiz quadrada da matriz . Claramente, existem diferentes maneiras de obter a fatoração, mas poderia garantir que (da minha busca) pudesse ser escrito conforme eu formulava. A
usar o seguinte comando
6

G=ATA.
GG = L T L A = L A GGG=LTLA=LAG, e se você quiser ter uma em particular, precisará reformular a pergunta de modo a especificar as propriedades estruturais do "ramo" da raiz quadrada em que está interessado.

Eu diria que essa situação não é diferente de colocar a raiz quadrada entre os números reais usando os números complexos: ali também, em geral, você tem duas raízes e precisa dizer qual delas deseja tornar a resposta única.

Wolfgang Bangerth
fonte
Você está definitivamente certo. Outra maneira seria a abordagem de decomposição espectral, como afirmo acima. Fiz uma edição para tornar a solução única. Espero que isso não complique as coisas.
usero
É sempre uma solução com a restrição que dou acima? Talvez isso ocorra apenas em alguns casos, e não em geral.
usero
Na verdade, Cholesky não funciona no seu caso, pois requer (essencialmente) que a matriz seja definida positivamente por eremitas.
Jack Poulson
4

Eu acho que você pode aplicar a fatoração para sua matriz A. Como sua matriz possui valores próprios não negativos, a matriz diagonal D terá entradas não negativas ao longo da diagonal. Então você pode facilmente fatorarLDLTD^=DG=LD^

Willowbrook
fonte
LDLT
1
@ JackPoulson Eu tento uma matriz singular A no matlab e execute ldl, ele funciona. Os valores eigen corresponde zero para os zeros na diagonal de D
Willowbrook
2
LDLTPAP=LDLTD2×2