Was ist Predictive Maintenance? - Ein Überblick

Die Digitalisierung der Industrie führt dazu, dass industrielle Automatisierung zunehmend dynamischer und komplexer wird. Einer der betroffenen Prozesse ist die Wartung von Maschinen und Anlagen, wo die reaktive und präventive Wartung zunehmend ersetzt wird durch Predictive Maintenance, eine "vorausschauende" Wartung, die eine Vorhersage des Ausfalls zum Ziel hat und sich dabei neuester IoT-, Cloud- und Machine Learning-Technologien bedient.
Im folgenden geben wir eine Übersicht über die grundlegenden Konzepte und Basis­technologien der Predictive Maintenance, stellen die Anwendungs­bereiche in der Praxis und die Predictive Maintenance-Lösungen einiger Global Player auf dem Markt vor, sowie einen Anwendungsfall aus der Automotive-Industrie, der zeigt, wie die Klassifikation von Ausfällen mit Hilfe eines Modells des überwachten Lernens durchgeführt werden kann.

  Motivation

Predictive Maintenance ist ein daten­gesteuerter Wartungsprozess, der die herkömmliche Wartung im Industrie 4.0-Umfeld ergänzt und zunehmend ersetzt. Die Predictive Maintenance hat sich zudem als industrielle Anwendung des Machine Learning etabliert und ist ein greifbares Beispiel des Internet of Things.

Die zugrundeliegende Idee ist einfach: Maschinen und Anlagen werden mit Sensoren ausgestattet, die erfassten Messwerte werden am Gerät oder in der Cloud mit Algorithmen des Maschinellen Lernens ausgewertet, die mit einer festgelegten Wahrscheinlichkeit vorhersagen, ob ein Ausfall eintreten wird oder nicht. Umso mehr Daten vorliegen, umso besser lernt das Vorhersagemodell. Die Umsetzung erscheint zunächst komplex und erfordert Expertenwissen in verschiedenen Disziplinen: Kommunikationsstandards für Industrie 4.0 und IoT, verteilte Software-Architekturen, Machine Learning-Verfahren, Sicherheit in vernetzten Systemen.

Beim Einstieg in des Thema stellen sich eine Reihe von Fragen, auf die im folgenden eingegangen wird. Welche Maßnahmen sind zur Durchführung des Predictive Maintenance erforderlich und welche Methoden des Maschinellen Lernens kommen zum Einsatz?
Wie aufwendig ist die Einführung, lohnt sich der Einsatz?
In welchen Bereichen werden in der Praxis Predictive Maintenance-Lösungen eingesetzt und was bieten die entsprechenden Lösungen der Global Player?

  Übersicht

Der Übersichts-Artikel ist in sieben Abschnitte gegliedert. Zunächst wird der Begriff Predictive Maintenance genauer definiert und die Predictive Maintenance aus Prozess- und Systemsicht betrachtet. Im zweiten Abschnitt erläutern wir die Komponenten einer High-Level-Architektur für Predictive Maintenance und im dritten Abschnitt gehen wir genauer auf die fünf Schritte des Prozesses ein. Danach werden einige Anwendungsbereiche aus der Praxis beschrieben, der Entscheidungsbaum als passendes Machine Learning-Modell wird vorgestellt, sowie die elab2go-Demonstratoren, die die Datenanalyse im Rahmen der Predictive Maintenance veranschaulichen.

1 Was ist Predictive Maintenance?

Laut DIN EN 13306 unterscheidet man zwischen korrektiver Instandhaltung, d.h. nach Eintritt eines Ausfalls, und präventiver Instandhaltung, d.h. regelmäßige Überprüfung der Maschine, noch vor dem Eintritt eines Ausfalls. Zu der präventiven Instandhaltung gehört die regelmäßige manuelle Wartung und Inspektion, sowie die KI-gestützte vorausschauende Wartung mit Hilfe von Machine Learning-Verfahren, um den optimalen Zeitpunkt für Instandhaltungsmaßnahmen zu bestimmen.

Was versteht man unter Predictive Maintenance bzw. "Vorausschauender Wartung"? In der Fachliteratur, z.B. in dem Buch von Levitt [2], wird Predictive Maintenance folgendermaßen beschrieben:

Predictive Maintenance ist eine Wartungsaktivität, die darauf abzielt, anzuzeigen, wo eine Maschine sich auf der kritischen Verschleißkurve befindet und ihre Nutzungsdauer vorherzusagen

Diese Definition spezifiziert noch keinen bestimmten Ablauf oder einzusetzende Technik, zeigt jedoch den wichtigsten Aspekt der Predictive Maintenance auf: die Fähigkeit, einen Ausfall oder Wartungsbedarf vorherzusagen. Die folgende Definition präzisiert die wesentlichen Aspekte der Predictive Maintenance und entspricht dem, wie Predictive Maintenance in der Industrie umgesetzt wird.

Predictive Maintenance ist ein Wartungsprozess, der auf der Echtzeit-Erfassung und automatisierten Auswertung von Maschinendaten basiert, und darauf abzielt, die Nutzungsdauer einer Maschine vorherzusagen und entsprechende Instandhaltungs-Maßnahmen zu veranlassen.

Diese präzisere Definition zeigt den Unterschied zu Preventive Maintenance auf, der darin besteht, dass bei der Vorausschauenden Wartung die Maschine gezielt nur aus dem Betrieb genommen und gewartet wird, wenn die aktuellen Auswertungen einen Anlass melden.

Predictive Maintenance: Die Prozess-Sicht

Predictive Maintenance als datengesteuerte Wartung kann zunächst als ein einfacher Prozess in fünf Schritten betrachtet werden: 1. Fragestellung, 2. Datenerhebung, 3. Datenbereinigung, 4. Datenanalyse, 5. Antwort / Lösung.

Was ist der Unterschied zwischen den verschiedenen Machine Learning-Modellen für Predictive Maintenance, wann ist welches einzusetzen?
Mit einem Random Forest-Klassifikationsmodell kann man die Frage beantworten, bei welcher Kombination von Sensor-Messungen ein Ausfall eintreten wird. Voraussetzung: es liegen gelabelte Daten vor, d.h. für die erfassten Vergangenheitsdaten ist bekannt, bei welcher Kombination ein Ausfall eingetreten ist.
Mit einem Isolation Forest kann man herausfinden, welches die Daten sind, die potentiell Anomalien darstellen, ohne dass gelabelte Daten vorliegen müssen.
Mit einem LSTM-Netzwerk kann man in Zeitreihen-Daten langfristige Abhängigkeiten erfassen, ohne dass gelabelte Daten vorliegen müssen.

Predictive Maintenance: Die System-Sicht

In der Praxis muss der Predictive Maintenance-Prozess weitere Anforderungen erfüllen. Datenerhebung und Datenübertragung von der Maschine in die Cloud sollen effizient und sicher erfolgen. Die Datenanalyse muss nicht nur genau, sondern auch performant sein und möglichst zeitnah Vorhersagen liefern. Die Umsetzung des Prozesses in ein IT-System muss daher eine Reihe komplexer technischer Aspekte berücksichtigen. Es stellt sich die Frage nach der Auswahl der Komponenten und deren Zusammenspiel in jedem Schritt. Soll z.B. die Datenbereinigung und Datenanalyse in Echtzeit schon in einem Edge-System am Gerät passieren (was die Kommunikationswege weniger belastet) oder erst auf dem Server, wo mehr Speicher zur Verfügung steht? Diese Fragen kann die Architektur des Predictive Maintenance-Systems beantworten.

2 Architektur eines Predictive Maintenance-Systems

Die dargestellte vereinfachte High-Level-Architektur gibt einen Überblick über die Komponenten des Predictive Maintenance-Systems und deren Zusammenspiel, vgl. [3]. Die Schritte des Predictive Maintenance-Prozesses sind rot eingezeichnet, die Teilaufgaben bzw. Funktionalität der Komponenten (z.B. "Datenbereinigung") sind in Rechtecke gesetzt.

Ein Predictive Maintenance System wird in der Regel als eine Software-orientierte Architektur umgesetzt. Das System besteht aus einem Edge-System, einem Cloud-System, Datenquellen und Clients, mit jeweils festgelegten Teilaufgaben.

Bei der Datenerhebung werden zwei Kommunikationsprotokolle eingesetzt, Message Queuing Telemetry Transport (MQTT) und Constrained Application Protocol (CoAP), sowie eine vereinheitlichende Architektur, OPC Unified Architecture (OPC UA), die zusammen den standardisierten herstellerunabhängigen Datenaustausch im industriellen Umfeld ermöglichen. Beide Protokolle sind sicher: Teilnehmer werden durch X.509 Zertifikate eindeutig identifiziert, die übertragenen Daten können verschlüsselt werden.

Die beiden Kommunikationsstandards MQTT und OPC-UA können grundsätzlich zusammen betrieben werden, jedoch entscheidet man sich in der Praxis oft für das eine oder andere System, abhängig von der schon vorhandenen Infrastruktur und der Art der zu erhebenden Datenquellen. Sind die Datenquellen z.B. Steuerungen, die schon viele Daten speichern und auch auswerten können, wird eher OPC-UA eingesetzt. Sind die Datenquellen jedoch vor allem Sensoren, die ihre Messwerte zu beliebigen Zeiten in die Cloud übertragen, ist MQTT der bessere Wahl.

3 Predictive Maintenance - ein Prozess aus 5 Schritten

Die genauen Schritte zur Beantwortung einer Frage im Rahmen von Predictive Maintenance mittels Datenerhebung und -verarbeitung, Analyse und die Formulierung einer verständlichen Antwort werden als Prozess aus 5 Schritten dargestellt: Der Fragestellung, der Datenerhebung, der Datenbereinigung, der Datenanalyse und der abschließenden verständlichen Antwort.


Die Schritte 1, 2 und 5 erfolgen in enger Absprache zwischen der Fachabteilung, die durch vorausschauende Wartung Ausfallzeiten und Kosten verringern will, und dem Experten ("Daten-Analysten"), der Tools und Algorithmen des maschinellen Lernens kennt.

Schritt 1: Die Fragestellung

Asking Der Besitzer einer produzierenden Anlage hat hohe Reparaturkosten, die im schlimmsten Fall zu Produktionsausfällen und Lieferengpässen führen. Er sucht ein Verfahren, das frühzeitig vor dem Ausfall einer Maschine warnt und somit Ausfallzeiten und Kosten niedrig hält.

Entweder ist das Bauteil, das die Schwachstelle in der Produktionskette darstellt, bekannt und soll konkret überwacht werden oder die komplette Anlage soll auf eine mögliche Ausfall beobachtet werden. Durch eine gezielte Überwachung des Gesamt- oder eines Teilsystems der Anlage kann frühzeitig gewartet oder ausgetauscht werden.

Es wird eine konkrete Fragestellung formuliert, z.B. Wann sollte ein Bauteil ausgewechselt werden? Um diese Frage mittels Verfahren der Predictive Maintenance zu beantworten müssen nun im nächsten Schritt Daten erhoben werden.

Schritt 2: Datenerhebung

sensor Die Anlage oder das betreffende System wird mit Sensoren ausgestattet, die die nötigen Werte (physikalisch, elektrisch, akustisch, mechanisch usw. [1]) an den entsprechenden Bauteilen erfassen und speichern. Dabei wird auch erfasst, ob die Bauteile defekt sind und ausgetauscht wurden, oder ob sie noch funktionsfähig sind, diese Informationen stammen auch Protokollen, bereits durchgeführten Wartungen und Inspektionen [1]. Wenn die Datenerhebung über einen längeren Zeitraum erfolgt ist, stehen genügend Daten zur Verfügung um zum nächsten Schritt zu kommen.

Der zweite Schritt des Predictive Maintenance-Prozesses, die Datenerhebung, wird durch Hardware-Komponenten durchgeführt, die entweder schon in die Bauteile integriert sind oder nachträglich angeschlossen werden. Die grundlegende Funktionsweise der Datenerhebung, insbesondere auch der Aufbau einer Hardwarekomponente und die Datenübertragung an einen Server, werden in Demo 1: Sensordaten beschrieben.

Die erfassten Sensordaten werden in tabellarischer Form als Dateien (csv, json, xml) oder in einer Datenbank hinterlegt und stehen dann für die Datenanalyse zur Verfügung. In der Sprache des Datenanalysten sind die Sensordaten Beobachtungen ("observation"), die einen Datensatz ("data set") bilden. Jeder Sensor entspricht einem erfassten Merkmal ("feature"), und die Sensorwerte werden durch eine Zufallsvariable abgebildet.


Schritt 3: Datenbereinigung

cleaning Die erhobenen Daten müssen vor dem Durchführen einer Datenanalyse bereinigt, standardisiert und transformiert werden. Die bereinigten Datensätze haben einen höheren Informationsgehalt und sind für die jeweilige Datenanalyse optimiert, so dass die Modelle, die auf bereinigten Datensätzen basieren, angemessener und genauer sind.
Zur Datenbereinigung werden Verfahren zum Umgang mit fehlenden Werten, Ausreißern und unbalancierten Daten sowie Verfahren zur Daten-Normalisierung und -Transformation angewandt, siehe [1], [9].

Ein wichtiger Teil der Datenbereinigung ist das sogenannte Feature Engineering, dabei werden aus der Menge der Merkmale nur die wichtigsten ausgewählt, statistisch abhängie Merkmale werden entfernt, oder es werden aus vorhandenen Merkmalen neue Merkmale gebildet.

Schritt 4: Datenanalyse

thinkingBrain Ein zentraler Schritt im Predictive Maintenance-Prozess ist die Datenanalyse mit Hilfe von Algorithmen und Verfahren des maschinellen Lernens. Das Ziel der Datenanalyse ist die Ausarbeitung eines guten Vorhersagemodells auf Basis der vorhandenen Daten. Welches Machine Learning-Modell dabei verwendet wird, hängt von den Daten selber ab, z.B. von der Anzahl der beobachteten Merkmale (Spalten des Datensatzes), der Anzahl der verfügbaren Messungen (Zeilen des Datensatzes), dem Vorliegen von Zeitreihen (hat jede Messung einen Zeitstempel? wurden Daten in regelmäßigen Abständen erfasst?) oder dem Vorliegen "gelabelter" Daten, bei denen für die Vergangenheitsheitsdaten der Wert der Zielvariablen bekannt ist.

Es kann auch eine Kombination mehrerer Machine Learning-Modelle eingesetzt werden, dies ermöglicht eine verbesserte Anomalierkennung.

Falls für die Vergangenheitsdaten der Zustand (Ausfall ja / nein) mit erfasst wurde, kann man direkt die Verfahren des überwachten Lernens (Supervised Learning) einsetzen, z.B. Entscheidungsbäume, oder optimierte Algorithmen wie Random Forest und XGBoost, die Entscheidungsbäume als Baustein verwenden.

Falls die Daten als Zeitreihen erfasst wurden (Messungen mit Zeitstempel, in regelmäßigen Abständen) kann das Problem durch Umformung der Daten mittels einer Rolling-Window-Technik als Supervised Learning-Problem umformuliert werden. Dabei wird für die Vergangenheitsdaten ein Zeitfenster definiert, das n aufeinanderfolgende Beobachtungen / Zeilen enthält. Die Größe n des rollenden Zeitfensters hängt dabei von der Größe des Datensatzes und der Periodizität der Daten ab. Als Zielvariable wird dann jeweils die direkt auf das Zeitfenster folgende Beobachtung festgelegt. Anschließend können Verfahren des Supervised Learning eingesetzt werden, z.B. Künstliche Neuronale Netzwerke wie LSTM (Long Short-Term Memory), die die zukünftigen Werte der Sensordaten vorhersagen. Die Anomalieerkennung erfolgt in diesem Fall durch das Festlegen gewisser Schwellwerte, die bei Unter- oder Überschreiten als Anomalie interpretiert werden.

Falls für die Vergangenheitsdaten der Zustand nicht mit erfasst wurde, verwendet man Verfahren des unüberwachten Lernens, z.B. Clusteranalysen oder Isolation Forests.

Datenbereinigung und Datenanalyse können teilweise schon im Edge-System implementiert werden, wo sie jedoch unter Echtzeit-Einschränkungen und mit weniger Ressourcen ausgeführt werden müssen. Dies schränkt die Wahl der möglichen Sprachen und Bibliotheken ein und hat ggf. auch Auswirkungen auf die Genauigkeit der Vorhersage. Alternativ kann die Datenanalyse auf den schon aufbereiteten Daten im Cloud-System erfolgen. Dies hat den Vorteil, dass jede der gängigen Programmiersprachen für Statistik und Maschinelles Lernen eingesetzt werden kann, um das bestmögliche Prognosemodell zu entwickeln.

Beispiel für eine Datenanalyse

Im Falle eines Automotive-Datensatzes, bei dem Sensorwerte von Motoren und deren Zustand (Ausfall JA/NEIN) erfasst wurden, soll ein Klassifikator vorhersagen, bei welcher Kombination von Sensorwerten ein Ausfall eines Motors zu erwarten ist. Für den Einstieg kann ein intuitives Modell wie der Entscheidungsbaum zur Lösung führen, dieses Modell entspricht einem binären Klassifikator, der die beiden Vorhersagen "normaler" oder "anormal" Zustand bzw. "Ausfall Ja" oder "Ausfall Nein" liefert.

Mehr Details sind unter Predictive Maintenance: Datenanalyse zu finden.

Ein gutes Vorhersagemodell sollte nicht nur fehlerhafte Zuordnungen in schon bekannten Beobachtungen vermeiden, s sondern auch Vorhersagen für zukünftige Datensätze mit einer gewissen Sicherheit treffen können. Zur Bewertung eines Modells werden deshalb verschiedene Kennzahlen zum Testfehler bestimmt. Liegen diese Kennzahlen in einem vorher festgelegten, akzeptablen Bereich? Wenn ja, dann ist das Modell gut, d.h. wir können uns auf die Vorhersage durch das Modell verlassen.

Zur Bestimmung der Kennzahlen wird das Testverfahren der Kreuzvalidierung angewandt, ein statistisches Verfahren, das als Datenbasis für die Validierung den vorhandenen Originaldatensatz verwendet.

Mehr Details sind unter Predictive Maintenance: Performance zu finden.

Schritt 5: Die Antwort/Lösung

ampelSystem Die Ausgabe der Analyse-Software wird hier in eine verständliche Antwort übersetzt und in ein für das Unternehmen leicht anwendbares Wartungssystem eingebaut. Es kann z.B. ein Ampelsystem entstehen, das je nach Zustand des Bauteils die Farbe grün/gelb/rot anzeigt. Grün steht für die Funktionsfähigkeit, Gelb für die Beobachtung und Rot für den empfohlenen Austausch des Bauteils. Es ist aber auch ein Kategorisierung des vorhergesagten Ausfalls in "katastophal", "kritisch", "geringfügig" und "unerheblich" möglich, als Ergebnis aus einer vorhergesagten Kennzahl und der Interpretation deren Abweichung von der Norm [1].

Die dann anstehenden notwendigen und sinnvollen Maßnahmen, z.B. Wartungen, können so besser geplant werden und führen nicht mehr zu einem außerplanmäßigen Ausfall der Anlage und Produktionsstillständen [1]. Zusätzlich kann der aktuelle Zustand eines Bauteils regelmäßig überwacht werden (siehe auch Schritt 6: Update) und es kommt weniger zu verfrühten und unnötigen, rein kostenverursachenden Wartungsmaßnahmen.

Lohnt sich der Einsatz? - Die Vorteile

Durch die Vorausschauende Wartung lassen sich ungeplante Maschinenausfälle vermeiden und Ressourcen für Instandhaltungsarbeiten besser planen, dies verringert Kosten und verbessert die Produktivität der Maschinen.

Zahlen und Fakten zu den Vorteilen des Predictive Maintenance:
Laut des 2015 erschienen Reports der World Economic Forums lassen sich Ausfälle bzw. Stillstände mittels der Predictive Maintenance um bis zu 70% reduzieren und durch frühzeitige Wartungsarbeiten lassen sich 30% an Kosten einsparen. [WEF] Die Roland-Berger-Studie von April 2017 besagt, dass mittels Predictive Maintenance nur noch 15 % der Zeit mit Wartung verbracht wird, im Gegensatz zur „reaktiven“ Wartung (Reparatur erst bei Eintritt des Ausfalls) dort liegt die Stillstandzeit bei 40%. [ROL]

Schritt 6: Update

Alarm Durch die andauernde Überwachung (Monitoring des Systems) mittels der zur Datenerhebung bereits installierten Sensoren kann das Wartungssystem durch Verbessung des daten-gesteuerten Analysemodells stetig verbessert und immer individueller an die zu überwachende Anlage angepasst werden, was präzisere Vorhersagen ermöglicht.

Neben der Modellverbesserung können auch innerhalb des zu überwachenden Systems durch Feedbackschleifen, die auf Qualitätskennziffern beruhen [1], Systemanpassungen durchgeführt werden, die zu einer Steigerung der Produktivität führen.

4 Anwendungsbereiche aus der Praxis

Die Anwendungsbereiche in der Praxis sind umfangreich und stellen für mögliche Predictive Maintenance-Lösungen verschiedene Herausforderungen dar.

5 Predictive Maintenance-Lösungen auf dem Markt

Auf dem globalen Markt gibt es viele Anbieter von IoT-Anwendungen, die Smart-Factorys entstehen lassen, d.h. digitale vernetzte Zwillinge eines Unternehmens. Im nächsten Schritt können die damit erfassten Daten mittels der Predictive Maintenance zur Analyse und Vorhersage verwendet werden. Neben der Installation der Sensoren bieten viele Dienstleister auch Predictive Maintenance-Lösungen unter verschiedenen Produktnamen und Bausteinen an. Nach dem Ranking von IoT Analytics aus dem Jahr 2017 befinden sich unter den Top 20 der Predictive Maintenance-Lösungen drei deutsche Unternehmen unter den Top 7. [10]

Hier nun eine Auswahl an Predictive Maintenance-Lösungen auf dem globalen Markt:

6 Anwendungsbeispiel - Ausfallklassifikation

Wir verwenden als Anwendungsfall für die Ausfall-Klassifikation einen synthetischen Automotive-Datensatz, der in allen Demos des Predictive Maintenance-Zyklus verwendet wird: eine csv-Datei automotive_data.csv mit 140 Beobachtungen. Jede Beobachtung bzw. Zeile hat insgesamt 24 Spalten, von denen 22 Spalten Sensorwerte enthalten und die Merkmale der Datenanalyse darstellen. Zielvariable ist die Spalte "Ausfall". Die Fragestellung lautet: "Bei welcher Kombination von Merkmalen tritt ein Ausfall ein?". Dies entspricht einem Klassifikationsproblem mit zwei Klassen, nämlich der Klasse "Ausfall=ja" und der Klasse "Ausfall=nein".

Die Ausfall-Prognose für den Automotive-Datensatz erfolgt mit Hilfe des Entscheidungsbaum-Modells, dabei werden verschiedene Sprachen und Tools verwendet: Python, R und MATLAB.

Entscheidungsbaum-Modell

Der Entscheidungsbaum ist ein intuitiv nutzbares Modell, das für den Einstieg besonders geeignet ist, da es eine Visualisierung der hierarchisch aufeinanderfolgenden Entscheidungen ermöglicht. Ein Entscheidungsbaum besteht aus einer Wurzel, Kindknoten und Blättern, wobei jeder Knoten eine Entscheidungsregel und jedes Blatt eine Antwort auf die Fragestellung darstellt. Um eine Klassifikation eines einzelnen Datenobjektes abzulesen, geht man vom Wurzelknoten entlang des Baumes abwärts. Bei jedem Knoten wird ein Merkmal abgefragt und eine Entscheidung über die Auswahl des folgenden Knoten getroffen. Dies wird so lange fortgesetzt, bis man ein Blatt erreicht. Das Blatt entspricht der Klassifikation.

Beispiel: Entscheidungsbaum

Der Entscheidungsbaum für unser Mini-Beispiel gibt z.B. eine Antwort auf die Frage, bei welcher Kombination von Werten für die Merkmale temp und druck das das Gerät ausfallen wird.

Baum aus dem ID3

Interpretation

Als Eingabe benötigt der Baum eine Beobachtung, d.h. eine Kombination von Merkmalen, z.B. {temp=hoch, druck=hoch}.

Wir fangen bei der Wurzel an und wenden die Regeln des Baumes an, wobei an jedem Knoten ein Attribut des Baumes abgefragt wird. Erste Frage: ist temp hoch oder normal? temp ist hoch, also gehen wir nach links. Zweite Frage: Ist druck hoch oder normal? druck ist hoch also gehen wir nach links. Hier haben wir die Eingabe abgearbeitet und sind an einem Blatt angekommen. Die Antwort lautet: ja, d.h. bei dieser Eingabe tritt ein Ausfall ein.



Die Rolle des Entscheidungsbaums in Predictive Maintenance-Lösungen

Der Entscheidungsbaum ist ein intuitiv nachvollziehbares Modell, das sowohl für Klassifikation als auch für Regression eingesetzt werden kann. In Predictive Maintenance-Lösungen kann der Entscheidungsbaum bei Vorstudien eingesetzt werden, wenn z.B. nur relativ wenige Daten und keine Zeitreihen vorliegen. Zur Anomalieerkennung im produktiven Einsatz werden anstelle des Entscheidungbaum-Modells optimierte Algorithmen wie Random Forest und XGBoost eingesetzt, die den Entscheidungsbaum als Baustein verwenden und eine bessere Stabilität und Performance haben.

Vorteile des Entscheidungsbaum-Modells:
Kleine Datensätze erlaubt
Entscheidungsbaum-Modelle können auch dann eingesetzt werden, wenn nur relativ wenige Daten vorliegen, dies ist anders als bei komplexeren Deep Learning Modellen.
Wenig Datenbereinigung erforderlich
Die Dateten müssen nicht normalisiert werden, dies ist anders als bei Deep Learning Modellen.
Direkte Interpretierbarkeit
Im Unterschied zu Künstlichen Neuronalen Netzwerken, deren Vorhersagen nicht nachvollziehbar sind, kann die Vorhersage mittels Entscheidungsbaum logisch nachvollzogen werden.

Nachteile des Entscheidungsbaum-Modells:
Instabilität
Instabilität bedeutet, dass selbst kleine Änderungen in den Hyperparametern des Entscheidungsbaums zu stark unterschiedlichen Entscheidungsbäumen und somit zu unterschiedlichen Vorhersagen führen.
Überanpassung an die Trainingsdaten
Entscheidungsbäume neigen zur Überanpassung an die Trainingsdaten, gefolgt von schlechten Vorhersagen bei neuen Daten. Dies kann durch korrekte Einstellung der Hyperparameter behoben werden, z.B. Beschränkung der Tiefe des Entscheidungsbaums.

Random Forest-Modell

Bei einem Random Forest-Modell werden viele (~100) einzelne Entscheidungsbäume zu einem Wald kombiniert. Jeder der Entscheidungsbäume wird mit einer zufälligen Teilmenge der Daten und Merkmale trainiert. Die Klassifikation des Random Forest-Modells erfolgt durch Mehrheitsentscheidung der einzelnen Bäume.

Random Forest-Modelle haben im Vergleich zu Entscheidungsbäumen eine bessere Performance und höhere Stabilität, dabei geht jedoch die direkte Interpretierbarkeit verloren.


Random Forest

Als Random Forest bezeichnet man einerseits den Algorithmus, wie die einzelnen Entscheidungsbäume trainiert werden, und andererseits das resultierende Modell, das infolge des Algorithmus entsteht.

7 Tools und Sprachen für Predictive Maintenance

Für die Anwendung von Machine Learning-Algorithmen zur Predictive Maintenance werden aktuell meist drei Sprachen mit den dazu passenden Entwicklungsumgebungen verwendet, die Programmbibliotheken mit vergleichbarer Funktionalität anbieten: Python, MATLAB und R, es sind jedoch auch Programmbibliotheken in C++ und anderen Sprachen vorhanden.
Python verfügt über aufeinander abgestimmte Bibliotheken für Datenanalyse und Machine Learning (NumPy, SciPy, Matplotlib, Scikit-Learn, Keras, Tensorflow, Pytorch), die den gesamten Datenprozess (die Machine Learning-Pipeline) abbilden. Da die Bibliotheken kostenlos und gut dokumentiert sind, ist Python bei Einsteigern und Experten gleichermaßen beliebt.
MATLAB bietet für Predictive Maintenance üer verschiedene Toolboxen an uniqid unterstützt im Unterschied zu Python auch den Schritt der Datenerhebung. Bei den Python-Bibliotheken wird der Datensatz als gegeben vorausgesetzt, z.B. in Form einer *.csv-Datei.
R (mit RStudio) ist eine statistische Programmiersprache, die bevorzugt von Datenanalysten im Gesundheitswesen und für betriebswitschaftliche Probleme eingesetzt wird. In den R-Paketen sind alle Algorithmen für Datenanalyse (Daten aus verschiedenen Datenquellen laden, bereinigen, visualisieren, Vorhersagen mittels Entscheidungsbaum, Random Forest, Clusteranalysen, Zeitreihen-Analyse) abgebildet. R wird vor allem für klassische statistische Datenanalyse und in Offline-Szenarien eingesetzt.
Anwender, die Predictive Maintenance mit C++ umsetzen wollen / müssen, können auf C++ Bibliotheken wie DLIB zurückgreifen, die Klassifikation-, Regression-, Clustering- und auch Deep Learning-Algorithmen implementiert haben.

Weitere Plattformen wie der Open Source KNIME (Konstanz Information Miner) und der kommerzielle RapidMiner bieten spezialisierte Oberflächen für Endanwender ohne Programmierkenntnisse, die die Verfahren des maschinellen Lernens einsetzen wollen. In diesen Tools können Machine Learning-Pipelines aus Bausteinen zusammengeklickt und konfiguriert werden.

Im folgenden sind einige elab2go-Demos zum Einstieg in die Verwendung von Machine Learning-Verfahren für Predictive Maintenance mit verschiedenen Tools (Python, MATLAB und R) aufgeführt.

Demo-PY4: Predictive Maintenance mit scikit-learn
beschreibt eine Ausfallklassifikation mit Hilfe der Python-Bibliothek scikit-learn.
Demo-PY3: Clusteranalyse "Automotive in 3D"
beschreibt die Durchführung einer Clusteranalyse mit Hilfe der Python-Bibliothek scikit-learn.
Demo 3: Predictive Maintenace mit R
zeigt den Einsatz der statistischen Programmiersprache R für die Ausfallklassifikation.
Demo 4: Interaktive PredMaintApp
zeigt den Aufbau und die Verwendung einer interaktiven Shiny-App zur Predictive Maintenance.
Demo-MAT4: Predictive Maintenace mit MATLAB
zeigt den Einsatz der Sprache MATLAB und den Umgang und die Erstellung eines Live Scripts zur Predictive Maintenance.
Demo 2: Predictive Maintenance mit RapidMiner
verwendet als Datenanalyse-Tool RapidMiner und stellt die Datenanalyse mit Bausteinen vor.

Autoren, Tools und Quellen

Autoren:
 Prof. Dr. Eva Maria Kiss
 M.Sc. Anke Welz

elab2go Links:

Quellen und weiterführende Links:

[1] E. Lughofer, "Predictive Maintenance in Dynamic Systems Advanced Methods, Decision Support Tools and Real-World Applications", Springer Nature Switzerland AG 2019, ISBN 978-3-030-05645-2 (eBook)
[2] J. Levitt, "Complete guide to preventive and predictive maintenance", 2. ed. New York, NY: Industrial Press, 2011.
[3] P. Panfilov, A. Katona, "Building Predictive Maintenance Framework for Smart Environment Application Systems", 2018, doi: 10.2507/29th.daaam.proceedings.068.
[4] I. Tessaro, V.C. Mariani, L.d.S. Coelho, "Machine Learning Models Applied to Predictive Maintenance in Automotive Engine Components." Proceedings 2020, 64, 26. https://doi.org/10.3390/IeCAT2020-08508
[5] F. Balouchi, A. Bevan and R. Formston, "Detecting railway under-track voids using multi-train in-service vehicle accelerometer," 7th IET Conference on Railway Condition Monitoring 2016 (RCM 2016), 2016, pp. 1-6, doi: 10.1049/cp.2016.1194.
[6] K. Sivalingam, M. Sepulveda, M. Spring and P. Davies, "A Review and Methodology Development for Remaining Useful Life Prediction of Offshore Fixed and Floating Wind turbine Power Converter with Digital Twin Technology Perspective," 2018 2nd International Conference on Green Energy and Applications (ICGEA), 2018, pp. 197-204, doi: 10.1109/ICGEA.2018.8356292.
[7] P. Korvesis, S. Besseau and M. Vazirgiannis, "Predictive Maintenance in Aviation: Failure Prediction from Post-Flight Reports," 2018 IEEE 34th International Conference on Data Engineering (ICDE), 2018, pp. 1414-1422, doi: 10.1109/ICDE.2018.00160.
[8] L. Breiman, "Random forests. Mach. Learn." 45(1), 5–32, 2001, https://doi.org/10.1023/A:1010933404324
[9] C. Cernuda, "On the relevance of preprocessing in predictive maintenance for dynamic systems", Chapter 3, p. 53-94 in [1], 2019, PDF-Download-Link
[10] K.L. Lueth, "The Top 20 Companies Enabling Predictive Maintenance", "Predictive Maintenance Companies Landscape 2019", Artikel von iot-analytics.com, 2017/2019.

[MQTT] MQTT Spezifikation, Eclipse Mosquitto MQTT Broker, HiveMQ MQTT-Broker
[COAP] Wikipedia-Artikel "Constrained Application Protocol", RFC7252 Standard
[OPC] OPC Foundation: OPC Unified Architecture, Was ist OPC-UA? (opc-router.de), Kepware OPC-UA Server
[IBM] IBM Maximo
[HIT] Hitachi MRI - Case Studies
[SIE] Siemens Predictive Services
[TEL] Telekom Predictive Maintenance – 360 Grad-IoT Lösung
[BOS] Bosch Predictive Maintenance, Bosch Predictive Maintenance: Rexroth - Zustandsbasierende Wartung bei Hydraulik-Prüfständen
[ROL] Roland-Berger-Studie, April 2017, PDF-Download-Link
[WEF] Report des World Economic Forums 2015, PDF-Download-Link