Bilinmeyen bir işlevi yalnızca değerlendirilebilecek şekilde optimize et?


11

Bilinmeyen bir fonksiyon Verilen , biz kendi etki herhangi bir noktada değerini değerlendirmek, ama biz onun ifadesini yok. Başka bir deyişle, f bizim için bir kara kutu gibidir.f:RdRf

minimizer bulma sorununun adı nedir ? Orada bazı yöntemler nelerdir?f

denklemine çözüm bulma sorununun adı nedir ? Orada bazı yöntemler nelerdir?f(x)=0

Yukarıdaki iki problemde, bilinen form ve parametre θ ile g θ fonksiyonunu kullanarak f: bazı değerlendirmelerine enterpolasyon yapmak veya bazı değerlendirmelere uymak iyi bir fikir midir? belirlenecek ve sonra g imize simge durumuna küçültülecek veya kökü bulunacak mı?(xi,f(xi)),i=1,,ngθθgθ

Teşekkürler ve saygılar!


1
Gradyanını belirli bir noktada değerlendirebilir misiniz?
chaohuang

@chaohuang: İki durum söz konusudur: varsayımlara bağlı olarak degradesini değerlendirebilir veya değerlendirmeyebilirsiniz.
Tim

Degrade mevcutsa, sorduğunuz görevler degrade tabanlı algoritmalarla gerçekleştirilebilir. Örneğin, minimum veya en azından yerel minimum, en dik iniş yöntemiyle hesaplanabilir ve kökler Newton'un yöntemiyle bulunabilir.
chaohuang

Degrade bilinmiyorsa, türev içermeyen veya kara kutu yöntemleri olarak da adlandırılan ve genellikle stokastik optimizasyon şeklinde olan meta-sezgisel yöntemler vardır .
chaohuang

2
İşlevin düzgün olup olmadığını biliyor musunuz (gradyanı değerlendiremeseniz bile)? İşlevin dışbükey olup olmadığını biliyor musunuz? Dışbükey değilse, en azından Lipschitz sürekli olup olmadığını biliyor musunuz? İşlev tamamen genelse, bu umutsuz bir sorundur.
Brian Borchers

Yanıtlar:


13

Aradığınız yöntemlere (yani, türevleri değil, yalnızca işlev değerlendirmelerini kullanan) türev serbest optimizasyon yöntemleri denir . Üzerinde büyük bir literatür var ve optimizasyon hakkındaki çoğu kitapta bu yöntemler hakkında bir bölüm bulabilirsiniz. Tipik yaklaşımlar

  • Fonksiyonun düzgün ve muhtemelen dışbükey olmasını makul bir şekilde bekleyebilirse, gradyanı sonlu farklarla yaklaşmak;
  • Simüle Tavlama gibi Monte Carlo yöntemleri;
  • Genetik Algoritmalar.

1
Bu listeye yalnızca "Yedek Modelleme" ekleyebilir miyim? Kara kutu optimizasyonu için, özellikle fonksiyonun değerlendirilmesi pahalıysa çok uygulanabilirler.
OscarB

Evet, yapabilirsin :-) Kesinlikle harika bir ek.
Wolfgang Bangerth

Optima hakkında iyi tahminler biliniyorsa Nelder-Mead yöntemini de kullanabilirsiniz.
JM

Evet, Nelder-Mead'i kullanabilirsiniz, ancak diğerlerine kıyasla korkunç bir algoritma.
Wolfgang Bangerth

1
@WolfgangBangerth: Nelder-Mead hakkındaki yorumunuz sadece d> 2 boyutunda geçerlidir. İki boyutta, birçok problem üzerinde mükemmel ve yenilmesi çok zor bir yöntemdir.
Arnold Neumaier

2

Bence şöyle başlamalısınız: GECCO Gerçek Parametre Kara Kutu Optimizasyon Kıyaslaması Çalıştayı (BBOB 2016) http://numbbo.github.io/workshops/index.html

Önceki yarışmalarda kullanılan ve ortak bir temelde karşılaştırılan birçok farklı algoritma bulacaksınız. Başka bir yere başlarsanız, yakında yöntemlerinin ve algoritmalarının diğerlerinden daha iyi performans gösterdiğini iddia eden yüzlerce makalede boğulursunuz.

Yakın zamana kadar, açıkçası, rasyonel karşılaştırmalar için bir çerçeve oluşturmak için yaptıkları çabadan dolayı INRIA, GECCO ve diğerlerine karşı utanç verici bir durum ve tüm güçtü.


-1

Buradaki anahtarlardan birinin çok çekirdekli CPU'larda optimizasyon yöntemini ölçekleyebildiğini eklemeliyim . Aynı anda birden fazla işlev değerlendirmesi yapabiliyorsanız, ilgili birkaç çekirdeğe eşit bir hızlanma sağlar. Bunu sadece% 10 daha verimli hale getiren biraz daha doğru yanıt modeli kullanarak karşılaştırın.

Bu koda bakmanızı tavsiye ederim , birçok çekirdeğe erişimi olan insanlar için yararlı olabilir. Arkasında bir matematik bu makalede açıklanmıştır .


1
Bu cevap faydalı olamayacak kadar kısa (ve bağlantıların herhangi bir noktada ortadan kalkabileceği için yararlı kalın). Ayrıca, lütfen bu yazılımın yazarı olduğunuzu belirtin .
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.