-
Die Erfindung betrifft eine Vorrichtung zum Lernen und Betreiben einer Strategie, die zum Parametrisieren eines Evolutionären Algorithmus eingerichtet ist.
-
Stand der Technik
-
Evolutionsstrategien (ES) sind stochastische, ableitungsfreie Methoden zur numerischen Lösung von Optimierungsproblemen. Sie gehören zur Klasse der evolutionären Algorithmen und des evolutionären Rechnens. Ein evolutionärer Algorithmus basiert weitgehend auf dem Prinzip der biologischen Evolution, nämlich dem wiederholten Zusammenspiel von Variation (durch Rekombination und Mutation) und Selektion: In jeder Generation (sog. Iteration) werden neue Individuen (sog. Kandidatenlösungen, x) durch Variation, meist auf stochastische Weise, der aktuellen Elternindividuen erzeugt. Dann werden einige Individuen auf der Grundlage ihrer Fitness oder ihres objektiven Funktionswertes F(x) ausgewählt, um die Eltern in der nächsten Generation zu werden. Auf diese Weise werden im Laufe der Generationen Individuen mit immer besseren Fitness generiert.
-
CMA-ES (Covariance Matrix Adaptation Evolution Strategy) ist ein evolutionärer Algorithmus zur Optimierung von kontinuierlichen ,Black-Box-Funktionen‘. Dieser Algorithmus verwendet eine besondere Art von Strategie zur numerischen Optimierung. Es werden hierfür neue Kandidatenlösungen x gemäß einer multivariaten Normalverteilung in Rn zufällig gezogen. Die evolutionäre Rekombination wird hier dadurch erreicht, dass ein angepasster Mittelwert für die Verteilung bestimmt wird. Paarweise Abhängigkeiten zwischen den Variablen in der Verteilung werden durch eine Kovarianzmatrix dargestellt. Die Kovarianzmatrix-Anpassung (CMA) ist eine Methode zur Aktualisierung der Kovarianzmatrix dieser Verteilung.
-
Zum Lernen der Stichprobenverteilung wird bei CMA-ES nur die Rangfolge zwischen den Kandidatenlösungen ausgenutzt, und weder Ableitungen noch die Funktionswerte selbst werden von der Methode benötigt.
-
Vorteile der Erfindung
-
Die gegenwärtige Erfindung hat dem gegenüber den Vorteil, dass automatisiert die multivariate Normalverteilung situationsabhängig angepasst wird, wodurch CMA-ES übertroffen werden kann. Ferner hat sich aus Experimenten herausgestellt, dass die Generalisierungseigenschaft des erfindungsgemäßen Ansatzes hoch ist und das Verfahren direkt für ein breites Spektrum unterschiedlichster, ungesehene weitere Anwendungsfälle angewendet werden kann, ohne dass eine Anpassung der Strategie für die neuen Anwendungsfälle notwendig ist.
-
Ferner hat sich herausgestellt, dass sich das erfindungsgemäße Vorgehen auch auf weitere Evolutionäre Algorithmen, wie z.B. Differential Evolution, anwenden lässt.
-
Offenbarung der Erfindung
-
In einem ersten Aspekt betrifft die Erfindung ein computerimplementiertes Verfahren zum Lernen einer Strategie, welche zumindest einen Parameter eines Evolutionären Algorithmus, insbesondere eines CMA-ES oder Differential Evolution Algorithmus, optimal anpasst, umfassend folgende Schritte:
- Initialisieren der Strategie, welche abhängig von Zustandsinformationen über eine Probleminstanz eine Parametrisierung des Parameters ermittelt. Daraufhin folgt ein Erlernen der Strategie mittels bestärkendes Lernens (engl. reinforcement learning). Hierbei wird aus Interaktionen des CMA-ES Algorithmus mit der Probleminstanz und mit einer Parametrisierung des Parameters, die mittels der Strategie abhängig von den Zustandsinformationen (S) bestimmt wurde, und einem Belohnungssignal (R) gelernt, welche Parametrisierung für mögliche Zustandsinformationen optimal ist.
-
Vorzugsweise ist der Parameter eine Schrittweite des CMA-ES Algorithmus, eine Anzahl (A) von Kandidatenlösungen (engl. population-size), eine Mutationsrate (engl. mutation-rate) und/oder eine Kreuzungsrate (engl. crossover-rate).
-
Es wird vorgeschlagen, dass die Zustandsinformationen die gegenwärtige Parametrisierung des Parameters und eine kumulative Weglänge und/oder zumindest einen Wert, der eine Differenz zwischen Funktionswerten einer zu optimierenden Funktion der Probleminstanz der gegenwärtigen Iteration und vorhergehenden Iterationen umfassen.
-
Vorzugsweise enthalten die Zustandsinformationen die Parametrisierungen für eine Mehrzahl von vorhergehenden Interaktionen. Besonders bevorzugt, der letzten 40 Iterationen.
-
Es wird weiterhin vorgeschlagen, dass die Zustandsinformation auch Kontextinformationen über die Probleminstanz, insbesondere zu optimierende Funktion, umfasst. Der Vorteil hierbei ist, dass die Strategie zwischen unterschiedlichen Probleminstanzen unterscheiden kann, wodurch für die einzelnen Probleminstanzen bessere Resultate erzielt werden können.
-
Die Parametrisierung ist der Wert, welcher dem Parameter zugewiesen wurde.
-
Weiterhin wird vorgeschlagen, dass das bestärkende Lernen unter Verwendung von ,Guided Policy Search‘ (GPS) verwendet wird, wobei mittels einer vorgebbaren Heuristik Parametrisierungen des Parameters für die Probleminstanz bestimmt und daraus eine Mehrzahl von Verläufen der Parametrisierungen des Parameters aufgezeichnet werden, wobei aus den Verläufen mittels GPS ein Lehrer zum Lernen der Strategie bereitgestellt wird.
-
In einem zweiten Aspekt der Erfindung wird ein Verfahren zum Betreiben der gelernten Strategie gemäß dem ersten Aspekt der Erfindung vorgeschlagen. Hierfür werden die Zustandsinformationen für die vorliegende Probleminstanz bestimmt. Die gelernte Strategie ermittelt abhängig von den Zustandsinformationen eine Parametrisierung, wobei CMA-ES mit dieser Parametrisierung für zumindest eine Iteration angewendet wird. Vorzugsweise werden die zwei Schritte abwechselnd wiederholt, bis ein Optimum erreicht wird.
-
Es wird vorgeschlagen, dass die Probleminstanz ein Trainingsverfahren für maschinelles Lernen ist, wobei mittels CMA-ES unter Verwendung der Strategie Hyperparameter des Trainingsverfahrens optimiert werden, oder wobei die Probleminstanz eine Fahrzeugroutenoptimierung oder eine Auftragsplanung in der Fertigung/Produktion ist und mittels CMA-ES unter Verwendung der Strategie die Route oder die Auftragsplanung optimiert werden. Die Auftragsplanung kann zum Beispiel eine Abarbeitung von Produktionsschritten sein.
-
Weiterhin wird vorgeschlagen, dass unter Verwendung des optimierten Hyperparameters ein tiefes neuronales Netz angelernt wird. Vorzugsweise wird dieses neuronale Netz derart angelernt, dass dieses abhängig von einer erfassten Sensorgröße eines Sensors eine Ausgangsgröße ermittelt, die daraufhin zum Ermitteln einer Steuergröße mittels einer Steuereinheit verwendet werden kann.
-
Die Steuergröße kann zum Steuern eines Aktors eines technischen Systems verwendet werden. Das technische System kann zum Beispiel eine zumindest teilautonome Maschine, ein zumindest teilautonomes Fahrzeug, ein Roboter, ein Werkzeug, eine Werkmaschine oder ein Flugobjekt wie eine Drohne sein. Die Eingangsgröße kann bspw. abhängig von erfassten Sensordaten ermittelt und bereitgestellt werden. Die Sensordaten können von einem Sensor, wie z.B. einer Kamera, des technischen Systems erfasst oder alternativ von extern empfangen werden.
-
In weiteren Aspekten betrifft die Erfindung eine Vorrichtung und ein Computerprogramm, die jeweils eingerichtet sind, die obigen Verfahren auszuführen und ein maschinenlesbares Speichermedium, auf dem dieses Computerprogramm gespeichert ist.
-
Nachfolgend werden Ausführungsformen der Erfindung unter Bezugnahme auf die beiliegenden Zeichnungen näher erläutert. In den Zeichnungen zeigen:
- 1 schematisch eine Vorrichtung einer Ausführungsform der Erfindung;
- 2 schematisch eines Flussdiagramms einer Ausführungsform der Erfindung;
- 3 schematisch ein Ausführungsbeispiel zur Steuerung eines wenigstens teilautonomen Roboters;
- 4 schematisch ein Ausführungsbeispiel zur Steuerung eines Fertigungssystems;
- 5 schematisch ein Ausführungsbeispiel zur Steuerung eines Zugangssystems;
- 6 schematisch ein Ausführungsbeispiel zur Steuerung eines Überwachungssystems;
- 7 schematisch ein Ausführungsbeispiel zur Steuerung eines persönlichen Assistenten;
- 8 schematisch ein Ausführungsbeispiel zur Steuerung eines medizinisch bildgebenden Systems;
-
Beschreibung der Ausführungsbeispiele
-
Zwei Hauptprinzipien für die Anpassung von Parametern der Suchverteilung werden im CMA-ES-Algorithmus ausgenutzt.
-
Erstens, ein Maximum-Likelihood-Prinzip, das auf der Idee beruht, die Wahrscheinlichkeit erfolgreicher Kandidatenlösungen und Suchschritte zu erhöhen. Der Mittelwert der Verteilung wird so aktualisiert, dass die Wahrscheinlichkeit von zuvor erfolgreichen Kandidatenlösungen maximiert wird. Die Kovarianzmatrix der Verteilung wird (inkrementell) so aktualisiert, dass die Wahrscheinlichkeit von zuvor erfolgreichen Suchschritten erhöht wird. Beide Aktualisierungen können als ein natürlicher Gradientenabstieg interpretiert werden.
-
Zweitens werden zwei Pfade der zeitlichen Entwicklung des Verteilungsmittels der Strategie aufgezeichnet, die als Such- oder Entwicklungspfade bezeichnet werden. Diese Pfade enthalten signifikante Informationen über die Korrelation zwischen aufeinander folgenden Schritten. Insbesondere wenn aufeinander folgende Schritte in eine ähnliche Richtung unternommen werden, werden die Evolutionspfade lang. Die Evolutionspfade werden auf zwei Arten ausgenutzt. Der eine Pfad wird für das Kovarianzmatrix-Anpassungsverfahren anstelle einzelner erfolgreicher Suchschritte verwendet und ermöglicht eine möglicherweise viel schnellere Varianzerhöhung der günstigen Richtungen. Der andere Pfad wird zur Durchführung einer zusätzlichen Schrittgrößensteuerung verwendet. Diese Schrittgrößensteuerung zielt darauf ab, aufeinander folgende Bewegungen des Verteilungsmittels in Erwartung orthogonal zu machen. Die Schrittgrößensteuerung verhindert wirksam eine vorzeitige Konvergenz, erlaubt jedoch eine schnelle Konvergenz zu einem Optimum.
-
Mathematisch kann CMA-ES wie folgt als Optimierungsalgorithmus einer kontinuierlichen Funktion f: Rn → R durch zufälliges Ziehen von Kanidantenlösungen von einer multivarianten Normalverteilung N(m,σ2c) ausgedückt werden, wobei m dem Erwartungswert, σ2 der Schritweite und c der Kovarianzmatrix entspricht.
-
Die Kovarianzmatrix kann als Identitätsmatrix und m sowie σ2 beispielsweise durch zufällige Werte initialisiert werden oder durch einen Nutzer vorgegeben werden Daraufhin aktualisiert CMA-ES iterativ die Normalverteilung N, um die Wahrscheinlichkeit für erfolgreiche Kandidatenlösungen zu erhöhen.
-
Für jede Iteration, auch Generation g genannt, werden zuerst λ Kanidatenlösungen x(
g+1)gezogen, wobei nur die besten µ Kandidatenlösungen als Eltern der nächsten Generation g + 1 verwendet werden. Die Anzahl λ der Kandidatenlösungen x kann inital auf einen vorgegebene Wert gesetzt werden. Daraufhin wird der Erwartungswert m wie folgt angepasst:
wobei c
m eine Lernrate ist und beispielhaft gleich 1 gesetzt werden kann.
-
Daraufhin wird die Schrittweite c wie folgt angepasst, auch bekannt unter Cumulative Step Length Adaptation (CSA):
wobei c
σ < 1 eine weitere Lernrate ist und d
σ ≈ 1 ein Dämpfungsparameter ist, sowie
ein konjungierter Evolutionspfad der Generation g + 1 ist:
-
Es sei angemerkt, dass es eine Vielzahl an weiteren, unterschiedlichen Möglichkeiten gibt, die Schrittweite σ anzupassen und es im allg. sinnvoll sein kann, zwischen diesen unterschiedlichen Möglichkeiten beim Ausführen von CMA-ES hin und her zu wechseln. Für die Anpassung der Kovarianzmatrix c wird auf die Literatur zu CMA-ES verwiesen.
-
Um die Performance von CMA-ES zu erhöhen, wird nun vorgeschlagen, dass die Anpassung der Schrittweite σ(g+1) gemäß (Gl. 2) abhängig von Zustandsinformationen sg durchgeführt wird, wobei hierfür eine Strategie (engl. policy) π(sg) verwendet wird. D.h. es wird eine Strategie π gesucht, die eine (beliebige) Kostenfunktion minimiert, wobei die Kostenfunktion L charakterisiert wie gut CMA-ES unter Verwendung der Strategie abschneidet.
-
Dies kann wie folgt mathematisch dargestellt werden:
-
Es wird vorgeschlagen, die Strategie mittels bestärkendem Lernen (engl. reinforcement learning) zu bestimmen. Hierfür wird ein Aktionsraum (engl. action space) festgelegt, welcher bevorzugt kontinuierlich ist und mögliche Werte der Schrittweite σ(g) aufweist.
-
Die Zustandsinformation sg kann folgende Zustände umfassen:
- - die gegenwärtige Schrittweite σ(g);
- - der gegenwärtige Pfad
und/oder
- - Differenzen der Werte der kontinuierlichen, zu optimierenden Funktion f aus zumindest der Generation (g) und (g - 1).
-
Vorzugsweise umfasst die Zustandsinformation eine Historie von einer Mehrzahl von vorherigen Schrittweiten. Besonders bevorzug werden hierfür die letzten 40 Schrittweiten verwendet. Zusätzlich kann auch eine Historie der Differenzen des gegenwärtigen Funktionswertes der zu optimierenden Funktion f aus Generation (g) zu der Mehrzahl der Werten aus vorherigen Generationen hinzugefügt werden. Falls nicht ausreichend vergangene Werte für die Historien vorhanden sind, können diese z.B. mit Nullen aufgefüllt werden.
-
Es wird vorgeschlagen, dass die Kostenfunktion L der negative Funktionswert f(x) desjenigen Kandidaten ist, der am besten innerhalb der gegenwärtigen Iteration abgeschnitten hat. Dies hat den Vorteil, dass die sogen. any-time performance optimiert wird.
-
In den nachfolgenden Ausführungsbeispielen wird vorgestellt, wie die Probeneffizienz (engl. sample efficency) deutlich verbessert werden kann. Der Grundgedanke hierbei ist, dass die Strategie nicht von null an gelernt wird, sondern dass ihr ein Lehrer beiseitegestellt wird. Simulationen haben gezeigt, dass zum Lernen der Strategie mit reinforcement learning etwa 10 000-mal CMA-ES ausgeführt werden muss, wenn jedoch der Lehrer eingebunden wird, dann kann sich dieser Wert auf bis zu 1100 CMA-ES Ausführungen reduzieren. Folglich müssen weniger Interaktionen des CMA-ES Algorithmus mit seiner Umgebung durchgeführt werden.
-
In einem ersten Ausführungsbeispiel wird der Lehrer in Form von einer sich selbst anpassenden Heuristik (engl. self-adaptive heuristic) verwendet, wobei als Heuristik die Gleichung (Gl. 2) verwendet wird. Es sei angemerkt, dass auch andere Gleichungen zur Bestimmung der Schrittweite alternativ zur Gleichung (Gl. 2) als Heuristik verwendet werden können, wie z.B. eine ,two-point step-size adaptation‘ .
-
In einem bevorzugten Ausführungsbeispiel liegt der Lehrer in Form von einer leitenden Trajektorie (engl. guiding trajectory) vor, auch bekannt unter der Bezeichnung ,guided policy search‘ (GPS). Hierbei wird die Strategie mittels überwachendem Lernen so angepasst, dass deren ausgegebene Trajektorie der leitenden Trajektorie sehr ähnlich ist.
-
Für mehr Details über GPS: Levine, S., Abbeel, P.: Learning neural network policies with guided policy search under unknown dynamics. In: Ghahramani, Z., Welling, M., Cortes, C., Lawrence, N., Weinberger, K. (eds.) Proceedings of the 28th International Conference on Advances in Neural Information Processing Systems (NeurlPS'14). pp. 1071{1079 (2014), online abrufbar: https://papers.nips.cc/paper/5444-learning-neural-network-policies-with-guided- policy-search-under-unknown-dynamics.pdf. Oder: Levine, S., Koltun, V.: Guided policy search. In: Dasgupta, S., McAllester, D. (eds.) Proceedings of the 30th International Conference on Machine Learning (ICML'13). pp. 1 (2013), online abrufbar: http://proceedings.mlr.press/v28/levinel3.pdf.
-
Es wird vorgeschlagen, dass die von CMA-ES bestimmten Schrittweiten σ aus nacheinander folgenden Generationen g zusammengefasst als leitende Trajektorien für GPS verwendet werden. D.h. es werden eine Mehrzahl von leitende Trajektorien bestimmt, aus welchen dann ein Lehrer erstellt wird, vgl. oben genannte Dokumente zu GPS. Der Lehrer ist bei GPS eine ,Lehrerverteilung‘ (GPS: „trajectory distribution“/ „guiding distribution“), die derart bestimmt wird, dass diese die Belohnung maximiert und insbesondere eine Abweichung zu der Strategie π minimiert wird. Da GPS den Lehrer im Laufe der Zeit aktualisiert, um die Belohnung zu verbessern, ist es wahrscheinlich, dass sich der Lehrer im Laufe der Zeit von den bestimmten Schrittweiten nach CMA-ES (insbesondere nach Gleichung (Gl. 2)) entfernt, da nur der Schüler (die Strategie π) und der Lehrer durch GPS gezwungen sind, nahe beieinander zu bleiben. Wenn sowohl Lehrer als auch Schüler zu weit von CMA-ES bestimmten Schrittweiten σ abweichen, kann es sein, dass die gelernte Strategie π das Verhalten der CMA-ES bestimmten Schrittweiten σ Fällen nicht wiederherstellen kann.
-
Die Erfinder schlagen daher vor, zusätzlich zu dem Lehrer eine weitere gesampelte Trajektorie der von CMA-ES bestimmten Schrittweiten σ zu verwenden, um eine vielfältigere Lehrerfahrung zu gewinnen. Es kann also anstatt den Student durch ein hartes Divergenzkriterium zu dem Lehrer zu beschränken, um nicht allzu weit von den Trajektorien des Lehrers entfernt zu sein, ein weiter gesampelter Verlauf der von CMA-ES bestimmten Schrittweiten σ als Trajektorie verwendet werden. Im Folgenden auch als zusätzlicher Lehrer bezeichnet. Der zusätzliche Lehrer kann, wie oben für den Lehrer beschrieben, ermittelt werden.
-
Um den zusätzlichen Lehrer mit optimaler Wirkung einzusetzen, wird vorgeschlagen, dass GPS durch die Einführung einer Abtastrate erweitert wird. Die Abtastrate charakterisiert, zu welchem Anteil GPS die Lehrerlaufbahn und den zusätzlichen Lehrer zum Lernen der Strategie verwendet werden. Es kann gesagt werden, dass die Abtastrate mitbestimmt, in wie weit die Strategie dem Vorgehen von CMA-ES ähnelt. Experimente haben gezeigt, dass eine Abtastrate von 0.3 für den zusätzlichen Lehrer die besten Ergebnisse unabhängig von der Art der Funktion f erzielt. Dies bedeute in anderen Worten, das während des Trainings Trajektorienproben mit einer Wahrscheinlichkeit von 0.7 der Lehrer verwendet wird und mit einer Wahrscheinlichkeit von 0.3 Trajektorienproben vom zusätzliche Lehrer entnommen werden.
-
Es sei angemerkt, dass der Lehrer und/oder zusätzliche Lehrer auch eine andere Heuristik sein kann, die die Schrittweite für CMA-ES bestimmt.
-
Schließlich sei angemerkt, dass zur Sicherstellung der Exploration während des Lernens die Anfangsschrittgrößenwerte und -werte für den Mittelwert der Ausgangsverteilung für die Funktionen im Trainingssatz zufällig aus einer einheitlichen Verteilung entnommen werden.
-
Vorzugsweise wird als Strategie π ein neuronales Netzwerk bestehend aus zwei verborgenen Ebenen mit jeweils 50 verborgenen Einheiten und ReLu-Aktivierungen verwendet.
-
Es sei angemerkt, dass nicht nur die Schrittweite, sondern auch weitere Parameter wie z.B. die Größe der Population von CMA-ES anhand von der Strategie angepasst werden kann, wenn diese auch dafür optimiert wurde.
-
Vorzugsweise werden die Parameter initial mittels SMAC vorab bestimmt, um eine geeignete Initialisierung zu erhalten.
-
SMAC wird in der Veröffentlichung Hutter, F., Hoos, H., Leyton-Brown, K.: Sequential model-based optimization for general algorithm conguration. In: Coello, C. (ed.) Proceedings of the Fifth International Conference on Learning and Intelligent Optimization (LION'11). Lecture Notes in Computer Science, vol. 6683, pp. 507 (2011) beschrieben.
-
1 zeigt beispielhaft eine Vorrichtung zum Ausführen des eben beschriebenen Verfahrens sowie zum Betreiben der Strategie π. Der Agent 10 für bestärkendes Lernen erhält zum einen die Zustandsinformation S und ein Belohnungssignal (engl. reward signal) R und gibt eine Aktion A aus. Die Aktion A entspricht dann der Schrittweite σ. Während des Anlernens des Agenten 10 wird GPS durchgeführt, um die Strategie π abhängig von der Zustandsinformation S und dem Belohnungssignal B zu erlernen. Während des Betreibens des Agenten 10 wird die Strategie angewendet, d.h. abhängig von der Zustandsinformation S die Aktion A bestimmt.
-
Die Zustandsinformation S und das Belohnungssignal R erhält der Agent 10 von einer Umwelt 11. Die Umwelt 11 kann hier folgende Komponenten aufweisen: Einen Belohnungssignalerzeuger 13, einen Interner-Zustandsermittler 12, sowie CMA-ES angewendet auf eine Probleminstanz 14.
-
Der Belohnungssignalerzeuger 13 kann abhängig von der Zustandsinformation S und vorzugsweise von der Aktion A eine Belohnungssignal R berechnen, wie oben bereits erläutert. Der Zustandsermittler 12 bestimmt die oben genannten Zustände und insbesondere den Lehrer sowie der zusätzliche Lehrer. Gemäß der Aktion A wird CMA-ES für die Probleminstanz 14 konfiguriert und dessen regelmäßigen Schritte ausgeführt: „Erzeugen Kandidaten der nachfolgenden Generation“, „Bewerten der Fitness“, „Anpassen des Mittelwertes m nach Gl. 1“ und „Anpassen der Kovarianzmatrix c“.
-
Ferner zeigt 1 einen Recheneinheit 15, die eingerichtet ist, die Berechnung für diese Vorrichtung auszuführen und einen Speicher 16.
-
2 zeigt schematisch ein Flussdiagramm 20 einer Ausführungsform des erfindungsgemäßen Verfahrens.
-
Das Verfahren beginnt mit Schritt S21. Hierbei wird für eine gegebene Probleminstanz 14 CMA-ES angewendet und die Schrittweite σ ermittelt und über alle Generationen aufgezeichnet. Der Zustandsermittler 12 kann hierfür eingesetzt werden.
-
Daraufhin folgt Schritt S22, ein Initialisieren der Strategie π. Die Strategie kann bspw. wie bereits erwähnt ein neuronales Netz sein, welches abhängig von der Zustandsinformation die Schrittweite σ ermittelt und dessen Parameter, insbesondere Gewicht, zufällig initialisiert.
-
Daraufhin folgt Schritt S23. In diesem Schritt wird das belohnende Lernen (engl. reinforcement learning) angewendet, um die Strategie π zu optimieren. Dies kann entweder dadurch geschehen, dass der Agent 10 die Probleminstanz 14 exploriert und dabei lernt, wie dieser die Aktionen A abhängig von Zustandsinformation S zu wählen hat, um ein möglichst starkes Belohnungssignal R oder Summe von Belohnungssignalen zu erhalten. Die Zustandsinformation S kann bspw. über den Zustandsermittler 12 erhalten werden.
-
Nach Beendigung von Schritt S23 folgt Schritt S24. Nachdem die Strategie π angelernt wurde, kann diese verwendet werden, um eine neue Probleminstanz zu lösen.
-
In einem Ausführungsbeispiel der Erfindung kann die Probleminstanz 14 eine Hyperparameter Optimierung sein. Hierbei kann mittels CMA-ES und der Strategie Parametrisierungen für die Hyperparameter optimiert werden. Die Hyperparameter Optimierung kann beispielsweise für Hyperparameter eines Lernalgorithmus für maschinelles Lernen verwendet werden. Ein Hyperparameter kann hierbei eine Lernrate oder eine Gewichtung eines Regularisierungsterms in einer Kostenfunktion, die von dem Lernalgorithmus verwendet wird, sein. Wird z.B. die Lernrate optimiert, dann kann als zusätzlicher Lehrer für GPS als Heuristik z.B. verwendet werden: Kosinus-Abkühlung (engl. cosine-annealing), eine exponentiell abnehmende Lernrate (engl. exponential-decaying learning rate), oder eine schrittweise abnehmende Lernrate (engl. step-wise decaying learning rate).
-
Vorzugsweise wird der Lernalgorithmen für maschinelles Lernen zum Anlernen eines maschinellen Lernsystems, insbesondere ein neuronales Netz, verwendet, welches z.B. für computerbasiertes Sehen (engl. computer vision) verwendet wird. Also für z.B. eine Objekterkennung oder Objektlokalisierung oder semantische Segmentierung.
-
In einem weiteren Ausführungsbeispiel kann die Probleminstanz 14 eine Fahrzeug-Routenführung (engl. Vehicle Routing) sein. Hierbei wird mittels CMA-ES und der Strategie π eine Route für ein Fahrzeug bestimmt.
-
Andere Probleminstanzen können z.B. Zeitplanungs- und Terminierungsprobleme sein. So kann bspw. bestimmt werden, welche Produktionsmaschine welchen Produktions-/Fertigungsauftrag annimmt und ausführt.
-
Es sei angemerkt, dass das oben offenbarte Prinzip des Verwendens einer Strategie zur Verbesserung eines evolutionären Algorithmus auf weitere evolutionäre Algorithmen angewendet werden kann. Zum Beispiel kann anstatt CMA-ES ein Differential Evolution (DE) Algorithmus verwendet werden. Hierbei kann dann mittels der Strategie Differential Weight von Differential Evolution (DE) angepasst werden. Wenn zum Erlernen der Strategie GPS verwendet wird, dann können folgende Heuristiken als Lehrer/zusätzlicher Lehrer verwendet werden: DE-APC, ADP, SinDE, DE-random oder SaMDE.
-
Das oben bereits erwähnte maschinelle Lernsystem, welches unter Verwendung des erfindungsgemäßen Verfahrens angelernt wurde, kann wie folgt verwendet werden:
- In vorzugsweise regelmäßigen zeitlichen Abständen wird eine Umgebung mittels eines Sensors, insbesondere einem bildgebenden Sensor wie einem Videosensor, erfasst, der auch durch eine Mehrzahl von Sensoren gegeben sein kann, beispielsweise eine Stereokamera. Auch andere bildgebende Sensoren sind denkbar, wie beispielsweise Radar, Ultraschall oder Lidar. Auch eine Wärmebildkamera ist denkbar. Das Sensorsignal S - bzw. im Fall mehrerer Sensoren je ein Sensorsignal S - des Sensors wird an ein Steuerungssystem übermittelt. Das Steuerungssystem empfängt somit eine Folge von Sensorsignalen S. Das Steuerungssystem ermittelt hieraus Ansteuersignale A, welche an einen Aktor übertragen werden.
-
Das Steuerungssystem empfängt die Folge von Sensorsignalen S des Sensors in einer optionalen Empfangseinheit, die die Folge von Sensorsignalen S in eine Folge von Eingangsbildern x umwandelt (alternativ kann auch unmittelbar je das Sensorsignal S als Eingangsbild x übernommen werden). Das Eingangsbild x kann beispielsweise ein Ausschnitt oder eine Weiterverarbeitung des Sensorsignals S sein. Das Eingangsbild x umfasst einzelne Frames einer Videoaufzeichnung. Mit anderen Worten wird Eingangsbild x abhängig von Sensorsignal S ermittelt. Die Folge von Eingangsbildern x wird einem maschinellen Lernsystem, im Ausführungsbeispiel einem künstlichen neuronalen Netz, zugeführt.
-
Das künstliche neuronale Netz ermittelt aus den Eingangsbildern x Ausgangsgrößen y. Diese Ausgangsgrößen y können insbesondere eine Klassifikation und/oder semantische Segmentierung der Eingangsbilder x umfassen. Ausgangsgrößen y werden einer optionalen Umformeinheit zugeführt, die hieraus Ansteuersignale A ermittelt, welche dem Aktor zugeführt werden, um den Aktor 10 entsprechend anzusteuern. Ausgangsgröße y umfasst Informationen über Objekte, die der Sensor erfasst hat.
-
Der Aktor empfängt die Ansteuersignale A, wird entsprechend angesteuert und führt eine entsprechende Aktion aus.
-
3 zeigt, wie das Steuerungssystem 40 zur Steuerung eines wenigstens teilautonomen Roboters, hier eines wenigstens teilautonomen Kraftfahrzeugs 100, eingesetzt werden kann.
-
Bei dem Sensor 30 kann es sich beispielsweise um einen vorzugsweise im Kraftfahrzeug 100 angeordneten Videosensor handeln.
-
Das künstliche neuronale Netz 60 ist eingerichtet, aus den Eingangsbildern x Objekte sicher zu identifizieren.
-
Bei dem vorzugsweise im Kraftfahrzeug 100 angeordneten Aktor 10 kann es sich beispielsweise um eine Bremse, einen Antrieb oder eine Lenkung des Kraftfahrzeugs 100 handeln. Das Ansteuersignal A kann dann derart ermittelt werden, dass der Aktor oder die Aktoren 10 derart angesteuert wird, dass das Kraftfahrzeug 100 beispielsweise eine Kollision mit den vom künstlichen neuronalen Netz 60 sicher identifizierten Objekte verhindert, insbesondere, wenn es sich um Objekte bestimmter Klassen, z.B. um Fußgänger, handelt.
-
Alternativ kann es sich bei dem wenigstens teilautonomen Roboter auch um einen anderen mobilen Roboter (nicht abgebildet) handeln, beispielsweise um einen solchen, der sich durch Fliegen, Schwimmen, Tauchen oder Schreiten fortbewegt. Bei dem mobilen Roboter kann es sich beispielsweise auch um einen wenigstens teilautonomen Rasenmäher oder einen wenigstens teilautonomen Putzroboter handeln. Auch in diesen Fällen kann das Ansteuersignal A derart ermittelt werden, dass Antrieb und/oder Lenkung des mobilen Roboters derart angesteuert werden, dass der wenigstens teilautonome Roboter beispielsweise eine Kollision mit vom künstlichen neuronalen Netz 60 identifizierten Objekten verhindert.
-
In weiteren bevorzugten Ausführungsformen umfasst das Steuerungssystem 40 eine Ein- oder Mehrzahl von Prozessoren 45 und wenigstens ein maschinenlesbares Speichermedium, auf dem Anweisungen gespeichert sind, die dann, wenn sie auf den Prozessoren 45 ausgeführt werden, das Steuerungssystem 40 veranlassen, das erfindungsgemäße Verfahren auszuführen.
-
In alternativen Ausführungsformen ist alternativ oder zusätzlich zum Aktor 10 eine Anzeigeeinheit 10a vorgesehen.
-
Alternativ oder zusätzlich kann mit dem Ansteuersignal A die Anzeigeeinheit 10a angesteuert werden, und beispielsweise die ermittelten sicheren Bereiche dargestellt werden. Auch ist es beispielsweise beim einem Kraftfahrzeug 100 mit nicht automatisierter Lenkung möglich, dass die Anzeigeeinheit 10a mit dem Ansteuersignal A derart angesteuert wird, dass sie ein optisches oder akustisches Warnsignal ausgibt, wenn ermittelt wird, dass das Kraftfahrzeug 100 droht, mit einem der sicher identifizierten Objekte zu kollidieren.
-
4 zeigt ein Ausführungsbeispiel, in dem das Steuerungssystem 40 zur Ansteuerung einer Fertigungsmaschine 11 eines Fertigungssystems 200 verwendet wird, indem ein diese Fertigungsmaschine 11 steuernder Aktor 10 angesteuert wird. Bei der Fertigungsmaschine 11 kann es sich beispielsweise um eine Maschine zum Stanzen, Sägen, Bohren und/oder Schneiden handeln.
-
Bei dem Sensor 30 kann es sich dann beispielsweise um einen optischen Sensor handeln, der z.B. Eigenschaften von Fertigungserzeugnissen 12a, 12b erfasst. Es ist möglich, dass diese Fertigungserzeugnisse 12a, 12b beweglich sind. Es ist möglich, dass der die Fertigungsmaschine 11 steuernde Aktor 10 abhängig von einer Zuordnung der erfassten Fertigungserzeugnisse 12a, 12b angesteuert wird, damit die Fertigungsmaschine 11 entsprechend einen nachfolgenden Bearbeitungsschritt des richtigen der Fertigungserzeugnisses 12a, 12b ausführt. Es ist auch möglich, dass durch Identifikation der richtigen Eigenschaften desselben der Fertigungserzeugnisse 12a, 12b (d.h. ohne eine Fehlzuordnung) die Fertigungsmaschine 11 entsprechend den gleichen Fertigungsschritt für eine Bearbeitung eines nachfolgenden Fertigungserzeugnisses anpasst.
-
5 zeigt ein Ausführungsbeispiel, bei dem das Steuerungssystem 40 zur Steuerung eines Zugangssystems 300 eingesetzt wird. Das Zugangssystem 300 kann eine physische Zugangskontrolle, beispielsweise eine Tür 401 umfassen. Videosensor 30 ist eingerichtet ist, eine Person zu erfassen. Mittels des Objektidentifikationssystem 60 kann dieses erfasste Bild interpretiert werden. Sind mehrere Personen gleichzeitig erfasst, kann durch eine Zuordnung der Personen (also der Objekte) zueinander beispielweise die Identität der Personen besonders zuverlässig ermittelt werden, beispielsweise durch eine Analyse ihrer Bewegungen. Der Aktor 10 kann ein Schloss sein, dass abhängig vom Ansteuersignal A die Zugangskontrolle freigibt, oder nicht, beispielsweise die Tür 401 öffnet, oder nicht. Hierzu kann das Ansteuersignal A abhängig von der der Interpretation des Objektidentifikationssystem 60 gewählt werden, beispielsweise abhängig von der ermittelten Identität der Person. An Stelle der physischen Zugangskontrolle kann auch eine logische Zugangskontrolle vorgesehen sein.
-
6 zeigt ein Ausführungsbeispiel, bei dem das Steuerungssystem 40 zur Steuerung eines Überwachungssystems 400 verwendet wird. Von dem in 5 dargestellten Ausführungsbeispiel unterscheidet sich dieses Ausführungsbeispiel dadurch, dass an Stelle des Aktors 10 die Anzeigeeinheit 10a vorgesehen ist, die vom Steuerungssystem 40 angesteuert wird. Beispielsweise kann vom künstlichen neuronalen Netz 60 zuverlässig eine Identität der vom Videosensor 30 aufgenommenen Gegenstände ermittelt werden, um abhängig davon z.B. darauf zu schließen, welche verdächtig werden, und das Ansteuersignal A dann derart gewählt werden, dass dieser Gegenstand von der Anzeigeeinheit 10a farblich hervorgehoben dargestellt wird.
-
7 zeigt ein Ausführungsbeispiel, bei dem das Steuerungssystem 40 zur Steuerung eines persönlichen Assistenten 250 eingesetzt wird. Der Sensor 30 ist bevorzugt ein optischer Sensor, der Bilder einer Geste eines Nutzers 249 empfängt.
-
Abhängig von den Signalen des Sensors 30 ermittelt das Steuerungssystem 40 ein Ansteuersignal A des persönlichen Assistenten 250, beispielsweise, indem das neuronale Netz eine Gestenerkennung durchführt. Dem persönlichen Assistenten 250 wird dann dieses ermittelte Ansteuersignal A übermittelt und er somit entsprechend angesteuert. Dieses ermittelte Ansteuersignal A kann insbesondere derart gewählt werden, dass es einer vermuteten gewünschten Ansteuerung durch den Nutzer 249 entspricht. Diese vermutete gewünschte Ansteuerung kann abhängig von der vom künstlichen neuronalen Netz 60 erkannten Geste ermittelt werden. Das Steuerungssystem 40 kann dann abhängig von der vermuteten gewünschten Ansteuerung das Ansteuersignal A zur Übermittlung an den persönlichen Assistenten 250 wählen und/oder das Ansteuersignal A zur Übermittlung an den persönlichen Assistenten entsprechend der vermuteten gewünschten Ansteuerung 250 wählen.
-
Diese entsprechende Ansteuerung kann beispielsweise beinhalten, dass der persönliche Assistent 250 Informationen aus einer Datenbank abruft und sie für den Nutzer 249 rezipierbar wiedergibt.
-
Anstelle des persönlichen Assistenten 250 kann auch ein Haushaltsgerät (nicht abgebildet), insbesondere eine Waschmaschine, ein Herd, ein Backofen, eine Mikrowelle oder eine Spülmaschine vorgesehen sein, um entsprechend angesteuert zu werden.
-
8 zeigt ein Ausführungsbeispiel, bei dem das Steuerungssystem 40 zur Steuerung eines medizinischen bildgebenden System 500, beispielsweise eines MRT-, Röntgen- oder Ultraschallgeräts, verwendet wird. Der Sensor 30 kann beispielsweise durch einen bildgebenden Sensor gegeben sein, durch das Steuerungssystem 40 wird die Anzeigeeinheit 10a angesteuert. Beispielsweise kann vom neuronalen Netz 60 ermittelt werden, ob ein vom bildgebenden Sensor aufgenommener Bereich auffällig ist, und das Ansteuersignal A dann derart gewählt werden, dass dieser Bereich von der Anzeigeeinheit 10a farblich hervorgehoben dargestellt wird.
-
Der Begriff „Computer“ umfasst beliebige Geräte zur Abarbeitung vorgebbarer Rechenvorschriften. Diese Rechenvorschriften können in Form von Software vorliegen, oder in Form von Hardware, oder auch in einer Mischform aus Software und Hardware.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Nicht-Patentliteratur
-
- Hutter, F., Hoos, H., Leyton-Brown, K.: Sequential model-based optimization for general algorithm conguration. In: Coello, C. (ed.) Proceedings of the Fifth International Conference on Learning and Intelligent Optimization (LION'11). Lecture Notes in Computer Science, vol. 6683, pp. 507 (2011) [0046]