Algorithmus-Optimierung Meisterschaft. - Seite 79

 
Andrey Dik:
Das ist großartig! Unkonventionelle Ansätze sind, wenn nicht der Schlüssel zum Erfolg, so doch zumindest eine gute Grundlage dafür. Werden Sie also bei der Meisterschaft gegen Ihre Kollegen antreten?
Ich war daran interessiert, das vorgeschlagene Problem zu lösen.
Ich bin schon lange mit dem Kindergarten fertig :)
 
Andrey Dik:

"Das glaube ich nicht!" (с)

Man kann natürlich Dahls oder Ozhegovs Wörterbuch in den Algorithmus einfügen und ihn mit bekannten Wörtern vergleichen, aber wenn der Text in der Aufgabe keine sinnvollen Wörter enthält (z. B. eine zufällige Reihe von Buchstaben), dann wird der Algorithmus definitiv scheitern.

Ich würde keine unbegründeten Behauptungen aufstellen.

Für diese bestimmte Zeichenfolge benötigt mein Algorithmus 904 Zugriffe auf den FF.

Bei gleicher Zeichenlänge (49 Zeichen), aber mit einem beliebigen anderen Text (auch mit völlig unsinnigen und zufälligen Buchstaben) wird die Anzahl der FF-Aufrufe leicht unterschiedlich sein.

Mit anderen Worten: Die Buchstaben selbst bestimmen die genaue Anzahl der Zugriffe.

Die Schwankungsbreite beträgt etwa ( +/- 40) Anrufe, je nach der jeweiligen Buchstabengruppe.

Wenn Sie die Länge der Zeichenkette ändern, erhöht sich die Anzahl der Treffer, aber der Anteil bleibt gleich. Das bedeutet, dass für jedes Zeichen durchschnittlich 15 bis 20 Anrufe bei der FF erfolgen.

Daher kann man davon ausgehen, dass für eine Zeichenkette von 100 Zeichen etwa 2000 Aufrufe erforderlich sind. Und so weiter...

Die Genauigkeit der Zeichenfolge wird immer 100 Prozent betragen.

So funktioniert mein Algorithmus.

 
Event:
Ich war daran interessiert, das vorgeschlagene Problem zu lösen.
Kämpfen - ich habe den Kindergarten schon lange hinter mir :)
können Sie prüfen

//+------------------------------------------------------------------+
//|                                                  OptimFFtext.mq5 |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict

// тестовая фитнес функция чемпионата, не известна участникам
#import "FFtext.ex5"
int    GetParamCount();
void   GetParamProperties(double &min,double &max,double &step);
double FF(double &array[]);
int    GetCountRunsFF();
void   PrintCodeToFile(double &param[]);
#import

const int TextLen= 49;
const double EPS = 1 e-6;
double param[];
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnStart()
  {
   int Nparam=GetParamCount();
   ArrayResize(param,Nparam);
   ArrayInitialize(param,0.0);
   double temp[];
   ArrayResize(temp,Nparam);
   for(int n=0; n<Nparam;++n)
     {
      ArrayCopy(temp,param);
      double ffParam=FF(param);
      for(int k=1; k<TextLen;++k)
        {
         temp[n]=(double)k;
         double ffTemp=FF(temp);
         if(ffTemp<ffParam-EPS)
           {
            break;
           }
         if(ffTemp>ffParam+EPS)
           {
            ArrayCopy(param,temp);
            break;
           }
        }
     }
   Print("Количество вызовов FF = "+IntegerToString(GetCountRunsFF()));
   PrintCodeToFile(param);
  }
 
Event:
Das können Sie überprüfen.

Ich habe es überprüft - Ihr Algorithmus ist meinem mit 49 Zeichen um einige Anrufe voraus, aber wenn Sie die Anzahl der Zeichen erhöhen, ist mein Algorithmus dem Ihren um einige hundert voraus.

Versuchen Sie, dies einzugeben: "Selten kombiniert eine wissenschaftliche Arbeit diese beiden Typen." Sie erhalten 1113 Anrufe, ich bekomme 891.

Ich denke, wenn Sie die Anzahl der Zeichen in der Zeile erhöhen, wird der Unterschied nur noch größer.

Ich werde es morgen überprüfen.

 
Реter Konow:

Ich habe es überprüft - Ihr Algorithmus ist meinem mit 49 Zeichen um einige Anrufe voraus, aber wenn Sie die Anzahl der Zeichen erhöhen, ist mein Algorithmus dem Ihren um einige hundert voraus.

Versuchen Sie, dies einzugeben: "Selten kombiniert eine wissenschaftliche Arbeit diese beiden Typen." Sie erhalten 1113 Anrufe, ich bekomme 891.

Ich denke, wenn Sie die Anzahl der Zeichen in der Zeichenkette weiter erhöhen, wird der Unterschied nur noch größer.

Ich werde es morgen überprüfen.

Ich habe nicht behauptet, dass meine besser ist als Ihre)) (Herzlichen Glückwunsch!
 
Реter Konow:
Veranstaltung:

Sie beide nutzen das Wissen über die FF des Optimierungsproblems. Das heißt, Sie lösen das Problem "frontal".

Aber das Ziel der Meisterschaft ist es, einen unbekannten FF zu optimieren. Was werden Ihre Algorithmen tun, wenn sich herausstellt, dass das Problem die Stufe 0 hat oder der Bereich auf der Linie der ganzen Zahlen liegt? Oder wenn die Abhängigkeit des FF-Wertes von den Parametern nicht linear ist?

Wenn man die durchschnittliche Zeit pro FF-Anruf kennt, kann man genau berechnen, wie lange es in einem solchen Fall dauern wird, das Problem zu lösen, und es kann durchaus länger dauern als die Zeit, in der das Universum existiert.

Ihre Algorithmen sind nicht universell und auf eine bestimmte Aufgabe abgestimmt; sie sind auf ihre Weise gut, aber selbst für die Optimierung einfacher Expert Advisors ungeeignet, ganz zu schweigen von den TS zu neuronalen Netzen und künstlicher Intelligenz.

Denken Sie an die Allgemeingültigkeit, überlegen Sie, was Sie tun würden, wenn Sie den Inhalt der Aufgabe mit Text nicht kennen, sonst wird die Aufgabe vom 11. Juli für Ihre Algorithmen eine zu harte Nuss sein.

ZZYEvent, in der Tat, ich habe es überprüft, wenn der Text aus den Anfangsbuchstaben einer Taste wie "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" besteht, ist die Zahl der FF-Anrufe lächerlich gering, und es ist völlig verständlich, warum.

ZZZY.rettag,Event, du bist sowieso gut - du hast Einfallsreichtum bewiesen.

 
Andrey Dik:

Sie verwenden beide das Wissen über die FF des Optimierungsproblems. Das heißt, Sie lösen das Problem "frontal".

Das Ziel des Problems besteht jedoch darin, eine unbekannte FF zu optimieren. Was werden Ihre Algorithmen tun, wenn sich herausstellt, dass das Problem die Stufe 0 hat oder der Bereich auf der Linie der ganzen Zahlen liegt? Oder wenn die Abhängigkeit des FF-Wertes von den Parametern nicht linear ist?

Wenn man die durchschnittliche Zeit pro FF-Anruf kennt, kann man genau berechnen, wie lange es in einem solchen Fall dauern wird, das Problem zu lösen, und es kann durchaus länger dauern als die Zeit, in der das Universum existiert.

Ihre Algorithmen sind nicht universell und auf eine bestimmte Aufgabe abgestimmt; sie sind auf ihre Weise gut, aber selbst für die Optimierung einfacher Expert Advisors ungeeignet, ganz zu schweigen von den TS zu neuronalen Netzen und künstlicher Intelligenz.

Denken Sie an die Allgemeingültigkeit, überlegen Sie, was Sie tun würden, wenn Sie den Inhalt der Aufgabe mit Text nicht kennen, sonst wird die Aufgabe vom 11. Juli für Ihre Algorithmen eine zu harte Nuss sein.

ZSEvent, ja, ich habe es überprüft, wenn der Text aus den Anfangsbuchstaben eines Schlüssels wie "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" besteht, ist die Zahl der FF-Aufrufe lächerlich gering, und es ist völlig verständlich, warum.

Reizen Sie mich nicht und halten Sie mich nicht für selbstverständlich. Ich beteilige mich nicht an Ihren Spielen.
Ich habe sogar Angst, meine Version einen Algorithmus zu nennen. Nur ein paar Zeilen :)

PS: Und seien Sie nicht so herablassend zu mir. Ich habe sogar eine Träne vergossen ;)
 
Andrey Dik:

Sie verwenden beide das Wissen über die FF des Optimierungsproblems. Das heißt, Sie lösen das Problem "frontal".


Also habe ich das Problem direkt gelöst, aber noch etwas Potenzial für die Entwicklung von Algorithmen gelassen. Ich denke, ich habe die Grundlage für die Lösung ähnlicher Textprobleme und kann mich weiter verbessern.

Bis zum 11. Juli werde ich die endgültige Lösung für ähnliche Textprobleme höherer Komplexität haben.

 
Event:
Versuchen Sie nicht, mich aufzuregen und auf den Arm zu nehmen. Ich mache bei euren Spielen nicht mit.
Ich traue mich nicht einmal, es einen Algorithmus zu nennen. Nur ein paar Zeilen :)

PS: Und seien Sie nicht so herablassend zu mir. Ich habe sogar eine Träne vergossen ;)

Komm schon, wie könnte ich? Weder noch.

Ich bin nicht herablassend, ich bin fair (zumindest in diesem speziellen Fall), außerdem bin ich unhöflich und ein Rüpel. Wenn Sie nicht wollen, machen Sie nicht mit, ich ziehe niemanden an den Ohren!

;)

ZS: Ich kann mit 3 Gegenständen jonglieren, die nicht mehr als ein paar Kilo wiegen, und ich kann Kopfstand machen, aber wenn ich in einem Zirkus auftrete und meine Fähigkeiten zeige, werde ich von den Artisten dasselbe hören, was ich dir gesagt habe.

 
Реter Konow:

Es stimmt, ich habe das Problem direkt gelöst, aber ich habe ein gewisses Potenzial für die Entwicklung des Algorithmus gelassen. Ich denke, ich habe die Grundlage für die Lösung solcher Textprobleme und kann sie weiter verbessern.

Bis zum 11. Juli werde ich die endgültige Fassung der Lösung ähnlicher, komplexerer Textaufgaben fertig haben.

Dann machen Sie sich bereit für das Meisterschaftsproblem, Sie haben sich bereits mit "ausgezeichnet" "warmgelaufen".
Grund der Beschwerde: