Suchergebnisse
Suchergebnisse 1-20 von insgesamt 39.
Man ist übrigens schon 2-4 mal schneller als die Referenz, wenn man die Referenz kopiert und nur die Reihenfolge der For-Schleifen-Verschachtelungen am Ende austauscht.
Zitat von »"Fred"« Korinthenkacker lass ich nicht auf mir sitzen. Ein Winkel zwischen 40 und 90 Grad ist imo nicht gerade groß. Wenn der Ball gerade auf den Schläger auftritt und du dies als 0 Grad bezeichnest, ist alles über 90 Grad irgendwie nicht möglich. Um so größer der Winkel, um so geringer muss die Geschwindigkeit sein, um bei einem Schritt nicht nur durch das Paddle, sondern auch "neben" das Paddle zu kommen. Beides potentielle Fehlerquellen bei der Kollisionsberechnung, eben jenes wol...
Zitat von »"Fred"« Zitat von »"Phil"« 90 < x < 40 Grad UNd was ist x? x > 90 x < 40 Auf welche Zahl trifft das den zu? *seufz* Ein Winkel zwischen 40 und 90 Grad. Hab mich vertippt, so tragisch? Für manche wohl zu schwer mal nicht den Korinthenkacker zu spielen. Typisch Forum... Kann es sein das die "Zeit" bei 2^24 aufhört zu zählen?
Zitat von »"knivil"« Zitat von »"Phil"« Kann es sein das bei hohen Geschwindigkeiten und hohem Winkel der Ball durch den Schläger fliegt? Das nennt sich Tunneln und kommt auch in der realen Welt vor. Wusste garnicht, dass es auch eingbaut wurde :-). Selbst konnte ich es aber noch nicht beobachten. Btw. was meinst du mit hohen Geschwindigkeiten und hohen Winkeln (ist 720° hoch)? 90 < x < 40 Grad nenne ich in diesem Zusammenhang hoch. Mag auch eine optische Täuschung sein, bzw einfach zu schnell,...
Nach 10 Minuten die Lust verloren, steht momentan bei ca. 10000:270 für meine non-KI. Kann es sein das bei hohen Geschwindigkeiten und hohem Winkel der Ball durch den Schläger fliegt?
Ich meinte mit Standard-C++ nicht den C++-Standard. Unglücklich formuliert. Ich meinte... äh... halt keine Funktionen und andere als primitive Datentypen.
Die Schwankungen hängen wohl damit zusammen das mein "Algorithmus" zahlreiche Abbruchsbedingungen hat und daher nicht immer gleich lange braucht. Die Anzahl der geschafften Tasks variiert sehr stark. Wobei aber auch bei der Referenzfunktionen Unterschiede um die 20.000 sind. *shrug*
Interessant wäre am Ende auch mal zu sehen wie gut die Lösungen skalieren. Also wie sieht es bei einer Länge von 100 aus, oder 1000.
Hauptäschlich wohl im Bereich der KI nützlich. Zum Beispiel wenn es darum geht was alles mit einem bestimmten Budget an Einheiten oder Gebäuden gebaut werden kann. Welche Kombinationen gibt es, welche nutzt das Budget am besten aus, welche bringt den höchsten Wert usw.
Schwankt bei mir momentan zwischen 2.1 und 3.1. War auch schon über 3.5 nur irgendwie habe ich vergessen was ich seitdem geändert habe. Ändere immer zuviel auf einmal.
Hm, okay, dann war es nur der vorherige Wettbewerb. Doof. Da hab ich keinen Nerv zu.
Es darf memset verwendet werden? Ich dachte nur Standard-C++-Kram. Also ohne C-Funktionen, ohne STL, ohne Assembler und ohne compilereigenen Kram...
Kommt ja auch drauf an was du nebenbei machst. Wenn du immer dann viel Action machst wenn der Greedy dran ist, dann hat man einen klaren Vorteil.
~0.25 kommt hin. Pro Sekunde sind das 500.000 bis 700.000 ca. Ändert sich jedesmal.
Immer gleich? Habe bei jedem Durchlauf andere Ergebnisse. Die Ref-Funktion unterscheidet sich von Lauf zu Lauf mit bis zu 20.000 Punkten. Nicht gerade wenig. :/
Schwankt mittlerweile zwischen 2,5 und 4. Ist einfach sehr vom Zufall abhängig und dabei habe ich es schon auf 10 Sekunden erhöht...
Zitat von »"Phil"« EDIT2: Jetzt bei ~2.29 festgefahren. Naja, mache ich mich mal an's Optimieren... EDIT: Oh, ich sehe starkes Schwanken, ohne was geändert zu haben, erreichte das eben ~3.1 und danach ~2.2 und zweimal ~2.7. Da geht noch was.
Momentan bin ich bei ~1.6126. Ohne Optimierungen... Mal schauen... EDIT: Erhöhe auf ~1.98995 ohne Optimierungen. EDIT2: Jetzt bei ~2.29 festgefahren. Naja, mache ich mich mal an's Optimieren...
Das wohl größte Problem dabei ist, das die Greedy-Funktion zeitlich kaum zu schlagen sein dürfte. Einige Ansätze benötigen zB eine sortierte Liste, diese oder andere Vorbearbeitungen sorgen für einen an sich schnelleren Algorithmus kosten dafür aber wieder für zuviel Zeit. Einfach die Bedeutung des Faktors Zeit runterzuschrauben wäre natürlich eine Möglichkeit.
Er meint damit: Ein Thema in seiner KI-Vorlesung. Vermutlich zum Thema Backtracking und NP-Vollständigkeit. Und ja, das meinte ich. Wobei mir natürlich klar ist, das es nicht erlaubt ist. Nur interessant zu sehen was der "maximal" erreichbare Faktor ist. Da geht nicht viel im Vergleich zum Greedy-Ansatz.