Doğrusal olmayan denklem sistemlerine karşı optimizasyonda Newton tabanlı yöntemler


12

Minpack hakkında yeni bir soru hakkında açıklama istedim ve aşağıdaki yorumu aldım:

Herhangi bir denklem sistemi bir optimizasyon problemine eşdeğerdir, bu yüzden optimizasyondaki Newton tabanlı yöntemler doğrusal olmayan denklem sistemlerini çözmek için Newton tabanlı yöntemlere çok benzemektedir.

Bu yorum hakkında beni şaşırtan şey (ve minpack gibi uzmanlaşmış doğrusal olmayan en küçük kareler çözücülerle ilgili olumsuz görüşler ) en iyi konjüge gradyan yöntemi örneğinde açıklanabilir . Bu yöntem, simetrik pozitif tanımlı matris A'ya sahip sistemlerine uygulanabilir . Ayrıca genel en küçük kare problemini çözmek için kullanılabilir min x | | A x - b | | 2 keyfi A matrisi içinAx=bAminx||Axb||2A, ancak bunu yapmanız önerilmez. Bunu neden yapmamamız gerektiğinin bir açıklaması, sistemin durum sayısının önemli ölçüde artacağıdır.

Ancak, bir denklem sistemlerini bir optimizasyon problemine dönüştürmek doğrusal durum için bile sorunlu sayılırsa, genel durum için neden daha az sorunlu olsun? Bir şekilde, biraz yaşlı doğrusal olmayan en küçük kareler çözücüsü kullanmak yerine, bir son teknoloji optimizasyon algoritması kullanmakla ilişkili gibi görünüyor. Ancak, bilgi atma ve sistemin durum sayısını artırma ile ilgili sorunlar, fiilen kullanılan optimizasyon algoritmasından nispeten bağımsız değil mi?

Yanıtlar:


10

Yanıtlarımdan birinden alıntı yapıldığından, neden MINPACK yerine IPOPT kullanılmasını önerdiğimi açıklığa kavuşturmaya çalışacağım.

MINPACK kullanmaya yönelik itirazlarımın MINPACK'in kullandığı algoritmalarla ve bunların uygulanmasıyla ilgili her şeyi ilgilendirmiyor. Ana itirazım, yazılımın 1980'e kadar uzanması ve son olarak 1999'da güncellenmesidir. Jorge Moré emekli oldu; O ya da yazılımın diğer yazarlarından herhangi birinin artık üzerinde durduğundan şüpheleniyorum ve aktif olarak destekleyen hiçbir ekip yok. Yazılımda bulabileceğim tek belge, Jorge Moré ve diğer MINPACK yazarları tarafından yazılmış orijinal 1980 Argonne teknik raporudur. (Bölüm 1-3 burada bulunabilir ve Bölüm 4 burada bulunabilir).) MINPACK kaynak kodunu araştırıp belgeleri inceledikten sonra (PDF'ler taranan görüntülerdir ve aranamaz), kısıtlamaları karşılamak için herhangi bir seçenek göremiyorum. Doğrusal olmayan en küçük kareler sorununun orijinal posteri, kısıtlı doğrusal olmayan en küçük kareler sorununu çözmek istediğinden MINPACK bu sorunu bile çözmez.

IPOPT posta listesine bakarsanız, bazı kullanıcılar paketin doğrusal olmayan en küçük kareler (NLS) sorunlarındaki performansının Levenberg-Marquardt algoritmalarına ve daha özel NLS algoritmalarına göre karışık olduğunu belirtir ( buraya , buraya ve buraya bakın ). IPOPT'nin NLS algoritmalarına göre performansı elbette probleme bağlıdır. Kullanıcı geri bildirimi göz önüne alındığında IPOPT, NLS algoritmalarına göre makul bir öneri gibi görünüyor.

Ancak, NLS algoritmalarının araştırılması gerektiğine dikkat çekiyorsunuz. Katılıyorum. Sadece MINPACK'ten daha modern bir paketin kullanılması gerektiğini düşünüyorum çünkü daha iyi performans göstereceğine, daha kullanışlı olacağına ve destekleneceğine inanıyorum. Ceres ilginç bir aday paketi gibi görünüyor, ancak şu anda kısıtlı sorunları ele alamıyor. TAOklasik Levenberg-Marquardt'ı uygulamasa da bunun yerine türev içermeyen bir algoritma uygulasa da, kutu kısıtlı en küçük kareler sorunları üzerinde çalışacaktı. Türevsiz bir algoritma muhtemelen büyük ölçekli problemler için iyi çalışır, ancak küçük ölçekli problemler için kullanmazdım. Yazılım mühendisliğine büyük güven veren başka paketler bulamadım. Örneğin GALAHAD, ilk bakışta sürüm kontrolü veya otomatik test kullanmıyor gibi görünüyor. MINPACK de bunları yapmıyor. MINPACK ile ilgili deneyiminiz veya daha iyi yazılımlarla ilgili önerileriniz varsa, tamamen kulaklarım.

Tüm bunları göz önünde bulundurarak, yorumumun alıntısına geri dönelim:

Herhangi bir denklem sistemi bir optimizasyon problemine eşdeğerdir, bu yüzden optimizasyondaki Newton tabanlı yöntemler doğrusal olmayan denklem sistemlerini çözmek için Newton tabanlı yöntemlere çok benzemektedir.

Daha iyi bir yorum muhtemelen aşağıdakilerin etkisiyle ilgilidir:

N unknowns g ( x ) = 0 ile denklem sistemini çözmek istediğimizde , bunu en küçük kareler optimizasyon problemi olarak formüle edebiliriz. ( Doğrusal Olmayan Programlama s. 102'nin son paragrafının açıklaması , 2. baskı, Dmitri Bertsekas tarafından.)nng(x)=0

Bu ifade, kısıtlamalar altındaki denklem sistemlerinin çözümü için bile geçerlidir. Değişkenler üzerinde kısıtlamalar olduğu durumda "denklem çözücüler" olarak kabul edilen herhangi bir algoritma bilmiyorum. Belki de bir optimizasyon laboratuarında birkaç dönem optimizasyon kursu ve araştırması tarafından sarılan bildiğim ortak yaklaşım, denklem sistemi üzerindeki kısıtlamaları bir optimizasyon formülasyonuna dahil etmektir. Kısıtlamaları denklem çözümü için Newton-Raphson benzeri bir şemada kullanmaya çalışacak olsaydınız, muhtemelen kısıtlı optimizasyonda kullanılan yöntemlere benzer şekilde, öngörülen bir gradyan veya öngörülen güven bölgesi yöntemi ile karşılaşırsınız.


MINPACK ile deneyimim var. Yerel bir yöntem olarak yeterince iyi. Durdurma kriterlerinin ince ayar yapmadan iyi çalışmasını seviyorum. Kısıtlamaları olan şeyin can sıkıcı olabileceğini biliyorum, özellikle algoritmanın kendisinde büyük bir değişiklik olmayacağı için. Değişkenler ve genel doğrusal kısıtlamalar üzerinde sınırlar sunan LM uygulamalarını bile biliyorum, ancak bu uygulamalar MINPACK'in kendisinden çok daha genç değil ve bunları değerlendirmek için uğraşmadım.
Thomas Klimpel

1
g(x)=0g(x)2

@JedBrown: Etraftaki dili değiştirmeliyim. Bence, türevsiz optimizasyon (DFO) sadece fonksiyon değerlendirmeleri çok pahalı olduğunda tercih edilir. Bazı nedenlerden dolayı, akla gelen seminal durum, hedefin bir PDE'yi çözmeyi içermesi, bu yüzden "büyük ölçekli" dedim (elbette, benim için, optimizasyonda, "büyük ölçekli PDE", PDE'leri düzenli olarak paralel olarak çözen sizin için). "Denklemlerle denklemleri çözmeyi" düşündüğümde, aklımdaki problem . (devamı)g(x)=0,xS,SRn,SRn
Geoff Oxberry

@JedBrown: Bu sorunla başa çıkmanın standart bir yolu, çözmektir . Başka yollar da olabilir ama bilmiyorum. Bir ıskarta ; Sıfır olmayan objektif fonksiyon değerlerine sahip minima, çözülen denklem sistemini açıkça çözmez. Konveks olmayan bir durumda, çözümlerin varlığını veya yokluğunu onaylamak için küresel optimizasyon yöntemleri gereklidir. Varyasyonel eşitsizliklerle ilgili çok fazla deneyimim yok, bu yüzden VI'ların burada nerede oynandığı benim için net değil, özellikle mutlaka bir koni olmadığı için. minxSg(x)2g(x)=0S
Geoff Oxberry

1
Yani hala sınırında bulunan bir çözümle ne demek istediğinizi tam olarak tanımlayabilmeniz gerekir . Genellikle tamamlayıcılık formülasyonu olarak yazılan VI'lar bunu yapar. Türevsiz, özellikle tasarım alanı büyük olduğunda, bunun tersi bir fikrim var. Amaç pahalı bir PDE çözümü içeriyorsa, tasarım alanını keşfetmek için degradeleri kullanabilmemiz için bir eşleşmemizin bir gerekliliği olarak görüyorum. Bir PDE bitişik, alanın boyutundan bağımsız olarak bir ileri çözümün sadece küçük bir katına mal olur. Bu, model düzgünlüğüne ekstra gereksinimler getirir. S
Jed Brown

14

Belirli bir doğrusal olmayan sistem bir optimizasyon problemi için birinci dereceden optimallik koşuluysa, bu bilgileri kullanarak genellikle daha sağlam bir algoritma üretebiliriz. Örneğin, denklemi düşünün

Orijinal hedefin çizimi

Bu açıkça benzersiz bir minimum değere sahiptir ve optimizasyon yöntemimizin başlangıç ​​noktasından bağımsız olarak bulmasını bekliyoruz. Biz sadece birinci derece eniyilik koşullarında bakarsanız, biz bir çözüm arıyoruz ait [Wolfram Alpha]xf(x)=0

meyil

benzersiz bir çözüme sahiptir, ancak birçok kök bulma yöntemi yerel minimumda sıkışabilir.

Biz eğim norm karesi aza indirmek için yeni bir optimizasyon sorunu yeniden formüle, biz küresel bir asgari aradığınız ait [Wolfram Alpha] birden fazla yerel minimuma sahiptir ki.xf(x)2

resim açıklamasını buraya girin

Özetlemek gerekirse, bir yöntemin bulacağını garanti edebileceğimiz benzersiz bir çözümü olan bir optimizasyon problemiyle başladık. Yerel olarak tanımlayabileceğimiz benzersiz bir çözümü olan doğrusal olmayan bir kök bulma sorunu olarak yeniden formüle ettik, ancak bir kök bulma yöntemi (Newton gibi) ulaşmadan önce durağanlaşabilir. Daha sonra kök bulma sorununu, birden fazla yerel çözümü olan bir optimizasyon sorunu olarak yeniden formüle ettik (küresel minimumda olmadığımızı tanımlamak için hiçbir yerel önlem kullanılamaz).

Genel olarak, bir problemi optimizasyondan kök bulmaya dönüştürdüğümüzde veya tersi olduğunda, mevcut yöntemleri ve ilgili yakınsama garantilerini daha zayıf hale getiririz. Yöntemlerin gerçek mekaniği genellikle çok benzerdir, bu nedenle doğrusal olmayan çözücüler ve optimizasyon arasında çok sayıda kodun yeniden kullanılması mümkündür.


Jed, bu WA bağlantıları söylediklerine pek gitmiyor. Parantezler yok sayılıyor veya URL'ye yanlış aktarılıyor.
Bill Barth

Garip, bağlantılar benim için çalışıyor. Web tarayıcısına bağlı olabilir mi? Bunu sunmanın alternatif bir yolu var mı?
Jed Brown

Emin değil. Yeniden biçimlendirilmiş bağlantıyı bir sekmeden diğerine yapıştırmak ve yapıştırmak, WA'yı tekrar kendi başına vidalamak için vidalamasına neden olur!
Bill Barth

Bağlantılarda sorun olan başka biri var mı? Birden fazla tarayıcıda denedim ve her durumda iyi çalışıyor.
Jed Brown

Bu güzel bir cevap. Ancak bunun yerine Geoff Oxberry'nin cevabını kabul etmeye karar verdim, çünkü anlamaya çalıştığım şeylerin bir kısmı da soruyla ilgili "gerçek dünya" sorunları. Bu, benim gibi insanların eksiklerini bilmelerine rağmen MINPACK'i kullandığını ve önerdiğini ve diğer insanların "önemsiz derecede küçük" doğrusal olmayan sistemleri çözme konusunda tavsiye istediklerini, ancak üç ay boyunca tek bir çözücüyü bile test etmeyi başaramadıklarını içeriyor. zaman aralığı.
Thomas Klimpel
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.