(57)【特許請求の範囲】
【請求項１】
工作機械の主軸の交換に関連付けられる条件を学習する機械学習装置であって、
前記工作機械の連続運転中に、前記主軸を用いて加工した加工済ワークの総数を示す加工個数データ、該加工済ワークの実寸法と寸法目標値との差を示す加工精度データ、前記工作機械の運転を中断した時間を示す中断時間データ、及び前記主軸の交換の要否判定結果を示す交換判定データを、前記主軸の現在状態を表す状態変数として観測する状態観測部と、
前記加工済ワークの生産によって生じ得る単位時間当たりの利益又は損失、及び前記主軸の交換によって生じ得る単位時間当たりの損失を、損益データとして持つとともに、該損益データと前記状態変数とを用いて、前記主軸の交換に関連付けられる条件を学習する学習部と、
を備える機械学習装置。
【請求項２】
前記学習部は、複数の工作機械のそれぞれについて得られた前記状態変数及び前記損益データを用いて、該複数の工作機械のそれぞれにおける前記条件を学習する、請求項１に記載の機械学習装置。
【請求項３】
前記学習部は、
前記状態変数に基づいて前記損益データを計算することにより、前記現在状態での前記主軸の交換に関連する行動に対する報酬を求める報酬計算部と、
前記報酬を用いて、前記現在状態での前記行動の価値を表す関数を更新する関数更新部とを備え、
前記関数更新部が前記関数の更新を繰り返すことによって、前記条件を学習する、
請求項１に記載の機械学習装置。
【請求項４】
工作機械の主軸の交換の要否を判定する主軸交換判定装置であって、
請求項１〜３のいずれか１項に記載の機械学習装置と、
前記学習部による学習結果に基づいて、前記現在状態で前記主軸の交換が必要という意思と前記現在状態で前記主軸の交換が不要という意思とのいずれかを示す行動指標を出力する意思決定部とを備え、
前記状態観測部は、前記意思決定部が出力した前記行動指標に応じて変化した前記状態変数を観測し、
前記学習部は、変化した前記状態変数を用いて前記条件を学習し、
前記意思決定部は、学習した前記条件の下で前記状態変数に応じて最適化された前記行動指標を出力する、
主軸交換判定装置。
【請求項５】
前記加工済ワークの実寸法と寸法目標値との差を、前記加工済ワークの予め定めた公差と比較する比較部をさらに備え、
前記状態観測部は、前記比較部による比較結果を前記加工精度データとして観測する、請求項４に記載の主軸交換判定装置。
【請求項６】
主軸を備えた工作機械の制御装置であって、
請求項４又は５に記載の主軸交換判定装置と、
前記加工個数データ、前記加工精度データ、前記中断時間データ及び前記交換判定データを取得するデータ取得部と、
を備える制御装置。
【請求項７】
前記意思決定部が出力した前記行動指標が、前記主軸の交換が必要という意思を示す場合に、前記主軸の交換要求を報知するための信号を出力するアラーム部をさらに備える、請求項６に記載の制御装置。
【請求項８】
主軸と、
請求項４又は５に記載の主軸交換判定装置と、
を備える工作機械。
【請求項９】
主軸と、
請求項６又は７に記載の制御装置と、
を備える工作機械。
【請求項１０】
前記加工済ワークの実寸法と寸法目標値との差を測定する測定装置をさらに備える、請求項８又は９に記載の工作機械。
【請求項１１】
各々が主軸を有する複数の工作機械と、
前記複数の工作機械を互いに接続するネットワークとを備え、
前記複数の工作機械の少なくとも１つが、請求項８〜１０のいずれか１項に記載の工作機械からなる、
生産システム。
【請求項１２】
各々が主軸を有する複数の工作機械と、
請求項１〜３のいずれか１項に記載の機械学習装置と、
前記複数の工作機械と前記機械学習装置とを互いに接続するネットワークと、
を備える生産システム。
【請求項１３】
前記機械学習装置がクラウドサーバに存在する、請求項１２に記載の生産システム。
【請求項１４】
工作機械の主軸の交換に関連付けられる条件を学習する機械学習方法であって、
電算機のＣＰＵが、
前記工作機械の連続運転中に、前記主軸を用いて加工した加工済ワークの総数を示す加工個数データ、該加工済ワークの実寸法と寸法目標値との差を示す加工精度データ、前記工作機械の運転を中断した時間を示す中断時間データ、及び前記主軸の交換の要否判定結果を示す主軸交換データを、前記主軸の現在状態を表す状態変数として観測し、
前記加工済ワークの生産によって生じ得る単位時間当たりの利益又は損失、及び前記主軸の交換によって生じ得る単位時間当たりの損失を、損益データとして用意し、
前記状態変数と前記損益データとを用いて、前記主軸の交換に関連付けられる条件を学習する、
機械学習方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、主軸交換の要否を判定できる機械学習装置に関する。本発明はまた、主軸交換の要否を判定できる主軸交換判定装置に関する。本発明はまた、主軸交換の要否を判定できる制御装置に関する。本発明はまた、主軸交換の要否を判定できる工作機械に関する。本発明はまた、主軸交換の要否を判定できる生産システムに関する。本発明はまた、主軸交換の要否を判定できる機械学習方法に関する。
【背景技術】
【０００２】
工作機械（例えばマシニングセンタ、旋盤等）の主軸の動作異常（例えば振動、回転むら等）は、ワークの加工精度に直接的な影響を及ぼすので、動作異常の程度が許容範囲を超えたときには主軸を交換することが要求される。従来、主軸の動作異常の程度が許容範囲を超えたか否かの判断は、主軸の動作中に生ずる異音や振動をオペレータが感知したり、主軸を用いて加工した加工済ワークの実寸法と寸法目標値との差を測定したりすることにより、オペレータが経験則に従って行っていた。また、例えば特許文献１に記載されるように、生産機械の故障予知装置として、生産機械に設置した振動センサの検出値である振動パターンを、予め定めた正常時の基準振動パターンと比較することにより、生産機械の故障を予知する装置が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平５−０５２７１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
工作機械の主軸の動作異常の程度が許容範囲を超えたか否か、したがって主軸を交換する必要があるか否かを、振動センサの検出値のような外乱の影響を受け易い検出値に頼ることなく、正確に判定できるようにすることが望まれている。
【課題を解決するための手段】
【０００５】
本発明の一態様は、工作機械の主軸の交換に関連付けられる条件を学習する機械学習装置であって、工作機械の連続運転中に、主軸を用いて加工した加工済ワークの総数を示す加工個数データ、加工済ワークの実寸法と寸法目標値との差を示す加工精度データ、工作機械の運転を中断した時間を示す中断時間データ、及び主軸の交換の要否判定結果を示す交換判定データを、主軸の現在状態を表す状態変数として観測する状態観測部と、加工済ワークの生産によって生じ得る単位時間当たりの利益又は損失、及び主軸の交換によって生じ得る単位時間当たりの損失を、損益データとして持つとともに、損益データと状態変数とを用いて、主軸の交換に関連付けられる条件を学習する学習部と、を備える機械学習装置である。
【０００６】
本発明の他の態様は、工作機械の主軸の交換の要否を判定する主軸交換判定装置であって、上記態様に係る機械学習装置と、学習部による学習結果に基づいて、現在状態で主軸の交換が必要という意思と現在状態で主軸の交換が不要という意思とのいずれかを示す行動指標を出力する意思決定部とを備え、状態観測部は、意思決定部が出力した行動指標に応じて変化した状態変数を観測し、学習部は、変化した状態変数を用いて条件を学習し、意思決定部は、学習した条件の下で状態変数に応じて最適化された行動指標を出力する、主軸交換判定装置である。
【０００７】
本発明のさらに他の態様は、主軸を備えた工作機械の制御装置であって、上記態様に係る主軸交換判定装置と、加工個数データ、加工精度データ、中断時間データ及び交換判定データを取得するデータ取得部と、を備える制御装置である。
【０００８】
本発明のさらに他の態様は、主軸と、上記態様に係る主軸交換判定装置、又は上記態様に係る制御装置と、を備える工作機械である。
【０００９】
本発明のさらに他の態様は、各々が主軸を有する複数の工作機械と、複数の工作機械を互いに接続するネットワークとを備え、複数の工作機械の少なくとも１つが上記態様に係る工作機械からなる、生産システムである。
【００１０】
本発明のさらに他の態様は、各々が主軸を有する複数の工作機械と、上記態様に係る機械学習装置と、複数の工作機械と機械学習装置とを互いに接続するネットワークと、を備える生産システムである。
【００１１】
本発明のさらに他の態様は、工作機械の主軸の交換に関連付けられる条件を学習する機械学習方法であって、電算機のＣＰＵが、工作機械の連続運転中に、主軸を用いて加工した加工済ワークの総数を示す加工個数データ、加工済ワークの実寸法と寸法目標値との差を示す加工精度データ、工作機械の運転を中断した時間を示す中断時間データ、及び主軸の交換の要否判定結果を示す主軸交換データを、主軸の現在状態を表す状態変数として観測し、加工済ワークの生産によって生じ得る単位時間当たりの利益又は損失、及び主軸の交換によって生じ得る単位時間当たりの損失を、損益データとして用意し、状態変数と損益データとを用いて、主軸の交換に関連付けられる条件を学習する、機械学習方法である。
【発明の効果】
【００１２】
一態様に係る機械学習装置によれば、学習部の学習結果を用いることで、工作機械の主軸の動作異常の程度が許容範囲を超えたか否か、したがって主軸を交換する必要があるか否かを、振動センサの検出値のような外乱の影響を受け易い検出値に頼ることなく、正確に判定できる。
【００１３】
他の態様に係る主軸交換判定装置、制御装置、工作機械、生産システム及び機械学習方法によれば、いずれも、機械学習装置が奏する上記効果と同等の効果が奏される。
【図面の簡単な説明】
【００１４】
【図１】一実施形態による機械学習装置を示す機能ブロック図である。
【図２】他の実施形態による機械学習装置を示す機能ブロック図である。
【図３】学習部が行う学習方法の一例を示すフローチャートである。
【図４】一実施形態による主軸交換判定装置を示す機能ブロック図である。
【図５】一実施形態による制御装置を示す機能ブロック図である。
【図６】一実施形態による工作機械を示す機能ブロック図である。
【図７】一実施形態による生産システムを示す機能ブロック図である。
【図８】他の実施形態による生産システムを示す機能ブロック図である。
【発明を実施するための形態】
【００１５】
以下、添付図面を参照して本発明の実施の形態を説明する。全図面に渡り、対応する構成要素には共通の参照符号を付す。
【００１６】
図１は、一実施形態による機械学習装置１０を示す。機械学習装置１０は、工作機械（例えばマシニングセンタ、旋盤等）の主軸（図示せず）の交換に関連付けられる条件Ｃを、いわゆる機械学習により自ら学習するためのソフト（学習アルゴリズム等）及びハード（電算機のＣＰＵ（中央処理装置）等）を含むものである。機械学習装置１０が学習する条件Ｃは、連続運転中の工作機械の主軸の現在状態と、現在状態において主軸を交換するという行動又は主軸を交換しないという行動との、相関性を表すモデル構造に相当する。或いは条件Ｃは、当該モデル構造を決定する種々のパラメータに相当すると考えることもできる。なお本願では、主軸の交換は、主軸の動作異常（例えば振動、回転むら等）の程度が許容範囲を超えたときに、工作機械の連続運転を中断した上で実施される行動と定義する。この定義によれば、主軸の交換に関連付けられる条件Ｃは、主軸の動作異常の程度が許容範囲を超えた状態（つまり主軸の故障）に関連付けられる条件と言い換えることができる。また、主軸の交換が必要か否かを判定することは、主軸が実際に故障してしまう前に故障を予知することとほぼ同義と見なすことができる。
【００１７】
図１に機能ブロックで示すように、機械学習装置１０は、工作機械の連続運転中に、主軸を用いて加工した加工済ワークの個数を示す加工個数データＳ１、加工済ワークの実寸法と寸法目標値との差を示す加工精度データＳ２、工作機械の運転を中断した時間を示す中断時間データＳ３、及び主軸の交換の要否判定結果を示す交換判定データＳ４を、主軸の現在状態を表す状態変数Ｓとして観測する状態観測部１２と、加工済ワークの生産によって生じ得る単位時間当たりの利益Ｂ１又は損失Ｂ２、及び主軸の交換によって生じ得る単位時間当たりの損失Ｂ３を、損益データＢとして持つ学習部１４とを備える。学習部１４は、機械学習と総称される任意の学習アルゴリズムに従い、それ自身が持つ損益データＢと状態観測部１２が観測した状態変数Ｓとを用いて、主軸の交換に関連付けられる条件Ｃを学習する。
【００１８】
状態観測部１２は、例えば電算機のＣＰＵの一機能として構成できる。状態観測部１２が観測する状態変数Ｓのうち、加工個数データＳ１は、例えば工作機械の制御装置（図示せず）に備えられる個数カウント機能により、１つのワークに対する加工工程が終了するたびに１ずつ増加する数値データとして取得できる。従来、オペレータの経験則では、加工個数が増えるほど、主軸の動作異常の程度が高まると予測している。
【００１９】
また、加工精度データＳ２は、１つのワークに対する加工工程が終了するたびに、例えば工作機械に付設される寸法測定装置が加工済ワークの寸法を二次元又は三次元で実測することにより取得できる。加工精度データＳ２は、加工済ワークの実寸法と当該加工済ワークの予め定めた寸法目標値との差自体でもよいし、この差の寸法目標値に対する割合でもよいし、この差を異なる任意の範囲（例えば大中小の三段階の範囲）にレベル分けして表したものでもよい。また寸法公差を考慮する場合、加工済ワークの実寸法と寸法目標値との差を、当該加工済ワークの予め定めた公差と比較した結果を、数値、割合、レベル等の形式で加工精度データＳ２としてもよい。従来、オペレータの経験則では、加工精度が悪化するほど、主軸の動作異常の程度が高まっていると予測している。
【００２０】
また、中断時間データＳ３は、例えば工作機械の制御装置に設けられるタイマー機能により、連続運転中の工作機械の運転を中断するたびに取得できる。状態観測部１２は、工作機械の運転中断の要因を把握せず、全ての中断時間を、主軸の交換作業に伴って生じた中断時間と見なして観測する。つまり、中断時間の発生は主軸の交換を行ったことと同義である。従来、オペレータの経験則では、主軸の動作中に生ずる異音や振動の程度が許容範囲を超えたと判断したときに、主軸の交換を行っている。
【００２１】
また、交換判定データＳ４は、主軸の交換の要否判定を行った結果として、例えば工作機械の制御装置に設けられるアラーム機能が主軸の交換要求の報知を行っているかいないかを見極めることにより、取得できる。
【００２２】
学習部１４は、例えば電算機のＣＰＵの一機能として構成できる。学習部１４が持つ損益データＢは、状態観測部１２が観測する状態変数Ｓのデータを用いて、所定の演算を行うことにより取得することができる。損益データＢのうち、加工済ワークの生産によって生じ得る単位時間当たりの利益Ｂ１は、例えば、実寸法と寸法目標値との差が許容範囲内（例えば公差以内）となった加工済ワーク（本願で良品ワークとも称する）の、商取引で予定される１個当たりの収益Ｉと、加工精度データＳ２から得られる当該良品ワークの完成度係数（例えば実寸法と寸法目標値との差の寸法目標値に対する割合）ｆと、加工個数データＳ１から得られる単位時間当たりの加工済ワーク（良品ワーク）の個数ｎとを用いて、下記の式により求めることができる。
Ｂ１（ワーク利益）＝Ｉ×ｆ×ｎ／時間
【００２３】
また、加工済ワークの生産によって生じ得る単位時間当たりの損失Ｂ２は、例えば、実寸法と寸法目標値との差が許容範囲（例えば公差）を超えた加工済ワーク（本願で不良ワークとも称する）の、加工してしまったことによって生じる損失（不良ワークの加工費Ｐｃ及び材料費Ｍｃ）の総計と、加工個数データＳ１から得られる単位時間当たりの加工済ワーク（不良品ワーク）の個数ｎとを用いて、下記の式により求めることができる。なお不良ワークの加工費Ｐｃは、加工で消費した時間、電力、工具摩耗量等をコスト換算することで求めることができる。
Ｂ２（ワーク損失）＝（Ｐｃ＋Ｍｃ）×ｎ／時間
【００２４】
また、主軸の交換によって生じ得る単位時間当たりの損失Ｂ３は、主軸の交換費用（部品代、工賃等）Ｅｃと、主軸の交換所要時間（つまり工作機械の運転中断時間）ｈに亘り主軸を交換せずに良品ワークを生産し続けたと仮定したときの利益に相当する費用（つまりｈ×Ｉ×ｆ×ｎ）とを用いて、下記の式により求めることができる。
Ｂ３（主軸損失）＝Ｅｃ／時間＋ｈ×Ｉ×ｆ×ｎ／時間
【００２５】
学習部１４は、工作機械が連続運転で主軸を用いて多数のワークを加工する間、個々のワークについて得られる損益データＢと状態変数Ｓとを含むデータ集合に基づき、主軸の現在状態（状態変数Ｓ）と主軸の交換の要否との相関性を暗示する特徴を、当該現在状態において主軸が生み出す損益（損益データＢ）を参照しながら識別する。学習アルゴリズムの開始時には主軸の現在状態と交換要否との相関性は未知であるが、損益データＢにおける利益Ｂ１を増やす一方で損失Ｂ２又はＢ３を減らすことを目標に学習を進めるに従い、徐々に特徴を識別して相関性を解釈する。主軸の現在状態と交換要否との相関性が、ある程度信頼できる水準まで解釈されると、学習部１４が反復出力する学習結果は、損失Ｂ２又はＢ３ではなく利益Ｂ１を出すことを前提として、現在状態の主軸を次の加工開始前に交換するべきか、或いは交換せずに継続して次の加工を行うべきかという行動の選択（つまり意思決定）を行うために使用できるものとなる。つまり学習部１４は、学習アルゴリズムの進行に伴い、連続運転中の工作機械の主軸の現在状態と、当該現在状態において主軸を交換するという行動及び主軸を交換しないという行動との、相関性を表す条件Ｃを、最適解に徐々に近づけることができる。
【００２６】
上記したように、機械学習装置１０は、状態観測部１２が観測した状態変数Ｓと学習部１４が持つ損益データＢとを用いて、学習部１４が機械学習アルゴリズムに従い、主軸の交換に関連付けられる条件Ｃを学習するものである。状態変数Ｓは、加工個数データＳ１、加工精度データＳ２、中断時間データＳ３及び交換判定データＳ４といった、外乱の影響を受け難いデータで構成され、また損益データＢは、状態変数Ｓのデータを用いて所定の演算で一義的に求められる。加工精度データＳ２については、例えば寸法測定装置の能力としての加工済ワークの寸法測定精度に依存するが、それ自体高精度の加工精度データＳ２を観測できることが期待される。したがって機械学習装置１０によれば、学習部１４の学習結果を用いることで、工作機械の主軸の動作異常の程度が許容範囲を超えたか否か、したがって主軸を交換する必要があるか否かを、振動センサの検出値のような外乱の影響を受け易い検出値に頼ることなく、またオペレータの経験則に依存することなく、正確に判定できるようになる。
【００２７】
上記構成を有する機械学習装置１０は、学習部１４が、同一の機械構成を有する複数の工作機械のそれぞれについて得られた状態変数Ｓ及び損益データＢを用いて、それら工作機械に共通する条件Ｃを学習する構成とすることもできる。この構成によれば、一定時間で得られる状態変数Ｓと損益データＢとを含むデータ集合の量を増加できるので、より多様なデータ集合を入力として、条件Ｃの学習の速度や信頼性を向上させることができる。
【００２８】
上記構成を有する機械学習装置１０では、学習部１４が実行する学習アルゴリズムは特に限定されず、例えば教師あり学習、教師なし学習、強化学習、ニューラルネットワーク等の、公知の学習アルゴリズムを採用できる。図２は、学習アルゴリズムの一例として強化学習を実行する学習部１４′を備えた他の実施形態による機械学習装置１０′を示す。
【００２９】
図２に示す機械学習装置１０′では、学習部１４′は、状態変数Ｓに基づいて損益データＢを計算することにより、現在状態での主軸の交換に関連する行動に対する報酬Ｒを求める報酬計算部１６と、報酬Ｒを用いて、現在状態での上記行動の価値を表す関数Ｑを更新する関数更新部１８とを備える。学習部１４′は、関数更新部１８が関数Ｑの更新を繰り返すことによって、主軸の交換に関連付けられる条件Ｃを学習する。
【００３０】
学習部１４′が実行する強化学習のアルゴリズムの一例を説明する。この例によるアルゴリズムは、Ｑ学習（Q-learning）として知られるものであって、行動主体の状態ｓと、その状態ｓで行動主体が選択し得る行動ａとを独立変数として、状態ｓで行動ａを選択した場合の行動の価値を表す関数Ｑ（ｓ，ａ）を学習する手法である。状態ｓで価値関数Ｑが最も高くなる行動ａを選択することが最適解となる。状態ｓと行動ａとの相関性が未知の状態でＱ学習を開始し、任意の状態ｓで種々の行動ａを選択する試行錯誤を繰り返すことで、価値関数Ｑを反復して更新し、最適解に近付ける。ここで、状態ｓで行動ａを選択した結果として環境（つまり状態ｓ）が変化したときに、その変化に応じた報酬（つまり行動ａの重み付け）ｒが得られるように構成し、より高い報酬ｒが得られる行動ａを選択するように学習を誘導することで、価値関数Ｑを比較的短時間で最適解に近付けることができる。
【００３１】
価値関数Ｑの更新式は、一般に下記のように表すことができる。
【数１】
0005997330.tif 000002
【００３２】
ここで、ｓｔ及びａｔは時刻ｔにおける状態及び行動であり、行動ａｔにより状態はｓｔ＋１に変化する。ｒｔ＋１は、状態がｓｔからｓｔ＋１に変化したことで得られる報酬である。ｍａｘＱの項は、時刻ｔ＋１で最大の価値Ｑになる（と時刻ｔで考えられている）行動ａを行ったときのＱを意味する。α及びγはそれぞれ学習係数及び割引率であり、０＜α≦１、０＜γ≦１で任意設定される。
【００３３】
学習部１４′がＱ学習を実行する場合、行動主体は主軸であり、状態観測部１２が観測した状態変数Ｓは更新式の状態ｓに該当し、主軸を交換するという行動及び主軸を交換しないという行動は更新式の行動ａに該当し、報酬計算部１６が求める報酬Ｒは更新式の報酬ｒに該当する。よって関数更新部１８は、現在状態の主軸を交換するという行動の価値を表す関数Ｑ、及び現在状態の主軸を交換しないという行動の価値を表す関数Ｑを、報酬Ｒを用いたＱ学習により繰り返し更新する。
【００３４】
報酬計算部１６が求める報酬Ｒは、状態変数Ｓに基づいて計算した損益データＢをそのまま使用することができる。この場合、報酬Ｒは、状態変数Ｓで表わされる主軸の現在状態に対応して、加工済ワークの生産によって生じ得る単位時間当たりの利益Ｂ１、加工済ワークの生産によって生じ得る単位時間当たりの損失Ｂ２、及び主軸の交換によって生じ得る単位時間当たりの損失Ｂ３のうちの、いずれかの値となる。或いは、損益データＢに所定の係数を乗じた値を、報酬Ｒとすることもできる。関数更新部１８は、利益Ｂ１を正（プラス）の報酬Ｒとして扱い、損失Ｂ２及びＢ３を負（マイナス）の報酬Ｒとして扱うことができる。
【００３５】
関数更新部１８は、状態変数Ｓと損益データＢと報酬Ｒとを、関数Ｑで表される行動価値（例えば数値）と関連付けて整理した行動価値テーブルを持つことができる。この場合、関数更新部１８が関数Ｑを更新するという行為は、関数更新部１８が行動価値テーブルを更新するという行為と同義である。Ｑ学習の開始時には主軸の現在状態と交換要否との相関性は未知であるから、行動価値テーブルにおいては、種々の状態変数Ｓと対応の損益データＢ及び報酬Ｒとが、無作為に定めた行動価値の値（関数Ｑ）と関連付けた形態で用意されている。なお報酬計算部１６は、状態変数Ｓが分かれば対応の損益データＢ及び報酬Ｒを直ちに算出でき、算出した値Ｂ、Ｒが行動価値テーブルに書き込まれる。
【００３６】
損益データＢにおける利益Ｂ１を正の報酬Ｒとし、損益データＢにおける損失Ｂ２又はＢ３を負の報酬Ｒとして、Ｑ学習を進めると、より高い報酬Ｒが得られる行動を選択する方向へ学習が誘導され、選択した行動を現在状態で実行した結果として変化する環境の状態（つまり主軸の状態変数Ｓ）に応じて、現在状態で行う行動についての行動価値の値（関数Ｑ）が書き替えられて行動価値テーブルが更新される。この更新を繰り返すことにより、行動価値テーブルに表示される行動価値の値（関数Ｑ）は、損失Ｂ２又はＢ３ではなく利益Ｂ１を生み出す行動ほど大きな値となるように書き換えられる。このようにして、未知であった主軸の現在状態と交換要否との相関性が徐々に明らかになり、連続運転中の工作機械の主軸の現在状態と、当該現在状態において主軸を交換するという行動及び主軸を交換しないという行動との、相関性を表す条件Ｃが、最適解に徐々に近づけられる。
【００３７】
図３を参照して、学習部１４′が実行する上記したＱ学習のフローをさらに説明する。まずステップＵ１で、関数更新部１８は、その時点での行動価値テーブルを参照しながら、状態観測部１２が観測した状態変数Ｓが示す現在状態で行う行動として、主軸を交換する行動と主軸を交換しない行動とのいずれかを無作為に選択する。次にステップＵ２で、関数更新部１８は、状態変数Ｓから交換判定データＳ４を抽出して、現在状態の主軸が１つ前の状態のときに交換必要と判定されたものか否かを判断する。１つ前の状態で交換必要と判定されたものであった場合、関数更新部１８はステップＵ３で、並行して報酬計算部１６が求めた負の報酬Ｒ（損益データＢのうちのＢ３（主軸損失）に相当）を関数Ｑの更新式に適用し、次いでステップＵ４で、現在状態における状態変数Ｓと損益データＢと報酬Ｒと行動価値の値（更新後の関数Ｑ）を用いて行動価値テーブルを更新する。
【００３８】
ステップＵ２で現在状態の主軸が１つ前の状態のときに交換必要と判定されたものではないと判断した場合、関数更新部１８はステップＵ５で、状態変数Ｓから加工精度データＳ２を抽出して、現在状態の主軸が１つ前の状態のときに加工を開始した加工済ワークの実寸法と寸法目標値との差が良品ワークに該当するものであったか否かを判断する。良品ワークに該当するものであった場合、関数更新部１８はステップＵ６で、並行して報酬計算部１６が求めた正の報酬Ｒ（損益データＢのうちのＢ１（ワーク利益）に相当）を関数Ｑの更新式に適用し、次いでステップＵ４で、現在状態における状態変数Ｓと損益データＢと報酬Ｒと行動価値の値（更新後の関数Ｑ）を用いて行動価値テーブルを更新する。
【００３９】
ステップＵ５で現在状態の主軸が加工完了した加工済ワークが良品ワークに該当するものではないと判断した場合、関数更新部１８はステップＵ３で、並行して報酬計算部１６が求めた負の報酬Ｒ（損益データＢのうちのＢ２（ワーク損失）に相当）を関数Ｑの更新式に適用し、次いでステップＵ４で同様に行動価値テーブルを更新する。行動価値テーブルの更新が完了すると、ステップＵ１に戻って、関数更新部１８は、更新した行動価値テーブルを参照しながら、前回のステップＵ１で選択した行動により変化した状態変数Ｓが示す次の状態で行う行動を、無作為に選択する。学習部１４′は、ステップＵ１〜Ｕ６を繰り返すことで行動価値テーブルを反復して更新し、条件Ｃの学習を進行させる。
【００４０】
上記した機械学習装置１０又は１０′の構成は、電算機のＣＰＵが実行する機械学習方法として記述できる。この機械学習方法は、工作機械の主軸の交換に関連付けられる条件Ｃを学習するものであって、電算機のＣＰＵが、工作機械の連続運転中に、主軸を用いて加工した加工済ワークの総数を示す加工個数データＳ１、加工済ワークの実寸法と寸法目標値との差を示す加工精度データＳ２、工作機械の運転を中断した時間を示す中断時間データＳ３、及び主軸の交換の要否判定結果を示す主軸交換データＳ４を、主軸の現在状態を表す状態変数Ｓとして観測し、加工済ワークの生産によって生じ得る単位時間当たりの利益Ｂ１又は損失Ｂ２、及び主軸の交換によって生じ得る単位時間当たりの損失Ｂ３を、損益データＢとして用意し、状態変数Ｓと損益データＢとを用いて、主軸の交換に関連付けられる条件Ｃを学習することを特徴とする。
【００４１】
図４は、機械学習装置１０又は１０′を備えた一実施形態による主軸交換判定装置２０を示す。主軸交換判定装置２０は、工作機械（例えばマシニングセンタ、旋盤等）の主軸（図示せず）の交換に関連付けられる条件Ｃを機械学習により自ら学習するためのソフト（学習アルゴリズム等）及びハード（電算機のＣＰＵ等）に加えて、学習した条件Ｃに従い現在状態の主軸の交換が必要か否かを判定するためのソフト（判定アルゴリズム等）及びハード（電算機のＣＰＵ等）を含むものである。主軸交換判定装置２０は、１つの共通のＣＰＵが、学習アルゴリズム、判定アルゴリズム等の全てのソフトを実行する構成を有することもできる。
【００４２】
主軸交換判定装置２０は、前述した機械学習装置１０（又は１０′）と、学習部１４（又は１４′）による学習結果に基づいて、現在状態で主軸の交換が必要という意思と現在状態で主軸の交換が不要という意思とのいずれかを示す行動指標Ａを出力する意思決定部２２とを備える。
【００４３】
意思決定部２２は、例えば電算機のＣＰＵの一機能として構成できる。意思決定部２２は、機械学習装置１０（１０′）が学習した条件Ｃ（連続運転中の工作機械の主軸の現在状態と、当該現在状態において主軸を交換するという行動及び主軸を交換しないという行動との、相関性を表すデータ集合）に従い、現在状態の主軸の交換が必要か否かを任意の判定アルゴリズムに従って判定し、その判定結果を行動指標Ａとして出力する。意思決定部２２が主軸交換必要の意思を示す行動指標Ａを出力すると、それに応じて、環境の状態（主軸の状態変数Ｓのうちの中断時間データＳ３及び交換判定データＳ４）が変化する。意思決定部２２が主軸交換不要の意思を示す行動指標Ａを出力すると、それに応じて、環境の状態（主軸の状態変数Ｓのうちの加工個数データＳ１及び加工精度データＳ２）が変化する。
【００４４】
状態観測部１２は、意思決定部２２が出力した行動指標Ａに応じて変化した状態変数Ｓを観測する。学習部１４（１４′）は、変化した状態変数Ｓを用いて価値関数Ｑ（すなわち行動価値テーブル）を更新することで条件Ｃを学習する。意思決定部２２は、学習した条件Ｃの下で状態変数Ｓに応じて行動指標Ａを出力する。このサイクルを繰り返すことにより、主軸交換判定装置２０は、機械学習装置１０（１０′）による条件Ｃの学習を進め、主軸交換の要否判定の信頼性を徐々に向上させる。
【００４５】
意思決定部２２が主軸交換必要の意思を示す行動指標Ａを出力すると、環境においては主軸を実際に交換する必要性が生じる。しかし、機械学習装置１０（１０′）による条件Ｃの学習の到達度（すなわち主軸交換の要否判定の信頼性）が要求レベルに未だ達しない段階では、意思決定部２２が出力する行動指標Ａに従って主軸を交換すると無駄な損失となる恐れがある。学習途中段階でのこのような無駄な主軸交換を回避するために、例えば、意思決定部２２が主軸交換必要の意思を示す行動指標Ａを出力した場合、予め定めた時間（例えば数秒程度）が経過した後は、学習部１４（１４′）が、実際には交換されていない主軸の状態変数Ｓを交換後の状態変数Ｓに自発的に変化させるように構成できる。意思決定部２２が主軸交換必要の意思を示す行動指標Ａを出力したときには、例えば工作機械の制御装置が工作機械の連続運転を中断する制御を行なうように構成できるが、さらに、学習部１４（１４′）が主軸の状態変数Ｓを交換後の状態変数Ｓに自発的に変化させたときに、制御装置が運転中断を解除して連続運転を再開するように構成できる。なお、機械学習装置１０（１０′）による条件Ｃの学習の到達度（すなわち主軸交換の要否判定の信頼性）が要求レベルに達したか否かの判断は、学習開始後の適当な時期にオペレータが実行できる。
【００４６】
主軸交換判定装置２０が、機械学習のアルゴリズムとして前述した強化学習（特にＱ学習）を採用する場合、学習部１４′の報酬計算部１６（図２）が求めた報酬Ｒは、前述した価値関数Ｑの更新式において、状態がｓｔからｓｔ＋１に変化したことで得られる報酬ｒｔ＋１として用いられる。このとき報酬Ｒは、状態ｓ（状態変数Ｓ）の変化の要因となる行動ａが、意思決定部２２からの主軸交換必要の行動指標Ａに従うもの（つまり主軸を交換するという行動）である場合と、意思決定部２２からの主軸交換不要の行動指標Ａに従うもの（つまり主軸を交換しないという行動）である場合とのいずれに対しても、変化前の状態変数Ｓに基づき例えば前述した計算式で一義的に求めた同一の値が用いられる。すなわち報酬Ｒは、主軸の現在状態を次の状態に変化させる際に選択される２つの行動（交換する行動及び交換しない行動）の間で重みの差を付けるパラメータではなく、主軸の現在状態を次の状態に変化させる際に行う行動（交換する行動又は交換しない行動）と、主軸の次の状態をさらに次の状態に変化させる際に行う行動（交換する行動又は交換しない行動）との間で重みの差を付けるパラメータである。
【００４７】
主軸交換判定装置２０が、機械学習のアルゴリズムとして前述した強化学習（特にＱ学習）を採用する場合、意思決定部２２が行動指標Ａを出力する際に実行する判定アルゴリズムとして、例えば、ε-greedy法として知られるアルゴリズムを採用できる。ε-greedy法によれば、意思決定部２２は、主軸の現在状態を次の状態に変化させる際に選択される２つの行動（交換する行動及び交換しない行動）のうち、価値関数Ｑの値が大きい方の行動を１−εの確率で選択するとともに、価値関数Ｑの値に関わらずいずれか一方の行動を無作為にεの確率で選択することにより、行動指標Ａを決定する。主軸交換の要否判定（つまり行動指標Ａの決定）をこのような手法で行うことにより、Ｑ学習を円滑に進めることができる。
【００４８】
上記構成を有する主軸交換判定装置２０は、機械学習装置１０（１０′）の学習結果を用いることで、工作機械の主軸の動作異常の程度が許容範囲を超えたか否か、したがって主軸を交換する必要があるか否かを、振動センサの検出値のような外乱の影響を受け易い検出値に頼ることなく、またオペレータの経験則に依存することなく、正確に判定することができる。
【００４９】
主軸交換判定装置２０は、図４に示すように、加工済ワークの実寸法と寸法目標値との差を、加工済ワークの予め定めた公差と比較する比較部２４をさらに備えることができる。この場合、状態観測部１２は、比較部２４による比較結果を、状態変数Ｓのうちの加工精度データＳ２として観測するように構成される。比較部２４による比較結果は、前述したように数値、割合、レベル等の形式で表現できる。この構成によれば、状態観測部１２が観測した比較部２４の比較結果に基づき、学習部１４（１４′）は、加工済ワークの実寸法と寸法目標値との差が公差以下の場合には加工精度データＳ２が良品ワークを示すと判断して、例えば報酬計算部１６（図２）がワーク利益Ｂ１を報酬Ｒとして求める一方、加工済ワークの実寸法と寸法目標値との差が公差を超える場合には加工精度データＳ２が不良ワークを示すと判断して、例えば報酬計算部１６（図２）がワーク損失Ｂ２を報酬Ｒとして求めることができる。
【００５０】
加工済ワークに設定される公差が大きいほど（つまり加工済ワークに要求される寸法精度の水準が低いほど）、ワーク利益Ｂ１をもたらす良品ワークにおける実寸法と寸法目標値との差は大きくなる。加工済ワークに設定される公差が小さいほど（つまり加工済ワークに要求される寸法精度の水準が高いほど）、ワーク利益Ｂ１をもたらす良品ワークにおける実寸法と寸法目標値との差は小さくなる。したがって学習部１４（１４′）は、加工済ワークの公差に応じた最適解を目標として、条件Ｃを学習することができる。
【００５１】
図５は、主軸交換判定装置２０を備えた一実施形態による制御装置３０を示す。制御装置３０は、工作機械（例えばマシニングセンタ、旋盤等）の主軸（図示せず）の交換に関連付けられる条件Ｃを機械学習により自ら学習するためのソフト（学習アルゴリズム等）及びハード（電算機のＣＰＵ等）、並びに学習した条件Ｃに従い現在状態の主軸の交換が必要か否かを判定するためのソフト（判定アルゴリズム等）及びハード（電算機のＣＰＵ等）に加えて、工作機械の動作を制御するためのソフト（制御アルゴリズム等）及びハード（電算機のＣＰＵ等）を含むものである。制御装置３０は、１つの共通のＣＰＵが、学習アルゴリズム、判定アルゴリズム、制御アルゴリズム等の全てのソフトを実行する構成を有することもできる。
【００５２】
制御装置３０は、前述した主軸交換判定装置２０と、状態観測部１２が観測する状態変数Ｓの加工個数データＳ１、加工精度データＳ２、中断時間データＳ３及び交換判定データＳ４を取得するデータ取得部３２とを備える。データ取得部３２は、前述したように、制御装置３０に備えられる個数カウント機能、タイマー機能、アラーム機能や、工作機械に付設される寸法測定装置から、状態変数Ｓの各種データＳ１〜Ｓ４を取得することができる。
【００５３】
上記構成を有する制御装置３０は、主軸交換判定装置２０を内蔵したことにより、機械学習装置１０（１０′）の学習結果を用いて、工作機械の主軸の動作異常の程度が許容範囲を超えたか否か、したがって主軸を交換する必要があるか否かを、振動センサの検出値のような外乱の影響を受け易い検出値に頼ることなく、またオペレータの経験則に依存することなく、正確に判定することができる。
【００５４】
制御装置３０は、図５に示すように、意思決定部２２が出力した行動指標Ａが、主軸の交換が必要という意思を示す場合に、主軸の交換要求を報知するための信号を出力するアラーム部３４をさらに備えることができる。アラーム部３４が主軸交換要求の報知信号を出力すると、任意の周辺装置が主軸交換要求を例えば音や光や画像に変換してオペレータに感知させることができる。制御装置３０は、アラーム部３４が主軸交換要求の報知信号を出力したときに、工作機械の動作の全てを緊急的に停止させることができる。
【００５５】
制御装置３０の制御下で１つのワークの加工が完了したときに、アラーム部３４が主軸交換要求の報知信号を出力すると、それに応じて、環境の状態（主軸の状態変数Ｓのうちの中断時間データＳ３及び交換判定データＳ４）が変化する。また、制御装置３０の制御下で１つのワークの加工が完了したときに、アラーム部３４が主軸交換要求の報知信号を出力しないと、それに応じて、環境の状態（主軸の状態変数Ｓのうちの加工個数データＳ１及び加工精度データＳ２）が変化する。オペレータは、環境の状態（主軸の状態変数Ｓ）がどのように変化したかを、アラーム部３４からの報知信号の出力の有無に従って判断できる。
【００５６】
図６は、制御装置３０を備えた一実施形態による工作機械４０を示す。工作機械４０は、例えばマシニングセンタや旋盤等の、工具やワークを保持して回転する主軸４２を備える工作機械である。工作機械４０は、例えば制御装置３０が実行する数値制御アルゴリズムに従い、主軸４２や他の可動部を指令通りに移動させることができる。
【００５７】
上記構成を有する工作機械４０は、制御装置３０を備えたことにより、機械学習装置１０（１０′）の学習結果を用いて、主軸４２の動作異常の程度が許容範囲を超えたか否か、したがって主軸４２を交換する必要があるか否かを、振動センサの検出値のような外乱の影響を受け易い検出値に頼ることなく、またオペレータの経験則に依存することなく、正確に判定することができる。
【００５８】
工作機械４０は、図６に示すように、加工済ワークの実寸法と寸法目標値との差を二次元又は三次元で測定する測定装置４４をさらに備えることができる。測定装置４４は、プローブ等を用いた接触式の測定機構を備えていてもよいし、光や音波等を用いた非接触式の測定機構を備えていてもよい。データ取得部３２は、測定装置４４の測定結果から、状態観測部１２が観測する状態変数Ｓのうちの加工精度データＳ２を取得することができる。
【００５９】
また図示しないが、工作機械４０の変形例として、専ら工作機械４０の動作制御を行なう制御装置と、この制御装置とは別のＣＰＵを有する主軸交換判定装置２０とを備える構成を採用することもできる。
【００６０】
図７は、工作機械４０を備えた一実施形態による生産システム５０を示す。生産システム５０は、同一の機械構成を有する複数の工作機械４０、４０′と、それら工作機械４０、４０′を互いに接続するネットワーク５２とを備え、複数の工作機械４０、４０′のうち少なくとも１つが、主軸交換判定装置２０（又は制御装置３０）を備える工作機械４０として構成される。また生産システム５０は、主軸交換判定装置２０（又は制御装置３０）を備えない工作機械４０′を含むことができる。工作機械４０′は、主軸４２（図６）と、専ら工作機械４０′の動作制御を行なう制御装置とを備えることができる。
【００６１】
上記構成を有する生産システム５０は、複数の工作機械４０、４０′のうちで主軸交換判定装置２０を備える工作機械４０が、機械学習装置１０（１０′）の学習結果を用いて、自身の主軸４２の動作異常の程度が許容範囲を超えたか否か、したがって主軸４２を交換する必要があるか否かを、振動センサの検出値のような外乱の影響を受け易い検出値に頼ることなく、またオペレータの経験則に依存することなく、正確に判定することができる。また、少なくとも１つの工作機械４０の主軸交換判定装置２０が、他の複数の工作機械４０、４０′のそれぞれについて得られた主軸４２の状態変数Ｓに基づき、全ての工作機械４０、４０′に共通する条件Ｃを学習し、その学習結果を全ての工作機械４０、４０′が共有するように構成できる。したがって生産システム５０によれば、より多様なデータ集合（状態変数Ｓ及び損益データＢを含む）を入力として、条件Ｃの学習の速度や信頼性を向上させることができる。
【００６２】
図８は、工作機械４０′を備えた他の実施形態による生産システム５０′を示す。生産システム５０′は、機械学習装置１０（１０′）又は主軸交換判定装置２０と、同一の機械構成を有する複数の工作機械４０′と、それら工作機械４０′と機械学習装置１０（１０′）又は主軸交換判定装置２０とを互いに接続するネットワーク５２とを備える。
【００６３】
上記構成を有する生産システム５０′は、機械学習装置１０（１０′）又は主軸交換判定装置２０が、複数の工作機械４０′のそれぞれについて得られた主軸４２の状態変数Ｓに基づき、全ての工作機械４０′に共通する条件Ｃを学習し、その学習結果を用いて、各々の主軸４２の動作異常の程度が許容範囲を超えたか否か、したがって主軸４２を交換する必要があるか否かを、振動センサの検出値のような外乱の影響を受け易い検出値に頼ることなく、またオペレータの経験則に依存することなく、正確に判定することができる。
【００６４】
生産システム５０′は、機械学習装置１０（１０′）又は主軸交換判定装置２０が、ネットワーク５２に用意されたクラウドサーバに存在する構成を有することができる。この構成によれば、複数の工作機械４０′のそれぞれが存在する場所や時期に関わらず、必要なときに必要な数の工作機械４０′を機械学習装置１０（１０′）又は主軸交換判定装置２０に接続することができる。
【００６５】
生産システム５０、５０′に従事するオペレータは、機械学習装置１０（１０′）による学習開始後の適当な時期に、機械学習装置１０（１０′）による条件Ｃの学習の到達度（すなわち主軸交換の要否判定の信頼性）が要求レベルに達したか否かの判断を実行することができる。この判断は、例えば、工作機械４０の制御装置３０のアラーム部３４が主軸交換要求の報知信号を出力したときに、学習部１４（１４′）が主軸の状態変数Ｓを交換後の状態変数Ｓに自発的に変化させる処理に先立って、オペレータが、工作機械４０の運転中断状態を維持する操作を行い、現在状態の主軸４２に対し主軸交換必要とした判定結果の妥当性を実地検証することにより実行できる。生産システム５０、５０′においては、オペレータに要求される必須の作業はこの学習到達度の判断作業であるのに対し、オペレータの経験則のみに頼って主軸の故障予知を行う従来技術では、オペレータは複数の工作機械４０、４０′に対し随時、異音や振動の確認やワークの加工精度の検査といった作業を行う必要がある。したがって生産システム５０、５０′によれば、オペレータに関連する人件費を削減できるとともに、工作機械４０、４０′の稼働率を向上させることができる。
【００６６】
以上、本発明の種々の実施形態の構成を図面に基づいて説明したが、本発明は上述した構成に限定されない。例えば、機械学習装置１０（１０′）が実行する学習アルゴリズム、主軸交換判定装置２０が実行する判定アルゴリズム、制御装置３０が実行する制御アルゴリズム等は、上述したものに限定されず、様々なアルゴリズムを採用できる。
【符号の説明】
【００６７】
１０、１０′    機械学習装置
１２    状態観測部
１４、１４′    学習部
１６    報酬計算部
１８    関数更新部
２０    主軸交換判定装置
２２    意思決定部
２４    比較部
３０    制御装置
３２    データ取得部
３４    アラーム部
４０、４０′    工作機械
４２    主軸
４４    測定装置
５０、５０′    生産システム
５２    ネットワーク
【要約】
【課題】工作機械の主軸の動作異常の程度が許容範囲を超えたか否か、したがって主軸を交換する必要があるか否かを、正確に判定できるようにする。
【解決手段】機械学習装置１０は、工作機械の連続運転中に、主軸を用いて加工した加工済ワークの個数を示す加工個数データ、加工済ワークの実寸法と寸法目標値との差を示す加工精度データ、工作機械の運転を中断した時間を示す中断時間データ、及び主軸の交換の要否判定結果を示す交換判定データを、主軸の現在状態を表す状態変数Ｓとして観測する状態観測部１２と、加工済ワークの生産によって生じ得る単位時間当たりの利益又は損失、及び主軸の交換によって生じ得る単位時間当たりの損失を、損益データＢとして持つ学習部１４とを備える。学習部１４は、任意の学習アルゴリズムに従い、損益データＢと状態変数Ｓとを用いて、主軸の交換に関連付けられる条件Ｃを学習する。
【選択図】図１【図１】
0005997330.tif 000003
【図２】
0005997330.tif 000004
【図３】
0005997330.tif 000005
【図４】
0005997330.tif 000006
【図５】
0005997330.tif 000007
【図６】
0005997330.tif 000008
【図７】
0005997330.tif 000009
【図８】
0005997330.tif 000010