Пошук квадратного кореня лаплаціанської матриці


11

Припустимо, наведена наступна матриця з транспонованою . Добуток виходить ,[ 0,500 - 0,333 - 0,167 - 0,500 0,667 - 0,167 - 0,500 - 0,333 0,833 ] Т Т = 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]

де - матриця Лаплаціа . Зауважимо , що матриці і мають рангу 2, з нульовим власним значенням , відповідний власний вектор .A G 1 n = [ 1 1 1 ] TGAG1n=[111]T

Цікаво, яким був би спосіб отримати якби дано лишеЯ спробував eigendecomposition , а потім встановив , але отримав інший результат. Я думаю, це стосується дефіциту рангу. Може хтось це пояснить? Зрозуміло, що наведений вище приклад - для ілюстрації; Ви можете розглянути загальну декомпозицію матриці Лаплаціа вищевказаної форми.G G = U Е U Т ' = U Е 1 / 2AGG=UEUTA=UE1/2


Оскільки, наприклад, розклад Холеського може бути використаний для пошуку , розкладання на могло б отримати багато рішень. Я зацікавлений в розчині , який може бути виражений як де є одинична матриця, , а бути деякий вектор задовольняючи . Якщо це спрощує питання, ви можете припустити, що записи є негативними. 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

Я думаю, що коментар, який ви додали про представлення , лише корисний. Передбачається, що існує рівно одне власне значення, що дорівнює нулю, але недетермінантність завжди є, чи не так? A
Вольфганг Бангерт

@WolfgangBangerth Я намагаюся з'ясувати значення "недетермінантності". Якщо це , то справедливо і для наведеного вище прикладу, і я не впевнений, що це може бути узагальнена для . Однак, крім , я сумніваюся, що рішення завжди існувало б. det(A)=0A=I1nwTn=3
usero

Ні, я мав на увазі те, що рішення вашої проблеми не визначено однозначно. Я вказував на той факт, що матриця має нульове власне значення чи ні, насправді не змінює той факт, що проблема квадратного кореня не має унікального рішення.
Вольфганг Бангерт

Відповіді:


11

У нас є матриця лаплаціанської матриці яка має набір власних значень для де ми завжди know . Таким чином, матриця Лаплація завжди симетрична позитивна напіввизначеність. Оскільки матриця не є симетричною позитивно визначеною, ми повинні бути обережними, коли ми обговорюємо розклад Холеського. Розклад Холеського існує для позитивної напіввизначеної матриці, але вона вже не є унікальною. Наприклад, позитивна напіввизначена матриця має нескінченно багато Чолеський розкладання G=ATAλ0λ1λnGRn×nλ0=0G

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

Однак, оскільки ми маємо матрицю , яка , як відомо, лапласіан матриця ми можемо фактично уникнути більш складних лінійних інструментів алгебри як Холецкого розкладання або знаходження квадратного кореня з позитивного полуопределенного матриці такий , що ми повертаємо . Наприклад, якщо у нас є матриця Лапласа , ми можемо використовувати теорію графіків для відновлення бажано матриця . Ми робимо це, формулюючи орієнтовану матрицю падіння. Якщо визначити кількість ребер у графіку, що дорівнюватимеGGAGR4×4

G=[3111110010101001]
Amа кількість вершин буде тоді орієнтована матриця падіння буде матрицею заданою де позначає край, який з'єднує вершини і . Якщо ми візьмемо графік для з чотирма вершинами та трьома ребрами, то у нас є орієнтована матриця падіння nAm×n
Aev={1if e=(v,w) and v<w1if e=(v,w) and v>w0otherwise,
e=(v,w)vwG
A=[110010101001],
G=ATA . Для матричної задачі ви охарактеризували б ви побудувати графік для з тим же числом ребер , як вершини, то ви повинні мати можливість відновити матрицю , коли ви тільки дали лапласовскій матрицю .GAG

Оновлення:

Якщо визначити діагональну матрицю вершинних ступенів графа як а матрицю примикання графа як , то матриця Лаплаціана графа визначається . Наприклад, у наступному графікуNMGG=NM

ми знаходимо, що матриця є Тепер ми відносимо до орієнтованої матриці падіння використовуючи ребра та вузли, наведені на зображеному графіку. Знову знаходимо записи з

G=[3000010000100001][0111100010001000].
GAA
Aev={1if e=(v,w) and v<w1if e=(v,w) and v>w0otherwise,.
e1v1і . Отже, для визначення зауважимо, що індекс менший, ніж індекс (або маємо випадок у визначенні ). Таким чином, . Аналогічно шляхом порівняння індексів ми можемо знайти . Наведемо нижче більш чітко, посилаючись на зображені краї та вершини. v2Ae1,v1v1v2v<wAevAe1,v1=1Ae1,v2=1A
A=v1v2v3v4e11100e21010e31001.

Далі ми узагальнюємо поняття матриці Лаплаціа до зваженого непрямого графа. Нехай - непрямий кінцевий графік, визначений та його вершиною та ребрами, встановленими відповідно. Для розгляду зваженого графіка ми визначаємо вагову функцію яка присвоює кожному негативному реальній вазі кожен край графіка. Позначимо вагу, приєднану до ребер, що з'єднують вершини і , . У разі зваженого графіка визначаємо ступінь кожної вершини як суму всіх зважених ребер, з'єднаних з , тобто GrVE

w:V×VR+,
v w ( u , v ) u V u d u = v V w ( u , v ) . G r A d ( G r ) n × n V w ( u , v ) D ( G r ) Vuvw(u,v)uVu
du=vVw(u,v).
З наведеного графіка ми можемо визначити зважену матрицю суміжності як із рядками та стовпцями, індексованими , записи яких задані . Нехай - діагональна матриця, індексована з вершиновими градусами на діагоналі, тоді ми можемо знайти зважену матрицю Лаплаціана само, як раніше GrAd(Gr)n×nVw(u,v)D(Gr)VG
G=D(Gr)Ad(Gr).

У проблемі з оригіналу повідомлення ми знаємо З відомих нам коментарів ми шукаємо факторизацію для де а форму де . Для повної загальності припустимо, що в матриці немає нульових записів. Таким чином, якщо ми сформулюємо зважену орієнтовану матрицю падіння для пошуку ми хочемо, щоб зважена матриця суміжності

G=[34135121323135121334].
GG=ATAAA=I1nwTwT1n=1AAAd(Gr)також немає нульових записів, тобто зважений графік матиме петлі. Насправді обчислити зважену орієнтовану матрицю захворюваності здається складною (хоча це може бути просто результатом мого недосвідчення щодо зважених графіків). Однак ми можемо знайти факторизацію форми, яку ми шукаємо, спеціально, якщо припустити, що ми знаємо щось про петлі в нашому графіку. Ми розділимо зважену матрицю Лаплаціана на матриці ступеня та суміжності так, як G
G=[5400010001112][12135121313135121316]=D(Gr)Ad(Gr).

Таким чином, ми знаємо, що петлі на , та мають ваги , та відповідно. Якщо ми покладемо ваги на петлі у вектор = ми можемо відновити матрицю ми хочемо у потрібній формі v1v2v31/21/31/6w[12 13 16]TA
A=I1nwT=[121316122316121356].

Виявляється, якщо ми маємо знання про петлі в нашому зваженому графі, ми можемо знайти матрицю в потрібному вигляді. Знову ж таки, це було зроблено спеціально (оскільки я не теоретик графіків), тому це може бути хак, який працював саме на цю просту проблему.A


Відновлення у випадку Laplacian як ви описуєте, не повинно бути проблемою (у вашому прикладі лише один рядок / стовпець містить ненульові елементи). Я здогадуюсь, що справи ускладнюються із загальним "повним" лаплаціанцем, як у моєму прикладі. З огляду на ступеня свободи , я не впевнений, чи можна було б отримати рішення за умови обмежень, які я наводив вище. AGO(n2)G
usero

Так, приклад я даю, дуже спрощений, але це стане можливим у загальному випадку, коли - повна матриця. Проблема теорії графіків ускладнюється, оскільки ви збільшуєте кількість ребер і вершин. По суті, ми замінюємо складну задачу факторизації матриць на складну задачу теорії графіків. GG
Ендрю Вінтерс

Добре, я був би вдячний , якщо ви намагаєтеся реконструювати , як дано вище від даних . AG
usero

@AndrewWinters: Чи можете ви пояснити, як визначається з ? Мені незрозуміло, як працює ваш алгоритм у загальному випадку. AG
Джефф Оксберрі

1
Я не думаю, що це стане можливим для загального оскільки, здається, специфічна форма факторизації буде існувати лише для певних типів зважених графіків. Тож лаплаціанські матриці які мають вигляд є підмножиною всіх можливих лаплаціанських матриць. GA=I1nwTGG=ATA=(I1nwT)T(I1nwT)
Ендрю Вінтерс

9

Я думаю, що ви плутаєте унікальний матричний квадратний корінь ермітової позитивної напіввизначеної матриці , тобто, ермітової позитивної напіввизначеної матриці задовольняє,AB

B2=A,

з не унікальною проблемою пошуку матриці задовольняєC

CHC=A,

де чітко відображення для будь-якого єдиного зберігає ідентичність. Як ви помітили, факторизація Холеського забезпечує одне можливе рішення. Однак зауважте, що Чолеський працює лише для ермітових позитивно-визначених матриць (за можливим винятком ермітової позитивної напіввизначеної матриці, яка є позитивно-визначеною, якщо видалити останній рядок і стовпець).CQCQ

Нарешті, можна конструктивно визначити унікальний квадратний корінь матриці ермітової позитивної напіввизначеної матриці шляхом її розкладання власного значення, скажімо

A=UΛUH,

де є унітарним, а - діагональною з негативними записами через є позитивним напіввизначеним. Ермітову матрицю квадратного кореня можна легко визначити якΛ AUΛA

B=UΛUH.

Ви маєте рацію щодо матричного квадратного кореня . Зрозуміло, що існують різні способи досягнення факторизації, але можна гарантувати, що (з мого квесту) можна записати так, як я сформулював. A
usero

6

По суті, ви вимагаєте знайти квадратний корінь A матриці G, так що Існує багато способів зробити це, якщо - симетрична матриця. Наприклад, якщо є симетричним, то розкладання Холецкого надає вам одна відповідь: . Але ви вже знайшли іншу відповідь, матрицю ви вже маєте. Це просто означає, що у матриці багато "квадратних коренів" , і якщо ви хочете мати одне конкретне, вам потрібно перефразувати питання таким чином, щоб ви вказали структурні властивості "гілки" квадратний корінь, який вас цікавить.G G G = L T L A = L A G

G=ATA.
GGG=LTLA=LAG

Я б сказав, що ця ситуація не відрізняється від того, щоб взяти квадратний корінь серед дійсних чисел, використовуючи складні числа: там теж загалом у вас є два корені, і ви повинні сказати, на який ви хочете зробити відповідь унікальною.


Ви точно маєте рацію. Іншим способом було б підхід спектрального розкладання, як я зазначив вище. Я зробив правки, щоб зробити рішення унікальним. Сподіваємось, це не ускладнить справи.
usero

Чи завжди існує рішення із обмеженням, яке я надаю вище? Можливо, це стосується лише деяких випадків, а не взагалі.
usero

Власне, Чолеський не працює у своїй справі, оскільки він (по суті) вимагає, щоб матриця була ермітською позитивно-визначеною.
Джек Поульсон

4

Я думаю, ви можете застосувати факторизацію для своєї матриці А. Оскільки ваша матриця має негативні власні значення, діагональна матриця D матиме негативні записи вздовж діагональ. Тоді ви можете легко розподілити фактори . І ви отримаєте матрицю . Ейгендекомпозиція не є чисельно стійкою, тому, я думаю, вам слід уникати такого роду розкладання.D = LDLT G=L DD^=DG=LD^


Я не згоден з двох причин: (1) факторизация не працює для сингулярних матриць (його матриця вироджена), і (2) на власні значення розкладання ермітових матриць є вважаються стабільними, так як їх матриці власних векторів є унітарними. LDLT
Джек Поульсон

1
@JackPoulson Я пробую сингулярну матрицю A в matlab і запускаю ldl, вона працює. Нульові власні значення відповідають нулям у діагоналі D.
Willowbrook

2
Я думаю, що ви виявите, що програма "ldl" MATLAB обчислює блокове розкладання з поворотом , тобто , де не обов'язково бути діагональним (він може мати блоки). Щоб уникнути поділу на нуль, оскільки матриця є сингулярною, нульові діагональні записи поводяться в нижній правій частині матриці. P A P = L D L T D 2 × 2LDLTPAP=LDLTD2×2
Джек Поульсон
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.