Kısıtsız minimizasyondan bahsettiğinizi düşünüyorum. Sorunuz, belirli bir sorun yapısını düşünüp düşünmediğinizi belirtmelidir. Aksi takdirde, cevap hayır.
Önce bir efsaneyi ortadan kaldırmalıyım. Klasik gradyan iniş yönteminin ( en dik iniş yöntemi olarak da bilinir ) yerel bir minimizer bulması bile garanti edilmez. Birinci derece kritik bir nokta bulduğunda, yani degradenin kaybolduğu yerde durur. Küçültülmekte olan belirli fonksiyona ve başlangıç noktasına bağlı olarak, bir sele noktasında veya hatta küresel bir maksimizatörde son derece iyi bir sonuç elde edebilirsiniz!
f( x , y) = x2- y2( x0, y0) : = ( 1 , 0 )- ∇ f( 1 , 0 ) = ( - 2 , 0 )( 0 , 0 )f( x , y) = x2- 10- 16y2( 0 , 0 )∇2f( x*, y*)- 10- 16+ 10- 16
f( x ) = ⎧⎩⎨1marul( x )- 1Eğer x ≤ 0eğer 0 < x < πeğer x ≥ π.
x0= - 2
Şimdi neredeyse tüm gradyan tabanlı optimizasyon yöntemleri tasarımdan muzdariptir. Sorunuz gerçekten küresel optimizasyonla ilgili . Yine, cevap hayır, küresel bir minimizer tanımlanmasını garanti etmek için bir yöntemi değiştirmek için genel tarifler yoktur. Sadece kendinize sorun: algoritma bir değer döndürür ve bunun küresel bir küçültücü olduğunu söylüyorsa, bunun doğru olup olmadığını nasıl kontrol edersiniz?
Küresel optimizasyonda yöntem sınıfları vardır. Bazıları randomizasyon sağlar. Bazıları çoklu başlangıç stratejileri kullanır. Bazıları sorunun yapısından yararlanır, ancak bunlar özel durumlar içindir. Küresel optimizasyon hakkında bir kitap alın. Bunun tadını çıkaracaksınız.