Проблеми, коли кон'югат градієнта працює набагато краще, ніж GMRES


17

Мене цікавлять випадки, коли градієнт кон'югату працює набагато краще, ніж метод GMRES.

Взагалі, CG є кращим вибором у багатьох випадках SPD (симетрично-позитивний-визначений), оскільки він вимагає меншої кількості зберігання, а теоретична пов'язана зі швидкістю конвергенції для CG подвійна, ніж GMRES. Чи є якісь проблеми, коли фактично спостерігаються такі ставки? Чи є характеристика випадків, коли GMRES виконує кращі або порівнянні з CG для однакової кількості spmvs (розріджене множення матрично-векторних).

Відповіді:


8

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

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

Тоді випадки, коли слід очікувати, що CG буде відрізнятися від GMRES, тоді це коли константи, що мають на увазі норму еквівалентності, сильно відрізняються. Це може бути справедливим, наприклад, для спектрального методу Галеркіна високого порядку, коли дискретна норма 2 л2 використовується в GMRES, розглядає всі ступені свободи як рівні, коли насправді поліноміальні градієнти найгостріші біля меж (отже, кластеризація вузлів), і так Константи еквівалентності норми між цією нормою і кажуть, що неперервна норма L2 задана матрицею маси, може бути дуже великою.


Хотів навести приклад тут із методом високого порядку та історіями конвергенції CG, GMRES та GMRES + Холеського трюк .. але, на жаль, єдиним кодом, який я маю під рукою для проблем другого порядку, є ГД несиметричного різноманіття .. тому CG isn я не хотів би бачити це в дії.
Рейд.Атчесон

3
Я думаю, що ваша відповідь отримує щось важливе, але я б хотів, щоб ви пояснили. Зокрема, питання - це чисте лінійне алгебрне запитання, а ваша відповідь говорить про фізичні норми та матриці мас тощо з числового PDE. Чи можемо ми сказати щось точне про те, як мінімізація різних норм у межах одного простору Крилова призводить до різних ітерацій?
Ендрю Т. Баркер

Окрім чисельних прикладів, я не думаю, що було проведено ретельне теоретичне дослідження, що пояснює, як різні норми дають суттєво різні відповіді. Думаю, питання полягає в тому, що результати обертаються навколо асимптотики, а для фіксованої лінійної системи теоретичні результати будуть ідентичними по модулю постійними факторами. Якщо там є якісь теоретичні дослідження, я б хотів їх побачити, але, запитавши когось із експертів лінійної алгебри з чисельних питань мого відділу, не здається, що ще є точний теоретичний аналіз, що показує, що відбувається з різними нормами.
Reid.Atcheson

4

Я підозрюю, що взагалі немає великої різниці між GMRES та CG для матриці SPD.

Скажімо , ми вирішуємо х = Ь з А симетричним позитивно певним і вихідним припущенням х 0 = 0 і породжує итерацией з CG і GMRES, назвемо їх х з до і х г до . Обидва ітеративні методи будуть будувати x k з того самого простору Крилова K k = { b , A b , A 2 b , } . Вони зроблять це дещо по-різному.Ах=бАх0=0хкcхкгхкКк={б,Аб,А2б,}

CG характеризується мінімізацією похибки в енергетичній нормі, індукованій A , так що ( A e c k , e c k ) = ( A ( x - x c k ) , x - x c k ) = min y K ( A ( x - y ) , x -ekc=xxkcA

(Аекc,екc)=(А(х-хкc),х-хкc)=хвуК(А(х-у),х-у).

GMRES мінімізує замість залишкового , і робить це в дискретній нормі 2 , так що ( r k , r k ) = ( b - A x g k , b - A x g k ) = min y K ( b - A y , b - A y ) .rк=б-Ахкг2

(rк,rк)=(б-Ахкг,б-Ахкг)=хвуК(б-Ау,б-Ау).
Тепер, використовуючи рівняння помилок ми також можемо записати GMRES як мінімізацію ( r k , r k ) = ( A e g k , A e g k ) = ( A 2 e g k , e g k ) де Я хочу підкреслити , що це справедливо тільки для СПД матриці A . Тоді ми маємо CG, мінімізуючи помилку щодо AАек=rк
(rк,rк)=(Аекг,Аекг)=(А2екг,екг)
ААнорма та GMRES мінімізуючи похибку щодо норми . Якщо ми хочемо, щоб вони поводилися дуже по-різному, інтуїтивно нам би знадобився такий А , що ці дві норми сильно відрізняються. Але для SPD A ці норми поводяться зовсім аналогічно.А2АА

Щоб отримати ще більш конкретний характер, у першій ітерації з простором Крилова і CG, і GMRES побудують наближення вигляду x 1 = α b . CG вибере α = ( b , b )К1={б}х1=αб і GMRES вибере α=(Ab,b)

α=(б,б)(Аб,б)
α=(Аб,б)(А2б,б).
А(ϵ,1,1,1,)б=(1,1,0,0,0,)ϵ0Аб так що цей фактор у двох відмінностях продовжується протягом усієї ітерації, але я сумніваюся, що вона стає гіршою за це.

2
б=(1,ϵ,0,0,)|б|=1+ϵбТАб=2ϵбТА2б=ϵ1+ϵ2αCG=ϵ-1+12ϵ-1αGMRES=21+ϵ22ϵ-1

3

Одне полягає в тому, що GMRES ніколи не використовується там, де можна застосувати CG. Я не думаю, що має сенс порівнювати ці два. Що стосується матриць SPD, CG, безумовно, є переможцем через вимоги до зберігання та причини, про які ви згадали вище. Питання, яке було б цікавим, полягає в тому, щоб знайти розширення CG, яке стосується проблем, коли CG неможливо застосувати. Існують такі методи, як BiCG-stab, які не потребують лінійно збільшуваної пам'яті, як GMRES, але конвергенція не така хороша, як GMRES (іноді навіть із перезапущеним GMRES).


2
Існують схеми IDR, які усувають розрив між GMRES та BiCG з точки зору економії пам’яті, стабільності та конвергенції: ta.twi.tudelft.nl/nw/users/gijzen/IDR.html Я не впевнений, що я згоден з тим, що GMRES не слід використовувати, якщо CG могла бути. Якщо ви можете зробити холесну факторизацію матриці, яка індукує вашу енергетичну норму, то ви можете передати це в симетричну ітерацію Ланцоса і отримати тричасний розчин рецидиву, який буде вести себе майже як КГ. Звичайно, CG - це простіший варіант, але варіант доступний :)
Reid.Atcheson

2
Наприклад, якщо ви використовуєте більш плавний Крилов, то GMRES, ймовірно, є кращим, оскільки він використовує більш слабку норму, яка спрямована на більші власні значення, які мають більш високу частоту.
Джед Браун
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.