arrow arrow--cut calendar callback check chevron chevron--large cross cross--large download filter kununu linkedin magnifier mail marker menu minus Flieger phone play plus quote share

Reinforcement Learning

Im Jahr 2016 gelang dem Forscher*innenteam der Google Tochter Deepmind etwas, das bis dahin niemand für möglich gehalten hatte: Das von ihnen entwickelte Computerprogramm schlug den bisher unangefochten besten Spieler und amtierenden mehrmaligen Weltmeister Lee Sudol im Spiel Go. Diesem Ereignis ist der Film AlphaGo gewidmet. Aufgrund seiner enormen Menge an Möglichkeiten ist Go zu komplex für die bis dato gängigen Brute-Force Methoden, wie sie beispielweise im Schachcomputer Deep Blue zum Einsatz kamen. Der Erfolg gelang den Entwickler*innen durch den Einsatz von Methoden aus dem bis dahin wenig bekannten Deep Reinforcemement Learning. Doch was ist (Deep) Reinforcement Learning? Und wie kann es in der Industrie sinnvoll angewendet werden? Diesen Fragen gehe ich in diesem Beitrag nach.

Was ist Reinforcement Learning?

Machine Learning Verfahren aus den Bereichen des überwachten und unüberwachten Lernens haben eine zentrale Gemeinsamkeit: Sie haben in der Regel das Ziel, mittels einer zu minimierenden Zielfunktion statistische Zusammenhänge in einem statischen Datensatz zu erkennen und auf Basis dieser Aussagen für bisher ungesehene Daten der gleichen Art zu machen. Typische Beispiele sind hier die lineare Regression, das Clustering oder die Bild- und Objekterkennung. 

https://neurospace.io/blog/2020/08/what-is-supervised-learning/

Reinforcement Learning (bestärktes Lernen) unterscheidet sich davon fundamental, denn hierbei lernt eine KI auf Basis selbst erzeugter Erfahrung in einer (simulierten) Umgebung ein sequenzielles Entscheidungs- und Steuerungsproblem möglichst optimal zu lösen. Darunter sind alle Probleme zu verstehen, bei denen aufeinanderfolgende Entscheidungen nicht unabhängig voneinander getroffen werden können, sondern berücksichtigt werden muss, welchen Einfluss das Verhalten zum aktuellen Zeitpunkt auf die Entscheidungsgrundlage zukünftiger Situationen hat. Als Beispiel können wir hier anschaulich das autonome Fahren betrachten. Die Aufgabe der Objekterkennung ist es in diesem Fall, andere Fahrzeuge, Schilder und Personen, die sich um das Auto herum bewegen zu erkennen. Die Klassifikation dieser Objekte im Sichtfeld ist jedoch nur eine Momentaufnahme und berücksichtigt nicht die Entscheidungen für vorausgegangene Aufnahmen.  
 

https://learn.alwaysai.co/object-detection
https://arxiv.org/pdf/1906.05113.pdf

Reinforcement Learning hingegen wird bei der Steuerung des Autos eingesetzt. Hier muss in jedem Moment antizipativ mit Rücksicht auf den Verkehr entschieden werden, mehr oder weniger Gas zu geben, zu bremsen oder auszuweichen.

Entsprechend muss die KI die Sequenz der vorhergegangenen Verkehrssituationen und eigenen Steuerungsentscheidungen beachten, denn nur so kann sie Fahrtrichtungen und Geschwindigkeiten richtig beurteilen und lernen, die Folgen des eigenen Handelns richtig einzuschätzen.

Bausteine der Entwicklung

Damit ein Algorithmus geeignet Handlungsstrategie entwickeln kann, bedarf es einer Lernumgebung, oft in Form einer Simulation, welche das zu lösende Steuerungsproblem abbildet. Da diese Systeme in der echten Welt meist sehr komplex sind, stellt dies die größte Herausforderung bei der tatsächlichen Anwendung dar. 

Die Simulation für das Training besteht aus zwei zentralen Bausteinen: der Lernumgebung (Environment) und dem Algorithmus (Agent). In jedem Schritt der Simulation erhält der Agent den aktuellen Zustand der Umgebung (Observation), bildet daraus seinen internen Zustand (Agent State) und trifft auf Basis dessen eine Entscheidung für eine Handlungsoption (Action). Die durch den Agenten gewählte Aktion versetzt die Umgebung in einen neuen Zustand und sie emittiert eine numerische Belohnung (Reward), welche die Güte der Aktion bemisst. Diese Abfolge wird als Interaktionsschleife (Interaction Loop) bezeichnet.

Reinforcement Learning

Im Beispiel des autonomen Fahrens ist der Agent die steuernde KI und die Umgebung der Straßenverkehr. Die Observation besteht aus allem, was mittels Sensoren am Auto erfasst werden kann.

Der Agent State stellt in der Regel eine komprimierte Version der gesamten Simulationshistorie, bestehend aus State-Action-Reward Tupeln, dar und sollte nach Möglichkeit alle notwendigen Informationen für eine fundierte Entscheidung enthalten. 

Die Belohnungsfunktion kann vereinfacht so gebaut werden, dass sie den Agent bestraft, wenn er eine Kollision verursacht oder mit dem gesteuerten Fahrzeug anderen Verkehrsteilnehmer zu nah kommt. Der Agent muss also lernen, auf Basis des aktuellen Zustandes bewerten, ob eine Aktion gut oder schlecht im Sinne übergeordneten Ziels ist, welches durch die Belohnungsfunktion formalisiert wird.

Wie Reinforcement Learning Algorithmen lernen

Das Vorgehen, welches die Interaktionsschleife beschreibt, ist im Allgemeinen auch als Trial-and-Error Verfahren bekannt und orientiert sich stark am menschlichen Lernverhalten. Der Agent lernt durch Belohnung und Bestrafung (negative Belohnung) welche Aktion im Kontext (Agent State), der ihm gegeben ist, die bestmögliche ist.

Algorithmen im Reinforcement Learning haben das Ziel, dass der Agent Stück für Stück bessere Entscheidungen trifft und somit die Belohnung langfristig maximiert. Da die Güte einer Aktion (nicht zu verwechseln mit dem Reward) nicht vorab bekannt ist, baut ein Algorithmus im Laufe der Simulation eine Bewertungsfunktion auf, auf deren Basis die bestmögliche Aktion zum aktuellen Zustand der Simulation ausgewählt wird. Verwenden wir für Funktion zur Bewertung und Auswahl der Aktionen neuronale Netze spricht man von Deep Reinforcement Learning. Im Beispiel des autonomen Fahrens wird voraussichtlich die Aktion Bremsen einen hohen Wert haben, falls im aktuellen Zustand eine Person auf Kollisionskurs ist. Hier lässt sich der große Wert von Simulationen beobachten: Exploratives Erlernen der Steuerung eines Autos würde unter echten Bedingungen in einem großen Teil der Lernphase unvermeidlich zu Unfällen führen.

Um das Risiko zu vermeiden, dass der Agent sich zu früh auf eine Verhaltensweise (oder Strategie) festlegt und bestimmte Handlungsoptionen niemals erprobt, wird die Entscheidungsfunktion oft mit einem explorativen Zufallsfaktor ausgestattet, der im Laufe der Simulation stückweise verringert wird. Somit soll im produktiven Einsatz ein deterministisches Entscheidungsverhalten des Agents erwirkt werden. Das zugrunde liegende Problem ist bekannt als Exploration-Exploitation-Tradeoff.

https://ai-ml-analytics.com/reinforcement-learning-exploration-vs-exploitation-tradeoff/

Ein maßgeblicher Erfolgsfaktor für Reinforcement Learning Agents ist die zu optimierende Belohnungsfunktion. Belohnen wir beispielsweise kurzfristigen Erfolg zu stark, wird der Agent als Konsequenz tendenziell nach der schnellstmöglichen Belohnung streben. Beim autonomen Fahren könnte dies dazu führen, dass der Agent bei jeder Gelegenheit beschleunigt, um das Ziel schnell zu erreichen, dabei jedoch ignoriert, dass er dadurch häufiger bremsen muss, somit das Unfallrisiko steigt und öfter getankt werden muss. Ein solches Verhalten wäre offensichtlich nicht optimal. 

Bei der Konstruktion der Belohnungsfunktion muss darauf geachtet werden, dass diese eine Größe des zu steuernden Systems abbildet, deren Optimierung tatsächlich das erwünschte Verhalten bewirkt – im Beispiel wäre es das kollisionsfreie Erreichen eines Fahrtziels oder die verbrauchte Menge Sprit. Die Funktion, welche das gelernte Verhalten das Agenten schließlich abbildet, wird als „Policy“ bezeichnet. 

Das Besondere am Reinforcement Learning ist, dass der Agent allein auf Basis von Beobachtungen und den Regeln der Umgebung, in der er sich bewegt, Strategien entwickeln kann. Er generiert also selbst die Daten, mit denen er lernt, sein Verhalten zu optimieren. Dadurch können Probleme gelöst werden, für die eine Brute-Force Lösung zu rechenaufwendig ist oder für die genaue Verhaltensweisen schwer zu codieren sind. Für letzteren Fall gibt es ein anschauliches Beispiel aus dem Bereich autonomes Fahren: Forscher am MIT haben im Projekt “Socially Aware Motion Planning with Deep Reinforcement Learning” einer KI beigebracht, sich im Fußgängerverkehr an soziale Normen zu halten (z.B. rechts gehen und links überholen), ohne diese explizit vorzugeben. Ein Video zum Experiment gibt es hier.

Reinforcement Learning in der industriellen Anwendung

In der industriellen Anwendung gibt es für den Einsatz von Reinforcement Learning derzeit viel aktive Forschung. In einigen Themenfeldern sind die Ergebnisse sehr vielversprechend und haben in mehreren Fällen bereits Einzug in produktive Systeme gefunden haben. Eines der derzeitiges Hauptanwendungsfelder sind Produktionssysteme.

Reinforcement Learning in Produktion & Handel

Automatisierte Steuerungs- und Kontrollsysteme in der Produktion zählen zu den derzeit größten Anwendungsbereichen für Reinforcement Learning.

Reinforcement Learning Algorithmus

Immer kürzere Produktentwicklungszyklen und vollständig anpassbare Produkte stellen moderne Produktionssysteme vor stetig wachsende Herausforderungen, bei denen sie eine große Produktvielfalt bewältigen und dabei hohe Durchsätze ermöglichen müssen. Dabei sollen sie eine hohe Anpassungsfähigkeit bieten und robust gegenüber Prozessschwankungen und unvorhergesehenen Ereignissen sein. Um diese Herausforderungen zu meistern, wird Deep Reinforcement Learning zunehmend zur Optimierung von Produktionssystemen eingesetzt. Im Gegensatz zu anderen Methoden des maschinellen Lernens arbeitet Deep Reinforcement Learning mit kürzlich gesammelten Sensordaten in direkter Interaktion mit der Umgebung und ermöglicht so Echtzeit-Reaktionen auf Systemänderungen. 

Einen Einblick in die Entwicklungsstufen einen solchen Systems bietet der Chemiekonzern Dow im Vortrag "AlphaDow: Reinforcement Learning for Industrial Production Scheduling". Die Autor*innen liefern ein Beispiel dafür, dass Reinforcement Learning das Potential hat, den Implementierungsaufwand bzw. die Abhängigkeit von menschlicher Erfahrung zu reduzieren und in einer Vielzahl von Produktionsdomänen zu datengesteuerten und flexiblen Prozessen beizutragen. In diversen Forschungsergebnissen übertreffen die automatisierten Systeme dabei die bisher verwendeten konventionellen Methoden.

Die Möglichkeiten des Einsatzes von Reinforcement Learning im Product Lifecycle enden jedoch nicht bei der Produktion, sondern erstrecken sich über die Kontrolle von Lagerbeständen (Inventory Control) über die Optimierung von Routenplanung bis hin zur dynamischen Preisgestaltung (Dynamic Pricing).

Eine der Hauptaufgaben bei der Anwendung aktueller Forschungsergebnisse auf produktive Systeme liegt darin, die Zuverlässigkeit der Methoden zu demonstrieren und Sicherheitsaspekte unter realen Bedingungen zu analysieren und zu berücksichtigen.

Weitere Anwendungsbereiche

Ähnlich, hinsichtlich der Anforderungen an die zu Grunde liegenden Systeme, ist die Steuerung der Ausrichtung von Solar Panelen sowie die Steuerung des Kühlsystems des Rechenzentrums von Google. In beiden Fällen führte der Einsatz eines Reinforcement Learning Systems zu erhöhter Effizienz mit entsprechend reduzierten Kosten.

Ein weiterer Einsatzbereich von Reinforcement Learning sind Recommender Systeme. Ein Empfehlungssystem befindet sicher in ständiger, sequenzieller und wiederholter Interaktion mit seinen Benutzern und bietet entsprechend eine für Reinforcemenent Learning geeignete  Problemstellung. Die Algorithmen sind hier vor allem auch deshalb interessant, da sie die langfristigen Folgen von Entscheidungen berücksichtigen  und die Forschung zeigt, dass Änderungen im Empfehlungssystem langfristige, kumulative Auswirkungen auf das Nutzerverhalten haben können. Ein Beispiel in Produktion ist die Personalisierung von Titelbild Artwork für Serien von Netflix mit dem Ziel, Serien und Filme durch die geeignete Auswahl eines Titelbildes für den Nutzer interessant zu machen.

Für Data Science und Machine Learning gibt es unzählige Use Cases. Hier geht's zu unserem Portfolio:

Zusammenfassung

Der Einsatz von Reinforcement Learning ist lohnend, falls

  • ein komplexes Steuerungs- oder Kontrollproblem vorliegt
  • konventionelle Methoden hohen (manuellen) Aufwand erfordern
  • die Parameter des Systems observiert und einem automatisierten System zur Verfügung gestellt werden können
  • ein quantifizierbares Prozessziel definiert werden kann, welches das Erlernen einer optimalen Strategie ermöglicht
  • die Umgebung des Problems simuliert werden kann oder die Kosten bei explorativem Verhalten gering sind, sodass ein Trial-and-Error Verfahren durchführbar ist

Reinforcement Learning kann datengetriebene Online-Entscheidungen in Echtzeit ermöglichen und ein reaktionsgesteuertes und adaptives Systemdesign unterstützen. Durch diesen Online-Optimierungs- und Steuerungsansatz können Unternehmen die Abhängigkeit von immer knapper werdendem Humankapital begrenzen und datengesteuerte Abläufe proaktiv nutzen, um kostenintensive manuelle und expertenbasierte Prozesse zu reduzieren.
Entsprechend hoch ist das Potenzial für Effizienzsteigerung und Kostenersparnis.

 

Quellen:
http://incompleteideas.net/book/RLbook2020.pdf

https://www.tandfonline.com/doi/full/10.1080/00207543.2021.1973138

https://www.linkedin.com/pulse/reinforcement-learning-supply-chain-markus-cozowicz/

https://blog.griddynamics.com/deep-reinforcement-learning-for-supply-chain-and-price-optimization/

https://arxiv.org/abs/2204.09603

https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3935816

https://www.linkedin.com/pulse/reinforcement-learning-supply-chain-markus-cozowicz/

https://towardsdatascience.com/dynamic-pricing-using-reinforcement-learning-and-neural-networks-cc3abe374bf5

https://link.springer.com/article/10.1057/s41272-021-00285-3

https://www.datasciencecentral.com/reinforcement-learning-for-dynamic-pricing/

https://arxiv.org/abs/2205.15656

https://netflixtechblog.com/artwork-personalization-c589f074ad76

https://david-abel.github.io/papers/solarl.pdf    

https://arxiv.org/abs/2111.13609

 
Bildquellen

https://learn.alwaysai.co/object-detection

https://medium.com/analytics-vidhya/basic-terminology-reinforcement-learning-2357fd5f0e51

https://ai-ml-analytics.com/reinforcement-learning-exploration-vs-exploitation-tradeoff/

https://neurospace.io/blog/2020/08/what-is-supervised-learning/

Socially Aware Motion Planning with Deep Reinforcement Learning

https://de.mathworks.com/help/reinforcement-learning/ug/reinforcement-learning-for-control-systems-applications.html

https://arxiv.org/pdf/1906.05113.pdf