Optimizasyon Algoritmaları Şampiyonası. - sayfa 122

 

Şampiyona, hazır algoritmalara sahip olanlar için eğitimli katılımcılar için tasarlanmıştır. Özel literatürü önceden okumak isteyenler, size hatırlatmama izin verin - bağlantı profilimde ve burada .

Hazır algoritmalar ile yeterince eğitimli katılımcı olduğunda, konuşacak bir şeyimiz olacak. Bu arada, hoşçakalın ve yakında görüşürüz!

 

Şampiyonluğa çok fazla enerji ve sinir adadım, ancak bir moderatör gönderilerinden biriyle her şeyin altını çizebilir. Kod örnekleri ve çalışan bir algoritma, literatüre bağlantılar, bağlantı arayüzleri - Bunların hepsini verdim, ancak moderatörün dediği gibi, tüm bunlar orada değil, muhtemelen bana göründü!

Algoritmalarını güç için test etmekle ilgilenen herkes - PM'den benimle iletişime geçin, konuşalım, soruları cevaplayacağım.

Benden daha fazla sosyal aktivite beklemeyin lütfen beni doğru anlayın.

 

Andrey, izninle bu şekilde değerlendirmeyi teklif ediyorum, yine ısrar etmiyorum.

Görev: Algoritma tarafından bilinmeyen bir fonksiyonun F(x1,x2, xn) ekstremumunu bulun.

Tüzük:

Kazanan 2 parametrenin kombinasyonu ile belirlenir

1. Doğruluk T= Fmin_best/Fmin_y - (katılımcıların en iyisinin minimumu/katılımcının minimumu) minimum aranması durumunda

Maksimum arama durumunda T=Fmax_y/Fmax_best

2. K = Kbest / Ky işlevine yapılan çağrı sayısı (Tüm katılımcılardan gelen minimum çağrı sayısı)

Genel puan Os=T+K.

Katılımcı algoritması double X[x1,x2, xn] dizisini geçer ve fonksiyonun değerini alır, ardından kendi mantığına göre hareket eder ve ekstremumu ve erişim sayısını (dizinin transfer sayısı) hesaplar.

Arama aralığı ayrı olarak bildirilir.

Eğitim için işlevi alabilirsiniz. F(x1,x2,x3)=exp(x1+x2+x3)/(x1*x2*x2*x3*x3*x3);

Algoritmam aşağıdaki sonuçları aldı

Bu sonuçları aldım.

Belirtilen arama hatası 0.01 Başlangıç parametreleri (ilk çağrı) x1=x2=x3=0.5; Arama aralığı 0-100

Fonksiyon çağrısı sayısı - Ky= 51

Minimum Fmin_y=3.76210

x1=1.1; x2=2.1; x3=3.1;

F=( exp (X[ 1 ]+X[ 2 ]+X[ 3 ]))/(X[ 1 ]*X[ 2 ]*X[ 2 ]*X[ 3 ]*X[ 3 ]*X[ 3 ]);
 
Yuri Evseenkov :

Andrey, izninle bu şekilde değerlendirmeyi teklif ediyorum, yine ısrar etmiyorum.

Görev: Algoritma tarafından bilinmeyen bir fonksiyonun F(x1,x2, xn) ekstremumunu bulun.

Tüzük:

Kazanan 2 parametrenin kombinasyonu ile belirlenir

1. Doğruluk T= Fmin_best/Fmin_y - (katılımcıların en iyisinin minimumu/katılımcının minimumu) minimum aranması durumunda

Maksimum arama durumunda T=Fmax_y/Fmax_best

2. K = Kbest / Ky işlevine yapılan çağrı sayısı (Tüm katılımcılardan gelen minimum çağrı sayısı)

Genel puan Os=T+K.

Katılımcı algoritması double X[x1,x2, xn] dizisini geçer ve fonksiyonun değerini alır, ardından kendi mantığına göre hareket eder ve ekstremumu ve erişim sayısını (dizinin transfer sayısı) hesaplar.

Arama aralığı ayrı olarak bildirilir.

Eğitim için işlevi alabilirsiniz. F(x1,x2,x3)=exp(x1+x2+x3)/(x1*x2*x2*x3*x3*x3);

Algoritmam aşağıdaki sonuçları aldı

Bu sonuçları aldım.

Belirtilen arama hatası 0.01 Başlangıç parametreleri (ilk çağrı) x1=x2=x3=0.5; Arama aralığı 0-100

Fonksiyon çağrısı sayısı - Ky= 51

Minimum Fmin_y=3.76210

x1=1.1; x2=2.1; x3=3.1;

Burada katılımcıların yerlerinin nasıl hesaplandığını gösterdim. Tek açıklama zaman değil, FF'ye yapılan aramaların sayısı:

Andrey Dik :
Doğruluk, maksimum 1.0 Maks. Min. kriter Kriter*3 Zamanlar. Maks. Min. kriter Genel kriter Yer
Petrov 0.89 0.89 0.21 1.00 3.00 800.00 800.00 221.00 0,00 3.00 1
limonov 0.74 0.89 0.21 0.78 2.34 456.00 800.00 221.00 0,59 2.93 2
Sidorov 0.76 0.89 0.21 0.81 2.43 589.00 800.00 221.00 0.36 2.79 3
Uhin 0.61 0.89 0.21 0,59 1.76 387.00 800.00 221.00 0.71 2.48 4
ilerlemek 0.65 0.89 0.21 0.65 1,94 521.00 800.00 221.00 0.48 2.42 5
Lenon 0.45 0.89 0.21 0.35 1.06 800.00 800.00 221.00 0,00 1.06 6
çitler 0.21 0.89 0.21 0,00 0,00 221.00 800.00 221.00 1.00 1.00 7
Abamov 0.30 0.89 0.21 0.13 0.40 721.00 800.00 221.00 0.14 0,53 sekiz

İşte katılımcılar için şampiyonadaki bir yerin hesaplanmasına bir örnek. Tablo zaten "Ortak Kriterler" sütununa göre sıralanmıştır.

Tabloya daha yakından bakalım. Petrov, maksimum FF değerinin 1.0'a ve minimumun 0.0'a ölçeklendiği "Doğruluk" kriterinde 0.89 puan aldı. Bu nedenle, hepsi arasında en iyi değerdir. Zaborov bu kriterde en düşük puana sahipti, sadece 0.21 puan alabildi ve zaten Zaborov'un sıralamada çitin üzerine oturacağı görülüyordu ....

Ancak "Zaman" kriterine göre, lider aynı Zaborov, en hızlı algoritmaya sahip, görevi 221 saniyede tamamladı (ama aynı zamanda en yanlış olanı).

Şimdi genel kriteri hesaplayalım. Ve ne görüyoruz? Kim düşünebilirdi, ama Abamov son sırada yer aldı, en düşük genel kritere sahip olduğu için sadece 0,53 puan alabildi.

not. "Doğruluk" kriterine göre - en büyük değer daha iyidir, "Zaman" kriterine göre - en küçük değer daha iyidir. Soyadlarının tüm tesadüfleri tesadüfi, benim için son yerin Abamov ile olması büyük bir sürprizdi, peki, daha kesin bakmanız gerekiyor ... ve daha hızlı.

ZZY. "Doğruluk" kriterini hesaplamak için (In - InMIN) / (InMAX - InMIN) formülü kullanılır ; ve "Zaman" (InMIN - In) / (InMAX - InMIN) kriterini hesaplamak için;

not. Probleminizde kaç deneme yapıyorsunuz? Neden sabit 0,5 değeriyle başlatma? 10.0 ile başlatırsanız kaç isabet alırsınız?

PPS ..... tüm sorular, lütfen, kişisel olarak.

 
Andrey Dik :

Burada katılımcıların yerlerinin nasıl hesaplandığını gösterdim. Tek açıklama zaman değil, FF'ye yapılan aramaların sayısı:

not. Probleminizde kaç deneme yapıyorsunuz? Neden 0,5'lik sabit bir değerle başlatma? 10.0 ile başlatırsanız kaç isabet alırsınız?

G 10.0 olarak başlatıldığında, isabet sayısı 2028, en az 3.73722 idi. Puanını kaybetmek. Başlatma sırasında RNG'yi kontrol etmedim.

Anlayın, benim algoritmamın sizinkinden daha iyi olduğunu iddia etmiyorum, hala benim algoritmam üzerinde çalışıyorum. Sadece genel puanın nasıl oluşacağını bilmek istedim. Bir algoritma nasıl keskinleştirilir.

not. Haklısın, görünüşe göre sadece ben hazır bir şeyim olduğunu söylüyorum. Diğer üyeler alenen sessizdir. Şampiyonayı sonbahara ertelemek mantıklı ama şimdilik antrenman yapın.

 
Yuri Evseenkov :

G 10.0 olarak başlatıldığında , isabet sayısı 2028, en az 3.73722 idi. Puanını kaybetmek. Başlatma sırasında RNG'yi kontrol etmedim.

Anlayın, algoritmamın sizinkinden daha iyi olduğunu iddia etmiyorum, hala benimki üzerinde çalışıyorum. Sadece genel puanın nasıl oluşacağını bilmek istedim. Bir algoritma nasıl keskinleştirilir.

not. Haklısın, görünüşe göre sadece ben hazır bir şeyim olduğunu söylüyorum. Diğer üyeler alenen sessizdir. Şampiyonayı sonbahara ertelemek mantıklı ama şimdilik antrenman yapın.

Ben de öyle düşündüm.

İşin aslı. Bunun keskinleştirilmesi gerekmez. Algoritma, herhangi bir başlatma eşdeğer iken, bilinmeyen herhangi bir işlevle çalışabilmelidir ve en az 20 olmak üzere birkaç test yapmak gerekir.

İletişimi kişisel olarak aktarıyoruz.

 
Alexander Laur :
Dedem de bana şöyle demişti: "Akıllı bir adam bir aptaldan farklıdır, çünkü başladığı işi sona erdirir."
Deden sana "anlamadığın şeye girme!" demedi. ve "İşle meşgul olanlara karışma!"?
Müdahale ne olursa olsun - katılımcıların çalışması ve hazırlığı şimdi PM'de.
 
Andrey Dik :
Deden sana... "İşle meşgul olanlara karışma!" demedi mi?

Ve meşgul müsün?

Her ne kadar türün bir tür klasiği olsanız da - iki ay boyunca şampiyonluk hakkında nasıl konuşulur, katılımcılar toplanır, MK'den 3.000 $ para ödülü şeklinde destek alınır - her şeyi konuşun ve hiçbir şey olmadan bırakın.

Puşkin'in çukurlu yaşlı kadınının sonunda daha da şanslı olduğu ortaya çıktı - en azından çukuru geri aldı.

 
Andrey F. Zelinsky :

Ve meşgul müsün?

Her ne kadar türün bir tür klasiği olsanız da - iki ay boyunca şampiyonluk hakkında nasıl konuşulur, katılımcılar toplanır, MK'den 3.000 $ para ödülü şeklinde destek alınır - her şeyi konuşun ve hiçbir şey olmadan bırakın.

Puşkin'in sızdıran bir oluğu olan yaşlı kadının sonunda daha da şanslı olduğu ortaya çıktı - en azından oluğu geri aldı.

Tanıklıkta kafanız karıştı ... Ya katılımcıları topladım, sonra toplamadım ... Ödüller benim için değil, katılımcılar içindi ve şimdi kimse bir şey almayacak - Memnun olmalısınız.
Benim için şampiyonada amaç para değildi ama hedeflere ulaşıldı, mesajdaki ilk gönderiye bakın, insanlar ilgilenmeye başladı, kendi algoritmalarını yazmaya ve geliştirmeye başladı ve asıl mesele bu.
 
Yani anlamıyorum. Zaten yakında iki ay ve işler hala orada. Şampiyona ne zaman yapılacak?