MT geliştiricileri için değil! INIT_PARAMETERS_INCORRECT nasıl değiştirilir? - sayfa 2

 

OnTesterInit'te kendi optimizasyon setinizi oluşturabilir ve optimize ediciyi yalnızca bir giriş int NumPass'in optimize edildiğini düşünmeye zorlayabilirsiniz.

Bunun nihai sonucu nasıl etkileyeceğini - istenen global (yerel) ekstremumun bulunup bulunmadığını söylemek zor.

Bir örnek sağlamaya hazır değil, Belgelere bakın. İyi yazılmış.

 
fxsaber :

Tariflerden biri, geliştiricilerin YANLIŞ geçişlerin sonucunu önceden hesaplanmış en yakın DOĞRU geçiş olarak düşünmesidir. Bu, optimizasyon yüzeyindeki delikleri ortadan kaldırır.

Geliştiricilerin karşı olduğu şey budur. Bu durumda, nüfusun diğer bireyleri "hayatta kalacak". Ve genetik hatalarla çalışmaya başlayacak.

 

Sayıya göre yalnızca geçerli zincirleri döndürecek bir işlev yazarsak ne olur?

Akla ilk gelen 117649 değerinden oluşan bir tablodur ve genetiğin bu tabloda sayıları aramasına izin verin.

 
Sergey Savinkin :

Geliştiricilerin karşı olduğu şey budur. Bu durumda, nüfusun diğer bireyleri "hayatta kalacak". Ve genetik hatalarla çalışmaya başlayacak.

Ben de böyle bir algoritmaya karşı olacağım. YANLIŞ geçersiz bir parametre setidir ve "en yakın geçerli" olanla değiştirilemez.

 
Sergey Savinkin :

Geliştiricilerin karşı olduğu şey budur. Bu durumda, nüfusun diğer bireyleri "hayatta kalacak". Ve genetik hatalarla çalışmaya başlayacak.

Pratikte genetik neredeyse her zaman yanlıştır, bu normdur. Bu alanda uygun araştırma olmadan, önerilen seçeneğe göre herhangi bir şey ileri sürmeyi taahhüt etmeyeceğim.

 
Georgiy Merts :

Sayıya göre yalnızca geçerli zincirleri döndürecek bir işlev yazarsak ne olur?

Akla gelen ilk şey 117649 değerinden oluşan bir tablodur ve genetiğin bu tabloda sayıları aramasına izin verin.

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum

MT geliştiricileri için değil! INIT_PARAMETERS_INCORRECT nasıl değiştirilir?

fxsaber , 2018.07.10 16:22

OnTesterInit'te kendi optimizasyon setinizi oluşturabilir ve optimize ediciyi yalnızca bir giriş int NumPass'in optimize edildiğini düşünmeye zorlayabilirsiniz.

Bunun nihai sonucu nasıl etkileyeceğini - istenen global (yerel) ekstremumun bulunup bulunmadığını söylemek zor.

Nihai sonuçtan memnuniyet kriterine kuvvetle bağlıdır.


Açıkça, kapsamlı aramayı izlerseniz y = x^2. Ardından optimizasyon dizelerini rastgele karıştırın ve karıştırmaya dayalı olarak yeni bir küme oluşturun. O zaman GA parabolün tepe noktasını bulamayacak.

 
fxsaber :

Açıkça, kapsamlı aramayı izlerseniz y = x^2. Ardından optimizasyon dizelerini rastgele karıştırın ve karıştırmaya dayalı olarak yeni bir küme oluşturun. O zaman GA parabolün tepe noktasını bulamayacak.

Evet, aynı YANLIŞ'ların uygunluk fonksiyonunun alanını çok fazla "yırttığı" ortaya çıktı.

Giriş parametrelerinin radikal işlenmesine ek olarak, korkarım burada hiçbir şey düşünemezsiniz. Geçer OnTick () - önerdiğiniz gibi, bu sadece YANLIŞ parametrenin yerini alan bir koltuk değneğidir, ancak gerçekte genetik algoritma hala "öldürülmüştür". Genetik, sonuçta ortaya çıkan fonksiyonun bazı "gradyanlarını" varsayar, böylece maksimuma hareket edebilirler. Ve geçerli değerlerden daha fazla YANLIŞLARIMIZ olduğunda - bunu maksimum olarak nasıl buluyorsunuz?

Tam bir numaralandırma dışında burada hiçbir şey düşünemeyeceğinizden ve eksiksiz bir numaralandırmanın son derece kararsız bir çözüm bulacağından şüpheleniyorum.
 

Giriş parametrelerini biraz ayarlayabilmeniz gerekir.

Çok yaygın bir örnek verilebilir. Günlük işlem aralığını optimize ederken, çoğu zaman aralığın günlük başlangıç ve bitiş saatleri belirlenir - iki giriş parametresi.

Ancak bu, GA için örneğin başlangıç zamanını ve süresini ayarlamaktan çok daha kötüdür. Aynı şey gibi görünüyor, ancak GA için değil. İkinci durumda, GA daha iyisini yapacaktır. Her ne kadar "daha iyi" oldukça öznel bir değerlendirme olsa da.

 

Georgiy Merts :

geçerli değerlerden daha fazla YANLIŞLARIMIZ olduğunda - bunu nasıl maksimum buluyorsunuz?

Yukarıdaki parabolü ele alalım. Diyelim ki test aralığındaki tek giriş parametresinin değerinin %90'ı YANLIŞ yapacağız. Mevcut GA böyle bir görevde ölecek. Ancak, önerilen seçenek üzerinde hareket ederseniz, GA bununla başa çıkacaktır.


@Andrey Dik'in bu konularda yardımcı olabileceğini düşünüyorum. Ancak düzenli GA'nın yapıcı eleştirisi bile onun için iyi bitmedi ...

 
fxsaber :

Yukarıdaki parabolü ele alalım. Diyelim ki test aralığındaki tek giriş parametresinin değerinin %90'ı YANLIŞ yapacağız. Mevcut GA böyle bir görevde ölecek. Ancak, önerilen seçenekle hareket ederseniz, GA başa çıkacaktır.

Bu ne? Düzeltmeleri en yakın düzeltmelerle değiştirme ??? Korkarım her şey bu düzeltmeleri nasıl dağıttığımıza bağlı. Bir sonraki düzeltmelerin yukarıdan uzak olması oldukça olasıdır.

Ve yanlış parametre kümeleri yerine - doğru sonuçları alacağız - bence bu da yapılamaz - o zaman ne bulacağız? Maksimumu alalım, ancak yanlış bir dizi parametreye sahip mi?