Im Rahmen der vorliegenden Ausarbeitung soll an einem konkreten physischen – aber sehr einfach gehaltenen – Roboter untersucht werden, inwieweit Reinforcement Learning zur Steuerung eines solchen Roboters genutzt werden kann und welche Möglichkeiten und Probleme sich daraus ergeben könnten. Aufbauend auf diesem grundlegenden Verständnis könnten dann weitere Untersuchungen zur Übertragbarkeit auf komplexere und praktisch nutzbare Anwendungen erfolgen.
Die diversen Verfahren des maschinellen Lernens, die im alltäglichen Sprachgebrauch häufig unter dem Schlagwort “künstliche Intelligenz“ zusammengefasst werden, erleben aktuell eine sehr starke mediale Präsenz, welche die entsprechende Technologie und vielmehr die zum Teil spektakulären Anwendungsfälle auch einer breiten Bevölkerungsschicht außerhalb von Industrie und Technik bekannt macht. Es kann dabei schnell der Eindruck entstehen, dass es sich bei künstlicher Intelligenz um neueste technologische Entwicklungen handelt, die sogar dazu in der Lage sind, die menschliche Arbeitskraft in naher Zukunft komplett oder zumindest teilweise zu ersetzen. In den zurückliegenden fünf bis zehn Jahren beschleunigte sich die Entwicklung rasant und mit der Verfügbarkeit immer leistungsfähigerer und preisgünstigerer Hardware haben sich eine Vielzahl von Anwendungsfällen entwickelt, die im heutigen Alltagsleben selbstverständlich genutzt werden.
In der jüngsten Vergangenheit haben selbstlernende Systeme eine starke mediale Präsenz erreicht. Derartige Systeme, wie beispielsweise DeepMinds AlphaZero, die auf sogenanntem Reinforcement Learning, also bestärkendem Lernen, basieren, sind dazu in der Lage, komplexe Brettspiele, wie zum Beispiel Schach oder Go, auf einem Niveau zu beherrschen, welches das aller menschlichen Experten übertrifft. Dies zum Teil dazu noch ohne jemals umfassend darin angeleitet worden zu sein oder das Regelwerk vorab zu kennen. Die Systeme haben sich dieses Können eigenständig durch Versuch und Irrtum angeeignet. Ebenfalls erweitern sich die Einsatzgebiete dieser Verfahren zunehmend.
Eine Vielzahl der Anwendungen findet aktuell jedoch in virtuellen Umgebungen und Simulationen statt, die eine idealtypische und stark vereinfachte Umwelt repräsentieren, die vielfach an physischen Maschinen nicht zu finden ist. Eine Übertragung der Erkenntnisse und Algorithmen in die Realität kann dadurch oftmals nur schwer vorgenommen werden.
Inhaltsverzeichnis
1 Einleitung
1.1 Zielsetzung
1.2 Vorgehensweise
2 Kurze Vorstellung des Anwendungsfalls – Der Crawler-Roboter
2.1 Funktionsweise
2.2 Kurze Vorstellung der eingesetzten Komponenten
2.2.1 Der Raspberry Pi 4 Model B
2.2.2 Adafruit PCA9685 16 Kanal Servo Controller
2.2.3 Aktuatoren zur Bewegungssteuerung
2.2.4 KY-040 Inkrementaldrehgeber
2.2.5 HC-SR04 Ultraschall Abstandssensor
2.2.6 Spannungsversorgung LM2596 DC/DC-Step-Down-Wandler
2.3 Die praktische Umsetzung des Crawler-Roboters
3 Grundlagen des maschinellen Lernens
3.1 Maschinelles Lernen als ein Teilbereich künstlicher Intelligenz
3.2 Kurzer Überblick über maschinelle Lernverfahren
3.2.1 Supervised Learning – Überwachtes Lernen
3.2.2 Unsupervised Learning – Unüberwachtes Lernen
3.2.3 Reinforcement Learning – Bestärkendes Lernen
4 Reinforcement Learning als eine Form des maschinellen Lernens
4.1 Definition der grundlegenden Begriffe
4.1.1 Das Standard Framework des Reinforcement Learning
4.1.2 Agent
4.1.3 Umwelt - Environment
4.1.4 Zustände und Aktionen
4.1.5 Policy
4.1.6 Belohnung - Reward
4.1.7 Value Function
4.2 Charakterisierung verschiedener Reinforcement Learning Verfahren
4.3 Auswahl eines geeigneten Reinforcement Learning Verfahrens
4.4 Beschreibung des ausgewählten Q-Learning Algorithmus
5 Die praktische Umsetzung am Beispiel des Crawler-Roboters
5.1 Die Umsetzung des Q-Learning in einem Python Programm
5.2 Auswahl und Festlegung der Q-Learning Parameter
5.3 Beobachtung und Beschreibung des Lernvorgangs
6 Fazit
7 Ausblick
Zielsetzung & Themen der Bachelor-Thesis
Die Arbeit untersucht, inwieweit Reinforcement Learning zur Steuerung eines einfachen physischen Crawler-Roboters eingesetzt werden kann, um einen optimalen Bewegungsablauf zur Fortbewegung zu entwickeln.
- Grundlagen künstlicher Intelligenz und maschinellen Lernens
- Methodische Klassifizierung von Reinforcement Learning Algorithmen
- Konzeption und Aufbau eines physischen Crawler-Roboters auf Basis eines Raspberry Pi
- Implementierung des Q-Learning Algorithmus in Python
- Analyse und Diskussion des Lernverhaltens unter verschiedenen Umwelteinstellungen
Auszug aus dem Buch
4.1.2 Agent
Der Agent kann als der Hauptakteur des Reinforcement Learning gesehen werden. Der Begriff des Agenten-Programms wurde in der Informatik etwa Mitte der 1990er Jahre erstmalig definiert. So wird als ein autonomer Agent ein System bezeichnet, das sich in einer Umgebung befindet und zeitgleich ein Teil dieser Umgebung ist. Der Agent nimmt die Umgebung wahr und kann im Zeitverlauf auf diese einwirken. Dabei kann er seine Umwelt so beeinflussen, dass seine zukünftigen Wahrnehmungen im Einklang mit seinen eigenen Zielen stehen.
Es wird deutlich, dass es sich bei dieser Beschreibung um eine sehr allgemeine Definition eines Agenten handelt, die sich nicht nur auf Software oder Computer beschränkt, sondern eine Vielzahl technischer Systeme oder aber auch biologische Lebewesen inkludiert. Hier kann eine Parallele zu der Charakteristik des Reinforcement Learning gezogen werden, das regelmäßig als Analogie zu dem Lernen aus Versuch und Irrtum in einem biologischen Lernprozess beschrieben wird.
Zusammenfassung der Kapitel
1 Einleitung: Diese Einleitung führt in das Thema künstliche Intelligenz und maschinelles Lernen ein und erläutert die Zielsetzung sowie die methodische Vorgehensweise der Arbeit.
2 Kurze Vorstellung des Anwendungsfalls – Der Crawler-Roboter: Dieses Kapitel stellt den verwendeten physischen Roboter, seine Komponenten und die konstruktive Umsetzung anhand eines CAD-Modells vor.
3 Grundlagen des maschinellen Lernens: Hier werden theoretische Grundlagen des maschinellen Lernens gelegt und die Kategorien überwachtes, unüberwachtes und bestärkendes Lernen voneinander abgegrenzt.
4 Reinforcement Learning als eine Form des maschinellen Lernens: Es folgt eine vertiefende Betrachtung der Begriffe des Reinforcement Learnings, die Kategorisierung der Verfahren und die Entscheidung für den Q-Learning Algorithmus.
5 Die praktische Umsetzung am Beispiel des Crawler-Roboters: Dieses Kapitel beschreibt die Implementierung des Q-Learning Algorithmus in Python und die experimentelle Untersuchung des Lernvorgangs unter variierenden Parametern.
6 Fazit: Das Fazit bewertet die Ergebnisse der Arbeit und bestätigt die erfolgreiche Anwendung von Reinforcement Learning auf physische Systeme.
7 Ausblick: Der Ausblick identifiziert weiteres Potenzial für künftige Forschungsarbeiten, insbesondere in Bezug auf komplexere Umgebungen und fortschrittlichere Lernverfahren.
Schlüsselwörter
Reinforcement Learning, Künstliche Intelligenz, Maschinelles Lernen, Q-Learning, Raspberry Pi, Crawler-Roboter, Agent, Environment, Sensorik, Python, Prozessparameter, Exploration, Exploitation, Zustandsraum, Aktionsraum
Häufig gestellte Fragen
Worum geht es in dieser Arbeit grundsätzlich?
Die Bachelor-Thesis befasst sich mit der Anwendung von Reinforcement Learning, einer Unterform des maschinellen Lernens, zur Steuerung eines physischen, selbstlernenden Roboters.
Was sind die zentralen Themenfelder der Arbeit?
Die Schwerpunkte liegen auf den theoretischen Grundlagen der künstlichen Intelligenz, dem mechanischen Aufbau eines Crawler-Roboters und der softwareseitigen Implementierung von Lernalgorithmen.
Was ist das primäre Ziel der Forschungsarbeit?
Das Hauptziel besteht darin, einen Roboter mittels Reinforcement Learning so zu befähigen, dass er eigenständig einen effizienten Bewegungsablauf erlernt, um eine Strecke zurückzulegen.
Welche wissenschaftliche Methode wird primär verwendet?
Der Autor nutzt den Q-Learning Algorithmus, ein tabellenbasiertes, modellfreies Reinforcement-Learning-Verfahren, um den Roboter durch "Versuch und Irrtum" zu trainieren.
Was wird im Hauptteil der Arbeit behandelt?
Der Hauptteil gliedert sich in eine theoretische fundierte Auswahl des Lernverfahrens, die Hardware-Konzeption des Roboters und die praktische Implementierung sowie Analyse des Lernvorgangs.
Welche Schlüsselwörter charakterisieren die Arbeit am besten?
Wichtige Begriffe sind Reinforcement Learning, Q-Learning, Crawler-Roboter, Raspberry Pi und die Abwägung zwischen Exploration und Exploitation.
Warum wurde ein Raspberry Pi für den Roboter gewählt?
Die Wahl fiel auf den Raspberry Pi aufgrund seiner hohen Flexibilität, der Unterstützung gängiger Programmiersprachen wie Python und der weiten Verbreitung, was die Einbindung von Sensoren und Bibliotheken erleichtert.
Zu welchem Ergebnis kommt der Autor bezüglich des Ultraschallsensors?
Der Autor stellt fest, dass der gewählte Ultraschallsensor aufgrund von Rauschen und Messfehlern für das Training ungeeignet war, weshalb für die weiteren Untersuchungen auf den Inkrementaldrehgeber ausgewichen wurde.
Wie beeinflussen die Anzahl der Zustände den Lernvorgang?
Es zeigt sich, dass ein komplexerer Zustandsraum die Lernschwierigkeiten erhöht; eine Optimierung gelang insbesondere bei einem Zustandsraum mit acht Positionen durch eine erhöhte Anzahl an Trainingsepisoden.
- Quote paper
- Felix Wessel (Author), 2021, Reinforcement Learning bei der Bewegungssteuerung eines selbstlernenden physischen Roboters. Chancen und Grenzen bei der Nutzung künstlicher Intelligenz, Munich, GRIN Verlag, https://www.grin.com/document/1272464