-
Erklärung des staatlichen Interesses
-
Diese Erfindung wurde mit Unterstützung der Regierung der Vereinigten Staaten unter der Vertragsnummer DE-AC36-08GO28308 gemacht, die vom National Renewable Energy Laboratory (NREL) vergeben wurde. Die Regierung der Vereinigten Staaten hat bestimmte Rechte an dieser Erfindung.
-
Hintergrund
-
Ein System kann mehrere Sensoren enthalten, die so konfiguriert sind, dass sie einen Betriebsstatus des Systems überwachen. Die von den Sensoren gemessenen Metriken können miteinander korreliert werden. Beispielsweise kann eine erste Sensormessgröße, die von einem ersten Sensor gemessen wird, direkt mit einer zweiten Sensormessgröße, die von einem zweiten Sensor gemessen wird, in Beziehung stehen, so dass, wenn der erste Sensor eine Zunahme oder Abnahme der ersten Sensormessgröße feststellt, der zweite Sensor auch eine entsprechende Zunahme oder Abnahme der zweiten Sensormessgröße registrieren kann, oder umgekehrt.
-
Kühlmittelverteiler (Coolant Distribution Units, CDUs) sind eine solche Art von System, das mehrere korrelierte Sensoren umfasst. CDUs werden häufig an Kundenstandorten zusammen mit flüssigkeitsgekühlten Hochleistungscomputern (HPC-Clustern) eingesetzt. In der Regel werden HPC-Systeme von mehreren CDUs unterstützt, so dass bei einem Ausfall einer bestimmten CDU ein Teil des von dieser CDU unterstützten HPC-Systems abgeschaltet werden kann, während die übrigen Teile des HPC-Systems weiter funktionieren. Bei einigen HPC-Systemen kann es sich jedoch beispielsweise um isolierte Schleifen handeln, bei denen eine einzige CDU mehrere Racks unterstützt. Wenn keine redundanten CDUs vorhanden sind (die die Kunden aufgrund der zusätzlichen Kosten oft nur ungern einsetzen), werden bei einem Ausfall der CDU die Racks, deren Kühlfunktionalität von der CDU abhängt, abgeschaltet.
-
Um die Widerstandsfähigkeit einer CDU zu erhöhen, können zahlreiche Sensoren und in vielen Fällen redundante Sensoren vorgesehen werden, um eine umfassende Überwachung und Datenerfassung durch eine CDU zu ermöglichen. Die erhöhte Komplexität der CDU und ihrer Firmware, die sich aus dieser verstärkten Sensorinstrumentierung ergibt, kann jedoch zu einer erhöhten Ausfallrate für eingesetzte CDUs aufgrund von Ausfällen von Sensoren, Firmware, Steuersystemen und dergleichen führen.
-
Figurenliste
-
Die vorliegende Offenbarung wird in Übereinstimmung mit einer oder mehreren verschiedenen Ausführungsformen unter Bezugnahme auf die folgenden Figuren im Detail beschrieben. Die Figuren dienen lediglich der Veranschaulichung und stellen lediglich typische oder beispielhafte Ausführungsformen dar.
- 1 zeigt eine Beispielkonfiguration einer Kühlmittelverteilungseinheit (CDU) mit mehreren korrelierten Sensoren, die so konfiguriert sind, dass sie das Betriebsverhalten der CDU gemäß Ausführungsbeispielen der Erfindung überwachen.
- 2 zeigt ein Beispiel für eine Rechenmaschine eines multimetrischen, zeitbewussten maschinellen Lernmodells, das so konfiguriert ist, dass es anomales Verhalten einer CDU gemäß Ausführungsbeispielen der Erfindung identifiziert.
- 3 zeigt eine Reihe von ausführbaren Anweisungen, die in maschinenlesbaren Speichermedien gespeichert sind und die, wenn sie ausgeführt werden, ein illustratives Verfahren zur Verwendung eines multimetrischen, zeitbewussten maschinellen Lernmodells zur Identifizierung anomalen Verhaltens einer CDU gemäß Ausführungsbeispielen der Erfindung veranlassen.
- 4A veranschaulicht Diagramme von Beispielen tatsächlicher metrischer Sensorwerte, die im Laufe der Zeit für eine erste CDU gemessen wurden, sowie von entsprechenden rekonstruierten metrischen Werten und Rekonstruktionsfehlern gemäß Ausführungsbeispielen der Erfindung.
- 4B veranschaulicht Diagramme von Beispielen tatsächlicher metrischer Sensorwerte, die im Laufe der Zeit für eine zweite CDU in einem gleichen Cluster wie die erste CDU gemessen wurden, sowie entsprechende rekonstruierte metrische Werte und Rekonstruktionsfehler gemäß Ausführungsbeispielen der Erfindung.
- 5 ist ein Beispiel für eine Computerkomponente, die zur Implementierung verschiedener Merkmale von Ausführungsbeispielen der Erfindung verwendet werden kann.
-
Die Figuren sind nicht erschöpfend und beschränken die vorliegende Offenbarung nicht auf die genaue Form, die offengelegt wird.
-
Detaillierte Beschreibung
-
Beispielhafte Ausführungsformen der Erfindung beziehen sich unter anderem auf Systeme, Verfahren, computerlesbare Medien, Techniken und Methoden, die multimetrische Modelle der künstlichen Intelligenz (Kl)/des maschinellen Lernens (ML) zur Erkennung von anormalem Verhalten einer Maschine/eines Systems einsetzen. Genauer gesagt beziehen sich Beispielausführungen der Erfindung auf die Verwendung von multimetrischen AI/ML-Modellen zur Erkennung von anormalem Verhalten von Systemen mit mehreren Sensoren, die korrelierte Sensormetriken messen (z. B. Kühlmittelverteilungseinheiten (CDUs)), wobei die Erkennung von anormalem Verhalten in einer Weise durchgeführt wird, die eine Verringerung der Menge an Sensorinstrumenten ermöglicht, die zur Überwachung des Betriebsverhaltens des Systems erforderlich sind, und die die Widerstandsfähigkeit des Systems durch schnelle und skalierbare Anomalieerkennung verbessert.
-
Insbesondere bieten KI-fähige Systeme und entsprechende Methoden zur Erkennung anomalen Verhaltens, die hier offengelegt werden, eine technische Lösung für das technische Problem erhöhter Ausfallraten von Multisensorsystemen wie z. B. CDUs, die durch die erhöhte System- und Firmwarekomplexität verursacht werden, die sich aus der zunehmenden Sensorinstrumentierung ergibt. Diese technische Lösung wird durch den Einsatz von AI/ML-Multimetikmodellen zur hochskalierbaren, automatischen und schnellen Erkennung von Anomalien für einen einzelnen Maschinen-/Systemeinsatz und/oder für mehrere Einsätze innerhalb eines Clusters erreicht, so dass die Komplexität der Sensorinstrumentierung reduziert werden kann, was wiederum zu einer vereinfachten Firmware zur Steuerung der Instrumentierung führt. Eine geringere Komplexität der Sensorinstrumentierung kann beispielsweise durch eine Verringerung der Anzahl der Sensoren (z. B. Verringerung der Redundanz für einen oder mehrere Sensortypen) und/oder durch die Verwendung kostengünstigerer Sensoren erreicht werden. Weniger Sensoren führen auch zu einer vereinfachten, zuverlässigeren und kostengünstigeren Steuerungshardware für die Steuerung der Sensoren. Die geringere Komplexität der Sensorinstrumente und die entsprechende Verringerung der Komplexität von Software, Firmware und Hardware, die zur Steuerung des Betriebs solcher Instrumente erforderlich sind, bringen den technischen Vorteil einer geringeren Ausfallrate des Systems.
-
1 zeigt eine Beispielkonfiguration einer Kühlmittelverteilungseinheit (CDU) 100 mit mehreren Gruppen korrelierter Sensoren, die so konfiguriert sind, dass sie ein Betriebsverhalten der CDU 100 überwachen. Die CDU 100 kann zum Beispiel eine Kühlfunktion für flüssigkeitsgekühlte Server in einer Einsatzumgebung bereitstellen. Die CDU 100 umfasst verschiedene Arten von Komponenten, darunter, ohne Einschränkung, mechanische Komponenten, elektrische Komponenten, Mess- und Steuerkomponenten, Komponenten zur Regulierung des Flüssigkeitsdurchflusses und Wärmeaustauschkomponenten. Die Hauptfunktionen der CDU 100 sind 1) die Isolierung der Kühlflüssigkeit, die den IT-Racks (z. B. Servern) zugeführt wird, vom Wasser in der Einrichtung, in der die Server aufgestellt werden (das in der Regel schmutzig ist), und 2) die Übertragung der Wärme von den IT-Racks an die Kühlanlage der Einrichtung.
-
Die Komponenten zur Regulierung des Flüssigkeitsstroms der CDU 100 umfassen beispielsweise Pumpen (z. B. Pumpe 122), Antriebe mit variabler Frequenz (nicht dargestellt), Ventile (z. B. Ventil 108, Ventil 110) usw. Diese Komponenten zur Regulierung des Flüssigkeitsstroms zirkulieren sowohl ein Kühlmittel als auch Betriebswasser durch einen Wärmetauscher 102 der CDU 100 in entsprechenden isolierten Kreisläufen. Der Wärmetauscher 102 kann Wärme aus dem Kühlmittelkreislauf der IT an das Betriebswasser übertragen, damit das Kühlmittel die erforderliche Kühlfunktion für die IT-Racks bereitstellen kann. Zu den Sensorkomponenten gehören beispielsweise Temperatursensoren, Durchflussmesser, Drucksensoren (und Druckverlustsensoren) und so weiter.
-
Die auf der linken Seite des Wärmetauschers 102 abgebildeten Komponenten der CDU 100 entsprechen einer primären Seite (der Anlage), während die auf der rechten Seite des Wärmetauschers 102 abgebildeten Komponenten der CDU 100 einer sekundären Seite (Server oder Informationstechnologie (IT)) entsprechen. Die Primärseite umfasst den primären Flüssigkeitsstrom 104 des „schmutzigen“ Wassers der Einsatzeinrichtung sowie verschiedene Komponenten zur Erfassung von Flüssigkeitsparametern (z. B. Temperatur, Druck usw.), zur Regelung des Flüssigkeitsstroms (z. B. Ventile), zur Filterung von Verunreinigungen aus dem primären Flüssigkeitsstrom 104 vor der Einleitung in den Wärmetauscher 102 usw. Beispielsweise regelt das Steuerventil 110 den Flüssigkeitsstrom durch den Wärmetauscher 102. Außerdem ermöglicht das Ventil 108, das in der Regel geschlossen ist, der CDU 100 einen Bypass zum Wärmetauscher 102. In ähnlicher Weise umfasst die sekundäre Seite den sekundären Flüssigkeitsstrom 106 durch die IT-Racks sowie Komponenten zur Erfassung von Flüssigkeitsparametern, Komponenten zur Regulierung des Flüssigkeitsstroms (z. B. Pumpe 122) und so weiter.
-
Vom thermischen Standpunkt aus betrachtet, gehören zu den primären Sensormesswerten, die in Bezug auf den Betrieb der CDU 100 gemessen werden, Kühlmitteltemperatur, Durchflussmenge, Druck und Druckabfall. Darüber hinaus werden elektrische Messgrößen wie Strom und Spannung sowie Steuerungsvariablen wie Signale an und von Frequenzumrichtern gemessen. In der Regel spielt die Instrumentierung eine entscheidende Rolle bei der Gewährleistung eines reibungslosen und zuverlässigen Betriebs einer CDU. Daher werden erhebliche Investitionen in die Instrumentierung und die zugehörige Firmware einer CDU getätigt. Außerdem wird in der Regel eine redundante Instrumentierung eingesetzt. So können beispielsweise mehrere Temperatursensoren (z. B. Thermoelemente) verwendet werden, um die Temperatur des Kühlwassers vor (in 1 nicht dargestellt) und nach dem Betrieb der Pumpe 122 sowie vor und nach dem Wärmetauscher 102 (in 1 nicht dargestellt) zu messen. So können beispielsweise mehrere redundante Thermoelemente T2A 124A, T2B 124B und T2C 124C vorgesehen werden, die jeweils die Temperatur des Kühlmittels nach der Pumpe 122 (d. h. die Temperatur des an die IT-Racks gelieferten Kühlmittels) messen. Die einzelnen Temperaturmesswerte der redundanten Temperatursensoren 124A, 124B, 124C können aggregiert (z. B. gemittelt) werden, oder es kann eine andere statistische Größe (z. B. der Median) aus den mehreren Messwerten abgeleitet werden, um einen zusammengesetzten/abgeleiteten Temperaturmesswert zu erhalten. Es können auch andere Arten von Sensoren redundant vorhanden sein. So können beispielsweise mehrere Drucksensoren PS1A 120A und PS1B 120B auf der Sekundärseite vorgesehen sein.
-
Unter Bezugnahme auf die in 1 dargestellte zusätzliche Instrumentierung kann die Primärseite außerdem verschiedene Temperatur- und Drucksensoren enthalten, wie z. B. ein Thermoelement 112 und einen Drucksensor 114, der vor dem Filter 116 angeordnet ist, sowie einen Drucksensor 118, der nach dem Filter 116 angeordnet ist. Die vom Thermoelement 112 abgelesene Temperatur kann zur Überwachung des Betriebszustands von Pumpen, Kühltürmen o.ä. auf der Primärseite verwendet werden. Wenn die vom Thermoelement 112 gemessene Temperatur T1 zu hoch ist, wird es schwierig, eine Zieltemperatur für das Kühlmittel auf der Sekundärseite aufrechtzuerhalten, was letztlich zur Abschaltung oder zum Ausfall der IT-Racks führen kann, wenn die Temperatur auf der Sekundärseite zu hoch wird. Die Kombination aus dem Drucksensor 118 und dem Drucksensor 114 wird zur Messung des Druckabfalls über den Filter 116 eingesetzt. Wenn der Druckabfall einen bestimmten Schwellenwert überschreitet, kann eine Wartung des Filters 116 geplant werden.
-
Zusätzlich zu dem redundanten Drucksensor 120 und dem redundanten Thermoelement 124 kann die Sekundärseite auch einen Drucksensor 126 zur Messung des Drucks des Kühlmittels nach der Pumpe 122, ein Y-Sieb 128, das so konfiguriert ist, dass unerwünschte Feststoffe mechanisch aus dem Kühlmittel mittels eines perforierten oder drahtgeflechtartigen Siebelements entfernt werden, ein Thermoelement 130, das die Temperatur des aus den IT-Racks austretenden Kühlmittels misst, usw. umfassen. Es ist zu beachten, dass die verschiedenen in 1 dargestellten Komponenten als Teil der CDU 100 (ob auf der Primär- oder der Sekundärseite) nicht vollständig sind und dass die CDU 100 über die dargestellten Komponenten hinaus zusätzliche mechanische Komponenten, elektrische Komponenten, Mess- und Steuerkomponenten, Komponenten zur Regulierung des Flüssigkeitsstroms und/oder Komponenten zum Wärmeaustausch enthalten kann.
-
Wenn wir nun näher auf den Betrieb der CDU 100 eingehen, kann die CDU 100 im Allgemeinen versuchen, eine Zieltemperatur auf der Sekundärseite aufrechtzuerhalten. Beispielsweise kann die CDU 100 versuchen, einen durchschnittlichen Temperaturmesswert der einzelnen Temperaturmesswerte der Thermoelemente T2A, T2B und T2C aufrechtzuerhalten, der innerhalb eines bestimmten gewünschten Bereichs liegt. In Ausführungsbeispielen kann das Ventil 110 den Wasserdurchfluss durch den Wärmetauscher 102 regeln, um eine gewünschte Zieltemperatur für das den IT-Racks zugeführte Kühlmittel aufrechtzuerhalten, die beispielsweise auf der Grundlage des Messwerts des Thermoelements 124 ermittelt wird. Wenn beispielsweise die vom Thermoelement 130 gemessene Temperatur ansteigt - was z. B. auf eine höhere Belastung der von der CDU 100 versorgten IT-Racks hinweist - könnte dies letztlich dazu führen, dass die von den Thermoelementen 124A, 124B, 124C nach der Pumpe 122 gemessene Kühlmitteltemperatur außerhalb des gewünschten Bereichs ansteigt. Um dem entgegenzuwirken, kann das Ventil 110 so gesteuert werden, dass mehr Flüssigkeit in den Wärmetauscher 102 strömt, um die Wärmeübertragung vom Kühlmittel zu erhöhen, wodurch die Kühlmitteltemperatur gesenkt und sichergestellt wird, dass die von den Thermoelementen 124A, 124B, 124C gemessene Temperatur innerhalb des gewünschten Bereichs liegt. Wenn umgekehrt die vom Thermoelement 130 gemessene Kühlmitteltemperatur sinkt - was z. B. auf eine geringere Belastung der IT-Racks hinweist -, kann das Ventil 110 so gesteuert werden, dass der Flüssigkeitsstrom zum Wärmetauscher 102 verringert wird, um die Kühlmitteltemperatur ansteigen zu lassen.
-
Die CDU 100 umfasst, wie jedes Teilsystem eines Rechenzentrums, Gruppen von Sensoren, die eng miteinander korreliert sind. Anders ausgedrückt: Ein von einem bestimmten Sensor gemessener Parameter (Sensormesswert) kann mit dem/den von einem oder mehreren anderen Sensortypen gemessenen Sensormesswert(en) korreliert sein, so dass ein von einem bestimmten Sensor erfasstes Ereignis von anderen Sensoren in der korrelierten Sensorgruppe in unterschiedlichem Umfang aufgegriffen werden kann. So steht beispielsweise die Pumpendrehzahl der Pumpe 122 in direktem Zusammenhang mit der Pumpendurchflussrate, dem Stromverbrauch, dem Druckanstieg über die Pumpe 122 und dem absoluten Druck am Auslass der Pumpe 122. Wenn die von der Pumpe 122 gemeldete Pumpendrehzahl ansteigt, sollten auch andere korrelierte Sensoren einen Anstieg registrieren. Wenn ein bestimmter Sensor in der Gruppe der korrelierten Sensoren keinen Anstieg registriert, könnte dies auf eine Fehlfunktion dieses bestimmten Sensors hindeuten, da die Wahrscheinlichkeit gering ist, dass der einzelne Sensor ordnungsgemäß funktioniert, während alle anderen Sensoren nicht funktionieren.
-
Erhöht sich beispielsweise die von der Pumpe 122 gemeldete Pumpendrehzahl und der vom Drucksensor 120 gemeldete stromaufwärts gelegene Druck, ohne dass ein entsprechender Anstieg des vom Drucksensor 126 gemeldeten Drucks zu beobachten ist, könnte es sein, dass entweder der Pumpendrehzahlsensor für die Pumpe 122 oder der Drucksensor 126 nicht ordnungsgemäß funktioniert. Diese Feststellung kann getroffen werden, weil bekannt ist, dass die Pumpendrehzahl der Pumpe 122 mit den Drücken sowohl stromaufwärts als auch stromabwärts der Pumpe 122 korreliert ist. In diesem Beispielszenario können zusätzliche korrelierte Sensormetriken ausgewertet werden, um festzustellen, welcher Sensor sich anormal verhält. So kann beispielsweise der Stromverbrauch der Pumpe 122 (der bekanntermaßen mit der Pumpendrehzahl korreliert ist) ausgewertet werden. Wird kein Anstieg der Leistungsaufnahme der Pumpe 122 beobachtet, steigt die Wahrscheinlichkeit, dass die für die Pumpe 122 gemeldete Pumpendrehzahl nicht korrekt ist. Zeigt die Leistungsaufnahme der Pumpe 122 hingegen einen Anstieg, deutet dies eher auf eine Anomalie im Zusammenhang mit dem vom Drucksensor 126 gemeldeten Druck hin.
-
CDUs wie die CDU 100 werden eingesetzt, um wesentlich teurere IT-Racks zu bedienen. Die Kunden zögern jedoch in der Regel, CDUs aus Gründen der Kosteneinsparung redundant einzusetzen. Diese Zurückhaltung birgt das Risiko, dass der Ausfall von relativ preiswerten Geräten (einer CDU) zum Ausfall von wesentlich teureren Geräten (IT-Racks) führt. Um dieses Risiko zu kompensieren, haben die Hersteller von CDUs die Anzahl der Instrumente in den CDUs erhöht, sowohl durch die Erhöhung der Redundanz der Instrumente (z. B. redundante Thermoelemente, redundante Drucksensoren usw.) als auch durch die Verwendung hochwertigerer oder teurerer Instrumente. Eine hochwertige und teure Instrumentierung kann zwar die Zuverlässigkeit der CDU verbessern, erhöht aber auch die Rechenanforderungen an den Controller, der die Signale von den Sensoren empfängt und verarbeitet, sowie die Speicher-/Abrufanforderungen an die Speichermedien (z. B. nichtflüchtiger Speicher wie Festwertspeicher (ROM), elektrisch programmierbarer Festwertspeicher (EPROM), Flash-Speicher usw.), in denen die Firmware der CDU gespeichert ist. Je größer der Grad der Instrumentierung, desto komplexer muss die Firmware sein. Darüber hinaus muss die Firmware für eingesetzte CDUs regelmäßig überprüft und aktualisiert werden, was zusätzliche Kosten verursacht.
-
Beispielhafte Ausführungsformen der Erfindung bieten eine technische Lösung für das technische Problem, das mit konventionellen CDU-Einsätzen verbunden ist, nämlich die erhöhten Ausfallraten aufgrund der zunehmenden Instrumentierung und der daraus resultierenden höheren Komplexität der Firmware. Diese technische Lösung wird durch die Verwendung von AI/ML-Multimetikmodellen zur hoch skalierbaren, automatischen und schnellen Erkennung von Anomalien für eine einzelne Maschine/ein einzelnes System und/oder für mehrere Einsätze innerhalb eines Clusters erreicht, so dass die Komplexität der Sensorinstrumentierung reduziert werden kann, was wiederum zu einer vereinfachten Firmware und Hardware führt, einschließlich einer kostengünstigeren und zuverlässigeren Lösung. Die geringere Komplexität der Sensorinstrumente und die entsprechend geringere Komplexität der Software/Firmware zur Steuerung des Betriebs dieser Instrumente hat den technischen Vorteil, dass die Ausfallrate des Systems sinkt.
-
Die Verwendung von multimetrischen AI/ML-Modellen zur Erreichung der oben beschriebenen technischen Lösung wird nun näher beschrieben. Während die hier offengelegten Ausführungsbeispiele in erster Linie in Bezug auf eine CDU zur Bereitstellung einer Flüssigkeitskühlungsfunktion für IT-Racks beschrieben werden, sollte man sich darüber im Klaren sein, dass die Ausführungsformen der Erfindung auf jede Maschine/jedes System/jedes Teilsystem mit korrelierten Gruppen von Sensoren angewendet werden können, um die Erkennung von Anomalien in einer Weise durchzuführen, die eine Reduzierung der Sensorausstattung und eine entsprechende Reduzierung der Komplexität von Software, Firmware, Verarbeitungshardware oder Ähnlichem ermöglicht, die zur Steuerung der Sensorausstattung erforderlich ist.
-
2 zeigt ein Beispiel für eine Rechenmaschine eines multimetrischen, zeitbewussten maschinellen Lernmodells 200, das so konfiguriert ist, dass es anomales Verhalten einer CDU gemäß Ausführungsbeispielen der Erfindung identifiziert. 3 zeigt eine Computerkomponente 300, die einen oder mehrere Hardwareprozessoren 302 und maschinenlesbare Speichermedien 304 enthält, die einen Satz von maschinenlesbaren/maschinenausführbaren Befehlen speichern, die, wenn sie ausgeführt werden, die Hardwareprozessoren 302 veranlassen, ein Verfahren zur Verwendung eines multimetrischen, zeitbewussten maschinellen Lernmodells durchzuführen, um anomales Verhalten einer CDU (z.B. CDU 100) gemäß Ausführungsbeispielen der Erfindung zu identifizieren. 2 und 3 werden im Folgenden in Verbindung miteinander beschrieben.
-
In Ausführungsbeispielen kann das in 3 dargestellte maschinenlesbare Speichermedium 304 den Hauptspeicher 506, den Festwertspeicher (ROM) 508, den Speicher 510 oder jedes andere hierin beschriebene geeignete maschinenlesbare Speichermedium umfassen. Die in 3 dargestellten Anweisungen, die auf den maschinenlesbaren Speichermedien 304 gespeichert sind, können in eine oder mehrere Recheneinheiten modularisiert werden, wie sie in 2 dargestellt sind. Insbesondere kann jede derartige Rechenmaschine eine entsprechende Teilmenge der in 3 dargestellten maschinenlesbaren und maschinenausführbaren Befehle enthalten, so dass die Befehle, wenn sie von den Hardware-Prozessoren 302 ausgeführt werden, die Hardware-Prozessoren 302 veranlassen, entsprechende Aufgaben/Verarbeitungen durchzuführen. In Ausführungsbeispielen kann der Satz von Aufgaben, der als Reaktion auf die Ausführung des Satzes von Befehlen, die Teil einer bestimmten Rechenmaschine sind, ausgeführt wird, ein Satz spezialisierter/angepasster Aufgaben sein, um eine bestimmte Art/Umfang der Verarbeitung zu bewirken.
-
In Ausführungsbeispielen kann die in 3 dargestellte Computerkomponente 300 beispielsweise das in 5 dargestellte Computersystem 500 oder ein anderes hierin beschriebenes Computergerät sein. In einigen Ausführungsbeispielen kann die Computerkomponente 300 ein Desktop-Computer, ein Laptop-Computer, ein Tablet-Computer/Gerät, ein Smartphone, ein persönlicher digitaler Assistent (PDA), ein tragbares Computergerät oder Ähnliches sein. In anderen Ausführungsbeispielen kann die Computerkomponente 300 ein Server, ein Server-Cluster oder Ähnliches sein. In weiteren Ausführungsbeispielen kann die Rechnerkomponente 300 eine kundenspezifische Rechnervorrichtung 212 (2) sein, einschließlich, aber nicht beschränkt auf ein Field Programmable Gate Array (FPGA), eine anwendungsspezifische integrierte Schaltung (ASIC), eine programmierbare logische Steuerung (PLC), ein programmierbares logisches Array (PLA) oder ähnliches. In anderen Ausführungsbeispielen kann die Rechnerkomponente 300 die CDU 100 selbst sein.
-
Die Hardware-Prozessoren 302 können beispielsweise den/die in 5 dargestellten Prozessor(en) 504 umfassen. Insbesondere können die Hardware-Prozessoren 302 jede geeignete Art von Verarbeitungseinheit umfassen, einschließlich, aber nicht beschränkt auf eine Zentraleinheit (CPU), einen Mikroprozessor, einen RISC-Mikroprozessor (Reduced Instruction Set Computer), einen CISC-Mikroprozessor (Complex Instruction Set Computer), einen Mikrocontroller, einen System-on-a-Chip (SoC), einen digitalen Signalprozessor (DSP), einen ASIC, einen FPGA, einen PLC, einen PLA und so weiter. In einigen Ausführungsbeispielen kann ein einziges integriertes Gerät die Rechnerkomponente 300, die Hardware-Prozessoren 302 und die maschinenlesbaren Speichermedien 304 bilden. Beispielsweise kann ein ASIC, FPGA, ein SOC oder Ähnliches die Rechenkomponente 300 sein, die auch die Hardwareprozessoren 302 zur Ausführung von Logik enthält, die fest in das Gerät verdrahtet ist, und/oder von Anweisungen, die auf den Speichermedien 304 gespeichert sind.
-
In Ausführungsbeispielen sind die Hardware-Prozessoren 302 (oder jede andere hier beschriebene Verarbeitungseinheit) so konfiguriert, dass sie die verschiedenen in 2 dargestellten Recheneinheiten ausführen, die wiederum so konfiguriert sind, dass sie die entsprechende Funktionalität in Verbindung mit der KI/ML-gestützten Erkennung anomalen Verhaltens für ein System wie die CDU 100 bereitstellen. Insbesondere können die Hardware-Prozessoren 302 so konfiguriert sein, dass sie eine Kodierungs-Engine 202, eine Transformations-Engine 204, eine Dekodierungs-Engine 206 und eine Rekonstruktionsfehler-Bestimmungs-Engine 208 ausführen. In Ausführungsbeispielen können diese Maschinen einen Teil des multimetrischen, zeitbewussten maschinellen Lernmodells 200 (im Folgenden als ML-Modell 200 bezeichnet) bilden. Das ML-Modell 200 kann jede(n) geeignete(n) Art von KI/ML-Modell/Algorithmus verwenden, einschließlich, aber nicht beschränkt auf regressionsbasierte Modelle (z. B. Entscheidungsbäume, Zufallswälder, künstliche neuronale Netze usw.); klassifikationsbasierte Modelle (z. B. Support-Vektor-Maschinen, Bayes'sche Inferenz usw.); unüberwachte Lernmodelle wie clusterbasierte Modelle (z. B. k-means-Clustering) usw.
-
Obwohl das ML-Modell 200 als auf dem kundenspezifischen Computergerät 200 implementiert dargestellt ist, kann das ML-Modell 200 und seine Komponenten in einer beliebigen Kombination aus Hardware, Software und/oder Firmware implementiert werden. In einigen Ausführungsbeispielen können eine oder mehrere dieser Maschinen zumindest teilweise als Software- und/oder Firmware-Module implementiert werden, die die in den maschinenlesbaren Speichermedien 304 gespeicherten und von den Hardware-Prozessoren 302 ausführbaren computer- bzw. maschinenausführbaren Anweisungen enthalten. Es sollte gewürdigt werden, dass jede hierin enthaltene Beschreibung einer Maschine, die eine Funktion ausführt, inhärent die Funktion umfasst, die als Reaktion auf computerausführbare/maschinenausführbare Anweisungen der Maschine ausgeführt wird, die von einem Prozessor ausgeführt werden.
-
Während das ML-Modell 200 und die zugehörigen Recheneinheiten in 2 als von der Firmware 214 der CDU 100 getrennt dargestellt sind, kann das ML-Modell 200 in einigen Ausführungsbeispielen tatsächlich in die Firmware 214 eingebettet sein. Genauer gesagt, kann das ML-Modell 200 in einigen Ausführungsbeispielen in die bestehende Firmware 214 der CDU 100 integriert werden. Unabhängig davon, ob das ML-Modell 200 unabhängig von der CDU-Firmware 214 oder in diese integriert ist, ermöglichen die vom ML-Modell 200 bereitgestellten Kl-Fähigkeiten eine Verringerung der Komplexität der Sensorinstrumentierung für die CDU 100 und infolgedessen auch eine Verringerung der Komplexität der Firmware 214. Wie bereits erwähnt, führt dies wiederum zu dem technischen Vorteil einer geringeren Ausfallrate der CDU 100.
-
Bezugnehmend auf
3 in Verbindung mit
2 können in Block 306 maschinenausführbare Anweisungen des ML-Modells 200 von den Hardware-Prozessoren 302 ausgeführt werden, um den Empfang eines Eingangsvektors Xzu veranlassen. Der Eingabevektor X kann die folgende Form annehmen:
Das heißt, der Eingangsvektor X kann Werte enthalten, die für N Sensormetriken zu verschiedenen Zeitpunkten im Verlauf eines Zeitfensters der Dauer T erfasst wurden. Wie bereits erwähnt, können die N Sensormetriken eine oder mehrere Gruppen korrelierter Sensormetriken enthalten, die ein ähnliches Verhalten als Reaktion auf Änderungen der erfassten Merkmale aufweisen.
-
In Ausführungsbeispielen ist das ML-Modell 200 in der Lage, einzelne oder mehrere metrische Punkt-, kontextuelle und/oder kollektive Anomalien im Zusammenhang mit dem Betrieb der CDU 100 zu identifizieren. Einige herkömmliche Ansätze zur Erkennung von Anomalien gehen von einer konkreten Wahrscheinlichkeitsverteilung metrischer Werte aus, wie z. B. einer multivariaten Gauß-Verteilung. Wenn bei solchen Verteilungen die Werte der Metrik unter einen bestimmten Schwellenwert fallen, der sich aus den Parametern der Verteilung ergibt, dann werden die Werte als anomal eingestuft. Im Falle von CDUs sind solche Annahmen jedoch möglicherweise nicht gerechtfertigt. Insbesondere aufgrund der Art der physikalischen Prozesse innerhalb der CDU 100, die die Sensormesswerte darstellen, ist die Annahme, dass die Messwerte einer Gauß-Verteilung folgen, möglicherweise nicht korrekt. Zum Beispiel ist die Pumpendrehzahl eine kategorische Metrik, die Werte aus einer diskreten Menge von Werten annimmt und daher möglicherweise nicht angemessen durch eine Gauß-Verteilung charakterisiert wird. In Beispielen kann das ML-Modell 200 ein beliebiges geeignetes maschinelles Lernmodell/ein beliebiger Algorithmus sein (z. B. ein auf einem neuronalen Netz basierender Ansatz wie Autocoder), der so konfiguriert ist, dass er das erwartete Verhalten gemeinsamer Metriken lernt.
-
Weiterhin Bezug nehmend auf 3 in Verbindung mit 2 können in Block 308 maschinenausführbare Befehle der Kodiermaschine 202 von den Hardwareprozessoren 302 ausgeführt werden, um zu bewirken, dass der Eingangsvektor X kodiert wird, um eine niederdimensionale Darstellung C des Eingangsvektors X zu erhalten. Insbesondere kann eine Dimensionalität/Magnitude der niederdimensionalen Darstellung C (gegeben durch |C|) geringer sein als eine Dimensionalität/Magnitude des Eingangsvektors X (gegeben durch |X|), das heißt, |C| < |X|. Die Kodierung des Eingangsvektors X, um die kodierte niederdimensionale Darstellung C zu erhalten, kann einen Verlust von zumindest einigen der Informationen (z.B. metrische Sensorwerte) in dem Eingangsvektor X beinhalten. In Ausführungsbeispielen können auch in Block 308 maschinenausführbare Anweisungen der Transformationsmaschine 204 von den Hardwareprozessoren 302 ausgeführt werden, um eine Reihe von einer oder mehreren nichtlinearen Transformationen zu veranlassen, die an dem Eingangsvektor X als Teil des Kodierungsprozesses durchgeführt werden.
-
Darüber hinaus können in einigen Ausführungsbeispielen Werte, die einer oder mehreren Sensormetriken entsprechen, vor der Durchführung der Kodierung aus dem Eingangsvektor X verworfen werden. Dieses Verwerfen von Werten kann möglich sein, weil das ML-Modell 200 die Erkennung anomalen Verhaltens und ein hohes Maß an Belastbarkeit trotz des Einsatzes einer geringeren Anzahl von Sensoren ermöglicht. So können metrische Sensorwerte, die einem oder mehreren Sensoren entsprechen, aus dem Eingangsvektor X verworfen werden, während die Fähigkeit, die gewünschte Erkennung anomalen Verhaltens durchzuführen, erhalten bleibt. In einigen Ausführungsbeispielen kann das Verwerfen von Sensormesswerten daraus resultieren, dass der oder die entsprechenden Sensoren nicht mehr eingesetzt werden (z. B. die Beseitigung von Redundanz für einen oder mehrere Sensoren). In anderen Beispielen können metrische Sensorwerte für einen bestimmten Sensor, der nicht mehr eingesetzt wird, einfach im Eingangsvektor X fehlen. Es ist zu beachten, dass das Verwerfen von metrischen Sensorwerten (oder das Fehlen solcher Werte) sich von dem Informationsverlust unterscheidet, der als Ergebnis der Codierung des Eingangsvektors X auftreten kann.
-
In Block 310 können maschinenausführbare Befehle der Dekodiermaschine 206 von den Hardware-Prozessoren 302 ausgeführt werden, um den Eingangsvektor X zu rekonstruieren, um einen rekonstruierten Eingangsvektor XR zu erhalten. Die Rekonstruktion des Eingangsvektors X kann die Dekodierung der kodierten niederdimensionalen Darstellung C umfassen. Insbesondere kann der rekonstruierte Eingangsvektor XR gegeben sein durch: XR = decode(encode (X)). In Ausführungsbeispielen kann das ML-Modell 200 auf einem Datensatz trainiert werden, der wenige oder keine anomalen Datenpunkte enthält, und so kann das ML-Modell 200 lernen, metrische Werte zu rekonstruieren, die mit dem normalen Betriebsverhalten der CDU 100 verbunden sind, aber es kann nicht in der Lage sein, Werte für einen Datensatz mit einer großen Menge anomaler Daten richtig zu rekonstruieren. Aufgrund der Art des für das ML-Modell 200 durchgeführten Trainings sowie der geringeren Dimensionalität der kodierten Darstellung C in Bezug auf den Eingangsvektor X und des entsprechenden Informationsverlusts bei der Erzeugung der kodierten Darstellung kann das Ausmaß, in dem der rekonstruierte Eingangsvektor XR vom ursprünglichen Eingangsvektor X abweicht, direkt mit der Menge der anomalen Daten im Eingangsvektor X zusammenhängen.
-
In Block 312 können maschinenausführbare Befehle der Rekonstruktionsfehler-Bestimmungsmaschine 208 von den Hardware-Prozessoren 302 ausgeführt werden, um einen Rekonstruktionsfehler (E) zwischen dem Eingangsvektor X und dem rekonstruierten Eingangsvektor XR zu bestimmen. In einigen Ausführungsbeispielen kann der Rekonstruktionsfehler E ein Fehlervektor sein, der durch E = XR - X gegeben ist. Allgemeiner ausgedrückt, kann der Rekonstruktionsfehler E eine beliebige Größe sein, die das Ausmaß darstellt, in dem der rekonstruierte Eingangsvektor XR vom ursprünglichen Eingangsvektor X abweicht. Wie bereits erwähnt, ist die Abweichung zwischen dem rekonstruierten Eingangsvektor XR und dem ursprünglichen Eingangsvektor X umso größer, je mehr anomale Daten im Eingangsvektor X enthalten sind.
-
In Block 314 können maschinenausführbare Befehle der Transformations-Engine 204 von den Hardware-Prozessoren 302 ausgeführt werden, um eine oder mehrere Transformationen zu veranlassen, die an dem Rekonstruktionsfehler E durchgeführt werden, um einen transformierten Rekonstruktionsfehler ET zu erhalten. In Ausführungsbeispielen kann die Transformations-Engine 204 den Rekonstruktionsfehlervektor E einer oder mehreren Aufhellungstransformationen unterziehen, um den transformierten Rekonstruktionsfehlervektor ET zu erhalten. In einigen Ausführungsbeispielen können die Aufhellungstransformation(en) bewirken, dass Elemente des Rekonstruktionsfehlervektors E, die zwei oder mehr Sensormetriken entsprechen, im transformierten Rekonstruktionsfehlervektor ET unkorreliert werden. Darüber hinaus können die Aufhellungstransformation(en) dazu führen, dass Elemente des transformierten Rekonstruktionsfehlervektors ET die gleiche Varianz aufweisen.
-
In Block 316 können maschinenausführbare Befehle der Anomalieerkennungsmaschine 210 von den Hardwareprozessoren 302 ausgeführt werden, um zu bewirken, dass eine Anomaliewertung aus dem transformierten Rekonstruktionsfehlervektor ET bestimmt wird. In Beispielausführungen kann die Anomaliewertung für den anfänglichen Eingangsvektor X als die Größe des transformierten Rekonstruktionsfehlervektors ET bestimmt werden. In anderen Beispielausführungen kann die Anomaliewertung eine beliebige lineare Kombination der Elemente des transformierten Rekonstruktionsfehlervektors ET sein.
-
In Block 318 können maschinenausführbare Anweisungen der Anomalieerkennungsmaschine 210 von den Hardwareprozessoren 302 ausgeführt werden, um zu veranlassen, dass die in Block 316 erzeugte Anomaliebewertung mit einem Schwellenwert für die Anomaliebewertung verglichen wird, um festzustellen, ob eine Anomalie vorliegt. In Ausführungsbeispielen kann eine Anomalie mehreren Sensormetriken entsprechen, die Werte aufweisen, die auf ein anomales Verhalten hinweisen. Aufgrund der Korrelation zwischen mehreren Sensormetriken kann jedoch, auch wenn die Werte mehrerer Sensormetriken auf ein anormales Verhalten hindeuten, eine geringere Anzahl von Sensoren/Komponenten der CDU 100 tatsächlich anormal arbeiten als die Anzahl der Sensoren, die die anormalen Werte erzeugt haben. In Ausführungsbeispielen kann der Schwellenwert für Anomalien aus einer Verteilung der Werte für Anomalien mit mehreren Metriken bestimmt werden, die aus dem zum Trainieren des ML-Modells 200 verwendeten Trainingsdatensatz erzeugt wurden. In einigen Ausführungsbeispielen kann die Verteilung der multimetrischen Werte, die zur Bestimmung des Schwellenwert-Anomalie-Scores verwendet wird, eine Chi-Quadrat-Verteilung sein. Der Schwellenwert für Anomalien kann beispielsweise ein Wert sein, der so ausgewählt wird, dass ein gewünschter Prozentsatz der Werte in der Verteilung der multimetrischen Anomalienwerte unter den ausgewählten Wert fällt.
-
In Ausführungsbeispielen kann die relative Anzahl der korrelierten Sensoren, die anomale Werte registrieren, anzeigen, ob es wahrscheinlicher ist, dass eine CDU (z. B. eine durchflussregulierende Komponente der CDU) ein anomales Verhalten zeigt oder ein Sensor das anomale Verhalten aufweist. In bestimmten Ausführungsbeispielen kann es, wenn mindestens eine Mindestanzahl einer Gruppe korrelierter Sensoren Werte registriert, die die Schwellenwerte für Anomalien überschreiten, wahrscheinlicher sein, dass das System (z. B. eine oder mehrere Komponenten des Systems versagen oder anderweitig nicht ordnungsgemäß funktionieren) ein anomales Verhalten zeigt, als die Sensoren. Selbst in Beispielszenarien, in denen eine Mindestanzahl korrelierter Sensoren anomale Werte registriert, können sich ein oder mehrere Sensoren in der Gruppe korrelierter Sensoren zum selben Zeitpunkt anomal verhalten (z. B. fehlerhaft funktionieren). Wenn beispielsweise in einer Gruppe von fünf korrelierten Sensoren vier der Sensoren Werte registrieren, die die jeweiligen Schwellenwerte überschreiten, ein Sensor jedoch nicht, kann dies darauf hindeuten, 1) dass ein Fehlerereignis auf Systemebene von den vier Sensoren mit anomalen Werten registriert wird und 2) dass der fünfte Sensor ebenfalls ein Fehlerereignis erlebt, weil er sich anomal verhält, indem er das Ereignis auf Systemebene nicht registriert.
-
In einigen Ausführungsbeispielen kann festgestellt werden, dass ein Sensor in einer Gruppe korrelierter Sensoren ein anormales Verhalten zeigt, wenn 1) er einen Wert für eine Sensormessung registriert, der einen Schwellenwert überschreitet (oder der anderweitig außerhalb eines erwarteten Bereichs für den gemessenen Wert liegt) und 2) mindestens eine Mindestanzahl anderer Sensoren in der Gruppe korrelierter Sensoren die jeweiligen Schwellenwerte nicht überschreitet. Insbesondere die Tatsache, dass andere Sensoren in der Gruppe der korrelierten Sensoren kein anormales Ereignis registrieren, deutet auf eine größere Wahrscheinlichkeit hin, dass der Sensor, der einen anormalen Wert registriert, sich selbst anormal verhält. Wenn z. B. der erste Sensor in einer Gruppe von fünf korrelierten Sensoren einen anormalen Wert aufweist, drei andere Sensoren in der Gruppe jedoch nicht, dann ist die Wahrscheinlichkeit größer, dass der erste Sensor ein anormales Verhalten zeigt.
-
In Beispielen kann eine Warnung erzeugt werden, um einen Bediener über das festgestellte anomale Verhalten zu informieren. Die Warnmeldung kann beispielsweise darauf hinweisen, dass ein Fehler auf Systemebene vorliegt, wenn mindestens eine Mindestanzahl korrelierter Sensoren entsprechende Werte registriert, die die jeweiligen Schwellenwerte überschreiten. Die Warnmeldung kann außerdem eine oder mehrere potenzielle Ursachen auf Systemebene für das beobachtete Verhalten identifizieren (z. B. eine Fehlfunktion der Durchflussregelungskomponente). In anderen Ausführungsbeispielen, z. B. solchen, in denen ein Sensor mit größerer Wahrscheinlichkeit ein anormales Verhalten zeigt, kann die Warnmeldung einen Hinweis auf den potenziell fehlerhaften Sensor enthalten. Auf der Grundlage der Warnmeldung kann ein Bediener den Sensor überprüfen, und die vom Sensor gemessenen Werte können möglicherweise verworfen werden, wenn festgestellt wird, dass der Sensor nicht ordnungsgemäß funktioniert. Der Sensor kann wieder in Betrieb genommen werden, sobald er repariert oder ersetzt wurde.
-
In einigen Ausführungsbeispielen kann ein Schwellenwert, mit dem ein metrischer Sensorwert verglichen wird, um festzustellen, ob der gemessene metrische Wert den Schwellenwert überschreitet und somit eine Anomalie registriert, ein dynamischer Wert sein, der sich auf der Grundlage eines oder mehrerer anderer Parameter ändern kann. Insbesondere kann ein Schwellenwert auf der Grundlage von Trainingsdaten festgelegt werden, die einem multivariaten AI/ML-Modell zur Verfügung gestellt werden, und kann sich auf der Grundlage von Änderungen eines oder mehrerer Betriebsparameter ändern, die sich in den Trainingsdaten widerspiegeln. Wenn beispielsweise die Außentemperatur schwankt, kann sich auch der Schwellenwert ändern, mit dem die Kühlmitteltemperatur verglichen wird, um eine Anomalie zu erkennen. Wenn beispielsweise die Außentemperatur sinkt, kann auch die erwartete Kühlmitteltemperatur sinken, und in diesem Fall kann auch der Schwellenwert für eine Anomalie sinken. Umgekehrt kann sich bei einem Anstieg der Außentemperatur ein erwarteter Wertebereich für die Kühlmitteltemperatur vergrößern, wodurch sich der Schwellenwert für die Anomalie erhöht. Selbstverständlich sind zahlreiche weitere Beispiele denkbar.
-
4A veranschaulicht Diagramme von Beispielen tatsächlicher Sensormesswerte, die im Laufe der Zeit für eine CDU A (z. B. CDU 100) gemessen wurden, sowie entsprechende rekonstruierte Messwerte und Rekonstruktionsfehler gemäß Ausführungsbeispielen der Erfindung. 4A zeigt Diagramme der tatsächlichen Werte und der entsprechenden rekonstruierten Werte für drei Beispielsensormetriken, nämlich die Sekundärtemperatur des Sekundärstroms 106, gemessen durch das Thermoelement 130 (1), die primäre Kühlmitteldurchflussmenge und die Ventilstellung (Ventilbedarf). Bei diesen Sensormessgrößen kann es sich um korrelierte Messgrößen handeln, die ein ähnliches Verhalten in Bezug auf registrierte Ereignisse aufweisen.
-
Für jede Sensormessgröße enthalten die Diagramme die tatsächlichen Werte, die für die Sensormessgröße erfasst wurden, sowie die rekonstruierten Werte. Wie in Bezug auf die primäre Kühlmitteldurchflussmetrik veranschaulicht, sind die tatsächlichen Metrikwerte 402 in einer etwas dunkleren Schattierung dargestellt als die rekonstruierten Werte 404. Darüber hinaus wird der Rekonstruktionsfehler 406, der in Bezug auf alle korrelierten Sensormetriken ermittelt wurde, unter den Diagrammen der tatsächlichen metrischen Werte und der rekonstruierten Werte für jede Sensormetrik angezeigt.
-
Es gibt verschiedene Zeiträume, in denen alle drei Sensoren, die die Sensordaten in Bezug auf die in 4A dargestellten Beispielmetriken erfassen, ein Ereignis registrieren, das dann mit einem Anomalie-Score einhergeht, der einen Anomalie-Schwellenwert überschreitet. In Ausführungsbeispielen wird dies als anomalistisches Verhalten interpretiert. Ein solches Ereignis 408 ist in 4A dargestellt. Das Ereignis 408 kann beispielsweise einem Wasserregelventil auf der Primärseite von CDU A entsprechen, das sich anomalerweise außerhalb seines spezifizierten Bereichs öffnet und schließt (als „Ventilanforderung“ bezeichnet), was wiederum dazu führt, dass die vom Thermoelement 130 registrierte Temperatur und die primäre Kühlmitteldurchflussrate gleichzeitig zyklisch wechseln. Das anomale Zyklusverhalten 410 des Wasserregelventils, das wiederum entsprechende Zyklen in anderen korrelierten Sensormesswerten verursacht, führt zu einer Anomaliewertung, die den Anomalieschwellenwert übersteigt und somit das Vorhandensein einer Anomalie anzeigt.
-
Die auf der Grundlage des Rekonstruktionsfehlers 406 ermittelte Anomaliewertung ist eine multimetrische Wertung für alle in 4A genannten sensorkorrelierten Messgrößen (Temperatur des sekundären Durchflusses 106, primäre Kühlmittel-Durchflussrate, Ventilbedarf). Multimetrische Modelle wie das ML-Modell 200, die multimetrische Anomaliebewertungen erzeugen, bieten eine Reihe von technischen Vorteilen gegenüber ihren einzelmetrischen Gegenstücken. Insbesondere sind multimetrische Modelle robuster als einzelmetrische Modelle, erzeugen weniger Fehlalarme und reduzieren die Menge der Informationen, die die Betreiber von Rechenzentren verarbeiten müssen, erheblich. Darüber hinaus sind multimetrische Modelle in der Lage, die Korrelation zwischen Sensoren innerhalb einer Gruppe korrelierter Sensoren auszunutzen. Wenn beispielsweise eine der Messgrößen in 4A aus der multimetrischen Analyse entfernt worden wäre, hätte das ML-Modell 200 das anomale Verhalten immer noch angezeigt. Dies zeigt, dass auch dann, wenn ein Sensor nicht mehr ordnungsgemäß funktioniert, das anormale Verhalten im Zusammenhang mit dem Ereignis 408 immer noch angezeigt worden wäre. Selbst wenn beispielsweise der Ventilanforderungssensor nicht mehr funktioniert, würden die Temperatur des sekundären Durchflusses 106 und die primäre Kühlmitteldurchflussrate immer noch ein anormales zyklisches Verhalten aufweisen, und der Rekonstruktionsfehler würde immer noch vom Schwellenwert für Anomalien abweichen, um das Vorhandensein einer Anomalie anzuzeigen. Auf diese Weise ermöglicht der Einsatz des ML-Modells 200 zur Erkennung von anormalem Verhalten den Einsatz von weniger Sensoren und weniger teuren Instrumenten, während gleichzeitig ein hohes Maß an Systemstabilität beibehalten wird.
-
Es ist zu beachten, dass die Anomaliewerte (wie aus dem Rekonstruktionsfehler 406 ermittelt) während eines Teils des Zeitraums, der dem Ereignis 408 entspricht, zwar den Anomalieschwellenwert überschreiten und somit ein anomales Verhalten 410 aufweisen, dies aber nicht zwangsläufig bedeutet, dass mehrere Sensoren oder mehrere andere Komponenten der CDU A nicht ordnungsgemäß funktionieren. Während beispielsweise im Fall des Ereignisses 408 jeder der Beispielsensoren anomale Daten für die entsprechenden Sensormetriken erzeugte, war die einzige Komponente der CDU 100, die fehlerhaft funktionierte, das Wasserregelventil auf der Primärseite. Da jedoch die Ventilanforderungsmetrik für das Wasserregelventil mit mehreren anderen Sensormetriken korreliert ist, können anomalistische Daten auch in Verbindung mit anderen Sensormetriken beobachtet werden, obwohl die Sensoren, die Daten in Bezug auf diese anderen Metriken erfassen, ordnungsgemäß funktionieren. In einigen Ausführungsbeispielen kann die Erkennung von anomalem Verhalten in einer Gruppe von korrelierten Sensormesswerten eine weitere Untersuchung des Sensors/der Komponente erfordern, der/die eine Fehlfunktion aufweist und die anderen Sensormesswerte zu anomalem Verhalten veranlasst. Wenn ein Sensor nicht richtig funktioniert, können die Daten dieses Sensors durch historische oder vorhergesagte Werte ersetzt werden, bevor sie in das ML-Modell 200 eingegeben werden.
-
Ein weiteres Beispiel für die Fähigkeit des multivariaten ML-Modells 200, die Ausfallsicherheit der CDU zu verbessern, wird nun mit Bezug auf die 4A und 4B beschrieben. Ein weiteres Beispiel für ein Ereignis 412 in 4A ist die Abschaltung eines Servers oder IT-Racks, der von CDU A gekühlt wird, für ein Wartungsereignis. Dieses Abschaltungsereignis 412 kann zu anomalen Daten für die verschiedenen in 4A dargestellten Beispielsensormetriken und schließlich zu einer Anomaliewertung führen, die den Anomalieschwellenwert übersteigt und damit ein anomales Verhalten 414 anzeigt. In Ausführungsbeispielen kann das Ereignis 412 ein Ereignis auf Anlagenebene sein.
-
4B zeigt Diagramme der tatsächlichen Sensormesswerte sowie der entsprechenden rekonstruierten Werte und Rekonstruktionsfehler für denselben Beispielsatz von Sensormesswerten wie in 4A dargestellt, jedoch für eine andere CDU (CDU B). CDU B kann sich beispielsweise in demselben Cluster wie CDU A befinden. CDU A und CDU B können dasselbe Ereignis auf Einrichtungsebene 412 erfahren und dieselben oder unterschiedliche multivariate Anomalieerkennungsmodelle ausführen. Wie in 4B gezeigt, weist der Rekonstruktionsfehler während eines Zeitraums 416, der sich mit dem Zeitraum des Ereignisses 412 überschneidet, ein anomales Verhalten 418 auf, das dem anomalen Verhalten 414 ähnelt. 4A und 4B zeigen, dass ein multivariates Modell, das auf zwei oder mehr CDUs eingesetzt wird, in der Lage ist, eine Anomalie auf Anlagenebene zu erkennen. Dies bringt den technischen Vorteil mit sich, dass eine weitere Ebene der Überprüfung des Sensorzustands erreicht wird. Wenn beispielsweise ein anormales Verhalten auf Anlagenebene von 4 CDUs in einer Gruppe von 5 CDUs beobachtet wird und dasselbe Verhalten auf Anlagenebene nicht von CDU 5 beobachtet wird, dann können wir möglicherweise feststellen, dass ein Sensorausfall in CDU 5 aufgetreten ist, da es die einzige CDU ist, die das anormale Verhalten auf Anlagenebene nicht erkannt hat. Ein weiterer technischer Vorteil der Verwendung des ML-Modells 200 zur Erkennung anomalen Verhaltens besteht darin, dass dasselbe ML-Modell 200 nicht nur für eine bestimmte CDU (z. B. CDU A) verwendet werden kann, sondern auch für andere CDUs innerhalb desselben Clusters (z. B. CDU B). Somit kann das ML-Modell 200 eingesetzt werden, um die Ausfallsicherheit sowohl einzelner als auch clusterweiter CDU-Einsätze zu verbessern und gleichzeitig eine vereinfachte CDU-Instrumentierung und zugehörige Firmware zu ermöglichen.
-
5 zeigt ein Blockdiagramm eines beispielhaften Computersystems 500, in dem verschiedene der hier beschriebenen Ausführungsformen implementiert werden können. Das Computersystem 500 umfasst einen Bus 502 oder einen anderen Kommunikationsmechanismus zur Übermittlung von Informationen sowie einen oder mehrere Hardware-Prozessoren 504, die mit dem Bus 502 zur Verarbeitung von Informationen verbunden sind. Bei dem/den Hardware-Prozessor(en) 504 kann es sich zum Beispiel um einen oder mehrere Allzweck-Mikroprozessoren handeln.
-
Das Computersystem 500 umfasst auch einen Hauptspeicher 506, wie z. B. einen Speicher mit wahlfreiem Zugriff (RAM), einen Cache und/oder andere dynamische Speichergeräte, die mit dem Bus 502 verbunden sind, um Informationen und Anweisungen zu speichern, die vom Prozessor 504 ausgeführt werden sollen. Der Hauptspeicher 506 kann auch zum Speichern von temporären Variablen oder anderen Zwischeninformationen während der Ausführung von Befehlen verwendet werden, die vom Prozessor 504 ausgeführt werden sollen. Wenn solche Befehle in Speichermedien gespeichert werden, auf die der Prozessor 504 zugreifen kann, wird das Computersystem 500 zu einer Spezialmaschine, die so angepasst ist, dass sie die in den Befehlen angegebenen Operationen ausführen kann.
-
Das Computersystem 500 umfasst außerdem einen Festwertspeicher (ROM) 508 oder ein anderes statisches Speichergerät, das mit dem Bus 502 verbunden ist, um statische Informationen und Anweisungen für den Prozessor 504 zu speichern. Ein Speichergerät 510, z. B. eine Magnetplatte, eine optische Platte oder ein USB-Stick (Flash-Laufwerk) usw., ist vorgesehen und mit dem Bus 502 verbunden, um Informationen und Anweisungen zu speichern.
-
Das Computersystem 500 kann über den Bus 502 mit einer Anzeige 512, z. B. einer Flüssigkristallanzeige (LCD) (oder einem Touchscreen), verbunden sein, um einem Computerbenutzer Informationen anzuzeigen. Ein Eingabegerät 514, einschließlich alphanumerischer und anderer Tasten, ist mit dem Bus 502 gekoppelt, um Informationen und Befehlsauswahlen an den Prozessor 504 zu übermitteln. Eine andere Art von Benutzereingabegerät ist die Cursorsteuerung 516, wie z. B. eine Maus, ein Trackball oder Cursorrichtungstasten zur Übermittlung von Richtungsinformationen und Befehlsauswahlen an den Prozessor 504 und zur Steuerung der Cursorbewegung auf der Anzeige 512. In einigen Ausführungsformen können die gleichen Richtungsinformationen und Befehlsauswahlen wie bei der Cursorsteuerung über den Empfang von Berührungen auf einem Touchscreen ohne Cursor implementiert werden.
-
Das Computersystem 500 kann ein Benutzerschnittstellenmodul zur Implementierung einer grafischen Benutzeroberfläche enthalten, das in einem Massenspeichergerät als ausführbare Softwarecodes gespeichert werden kann, die von dem/den Computergerät(en) ausgeführt werden. Dieses und andere Module können beispielsweise Komponenten wie Softwarekomponenten, objektorientierte Softwarekomponenten, Klassenkomponenten und Aufgabenkomponenten, Prozesse, Funktionen, Attribute, Prozeduren, Unterprogramme, Segmente von Programmcode, Treiber, Firmware, Mikrocode, Schaltkreise, Daten, Datenbanken, Datenstrukturen, Tabellen, Arrays und Variablen umfassen.
-
Im Allgemeinen kann sich der hier verwendete Begriff „Komponente“, „Engine“, „System“, „Datenbank“, „Datenspeicher“ und dergleichen auf eine in Hardware oder Firmware verkörperte Logik oder auf eine Sammlung von Softwareanweisungen beziehen, die möglicherweise Ein- und Ausstiegspunkte haben und in einer Programmiersprache wie z. B. Java, C oder C++ geschrieben sind. Eine Softwarekomponente kann kompiliert und zu einem ausführbaren Programm verknüpft werden, in einer dynamischen Link-Bibliothek installiert werden oder in einer interpretierten Programmiersprache wie BASIC, Perl oder Python geschrieben sein. Es ist klar, dass Softwarekomponenten von anderen Komponenten oder von sich selbst aus aufgerufen werden können und/oder als Reaktion auf erkannte Ereignisse oder Unterbrechungen aufgerufen werden können. Softwarekomponenten, die für die Ausführung auf Computergeräten konfiguriert sind, können auf einem computerlesbaren Medium, wie z. B. einer Compact Disc, einer digitalen Videodisc, einem Flash-Laufwerk, einer Magnetplatte oder einem anderen greifbaren Medium, oder als digitaler Download bereitgestellt werden (und können ursprünglich in einem komprimierten oder installierbaren Format gespeichert sein, das vor der Ausführung eine Installation, Dekomprimierung oder Entschlüsselung erfordert). Ein solcher Softwarecode kann teilweise oder vollständig in einem Speicher des ausführenden Computergeräts zur Ausführung durch das Computergerät gespeichert werden. Softwareanweisungen können in Firmware, wie z. B. einem EPROM, eingebettet sein. Darüber hinaus können die Hardwarekomponenten aus verbundenen Logikeinheiten wie Gattern und Flipflops und/oder aus programmierbaren Einheiten wie programmierbaren Gatteranordnungen oder Prozessoren bestehen.
-
Das Computersystem 500 kann die hier beschriebenen Techniken unter Verwendung von kundenspezifischer festverdrahteter Logik, einem oder mehreren ASICs oder FPGAs, Firmware und/oder Programmlogik implementieren, die in Kombination mit dem Computersystem das Computersystem 500 zu einer Spezialmaschine macht oder programmiert. Gemäß einer Ausführungsform werden die hierin beschriebenen Techniken vom Computersystem 500 als Reaktion auf den/die Prozessor(en) 504 ausgeführt, der/die eine oder mehrere Sequenzen von einem oder mehreren im Hauptspeicher 506 enthaltenen Befehlen ausführt/ausführen. Solche Anweisungen können in den Hauptspeicher 506 von einem anderen Speichermedium, wie z. B. einem Speichergerät 510, eingelesen werden. Die Ausführung der im Hauptspeicher 506 enthaltenen Befehlssequenzen veranlasst den/die Prozessor(en) 504, die hier beschriebenen Prozessschritte durchzuführen. In alternativen Ausführungsformen können fest verdrahtete Schaltungen anstelle von oder in Kombination mit Softwareanweisungen verwendet werden.
-
Der Begriff „nicht-transitorische Medien“ und ähnliche Begriffe wie maschinenlesbare Speichermedien, wie sie hier verwendet werden, beziehen sich auf alle Medien, die Daten und/oder Befehle speichern, die eine Maschine dazu veranlassen, auf eine bestimmte Weise zu arbeiten. Solche nicht-übertragbaren Medien können nicht-flüchtige Medien und/oder flüchtige Medien umfassen. Zu den nichtflüchtigen Medien gehören beispielsweise optische oder magnetische Festplatten, wie das Speichergerät 510. Zu den flüchtigen Medien gehören dynamische Speicher, wie der Hauptspeicher 506. Zu den gängigen Formen nichtflüchtiger Medien gehören beispielsweise Disketten, flexible Platten, Festplatten, Solid-State-Laufwerke, Magnetbänder oder andere magnetische Datenspeichermedien, CD-ROMs, andere optische Datenspeichermedien, physische Medien mit Lochmustern, RAM, PROM und EPROM, FLASH-EPROM, NVRAM, andere Speicherchips oder -kassetten sowie deren vernetzte Versionen.
-
Nicht-transitorische Medien unterscheiden sich von Übertragungsmedien, können aber in Verbindung mit ihnen verwendet werden. Übertragungsmedien sind an der Übertragung von Informationen zwischen nicht-transitorischen Medien beteiligt. Zu den Übertragungsmedien gehören z. B. Koaxialkabel, Kupfer- und Glasfaserkabel, einschließlich der Drähte, aus denen der Bus 502 besteht. Übertragungsmedien können auch in Form von Schall- oder Lichtwellen auftreten, wie sie bei der Datenkommunikation über Funk und Infrarot erzeugt werden.
-
Das Computersystem 500 umfasst auch eine Kommunikationsschnittstelle 518, die mit dem Bus 502 verbunden ist. Die Kommunikationsschnittstelle 518 stellt eine bidirektionale Datenkommunikationsverbindung zu einem oder mehreren Netzwerkverbindungen her, die mit einem oder mehreren lokalen Netzwerken verbunden sind. Bei der Kommunikationsschnittstelle 518 kann es sich beispielsweise um eine ISDN-Karte (Integrated Services Digital Network), ein Kabelmodem, ein Satellitenmodem oder ein Modem handeln, um eine Datenkommunikationsverbindung zu einer entsprechenden Art von Telefonleitung herzustellen. Ein weiteres Beispiel: Die Kommunikationsschnittstelle 518 kann eine LAN-Karte (Local Area Network) sein, um eine Datenkommunikationsverbindung zu einem kompatiblen LAN (oder einer WAN-Komponente für die Kommunikation mit einem WAN) herzustellen. Es können auch drahtlose Verbindungen implementiert werden. In jeder dieser Implementierungen sendet und empfängt die Kommunikationsschnittstelle 518 elektrische, elektromagnetische oder optische Signale, die digitale Datenströme übertragen, die verschiedene Arten von Informationen darstellen.
-
Eine Netzverbindung ermöglicht in der Regel die Datenkommunikation über ein oder mehrere Netze zu anderen Datengeräten. Eine Netzverbindung kann beispielsweise eine Verbindung über ein lokales Netz zu einem Host-Computer oder zu Datengeräten herstellen, die von einem Internetdienstanbieter (ISP) betrieben werden. Der ISP wiederum bietet Datenkommunikationsdienste über das weltweite Paketdatenkommunikationsnetz an, das heute gemeinhin als „Internet“ bezeichnet wird. Sowohl das lokale Netz als auch das Internet verwenden elektrische, elektromagnetische oder optische Signale, die digitale Datenströme übertragen. Die Signale über die verschiedenen Netze und die Signale auf der Netzverbindung und über die Kommunikationsschnittstelle 518, die die digitalen Daten zum und vom Computersystem 500 übertragen, sind Beispiele für Übertragungsmedien.
-
Das Computersystem 500 kann über das/die Netzwerk(e), die Netzwerkverbindung und die Kommunikationsschnittstelle 518 Nachrichten senden und Daten, einschließlich Programmcode, empfangen. In dem Internet-Beispiel könnte ein Server einen angeforderten Code für ein Anwendungsprogramm über das Internet, den ISP, das lokale Netzwerk und die Kommunikationsschnittstelle 518 übertragen.
-
Der empfangene Code kann durch den Prozessor 504 ausgeführt werden, sobald er empfangen wird, und/oder im Speichergerät 510 oder einem anderen nichtflüchtigen Speicher zur späteren Ausführung gespeichert werden.
-
Jeder der in den vorstehenden Abschnitten beschriebenen Prozesse, Methoden und Algorithmen kann in Code-Komponenten verkörpert und vollständig oder teilweise durch diese automatisiert werden, die von einem oder mehreren Computersystemen oder Computerprozessoren mit Computerhardware ausgeführt werden. Das eine oder die mehreren Computersysteme oder Computerprozessoren können auch so betrieben werden, dass sie die Ausführung der entsprechenden Vorgänge in einer „Cloud Computing“-Umgebung oder als „Software as a Service“ (SaaS) unterstützen. Die Prozesse und Algorithmen können teilweise oder vollständig in anwendungsspezifischen Schaltkreisen implementiert sein. Die verschiedenen oben beschriebenen Merkmale und Verfahren können unabhängig voneinander verwendet oder auf verschiedene Weise kombiniert werden. Verschiedene Kombinationen und Unterkombinationen sollen in den Anwendungsbereich dieser Offenbarung fallen, und bestimmte Verfahrens- oder Prozessblöcke können in einigen Implementierungen weggelassen werden. Die hier beschriebenen Methoden und Prozesse sind auch nicht auf eine bestimmte Reihenfolge beschränkt, und die damit verbundenen Blöcke oder Zustände können in anderen geeigneten Reihenfolgen, parallel oder auf andere Weise ausgeführt werden. Blöcke oder Zustände können zu den offengelegten Beispielen hinzugefügt oder aus ihnen entfernt werden. Die Ausführung bestimmter Operationen oder Prozesse kann auf Computersysteme oder Computerprozessoren verteilt werden, die sich nicht nur auf einer einzigen Maschine befinden, sondern über eine Reihe von Maschinen verteilt sind.
-
Eine Schaltung kann in jeder Form von Hardware, Software oder einer Kombination davon implementiert werden. Beispielsweise können ein oder mehrere Prozessoren, Controller, ASICs, PLAs, PALs, CPLDs, FPGAs, logische Komponenten, Software-Routinen oder andere Mechanismen implementiert werden, um eine Schaltung zu bilden. Bei der Implementierung können die verschiedenen hier beschriebenen Schaltungen als diskrete Schaltungen implementiert werden, oder die beschriebenen Funktionen und Merkmale können teilweise oder insgesamt auf eine oder mehrere Schaltungen aufgeteilt werden. Auch wenn verschiedene Merkmale oder Funktionselemente einzeln als separate Schaltungen beschrieben oder beansprucht werden, können diese Merkmale und Funktionen von einer oder mehreren gemeinsamen Schaltungen gemeinsam genutzt werden, und eine solche Beschreibung soll nicht voraussetzen oder implizieren, dass separate Schaltungen erforderlich sind, um diese Merkmale oder Funktionen zu implementieren. Wenn eine Schaltung ganz oder teilweise mit Software implementiert ist, kann diese Software so implementiert werden, dass sie mit einem Computer- oder Verarbeitungssystem arbeitet, das in der Lage ist, die in Bezug auf sie beschriebene Funktionalität auszuführen, wie z. B. das Computersystem 500.
-
Wie hierin verwendet, kann der Begriff „oder“ sowohl im einschließenden als auch im ausschließenden Sinne verstanden werden. Darüber hinaus ist die Beschreibung von Ressourcen, Vorgängen oder Strukturen im Singular nicht so zu verstehen, dass der Plural ausgeschlossen wird. Bedingte Ausdrücke, wie z. B. „kann“, „könnte“, „könnte“ oder „kann“, sind, sofern nicht ausdrücklich anders angegeben oder im Kontext anders verstanden, im Allgemeinen so zu verstehen, dass bestimmte Ausführungsformen bestimmte Merkmale, Elemente und/oder Schritte umfassen, während andere Ausführungsformen diese nicht umfassen.
-
Die in diesem Dokument verwendeten Begriffe und Ausdrücke sowie deren Abwandlungen sind, sofern nicht ausdrücklich etwas anderes angegeben ist, nicht als einschränkend, sondern als offen zu verstehen. Adjektive wie „konventionell“, „traditionell“, „normal“, „Standard“, „bekannt“ und Begriffe mit ähnlicher Bedeutung sind nicht so zu verstehen, dass sie den beschriebenen Gegenstand auf einen bestimmten Zeitraum oder auf einen zu einem bestimmten Zeitpunkt verfügbaren Gegenstand beschränken, sondern sollten so verstanden werden, dass sie konventionelle, traditionelle, normale oder Standardtechnologien umfassen, die jetzt oder zu einem beliebigen Zeitpunkt in der Zukunft verfügbar oder bekannt sein können. Das Vorhandensein erweiternder Wörter und Ausdrücke wie „eine oder mehrere“, „mindestens“, „aber nicht beschränkt auf“ oder ähnliche Ausdrücke in einigen Fällen ist nicht so zu verstehen, dass der engere Fall beabsichtigt oder erforderlich ist, wenn solche erweiternden Ausdrücke nicht vorhanden sind.