-
HINTERGRUND DER ERFINDUNG
-
Gebiet der Erfindung
-
Die vorliegende Erfindung bezieht sich auf eine Maschinenlernvorrichtung und ein Robotersystem zum Lernen einer Bearbeitungsreihenfolge eines Laserbearbeitungsroboters und ein Maschinenlernverfahren dafür.
-
Beschreibung des verwandten Standes der Technik
-
In den letzten Jahren kamen Laserbearbeitungsroboter, die Schweiß-, Schneid-, Bohr- und andere Bearbeitungsformen durchführen, in vielen Bereichen zum Einsatz. Beispielsweise werden ein oder mehrere Laserbearbeitungsroboter zum Verschweißen (Laserschweißen) von Fahrzeugkarosserien verwendet.
-
Ein Benutzer (ein Lehrer, ein Mensch) passt Laserbearbeitungsbedingungen solcher Laserbearbeitungsroboter an und die Roboter führen eine Bearbeitung gemäß den Bearbeitungsbedingungen und der Bearbeitungsreihenfolge durch, wie vom Benutzer festgelegt. Anders ausgedrückt lehrt der Lehrer Schweißteile, Schweißreihenfolge und dergleichen, die z. B. eine kürzeste Zykluszeit ermöglichen.
-
Es ist für einen Benutzer jedoch schwierig, die Schweißteile, die Schweißreihenfolge und dergleichen zu lehren, die eine optimale Lösung zum Erreichen z. B. einer kürzesten Zykluszeit bereitstellen. Außerdem ist es, wenn eine Mehrzahl von Laserbearbeitungsrobotern verwendet wird, sogar noch schwieriger, eine optimale Lösung effizient zu lehren, da das Lehren weitaus komplizierter als bei einem verwendeten Laserbearbeitungsroboter ist, da das Lehren indiziert, welche Roboter ein Schweißen an welchen Teilen in welcher Reihenfolge durchführen, während es gleichzeitig sicherstellt, dass die Roboter einander nicht stören.
-
Im herkömmlichen Sinn offenbart z. B. die japanische offengelegte Patentveröffentlichung Nr. H10(1998)-039909 ein Betriebsplanungsverfahren, das an einer Mehrzahl von Robotern anzuwenden ist, um die Arbeit zu verringern, indem eine automatische Planung von Betrieben einer Mehrzahl von Robotern eingeführt wird; gemäß dem Verfahren wird eine beste Lösung, die nicht weit von der optimalen Lösung liegt, in einem praktischen Zeitraum einfach und automatisch erzielt, indem Betriebe in Gruppen organisiert werden, die Reihenfolge von Betrieben festgelegt wird und die Betriebe den Robotern in Gruppen zugeordnet werden, und dadurch wird die Anzahl von Erforschungen einer Lösung, was die Kombination der Roboter und der Betriebe betrifft, verringert.
-
Im herkömmlichen Sinn offenbart die japanische offengelegte Patentveröffentlichung Nr. 2002-116817 ein Verfahren zum Zuordnen von Aufgaben zu Maschinen, die einen Betrieb durchführen, der aus Aufgaben besteht, wobei das Verfahren das korrekte Zuordnen von Aufgaben zu den Maschinen durch Anwenden eines genetischen Betriebserforschungsalgorithmus ermöglicht, um die Zuordnung jeder Aufgabe zu den Maschinen zu berechnen.
-
Im herkömmlichen Sinn offenbart ferner die japanische offengelegte Patentveröffentlichung Nr. 2005-108144 eine Korrekturdatenprüfvorrichtung zum Identifizieren von Ursachen eines Fehlers durch Prüfen der Lehrdaten, die dem Roboter eingegeben werden, mit den tatsächlichen Daten während des tatsächlichen Betriebszeitraums des Roboters und Klassifizieren von Problemen in jene, die von Sensoren resultieren, und jene, die von Werkstücken oder Haltevorrichtungen resultieren.
-
Wie oben beschrieben, lehrt beim Schweißen von Fahrzeugkarosserien mit einem Laserbearbeitungsroboter für gewöhnlich ein Mensch (Benutzer) die Schweißteile, die Schweißreihenfolge und dergleichen. Es ist jedoch schwierig, auf eine solche Weise zu lehren, dass z. B. eine kürzeste Zykluszeit erzielt wird, und ferner wird das Lehren noch komplizierter und ist es sogar noch schwieriger, eine optimale Lösung effizient zu lehren, wenn eine Mehrzahl von Laserbearbeitungsrobotern verwendet wird.
-
Wenn z. B. Fahrzeugkarosserien durch einen oder mehrere Laserbearbeitungsroboter verschweißt werden, ist es ferner sogar dann schwierig, eine optimale Lösung effizient zu lehren, wenn die diversen vorgeschlagenen Techniken berücksichtigt werden. Man beachte, dass, auch wenn in der vorliegenden Beschreibung Laserschweißroboter als Beispiel für Bearbeitungsroboter beschrieben sind, die Laserbearbeitungsroboter selbstverständlich andere als Laserschweißroboter sein können und z. B. Laserschneidroboter umfassen können.
-
Angesichts der Nachteile im oben beschriebenen Stand der Technik liegt ein Ziel der vorliegenden Erfindung darin, eine Maschinenlernvorrichtung und ein Robotersystem zum Lernen einer Bearbeitungsreihenfolge eines Laserbearbeitungsroboters und effizienten Lehren einer optimalen Lösung und ein Maschinenlernverfahren dafür bereitzustellen.
-
KURZFASSUNG DER ERFINDUNG
-
Gemäß einem ersten Aspekt der vorliegenden Erfindung wird eine Maschinenlernvorrichtung zum Lernen einer Bearbeitungsreihenfolge eines Laserbearbeitungsroboters bereitgestellt, umfassend eine Statusbeobachtungseinheit, die als Statusvariable eines von einem Plasmalicht von einem Laserbearbeitungspunkt des Laserbearbeitungsroboters und einem Bearbeitungston vom Laserbearbeitungspunkt des Laserbearbeitungsroboters beobachtet; eine Ermittlungsdatenerhaltungseinheit, die als Ermittlungsdaten eine Zykluszeit empfängt, in der der Laserbearbeitungsroboter eine Bearbeitung abschließt; und eine Lerneinheit, die die Bearbeitungsreihenfolge des Laserbearbeitungsroboters auf Basis einer Ausgabe der Statusbeobachtungseinheit und einer Ausgabe der Ermittlungsdatenerhaltungseinheit lernt.
-
Die Ermittlungsdatenerhaltungseinheit kann ferner als Ermittlungsdaten eines von einer Bearbeitungsgeschwindigkeit, in der der Laserbearbeitungsroboter eine Laserbearbeitung durchführt, einer Brennweite eines Lasers, einer Stellung eines Bearbeitungswerkzeugs und einer Durchflussrate von Prozessgas empfangen. Die Maschinenlernvorrichtung kann ferner eine Entscheidungseinheit umfassen, die einen Betrieb des Laserbearbeitungsroboters auf Basis der Bearbeitungsreihenfolge des Laserbearbeitungsroboters entscheidet, die die Lerneinheit gelernt hat.
-
Die Lerneinheit kann eine Vergütungsberechnungseinheit umfassen, die eine Vergütung auf Basis einer Ausgabe der Statusbeobachtungseinheit und einer Ausgabe der Ermittlungsdatenerhaltungseinheit berechnet; und eine Wertfunktionaktualisierungseinheit, die eine Wertfunktion, die einen Wert einer Bearbeitungsreihenfolge des Laserbearbeitungsroboters bestimmt, auf Basis einer Ausgabe der Statusbeobachtungseinheit, einer Ausgabe der Ermittlungsdatenerhaltungseinheit und einer Ausgabe der Vergütungsberechnungseinheit aktualisiert. Die Vergütungsberechnungseinheit kann eine Negativvergütung festlegen, wenn die Zykluszeit lang ist, und eine Positivvergütung festlegen, wenn die Zykluszeit kurz ist.
-
Die Vergütungsberechnungseinheit kann ferner eine Negatiwergütung festlegen, wenn das Plasmalicht vom Laserbearbeitungspunkt von einem optimalen Plasmalichtwert weit entfernt liegt, und kann eine Positivvergütung festlegen, wenn das Plasmalicht vom Laserbearbeitungspunkt nahe beim optimalen Plasmalichtwert liegt, oder die Vergütungsberechnungseinheit kann ferner eine Negativvergütung festlegen, wenn der Bearbeitungston vom Laserbearbeitungspunkt von einem optimalen Bearbeitungstonwert weit entfernt liegt, und kann eine Positivvergütung festlegen, wenn der Bearbeitungston vom Laserbearbeitungspunkt nahe beim optimalen Bearbeitungstonwert liegt. Die Vergütungsberechnungseinheit kann ferner eine Negativvergütung festlegen, wenn die Bearbeitungsgeschwindigkeit, in der der Laserbearbeitungsroboter eine Laserbearbeitung durchführt, gering ist, und kann eine Positivvergütung festlegen, wenn die Bearbeitungsgeschwindigkeit, in der der Laserbearbeitungsroboter eine Laserbearbeitung durchführt, hoch ist.
-
Die Maschinenlernvorrichtung kann ferner ein neuronales Netz umfassen. Eine Mehrzahl von Maschinenlernvorrichtungen kann jeweils für eine Mehrzahl der Laserbearbeitungsroboter bereitgestellt sein, wobei jede Maschinenlernvorrichtung so konfiguriert sein kann, dass sie mit zumindest einer der anderen Maschinenlernvorrichtungen kommuniziert und ein Ergebnis eines Maschinenlernens untereinander austauscht oder mit der zumindest einen Maschinenlernvorrichtung teilt. Die Maschinenlernvorrichtung kann sich auf einem Cloud-Server oder einem Fog-Server befinden.
-
Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird ein Robotersystem bereitgestellt, das eine Laserbearbeitungsrobotersteuervorrichtung; einen Laserbearbeitungsroboter, der von der Laserbearbeitungsrobotersteuervorrichtung gesteuert wird; und eine Maschinenlernvorrichtung gemäß dem oben beschriebenen ersten Aspekt umfasst. Das Robotersystem kann eine Mehrzahl von Laserbearbeitungsrobotern umfassen, wobei die Ermittlungsdatenerhaltungseinheit als Ermittlungsdaten eine Systemzykluszeit empfangen kann, in der die Mehrzahl der Laserbearbeitungsroboter die gesamte Bearbeitung im System abschließt, und die Lerneinheit kann eine Bearbeitungsreihenfolge lernen, in der die Laserbearbeitungsroboter die gesamte Bearbeitung im System abschließen. Der Laserbearbeitungsroboter kann zumindest eines von einem optischen Sensor, der das Plasmalicht vom Laserbearbeitungspunkt des Laserbearbeitungsroboters innerhalb eines gewissen Wellenlängenbereichs erfasst, und einem Tonsensor, der den Bearbeitungston vom Laserbearbeitungspunkt des Laserbearbeitungsroboters innerhalb eines gewissen Frequenzbereichs erfasst, umfassen.
-
Gemäß einem dritten Aspekt der vorliegenden Erfindung wird ein Maschinenlernverfahren zum Lernen einer Bearbeitungsreihenfolge eines Laserbearbeitungsroboters bereitgestellt, umfassend das Beobachten - als Statusvariable - eines von einem Plasmalicht von einem Laserbearbeitungspunkt des Laserbearbeitungsroboters und einem Bearbeitungston vom Laserbearbeitungspunkt des Laserbearbeitungsroboters; Empfangen - als Ermittlungsdaten - einer Zykluszeit, in der der Laserbearbeitungsroboter eine Bearbeitung abschließt; und Lernen einer Bearbeitungsreihenfolge des Laserbearbeitungsroboters auf Basis der beobachteten Statusvariable und der empfangenen Ermittlungsdaten.
-
Gemäß einem vierten Aspekt der vorliegenden Erfindung wird ein Verfahren zum Überwachen eines Status einer Laserbearbeitung durch einen Laserbearbeitungsroboter bereitgestellt, das das Erfassen eines Bearbeitungstons von einem Laserbearbeitungspunkt während einer Laserbearbeitung durch den Laserbearbeitungsroboter; das Extrahieren eines gewissen Frequenzbereichs aus dem Bearbeitungston vom Laserbearbeitungspunkt; und das Überwachen eines Status einer Laserbearbeitung durch den Laserbearbeitungsroboter auf Basis des Bearbeitungstons vom Laserbearbeitungspunkt innerhalb des extrahierten gewissen Frequenzbereichs umfasst.
-
Figurenliste
-
Die vorliegende Erfindung ist unter Bezugnahme auf die folgenden beiliegenden Zeichnungen deutlicher zu verstehen.
- 1 ist ein Schaubild zum Beschreiben eines Robotersystems, an dem die vorliegende Erfindung angewandt wird;
- 2 ist ein Blockschaubild, das eine Ausführungsform eines Robotersystems gemäß der vorliegenden Erfindung veranschaulicht;
- 3 ist ein Blockschaubild, das eine Ausführungsform einer Maschinenlernvorrichtung gemäß der vorliegenden Erfindung veranschaulicht;
- 4 ist ein schematisches Schaubild eines neuronalen Modells;
- 5 ist ein schematisches Schaubild eines neuronalen Netzes, das aus drei Schichten besteht, gebildet durch Kombinieren von Neuronen wie in 4 veranschaulicht;
- 6A und 6B sind Schaubilder, die ein Beispiel der Beziehung zwischen einer Bearbeitungsreihenfolge und einer Zykluszeit mit zwei Laserbearbeitungsrobotern beschreiben;
- 7 ist ein Schaubild, das ein Bearbeitungswerkzeug eines Laserbearbeitungsroboters in einem Robotersystem gemäß der vorliegenden Erfindung beschreibt;
- Die 8A und 8B sind Schaubilder, die eine Beobachtung eines Status einer Laserbearbeitung durch einen Laserbearbeitungsroboter in einem Robotersystem gemäß der vorliegenden Erfindung beschreiben;
- 9 ist ein Ablaufplan, der ein Beispiel für eine Bearbeitung in der Maschinenlernvorrichtung veranschaulicht, die in 3 veranschaulicht ist; und
- 10 ist ein Ablaufplan, der ein weiteres Beispiel für eine Bearbeitung in der Maschinenlernvorrichtung veranschaulicht, die in 3 veranschaulicht ist.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Im Folgenden werden Ausführungsformen einer Maschinenlernvorrichtung, eines Robotersystems und eines Maschinenlernverfahrens unter Bezugnahme auf die beiliegenden Zeichnungen ausführlich beschrieben. 1 ist ein Schaubild, das ein Robotersystem beschreibt, an dem die vorliegende Erfindung angewandt ist, und das ein Robotersystem mit zwei Laserbearbeitungsrobotern beschreibt, die ein Laserschweißen an einer Fahrzeugkarosserie durchführen.
-
1 veranschaulicht Laserbearbeitungsroboter (Roboter), die mit dem Bezugszeichen 1 (R1, R2) ausgewiesen sind, einen Laseroszillator 10, optische Fasern 11, Bearbeitungswerkzeuge (Laserbearbeitungsköpfe) 12, Robotersteuereinheiten (Laserbearbeitungsrobotersteuervorrichtungen) 13 und eine Fahrzeugkarosserie 100.
-
Die Roboter R1, R2 (1) werden jeweils von den Robotersteuereinheiten 13 gesteuert, um z. B. die Bewegungen der Bearbeitungswerkzeuge (Laserbearbeitungsköpfe) 12 zu steuern, die an den vorderen Endeinheiten der Arme der Roboter 1 angebracht sind.
-
Ein Laserstrahl (Faserlaserstrahl), der vom Laseroszillator 10 erzeugt wird, wird über optische Fasern 11 an die Bearbeitungswerkzeuge 12 von jeweiligen Robotern 1 (R1, R2) bereitgestellt, um z. B. ein Laserschweißen an der Fahrzeugkarosserie 100 zu ermöglichen. Man beachte, dass, obwohl 1 zwei Roboter R1, R2 (1) veranschaulicht, die ein Laserschweißen an der Fahrzeugkarosserie 100 durchführen, das Schweißen auch von einem Roboter oder drei oder mehr Robotern durchgeführt werden kann.
-
2 ist ein Blockschaubild, das eine Ausführungsform eines Robotersystems gemäß der vorliegenden Erfindung veranschaulicht, und das oben unter Bezugnahme auf 1 beschriebene Robotersystem ist in der Umgebung 4 umfasst. Anders ausgedrückt umfasst, wie in 2 veranschaulicht, das Robotersystem gemäß der vorliegenden Ausführungsform die Roboter 1 (R1, R2), die Laseroszillatoren 10, die optischen Fasern 11, die Bearbeitungswerkzeuge 12 und die Robotersteuereinheiten 13, wie oben unter Bezugnahme auf 1 beschrieben, und eine Maschinenlernvorrichtung 2.
-
Eine Maschinenlernvorrichtung 2 kann für jeden der Roboter 1 bereitgestellt sein (die Robotersteuereinheiten 13, d. h. am Rand) oder kann in einem Werk mit einer Mehrzahl von Robotern 1 (Robotersystem) (z. B. auf einem Fog-Server) oder auf einem Cloud-Server bereitgestellt sein, der über ein Telekommunikationsnetz wie z. B. das Internet mit einer Mehrzahl von Werken verbunden ist. Wenn eine Maschinenlernvorrichtung für jeden der Roboter bereitgestellt ist, kann jede Maschinenlernvorrichtung so konfiguriert sein, dass sie mit zumindest einer der anderen Maschinenlernvorrichtungen kommuniziert und Ergebnisse eines Maschinenlernens untereinander austauscht oder mit der zumindest einen der anderen Maschinenlernvorrichtungen teilt.
-
3 ist ein Blockschaubild, das eine Ausführungsform einer Maschinenlernvorrichtung gemäß der vorliegenden Erfindung veranschaulicht. Wie in 2 und 3 veranschaulicht, führt die Maschinenlernvorrichtung 2 gemäß der vorliegenden Ausführungsform ein Verstärkungslernen durch und umfasst eine Statusbeobachtungseinheit 21, eine Ermittlungsdatenerhaltungseinheit 22, eine Lerneinheit 23 und eine Entscheidungseinheit 24 und umfasst die Lerneinheit 23 eine Vergütungsberechnungseinheit 231 und eine Wertfunktionsaktualisierungseinheit 232.
-
Die Statusbeobachtungseinheit 21 beobachtet - als Statusvariable - zumindest eines von einem Plasmalicht von einem Laserbearbeitungspunkt eines Roboters (Laserbearbeitungsroboter) 1 und einem Bearbeitungston vom Laserbearbeitungspunkt des Roboters 1. Plasmalicht vom Laserbearbeitungspunkt wird von einem optischen Sensor (Photosensor) erkannt, der z. B. auf dem Bearbeitungswerkzeug 12 bereitgestellt ist, das an der vorderen Endeinheit des Arms des Roboters 1 angebracht ist, und ein Bearbeitungston vom Laserbearbeitungspunkt wird von einem Tonsensor (Mikrofon) erfasst, der auf dem Bearbeitungswerkzeug 12 bereitgestellt ist. Das Erfassen von Plasmalicht und Bearbeitungston vom Laserbearbeitungspunkt wird nachstehend unter Bezugnahme auf 8A und 8B ausführlich beschrieben.
-
Die Ermittlungsdatenerhaltungseinheit 22 empfängt eine Zykluszeit, in der der Roboter 1 eine Bearbeitung abschließt, als Ermittlungsdaten. Beispielsweise wenn zwei Roboter 1 (R1, R2) ein Laserschweißen durchführen, wie in 1 veranschaulicht, kann eine Dauer, in der die zwei Roboter den gesamten Laserschweißprozess abschließen, als Zykluszeit behandelt werden. Die Ermittlungsdatenerhaltungseinheit 22 kann auch als Ermittlungsdaten eines von einer Bearbeitungsgeschwindigkeit (Geschwindigkeit), in der der Roboter 1 eine Laserbearbeitung durchführt, einer Brennweite des Lasers, einer Stellung des Bearbeitungswerkzeugs 12 und einer Durchflussrate des Prozessgases empfangen.
-
Die Lerneinheit 23 lernt eine Bearbeitungsreihenfolge für die Roboter 1 auf Basis einer Ausgabe der Statusbeobachtungseinheit 21 und einer Ausgabe der Ermittlungsdatenerhaltungseinheit 22 und umfasst eine Vergütungsberechnungseinheit 231 und eine Wertfunktionaktualisierungseinheit 232. Die Vergütungsberechnungseinheit 231 berechnet Vergütungen auf Basis einer Ausgabe der Statusbeobachtungseinheit 21 und einer Ausgabe der Ermittlungsdatenerhaltungseinheit 22, und die Wertfunktionaktualisierungseinheit 232 aktualisiert eine Wertfunktion zum Bestimmen des Werts einer Bearbeitungsreihenfolge von Robotern 1 auf Basis einer Ausgabe der Statusbeobachtungseinheit 21, einer Ausgabe der Ermittlungsdatenerhaltungseinheit 22 und einer Ausgabe der Vergütungsberechnungseinheit 231. Die Entscheidungseinheit 24 entscheidet den Betrieb der Roboter 1 auf Basis der von der Lerneinheit 23 gelernten Bearbeitungsreihenfolge.
-
Anders ausgedrückt legt die Vergütungsberechnungseinheit 231 z. B. eine Negativvergütung fest, wenn die Zykluszeit lang ist, und eine Positiwergütung fest, wenn die Zykluszeit kurz ist. Die Vergütungsberechnungseinheit 231 kann z. B. eine Negativvergütung festlegen, wenn das Plasmalicht vom Laserbearbeitungspunkt von einem optimalen Plasmalichtwert weit entfernt liegt, und eine Positivvergütung festlegen, wenn das Plasmalicht vom Laserbearbeitungspunkt nahe beim optimalen Plasmalichtwert liegt, oder kann eine Negativvergütung festlegen, wenn der Bearbeitungston vom Laserbearbeitungspunkt von einem optimalen Bearbeitungstonwert weit entfernt liegt, und eine Positivvergütung festlegen, wenn der Bearbeitungston vom Laserbearbeitungspunkt nahe beim optimalen Bearbeitungstonwert liegt. Ferner kann die Vergütungsberechnungseinheit 231 eine Negativvergütung festlegen, wenn die Bearbeitungsgeschwindigkeit (V), in der Roboter 1 eine Laserbearbeitung durchführt, gering ist, und eine Positivvergütung festlegen, wenn die Bearbeitungsgeschwindigkeit, in der der Roboter 1 eine Laserbearbeitung durchführt, hoch ist.
-
Die Maschinenlernvorrichtung 2 weist eine Funktion des Analysierens von Datensätzen, die in die Vorrichtung eingegeben werden, des Extrahierens von nützlichen Regeln, Wissensausdruck, Beurteilungskriterien und dergleichen, die in den Datensätzen enthalten sind, und des Ausgebens eines Ergebnisses der Beurteilung sowie Lernens des Wissens (Maschinenlernen) auf. Es gibt diverse Techniken für das Maschinenlernen, die grob in z. B. „überwachtes Lernen“, „nichtüberwachtes Lernen“ und „Verstärkungslernen“ klassifiziert werden können. Ferner gibt es eine Technik, die „tiefes Lernen“ genannt wird, bei der die Maschine lernt, Merkmalsbeträge per se zu extrahieren, um diese Techniken umzusetzen.
-
Die Maschinenlernvorrichtung 2, die in 3 veranschaulicht ist, verwendet „Verstärkungslernen (Q-Learning)“. Die Maschinenlernvorrichtung 2 kann z. B. durch einen Universalcomputer oder Universalprozessor umgesetzt sein, es kann für eine noch schnellere Bearbeitung jedoch auch eine allgemeine Berechnung auf Grafikverarbeitungseinheiten (GPGPU) oder ein großskaliger PC-Cluster verwendet werden. Das Maschinenlernen wird nachstehend allgemein umrissen.
-
Zunächst wird beim „überwachten Lernen“ eine große Anzahl von Datensätzen gewisser Eingaben und Ergebnisse (Labels) in eine Maschinenlernvorrichtung gespeist, die in diesen Datensätzen enthaltene Merkmale lernt und induktiv ein Modell (Fehlermodell) zum Schätzen von Ergebnissen anhand der Eingaben erfasst, z. B. deren Beziehungen. Das überwachte Lernen kann z. B. unter Verwendung eines Algorithmus wie z. B. eines neuronalen Netzes umgesetzt werden, wie nachstehend beschrieben.
-
Das „nichtüberwachte Lernen“ ist eine Technik, bei der Eingabedaten allein in einer großen Menge in eine Maschinenlernvorrichtung gespeist werden und die Vorrichtung Verteilungen der Eingabedaten lernt und z. B. die Eingabedaten komprimiert, klassifiziert und formt, ohne dass entsprechende Lehrerausgabedaten in die Vorrichtung gespeist werden. Dies ermöglicht z. B. das Gruppieren ähnlicher Merkmale, die in diesen Datensätzen enthalten sind. Das erhaltene Ergebnis kann verwendet werden, um gewisse Kriterien zu definieren, und durch Zuordnen von Ausgaben auf eine solche Weise, dass die Ausgaben gemäß den Kriterien optimiert werden, wird es möglich, die Ausgaben zu prognostizieren.
-
Es gibt das sogenannte halbüberwachte Lernen, das sich einer Problemstellung annimmt, die als zwischen dem unüberwachten Lernen und dem überwachten Lernen seiend charakterisiert ist, und dabei wird z. B. nur ein Teil der Daten in Form von Datensätzen von Eingaben und Ausgaben bereitgestellt, während die restlichen Daten aus Eingaben allein bestehen.
-
Es wird nun das Verstärkungslernen näher beschrieben. Eine Problemstellung beim Verstärkungslernen ist wie nachstehend beschrieben.
- • Ein Robotersystem (d. h. ein Laserbearbeitungsroboter 1 und eine Laserbearbeitungsrobotersteuervorrichtung (Robotersteuereinheit, die z. B. eine Maschinenlernvorrichtung 2 umfasst) 13) beobachtet einen Status der Umgebung und entscheidet über eine Aktion.
- • Die Umgebung kann sich gemäß einer gewissen Regel ändern und ferner kann das Robotersystem die Umgebung durch seine eigene Aktion ändern.
- • Ein Vergütungssignal wird jedes Mal zurückgegeben, wenn die Aktion durchgeführt wird.
- • Es ist die Summe von (diskontierten) Vergütungen in der Zukunft, die es zu maximieren gilt.
- • Das Lernen beginnt in einem Status, in dem das Ergebnis, das durch die Aktion bewirkt wird, überhaupt nicht bekannt oder nur teilweise bekannt ist. Anders ausgedrückt kann die Robotersteuerung das Ergebnis erst als Daten erhalten, wenn sie die Aktion tatsächlich durchführt. Kurz gesagt wird bevorzugt, die optimale Aktion durch die Trial-and-Error-Methode zu erhalten.
- • Durch Festlegen eines Status, in dem ein Lernen (eine Technik wie z. B. überwachtes Lernen, wie oben beschrieben, oder umgekehrtes Verstärkungslernen) vorab durchgeführt wird, um ein menschliches Verhalten nachzuahmen, als Ausgangsstatus kann das Lernen von einem guten Startpunkt aus gestartet werden.
-
Das Verstärkungslernen ist eine Technik, bei der eine geeignete Aktion nicht nur durch Ermitteln oder Klassifizieren gelernt wird, sondern auch durch Lernen von Aktionen unter Berücksichtigung der Interaktion, die von einer Aktion mit einer Umgebung bereitgestellt wird, d. h., es wird gelernt, wie die in der Zukunft zu erhaltende Vergütung maximiert wird. Im Folgenden wird weiter ein Beispiel des Q-Learning beschrieben, die vorliegende Erfindung ist jedoch nicht auf das Q-Learning begrenzt.
-
Das Q-Learning ist ein Verfahren zum Lernen eines Werts Q(s, a) zum Auswählen einer Aktion in einem gewissen Umgebungsstatus s. Anders ausgedrückt kann, wenn der gewisse Status s vorliegt, eine Aktion mit dem höchsten Wert Q(s, a) vorzugsweise als optimale Aktion ausgewählt werden. Zunächst ist der korrekte Wert für den Wert Q(s, a) für ein Paar des Status S und der Aktion a jedoch gänzlich unbekannt. Demgemäß wählt ein Agent (Aktionssubjekt) diverse Aktionen a unter dem gewissen Status s aus und erhält für die Aktion a zu diesem Zeitpunkt eine Vergütung. Folglich lernt der Agent das Auswählen einer besseren Aktion, d. h. eines korrekten Werts Q(s, a).
-
Ferner ist es infolge der Aktion erwünscht die Summe der in der Zukunft zu erhaltenden Vergütungen zu maximieren, und Q (s, a) = E [∑y
t r
t] soll schließlich erfüllt werden. Man geht davon aus, dass der erwartete Wert dann herangezogen wird, wenn sich der Status nach der optimalen Aktion ändert, und da dieser nicht bekannt ist, wird er durch Erforschung gelernt. Eine Aktualisierungsformel für diesen Wert Q(s, a) kann z. B. durch die folgende Gleichung (1) dargestellt sein:
-
Bei der obigen Gleichung (1) stellt st einen Status der Umgebung zu einem Zeitpunkt t dar und stellt at eine Aktion zum Zeitpunkt t dar. Durch die Aktion at verändert sich der Status zu st+1· rt+1 stellt eine Vergütung dar, die mit der Änderung des Status erzielt werden kann. Ferner ist der Term, an dem max angefügt ist, das Produkt des Q-Werts multipliziert mit ү, wenn die Aktion a mit dem höchsten bekannten Q-Wert zu diesem Zeitpunkt im Status st+1 ausgewählt wird. ү ist ein Parameter, der 0 < ү ≤ 1 erfüllt und wird als Diskontierungsrate bezeichnet. ɑ ist ein Lernfaktor im Bereich von 0 < ɑ ≤ 1.
-
Die obige Gleichung (1) stellt ein Verfahren zum Aktualisieren des Schätzwerts Q(st, at) der Aktion at im Status st auf Basis der Vergütung rt+1 dar, die als Ergebnis der Aktion at zurückgegeben wird. Anders ausgedrückt wird indiziert, dass, wenn die Summe der Vergütung rt+1 und des Beurteilungswerts Q(st+1, max at+1) der besten Aktion max a im Status nach dem Status s nach Aktion a größer als der Beurteilungswert Q(st, at) der Aktion a im Status s ist, Q(st, at) erhöht wird; ansonsten wird Q(st, at) verringert. Anders ausgedrückt ist die Konfiguration eine solche, dass ein Wert einer gewissen Aktion in einem gewissen Status näher zu der Vergütung gebracht wird, die als Ergebnis sofort zurückgegeben wird, und zum Wert der besten Aktion im nächsten Status nach dieser Aktion.
-
Verfahren zum Darstellen von Q(s, a) auf einem Computer umfassen ein Verfahren, bei dem Werte aller Status-Aktion-Paare (s, a) in Form einer Tabelle gehalten werden, und ein Verfahren, bei dem eine zu Q(s, a) approximate Funktion bereitgestellt wird. Beim letzteren Verfahren kann die obige Gleichung (1) durch Anpassen von Parametern der Approximationsfunktion unter Verwendung einer Technik wie z. B. dem Verfahren des stochastischen Gradientenabstiegs umgesetzt werden. Als Approximationsfunktion kann ein neuronales Netz, wie nachstehend beschrieben, verwendet werden.
-
Als Approximationsalgorithmus für eine Wertfunktion beim Verstärkungslernen kann auch ein neuronales Netz verwendet werden. 4 ist ein Schaubild, das ein Modell für ein Neuron schematisch veranschaulicht, und 5 ist ein Schaubild, das ein dreischichtiges neuronales Netz schematisch veranschaulicht, das durch Kombinieren von Neuronen gebildet wird, wie in 4 veranschaulicht. Anders ausgedrückt ist das neuronale Netz z. B. aus einer arithmetischen Vorrichtung, die ein Modell für ein Neuron simuliert, wie 4 veranschaulicht, einem Speicher und dergleichen konfiguriert.
-
Wie in
4 veranschaulicht, gibt das Neuron eine Ausgabe (Ergebnis) y für eine Mehrzahl von Eingaben x (in
4 z. B. Eingaben x1 bis x3) aus. Jede der Eingaben x (x1, x2, x3) wird mit einem Gewicht w (w1, w2 w3) multipliziert, das der Eingabe x entspricht. Demgemäß gibt das Neuron das Ergebnis y aus, das durch die folgende Gleichung (2) dargestellt wird. Man beachte, dass es sich bei der Eingabe x, dem Ergebnis y und dem Gewicht w jeweils um Vektoren handelt. Bei der nachstehenden Gleichung (2) ist θ eine Verzerrung und ist f
k eine Aktivierungsfunktion.
-
Unter Bezugnahme auf 5 wird ein dreischichtiges neuronales Netz beschrieben, das durch Kombinieren von Neuronen gebildet wird, wie in 4 veranschaulicht. Wie in 5 veranschaulicht, wird eine Mehrzahl von Eingaben x (hier z. B. Eingaben x1 bis Eingabe x3) von der linken Seite des neuronalen Netzes eingegeben und wird ein Ergebnis y (hier z. B. Ergebnis y1 bis Eingabe y3) von der rechten Seite ausgegeben. Insbesondere werden die Eingaben x1, x2 und x3 mit einem Gewicht multipliziert, das jedem von drei Neuronen N11 bis N13 entspricht, und eingegeben. Die Gewichte, die zum Multiplizieren dieser Eingaben verwendet werden, werden gesammelt als W1 bezeichnet.
-
Die Neuronen N11 bis N13 geben jeweils z11 bis z13 aus. In 5 werden z11 bis z13 gesammelt als Merkmalsvektor Z1 bezeichnet, der als Vektor angesehen werden kann, der durch Extrahieren von Merkmalswerten des Eingabevektors erhalten wird. Der Merkmalsvektor Z1 ist ein Merkmalsvektor, der zwischen dem Gewicht W1 und dem Gewicht W2 definiert ist. z11 bis z13 werden mit einem Gewicht multipliziert, das jedem der zwei Neuronen N21 und N22 entspricht, und eingegeben. Die Gewichte, die zum Multiplizieren dieser Merkmalsvektoren verwendet werden, werden gesammelt als W2 bezeichnet.
-
Die Neuronen N21 und N22 geben z21 bzw. z22 aus. In 5 werden z21, z22 gesammelt als Merkmalsvektor Z2 bezeichnet. Der Merkmalsvektor Z2 ist ein Merkmalsvektor, der zwischen dem Gewicht W2 und dem Gewicht W3 definiert ist. z21 und z22 werden mit einem Gewicht multipliziert, das jedem der drei Neuronen N31 bis N33 entspricht, und eingegeben. Die Gewichte, die zum Multiplizieren dieser Merkmalsvektoren verwendet werden, werden gesammelt als W3 bezeichnet.
-
Schließlich geben die Neuronen N31 bis N33 jeweils Ergebnis y1 bis y3 aus. Der Betrieb des neuronalen Netzes umfasst einen Lernmodus und einen Wertprognosemodus. Beim Lernmodus beispielsweise wird das Gewicht W unter Verwendung eines Lerndatensatzes gelernt und im Prognosemodus wird unter Verwendung der Parameter die Aktion der Robotersteuerung ermittelt. Auch wenn der Einfachheit halber Bezug auf eine Prognose genommen wird, ist es selbstverständlich, dass diverse Aufgaben wie z. B. Erfassen, Klassifizieren, Störung und dergleichen möglich sind.
-
Es ist möglich, dass die Daten, die durch tatsächliches Betreiben der Robotersteuerung im Prognosemodus erhalten werden, sofort gelernt werden, um in der nächsten Aktion widergespiegelt zu werden (On-line-Learning), und auch, dass eine Gruppe von vorab gesammelten Daten verwendet wird, um gesammeltes Lernen durchzuführen, und ein Erfassungsmodus mit dem Parameter seit dann durchgeführt wird (Batch-Learning). Eine Zwischenstufe ist ebenfalls möglich, bei der ein Lernmodus jedes Mal dann zwischengeschaltet wird, wenn Daten in einem gewissen Grad angesammelt wurden.
-
Die Gewichte W1 bis W3 können durch ein Fehlerrückpropagierungsverfahren gelernt werden. Die Fehlerinformation tritt von der rechten Seite ein und fließt auf die linke Seite. Das Fehlerrückpropagierungsverfahren ist eine Technik zum Einstellen (Lernen) jedes Gewichts, um den Unterschied zwischen einer Ausgabe y, wenn eine Eingabe x eingegeben wird, und einer wahren Ausgabe y (Lehrer) für jedes Neuron zu verringern. Ein solches neuronales Netz kann drei oder mehr Schichten aufweisen (als tiefes Lernen bezeichnet). Es ist möglich, Merkmale des Eingabeschritts schrittweise zu extrahieren, um eine arithmetische Vorrichtung automatisch zu erfassen, die die Ergebnisse zurückgibt, anhand der Lehrerdaten allein.
-
Wie unter Bezugnahme auf 3 beschrieben, umfasst die Maschinenlernvorrichtung 2 gemäß dem vorliegenden Beispiel die Statusbeobachtungseinheit 21, die Ermittlungsdatenerhaltungseinheit 22, die Lerneinheit 23 und die Entscheidungseinheit 24, z. B. um ein Q-Learning durchzuführen. Man beachte, dass das Maschinenlernverfahren, das an die vorliegende Erfindung angewandt wird, nicht auf das Q-Learning beschränkt ist, und wie oben beschrieben, kann die Maschinenlernvorrichtung 2 durch Verwenden von GPGPU, großskaligen PC-Clustern oder dergleichen umgesetzt werden.
-
6A und 6B sind Schaubilder, die ein Beispiel der Beziehung zwischen einem Bearbeitungsroboter und einer Zykluszeit mit zwei Laserbearbeitungsrobotern beschreiben, wobei 6A eine zu ändernde Bearbeitungsreihenfolge veranschaulicht und 6B eine Bearbeitungsreihenfolge veranschaulicht, die durch Ändern der in 6A veranschaulichten Bearbeitungsreihenfolge erhalten wird. Die Durchführbarkeit einer Änderung einer Bearbeitungsreihenfolge kann durch eine Simulation bestätigt werden. In 6A und 6B bezeichnen die Bezugszeichen P1 bis P4 die Zeiträume (Zeit) für eine Bearbeitung (Laserbearbeitungsprozesse), bezeichnen M1 bis M5 die Zeiträume zum Bewegen eines der Bearbeitungswerkzeuge (Laserbearbeitungsköpfe) 12, die an den vorderen Endeinheiten der Arme der Roboter 1 angebracht sind, auf gewisse Positionen und bezeichnen T1 bis T6 die Standby-Zeiträume, in denen einer der Roboter 1 weder eine Bearbeitung durchführt noch sein Bearbeitungswerkzeug (Laserbearbeitungskopf) 12 bewegt.
-
Wie in 6A veranschaulicht, arbeitet der erste Roboter 1, bevor die Bearbeitungsreihenfolge geändert wird, mit der Reihenfolge P1 → M1 → P2 → M2 → T1, arbeitet der zweite Roboter R2 in der Reihenfolge M3 → T2 → P3 → M4 → T3 → P4 → M5 und schließen die zwei Roboter R1 und R2 die gesamte Bearbeitung zum Zeitpunkt EPa ab. Wenn „P1 → M1“ der Bearbeitung durch den ersten Roboter R1 auf „P2 → M2“ geändert wird, wie in 6A veranschaulicht, arbeitet z. B. der erste Roboter 1 mit der Reihenfolge P2 → M2 → T4 → P1 → M1 → T6, arbeitet der zweite Roboter R2 in der Reihenfolge M3 → T2 → P3 → M4 → T5 → P4 → M5 und schließen die zwei Roboter R1 und R2 die gesamte Bearbeitung zum Zeitpunkt EPb ab.
-
Wie aus dem Vergleich zwischen 6B und 6A hervorgeht, führen die zwei Roboter R1 und R2 die gleiche Bearbeitung P1 bis P4 und die gleichen Bewegungen M1 bis M5 zwar gemeinsam durch, die Gesamtbearbeitungszeit (Zykluszeit) kann jedoch um Ts (Ts = EPa - EPb) verringert werden, indem „P1 → M1“ in der Bearbeitungsreihenfolge des ersten Roboters R1 auf „P2 → M2“ geändert wird. Auch wenn in 6A und 6B ein vereinfachtes Beispiel herangezogen wird, gestalten diverse Faktoren die Bearbeitung in der tatsächlichen Praxis komplizierter und lernt die Maschinenlernvorrichtung gemäß der vorliegenden Ausführungsform eine Bearbeitungsreihenfolge für solche Laserbearbeitungsroboter.
-
7 ist ein Schaubild, das ein Bearbeitungswerkzeug eines Laserbearbeitungsroboters in einem Robotersystem gemäß der vorliegenden Erfindung beschreibt. Ein Bearbeitungswerkzeug (Laserbearbeitungskopf) 12 ist z. B. an der vorderen Endeinheit des Arms eines Roboters (Laserbearbeitungsroboter) 1 angebracht, um eine Laserbearbeitung (z. B. ein Laserschweißen) eines Werkstücks W (z. B. einer Fahrzeugkarosserie 100) durchzuführen. Die Bearbeitungsbedingungen des Bearbeitungswerkzeugs 12, z. B. eine Bearbeitungsgeschwindigkeit V, in der das Bearbeitungswerkzeug 12 (Laserbearbeitungsroboter 1) eine Laserbearbeitung durchführt, eine Brennweite D eines Lasers, eine Stellung Ps des Bearbeitungswerkzeugs 12 und eine Durchflussrate F des Prozessgases, werden auf optimale Werte eingestellt. Die Bearbeitungsgeschwindigkeit V, die Brennweite D, die Stellung Ps und die Durchflussrate F können jeweils anhand Ausgaben bekannter Bearbeitungsüberwachungssensoren berechnet werden.
-
Wie nachstehend unter Bezugnahme auf die Ablaufpläne in 9 und 10 ausführlich beschrieben, können die Bearbeitungsbedingungen so angepasst werden, dass die Ausgaben der Bearbeitungsüberwachungssensoren optimale Werte präsentieren; z. B. legt die Vergütungsberechnungseinheit 231 der Lerneinheit 23 der oben beschriebenen Maschinenlernvorrichtung 2 eine Negatiwergütung fest, wenn die Bearbeitungszeit eines Roboters 1 (Systemzykluszeit) lang ist, und legt eine Positivvergütung fest, wenn die Zykluszeit kurz ist. Die Vergütungsberechnungseinheit 231 kann eine Negativvergütung festlegen, wenn eine Ausgabe eines Bearbeitungsüberwachungssensors weit von einem optimalen Wert entfernt liegt, und eine Positivvergütung festlegen, wenn eine Ausgabe eines Bearbeitungsüberwachungssensors nahe bei einem optimalen Wert liegt. Ferner kann die Vergütungsberechnungseinheit 231 eine Negativvergütung festlegen, wenn die Bearbeitungsgeschwindigkeit V, in der Roboter 1 eine Laserbearbeitung durchführt, gering ist, und eine Positivvergütung festlegen, wenn die Bearbeitungsgeschwindigkeit, in der der Roboter 1 eine Laserbearbeitung durchführt, hoch ist.
-
8A und 8B sind Schaubilder, die eine Beobachtung eines Status einer Laserbearbeitung durch einen Laserbearbeitungsroboter in dem Robotersystem gemäß der vorliegenden Erfindung beschreiben, wobei 8A eine Beobachtung von Plasmalicht von einem Laserbearbeitungspunkt veranschaulicht und 8B eine Beobachtung von Bearbeitungston von einem Laserbearbeitungspunkt veranschaulicht.
-
Wie in 8A veranschaulicht, ist das Bearbeitungswerkzeug (Laserbearbeitungskopf) 12 mit einem optischen Filter 31 versehen, um das Licht innerhalb eines gewissen Wellenlängenbereichs zu senden, und mit einem Photosensor (optischer Sensor) 32 versehen, um Plasmalicht vom Laserbearbeitungspunkt Pp innerhalb eines gewissen Wellenlängenbereichs zu erfassen und ein Signal Sp auszugeben. Bearbeitungsbedingungen (z. B. Bearbeitungsgeschwindigkeit V, Laserausgang und dergleichen) können derart verändert werden, dass das Erfassungssignal Sp in einen Bereich zwischen einem vorab ausgewählten unteren Grenzwert und einem vorab ausgewählten oberen Grenzwert fällt (vorab ausgewählter unterer Grenzwert < Sp < vorab ausgewählter oberer Grenzwert).
-
Wie in 8B veranschaulicht, ist das Bearbeitungswerkzeug 12 mit einem Tonerfassungsmikrofon (Tonsensor) 41 versehen, um einen Bearbeitungston vom Laserbearbeitungspunkt Pp zu erfassen. Die Ausgabe aus dem Mikrofon 41 wird einer Fast-Fourier-Transformation (FFT) in einer FFT-Umwandlungseinheit 42 unterzogen und die Signalfiltereinheit 43 gibt ein Erfassungssignal Ss innerhalb eines gewissen Frequenzbereichs aus. Bearbeitungsbedingungen (z. B. Bearbeitungsgeschwindigkeit V, Laserausgang und dergleichen) können derart verändert werden, dass das Erfassungssignal Ss in einen Bereich zwischen einem vorab ausgewählten unteren Grenzwert und einem vorab ausgewählten oberen Grenzwert fällt (vorab ausgewählter unterer Grenzwert < Ss < vorab ausgewählter oberer Grenzwert).
-
Eine mögliche Technik zum Überwachen eines Status einer Laserbearbeitung durch den Laserbearbeitungsroboter 1 liegt im Erfassen eines Bearbeitungstons von einem Laserbearbeitungspunkt Pp während einer Laserbearbeitung durch den Roboter 1, Extrahieren eines gewissen Frequenzbereichs aus dem Bearbeitungston vom Laserbearbeitungspunkt Pp und Überwachen des Status einer Laserbearbeitung durch den Roboter 1 auf Basis des Bearbeitungstons vom Laserbearbeitungspunkt Pp innerhalb des extrahierten gewissen Frequenzbereichs.
-
9 ist ein Ablaufplan, der ein Beispiel für eine Bearbeitung in der Maschinenlernvorrichtung veranschaulicht, die in 3 veranschaulicht ist. Wie in 9 veranschaulicht, werden, nachdem das Maschinenlernen gestartet wurde (Lernstart), Bearbeitungsbedingungen und Bearbeitungsreihenfolge auf Basis einer Aktionswerttabelle in Schritt ST1 ermittelt und danach wird die Systemzykluszeit in Schritt ST2 beurteilt. Die Aktionswerttabelle in ihrer Standardeinstellung wird vorab auf Basis bisheriger Erfahrungen, Ergebnissen aus Testbetrieben oder dergleichen erstellt.
-
Wenn die Systemzykluszeit in Schritt ST2 als lang ermittelt wird, wird in Schritt ST3a eine Negatiwergütung (-5) festgelegt; wenn die Systemzykluszeit als normal ermittelt wird, wird eine Nullvergütung (0) in Schritt ST3b festgelegt; und wenn die Systemzykluszeit als kurz ermittelt wird, wird eine Positivvergütung (+5) in ST3c festgelegt.
-
Ferner werden die in den Schritten ST3a bis ST3c festgelegten Vergütungen in Schritt ST4 aufaddiert und wird die Aktionswerttabelle in Schritt ST5 aktualisiert, danach wird der gleiche Prozess ab Schritt ST1 wiederholt.
-
10 ist ein Ablaufplan, der ein weiteres Beispiel für eine Bearbeitung in der Maschinenlernvorrichtung veranschaulicht, die in 3 veranschaulicht ist, wobei eine Ermittlung auf Basis einer Ausgabe eines Bearbeitungsüberwachungssensors und eine Ermittlung auf Basis einer Bearbeitungsgeschwindigkeit zum oben beschriebenen Ablaufplan in 9 addiert werden. Wie in 10 veranschaulicht, werden, nachdem das Maschinenlernen gestartet wurde (Lernstart), Bearbeitungsbedingungen und Bearbeitungsreihenfolge auf Basis einer Aktionswerttabelle in Schritt ST1 ermittelt und werden die Prozesse in den Schritten ST2, ST12 und ST22 durchgeführt.
-
Anders ausgedrückt wird in Schritt ST12 die Ausgabe des Bearbeitungsüberwachungssensors in Bezug auf den optimalen Wert ermittelt. Mehr im Detail wird z. B., wenn der Wert des Plasmalichts vom Laserbearbeitungspunkt, wie aus dem Photosensor ausgegeben, in Schritt ST12 als vom optimalen Wert (optimaler Plasmalichtwert) weit entfernt liegend ermittelt wird, in Schritt ST13a eine Negativvergütung (-10) festgelegt; wenn das Plasmalicht vom Laserbearbeitungspunkt als normal ermittelt wird, wird in Schritt ST13b eine Nullvergütung (0) festgelegt; und wenn das Plasmalicht aus dem Laserbearbeitungspunkt als nahe am optimalen Plasmalichtwert liegend ermittelt wird, wird in Schritt ST13c eine Positivvergütung (+10) festgelegt. Die in den Schritten ST13a bis ST13c festgelegten Vergütungen werden in Schritt ST14 aufaddiert, danach geht die Bearbeitung zu Schritt ST6 über.
-
Alternativ wird z. B., wenn der Bearbeitungston vom Laserbearbeitungspunkt in Schritt ST12 als vom optimalen Wert (optimaler Bearbeitungstonwert) weit entfernt liegend ermittelt wird, in Schritt ST13a eine Negativvergütung (-10) festgelegt; wenn der Bearbeitungston vom Laserbearbeitungspunkt als normal ermittelt wird, wird in Schritt ST13b eine Nullvergütung (0) festgelegt; und wenn der Bearbeitungston vom Laserbearbeitungspunkt als nahe am optimalen Bearbeitungstonwert liegend ermittelt wird, wird in Schritt ST13c eine Positivvergütung (+10) festgelegt. Die in den Schritten STI3a bis ST13c festgelegten Vergütungen werden in Schritt ST14 aufaddiert, danach geht die Bearbeitung zu Schritt ST6 über.
-
Ferner wird in Schritt ST22 die Bearbeitungsgeschwindigkeit ermittelt, in der der Roboter (Laserbearbeitungsroboter) eine Laserbearbeitung durchführt. Anders ausgedrückt wird, wenn die Bearbeitungsgeschwindigkeit in Schritt ST22 als niedrig ermittelt wird, in Schritt ST23a eine Negativvergütung (-5) festgelegt; wenn die Bearbeitungsgeschwindigkeit als normal ermittelt wird, wird eine Nullvergütung (0) in Schritt ST23b festgelegt; und wenn die Bearbeitungsgeschwindigkeit als hoch ermittelt wird, wird eine Positiwergütung (+5) in Schritt ST23c festgelegt. Die in den Schritten ST23a bis ST23c festgelegten Vergütungen werden in Schritt ST24 aufaddiert, danach geht die Bearbeitung zu Schritt ST6 über.
-
Die Schritte ST2, ST3a bis ST3c und ST4 sind wie unter Bezugnahme auf 9 beschrieben, und die in den Schritten ST3a bis ST3c festgelegten Vergütungen werden in Schritt ST4 aufaddiert, danach geht die Bearbeitung zu Schritt ST6 über. Die in den Schritten ST14, ST24 und ST4 jeweils aufaddierten Vergütungen werden in Schritt ST6 weiter aufaddiert, in Schritt ST5 wird die Aktionswerttabelle aktualisiert, danach wird der gleiche Prozess ab Schritt ST1 wiederholt.
-
Die oben beschriebenen Vergütungen weisen auch Werte auf, die gemäß jeweiligen Ermittlungskriterien gewichtet werden, die Werte der Vergütungen können jedoch auch nach Bedarf auf andere Werte geändert werden. Anders ausgedrückt wird die Ermittlung der Ausgabe des Bearbeitungsüberwachungssensors in Schritt ST12 in Bezug auf den optimalen Wert stärker gewichtet („-10, 0, +10“), während die Ermittlung der Bearbeitungsgeschwindigkeit, in der der Laserbearbeitungsroboter eine Laserbearbeitung durchführt, in Schritt ST22 und die Ermittlung der Systemzykluszeit (Zykluszeit) in Schritt ST2 gleich gewichtet werden („-5, 0, +5“), wobei diese Werte jedoch geändert werden können. Ferner können sich die Positiwergütung und die Negatiwergütung bei jedem Ermittlungskriterium in ihren absoluten Werten unterscheiden oder können alle Kriterien gleich gewichtet werden.
-
Wie oben ausführlich beschrieben, ermöglichen das Robotersystem und das Maschinenlernverfahren gemäß der vorliegenden Ausführungsform das Lernen einer Bearbeitungsreihenfolge eines Laserbearbeitungsroboters und das effiziente Lehren einer optimalen Lösung. Dies verringert die Bearbeitungszeit (Zykluszeit) des Laserbearbeitungsroboters und ermöglicht eine Bearbeitung unter optimalen Bearbeitungsbedingungen. Selbstverständlich kann die vorliegende Ausführungsform nicht nur umfassend auf Roboter angewandt werden, die ein Laserschweißen durchführen, sondern auch auf jene, die ein Laserschneiden und andere Formen der Laserbearbeitung durchführen.
-
Eine Maschinenlernvorrichtung, ein Robotersystem und ein Maschinenlernverfahren gemäß der vorliegenden Erfindung weisen vorteilhafte Wirkungen des Lernens einer Bearbeitungsreihenfolge für Laserbearbeitungsroboter und des effizienten Lehrens einer optimalen Lösung auf.
-
Alle Beispiele und Bedingungsformulierungen, die hier bereitgestellt sind, sollen dem pädagogischen Zweck dienen, dem Leser das Verstehen der Erfindung und der Konzepte, um die der Erfinder das Gebiet erweitert, zu erleichtern, und sollen nicht als auf diese spezifisch genannten Beispiele und Bedingungen einschränkend ausgelegt werden, und auch die Organisation solcher Beispiele in der Schrift stellt keine Überlegenheit und Unterlegenheit der Erfindung dar. Auch wenn eine oder mehrere Ausführungsformen der vorliegenden Erfindung ausführlich beschrieben wurden, sei verstanden, dass diverse Modifikationen, Substitutionen und Änderungen daran vorgenommen werden könnten, ohne sich vom Geist und Umfang der Erfindung zu entfernen.