[go: up one dir, main page]

DE102017008836B4 - Maschinelle Lernvorrichtung und maschinelles Lernverfahren zum Lernen eines optimalen Objekt-Greifwegs - Google Patents

Maschinelle Lernvorrichtung und maschinelles Lernverfahren zum Lernen eines optimalen Objekt-Greifwegs Download PDF

Info

Publication number
DE102017008836B4
DE102017008836B4 DE102017008836.5A DE102017008836A DE102017008836B4 DE 102017008836 B4 DE102017008836 B4 DE 102017008836B4 DE 102017008836 A DE102017008836 A DE 102017008836A DE 102017008836 B4 DE102017008836 B4 DE 102017008836B4
Authority
DE
Germany
Prior art keywords
objects
robot
machine learning
learning
torque
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102017008836.5A
Other languages
English (en)
Other versions
DE102017008836A1 (de
Inventor
Masafumi OOBA
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of DE102017008836A1 publication Critical patent/DE102017008836A1/de
Application granted granted Critical
Publication of DE102017008836B4 publication Critical patent/DE102017008836B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/087Controls for manipulators by means of sensing devices, e.g. viewing or touching devices for sensing other physical parameters, e.g. electrical or chemical properties
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1612Programme controls characterised by the hand, wrist, grip control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41815Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell
    • G05B19/4182Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell manipulators and conveyor only
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39106Conveyor, pick up article, object from conveyor, bring to test unit, place it
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40007Optimize sequence of pick and place operations upon arrival of workpiece on conveyor
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/008Artificial life, i.e. computing arrangements simulating life based on physical entities controlled by simulated intelligence so as to replicate intelligent life forms, e.g. based on robots replicating pets or humans in their appearance or behaviour
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Manipulator (AREA)

Abstract

Maschinelle Lernvorrichtung zum Lernen eines Betriebszustands eines Roboters, der eine Mehrzahl von auf einer Trägervorrichtung angeordneten Objekten unter Verwendung einer Hand zum Greifen der Objekte in einem Behälter verstaut, wobei die maschinelle Lernvorrichtung umfasst:eine Zustandsbeobachtungseinheit (11) zum Beobachten, während des Betriebs des Roboters, der Positionen und Stellungen der Objekte und einer Zustandsvariablen, die mindestens eines von einer Zykluszeit zum Verstauen der Objekte in dem Behälter und eines Drehmoments und einer Vibration, die auftreten, wenn der Roboter die Objekte greift, umfasst;eine Bestimmungsdaten-Einholungseinheit (12) zum Einholen von Bestimmungsdaten zum Bestimmen einer Spanne von jeweils der Zykluszeit, dem Drehmoment und der Vibration in Abhängigkeit von einem zulässigen Toleranzwert; undeine Lerneinheit (13) zum Lernen des Betriebszustands des Roboters in Übereinstimmung mit einem Trainingsdatensatz, der aus einer Kombination aus der Zustandsvariablen und den Bestimmungsdaten gebildet wird.

Description

  • HINTERGRUND DER ERFINDUNG
  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft eine maschinelle Lernvorrichtung und ein maschinelles Lernverfahren und betrifft insbesondere eine maschinelle Lernvorrichtung und ein maschinelles Lernverfahren zum Lernen eines optimalen Objekt-Greifwegs, wenn ein Roboter auf einer Trägervorrichtung angeordnete Objekte greift.
  • Beschreibung des Standes der Technik
  • Objektträgersysteme, die eine Mehrzahl von auf einer Trägervorrichtung, d.h., einem Förderer, beförderte Objekte sequenziell eines nach dem anderen mit einer Hand (mehrfingriger Hand), die mehrere Objekte halten kann, greifen und die die Objekte in Behälter legen, die gleichermaßen durch einen anderen Förderer befördert werden, sind bekannt. Herkömmlicherweise werden die Objekte beim Greifen und Herausnehmen der Objekte grundsätzlich in der Reihenfolge gegriffen, in der sich die Objekte stromabwärts von dem Förderer befinden.
  • Beispielsweise wird ein Verfahren vorgeschlagen, in dem ein Förderer entlang einer Förderrichtung von Objekten zweigeteilt ist, und die Objekte in der Reihenfolge, in der sich die Objekte stromabwärts von dem Förderer befinden, gegriffen und in Behälter gelegt werden (zum Beispiel die Druckschrift JP 2014-104 524 A ).
  • 1 zeigt ein herkömmliches Verfahren zum Greifen einer Mehrzahl von auf einem Förderer 10 angeordneten Objekten (a1 bis a3 und b1 bis b3) mit einer an einem Roboter 20 vorgesehenen (nicht gezeigten) Hand und Ablegen der Objekte in (nicht gezeigte) Behälter. Die Objekte sind auf einer Ebene des Förderers 10 in willkürlichen Orientierungen (Stellungen) angeordnet, wie durch die Pfeile der Objekte selbst (a1 bis a3 und b1 bis b3) angezeigt.
  • Die Hand hat die Funktionen des Greifens von drei Objekten und des Ablegens der Objekte in einen Behälter. Wenn sich der Förderer 10 von der linken nach der rechten Seite von 1 bewegt, befinden sich Objekte stromabwärts von dem Förderer 10 in der Reihenfolge a1, a2 und a3. Daher greift die Hand die Objekte a1, a2 und a3 in dieser Reihenfolge und legt die Objekte in einen Behälter und greift danach die Objekte b1, b2 und b3 in dieser Reihenfolge und legt die Objekte in einen anderen Behälter.
  • Da herkömmlicherweise die Objekte in der Reihenfolge gegriffen werden, in der sich die Objekte stromabwärts befinden, kann sich die Hand vor und zurück bewegen, wie durch die Pfeile in 1 angezeigt.
  • Da weiterhin die Stellungen der Objekte nicht berücksichtigt werden, kann sich die Hand des Roboters 20 beträchtlich drehen, wie in 1 gezeigt. Da beispielsweise die Objekte a1 und 3 ähnliche Stellungen aufweisen, dreht sich die Hand minimal beim Greifen der Objekte in der Reihenfolge a1, a2 und a3. Da jedoch die Hand die Objekte in der Reihenfolge greift, in der sich die Objekte stromabwärts befinden, greift die Hand die Objekte in der Reihenfolge a1, a2 und a3, wie in 1 gezeigt. Infolgedessen dreht sich die Hand des Roboters 20 um 180 Grad, um das Objekt a2 nach dem Greifen des Objekts a1 zu greifen, und dreht sich danach um 180 Grad, um das Objekt a3 zu greifen.
  • Das Verfahren gemäß der Druckschrift JP 2014-104 524 A , wie oben beschrieben, greift Objekte in der Reihenfolge, in der sich die Objekte stromabwärts befinden, ohne die Positionen der Objekte in der Breitenrichtung des Förderers 10 und die Orientierungen der Objekte zu berücksichtigen. Daher variiert die Bewegungszeit der Hand stark, und in einigen Fällen kann es dem Roboter misslingen, die Objekte in einen Behälter zu legen, während der Behälter vor dem Roboter vorbeiläuft.
  • Es ist denkbar, den Förderer für die Behälter jedes Mal zu stoppen, wenn der Roboter Objekte greift. Dies ist jedoch in aktuellen Produktionsstätten schwierig zu übernehmen, weil es Fälle gibt, in denen das Produktionsvolumen innerhalb einer bestimmten Zeitdauer vorbestimmt wird und das Fördern der Behälter aufgrund einer Beziehung zu nachfolgenden Schritten nicht gestoppt werden kann.
  • Das Dokument JP 2014-104 524 A beschreibt ein Verfahren, in dem ein Bereich weiter in kleinere Teilbereiche aufgeteilt wird und das Greifen in jedem Teilbereich ausgeführt wird, um die Tragestrecke zu reduzieren. Wenn jedoch der Förderer breit ist, dürfte das Aufteilen des Bereichs wenig Auswirkung haben. Da weiterhin die Orientierungen (Stellungen) der Objekte nicht berücksichtigt werden, kann der Roboter ein Objekt greifen, das eine von einer zum Greifen günstigen Stellung völlig unterschiedliche Stellung aufweist.
  • Weiterhin berücksichtigt das Verfahren von JP 2014-104 524 A die dem Roboter eigene Fähigkeit (zum Beispiel die Stärke eines Mechanismus und dergleichen) und den Unterschied der Tragfähigkeit aufgrund von Unterschieden der Stellen der Objekte auf dem Förderer nicht.
  • Das Dokument DE 10 2015 008 195 A1 offenbart ein Messen einer Bewegung eines ersten Förderbands mittels eines Sensors. Gegenstände werden auf einem benachbarten, zweiten Förderband transportiert und dort von einer Kamera erfasst. Es werden auf Basis der erfassten Bewegung des ersten Förderbands Zielbereiche auf dem ersten Förderband bestimmt, in denen die Objekte abgelegt werden sollen.
  • Die Druckschrift DE 11 2009 001 414 T5 offenbart das Erfassen von Objekten auf einem Förderband mittels einer Kamera. Zusätzlich wird die Bewegung des Förderbands ermittelt. Es wird bestimmt, ob sich einzelne Objekte in mehreren Kamerabildern befinden, um eine mehrfache Bearbeitung solcher Objekte zu vermeiden.
  • Das Dokument DE 10 2006 031 178 B4 offenbart eine Bildaufnahme einzelner auf einander folgender Abschnitte eines Förderbands mittels einer Kamera. In den einzelnen Bildern werden von dem Förderband transportierte Gegenstände detektiert. Es werden Nachführungsdaten für jeden der Abschnitte erzeugt, welche zur Steuerung eines Roboters verwendet werden, um einen Gegenstand zu greifen.
  • Die Druckschrift EP 2 998 076 A1 offenbart eine Robotersteuerung zum Sortieren von auf einem ersten Förderband transportierten Gegenständen. Der angesteuerte Roboter umfasst einen Greifer mit zwei Greifelementen, von denen jedes jeweils einen Gegenstand greifen kann. Die Gegenstände sind auf dem ersten Förderband in Breitenrichtung unterschiedlich ausgerichtet, ebenso wie die beiden Greifelemente des Greifers. Die Positionen der Gegenstände werden von einer Kamera erfasst und zur Ansteuerung des Roboters verwendet, sodass dieser mit je einem Greifelement einen Gegenstand aufnimmt und anschließend die beiden aufgenommenen Gegenstände geordnet ablegt.
  • Das Dokument EP 2 537 644 A1 offenbart ein Aufnahmesystem mit einem Roboter, der einen drehbaren Greifer mit mehreren Greifelementen umfasst, von denen jedes zur Aufnahme je eines Gegenstandes ausgelegt ist. Positionen und Ausrichtungen von auf einem ersten Förderband transportierten Gegenständen werden mit einer Kamera erfasst. Der Roboter greift die Gegenstände von dem ersten Förderband und legt sie auf einem zweiten Förderband ab. Hierbei werden der Roboter und der Greifer so gesteuert, dass die Gegenstände nach dem Ablegen relativ zu dem zweiten Förderband einheitlich ausgerichtet sind.
  • Das Dokument JP 2002-113 678 A befasst sich damit, wie Gegenstände am schnellsten von einem Robotergreifer aufgenommen werden können. Hierzu wird für jeden einer Vielzahl von bildlich erfassten Gegenständen vorab die Zeit berechnet, die benötigt würde, um den Greifer an den jeweiligen Gegenstand zu führen. Basierend auf den berechneten Zeiten wird eine Reihenfolge ermittelt, in der die Gegenstände aufgenommen werden sollen.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Es ist eine Aufgabe der vorliegenden Erfindung, eine maschinelle Lernvorrichtung und ein maschinelles Lernverfahren zum Reduzieren der Last auf einen Roboter, der eine Hand aufweist, die die Funktion des Greifens einer Mehrzahl von Objekten hat, bereitzustellen. Erfindungsgemäß ist hierzu die maschinelle Lernvorrichtung nach Anspruch 1 oder 13 sowie das maschinelle Lernverfahren nach Anspruch 12 vorgesehen. In einer Ausführungsform kann die Zykluszeit minimiert werden, die die Zeit ist, die der Roboter benötigt, um die Objekte in einem Behälter zu verstauen.
  • Eine maschinelle Lernvorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung lernt einen Betriebszustand eines Roboters, der eine Mehrzahl von auf einer Trägervorrichtung angeordneten Objekten unter Verwendung einer Hand zum Greifen der Objekte in einem Behälter verstaut. Die maschinelle Lernvorrichtung umfasst eine Zustandsbeobachtungseinheit zum Beobachten, während des Betriebs des Roboters, der Positionen und Stellungen der Objekte und einer Zustandsvariablen, die mindestens eines von einer Zykluszeit zum Verstauen der Objekte in dem Behälter und eines Drehmoments und einer Vibration, die auftreten, wenn der Roboter die Objekte greift, umfasst; eine Bestimmungsdaten-Einholungseinheit zum Einholen von Bestimmungsdaten zum Bestimmen einer Spanne von jeweils der Zykluszeit, dem Drehmoment und der Vibration in Abhängigkeit von einem zulässigen Toleranzwert; und eine Lerneinheit zum Lernen des Betriebszustands des Roboters in Übereinstimmung mit einem Trainingsdatensatz, der aus einer Kombination aus der Zustandsvariablen und den Bestimmungsdaten gebildet wird.
  • Eine maschinelle Lernvorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung lernt einen Betriebszustand eines Roboters, der eine Mehrzahl von auf einer Trägervorrichtung angeordneten Objekten unter Verwendung einer Hand zum Greifen der Objekte in einem Behälter verstaut. Das maschinelle Lernverfahren umfasst die Schritte des Beobachtens, während des Betriebs des Roboters, der Positionen und Stellungen der Objekte und einer Zustandsvariablen, die mindestens eines von einer Zykluszeit zum Verstauen der Objekte in dem Behälter und eines Drehmoments und einer Vibration, die auftreten, wenn der Roboter die Objekte greift, umfasst; Einholen von Bestimmungsdaten zum Bestimmen einer Spanne von jeweils der Zykluszeit, dem Drehmoment und der Vibration in Abhängigkeit von einem zulässigen Toleranzwert; und Lernen des Betriebszustands des Roboters in Übereinstimmung mit einem Trainingsdatensatz, der aus einer Kombination aus der Zustandsvariablen und den Bestimmungsdaten gebildet wird.
  • Figurenliste
  • Die Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden aus der folgenden ausführlichen Beschreibung von Ausführungsformen zusammen mit den beigefügten Zeichnungen ersichtlicher werden. In den beigefügten Zeichnungen:
    • 1 ist eine Zeichnung, die ein Verfahren zum Greifen einer Mehrzahl von auf einem Förderer angeordneten Objekten mit einer an einem Roboter vorgesehenen Hand, um die Objekte in Behälter zu legen, gemäß der herkömmlichen Technik zeigt;
    • 2 ist ein Blockschaltbild einer maschinellen Lernvorrichtung gemäß einer ersten Ausführungsform der vorliegenden Erfindung;
    • 3 ist eine Zeichnung, die ein Verfahren zum Greifen einer Mehrzahl von auf einem Förderer angeordneten Objekten mit einer an einem Roboter vorgesehenen Hand, um die Objekte durch die maschinelle Lernvorrichtung der ersten Ausführungsform der vorliegenden Erfindung in Behälter zu legen, zeigt;
    • 4 ist ein Ablaufdiagramm eines Prozesses des die Objekte greifenden Roboters unter Verwendung der maschinellen Lernvorrichtung gemäß der ersten Ausführungsform der vorliegenden Erfindung;
    • 5 ist eine Zeichnung, die ein Verfahren zum Greifen der auf dem Förderer angeordneten Objekte mit der an dem Roboter vorgesehenen Hand, um die Objekte in die Behälter zu legen, nachdem die maschinelle Lernvorrichtung gemäß der ersten Ausführungsform der vorliegenden Erfindung ein Lernen ausgeführt hat, zeigt;
    • 6 ist ein Ablaufdiagramm, das ein Verfahren zum Berechnen einer Belohnung in der maschinellen Lernvorrichtung gemäß der ersten Ausführungsform der vorliegenden Erfindung zeigt;
    • 7 ist ein schematisches Schaubild einen Neuronenmodells;
    • 8 ist ein schematisches Schaubild eines dreischichtigen neuronalen Netzwerkmodells;
    • 9 ist ein Blockschaltbild einer maschinellen Lernvorrichtung gemäß einer zweiten Ausführungsform der vorliegenden Erfindung;
    • 10 ist ein Blockschaltbild einer maschinellen Lernvorrichtung gemäß einer dritten Ausführungsform der vorliegenden Erfindung; und
    • 11 ist ein Blockschaltbild einer maschinellen Lernvorrichtung gemäß einer vierten Ausführungsform der vorliegenden Erfindung.
  • AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
  • Eine maschinelle Lernvorrichtung und ein maschinelles Lernverfahren gemäß der vorliegenden Erfindung werden nachfolgend mit Bezug auf die Zeichnungen beschrieben.
  • [Erste Ausführungsform]
  • Eine maschinelle Lernvorrichtung gemäß einer ersten Ausführungsform wird mit Bezug auf die Zeichnungen beschrieben. 2 ist ein Blockschaltdiagramm einer maschinellen Lernvorrichtung 101 gemäß der ersten Ausführungsform der vorliegenden Erfindung. 3 ist eine Zeichnung, die ein Verfahren zum Greifen einer Mehrzahl von auf einer Trägervorrichtung (Förderer) angeordneten Objekten mit einer an einem Roboter vorgesehenen Hand durch die maschinelle Lernvorrichtung gemäß der ersten Ausführungsform der vorliegenden Erfindung zeigt. Die maschinelle Lernvorrichtung 101 gemäß der ersten Ausführungsform der vorliegenden Erfindung lernt einen Betriebszustand eines Roboters 20, der eine Mehrzahl von auf einer Trägervorrichtung 10 angeordneten Objekten p1 bis p6 unter Verwendung einer (nicht gezeigten) Hand zum Greifen der Objekte in (nicht gezeigten) Behältern verstaut.
  • Die maschinelle Lernvorrichtung 101 umfasst eine Zustandsbeobachtungseinheit 11, eine Bestimmungsdaten-Einholungseinheit 12 und eine Lerneinheit 13.
  • Die Zustandsbeobachtungseinheit 11 beobachtet, während des Betriebs des Roboters 20, die Positionen und Stellungen der Objekte (p1 bis p6), und eine Zustandsvariable, die mindestens eines von einer Zykluszeit zum Verstauen der Objekte in dem Behälter und eines Drehmoments und einer Vibration, die auftreten, wenn der Roboter die Objekte greift, umfasst. Die Positionen und Stellungen der Objekte können basierend auf einem durch eine (nicht gezeigte) Kamera aufgenommenen Bild analysiert werden. In diesem Fall wird die Analyse der Positionen und Stellungen der Objekte bevorzugt zu dem Zeitpunkt abgeschlossen, wenn der Roboter 20 beginnt, die Objekte (p1 bis p6) zu greifen. Die Kamera befindet sich dabei bevorzugt stromaufwärts des Förderers 10 von dem Roboter 20. Es wird angemerkt, dass der Förderer 10 die Objekte von der linken Seite zur rechten Seite von 3 und 5 mit einer konstanten Geschwindigkeit befördert.
  • Die Zykluszeit bezieht sich auf die Zeit, ab der der Roboter beginnt, eine vorgeschriebene Anzahl von Objekten in einem Behälter zu verstauen, bis der Roboter das Verstauen der Objekte in dem Behälter abschließt. Die vorgeschriebene Anzahl von Objekten bezieht sich auf Objekte, deren Greifreihenfolge (Weg) zu bestimmen ist, und auf in einem bestimmten Bereich 30 von 3 enthaltene Objekte. Der Roboter 20 weist bevorzugt einen Zeitgeber zum Messen der Zykluszeit auf.
  • Das Drehmoment tritt auf, wenn sich die Hand zu den Positionen der Objekte bewegt und wenn sich die Hand abhängig von den Stellungen der Objekte dreht. Das Drehmoment wird basierend auf durch Motoren zum Antreiben der Hand und eines (nicht gezeigten) Arms des Roboters 20 fließende Ströme berechnet. Der Roboter 20 weist bevorzugt Amperemeter zum Messen der durch die Motoren fließenden Ströme auf. Es wird angemerkt, dass nachdem die Hand ein Objekt gegriffen hat, sich die Hand dreht, während sie sich an eine unterschiedliche Position bewegt, um ein weiteres Objekt zu greifen. Mit anderen Worten, nachdem die Hand ein Objekt gegriffen hat, bewegt sich die Hand, während sie sich dreht, um einen geeigneten Winkel zum Greifen des nächsten Objekts zu haben.
  • Vibration tritt auf, wenn sich die Hand zu Positionen des Objekts bewegt und stoppt, und wenn sich die Hand dreht und das Drehen abhängig von den Stellungen des Objekts stoppt. Um die Vibration zu messen, weist die Hand bevorzugt einen Beschleunigungssensor auf. Die Vibration wird basierend auf einer durch den Beschleunigungssensor detektierten Beschleunigung berechnet.
  • Die Bestimmungsdaten-Einholungseinheit 12 holt Bestimmungsdaten zum Bestimmen einer Spanne von jeweils der Zykluszeit, dem Drehmoment und der Vibration in Abhängigkeit von deren zulässigem Toleranzwert ein. Die zulässigen Toleranzwerte der Zykluszeit, des Drehmoments und der Vibration können in einem (nicht gezeigten) Speicher gespeichert werden. Die Zykluszeit, das Drehmoment und die Vibration sind bevorzugt allesamt gleich oder kleiner als die zulässigen Toleranzwerte.
  • Die Lerneinheit 13 lernt den Betriebszustand des Roboters in Übereinstimmung mit einem Trainingsdatensatz, der aus einer Kombination aus der Zustandsvariablen und den Bestimmungsdaten gebildet wird. Wenn die Zykluszeit, das Drehmoment und die Vibration allesamt gleich oder kleiner als die zulässigen Toleranzwerte sind, werden die Objekte bevorzugt in der Reihenfolge gegriffen, in der die Zykluszeit minimiert wird.
  • Als Nächstes wird der Arbeitsgang des Greifens von Objekten mit einem Roboter durch die maschinelle Lernvorrichtung gemäß der ersten Ausführungsform der vorliegenden Erfindung mit Bezug auf das Ablaufdiagramm von 4 beschrieben. Zuerst werden in Schritt S101 die derzeitigen Positionen und Stellungen einer Mehrzahl von Objekten (p1 bis p6) eingeholt. Die Objekte, deren Greifreihenfolge zu bestimmen ist, sind innerhalb eines bestimmten Bereichs 30 eines Förderers 10 angeordnet, wie durch die gestrichelten Linien von 3 angedeutet. In dem Beispiel von 3 ist die Greifreihenfolge der Objekte (p1 bis p6) zu bestimmen. Der bestimmte Bereich 30 des Förderers 10 ist bevorzugt ein Bereich, der eine optimale Anzahl von Objekten basierend auf einem Gleichgewicht zwischen der erforderlichen Zeit zum Berechnen der Zykluszeit, des Drehmoments und der Vibration in jeder Kombination der Greifreihenfolge der Objekte und der Geschwindigkeit des Förderers, um die Objekte zu bewegen, enthält.
  • Als Nächstes wird in Schritt S102 die Greifreihenfolge der Objekte basierend auf Lernergebnissen zugeordnet. Als Nächstes wird in Schritt S103 in Erwiderung einer Anfrage von dem Roboter 20 die Greifreihenfolge der Objekte von der maschinellen Lernvorrichtung 101 zum Roboter 20 gesendet.
  • 5 ist eine Zeichnung, die ein Verfahren zeigt zum Greifen der auf dem Förderer angeordneten Objekte mit der an dem Roboter vorgesehenen Hand, um die Objekte in den Behältern zu verstauen, nachdem die maschinelle Lernvorrichtung gemäß der ersten Ausführungsform der vorliegenden Erfindung einen Lernen ausgeführt hat. Als Ergebnisse des Lernens, wie durch Pfeile angedeutet, wird das Objekt p1 als Erstes gegriffen, das Objekt p3 wird als Nächstes gegriffen und das Objekt p2 wird zuletzt gegriffen.
  • Im Vergleich zu dem Fall der in 1 als ein Beispiel gezeigten herkömmlichen Technik ermöglicht das Greifen der Objekte in dieser Reihenfolge eine Reduktion der Bewegungsstrecke der Hand, um die Objekte zu greifen. Somit ist die zum Greifen der drei Objekte (p1 bis p3) erforderliche Zeit reduziert. Daher ist es möglich, die Zykluszeit, d.h. die zum Verstauen aller Objekte in dem Behälter erforderliche Zeit, zu verkürzen.
  • Die Hand greift drei Objekte in dieser Ausführungsform, ist jedoch nicht darauf beschränkt; die Anzahl der durch die Hand gegriffenen Objekte kann zwei oder vier oder mehr betragen. „Greifen“ umfasst ein „Ansaugen“ durch die Hand.
  • Gemäß der vorliegenden Erfindung dreht sich die Hand, um das Objekt p3 zu greifen, nachdem das Objekt p1 gegriffen wurde, um einen kleineren Winkel als der Winkel, um den sich die Hand dreht, um das Objekt a2 zu greifen, nachdem das Objekt a1 gegriffen wurde, wie in der herkömmlichen Technik beschrieben (siehe 1). Folglich ist es möglich, das Drehmoment und die Vibration, die auftreten, während die maschinelle Lernvorrichtung die drei Objekte (p1 bis p3) greift, zu reduzieren. Daher ist es möglich die Gesamtwerte des Drehmoments und der Vibration, die auftreten, während die maschinelle Lernvorrichtung alle Objekte in dem Behälter verstaut, zu reduzieren.
  • Als Nächstes wird die Konfiguration der Lerneinheit 13 beschrieben. Wie in 2 gezeigt, umfasst die Lerneinheit 13 eine Belohnungsberechnungseinheit 14 zum Berechnen einer Belohnung basierend auf den Bestimmungsdaten und eine Wertfunktion-Aktualisierungseinheit 15, die eine Wertfunktion aktualisiert, die zum Schätzen der Greifreihenfolge von Objekten verwendet wird, um mindestens eines von der Zykluszeit, dem Drehmoment und der Vibration basierend auf der Belohnung zu reduzieren.
  • Die Lerneinheit 13 aktualisiert eine Aktionswerttabelle entsprechend der Greifreihgenfolge von Objekten basierend auf der Zustandsvariablen, die mindestens eines von der Zykluszeit, dem Drehmoment, der Vibration und der Belohnung umfasst.
  • Die Lerneinheit 13 kann eine Aktionswerttabelle, die mindestens einem von der Zykluszeit, dem Drehmoment und der Vibration entspricht, wenn ein anderer Roboter mit derselben Konfiguration wie der Roboter 20 andere Objekte in einem Behälter verstaut, basierend auf der Zustandsvariablen und der Belohnung des anderen Roboters aktualisieren.
  • Die Belohnungsberechnungseinheit 14 berechnet eine Belohnung basierend auf mindestens einem von der Zykluszeit, dem Drehmoment und der Vibration. Des Weiteren kann, wenn das Greifen eines Objekts misslingt, oder mit anderen Worten, wenn ein Greiffehler auftritt, die Belohnungsberechnungseinheit 14 eine negative Belohnung vorsehen.
  • Die Lerneinheit 13 umfasst ferner bevorzugt eine Entscheidungsbestimmungseinheit 16, die die Greifreihenfolge von Objekten in Übereinstimmung mit Ergebnissen des Lernens in Übereinstimmung mit einem Trainingsdatensatz bestimmt.
  • Als Nächstes wird ein Verfahren zum Berechnen einer Belohnung beschrieben. 6 ist ein Ablaufdiagramm, das ein Verfahren zum Berechnen einer Belohnung in der maschinellen Lernvorrichtung gemäß der ersten Ausführungsform der vorliegenden Erfindung zeigt. Zuerst holt in Schritt S201 die Zustandsbeobachtungseinheit 11 Daten zu jeweils der Zykluszeit, dem Drehmoment und dem Vibrationsbetrag ein.
  • Als Nächstes bestimmt in Schritt S202 die Belohnungsberechnungseinheit 14, ob die Zykluszeit kürzer als ein Referenzwert ist oder nicht. Wenn die Zykluszeit kürzer als der Referenzwert ist, wird in Schritt S203 eine positive Belohnung vorgesehen. Wenn andererseits die Zykluszeit gleich groß oder länger als der Referenzwert ist, geht der Arbeitsgang weiter zu Schritt S201, und es wird keine Belohnung vorgesehen. Der Referenzwert der Zykluszeit ist der Durchschnittswert der Zykluszeit, wenn der Roboter für eine bestimmte Zeitdauer in der Vergangenheit betrieben wurde. Des Weiteren kann der Referenzwert in Übereinstimmung mit Lernergebnissen angepasst werden, wobei der Durchschnittswert als ein Anfangswert verwendet wird.
  • Als Nächstes bestimmt in Schritt S204 die Belohnungsberechnungseinheit 14, ob sich das Drehmoment erhöht hat oder nicht. Wenn das Drehmoment gleich oder kleiner als ein Referenzwert ist, geht der Arbeitsgang weiter zu Schritt S205 und es wird keine Belohnung vorgesehen. Wenn anderseits das Drehmoment größer als der Referenzwert ist, wird eine negative Belohnung in Schritt S207 vorgesehen. Der Referenzwert des Drehmoments ist der Durchschnittswert des Drehmoments, wenn der Roboter für eine bestimmte Zeitdauer betrieben wurde. Des Weiteren kann der Referenzwert in Übereinstimmung mit Lernergebnissen angepasst werden, wobei der Referenzwert als ein Anfangswert verwendet wird.
  • Als Nächstes bestimmt die Belohnungsberechnungseinheit 14 in Schritt S206, ob sich der Vibrationsbetrag erhöht hat oder nicht. Wenn der Vibrationsbetrag gleich groß oder kleiner als ein Referenzwert ist, geht der Arbeitsgang weiter zu Schritt S205, und es wird keine Belohnung vorgesehen. Wenn andererseits der Vibrationsbetrag größer als der Referenzwert ist, wird eine negative Belohnung in Schritt S207 vorgesehen. Der Referenzwert des Vibrationsbetrags ist der Durchschnittswert des Vibrationsbetrags, wenn der Roboter für eine bestimmte Zeitdauer in der Vergangenheit betrieben wurde. Des Weiteren kann der Referenzwert in Übereinstimmung mit Lernergebnissen angepasst werden, wobei der Durchschnittswert als ein Anfangswert verwendet wird.
  • Als Nächstes wird in Schritt S208 eine Belohnung berechnet. Wenn Rc eine Belohnung basierend auf der Zykluszeit darstellt, Rr eine Belohnung basierend auf dem Drehmoment darstellt und Rv eine Belohnung auf der Vibration darstellt wird der Gesamtwert R der Belohnungen durch R= α×Rc+β×Rr+γ×Rv berechnet, wobei vorgeschriebene Koeffizienten verwendet werden, die Gewichte definieren.
  • Als Nächstes aktualisiert die Lerneinheit 13 in Schritt S209 eine Aktionswerttabelle, die der Greifreihenfolge von Objekten entspricht, basierend auf einer Zustandsvariablen von mindestens einem von der Zykluszeit, dem Drehmoment, der Vibration und der Belohnung.
  • Die Lerneinheit 13 führt bevorzugt eine Berechnung einer durch die Zustandsbeobachtungseinheit 11 in einer mehrschichtigen Struktur beobachteten Zustandsvariablen durch und aktualisiert eine Aktionswerttabelle in Echtzeit. Als ein Verfahren zum Ausführen einer Berechnung einer Zustandsvariablen in einer mehrschichtigen Struktur kann beispielsweise ein mehrschichtiges neurales Netzwerk, wie in 8 gezeigt, verwendet werden.
  • Die in 2 gezeigte maschinelle Lernvorrichtung 101 wird ausführlich beschrieben. Die maschinelle Lernvorrichtung 101 hat die Funktion des Lernens von Wissen, sowie die Funktionen des Extrahierens von nützlichen Regeln, Wissensrepräsentationen, Kriterien und dergleichen aus einer in die Vorrichtung durch Analyse eingegebene Datengruppe, und des Ausgebens von Bestimmungsergebnissen. Hierfür gibt es verschiedene Verfahren, die grob in „überwachtes Lernen“ „unüberwachtes Lernen“ und „bestärkendes Lernen“ unterteilt werden. Darüber hinaus wird beim Verwirklichen dieser Verfahren ein als „Deep-Learning“ bezeichnetes Verfahren zum Lernen der Extraktion von den Merkmalen selbst eingesetzt.
  • Beim „überwachten Lernen“ wird eine große Menge an Datenpaaren einer bestimmten Eingabe und ein Ergebnis (Label) einem Lernsystem bereitgestellt. Das Lernsystem lernt Merkmale aus dem Datensatz und erhält heuristisch ein Modell, um ein Ergebnis aus einer Eingabe, d.h. der Beziehung dazwischen, vorherzusagen. „Überwachtes Lernen“ kann durch Verwenden eines Algorithmus, wie ein später beschriebenes neurales Netzwerk, verwirklicht werden.
  • Beim „unüberwachten Lernen“ wird nur eine große Menge von Eingabedaten dem Lernsystem bereitgestellt. Das Lernsystem lernt die Verteilung der Eingabedaten und wendet Komprimierung, Klassifizierung, Ausrichtung oder dergleichen auf die Eingabedaten an, ohne mit entsprechenden Ausgabedaten als Überwacher versorgt zu werden. Die Merkmale des Datensatzes können einem Clustern durch Analogie unterworfen werden. Mit Verwendung dieses Ergebnisses wird, während ein bestimmtes Kriterium bereitgestellt wird, eine Ausgabe zugeordnet, um das Kriterium zu optimieren, und dies erlaubt eine Vorhersage der Ausgabe. Es gibt ebenfalls ein als „teilüberwachtes Lernen“ bezeichnetes Verfahren als eine Zwischenproblemlösung zwischen dem „überwachten Lernen“ und dem „unüberwachten Lernen“, in dem ein Teil der Daten Paare einer Eingabe und einer Ausgabe umfassen, während der andere Teil nur Eingabedaten umfasst. In dieser Ausführungsform verwendet das unüberwachte Lernen Daten, die ohne aktuelles Betreiben des Roboters eingeholt werden können, um die Lerneffizienz zu verbessern.
  • Probleme beim bestärkenden Lernen werden wie folgt bestimmt.
    • - Der Roboter beobachtet einen Umgebungszustand und bestimmt eine Aktion.
    • - Die Umgebung ändert sich in Übereinstimmung mit einigen Regeln, und manchmal ändern die Aktionen des Roboters selbst die Umgebung.
    • - Ein Belohnungssignal kehrt immer dann zurück, wenn eine Aktion ausgeführt wird.
    • - Das Ziel ist, eine (diskontierte) Gesamtbelohnung in der Zukunft zu maximieren.
    • - Das Lernen wird ab einem Zustand begonnen, in dem ein Ergebnis, das durch eine Aktion bewirkt wird, nicht oder nur unzureichend bekannt ist. Der Roboter erhält das Ergebnis als Daten erst nachdem der Roboter tatsächlich betrieben wird. Mit anderen Worten, es ist notwendig, eine optimale Aktion durch Ausprobieren zu suchen.
    • - Das Lernen kann ab einem günstigen Startpunkt begonnen werden, indem ein herkömmliches Lernen ausgeführt wird (mittels dem oben beschriebenen überwachten Lernen oder inversen bestärkenden Lernen), um in einem Ausgangszustand die Aktion eines Menschen zu imitieren.
  • Das „bestärkende Lernen“ ist ein Verfahren zum Lernen von optimalen Aktionen basierend auf Interaktionen zwischen einer Aktion und einer Umgebung durch Lernen von Aktionen, sowie Bestimmen und Klassifizieren; mit anderen Worten, es ist ein Lernverfahren, um eine in der Zukunft erhaltene Gesamtbelohnung zu maximieren. In dieser Ausführungsform zeigt dies an, dass Aktionen, die eine Wirkung auf die Zukunft haben, eingeholt werden können. Die folgende Beschreibung nimmt Q-Lernen als ein Beispiel, ist jedoch nicht darauf beschränkt.
  • Das Q-Lernen ist ein Verfahren zum Lernen eines Q(s, a)-Werts zum Wählen einer Aktion „a“ in einem gewissen Umgebungszustand „s“. Mit anderen Worten, in einem gewissen Zustand „s“ wird eine Aktion „a“ mit dem höchsten Q(s, a)-Wert als eine optimale Aktion gewählt. Jedoch ist ein korrekter Q(s, a)-Wert bezüglich einer Kombination eines Zustands „s“ und einer Aktion „a“ zu Beginn überhaupt nicht bekannt. Daher wählt ein Agent verschiedene Aktionen „a“ in einem gewissen Zustand „s“, und erhält eine Belohnung für jede Aktion „a“. Dadurch lernt der Agent eine bessere Aktion, d.h. einen korrekten Q(s, a)-Wert, zu wählen.
  • Das Ziel ist, eine in der Zukunft zu erzielende Gesamtbelohnung zu maximieren, d.h., Q(s, a) = E[Σγtrt] als ein Ergebnis von Aktionen zu erzielen (es wird ein erwarteter Wert genommen, wenn sich ein Zustand in Übereinstimmung mit optimalen Aktionen ändert; die optimalen Aktionen sind selbstverständlich noch nicht bekannt und müssen somit während des Lernens gefunden werden). Beispielsweise wird eine Aktualisierungsgleichung für einen Q(s, a)-Wert wie folgt dargestellt: Q ( s t , a t ) Q ( s t , a t ) + α ( r t + 1 + y m a x α Q ( s t + 1 , a ) Q ( s t , a t ) )
    Figure DE102017008836B4_0001
    wobei st einen Umgebungszustand zum Zeitpunkt t darstellt und at eine Aktion zum Zeitpunkt t darstellt. Durch Ausführen der Aktion at ändert sich der Zustand zu st+1. „rt+1“ stellt eine durch die Zustandsänderung bereitgestellte Belohnung dar. Ein Begriff „max“ stellt das Produkt aus einem Q-Wert, wenn eine Aktion „a“ mit dem zu diesem Zeitpunkt bekannten höchsten Wert Q in dem Zustand st+1 gewählt wird, und γ dar. „γ“ ist ein Parameter im Bereich von 0<γ≤1 und wird Diskontierungsfaktor genannt. „α“ ist eine Lernrate im Bereich von 0<α≤1.
  • Diese Gleichung bezeichnet ein Verfahren zum Aktualisieren eines Q(st, at)-Werts einer Aktion at in einem Zustand st basierend auf einer Belohnung rt+1, die als ein Ergebnis der Aktion at zurückgesendet wurde. Diese Aktualisierungsgleichung zeigt an, dass, im Vergleich zu einem Q(st, at)-Wert einer Aktion „a“ in einem Zustand „s“, wenn im nächsten Zustand ein von einer Belohnung rt+1 plus der Aktion „a“ abgeleiteter Wert Q(st+1, max at+1) einer optimalen Aktion „max a“ höher ist, Q(st, at) erhöht wird. Wenn nicht, wird Q(st, at) verringert. Mit anderen Worten, der Wert einer Aktion in einem bestimmten Zustand wird an einen optimalen Aktionswert im nächsten Zustand angenähert, der von einer sofort als ein Ergebnis der Aktion zurückkehrenden Belohnung und der Aktion selbst abgeleitet wird.
  • Es gibt zwei Verfahren zum Darstellen von Q(s, a)-Werten in einem Computer, d.h. ein Verfahren, in dem Q-Werte von allen Zustands-Aktions-Paaren (s, a) in einer Tabelle (Aktionswerttabelle) gespeichert werden, und ein Verfahren, in dem eine Funktion zum Annähern von Q(s, a)-Werten erstellt wird. Bei letzterem Verfahren kann das oben beschriebene Aktualisierungsverfahren verwirklicht werden, indem ein Parameter für eine Näherungsfunktion mittels eines stochastischen Gradientenverfahrens oder dergleichen angepasst wird. Als die Näherungsfunktion kann ein wie später beschriebenes neurales Netzwerk verwendet werden.
  • Als ein Näherungsalgorithmus für eine Wertefunktion im überwachten Lernen, dem unüberwachten Lernen und dem bestärkenden Lernen kann ein neurales Netzwerk verwendet werden. Das neurale Netzwerk besteht beispielsweise aus einer Arithmetik-Einheit, einem Speicher und dergleichen, die ein Modell eines Neurons imitieren, wie in 7 gezeigt. Die 7 ist eine schematische Ansicht eines Modells eines Neurons.
  • Wie in 7 gezeigt erzeugt ein Neuron eine Ausgabe y in Erwiderung auf einer Mehrheit von Eingaben x (zum Beispiel Eingaben x1 bis x3). Jede der Eingaben x1 bis x3 wird mit einem der Eingabe x entsprechenden Gewicht w (w1 bis w3) beaufschlagt. Somit erzeugt das Neuron die durch die folgende Gleichung dargestellte Ausgabe y. Es wird angemerkt, dass die Eingabe x, die Ausgabe y und das Gewicht w allesamt Vektoren sind. y = f k ( i = 1 n x i w i θ )
    Figure DE102017008836B4_0002
    wobei θ ein Bias (Fehlerfaktor) ist und fk die Aktivierungsfunktion ist.
  • Als Nächstes wird ein dreischichtiges neurales Netzwerk mit Gewichten von drei Schichten, das aus einer Kombination von den oben beschriebenen Neuronen gebildet wird, mit Bezug auf 8 beschrieben. 8 ist ein schematisches Schaubild eines neuralen Netzwerks mit Gewichten von drei Schichten D1 bis D3.
  • Wie in 8 gezeigt werden eine Mehrzahl von Eingaben x (zum Beispiel Eingaben x1 bis x3) von der linken Seite des neuralen Netzwerks eingegeben und ein Ergebnis y (zum Beispiel Ergebnisse y1 bis y3) wird von dessen rechten Seite ausgegeben.
  • Genauer gesagt werden die Eingaben x1 bis x3 in jede der drei Neuronen N11 bis N13 eingegeben, während sie entsprechend gewichtet werden. Die den Eingaben auferlegten Gewichte werden insgesamt als W1 bezeichnet.
  • Die Neuronen N11 bis N13 geben die jeweiligen Vektoren Z11 bis Z13 aus. Die Vektoren Z11 bis Z13 werden insgesamt durch einen Merkmalsvektor Z1 bezeichnet, der als ein Vektor betrachtet wird, der einen Merkmalsbetrag aus dem Eingabevektor extrahiert. Der Merkmalsvektor Z1 ist ein Merkmalsfaktor zwischen dem Gewicht W1 und einem Gewicht W2.
  • Die Vektoren Z11 bis Z13 werden in jede der zwei Neuronen eingegeben, während sie entsprechend gewichtet werden. Die den Merkmalsvektoren auferlegten Gewichte werden insgesamt als W2 bezeichnet.
  • Die Neuronen N21 und N22 geben die j Vektoren Z21 beziehungsweise Z22 aus. Die Vektoren Z21 und Z22 werden insgesamt durch einen Merkmalsvektor Z2 bezeichnet.
  • Der Merkmalsvektor Z2 ist ein Merkmalsvektor zwischen dem Gewicht W2 und einem Gewicht W3.
  • Die Merkmalsvektoren Z21 und Z22 werden in jede der drei Neuronen N31 bis N33 eingegeben, während sie entsprechend gewichtet werden. Die den Merkmalsvektoren auferlegten Gewichte werden insgesamt als W3 bezeichnet.
  • Zum Schluss geben die Neuronen N31 bis N33 die jeweiligen Ergebnisse y1 bis y3 aus.
  • Das neurale Netzwerk besitzt einen Lernmodus und einen Wertvorhersagemodus. Im Lernmodus wird das Gewicht W unter Verwendung eines Lerndatensatzes gelernt. Im Wertvorhersagemodus wird die Aktion des Roboters unter Verwendung des in dem Lernmodus erhaltenen Parameters bestimmt (das Wort „Vorhersage“ wird er Einfachheit halber verwendet, es können jedoch verschiedene Aufgaben ausgeführt werden, die Detektion, Klassifizierung, Schlussfolgerung und dergleichen umfassen).
  • Im Wertvorhersagemodus können Daten, die durch einen tatsächlichen Betrieb des Roboters erhalten werden, sofort gelernt und in der nächsten Aktion wiedergegeben werden (Online-Lernen). Ferner kann das Lernen gemeinsam unter Verwendung einer vorab gesammelten Datengruppe ausgeführt werden, und ein Detektionsmodus kann danach unter Verwendung des Parameters ausgeführt werden (Batch-Lernen). Auf eine dazwischenliegende Weise kann der Lernmodus immer dann ausgeführt werden, wenn sich eine bestimmte Menge an Daten angesammelt hat.
  • Die Gewichte W1 bis W3 können unter Verwendung eines Fehlerrückführungsalgorithmus (Rückführungsalgorithmus) gelernt werden. Informationen über einen Fehler treten von rechts ein und breiten sich nach links aus. Der Fehlerrückführungsalgorithmus ist ein Verfahren, in dem die Gewichte in Bezug auf jedes Neuron angepasst (gelernt) werden, um den Unterschied zwischen einer Ausgabe y und einer Ist-Ausgabe y (Überwacher) in Erwiderung einer Eingabe x zu minimieren.
  • Ein solches neurales Netzwerk kann mehr als drei Schichten aufweisen (als Deep-Learning bezeichnet). Eine Arithmetik-Einheit, die eine Merkmalextraktion aus Eingaben in Stufen und der Regression von Ergebnissen ausführt, kann automatisch nur von Überwachungsdaten erfasst werden.
  • Um demzufolge das oben beschriebene Q-Lernen auszuführen, wie in 2 gezeigt, umfasst die maschinelle Lernvorrichtung 101 gemäß dieser Ausführungsform die Zustandsbeobachtungseinheit 11, die Lerneinheit 13 und die Entscheidungsbestimmungseinheit 16. Ein auf die vorliegende Erfindung angewendetes maschinelles Lernverfahren ist jedoch nicht auf das Q-Lernen beschränkt. Beispielsweise entspricht im Falle der Anwendung des überwachten Lernens eine Wertfunktion einem Lernmodell, und eine Belohnung entspricht einem Fehler.
  • Wie in 2 gezeigt umfasst der Zustand des Roboters 20 einen durch eine Aktion indirekt geänderten Zustand und einen durch eine Aktion direkt geänderten Zustand. Der durch eine Aktion indirekt geänderte Zustand umfasst die Zykluszeit, das Drehmoment und die Vibration. Der durch eine Aktion direkt geänderte Zustand umfasst einen Stromwert.
  • Die Lerneinheit 3 aktualisiert einen Aktionswert, der einer aktuellen Zustandsvariablen entspricht, und eine in der Aktionswertabelle zu ergreifenden Aktion basierend auf der Aktualisierungsgleichung und der Belohnung.
  • In dem Beispiel von 2 wird die eigene Aktionswerttabelle aktualisiert, indem die durch die Lerneinheit der eigenen maschinellen Lernvorrichtung aktualisierte Aktionswerttabelle verwendet wird, ist jedoch nicht darauf beschränkt. Die eigene Aktionswerttabelle kann aktualisiert werden, indem eine durch eine Lerneinheit einer von der eigenen maschinellen Lernvorrichtung unterschiedlichen anderen maschinellen Lernvorrichtung aktualisierte Aktionswerttabelle verwendet wird.
  • [Zweite Ausführungsform]
  • Es wird eine maschinelle Lernvorrichtung gemäß einer zweiten Ausführungsform der vorliegenden Erfindung beschrieben. 9 ist ein Blockschaltbild der maschinellen Lernvorrichtung gemäß der zweiten Ausführungsform der vorliegenden Erfindung. Der Unterschied zwischen einer maschinellen Lernvorrichtung 102 gemäß der zweiten Ausführungsform der Erfindung und der maschinellen Lernvorrichtung 101 gemäß der ersten Ausführungsform besteht darin, dass die maschinelle Lernvorrichtung 102 mit einem ersten Roboter 21 und einem zweiten Roboter 22 durch eine Kommunikationseinheit 18, d.h., einem Netzwerk verbunden ist und die Zustandsbeobachtungseinheit 11 eine aktuelle Zustandsvariable durch das Netzwerk erhält. Die anderen Konfigurationen der maschinellen Lernvorrichtung 102 gemäß der zweiten Ausführungsform sind dieselben wie die der maschinellen Lernvorrichtung 101 gemäß der ersten Ausführungsform, und daher wird auf deren ausführliche Beschreibung verzichtet.
  • Die maschinelle Lernvorrichtung 102 ist bevorzugt in einem Cloud-Server installiert.
  • Es kann aufgrund einer hohen Verarbeitungslast für einen Roboter schwierig werden, ein Lernen während eines Hochgeschwindigkeitsbetriebs auszuführen. Gemäß der Konfiguration der maschinellen Lernvorrichtung der zweiten Ausführungsform der vorliegenden Erfindung wird das Lernen durch eine von der Robotersteuerung unterschiedlichen Vorrichtung ausgeführt, womit die Belastung für den Roboter reduziert wird.
  • [Dritte Ausführungsform]
  • Es werden maschinelle Lernvorrichtungen gemäß einer dritten Ausführungsform der vorliegenden Erfindung beschrieben. 10 ist ein Blockschaltbild der maschinellen Lernvorrichtung gemäß der dritten Ausführungsform der vorliegenden Erfindung. Der Unterschied zwischen den maschinellen Lernvorrichtungen 103-1 und 103-2 gemäß der dritten Ausführungsform der vorliegenden Erfindung und der maschinellen Lernvorrichtung 101 gemäß der ersten Ausführungsform besteht darin, dass eine maschinelle Lernvorrichtung in jeder einer Mehrzahl von durch einen Netzknoten 19 verbundenen Robotersteuerungen vorgesehen wird. Die anderen Konfigurationen der maschinellen Lernvorrichtungen 103-1 und 103-2 gemäß der dritten Ausführungsform sind dieselben wie die der maschinellen Lernvorrichtung 101 gemäß der ersten Ausführungsform, und daher wird auf deren ausführliche Beschreibung verzichtet.
  • Eine erste maschinelle Lernvorrichtung 103-1 ist in einer ersten Robotersteuerung 201 zum Steuern eines ersten Roboters 21 vorgesehen. Eine zweite maschinelle Lernvorrichtung 103-2 ist in einer zweiten Robotersteuerung 202 zum Steuern eines zweiten Roboters 22 vorgesehen.
  • Diese Struktur ermöglicht die gemeinsame Nutzung einer durch eine der maschinellen Lernvorrichtungen unter den maschinellen Lernvorrichtungen erstellte Aktionswerttabelle und verbessert somit die Effizienz des Lernens.
  • [Vierte Ausführungsform]
  • Es wird eine maschinelle Lernvorrichtung gemäß einer vierten Ausführungsform der vorliegenden Erfindung beschrieben. 11 ist ein Blockschaltbild der maschinellen Lernvorrichtung gemäß der vierten Ausführungsform der vorliegenden Erfindung. Der Unterschied zwischen einer maschinellen Lernvorrichtung 104 gemäß der vierten Ausführungsform der vorliegenden Erfindung und der maschinellen Lernvorrichtung 101 gemäß der ersten Ausführungsform besteht darin, dass die maschinelle Lernvorrichtung 104 die Positionen und Stellungen von auf einem Förderer angeordneten Objekten aufzeichnet und sammelt und die Positionen und Stellungen der Objekte (p1 bis p6) auf dem Förderer 10 offline reproduziert, um die optimale Greifreihenfolge der Objekte zu lernen. Die anderen Konfigurationen der maschinellen Lernvorrichtung 104 gemäß der vierten Ausführungsform sind dieselben wie die der maschinellen Lernvorrichtung 101 gemäß der ersten Ausführungsform, und daher wird auf deren ausführliche Beschreibung verzichtet.
  • Eine erste Robotersteuerung 201 steuert einen ersten Roboter 21, während eine zweite Robotersteuerung 202 einen zweiten Roboter 22 steuert. Die maschinelle Lernvorrichtung 104 ist außerhalb der ersten Robotersteuerung 201 und der zweiten Robotersteuerung 202 vorgesehen. Die maschinelle Lernvorrichtung 104 empfängt Daten („LOG“) über die Positionen und Stellungen der Objekte, die aus durch (nicht gezeigte) Kameras aufgenommenen Bildern eingeholt werden, wobei die Kameras jeweils in der Nähe von jeweils dem ersten Roboter 21 und dem zweiten Roboter 22 vorgesehen sind, und lernt die optimale Greifreihenfolge der Objekte. Die Lernergebnisse werden an die erste Robotersteuerung 201 und die zweite Robotersteuerung 202 gesendet, sodass der erste Roboter 21 und der zweite Roboter 22 die Objekte in der optimalen Reihenfolge greifen können.
  • Gemäß der maschinellen Lernvorrichtung und dem maschinellen Lernverfahren der Ausführungsformen der vorliegenden Erfindung ist es möglich, sowohl die Belastung des Roboters zu reduzieren als auch die Zykluszeit zu minimieren, die die Zeit ist, die von dem Roboter benötigt wird, um die Mehrzahl von Objekten unter Verwendung der die Funktion des Greifens der Objekte aufweisenden Hand in Behältern zu verstauen.

Claims (13)

  1. Maschinelle Lernvorrichtung zum Lernen eines Betriebszustands eines Roboters, der eine Mehrzahl von auf einer Trägervorrichtung angeordneten Objekten unter Verwendung einer Hand zum Greifen der Objekte in einem Behälter verstaut, wobei die maschinelle Lernvorrichtung umfasst: eine Zustandsbeobachtungseinheit (11) zum Beobachten, während des Betriebs des Roboters, der Positionen und Stellungen der Objekte und einer Zustandsvariablen, die mindestens eines von einer Zykluszeit zum Verstauen der Objekte in dem Behälter und eines Drehmoments und einer Vibration, die auftreten, wenn der Roboter die Objekte greift, umfasst; eine Bestimmungsdaten-Einholungseinheit (12) zum Einholen von Bestimmungsdaten zum Bestimmen einer Spanne von jeweils der Zykluszeit, dem Drehmoment und der Vibration in Abhängigkeit von einem zulässigen Toleranzwert; und eine Lerneinheit (13) zum Lernen des Betriebszustands des Roboters in Übereinstimmung mit einem Trainingsdatensatz, der aus einer Kombination aus der Zustandsvariablen und den Bestimmungsdaten gebildet wird.
  2. Maschinelle Lernvorrichtung nach Anspruch 1, wobei die Zykluszeit die Zeit ist, ab der der Roboter beginnt, eine vorgeschriebene Anzahl von Objekten in einem Behälter zu verstauen, bis der Roboter das Verstauen der Objekte in dem Behälter abschließt.
  3. Maschinelle Lernvorrichtung nach Anspruch 1 oder 2, wobei das Drehmoment basierend auf einem durch einen Motor zum Antreiben des Roboters fließenden Strom berechnet wird.
  4. Maschinelle Lernvorrichtung nach einem der Ansprüche 1 bis 3, wobei die Vibration basierend auf einer durch einen in der Hand vorgesehenen Beschleunigungssensor detektierten Beschleunigung berechnet wird.
  5. Maschinelle Lernvorrichtung nach einem der Ansprüche 1 bis 4, wobei die Lerneinheit (13) umfasst: eine Belohnungsberechnungseinheit (14) zum Berechnen einer Belohnung basierend auf den Bestimmungsdaten; und eine Wertfunktions-Aktualisierungseinheit (15) zum Aktualisieren einer Wertfunktion, die zum Schätzen der Greifreihenfolge der Objekte verwendet wird, um mindestens eines von der Zykluszeit, dem Drehmoment und der Vibration basierend auf der Belohnung zu reduzieren.
  6. Maschinelle Lernvorrichtung nach Anspruch 5, wobei die Lerneinheit (13) eine Aktionswerttabelle, die der Greifreihenfolge der Objekte entspricht, basierend auf der Zustandsvariablen von mindestens einem von der Zykluszeit, dem Drehmoment und der Vibration und der Belohnung aktualisiert.
  7. Maschinelle Lernvorrichtung nach Anspruch 6, wobei die Lerneinheit (13) eine Aktionswerttabelle, die mindestens einem von der Zykluszeit, dem Drehmoment und der Vibration entspricht, wenn ein anderer Roboter mit derselben Konfiguration wie der Roboter andere Objekte in einem Behälter verstaut, basierend auf einer Zustandsvariablen des anderen Roboters und der Belohnung aktualisiert.
  8. Maschinelle Lernvorrichtung nach einem der Ansprüche 5 bis 7, wobei eine Belohnungsberechnungseinheit (14) die Belohnung basierend auf mindestens einem von der Zykluszeit, dem Drehmoment und der Vibration berechnet.
  9. Maschinelle Lernvorrichtung nach einem der Ansprüche 1 bis 8, ferner umfassend eine Entscheidungsbestimmungseinheit (16) zum Bestimmen der Greifreihenfolge der Objekte basierend auf einem Lernergebnis durch die Lerneinheit (13) in Übereinstimmung mit dem Trainingsdatensatz.
  10. Maschinelle Lernvorrichtung nach einem der Ansprüche 1 bis 9, wobei die maschinelle Lernvorrichtung (102) mit dem Roboter durch ein Netzwerk verbunden ist, und die Zustandsbeobachtungseinheit (11) eine aktuelle Zustandsvariable durch das Netzwerk erhält.
  11. Maschinelle Lernvorrichtung nach einem der Ansprüche 1 bis 10, wobei die maschinelle Lernvorrichtung (102) in einem Cloud-Server installiert ist.
  12. Maschinelles Lernverfahren zum Lernen eines Betriebszustands eines Roboters, der eine Mehrzahl von auf einer Trägervorrichtung angeordneten Objekten in einem Behälter unter Verwendung einer Hand zum Greifen der Objekte verstaut, wobei das maschinelle Lernverfahren die Schritte umfasst: Beobachten, während des Betriebs des Roboters, der Positionen und Stellungen der Objekte und einer Zustandsvariablen, die mindestens eines von einer Zykluszeit zum Verstauen der Objekte in dem Behälter und eines Drehmoments und einer Vibration, die auftreten, wenn der Roboter die Objekte greift, umfasst; Einholen von Bestimmungsdaten zum Bestimmen einer Spanne von jeweils der Zykluszeit, dem Drehmoment und der Vibration in Abhängigkeit von einem zulässigen Toleranzwert; und Lernen des Betriebszustands des Roboters in Übereinstimmung mit einem Trainingsdatensatz, der aus einer Kombination aus der Zustandsvariablen und den Bestimmungsdaten gebildet wird.
  13. Maschinelle Lernvorrichtung zum Lernen eines Betriebszustands eines Roboters, der eine Mehrzahl von auf einem Träger angeordneten Objekten unter Verwendung einer Hand zum Greifen der Objekte in einem Behälter verstaut, wobei die maschinelle Lernvorrichtung umfasst: eine Zustandsbeobachtungseinheit (11) zum Beobachten, während des Betriebs des Roboters, der Positionen und Stellungen der Objekte und einer Zustandsvariablen, die mindestens eines von einer Zykluszeit zum Verstauen der Objekte in dem Behälter und eines Drehmoments und einer Vibration, die auftreten, wenn der Roboter die Objekte greift, umfasst; eine Bestimmungsdaten-Einholungseinheit (12) zum Einholen von Bestimmungsdaten zum Bestimmen einer Spanne von jeweils der Zykluszeit, dem Drehmoment und der Vibration in Abhängigkeit von einem zulässigen Toleranzwert; und eine Lerneinheit (13) zum Lernen des Betriebszustands des Roboters basierend auf der Zustandsvariablen und den Bestimmungsdaten.
DE102017008836.5A 2016-09-27 2017-09-20 Maschinelle Lernvorrichtung und maschinelles Lernverfahren zum Lernen eines optimalen Objekt-Greifwegs Active DE102017008836B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016188857A JP6514171B2 (ja) 2016-09-27 2016-09-27 最適な物品把持経路を学習する機械学習装置、及び機械学習方法
JP2016-188857 2016-09-27

Publications (2)

Publication Number Publication Date
DE102017008836A1 DE102017008836A1 (de) 2018-03-29
DE102017008836B4 true DE102017008836B4 (de) 2020-09-24

Family

ID=61564424

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017008836.5A Active DE102017008836B4 (de) 2016-09-27 2017-09-20 Maschinelle Lernvorrichtung und maschinelles Lernverfahren zum Lernen eines optimalen Objekt-Greifwegs

Country Status (4)

Country Link
US (1) US10692018B2 (de)
JP (1) JP6514171B2 (de)
CN (1) CN107866809B (de)
DE (1) DE102017008836B4 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021103126B4 (de) 2021-02-10 2023-10-12 Gerhard Schubert Gesellschaft mit beschränkter Haftung Verfahren zum Beschleunigen einer Handhabungs-Maschine

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6333871B2 (ja) * 2016-02-25 2018-05-30 ファナック株式会社 入力画像から検出した対象物を表示する画像処理装置
JP6484265B2 (ja) * 2017-02-15 2019-03-13 ファナック株式会社 学習制御機能を備えたロボットシステム及び学習制御方法
JP6983524B2 (ja) * 2017-03-24 2021-12-17 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
EP3456485B1 (de) * 2017-09-15 2021-02-17 Siemens Aktiengesellschaft Optimieren eines automatisierten vorganges zum auswählen und greifen eines objektes durch einen roboter
JP6676030B2 (ja) * 2017-11-20 2020-04-08 株式会社安川電機 把持システム、学習装置、把持方法、及び、モデルの製造方法
JP6810087B2 (ja) 2018-03-29 2021-01-06 ファナック株式会社 機械学習装置、機械学習装置を用いたロボット制御装置及びロボットビジョンシステム、並びに機械学習方法
US11584016B2 (en) * 2018-04-24 2023-02-21 Fanuc Corporation Robot controller and system
JP7008136B2 (ja) 2018-06-14 2022-01-25 ヤマハ発動機株式会社 機械学習装置及びこれを備えたロボットシステム
US20200039676A1 (en) * 2018-08-02 2020-02-06 The Recon Group LLP System and methods for automatic labeling of articles of arbitrary shape, size and orientation
JP6970078B2 (ja) * 2018-11-28 2021-11-24 株式会社東芝 ロボット動作計画装置、ロボットシステム、および方法
JP7247552B2 (ja) * 2018-11-29 2023-03-29 京セラドキュメントソリューションズ株式会社 学習装置、ロボット制御装置、及びロボット制御システム
CN109591012B (zh) * 2018-12-03 2022-03-29 日照市越疆智能科技有限公司 加强学习方法、机器人和存储介质
WO2020154542A1 (en) * 2019-01-23 2020-07-30 Google Llc Efficient adaption of robot control policy for new task using meta-learning based on meta-imitation learning and meta-reinforcement learning
JP7235533B2 (ja) * 2019-02-26 2023-03-08 ファナック株式会社 ロボットコントローラ及びロボットコントロールシステム
WO2020246005A1 (ja) * 2019-06-06 2020-12-10 三菱電機株式会社 パラメータ算出装置、ロボット制御システム、ロボットシステム
EP3747604B1 (de) * 2019-06-07 2022-01-26 Robert Bosch GmbH Robotervorrichtungssteuergerät, robotervorrichtungsanordnung und verfahren zur steuerung einer robotervorrichtung
JP7207207B2 (ja) 2019-07-09 2023-01-18 トヨタ自動車株式会社 演算装置、機械学習方法及び制御プログラム
JP7342491B2 (ja) 2019-07-25 2023-09-12 オムロン株式会社 推論装置、推論方法、及び推論プログラム
JP7295421B2 (ja) * 2019-08-22 2023-06-21 オムロン株式会社 制御装置及び制御方法
JP7351702B2 (ja) 2019-10-04 2023-09-27 ファナック株式会社 ワーク搬送システム
JP7460366B2 (ja) * 2019-12-27 2024-04-02 川崎重工業株式会社 訓練データ選別装置、ロボットシステム及び訓練データ選別方法
DE102020113277B4 (de) 2020-05-15 2024-07-11 Gerhard Schubert Gesellschaft mit beschränkter Haftung Verfahren zum Erzeugen eines Trainingsdatensatzes zum Trainieren eines Industrieroboters, Verfahren zur Steuerung des Betriebs eines Industrieroboters und Industrieroboter
KR102625661B1 (ko) * 2020-06-23 2024-01-16 세메스 주식회사 물품 보관 장치, 상기 물품 보관 장치의 우선 순위 설정값 계산 방법 및 이를 이용한 물품 저장 방법
JP7612193B2 (ja) * 2020-12-28 2025-01-14 東京ロボティクス株式会社 動作スケジュール生成装置、方法、プログラム及びシステム
JP7599166B2 (ja) * 2021-06-29 2024-12-13 パナソニックIpマネジメント株式会社 作業システム、駆動システム、パラメータ設定方法、及びプログラム
DE102021209867A1 (de) * 2021-09-07 2023-03-09 Kuka Deutschland Gmbh Bewerten und/oder Steuern eines Roboterarbeitsprozesses
JP7791408B2 (ja) * 2021-09-09 2025-12-24 日本製鉄株式会社 重み係数決定装置、重み係数決定方法、およびプログラム
CN114932546B (zh) * 2022-03-23 2023-10-03 燕山大学 一种基于未知机械臂模型的深度强化学习抑振系统及方法
KR102629021B1 (ko) * 2023-01-30 2024-01-25 주식회사 마키나락스 산업용 로봇의 작업 경로 생성 방법
CN116237935B (zh) * 2023-02-03 2023-09-15 兰州大学 一种机械臂协同抓取方法、系统、机械臂及存储介质
EP4425280A1 (de) 2023-02-28 2024-09-04 Siemens Aktiengesellschaft Verfahren zur optimierung einer bewegungssteuerung unter verwendung von verstärkendem lernen, entsprechendes computerprogrammprodukt und entsprechende vorrichtung

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002113678A (ja) * 2000-10-06 2002-04-16 Seiko Instruments Inc トラッキング方法、及びトラッキングシステム
DE102006031178B4 (de) * 2005-07-07 2008-08-28 Toshiba Kikai K.K. Greiferführungssystem, Bearbeitungssystem und Programm
DE112009001414T5 (de) * 2008-06-05 2011-04-21 Toshiba Kikai K.K. Bearbeitungssystem, Steuerungseinrichtung, Steuerungsverfahren und Programm
EP2537644A1 (de) * 2011-06-20 2012-12-26 Kabushiki Kaisha Yaskawa Denki Aufnahmesystem
JP2014104524A (ja) * 2012-11-27 2014-06-09 Shibuya Kogyo Co Ltd 物品処理システム
DE102015008195A1 (de) * 2014-07-04 2016-01-07 Fanuc Corporation Gegenstandsausrichtvorrichtung zum Ausrichten von Gegenständen auf einem Förderband
EP2998076A1 (de) * 2014-09-18 2016-03-23 Kabushiki Kaisha Yaskawa Denki Robotersystem und verfahren zum aufnehmen eines werkstücks

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3956063B2 (ja) * 1997-03-07 2007-08-08 株式会社安川電機 移動物体のハンドリング方法
JP2004243475A (ja) * 2003-02-14 2004-09-02 Seiko Epson Corp ロボットおよびロボットシステム
JP3834307B2 (ja) * 2003-09-29 2006-10-18 ファナック株式会社 ロボットシステム
JPWO2006022201A1 (ja) * 2004-08-25 2008-05-08 株式会社安川電機 ロボットの評価システム及び評価方法
US8326780B2 (en) * 2008-10-14 2012-12-04 Honda Motor Co., Ltd. Smoothed sarsa: reinforcement learning for robot delivery tasks
JP5330138B2 (ja) * 2008-11-04 2013-10-30 本田技研工業株式会社 強化学習システム
US8886359B2 (en) * 2011-05-17 2014-11-11 Fanuc Corporation Robot and spot welding robot with learning control function
JP5623358B2 (ja) * 2011-09-06 2014-11-12 三菱電機株式会社 ワーク取り出し装置
CN103764352A (zh) * 2011-09-20 2014-04-30 株式会社安川电机 机器人、处理系统和制作放入容器中的物品的方法
JP5911299B2 (ja) * 2011-12-27 2016-04-27 キヤノン株式会社 情報処理装置、情報処理装置の制御方法およびプログラム
JP5620445B2 (ja) * 2012-09-13 2014-11-05 ファナック株式会社 選択条件に基づいてロボットの保持位置姿勢を決定する物品取出装置
JP6009952B2 (ja) * 2013-01-25 2016-10-19 本田技研工業株式会社 作業方法及び作業装置
US9102055B1 (en) * 2013-03-15 2015-08-11 Industrial Perception, Inc. Detection and reconstruction of an environment to facilitate robotic interaction with the environment
US9384443B2 (en) * 2013-06-14 2016-07-05 Brain Corporation Robotic training apparatus and methods
US9393693B1 (en) * 2014-07-10 2016-07-19 Google Inc. Methods and systems for determining and modeling admissible gripper forces for robotic devices
US9272417B2 (en) * 2014-07-16 2016-03-01 Google Inc. Real-time determination of object metrics for trajectory planning
JP5908544B2 (ja) * 2014-08-11 2016-04-26 ファナック株式会社 駆動軸のジャークを低下させるロボットプログラムを生成するロボットプログラム生成装置
DE102014216514B3 (de) * 2014-08-20 2015-09-10 Kuka Roboter Gmbh Verfahren zum Programmieren eines Industrieroboters und zugehöriger Industrieroboter
US9475198B2 (en) * 2014-12-22 2016-10-25 Qualcomm Incorporated System and method for dynamic robot manipulator selection
JP5964488B1 (ja) * 2015-07-31 2016-08-03 ファナック株式会社 保護動作制御部を有するモータ制御装置、ならびに機械学習装置およびその方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002113678A (ja) * 2000-10-06 2002-04-16 Seiko Instruments Inc トラッキング方法、及びトラッキングシステム
DE102006031178B4 (de) * 2005-07-07 2008-08-28 Toshiba Kikai K.K. Greiferführungssystem, Bearbeitungssystem und Programm
DE112009001414T5 (de) * 2008-06-05 2011-04-21 Toshiba Kikai K.K. Bearbeitungssystem, Steuerungseinrichtung, Steuerungsverfahren und Programm
EP2537644A1 (de) * 2011-06-20 2012-12-26 Kabushiki Kaisha Yaskawa Denki Aufnahmesystem
JP2014104524A (ja) * 2012-11-27 2014-06-09 Shibuya Kogyo Co Ltd 物品処理システム
DE102015008195A1 (de) * 2014-07-04 2016-01-07 Fanuc Corporation Gegenstandsausrichtvorrichtung zum Ausrichten von Gegenständen auf einem Förderband
EP2998076A1 (de) * 2014-09-18 2016-03-23 Kabushiki Kaisha Yaskawa Denki Robotersystem und verfahren zum aufnehmen eines werkstücks

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021103126B4 (de) 2021-02-10 2023-10-12 Gerhard Schubert Gesellschaft mit beschränkter Haftung Verfahren zum Beschleunigen einer Handhabungs-Maschine

Also Published As

Publication number Publication date
DE102017008836A1 (de) 2018-03-29
US10692018B2 (en) 2020-06-23
US20180089589A1 (en) 2018-03-29
JP2018051664A (ja) 2018-04-05
CN107866809A (zh) 2018-04-03
JP6514171B2 (ja) 2019-05-15
CN107866809B (zh) 2020-09-01

Similar Documents

Publication Publication Date Title
DE102017008836B4 (de) Maschinelle Lernvorrichtung und maschinelles Lernverfahren zum Lernen eines optimalen Objekt-Greifwegs
DE102018006465B4 (de) Artikelstapelvorrichtung und maschinelle Lernvorrichtung
DE102019002065B4 (de) Maschinelle Lernvorrichtung, Robotersteuervorrichtung und Robotervisionssystem, das eine maschinelle Lernvorrichtung verwendet, und maschinelles Lernverfahren
DE102017011754B4 (de) Maschinenlerneinrichtung zum Lernen eines Montagevorgangs und Komponentenmontagesystem
DE102016015873B3 (de) Vorrichtung für maschinelles Lernen, Robotersystem und maschinelles Lernsystem zum Lernen eines Werkstückaufnahmevorgangs
DE102016014264B4 (de) Maschinelle Lernvorrichtung, Blechpaketherstellungsvorrichtung, Blechpaketherstellungssystem und maschinelles Lernverfahren zum Erlernen des Stapelns von Paketblechen
DE102016009030B4 (de) Vorrichtung für maschinelles Lernen, Robotersystem und maschinelles Lernsystem zum Lernen eines Werkstückaufnahmevorgangs
DE102017008475B4 (de) Maschinenlernvorrichtung, robotersystem und maschinenlernverfahren zum erlernen eines roboter-betriebsprogramms
DE102017108169B4 (de) Produktionssystem, das einen Bestimmungswert einer Variablen in Bezug auf eine Produktabweichung festlegt
DE102018000730B4 (de) Werkstückaufnahmevorrichtung und Werkstückaufnahmeverfahren zum Verbessern des Aufnahmevorgangs eines Werkstücks
DE102018005199B4 (de) Bauteilzuführvorrichtung und maschinelle lernvorrichtung
DE102017008832A1 (de) Fördervorrichtung zum herausnehmen von objekten nacheinander auf einem optimalen weg
DE102016011520B4 (de) Produktionsausrüstung mit Maschinenlernsystem und Montage-und Prüfeinheit
EP3701433B1 (de) Verfahren, vorrichtung und computerprogramm zur erstellung eines tiefen neuronalen netzes
DE102018000342A1 (de) Numerische steuerung und maschinelle lernvorrichtung
DE102019121889B3 (de) Automatisierungssystem und Verfahren zur Handhabung von Produkten
DE102019000749B4 (de) Steuervorrichtung und maschinelle Lernvorrichtung
DE102016011523A1 (de) Motorantriebsvorrichtung mit vorbeugender Wartungsfunktion eines Gebläsemotors
DE102018002423B4 (de) Robotersteuerung, Vorrichtung für maschinelles Lernen und Verfahren für maschinelles Lernen
DE102019210507A1 (de) Vorrichtung und computerimplementiertes Verfahren für die Verarbeitung digitaler Sensordaten und Trainingsverfahren dafür
DE112018007727T5 (de) Robotersystem
EP3467722B1 (de) Konfiguration einer kraftfahrzeug-fahrerassistenzvorrichtung mit einem neuronalen netzwerk im laufenden betrieb
EP3741518B1 (de) Verfahren und vorrichtung für eine automatisierte beeinflussung eines aktuators
DE102019201045B4 (de) Verfahren, Vorrichtung und Computerprogramm zum Ermitteln einer Aktion oder Trajektorie eines Roboters
DE102023211708A1 (de) Computerimplementiertes Verfahren zum Ausgleichen einer Ungleichverteilung in Trainingsdaten während des Trainierens eines Algorithmus des maschinellen Lernens

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final