(57)【要約】【課題】装置について異常が検知された場合であっても、装置が正常な動作をするように制御する制御装置、制御方法及び制御プログラムを提供する。【解決手段】制御装置１０は、装置２０の状態を示す時系列データを取得する取得部１１ａと、時系列データに基づいて、装置２０の第１異常度を算出する算出部１３ａと、時系列データを状態として、第１異常度が低い場合に高くなる報酬を最大化するように、装置２０の制御量を行動として選択する強化学習モデル１５ａを含む学習部１５と、強化学習モデル１５ａの出力に基づいて、装置２０を制御する制御部１７ａと、を備える。【選択図】図１
2020098538.tif 000002
【特許請求の範囲】
【請求項１】
装置の状態を示す時系列データを取得する取得部と、
前記時系列データに基づいて、前記装置の第１異常度を算出する算出部と、
前記時系列データを状態として、前記第１異常度が低い場合に高くなる報酬を最大化するように、前記装置の制御量を行動として選択する強化学習モデルを含む学習部と、
前記強化学習モデルの出力に基づいて、前記装置を制御する制御部と、
を備える制御装置。
【請求項２】
前記学習部は、前記第１異常度が閾値以上である場合に、実測された前記時系列データを用いて、前記強化学習モデルを学習させ、
前記制御部は、前記学習部による前記強化学習モデルの学習と並行して、前記強化学習モデルの出力に基づいて、前記装置を制御する、
請求項１に記載の制御装置。
【請求項３】
前記学習部は、前記装置の物理モデルを用いて前記強化学習モデルの事前学習を行う、
請求項１又は２に記載の制御装置。
【請求項４】
前記算出部は、前記時系列データが分布する空間において、前記時系列データに含まれる１つのデータを他のデータから隔離するために必要とされる空間分割の回数に基づいて前記第１異常度を算出する、
請求項１から３のいずれか一項に記載の制御装置。
【請求項５】
前記算出部は、前記時系列データ及び前記制御量に基づいて第２異常度を算出し、
前記強化学習モデルは、前記時系列データ及び前記第２異常度を状態として、前記第１異常度が低い場合に高くなる報酬を最大化するように、前記制御量を行動として選択する、
請求項１から４のいずれか一項に記載の制御装置。
【請求項６】
前記第２異常度に基づいて、前記第１異常度を小さくするように前記装置を制御していることを示す情報を出力する出力部をさらに備える、
請求項５に記載の制御装置。
【請求項７】
前記強化学習モデルは、
前記状態を離散化した値を行又は列の一方とし、前記行動を離散化した値を前記行又は前記列の他方として、前記状態及び前記行動に対する評価値をまとめたテーブルを記憶し、
前記状態が測定された場合に、前記評価値を最大化するように、前記行動を選択する、
請求項１から６のいずれか一項に記載の制御装置。
【請求項８】
前記強化学習モデルは、
所定の確率でランダムに前記行動を選択する、
請求項７に記載の制御装置。
【請求項９】
装置の状態を示す時系列データを取得することと、
前記時系列データに基づいて、前記装置の異常度を算出することと、
前記時系列データを状態として、前記異常度が低い場合に高くなる報酬を最大化するように、前記装置の制御量を行動として選択する強化学習モデルを含むことと、
前記強化学習モデルの出力に基づいて、前記装置を制御することと、
を含む制御方法。
【請求項１０】
制御装置が備える演算部を、
装置の状態を示す時系列データを取得する取得部、
前記時系列データに基づいて、前記装置の異常度を算出する算出部、
前記時系列データを状態として、前記異常度が低い場合に高くなる報酬を最大化するように、前記装置の制御量を行動として選択する強化学習モデルを含む学習部、及び
前記強化学習モデルの出力に基づいて、前記装置を制御する制御部、
として機能させる制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、制御方法及び制御プログラムに関する。
【背景技術】
【０００２】
従来、工作機械やロボット等の装置を制御する場合に、装置に何らかの異常が生じたことを検知して、装置を停止させて点検や修理を行うことがある。
【０００３】
下記特許文献１には、複数のセンサからデータを取得し、データ間の類似度とそのデータの異常の有無に基づいて、学習データへのデータの追加や削除を行うことにより、学習データを生成・更新し、生成・更新した学習データを部分空間法でモデル化し、あらたに取得した観測データと、学習データに含まれる個々のデータを、局所部分空間法を含む部分空間法でモデル化した部分空間との距離関係に基づいて、観測データの異常を検知する異常検知方法が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１９１５５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載の技術を用いることで、装置の異常を検知することができる。しかしながら、このような技術を用いても、異常を検知した場合に装置を停止させて点検や修理を行わなければならない。そのため、例えば、装置が設置されている生産ラインを停止させる必要が生じてしまう。
【０００６】
装置の異常が検知された場合であっても、ただちに修理が必要となる場合ばかりでなく、適切に制御することでしばらくの間使用を続けることができることもある。そのため、装置について異常が検知された場合に、装置を停止させても差し支えないタイミングになるまで装置の使用を継続したいことがある。
【０００７】
そこで、本発明は、装置について異常が検知された場合であっても、装置が正常な動作をするように制御する制御装置、制御方法及び制御プログラムを提供する。
【課題を解決するための手段】
【０００８】
本発明の一態様に係る制御装置は、装置の状態を示す時系列データを取得する取得部と、時系列データに基づいて、装置の第１異常度を算出する算出部と、時系列データを状態として、第１異常度が低い場合に高くなる報酬を最大化するように、装置の制御量を行動として選択する強化学習モデルを含む学習部と、強化学習モデルの出力に基づいて、装置を制御する制御部と、を備える。
【０００９】
この態様によれば、異常度が低い場合に高くなる報酬を最大化するように装置を制御することで、装置について異常が検知された場合であっても、装置が正常な動作をするように制御することができる。
【００１０】
上記態様において、学習部は、第１異常度が閾値以上である場合に、実測された時系列データを用いて、強化学習モデルを学習させ、制御部は、学習部による強化学習モデルの学習と並行して、強化学習モデルの出力に基づいて、装置を制御してもよい。
【００１１】
この態様によれば、装置の制御を継続しながら強化学習モデルの学習を行って、異常が検知された装置が徐々に正常な動作をするように制御することができる。
【００１２】
上記態様において、学習部は、装置の物理モデルを用いて強化学習モデルの事前学習を行ってもよい。
【００１３】
この態様によれば、実測された時系列データを用いて強化学習モデルを学習させなくても、制御装置によって装置を制御することができるようになる。
【００１４】
上記態様において、算出部は、時系列データが分布する空間において、時系列データに含まれる１つのデータを他のデータから隔離するために必要とされる空間分割の回数に基づいて第１異常度を算出してもよい。
【００１５】
この態様によれば、外れ値を効率的に検出することができ、演算負荷を抑えながら装置の異常を検知できる。
【００１６】
上記態様において、算出部は、時系列データ及び制御量に基づいて第２異常度を算出し、強化学習モデルは、時系列データ及び第２異常度を状態として、第１異常度が低い場合に高くなる報酬を最大化するように、制御量を行動として選択してもよい。
【００１７】
この態様によれば、装置が正常な動作をするように異常を矯正して制御していることを第２異常度の変化として検出することができる。
【００１８】
上記態様において、第２異常度に基づいて、第１異常度を小さくするように装置を制御していることを示す情報を出力する出力部をさらに備えてもよい。
【００１９】
この態様によれば、装置が正常な動作をするように異常を矯正して制御していることをユーザに知らせることができる。
【００２０】
上記態様において、強化学習モデルは、状態を離散化した値を行又は列の一方とし、行動を離散化した値を行又は列の他方として、状態及び行動に対する評価値をまとめたテーブルを記憶し、状態が測定された場合に、評価値を最大化するように、行動を選択してもよい。
【００２１】
この態様によれば、装置について異常が検知された場合であっても、比較的低い演算負荷で装置が正常な動作をするように制御することができる。
【００２２】
上記態様において、強化学習モデルは、所定の確率でランダムに行動を選択してもよい。
【００２３】
この態様によれば、局所最適な制御にとどまらず、全体最適な装置の制御ができるように、制御量を探索することができる。
【００２４】
本発明の他の態様に係る制御方法は、装置の状態を示す時系列データを取得することと、時系列データに基づいて、装置の異常度を算出することと、時系列データを状態として、異常度が低い場合に高くなる報酬を最大化するように、装置の制御量を行動として選択する強化学習モデルを含むことと、強化学習モデルの出力に基づいて、装置を制御することと、を含む。
【００２５】
この態様によれば、異常度が低い場合に高くなる報酬を最大化するように装置を制御することで、装置について異常が検知された場合であっても、装置が正常な動作をするように制御することができる。
【００２６】
本発明の他の態様に係る制御プログラムは、制御装置が備える演算部を、装置の状態を示す時系列データを取得する取得部、時系列データに基づいて、装置の異常度を算出する算出部、時系列データを状態として、異常度が低い場合に高くなる報酬を最大化するように、装置の制御量を行動として選択する強化学習モデルを含む学習部、及び強化学習モデルの出力に基づいて、装置を制御する制御部、として機能させる。
【００２７】
この態様によれば、異常度が低い場合に高くなる報酬を最大化するように装置を制御することで、装置について異常が検知された場合であっても、装置が正常な動作をするように制御することができる。
【発明の効果】
【００２８】
本発明によれば、装置について異常が検知された場合であっても、装置が正常な動作をするように制御する制御装置、制御方法及び制御プログラムを提供することができる。
【図面の簡単な説明】
【００２９】
【図１】本発明の実施形態に係る制御装置により制御される装置の概要を示す図である。
【図２】本実施形態に係る制御装置の構成を示す図である。
【図３】本実施形態に係る制御装置により参照される評価値テーブルの一例を示す図である。
【図４】本実施形態に係る制御装置により実行される制御処理のフローチャートである。
【図５】本実施形態に係る制御装置により実行される学習処理のフローチャートである。
【発明を実施するための形態】
【００３０】
添付図面を参照して、本発明の実施形態について説明する。なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する。
【００３１】
図１は、本発明の実施形態に係る制御装置１０により制御される装置の概要を示す図である。本実施形態では、制御装置１０により制御される装置はボールねじ２０である。ボールねじ２０は、制御装置１０により制御される装置の一例である。制御装置１０により制御される装置は、任意の工作機械やロボットであってよい。
【００３２】
制御装置１０は、ボールねじ２０を駆動させるモータ２１のトルクを制御する。ボールねじ２０は、モータ２１を回転させてテーブル２２を直線運動させる装置である。本例では、制御装置１０は、ボールねじ２０のモータ２１のトルクＴと、テーブル２２の速度ｖとを測定した時系列データを取得する。トルクＴ及び速度ｖは、ボールねじ２０の状態を示す時系列データの一例である。
【００３３】
図２は、本実施形態に係る制御装置１０の構成を示す図である。制御装置１０は、コントローラ通信部１１、時系列データ格納部１２、異常監視部１３、入出力部１４、学習部１５、設定情報入力部１６、制御プログラム実行部１７及び制御プログラム格納部１８を備える。
【００３４】
コントローラ通信部１１は、通信インターフェースにより構成され、制御対象の装置との間でデータの送受信を行う。本実施形態では、コントローラ通信部１１は、ボールねじ２０との間でデータの送受信を行う。コントローラ通信部１１は、取得部１１ａを含む。取得部１１ａは、装置の状態を示す時系列データを取得する。本実施形態の場合、取得部１１ａは、ボールねじ２０のモータ２１のトルクＴを示す時系列データ及びボールねじ２０のテーブル２２の速度ｖを示す時系列データを取得する。
【００３５】
時系列データ格納部１２は、記憶部により構成され、装置の状態を示す時系列データを格納する。時系列データ格納部１２は、任意の記憶媒体で構成されてよく、例えば半導体記憶素子で構成されてよい。
【００３６】
異常監視部１３は、演算部により構成され、装置に異常が生じていないか監視する。異常監視部１３は、算出部１３ａを含み、算出部１３ａは、時系列データに基づいて、制御対象の装置の第１異常度を算出する。本実施形態の場合、算出部１３ａは、ボールねじ２０のテーブル２２の速度ｖを示す時系列データに基づいて、ボールねじ２０の第１異常度を算出する。算出部１３ａは、時系列データが分布する空間において、時系列データに含まれる１つのデータを他のデータから隔離するために必要とされる空間分割の回数に基づいて第１異常度を算出してよい。算出部１３ａは、Fei Tony Liu, Kai Ming Ting, and Zhi-Hua Zhou, "Isolation Forest", [online], インターネット<URL:https://cs.nju.edu.cn/zhouzh/zhouzh.files/publication/icdm08b.pdf>に開示されている技術を用いて、時系列データに含まれる１つのデータを他のデータから隔離するために必要とされる空間分割の回数に基づいて第１異常度を算出してよい。このような手法を用いることで、外れ値を効率的に検出することができ、演算負荷を抑えながら装置の異常を検知できる。
【００３７】
入出力部１４は、キーボードやタッチパネル等で構成される入力部と、液晶表示装置やブザー等で構成される出力部とにより構成される。入出力部１４は、制御装置１０の設定に関する入力を受け付ける。また、入出力部１４は、異常監視部１３により装置の異常が検知された場合に、警報を出力する。
【００３８】
学習部１５は、演算部により構成され、強化学習モデル１５ａの学習処理を行う。強化学習モデル１５ａは、時系列データを状態として、第１異常度が低い場合に高くなる報酬を最大化するように、装置の制御量を行動として選択する。本実施形態の場合、強化学習モデル１５ａは、ボールねじ２０のテーブル２２が正常な速度ｖで動作するように、ボールねじ２０のトルクＴの制御量を選択する。
【００３９】
設定情報入力部１６は、キーボードやタッチパネルにより構成され、学習部１５による強化学習モデル１５ａの学習に関する設定情報や、異常監視部１３により警報を出力するための第１異常度に関する閾値の設定情報の入力を受け付ける。
【００４０】
制御プログラム実行部１７は、演算部により構成され、制御装置１０によって装置を制御するためのプログラムを実行する。制御プログラム実行部１７は、制御部１７ａを含み、制御部１７ａは、強化学習モデル１５ａの出力に基づいて、装置を制御する。本実施形態の場合、制御部１７ａは、強化学習モデル１５ａの出力に基づいて、ボールねじ２０のモータ２１のトルクＴを制御する。
【００４１】
制御プログラム格納部１８は、記憶部により構成され、制御装置１０によって装置を制御するためのプログラムを格納する。
【００４２】
本実施形態に係る制御装置１０によれば、異常度が低い場合に高くなる報酬を最大化するように装置を制御することで、装置について異常が検知された場合であっても、装置が正常な動作をするように制御することができる。
【００４３】
学習部１５は、第１異常度が閾値以上である場合に、実測された時系列データを用いて、強化学習モデル１５ａを学習させ、制御部１７ａは、学習部１５による強化学習モデル１５ａの学習と並行して、強化学習モデル１５ａの出力に基づいて、装置を制御してよい。例えば、第１異常度が０〜１の数値である場合、閾値を０．５として、学習部１５は、第１異常度が０．５以上である場合に、実測された時系列データを用いて、強化学習モデル１５ａを学習させてよい。これにより、装置の制御を継続しながら強化学習モデル１５ａの学習を行って、異常が検知された装置が徐々に正常な動作をするように制御することができる。
【００４４】
学習部１５は、装置の物理モデルを用いて強化学習モデル１５ａの事前学習を行ってよい。装置の物理モデルは、設定情報入力部１６により入力されてよい。装置の物理モデルを用いて強化学習モデル１５ａの事前学習を行うことで、実測された時系列データを用いて強化学習モデル１５ａを学習させなくても、制御装置１０によって装置を制御することができるようになる。
【００４５】
算出部１３ａは、時系列データ及び制御量に基づいて第２異常度を算出し、強化学習モデル１５ａは、時系列データ及び第２異常度を状態として、第１異常度が低い場合に高くなる報酬を最大化するように、制御量を行動として選択してよい。本実施形態の場合、算出部１３ａは、テーブル２２の速度ｖを示す時系列データ及びモータ２１のトルクＴの時系列データに基づいて第２異常度を算出し、強化学習モデル１５ａは、テーブル２２の速度ｖを示す時系列データ及びモータ２１のトルクＴの時系列データを状態として、第１異常度が低い場合に高くなる報酬を最大化するように、モータ２１のトルクＴを行動として選択してよい。ここで、第２異常度の算出は、時系列データ及び制御量が分布する空間において、時系列データ及び制御量に含まれる１つのデータを他のデータから隔離するために必要とされる空間分割の回数に基づいて算出してよい。このようにして算出される第２異常度は、テーブル２２の速度ｖが外れ値を含む場合のみならず、モータ２１のトルクＴが外れ値を含む場合に大きな値となる。そのため、装置が正常な動作をするように異常を矯正して制御していることを第２異常度の変化として検出することができる。
【００４６】
入出力部１４は、第２異常度に基づいて、第１異常度を小さくするように装置を制御していることを示す情報を出力してよい。入出力部１４は、例えば、第１異常度を小さくするように装置を制御していることを示すテキストを液晶表示装置に表示したり、第１異常度を小さくするように装置を制御していることを示す音をブザーにより出力したりしてよい。このようにして、装置が正常な動作をするように異常を矯正して制御していることをユーザに知らせることができる。
【００４７】
制御装置１０の算出部１３ａは、テーブル２２の速度の絶対値の最大値を時系列データとして、時系列データが分布する空間において、時系列データに含まれる１つのデータを他のデータから隔離するために必要とされる空間分割の回数に基づいて第１異常度を算出してよい。ボールねじ２０が正常に動作している場合、テーブル２２の速度の絶対値の最大値は、ほとんど同じ値となる。しかし、ボールねじ２０の部品が摩耗する等して異常な動作をする場合、テーブル２２の速度の絶対値の最大値が、外れ値をとるようになる。第１異常度によって、このような外れ値が検出される。
【００４８】
制御装置１０が正常に動作している場合、テーブル２２の速度の絶対値の最大値は、ほとんど一定で推移する。しかし、ボールねじ２０の部品が摩耗する等して異常な動作をする場合、テーブル２２の速度の絶対値の最大値が徐々に増加することがある。制御装置１０は、テーブル２２の速度の絶対値の最大値が閾値未満の場合に正常、テーブル２２の速度の絶対値の最大値が閾値以上の場合に以上と判定してよい。
【００４９】
図３は、本実施形態に係る制御装置１０により参照される評価値テーブルＴ１の一例を示す図である。評価値テーブルＴ１は、状態を離散化した値を行又は列の一方とし、行動を離散化した値を行又は列の他方として、状態及び行動に対する評価値をまとめたテーブルの一例である。強化学習モデル１５ａは、状態が測定された場合に、評価値を最大化するように、行動を選択する。
【００５０】
本例の評価値テーブルＴ１は、状態を離散化した値を行とし、行動を離散化した値を列として、状態及び行動に対する評価値をまとめたテーブルである。具体的には、評価値テーブルＴ１の第１行には「Vel[-inf, -10]」及び「Score[0, 0.3]」と記載され、テーブル２２の速度（Vel）が−１０以下かつ第１異常度（Score）が０〜０．３である状態を表している。同様に、評価値テーブルＴ１の第２行には「Vel[-10, 0]」及び「Score[0, 0.3]」と記載され、テーブル２２の速度（Vel）が−１０〜０かつ第１異常度（Score）が０〜０．３である状態を表している。また、評価値テーブルＴ１の最終行には「Vel[10, inf]」及び「Score[0.6, 1.0]」と記載され、テーブル２２の速度（Vel）が１０以上かつ第１異常度（Score）が０．６〜１．０である状態を表している。本例では、テーブル２２の速度と、第１異常度とをそれぞれ６通りの値をとるように離散化しており、ボールねじ２０が合計で３６通りの状態をとるものとして取り扱っている。そのため、本例では、最終行は第３６行となっている。
【００５１】
一方、評価値テーブルＴ１の第１列には「Trq[0, 10]」と記載され、モータ２１のトルク（Trq）を０〜１０とする行動を表している。同様に、評価値テーブルＴ１の第２列には「Trq[10, 20]」と記載され、モータ２１のトルク（Trq）を１０〜２０とする行動を表している。また、評価値テーブルＴ１の最終列には「Trq[50, 60]」と記載され、モータ２１のトルク（Trq）を５０〜６０とする行動を表している。本例では、モータ２１のトルクを６通りの値をとるように離散化しており、強化学習モデル１５ａによって６通りの行動のうちいずれかを選択するものとして取り扱っている。そのため、本例では、最終列は第６列となっている。
【００５２】
強化学習モデル１５ａは、状態が測定された場合に、評価値を最大化するように、行動を選択する。例えば、状態として「Vel[-inf, -10]」及び「Score[0, 0.3]」が測定された場合、評価値テーブルＴ１の第１行のうち、評価値が最大となる行動を選択する。評価値テーブルＴ１の第１行の評価値は、行動として「Trq[0, 10]」を選択する場合０．６２であり、行動として「Trq[10, 20]」を選択する場合０．８３であり、行動として「Trq[50, 60]」を選択する場合０．４である。そのため、評価値が０．８３より大きい行動が無い場合、強化学習モデル１５ａは、行動として「Trq[10, 20]」を選択する。この場合、制御装置１０は、１０〜２０の平均値を採用し、モータ２１のトルクを１５とするように、ボールねじ２０を制御してよい。
【００５３】
制御装置１０の学習部１５は、Ｑ（ｓt，ａt）new←Ｑ（ｓt，ａt）old＋α［（ｒt+1＋γ ｍａｘaＱ（ｓt+1，ａt+1））−Ｑ（ｓt，ａt）old］により評価値テーブルＴ１を更新してよい。ここで、Ｑは評価値であり、ｓtは時間ｔにおける状態であり、ａtは時間ｔにおける行動であり、αは学習率であり、ｒtは時間ｔにおける報酬であり、γは割引率である。
【００５４】
また、学習部１５は、第１異常度が閾値以下となる場合の報酬を正とし、第１異常度が閾値より大きい場合の報酬を負として、報酬を更新してよい。より具体的には、学習部１５は、第１異常度が閾値以下となる場合の報酬を１とし、第１異常度が閾値より大きい場合の報酬を−１×（［第１異常度］−０．５）×１００として、報酬を更新してよい。ここで、第１異常度は０〜１の値をとるものとする。
【００５５】
このように、本実施形態に係る制御装置１０によれば、装置について異常が検知された場合であっても、比較的低い演算負荷で装置が正常な動作をするように制御することができる。
【００５６】
また、強化学習モデル１５ａは、所定の確率でランダムに行動を選択してもよい。所定の確率をεと表すとき、強化学習モデル１５ａは、１−εの確率で評価値テーブルＴ１に従った行動選択を行い、εの確率でランダムに行動を選択してよい。これにより、局所最適な制御にとどまらず、全体最適な装置の制御ができるように、制御量を探索することができる。
【００５７】
図４は、本実施形態に係る制御装置１０により実行される制御処理のフローチャートである。はじめに、制御装置１０は、装置の物理モデルを作成する（Ｓ１０）。なお、制御装置１０は、外部から装置の物理モデルの入力を受け付けてもよい。
【００５８】
制御装置１０は、物理モデルにより強化学習モデルの事前学習を実行する（Ｓ１１）。その後、制御装置１０は、事前学習された強化学習モデル１５ａを制御装置１０に設定する（Ｓ１２）。
【００５９】
制御装置１０は、装置の状態を示す時系列データを取得し（Ｓ１３）、測定した時系列データの第１異常度が閾値以上であるか判定する（Ｓ１４）。第１異常度が閾値以上である場合（Ｓ１４：ＹＥＳ）、制御装置１０は、事前学習した強化学習モデル１５ａで出力を算出しながら、強化学習モデル１５ａをオンライン学習して更新する（Ｓ１５）。また、制御装置１０は、第１異常度を小さくするように装置を制御していることを示す情報を出力する（Ｓ１６）。
【００６０】
一方、第１異常度が閾値以上でない場合（Ｓ１４：ＮＯ）、制御装置１０は、事前学習した強化学習モデル１５ａで出力を算出する（Ｓ１７）。
【００６１】
その後、制御装置１０は、強化学習モデル１５ａの出力に基づき、装置を制御する（Ｓ１８）。制御装置１０は、制御を終了しない場合（Ｓ１９：ＮＯ）、新たな時系列データを取得し（Ｓ１３）、強化学習モデル１５ａの出力に基づいた装置の制御を継続する。一方、制御を終了する場合（Ｓ１９：ＹＥＳ）、装置の制御を終了する適切な処置を行った後、動作を終了する。
【００６２】
図５は、本実施形態に係る制御装置１０により実行される学習処理のフローチャートである。同図では、図４の強化学習モデルの事前学習の処理（Ｓ１１）の詳細を示している。
【００６３】
はじめに、制御装置１０は、評価値テーブルを初期化する（Ｓ１１１）。その後、制御装置１０は、物理モデルにてシミュレーションした状態を表す時系列データを取得する（Ｓ１１２）。
【００６４】
制御装置１０は、時系列データに基づいて第１異常度及び第２異常度を算出し（Ｓ１１３）、評価値を用いるか否かを判定する（Ｓ１１４）。評価値を用いるか否かは、所定の確率でランダムに選択されてよい。
【００６５】
評価値を用いる場合（Ｓ１１４：ＹＥＳ）、制御装置１０は、時系列データ及び第２異常度を状態として、評価値が最大となる制御量を行動として選択する（Ｓ１１５）。一方、評価値を用いない場合（Ｓ１１４：ＮＯ）、制御装置１０は、ランダムに制御量を選択する（Ｓ１１６）。
【００６６】
その後、制御装置１０は、第１異常度が低い場合に高くなるように報酬を設定する（Ｓ１１７）。
【００６７】
データ取得を終了しない場合（Ｓ１１８：ＮＯ）、物理モデルにてシミュレーションした状態を表す時系列データを取得し（Ｓ１１２）、制御量を選択する処理を継続する。一方、データ取得を終了する場合（Ｓ１１８：ＹＥＳ）、制御装置１０は、強化学習の全エピソードが終了したか否かを判断する（Ｓ１１９）。全エピソードが終了していない場合（Ｓ１１９：ＮＯ）、制御装置１０は、物理モデルにてシミュレーションした状態を表す時系列データを取得し（Ｓ１１２）、制御量を選択する処理を継続する。一方、全エピソードが終了した場合（Ｓ１１９：ＹＥＳ）、学習処理が終了する。
【００６８】
以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態が備える各要素並びにその配置、材料、条件、形状及びサイズ等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。
【００６９】
［付記］
装置（２０）の状態を示す時系列データを取得する取得部（１１ａ）と、
前記時系列データに基づいて、前記装置（２０）の第１異常度を算出する算出部（１３ａ）と、
前記時系列データを状態として、前記第１異常度が低い場合に高くなる報酬を最大化するように、前記装置（２０）の制御量を行動として選択する強化学習モデル（１５ａ）を含む学習部（１５）と、
前記強化学習モデル（１５ａ）の出力に基づいて、前記装置（２０）を制御する制御部（１７ａ）と、
を備える制御装置（１０）。
【符号の説明】
【００７０】
１０…制御装置、１１…コントローラ通信部、１１ａ…取得部、１２…時系列データ格納部、１３…異常監視部、１３ａ…算出部、１４…入出力部、１５…学習部、１５ａ…強化学習モデル、１６…設定情報入力部、１７…制御プログラム実行部、１７ａ…制御部、１８…制御プログラム格納部、２０…ボールねじ、２１…モータ、２２…テーブル
【図１】
2020098538.tif 000003
【図２】
2020098538.tif 000004
【図３】
2020098538.tif 000005
【図４】
2020098538.tif 000006
【図５】
2020098538.tif 000007