LHCb Data Center Cooling Challenge

Ein Reinforcement Learning Wettbewerb, bei dem ich ein echtes Stück CERN Hardware gewonnen habe

#Python#Machine Learning

Während des OpenLab Summer Student Programme am CERN habe ich an derLHCb Data Center Cooling Challenge teilgenommen, bei der wir die Aufgabe hatten, die Kühlung eines Digital Twins des LHCb Data Centers zu optimieren. Ziel war es, den Energieverbrauch zu senken und gleichzeitig optimale Betriebsbedingungen für die Server aufrechtzuerhalten. Wir erhielten einen Simulator des Kühlsystems des Rechenzentrums, der es uns ermöglicht, unsere Control Policies in einer realistischen Umgebung zu trainieren und zu testen.

Das Setup

Der Simulator modelliert fünf Rechenzentrums-Module. Bei jedem einminütigen Schritt liefert er pro Modul Messungen, darunter:

  • Rack Inlet, Return und Supply Temperaturen (°C)
  • IT load and Kühlleistung (kW), plus PUE.
  • Cooling mode (dry oder adiabatic), und aggregierte CPU-Auslastung.

Außerdem liefert er gemeinsame Wettermessungen: Außentemperatur, Außenluftfeuchtigkeit und Wet Bulb Temperatur.

Für jedes Modul können wir steuern:

  • Außenlüftergeschwindigkeit (%).
  • Innen-/Versorgungsventilatorgeschwindigkeit (%).
  • Wasserpumpeneinstellung (%), die im Dry Mode ausgeschaltet ist.

Ziel ist es, die gesamte IT- und Kühlleistung zu minimieren, während die Rack-Inlet-Temperaturen bei oder unter 27 °C gehalten werden; der Wasserverbrauch wird ebenfalls bestraft.

dispatch

Mein Ansatz

Ich habe eine Control Policy unter Verwendung von Model Predictive Control (MPC) entwickelt:

Wir prognostizieren die nächsten Minuten, verwenden gelernte Modelle, um mögliche Lüfter- und Wassereinstellungen zu vergleichen, und führen nur die ersten Aktionen durch, bevor wir neu planen, sobald neue Beobachtungen eintreffen. Der vorhandene Simulator liefert die realistischen Dynamiken und Einschränkungen des Systems, sodass der Controller sicher unter denselben Bedingungen entwickelt und bewertet werden kann, denen er zur Laufzeit begegnen wird.

Receding Horizon Control

MPC prognostiziert die nächsten 12 Aktionen, die basierend auf dem aktuellen Zustand des Systems durchgeführt werden sollen. Die ersten 4 Aktionen werden auf das System angewendet, und der Prozess wiederholt sich. Dies ist als receding horizon control bekannt.

mpc-receding-horizon
Jede Farbe repräsentiert eine MPC-Lösung, bei der die ersten 4 Aktionen auf das System angewendet werden (farbige durchgezogene Linien), und die nächsten 8 Aktionen sind Vorhersagen (farbige gestrichelte Linien).

Erlernen der Systemdynamik

Ich habe auch experimentiert, um dies zu verbessern, indem ich Reinforcement Learning verwendet habe, um ein besseres Modell der Systemdynamik und -einschränkungen zu erlernen, aber ich habe festgestellt, dass der vorhandene Simulator bereits ziemlich genau war und dass der MPC-Ansatz ausreichte, um eine gute Leistung zu erzielen und die Challenge zu gewinnen.

Der Preis

Ich habe die Challenge gewonnen und eine CPU erhalten, die im dritten Lauf des LHCb-Experiments am CERN in dem Rechenzentrum verwendet wurde, für das wir die Kühlung optimiert haben.

CPU
Das Projekt ist auch hier zu finden:

Kommentare

Noch Fragen?