(57)【特許請求の範囲】
【請求項１】
ワークを加工する工作機械をプログラムに基づいて制御する数値制御装置であって、前記加工に係る機能を選択可能にメニュー表示する数値制御装置において、
前記メニュー表示におけるメニュー項目の表示順を機械学習する機械学習器を備え、
前記機械学習器は、
前記加工における加工状態を示す情報、及び選択されたメニュー項目を示す情報を含む状態データを取得する状態観測部と、
前記状態観測部が観測した状態データに基づいて、前記メニュー表示におけるメニュー項目の表示順を決定するための機械学習モデルを生成する状態学習部と、
前記機械学習モデルを記憶する学習結果記憶部と、
前記機械学習モデルと、前記状態観測部が観測した状態データに含まれる前記加工における加工状態を示す情報とに基づいて、前記メニュー表示におけるメニュー項目の表示順を決定するメニュー表示順決定部と、
を備え、
前記加工状態を示す情報は、加工における動作モード、加工運転中であるか否かを示す情報を少なくとも含む、
ことを特徴とする数値制御装置。
【請求項２】
前記加工状態を示す情報は、加工における動作モード、加工運転中であるか否かを示す情報、オーバライド値、ドライラン中であるか否かを示す情報、マシンロック中であるか否かを示す情報、シングルブロックであるか否かを示す情報、エアカット中であるか否かを示す情報、工具交換の有無、一つ前に使用した機能、数値制御装置および工作機械のアラーム状態、アラーム種類、アラーム番号の少なくともいずれかを含む、
ことを特徴とする請求項１に記載の数値制御装置。
【請求項３】
ワークを加工する工作機械をプログラムに基づいて制御する数値制御装置であって、前記加工に係る機能を選択可能にメニュー表示する数値制御装置における前記メニュー表示におけるメニュー項目の表示順を機械学習した機械学習器であって、
前記加工における加工状態を示す情報、及び選択されたメニュー項目を示す情報を含む状態データを取得する状態観測部と、
前記状態データに含まれる前記加工における加工状態を示す情報、及び選択されたメニュー項目を示す情報とに基づいてメニュー表示におけるメニュー項目の表示順を機械学習した機械学習モデルを記憶する学習結果記憶部と、
前記機械学習モデルと、前記状態データに含まれる前記加工における加工状態を示す情報とに基づいて、前記メニュー表示におけるメニュー項目の表示順を決定するメニュー表示順決定部と、
を備え、
前記加工状態を示す情報は、加工における動作モード、加工運転中であるか否かを示す情報を少なくとも含む、
ことを特徴とする機械学習器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は数値制御装置に関し、特に加工の工程や状況に応じた適切な表示順でメニュー表示を行う機能を備えた数値制御装置に関する。
【背景技術】
【０００２】
近年、数値制御装置は本来備えるべき機能だけではなく、加工全般を支援するアプリケーションを組み込むことが多くなっている。そのため、各アプリケーションに簡単にアクセスできるようメニュー表示が取り入れられている。一般に、メニュー画面はユーザの操作性などを考慮して、ユーザが良く使うと思われるメニュー項目が操作し易い位置になるように設計される。
【０００３】
メニュー表示に係る従来技術として、特許文献１には、機能アイコンがマトリックス状にセルとして配置されたメニュー画面を持つ移動通信機器において、機能アイコンの使用回数に応じて、メニュー画面のセルに対して設定された機能アイコンを配置する優先順位である優先度の順番にアイコンの並び替えを行い、ユーザがより利用しやすいメニュー画面を表示する技術が開示されている。
【０００４】
また、特許文献２には、メニューを表示するときに、現在のナビゲーション装置の状況に関する情報を、現在時刻、曜日、移動時間、乗車人数、天気などのパラメタとして取得し、また、これらのパラメタに対応するメニューの表示項目順を定めるテーブルをメモリに保持しておき、取得したパラメタに基づき、メニューの表示項目順を求め、そのメニューの表示項目順に並んだメニューを表示する技術が開示されている。
【０００５】
メニュー表示ではアプリケーションの数が多い場合、よく使うアプリケーションへのアクセス性が悪くなることがある。そのため、特許文献１ではアイコンの使用回数に応じて、特許文献２では現在の状況をパラメタとするテーブルに応じて、メニューを並べ、ユーザが利用しやすいメニュー画面を表示している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−１８１５０１号公報
【特許文献２】特開２０１０−１２７８１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、加工の工程や状況、ステータスなどにより使うアプリケーションが異なる工作機械では、単純に使用回数などからメニューを並べるだけでは、普段行わないが重要な操作がメニューから外れてしまうことがある。例えば、加工を行うアプリケーションを頻繁に使う場合、保守のアプリケーションがメニューから外れてしまい、保守を行う際に保守のアプリケーションへのアクセス性が悪くなるということが考えられる。
【０００８】
また、特許文献２の技術では、パラメタからメニューの表示項目順を定めるテーブルを事前に用意することで、状況に合わせたメニューを表示しているが、想定している状況からの変化に対して動的に対応することができないため、それぞれの状況変化に合わせて手動で新しくテーブルを作り直す必要がある。また、取得するパラメタが多くなると順番を定めるテーブルが大きく複雑になり、あらかじめ状況による表示項目順の想定をすることが困難となる。そのため、加工の工程や状況に係るパラメタが多い工作機械に適用することが難しい。
【０００９】
そこで本発明の目的は、加工の工程や状況に応じた適切な表示順でメニュー表示を行うことが可能な数値制御装置を提供することである。
【課題を解決するための手段】
【００１０】
本発明では、機械学習を用いて数値制御装置のメニューの表示順を決定することにより上記課題を解決する。
【００１１】
そして、本願の請求項１に係る発明は、ワークを加工する工作機械をプログラムに基づいて制御する数値制御装置であって、前記加工に係る機能を選択可能にメニュー表示する数値制御装置において、前記メニュー表示におけるメニュー項目の表示順を機械学習する機械学習器を備え、前記機械学習器は、前記加工における加工状態を示す情報、及び選択されたメニュー項目を示す情報を含む状態データを取得する状態観測部と、前記状態観測部が観測した状態データに基づいて、前記メニュー表示におけるメニュー項目の表示順を決定するための機械学習モデルを生成する状態学習部と、前記機械学習モデルを記憶する学習結果記憶部と、前記機械学習モデルと、前記状態観測部が観測した状態データに含まれる前記加工における加工状態を示す情報とに基づいて、前記メニュー表示におけるメニュー項目の表示順を決定するメニュー表示順決定部と、を備え、前記加工状態を示す情報は、加工における動作モード、加工運転中であるか否かを示す情報を少なくとも含む、ことを特徴とする数値制御装置である。
【００１２】
本願の請求項２に係る発明は、前記加工状態を示す情報は、加工における動作モード、加工運転中であるか否かを示す情報、オーバライド値、ドライラン中であるか否かを示す情報、マシンロック中であるか否かを示す情報、シングルブロックであるか否かを示す情報、エアカット中であるか否かを示す情報、工具交換の有無、一つ前に使用した機能、数値制御装置および工作機械のアラーム状態、アラーム種類、アラーム番号の少なくともいずれかを含む、ことを特徴とする請求項１に記載の数値制御装置である。
【００１３】
本願の請求項３に係る発明は、ワークを加工する工作機械をプログラムに基づいて制御する数値制御装置であって、前記加工に係る機能を選択可能にメニュー表示する数値制御装置における前記メニュー表示におけるメニュー項目の表示順を機械学習した機械学習器であって、前記加工における加工状態を示す情報、及び選択されたメニュー項目を示す情報を含む状態データを取得する状態観測部と、前記状態データに含まれる前記加工における加工状態を示す情報、及び選択されたメニュー項目を示す情報とに基づいてメニュー表示におけるメニュー項目の表示順を機械学習した機械学習モデルを記憶する学習結果記憶部と、前記機械学習モデルと、前記状態データに含まれる前記加工における加工状態を示す情報とに基づいて、前記メニュー表示におけるメニュー項目の表示順を決定するメニュー表示順決定部と、を備え、前記加工状態を示す情報は、加工における動作モード、加工運転中であるか否かを示す情報を少なくとも含む、ことを特徴とする機械学習器である。
【発明の効果】
【００１４】
本発明により、工作機械に最適なメニューを実現でき、工作機械のオペレータは加工の工程や状況などによって使いたいアプリケーションを簡単に選択できる。
【図面の簡単な説明】
【００１５】
【図１】教師あり学習を行う機械学習器の動作の概略を説明する図である。
【図２】本発明の実施形態における数値制御装置の概略構成図である。
【図３】本発明の実施形態におけるメニュー表示の例を示す図である。
【図４】本発明の本実施形態におけるメニュー表示からメニュー選択に係る処理のフローチャートである。
【図５】本発明の実施形態における機械学習モデルを求める処理のフローチャートである。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態を図面と共に説明する。
本発明では、工作機械でのワークの加工時における加工の工程や状況などにより示される状態変数と、ユーザによるメニューの選択行動とを用いて機械学習を行うことで、加工の工程や状況に応じた適切な表示順でメニュー表示を行う。
以下では、本発明で導入する機械学習について簡単に説明する。
【００１７】
＜１．機械学習＞
一般に、機械学習には教師あり学習や教師なし学習、強化学習など、その目的や条件によって様々なアルゴリズムに分類されている。本発明では工作機械でのワークの加工時における加工の工程や状況が示す状態と、ユーザによるメニューの選択行動との相関性を学習することを目的としており、明示されるデータに基づく学習が可能であること、学習結果に基づいて適切なメニュー項目の表示順を決定する必要があることなどを考慮して、教師あり学習のアルゴリズムを採用する。
【００１８】
図１は、教師あり学習を行う機械学習器の動作の概略を説明する図である。教師あり学習を行う機械学習器の動作は大きく学習段階と予測段階の２つの段階に分けることができる。教師あり学習を行う機械学習器は、学習段階（図１（ａ））において、入力データとして用いられる状態変数（説明変数）の値と、出力データとして用いられる目的変数の値とを含む教師データを与えると、該状態変数の値が入力された時に、該目的変数の値を出力することを学習し、このような教師データをいくつも与えることにより、状態変数の値に対する目的変数の値を出力するための予測モデルを構築する。
そして、教師あり学習を行う機械学習器は、予測段階（図１（ｂ））において、新しい入力データ（状態変数）が与えられたとき、学習結果（構築された予測モデル）に従って、出力データ（目的変数）を予測して出力する。
【００１９】
教師あり学習を行う機械学習器の学習の一例として、例えば以下の数１式に示すような予測モデルの回帰式を設定し、学習の過程において各状態変数ｘ1，ｘ2，ｘ3，…が取る値を回帰式に当てはめた時に、目的変数ｙの値が得られるように、各係数ａ0，ａ1，ａ2，ａ3，…の値を調整することにより学習が進められる。
【００２０】
【数１】
0006290835.tif 000002
【００２１】
また、教師あり学習を行う機械学習器の学習の別の例として、例えば目的変数ｙの値が１である確率をｐとした場合における以下の数２式に示すようにロジスティック回帰モデルにおいて、学習の過程において各状態変数ｘ1，ｘ2，ｘ3，…が取る値を回帰式に当てはめた時に、目的変数ｙの値が１である確率ｐが得られるように、各係数ａ0，ａ1，ａ2，ａ3，…の値を調整することにより学習を進めることで、状態変数が取る値に対する目的変数ｙが１である確率を数３式により予測することができるようになる。なお、学習の方法はこれらに限られるものではなく、教師あり学習のアルゴリズムごとに異なる。
【００２２】
【数２】
0006290835.tif 000003
【００２３】
【数３】
0006290835.tif 000004
【００２４】
更に、教師あり学習を行う機械学習器の学習の別の例として、サポートベクタマシンを用いて、状態変数が取る値に基づく多項分類を機械学習する手法も公知となっており（例えば、「Ting-Fan Wu, Chih-Jen Lin, Ruby C. Weng, “Probability Estimates for Multi-class Classification by Pairwise Coupling”, Journal of Machine Learning Research,  Vol.5, pp.975-1005, 2003.」など）、このような公知の技術を用いることにより、与えられた状態がそれぞれの分類に属する確率を算出することができるようになる。
【００２５】
なお、教師あり学習のアルゴリズムとしては、上記したロジスティック回帰による手法やサポートベクタマシンによる手法以外にも、決定木、ニューラルネットワーク、ナイーブベイズ分類など様々な手法が周知となっているが、本発明に適用する方法としていずれの教師あり学習アルゴリズムを採用してもよい。なお、それぞれの教師あり学習アルゴリズムは周知なので、本明細書における各アルゴリズムの詳細説明は省略する。
以下では、教師あり学習を行う機械学習器を導入した本発明のメニュー装置について、具体的な実施形態に基づいて説明する。
【００２６】
＜２．実施形態＞
図２は、本発明の一実施形態における数値制御装置の概略構成を示す図である。本実施形態の数値制御装置１０は、図示しないメモリから読み出されたプログラムを解析し、解析結果として得られた制御データに基づいて工作機械１を制御してワークを加工する。工作機械１は、加工時における加工状況に係る情報を検出するセンサなどの構成（図示せず）を備えており、数値制御装置１０はこれら構成を介して加工状況に係る情報を取得できるように構成されている。数値制御装置１０は、教師あり機械学習器１１（図中における点線枠）を備えており、また、ユーザに対して数値制御装置１０の機能を選択するためのメニューを表示すると共にユーザからのメニュー選択を受け付ける表示装置２０が接続されている。なお、工作機械１、数値制御装置１０は工作機械１、数値制御装置１０の一般的な構成を備えているものとし、本発明における機械学習の動作の説明に特段必要な構成以外は本明細書での詳細な説明を省略する。
【００２７】
教師あり機械学習器１１が備える状態観測部１２は、工作機械１から取得した加工の状況や異常の発生などに係る情報や、数値制御装置１０内から取得される加工の状況を示す情報を取得する。加工の状況に関するデータは次のものが考えられる。
●［デバッグ運転／連続運転に関するデータ］
動作モード、加工運転中であるか否かを示す情報、オーバライド値、ドライラン中であるか否かを示す情報、マシンロック中であるか否かを示す情報、シングルブロックであるか否かを示す情報、エアカット中であるか否かを示す情報、工具交換の有無、など
●［操作に関するデータ］
ユーザが選択したメニュー項目、一つ前に使用した機能、など
●［異常に関するデータ］
数値制御装置／工作機械のアラーム状態、アラーム種類、アラーム番号、など
【００２８】
状態データ記憶部１３は状態観測部１２が取得した状態データ、および後述するメニュー表示順決定部１６が決定したメニューの表示順に係るデータを記憶し、記憶した該状態データ、メニューの表示順に係るデータを外部からの要求に応じて出力する機能手段である。状態データ記憶部１３が記憶する状態データは、１回のメニュー選択動作に発生した状態データを組にして記憶する。
【００２９】
状態学習部１４、学習結果記憶部１５、メニュー表示順決定部１６は、教師あり機械学習器の主要部分を構成する機能手段である。
状態学習部１４は、状態観測部１２が取得した状態データや、状態データ記憶部１３に記憶された状態データに基づいて教師あり学習を行い、学習結果を学習結果記憶部１５に記憶する。本実施形態の状態学習部１４は、状態データの中のユーザが選択したメニュー項目を目的変数とし、その他の状態データを状態変数とする教師データとして教師あり学習を進める。学習の一例として、予測モデルとして回帰モデルを用いる場合には数値制御装置１０の機能に対応するメニュー項目ごとに回帰モデルを用意し、状態変数により示される加工状況に対して該メニュー項目が選択される確率を学習するようにしてもよく、また、サポートベクタマシン、ニューラルネットワーク、決定木、ナイーブベイズ分類などを用いる場合においても同様に、数値制御装置１０の機能に対応するメニュー項目ごとに分類器を用意してもよい。また、状態変数により示される加工状況を複数のメニュー項目のいずれかに分類する多項分類を行うモデルを用いるようにしてもよい。
【００３０】
学習結果記憶部１５は、状態学習部１４が教師データに基づいて学習した結果を記憶する機能手段である。学習結果記憶部１５は、外部からの要求により記憶している学習結果を出力する。この機能により、学習結果記憶部１５が記憶している学習結果を他の異常診断装置などに対して適用することも可能である。
【００３１】
メニュー表示順決定部１６は、表示装置２０に対するメニュー表示がされる際に、学習結果記憶部１５に記憶される学習結果を用いて、状態観測部１２が取得する工作機械１、数値制御装置１０の状態データに基づいて、メニュー項目の表示順を決定する。
メニュー項目の表示順を決定する際には、学習結果記憶部１５に記憶される学習結果と状態観測部１２が取得した状態データに基づいて、各メニュー項目が選択される確率を求め、求めた確率が最も高いメニュー項目から順にユーザが選択しやすい位置に表示する表示すればよい。メニュー項目の表示順を決定する一例としては、例えば図３に示すように複数のメニュー項目をアイコンで表示するメニュー表示の場合、現在の状態データに基づいて算出される各メニュー項目の選択確率が高い順に左上からアイコンを並べるようにする方法が考えられる。また、メニューがカテゴリ毎に表示が分かれている場合には、各カテゴリ内のメニュー項目の表示順を並び替えるようにする方法も考えられる。
そして、メニュー表示順決定部１６が決定したメニュー項目の表示順序に従って、表示装置２０に対するメニューの表示が行われる。
【００３２】
図４は、本実施形態におけるメニュー表示からメニュー選択に係る処理手順のフローチャートである。
●［ステップＳＡ０１］ユーザが数値制御装置の画面上に表示または機械に取り付けられたメニューボタンを押すことにより、メニューを呼び出す。
●［ステップＳＡ０２］状態観測部１２が、工作機械１、数値制御装置１０における加工の状況を示す状態データを取得する。
●［ステップＳＡ０３］学習結果記憶部１５にメニュー項目の表示順を学習した「機械学習モデル」が記憶されているか（学習されているか）否かを判定する。記憶されている場合にはステップＳＡ０４へ進み、記憶されていない場合にはステップＳＡ０６へ進む。
【００３３】
●［ステップＳＡ０４］メニュー表示順決定部１６は、学習結果記憶部１５に記憶されている「機械学習モデル」を用いて、ステップＳＡ０２で取得した状態データに基づく、それぞれのメニュー項目の選択される確率を求める。
●［ステップＳＡ０５］メニュー表示順決定部１６は、ステップＳＡ０４で求めた各メニュー項目の選択される確率に基づいてメニューの表示順を決定する。
●［ステップＳＡ０６］学習結果記憶部１５に「機械学習モデル」が記憶されている場合には、ステップＳＡ０５で決定された表示順で、記憶されていなかった場合にはあらかじめ定められた既定の表示順で、表示装置２０の画面上にメニューを表示する。
【００３４】
●［ステップＳＡ０７］ユーザがメニュー表示よりメニュー項目の何れかを選択する。
●［ステップＳＡ０８］ステップＳＡ０７でユーザが選択したメニュー項目を状態観測部１２が状態データとして取得し、ステップＳＡ０２で取得した状態データと関連付けて状態データ記憶部１３へ記憶する。
【００３５】
●［ステップＳＡ０９］状態データ記憶部１３に記憶された状態データの組が、あらかじめ定められた「機械学習モデル」を求める際に必要な最小データ数以上であるか判定する。最小データ数以上である場合にはステップＳＡ１０へ進み、最小データ数より少なければ本処理を終了する。
●［ステップＳＡ１０］状態データ記憶部１３に記憶された状態データに基づいて機械学習モデルの式を更新（作成）し、学習結果記憶部１５に記憶する。
【００３６】
図５は、本実施形態における機械学習モデルを求める処理のフローチャートである。
●［ステップＳＢ０１］状態学習部１４は、状態データ記憶部１３に記憶された加工の状況を示すデータと選択されたメニュー項目のデータの組を取得する。取得するデータ数は、モデル作成に利用する最大のデータ数をあらかじめ定めておき、保存しているデータ数が最大データ数より多い場合、保存の日時が新しい最大データ数分のデータを利用する。
●［ステップＳＢ０２］状態学習部１４は、取得したデータの各値を機械学習モデルが計算できるように、数値でないデータをあらかじめ定めた数値へと数値化する処理、データを正規化する処理などを適用し、機械学習用のデータを生成する。
●［ステップＳＢ０３］ステップＳＢ０２で生成した機械学習用のデータを用いて、機械学習モデルのパラメタを最適化する。最適化の手法は、採用する機械学習のアルゴリズムに適した手法を用いる。
●［ステップＳＢ０４］ステップＳＢ０３で作成した機械学習モデルを学習結果記憶部１５に記憶（更新）する。
【００３７】
なお、機械学習器１１は、数値制御装置１０に対して着脱可能に構成してもよい。また、学習が完了した機械学習器１１の学習結果記憶部１５に記憶されている学習結果や、状態データ記憶部１３に記憶されている状態データを取り出して、別の機械学習器に記憶させるようにすることで、学習が完了した機械学習器を量産することも可能である。
【００３８】
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例のみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
【符号の説明】
【００３９】
１  工作機械
１０  数値制御装置
１１  機械学習器
１２  状態観測部
１３  状態データ記憶部
１４  状態学習部
１５  学習結果記憶部
１６  メニュー表示順決定部
２０  表示装置
【図１】
0006290835.tif 000005
【図２】
0006290835.tif 000006
【図３】
0006290835.tif 000007
【図４】
0006290835.tif 000008
【図５】
0006290835.tif 000009