Optimizasyon Algoritmaları Şampiyonası. - sayfa 116

 
Andrey Dik :

İşte senaryo. Gördüklerinden sonra daha iyi hissedeceğinden şüpheliyim.

İyi! Tanrıya şükür, en azından bir şey ortaya çıktı!

O halde özetleyelim, - FF kitaplığının işlevi metinli görevdekiyle aynıdır. Dışa aktarılan işlevlerin aynı adları .

Bağlantı arayüzünü gönderdiniz, yürütme komut dosyası ...

Sadece FF'nin kendisi eksik, ama nasıl düzenlenmesi gerektiğini anladım ve bu önemli değil.

Bir adım var, bir menzil var...

Genel olarak, bir algoritma yazmak için her şey var gibi görünüyor.

 
Реter Konow :

İyi! Tanrıya şükür, en azından bir şey ortaya çıktı!

O halde özetleyelim, - FF kitaplığının işlevi metinli görevdekiyle aynıdır. Dışa aktarılan işlevlerin aynı adları .

Bağlantı arayüzünü gönderdiniz, yürütme komut dosyası ...

Sadece FF'nin kendisi eksik, ama nasıl düzenlenmesi gerektiğini anladım ve bu önemli değil.

Bir adım var, bir menzil var...

Genel olarak, bir algoritma yazmak için her şey var gibi görünüyor.

Sen harika bir insansın .... Birçoğunun şampiyonadan çok önce bir algoritması vardı ve kimse sorun yaşamıyor. Katılım için bir algoritmaya ihtiyacınız var ve diğer her şey önemli değil.

Ve arayüzler, gördüğünüz gibi, daha önce gösterdiğimle aynı.

 
Andrey Dik :

Sen harika bir insansın .... Birçoğunun şampiyonadan çok önce bir algoritması vardı ve kimse sorun yaşamıyor . Katılım için bir algoritmaya ihtiyacınız var ve diğer her şey önemli değil.

Ve arayüzler, gördüğünüz gibi, daha önce gösterdiğimle aynı.

Eee şampiyonluktan çok önce algoritması olanlar şampiyonluk yolunda muhtemelen kaybetti, o yüzden şimdi oturup susuyorlar...)

Sen de tuhafsın. FF işlevini ayarlamaktan korkuyorlar ... Bu konuda sizi yenmeye büyük ölçüde yardımcı olabilecek ne var?

İşte metinle ilgili FF sorunları:

 double FF ( double &param []) export
{ 
  countRuns++; 
  
   int sizeArray = ArraySize (param); 
   if (sizeArray != textLen) 
     return ( 0.0 );
  
   int ffVolue = 0 ; 
  
   for ( int i= 0 ; i< textLen; i++)
  {
     if (GetCode(param [i]) == StringSubstr (Code, i, 1 ))
      ffVolue++;
  }
    
   return ( double (ffVolue));
}

Ve burada halka sergilemekten korkacak kadar korkunç olan ne?

 
Реter Konow :

Eee şampiyonluktan çok önce algoritması olanlar şampiyonluk yolunda muhtemelen kaybetti, o yüzden şimdi oturup susuyorlar...)

Sen de tuhafsın. FF işlevini ayarlamaktan korkuyorlar ... Bu konuda sizi yenmeye büyük ölçüde yardımcı olabilecek ne var?

İşte metinle ilgili FF sorunları:

Ve burada halka sergilemekten korkacak kadar korkunç olan ne?

Lütfen demagojiye girmeyin.

Siz ve Event, metin sorununun nasıl çözüldüğünü zaten gösterdiniz...

Zaferi umduğumu veya ona güvendiğimi hiçbir yerde belirtmedim, zafere tamamen kayıtsızım. Bir karşılaştırmaya ihtiyacım var. Şampiyonanın amacı, bilinmeyen bir FF'de maksimumu aramaktır. Algoritmam FF'ye bağlı değil, tıpkı sorunun çözüldüğü MQ optimizer'ın FF'ye bağlı olmaması gibi. Ama siz göreve bağlılığı gösterdiniz, anahtarın bilgisini kullandınız (ki burada vermediniz), önde gelenler sorularıma cevap vermemeyi tercih ettiler. Bütün bunlar direkt olarak FF hakkındaki bilgileri kazanma amacı ile olmasa bile kullanmaya çalıştığınızı söylüyor ancak bu şampiyonanın hedeflerine aykırı, FF hakkında kimsenin bilgisi olmamalı ve bu bilgiyi sorunu çözmek için kullanmamalı. .

Aynı şeyi size tekrar tekrar açıklayamam, forumun yarısını çoktan kapattık. Aptal olmayı bırak artık, aynı şeyi konuşmaktan ve yazmaktan gerçekten bıktım, klavyem zaten kullanılamaz hale geldi - tükendi. Tutkunuzu doğru yöne yönlendirin. Bu tür bir demagoji nedeniyle zaten katılımınız askıya alındı, ancak ruhumun nezaketinden sizinle buluşmaya gittim ve yine de katılmaya devam ettim. Son şansını boşa harcama. Yuri'nin algoritması yakında hazır olacak. Ve Dmitry muhtemelen zaten hazır. Sergei zaten hazır, ama muhtemelen tatilde. FF'yi bilmeden algoritmalarını nasıl oluşturduklarını (sürprizinize göre) onlara sorun. Sor, soru sor - bilinmeyen bir fonksiyonun maksimumunu nasıl arayabilirsin, konuyu tekrar okuyabilir, söylediklerime tekrar tekrar bakabilir, çok boyutlu uzayı hatırlayabilirsin vb... Şampiyonanın seyri, lütfen.

 
Andrey Dik :

Lütfen demagojiye bulaşmayın.

Siz ve Event, metin sorununun nasıl çözüldüğünü zaten gösterdiniz...

Zaferi umduğumu veya ona güvendiğimi hiçbir yerde belirtmedim, zafere tamamen kayıtsızım. Bir karşılaştırmaya ihtiyacım var. Şampiyonanın amacı, bilinmeyen bir FF'de maksimumu aramaktır. Algoritmam FF'ye bağlı değil, tıpkı sorunun çözüldüğü MQ optimizer'ın FF'ye bağlı olmaması gibi. Ama siz göreve bağlılığı gösterdiniz, anahtarın bilgisini kullandınız (ki burada vermediniz), önde gelenler sorularıma cevap vermemeyi tercih ettiler. Bütün bunlar direkt olarak FF hakkındaki bilgileri kazanma amacı ile olmasa bile kullanmaya çalıştığınızı söylüyor ancak bu şampiyonanın hedeflerine aykırı, FF hakkında kimsenin bilgisi olmamalı ve bu bilgiyi sorunu çözmek için kullanmamalı. .

Aynı şeyi size tekrar tekrar açıklayamam, forumun yarısını çoktan kapattık. Aptal olmayı bırak artık, aynı şeyi konuşmaktan ve yazmaktan gerçekten bıktım, klavyem zaten kullanılamaz hale geldi - tükendi. Tutkunuzu doğru yöne yönlendirin. Bu tür bir demagoji nedeniyle zaten katılımınız askıya alındı, ancak ruhumun nezaketinden sizinle buluşmaya gittim ve yine de katılmaya devam ettim. Son şansını boşa harcama. Yuri'nin algoritması yakında hazır olacak. Ve Dmitry muhtemelen zaten hazır. Sergei zaten hazır, ama muhtemelen tatilde. FF'yi bilmeden algoritmalarını nasıl oluşturduklarını (sürprizinize göre) onlara sorun. Sor, soru sor - bilinmeyen bir fonksiyonun maksimumunu nasıl arayabilirsin, konuyu tekrar okuyabilir, söylediklerime tekrar tekrar bakabilir, çok boyutlu uzayı hatırlayabilirsin vb... Şampiyonanın seyri, lütfen.

Çok boyutlu alanı hatırlamaya ikna etmeyin.))

Metinle ilgili sorun en dürüst şekilde çözüldü.

Bir FF - bir program işlevi ve bir analitik işlev (anahtar) kavramını sürekli olarak (kasıtlı olarak veya değil) karıştırıyorsunuz. Program işlevini göstermek korkutucu değil, ancak anahtar (matematiksel denklem) gösterilemiyor.

Bilmediğiniz bir geliştirme alanının tüm nüanslarını daha iyi temsil edebilmek için FF'nin yazılım işlevini göstermemi istedim ve sahtekârlık ve hile yapmaya çalışmak konusunda yanlış sonuçlara varıyorsunuz.

Beni tekrar şampiyonadan çıkarırsan, her halükarda algoritmamı bitirdikten sonra seni herkesin önünde düelloya davet edeceğim. Reddet - korkaklık göster. En iyisi dürüstçe rekabet edelim ve bu konuyu bitirelim.

 
Andrey Dik :

Salak olmayı bırak artık. Bu tür bir demagoji nedeniyle zaten katılımınız askıya alındı, ancak ruhumun nezaketinden sizinle buluşmaya gittim ve yine de katılmaya devam ettim. Son şansını boşa harcama.

Bu ton olmak zorunda mı? Peter şampiyonluğa çok katkıda bulunuyor. Son şans ... Evet, tüm bu eylemlerin batmak için birkaç şansı vardı. Periyodik olarak nereden aldılar, katılımcılar bile değil. Aralarında Peter vardı. Bu nedenle, diğer "katılımcılar" tüm bunları ısrarlı bir şekilde ortaya koydukları için kimin kime şans verdiği henüz bilinmiyor.
 
Реter Konow :

Çok boyutlu alanı hatırlamaya ikna etmeyin.))

Metinle ilgili sorun en dürüst şekilde çözüldü.

Bir FF - bir program işlevi ve bir analitik işlev (anahtar) kavramını sürekli olarak (kasıtlı olarak veya değil) karıştırıyorsunuz. Program işlevini göstermek korkutucu değil, ancak anahtar (matematiksel denklem) gösterilemiyor.

Bilmediğim bir geliştirme alanının tüm nüanslarını daha iyi temsil etmek için FF'nin yazılım işlevini göstermemi istedim ve sahtekârlık ve hile girişimi hakkında yanlış sonuçlara varıyorsunuz.

Beni tekrar şampiyonadan çıkarırsan, her halükarda algoritmamı bitirdikten sonra seni herkesin önünde düelloya davet edeceğim. Reddet - korkaklık göster. En iyisi dürüstçe rekabet edelim ve bu konuyu bitirelim.

Rekabet etmek istiyorsanız - sonunda algoritmanızı ekleyin. Var olmayan bir şeyle rekabet edemezsiniz. Hazır olacak - konuşacak bir şey olacak. Bilinmeyen bir FF'ninmaksimumunu nasıl bulacağınızı bilmek istiyorsanız - sorun, belki biri cevap verir.

Ve sahip olmadığınız şeyleri ölçmeye çalışmayı bırakın.

Edebiyat klasörüne gidin. Orada optimizasyon algoritmaları hakkında bir bölüm var. Oku, hazırla, algoritma yaz, diz üstü böyle şeyler yapılmaz, derin bir bilgi birikimine ve bir günden fazla özenli çalışmaya ihtiyacın var.

 
Andrey Dik :

1000 isabet. Bir aralıkta rastgele değerlerle başlatma.

0,5 değerleri ile ilk tedavi neden bana açık değil? Neden 0.01 veya 57.19 veya 100.0 değil? Çok ilginç.

D FF'ye yapılan ilk itiraz sorunu önemlidir, ancak asıl soru değil. Arama aralığına ve parametre sayısına bağlıdır. Algoritmamda, belirli bir dağılımla rastgele olabilir.

Şimdi benim için asıl mesele başka bir şey.

Minimumu bulmak için bir algoritma derledim ve performansı test etmek için F(x1,x2,x3)=exp(x1+x2+x3)/(x1*x2*x2*x3*x3*x3) işlevini kullandım; Minimum bulundu ve kontrol edilmesi istendi. Sonuçları karşılaştıralım.

Benim sonucum İşlev çağrısı sayısı - 51 Minimum Fmin=3.76210

Sonucunuz İşlev çağrısı sayısı - 1000 Minimum Fmin=3.7354

Asıl soru hangimiz kazandı? FF'ye daha az başvurarak verilen bir hatayla minimumu hesaplayan ben. Veya FF'ye çok daha fazla sayıda çağrı için daha doğru bir minimum hesaplayan siz misiniz?

Bu benim için algoritmayı ayarlamak için temel olarak önemlidir. Benim düşüncem - bu parametreler eşit derecede önemlidir. Algoritmanın genel değerlendirmesinin katsayıları hakkında düşünebilirim.

Hakem Anatoli Kazharski'den yorum yapmasını rica ediyorum.

 
Yuri Evseenkov :

Asıl soru hangimiz kazandı?

Gerçek minimum biliniyor mu? Cevap, burada bahsettiğim sonuç tablosunun nasıl hesaplanacağına bağlıdır.

Doğruluk kriteri, harcanan zaman kriterinden 3 kat daha önemlidir.

Zaman yerine, çalıştırma sayısını kullanmalıyız (FF'yi hesaplamak için geçen süre, çalıştırma sayısıyla orantılıdır).

 
Yuri Evseenkov :

D FF'ye yapılan ilk itiraz sorunu önemlidir, ancak asıl soru değil. Arama aralığına ve parametre sayısına bağlıdır. Algoritmamda, belirli bir dağılımla rastgele olabilir.

Bu soru çok önemli. Algoritmanın yakınsaması, doğrudan parametrelerin ilk başlatılmasına bağlıdır. Ve FF bilinmiyorsa, yalnızca rastgele sayılarla başlatma uygundur.