DE102018203702A1 - Vorrichtung für maschinelles Lernen, Servo-Regelungsvorrichtung, Servo-Regelungssystem und Verfahren für maschinelles Lernen - Google Patents

Vorrichtung für maschinelles Lernen, Servo-Regelungsvorrichtung, Servo-Regelungssystem und Verfahren für maschinelles Lernen Download PDF

Info

Publication number
DE102018203702A1
DE102018203702A1 DE102018203702.7A DE102018203702A DE102018203702A1 DE 102018203702 A1 DE102018203702 A1 DE 102018203702A1 DE 102018203702 A DE102018203702 A DE 102018203702A DE 102018203702 A1 DE102018203702 A1 DE 102018203702A1
Authority
DE
Germany
Prior art keywords
value
machine learning
servo
speed
benefit
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.)
Granted
Application number
DE102018203702.7A
Other languages
English (en)
Other versions
DE102018203702B4 (de
Inventor
Ryoutarou TSUNEKI
Satoshi Ikai
Naoto Sonoda
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 DE102018203702A1 publication Critical patent/DE102018203702A1/de
Application granted granted Critical
Publication of DE102018203702B4 publication Critical patent/DE102018203702B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/19Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D13/00Control of linear speed; Control of angular speed; Control of acceleration or deceleration, e.g. of a prime mover
    • G05D13/62Control of linear speed; Control of angular speed; Control of acceleration or deceleration, e.g. of a prime mover characterised by the use of electric means, e.g. use of a tachometric dynamo, use of a transducer converting an electric value into a displacement
    • 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/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/19Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • G05B19/27Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an absolute digital measuring device
    • G05B19/31Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an absolute digital measuring device for continuous-path control
    • G05B19/311Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an absolute digital measuring device for continuous-path control the positional error is used to control continuously the servomotor according to its magnitude
    • G05B19/318Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an absolute digital measuring device for continuous-path control the positional error is used to control continuously the servomotor according to its magnitude with a combination of feedback covered by G05B19/313 - G05B19/316
    • 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], computer integrated manufacturing [CIM]
    • G05B19/4185Total 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], computer integrated manufacturing [CIM] characterised by the network communication
    • G05B19/41855Total 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], computer integrated manufacturing [CIM] characterised by the network communication by local area network [LAN], network structure
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/41Servomotor, servo controller till figures
    • G05B2219/41428Feedforward of position and speed
    • 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/42Servomotor, servo controller kind till VSS
    • G05B2219/42152Learn, self, auto tuning, calibrating, environment adaptation, repetition
    • 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]

Abstract

Es wird verstärkendes Lernen durchgeführt, mit dem aufwändige Anpassung von Koeffizienten für Geschwindigkeits-Mitkopplung hoher Ordnung umgangen werden kann. Eine Vorrichtung für maschinelles Lernen führt maschinelles Lernen in Bezug auf eine Servo-Regelungsvorrichtung 100 durch, die eine Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung umfasst, die einen Geschwindigkeits-Mitkopplungswert auf Basis eines Positions-Befehls erzeugt. Die Vorrichtung für maschinelles Lernen umfasst eine Einheit 201 zur Erfassung von Status-Informationen, die von der Servo-Regelungsvorrichtung Status-Informationen erfasst, die wenigstens einen Positions-Fehler sowie eine Kombination von Koeffizienten einer Übertragungsfunktion der Einrichtung zur Berechnung von Geschwindigkeits-Mitkopplung einschließen, indem die Servo-Regelungs-vorrichtung veranlasst wird, ein vorgegebenes Bearbeitungs-Programm auszuführen; eine Einheit 203 zum Ausgeben von Aktions-Informationen, die Aktions-Informationen, die Anpassungs-Informationen der in den Status-Informationen enthaltenen Kombination von Koeffizienten einschließen, an die Servo-Regelungsvorrichtung ausgibt; eine Einheit 2021 zum Ausgeben eines Nutzens, die einen Nutzen-Wert für verstärkendes Lernen auf Basis des in den Status-Informationen enthaltenen Positions-Fehlers ausgibt; sowie eine Einheit 2022 zum Aktualisieren einer Wertfunktion, die eine Aktions-Wertfunktion auf Basis des von der Einrichtung zum Ausgeben eines Nutzens ausgegebenen Nutzen-Wertes, der Status-Informationen und der Aktions-Informationen aktualisiert.

Description

  • HINTERGRUND DER ERFINDUNG
  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft eine Vorrichtung für maschinelles Lernen, die Lernen im Zusammenhang mit Koeffizienten bei Geschwindigkeits-Vorwärtsregelung, in Bezug auf eine Servo-Regelungsvorrichtung durchführt, die die Geschwindigkeits-Vorwärtsregelung einsetzt, eine Servo-Regelungsvorrichtung sowie ein Servo-Regelungssystem, das die Vorrichtung für maschinelles Lernen enthält, und ein Verfahren für maschinelles Lernen.
  • Verwandte Technik
  • Eine Servo-Regelungsvorrichtung, die Geschwindigkeits-Vorwärtsregelung einsetzt, wird beispielsweise in Patentdokument 1 offenbart. Die in Patentdokument 1 offenbarte Servo-Regelungsvorrichtung ist eine Servo-Regelungsvorrichtung, die einen Positions-Befehl differenziert, um einen Positions-Vorwärtsregelungsbetrag zu bestimmen, den Positions-Vorwärtsregelungsbetrag zu einem mittels Positions-Schleifenregelung ermittelten Regelungsbetrag addiert, um einen Geschwindigkeits-Befehl zu bestimmen, und den durch Differenzieren des Positions-Vorwärtsregelungsbetrags ermittelten Geschwindigkeits-Vorwärtsregelungsbetrag zu einem mittels Geschwindigkeits-Schleifenregelung ermittelten Wert addiert, um einen Strom-Befehl zu bestimmen.
  • Patentdokument 1: Ungeprüfte japanische Patentanmeldung, Veröffentlichungs-Nr. H03-15911
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Bei einer Servo-Regelungsvorrichtung tritt ein Fall auf, in dem ein Positions-Fehler erzeugt wird, wenn sich ein Geschwindigkeits-Befehlswert aufgrund des Einflusses nichtlinearer Eigenschaften, wie beispielsweise Reibung einer Maschine, Rattern einer Maschine sowie Totgang, ändert. In diesem Fall wird, indem Geschwindigkeits-Mitkopplung auf hohe Ordnung eingestellt wird, der Positions-Fehler reduziert und kann einem Positions-Befehl besser gefolgt werden. Jedoch wird Anpassung eines Koeffizienten (Parameter) für Geschwindigkeits-Mitkopplung erschwert.
  • Eine Aufgabe der vorliegenden Erfindung besteht darin, eine Vorrichtung für maschinelles Lernen, die verstärkendes Lernen, mit dem aufwändige Anpassung von Koeffizienten für Geschwindigkeits-Mitkopplung hoher Ordnung umgangen werden kann, wenn die Koeffizienten der Geschwindigkeits-Mitkopplung auf hohe Ordnung eingestellt werden, um einem Positions-Befehl besser folgen zu können, indem ein Positions-Fehler reduziert wird, in einer Servo-Regelungsvorrichtung durchführt, die die Geschwindigkeits-Vorwärtsregelung einsetzt, eine Servo-Regelungsvorrichtung, die die Vorrichtung für maschinelles Lernen enthält, ein Servo-Regelungssystem und ein Verfahren für maschinelles Lernen zu schaffen.
    1. (1) Eine Vorrichtung für maschinelles Lernen (z.B. eine weiter unten beschriebene Vorrichtung 200 für maschinelles Lernen) gemäß der vorliegenden Erfindung ist eine Vorrichtung für maschinelles Lernen, mit der maschinelles Lernen in Bezug auf eine Servo-Regelungsvorrichtung (z.B. eine weiter unten beschriebene Servo-Regelungsvorrichtung 100) durchgeführt wird, die eine Einrichtung zur Berechnung von Geschwindigkeits-Mitkopplung (z.B. eine weiter unten beschriebene Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung) enthält, mit der ein Wert der Geschwindigkeits-Mitkopplung auf Basis eines Positions-Befehls erzeugt wird, wobei die Vorrichtung für maschinelles Lernen enthält:
      • eine Einrichtung zur Erfassung von Status-Informationen (z.B. eine weiter unten beschriebene Einheit 201 zur Erfassung von Status-Informationen), mit der von der Servo-Regelungsvorrichtung Status-Informationen erfasst werden, die einen Servo-Status, der wenigstens einen Positions-Fehler einschließt, sowie eine Kombination von Koeffizienten einer Übertragungsfunktion der Einrichtung für Geschwindigkeits-Vorwärtsberechnung einschließen, indem die Servo-Regelungsvorrichtung veranlasst wird, ein vorgegebenes Bearbeitungs-Programm auszuführen;
      • eine Einrichtung zum Ausgeben von Aktions-Informationen (z.B. eine weiter unten beschriebene Einheit 203 zum Ausgeben von Aktions-Informationen), mit der Aktions-Informationen, die Anpassungs-Informationen der in den Status-Informationen enthaltenen Kombination von Koeffizienten einschließen, an die Servo-Regelungsvorrichtung ausgegeben werden;
      • eine Einrichtung zum Ausgeben eines Nutzens (z.B. eine weiter unten beschriebene Einheit 2021 zum Ausgeben eines Nutzens), mit der ein Nutzen-Wert für verstärkendes Lernen auf Basis des in den Status-Informationen enthaltenen Positions-Fehlers ausgegeben wird; und
      • eine Einrichtung zum Aktualisieren einer Wertfunktion(z.B. eine weiter unten beschriebene Einheit 2022 zum Aktualisieren einer Wertfunktion), mit der eine Aktions-Wertfunktion auf Basis des von der Einrichtung zum Ausgeben eines Nutzens ausgegebenen Nutzen-Wertes, der Status-Informationen und der Aktions-Informationen aktualisiert wird.
    2. (2) Bei der oben beschriebenen Vorrichtung für maschinelles Lernen gemäß (1) kann die Einrichtung zum Ausgeben eines Nutzens den Nutzen-Wert auf Basis eines Absolutwertes des Positions-Fehlers ausgeben.
    3. (3) Bei der oben beschriebenen Vorrichtung für maschinelles Lernen gemäß (1) oder (2) kann die Einrichtung zum Ausgeben eines Nutzens den Nutzen-Wert auf Basis eines Wertes berechnen, der wenigstens den Positions-Fehler und einen Differenzialwert des Positions-Fehlers einschließt.
    4. (4) Bei der oben beschriebenen Vorrichtung für maschinelles Lernen gemäß (1) oder (2) kann die Einrichtung zur Erfassung von Status-Informationen des Weiteren Zeit T von dem Zeitpunkt, zu dem sich ein Geschwindigkeits-Befehlswert ändert, der in dem Servo-Status eingeschlossen ist, bis zu dem Zeitpunkt überwachen, zu dem der Positions-Fehler innerhalb eines vorgegebenen Bereiches liegt, und kann die Einrichtung zum Ausgeben eines Nutzens den Nutzen-Wert auf Basis eines Wertes berechnen, der wenigstens den Positions-Fehler und eine Länge der Zeit T einschließt.
    5. (5) Bei der oben beschriebenen Vorrichtung für maschinelles Lernen gemäß (1) oder (2) erfasst die Einrichtung zur Erfassung von Status-Informationen des Weiteren einen Drehmoment-Befehl von der Servo-Regelungsvorrichtung, und kann die Einrichtung zum Ausgeben eines Nutzens den Nutzen-Wert auf Basis eines Wertes berechnen, der wenigstens den Positions-Fehler und einen Differenzialwert des Drehmoment-Befehls einschließt.
    6. (6) Bei der oben beschriebenen Vorrichtung für maschinelles Lernen gemäß (1) oder (2) erfasst die Einrichtung zur Erfassung von Status-Informationen des Weiteren einen Drehmoment-Befehl von der Servo-Regelungsvorrichtung, und kann die Einrichtung zum Ausgeben eines Nutzens den Nutzen-Wert basierend wenigstens auf dem Positions-Fehler und der Feststellung dahingehend berechnen, ob der Drehmoment-Befehl einen zulässigen Wert des Drehmoment-Befehls erreicht.
    7. (7) Bei der oben beschriebenen Vorrichtung für maschinelles Lernen gemäß (1) oder (2) erfasst die Einrichtung zur Erfassung von Status-Informationen des Weiteren einen Geschwindigkeits-Fehler von der Servo-Regelungsvorrichtung, und kann die Einrichtung zum Ausgeben eines Nutzens den Nutzen-Wert auf Basis eines Wertes berechnen, der wenigstens den Positions-Fehler und den Geschwindigkeits-Fehler einschließt.
    8. (8) Die oben beschriebene Vorrichtung für maschinelles Lernen gemäß (1) bis (7) kann eine Einrichtung zum Ausgeben von Optimierungsaktions-Informationen (z.B. eine weiter unten beschriebene Einheit 205 zum Ausgeben von Optimierungsaktions-Informationen) enthalten, mit der eine Kombination von Koeffizienten der Übertragungsfunktion der Einrichtung zur Berechnung von Geschwindigkeits-Mitkopplung auf Basis einer durch die Einrichtung zum Aktualisieren der Wertfunktion aktualisierten Wertfunktion erzeugt und ausgegeben wird.
    9. (9) Ein Servo-Regelungssystem gemäß der vorliegenden Erfindung ist ein Servo-Regelungssystem, das die oben beschriebene Vorrichtung für maschinelles Lernen gemäß (1) bis (8) und eine Servo-Regelungsvorrichtung enthält, die eine Einrichtung zur Berechnung von Geschwindigkeits-Mitkopplung aufweist, mit der ein Geschwindigkeits-Mitkopplungswert auf Basis eines Positions-Befehls erzeugt wird.
    10. (10) Eine Servo-Regelungsvorrichtung gemäß der vorliegenden Erfindung ist eine Servo-Regelungsvorrichtung, die die oben beschriebene Vorrichtung für maschinelles Lernen gemäß (1) bis (8) und eine Einrichtung zur Berechnung von Geschwindigkeits-Mitkopplung aufweist, mit der ein Geschwindigkeits-Mitkopplungswert auf Basis eines Positions-Befehls erzeugt wird.
    11. (11) Ein Verfahren für maschinelles Lernen gemäß der vorliegenden Erfindung ist ein Verfahren für maschinelles Lernen einer Vorrichtung für maschinelles Lernen zum Durchführen von maschinellem Lernen in Bezug auf eine Servo-Regelungsvorrichtung, die eine Einrichtung zur Berechnung von Geschwindigkeits-Mitkopplung enthält, mit der ein Geschwindigkeits-Mitkopplungswert auf Basis eines Positions-Befehls erzeugt wird, wobei das Verfahren für maschinelles Lernen einschließt:
      • Erfassen von Status-Informationen von der Servo-Regelungsvorrichtung, die einen Servo-Status, der wenigstens einen Positions-Fehler einschließt, sowie eine Kombination von Koeffizienten einer Übertragungsfunktion der Einrichtung für zur Berechnung von Geschwindigkeits-Mitkopplung einschließen, indem die Servo-Regelungsvorrichtung veranlasst wird, ein vorgegebenes Bearbeitungs-Programm auszuführen;
      • Ausgeben von Aktions-Informationen, die Anpassungs-Informationen der in den Status-Informationen enthaltenen Kombination von Koeffizienten einschließen, an die Servo-Regelungsvorrichtung; und
      • Aktualisieren einer Aktions-Wertfunktion auf Basis eines Nutzen-Wertes für verstärkendes Lernen, auf Basis des in den Status-Informationen enthaltenen Positions-Fehlers, der Status-Informationen sowie der Aktions-Informationen.
  • Gemäß der vorliegenden Erfindung kann maschinelles Lernen, mit dem aufwändige Anpassung von Koeffizienten für Geschwindigkeits-Mitkopplung hoher Ordnung umgangen werden kann, wenn die Koeffizienten der Geschwindigkeits-Mitkopplung auf hohe Ordnung eingestellt werden, um einem Positions-Befehl besser folgen zu können, indem ein Positions-Fehler reduziert wird, in einer Servo-Regelungsvorrichtung durchgeführt werden, die die Geschwindigkeits-Vorwärtsregelung einsetzt.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockdiagramm, das ein Servo-Regelungssystem einer ersten Ausführungsform der vorliegenden Erfindung darstellt. 2 ist ein Blockdiagramm, das eine beispielhafte Konfiguration zeigt, bei der eine Servo-Regelungsvorrichtung und eine Vorrichtung 200 für maschinelles Lernen über ein Netzwerk verbunden sind. 3 ist ein Blockdiagramm, das ein Beispiel eines Regelungs-Objektes 300 zeigt. 4A ist eine schematische Darstellung, die der Erläuterung von Bewegung eines Servomotors im Fall einer Kreisform dient. 4B ist eine der Erläuterung dienende schematische Darstellung, die einen Weg-Fehler, der aufgrund von Trägheits-Lauf im Fall einer Kreisform erzeugt wird, und den Versuch einer Umkehr der Drehrichtung des Servomotors, der einen Tisch in einer Richtung der Y-Achse bewegt, an einer Position A1 veranschaulicht. 4C ist eine schematische Darstellung, die der Erläuterung von Bewegung des Servomotors im Fall einer Quadratform dient. 4D ist eine schematische Darstellung, die der Erläuterung von Bewegung des Servomotors im Fall einer Quadratform mit abgerundeten Ecken R dient. 5 ist ein Blockdiagramm, das die Vorrichtung 200 für maschinelles Lernen gemäß der ersten Ausführungsform darstellt. 6 ist ein Flussdiagramm, das der Erläuterung von Bewegung der Vorrichtung 200 für maschinelles Lernen dient. 7 ist ein Flussdiagramm, das der Erläuterung von Bewegung einer Einheit 205 zum Ausgeben von Optimierungsaktions-Informationen der Vorrichtung 200 für maschinelles Lernen dient. 8 ist ein Blockdiagramm, das eine Servo-Regelungsvorrichtung einer zweiten Ausführungsform der vorliegenden Erfindung zeigt. 9 ist ein Kennlinien-Diagramm, das eine Wellenform eines Positions-Fehlers, die unter Verwendung einer gewichteten und summierten Bewertungsfunktion ausgewählt werden kann, in einer Abwandlung zeigt. 10 ist ein Kennlinien-Diagramm, das eine Wellenform eines Positions-Fehlers, die unter Verwendung einer gewichteten und addierten Bewertungsfunktion ausgewählt werden kann, in einer weiteren Abwandlung zeigt.
  • AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
  • Ausführungsformen der vorliegenden Erfindung werden im Folgenden unter Bezugnahme auf die Zeichnungen beschrieben.
  • Erste Ausführungsform
  • 1 ist ein Blockdiagramm, das ein Servo-Regelungssystem einer ersten Ausführungsform der vorliegenden Erfindung darstellt. Ein Servo-Regelungssystem 10 enthält, wie in 1 gezeigt, n Servo-Regelungsvorrichtungen 100-1 bis 100-n, n Vorrichtungen 200-1 bis 200-n für maschinelles Lernen sowie ein Netzwerk 400. Es ist anzumerken, dass n eine beliebige natürliche Zahl ist.
  • Die Servo-Regelungsvorrichtung 100-1 und die Vorrichtung 200-1 für maschinelles Lernen werden als eine Gruppe in Eins-zu-Eins-Entsprechung betrachtet und stehen in Kommunikationsverbindung miteinander. Die Servo-Regelungsvorrichtungen 100-2 bis 100-n und die Vorrichtungen 200-2 bis 200-n für maschinelles Lernen sind auf gleiche Weise wie die Servo-Regelungsvorrichtung 100-1 und die Vorrichtung 200-1 für maschinelles Lernen verbunden. In 1 sind n Gruppen der Servo-Regelungsvorrichtungen 100-1 bis 100-n und der Vorrichtungen 200-1 bis 200-n für maschinelles Lernen über das Netzwerk 400 verbunden. Für die n Gruppen der Servo-Regelungsvorrichtungen 100-1 bis 100-n und der Vorrichtungen 200-1 bis 200-n für maschinelles Lernen können jedoch die Servo-Regelungs-vorrichtungen und die Vorrichtungen für maschinelles Lernen in jeder der Gruppen direkt über eine Verbindungsschnittstelle verbunden sein. Beispielsweise kann eine Vielzahl von n Gruppen dieser Servo-Regelungsvorrichtungen 100-1 bis 100-n und der Vorrichtungen 200-1 bis 200-n in dem gleichen Werk oder in verschiedenen Werken installiert sein. Das Netzwerk 400 ist beispielsweise ein in einem Werk installiertes LAN (Local Area Network), das Internet, ein öffentliches Telefonnetz oder eine Kombination aus diesen. Ein konkretes Kommunikationsverfahren in dem Netzwerk 400, der Einsatz von Kabelverbindung oder drahtloser Verbindung und dergleichen unterliegen keinen speziellen Einschränkungen. 2 ist ein Blockdiagramm, das die Gruppe aus der Servo-Regelungsvorrichtung und der Vorrichtung für maschinelles Lernen des Servo-Regelungssystems sowie ein Regelungs-Objekt der ersten Ausführungsform der vorliegenden Erfindung zeigt. Die Servo-Regelungsvorrichtung 100 und die Vorrichtungen 200 für maschinelles Lernen in 2 entsprechen beispielsweise der Servo-Regelungsvorrichtung 100-1 und der Vorrichtung 200-1, die in 1 dargestellt sind. Ein Regelungs-Objekt 300 ist beispielsweise ein Servomotor, oder eine Werkzeugmaschine, ein Roboter oder eine Industriemaschine, die den Servomotor enthält. Die Servo-Regelungsvorrichtung 100 kann einen Teil einer Werkzeugmaschine, eines Roboters oder einer Industriemaschine bilden.
  • Zunächst wird die Servo-Regelungsvorrichtung 100 beschrieben. Die Servo-Regelungsvorrichtung 100 enthält eine Einheit 101 zur Erzeugung eines Positions-Befehls, einen Subtrahierer 102, eine Positionsregelungs-Einheit 103, einen Addierer 104, einen Subtrahierer 105, eine Geschwindigkeitsregelungs-Einheit 106, einen Addierer 107, einen Integrator 108, eine Einheit 109 zur Berechnung von Positions-Mitkopplung sowie eine Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung. Die Einheit 101 zur Erzeugung eines Positions-Befehls erzeugt einen Positions-Befehlswert und gibt den erzeugten Positions-Befehlswert an den Subtrahierer 102 sowie die Einheit 109 zur Berechnung von Positions-Mitkopplung aus. Der Subtrahierer 102 bestimmt die Differenz zwischen dem Positions-Befehlswert und einem mittels Positions-Rückkopplung ermittelten Positions-Erfassungswert und gibt die Differenz an die Positionsregelungs-Einheit 103 als Positions-Fehler aus und überträgt die Differenz zu der Vorrichtung 200 für maschinelles Lernen.
  • Die Einheit 101 zur Erzeugung eines Positions-Befehls erzeugt den Positions-Befehlswert auf Basis eines Programms, das das Regelungs-Objekt 300 steuert. Das Regelungs-Objekt 300 ist beispielsweise eine Werkzeugmaschine, die den Servomotor enthält. Wenn die Werkzeugmaschine einen Tisch, auf dem ein Werkstück eingespannt ist, in einer Richtung der X-Achse und einer Richtung der Y-Achse bewegt und das Werkstück bearbeitet, ist die in 2 gezeigte Servo-Regelungsvorrichtung jeweils für die Richtung der X-Achse und die Richtung der Y-Achse vorhanden. Wenn die Werkzeugmaschine den Tisch in Richtungen von 3 oder mehr Achsen bewegt, ist die Servo-Regelungsvorrichtung für jede der Achsen-Richtungen vorhanden. Die Einheit 101 zur Erzeugung eines Positions-Befehls erzeugt den Positions-Befehlswert, indem sie eine Vorschubgeschwindigkeit so einstellt, dass eine durch ein Bearbeitungsprogramm vorgegebene Form hergestellt wird.
  • Die Positionsregelungs-Einheit 103 gibt einen Wert, der ermittelt wird, indem eine Positions-Verstärkung Kp mit dem Positions-Fehler multipliziert wird, als einen Geschwindigkeits-Befehlswert an den Addierer 104 aus. Die Einheit 109 zur Berechnung von Positions-Mitkopplung gibt einen Wert, der ermittelt wird, indem der Positions-Befehlswert differenziert wird und mit einem Mitkopplungs-Koeffizienten multipliziert wird, an den Addierer 104 und die Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung aus.
  • Der Addierer 104 addiert den Geschwindigkeits-Befehlswert, und einen Ausgangswert der Einheit 109 zur Berechnung von Positions-Mitkopplung und gibt den ermittelten Wert als einen Mitkopplungs-Regelung unterzogenen Geschwindigkeits-Befehlswert an den Subtrahierer 105 aus. Der Subtrahierer 105 bestimmt die Differenz zwischen einem Ausgang des Addierers 104 und dem mittels Geschwindigkeits-Rückkopplung ermittelten Geschwindigkeits-Erfassungswert und gibt die Differenz als Geschwindigkeits-Fehler an die Geschwindigkeitsregelungs-Einheit 106 aus.
  • Die Geschwindigkeitsregelungs-Einheit 106 addiert einen Wert, der ermittelt wird, indem eine Integral-Verstärkung K1v mit dem Geschwindigkeits-Fehler multipliziert wird, zu einem Wert, der ermittelt wird, indem eine Proportional-Verstärkung K2v mit dem Geschwindigkeits-Fehler multipliziert wird, und gibt den ermittelten Wert als einen Drehmoment-Befehlswert an den Addierer 107 aus.
  • Die Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung führt Verarbeitung zur Berechnung von Geschwindigkeits-Mitkopplung durch, die durch eine Übertragungsfunktion Gf(S) repräsentiert wird, die durch die unten stehende Formel 1 (unten als Formel 1 dargestellt) repräsentiert wird, und gibt den ermittelten Wert an den Addierer 107 aus. G f ( s ) = b 0 + b 1 s + b 2 s 2 + a 0 + a 1 s + a 2 s 2 +
    Figure DE102018203702A1_0001
  • Der Addierer 107 addiert den Drehmoment-Befehlswert zu einem Ausgangswert der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung und gibt den ermittelten Wert als einen Mitkopplungs-Regelung unterzogenen Drehmoment-Befehlswert an das Regelungs-Objekt 300 aus.
  • Das Regelungs-Objekt 300 gibt einen Geschwindigkeits-Erfassungswert aus, und der Geschwindigkeits-Erfassungswert wird als die Geschwindigkeits-Rückkopplung in den Subtrahierer 105 eingegeben. Der Geschwindigkeits-Erfassungswert wird durch den Integrator 108 integriert und dadurch zu einem Positions-Erfassungswert. Der Positions-Erfassungswert wird als Positions-Rückkopplung in den Subtrahierer 102 eingegeben. Die Servo-Regelungsvorrichtung 100 ist wie oben beschrieben konfiguriert.
  • Im Folgenden wird das Regelungs-Objekt 300 beschrieben, das von der Servo-Regelungsvorrichtung 100 geregelt wird. 3 ist ein Blockdiagramm, das eine Werkzeugmaschine, die den Servomotor enthält, als ein Beispiel für das Regelungs-Objekt 300 zeigt. Die Servo-Regelungsvorrichtung 100 bewegt einen Tisch 304 über einen Kupplungsmechanismus 303 in einem Servomotor 302, um ein auf dem Tisch 304 eingespanntes Werkstück zu bearbeiten. Der Kupplungsmechanismus 303 weist eine Kupplung 3031, die mit dem Servomotor 302 verbunden ist, und ein Kugelgewinde 3033 auf, dass an der Kupplung 3031 befestigt ist. Eine Mutter 3032 ist in das Kugelgewinde 3033 eingeschraubt. Die in das Kugeigewinde 3033 eingeschraubte Mutter 3032 wird mittels Drehantrieb durch den Servomotor 302 in einer Achsen-Richtung des Kugelgewindes 3033 bewegt.
  • Eine Drehwinkel-Position des Servomotors 302 wird von einem Drehgeber 301 erfasst, der eine Positionserfassungs-Einheit ist und mit dem Servomotor 302 verbunden ist. Ein Erfassungssignal wird als die Geschwindigkeits-Rückkopplung genutzt. Das Erfassungssignal wird durch den Integrator 108 integriert und als die Positions-Rückkopplung genutzt. Als die Positions-Rückkopplung kann ein Ausgang einer linearen Skala 305 verwendet werden, die an einem Endabschnitt des Kugelgewindes 3033 angebracht ist und eine Bewegungsstrecke des Kugelgewindes 3033 erfasst. Die Positions-Rückkopplung kann unter Verwendung eines Beschleunigungs-Sensors erzeugt werden.
  • Vorrichtung 200 für maschinelles Lernen
  • Die Vorrichtung 200 für maschinelles Lernen führt ein voreingestelltes Bearbeitungsprogramm (im Folgenden auch als „Bearbeitungsprogramm zum Zeitpunkt des Lernens“ bezeichnet) durch, um die Koeffizienten der Übertragungsfunktion der Einheit 110zur Berechnung von Geschwindigkeits-Mitkopplung zu lernen. Eine durch das Bearbeitungsprogramm zum Zeitpunkt des Lernens vorgegebene Form ist beispielsweise ein Kreis, ein Quadrat und ein Quadrat mit abgerundeten Ecken R.
  • 4A und 4B sind schematische Darstellungen, die der Erläuterung von Bewegung des Servomotors im Fall einer Kreisform dienen. 4C ist eine schematische Darstellung, die der Erläuterung von Bewegung des Servomotors im Fall einer Quadratform dient. 4D ist eine schematische Darstellung, die der Erläuterung von Bewegung des Servomotors im Fall einer Quadratform mit abgerundeten Ecken R dient. In 4A bis 4D bewegt sich der Tisch so, dass das Werkstück im Uhrzeigersinn bearbeitet wird.
  • Wenn die Form, wie in 4A gezeigt, ein Kreis ist, wird die Drehrichtung des Servomotors, der den Tisch in der Richtung der Y-Achse bewegt, an einer Position A1 umgekehrt, und der Tisch bewegt sich so, dass er in der Richtung der Y-Achse linear umkehrt. An einer Position A2 wird die Drehrichtung des Servomotors, der den Tisch in der Richtung der X-Achse bewegt, umgekehrt, und der Tisch bewegt sich so, dass er in der Richtung der X-Achse linear umkehrt. 4B ist eine der Erläuterung dienende schematische Ansicht, die einen Weg-Fehler, der aufgrund von Trägheits-Lauf im Fall einer Kreisform erzeugt wird, und den Versuch einer Umkehr der Drehrichtung des Servomotors, der den Tisch, in der Richtung der Y-Achse bewegt, an einer Position A1 veranschaulicht. Wenn versucht wird, die Drehrichtung des Servomotors, der den Tisch in der Richtung der Y-Achse bewegt, an der Position A1 umzukehren, kommt es zu einer Umkehr-Verzögerung, und der Weg-Fehler dehnt sich, wie in 4B gezeigt, in einer radialen Richtung aus. Wenn sich der Weg-Fehler ausdehnt und angezeigt wird, ist der Weg-Fehler als eine Projektion zu sehen.
  • Wenn die Form, wie in 4C gezeigt, ein Quadrat ist, geht der Servomotor, der den Tisch in der Richtung der Y-Achse bewegt, an einer Position B von Stillstand zu Drehbewegung über, geht der Servomotor, der den Tisch in der Richtung der X-Achse bewegt, von Drehung zu Stillstand über, und geht der Tisch von linearer Bewegung in der Richtung der X-Achse zu linearer Bewegung in der Richtung der Y-Achse über.
  • Wenn die Form, wie in 4D gezeigt, ein Quadrat ist, geht der Servomotor, der den Tisch in der Richtung der Y-Achse bewegt, an einer Position C1 von Stillstand zu Drehbewegung über und geht der Tisch von linearer Bewegung in der Richtung der X-Achse zu Kreisbogenbewegung über. Der Servomotor, der den Tisch in der Richtung der X-Achse bewegt, geht an einer Position C2 von Drehung zu Stillstand über, und der Tisch geht von der Kreisbogen Bewegung zu linearer Bewegung in der Richtung der Y-Achse über. Durch die von dem oben beschriebenen Bearbeitungsprogramm zum Zeitpunkt des Lernens vorgegebene Form wird Trägheits-Lauf (Trägheits-Bewegung), der auftritt, wenn die Drehrichtung umgekehrt wird, und ein Übergang vom Drehungs-Zustand zu Stillstand stattfindet, und dergleichen, bewertet, und wird Einfluss auf den Positions-Fehler geprüft.
  • Wenn das Bearbeitungsprogramm zum Zeitpunkt des Lernens ausgeführt wird, gibt die Einheit 101 zur Erzeugung eines Positions-Befehls der Servo-Regelungsvorrichtung 100 den Positions-Befehls Wert so aus, dass die Form sequenziell ein Kreis, ein Quadrat, ein Quadrat mit abgerundeten Ecken R ist. Die Einheit 101 zur Erzeugung eines Positions-Befehls ändert die Vorschubgeschwindigkeit für jede Form, d. h. einen Kreis, ein Quadrat und ein Quadrat mit abgerundeten Ecken R und ermöglicht auch Lernen des Einflusses auf eine Vielzahl von Vorschubgeschwindigkeiten. Die Einheit 101 zur Erzeugung eines Positions-Befehls kann die Vorschubgeschwindigkeit im Verlauf von Bewegung entlang einer geometrischen Form ändern, so beispielsweise, wenn der Tisch bei Bewegung des Tischs bei einer quadratischen Form eine Ecke passiert.
  • Vor Beschreibung aller in der Vorrichtung 200 für maschinelles Lernen enthaltenen Funktionsblöcke wird zunächst der grundlegende Mechanismus des verstärkenden Lernens beschrieben. Ein Agent (der der Vorrichtung 200 für maschinelles Lernen in der vorliegenden Ausführungsform entspricht) überwacht einen Umgebungs-Status und wählt eine Aktion aus. Dadurch ändert sich die Umgebung aufgrund der Aktion. Der Agent berechnet entsprechend der Änderung der Umgebung Nutzen, um Auswahl (Entscheidung) einer besseren Aktion zu lernen. Während beim Lernen mit einem Lehrer vollständige Bestätigung erfolgt, stellt der Nutzen bei dem verstärkenden Lernen häufig einen auf Änderung eines Teils der Umgebung basierenden Teilwert dar. So lernt der Agent, eine Aktion so auszuwählen, dass der Gesamt-Nutzen in der Zukunft das Maximum erreicht.
  • So wird beim verstärkenden Lernen, indem eine Aktion gelernt wird, eine geeignete Aktion unter Berücksichtigung der Wechselwirkung der Aktion mit der Umgebung erlernt, d.h., es wird eine Aktion gelernt, mit der der in der Zukunft zu erzielende Nutzen maximiert wird. Dies bedeutet, dass in der vorliegenden Ausführungsform eine Aktion, die die Zukunft beeinflusst, beispielsweise Auswählen von Aktions-Informationen zum Verringern des Positions-Fehlers, erlangt wird.
  • Als das verstärkende Lernen wird eine beliebige Lernmethode eingesetzt. In der folgenden Beschreibung wird als ein Beispiel ein Fall erläutert, in dem das sog. Q-Learning zum Einsatz kommt. Das Q-Learning ist eine Methode, bei der ein Wert Q (s, a) beim Auswählen einer Aktion a in einem Umgebung-Status s gelernt wird. Ein Ziel des Q-Learnings besteht darin, die Aktion a, die in einem Status s den höchsten Wert Q (s, a) hat, als eine geeignete Aktion aus zu ergreifenden Aktionen a auszuwählen.
  • Jedoch wird, wenn das Q-Learning zum ersten Mal durchgeführt wird, für die Kombination aus dem Status s und der Aktion a der zutreffende Wert für Q (s, a) keinesfalls identifiziert. So wählt der Agent verschiedene Aktionen a unter einer Bedingung s aus und erzielt einen Nutzen in Bezug auf eine aufgrund der Aktionen a zu diesem Zeitpunkt eingetretene Status-Änderung. Anschließend wählt der Agent auf Basis des erzielten Nutzens eine bessere Aktion aus, um den zutreffenden Wert Q (s, a) zu lernen.
  • Schließlich versucht der Agent Q (s, a) =E[Σ(γt)rt] zu erzielen, um den Gesamt-Nutzen zu maximieren, der sich in der Zukunft erzielen lässt. E[] repräsentiert einen erwarteten Wert, t repräsentiert die Zeit, γ repräsentiert einen weiter unten beschriebenen Parameter, der, als Discount Factor bezeichnet wird, rt ist ein Nutzen zu der Zeit t, und Σ repräsentiert den Gesamtwert (total) zu der Zeit t. Der erwartete Wert in dieser Formel ist ein Wert der in einem Fall erwartet wird, indem der Status entsprechend der geeigneten Aktion geändert wird. Beim Prozess des Q-Learnings besteht jedoch keine Klarheit über die geeignete Aktion. Daher führt der Agent verschiedene Aktionen aus, um das verstärkende Lernen bei gleichzeitigem Suchen durchzuführen. Eine aktualisierende Formel für diesen Wert Q (s, a) kann beispielsweise durch die folgende Formel 2 (unten als Formel 2 angeführt) repräsentiert werden.
    Q ( s t + 1 , a t + 1 ) Q ( s t , a t ) + a ( r t + 1 + γ m a x a Q ( s t + 1 , a ) Q ( s t , a t ) )
    Figure DE102018203702A1_0002
  • In der oben beschriebenen Formel 2 repräsentiert st einen Umgebung-Status zu der Zeit t, und repräsentiert at eine Aktion zu der Zeit t. Der Status wird durch die Aktion at zu st+1 geändert. rt+1 repräsentiert durch die Status-Änderung erzielten Nutzen. Ein Element, zu dem max hinzugefügt ist, wird gewonnen, indem γ mit dem Wert Q zu dem Zeitpunkt multipliziert wird, zu dem die Aktion a, die den höchsten Wert Q hat, der zu dieser Zeit identifiziert worden ist, in dem Status st+1 ausgewählt wird. γ ist ein Parameter, für den 0<γ≤1 gilt und wird als Discount Factor bezeichnet. α ist ein Lern-Koeffizient und liegt in einem Bereich 0<as1.
  • Die oben dargestellte Formel 2 repräsentiert ein Verfahren zum Aktualisieren des Wertes Q (st, at) der Aktion at in dem Status st, auf Basis des Nutzens rt+1, der als ein Ergebnis eines Versuchs at zurückgeführt wird. Mit dieser Aktualisierungs-Formel wird gezeigt, dass der Wert Q (st, at) hoch eingestellt ist, wenn ein Wert maxa Q(st+1, a) der besten Aktion in dem nächsten Status st+1 aufgrund der Aktion at größer ist als der Wert Q (st, at) der Aktion at in dem Status st, während der Wert Q (st, at) niedrig eingestellt ist, wenn der Wert maxa Q(st+1, a) der besten Aktion in dem nächsten Status St+1 aufgrund der Aktion at niedriger ist. Das heißt, ein Wert bei einer Aktion in einem Status wird durch die Aktion einem Wert der besten Aktion in dem nächsten Status genähert. Der Unterschied zwischen ihnen ändert sich in Abhängigkeit von dem Discount Factor γ und dem Nutzen rt+1. Im Wesentlichen funktioniert der Mechanismus jedoch so, dass ein Wert der besten Aktion in einem Status zu einem Wert einer Aktion in einem Status weitergeleitet wird, der direkt vor diesem Status liegt.
  • Beim Q-Learning gibt es eine Methode, bei der gelernt wird, indem eine Tabelle des Wertes Q (s, a) für jedes Status-Aktions-Paar (s, a) erstellt wird. Wenn jedoch die Werte von Q (s, a) für alle Status-Aktions-Paare bestimmt werden, ist die Anzahl von Status zu groß, und in diesem Fall ist zu viel Zeit zum Abschließen des Q-Learnings erforderlich.
  • So kann der Agent eine bekannte Methode nutzen, die als „Deep Q-Network“ (DQN) bezeichnet wird. Das heißt, der Agent kann die Wertfunktion Q unter Verwendung eines geeigneten neuronalen Netzes konfigurieren und einen Parameter des neuronalen Netzes so anpassen, dass er sich der Wertfunktion Q mit dem geeigneten neuronalen Netz nähert, um den Wert Q (s,a) zu berechnen. Der Agent kann durch den Einsatz des DQN die zum Abschließen des Q-Learnings erforderliche Zeit verkürzen. Das DQN wird beispielsweise in dem unten aufgeführten Nichtpatent-Dokument ausführlich beschrieben.
  • Nichtpatent-Dokument
    • „Human-level control through deep reinforcement learning“, Volodymyr Mnihl [online], [searched on January 17, 2017],
    • Internet <URL: http://files.davidqiu.com/research/nature14236.pdf>
  • Das oben beschriebene Q-Learning wird mit der Vorrichtung 200 für maschinelles Lernen durchgeführt. Das heißt, die Vorrichtung 200 für maschinelles Lernen stellt einen Servo-Status, wie beispielsweise einen Befehl und Rückkopplung, einschließlich der Werte von Koeffizienten ai, bj (i, j≥0) der Übertragungsfunktion der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung in der Servo-Regelungsvorrichtung 100, und Positions-Fehler Informationen der Servo-Regelungsvorrichtung 100, die ermittelt werden, indem das Bearbeitungsprogramm beim Lernen ausgeführt wird, als einen Status s ein. Dann lernt die Vorrichtung 200 für maschinelles Lernen den Wert Q beim Auswählen von Anpassung der Koeffizienten ai, bj der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung bezüglich des Status s, als die Aktion a.
  • Die Vorrichtung 200 für maschinelles Lernen überwacht die Status-Informationen s, die einen Servo-Status, wie beispielsweise einen Befehl und Rückkopplung, enthält, einschließlich wenigstens Positions-Fehlerinformationen der Servo-Regelungsvorrichtung 100, um die Aktion a zu bestimmen. Die Positions-Fehlerinformationen werden ermittelt, indem das Bearbeitungsprogramm beim Lernen auf Basis der Koeffizienten ai, bj der Übertragungsfunktion der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung ausgeführt wird. Die Vorrichtung 200 für maschinelles Lernen berechnet den Nutzen bei jeder Durchführung der Aktion a. Die Vorrichtung 200 für maschinelles Lernen sucht beispielsweise mittels Versuch und Irrtum eine optimale Aktion a, bei der sich in der Zukunft der maximale Gesamt-Nutzen ergibt. Dadurch kann die Vorrichtung 200 für maschinelles Lernen die optimale Aktion a (d.h. die optimalen Koeffizienten ai, bj der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung) in Bezug auf den Status s, der den Servo-Status, wie beispielsweise einen Befehl und Rückkopplung enthält, einschließlich der Positions-Fehlerinformationen der Servo-Regelungsvorrichtung 100 auswählen, die ermittelt werden, indem das Bearbeitungsprogramm beim Lernen auf Basis der Koeffizienten ai, bj der Übertragungsfunktion der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung ausgeführt wird.
  • Das heißt, die Vorrichtung 200 für maschinelles Lernen kann die Aktion a, bei der der Wert der Wertfunktion Q, den die Vorrichtung 200 für maschinelles Lernen gelernt hat, sein Maximum hat, aus den Aktionen a auswählen, die auf die Koeffizienten ai, bj der Übertragungsfunktion der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung angewendet werden, die mit einem Status s zusammenhängt, um die Aktion a auszuwählen, bei der der Positions-Fehler, der ermittelt wird, indem das Bearbeitungsprogramm beim Lernen ausgeführt wird, sein Minimum hat (d.h. die Koeffizienten ai, bj der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung).
  • 5 ist ein Blockdiagramm, das die Vorrichtung 200 für maschinelles Lernen der ersten Ausführungsform der vorliegenden Erfindung zeigt. Um das oben beschriebene verstärkende Lernen durchzuführen, enthält, wie in 5 gezeigt, die Vorrichtung 200 für maschinelles Lernen die Einheit 201 zur Erfassung von Status-Informationen, eine Lern-Einheit 202, die Einheit 203 zum Ausgeben von Aktions-Informationen, eine Einheit 204 zur Speicherung einer Wertfunktion sowie eine Einheit 205 zum Ausgeben von Optimierungsaktions-Informationen. Die Lern-Einheit 202 enthält die Einheit 2021 zum Ausgeben eines Nutzens, die Einheit 2022 zum Aktualisieren einer Wertfunktion und eine Einheit 2023 zur Erzeugung von Aktions-Informationen.
  • Die Einheit 201 zur Erfassung von Status-Informationen erfasst einen Status s, der den Servo-Status, wie beispielsweise den Befehl und die Rückkopplung enthält, einschließlich wenigstens der Positions-Fehlerinformationen der Servo-Regelungsvorrichtung 100, von der Servo-Regelungsvorrichtung 100. Diese Status-Informationen s entsprechend dem Umgebung-Status s beim Q-Learning. Die Positions-Fehlerinformationen werden ermittelt, indem das Bearbeitungsprogramm beim Lernen auf Basis der Koeffizienten ai, bj der Übertragungsfunktion der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung in der Servo-Regelungsvorrichtung 100 ausgeführt wird. Die Einheit 201 zur Erfassung von Status-Informationen gibt die erfassten Status-Informationen s an die Lern-Einheit 202 aus. Ein Benutzer erzeugt im Voraus die Koeffizienten ai, bj der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung zu dem Zeitpunkt, zu dem das Q-Learning erstmalig beginnt. In der vorliegenden Ausführungsform anfangs festgelegte Werte der Koeffizienten ai, bj der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung, die von dem Benutzer erzeugt werden, durch das verstärkende Lernen so angepasst, dass sie optimalere Werte sind. Die Koeffizienten ai, bj der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung werden beispielsweise als anfangs festgelegte Werte so festgelegt, dass sie a0=1, a1=0, b0=0, und b1=(ein Trägheits-Wert eines Regelungs-Objekt S) von Formel 1 entsprechen. Dimensionen m, n der Koeffizienten ai, bj werden im Voraus festgelegt. Das heißt, „i“ des Koeffizienten ai wird auf 0≤i≤m festgelegt, und „j“ des Koeffizienten bj wird auf 0≤j≤n festgelegt.
  • Die Lern-Einheit 202 ist eine Einheit, die den Wert Q (s, a) zu dem Zeitpunkt lernt, zu dem eine Aktion a in einem Umgebung-Status s ausgewählt wird. Das heißt, die Lern-Einheit 202 enthält die Einheit 2021 zum Ausgeben eines Nutzens, die Einheit 2022 zum Aktualisieren einer Wertfunktion und eine Einheit 2023 zur Erzeugung von Aktions-Informationen.
  • Die Einheit 2021 zum Ausgeben eines Nutzens ist eine Einheit, die den Nutzen zu dem Zeitpunkt berechnet, zudem die Aktion a in einem Status s ausgewählt wird. Eine Gruppe von Positions-Fehlern (Positions-Fehlergruppe), die eine Statusvariablen-Nummer in dem Status s ist, wird durch PD(s) repräsentiert, und eine Positions-Fehlergruppe, die eine Statusvariablen-Nummer ist, die sich auf die Status-Informationen s' bezieht, die sich aufgrund von Aktions-Informationen a gegenüber dem Status s geändert hat, wird durch PD(s') repräsentiert. Die Aktions-Informationen a sind Korrektur-Informationen der Koeffizienten ai, bj (i und j repräsentieren 0 oder eine positive ganze Zahl) der Einheit zur Berechnung von Geschwindigkeits-Mitkopplung. Ein Wert des Positions-Fehlers in dem Status s ist ein Wert, der auf Basis einer Bewertungsfunktion f(PD(s)) berechnet wird, die im Voraus festgelegt wird. Als die Bewertungsfunktion f kann beispielsweise
    eine Funktion zum Berechnen eines integrierten Wertes eines Absolutwertes des Positions-Fehlers
    ∫|e|dt,
    eine Funktion zum Berechnen eines integrierten Wertes durch Gewichten des Absolutwertes des Positions-Fehlers mit der Zeit
    ∫t|e|dt
    eine Funktion zum Berechnen eines integrierten Wertes der 2n-ten Potenz (n ist eine natürliche Zahl) eines Absolutwertes des Positions-Fehlers
    ∫e2ndt (n ist eine natürliche Zahl), oder
    eine Funktion zum Berechnen des Maximalwertes des Absolutwertes des Positions-Fehlers
    Max{|e|}
    angewendet werden.
  • Dabei stellt, wenn ein Wert f(PD(s')) des Positions-Fehlers der Servo-Regelungsvorrichtung 100, die auf Basis der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung betrieben worden ist, nach der Korrektur bezüglich der mit den Aktions-Informationen a korrigierten Status-Informationen s' größer ist als der Wert f(PD(s)) des Positions-Fehlers der Servo-Regelungsvorrichtung 100, die auf Basis der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung betrieben worden ist, vor der Korrektur bezüglich der Status-Informationen s vor der Korrektur mit den Aktions-Informationen a die Einheit 2021 zum Ausgeben eines Nutzens einen Nutzen-Wert so ein, dass er ein negativer Wert ist.
  • Hingegen stellt, wenn ein Wert f(PD(s')) des Positions-Fehlers der Servo-Regelungsvorrichtung 100, die auf Basis der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung betrieben worden ist, nach der Korrektur bezüglich der mit den Aktions-Informationen a korrigierten Status-Informationen s' kleiner ist als der Wert f(PD(s)) des Positions-Fehlers der Servo-Regelungsvorrichtung 100, die auf Basis der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung betrieben worden ist, vor der Korrektur bezüglich der Status-Informationen s vor der Korrektur mit den Aktions-Informationen a die Einheit 2021 zum Ausgeben eines Nutzens einen Nutzen-Wert so ein, dass er ein positiver Wert ist. Dabei stellt, wenn ein Wert f(PD(s')) des Positions-Fehlers der Servo-Regelungs-vorrichtung 100, die auf Basis der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung betrieben worden ist, nach der Korrektur bezüglich der mit den Aktions-Informationen a korrigierten Status-Informationen s' genauso groß ist wie ein Wert f(PD(s)) des Positions-Fehlers der Servo-Regelungsvorrichtung 100, die auf Basis der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung betrieben worden ist, vor der Korrektur bezüglich der Status-Informationen s vor der Korrektur mit den Aktions-Informationen a die Einheit 2021 zum Ausgeben eines Nutzens den Nutzen-Wert so ein, dass er 0 ist.
  • Der negative Wert zu dem Zeitpunkt, zu dem der Wert f(PD(s')) des Positions-Fehlers des Status s' nach Durchführen der Aktion a, größer ist als der Wert f(PD(s)) des Positions-Fehlers in dem vorhergehenden Status s, kann entsprechend einem Verhältnis größer sein. Das heißt, der negative Wert kann entsprechend dem Grad der Zunahme des Wertes des Positions-Fehlers größer sein. Hingegen kann der positive Wert zu dem Zeitpunkt, zu dem der Wert f(PD(s')) des Positions-Fehlers des Status s' nach Durchführen der Aktion a, kleiner ist als der Wert f(PD(s)) des Positions-Fehlers in dem vorhergehenden Status s, entsprechend einem Verhältnis größer sein. Das heißt, der positive Wert kann entsprechend dem Grad der Abnahme des Wertes des Positions-Fehlers größer sein.
  • Die Einheit 2022 zum Aktualisieren einer Wertfunktion führt Q-Learning auf Basis des Status s, der Aktion a, des Status s' zu dem Zeitpunkt, zu dem die Aktion a auf den Status s angewendet wird, sowie des wie oben beschrieben berechneten Nutzen-Wertes durch, um eine Wertfunktion Q zu aktualisieren, die die Einheit 204 zur Speicherung einer Wertfunktion speichert. Aktualisieren der Wertfunktion Q kann mittels sog. Online-Learning, Batch-Learning oder Mini-Batch-Learning durchgeführt werden. Das Online-Learning ist ein Lernverfahren, bei dem eine Aktion a auf den aktuellen Status s angewendet wird, um die Wertfunktion Q unmittelbar immer dann zu aktualisieren, wenn der Status s zu einem neuen Status s' übergeht. Das Batch-Learning ist ein Lernverfahren, bei dem eine Aktion a auf den aktuellen Status s angewendet wird, um den Übergang des Status s zu dem neuen Status s' zu wiederholen und Lern-Daten zu sammeln und Aktualisierung der Wertfunktion Q unter Verwendung aller gesammelten Lern-Daten durchzuführen. Des Weiteren ist das Mini-Batch-Learning ein Lernverfahren zwischen dem Online-Learning und dem Batch-Learning und ist ein Lernverfahren, bei dem Aktualisierung der Wertfunktion Q immer dann durchgeführt wird, wenn bestimmte Elemente von Lern-Daten akkumuliert werden.
  • Die Einheit 2023 zur Erzeugung von Aktions-Informationen wählt die Aktion a bei einem Prozess des Q-Learnings in Bezug auf den aktuellen Status s aus. Die Einheit 2023 zur Erzeugung von Aktions-Informationen erzeugt die Aktions-Informationen a, um einen Vorgang (der der Aktion a bei dem Q-Learning entspricht) zum Korrigieren der Koeffizienten ai, bj der Einheit zur Berechnung von Geschwindigkeits-Mitkopplung der Servo-Regelungsvorrichtung 100 bei dem durchzuführenden Prozess des Q-Learnings zu veranlassen und die erzeugten Aktions-Informationen a an die Einheit 203 zum Ausgeben von Aktions-Informationen auszugeben. Das heißt, die Einheit 2023 zur Erzeugung von Aktions-Informationen veranlasst beispielsweise Addieren oder Subtrahieren der Koeffizienten ai, bj der Einheit zur Berechnung von Geschwindigkeits-Mitkopplung, die in der Aktion a enthalten sind, in Bezug auf die Koeffizienten der Einheit zur Berechnung von Geschwindigkeits-Mitkopplung, die in dem Status s enthalten sind, in Stufen (z.B. ungefähr 0,01) .
  • Wenn die Koeffizienten ai, bj der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung vergrößert oder verkleinert werden, ein Übergang zu dem Status s' stattfindet und sich ein positiver Nutzen (Nutzen mit positivem Wert) ergibt, kann die Einheit 2023 zur Erzeugung von Aktions-Informationen als die nächste Aktion a' eine Maßnahme dahingehend ergreifen, dass die Aktion a' ausgewählt wird, so dass der Wert des Positions-Fehlers gering wird, so beispielsweise, ähnlich wie bei der vorhergehenden Aktion, Addieren zu oder Subtrahieren von der Stufe in Bezug auf die Koeffizienten ai, bj der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung.
  • Im Unterschied dazu kann, wenn sich ein negativer Nutzen (Nutzen mit einem negativen Wert) ergibt, die Einheit 2023 zur Erzeugung von Aktions-Informationen als die nächste Aktion a' beispielsweise eine Maßnahme dahingehend ergreifen, dass die Aktion a' ausgewählt wird, so dass der Positions-Fehler kleiner ist als der vorhergehende Wert, so beispielsweise, anders als bei der vorhergehenden Aktion, Subtrahieren von oder Addieren zu der Stufe in Bezug auf die Koeffizienten ai, bj der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung.
  • Die Einheit 2023 zur Erzeugung von Aktions-Informationen kann eine Maßnahme dahingehend ergreifen, dass die Aktion a' mit einem bekannten Verfahren, wie beispielsweise dem sog. Greedy-Verfahren, bei dem die Aktion a' ausgewählt wird, die von den aktuell geschätzten Werten der Aktion a den höchsten Wert Q (s, a) hat, oder dem ε-Greedy-Verfahren ausgewählt wird, bei dem die Aktion a' mit einer geringen Wahrscheinlichkeit ε ausgewählt wird oder ansonsten die Aktion a' mit dem höchsten Wert Q (s, a) ausgewählt wird.
  • Die Einheit 203 zur Erzeugung von Aktions-Informationen ist eine Einheit, die die von der Lern-Einheit 202 ausgegebenen Aktions-Informationen a zu der Servo-Regelungseinheit 100 überträgt. Die Servo-Regelungseinheit 100 korrigiert, wie oben beschrieben, den aktuellen Status s, d. h. die Koeffizienten ai, bj der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung, die aktuell eingestellt sind, auf Basis der Aktions-Informationen, um einen Übergang zu dem nächsten Status s' vorzunehmen (d. h. die korrigierten Koeffizienten der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung).
  • Die Einheit 204 zur Speicherung einer Wertfunktion ist eine Speichervorrichtung, die die Wertfunktion Q speichert. Die Wertfunktion Q kann in einer Tabelle (Im Folgenden als eine Tabelle für Aktions-Werte bezeichnet) für jeden Status s und jede Aktion a gespeichert werden. Die in der Einheit 204 zur Speicherung einer Wertfunktion gespeicherte Wertfunktion Q wird von der Einheit 2022 zum Aktualisieren einer Wertfunktion aktualisiert. Die in der Einheit 204 zur Speicherung einer Wertfunktion gespeicherte Wertfunktion Q kann mit den anderen Vorrichtungen 200 für maschinelles Lernen geteilt werden. Wenn die Wertfunktion Q zwischen einer Vielzahl von Vorrichtungen 200 für maschinelles Lernen geteilt wird, kann durch die Vorrichtung 200 für maschinelles Lernen verteiltes verstärkendes Lernen durchgeführt werden. So kann Effizienz des verstärkenden Lernens verbessert werden.
  • Die Einheit 205 zum Ausgeben von Optimierungsaktions-Informationen erzeugt die Aktions-Informationen a (Im Folgenden als „Optimierungsaktions-Informationen“ bezeichnet), um die Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung zu veranlassen, auf Basis der mittels Durchführen des Q-Learnings durch die Einheit 2022 zum Aktualisieren einer Wertfunktion aktualisierten Wertfunktion Q einen Vorgang durchzuführen, bei dem der Wert Q (s, a) das Maximum annimmt. Das heißt, die Einheit 205 zum Ausgeben von Optimierungsaktions-Informationen erfasst die in der Einheit 204 zur Speicherung einer Wertfunktion gespeicherte Wertfunktion Q. Diese Wertfunktion Q wird aktualisiert, indem, wie oben beschrieben, das Q-Learning durch die Einheit 2022 zum Aktualisieren einer Wertfunktion durchgeführt wird. Dann erzeugt die Einheit 205 zum Ausgeben von Optimierungsaktions-Informationen die Aktions-Informationen auf Basis der Wertfunktion Q und gibt die erzeugten Aktions-Informationen an die Servo-Regelungsvorrichtung 100 (Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung)aus. Diese Optimierungsaktions-Informationen enthalten, ähnlich wie die beim Prozess des Q-Learnings durch die Einheit 203 zum Ausgeben von Aktions-Informationen ausgegebenen Aktions-Informationen, Informationen zum Korrigieren der Koeffizienten ai, bj der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung.
  • In der Servo-Regelungsvorrichtung 100 werden die Koeffizienten ai, bj der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung auf Basis dieser Aktions-Informationen korrigiert. Dementsprechend kann die Servo-Regelungsvorrichtung 100 den Wert des Positions-Fehlers verringern, ohne aufwändige Anpassung der Koeffizienten durchzuführen, selbst wenn die Koeffizienten der Geschwindigkeits-Mitkopplung hohe Ordnung haben. Durch Einsatz der Vorrichtung 200 für maschinelles Lernen Gemäß der vorliegenden Erfindung wird, wie oben beschrieben, die Parameter-Anpassung der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung der Servo-Regelungsvorrichtung 100 vereinfacht.
  • Die in der Servo-Regelungsvorrichtung 100 und der Vorrichtung 200 für maschinelles Lernen enthaltenen Funktionsblöcke sind oben beschrieben worden. Um diese Funktionsblöcke zu realisieren enthalten die Servo-Regelungsvorrichtung 100 und die Vorrichtung 200 für maschinelles Lernen jeweils eine Operations-Verarbeitungsvorrichtung, wie beispielsweise eine CPU. Die Servo-Regelungsvorrichtung 100 und die Vorrichtung 200 für maschinelles Lernen enthalten des Weiteren jeweils eine Zusatz-Speichervorrichtung, wie beispielsweise ein Festplattenlaufwerk, in dem verschiedene Steuerungsprogramme, wie beispielsweise Anwendungs-Software und ein Betriebssystem, gespeichert sind, sowie eine Haupt-Speichervorrichtung, wie beispielsweise einen RAM, in dem Daten temporär gespeichert werden, die für die Ausführung des Programms durch die Operations-Verarbeitungsvorrichtung erforderlich sind.
  • In der Servo-Regelungsvorrichtung 100 und der Vorrichtung 200 für maschinelles Lernen führt, während die Anwendungs-Software und das Betriebssystem aus der Zusatz-Speichervorrichtung gelesen werden und die gelesene Anwendungs-Software sowie das Betriebssystem in der Haupt-Speichervorrichtung dekomprimiert werden, die Operations-Verarbeitungsvorrichtung Operations-Verarbeitung auf Basis der Anwendungs-Software und des Betriebssystems durch. Auf Basis des Ergebnisses dieser Verarbeitung werden verschiedene in der Servo-Regelungsvorrichtung 100 enthaltene Hardware-Einrichtungen und Vorrichtungen der Vorrichtung 200 für maschinelles Lernen gesteuert. Damit sind die Funktionsblöcke der vorliegenden Ausführungsform realisiert. Das heißt, die vorliegende Ausführungsform kann im Zusammenwirken der Hardware und der Software realisiert werden.
  • Die Vorrichtung 200 für maschinelles Lernen führt einen großen Teil der mit dem maschinellen Lernen zusammenhängenden Operationen durch. Das heißt, es ist vorteilhaft, wenn beispielsweise ein Personal Computer mit Grafikprozessoren ausgestattet ist und die Grafikprozessoren mittels einer Methode, die als Mehrzweckberechnung auf Grafikprozessoren (general-purpose computing on graphics processing units - GPGPU) bezeichnet wird, für die Operations-Verarbeitung genutzt werden, die mit dem maschinellen Lernen zusammenhängt, so dass die Vorrichtung 200 für maschinelles Lernen Hochgeschwindigkeits-Verarbeitung durchführen kann. Des Weiteren kann, um Verarbeitung mit höherer Geschwindigkeit durchzuführen, eine Vielzahl derartiger mit dem Grafikprozessor ausgestatteter Computer eingesetzt werden, um einen Computer-Cluster einzurichten, so dass parallele Verarbeitung durch die Vielzahl in dem Computer-Cluster enthaltener Computer durchgeführt wird.
  • Im Folgenden wird die Funktion der Vorrichtung 200 für maschinelles Lernen beim Q-Learning in der vorliegenden Ausführungsform unter Bezugnahme auf ein Flussdiagramm in 6 beschrieben.
  • In Schritt S11 erfasst die Einheit 201 zur Erfassung von Status-Informationen die Status-Informationen s von der Servo-Regelungsvorrichtung 100. Die erfassten Status-Informationen werden an die Einheit 2022 zum Aktualisieren einer Wertfunktion und die Einheit 2023 zur Erzeugung von Aktions-Informationen ausgegeben. Diese Status-Informationen s sind, wie oben beschrieben, Informationen, die einem Status bei dem Q-Learning entsprechen und schließen die Koeffizienten ai, bj der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung zum Zeitpunkt von Schritt S11 ein. So wird ein Satz PD(s) aus dem Positions-Fehler der einer vorgegebenen Vorschubgeschwindigkeit entspricht, und der Form, die ein Kreis ist, zu dem Zeitpunkt, zu dem die Koeffizienten Anfangswerte sind, von der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung bezogen.
  • Die Koeffizienten ai, bj der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung in dem Anfangs-Status s0 sind, wie oben beschrieben, beispielsweise a0=1, a1=0, b0=0, und b1=(ein Trägheits-Wert eines Regelungs-Objektes).
  • Der Wert PD(s0) des Positions-Fehlers in dem Status s0 zu dem Zeitpunkt, zu dem das Q-Learning erstmalig beginnt, wird von dem Subtrahierer 102 bezogen, indem die Servo-Regelungsvorrichtung 100 mittels des Bearbeitungsprogramms zum Zeitpunkt des Lernens betrieben wird. Die Einheit 101 zur Erzeugung eines Positions-Befehls gibt sequenziell den Positions-Befehl aus und ändert dabei die Vorschub-Geschwindigkeit für eine vorgegebene Form, die von dem Bearbeitungsprogramm spezifiziert wird, so beispielsweise eine Form, die ein Kreis, ein Quadrat oder ein Quadrat mit abgerundeten Ecken R ist. Beispielsweise wird der Positions-Befehlswert, der einer Kreis-Form entspricht, von der Einheit 101 zur Erzeugung eines Positions-Befehls bei einer vorgegebenen Vorschub-Geschwindigkeit ausgegeben, und gibt der Subtrahierer 102 eine Differenz zwischen dem Positions-Befehlswert und einer Erfassungs-Position, die von dem Integrator 108 ausgegeben wird, als den Positions-Fehler PD(so) an die Vorrichtung 200 für maschinelles Lernen aus.
  • In Schritt S12 erzeugt die Einheit 2023 zur Erzeugung von Aktions-Informationen neue Aktions-Informationen a und gibt die erzeugten neuen Aktions-Informationen a über die Einheit 203 zum Ausgeben von Aktions-Informationen an die Servo-Regelungsvorrichtung 100 aus. Die Einheit 2023 zur Erzeugung von Aktions-Informationen gibt die neuen Aktions-Informationen a mittels der oben beschriebenen Maßnahme aus. Die Servo-Regelungsvorrichtung 100, die die Aktions-Informationen a empfangen hat, steuert die Werkzeugmaschine einschließlich des Servomotors mittels des Status s' an, bei dem die Koeffizienten ai, bj der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung bezüglich des aktuellen Status s auf Basis der empfangenen Aktions-Informationen korrigiert werden. Diese Aktions-Informationen entsprechen, wie oben beschrieben, der Aktion a beim Q-Learning.
  • In Schritt S13 erfasst die Einheit 201 zur Erfassung von Status-Informationen den Positions-Fehler PD(s') in dem neuen Status s' von dem Subtrahierer 102 und die Koeffizienten ai, bj von der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung. So erfasst die Einheit 201 zur Erfassung von Status-Informationen den Satz PD(s') des Positions-Fehlers, der der vorgegebenen Vorschub-Geschwindigkeit entspricht, und der Form, die ein Kreis ist, zu dem Zeitpunkt, zu dem die Koeffizienten in dem Status s' die Koeffizienten ai, bj sind, von der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung. Die erfassten Status-Informationen werden an die Einheit 2021 zum Ausgeben eines Nutzens ausgegeben.
  • In Schritt S14 bestimmt die Einheit 2021 zum Ausgeben eines Nutzens eine Größenbeziehung zwischen dem Wert f(PD(s')) des Positions-Fehlers in dem Status s', und dem Wert f(PD(s)) des Positions-Fehlers in dem Status s. Wenn f(PD(s'))>f(PD(s)) gilt, legt die Einheit 2021 zum Ausgeben eines Nutzens in Schritt S15 den Nutzen auf einen negativen Wert fest. Wenn f(PD(s'))<f(PD(s)) gilt, legt die Einheit 2021 in Schritt S16 den Nutzen auf einen positiven Wert fest. Wenn f(PD(s'))=f(PD(s)) gilt, legt die Einheit 2021 in Schritt S17 den Nutzen auf 0 fest. Der negative Wert und der positive Wert des Nutzens können gewichtet werden.
  • Wenn einer der Schritte S15, S16 und S17 endet, aktualisiert die Einheit 2022 zum Aktualisieren einer Wertfunktion in Schritt S18 die in der Einheit 204 zur Speicherung einer Wertfunktion gespeicherte Wertfunktion Q auf Basis des in einem dieser Schritte berechneten Nutzen-Wertes. Dann kehrt die Verarbeitung wieder zu Schritt S11 zurück, und die oben beschriebene Verarbeitung wird wiederholt. So schwingt sich die Wertfunktion Q auf einen geeigneten Wert ein. Die oben beschriebene Verarbeitung kann unter einer Bedingung dahingehend enden, dass sie mit einer vorgegebenen Häufigkeit wiederholt wird oder über eine vorgegebene Zeit wiederholt wird. Obwohl in Schritt S18 Online-Aktualisierung als Beispiel angeführt ist, kann anstelle der Online-Aktualisierung Batch-Aktualisierung oder Mini-Batch-Aktualisierung durchgeführt werden.
  • Mit dem unter Bezugnahme auf 6 beschriebenen Funktionsablauf ergibt sich, wie oben beschrieben, ein Effekt der vorliegenden Ausführungsform dahingehend, dass eine geeignete Wertfunktion für Anpassung von Koeffizienten ai, bj hoher Ordnung der Geschwindigkeits-Mitkopplung unter Einsatz der Vorrichtung 200 für maschinelles Lernen ermittelt wird, so dass Optimierung der Koeffizienten ai, bj der Geschwindigkeits-Mitkopplung vereinfacht wird. Im Folgenden wird der Funktionsablauf bei Erzeugung von Optimierungsaktions-Informationen durch die Einheit 205 zum Ausgeben von Optimierungsaktions-Informationen unter Bezugnahme auf ein Flussdiagramm in 7 beschrieben. Zunächst erfasst in Schritt S21 die Einheit 205 zum Ausgeben von Optimierungsaktions-Informationen die in der Einheit 204 zur Speicherung einer Wertfunktion gespeicherte Wertfunktion Q. Die Wertfunktion Q ist aktualisiert worden, indem, wie oben beschrieben, das Q-Learning durch die Einheit 2022 zum Aktualisieren einer Wertfunktion durchgeführt wurde.
  • In Schritt S22 erzeugt die Einheit 205 zum Ausgeben von Optimierungsaktions-Informationen die Aktions-Informationen auf Basis der Wertfunktion Q, und gibt die erzeugten Optimierungsaktions-Informationen an die Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung der Servo-Regelungsvorrichtung 100 aus.
  • Mittels des unter Bezugnahme auf 7 beschriebenen Funktionsablaufs werden in der vorliegenden Ausführungsform die Optimierungsaktions-Informationen auf Basis der mittels Lernen durch die Vorrichtung 200 für maschinelles Lernen bestimmten Wertfunktion Q erzeugt, und passt die Servo-Regelungsvorrichtung 100 die aktuell eingestellten Koeffizienten ai, bj der Einheit 110 zur Berechnung von Geschwindigkeits-Mitkopplung auf Basis der Optimierungsaktions-Informationen an. Damit kann mit der vorliegenden Ausführungsform die Anpassung der Koeffizienten ai, bj vereinfacht werden und kann der Wert des Positions-Fehlers verringert werden. Des Weiteren sind die Koeffizienten der Geschwindigkeits-Mitkopplung anfangs auf hohe Ordnung eingestellt, und führt die Vorrichtung 200 für maschinelles Lernen Lernen durch, und so kann mit der vorliegenden Ausführungsform der Wert des Positions-Fehlers weiter verringert werden.
  • Zweite Ausführungsform
  • In der ersten Ausführungsform berechnet die Einheit 2021 zum Ausgeben eines Nutzens den Nutzen-Wert, indem sie den Wert f(PD(s)) des Positions-Fehlers des Status s, der auf Basis der Bewertungsfunktion f(PD(s)) berechnet wird, die im Voraus unter Berücksichtigung des Positions-Fehlers PD(s) in dem Status s als einer Eingabe berechnet wird, und einen Wert f (PD(s')) des Positions-Fehlers des Status s' vergleicht, der auf Basis der Bewertungsfunktion f unter Berücksichtigung des Positions-Fehlers PD(s') in dem Status s' als eine Eingabe berechnet wird. Bei der Berechnung des Nutzen-Wertes können jedoch andere Faktoren als der Positions-Fehler hinzugefügt werden.
  • 8 ist ein Blockdiagramm, das eine Servo-Regelungsvorrichtung 10A der zweiten Ausführungsform der vorliegenden Erfindung zeigt. Der Unterschied zwischen dem Servo-Regelungssystem 10A der zweiten Ausführungsform und dem Servo-Regelungssystem 10 der in 2 gezeigten ersten Ausführungsform besteht darin, dass ein Geschwindigkeits-Befehl, der ein Ausgang des Addierers 104 ist und Positions-Vorwärtsregelung unterzogen wird, eine Differenz zwischen dem Positions-Vorwärtsregelung unterzogenen Geschwindigkeits-Befehl und der Geschwindigkeits-Rückkopplung sowie ein Drehmoment-Befehl, der ein Ausgang des Addierers 107 ist und Positions-Vorwärtsregelung unterzogen wird, zusätzlich zu dem Positions-Fehler, der ein Ausgang des Subtrahierers 102 ist, in die Vorrichtung 200 für maschinelles Lernen eingegeben werden. 8 zeigt als ein Beispiel, dass der Positions-Vorwärtsregelung unterzogene Geschwindigkeits-Befehl, der ein Ausgang des Addierers 104 ist, die Differenz zwischen dem Positions-Vorwärtsregelung unterzogenen Geschwindigkeits-Befehl und der Geschwindigkeits-Rückkopplung sowie der Positions-Vorwärtsregelung unterzogene Drehmoment-Befehl, der ein Ausgang des Addierers 107 ist, in die Vorrichtung 200 für maschinelles Lernen eingegeben werden. Jedoch können jeder von ihnen oder eine Kombination mehrerer von ihnen und der Positions-Fehler zum Durchführen des verstärkenden Lernens eingesetzt werden.
  • Es tritt ein Fall auf, in dem es zu Stoß an einer Maschine kommt, selbst wenn der Positions-Fehler gering ist. Das heißt, wenn ein Ruck stark ist (Änderung der Beschleunigung stark ist), kommt es zu Stoß an einer Maschine. Um den Stoß an der Maschine zu verringern, ist es vorteilhaft, wenn Änderung des Positions-Fehlers oder/und Änderung des Drehmoment-Befehlswertes reduziert wird/werden. So kann der Nutzen zusätzlich zur Berechnung des Nutzens mittels des Wertes f(PD(s)) des Positions-Fehlers anhand der Änderung des Positions-Fehlers (des Differenzialwertes des Positions-Fehlers) oder/und der Änderung des Drehmoment-Befehlswertes (des Differenzialwertes des Drehmoment-Befehlswertes) berechnet werden. Im Folgenden wird die Gruppe der Differenzialwerte des Positions-Fehlers in dem Status s als PD'(s) beschrieben. Die Gruppe der Drehmoment-Befehlswerte in dem Status s wird als TC(s) beschrieben, und die Gruppe der Differenzialwerte des Drehmoment-Befehlswertes in dem Status s wird als TC'(s) beschrieben.
  • Differenzialwert des Positions-Fehlers
  • Wenn der Differenzialwert des Positions-Fehlers bei der Berechnung des Nutzens berücksichtigt wird, wird eine Bewertungsfunktion g des Differenzialwertes des Positions-Fehlers im Voraus festgelegt. Die Einheit 2021 zum Ausgeben eines Nutzens kann einen Bewertungs-Wert g(PD'(s)) des Differenzialwertes des Positions-Fehlers des Status s und den Bewertungs-Wert g(PD'(s')) des Differenzialwertes des Positions-Fehlers des Status s' vergleichen, um einen zweiten Nutzen, ähnlich wie bei dem Positions-Fehler, auf Basis des Differenzialwertes des Positions-Fehlers zu berechnen. Als die Bewertungsfunktion g kann, ähnlich wie bei der Bewertungsfunktion f, beispielsweise eine Funktion zum Berechnen des integrierten Wertes des Absolutwertes des Differenzialwertes des Positions-Fehlers, eine Funktion zum Berechnen des integrierten Wertes durch Gewichten des Absolutwertes des Differenzialwertes des Positions-Fehlers nach der Zeit, eine Funktion zum Berechnen des integrierten Wertes der 2n-ten Potenz des Absolutwertes des Differenzialwertes des Positions-Fehlers, oder eine Funktion zum Berechnen des Maximalwertes des Absolutwertes des Differenzialwertes des Positions-Fehlers angewendet werden. Wenn der Bewertungs-Wert g(PD'(s')) des Differenzialwertes des Positions-Fehlers in dem Status s', der mittels der Aktions-Informationen a korrigiert wird, größer ist als der Bewertungs-Wert g(PD'(s)) des Differenzialwertes des Positions-Fehlers in dem Status s vor der Korrektur mittels der Aktions-Informationen a, legt die Einheit 2021 zum Ausgeben eines Nutzens den zweiten Nutzen-Wert auf einen negativen Wert fest.
  • Wenn hingegen der Bewertungs-Wert g(PD'(s')) des Differenzialwertes des Positions-Fehlers in dem Status s' kleiner ist als der Bewertungs-Wert g(PD'(s)) des Differenzialwertes des Positions-Fehlers in dem vorhergehenden Status s, legt die Einheit 2021 zum Ausgeben eines Nutzens den zweiten Nutzen-Wert auf einen positiven Wert fest. Wenn der Bewertungs-Wert g(PD'(s')) des Differenzialwertes des Positions-Fehlers in dem Status s' genauso groß ist wie der Bewertungs-Wert g(PD'(s)) des Differenzialwertes des Positions-Fehlers in dem vorhergehenden Status s, legt die Einheit 2021 zum Ausgeben eines Nutzens den zweiten Nutzen-Wert auf 0 fest.
  • Wenn der auf Basis des Bewertungs-Wertes des Positions-Fehlers berechnete Nutzen, der in der ersten Ausführungsform beschrieben wird, als ein erster Nutzen bezeichnet wird, führt die Einheit 2021 zum Ausgeben eines Nutzens Gewichtung zwischen dem ersten Nutzen-Wert und dem zweiten Nutzen-Wert durch und addiert den ersten und den zweiten Nutzen-Wert nach Gewichtung, um den Nutzen unter Berücksichtigung des Differenzialwertes des Positions-Fehlers zu bestimmen. Die Einheit 2022 zum Aktualisieren einer Wertfunktion führt das Q-Learning auf Basis des Status s, der Aktion a, des Status s' zu dem Zeitpunkt, zu dem die Aktion a auf den Status s angewendet wird, sowie des Nutzen-Wertes unter Berücksichtigung des wie oben beschrieben berechneten Differenzialwertes des Positions-Fehlers durch, um die in der Einheit 204 zur Speicherung einer Wertfunktion gespeicherte Wertfunktion Q zu aktualisieren.
  • Abwandlung
  • Bei dem oben beschriebenen Beispiel führt die Einheit 2021 zum Ausgeben eines Nutzens Gewichtung zwischen dem ersten Nutzen-Wert und dem zweiten Nutzen-Wert durch und addiert den ersten und den zweiten Nutzen-Wert nach Gewichtung. Die Einheit 2021 zum Ausgeben eines Nutzens kann jedoch Gewichtung zwischen der Bewertungsfunktion f für den Absolutwert des Positions-Fehlers und der Bewertungsfunktion d für den Absolutwert des Differenzialwertes des Positions-Fehlers durchführen, um den Nutzen unter Verwendung der addierten Bewertungsfunktionen zu bestimmen. 9 ist ein Kennlinien-Diagramm, das eine Wellenform des Positions-Fehlers zeigt, die unter Verwendung der gewichteten und summierten Bewertungsfunktionen ausgewählt werden kann. Wenn der Positions-Fehler durch e repräsentiert wird,
    ist die Bewertungsfunktion f für den Positions-Fehler f=∫|e|dt, und
    ist die Bewertungsfunktion g für den Differenzialwert des Positions-Fehlers g=∫|de/dt|dt,
    ist die Bewertungsfunktion, die ermittelt wird, indem zwei Bewertungsfunktionen f, g gewichtet werden und die Funktionen addiert werden,
    c*∫|e|dt+d*∫|de/dt|dt (c und d sind die Gewichtungs-Koeffizienten).
  • Es ist zu erkennen, dass anstelle der mit einer durchgehenden Linie dargestellten Wellenform, bei der der Nutzen-Wert auf Basis der Bewertungsfunktion bestimmt wird, die mittels Gewichten und Addieren ermittelt wird, und bei der, wie in 9 gezeigt, die Bewertungsfunktion einen großen Wert für den Differenzialwert des Positions-Fehlers hat, die mit einer unterbrochenen Linie dargestellte Wellenform ausgewählt wird, bei der die Bewertungsfunktion für den Differenzialwert des Positions-Fehlers einen kleinen Wert hat.
  • Differenzialwert des Drehmoment-Befehlswertes
  • Bei der Berechnung des Nutzens kann, wenn der Differenzialwert des Drehmoment-Befehlswertes TC(s) in dem Status s berücksichtigt wird, eine Bewertungsfunktion h des Differenzialwertes TC'(s) des Drehmoment-Befehlswertes im Voraus festgelegt wird, die Einheit 2021 zum Ausgeben eines Nutzens, ähnlich wie bei dem Differenzialwert des Positions-Fehlers auf Basis eines Wertes h(TC'(s)) des Differenzialwertes des Drehmoment-Befehlswertes, einen dritten Nutzen auf Basis des Differenzialwertes des Drehmoment-Befehlswertes berechnen. Die Einheit 2021 zum Ausgeben eines Nutzens kann Gewichten zwischen dem ersten Nutzen-Wert und dem dritten Nutzen-Wert durchführen und den ersten Nutzen und den zweiten Nutzen nach Gewichtung addieren, um den Nutzen unter Berücksichtigung des Differenzialwertes des Drehmoment-Befehlswertes zu bestimmen. Wenn der Differenzialwert des Positions-Fehlers und der Differenzialwert des Drehmoment-Befehlswertes berücksichtigt werden, kann die Einheit 2021 zum Ausgeben eines Nutzens Gewichtung zwischen dem ersten Nutzen-Wert, dem zweiten Nutzen-Wert und dem dritten Nutzen-Wert durchführen und den ersten, den zweiten und den dritten Nutzen-Wert nach Gewichtung addieren.
  • Abwandlung
  • Ähnlich wie im Fall des Positions-Fehlers kann die Einheit 2021 zum Ausgeben eines Nutzens Gewichtung zwischen der Bewertungsfunktion für den Positions-Fehler und der Bewertungsfunktion für den Differenzialwert des Drehmoment-Befehlswertes durchführen und die gewichteten Bewertungsfunktionen addieren, um den Nutzen unter Verwendung der gewichteten Bewertungsfunktion zu bestimmen. Wenn der Differenzialwert des Positions-Fehlers und der Differenzialwert des Drehmoment-Befehlswertes berücksichtigt werden, kann die Einheit 2021 zum Ausgeben eines Nutzens Gewichtung zwischen der Bewertungsfunktion für den Positions-Fehler, der Bewertungsfunktion für den Differenzialwert des Positions-Fehlers und der Bewertungsfunktion für den Differenzialwert des Drehmoment-Befehlswertes durchführen und die gewichteten Bewertungsfunktionen addieren, um den Nutzen unter Verwendung der ermittelten Gewicht-Bewertungsfunktion zu bestimmen.
  • Geschwindigkeits-Befehlswert
  • Vorzugsweise ist Zeit T von dem Zeitpunkt an, zu dem sich der Geschwindigkeits-Befehlswert ändert, bis zu dem Zeitpunkt, zu dem der Positions-Fehler innerhalb eines Bereiches liegt, so kurz wie möglich. So kann der Nutzen zusätzlich zu der Berechnung des Nutzens anhand des Positions-Fehlers unter Berücksichtigung der Zeit T von dem Zeitpunkt an, zu dem sich der Geschwindigkeits-Befehlswert ändert, bis zu dem Zeitpunkt, zu dem der Positions-Fehler innerhalb eines Bereiches liegt, berechnet werden. Die Einheit 201 zur Erfassung von Status-Informationen erfasst Änderung des Positions-Vorwärtsregelung unterzogenen Geschwindigkeits-Befehlswertes, der ein Ausgang des Addierers 104 ist, und überwacht die Zeit T von dem Zeitpunkt an, zu dem sich der Geschwindigkeits-Befehlswert ändert, bis zu dem Zeitpunkt, zu dem der Positions-Fehler, der ein Ausgang des Subtrahierers 102 ist, innerhalb eines vorgegebenen Bereiches liegt. Im Folgenden wird ein Satz der Zeit T von dem Zeitpunkt an, zu dem sich der Geschwindigkeits-Befehlswert ändert, bis zu dem Zeitpunkt, zu dem der Positions-Fehler, der ein Ausgang des Subtrahierers 102 ist, innerhalb eines vorgegebenen Bereiches liegt, in dem Status s als T(s) beschrieben. Bei der Berechnung des Nutzens wird die Zeit T von dem Zeitpunkt an, zu dem sich der Geschwindigkeits-Befehlswert ändert, bis zu dem Zeitpunkt berücksichtigt, zu dem der Positions-Fehler, der ein Ausgang des Subtrahierers 102 ist, innerhalb eines vorgegebenen Bereiches liegt, wird eine Bewertungsfunktion p der Zeit T(s) im Voraus festgelegt und kann die Einheit 2021 zum Ausgeben eines Nutzenseinen vierten Nutzen auf Basis der Zeit T (s), ähnlich wie in einem Fall des Differenzialwertes des Positions-Fehlers, auf Basis eines Bewertungs-Wertes p(T(s)) der Zeit T berechnen. Die Einheit 2021 zum Ausgeben eines Nutzens kann Gewichtung zwischen dem ersten Nutzen-Wert und dem vierten Nutzen-Wert durchführen und den ersten und den vierten Nutzen nach Gewichtung addieren, um den Nutzen unter Berücksichtigung der Zeit T von dem Zeitpunkt an, zu dem sich der Geschwindigkeits-Befehlswert in dem Status s ändert, bis zu dem Zeitpunkt zu bestimmen, zu dem der Positions-Fehler, der ein Ausgang des Subtrahierers 102 ist, innerhalb eines vorgegebenen Bereiches liegt. Wenn eine Kombination des Differenzialwertes des Positions-Fehlers, des Differenzialwertes des Drehmoment-Befehlswertes und der oben beschriebenen Zeit T(s) bei der Berechnung des Nutzens berücksichtigt wird, kann die Einheit 2021 zum Ausgeben eines Nutzens beispielsweise entsprechend der Kombination Gewichtung zwischen dem ersten Nutzen-Wert und dem zweiten Nutzen-Wert, dem dritten Nutzen-Wert und dem vierten Nutzen-Wert durchführen und die Werte addieren.
  • Abwandlung
  • Bei dem oben beschriebenen Beispiel führt die Einheit 2021 zum Ausgeben eines Nutzens Gewichtung zwischen dem ersten Nutzen-Wert und dem vierten Nutzen-Wert durch und addiert den ersten und dem vierten Nutzen-Wert nach Gewichtung. Die Einheit 2021zum Ausgeben eines Nutzens kann jedoch Gewichtung zwischen der Bewertungsfunktion f für den Absolutwert des Positions-Fehlers und der Bewertungsfunktion p für die Zeit T(s) durchführen, und die zwei gewichteten Bewertungsfunktionen addieren, um den Nutzen unter Verwendung der addierten und ermittelten Bewertungsfunktion zu berechnen. 10 ist ein Kennlinien-Diagramm, das die Wellenform des Positions-Fehlers zeigt, die unter Verwendung der gewichteten und addierten Bewertungsfunktion ausgewählt werden kann. Wenn der Positions-Fehler durch e repräsentiert wird,
    ist die Bewertungsfunktion f für den Positions-Fehler f=∫|e|dt, und
    ist die Bewertungsfunktion p für die Zeit T(s) ∫t0dt,
    ist die gewichtete und addierte Bewertungsfunktion y*∫|e|dt+z*∫t0dt (y und z sind Gewichtungs-Koeffizienten). Es ist zu erkennen, dass, wenn die Einheit 2021 zum Ausgeben eines Nutzens den Nutzen-Wert auf Basis der gewichteten und addierten Bewertungsfunktion bestimmt, wie in 10 gezeigt, eine mit einer unterbrochenen Linie dargestellte Wellenform W1 ausgewählt wird, deren Zeit T kleiner ist als die einer mit einer durchgehenden Linie dargestellten Wellenform W2. In 10 wird Zeit T für die Wellenformen W1, W2 mit t0(1) bzw. t0(2) dargestellt. Bei der Berechnung des Nutzens kann, wenn der Differenzialwert des Positions-Fehlers, der Differenzialwert des Drehmoment-Befehlswertes und die oben beschriebene Zeit T(s) kombiniert und berücksichtigt werden, die Einheit 2021 zum Ausgeben eines Nutzens Gewichtung zwischen der Bewertungsfunktion für den Positions-Fehler, der Bewertungsfunktion für den Differenzialwert des Positions-Fehlers, der Bewertungsfunktion für den Differenzialwert des Drehmoment-Befehlswertes und der Bewertungsfunktion für die Zeit T(s) durchführen und die gewichteten Bewertungsfunktionen addieren, um den Nutzen unter Verwendung der gewichteten Bewertungsfunktion zu bestimmen.
  • Drehmoment-Befeh lswert
  • Es gibt einen oberen Grenzwert für den Drehmoment-Befehlswert. So wird ein zulässiger Wert TCmax des Drehmoment-Befehlswertes beispielsweise auf einen Wert des oberen Grenzwertes oder darunter so festgelegt, dass der Drehmoment-Befehlswert diesen zulässigen Wert TCmax nicht überschreitet. Die Einheit 2021 zum Ausgeben eines Nutzens berechnet den Nutzen zusätzlich zur Berechnung des Nutzens mittels des Positions-Fehlers basierend darauf, ob der Drehmoment-Befehlswert den zulässigen Wert TCmax erreicht oder nicht. Das heißt, die Einheit 201 zur Erfassung von Status-Informationen überwacht den Positions-Vorwärtsregelung unterzogenen Drehmoment-Befehlswert TC(s), der ein Ausgang des Addierers 107 ist, in dem Status s. Wenn die Einheit 201 zur Erfassung von Status-Informationen feststellt, dass der in dem Status s festgestellte Drehmoment-Befehlswert den zulässigen Wert TCmax überschreitet, stellt die Einheit 2021 zum Ausgeben eines Nutzens den Nutzen unabhängig von dem Wert des ersten Nutzens und dem Drehmoment-Befehlswert in dem vorhergehenden Status auf einen negativen Wert ein.
  • Wenn der in dem Status s festgestellte Drehmoment-Befehlswert den zulässigen Wert TCmax nicht überschreitet, kann die Bewertungsfunktion q des Drehmoment-Befehlswertes TC(s) im Voraus so eingestellt werden, dass die Einheit 2021 zum Ausgeben eines Nutzens, ähnlich wie bei dem Differenzialwert des Positions-Fehlers auf Basis des Bewertungs-Wertes q(TC(s)) des Drehmoment-Befehlswertes TC(s) einen fünften Nutzen auf Basis des Bewertungs-Wertes TC(s) berechnet. In diesem Fall kann die Einheit 2021 zum Ausgeben eines Nutzens Gewichtung zwischen dem ersten Nutzen-Wert und dem fünften Nutzen-Wert durchführen und den ersten und den fünften Nutzen nach Gewichtung addieren. Bei der Berechnung des Nutzens kann die Einheit 2021 zum Ausgeben eines Nutzens, wenn der Differenzialwert des Positions-Fehlers, der Differenzialwert des Drehmoment-Befehlswertes, die oben beschriebene Zeit T(s) und der Drehmoment-Befehlswert kombiniert und berücksichtigt werden, entsprechend der Kombination Gewichtung zwischen dem ersten Nutzen-Wert und dem zweiten Nutzen-Wert, dem dritten Nutzen-Wert, dem vierten Nutzen-Wert und dem fünften Nutzen-Wert durchführen und entsprechend der Kombination den ersten Nutzen-Wert sowie den zweiten bis fünften Nutzen-Wert addieren.
  • Abwandlung
  • Die Einheit 2021 zum Ausgeben eines Nutzens kann Gewichtung zwischen der Bewertungsfunktion für den Positions-Fehler und der Bewertungsfunktion q für den Drehmoment-Befehlswert TC(s) durchführen und die gewichteten Bewertungsfunktionen addieren, um, ähnlich wie im Fall des Positions-Fehlers, den Nutzen unter Verwendung der ermittelten gewichteten Bewertungsfunktion zu bestimmen. Wenn der Differenzialwert des Positions-Fehlers, der Differenzialwert des Drehmoment-Befehlswertes und die Zeit T(s) sowie der Drehmoment-Befehlswert TC(s) kombiniert und berücksichtigt werden, kann die Einheit 2021 zum Ausgeben eines Nutzens Gewichtung zwischen der Bewertungsfunktion für den Positions-Fehler, der Bewertungsfunktion für den Differenzialwert des Positions-Fehlers, der Bewertungsfunktion für den Differenzialwert des Drehmoment-Befehlswertes, der Bewertungsfunktion für die Zeit T(s) sowie der Bewertungsfunktion für den Drehmoment-Befehlswert TC(s) durchführen und die gewichteten Bewertungsfunktionen addieren, um den Nutzen unter Verwendung der ermittelten gewichteten Bewertungsfunktion zu bestimmen.
  • Geschwindigkeits-Fehler
  • Als der Fehler ist zusätzlich zu dem Positions-Fehler der Geschwindigkeits-Fehler vorhanden. Selbst wenn der Positions-Fehler gering ist, ist ein großer Geschwindigkeits-Fehler nicht zu bevorzugen. Daher verwendet die Vorrichtung 200 für maschinelles Lernen vorzugsweise zusätzlich zu dem Positions-Fehler den Geschwindigkeits-Fehler und stellt Gewichtung des Nutzen-Wertes des Positions-Fehlers so ein, dass sie groß ist, um einen Geschwindigkeits-Mitkopplungs-Koeffizienten zu ermitteln, durch den der Positions-Fehler und der Geschwindigkeits-Fehler gering werden. In diesem Fall berechnet die Einheit 2021 zum Ausgeben eines Nutzens einen sechsten Nutzen zusätzlich zur Berechnung des Nutzens anhand des Positions-Fehlers anhand des Geschwindigkeits-Fehlers. Ein Satz von Elementen des Geschwindigkeits-Fehlers, die Statusvariablen-Nummern in dem Status s sind (Satz des Geschwindigkeits-Fehlers) wird mit VD(s) bezeichnet. Bei der Berechnung des Nutzens wird, wenn der Geschwindigkeits-Fehler VD(s) in dem Status s berücksichtigt wird, eine Bewertungsfunktion u des Geschwindigkeits-Fehlers VD(s) im Voraus festgelegt und kann die Einheit 2021 zum Ausgeben eines Nutzens), ähnlich wie bei dem Differenzialwert des Positions-Fehlers auf Basis des Bewertungs-Wertes u(VD(s) des Geschwindigkeits-Fehlers VD(s), den sechsten Nutzen auf Basis des Geschwindigkeits-Fehlers VD(s berechnen.
  • Die Einheit 2021 zum Ausgeben eines Nutzens kann Gewichtung zwischen dem ersten Nutzen-Wert und dem sechsten Nutzen-Wert durchführen und die Werte addieren, um den Nutzen unter Berücksichtigung des Geschwindigkeits-Fehlers VD(s) in dem Status s zu bestimmen. Bei der Berechnung des Nutzens kann die Einheit 2021 zum Ausgeben eines Nutzens, wenn der Differenzialwert des Positions-Fehlers, der Differenzialwert des Drehmoment-Befehlswertes, die Zeit T(s), der Drehmoment-Befehlswert und der Geschwindigkeits-Fehler VD(s) kombiniert und berücksichtigt werden, entsprechend der Kombination Gewichtung zwischen dem ersten Nutzen-Wert und dem zweiten Nutzen-Wert, dem dritten Nutzen-Wert, dem vierten Nutzen-Wert, dem fünften Nutzen-Wert und dem sechsten Nutzen-Wert durchführen und die Werte addieren, um den Nutzen-Wert zu bestimmen.
  • Abwandlung
  • Die Einheit 2021 zum Ausgeben eines Nutzens kann Gewichtung zwischen der Bewertungsfunktion für den Positions-Fehler und der Bewertungsfunktion für den Drehmoment-Befehlswert TC(s) durchführen und die gewichteten Bewertungsfunktionen addieren, um, ähnlich wie im Fall des Positions-Fehlers, den Nutzen unter Verwendung der gewichteten Bewertungsfunktion zu bestimmen. Bei der Berechnung des Nutzens kann die Einheit 2021 zum Ausgeben eines Nutzens, wenn der Differenzialwert des Positions-Fehlers, der Differenzialwert des Drehmoment-Befehlswertes, die Zeit T(s) der Drehmoment-Befehlswert TC(s) und der Geschwindigkeits-Fehler kombiniert und berücksichtigt werden, Gewichtung zwischen der Bewertungsfunktion für den Positions-Fehler, der Bewertungsfunktion für den Differenzialwert des Positions-Fehlers, der Bewertungsfunktion für den Differenzialwert des Drehmoment-Befehlswertes, der Bewertungsfunktion für die Zeit T(s), der Bewertungsfunktion des Drehmoment-Befehlswertes TC(s) sowie der Bewertungsfunktion des Geschwindigkeits-Fehlers VD(s) durchführen und die gewichteten Bewertungsfunktionen addieren, um den Nutzen unter Verwendung der ermittelten gewichteten Bewertungsfunktion zu bestimmen.
  • Ähnlich wie bei der Bewertungsfunktion f(PD(s)), den Bewertungsfunktionen g(PD'(s)), h(TC'(s)), p(T(s)), q(TC(s)), und u(VD(s)), wie sie in der zweiten Ausführungsform beschrieben sind, kann beispielsweise eine Funktion zum Berechnen des integrierten Wertes des Absolutwertes, eine Funktion zum Berechnen des integrierten Wertes des Absolutwertes mittels Durchführen von Gewichtung des Absolutwertes nach der Zeit, eine Funktion zum Berechnen des integrierten Wertes der 2n-ten Potenz des Absolutwertes oder eine Funktion zum Berechnen des Maximalwertes des Absolutwertes angewendet werden
  • Die oben beschriebene Servo-Regelungs-Einheit der Servo-Regelungsvorrichtung und jede der in der Vorrichtung für maschinelles Lernen enthaltenen Komponenten können mittels Hardware, Software oder einer Kombination daraus ausgeführt werden. Das im Zusammenwirken jeder der in der oben beschriebenen Servo-Regelungsvorrichtung enthaltenen Komponenten durchgeführte Servo-Regelungsverfahren kann ebenfalls mittels Hardware, Software oder einer Kombination daraus ausgeführt werden. Ausführung mittels Software bedeutet Ausführung durch Lesen und Ausführen eines Programms durch einen Computer.
  • Das Programm kann unter Verwendung verschiedenartiger nichtflüchtiger computerlesbarer Medien gespeichert und einem Computer zugeführt werden. Die nichtflüchtigen computerlesbaren Medien schließen verschiedenartige physische Speichermedien ein. Zu Beispielen für die nichtflüchtigen computerlesbaren Medien gehören magnetische Aufzeichnungsmedien (zum Beispiel eine flexible Platte und ein Festplattenlaufwerk), ein magnetooptisches Aufzeichnungsmedium (zum Beispiel eine magnetooptische Platte), eine CD-ROM (Read Only Memory), eine CD-R, eine CD-R/W, Halbleiterspeicher (z.B. ein Mask ROM, ein PROM (Programmable ROM), ein EPROM (Eraseable PROM), ein Flash-ROM und ein RAM (Random Access Memory).
  • Obwohl die oben beschriebene Ausführungsform eine bevorzugte Ausführungsform der vorliegenden Erfindung ist, ist der Schutzumfang der vorliegenden Erfindung nicht darauf beschränkt. Die vorliegende Erfindung kann in einer Ausführungsform umgesetzt werden, in der verschiedene Abwandlungen vorgenommen werden, ohne vom Schutzumfang der vorliegenden Erfindung abzuweichen.
  • Abwandlung mit Servo-Regelungsvorrichtung, die Vorrichtung für maschinelles Lernen enthält. In der oben beschriebenen Ausführungsform besteht die Vorrichtung 200 für maschinelles Lernen Aus einer anderen Vorrichtung als bei der Servo-Regelungsvorrichtung 100. Jedoch können Funktionen der Vorrichtung 200 für maschinelles Lernen teilweise oder ganz mittels der Servo-Regelungsvorrichtung 100 ausgeführt werden.
  • Freiheit bei Konfiguration des Systems
  • In der oben beschriebenen Ausführungsform sind die Vorrichtung 200 für maschinelles Lernen und die Servo-Regelungsvorrichtung 100 kommunizierend als eine Gruppe in Eins-zu-Eins-Entsprechung verbunden. Jedoch ist beispielsweise eine Vorrichtung 200 für maschinelles Lernen über das Netzwerk 400 kommunizierend mit einer Vielzahl von Servo-Regelungsvorrichtungen 100 verbunden, um maschinelles Lernen für jede der Servo-Regelungsvorrichtungen 100 durchzuführen. Dabei können gegebenenfalls jeweilige Funktionen der Vorrichtung 200 für maschinelles Lernen mittels eines verteilten Verarbeitungssystems ausgeführt werden, in dem die Funktionen auf eine Vielzahl von Servern verteilt sind. Die Funktionen der Vorrichtung 200 für maschinelles Lernen können unter Einsatz einer virtuellen Server-Funktion oder dergleichen in einer Cloud ausgeführt werden. Wenn eine Vielzahl von Vorrichtungen 200-1 bis 200-n für maschinelles Lernen, die jeweils einer Vielzahl von Servo-Regelungsvorrichtungen 100-1 bis 100-n der gleichen Typbezeichnung, der gleichen Spezifikation oder der gleichen Serie entsprechen, können die Vorrichtungen 200-1 bis 200-n für maschinelles Lernen so konfiguriert sein, dass Lernergebnisse zwischen den Vorrichtungen 200-1 bis 200-n für maschinelles Lernen geteilt werden. So kann ein optimaleres Modell konstruiert werden.
  • Bezugszeichenliste
  • 10
    Servo-Regelungssystem
    100
    Servo-Regelungsvorrichtung
    101
    Einheit zur Erzeugung eines Positions-Befehls
    102
    Subtrahierer
    103
    Positionsregelungs-Einheit
    104
    Addierer
    105
    Subtrahierer
    106
    Geschwindigkeitsregelungs-Einheit
    107
    Addierer
    108
    Integrator
    109
    Einheit zur Berechnung von Positions-Mitkopplung
    110
    Einheit zur Berechnung von Geschwindigkeits-Mitkopplung
    200
    Vorrichtung für maschinelles Lernen
    201
    Einheit zur Erfassung von Status-Informationen
    202
    Lern-Einheit
    203
    Einheit zum Ausgeben von Aktions-Informationen
    204
    Einheit zur Speicherung einer Wertfunktion
    205
    Einheit zum Ausgeben von Optimierungsaktions-Informationen
    300
    Regelungs-Objekt
    400
    Netzwerk
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP H0315911 [0003]

Claims (11)

  1. Vorrichtung (200) für maschinelles Lernen zum Durchführen von maschinellem Lernen in Bezug auf eine Servo-Regelungsvorrichtung, die eine Einrichtung (110) zur Berechnung von Geschwindigkeits-Mitkopplung umfasst, mit der ein Geschwindigkeits-Mitkopplungswert auf Basis eines Positions-Befehls erzeugt wird, wobei die Vorrichtung für maschinelles Lernen umfasst: eine Einrichtung (201) zur Erfassung von Status-Informationen, mit der von der Servo-Regelungsvorrichtung Status-Informationen erfasst werden, die einen Servo-Status, der wenigstens einen Positions-Fehler einschließt, sowie eine Kombination von Koeffizienten einer Übertragungsfunktion der Einheit für Geschwindigkeits-Vorwärtsberechnung einschließen, indem die Servo-Regelungsvorrichtung veranlasst wird, ein vorgegebenes Bearbeitungs-Programm auszuführen; eine Einrichtung (203) zum Ausgeben von Aktions-Informationen, mit der Aktions-Informationen, die Anpassungs-Informationen der in den Status-Informationen enthaltenen Kombination von Koeffizienten einschließen, an die Servo-Regelungsvorrichtung ausgegeben werden; eine Einrichtung (2021) zum Ausgeben eines Nutzens, mit der ein Nutzen-Wert für verstärkendes Lernen auf Basis des in den Status-Informationen enthaltenen Positions-Fehlers ausgegeben wird; sowie eine Einrichtung (2022) zum Aktualisieren einer Wertfunktion, mit der eine Aktions-Wertfunktion auf Basis des von der Einrichtung zum Ausgeben eines Nutzens ausgegebenen Nutzen-Wertes, der Status-Informationen und der Aktions-Informationen aktualisiert wird.
  2. Vorrichtung für maschinelles Lernen nach Anspruch 1, wobei die Einrichtung zum Ausgeben eines Nutzens den Nutzen-Wert auf Basis eines Absolutwertes des Positions-Fehlers ausgibt.
  3. Vorrichtung für maschinelles Lernen nach Anspruch 1 oder 2, wobei die Einrichtung zum Ausgeben eines Nutzens den Nutzen-Wert auf Basis eines Wertes berechnet, der wenigstens den Positions-Fehler und einen Differenzialwert des Positions-Fehlers einschließt.
  4. Vorrichtung für maschinelles Lernen nach Anspruch 1 oder 2, wobei die Einrichtung zur Erfassung von Status-Informationen des Weiteren Zeit T von dem Zeitpunkt, zu dem sich ein Geschwindigkeits-Befehlswert ändert, der in dem Servo-Status eingeschlossen ist, bis zu dem Zeitpunkt überwacht, zu dem der Positions-Fehler innerhalb eines vorgegebenen Bereiches liegt, und die Einrichtung zum Ausgeben eines Nutzens den Nutzen-Wert auf Basis eines Wertes berechnet, der wenigstens den Positions-Fehler und eine Länge der Zeit T einschließt.
  5. Vorrichtung für maschinelles Lernen nach Anspruch 1 oder 2, wobei die Einrichtung zur Erfassung von Status-Informationen des Weiteren einen Drehmoment-Befehl von der Servo-Regelungsvorrichtung erfasst, und die Einrichtung zum Ausgeben eines Nutzens den Nutzen-Wert auf Basis eines Wertes berechnet, der wenigstens den Positions-Fehler und einen Differenzialwert des Drehmoment-Befehls einschließt.
  6. Vorrichtung für maschinelles Lernen nach Anspruch 1 oder 2, wobei die Einrichtung zur Erfassung von Status-Informationen des Weiteren einen Drehmoment-Befehl von der Servo-Regelungsvorrichtung erfasst, und die Einrichtung zum Ausgeben eines Nutzens den Nutzen-Wert basierend wenigstens auf dem Positions-Fehler und der Feststellung dahingehend berechnet, ob der Drehmoment-Befehl einen zulässigen Wert des Drehmoment-Befehls erreicht.
  7. Vorrichtung für maschinelles Lernen nach Anspruch 1 oder 2, wobei die Einrichtung zur Erfassung von Status-Informationen des Weiteren einen Geschwindigkeits-Fehler von der Servo-Regelungsvorrichtung erfasst, und die Einrichtung zum Ausgeben eines Nutzens den Nutzen-Wert auf Basis eines Wertes berechnet, der wenigstens den Positions-Fehler und den Geschwindigkeits-Fehler einschließt.
  8. Vorrichtung für maschinelles Lernen nach einem der Ansprüche 1 bis 7, die eine Einrichtung (205) zum Ausgeben von Optimierungsaktions-Informationen umfasst, mit der eine Kombination von Koeffizienten der Übertragungsfunktion der Einrichtung zur Berechnung von Geschwindigkeits-Mitkopplung auf Basis einer durch die Einrichtung zum Aktualisieren der Wertfunktion aktualisierten Wertfunktion erzeugt und ausgegeben wird.
  9. Servo-Regelungssystem, das umfasst: die Vorrichtung für maschinelles Lernen nach einem der Ansprüche 1 bis 8; sowie eine Servo-Regelungsvorrichtung, die eine Einrichtung zur Berechnung von Geschwindigkeits-Mitkopplung aufweist, mit der ein Geschwindigkeits-Mitkopplungswert auf Basis eines Positions-Befehls erzeugt wird.
  10. Servo-Regelungsvorrichtung, die umfasst: die Vorrichtung für maschinelles Lernen nach einem der Ansprüche 1 bis 8; sowie eine Einrichtung zur Berechnung von Geschwindigkeits-Mitkopplung, mit der ein Geschwindigkeits-Mitkopplungswert auf Basis eines Positions-Befehls erzeugt wird.
  11. Verfahren für maschinelles Lernen einer Vorrichtung (200) für maschinelles Lernen zum Durchführen von maschinellem Lernen in Bezug auf eine Servo-Regelungsvorrichtung, die eine Einrichtung (110) zur Berechnung eines Geschwindigkeits-Mitkopplungswertes umfasst, mit der ein Geschwindigkeits-Mitkopplungswert auf Basis eines Positions-Befehls erzeugt wird, wobei das Verfahren für maschinelles Lernen umfasst: Erfassen von Status-Informationen von der Servo-Regelungsvorrichtung, die einen Servo-Status, der wenigstens einen Positions-Fehler einschließt, sowie eine Kombination von Koeffizienten einer Übertragungsfunktion der Einrichtung zur Berechnung von Geschwindigkeits-Mitkopplung einschließen, indem die Servo-Regelungsvorrichtung veranlasst wird, ein vorgegebenes Bearbeitungs-Programm auszuführen; Ausgeben von Aktions-Informationen, die Anpassungs-Informationen der in den Status-Informationen enthaltenen Kombination von Koeffizienten einschließen, an die Servo-Regelungsvorrichtung; und Aktualisieren einer Aktions-Wertfunktion auf Basis eines Nutzen-Wertes für verstärkendes Lernen, auf Basis des in den Status-Informationen enthaltenen Positions-Fehlers, der Status-Informationen sowie der Aktions-Informationen.
DE102018203702.7A 2017-03-15 2018-03-12 Vorrichtung für maschinelles Lernen, Servo-Regelungsvorrichtung, Servo-Regelungssystem und Verfahren für maschinelles Lernen Active DE102018203702B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-049608 2017-03-15
JP2017049608A JP6490127B2 (ja) 2017-03-15 2017-03-15 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法

Publications (2)

Publication Number Publication Date
DE102018203702A1 true DE102018203702A1 (de) 2018-09-20
DE102018203702B4 DE102018203702B4 (de) 2020-12-31

Family

ID=63372509

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018203702.7A Active DE102018203702B4 (de) 2017-03-15 2018-03-12 Vorrichtung für maschinelles Lernen, Servo-Regelungsvorrichtung, Servo-Regelungssystem und Verfahren für maschinelles Lernen

Country Status (4)

Country Link
US (1) US10564619B2 (de)
JP (1) JP6490127B2 (de)
CN (1) CN108628355B (de)
DE (1) DE102018203702B4 (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6474449B2 (ja) 2017-04-07 2019-02-27 ファナック株式会社 調整装置及び調整方法
JP6646025B2 (ja) * 2017-09-15 2020-02-14 ファナック株式会社 制御装置及び機械学習装置
JP6748135B2 (ja) * 2018-03-19 2020-08-26 ファナック株式会社 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法
JP6740279B2 (ja) * 2018-04-13 2020-08-12 ファナック株式会社 調整装置及び調整方法
JP6860540B2 (ja) * 2018-10-25 2021-04-14 ファナック株式会社 出力装置、制御装置、及び学習パラメータの出力方法
JP6860541B2 (ja) 2018-10-29 2021-04-14 ファナック株式会社 出力装置、制御装置、及び評価関数値の出力方法
JP6849643B2 (ja) 2018-11-09 2021-03-24 ファナック株式会社 出力装置、制御装置、及び評価関数と機械学習結果の出力方法
EP3671372A1 (de) * 2018-12-18 2020-06-24 Siemens Aktiengesellschaft Lagegeregelte steuerung mit kompensation von elastizitätsbedingten lagefehlern
JP6545428B1 (ja) * 2019-01-15 2019-07-17 三菱電機株式会社 電力変換器の制御装置
JP6978452B2 (ja) * 2019-02-12 2021-12-08 ファナック株式会社 機械学習装置、制御装置、及び機械学習の探索範囲の設定方法
JP7000371B2 (ja) * 2019-03-22 2022-01-19 ファナック株式会社 機械学習装置、制御システム及び機械学習方法
EP3715608B1 (de) * 2019-03-27 2023-07-12 Siemens Aktiengesellschaft Maschinensteuerung auf basis des automatisierten lernens von untergeordneten steuerungsfähigkeiten
JP7010877B2 (ja) * 2019-04-25 2022-01-26 ファナック株式会社 機械学習装置、数値制御システム及び機械学習方法
JP2021002194A (ja) * 2019-06-21 2021-01-07 ファナック株式会社 数値制御装置、cnc工作機械、数値制御方法及び数値制御用プログラム
JP7256703B2 (ja) * 2019-06-21 2023-04-12 ファナック株式会社 制御装置、制御システム、及び機械学習装置
JP6932160B2 (ja) * 2019-07-22 2021-09-08 株式会社安川電機 機械学習方法及び産業用機器のパラメータ又は産業用機器により制御される機器の内部状態の推定方法
JP2021040239A (ja) 2019-09-03 2021-03-11 ファナック株式会社 機械学習装置、受信装置及び機械学習方法
JP7357537B2 (ja) * 2019-12-24 2023-10-06 本田技研工業株式会社 制御装置、制御装置の制御方法、プログラム、情報処理サーバ、情報処理方法、並びに制御システム
WO2021176619A1 (ja) * 2020-03-04 2021-09-10 三菱電機株式会社 位置決め制御装置および位置決め方法
KR20210121844A (ko) * 2020-03-31 2021-10-08 현대자동차주식회사 차량 및 그 제어 방법
US11348036B1 (en) 2020-12-01 2022-05-31 OctoML, Inc. Optimizing machine learning models with a device farm
US20240058950A1 (en) 2021-03-02 2024-02-22 Fanuc Corporation Adjustment assistance device, control system, and adjustment assistance method
CN113791538B (zh) * 2021-08-06 2023-09-26 深圳清华大学研究院 一种机房设备的控制方法、控制设备及控制系统
US20230070826A1 (en) * 2021-09-08 2023-03-09 Honeywell International Inc. Autonomous instrument management
TWI805353B (zh) * 2022-01-25 2023-06-11 台達電子工業股份有限公司 伺服驅動器及其增益快速自調整方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0315911A (ja) 1989-03-20 1991-01-24 Fanuc Ltd サーボモータのフィードフォワード制御方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4947336A (en) * 1988-04-15 1990-08-07 Froyd Stanley G Multiple axis motion control system
US5751585A (en) * 1995-03-20 1998-05-12 Electro Scientific Industries, Inc. High speed, high accuracy multi-stage tool positioning system
JPH11102211A (ja) * 1997-09-25 1999-04-13 Toshiba Mach Co Ltd サーボ調整方法およびその装置
US6060854A (en) * 1998-11-12 2000-05-09 Vickers, Inc. Method and apparatus for compensating for windup in a machine
US6677722B2 (en) * 2001-04-19 2004-01-13 Toshiba Kikai Kabushiki Kaisha Servo control method
JP2003061377A (ja) * 2001-08-17 2003-02-28 Yaskawa Electric Corp オートチューニング機能を備えたモータ制御装置
WO2004092859A1 (ja) * 2003-04-11 2004-10-28 Mitsubishi Denki Kabushiki Kaisha サーボ制御器
JP2006018431A (ja) * 2004-06-30 2006-01-19 Yaskawa Electric Corp サーボ制御装置
JP4283214B2 (ja) * 2004-12-16 2009-06-24 ファナック株式会社 機械先端点の制御装置
JP4575508B1 (ja) * 2009-05-20 2010-11-04 ファナック株式会社 デュアル位置フィードバック制御を行うサーボ制御装置
US9360849B2 (en) * 2010-10-27 2016-06-07 Makino Milling Machine Co., Ltd. Numerical control method
CN102374038B (zh) * 2011-09-06 2013-09-11 天津大学 自学习的前馈和主动抗扰反馈结合的vvt控制方法
JP5897645B2 (ja) * 2014-06-05 2016-03-30 ファナック株式会社 機械先端点のたわみを低減するサーボ制御装置
CN104486248B (zh) * 2014-12-04 2017-11-14 南京邮电大学 基于广义pid的随机早期检测算法的aqm系统和方法
CN106338970B (zh) * 2016-11-17 2018-09-07 沈阳工业大学 一种五轴联动数控机床伺服系统控制方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0315911A (ja) 1989-03-20 1991-01-24 Fanuc Ltd サーボモータのフィードフォワード制御方法

Also Published As

Publication number Publication date
DE102018203702B4 (de) 2020-12-31
JP6490127B2 (ja) 2019-03-27
US20180267499A1 (en) 2018-09-20
CN108628355B (zh) 2020-02-21
US10564619B2 (en) 2020-02-18
JP2018152012A (ja) 2018-09-27
CN108628355A (zh) 2018-10-09

Similar Documents

Publication Publication Date Title
DE102018203702B4 (de) Vorrichtung für maschinelles Lernen, Servo-Regelungsvorrichtung, Servo-Regelungssystem und Verfahren für maschinelles Lernen
DE102018211148A1 (de) Maschinenlernvorrichtung, servomotor- regeleinrichtung, servomotor-regelsystem und maschinenlernverfahren
DE102018204740B4 (de) Aktionsinformationslernvorrichtung, Robotersteuersystem und Aktionsinformationslernverfahren
DE102019204861B4 (de) Maschinenlernvorrichtung; steuervorrichtung und maschinelles lernverfahren
DE102018209951A1 (de) Maschinenlerngerät, servosteuergerät, servosteuersystem und maschinenlernverfahren
DE102018203956B4 (de) Maschinelle Lernvorrichtung, Servosteuerungsvorrichtung, Servosteuerungssystem und maschinelles Lernverfahren
DE102018205015B4 (de) Einstellvorrichtung und Einstellverfahren
DE102018200794A1 (de) Aktionsinformationslernvorrichtung, aktionsinformationsoptimierungssystem und aktionsinformationslernprogramm
DE102019200080A1 (de) Vorrichtung für maschinelles Lernen, Servomotor-Steuereinrichtung, Servomotor-Steuersystem und Verfahren für maschinelles Lernen
DE112016004725T5 (de) Verfahren zum Teach-ln eines Roboters und Roboterarmsteuervorrichtung
DE102019204949A1 (de) Maschinelle lernvorrichtung, steuervorrichtung und maschinelles lernverfahren
DE102018003769B4 (de) Vorrichtung für maschinelles Lernen, Servosteuersystem und Verfahren zum maschinellen Lernen
DE112018000122T5 (de) Maschinelles-Lernen-Vorrichtung, Korrekturparameter-Anpassungssystem und Maschinelles-Lernen-Verfahren
DE102019201758A1 (de) Vorrichtung für maschinelles lernen; vorrichtung zurservosteuerung; system zur servosteuerung; undverfahren für maschinelles lernen
DE102020204854A1 (de) Vorrichtung für maschinelles Lernen, numerisches Steuersystem undVerfahren für maschinelles Lernen
DE102019216081A1 (de) Ausgabevorrichtung, Steuervorrichtung und Verfahren zum Ausgeben eines Lernparameters
DE102018214276A1 (de) Vorrichtung für maschinelles Lernen, Steuersystem, Steuervorrichtung und Verfahren für maschinelles Lernen
DE112017003961B4 (de) Steuerung für Parallelverbindungsmechanismus
DE102019214994A1 (de) Vorrichtung für maschinelles lernen; steuerungsvorrichtung; und verfahren für maschinelles lernen
DE102020122373A1 (de) Vorrichtung für maschinelles Lernen, Servosteuervorrichtung, Servosteuersystem und Verfahren für maschinelles Lernen
DE102018004048A1 (de) Steuerung und Maschinenlernvorrichtung
DE102019209104A1 (de) Ausgabevorrichtung, Steuervorrichtung und Ausgabeverfahren für einen Bewertungsfunktionswert
DE102019202701A1 (de) Einstelleinrichtung und Einstellverfahren
DE102020203758A1 (de) Maschinenlernvorrichtung, steuervorrichtung und verfahren zummaschinenlernen
DE102019213924B4 (de) Motorsteuervorrichtung

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