DE102019210397A1 - Maschinenlernvorrichtung, Steuervorrichtung und Maschinenlernverfahren - Google Patents

Maschinenlernvorrichtung, Steuervorrichtung und Maschinenlernverfahren Download PDF

Info

Publication number
DE102019210397A1
DE102019210397A1 DE102019210397.9A DE102019210397A DE102019210397A1 DE 102019210397 A1 DE102019210397 A1 DE 102019210397A1 DE 102019210397 A DE102019210397 A DE 102019210397A DE 102019210397 A1 DE102019210397 A1 DE 102019210397A1
Authority
DE
Germany
Prior art keywords
machine learning
transfer function
value
iir filter
calculation unit
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.)
Pending
Application number
DE102019210397.9A
Other languages
English (en)
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 DE102019210397A1 publication Critical patent/DE102019210397A1/de
Pending legal-status Critical Current

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
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • 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/404Numerical 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 control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • 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/33Director till display
    • G05B2219/33032Learn by changing input weights as function of position error

Landscapes

  • Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Manufacturing & Machinery (AREA)
  • Human Computer Interaction (AREA)
  • Feedback Control In General (AREA)
  • Numerical Control (AREA)

Abstract

Die Einschwingzeit des Maschinenlernens wird verkürzt. Eine Maschinenlernvorrichtung (200) ist konfiguriert, um Maschinenlernen im Zusammenhang mit der Optimierung der Koeffizienten einer Übertragungsfunktion eines IIR-Filters (1092, 1102) einer Vorschub-Berechnungseinheit (109, 110) in Bezug auf eine Servosteuervorrichtung (100) durchzuführen, die konfiguriert ist, um einen Servomotor (300) zu steuern, der konfiguriert ist, um eine Achse einer Werkzeugmaschine, eines Roboters oder einer Industriemaschine unter Verwendung einer Vorschub-Steuerung durch eine Vorschub-Berechnungseinheit mit dem IIR-Filter anzutreiben. Die Maschinenlernvorrichtung stellt einen Nullpunkt dar, an dem die Übertragungsfunktion des IIR-Filters Null ist, und einen Pol, an dem die Übertragungsfunktion in Polarkoordinaten unter Verwendung eines Radius r und eines Winkels θ stufenlos divergiert und innerhalb eines vorgegebenen Suchbereichs den Radius r und den Winkel θ sucht und lernt, um dadurch die Optimierung der Koeffizienten der Übertragungsfunktion des IIR-Filters durchzuführen.

Description

  • HINTERGRUND DER ERFINDUNG
  • Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich auf eine Maschinenlernvorrichtung, die Maschinenlernen im Zusammenhang mit der Optimierung eines Koeffizienten eines Filters mit unendlicher Impulsantwort („infinite impulse response“, IIR) in Bezug auf eine Servosteuervorrichtung durchführt, die einen Servomotor steuert, der eine Achse einer Werkzeugmaschine, eines Roboters oder einer Industriemaschine antreibt, wobei die Vorschub-Steuerung einer Vorwärts-Vorschub-Berechnungseinheit verwendet wird, die den IIR-Filter aufweist und sich auf eine Steuervorrichtung bezieht, die die Maschinenlernvorrichtung und ein Maschinenlernverfahren umfasst.
  • Verwandte Technik
  • Eine Servosteuervorrichtung, die eine Vorschub-Steuerung einer Vorschub-Berechnungseinheit mit einem IIR-Filter verwendet, ist beispielsweise im Patentdokument 1 offenbart. Das Patentdokument 1 offenbart eine Erfindung in Bezug auf eine Steuervorrichtung eines Servomotors und offenbart, dass eine Geschwindigkeits-Vorschubeinheit (entsprechend einer Positions-Vorschubeinheit der vorliegenden Ausführungsform, die später beschrieben werden soll) einen Geschwindigkeits-Vorschubrechner (entsprechend einem Differenzierer der vorliegenden Ausführungsform, der später beschrieben werden soll) und einen Geschwindigkeits-Vorschubfilter umfasst, und ein IIR-Filter kann als Geschwindigkeits-Vorschubfilter verwendet werden (siehe Absatz [0080] und dergleichen).
  • Patentdokument 1: Japanische ungeprüfte Patentanmeldung, Veröffentlichung Nr. 2003-23785
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Das Patentdokument 1 offenbart eine Vorschub-Steuerung, die einen IIR-Filter verwendet, aber kein Maschinenlernen zur Optimierung eines Koeffizienten einer Übertragungsfunktion eines IIR-Filters offenbart.
  • Ein Ziel der vorliegenden Erfindung ist es, eine Maschineniernvorrichtung bereitzustellen, die in der Lage ist, die Einschwingzeit des Maschinenlernens zu verkürzen, um einen Koeffizienten einer Übertragungsfunktion eines IIR-Filters in Bezug auf eine Servosteuervorrichtung zu optimieren, die einen Servomotor unter Verwendung der Vorschub-Steuerung einer Vorwärts-Vorschub-Berechnungseinheit mit dem IIR-Filter steuert, und eine Steuervorrichtung bereitzustellen, die die Maschinenlernvorrichtung und ein Maschinenlernverfahren umfasst.
    • (1) Eine Maschinenlernvorrichtung gemäß der vorliegenden Erfindung ist eine Maschinenlernvorrichtung (beispielsweise eine später zu beschreibende Maschinenlernvorrichtung 200), die konfiguriert ist, um Maschinenlernen im Zusammenhang mit der Optimierung der Koeffizienten einer Übertragungsfunktion eines IIR-Filters in Bezug auf eine Servosteuervorrichtung (beispielsweise eine später zu beschreibende Servosteuervorrichtung 100) durchzuführen, die konfiguriert ist, um einen Servomotor zu steuern (beispielsweise einen Servomotor 300, der konfiguriert ist, um eine Achse einer Werkzeugmaschine, eines Roboters oder einer Industriemaschine unter Verwendung einer Vorschub-Steuerung durch eine Vorschub-Berechnungseinheit (beispielsweise eine Geschwindigkeits-Vorschub-Berechnungseinheit 109 oder eine später zu beschreibende Positions-Vorschub-Berechnungseinheit 110) mit dem IIR-Filter (beispielsweise ein IIR-Filter 1092 oder 1102, der später zu beschreiben ist) anzutreiben, wobei die Maschinenlernvorrichtung einen Nullpunkt darstellt, an dem die Übertragungsfunktion des IIR-Filters Null ist, und einen Pol, an dem die Übertragungsfunktion in Polarkoordinaten unter Verwendung eines Radius r und eines Winkels θ stufenlos divergiert und innerhalb eines vorbestimmten Suchbereichs den Radius r und den Winkel θ sucht und lernt, um dadurch die Optimierung der Koeffizienten der Übertragungsfunktion des IIR-Filters durchzuführen.
    • (2) In der Maschinenlernvorrichtung nach (1) kann der Suchbereich des Radius r auf der Grundlage eines Dämpfungsfaktors und der Suchbereich des Winkels θ auf der Grundlage einer Schwingungsunterdrückungsfrequenz definiert werden.
    • (3) In der Maschinenlernvorrichtung nach (1) oder (2) kann die Suche nach dem Nullpunkt vor der Suche nach dem Pol durchgeführt werden.
    • (4) In der Maschinenlernvorrichtung gemäß einer der Absätze (1) bis (3) kann der Pol bei der Suche nach dem Nullpunkt festgelegt werden.
    • (5) In der Maschinenlernvorrichtung nach einem der (1) bis (4) kann die Suche nach dem Winkel θ vor der Suche nach dem Radius r durchgeführt werden.
    • (6) In der Maschinenlernvorrichtung nach einem der (1) bis (5) kann der Radius r bei der Suche nach dem Winkel θ auf einen festen Wert festgelegt werden.
    • (7) In der Maschinenlernvorrichtung gemäß einem der (1) bis (6) kann der Nullpunkt durch eine komplexe Zahl und eine konjugierte komplexe Zahl davon dargestellt werden.
    • (8) In der Maschinenlernvorrichtung gemäß einem der (1) bis (7) kann die Vorschub-Berechnungseinheit eine Geschwindigkeits-Vorschub-Berechnungseinheit oder eine Positions-Vorschub-Berechnungseinheit sein.
    • (9) In der Maschinenlernvorrichtung gemäß einer der Absätze (1) bis (8) kann die Vorschub-Berechnungseinheit eine Geschwindigkeitsvorwärtsberechnungseinheit sein, die Maschinenlernvorrichtung kann des Weiteren eine Positions-Vorschub-Berechnungseinheit mit einem IIR-Filter umfassen, und die Optimierung der Übertragungsfunktion des IIR-Filters der Geschwindigkeits-Vorschub-Berechnungseinheit kann vor der Optimierung der Übertragungsfunktion des IIR-Filters der Positions-Vorschub-Berechnungseinheit durchgeführt werden.
    • (10) Die Maschinenlernvorrichtung gemäß einem der (1) bis (9) kann des Weiteren umfassen: eine Zustandsinformationserfassungseinheit (zum Beispiel eine später zu beschreibende Zustandsinformationserfassungseinheit 201), die konfiguriert ist, um von der Servosteuervorrichtung Zustandsinformationen zu erfassen, die einen Servozustand mit wenigstens einem Positionsfehler und einer Übertragungsfunktion der Vorschub-Berechnungseinheit umfassen, indem sie bewirkt, dass die Servosteuervorrichtung ein vorgegebenes Bearbeitungsprogramm ausführt; eine Aktionsinformationsausgabeeinheit (beispielsweise eine später zu beschreibende Aktionsinformationsausgabeeinheit 203), die konfiguriert ist, um Aktionsinformationen einschließlich Einstellinformationen der Koeffizienten der Übertragungsfunktion auszugeben, die in den Zustandsinformationen an die Servosteuervorrichtung enthalten sind; eine Belohnungsausgabeeinheit (zum Beispiel eine Belohnungsausgabeeinheit 2021, die später beschrieben werden soll), die konfiguriert ist, um einen Wert einer Belohnung für das Verstärkungslernen basierend auf dem in den Zustandsinformationen enthaltenen Positionsfehler auszugeben; und eine Wertfunktions-Aktualisierungseinheit (beispielsweise eine Wertfunktions-Aktualisierungseinheit 2022, die später beschrieben werden soll), die konfiguriert ist, um eine Aktionswertfunktion auf der Grundlage des Wertes der von der Belohnungsausgabeeinheit ausgegebenen Belohnung, der Zustandsinformationen und der Aktionsinformationen zu aktualisieren.
    • (11) In der Maschinenlernvorrichtung gemäß (10) kann die Belohnungsausgabeeinheit den Wert der Belohnung auf der Grundlage eines Absolutwertes des Positionsfehlers ausgeben.
    • (12) Die Maschinenlernvorrichtung gemäß (10) oder (11) kann des Weiteren umfassen: eine Optimierungsaktions-Informationsausgabeeinheit (beispielsweise eine später zu beschreibende Optimierungsaktions-Informationsausgabeeinheit 205), die konfiguriert ist, um Korrekturinformationen der Koeffizienten der Übertragungsfunktion der Vorschub-Berechnungseinheit auf der Grundlage der von der Wertfunktionsaktualisierungseinheit aktualisierten Wertfunktion zu erzeugen und auszugeben.
    • (13) Eine Steuervorrichtung gemäß der vorliegenden Erfindung ist eine Steuervorrichtung, die Folgendes umfasst: die Maschinenlernvorrichtung gemäß einem der Elemente (1) bis (12); und eine Servosteuervorrichtung, die konfiguriert ist, um einen Servomotor zu steuern, der konfiguriert ist, um eine Achse einer Werkzeugmaschine, eines Roboters oder einer Industriemaschine anzutreiben, die eine Vorschub-Steuerung durch eine Vorwärts-Vorschub-Berechnungseinheit mit einem IIR-Filter verwendet.
    • (14) In der Steuervorrichtung gemäß (13) kann die Maschinenlernvorrichtung in die Servosteuervorrichtung aufgenommen werden.
    • (15) Ein Maschinenlernverfahren gemäß der vorliegenden Erfindung ist ein Maschinenlernverfahren einer Maschinenlernvorrichtung (beispielsweise eine später zu beschreibende Maschinenlernvorrichtung 200), das konfiguriert ist, um Maschinenlernen im Zusammenhang mit der Optimierung der Koeffizienten einer Übertragungsfunktion eines IIR-Filters in Bezug auf eine Servosteuervorrichtung (beispielsweise eine später zu beschreibende Servosteuervorrichtung 100) durchzuführen, die konfiguriert ist, um einen Servomotor (beispielsweise) zu steuern, einen Servomotor 300, der konfiguriert ist, um eine Achse einer Werkzeugmaschine, eines Roboters oder einer Industriemaschine unter Verwendung einer Vorschub-Steuerung durch eine Vorschub-Berechnungseinheit (beispielsweise eine Geschwindigkeits-Vorschub-Berechnungseinheit 109 oder eine später zu beschreibende Positions-Vorschub-Berechnungseinheit 110) mit dem IIR-Filter (beispielsweise ein IIR-Filter 1092 oder 1102, der später zu beschreiben ist) anzutreiben, wobei das Maschinenlernverfahren das Darstellen eines Nullpunktes, an dem die Übertragungsfunktion des IIR-Filters Null ist, und eines Pols, an dem die Übertragungsfunktion in Polarkoordinaten unter Verwendung eines Radius r und eines Winkels θ unendlich divergiert, und das Suchen und Lernen des Radius r und des Winkels θ innerhalb eines vorbestimmten Suchbereichs, um dadurch die Optimierung der Koeffizienten der Übertragungsfunktion des IIR-Filters durchzuführen.
  • Nach der vorliegenden Erfindung ist es möglich, die Einschwingzeit des Maschinenlernens zur Optimierung eines Koeffizienten einer Übertragungsfunktion eines IIR-Filters zu verkürzen.
  • Figurenliste
    • 1 ist ein Blockdiagramm, das ein Konfigurationsbeispiel einer Steuervorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung darstellt.
    • 2 ist ein Blockdiagramm, das einen Abschnitt einer Werkzeugmaschine mit einem Servomotor veranschaulicht, der als Beispiel für ein Steuerziel einer Servosteuervorrichtung dient.
    • 3 ist ein Diagramm zur Beschreibung des Betriebs eines Servomotors, wenn eine Bearbeitungsform ein Achteck ist.
    • 4 ist ein Diagramm zur Beschreibung des Betriebs eines Motors, wenn eine Bearbeitungsform eine Form ist, in der die Ecken eines Achtecks abwechselnd durch Bögen ersetzt werden.
    • 5 ist ein erklärendes Diagramm einer komplexen Ebene, das einen Suchbereich von einem Pol und einem Nullpunkt veranschaulicht.
    • 6 ist ein Blockdiagramm, das eine Maschinenlernvorrichtung gemäß der vorliegenden Ausführungsform darstellt.
    • 7 ist ein Flussdiagramm, das einen Betrieb der Maschinenlernvorrichtung gemäß der vorliegenden Ausführungsform veranschaulicht.
    • 8 ist ein Flussdiagramm, das den Betrieb einer Optimierungsaktions-Informationsausgabeeinheit der Maschinenlernvorrichtung gemäß der vorliegenden Ausführungsform veranschaulicht.
    • 9 ist ein Blockdiagramm, das eine Steuervorrichtung gemäß einer anderen Ausführungsform darstellt.
  • AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
  • Im Folgenden wird eine Ausführungsform der vorliegenden Erfindung mit Bezug auf die Zeichnungen beschrieben. 1 ist ein Blockdiagramm, das ein Konfigurationsbeispiel einer Steuervorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung darstellt. Eine in 1 dargestellte Steuervorrichtung 10 umfasst eine Servosteuervorrichtung 100 und eine Maschinenlernvorrichtung 200.
  • Ein Servomotor 300 ist ein Steuerziel der Servosteuervorrichtung 100 und wird beispielsweise in einer Werkzeugmaschine, einem Roboter oder einer Industriemaschine eingesetzt. Die Servosteuervorrichtung 100 kann als Teil einer Werkzeugmaschine, eines Roboters oder einer Industriemaschine zusammen mit dem Servomotor 300 vorgesehen werden.
  • Zunächst wird die Servosteuervorrichtung 100 beschrieben. Die Servosteuervorrichtung 100 umfasst eine Positionsbefehlserstellungseinheit 101, einen Subtrahierer 102, eine Positionssteuereinheit 103, einen Addierer 104, einen Subtrahierer 105, eine Geschwindigkeitssteuereinheit 106, einen Addierer 107, einen Integrator 108, eine Geschwindigkeits-Vorschub-Berechnungseinheit 109 und eine Positions-Vorschub-Berechnungseinheit 110. Die Geschwindigkeits-Vorschub-Berechnungseinheit 109 umfasst einen Doppeldifferenzierer 1091 und einen IIR-Filter 1092. Darüber hinaus umfasst die Positions-Vorschub-Berechnungseinheit 110 ein Differenzierglied 1101 und einen IIR-Filter 1102.
  • Die Positionsbefehlserstellungseinheit 101 erzeugt einen Positionsbefehlswert und gibt den erzeugten Positionsbefehlswert an den Subtrahierer 102, die Geschwindigkeits-Vorschub-Berechnungseinheit 109, die Positions-Vorschub-Berechnungseinheit 110 und die Maschinenlernvorrichtung 200 aus. Der Subtrahierer 102 berechnet eine Differenz zwischen dem Positionsbefehlswert und einer Rückmeldeposition und gibt die Differenz als Positionsfehler an die Positionssteuereinheit 103 und die Maschinenlernvorrichtung 200 aus.
  • Die Positionsbefehlserstellungseinheit 101 erzeugt auf der Grundlage eines Programms zum Betreiben des Servomotors 300 einen Positionsbefehlswert. Der Servomotor 300 ist beispielsweise in einer Werkzeugmaschine integriert. Wenn sich in einer Werkzeugmaschine ein Tisch mit einem Werkstück (einem Werkstück), das darauf montiert ist, in einer X-Achsenrichtung und einer Y-Achsenrichtung bewegt, sind die Servosteuervorrichtung 100 und der in 1 dargestellte Servomotor 300 in der X-Achsenrichtung bzw. der Y-Achsenrichtung vorgesehen. Wenn der Tisch in Richtungen von drei oder mehr Achsen bewegt wird, sind die Servosteuervorrichtung 100 und der Servomotor 300 in den jeweiligen Achsrichtungen vorgesehen. Die Positionsbefehlserstellungseinheit 101 setzt einen Vorschub und erzeugt einen Positionsbefehlswert, so dass eine durch das Bearbeitungsprogramm bestimmte Bearbeitungsform erhalten wird.
  • Die Positionssteuereinheit 103 gibt einen Wert aus, der durch Multiplikation einer Positionsverstärkung Kp mit dem Positionsfehler an den Addierer 104 als Geschwindigkeitssollwert erhalten wird.
  • Der Addierer 104 addiert den Geschwindigkeits-Sollwert und den Ausgabewert (den Positions-Vorschubterm) der Positions-Vorschub-Berechnungseinheit 110 und gibt ein Additionsergebnis an den Subtrahierer 105 als vorwärtsgeregelten Geschwindigkeitssollwert aus. Der Subtrahierer 105 berechnet eine Differenz zwischen dem Ausgang des Addierers 104 und einem Rückführgeschwindigkeitserfassungswert und gibt die Differenz an die Geschwindigkeitssteuereinheit 106 als Geschwindigkeitsfehler aus.
  • Die Geschwindigkeitssteuereinheit 106 addiert einen Wert, der durch Multiplikation und Integration einer integralen Verstärkung K1v mit dem Geschwindigkeitsfehler erhalten wird, und einen Wert, der durch Multiplikation einer proportionalen Verstärkung K2v mit dem Geschwindigkeitsfehler erhalten wird, und gibt ein Additionsergebnis an den Addierer 107 als Drehmoment-Sollwert aus.
  • Der Addierer 107 addiert den Drehmoment-Sollwert und einen Ausgabewert (den Geschwindigkeits-Vorschubterm) der Geschwindigkeits-Vorschub-Berechnungseinheit 109 und gibt das Additionsergebnis an den Servomotor 300 als vorschubgeregelten Drehmoment-Sollwert zum Antreiben des Servomotors 300 aus.
  • Eine Drehwinkelposition des Servomotors 300 wird von einem Drehgeber erfasst, der als Positionserfassungseinheit dient, die dem Servomotor 300 zugeordnet ist, und ein Geschwindigkeitserfassungswert wird als Geschwindigkeitsrückführung in den Subtraktor 105 eingegeben. Der Geschwindigkeitserfassungswert wird vom Integrator 108 als Positionserfassungswert integriert, und der Positionserfassungswert wird als Positionsrückmeldung in den Subtraktor 102 eingegeben.
  • Der Doppeldifferenzierer 1091 der Geschwindigkeits-Vorschub-Berechnungseinheit 109 differenziert den Positionsbefehlswert zweimal und multipliziert ein Differenzierungsergebnis mit einer Konstanten α, und der IIR-Filter 1092 führt am Ausgang des Doppeldifferenziers 1091 einen IIR-Filterprozess durch, der durch eine Übertragungsfunktion VFF(z) in Ausdruck 1 (siehe Formel 1 unten) repräsentiert wird, und gibt das Verarbeitungsergebnis als Geschwindigkeitsvorwärtsterm an den Addierer 107 aus. Die Koeffizienten a1 , a2 , b0 bis b2 in Ausdruck 1 sind Koeffizienten der Übertragungsfunktion des IIR-Filters 1092. Obwohl der Nenner und der Zähler der Übertragungsfunktion VFF(z) in diesem Beispiel quadratische Funktionen sind, sind der Nenner und der Zähler nicht besonders auf eine quadratische Funktion beschränkt, sondern können eine kubische Funktion oder eine Funktion höherer Ordnung sein. V F F ( z ) = b 0 + b 1 z 1 + b 2 z 2 1 + a 1 z 1 + a 2 z 2
    Figure DE102019210397A1_0001
  • Das Differenzierglied 1101 der Positions-Vorschub-Berechnungseinheit 110 differenziert den Positionsbefehlswert und multipliziert ein Differenzierungsergebnis mit einer Konstanten β, und der IIR-Filter 1102 führt einen IIR-Filterprozess durch, der durch eine Übertragungsfunktion PFF(z) in Ausdruck 2 (siehe Formel 2 unten) repräsentiert wird, am Ausgang des Differenzierglieds 1101 und gibt das Verarbeitungsergebnis an den Addierer 104 als Positions-Vorschubterm aus. Die Koeffizienten c1 , c2 und d0 bis d2 in Ausdruck 2 sind die Koeffizienten der Übertragungsfunktion des IIR-Filters 1102. Obwohl der Nenner und der Zähler der Übertragungsfunktion PFF(z) in diesem Beispiel quadratische Funktionen sind, sind der Nenner und der Zähler nicht besonders auf eine quadratische Funktion beschränkt, sondern können eine kubische Funktion oder eine Funktion höherer Ordnung sein. P F F ( z ) = d 0 + d 1 z 1 + d 2 z 2 1 + c 1 z 1 + c 2 z 2
    Figure DE102019210397A1_0002
    Die Servosteuervorrichtung 100 ist auf diese Weise konfiguriert.
  • Als nächstes wird ein Steuerziel 400 einschließlich des Servomotors 300 beschrieben, der von der Servosteuervorrichtung 100 gesteuert wird. 2 ist ein Blockdiagramm, das einen Abschnitt einer Werkzeugmaschine mit dem Servomotor 300 darstellt, der ein Beispiel für das Steuerziel 400 der Servosteuervorrichtung 100 ist. Die Servosteuervorrichtung 100 bewirkt, dass der Servomotor 300 den Tisch 303 mit Hilfe eines Kupplungsmechanismus 302 bewegt, um dadurch ein auf dem Tisch 303 montiertes Werkstück (ein Werkstück) zu bearbeiten. Der Kupplungsmechanismus 302 umfasst eine mit dem Servomotor 300 gekoppelte Kupplung 3021 und eine an der Kupplung 3021 befestigte Kugelrollspindel 3023, und eine Mutter 3022 wird in die Kugelrollspindel 3023 eingeschraubt. Bei Drehung des Servomotors 300 bewegt sich die in den Kugelgewindetrieb 3023 eingeschraubte Mutter 3022 in axialer Richtung des Kugelgewindetriebs 3023. Mit der Bewegung der Mutter 3022 bewegt sich der Tisch 303.
  • Eine Drehwinkelposition des Servomotors 300 wird von dem Drehgeber 301 erfasst, der als Positionserfassungseinheit dient und dem Servomotor 300 zugeordnet ist. Wie vorstehend beschrieben, wird das erfasste Signal als Geschwindigkeitsrückführung verwendet. Das erkannte Signal wird vom Integrator 108 integriert und dient als Positionsrückmeldung. Ein Ausgang einer Linearskala 304, der an einem Ende der Kugelgewindespindel 3023 befestigt ist, um einen Bewegungsabstand der Kugelgewindespindel 3023 zu erfassen, kann als Positionsrückmeldung verwendet werden. Darüber hinaus kann mit einem Beschleunigungssensor eine Positionsrückmeldung erzeugt werden.
  • <Maschinenlernvorrichtung 200>
  • Die Maschinenlernvorrichtung 200 lernt die Koeffizienten der Übertragungsfunktion des IIR-Filters 1092 der Geschwindigkeits-Vorschub-Berechnungseinheit 109 und die Koeffizienten der Übertragungsfunktion des IIR-Filters 1102 der Positions-Vorschub-Berechnungseinheit 110 durch Ausführen eines vorgegebenen Bearbeitungsprogramms (im Folgenden auch als „lernendes Bearbeitungsprogramm“ bezeichnet). Eine Bearbeitungsform, die vom lernenden Bearbeitungsprogramm bezeichnet wird, ist hier ein Achteck oder eine Form, bei der die Ecken eines Achtecks abwechselnd durch Bögen ersetzt werden. Hier ist die durch das lernende Bearbeitungsprogramm festgelegte Bearbeitungsform nicht auf diese Bearbeitungsformen beschränkt, sondern kann andere Bearbeitungsformen sein.
  • 3 ist ein Diagramm zur Beschreibung des Betriebs eines Motors, wenn eine Bearbeitungsform ein Achteck ist. 4 ist ein Diagramm zur Beschreibung des Betriebs eines Motors, wenn eine Bearbeitungsform eine Form ist, in der die Ecken eines Achtecks abwechselnd durch Bögen ersetzt werden. In 3 und 4 wird davon ausgegangen, dass ein Tisch in X- und Y-Richtung bewegt wird, so dass ein Werkstück (ein Werkstück) im Uhrzeigersinn bearbeitet wird.
  • Wenn die Bearbeitungsform ein Achteck ist, wie in 3 dargestellt, nimmt die Drehgeschwindigkeit eines Motors, der den Tisch in Y-Achsenrichtung bewegt, an der Eckposition A1 ab, während die Drehgeschwindigkeit eines Motors, der den Tisch in X-Achsenrichtung bewegt, zunimmt. Eine Drehrichtung des Motors, der den Tisch in Y-Achsrichtung bewegt, wird an der Eckposition A2 umgekehrt, und der Tisch bewegt sich linear in Y-Achsrichtung umgekehrt. Darüber hinaus dreht sich der Motor, der den Tisch in Richtung der X-Achse bewegt, mit gleicher Geschwindigkeit in gleicher Drehrichtung von der Position A1 zu der Position A2 und von der Position A2 zu der Position A3.
  • Die Drehgeschwindigkeit des Motors, der den Tisch in Richtung der Y-Achse bewegt, nimmt an der Eckposition A3 zu, während die Drehgeschwindigkeit eines Motors, der den Tisch in Richtung der X-Achse bewegt, abnimmt. Eine Drehrichtung des Motors, der den Tisch in X-Achsenrichtung bewegt, wird an der Eckposition A4 umgekehrt, und der Tisch bewegt sich linear in X-Achsenrichtung umgekehrt. Darüber hinaus dreht sich der Motor, der den Tisch in Richtung der Y-Achse bewegt, mit gleicher Geschwindigkeit in derselben Drehrichtung von der Position A3 zu der Position A4 und von der Position A4 zur nächsten Eckposition.
  • Wenn die Bearbeitungsform eine Form ist, in der die Ecken eines Achtecks abwechselnd durch Bögen ersetzt werden, wie in 4 dargestellt, nimmt die Drehgeschwindigkeit eines Motors, der den Tisch in Y-Achsrichtung bewegt, an der Eckposition B1 ab, während die Drehgeschwindigkeit eines Motors, der den Tisch in X-Achsrichtung bewegt, zunimmt. Eine Drehrichtung des Motors, der den Tisch in Y-Achsrichtung bewegt, wird an der Bogenposition B2 umgekehrt, und der Tisch bewegt sich linear in Y-Achsrichtung umgekehrt. Darüber hinaus dreht sich der Motor, der den Tisch in Richtung der X-Achse bewegt, mit gleicher Geschwindigkeit in gleicher Drehrichtung von der Position B1 zur Position B3. Im Gegensatz zu dem Fall, dass die Bearbeitungsform ein Achteck ist, das in 3 dargestellt ist, nimmt die Drehgeschwindigkeit des Motors, der den Tisch in Richtung der Y-Achse bewegt, allmählich ab, wenn er sich der Position B2 nähert, die Drehung stoppt an der Position B2, und die Drehgeschwindigkeit nimmt allmählich zu, wenn er von der Position B2 abweicht, so dass eine Bearbeitungsform eines Bogens vor und nach der Position B2 gebildet wird.
  • Die Drehgeschwindigkeit des Motors, der den Tisch in Richtung der Y-Achse bewegt, nimmt an der Eckposition B3 zu, während die Drehgeschwindigkeit eines Motors, der den Tisch in Richtung der X-Achse bewegt, abnimmt. Eine Drehrichtung des Motors, der den Tisch in X-Achsenrichtung bewegt, wird an der Bogenposition B4 umgekehrt, und der Tisch bewegt sich linear in X-Achsenrichtung umgekehrt. Darüber hinaus dreht sich der Motor, der den Tisch in Richtung der Y-Achse bewegt, mit gleicher Geschwindigkeit in gleicher Drehrichtung von der Position B3 zur Position B4 und von der Position B4 zur nächsten Eckposition. Die Drehgeschwindigkeit des Motors, der den Tisch in X-Achsenrichtung bewegt, nimmt allmählich ab, wenn er sich der Position B4 nähert, die Drehung stoppt an der Position B4, und die Drehgeschwindigkeit nimmt allmählich zu, wenn er von der Position B4 abweicht, so dass vor und nach der Position B4 eine Bearbeitungsform eines Bogens entsteht.
  • In der vorliegenden Ausführungsform wird davon ausgegangen, dass die Maschinenlernvorrichtung 200 Maschinenlernen im Zusammenhang mit der Optimierung der Koeffizienten der Übertragungsfunktion des IIR-Filters 1092 der Geschwindigkeits-Vorschub-Berechnungseinheit 109 und der Koeffizienten der Übertragungsfunktion des IIR-Filters 1102 der Positions-Vorschub-Berechnungseinheit 110 durch Auswertung von Vibrationen bei Änderung einer Drehgeschwindigkeit während der linearen Steuerung an den Positionen A1 und A3 und den Positionen B1 und B3 der durch das lernende Bearbeitungsprogramm festgelegten Bearbeitungsform durchführt und den Einfluss auf einen Positionsfehler untersucht. Das Maschinenlernen im Zusammenhang mit der Optimierung der Koeffizienten der Übertragungsfunktion des IIR-Filters beschränkt sich nicht nur auf die Geschwindigkeits-Vorschub-Berechnungseinheit und die Positions-Vorschub-Berechnungseinheit, sondern kann auch auf eine Strom-Vorschub-Berechnungseinheit mit einem IIR-Filter angewendet werden, die beispielsweise bei der Durchführung des Strom-Vorschubs einer Servosteuervorrichtung vorgesehen ist.
  • Im Folgenden wird die Maschinenlernvorrichtung 200 näher beschrieben. Es wird davon ausgegangen, dass die Maschinenlernvorrichtung 200 der vorliegenden Ausführungsform Verstärkungslernen im Zusammenhang mit der Optimierung der Koeffizienten der Übertragungsfunktion der Geschwindigkeits-Vorschub-Berechnungseinheit 109 und der Positions-Vorschub-Berechnungseinheit 110 durchführt, die in der Servosteuervorrichtung 100 einen Geschwindigkeitskreis bzw. einen Positionskreis bilden, wie später als Beispiel für Maschinenlernen beschrieben wird. Darüber hinaus beschränkt sich das Maschinenlernen in der vorliegenden Erfindung nicht auf das Verstärkungslernen, sondern die vorliegende Erfindung kann auch auf einen Fall der Durchführung eines anderen Maschinenlernens (beispielsweise überwachtes Lernen) angewendet werden.
  • Vor der Beschreibung der jeweiligen Funktionsblöcke, die in der Maschinenlernvorrichtung 200 enthalten sind, wird zunächst ein grundlegender Mechanismus des Verstärkungslernens beschrieben. Ein Agent (entsprechend der Maschinenlernvorrichtung 200 in der vorliegenden Ausführungsform) beobachtet einen Umgebungszustand und wählt eine bestimmte Aktion aus. Dann ändert sich die Umgebung auf der Grundlage der Aktion. Eine bestimmte Belohnung wird entsprechend der Umweltveränderung gewährt, und der Agent lernt die Auswahl (Entscheidung) für eine bessere Aktion. Während das überwachte Lernen eine völlig richtige Antwort darstellt, stellt die Belohnung im Verstärkungslernen oft einen fragmentierten Wert dar, der auf Veränderungen in einem Teil der Umgebung basiert. Daher lernt der Agent, eine Aktion so auszuwählen, dass die Gesamtausbeute in der Zukunft maximiert wird.
  • Auf diese Weise erlernt das Verstärkungslernen ein Verfahren zum Erlernen einer geeigneten Handlung auf der Grundlage der gegenseitigen Wirkung einer Handlung auf die Umwelt (d.h. eine Handlung zur Maximierung der in der Zukunft zu erzielenden Belohnung) durch Erlernen einer Handlung. Dies bedeutet, dass in der vorliegenden Ausführungsform eine solche Aktion, die sich auf die Zukunft auswirkt, erhalten wird beispielsweise eine Aktion zur Auswahl von Aktionsinformationen zur Reduzierung eines Positionsfehlers.
  • Obwohl hier ein beliebiges Lernverfahren als Verstärkungslernen verwendet wird, wird in der folgenden Beschreibung Q-Lernen, ein Verfahren zum Erlernen eines Wertes Q(S,A) zur Auswahl einer Aktion A unter einem bestimmten Umgebungszustand S, als Beispiel beschrieben. Ein Ziel des Q-Lernens ist es, eine Aktion A mit dem höchsten Wert Q(S,A) als optimale Aktion unter den Aktionen A auszuwählen, die in einem bestimmten Zustand S durchgeführt werden kann.
  • Zu einem Anfangszeitpunkt, zu dem das Q-Lernen beginnt, ist jedoch der korrekte Wert des Wertes Q(S,A) für eine Kombination aus dem Zustand S und der Aktion A überhaupt nicht bekannt. Daher lernt der Agent den richtigen Wert Q(S,A), indem er verschiedene Aktionen A unter einem bestimmten Zustand S auswählt und eine bessere Auswahl der Aktion basierend auf den für die ausgewählten Aktionen A gewährten Belohnungen trifft.
  • Da der Agent die im Laufe der Zukunft erhaltene Gesamtvergütung maximieren möchte, zielt das Q-Lernen darauf ab, am Ende eine Beziehung von Q (S, A) =E [Σ (γt) rt] zu erreichen. Hier zeigt E[] einen erwarteten Wert an, t zeigt die Zeit, γ ist ein Parameter, der als Diskontierungsfaktor bezeichnet wird und später beschrieben werden soll, rt ist eine Belohnung zum Zeitpunkt t und Σ ist die Summe zum Zeitpunkt t. In diesem Ausdruck ist der erwartete Wert ein erwarteter Wert, wenn der Zustand gemäß einer optimalen Aktion geändert wurde. Da jedoch unklar ist, welche Aktion im Prozess des Q-Lernens optimal wäre, wird das Verstärkungslernen durchgeführt, während man durch verschiedene Aktionen nach einer optimalen Aktion sucht. Ein aktualisierter Ausdruck eines solchen Wertes Q(S,A) kann durch den folgenden Ausdruck 3 (Gleichung 3) dargestellt werden.
  • Q ( S t + 1 , A t + 1 ) Q ( S t , A t ) + α ( r t + 1 + γ m a x A Q ( S t + 1 , A ) Q ( S t , A t ) )
    Figure DE102019210397A1_0003
  • In Ausdruck 3 zeigt St einen Umgebungszustand zum Zeitpunkt t und At eine Aktion zum Zeitpunkt t an. Durch die Aktion At ändert sich der Zustand in St+1. rt+1 bedeutet eine Belohnung, die durch die Änderung des Zustands erhalten wird. Darüber hinaus ist ein Begriff mit max eine Multiplikation des Q-Wertes mit γ, wenn eine Aktion A mit dem höchsten in diesem Moment bekannten Q-Wert unter dem Zustand St+1 ausgewählt wurde. Hier ist γ ein Parameter von 0<γ≤1 und wird als Diskontsatz bezeichnet. Darüber hinaus ist α ein Lernfaktor und liegt im Bereich von 0<α≤1.
  • Ausdruck 3 bezeichnet ein Verfahren zum Aktualisieren eines Wertes Q(St,At) einer Aktion At in einem Zustand St auf der Grundlage einer zurückkehrenden Belohnung rt+1, wenn die Aktion At ausgeführt wird. Dieser Aktualisierungsausdruck zeigt an, dass, wenn der Wert maxa Q(St+1,A) der besten Aktion im nächsten Zustand St+1. der einer Aktion At zugeordnet ist, größer ist als der Wert Q(St,At) einer Aktion At im Zustand St, Q(St,At) erhöht wird, und wenn anders, Q(St,At) verringert wird. Das heißt, der Wert einer bestimmten Aktion in einem bestimmten Zustand nähert sich dem Wert der besten Aktion im nächsten mit der Aktion verbundenen Zustand. Obwohl sich diese Differenz jedoch je nach Diskontsatz γ und der Belohnung rt+1 unterscheidet, hat der Aktualisierungsausdruck eine solche Struktur, dass sich der Wert der besten Aktion in einem bestimmten Zustand im Wesentlichen auf den Wert einer Aktion in einem Zustand vor diesem Zustand auswirkt.
  • Hier ist ein Q-Lernverfahren zum Erstellen einer Wert Q(S,A)-Tabelle für alle Zustandsaktionspaare (S,A) zum Durchführen des Lernens bekannt. Es kann jedoch erheblich lange dauern, bis sich das Q-Lernen einstellt, wenn die Werte des Wertes Q(S,A) aller Zustandsaktionspaare berechnet werden sollen, da die Anzahl der Zustände zu groß ist.
  • Somit kann das Q-Lernen eine bestehende Technik verwenden, die als Deep-Q-Network (DQN) bezeichnet wird. Insbesondere kann ein Agent den Wert des Wertes Q(S,A) berechnen, indem er eine Wertfunktion Q unter Verwendung eines geeigneten neuronalen Netzwerks konstruiert und die Wertfunktion Q mit dem entsprechenden neuronalen Netzwerk durch Anpassung der Parameter des neuronalen Netzwerks approximiert. Durch den Einsatz von DQN ist es möglich, die Zeit für die Abrechnung des Q-Lernens zu verkürzen. Die Details des DQN sind beispielsweise im folgenden Nicht-Patentdokument offenbart.
  • <Nicht- Patent-Dokument>
  • „Menschliche Steuerung durch tiefes Verstärkungslernen“, Volodymyr Mnihl [online], [recherchiert am 17. Januar 2017], Internet <URL: http://files.davidqiu.com/research/nature14236.pdf>
  • Die Maschinenlernvorrichtung 200 führt das oben beschriebene Q-Lernen durch. Die Maschinenlernvorrichtung 200 führt das Maschinenlernen (im Folgenden als Lernen bezeichnet) der Übertragungsfunktion des IIR-Filters 1092 der Geschwindigkeits-Vorschub-Berechnungseinheit 109 und der Übertragungsfunktion des IIR-Filters 1102 der in 1 dargestellten Positions-Vorschub-Berechnungseinheit 110 durch.
  • Die Maschinenlernvorrichtung 200 führt das Lernen der Koeffizienten der Übertragungsfunktion des IIR-Filters 1092 auf einer Innenseite (der inneren Schleife) als des IIR-Filters 1102 vor dem Lernen der Koeffizienten der Übertragungsfunktion des IIR-Filters 1102 durch. Insbesondere legt die Maschinenlernvorrichtung 200 die Koeffizienten der Übertragungsfunktion des IIR-Filters 1102 fest und erlernt die optimalen Werte der Koeffizienten der Übertragungsfunktion des IIR-Filters 1092. Danach fixiert die Maschinenlernvorrichtung 200 die Koeffizienten der Übertragungsfunktion des IIR-Filters 1092 auf die durch das Lernen erhaltenen optimalen Werte und erlernt die Koeffizienten der Übertragungsfunktion des IIR-Filters 1102. Durch das Durchführen des Lernens der Koeffizienten der Übertragungsfunktion des IIR-Filters 1092 vor dem Lernen der Koeffizienten der Übertragungsfunktion des IIR-Filters 1102 ist es möglich, ein Lernen im Zusammenhang mit der Optimierung der Koeffizienten der Übertragungsfunktion des IIR-Filters 1102 unter der Bedingung des durch das Lernen optimierten Geschwindigkeits-Vorschubterms (der Ausgabe des IIR-Filters 1092) durchzuführen.
  • Obwohl das Lernen der Koeffizienten der Übertragungsfunktion des IIR-Filters 1092 und das Lernen der Koeffizienten der Übertragungsfunktion des IIR-Filters 1102 gleichzeitig durchgeführt werden kann, wenn das Lernen gleichzeitig durchgeführt wird, nimmt die Menge der für das Maschinenlernen verarbeiteten Informationen zu und die Einschwingzeit des Maschinenlernens steigt.
  • Wie vorstehend beschrieben, führt die Maschinenlernvorrichtung 200 zunächst ein Maschinenlernen der Koeffizienten der Übertragungsfunktion des IIR-Filters 1092 der Geschwindigkeits-Vorschub-Berechnungseinheit 109 durch. Die Maschinenlernvorrichtung 200 erlernt einen Wert Q zum Auswählen einer Aktion A zum Einstellen der Koeffizienten a1 , a2 und b0 bis b2 der Übertragungsfunktion VFF(z) des IIR-Filters 1092, die einem Zustand S zugeordnet sind, wobei der Zustand S ein Servozustand ist, wie Befehle und Rückkopplungen, die die Koeffizienten a1 umfassen, a2 und b0 bis b2 der Übertragungsfunktion VFF(z) des IIR-Filters 1092 der Geschwindigkeits-Vorschub-Berechnungseinheit 109, und die Positionsfehlerinformationen und der Positionsbefehl der Servosteuervorrichtung 100, die durch Ausführen des lernenden Bearbeitungsprogramms erfasst wurden. Insbesondere setzt die Maschinenlernvorrichtung 200 gemäß der Ausführungsform der vorliegenden Erfindung die Koeffizienten der Übertragungsfunktion VFF(z) des IIR-Filters 1092, indem sie innerhalb eines vorgegebenen Bereichs einen Radius r und einen Winkel θ sucht, die einen Nullpunkt bzw. einen Pol der Übertragungsfunktion VFF(z) in Polarkoordinaten darstellen, um den Radius r und den Winkel θ zu lernen. Der Pol ist der Wert von z bei dem die Übertragungsfunktion VFF(z) unendlich ist und der Nullpunkt der Wert von z, bei dem die Übertragungsfunktion VFF(z) 0 ist, weshalb die Koeffizienten im Zähler der Übertragungsfunktion VFF(z) wie folgt modifiziert wurden. b 0 + b 1 z 1 + b 2 z 2 = b 0 ( 1 + ( b 1 / b 0 ) z 1 + ( b 2 / b 0 ) z - 2 )
    Figure DE102019210397A1_0004
    Im Folgenden werden (b1/b0) und (b2/b0) durch b1' bzw. b2' gekennzeichnet, sofern nicht ausdrücklich anders angegeben. Die Maschinenlernvorrichtung 200 lernt den Radius r und den Winkel θ, die den Positionsfehler minimieren, um die Koeffizienten a1 , a2 , b1' und b2' der Übertragungsfunktion VFF(z) einzustellen. Der Koeffizient b0 kann durch Maschinenlernen erhalten werden, nachdem beispielsweise der Radius r und der Winkel θ auf die optimalen Werte r0 und θ0 eingestellt wurden. Der Koeffizient b0 kann gleichzeitig mit dem Winkel θ gelernt werden. Außerdem kann der Koeffizient b0 gleichzeitig mit dem Radius r gelernt werden.
  • Danach erfolgt das Erlernen der Koeffizienten c1 , c2 und d0 bis d2 der Übertragungsfunktion PFF(z) des IIR-Filters 1102 in einem Verfahren ähnlich der Übertragungsfunktion VFF(z) des IIR-Filters 1092. Obwohl das Lernen der Koeffizienten der Übertragungsfunktion VFF(z) des IIR-Filters 1092 der Geschwindigkeits-Vorschub-Berechnungseinheit 109 in der folgenden Beschreibung beschrieben wird, erfolgt das Lernen der Koeffizienten der Übertragungsfunktion PFF(z) des IIR-Filters 1102 der Positions-Vorschub-Berechnungseinheit 110 in ähnlicher Weise.
  • Die Maschinenlernvorrichtung 200 beobachtet die Zustandsinformationen S einschließlich des Servozustands wie Befehle und Rückmeldungen einschließlich der Positionsbefehle und der Positionsfehlerinformationen der Servosteuervorrichtung 100 an den Positionen A1 und A3 und/oder den Positionen B1 und B3 der Bearbeitungsform, indem sie das lernende Bearbeitungsprogramm auf der Grundlage der Werte der Koeffizienten a1 , a2 und b0 bis b2 der Übertragungsfunktion VFF(z) des IIR-Filters 1092 ausführt, um die Aktion A zu bestimmen. Die Maschinenlernvorrichtung 200 erhält bei jeder Ausführung der Aktion A eine Prämie. Die Maschinenlernvorrichtung 200 sucht versuchsweise nach der optimalen Aktion A, so dass die Summe der Belohnung im Laufe der Zukunft maximiert wird. Dadurch kann die Maschinenlernvorrichtung 200 eine optimale Aktion A (d.h. die Werte des optimalen Nullpunktes und Pols der Übertragungsfunktion VFF(z) des IIR-Filters 1092) in Bezug auf den Zustand S einschließlich des Servozustands wie Befehle und Rückkopplungen einschließlich der Positionsbefehle und der Positionsfehlerinformationen der Servosteuervorrichtung 100 auswählen, die durch Ausführen des Lernbearbeitungsprogramms auf der Grundlage der Werte der Koeffizienten, die auf der Grundlage der Werte des Nullpunktes und des Pols der Übertragungsfunktion VFF(z) des IIR-Filters 1092 berechnet wurden, erfasst wurden. Die Drehrichtung des Servomotors in X-Achsenrichtung und Y-Achsenrichtung ändert sich an den Positionen A1 und A3 sowie den Positionen B1 und B3 nicht, so dass die Maschinenlernvorrichtung 200 die Werte des Nullpunktes und des Pols der Übertragungsfunktion VFF(z) des IIR-Filters 1092 im Linearbetrieb erlernen kann.
  • Das heißt, es ist möglich, eine Aktion A (d.h. die Werte des Nullpunkts und des Pols der Übertragungsfunktion VFF(z) des IIR-Filters 1092) auszuwählen, die den Positionsfehler minimiert, der durch die Ausführung des lernenden Bearbeitungsprogramms erfasst wird, indem eine Aktion A ausgewählt wird, die den Wert von Q aus den Aktionen A maximiert, die auf die Übertragungsfunktion VFF(z) des IIR-Filters 1092 angewendet werden, die einem bestimmten Zustand S zugeordnet ist, auf der Grundlage der von der Maschinenlernvorrichtung 200 gelernten Wertefunktion Q.
  • Im Folgenden wird ein Verfahren zum Erlernen des Radius r und des Winkels θ, die den Nullpunkt und den Pol der Übertragungsfunktion VFF(z) des IIR-Filters 1092 darstellen, die den Positionsfehler in Polarkoordinaten minimieren, um die Koeffizienten a1 , a2 , b1' und b2' der Übertragungsfunktion VFF(z) zu erhalten, und ein Verfahren zum Erhalten des Koeffizienten b0 beschrieben.
  • Die Maschinenlernvorrichtung 200 setzt einen Pol, der z ist, an dem die Übertragungsfunktion VFF(z) in Ausdruck 1 unendlich ist, und einen Nullpunkt, der z ist, an dem die Übertragungsfunktion VFF(z) gleich 0 ist, erhalten vom IIR-Filter 1092. Die Maschinenlernvorrichtung 200 multipliziert den Nenner und den Zähler in Ausdruck 1 mit z2 , um Ausdruck 4 (angegeben durch Gleichung 4 unten) zu erhalten, um den Pol und den Nullpunkt zu erhalten. V F F ( z ) = b 0 ( z 2 + b 1 ' z + b 2 ' ) z 2 + a 1 z + a 2
    Figure DE102019210397A1_0005
    Der Pol ist z, bei dem der Nenner von Ausdruck 4 gleich 0 ist (d.h. z2+a1z+a2=0), und der Nullpunkt ist z, bei dem der Zähler von Ausdruck 4 gleich 0 ist (d.h. z2+b1'z+b2'=0).
  • In der vorliegenden Ausführungsform werden der Pol und der Nullpunkt in Polarkoordinaten dargestellt und sucht nach dem Pol und dem Nullpunkt in Polarkoordinaten. Der Nullpunkt ist wichtig für die Unterdrückung von Vibrationen, und die Maschinenlernvorrichtung 200 fixiert zunächst den Pol und stellt die Koeffizienten b1' (=-re-re-iθ) und b2' (=r2) ein, die berechnet werden, wenn z=re und die konjugierte komplexe Zahl z*=re-iθ im Zähler (z2+b1'z+b2') der Nullpunkt sind (der Winkel θ liegt in einem vorbestimmten Bereich, und 0≤r≤1) als die Koeffizienten der Übertragungsfunktion VFF(z), um nach dem Nullpunkt re in Polarkoordinaten zu suchen, um die Werte der optimalen Koeffizienten b1' und b2' zu erfahren. Der Radius r ist abhängig von einem Dämpfungsfaktor, der Winkel θ von einer Schwingungsdämpfungsfrequenz. Danach kann der Nullpunkt auf einen optimalen Wert festgelegt und der Wert des Koeffizienten b0 gelernt werden. Anschließend wird der Pol der Übertragungsfunktion VFF(z) in Polarkoordinaten dargestellt, und der Wert re des in Polarkoordinaten dargestellten Pols wird nach einem Verfahren gesucht, das dem für den Nullpunkt verwendeten Verfahren ähnlich ist. Auf diese Weise ist es möglich, die Werte der optimalen Koeffizienten a1 und a2 im Nenner der Übertragungsfunktion VFF(z) zu erfahren. Bei festem Pol und den Koeffizienten im Zähler der Übertragungsfunktion VFF(z) genügt es, eine hochfrequenzspezifische Verstärkung unterdrücken zu können, und der Pol entspricht beispielsweise einem Tiefpassfilter zweiter Ordnung. So wird beispielsweise eine Übertragungsfunktion eines Tiefpassfilters zweiter Ordnung durch den Ausdruck 5 (unten als mathematisch bezeichnet) dargestellt. ω ist eine Spitzenverstärkungsfrequenz des Filters. 1 s 2 + 2 ω s + ω 2
    Figure DE102019210397A1_0006
    Wenn der Pol ein Tiefpassfilter der Ordnung 3 ist, kann der Tiefpassfilter der Ordnung 3 durch Bereitstellen von drei Tiefpassfiltern der Ordnung 1 gebildet werden, deren Übertragungsfunktion durch 1/(1+Ts) dargestellt wird (T ist eine Zeitkonstante des Filters) und kann durch Kombinieren des Tiefpassfilters der Ordnung 1 mit dem Tiefpassfilter der Ordnung 2 in Ausdruck 5 gebildet werden. Die Übertragungsfunktion in der z-Domäne wird durch bilineare Transformation der Übertragungsfunktion in der s-Domäne erhalten.
  • Obwohl der Pol und der Nullpunkt der Übertragungsfunktion VFF(z) gleichzeitig gesucht werden können, ist es möglich, die Anzahl des Maschinenlernens zu reduzieren und die Lernzeit zu verkürzen, wenn der Pol und der Nullpunkt getrennt gesucht und gelernt werden.
  • Die Suchbereiche des Pols und des Nullpunktes können auf vorgegebene Suchbereiche eingegrenzt werden, die durch schraffierte Bereiche angezeigt werden, indem der Radius r im Bereich von 0≤r≤1 definiert wird, beispielsweise in einer komplexen Ebene in 5 und der Winkel θ in einem verantwortlichen Frequenzbereich eines Geschwindigkeitskreises definiert wird. Die Obergrenze des Frequenzbereichs kann auf 200 Hz eingestellt werden, da die durch die Resonanz des Drehzahlregelkreises erzeugte Schwingung beispielsweise etwa 200 Hz beträgt. Obwohl der Suchbereich durch die Resonanzeigenschaften eines Steuerungsziels wie einer Werkzeugmaschine bestimmt wird, da der Winkel θ bei ca. 250 Hz bei einer Abtastzeit von 1 msec einem 90°-Wert entspricht, wird bei einer Obergrenze des Frequenzbereichs von 200 Hz ein Suchbereich des Winkels θ wie in der komplexen Ebene von 5 erhalten. Durch diese Eingrenzung des Suchbereichs auf einen vorgegebenen Bereich ist es möglich, die Menge des Maschinenlernens zu reduzieren und die Einschwingzeit des Maschinenlernens zu verkürzen.
  • Bei der Suche nach dem Nullpunkt in Polarkoordinaten wird zunächst der Koeffizient b0 beispielsweise auf 1 festgelegt und der Radius r auf einen beliebigen Wert im Bereich von 0≤r≤1 und der Winkel θ im Suchbereich von 5 wird auf Versuch und Irrtum eingestellt, um dadurch die Koeffizienten b1 ' (=-re-re-jθ) und b2 ' (=r2) so einzustellen, dass z und die konjugierte komplexe Zahl z* der Nullpunkt von (z2+b1'z+b2') sind. Der Anfangseinstellwert des Winkels θ wird in dem in 5 dargestellten Suchbereich eingestellt. Die Maschinenlernvorrichtung 200 überträgt die Einstellinformationen der erhaltenen Koeffizienten b1 ' und b2 ' als Aktion A an das IIR-Filter 1092 und setzt die Koeffizienten b1 ' und b2 ' im Zähler der Übertragungsfunktion VFF(z) des IIR-Filters 1092. Der Koeffizient b0 wird, wie vorstehend beschrieben, beispielsweise auf 1 gesetzt. Wenn ein solcher idealer Winkel θ0 bestimmt wird, der den Wert der Wertfunktion Q durch die Maschinenlernvorrichtung 200 maximiert, die das Lernen zur Suche nach dem Winkel θ durchführt, wird der Winkel θ an den Winkel θ0 fixiert und der Radius r variiert, um dadurch die Koeffizienten b1' (=-re-re-jθ) und b2' (=r2) im Zähler der Übertragungsfunktion VFF(z) des IIR-Filters 1092 einzustellen. Durch das Erlernen der Suche nach dem Radius r wird ein solcher optimaler Radius r0 bestimmt, der den Wert der Wertfunktion Q maximiert. Die Koeffizienten b1' und b2' werden mit Hilfe des Winkels θ0 und des Radius r0 eingestellt, danach erfolgt das Lernen in Bezug auf b0 , wobei die Koeffizienten b0 , b1' und b2' im Zähler der Übertragungsfunktion VFF(z) bestimmt werden.
  • Wird der Pol in Polarkoordinaten gesucht, kann das Lernen ähnlich wie der Nenner der Übertragungsfunktion VFF(z) durchgeführt werden. Zunächst wird der Radius r auf einen Wert im Bereich von (beispielsweise 0≤r≤1) festgelegt, und der Winkel θ wird im Suchbereich ähnlich wie bei der Suche nach dem Nullpunkt gesucht, um durch Lernen einen idealen Winkel θ des Pols der Übertragungsfunktion VFF(z) des IIR-Filters 1092 zu bestimmen. Danach wird der Winkel θ auf den Winkel fixiert und der Radius r gesucht und gelernt, wodurch der ideale Winkel θ und der ideale Radius r des Pols der Übertragungsfunktion VFF(z) des IIR-Filters 1092 bestimmt werden. Dabei werden die optimalen Koeffizienten a1 und a2 entsprechend dem Idealwinkel θ und dem Idealradius r des Pols bestimmt. Wie vorstehend beschrieben, hängt der Radius r vom Dämpfungsfaktor und der Winkel θ von einer Schwingungsunterdrückungsfrequenz ab. Daher ist es vorzuziehen, den Winkel θ vor dem Radius r zu erlernen, um Vibrationen zu unterdrücken.
  • Auf diese Weise ist es möglich, durch die Suche nach dem Radius r und dem Winkel θ, die den Nullpunkt bzw. den Pol der Übertragungsfunktion VFF(z) des IIR-Filters 1092 in Polarkoordinaten darstellen, so dass der Positionsfehler minimiert wird, die Optimierung der Koeffizienten a1 , a2 , b0 , b1 ' und b2 ' der Übertragungsfunktion VFF(z) effizienter durchzuführen, als die Koeffizienten a1 , a2 , b0 , b1 ' und b2 ' direkt zu lernen.
  • Wenn der Koeffizient b0 der Übertragungsfunktion VFF(z) des IIR-Filters 1092 gelernt wird, wird beispielsweise der Anfangswert des Koeffizienten b0 auf 1 gesetzt und danach wird der Koeffizient b0 der in der Aktion A enthaltenen Übertragungsfunktion VFF(z) schrittweise erhöht oder verringert. Der Anfangswert des Koeffizienten b0 ist nicht auf 1 begrenzt, der Anfangswert des Koeffizienten b0 kann auf einen beliebigen Wert eingestellt werden. Die Maschinenlernvorrichtung 200 gibt bei jeder Ausführung der Aktion A eine Belohnung auf der Grundlage eines Positionsfehlers zurück und passt den Koeffizienten b0 der Übertragungsfunktion VFF(z) auf einen Idealwert an, der den Wert der Wertfunktion Q maximiert, indem sie verstärkt lernt, nach der optimalen Aktion A probeweise zu suchen, so dass eine gesamte zukünftige Belohnung maximiert wird. Obwohl das Lernen des Koeffizienten b0 in diesem Beispiel nach dem Lernen des Radius r durchgeführt wird, kann der Koeffizient b0 gleichzeitig mit dem Winkel θ und gleichzeitig mit dem Radius r gelernt werden. Obwohl der Radius r, der Winkel θ und der Koeffizient b0 gleichzeitig gelernt werden können, ist es möglich, die Menge des Maschinenlernens zu reduzieren und die Einschwingzeit des Maschinenlernens zu verkürzen, wenn diese Koeffizienten separat gelernt werden.
  • Wenn das Lernen im Zusammenhang mit der Optimierung der Koeffizienten der Übertragungsfunktion VFF(z) des IIR-Filters 1092 endet, wird das Lernen im Zusammenhang mit der Optimierung der Koeffizienten der Übertragungsfunktion PFF(z) des IIR-Filters 1102 anschließend durchgeführt. Die Maschinenlernvorrichtung 200 multipliziert den Nenner und den Zähler in Ausdruck 2 mit z2 , um Ausdruck 6 (angegeben durch Gleichung 6 unten) zu erhalten, um den Pol und den Nullpunkt zu erhalten. P F F ( z ) = d 0 ( z 2 + d 1 ' z + d 2 ' ) z 2 + c 1 z + c 2
    Figure DE102019210397A1_0007
    d1' und d2' in Ausdruck 6 entsprechen (d1/d0) bzw. (d2/d0). Anschließend werden der Radius r und der Winkel θ, die den Nullpunkt und den Pol der Übertragungsfunktion PFF(z) des IIR-Filters 1102 in Polarkoordinaten darstellen, gelernt, um eine Optimierung der Koeffizienten c1 , c2 und d0 bis d2 der Übertragungsfunktion PFF(z) ähnlich dem Fall des Lernens des Radius r und des Winkels θ durchzuführen, die den Nullpunkt und den Pol der Übertragungsfunktion VFF(z) des IIR-Filters 1092 darstellen. Daher entfällt die Beschreibung derselben.
  • 6 ist ein Blockdiagramm, das die Maschinenlernvorrichtung 200 der vorliegenden Ausführungsform veranschaulicht. Während das Erlernen der Koeffizienten der Übertragungsfunktion VFF(z) des IIR-Filters 1092 der Geschwindigkeits-Vorschub-Berechnungseinheit 109 später beschrieben wird, erfolgt das Erlernen der Koeffizienten der Übertragungsfunktion des IIR-Filters 1102 der Positions-Vorschub-Berechnungseinheit 110 ähnlich. Wie in 6 dargestellt, umfasst die Maschinenlernvorrichtung 200 zur Durchführung des vorstehend beschriebenen Verstärkungslernens eine Zustandsinformationserfassungseinheit 201, eine Lerneinheit 202, eine Aktionsinformationsausgabeeinheit 203, eine Wertfunktionsspeichereinheit 204 und eine Optimierungsaktionsinformationsausgabeeinheit 205. Die Lerneinheit 202 umfasst eine Belohnungsausgabeeinheit 2021, eine Wertefunktionsaktualisierungseinheit 2022 und eine Aktions-Informationserzeugungseinheit 2023.
  • Die Zustandsinformationserfassungseinheit 201 erfasst von der Servosteuervorrichtung 100 den Zustand S mit einem Servozustand, wie Befehle und Rückkopplungen mit den Positionsbefehlen und den Positionsfehlerinformationen der Servosteuervorrichtung 100, die durch Ausführen des lernenden Bearbeitungsprogramms auf der Grundlage der Werte der Koeffizienten a1 , a2 und b0 bis b2 der Übertragungsfunktion VFF(z) des IIR-Filters 1092 der Geschwindigkeits-Vorschub-Berechnungseinheit 109 der Servosteuervorrichtung 100 erfasst wurden. Die Zustandsinformation S entspricht einem Zustand S der Umgebung im Q-Lernen. Die Zustandsinformationserfassungseinheit 201 gibt die erfassten Zustandsinformationen S an die Lerneinheit 202 aus. Darüber hinaus erfasst die Zustandsinformationserfassungseinheit 201 den Winkel θ und den Radius r, die den Nullpunkt und den Pol in Polarkoordinaten darstellen, und die entsprechenden Koeffizienten a1 , a2 , b1' und b2' aus der Aktions-Informationserzeugungseinheit 2023, um ihn darin zu speichern, und gibt den Winkel θ und den Radius r aus, die den Nullpunkt darstellen, und den Pol, der den Koeffizienten a1 , a2 , b1 ' und b2 ' entspricht, die von der Servosteuervorrichtung 100 in Polarkoordinaten zur Lerneinheit 202 erfasst wurden.
  • Die Anfangseinstellwerte der Übertragungsfunktion VFF(z) des IIR-Filters 1092 zu einem Zeitpunkt, zu dem das Q-Lernen beginnt, werden von einem Benutzer im Voraus eingestellt. In der vorliegenden Ausführungsform werden danach die vom Benutzer eingestellten Anfangseinstellwerte der Koeffizienten a1 , a2 und b0 bis b2 der Übertragungsfunktion VFF(z) des IIR-Filters 1092 durch Verstärkungslernen der Suche nach dem Radius r und dem Winkel θ, die den Nullpunkt und den Pol in Polarkoordinaten darstellen, wie oben beschrieben, auf optimale Werte eingestellt. Der Koeffizient α des Doppeldifferenzierers 1091 der Geschwindigkeits-Vorschub-Berechnungseinheit 109 wird auf einen festen Wert wie beispielsweise α=1 gesetzt. Darüber hinaus werden die Anfangseinstellwerte im Nenner der Übertragungsfunktion VFF(z) des IIR-Filters 1092 auf die in Gleichung 5 dargestellten Werte eingestellt, (die Übertragungsfunktion in der durch bilineare Transformation konvertierten z-Domäne). Darüber hinaus kann wie bei den Anfangseinstellwerten der Koeffizienten b0 bis b2 im Zähler der Übertragungsfunktion VFF(z), b0=1, der Radius r auf einen Wert innerhalb des Bereichs 0≤r≤1 und der Winkel θ auf einen Wert innerhalb des vorgegebenen Suchbereichs eingestellt werden. Die anfänglichen Einstellwerte der Positions-Vorschub-Berechnungseinheit 110 werden in ähnlicher Weise eingestellt. Darüber hinaus kann, was die Koeffizienten a1 , a2 und b0 bis b2 und die Koeffizienten c1 , c2 und d0 bis d2 betrifft, wenn ein Bediener die Werkzeugmaschine im Voraus einstellt, Maschinenlernen unter Verwendung der Werte des Radius r und des Winkels θ durchgeführt werden, die den Nullpunkt und den Pol der eingestellten Übertragungsfunktion in Polarkoordinaten als Anfangswerte darstellen.
  • Die Lerneinheit 202 ist eine Einheit, die den Wert Q(S,A) erlernt, wenn eine bestimmte Aktion A unter einem bestimmten Zustand S der Umgebung ausgewählt wird. Hier fixiert die Aktion A beispielsweise den Koeffizienten b0 auf 1 und berechnet die Korrekturinformationen der Koeffizienten b1 ' und b2 ' im Zähler der Übertragungsfunktion VFF(z) des IIR-Filters 1092 auf Basis der Korrekturinformationen des Radius r und des Winkels θ, die den Nullpunkt der Übertragungsfunktion VFF(z) in Polarkoordinaten darstellen. In der folgenden Beschreibung wird als Beispiel ein Fall beschrieben, in dem beispielsweise der Koeffizient b0 zunächst auf 1 gesetzt ist und die Aktionsinformation A die Korrekturinformation der Koeffizienten b1 ' und b2 ' ist.
  • Die Belohnungsausgabeeinheit 2021 ist eine Einheit, die eine Belohnung berechnet, wenn die Aktion A unter einem bestimmten Zustand S ausgewählt wird. Hier wird ein Satz (ein Positionsfehlersatz) von Positionsfehlern, die Zustandsvariablen des Zustands S sind, durch PD(S) bezeichnet, und ein Positionsfehlersatz, der Zustandsvariablen in Bezug auf Zustandsinformationen S' ist, die aufgrund der Aktionsinformationen A vom Zustand S' geändert werden, wird durch PD(S') bezeichnet. Darüber hinaus ist der Positionsfehlerwert im Zustand S ein Wert, der basierend auf einer vorgegebenen Auswertefunktion f(PD(S)) berechnet wird. Funktionen können als Auswertungsfunktion f verwendet werden:
    • Eine Funktion, die einen integrierten Wert eines Absolutwertes eines Positionsfehlers berechnet ∫|e|dt
    • Eine Funktion, die einen integrierten Wert durch eine Gewichtung eines Absolutwertes eines Positionsfehlers mit der Zeit berechnet ∫t|e|dt
    • Eine Funktion, die einen integrierten Wert einer 2n-th Leistung (n ist eine natürliche Zahl) eines Absolutwertes eines Positionsfehlers berechnet ∫e2ndt (n ist eine natürliche Zahl)
    • Eine Funktion, die einen Maximalwert eines Absolutwertes eines Positionsfehlers berechnet Max{|e|}
  • In diesem Fall setzt die Belohnungsausgabeeinheit 2021 den Wert einer Belohnung auf einen negativen Wert, wenn der Positionsfehlerwert f(PD(S')) der Servosteuervorrichtung 100, der basierend auf der Geschwindigkeits-Vorschub-Berechnungseinheit 109 betrieben wird, nachdem die Korrektur in Bezug auf die durch die Aktionsinformation A korrigierte Zustandsinformation S' größer ist als der Positionsfehlerwert f(PD(S)) der Servosteuervorrichtung 100, die basierend auf der Geschwindigkeits-Vorschub-Berechnungseinheit 109 betrieben wird, vor der Korrektur in Bezug auf die Zustandsinformation S, bevor sie durch die Aktionsinformation A korrigiert wird.
  • Andererseits setzt die Belohnungsausgabeeinheit 2021 den Wert der Belohnung auf einen positiven Wert, wenn der Positionsfehlerwert f(PD(S') der Servosteuervorrichtung 100, der basierend auf der Geschwindigkeits-Vorschub-Berechnungseinheit 109 betrieben wird, nach der Korrektur in Bezug auf die durch die Aktionsinformation A korrigierten Zustandsinformationen S' kleiner ist als der Positionsfehlerwert f(PD(S)) der Servosteuervorrichtung 100, die basierend auf der Geschwindigkeits-Vorschub-Berechnungseinheit 109 betrieben wird, vor der Korrektur in Bezug auf die Zustandsinformationen S, bevor sie durch die Aktionsinformation A korrigiert wird. Darüber hinaus kann die Belohnungsausgabeeinheit 2021 den Wert der Belohnung auf Null setzen, wenn der Positionsfehlerwert f(PD(S') der Servosteuervorrichtung 100, der basierend auf der Geschwindigkeits-Vorschub-Berechnungseinheit 109 betrieben wird, nachdem die Korrektur in Bezug auf die durch die Aktionsinformation A korrigierten Zustandsinformationen S' gleich dem Positionsfehlerwert f(PD(S)) der Servosteuervorrichtung 100 ist, die basierend auf der Geschwindigkeits-Vorschub-Berechnungseinheit 109 betrieben wird, vor der Korrektur in Bezug auf die Zustandsinformationen S durch die Aktionsinformation A korrigiert wird.
  • Wenn außerdem der Positionsfehlerwert f(PD(S')) im Zustand S' nach Ausführung der Aktion A größer wird als der Positionsfehlerwert f(PD(S)) im vorherigen Zustand S, kann der negative Wert entsprechend dem Verhältnis erhöht werden. Das heißt, der negative Wert kann entsprechend dem Grad der Erhöhung des Positionsfehlerwertes erhöht werden. Wird dagegen der Positionsfehlerwert f(PD(S')) im Zustand S' nach Ausführung der Aktion A kleiner als der Positionsfehlerwert f(PD(S)) im vorherigen Zustand S, kann der positive Wert entsprechend dem Verhältnis erhöht werden. Das heißt, der positive Wert kann entsprechend dem Grad der Abnahme des Positionsfehlerwertes erhöht werden.
  • Die Wertfunktions-Aktualisierungseinheit 2022 aktualisiert die in der Wertfunktionsspeichereinheit 204 gespeicherte Wertfunktion Q, indem sie ein Q-Lernen basierend auf dem Zustand S, der Aktion A, dem Zustand S' bei Anwendung der Aktion A auf den Zustand S und dem auf die oben genannte Weise berechneten Wert der Vergütung durchführt. Die Aktualisierung der Wertfunktion Q kann durch Online-Lernen, Batch-Lernen oder Mini-Batch-Lernen erfolgen. Online-Lernen ist ein Lernverfahren, bei dem eine bestimmte Aktion A auf einen aktuellen Zustand S angewendet und die Wertefunktion Q sofort aktualisiert wird, wenn der aktuelle Zustand S in einen neuen Zustand S' übergeht. Batch-Lernen ist ein Lernverfahren, bei dem durch Anwenden einer bestimmten Aktion A auf einen aktuellen Zustand S und durch Wiederholen des Zustands S, der in einen neuen Zustand S' übergeht, Sammeln von Lerndaten die Wertefunktion Q mit allen gesammelten Lerndaten aktualisiert wird. Das Mini-Batch-Lernen ist ein Lernverfahren, das eine Schnittstelle zwischen Online-Lernen und Batch-Lernen ist und die Aktualisierung der Wertfunktion Q umfasst, wenn eine bestimmte Menge an Lerndaten gesammelt wird.
  • Die Aktions-Informationserzeugungseinheit 2023 wählt die Aktion A im Prozess des Q-Lernens in Bezug auf den aktuellen Zustand S aus. Die Aktions-Informationserzeugungseinheit 2023 erzeugt Aktionsinformationen A und gibt die erzeugten Aktionsinformationen A an die Aktionsinformationsausgabeeinheit 203 aus, um einen Vorgang (entsprechend der Aktion A des Q-Lernens) zur Korrektur der Koeffizienten b1' und b2' der Übertragungsfunktion VFF(z) des IIR-Filters 1092 der Servosteuervorrichtung 100 im Prozess des Q-Lernens auf der Grundlage des Radius r und des Winkels θ durchzuführen, die den Nullpunkt in Polarkoordinaten darstellen. Insbesondere erhöht oder verringert die Aktions-Informationserzeugungseinheit 2023 den von der Zustandsinformationserfassungseinheit 201 empfangenen Winkel θ innerhalb des in 5 dargestellten Suchbereichs in einem Zustand, in dem die Koeffizienten a1 , a2 und b0 der Übertragungsfunktion VFF(z) in Ausdruck 4 fest sind und der von der Zustandsinformationserfassungseinheit 201 empfangene Radius r unter Einstellung des Nullpunktes von z im Zähler (z2+b1'z+b2') als re, um beispielsweise den Nullpunkt in Polarkoordinaten zu suchen. Darüber hinaus werden z als Nullpunkt und die konjugierte komplexe Zahl davon z* mit Hilfe des festen Radius z und des vergrößerten oder verkleinerten Winkels θ eingestellt und neue Koeffizienten b1' und b2' werden auf der Grundlage des Nullpunkts berechnet.
  • Wenn der Zustand S durch Erhöhen oder Verringern des Winkels θ und Neueinstellung der Koeffizienten b1' und b2' der Übertragungsfunktion VFF(z) des IIR-Filters 1092 in den Zustand S' übergeht und im Gegenzug eine Plus-Belohnung (eine positive Belohnung) angeboten wird, kann die Aktionsinformations-Erzeugungseinheit 2023 eine Richtlinie wählen, bei der eine Aktion A', die dazu führt, dass der Wert des Positionsfehlers weiter verringert wird, beispielsweise durch Erhöhen oder Verringern des Winkels θ ähnlich der vorherigen Aktion, als die nächste Aktion A' ausgewählt wird.
  • Im Gegensatz dazu, wenn im Gegenzug eine Minus-Belohnung (eine negative Belohnung) angeboten wird, kann die Aktions-Informationserzeugungseinheit 2023 eine Richtlinie wählen, bei der eine Aktion A', die dazu führt, dass der Wert des Positionsfehlers kleiner als der vorherige Wert wird, beispielsweise durch Verringern oder Erhöhen des Winkels θ im Gegensatz zur vorherigen Aktion, als nächste Aktion A' ausgewählt wird.
  • Die Aktions-Informationserzeugungseinheit 2023 kann eine Richtlinie auswählen, bei der die Aktion A' nach einem bekannten Verfahren ausgewählt wird, wie beispielsweise einer gierigen Methode, bei der eine Aktion A' mit dem höchsten Wert Q(S,A) unter den Werten der aktuell geschätzten Aktionen A ausgewählt wird, oder einer ε-Giermethode, bei der eine Aktion A' mit einer bestimmten geringen Wahrscheinlichkeit ε zufällig ausgewählt wird und eine Aktion A' mit dem höchsten Wert Q(S,A) in anderen Fällen ausgewählt wird.
  • Bei der Suche nach dem Winkel θ wird ein idealer Winkel θ0, der den Wert des Wertes Q maximiert, durch Lernen mit Hilfe von Optimierungsaktionsinformationen (die später zu beschreiben sind) aus der Optimierungsaktionsinformationsausgabeeinheit 205 ermittelt, die Aktions-Informationserzeugungseinheit 2023 fixiert den Winkel θ auf den Winkel θ0 zur Suche nach dem Radius r im Bereich von 0≤r≤1 und setzt die Koeffizienten b1 ' und b2 ' im Zähler der Übertragungsfunktion VFF(z) des IIR-Filters 1092 ähnlich der Suche nach dem Winkel θ. Wenn die Suche nach dem Radius r fortgesetzt wird und ein idealer Radius r0 , der den Wert des Wertes Q maximiert, durch Lernen mit Hilfe der später zu beschreibenden Optimierungsaktionsinformationen aus der Optimierungsaktionsinformationsausgabeeinheit 205 bestimmt wird, bestimmt die Aktions-Informationserzeugungseinheit 2023 die optimalen Koeffizienten b1 ' und b2 ' im Zähler. Danach werden, wie vorstehend beschrieben, die optimalen Werte der Koeffizienten im Zähler der Übertragungsfunktion VFF(z) durch Lernen des Koeffizienten b0 gelernt.
  • Danach sucht die Aktions-Informationserzeugungseinheit 2023 die Koeffizienten der Übertragungsfunktion bezogen auf den Zähler der Übertragungsfunktion VFF(z) auf Basis des Radius r und des Winkels θ, die den Pol in Polarkoordinaten wie oben beschrieben darstellen. Das Lernen stellt den Radius r und den Winkel θ ein, die den Pol in Polarkoordinaten darstellen, durch Verstärkungslernen ähnlich wie im Zähler der Übertragungsfunktion VFF(z) des IIR-Filters 1092. In diesem Fall wird der Radius r nach dem Erlernen des Winkels θ ähnlich wie im Zähler der Übertragungsfunktion VFF(z) gelernt. Da ein Lernverfahren dem Fall der Suche nach dem Nullpunkt der Übertragungsfunktion VFF(z) ähnlich ist, entfällt die detaillierte Beschreibung derselben.
  • Die Aktionsinformationsausgabeeinheit 203 ist eine Einheit, die die Aktionsinformation A, die von der Lerneinheit 202 ausgegeben wird, an die Servosteuervorrichtung 100 überträgt. Wie vorstehend beschrieben, korrigiert die Servosteuervorrichtung 100 den aktuellen Zustand S (d.h. den aktuell eingestellten Radius r und Winkel θ, die den Nullpunkt der Übertragungsfunktion VFF(z) des IIR-Filters 1092 in Polarkoordinaten darstellen) auf der Grundlage der Aktionsinformationen fein, um dadurch in den nächsten Zustand S' überzugehen (d.h. die Koeffizienten b1 ' und b2 ' der Übertragungsfunktion VFF(z) des IIR-Filters 1092 entsprechend dem korrigierten Nullpunkt).
  • Die Wertfunktionsspeichereinheit 204 ist eine Speichervorrichtung, die die Wertfunktion Q speichert. Die Wertfunktion Q kann als Tabelle (im Folgenden als Aktionswerttabelle bezeichnet) für jeden Sättigungs-Satz und jede Aktion A gespeichert werden, zum Beispiel. Die in der Wertefunktion Speichereinheit 204 gespeicherte Wertefunktion Q wird durch die Wertefunktion Aktualisierungseinheit 2022 aktualisiert. Darüber hinaus kann die in der Wertfunktionsspeichereinheit 204 gespeicherte Wertefunktion Q mit anderen Maschinenlernvorrichtungen 200 geteilt werden. Wenn die Wertfunktion Q von einer Vielzahl von Maschinenlernvorrichtungen 200 gemeinsam genutzt wird, da das Verstärkungslernen in den jeweiligen Maschinenlernvorrichtungen 200 verteilt durchgeführt werden kann, ist es möglich, die Effizienz des Verstärkungslernens zu verbessern.
  • Die Optimierungsaktions-Informationsausgabeeinheit 205 erzeugt die Aktionsinformation A (nachfolgend „Optimierungsaktions-Information“ genannt), die bewirkt, dass die Geschwindigkeits-Vorschub-Berechnungseinheit 109 einen Vorgang zur Maximierung des Wertes Q(S,A) basierend auf der Wertfunktion Q durchführt, die von der Wertfunktionsaktualisierungseinheit 2022 aktualisiert wird, die das Q-Lernen durchführt. Genauer gesagt, erwirbt die Informationsausgabeeinheit 205 der Optimierungsaktion die in der Wertfunktionsspeichereinheit 204 gespeicherte Wertfunktion Q. Wie vorstehend beschrieben, wird die Wertefunktion Q durch die Wertefunktion Aktualisierungseinheit 2022 aktualisiert, die das Q-Lernen durchführt. Die Optimierungsaktions-Informationsausgabeeinheit 205 erzeugt die Aktionsinformationen auf Basis der Wertfunktion Q und gibt die erzeugten Aktionsinformationen an die Servosteuervorrichtung 100 (den IIR-Filter 1092 der Geschwindigkeits-Vorschub-Berechnungseinheit 109) aus. Die Optimierungsaktionsinformationen umfassen Informationen, die die Koeffizienten der Übertragungsfunktion VFF(z) des IIR-Filters 1092 korrigieren, indem sie den Winkel θ, den Radius r und den Koeffizienten b0 ähnlich den Aktionsinformationen lernen, die die Aktionsinformationsausgabeeinheit 203 im Prozess des Q-Lernens ausgibt.
  • In der Servosteuervorrichtung 100 werden die Koeffizienten der Übertragungsfunktion bezogen auf den Zähler der Übertragungsfunktion VFF(z) des IIR-Filters 1092 auf der Grundlage der Aktionsinformationen korrigiert, die auf dem Winkel θ, dem Radius r und dem Koeffizienten b0 basieren. Nach der Optimierung der Koeffizienten im Zähler der Übertragungsfunktion VFF(z) des IIR-Filters 1092 wird mit den oben beschriebenen Operationen durchgeführt, die Maschinenlernvorrichtung 200 führt eine Optimierung der Koeffizienten im Nenner der Übertragungsfunktion VFF(z) des IIR-Filters 1092 durch, indem sie den Winkel θ und den Radius r ähnlich der Optimierung lernt. Danach kann die Maschinenlernvorrichtung 200 ähnlich wie beim Lernen und der Optimierung der Koeffizienten der Übertragungsfunktion VFF(z) des IIR-Filters 1092 das Lernen und die Optimierung der Koeffizienten der Übertragungsfunktion PFF(z) des IIR-Filters 1102 durch Lernen des Winkels θ, des Radius r und des Koeffizienten d0 durchführen und so arbeiten, dass der Positionsfehlerwert reduziert wird. Wie vorstehend beschrieben, ist es durch die Verwendung der Maschinenlernvorrichtung 200 nach der vorliegenden Erfindung möglich, die Einstellung der Parameter der Geschwindigkeits-Vorschub-Berechnungseinheit 109 und der Positions-Vorschub-Berechnungseinheit 110 der Servosteuervorrichtung 100 zu vereinfachen.
  • Im Folgenden werden die Funktionsblöcke der Servosteuerung 100 und der Maschinenlernvorrichtung 200 beschrieben. Um diese Funktionsblöcke zu realisieren, umfassen die Servosteuervorrichtung 100 und die Maschinenlernvorrichtung 200 jeweils eine arithmetische Verarbeitungseinheit wie beispielsweise eine zentrale Recheneinheit (CPU). Die Servosteuervorrichtung 100 und die Maschinenlernvorrichtung 200 umfassen jeweils weiterhin eine Hilfsspeichervorrichtung, wie beispielsweise eine Festplatte (HDD), die verschiedene Steuerprogramme, wie Anwendungssoftware oder ein Betriebssystem (OS), speichert, und eine Hauptspeichervorrichtung, wie beispielsweise einen Arbeitsspeicher (RAM), um Daten zu speichern, die vorübergehend benötigt werden, wenn die arithmetische Verarbeitungsvorrichtung ein Programm ausführt.
  • In jeder der Servosteuervorrichtungen 100 und der Maschinenlernvorrichtung 200 liest die arithmetische Verarbeitungsvorrichtung eine Anwendung oder ein Betriebssystem aus der Hilfsspeichervorrichtung und setzt die Lese-Anwendungssoftware und das Betriebssystem in der Hauptspeichervorrichtung ein, um eine arithmetische Verarbeitung basierend auf der Lese-Anwendungssoftware oder dem Betriebssystem durchzuführen. Die arithmetische Verarbeitungsvorrichtung steuert auch verschiedene Arten von Hardware, die in jeder Vorrichtung bereitgestellt werden, basierend auf dem arithmetischen Ergebnis. Auf diese Weise werden die Funktionsblöcke der vorliegenden Ausführungsform realisiert. Das heißt, die vorliegende Ausführungsform kann durch die Zusammenarbeit von Hard- und Software realisiert werden.
  • Da die Maschinenlernvorrichtung 200 eine große Menge an Berechnungen im Zusammenhang mit dem Maschinenlernen umfasst, können Grafikverarbeitungseinheiten (GPUs) auf einem Personalcomputer montiert und für die arithmetische Verarbeitung im Zusammenhang mit dem Maschinenlernen unter Verwendung einer Technik verwendet werden, die als General Purpose Computing on Graphic Processing Units (GPGPUs) bezeichnet wird. Auf diese Weise kann eine Hochgeschwindigkeitsverarbeitung durchgeführt werden. Darüber hinaus kann die Maschinenlernvorrichtung 200 zur Durchführung einer schnelleren Verarbeitung einen Computercluster aus einer Vielzahl von mit solchen GPUs ausgestatteten Computern aufbauen und eine Parallelverarbeitung mit der Vielzahl von im Computercluster enthaltenen Computern durchführen.
  • Anschließend wird ein Betrieb der Maschinenlernvorrichtung 200 während des Q-Lernens gemäß der vorliegenden Ausführungsform mit Bezug auf die Flussdiagramme von 7 beschrieben. Das Flussdiagramm von 7 ist ein Flussdiagramm, das sich auf das Erlernen des Winkels θ, des Radius r und des Koeffizienten b0 bezieht, um die Koeffizienten b0 bis b2 in Bezug auf die Übertragungsfunktion im Zähler der Übertragungsfunktion VFF(z) des IIR-Filters 1092 der Geschwindigkeits-Vorschub-Berechnungseinheit 109 zu bestimmen. Obwohl das folgende Flussdiagramm das Erlernen des Winkels θ, des Radius r und des Koeffizienten b0 beschreibt, die den Nullpunkt der Übertragungsfunktion VFF(z) zum Bestimmen der Koeffizienten b0 bis b2 bezogen auf die Übertragungsfunktion im Zähler der Übertragungsfunktion VFF(z) des IIR-Filters 1092 der Geschwindigkeits-Vorschub-Berechnungseinheit 109 in Polarkoordinaten als Beispiel darstellen, das Lernen des Winkels θ und des Radius r, die den Pol zum Bestimmen der Koeffizienten a1 und a2 bezogen auf die Übertragungsfunktion im Nenner in Polarkoordinaten darstellen, kann nach einem ähnlichen Flussdiagramm durchgeführt werden. Da das Flussdiagramm des Erlernens des Winkels θ, des Radius r und des Koeffizienten d0 , die den Nullpunkt und den Pol der Übertragungsfunktion PFF(z) zum Bestimmen der Koeffizienten c1 , c2 und d0 bis d2 der Übertragungsfunktion PFF(z) des IIR-Filters 1102 der anschließend in Polarkoordinaten durchgeführten Positions-Vorschub-Berechnungseinheit 110 ähnlich dem in 7 dargestellten Flussdiagramm darstellen, entfällt deren Beschreibung.
  • In Schritt S11 erfasst die Zustandsinformationserfassungseinheit 201 die Zustandsinformationen S von der Servosteuervorrichtung 100. Die erfassten Zustandsinformationen S werden an die Wertefunktionsaktualisierungseinheit 2022 und die Aktions-Informationserzeugungseinheit 2023 ausgegeben. Wie vorstehend beschrieben, ist die Zustandsinformation S eine Information, die dem Zustand des Q-Lernens entspricht und die Koeffizienten a1 , a2 und b0 bis b2 der Übertragungsfunktion VFF(z) des IIR-Filters 1091 zum Zeitpunkt von Schritt S11 umfasst. Die Zustandsinformation S0 zu einem Anfangszeitpunkt, zu dem das Lernen beginnt, ist ein Anfangseinstellwert, und der Koeffizient b0 bezogen auf den Zähler der Übertragungsfunktion VFF(z) des IIR-Filters 1092 und die Koeffizienten a1 und a2 bezogen auf den Nenner werden auf feste Werte gesetzt. Auf diese Weise wird ein Positionsfehler, der PD(S) entsprechend einer vorgegebenen Vorschubgeschwindigkeit und einer Bearbeitungsform eines Kreises eingestellt ist, wenn die Koeffizienten a1 , a2 und b0 bis b2 der Übertragungsfunktion VFF(z) des IIR-Filters 1092 auf Anfangswerte eingestellt sind, erfasst.
  • Der Positionsfehlerwert PD(S0 ) im Zustand S0 wird vom Subtrahierer 102 zu einem Zeitpunkt erhalten, zu dem das Q-Lernen zunächst durch Betätigen der Servosteuervorrichtung 100 gemäß einem lernenden Bearbeitungsprogramm beginnt. Die Positionsbefehlserstellungseinheit 101 gibt Positionsbefehle nacheinander gemäß einer vorgegebenen Bearbeitungsform (beispielsweise einer Bearbeitungsform eines Achtecks) aus, die vom Bearbeitungsprogramm festgelegt wurde. So wird beispielsweise ein Positionsbefehlswert entsprechend der Bearbeitungsform eines Achtecks von der Positionsbefehlserstellungseinheit 101 ausgegeben und der Positionsbefehlswert an den Subtrahierer 102, die Geschwindigkeits-Vorschub-Berechnungseinheit 109, die Positions-Vorschub-Berechnungseinheit 110 und die Maschinenlernvorrichtung 200 ausgegeben. Der Subtrahierer 102 gibt eine Differenz zwischen dem Positions-Sollwert und der vom Integrator 108 ausgegebenen Erfassungsposition an den Positionen A1 und A3 und den Positionen B1 und B3 der Bearbeitungsform an die Maschinen-Lernvorrichtung 200 als Positionsfehler PD(S0) aus. In der Maschinenlernvorrichtung 200 kann die Differenz zwischen dem Positions-Sollwert und der vom Integrator 108 ausgegebenen Erfassungsposition an den Positionen A1 und A3 und den Positionen B1 und B3 der Bearbeitungsform als Positionsfehler PD(S0) extrahiert werden.
  • In Schritt S12 erzeugt die Aktions-Informationserzeugungseinheit 2023 neue Aktionsinformationen A in der Reihenfolge des Winkels θ, des Radius r und des Koeffizienten b0 auf Basis des Radius r und des Winkels θ, die wie vorstehend beschrieben den Nullpunkt in Polarkoordinaten darstellen und gibt die erzeugten neuen Aktionsinformationen A über die Aktionsinformationsausgabeeinheit 203 an die Servosteuervorrichtung 100 aus. Die Aktions-Informationserzeugungseinheit 2023 gibt die neuen Aktionsinformationen A auf der Grundlage der oben beschriebenen Richtlinie aus. Die Servosteuervorrichtung 100, die die Aktionsinformation A empfangen hat, treibt eine Werkzeugmaschine mit dem Servomotor 300 gemäß dem Zustand S' an, der durch Korrigieren der Koeffizienten b1 ' und b2 ' der Übertragungsfunktion VFF(z) des dem aktuellen Zustand S zugeordneten IIR-Filters 1092 auf der Grundlage der empfangenen Aktionsinformation erhalten wird. Wie vorstehend beschrieben, entspricht die Aktionsinformation der Aktion A im Q-Lernen.
  • In Schritt S13 erfasst die Zustandsinformationserfassungseinheit 201 den Positionsfehler PD(S') im neuen Zustand S' und die Koeffizienten b1 ' und b2 ' der Übertragungsfunktion VFF(z) des IIR-Filters 1092 vom Subtrahierer 102. Auf diese Weise erfasst die Zustandsinformationserfassungseinheit 201 den Positionsfehlersatz PD(S') entsprechend der Bearbeitungsform eines Achtecks (insbesondere die Positionen A1 und A3 und die Positionen B1 und B3 der Bearbeitungsform) entsprechend den Koeffizienten der Übertragungsfunktion VFF(z) im Zustand S'. Die erfassten Zustandsinformationen werden an die Belohnungsausgabeeinheit 2021 ausgegeben.
  • In Schritt S14 bestimmt die Belohnungsausgabeeinheit 2021 eine Größenbeziehung zwischen dem Positionsfehlerwert f(PD(S') im Zustand S' und dem Positionsfehlerwert f(PD(S)) im Zustand S und setzt die Belohnung in Schritt S15 auf einen negativen Wert, wenn f(PD(S'))>f(PD(S)). Wenn f(PD(S'))<f(PD(S)), setzt die Belohnungsausgabeeinheit 2021 die Belohnung in Schritt S16 auf einen positiven Wert. Wenn f(PD(S'))=f(PD(S)), setzt die Belohnungsausgabeeinheit 2021 die Belohnung in Schritt S17 auf Null. Die Belohnungsausgabeeinheit 2021 kann eine Gewichtung der negativen und positiven Belohnungswerte vornehmen.
  • Wenn einer der Schritte S15, S16 und S17 endet, aktualisiert die Wertfunktion-Aktualisierungseinheit 2022 die in der Speichereinheit 204 gespeicherte Wertfunktion Q auf der Grundlage des Wertes der in einem der Schritte in Schritt S18 berechneten Vergütung. Obwohl die Online-Updates in Schritt S18 beispielhaft dargestellt sind, können anstelle der Online-Updates auch Batch-Updates oder Mini-Batch-Updates durchgeführt werden. Anschließend kehrt der Fluss zu Schritt S11 zurück, wenn in Schritt S19 bestimmt wird, dass das Lernen des Winkels θ nicht beendet ist, und der Fluss geht zu Schritt S20 über, wenn das Lernen beendet ist. Anschließend kehrt die Strömung zu Schritt S11 zurück, wenn in Schritt S20 bestimmt wird, dass das Lernen des Radius r nicht beendet ist und die Strömung zu Schritt S21 übergeht, wenn das Lernen beendet ist. Anschließend kehrt der Fluss zu Schritt S11 zurück, wenn in Schritt S21 bestimmt wird, dass das Lernen des Koeffizienten b0 nicht beendet ist und der Fluss endet, wenn das Lernen beendet ist. Danach kehrt der Fluss wieder zu Schritt S11 zurück und die oben beschriebenen Prozesse der Schritte S11 bis S21 werden wiederholt, wobei sich die Wertfunktion Q auf einen entsprechenden Wert einstellt. Das Erlernen des Winkels θ, des Radius r und des Koeffizienten kann unter der Bedingung enden, dass die oben beschriebenen Prozesse für eine vorbestimmte Anzahl von Malen oder einen vorbestimmten Zeitraum wiederholt werden.
  • Aufgrund der in Bezug auf 7 und dergleichen beschriebenen Funktionsweise bietet die in der vorliegenden Ausführungsform als Beispiel beschriebene Maschineniernvorrichtung 200 Vorteile, dass es möglich ist, die zur Optimierung der Koeffizienten der Übertragungsfunktionen der IIR-Filter 1092 und 1102 erforderliche Lernzeit weiter zu verkürzen, indem die Werte des Radius r und des Winkels θ, die den Nullpunkt und den Pol der Übertragungsfunktionen der IIR-Filter 1092 und 1102 in Polarkoordinaten darstellen, gesucht und innerhalb eines vorgegebenen Bereichs gelernt werden. Als nächstes wird ein Vorgang während der Erzeugung der Optimierungsaktionsinformationen durch die Optimierungsaktionsinformationsausgabeeinheit 205 mit Bezug auf das Flussdiagramm von 8 beschrieben. Zunächst erfasst die Informationsausgabeeinheit 205 der Optimierungsaktion in Schritt S31 die in der Speichereinheit 204 gespeicherte Wertfunktion Q. Wie vorstehend beschrieben, wird die Wertefunktion Q durch die Wertefunktion Aktualisierungseinheit 2022 aktualisiert, die das Q-Lernen durchführt.
  • In Schritt S32 erzeugt die Ausgabeeinheit 205 die Optimierungsaktionsinformationen auf Basis der Wertfunktion Q und gibt die erzeugten Optimierungsaktionsinformationen an den IIR-Filter 1092 der Servosteuervorrichtung 100 aus. Mit den oben beschriebenen Operationen optimiert die Maschinenlernvorrichtung 200 den Winkel θ, den Radius r und den Koeffizienten b0 , die den Nullpunkt zum Bestimmen der Koeffizienten im Zähler der Übertragungsfunktion VFF(z) des IIR-Filters 1092 in Polarkoordinaten darstellen, und optimiert dann den Winkel θ und den Radius r, die den Pol zum Bestimmen der Koeffizienten a1 und a2 bezogen auf die Übertragungsfunktion im Nenner in Polarkoordinaten darstellen. Mit ähnlichen Operationen führt die Maschinenlernvorrichtung 200 ein Lernen in Bezug auf den Winkel θ und den Radius r durch, die den Nullpunkt und den Pol der Übertragungsfunktion PFF(z) in Polarkoordinaten darstellen, und führt ein Lernen und eine Optimierung in Bezug auf den Koeffizienten d0 durch, um die Koeffizienten c1 , c2 und d0 bis d2 der Übertragungsfunktion PFF(z) des IIR-Filters 1102 zu bestimmen.
  • In der vorliegenden Ausführungsform kann die Maschinenlernvorrichtung 200 aufgrund der mit Bezug auf 8 beschriebenen Vorgänge die Optimierungsaktionsinformationen auf der Grundlage der durch Lernen erhaltenen Wertfunktion Q erzeugen, und die Servosteuervorrichtung 100 kann die Einstellung der aktuell eingestellten Koeffizienten a1 , a2 und b0 bis b2 der Übertragungsfunktion VFF(z) des IIR-Filters 1092 erleichtern und den Positionsfehlerwert auf der Grundlage der Optimierungsaktionsinformationen reduzieren. Darüber hinaus kann der Positionsfehlerwert weiter reduziert werden, wenn die Koeffizienten des Geschwindigkeits-Vorschubs auf die Anfangswerte für größere Dimensionen eingestellt sind und die Maschinenlernvorrichtung 200 das Lernen durchführt. Was die Einstellung der Koeffizienten c1 , c2 und d0 bis d2 der Übertragungsfunktion PFF(z) des IIR-Filters 1102 betrifft, so kann der Positionsfehlerwert ähnlich wie bei der Einstellung der Koeffizienten a1 , a2 und b0 bis b2 der Übertragungsfunktion VFF(z) des IIR-Filters 1092 reduziert werden.
  • In der vorliegenden Ausführungsform berechnete die Belohnungsausgabeeinheit 2021 den Belohnungswert durch Vergleich des Auswertefunktionswertes f(PD(S)) des Positionsfehlers im Zustand S, der auf der Grundlage der vorgegebenen Auswertefunktion f(PD(S)) unter Verwendung des Positionsfehlers PD(S) im Zustand S als Eingabe mit dem Auswertefunktionswert f(PD(S')) des Positionsfehlers im Zustand S', der auf der Grundlage der Auswertefunktion f(PD(S')) unter Verwendung des Positionsfehlers PD(S') im Zustand S' als Eingabe berechnet wurde. Die Belohnungsausgabeeinheit 2021 kann jedoch bei der Berechnung des Belohnungswertes ein anderes Element als den Positionsfehler hinzufügen. So kann beispielsweise die Maschinenlernvorrichtung 200 wenigstens einen von einem positions-Vorschubgesteuerten Geschwindigkeitsbefehl, der von dem Addierer 104 ausgegeben wird, einer Differenz zwischen einer Geschwindigkeitsrückführung und einem positions-Vorschubgesteuerten Geschwindigkeitsbefehl und einem positions-Vorschubgesteuerten Drehmomentbefehl, der von dem Addierer 107 ausgegeben wird, zusätzlich zu dem vom Subtrahierer 102 ausgegebenen Positionsfehler hinzufügen.
  • Darüber hinaus kann entweder die Positions-Vorschub-Berechnungseinheit oder die Geschwindigkeits-Vorschub-Berechnungseinheit als Vorschub-Berechnungseinheit vorgesehen werden. In diesem Fall, wenn nur die Positions-Vorschub-Berechnungseinheit vorgesehen ist, sind beispielsweise der Doppeldifferenzierer 1091, der IIR-Filter 1092 und der Addierer 107 nicht erforderlich. Die Servosteuereinheit der vorstehend beschriebenen Servosteuervorrichtung und die in der Maschinenlernvorrichtung enthaltenen Komponenten können durch Hardware, Software oder eine Kombination derselben realisiert werden. Das Servosteuerverfahren, das durch Zusammenwirken der in der vorstehend beschriebenen Servosteuerungsvorrichtung enthaltenen Komponenten durchgeführt wird, kann auch durch Hardware, Software oder eine Kombination davon realisiert werden. Hier bedeutet die Realisierung durch Software, dass sie erfolgt, wenn ein Computer ein Programm liest und ausführt.
  • Die Programme können auf verschiedenen Arten von nicht-flüchtigen, computerlesbaren Medien gespeichert und einem Computer zur Verfügung gestellt werden. Die nicht-flüchtigen, computerlesbaren Medien umfassen verschiedene Arten von materiellen Speichermedien. Beispiele für nicht-flüchtige computerlesbare Medien sind ein magnetisches Aufzeichnungsmedium (beispielsweise eine flexible Platte und ein Festplattenlaufwerk), ein magneto-optisches Aufzeichnungsmedium (beispielsweise eine magneto-optische Platte), eine CD-ROM (Read Only Memory), eine CD-R, eine CD-R, eine CD-R/W, ein Halbleiterspeicher (beispielsweise ein Masken-ROM, ein PROM (Programmable ROM), ein EPROM (Erasable PROM), ein Flash-ROM und ein RAM (Random Access Memory). Darüber hinaus können die Programme über verschiedene Arten von vorübergehenden, computerlesbaren Medien an einen Computer geliefert werden.
  • Die oben beschriebene Ausführungsform ist eine bevorzugte Ausführungsform der vorliegenden Erfindung. Der Umfang der vorliegenden Erfindung beschränkt sich jedoch nicht nur auf die Ausführungsform, sondern die vorliegende Erfindung kann in verschiedenen Modifikationen dargestellt werden, ohne vom Geist der vorliegenden Erfindung abzuweichen.
  • <Modifikation, bei der die Servosteuervorrichtung die Maschinenlernvorrichtung umfasst>
  • Obwohl die Maschinenlernvorrichtung 200 in den oben beschriebenen Ausführungsformen als von der Servosteuervorrichtung 100 getrennte Vorrichtung konfiguriert ist, können einige oder alle Funktionen der Maschinenlernvorrichtung 200 durch die Servosteuervorrichtung 100 realisiert werden.
  • <Freiheit in der Systemkonfiguration>
  • 9 ist ein Blockdiagramm, das eine Steuervorrichtung gemäß einer anderen Ausführungsform der vorliegenden Erfindung darstellt. Wie in 9 dargestellt, umfasst eine Steuervorrichtung 10A n Servosteuervorrichtungen 100-1 bis 100-n (n ist eine natürliche Zahl von 2 oder mehr), n Maschinenlernvorrichtungen 200-1 bis 200-n und ein Netzwerk 500. n ist eine frei wählbare natürliche Zahl. Jedes der n Servosteuervorrichtungen 100-1 bis 100-n entspricht der in 1 dargestellten Servosteuervorrichtung 100. Jede der n Maschinenlernvorrichtungen 200-1 bis 200-n entspricht der in 1 dargestellten Maschinenlernvorrichtung 200.
  • Dabei sind die Servosteuerung 100-1 und die Maschinenlernvorrichtung 200-1 im Eins-zu-Eins-Verhältnis gekoppelt und kommunikativ verbunden. Die Servosteuervorrichtung 100-2 bis 100-n und die Maschinenlernvorrichtungen 200-2 bis 200-n sind in ähnlicher Weise mit der Servosteuervorrichtung 100-1 und der Maschinenlernvorrichtung 200-1 verbunden. Obwohl die n Paare der Servosteuervorrichtungen 100-1 bis 100-n und der Maschinenlernvorrichtung 200-1 bis 200-n über das Netzwerk 500 in 9 verbunden sind, können die n Paare der Servosteuervorrichtungen 100-1 bis 100-n und der Maschinenlernvorrichtungen 200-1 bis 200-n jeweils direkt über Verbindungsschnittstellen verbunden werden. Eine Vielzahl von n Paaren der Servosteuervorrichtungen 100-1 bis 100-n und der Maschinenlernvorrichtungen 200-1 bis 200-n können beispielsweise in derselben Anlage vorgesehen sein oder in verschiedenen Anlagen vorgesehen sein.
  • Das Netzwerk 500 ist beispielsweise ein lokales Netzwerk (LAN), das in einer Anlage, dem Internet, einem öffentlichen Telefonnetz oder einer Kombination davon aufgebaut ist. Das spezifische Kommunikationsschema des Netzwerks 500 sowie die Frage, ob das Netzwerk eine Kabelverbindung oder eine drahtlose Verbindung und dergleichen verwendet, sind nicht besonders eingeschränkt.
  • In der in 9 dargestellten Steuervorrichtung können zwar die Maschinenlernvorrichtungen 200-1 bis 200-n und die Servosteuervorrichtungen 100-1 bis 100-n als Eins-zu-Eins-Korrespondenz kommunizierbar verbunden sein, aber eine Maschinenlernvorrichtung 200-1 kann über das Netzwerk 500 mit einer Vielzahl von Servosteuervorrichtungen 100-1 bis 100-m (m<n oder m=n) kommunizierbar verbunden sein und ein Maschinenlernen der Servosteuervorrichtungen 100-1 bis 100-m durchführen. In diesem Fall kann ein verteiltes Verarbeitungssystem eingesetzt werden, bei dem die jeweiligen Funktionen der Maschinenlernvorrichtung 200-1 gegebenenfalls auf eine Vielzahl von Servern verteilt sind. Die Funktionen der Maschinenlernvorrichtung 200-1 können durch die Verwendung einer virtuellen Serverfunktion oder dergleichen in einer Cloud realisiert werden. Wenn es eine Vielzahl von Maschinenlernvorrichtungen 200-1 bis 200-n gibt, die jeweils einer Vielzahl von Servosteuerungsvorrichtungen 100-1 bis 100-n mit dem gleichen Typennamen, der gleichen Spezifikation oder der gleichen Serie entsprechen, können die Maschinenlernvorrichtungen 200-1 bis 200-n konfiguriert werden, um die Lernergebnisse in den Maschinenlernvorrichtungen 200-1 bis 200-n zu teilen. Auf diese Weise kann ein weiteres optimales Modell erstellt werden.
  • Obwohl in der Ausführungsform der vorliegenden Erfindung der Fall, in dem die Übertragungsfunktionen der IIR-Filter 1092 und 1102 quadratische Funktionen sind, als Beispiel beschrieben wurde, ist die Übertragungsfunktion nicht auf die quadratische Funktion beschränkt, wie vorstehend in der Ausführungsform beschrieben. Die Übertragungsfunktion kann eine kubische Funktion oder eine Funktion höherer Ordnung sein.
  • Bezugszeichenliste
  • 10, 10A:
    Steuervorrichtung
    100:
    Servosteuervorrichtung
    101:
    Positionsbefehlserstellungseinheit
    102:
    Subtrahierer
    103:
    Positionssteuereinheit
    104:
    Addierer
    105:
    Subtrahierer
    106:
    Geschwindigkeitssteuereinheit
    107:
    Addierer
    108:
    Integrator
    109:
    Geschwindigkeits-Vorschub-Berechnungseinheit
    110:
    Positions-Vorschub-Berechnungseinheit
    200:
    Maschinenlernvorrichtung
    201:
    Zustandsinformationserfassungseinheit
    202:
    Lerneinheit
    203:
    Aktionsinformationsausgabeeinheit
    204:
    Wertfunktionsspeichereinheit
    205:
    Optimierungsaktionsinformationsausgabeeinheit
    300:
    Servomotor
    400:
    Steuerziel
    500:
    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 200323785 [0003]

Claims (15)

  1. Maschinenlernvorrichtung (200), die konfiguriert ist, um Maschinenlernen im Zusammenhang mit Optimierung der Koeffizienten einer Übertragungsfunktion eines IIR-Filters (1092, 1102) in Bezug auf eine Servosteuervorrichtung (100) durchzuführen, die konfiguriert ist, um einen Servomotor (300) zu steuern, der konfiguriert ist, um eine Achse einer Werkzeugmaschine, eines Roboters oder einer Industriemaschine mittels einer Vorschub-Steuerung anzutreiben, die eine Vorschub-Berechnungseinheit (109, 110) mit dem IIR-Filter (1092, 1102) aufweist, wobei die Maschinenlernvorrichtung einen Nullpunkt darstellt, an dem die Übertragungsfunktion des IIR-Filters (1092, 1102) gleich Null ist, und einen Pol darstellt, an dem die Übertragungsfunktion in Polarkoordinaten unter Verwendung von jeweils einem Radius r und einem Winkel θ nach unendlich divergiert, und den Radius r und den Winkel θ innerhalb eines vorbestimmten Suchbereichs sucht und lernt, um dadurch die Optimierung der Koeffizienten der Übertragungsfunktion des IIR-Filters (1092, 1102) durchzuführen.
  2. Maschinenlernvorrichtung (200) nach Anspruch 1, wobei der Suchbereich des Radius r auf der Grundlage eines Dämpfungsfaktors definiert wird, und der Suchbereich des Winkels θ auf der Grundlage einer Schwingungsunterdrückungsfrequenz definiert wird.
  3. Maschinenlernvorrichtung (200) nach Anspruch 1 oder 2, wobei die Suche nach dem Nullpunkt vor der Suche nach dem Pol durchgeführt wird.
  4. Maschinenlernvorrichtung (200) nach einem der Ansprüche 1 bis 3, wobei der Pol bei der Suche nach dem Nullpunkt fixiert wird.
  5. Maschinenlernvorrichtung (200) nach einem der Ansprüche 1 bis 4, wobei die Suche nach dem Winkel θ vor der Suche nach dem Radius r durchgeführt wird.
  6. Maschinenlernvorrichtung (200) nach einem der Ansprüche 1 bis 5, wobei der Radius r bei der Suche nach dem Winkel θ auf einen festen Wert festgelegt wird.
  7. Maschinenlernvorrichtung (200) nach einem der Ansprüche 1 bis 6, wobei der Nullpunkt durch eine komplexe Zahl und eine konjugierte komplexe Zahl davon dargestellt wird.
  8. Maschinenlernvorrichtung nach einem der Ansprüche 1 bis 7, wobei die Vorschub-Berechnungseinheit eine Geschwindigkeits-Vorschub-Berechnungseinheit oder eine Positionsvorsteuerberechnungseinheit ist.
  9. Maschinenlernvorrichtung (200) nach einem der Ansprüche 1 bis 8, wobei die Vorschub-Berechnungseinheit eine Geschwindigkeits-Vorschub-Berechnungseinheit ist, die Maschinenlernvorrichtung des Weiteren eine Positions-Vorschub-Berechnungseinheit mit einem IIR-Filter (1092, 1102) umfasst, und die Optimierung der Übertragungsfunktion des IIR-Filters (1092, 1102) der Geschwindigkeits-Vorschub-Berechnungseinheit vor der Optimierung der Übertragungsfunktion des IIR-Filters (1092, 1102) der Positions-Vorschub-Berechnungseinheit durchgeführt wird.
  10. Maschinenlernvorrichtung (200) nach einem der Ansprüche 1 bis 9, des Weiteren umfassend: eine Zustandsinformationserfassungseinheit (201), die konfiguriert ist, um von der Servosteuervorrichtung (100) Zustandsinformationen zu erfassen, die einen Servozustand mit wenigstens einem Positionsfehler und einer Übertragungsfunktion der Vorschub-Berechnungseinheit umfassen, indem sie bewirkt, dass die Servosteuervorrichtung (100) ein vorgegebenes Bearbeitungsprogramm ausführt; eine Aktionsinformationsausgabeeinheit (203), die konfiguriert ist, um Aktionsinformationen auszugeben, einschließlich Einstellinformationen der Koeffizienten der Übertragungsfunktion, die in den Zustandsinformationen an die Servosteuervorrichtung (100) enthalten sind; eine Belohnungsausgabeeinheit (2021), die konfiguriert ist, um einen Wert einer Belohnung für Verstärkungslernen basierend auf dem in den Zustandsinformationen enthaltenen Positionsfehler auszugeben; und eine Wertfunktions-Aktualisierungseinheit (2022), die konfiguriert ist, um eine Aktionswertfunktion auf der Grundlage des Wertes der von der Belohnungsausgabeeinheit (2021) ausgegebenen Belohnung, der Zustandsinformationen und der Aktionsinformationen zu aktualisieren.
  11. Maschinenlernvorrichtung (200) nach Anspruch 10, wobei die Belohnungsausgabeeinheit (2021) den Wert der Belohnung auf der Grundlage eines Absolutwertes des Positionsfehlers ausgibt.
  12. Maschinenlernvorrichtung (200) nach Anspruch 10 oder 11, des Weiteren umfassend: eine Optimierungsaktions-Informationsausgabeeinheit, die konfiguriert ist, um Korrekturinformationen der Koeffizienten der Übertragungsfunktion der Vorschub-Berechnungseinheit auf der Grundlage der von der Aktualisierungseinheit der Wertfunktion aktualisierten Wertfunktion zu erzeugen und auszugeben.
  13. Steuervorrichtung, umfassend: die Maschinenlernvorrichtung (200) nach einem der Ansprüche 1 bis 12; und eine Servosteuervorrichtung (100), die konfiguriert ist, um einen Servomotor (300) zu steuern, der konfiguriert ist, um eine Achse einer Werkzeugmaschine, eines Roboters oder einer Industriemaschine unter Verwendung einer Vorschub-Steuerung durch eine Vorschub-Berechnungseinheit mit einem IIR-Filter (1092, 1102) anzutreiben.
  14. Steuervorrichtung nach Anspruch 13, wobei die Maschinenlernvorrichtung (200) in der Servosteuervorrichtung (100) enthalten ist.
  15. Maschinenlernverfahren einer Maschinenlernvorrichtung (200), die konfiguriert ist, um Maschinenlernen in Bezug auf die Optimierung von Koeffizienten einer Übertragungsfunktion eines IIR-Filters (1092, 1102) in Bezug auf eine Servosteuervorrichtung (100) durchzuführen, die konfiguriert ist, um einen Servomotor (300) zu steuern, der konfiguriert ist, um eine Achse einer Werkzeugmaschine, eines Roboters oder einer Industriemaschine mit einer Vorschub-Steuerung anzutreiben,die den IIR-Filter (1092, 1102) aufweist, wobei das Maschinenlernverfahren das Darstellen eines Nullpunktes, an dem die Übertragungsfunktion des IIR-Filters (1092, 1102) gleich Null ist, und eines Pols, an dem die Übertragungsfunktion in Polarkoordinaten unter Verwendung eines Radius r und eines Winkels θ gegen unendlich divergiert, und das Suchen und Lernen des Radius r und des Winkels θ innerhalb eines vorbestimmten Suchbereichs, um dadurch die Optimierung der Koeffizienten der Übertragungsfunktion des IIR-Filters (1092, 1102) durchzuführen.
DE102019210397.9A 2018-07-17 2019-07-15 Maschinenlernvorrichtung, Steuervorrichtung und Maschinenlernverfahren Pending DE102019210397A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-134352 2018-07-17
JP2018134352A JP6740290B2 (ja) 2018-07-17 2018-07-17 機械学習装置、制御装置、及び機械学習方法

Publications (1)

Publication Number Publication Date
DE102019210397A1 true DE102019210397A1 (de) 2020-03-12

Family

ID=69163028

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019210397.9A Pending DE102019210397A1 (de) 2018-07-17 2019-07-15 Maschinenlernvorrichtung, Steuervorrichtung und Maschinenlernverfahren

Country Status (4)

Country Link
US (1) US10901374B2 (de)
JP (1) JP6740290B2 (de)
CN (1) CN110727242B (de)
DE (1) DE102019210397A1 (de)

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002003256A1 (en) * 2000-07-05 2002-01-10 Camo, Inc. Method and system for the dynamic analysis of data
JP2003023785A (ja) * 2001-07-05 2003-01-24 Matsushita Electric Ind Co Ltd サーボモータの制御装置及び制御方法
JP2005327191A (ja) * 2004-05-17 2005-11-24 Fanuc Ltd サーボ制御装置
JP5279299B2 (ja) * 2008-02-29 2013-09-04 キヤノン株式会社 反復学習制御回路を備える位置制御装置、露光装置及びデバイス製造方法
CN101954638B (zh) * 2010-10-18 2012-01-04 湖南大学 高压输电线路除冰机器人自主抓线控制方法
KR101402486B1 (ko) * 2010-10-27 2014-06-03 미쓰비시덴키 가부시키가이샤 전동기 제어 장치
JP6430144B2 (ja) * 2014-05-13 2018-11-28 キヤノンメディカルシステムズ株式会社 心電波形検出装置、心電波形検出方法、心電波形検出プログラム、及び撮像装置
JP5897645B2 (ja) * 2014-06-05 2016-03-30 ファナック株式会社 機械先端点のたわみを低減するサーボ制御装置
US20170089043A1 (en) * 2015-09-25 2017-03-30 Caterpillar Inc. Online system identification for controlling a machine
JP6325504B2 (ja) * 2015-10-28 2018-05-16 ファナック株式会社 学習制御器の自動調整を行う機能を有するサーボ制御装置
JP6604198B2 (ja) * 2015-12-25 2019-11-13 株式会社ジェイテクト モータ制御装置
CN105690392B (zh) * 2016-04-14 2017-11-28 苏州大学 基于行动者‑评论家方法的机器人运动控制方法和装置
JP2017199077A (ja) * 2016-04-25 2017-11-02 ファナック株式会社 複数台の産業機械を有する生産システムの動作を最適化するセルコントローラ
JP6457472B2 (ja) * 2016-12-14 2019-01-23 ファナック株式会社 制御システム及び機械学習装置
US10334454B2 (en) * 2017-05-11 2019-06-25 Intel Corporation Multi-finger beamforming and array pattern synthesis
CN107505914B (zh) * 2017-07-20 2020-01-14 西安交通大学 一种考虑滚珠丝杠进给系统高阶动态特性的高精运动控制方法
US11630425B2 (en) * 2017-09-08 2023-04-18 Mitsubishi Electric Corporation Servo control device

Also Published As

Publication number Publication date
US10901374B2 (en) 2021-01-26
CN110727242B (zh) 2021-04-09
JP2020013268A (ja) 2020-01-23
CN110727242A (zh) 2020-01-24
US20200026248A1 (en) 2020-01-23
JP6740290B2 (ja) 2020-08-12

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
DE102019200080A1 (de) Vorrichtung für maschinelles Lernen, Servomotor-Steuereinrichtung, Servomotor-Steuersystem und Verfahren für maschinelles Lernen
DE102019204861B4 (de) Maschinenlernvorrichtung; steuervorrichtung und maschinelles lernverfahren
DE102018209951A1 (de) Maschinenlerngerät, servosteuergerät, servosteuersystem und maschinenlernverfahren
DE102019204949A1 (de) Maschinelle lernvorrichtung, steuervorrichtung und maschinelles lernverfahren
DE102019201758A1 (de) Vorrichtung für maschinelles lernen; vorrichtung zurservosteuerung; system zur servosteuerung; undverfahren für maschinelles lernen
DE102018203956B4 (de) Maschinelle Lernvorrichtung, Servosteuerungsvorrichtung, Servosteuerungssystem und maschinelles Lernverfahren
DE102012104194B4 (de) Roboter und Punktschweissroboter mit lernender Steuerungsfunktion
DE102018205015B4 (de) Einstellvorrichtung und Einstellverfahren
DE102019216081A1 (de) Ausgabevorrichtung, Steuervorrichtung und Verfahren zum Ausgeben eines Lernparameters
DE102018003769B4 (de) Vorrichtung für maschinelles Lernen, Servosteuersystem und Verfahren zum maschinellen Lernen
DE102018204740A1 (de) Aktionsinformationslernvorrichtung, Robotersteuersystem und Aktionsinformationslernverfahren
DE102018200794B4 (de) Aktionsinformations-lernvorrichtung, aktionsinformations-optimierungssystem und aktionsinformations-lernprogramm
DE102019217130A1 (de) Ausgabevorrichtung, steuervorrichtung und verfahren zum ausgeben von bewertungsfunktionen und maschinellen lernergebnissen
DE102020203758A1 (de) Maschinenlernvorrichtung, steuervorrichtung und verfahren zummaschinenlernen
DE102019212814A1 (de) Vorrichtung für maschinelles Lernen, Steuersystem und Verfahren für maschinelles Lernen
DE102019209104A1 (de) Ausgabevorrichtung, Steuervorrichtung und Ausgabeverfahren für einen Bewertungsfunktionswert
DE102020204854A1 (de) Vorrichtung für maschinelles Lernen, numerisches Steuersystem undVerfahren für maschinelles Lernen
DE102019202701A1 (de) Einstelleinrichtung und Einstellverfahren
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
DE102020201613A1 (de) Vorrichtung für maschinelles Lernen, Steuervorrichtung und Verfahren zum Festlegen eines Suchbereichs für maschinelles Lernen
DE102020200635A1 (de) Maschinenlernsystem, Steuervorrichtung und Maschinenlernverfahren für das Optimieren von Filterkoeffizienten
DE102019216190A1 (de) Ausgabevorrichtung, Steuervorrichtung und Verfahren zum Ausgeben eines Bewertungsfunktionswerts

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication