Reinforcement Learning

Deep Reinforcement Learning ist ein Zweig des maschinellen Lernens, mit dem Sie Steuerungen und Entscheidungssysteme für komplexe Systeme wie Roboter und autonome Systeme implementieren können. Deep Reinforcement Learning ermöglicht die Implementierung von tiefen neuronalen Netzen, die komplexe Verhaltensweisen erlernen können, wenn sie mit dynamisch aus Simulationsmodellen generierten Daten trainiert werden. Es erfordert keinen vordefinierten Trainingsdatensatz, ob gelabelt oder nicht. Sie benötigen lediglich ein Simulationsmodell, das die Umgebung darstellt, mit der Sie interagieren und die Sie steuern möchten.

MATLAB® und Simulink® unterstützen den gesamten Workflow für Entwurf , Implementierung und Bereitstellung einer Steuerung, die auf Reinforcement Learning basiert. Sie haben folgende Möglichkeiten:

  • Einstieg in Reinforcement Learning mit Beispielen für einfache Steuerungssysteme, autonome Systeme und Robotik
  • Schneller Wechsel zwischen gängigen Reinforcement-Learning-Algorithmen zur vergleichenden Bewertung mit minimalen Anpassungen des Codes
  • Verwenden tiefer neuronaler Netze, um komplexe Reinforcement-Learning-Strategien auf der Grundlage von Bild-, Video- und Sensordaten zu definieren
  • Schnelleres Trainieren von Strategien durch parallele Ausführung mehrerer Simulationen auf lokalen Kernen oder in der Cloud
  • Bereitstellung von Reinforcement-Learning-Steuerungen auf Embedded-Geräten

Reinforcement-Learning-Agenten

Reinforcement-Learning-Agenten bestehen aus einer Strategie, die einen Eingabezustand einer Ausgabeaktion zuordnet, und einem Algorithmus, der diese Strategie aktualisiert. Bekannte Beispiele für solche Algorithmen sind Deep-Q-Netze, Actor-Critic und Deep Deterministic Policy Gradients. Der Algorithmus aktualisiert die Strategie so, dass sie das langfristige Belohnungssignal maximiert, das von der Umgebung bereitgestellt wird.

Strategien können durch tiefe neuronale Netze, Polynome und Lookup-Tabellen dargestellt werden. Dann können Sie integrierte und benutzerdefinierte Agenten als MATLAB-Objekte oder Simulink-Blöcke implementieren.

Weitere Informationen

Umgebungsmodellierung in MATLAB und Simulink

Das Training mit Reinforcement-Learning-Algorithmen ist ein dynamischer Prozess, bei dem der Agent mit seiner Umgebung interagiert. Für Anwendungen wie die Robotik und autonome Systeme kann dieses Training in der realen Welt mit tatsächlicher Hardware teuer und gefährlich sein. Daher werden für das Reinforcement Learning meist virtuelle Modelle der Umgebung eingesetzt, die Daten durch Simulationen erzeugen.

Sie können in MATLAB und Simulink ein Modell Ihrer Umgebung erstellen, das die Systemdynamik beschreibt, die Auswirkungen der Aktionen des Agenten auf diese Systemdynamik sowie eine Belohnung, mit der bewertet wird, wie gut die jeweils durchgeführte Aktion war. Ein solches Modell kann kontinuierlich oder diskret sein und kann Ihr System mit verschiedenen Genauigkeitsgraden darstellen. Außerdem können Sie Simulationen parallelisieren, um das Training zu beschleunigen. In manchen Fällen können Sie vorhandene MATLAB- und Simulink-Modelle Ihres Systems mit nur minimalen Änderungen für das Reinforcement Learning wiederverwenden.

Weitere Informationen

Beispiele und Referenzanwendungen

Implementieren Sie zum Einstieg in das Reinforcement Learning Steuerungen für Probleme wie das Ausbalancieren eines inversen Pendels, die Navigation in einer Grid World und das Ausbalancieren eines Cart-Pole-Systems. Sie können auch Systeme für Abstandsregeltempomaten (ACC) und Spurhalteassistenten für autonome Fahrzeuge entwickeln. Außerdem kann Reinforcement Learning für Robotikanwendungen wie die Trajektorienplanung und zum Lernen von Verhaltensweisen etwa bei der Fortbewegung eingesetzt werden.

Weitere Informationen