Art arda aşırı gevşeme (SOR) yöntemini optimize etmek için herhangi bir buluşsal yöntem var mı?


10

Anladığım kadarıyla, gevşeme ardışıklığı, parametresini seçerek 0ω2ve (yarı) Gauss-Seidel yinelemesinin doğrusal bir kombinasyonunu ve önceki zaman dilimindeki değeri kullanarak çalışır.

uk+1=(ω)ugsk+1+(1ω)uk

'Quasi' diyorum çünkü ugsk+1 herhangi bir zaman diliminde bu kurala göre güncellenen en son bilgileri içerir. ( ω=1 bunun tam olarak gauss-seidel olduğunu unutmayın).

Her durumda, için optimal seçimdeω (yinelemenin diğerlerinden daha hızlı birleşeceği şekilde), mekansal çözünürlük sıfıra yaklaştıkça poisson problemi için 2'ye yaklaştığını okudum . Diğer simetrik, çapraz olarak baskın problemler için de benzer bir eğilim var mı? Yani, uyarlanabilir bir optimizasyon şemasına gömmeden omega'yı en iyi şekilde seçmenin bir yolu var mı? Diğer sorun türleri için başka buluşsal yöntemler var mı? Ne tür problemler gevşeme ( ω<1 ) uygun olur?


Çok soru değil, ama bkz. Salakhutdinov ve Roweis, Uyarlanabilir Aşırı Reaktif Bağlı Optimizasyon Yöntemleri 2003, 8p. ( Uyarlanabilir hızlanmaların kova başına yüksek patlaması vardır, ancak afaik analiz etmek imkansızdır, bu yüzden burada konu dışı.)
denis

Yanıtlar:


12

Sönümlü Jacobi

ADD1A[a,b]ω

BJacobi=IωD1A
[1ωb,1ωa]
ωopt=2a+b
ρopt=12aa+b=baa+b.
abba

Art arda aşırı gevşeme (SOR)

D1AμmaxID1Aμmax<1

ωopt=1+(μmax1+1μmax2)2
ρopt=ωopt1.
ωopt yaklaşır .μmax1

Yorumlar

Artık 1950 değil ve sabit yinelemeli yöntemleri çözücü olarak kullanmak gerçekten mantıklı değil. Bunun yerine, onları çoklu ızgara için düzleştirici olarak kullanıyoruz. Bu bağlamda, sadece spektrumun üst ucunu hedeflemeye özen gösteriyoruz. SOR'da gevşeme faktörünün optimize edilmesi SOR'un yüksek frekansların çok az sönümlemesine neden olur (daha düşük frekanslarda daha iyi yakınsama karşılığında), bu nedenle SOR'da karşılık gelen standart Gauss-Seidel'i kullanmak genellikle daha iyidir . Simetrik olmayan problemler ve çok değişken katsayılarla ilgili problemler için, yetersiz gevşemiş SOR ( ) daha iyi sönümleme özelliklerine sahip olabilir.ω=1ω<1

her iki özdeğerini tahmin etmek pahalıdır, ancak en büyük özdeğer birkaç Krylov yinelemesi kullanılarak hızlı bir şekilde tahmin edilebilir. Polinom yumuşatıcılar (Jacobi ile önceden koşullandırılmıştır) sönümlü Jacobi'nin çoklu yinelemelerinden daha etkilidir ve yapılandırılması daha kolaydır, bu yüzden tercih edilmelidirler. Polinom yumuşatıcılar hakkında daha fazla bilgi için bu cevaba bakınız .D1A

Bazen SOR'un GMRES gibi Krylov yöntemleri için önkoşul olarak kullanılmaması gerektiği iddia edilmektedir. Bu en iyi gevşeme parametre yineleme matris tüm öz verilmesi gerektiğini gözlem gelen bir dairenin üzerinde menşe merkezinde. Önkoşullu operatörün spektrumu(1

BSOR=1(1ωD+L)1A
(1ωD+L)1Aaynı yarıçaplı bir daire üzerinde özdeğerlere sahiptir, ancak 1 üzerinde merkezlenmiştir. Kötü koşullandırılmış operatörler için dairenin yarıçapı 1'e oldukça yakındır, bu nedenle GMRES, orijine yakın özdeğerleri genellikle iyi olmayan bir açıyla görür. yakınsama için. Pratikte, GMRES, SOR ile önceden koşullandırıldığında, özellikle zaten oldukça iyi şartlandırılmış problemler için makul bir şekilde birleşebilir, ancak diğer önkoşullar genellikle daha etkilidir.

4
Artık 1950 olmadığı konusunda hemfikirim: o) ancak kırtasiye yinelemeli çözümleyicileri kullanmanın artık mantıklı olmadığını kabul ediyorum. Yüksek dereceli doğrusal olmayan serbest yüzey çözücülere (hem potansiyel akış hem de euler denklemleri) dayanan bir mühendislik uygulama çözücüsü için sabit bir yinelemeli çözücü kullanarak çok ızgaralı ders kitabı verimliliği elde edebiliriz. Verimlilik, ulaşılabilir doğruluk içinde önceden koşullandırılmış bir GMRES krylov altuzay yöntemi kadar iyiydi (son pub'ımız burada onlinelibrary.wiley.com/doi/10.1002/fld.2675/abstract kavram kanıtı olarak hizmet vermektedir).
Allan P. Engsig-Karup

1
Gauss-Seidel'i multigrid için daha pürüzsüz (SOR gibi yöntemlerin ait olduğu yer) kullanıyorsunuz. Multigrid iyi performans gösteriyorsa, dış bir Krylov yöntemi de gerekli değildir (makaleniz bu karşılaştırmaları göstermese de). Multigrid verimliliği kaybetmeye başlar başlamaz (örn. Ayrıklaştırma hatasına ulaşmak için 5'ten fazla yineleme), bir Krylov yöntemini multigrid döngüsünün etrafına sarmak genellikle faydalı olacaktır.
Jed Brown

Tüm yöntem, GS tipi yumuşatmalı bir p-multigriddir, ancak tüm operatör sabit olduğundan tüm yöntem sabit bir yinelemeli yöntem olarak yazılabilir. M'yi multigrid yönteminden oluşturulmuş bir ön koşullayıcı ile önceden koşullandırılmış Richardson yöntemi olarak görüntüleyebilirsiniz. Analiz yapılmış ancak henüz yayınlanmamıştır. Aslında bu çalışma önerdiğiniz diğer yöne gitti. Bu çalışmadaki krylov yöntemi (bir GMRES) atıldı ve daha sonra bu kadar verimli (ve azaltılmış bellek gereksinimleriyle) olduğunu tespit ettiğimiz için yüksek dereceli bir çoklu-ızgara yöntemine dönüştürüldü.
Allan P. Engsig-Karup

Kullanımı - ve -multigrid bir Krylov yöntemi dış kullanılır olup olmadığını tabii bağımsız taşımaktadır. Çeşitli işlemlerin göreli maliyetleri elbette GPU'lar için CPU'lara kıyasla farklıdır ve uygulamalar arasında değişkenlik vardır. Önkoşullu Richardson sadece bir kusur düzeltme yöntemidir. Newton ve Picard (eğer böyle yazılırsa) doğrusal olmayan yöntemler de öyle. Diğer doğrusal olmayan yöntemler (NGMRES, BFGS, vb.) De tarih kullanır ve doğrusal olmama durumunun göreceli gücüne bağlı olarak daha iyi olabilir. h pphp
Jed Brown

Çok sıralı düzleştiricilerde, bazen yüksek mertebeden / düşük mertebeden kuplajın çoklayıcı hale getirilmesinin tercih edilebilir (mimari izin). Bu aynı zamanda "önkoşullu Richardson" formülasyonunu da genişletir. (Geçtiğimiz hafta bir konferansta, tüm yöntemleri özünde, iç içe yinelemeli önkoşullu Richardson olarak görmek isteyen bir adamla bir tartışma yaptım, ki bu diğer çözücü kompozisyon ifadelerine göre özel bir fayda olduğunu düşünmüyorum. ancak puanlarınız bana tartışmayı hatırlattı.)
Jed Brown
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.