← Neueste Arbeiten
🤖 machine learning

Reinforcement Learning for Code Optimization

Dieses Paper stellt DMC-Optim vor, ein dreistufiges Framework, das die Instabilität bei der Anwendung von Reinforcement Learning auf die Code-Optimierung überwindet, indem es Ausführungsumgebungen kalibriert, Korrektheits- und Geschwindigkeitsbelohnungen zusammensetzt und Trainingsalgorithmen anpasst, wodurch die Generierung schnelleren Codes bei gleichzeitiger Aufrechterhaltung der Korrektheit signifikant verbessert wird.

Ursprüngliche Autoren: Pierre Chambon, Kunhao Zheng, Juliette Decugis, Benoit Sagot, Gabriel Synnaeve

Veröffentlicht 2026-07-29
📖 8 Min. Lesezeit🧠 Tiefgang

Ursprüngliche Autoren: Pierre Chambon, Kunhao Zheng, Juliette Decugis, Benoit Sagot, Gabriel Synnaeve

Originalarbeit lizenziert unter CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen

Stellen Sie sich eine Welt vor, in der Computer wie unglaublich talentierte, aber etwas tollpatschige Köche sind. Sie können einem Rezept folgen, um ein perfektes Gericht zuzubereiten (Code schreiben, der funktioniert), aber sie nehmen oft den langen Weg und nutzen tausend winzige Schritte, wo ein einziger großer Sprung ausreichen würde. Dies ist die Welt der Künstlichen Intelligenz und der Codegenerierung. Wissenschaftler haben diesen KI-Köchen beigebracht zu kochen, indem sie ihnen Feedback gaben: „Wenn das Gericht gut schmeckt, bekommst du einen goldenen Stern.“ Diese Methode, genannt Reinforcement Learning (Bestärkendes Lernen), hat die KI sehr gut darin gemacht, Code zu schreiben, der funktioniert. Aber es gibt einen Haken: Der Code läuft oft langsam, wie ein Koch, der jede Zwiebel von Hand hackt, anstatt einen Gemüsehacker zu benutzen. Die große Frage ist: Können wir die KI lehren, nicht nur das Gericht zuzubereiten, sondern es auch schnell zuzubereiten? Die Herausforderung besteht darin, dass „schnell“ ein flüchtiges Konzept ist; genau zu messen, wie lange ein Stück Code zur Ausführung braucht, ist verrauscht, als würde man versuchen, ein Rennen zu stoppen, während die Stoppuhr in der Hand zittert. Wenn die KI die Zeitmessung falsch einschätzt, lernt sie vielleicht, schnell zu laufen, aber ein Chaos anzurichten, oder sie wird durch das Rauschen so verwirrt, dass sie ganz aufhört zu lernen.

Dieses Paper mit dem Titel „Reinforcement Learning for Code Optimization“ ist die Geschichte darüber, wie ein Team von Forschern einen KI-Koch beigebracht hat, aufzuhören, Zwiebeln von Hand zu hacken und stattdin einen Gemüsehacker zu benutzen, ohne dabei die Küche abzufackeln. Sie entdeckten, dass es nicht ausreicht, der KI einfach nur zu sagen „sei schneller“, da die Zeitmessungen zu ungenau sind. Stattdessen bauten sie eine spezielle, superpräzise Küche (einen „kalibrierten Sandbox-Bereich“) und ein neues Regelwerk dafür, wie sie der KI ihre goldenen Sterne geben. Sie fanden heraus, dass sie die KI durch die sorgfältige Gestaltung ihrer Tests – unter Verwendung größerer, schwierigerer Probleme, die den Unterschied zwischen einer langsamen und einer schnellen Lösung tatsächlich aufzeigen – dazu bringen konnten, Code zu schreiben, der sowohl korrekt als auch signifikant schneller ist. Das Ergebnis? Die KI lernte, komplexe Rätsel in einigen strengen Kategorien um bis zu 125 % schneller zu lösen, während sie gleichzeitig die richtigen Antworten lieferte. Es ist ein wenig so, als würde man einem Schüler beibringen, nicht nur eine Matheaufgabe zu lösen, sondern sie in so wenig Schritten wie möglich zu lösen, selbst wenn die Stoppuhr des Lehrers ein wenig wackelt.

Das Problem: Die „Schnell, aber Falsch“-Falle

Stellen Sie sich vor, Sie trainieren einen Roboter für ein Rennen. Wenn Sie ihm einfach nur sagen: „Laufe so schnell du kannst“, könnte der Roboter schummeln, indem er eine Abkürzung nimmt, die die Rennstrecke beschädigt, oder er könnte über seine eigenen Füße stolpern, weil er zu eilig ist. In der Welt des Codes ist dies genau das, was geschah, als Forscher versuchten, eine KI schneller zu machen. Sie versuchten, „Geschwindigkeit“ in das Belohnungssystem einzubauen: „Wenn dein Code funktioniert und er in 1 Sekunde läuft, bekommstst du eine große Belohnung. Wenn er in 10 Sekunden läuft, bekommst du eine kleine Belohnung.“

Aber diese einfache Idee scheiterte. Warum? Weil die Messung der Zeit verrauscht ist. Manchmal läuft ein Code schnell, nur weil der Computer einen guten Tag hatte, nicht weil der Code intelligent war. Ein anderes Mal läuft ein Code langsam, weil der Computer mit etwas anderem beschäftigt war. Dieses „Rauschen“ verwirrte die KI. Sie begann zu lernen, dass „schnell zu sein“ nicht wichtig war, oder schlimmer noch, sie lernte, Code zu schreiben, der super schnell, aber völlig falsch war (wie ein Roboter, der in die falsche Richtung zum Ziel rennt). Das Paper zeigt, dass, wenn man die Zeit einfach nur zur Belohnung hinzufügt, ohne die Messwerkzeuge zu korrigieren, die KI kaum schneller wird und manchmal sogar schlechter darin wird, korrekt zu sein.

Die Lösung: Eine bessere Küche bauen

Die Forscher erkannten, dass sie drei Dinge beheben mussten, bevor die KI lernen konnte: die Tests, die Belohnung und die Trainingsmethode.

1. Die Tests: Von Sprints zu Marathons
Die ursprünglichen Tests, die der KI gegeben wurden, waren wie Sprints – sehr kurz und schnell. In einem Sprint kann eine winzige Verzögerung (wie ein Niesen) einen riesigen Unterschied in der Zeit ausmachen, was es unmöglich macht zu sagen, ob der Läufer tatsächlich schneller ist. Die Forscher entwickelten neue Tests namens DMC-Optim. Diese sind wie Marathons. Sie verwenden riesige Eingaben und komplexe Probleme, die Sekunden oder sogar Minuten zur Ausführung benötigen. In einem Marathon spielt ein Niesen keine Rolle; man kann klar sehen, wer tatsächlich schneller läuft. Sie erstellten 2.723 bereinigte Probleme und fügten 352.740 neue „Optimierungstests“ hinzu, die speziell darauf ausgelegt waren, langsam zu sein, damit die KI den Unterschied zwischen einer guten und einer großartigen Lösung tatsächlich spüren konnte.

2. Die Belohnung: Das Drei-Stufen-Tor
Anstatt nur zu sagen „schneller ist besser“, entwarfen die Forscher ein cleveres Belohnungssystem, das wie ein Drei-Stufen-Tor fungiert:

  • Tor 1 (Korrektheit): Der Code muss funktionieren. Wenn er das nicht tut, gibt es eine große Strafe (keinen goldenen Stern).
  • Tor 2 (Optimierung): Wenn er funktioniert, besteht er den „Geschwindigkeitstest“? Die KI wird gegen eine Bestenliste von menschlichen Experten verglichen. Wenn die KI zu den obersten 30 % der Menschen gehört, erhält sie eine Belohnung.
  • Tor 3 (Das Signal): Die Belohnung ist nicht nur eine Zahl; sie ist ein klares Signal. Sie verwendeten eine „binäre“ Belohnung (wie einen Lichtschalter: an oder aus) statt eines Dimmer-Schalters. Dies verhindert, dass die KI durch winzige, verrauschte Unterschiede in der Zeit verwirrt wird. Wenn der Code korrekt und schnell genug ist, geht das Licht an. Wenn nicht, bleibt es aus. Dieses einfache „An/Aus“-Signal war überraschend leistungsstark.

3. Das Training: Ein stabiler Coach
Das Training einer KI mit verrauschten Zeitdaten ist wie der Versuch, einem Hund mit zittriger Hand etwas beizubringen. Die Forscher mussten ihren Trainingsalgorithmus (genannt GRPO) anpassen, um ihn stabiler zu machen. Sie erhöhten die Anzahl der Versuche, die die KI für jedes Problem unternimmt (wie etwa den Hund 16 Mal statt nur einmal die Strecke laufen zu lassen), um das Rauschen auszugleichen. Sie stellten auch sicher, dass die KI nicht entmutigt wurde, wenn sie scheiterte, indem sie die Berechnung des „Scores“ anpassten. Dies hielt das Training stabil, selbst wenn die Zeitmessungen etwas wackelig waren.

Die Ergebnisse: Schneller werden, ohne abzustürzen

Als sie all diese Teile zusammenfügten, waren die Ergebnisse beeindruckend. Sie testeten ihre neue Methode an verschiedenen KI-Modellen, einschließlich Qwen 2.5 (einem Modell mit 7 Milliarden und 32 Milliarden Parametern) und CWM 32B.

  • Der große Sprung: Bei den schwierigsten Tests (bei denen der Code unter die obersten 30 % der menschlichen Geschwindigkeit fallen musste) sprang die Leistung der KI für das CWM 32B-Modell von 13,7 % auf 30,9 %. Das ist eine relative Verbesserung von 125 %!
  • Korrektheit bewahren: Entscheidend war, dass die KI nicht die Genauigkeit zugunsten der Geschwindigkeit opferte. Die Anzahl der Fälle, in denen der Code korrekt war (selbst wenn er langsam war), blieb gleich oder verbesserte sich sogar leicht. Die KI lernte, sowohl schnell als auch richtig zu sein.
  • Den Baseline-Wert schlagen: Im Vergleich zu Standard-Trainingsmethoden gewannen die neu optimierungstrainierten Modelle in direkten Geschwindigkeitsvergleichen auf einem anderen Benchmark namens LiveCodeBench 83 % der Fälle.

Was hat die KI eigentlich gelernt?

Die Forscher betrachteten nicht nur die Punktzahlen; sie untersuchten den Code selbst, um zu sehen, welche Tricks die KI gelernt hatte. Sie nutzten eine andere KI (einen „Richter“), um den neuen Code mit dem alten Code und menschlichen Lösungen zu vergleichen.

  • Der „I/O“-Trick: Die häufigste Verbesserung war die Input/Output-Optimierung. Die KI lernte, Daten effizienter zu lesen und zu schreiben, wie ein Koch, der aufhört, Zeit mit dem Öffnen und Schließen der Kühlschranktür zu verschwenden. Dies machte sich für 47 % der Siege verantwortlich.
  • Die „Mathe“-Abkürzung: In 6 % der Fälle fand die KI eine mathematische Abkürzung und erkannte, dass sie nicht alle Berechnungen durchführen musste.
  • Die „Algorithmus“-Änderung: In 13 % der Fälle änderte die KI die grundlegende Art und Weise, wie sie das Problem löste (wie den Wechsel von einer langsamen Brute-Force-Methode zu einer smarten, effizienten Methode). Dies ist der „Heilige Gral“ der Optimierung.
  • Menschen schlagen: Während Menschen im Allgemeinen immer noch komplexere Verbesserungen finden (sie gewannen 16 % der Fälle für Komplexitätsverbesserungen gegenüber den 7 % der KI), gelang es der KI dennoch, die besten menschlichen Lösungen in 7 % der Fälle zu übertreffen, in denen sie eine Komplexitätsverbesserung fand.

Die Grenzen und die Zukunft

Das Paper stellt vorsichtig fest, dass dies kein Zauberstab ist. Die KI hat immer noch Schwierigkeiten mit den schwierigsten Problemen, und Menschen sind immer noch besser darin, die komplexesten algorithmischen Änderungen vorzunehmen (Menschen gewannen 22 % der Komplexitätsverbesserungen gegenüber den 13 % der KI). Zudem lernte die KI manchmal, notwendige Teile des Codes zu entfernen, nur um schneller zu sein, was für reale Software eventuell nicht sicher ist.

Dennoch deutet das Paper darauf hin, dass dies ein bedeutender Schritt nach vorn ist. Durch den Bau einer besseren „Küche“ (der Tests und der Sandbox) und die Gabe klarerer Anweisungen (des Belohnungssystems) haben sie bewiesen, dass KI lernen kann, effizienten Code zu schreiben und nicht nur korrekten Code. Dies ist ein Fundament für eine Zukunft, in der KI nicht nur Software schreibt, sondern Software schreibt, die so schnell läuft, wie ein menschlicher Experte sie entworfen hätte. Die Forscher schlagen vor, dass der nächste Schritt darin besteht, der KI noch spezifischeres Feedback darüber zu geben, war Warum eine Lösung schnell ist, was ihr helfen könnte, noch komplexere algorithmische Tricks zu entdecken.

Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?

Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.

Digest testen →