En üst seviye algoritma akış şemalarına bakıyorsunuz. Akış şemasındaki bireysel adımların bazıları kendi ayrıntılı akış şemalarını hak edebilir. Bununla birlikte, yayınlanmış makalede kısalık vurgusu bulunan birçok makalede çoğu zaman ihmal edilmiştir. "Eski şapka" olarak kabul edilen standart iç optimizasyon problemlerinin detayları hiç verilmeyebilir.
Genel fikir, optimizasyon algoritmalarının bir dizi genel olarak daha kolay optimizasyon probleminin çözümünü gerektirebileceğidir. Bazıları standart optimize ediciler için dahili olmasına rağmen, üst seviye bir algoritma içinde 3 veya hatta 4 seviye optimizasyon algoritmasına sahip olmak nadir değildir.
Bir algoritmanın ne zaman sonlandırılacağına karar vermek bile (sıradüzensel seviyelerden birinde) bir yan optimizasyon probleminin çözülmesini gerektirebilir. Örneğin, negatifliği kısıtlanmamış bir lineer en küçük kareler problemi, optimizasyonun ne zaman bildirileceğine karar vermek için kullanılan KKT optimallik puanını değerlendirmek için kullanılan Lagrange çarpanlarını belirlemek için çözülebilir.
Optimizasyon problemi stokastik veya dinamik ise, yine de ilave hiyerarşik optimizasyon seviyeleri olabilir.
İşte bir örnek. Sıralı Kuadratik Programlama (SQP). Bir ilk optimizasyon problemi, sorunun Lagrangian'ının ikinci dereceden bir yaklaşımı olan bir amaç ile bir başlangıç noktasından başlayarak Karush-Kuhn-Tucker optimallik koşullarının yinelemeli olarak çözülmesi ve kısıtlamaların lineerleştirilmesidir. Ortaya çıkan Kuadratik Program (QP) çözüldü. Çözülen QP, güven bölgesi kısıtlamalarına sahiptir ya da bir sonraki yinelemeyi bulmak için mevcut yinelemeden, bir optimizasyon problemi olan QP'nin çözümüne kadar bir hat araştırması yapılır. Eğer bir Quasi-Newton metodu kullanılıyorsa, Lagrangianlı Hessian’a Quasi-Newton güncellemesini belirlemek için bir optimizasyon problemi çözülmelidir - genellikle bu BFGS veya SR1 gibi kapalı form formülleri kullanan bir kapalı form optimizasyonu, ancak sayısal bir optimizasyon olabilir. O zaman yeni QP çözülür, vb. Bu arada, QP çözücü içinde bir veya iki seviye iç optimizasyon problemi söz konusu olabilir. Her yinelemenin sonunda, optimallik skorunu belirlemek için negatif olmayan bir doğrusal en küçük kareler problemi çözülebilir. Vb.
Eğer bu karışık bir tamsayı problemiyse, o zaman bütün bu boğmaca, her bir dallanma düğümünde, daha yüksek seviyeli bir algoritmanın parçası olarak gerçekleştirilebilir. Benzer şekilde, bir global optimizer için - global olarak optimum çözüme bir üst sınır üretmek için yerel bir optimizasyon problemi kullanılır, ardından daha düşük bir sınır optimizasyon problemi üretmek için bazı kısıtlamaların gevşetilmesi yapılır. Bir karışık tamsayı veya global optimizasyon problemini çözmek için dal ve sınırlardan binlerce, hatta milyonlarca "kolay" optimizasyon problemi çözülebilir.
Bu size bir fikir vermeye başlamalıdır.
Düzenleme : Cevabımdan sonra soruya eklenen tavuk ve yumurta sorusuna yanıt olarak: Bir tavuk ve yumurta sorunu varsa, o zaman iyi tanımlanmış bir pratik algoritma değildir. Verdiğim örneklerde tavuk ve yumurta yok. Daha yüksek seviyeli algoritma adımları, tanımlanmış veya önceden var olan optimizasyon çözücülerini çağırır. SQP alt problemleri çözmek için yinelemeli bir QP çözücüsü çağırır, ancak QP çözücüsü QP'yi orijinal problemden daha kolay bir problem çözer. Daha da yüksek seviyeli bir global optimizasyon algoritması varsa, yerel doğrusal olmayan optimizasyon alt problemlerini çözmek için bir SQP çözücüsünü çağırabilir ve SQP çözücüsü de QP alt problemlerini çözmek için bir QP çözücüsünü çağırır. Tavuk ve yumurta yok.
Not: Optimizasyon fırsatları "her yerde" dir. Optimizasyon algoritmaları geliştirenler gibi optimizasyon uzmanlarının bu optimizasyon fırsatlarını görme ve bunları ortalama Joe veya Jane'den daha fazla görme olasılıkları daha yüksektir. Ve algoritmik olarak eğimli olduklarından, oldukça doğal olarak, alt seviye optimizasyon algoritmalarından optimizasyon algoritmaları oluşturma fırsatlarını görüyorlar. Optimizasyon problemlerinin formülasyonu ve çözümü, diğer (daha yüksek seviye) optimizasyon algoritmaları için yapı taşları görevi görür.
Düzenleme 2 : OP tarafından henüz eklenmiş olan ödül talebine cevap olarak. SQP doğrusal olmayan eniyileyici SNOPT https://web.stanford.edu/group/SOL/reports/snopt.pdf 'i açıklayan makale, SNOPT’da QP alt sorunlarını çözmek için özel olarak ayrı ayrı belgelendirilen QP çözücü SQOPT’dan bahseder.