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

 
Aleksey Vyazmikin :

4 parametreniz var, bu yüzden bu 4 parametrenin çalışmasını bir şekilde sadece doğru değerlerle düzenlemeniz gerekiyor, o zaman genetik işe yarayabilir.

Neye benziyor?

Her param_ 3 geçerli değer alabiliyorsa, using_parameter = true 81 geçişle sonuçlanır ve eğer = false ise 80 geçiş işe yaramaz.

Peki, nasıl "nasıl" organize edilir?

 
Сергей Таболин :

Neye benziyor?

Her param_ 3 geçerli değer alabiliyorsa, using_parameter = true 81 geçişle sonuçlanır ve eğer = false ise 80 geçiş işe yaramaz.

Peki, nasıl "nasıl" organize edilir?

Bu soruya bir cevap veremem, bu yüzden en azından optimizasyon koşullarını anlamıyorum - ya siz kötü söylüyorsunuz ya da ben aptalım.

Birbirine bağlı 4 parametreniz veya her biri iki çiftiniz var mı?

4 birbirine bağlıysa ve daha önce yazdığınız gibi, tüm seçenekleri tek bir ayar olarak tek bir dosyaya koyarsanız, genetik rastgele (ve belki başka bir yöntemle - MQ için bir soru) alanı dolduracak ve seçilen kısmı optimize edecektir. Bu 4'ün dışında optimize edilecek başka parametreleriniz varsa, genetik, seçilen ve diğer parametrelere göre en uygun ayarları arayabilecektir.

 
Сергей Таболин :

defalarca farklı kelimelerle söylendi. girdi uzayının dönüşümü. sizin durumunuzda yalnızca geçerli zincirler oluşturabilirsiniz.

1953 geçerli kombinasyonunuz var. int ayarını 0'dan 1952'ye çıkarın ve seri numarasına göre doğru kombinasyonu oluşturun. bir seçenek gibidir.

 
Alexey Navoykov :

İşte hatanız burada yatıyor. Genetikte "ekstra" pasajlar yoktur. Her şeyi raflara kendisi koyar, fazlalığı eler, çünkü sonunda zamandan ve kaynaklardan tasarruf sağlanır. Ve sen onun yoluna çıkıyorsun.

Aslında kendinle çelişiyorsun. İlk olarak, sihirli düğmeye bastığınızda, herhangi bir ek çaba harcamadan her şeyin kendi kendine çalışması gerektiğini söyleyin. Ancak aynı zamanda, optimizasyon algoritmasına yardımcı olduğu iddia edilen kodda şamanizmi kendiniz düzenlersiniz.

Kısacası, şimdi her şey açık:

INIT_PARAMETERS_INCORRECT ile hiçbir şeyi filtrelemenize gerek yok, programınızın mantığına göre 121 hesaplayın ve genetik işini yapacak ve sonuç 1953'ten daha kısa sürede alınacaktır.

Bununla birlikte, optimizasyon kapsamlı arama ile gerçekleştirilirse, elbette ekstra geçişlere gerek yoktur. Optimizasyon türünü belirten Uzman Danışmanınıza ek bir parametre girebilirsiniz. Tam bir numaralandırma varsa, fazladan geçişler elenir ve genetik ise, hayır. MQL'nin optimizasyon türünü bulmak için yerel bir yeteneğe sahip olmaması üzücü. Geliştiricilerden böyle bir özellik eklemelerini istememiz gerekiyor.

İşin aslı şu ki , optimizasyon sonuçlarında onlarca sonucun aynı çıkması sorunuyla ilk karşılaştığımda daha sonra bundan nasıl kurtulurum diye bir konu oluşturmuştum. Maalesef yasaktan sonra tüm konularım ve tüm yorumlarım yayınlarımdan kayboldu, bu yüzden link veremiyorum.

İşte bu yüzden INIT_PARAMETERS_INCORRECT kullanmam istendi

Ve evet, neden açıkça işe yaramaz koşularla uğraşmanız gerektiğini anlamıyorum:

  • 100000
  • 010000
  • 001000
  • 000100
  • 000010
  • 000001
  • 110000
  • 011000
  • 001100
  • 000110
  • 000011
  • vb.

eğer temelde aynı şeyse?

Ve genetik hakkında bildiklerimden, bu tekrar eden zincirlerin döneceği ve en iyilerinin bu algoritmanın görüş alanına hiç girmeyebileceği ortaya çıkıyor... Öyle değil mi?

 
TheXpert :

defalarca farklı kelimelerle söylendi. girdi uzayının dönüşümü. sizin durumunuzda yalnızca geçerli zincirler oluşturabilirsiniz.

1953 geçerli kombinasyonunuz var. int ayarını 0'dan 1952'ye çıkarın ve seri numarasına göre doğru kombinasyonu oluşturun. bir seçenek gibidir.

Sonunda ben de öyle yaptım...

 
Сергей Таболин :

Ve evet, neden açıkça işe yaramaz koşularla uğraşmanız gerektiğini anlamıyorum:

  • 100000
  • 010000
  • 001000
  • 000100
  • 000010
  • 000001
  • 110000
  • 011000
  • 001100
  • 000110
  • 000011
  • vb.

eğer temelde aynı şeyse?

Ve genetik hakkında bildiklerimden, bu tekrar eden zincirlerin döneceği ve en iyilerinin bu algoritmanın görüş alanına hiç girmeyebileceği ortaya çıkıyor... Öyle değil mi?

Peki en iyi zincirler nelerdir? Bu aynı zamanda belirli sayıda tekrarlanan kopyadır. Ve bu tekrar, bu kopyalardan birinin aramanın bağımlısı olma şansını artırıyor.

Onlar. aslında, şanslar (olasılıklar) tamamen aynıdır, tekrarlı ve tekrarsız. Buna göre, genetik aramanın süresi de her iki durumda da aynı olacaktır.

Genel olarak yine de genetik algoritmanın nasıl çalıştığını çözmenizi tavsiye ederim. Aksi takdirde, size bir şey açıklamak işe yaramaz.

 
Alexey Navoykov :

Peki en iyi zincirler nelerdir? ...

Bilseydim, optimizasyona gerek kalmazdı.

Belki de en iyisi 326000, 514300 veya 346215?

 
Сергей Таболин :

Bilseydim, optimizasyona gerek kalmazdı.

Belki de en iyisi 326000, 514300 veya 346215?

Bu sadece bir giriş sorusuydu ve açıklamasını yaptım.

Bu nedenle, "en iyisi" değil, "en iyisi, bu zincirin tüm olası kopyaları göz önüne alındığında.

Bir zinciri INIT_PARAMETERS_INCORRECT ile filtreleyerek, bu başarılı zincirlerden tam olarak birini kaçırıyor veya onlara yakın olabilirsiniz gibi basit bir şeyi anlamıyorsunuz. Bu nedenle, arama kısalmaz.

 
Alexey Navoykov :

Bu sadece bir giriş sorusuydu ve açıklamasını yaptım.

Bu nedenle, "en iyisi" değil, "en iyisi, bu zincirin tüm olası kopyaları göz önüne alındığında.

Bir zinciri INIT_PARAMETERS_INCORRECT ile filtreleyerek, bu başarılı zincirlerden tam olarak birini kaçırıyor veya onlara yakın olabilirsiniz gibi basit bir şeyi anlamıyorsunuz. Bu nedenle, arama kısalmaz.

ÖZELLİKLE tekrarlayanları filtreliyorum! Kırmızı bir arka plan ile işaretlenmiş örnekte.

Zincir 120000 zincir 010020 daha iyi ne olabilir ??? Aynı zincir! Hem 100002 hem de 000012! Peki aynı şeyin bu tekrarları için ne var?

 
Сергей Таболин :

ÖZELLİKLE tekrarlayanları filtreliyorum! Kırmızı bir arka plan ile işaretlenmiş örnekte.

120000 zincir 010020 daha iyi zincir ne olabilir ??? Aynı zincir! Hem 100002 hem de 000012! Peki aynı şeyin bu tekrarları için ne var?

Tamam, anlamıyorsun, ama bu beklenen bir şey. İnsanları duymak için, iletmek istediğim her şeyi zaten söyledim. devam etmek için bir neden göremiyorum