(57)【要約】【課題】ユーザーの意図に沿った工具を選定すること。【解決手段】工具選定方法は、複数の既知の加工物の各々について、複数の加工面の形状に基づく特徴量を算出するステップであって、複数の既知の加工物の各々には、複数の工具を含む工具リストの中から、複数の加工面を加工するのに適するとして予め選定された１つの主要工具が割り当てられている、ステップと、複数の既知のワークについて、特徴量を入力とし主要工具を出力として機械学習を実行するステップと、対象加工物に対して、特徴量を算出するステップと、対象加工物の特徴量を入力として用いて、機械学習の結果に基づいて工具リストの中から対象加工物に対して主要工具を選定するステップと、を備える。【選択図】図１
2020131384.tif 000002
【特許請求の範囲】
【請求項１】
複数の加工面を有する加工物を加工するために使用される工具を選定する工具選定方法において、
複数の既知の加工物の各々について、複数の加工面の形状に基づく１つ又は複数の特徴量を算出するステップであって、前記複数の既知の加工物の各々には、複数の工具を含む工具リストの中から、前記複数の加工面を加工するのに適するとして予め選定された１つの主要工具が割り当てられている、ステップと、
前記複数の既知のワークについて、前記特徴量を入力とし前記主要工具を出力として機械学習を実行するステップと、
対象加工物に対して、前記特徴量を算出するステップと、
前記対象加工物の前記特徴量を入力として用いて、前記機械学習の結果に基づいて前記工具リストの中から前記対象加工物に対して主要工具を選定するステップと、
を備えることを特徴とする、工具選定方法。
【請求項２】
前記特徴量は、前記複数の加工面に関する面積及び面積比のうちの少なくとも１つを含む、請求項１に記載の工具選定方法。
【請求項３】
前記特徴量は、
前記複数の加工面の総面積に対する、前記複数の加工面において前記工具リストのある工具によって加工可能な又は加工不可能な加工面の合計面積の比率によって表される面積比、
を少なくとも含み、
前記面積比は、前記複数の工具の全て又はいくつかについて算出され、算出された前記面積比が、別個の特徴量として前記機械学習に用いられる、請求項２に記載の工具選定方法。
【請求項４】
前記複数の工具は、互いに異なる直径を有する複数のボールエンドミルであり、
前記面積比は、前記複数の加工面の総面積に対する、前記複数の加工面においてあるボールエンドミルの半径以下の又は未満の曲率半径を有する凹面の合計面積の比率によって表される、請求項３に記載の工具選定方法。
【請求項５】
前記対象加工物に対して、前記主要工具とは異なり且つ前記主要工具では加工できない前記対象加工物の中の最小曲率半径を有する部位を加工可能な二次工具を選定するステップを更に備える、請求項１に記載の工具選定方法。
【請求項６】
複数の加工面を有する加工物に対してＮＣ加工における工具経路を生成するための工具経路生成方法において、
請求項５に記載の工具選定方法によって選定された対象加工物の主要工具及び二次工具について、工具経路を生成するステップを備える、工具経路生成方法。
【請求項７】
複数の加工面を有する加工物を加工するために使用される工具を選定する工具選定装置であって、
プロセッサと、
複数の工具を含む工具リストを記憶する記憶装置と、
を備え、
前記プロセッサが、
複数の既知の加工物の各々について、複数の加工面の形状に基づく特徴量を算出することであって、前記複数の既知の加工物の各々には、前記工具リストの中から、前記複数の加工面を加工するのに適するとして予め選定された１つの主要工具が割り当てられている、ことと、
前記複数の既知のワークについて、前記特徴量を入力とし前記主要工具を出力として機械学習を実行することと、
対象加工物に対して、前記特徴量を算出することと、
前記対象加工物の前記特徴量を入力として用いて、前記機械学習の結果に基づいて前記工具リストの中から前記対象加工物に対して主要工具を選定することと、
を実行するように構成されている、工具選定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、工具選定方法及び装置、並びに、工具経路生成方法に関する。
【背景技術】
【０００２】
工作機械の技術分野では、加工に使用される工具を選定するための様々な技術が提案されている。例えば、特許文献１の加工関連情報生成装置は、ある工程の加工モデルのデータを解析して、相互に交差する２面について交差部のＲ寸法を抽出する。抽出されたＲ寸法のうち、最小のＲ寸法が決定され、決定されたＲ寸法に基づいて、その工程で使用可能な工具直径（最小のＲ寸法以下）が決定される。決定された工具直径を含む情報に基づいてデータベースが検索され、その工程で使用可能な工具が抽出される。
【０００３】
また、例えば、特許文献２の加工情報作成装置は、Ｌ字部又は溝等を有するワークに対して、ある特定の工具を使用したときにＬ字部又は溝に発生する削り残し量を、ＣＡＤデータを用いてシミュレーションから得て、さらに、当該削り残し量の数式モデルを作成する。得られた数式モデルの次数及び定数に近い次数及び定数を有する加工事例が、加工事例データベースから検索される。検索された加工事例の工具情報に近い工具が、工具データベースから検索される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−１８９５１０号公報
【特許文献２】特許第４２７２２０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１の装置では、抽出されたＲ寸法のうち、最小のＲ寸法に基づいて工具が選定される。この場合、最小のＲ寸法に対応する小さな直径を有する工具で加工物を加工するため、加工時間が長くなるおそれがある。そのため、いくつかのユーザーにとっては、選定された工具が必ずしもユーザーの意向（例えば、短加工時間、低コスト等）に沿わない可能性がある。また、特許文献１の装置では、交差部毎に、抽出されたＲ寸法に基づいて工具を選定することも考えられる。この場合、工具本数が増加し、工具交換時間及び工具コストが増加する可能性がある。
【０００６】
また、特許文献２の装置では、シミュレーションから得られた削り残し量に基づいて工具が選定される。しかしながら、削り残し量のみを考慮するだけでは、選定された工具が必ずしもユーザーの意向に沿わない可能性がある。また、加工事例データベースの検索に使用されるアルゴリズムが固定的であり、アルゴリズムを変更するには手間及びスキルが必要とされる可能性がある。
【０００７】
本発明は、ユーザーの意図に沿った工具を選定することが可能な工具選定方法及び装置を提供することを目的とする。本発明はまた、そのように選定された工具の移動経路を生成するための工具経路生成方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本開示の一態様は、複数の加工面を有する加工物を加工するために使用される工具を選定する工具選定方法において、複数の既知の加工物の各々について、複数の加工面の形状に基づく１つ又は複数の特徴量を算出するステップであって、複数の既知の加工物の各々には、複数の工具を含む工具リストの中から、複数の加工面を加工するのに適するとして予め選定された１つの主要工具が割り当てられている、ステップと、複数の既知のワークについて、特徴量を入力とし主要工具を出力として機械学習を実行するステップと、対象加工物に対して、特徴量を算出するステップと、対象加工物の特徴量を入力として用いて、機械学習の結果に基づいて工具リストの中から対象加工物に対して主要工具を選定するステップと、を備える、工具選定方法である。
【０００９】
この工具選定方法では、機械学習に用いられる複数の既知の加工物の各々について、主要工具が割り当てられている。主要工具は、各加工物が有する複数の加工面を加工するのに適しているとして予め選定される。「複数の加工面を加工するのに適している」とは、ユーザーによって、様々な観点から決定されることができる（例えば、加工時間、コスト及び精度のうちの少なくとも１つ）。したがって、本開示の一態様に係る工具選定方法では、ユーザーは、例えば自社の熟練者によって上記のような観点で主要工具が割り当てられた複数の既知の加工物について機械学習を実行することで、対象加工物に対して、ユーザーの意図に沿った主要工具を選定することができる。
【００１０】
特徴量は、複数の加工面に関する面積及び面積比のうちの少なくとも１つを含んでもよい。このような特徴量は、複数の加工面の総面積に対する、複数の加工面において工具リストのある工具によって加工可能な又は加工不可能な加工面の合計面積の比率によって表される面積比を少なくとも含んでもよく、面積比は、複数の工具の全て又はいくつかについて算出され、算出された面積比が、別個の特徴量として前記機械学習に用いられてもよい。主要工具を選定する場合、熟練者であれば、各工具について、加工物の中のどれだけの領域がその工具によって加工可能か又は加工不可能かを高く考慮すると考えられる。したがって、各工具の面積比を別個に入力として機械学習に用いることによって、高精度な機械学習を実行し得る。
【００１１】
例えば、複数の工具は、互いに異なる直径を有する複数のボールエンドミルであってもよく、面積比は、複数の加工面の総面積に対する、複数の加工面においてあるボールエンドミルの半径以下の又は未満の曲率半径を有する凹面の合計面積の比率によって表されてもよい。
【００１２】
工具選定方法は、対象加工物に対して、主要工具とは異なり且つ主要工具では加工できない対象加工物の中の最小曲率半径を有する部位を加工可能な二次工具を選定するステップを更に備えてもよい。この場合、ユーザーの意向に沿った主要工具で加工物を加工しつつ、主要工具では加工できない部位を二次工具で加工することができる。したがって、効率よく加工物を加工することができる。
【００１３】
本開示の他の態様は、複数の加工面を有する加工物に対してＮＣ加工における工具経路を生成するための工具経路生成方法において、上記の工具選定方法によって選定された対象加工物の主要工具及び二次工具について、工具経路を生成するステップを備える、工具経路生成方法である。この工具経路生成方法では、上記の工具選定方法と同様、効率よく加工物を加工することができる。
【００１４】
本開示の更に他の態様は、複数の加工面を有する加工物を加工するために使用される工具を選定する工具選定装置であって、プロセッサと、複数の工具を含む工具リストを記憶する記憶装置と、を備え、プロセッサが、複数の既知の加工物の各々について、複数の加工面の形状に基づく特徴量を算出することであって、複数の既知の加工物の各々には、工具リストの中から、複数の加工面を加工するのに適するとして予め選定された１つの主要工具が割り当てられている、ことと、複数の既知のワークについて、特徴量を入力とし主要工具を出力として機械学習を実行することと、対象加工物に対して、特徴量を算出することと、対象加工物の特徴量を入力として用いて、機械学習の結果に基づいて工具リストの中から対象加工物に対して主要工具を選定することと、を実行するように構成されている、工具選定装置である。
【００１５】
この工具経路生成装置では、上記の工具選定方法と同様に、対象加工物に対して、ユーザーの意図に沿った主要工具を選定することができる。
【発明の効果】
【００１６】
本開示の一態様によれば、ユーザーの意図に沿った工具を選定することができる。
【図面の簡単な説明】
【００１７】
【図１】本開示の方法及び装置を示す概略図である。
【図２】図２の（ａ）は加工物の例を示す正面図である。図２の（ｂ）は加工物の例を示す平面図である。
【図３】機械学習を示すフローチャートである。
【図４】図４の（ａ）は大径工具で加工可能な加工面を示している。図４の（ｂ）は小径工具で加工可能な加工面を示している。
【図５】対象加工物に対する工具の選定及び工具経路の生成を示すフローチャートである。
【図６】図６の（ａ）は大径工具の工具経路が生成される面を示している。図６の（ｂ）は小径工具の工具経路が生成される面を示している。
【図７】ネットワーク構造を示す概略図である。
【図８】加工物の例を示す斜視図である。
【図９】加工物の例を示す斜視図である。
【図１０】加工物の例を示す斜視図である。
【図１１】加工物の例を示す斜視図である。
【発明を実施するための形態】
【００１８】
以下、添付図面を参照して、実施形態に係る工具選定方法及び装置、並びに、工具経路生成方法を説明する。同様な又は対応する要素には同一の符号を付し、重複する説明は省略する。
【００１９】
図１は、本開示の方法及び装置を示す概略図である。本開示の方法は、ＣＡＤ（Computer Aided Design）システム５０、工具を選定するための装置１０、及び、工作機械７０を含むシステム１００内で実施される。以下で詳述するように、本実施形態では、装置１０は、選定された工具に基づいて工具経路も生成する。したがって、装置１０は、「工具選定装置」とも「工具経路生成装置」とも称され得ることに留意されたい。システム１００は、その他の構成要素を含んでもよい。
【００２０】
ＣＡＤシステム５０では、加工物のＣＡＤデータが作成される。ＣＡＤデータで表される加工物は、工具によって加工された後の目標形状を有する。ＣＡＤシステム５０では、装置１０が機械学習を行う際に教師データとなる「既知の加工物」（以下では、教師データとも称され得る）のＣＡＤデータ５１と、機械学習の結果に基づいて主要工具が選定される「対象加工物」のＣＡＤデータ５２と、が作成される。なお、「既知の加工物（教師データ）」は、ある主要工具を使用して実際に過去に作製された加工物であってもよく、又は、電子データとしてのみ作成され、オペレータ（例えば、熟練者）Ｐによって主要工具が割り当てられた加工物であってもよい。
【００２１】
ＣＡＤデータは、加工物に含まれる頂点、辺、及び、面などの形状データを含んでいる。ＣＡＤデータは、例えば、３次元直交座標系であるＸＹＺ軸座標系で定義されることができる。ＣＡＤデータは、その他の座標系で定義されてもよい。加工物は、キャラクタラインによって囲まれた（又は分割された）複数の加工面を含んでいる。ＣＡＤデータは、複数の加工面の各々について、様々な幾何情報（例えば、加工面のタイプ（例えば、平面、凸面、及び、凹面  等）、面積、及び、曲率  等）を含んでいる。ＣＡＤデータは、その他の幾何情報を含んでもよい。
【００２２】
図２の（ａ）は加工物の例を示す正面図であり、図２の（ｂ）は加工物の例を示す平面図である。加工物４０は、様々な物体であり得る。本実施形態では、加工物４０は金型であり、加工対象は金型の意匠面である。具体的には、加工物４０の面のうち、意匠面は面４１，４２，４３及びコーナ４４、４５であり、面４６，４７は加工対象に含まれない。一般的に、金型の意匠面は、それぞれの面が滑らかに連結された複数の面によって表され得る。加工物４０は、説明のために単純化された形状であるが、実際の金型の意匠面では、高品位で滑らかな面の加工が要求されるため、細部の形状まで省略されていないＣＡＤデータが準備される。特に、工具の刃先先端の最低サイズには物理的な限界があるため、加工物の内側向きの角部は、直角に折れ曲がった形状にされず、工具で実際に加工できるサイズのコーナＲが設定され、曲面で滑らかに連結された形状として表される。また、内側向きの角部以外では、様々な曲率の曲面や曲率が変化する曲面を滑らかに連結した形状にすることで、美感を起こさせる意匠形状を表現する。そのため、金型の意匠面の複数の加工面は、例えば、平面、凸面、及び、凹面を含み得る。「凸面」とは、ある曲率半径を有する凸状の曲面を意味することができる。例えば、面４２は、図２の（ｂ）に示されるように、平面視において凸状の曲面である。また、コーナ４４は、図２の（ａ）（ｂ）に示されるように、正面視及び平面視の双方において凸状の曲面である。したがって、面４２及びコーナ４４は、「凸面」に分類される。「凹面」とは、ある曲率半径を有する凹状の曲面を意味することができる。例えば、コーナ４５は、図２の（ａ）に示されるように、正面視において凹状の曲面である。したがって、コーナ４５は、「凹面」に分類される。なお、コーナ４５は、図２の（ｂ）に示されるように、平面視においては凸状の曲面であるが、ある面がいずれかの視点において凹状の曲面である場合には、その面は「凹面」に分類され得ることに留意されたい。本実施形態では、鞍点を有する鞍型曲面に代表されるように正の曲率と負の曲率とが共存する曲面は、「凹面」に分類される。面４１，４３は、「平面」に分類される。
【００２３】
図１に戻り、既知の加工物のＣＡＤデータ５１には、オペレータＰによって、工作機械７０で使用可能な複数の工具を含む工具リストの中から、１つの主要工具ＰＴが割り当てられる。各既知の加工物のＣＡＤデータ５１及び主要工具ＰＴに関する情報（例えば、工具番号及び／又は工具の直径等）は、互いに関連付けられ、教師データとして装置１０の記憶装置１（詳しくは後述）に保存される。
【００２４】
主要工具ＰＴは、ある加工物に含まれる複数の加工面を加工するのに適するとして、工具リストの中から、オペレータＰによってその加工物に割り当てられる。主要工具ＰＴを割り当てる際に、オペレータ（特に、熟練者）Ｐは、ノウハウ、経験及び職場の方針等の様々な要因に基づいて、様々な観点（例えば、加工時間、コスト及び精度のうちの少なくとも１つ）を総合的に考慮して、加工物に対して１つの主要工具を選定することができると考えられ得る。例えば、小径工具は、様々な形状を加工可能であるが、加工に長時間を必要とする可能性がある。したがって、小径工具を主要工具として選定することは、加工時間の増加につながり得る。また、例えば、いくつかの小径工具は、頻繁には使用されず高価であり得る。したがって、このような小径工具を主要工具として選定することは、コスト高に繋がり得る。以上のような工具の様々な特徴を考慮して、ある実施形態では、オペレータは、加工時間に着目して、ある程度の精度を維持しつつ、加工時間の増加を避けることができる主要工具を選定するかもしれない。また、他の実施形態では、オペレータは、コストに着目して、ある程度の精度を維持しつつ、コスト高を避けることができる主要工具を選定するかもしれない。また、更に他の実施形態では、オペレータは、精度に着目して、高精度な加工を実現できる主要工具を選定するかもしれない。
【００２５】
対象加工物のＣＡＤデータ５２は、例えば、装置１０のプロセッサ２（詳しくは後述）に入力される。対象加工物のＣＡＤデータ５２は、記憶装置１に保存されてもよい。
【００２６】
装置１０は、記憶装置１と、プロセッサ２と、を備えており、これらの構成要素は、バス（不図示）等を介して互いに接続されている。装置１０は、ＲＯＭ（read only memory）、ＲＡＭ（random access memory）、入力装置及び／又は出力装置（例えば、マウス、キーボード、液晶ディスプレイ、及び／又、タッチパネル等）など、他の構成要素を備えることができる。装置１０は、例えば、コンピュータ、サーバー、又は、タブレット等であることができる。
【００２７】
記憶装置１は、１つ又は複数のハードディスクドライブ等であり得る。記憶装置１は、ＣＡＤシステム５０から入力された教師データを記憶する。また、記憶装置１は、工作機械７０で使用可能な複数の工具を含む工具リストを記憶する。工具リストの各工具の情報は、例えば、工具番号、工具の直径、工具材質、及び、工具の価格等、工具に関する様々な情報を含むことができる。また、記憶装置１は、プロセッサ２で用いられる様々なプログラムを記憶することができる。記憶装置１は、その他のデータを記憶してもよい。
【００２８】
プロセッサ２は、例えば、１つ又は複数のＣＰＵ（Central Processing unit）等であり得る。プロセッサ２は、以下に示される処理を実行するように構成された処理部を有することができ、各処理部は、例えば記憶装置１に記憶されたプログラムによって実現されることができる。
【００２９】
プロセッサ２は、例えば、特徴量算出部２１、推論部２２、二次工具選定部２３、及び、工具経路生成部２４を有することができる。プロセッサ２は、他の処理を実行するための他の処理部を更に有していてもよい。特徴量算出部２１は、各教師データのＣＡＤデータ５１及び対象加工物のＣＡＤデータ５２について、特徴量を算出するように構成されている。推論部２２は、複数の教師データについて機械学習を行うように構成されている。機械学習には、例えば、ニューラルネットワークを用いることができる。推論部２２はまた、対象加工物について、機械学習の結果に基づいて、対象加工物に対して主要工具を選定するように構成されている。二次工具選定部２３は、対象加工物について、二次工具を選定するように構成されている。工具経路生成部２４は、選定された主要工具及び二次工具の各々について、工具経路を生成するように構成されている（以上の処理について、詳しくは後述）。工具経路の生成については、ＣＡＭ（Computer Aided Manufacture）システムが用いられてもよい。
【００３０】
装置１０で生成された工具経路は、ＮＣデータに変換されて、工作機械７０に入力される。工作機械７０は、ＮＣデータに基づいてＮＣ加工を行う様々な工作機械であることができる。上記のＣＡＤシステム５０及び装置１０は、別々の装置として構成されてもよいし、同じ装置に組み込まれてもよい（例えば、ＣＡＤソフトウェア及び／又はＣＡＭソフトウェアが、装置１０に組み込まれてもよい）。
【００３１】
次に、装置１０で実行される動作について説明する。
【００３２】
まず、装置１０で実行される機械学習について説明する。図３は、機械学習を示すフローチャートである。
【００３３】
プロセッサ２は、記憶装置１から、複数の教師データの各々についてデータを取得する（ステップＳ１００）。取得するデータには、例えば、各教師データの形状データ、複数の加工面の各々の幾何情報、及び、主要工具に関する情報（例えば、工具の直径）が含まれる。続いて、プロセッサ２は、取得したデータを特徴量算出部２１に入力して、複数の教師データの各々について１つ又は複数の特徴量を算出する（ステップＳ１０２）。
【００３４】
ステップＳ１０２において算出される特徴量は、複数の加工面の形状に基づく様々な幾何学的情報であることができる。例えば、特徴量は、複数の加工面に関する面積及び面積比のうちの少なくとも１つを含んでもよい。具体的には、特徴量は、
（１）複数の加工面の総面積に対する、複数の加工面において工具リストのある工具によって加工不可能な加工面の合計面積の比率によって表される第１の面積比Ｐ１i
を少なくとも含むことができる。添え字ｉ（ｉ＝１，２，３・・・）は工具番号を示しており、第１の面積比Ｐ１iは、工具リストの中の互いに異なる直径を有する複数の工具の全て又はいくつかについて算出されることができる。別の観点からは、第１の面積比Ｐ１iは、複数の加工面の総面積に対する、複数の加工面において工具リストのある工具の半径以下（又は未満）の曲率半径を有する凹面の合計面積の比率、とも称され得る。
【００３５】
図４の（ａ）は大径工具で加工可能な加工面を示しており、図４の（ｂ）は小径工具で加工可能な加工面を示している。本実施形態では、工具は、例えば、ボールエンドミルＴ１，Ｔ２・・・Ｔｉであることができる（図４の（ａ）（ｂ）では、ボールエンドミルＴ１，Ｔ２のみが示されている）。工具は、ボールエンドミル以外であってもよい。加工物４０は、上記の図２の加工物４０と同じである。図４の（ａ）では、大径のボールエンドミルＴ１で加工可能な面にハッチングが付されており、図４の（ｂ）では、小径のボールエンドミルＴ２で加工可能な面にハッチングが付されている。本実施形態では、あるボールエンドミルＴの半径Ｄ／２以下の曲率半径を有する凹面が、ボールエンドミルＴで「加工不可能」であると設定されている。
【００３６】
具体的には、図４の（ａ）では、意匠面（面４１，４２，４３及びコーナ４４、４５）のうち、コーナ４５の曲率半径がボールエンドミルＴ１の半径Ｄ１／２以下であるため、コーナ４５がボールエンドミルＴ１で加工不可能である。このため、
加工物４０の第１の面積比Ｐ１1＝（コーナ４５の面積）／（面４１，４２，４３及びコーナ４４、４５の面積の合計）
である。
【００３７】
また、図４の（ｂ）では、コーナ４５の曲率半径がボールエンドミルＴ２の半径Ｄ２／２よりも大きいため、全ての加工面がボールエンドミルＴ２で加工可能である。したがって、加工物４０は、ボールエンドミルＴ２で加工不可能である面を含まない。したがって、加工物４０の第１の面積比Ｐ１2＝０である。第１の面積比Ｐ１iは、ボールエンドミルＴ１，Ｔ２・・・Ｔｉの全て又はいくつかについて算出される。例えば、最小の半径Ｄ／２を有するボールエンドミル、又は、いくつかの小径のボールエンドミルについては、これらは主要工具には適さないかもしれないとして、第１の面積比Ｐ１iが計算されなくてもよい。算出された第１の面積比Ｐ１iは、別個の特徴量として機械学習に用いられる。
【００３８】
上記の第１の面積比Ｐ１1に関して、ボールエンドミルＴ１で「加工不可能」な凹面が少なければ（すなわち、ボールエンドミルＴ１で「加工可能」な凹面が多ければ）、加工時間及び／又はコストの観点から、ボールエンドミルＴ１又はさらに大径のボールエンドミルで加工物４０の大部分を加工することが、効率的であり得る。この場合、ボールエンドミルＴ１又はさらに大径のボールエンドミルが、主要工具に適しているかもしれない。対照的に、ボールエンドミルＴ１で「加工不可能」な凹面が多ければ（すなわち、ボールエンドミルＴ１で「加工可能」な凹面が少なければ）、加工時間及び／又はコストの観点から、ボールエンドミルＴ１で加工物４０の大部分を加工することは、非効率的であり得る。この場合、ボールエンドミルＴ１よりも小径のボールエンドミルが、主要工具に適しているかもしれない。熟練者は、工具を選定する場合、加工物４０を観察することによって、ノウハウ及び経験に基づいて上記のような判断を下し得る。したがって、第１の面積比Ｐ１1を機械学習の入力として用いることによって、熟練者のノウハウ及び経験を考慮することができると考えられる。
【００３９】
なお、上記の実施形態では、あるボールエンドミルＴの半径Ｄ／２「以下」の曲率半径を有する凹面が、ボールエンドミルＴで加工不可能であると設定されているが、半径Ｄ／２「未満」の曲率半径を有する凹面が、加工不可能であると設定されてもよい。また、上記の実施形態では、第１の面積比Ｐ１iは、複数の加工面の総面積に対する、ある工具によって「加工不可能」な面積の比率によって表されているが、第１の面積比Ｐ１iは、複数の加工面の総面積に対する、ある工具によって「加工可能」な面積の比率によって表されてもよい。上記のように、加工可能な面積の比率によっても、同様な判断が可能である。
【００４０】
ステップＳ１０２において算出される特徴量は、他の幾何学的情報を更に含んでもよい。例えば、特徴量は、
（２）複数の加工面の総面積に対する、複数の加工面において工具リストのある工具の半径以下（又は未満）の曲率半径を有する凸面の合計面積の比率によって表される第２の面積比Ｐ２i、
（３）複数の加工面の総面積Ｐ３
（４）凹面の曲率半径の最小値Ｐ４
（５）凸面の曲率半径の最小値Ｐ５
を更に含んでもよい。第２の面積比Ｐ２iは、工具リストの中の互いに異なる直径を有する複数の工具の全て又はいくつかについて算出される一方で、値Ｐ３，Ｐ４，Ｐ５は、ある加工物に対して１つのみ算出される。熟練者は、工具を選定する場合、上記のような特徴量Ｐ２i，Ｐ３，Ｐ４，Ｐ５も考慮し得ると考えられる。特徴量は、上記のＰ１i，Ｐ２i，Ｐ３，Ｐ４，Ｐ５以外の複数の加工面の形状に基づく他の幾何学的情報を含んでもよい。
【００４１】
図３に戻り、プロセッサ２は、複数の教師データの算出された特徴量及び主要工具に関する情報（例えば、直径）を推論部２２に入力して、特徴量を入力とし主要工具に関する情報を出力として機械学習を実行する（ステップＳ１０４）。以上により、一連の動作が終了する。なお、以上のステップは、所望の収束結果が得られるまで繰り返されてもよい。
【００４２】
次に、装置１０で実行される対象加工物に対する工具の選定について説明する。図５は、対象加工物に対する工具の選定及び工具経路の生成を示すフローチャートである。
【００４３】
プロセッサ２は、ＣＡＤシステム５０で作成された対象加工物のＣＡＤデータ５２を取得する（ステップＳ２００）。取得されるＣＡＤデータには、対象加工物の形状データ及び複数の加工面の各々の幾何情報が含まれる。
【００４４】
続いて、プロセッサ２は、取得したＣＡＤデータ５２を特徴量算出部２１に入力して、対象加工物について特徴量を算出する（ステップＳ２０２）。ステップＳ２０２で算出される特徴量は、上記のステップＳ１０２で複数の教師データについて算出されたものと同じであることができる。続いて、プロセッサ２は、算出された対象加工物の特徴量を推論部２２に入力して、上記の機械学習の結果に基づいて、工具リストの中から対象加工物に対して主要工具を選定する（ステップＳ２０４）。プロセッサ２は、選定された主要工具に関する情報（例えば、工具番号及び／又は工具の直径  等）を表示部に送信する。
【００４５】
続いて、表示部は、選定された主要工具に関する情報を表示する（ステップＳ２０６）。これによって、オペレータＰは、選定された主要工具が対象加工物の加工に適しているか否かを検討することができる。
【００４６】
続いて、プロセッサ２は、オペレータＰから、主要工具の変更が必要か否かの入力を受け付ける（ステップＳ２０８）。具体的には、オペレータＰは、選定された主要工具が対象加工物の加工に適していないと判断した場合には、オペレータＰは、入力装置を介して変更命令を入力することによって、主要工具を変更することができる。
【００４７】
ステップＳ２０８において変更が必要ではないことを示す入力があった場合には、プロセッサ２は、選定された対象加工物の主要工具をＣＡＤデータ５２と共に記憶装置１に保存する（ステップＳ２１０）。次回に行われる機械学習では、記憶装置１に新たに保存された対象加工物のＣＡＤデータ５２及び主要工具が、教師データの１つとして用いられてもよい。
【００４８】
ステップＳ２０８において変更が必要であることを示す入力があった場合には、プロセッサ２は、オペレータＰから入力される変更命令に基づいて主要工具を変更し（ステップＳ２１２）、ステップＳ２１０に進み、変更された対象加工物の主要工具をＣＡＤデータ５２と共に記憶装置１に保存する。
【００４９】
ステップＳ２１０に続いて、プロセッサ２は、取得したＣＡＤデータ５２を二次工具選定部２３に入力して、対象加工物について工具リストの中から二次工具を選定する（ステップＳ２１４）。例えば、プロセッサ２は、主要工具では加工できない対象加工物の中の最小曲率半径を有する部位（例えば、凹面）を加工可能な工具を、二次工具として選定することができる。具体的には、プロセッサ２は、対象加工物の中の最小曲率半径よりも小さい半径を有する工具を二次工具として選定してもよい。工具リストが条件を満たす複数の工具を含む場合、プロセッサ２は、条件を満たす複数の工具の中から最大の半径を有する工具を二次工具として選定してもよい。工具リストが条件を満たす工具を含まない場合、プロセッサ２は、対象加工物の中の最小曲率半径を超えない範囲で、工具カタログ等に存在する最大の工具の半径をディスプレイに表示することで、オペレータＰに通知し、対象加工物の中の最小曲率半径よりも小さい半径を有する工具の補充を促す。
【００５０】
続いて、プロセッサ２は、選定された主要工具及び二次工具を工具経路生成部２４に入力して、対象加工物の主要工具及び二次工具について、工具経路を生成する（ステップＳ２１６）。例えば、プロセッサ２は、ＣＡＭシステムを用いて工具経路を生成することができる。
【００５１】
図６の（ａ）は大径工具の工具経路が生成される面を示しており、図６の（ｂ）は小径工具の工具経路が生成される面を示している。加工物４０及びボールエンドミルＴ１，Ｔ２は、上記の図４に示されたものと同じである。図６の（ａ）（ｂ）の例では、対象加工物４０に対して、大径のボールエンドミルＴ１が主要工具として選定され、小径のボールエンドミルＴ２が二次工具として選定されている。図６の（ａ）では、ボールエンドミルＴ１の工具経路が生成される面にハッチングが付されており、図６の（ｂ）では、ボールエンドミルＴ２の工具経路が生成される面にハッチングが付されている。
【００５２】
図６の（ａ）を参照して、加工物４０においては、上記のように、コーナ４５はボールエンドミルＴ１では加工不可能である。このため、コーナ４５以外の加工面（すなわち、面４１，４２，４３及びコーナ４４）に対して、主要工具として選定されたボールエンドミルＴ１の工具経路が生成される。例えば、面４１，４３に対しては、走査線経路（工具Ｔが、加工面を倣いながら領域を埋めるように加工面を加工するような経路）が生成されてもよい。また、例えば、面４２に対しては、等高線経路（工具Ｔが、加工面を等高線動作で加工するような経路）が生成されてもよい。また、例えば、コーナ４４に対しては、面沿い経路（工具Ｔが、加工面の境界線に沿った動作で加工面を加工するような経路）が生成されてもよい。
【００５３】
図６の（ｂ）を参照して、コーナ４５に対しては、二次工具として選定されたボールエンドミルＴ２の工具経路が生成される。例えば、コーナ４５に対しては、面沿い経路が生成されてもよい。
【００５４】
図５に戻り、以上により一連の動作が終了する。生成された工具経路は、工作機械７０のＮＣ装置に送信されることができる。
【００５５】
以上のような実施形態に係る工具選定方法では、機械学習に用いられる複数の既知の加工物の各々について、主要工具ＰＴが割り当てられている。主要工具ＰＴは、各加工物が有する複数の加工面を加工するのに適しているとして予め選定される。「複数の加工面を加工するのに適している」とは、ユーザーによって、様々な観点から決定される。したがって、この工具選定方法では、ユーザーは、例えば自社の熟練者によって主要工具ＰＴが割り当てられた複数の既知の加工物について機械学習を実行することで、対象加工物に対して、ユーザーの意図に沿った主要工具ＰＴを選定することができる。
【００５６】
また、実施形態に係る工具選定方法では、特徴量は、複数の加工面に関する面積Ｐ３及び面積比Ｐ１i，Ｐ２iのうちの少なくとも１つを含んでいる。具体的には、特徴量は、複数の加工面の総面積に対する、複数の加工面において工具リストのある工具によって加工可能な又は加工不可能な面積の比率によって表される第１の面積比Ｐ１iを少なくとも含んでおり、第１の面積比Ｐ１iは、複数の工具Ｔ１，Ｔ２・・・Ｔｉの全て又はいくつかについて算出され、算出された第１の面積比Ｐ１iは、別個の特徴量として機械学習に用いられている。主要工具を選定する場合、熟練者であれば、各工具Ｔｉについて、加工物の中のどれだけの領域がその工具Ｔｉによって加工可能か又は加工不可能かを高く考慮すると考えられる。したがって、各工具の第１の面積比Ｐ１iを別個に入力として機械学習に用いることによって、高精度な機械学習を実行し得る。
【００５７】
一例では、複数の工具は、互いに異なる直径を有する複数のボールエンドミルＴ１，Ｔ２・・・Ｔｉであり、第１の面積比Ｐ１iは、複数の加工面の総面積に対する、複数の加工面においてあるボールエンドミルＴｉの半径以下の曲率半径を有する凹面の面積の比率によって表されている。
【００５８】
また、実施形態に係る工具選定方法は、対象加工物４０に対して、主要工具Ｔ１とは異なり且つ主要工具Ｔ１では加工できない対象加工物４０中の最小曲率半径を有する部位（コーナ）４５を加工可能な二次工具Ｔ２を選定するステップを更に備えている。また、実施形態に係る工具経路生成方法は、上記の工具選定方法によって選定された対象加工物４０の主要工具Ｔ１及び二次工具Ｔ２について、工具経路を生成するステップを備える。したがって、ユーザーの意向に沿った主要工具Ｔ１で加工物４０を加工しつつ、主要工具Ｔ１では加工できない部位４５を二次工具Ｔ２で加工することができる。したがって、効率よく加工物４０を加工することができる。
【００５９】
工具選定方法及び装置、並びに、工具経路生成方法の実施形態の実施形態について説明したが、本発明は上記の実施形態に限定されない。当業者であれば、上記の実施形態の様々な変形が可能であることを理解するだろう。また、当業者であれば、上記の方法は、上記の順番で実施される必要はなく、矛盾が生じない限り、他の順番で実施可能であることを理解するだろう。
【００６０】
例えば、上記の実施形態では、機械学習にニューラルネットワークが用いられている。しかしながら、他の実施形態では、機械学習に他の方法（例えば、決定木法等）が用いられてもよい。
【００６１】
また、例えば、上記の実施形態では、二次工具を選定するステップＳ２１４は、主要工具を選定するステップＳ２０４よりも後に実行されている（図５参照）。しかしながら、ステップＳ２１４は、ステップＳ２０４よりも前に実行されてもよい。
【実施例】
【００６２】
上記の装置１０と同様な装置を用いて主要工具を推定した。具体的には、本実施例では、機械学習にニューラルネットワークを用い、多層パーセプトロン（ＭＬＰ）及びバックプロバゲーション（ＢＰ）を用いた。図７に示されるネットワーク構造を使用した。ネットワークに用いた条件を以下の表１に示す。加工物の形状データを作成するのに使用されたＣＡＤソフトウェアは、Ｓｉｅｍｅｎｓ社のＮＸであり、システム開発ではＮＸのＡＰＩ（Application Programming Interface）を使用してプログラム言語にＣ＃を用いた。
【００６３】
【表１】
2020131384.tif 000003
【００６４】
教師データとして、図８〜図１１に示される４モデルを含む、過去の工程設計事例の３４モデルを用いた。３４モデルの各々には、熟練者によって、それぞれ直径Ｄ＝４ｍｍ，６ｍｍ，８ｍｍ（半径Ｄ／２＝２ｍｍ，３ｍｍ，４ｍｍ）を有する３つのボールエンドミルＴ１，Ｔ２，Ｔ３のうちの１つが割り当てられている（なお、工具リストは、それぞれ直径Ｄ＝２ｍｍ，４ｍｍ，６ｍｍ，８ｍｍを有する４つのボールエンドミルを含むことが想定されており、直径Ｄ＝２ｍｍを有するボールエンドミルは、二次工具として選定されたことを付記しておく）。
【００６５】
機械学習の入力として算出された特徴量は、以下の９つである。（１）〜（６）に関して、例えば、（１）では、曲率半径の２倍が４ｍｍ以下である凹面（すなわち、ボールエンドミルＴ１の半径Ｄ／２（２ｍｍ）以下の曲率半径を有する凹面）が「Ｄ≦４ｍｍ（Ｄ／２≦２ｍｍ）」として表されている。
（１）複数の加工面の総面積に対する、Ｄ≦４ｍｍ（Ｄ／２≦２ｍｍ）の凹面（ボールエンドミルＴ１の半径Ｄ／２（２ｍｍ）以下の曲率半径を有する凹面）の合計面積の比率Ｐ１1
（２）複数の加工面の総面積に対する、Ｄ≦６ｍｍ（Ｄ／２≦３ｍｍ）の凹面（ボールエンドミルＴ２の半径Ｄ／２（３ｍｍ）以下の曲率半径を有する凹面）の合計面積の比率Ｐ１2
（３）複数の加工面の総面積に対する、Ｄ≦８ｍｍ（Ｄ／２≦４ｍｍ）の凹面（ボールエンドミルＴ３の半径Ｄ／２（４ｍｍ）以下の曲率半径を有する凹面）の合計面積の比率Ｐ１3
（４）複数の加工面の総面積に対する、Ｄ≦４ｍｍ（Ｄ／２≦２ｍｍ）の凸面（ボールエンドミルＴ１の半径Ｄ／２（２ｍｍ）以下の曲率半径を有する凸面）の合計面積の比率Ｐ２1
（５）複数の加工面の総面積に対する、Ｄ≦６ｍｍ（Ｄ／２≦３ｍｍ）の凸面（ボールエンドミルＴ２の半径Ｄ／２（３ｍｍ）以下の曲率半径を有する凸面）の合計面積の比率Ｐ２2
（６）複数の加工面の総面積に対する、Ｄ≦８ｍｍ（Ｄ／２≦４ｍｍ）の凸面（ボールエンドミルＴ３の半径Ｄ／２（４ｍｍ）以下の曲率半径を有する凸面）の合計面積の比率Ｐ２3
（７）複数の加工面の総面積Ｐ３
（８）凹面の曲率半径の最小値Ｐ４
（９）凸面の曲率半径の最小値Ｐ５
【００６６】
出力は、ボールエンドミルＴ１が選定される可能性、ボールエンドミルＴ２が選定される可能性、及び、ボールエンドミルＴ３が選定される可能性の３つであり、最も高い可能性を有する工具が、主要工具として選定された。
【００６７】
上記のようなニューラルネットワークの性能を、Ｌｅａｖｅ−Ｏｎｅ−Ｏｕｔ法を用いて評価した。具体的には、上記の全３４モデルのうち、１モデルが評価用モデルとして使用され、残りの３３モデルについて機械学習を実行したニューラルネットワークの性能が評価された。これがモデルの数（３４回）だけ繰り返された。評価結果を以下の表２に示す。
【００６８】
【表２】
2020131384.tif 000004
【００６９】
表２に示されるように、多くのモデルにおいて、ニューラルネットワークによる推論結果と過去の工程設計事例のデータとが一致した（８モデルにおいて推論結果及び過去の事例データの双方がＤ＝４ｍｍ（Ｔ１）であり、１６モデルにおいて推論結果及び過去の事例データの双方がＤ＝６ｍｍ（Ｔ２）であり、９モデルにおいて推論結果及び過去の事例データの双方がＤ＝８ｍｍ（Ｔ３）である）。１モデルにおいてのみ、ニューラルネットワークによる推論結果（Ｄ＝６ｍｍ（Ｔ２））と過去の事例データ（Ｄ＝８ｍｍ（Ｔ３））とが異なった。したがって、正解率はおよそ９７．１％であった。以上の結果から、上記の装置は、熟練者のノウハウ及び経験を考慮した主要工具を選定可能であることがわかった。
【符号の説明】
【００７０】
１                                記憶装置
２                                プロセッサ
１０                              工具選定装置
４０                              加工物
４１，４２，４３，４４，４５      加工面
Ｄ／２                            工具の半径
Ｐ１i，Ｐ２i，Ｐ３，Ｐ４，Ｐ５    特徴量
ＰＴ                              主要工具
Ｔ                                工具
【図１】
2020131384.tif 000005
【図２】
2020131384.tif 000006
【図３】
2020131384.tif 000007
【図４】
2020131384.tif 000008
【図５】
2020131384.tif 000009
【図６】
2020131384.tif 000010
【図７】
2020131384.tif 000011
【図８】
2020131384.tif 000012
【図９】
2020131384.tif 000013
【図１０】
2020131384.tif 000014
【図１１】
2020131384.tif 000015