Algorithmus-Optimierung Meisterschaft. - Seite 117

 
Der erste Aufruf des FF muss aus einem Array bestehen, das durch den normalen RNG des MT mit einer Gleichverteilung gebildet wird? Es ist unmöglich, Ihren eigenen RMS mit einer Normalverteilung zu verwenden? Lassen Sie es so sein, ich bestehe nicht darauf. Über Bewertungskriterien. Sie schlagen vor, die Maschinenzeit der Codeausführung zu zählen. Aber, tut mir leid, das ist eine andere Sache. Es ist eine Sache, den Code für eine effiziente Suche nach Extremen zu optimieren, und eine andere, die für die Ausführung der Programmkomponenten benötigte Maschinenzeit zu berücksichtigen, die zudem vom aktuellen Zustand der Hardware abhängt. Es wäre sinnvoller, die Anzahl der Aufrufe von ftp zu zählen. Aber hier bestehe ich nicht darauf. Ich will mich nicht schon wieder in Verfahrensfragen verzetteln; außerdem wäre es für meinen Algorithmus nicht von Bedeutung. Ich habe jetzt eine Frage. Ist die Regel, dass die Anzahl der Anrufe beim FF feststeht und für alle gleich ist, relevant?
 

Yuri Evseenkov:
1. Первое обращение к фф должно состоять иэ массива сформированного штатным ГСЧ МТ с равномерным распределением? Свой ГСЧ с нормальным распределением использовать нельзя?

2. Über die Bewertungskriterien. Sie schlagen vor, die Maschinenzeit der Codeausführung zu zählen.

1. Was die erste Initialisierung betrifft, so bestehe ich nicht darauf, ich empfehle nur - für unbekannte FF (und es ist die unbekannte FF, die an der Meisterschaft teilnehmen wird) sind alle Anfangsparameter gleich gut, weil die FF unbekannt ist. Deshalb ist es am besten, einen beliebigen RNG zu verwenden (egal, aber vorzugsweise mit so vielen Zahlenvariationen wie möglich). Dies gilt umso mehr, als statistisch zuverlässige Ergebnisse erst nach mindestens 20 Durchläufen des Algorithmus erzielt werden, und es ist einfach unpraktisch, den Algorithmus mit denselben Zahlen zu initialisieren.

2. Wie bereits beschlossen, gibt es 2 Bewertungskriterien: Genauigkeit und Anzahl der FF-Läufe. Aber der Link, den ich gab ein Beispiel für die Berechnung, es war vor langer Zeit, da anstelle der Anzahl der Läufe ist Zeit. Deshalb habe ich in meinem Beitrag deutlich gemacht: Genauigkeit und Anzahl der FF-Starts sind zwei Bewertungskriterien, wobei die Genauigkeit dreimal vorzuziehen ist.

Nach dieser Berechnung der Plätze in der Tabelle würde mein Algorithmus nach den Ergebnissen Ihrer Aufgabe den ersten Platz einnehmen. Rechnen wir nach: Die Präzision ist höher, also ist das Genauigkeitskriterium 3, und die Anzahl der FF-Durchläufe ist höher, also 0. Die Summe ist 3+0=3, und Ihr Algorithmus erhält 0+1=1, also weniger Punkte. Das heißt aber nicht, dass ich Ihr Problem gewinne, denn mehrere Bedingungen sind nicht erfüllt. Und wenn der maximale FF im Voraus bekannt ist, wird die Tabelle ein wenig anders berechnet, der erste "virtuelle" Platz wird mit dem Maximalwert belegt, und unsere Plätze werden bereits auf der Grundlage dieses Wertes berechnet (die Anzahl der erhaltenen Punkte wird anders sein).

 
Yuri Evseenkov:
Gilt die Regel, dass die Anzahl der Zugriffe fest und für alle gleich ist?

Nein, eine solche Regel hat es nie gegeben. Es ist nur ein Höchstwert zulässig. Je weniger Treffer, desto besser, was nach der Treffsicherheit das zweitwichtigste Kriterium ist.

Ich persönlich werde mir darüber keine Gedanken machen, ich werde das gesamte Limit der Zugriffe nutzen, mit anderen Worten - ich setze auf die Genauigkeit.

 
Alexander Laur:

Kurz gesagt, es ist Unsinn und keine Meisterschaft.

Die Kriterien für die Ermittlung des Gewinners werden nach und nach festgelegt.

Auf 15 Seiten werden wir einen Parameter einführen müssen, um den Gewinner zu schätzen.

Es ist überstürzt und nicht gut durchdacht.

Aber die Realität ist komplizierter als Träume. :)

Ist das Ihr heutiger Gedanke des Tages? Oder der Gedanke des Jahres?

Die Kriterien wurden vor einem Dutzend Seiten verabschiedet, die Berechnungsgrundlagen und -formeln jedoch noch früher. Es gibt viele Flutwellen, die dem Publikum das Verständnis der Materie erschweren - jetzt haben Sie das Lob dafür, herzlichen Glückwunsch.

Ich bin gefragt worden und habe geantwortet. Wenn sie mich morgen fragen, werde ich ihnen wieder antworten. Aber morgen, morgen, morgen wird Vasya Vyazaperelezayko kommen und wieder tiefsinnig bemerken: "Die Meisterschaft ist scheiße, die Regeln werden spontan erfunden!" ..........

 
Alexander Laur:
Beantworten Sie dann die Frage: Warum ist Präzision dreimal so wertvoll wie die Anzahl der FF-Anrufe?

Ich habe mich dafür entschieden, weil der Organisator. Es gibt auch noch andere Gründe.

Haben Sie schon einmal einen eigenen Optimierungsalgorithmus geschrieben? Können Sie sich vorstellen, wie es ist, die richtige 1 unter 2E16 zu finden und nur 50 Versuche zu brauchen? Es ist schwieriger, als eine Nadel unter Milliarden von Heuhaufen zu finden. Und das auch nur, wenn es nur einen Parameter gibt, und was ist, wenn es 500 sind? 1000? 1000000?

 
Alexander Laur:
Es sind die "anderen" Gründe, die von Interesse sind, d. h. die Argumente, die beispielsweise eher für die Nummer 3 als für die Nummer 10 sprechen.
Die empirische Beziehung. Ich bin bereit, 3 Minuten zu warten und ein dreimal genaueres Ergebnis zu erhalten, als eine Minute zu warten und ein viel schlechteres Ergebnis zu erhalten. Andere Verhältnisse sind nicht praktikabel.
 
Alexander Laur:
Und Sie halten das für ein Argument, das geeignet ist, einen Gewinner zu ermitteln?

Und Sie glauben, ich wüsste das nicht? - Das sollten Sie nicht glauben.

Beantworten Sie meine Frage:

Andrej Dik:

Haben Sie schon einmal einen eigenen Optimierungsalgorithmus geschrieben? Können Sie sich zum Beispiel vorstellen, was es bedeutet, unter 2E16 Werten den richtigen zu finden und nur 50 Versuche zu brauchen? Es ist schwieriger, als eine Nadel unter Milliarden von Heuhaufen zu finden. Und das auch nur, wenn es nur einen Parameter gibt, und was ist, wenn es 500 sind? 1000? 1000000?

 
Alexander Laur:
Ich zähle nichts, ich frage nur und warte auf eine Antwort. Warum sollte ich spekulieren, wenn ich fragen kann und von der Quelle eine Antwort bekomme.

Das ist die Antwort: eine empirische Beziehung. Sie werden nirgendwo eine wissenschaftlich fundierte Antwort finden.

Ich habe versucht, die Abhängigkeit der Lösungsgenauigkeit von der Anzahl der Treffer bei einer bestimmten Trefferwahrscheinlichkeit zusammen mit Matemat zu ermitteln, was uns nicht gelungen ist. Vielleicht hat es etwas mit der 3-Sigma-Regel zu tun, aber nicht unbedingt.

 
Alexander Laur:

...eine einfache Frage: Sollte ein Algorithmus, der ein Extremum mit einem bestimmten Fehler, wenn auch nicht genau, nicht finden kann, an der Meisterschaft teilnehmen dürfen?

Ich sitze also hier und frage mich... Antworten Sie direkt oder nicht. Ich habe mich entschieden - ich muss antworten!)

Warum haben Sie nach der Bedeutung des Kriteriums "Genauigkeit" gefragt, das das Kriterium "Handhabung" um den Faktor 3 übersteigt? Wenn es ein Kriterium für die "Genauigkeit" gibt, müssen Sie davon ausgehen, dass die Teilnehmer keine 100%ige Genauigkeit haben werden... Dafür ist das Kriterium "Genauigkeit" gedacht, um eine Rangfolge nach Genauigkeit zu erstellen. Daraus schließen wir - kann!, darf aber nicht (sollte nicht), denn warum sollte jemand konkurrieren, wenn sein Algorithmus gibt immer eine 100% genaue Antwort, und es bedeutet gleichzeitig, dass für eine akzeptable Anzahl von FF fordert, da die Antwort aus dem Algorithmus einmal erhalten. Daher sollte es eindeutig nicht sein! - Außerdem sollte ein solcher Algorithmus versteckt und niemandem gezeigt werden.

Und ja... Das ist ein sehr wichtiger Punkt. Wenn der Algorithmus nicht "weiß", wo sich das absolute Maximum befindet - und er weiß es nicht, warum sollte er sonst danach suchen? Wir "da draußen" können den Grad der Genauigkeit des Algorithmus nur beurteilen, indem wir Experimente mit ihm durchführen, aber wir können den Parameter des Algorithmus nicht auf "Suche mit dieser Genauigkeit" einstellen, aus Gründen, die hoffentlich bereits klar sind.

 
Alexander Laur:

Die Antwort ist einfach:

1. Wenn ein Algorithmus NICHT in der Lage ist, ein Extremum mit einer bestimmten Genauigkeit zu finden, hat er keinen Platz in der Meisterschaft;

2. Unter Berücksichtigung von Punkt 1 nehmen nur Algorithmen, die ein Extremum mit einer bestimmten Genauigkeit SUCHEN, an der Ermittlung des Gewinners teil;

3. keine Rangfolge in Bezug auf die Genauigkeit. Die Genauigkeit wird durch einen Bereich angegeben;

4. Ermittlung eines Gewinners nach der Anzahl der Aufrufe der FF.

Ich werde jetzt gehen, es ist 2 Uhr nachts.

Verstanden.

Aber so kann man es nicht machen.

Erstens: Es gibt keinen objektiven Grund, die Genauigkeit festzulegen. Für den einen ist eine Abweichung von 1 % unangenehm, für den anderen sind 20 % in Ordnung. Es hängt weitgehend von der Art der Aufgabe und dem Algorithmus ab. Die Festlegung einer "Passgenauigkeit" bei einer Meisterschaft würde bedeuten, dass verschiedene interessante algorithmische Lösungen ausgemerzt werden.

Zweitens: Die Genauigkeit hängt von den FF-Zugriffen ab, und zwar nicht-linear. Für verschiedene Arten von Algorithmen wird diese Abhängigkeit unterschiedlich sein, und man kann nicht einfach sagen "dieser Algorithmus ist gut, und dieser ist schlecht" - deshalb verwenden wir zwei Kriterien, um die Algorithmen so objektiv wie möglich zu bewerten. Es gab ein drittes Kriterium - die Laufzeit des Algorithmus (nicht FF) - aber das ist sehr subjektiv, weil OCL-Algorithmen, die es verwenden, auf manchen Computern schnell und auf anderen langsam sind. Daher bleiben nur zwei Kriterien übrig: Genauigkeit und Bezug zum FV.

Grund der Beschwerde: