Tepe tırmanma algoritmasında komşular nasıl üretilir?


9

Tepe tırmanışı optimizasyon için çok güçlü bir araç gibi görünüyor. Ancak, bir çözümün "komşuları" nasıl oluşturulur her zaman beni bulmaca.

Örneğin, bir çözümü optimize ediyorum (x1,x2,x3). Burayax1 menzil içinde (0,0.1), x2 menzil içinde (0,100), x3 menzil içinde (0,1000000). "Komşular" üretmenin en iyi yolu nedir? Burada gerçekten bir "adım boyutu" seçemiyorum, çünkü 1'lik bir adım boyutu çok büyükx1, ama çok küçük x3.

Tepe tırmanma algoritmalarında "komşular" üretmenin en iyi genel yolu nedir?

Yanıtlar:


3

Vincent'ın çözümü sizi ilk engelden kurtaracak. Tüm boyutlar aynı aralığa sahip olsa bile adım boyutunu nasıl seçeceğinizi merak ediyor olabilirsiniz. Bu durumda, uygun bir değer seçebilmeniz için işlevinizin davranışını anlamanıza yardımcı olur. Başka bir yol da adım boyutunu degradeye göre ayarlamaktır (işlev çok değişiyorsa hafifçe basmak).

Bu makalenin bazı ilginç fikirleri de olabilir: Uyarlanabilir Adım Boyutlu Tepe Tırmanma Algoritmasında: Kontrol Parametresiz Kara Kutu Optimizasyon Algoritmasına Doğru


2

En kolay (ve en güvenli), tüm parametrelerin karşılaştırılabilir bir aralığa sahip olması için sorununuzu yeniden ölçmektir, örneğin [0,1].

Alternatif olarak, her parametre için farklı bir adım boyutu kullanabilirsiniz.

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.