SQP neden doğrusal olmayan programlama için Augmented Lagrangian 'den daha iyi?


9

Galahad [1] ile ilgili teknik raporda yazarlar, genel doğrusal olmayan programlama problemleri bağlamında,

Aklımızda, SQP [sıralı kuadratik programlama] yöntemlerinin uzun vadede [Artırılmış Lagrange yöntemlerinden] daha başarılı olacağından hiç şüphe yoktu ...

Bu inancın temeli ne olabilir? Yani, SQP yöntemlerinin Artırılmış Lagrange yöntemlerinden daha hızlı / daha güvenilir olması gerektiğini gösteren teorik sonuçlar var mı?

[1] Gould, Orban ve Toint tarafından yapılan büyük ölçekli doğrusal olmayan optimizasyon için iplik korumalı Fortran 90 paketlerinin bir kütüphanesi olan Galahad

Yanıtlar:


2

SQP yöntemleri, hedefin iki kez farklılaştırılabilir olmasını gerektirir (cf https://en.m.wikipedia.org/wiki/Sequential_quadratic_programming ), ayrıca Artırılmış Lagranyalılar, hedef işlenemez durumda olsa bile çalışırlar (bu nedenle, görüntü işleme topluluğu cf ftp'sinde son zamanlarda yeniden dirilme : //arachne.math.ucla.edu/pub/camreport/cam09-05.pdf )

Galahad yazılımını bilmiyorum, ancak farklılaştırılabilir optimizasyon problemlerini çözmesi gerekiyorsa, muhtemelen objektif işlevi ayırt etmesine izin verilen bir yöntem kullanarak çok daha iyi olacaktır.


SQP'nin iki farklılaştırılabilir objektif işlevi gerektirdiği doğru değildir. Objektif fonksiyonun daha az farklılaşabilirliği varsa, ancak bu, artırılmış Lagrange yöntemleriyle tamamen aynı ise, daha düşük yakınsama oranına sahip bir yöntem elde edebilirsiniz.
Wolfgang Bangerth

2

Dış iterasyonlar açısından, SQP ikinci türev bilgileri içerdiğinden kazanmalıdır, oysa ADMM gibi artırılmış lagney yöntemleri desteklememektedir.

Bununla birlikte, akılda tutulması gereken bir şey, bu yöntemler için her bir yinelemenin doğrusal bir sistemi çözmeyi içermesidir, bu nedenle adil bir karşılaştırma yapmak için bu sistemlerin çözmenin ne kadar kolay olduğunu dikkate almanız gerekir.

Artırılmış lagrangian (alternatif) yöntemler için, gibi bir şeyi çözdüğünüz her yineleme burada , doğrudan bilinen ve genellikle uğraşılması daha kolay olan objektif işlevden ileriye doğru bir operatördür veya önkoşul ve ceza parametresidir. (örneğin, sorununuz bazı düzenleme ve kısıtlamalara tabidir).

(ATA+ρI)x=b,
Aρminx||Axb||2

SQP yöntemleri için, gibi bir şeyi burada , Hessian'dır (veya yaklaşıklığı), genellikle sadece vektörler üzerindeki etkisi açısından dolaylı olarak kullanılabilir ve degradedir. Hessian sadece değil , aynı zamanda kısıtlamaları doğrusallaştırmak ve düzenli hale getirmekten gelen diğer matrisler ve matris terslerinin bir kombinasyonunu da içerir.

Hx=g,
HgA

Hessians'ın ön koşullandırılması oldukça zor bir iştir ve ileri koşulların ön koşullandırılmasından çok daha az çalışılmıştır. Standart bir yöntem, Hessian'ı L-BFGS ile tersine yaklaştırmaktır, ancak Hessian tersi yüksek rütbeli olduğunda bu sınırlı etkilidir. Bir başka popüler yöntem de Hessian'a düşük dereceli bir matrisin yanı sıra ters çevrilmesi kolay bir matrisin toplamı olarak yaklaşmaktır, ancak bu aynı zamanda zor problemler için sınırlı bir etkiye sahiptir. Diğer popüler Hessian tahmin teknikleri seyrek yaklaşımlara dayanmaktadır, ancak sürekli problemler genellikle zayıf seyrek yaklaşımlara sahip Hessianlara sahiptir.


+1, ancak battaniye ifadelerine karşı dikkatli olmak isterim (ki bu özellikle bu cevabı kastetmiyorum). Örneğin, PDE kısıtlı optimizasyonda, uygulanması genellikle doğrusal olmayan bir PDE'nin çözülmesini içerirken, , orijinal PDE'nin kötü olması durumunda önemli ölçüde daha ucuz (ve önkoşullaması daha kolay) olan iki lineer PDE'yi çözerek uygulanabilir. AH
Christian Clason

Yani, iki PDE çözerek uygulanabilir, ancak uygulamak için çözücünüzdeki kryolv yinelemesi başına 2 PDE çözmeniz gerekir . Öte yandan , ileriye dönük bir operatördür, bu nedenle genellikle hiçbir PDE çözümü içermez. Tipik olarak, matrisini açık şekilde bilirsiniz, ör., Bir ağ üzerindeki 5 noktalı sonlu fark kalıbı. İçin ön-düzelticiler için inşa ön-düzelticiler için kullanılabilir , ancak ön koşul için kullanmak zordur . HH1AAAATA+ρIH
Nick Alger

Eğer (doğrusal olmayan PDE kısıtlı optimizasyon böyle değildir) bir lineer ileri operatörüdür, o zaman elbette doğru vardır. Aksi takdirde, uygulanması, Newton yinelemesi (veya sabit nokta yinelemesi) başına lineer bir PDE çözeltisi, ardından (her zaman lineerdir) için diğeri gerektirir . İki yöntemden hangisinin daha az toplam çalışma gerektirdiğini (örneğin, doğrusal PDE çözücülerinin sayısına göre) büyük ölçüde spesifik soruna bağlıdır. Tek istediğim farklı işler için farklı araçlar. AAAT
Christian Clason

Farklı işler için farklı araçlar konusunda hemfikirim. Aklımda PDE kısıtlı optimizasyon sorunu için Gauss-Newton Hessian - öyle ki - ve tam Hessian bu artı diğer terimlerdir. Yani burada iki ters ve bir tersin içinde iki ters içeriyor. minq,u12||Cuy||2+α2||Rq||2Au=qH=ATCTCA1+αRTRHH1
Nick Alger

Ve kısıt vardı akılda (örneğin eşleyen çözümüne arasında parametresi tanımlama veya topoloji optimizasyonu görünür). S(q)=uSqu(qu)=f
Christian Clason
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.