(58)【調査した分野】(Int.Cl.,DB名)
前記判定データ取得部は、更に前記ワークの加工に掛かった時間を判定するサイクルタイム判定データを、前記ワークの加工の適否判定結果を示す判定データとして取得する、
請求項1に記載の加工条件調整装置。
【発明の概要】
【発明が解決しようとする課題】
【0005】
レーザ加工条件の評価を行う為には、当該レーザ加工条件のもとで行われた加工について、加工精度や加工品質、加工速度を評価し、その評価値を機械学習器に対して入力する必要がある。一般に、加工速度は加工が開始されてから終了されるまでに掛かった時間として自動的に取得することができるが、加工精度や加工面の仕上がり等の加工品質については、別途品質を評価するための測定装置等を用意したり、熟練した作業者が目視して評価して手入力する等をする必要があり、結果として、レーザ加工条件の加工条件出しにコストが掛かるという課題となっていた。
【0006】
そこで本発明の目的は、レーザ加工装置のレーザ加工条件を効率よく調整することが可能な加工条件調整装置及び機械学習装置を提供することである。
【課題を解決するための手段】
【0007】
本発明の加工条件調整装置は、レーザ加工の加工品質を、ワークの加工部位に対して噴出させたアシストガスの圧力損失乃至流出により検知する。ワークの加工部位は、レーザ加工により所定の幅のカーフが形成されるが、加工部位に対してこの様にアシストガスを噴出させると、カーフ幅、カーフ内の面質(加工面質)、ドロスの状態等によってアシストガスの圧力損失乃至流出は変化する。そこで、本発明の加工条件調整装置では、予め最適な状態に調整されたレーザ加工装置で加工を行い、最適な加工状態となったワークに対して、
図7に示すようにワーク上にノズルを密着乃至近接させた状態で、レーザは出力せずに所定の圧力でアシストガスを噴出しながら加工された切断カーフ上で静止又は切断カーフに沿ってノズルを移動させ、アシストガスの圧力損失乃至流出を圧力計等のセンサにより検出する加工品質検知動作を実行し、この加工品質検知動作により検出された値に基づいて求まるアシストガスの圧力損失乃至流出を目標値として記録しておく。
【0008】
そして、新たなレーザ加工装置のレーザ加工条件の調整を行う際には、レーザ加工条件を調整しながらワークの試し加工を行った上で、試し加工された部分に対して同様の加工品質検知動作を行い、アシストガスの圧力損失乃至流出が目標値に近づくレーザ加工条件を探索する。この様な動作を繰り返すことで、新たなレーザ加工装置に対してカーフ幅、カーフ内の面質(加工面質)、ドロスの状態等を検知する測定装置等を別途用意することなく、効率よく最適なレーザ加工条件を見つけることができるようになる。
【0009】
そして、本発明の一態様は、ワークをレーザ加工するレーザ加工装置のレーザ加工条件を調整する加工条件調整装置であって、前記レーザ加工におけるレーザ加工条件を学習する機械学習装置を備え、前記機械学習装置は、前記レーザ加工におけるレーザ加工条件を示す加工条件データ、及びアシストガスの圧力損失乃至流量の目標偏差を示すガス目標偏差データを、環境の現在状態を表す状態変数として観測する状態観測部と、前記レーザ加工におけるレーザ加工条件に基づいて加工されたワークの品質を判定するワーク品質判定データを、前記ワークの加工の適否判定結果を示す判定データとして取得する判定データ取得部と、前記状態変数と前記判定データとを用いて、アシストガスの圧力損失乃至流量の目標偏差と、レーザ加工におけるレーザ加工条件の調整とを関連付けて学習する学習部と、を備える加工条件調整装置である。
【0010】
本発明の他の態様は、ワークをレーザ加工するレーザ加工装置のレーザ加工条件を調整する加工条件調整装置制御装置であって、前記レーザ加工におけるレーザ加工条件を学習した機械学習装置を備え、前記機械学習装置は、前記レーザ加工におけるレーザ加工条件を示す加工条件データ、及びアシストガスの圧力損失乃至流量の目標偏差を示すガス目標偏差データを、環境の現在状態を表す状態変数として観測する状態観測部と、アシストガスの圧力損失乃至流量の目標偏差と、レーザ加工におけるレーザ加工条件の調整とを関連付けて学習した学習部と、前記状態観測部が観測した状態変数と、前記学習部による学習結果に基づいて、レーザ加工におけるレーザ加工条件の調整を決定する意思決定部と、を備える加工条件調整装置である。
【0011】
本発明の他の態様は、ワークをレーザ加工するレーザ加工装置のレーザ加工条件を学習する機械学習装置であって、前記レーザ加工におけるレーザ加工条件を示す加工条件データ、及びアシストガスの圧力損失乃至流量の目標偏差を示すガス目標偏差データを、環境の現在状態を表す状態変数として観測する状態観測部と、前記レーザ加工におけるレーザ加工条件に基づいて加工されたワークの品質を判定するワーク品質判定データを、前記ワークの加工の適否判定結果を示す判定データとして取得する判定データ取得部と、前記状態変数と前記判定データとを用いて、アシストガスの圧力損失乃至流量の目標偏差と、レーザ加工におけるレーザ加工条件の調整とを関連付けて学習する学習部と、を備える機械学習装置である。
【0012】
本発明の他の態様は、ワークをレーザ加工するレーザ加工装置のレーザ加工条件を学習した機械学習装置であって、前記レーザ加工におけるレーザ加工条件を示す加工条件データ、及びアシストガスの圧力損失乃至流量の目標偏差を示すガス目標偏差データを、環境の現在状態を表す状態変数として観測する状態観測部と、アシストガスの圧力損失乃至流量の目標偏差と、レーザ加工におけるレーザ加工条件の調整とを関連付けて学習した学習部と、前記状態観測部が観測した状態変数と、前記学習部による学習結果に基づいて、レーザ加工におけるレーザ加工条件の調整を決定する意思決定部と、を備える機械学習装置である。
【発明の効果】
【0013】
本発明により、レーザ加工装置におけるレーザ加工条件の加工条件出し作業に大きなコストを掛けることなく自動的に行うことができるようになる。
【発明を実施するための形態】
【0015】
以下、本発明の実施形態を図面と共に説明する。
図1は第1の実施形態による加工条件調整装置の要部を示す概略的なハードウェア構成図である。加工条件調整装置1は、例えばレーザ加工装置を制御する制御装置として実装することができる。また、加工条件調整装置1は、例えばレーザ加工装置を制御する制御装置に併設されたパソコンや、制御装置に有線/無線のネットワークを介して接続されたセルコンピュータ、ホストコンピュータ、エッジサーバ、クラウドサーバ等のコンピュータとして実装することができる。本実施形態では、加工条件調整装置1を、レーザ加工装置2を制御する制御装置として実装した場合の例を示す。
【0016】
本実施形態による加工条件調整装置1が備えるCPU11は、加工条件調整装置1を全体的に制御するプロセッサである。CPU11は、ROM12に格納されたシステム・プログラムをバス20を介して読み出し、該システム・プログラムに従って加工条件調整装置1の全体を制御する。RAM13には一時的な計算データや表示データ、図示しない入力部を介してオペレータが入力した各種データ等が一時的に格納される。
【0017】
不揮発性メモリ14は、例えば図示しないバッテリでバックアップされるなどして、加工条件調整装置1の電源がオフされても記憶状態が保持されるメモリとして構成される。不揮発性メモリ14には、表示器/MDIユニット70を介して入力されたプログラム、加工条件調整装置1の各部やレーザ加工装置2から取得された各種データ(例えば、レーザ加工装置2によるレーザ加工におけるレーザ出力、周波数、デューティー、加工速度、アシストガスの種類や圧力、ノズル径、ギャップ、焦点位置、レーザ加工装置2に取付けられたセンサ等により検出されたアシストガスの圧力損失乃至流量、これらレーザ加工条件と加工位置の関係等)が記憶されている。不揮発性メモリ14に記憶されたプログラムや各種データは、実行時/利用時にはRAM13に展開されても良い。また、ROM12には、公知の解析プログラムなどの各種のシステム・プログラム(後述する機械学習装置100とのやりとりを制御するためのシステム・プログラムを含む)があらかじめ書き込まれている。
【0018】
表示器/MDIユニット70はディスプレイやキーボード等を備えた手動データ入力装置であり、インタフェース18は表示器/MDIユニット70のキーボードからの指令,データを受けてCPU11に渡す。インタフェース19は各軸を手動で駆動させる際に用いる手動パルス発生器等を備えた操作盤71に接続されている。
【0019】
インタフェース21は、加工条件調整装置1と機械学習装置100とを接続するためのインタフェースである。機械学習装置100は、機械学習装置100全体を統御するプロセッサ101と、システム・プログラム等を記憶したROM102、機械学習に係る各処理における一時的な記憶を行うためのRAM103、及び学習モデル等の記憶に用いられる不揮発性メモリ104を備える。機械学習装置100は、インタフェース21を介して加工条件調整装置1で取得可能な各情報(例えば、レーザ加工装置2によるレーザ加工におけるレーザ出力、周波数、デューティー、加工速度、アシストガスの種類や圧力、ノズル径、ギャップ、焦点位置、レーザ加工装置2に取付けられたセンサ等により検出されたアシストガスの圧力損失乃至流量、これらレーザ加工条件と加工位置の関係等)を観測することができる。また、加工条件調整装置1は、機械学習装置100から出力される、加工条件の変更指令を受けて、レーザ加工装置2の動作を制御する。
【0020】
図2は、一実施形態による加工条件調整装置1と機械学習装置100の概略的な機能ブロック図である。
図2に示した各機能ブロックは、
図1に示した加工条件調整装置1が備えるCPU11、及び機械学習装置100のプロセッサ101が、それぞれのシステム・プログラムを実行し、加工条件調整装置1及び機械学習装置100の各部の動作を制御することにより実現される。
【0021】
本実施形態の加工条件調整装置1は、機械学習装置100から出力された加工条件の変更指令に基づいてレーザ加工装置2を制御する制御部34を備える。制御部34は、一般に制御プログラム等による指令に従ってレーザ加工装置2の動作を制御するが、その際に、機械学習装置100から加工条件の変更指令が出力されると、前記プログラムやレーザ加工装置に事前に設定されたレーザ加工条件に代えて、機械学習装置100から出力された加工条件となるようにレーザ加工装置2を制御する。
【0022】
制御部34は、機械学習装置100の学習動作時に、調整されたレーザ加工条件でレーザ加工装置2によるワークのレーザ加工が行われた後に、ワーク上にノズルを密着乃至近接させた状態で、レーザの出力はせずに所定の圧力でアシストガスを噴出しながら加工された切断カーフ上で静止又は切断カーフに沿ってノズルを移動させ、アシストガスの圧力損失乃至流出をセンサにより検出する加工品質検知動作を実行し、センサ3で検出されたアシストガスの圧力損失乃至流出を各加工部位を加工した際のレーザ加工条件と関連付けて不揮発性メモリ14へと記憶する。なお、加工品質検知動作は、加工中に並列して行うこともできるが、加工中はワークの加工部位の状態が時間と共に逐次変化していくため、アシストガスの圧力損失乃至流出が安定して検出することが難しいので(時間軸での平均値を取る等の手法を取ることもできるが)、加工品質検知動作は加工の終了後にあらためて行うことが望ましい。
【0023】
この加工品質検知動作では、予め定められた所定の1つ圧力でアシストガスを噴出した場合の圧力損失乃至流出を記録するようにしても良いし、2乃至それ以上の段階的な圧力を予め定めておき、それぞれの圧力でアシストガスを噴出した場合の複数の圧力損失乃至流出を記録するようにしても良い。後者の方法を取る場合には、予めそれぞれの圧力における圧力損失乃至流出の目標値を記録しておき、対応する圧力での複数の圧力損失乃至流出のそれぞれが目標値に近づくようにレーザ加工条件を調整するようにすれば良い。ワークの加工部位の状態によっては、異なる圧力でアシストガスを噴出した場合の圧力損失乃至流出の仕方が変わることもあるため、複数の圧力で検査を行うことにより、1つの圧力で検査する場合と比べて高精度にレーザ加工条件の調整を行うことができるようになる。
【0024】
一方、加工条件調整装置1が備える機械学習装置100は、アシストガスの圧力損失乃至流量の目標偏差に対するレーザ加工におけるレーザ加工条件の調整を、いわゆる機械学習により自ら学習するためのソフトウェア(学習アルゴリズム等)及びハードウェア(プロセッサ101等)を含む。加工条件調整装置1が備える機械学習装置100が学習するものは、アシストガスの圧力損失乃至流量の目標偏差と、レーザ加工におけるレーザ加工条件の調整との、相関性を表すモデル構造に相当する。
【0025】
図2に機能ブロックで示すように、加工条件調整装置1が備える機械学習装置100は、レーザ加工におけるレーザ加工条件を示すレーザ加工条件データS1、及びアシストガスの圧力損失乃至流量の目標偏差を示すガス目標偏差データS2を含む環境の現在状態を表す状態変数Sとして観測する状態観測部106と、調整されたレーザ加工におけるレーザ加工条件に基づいて加工されたワークの品質を判定するためのワーク品質判定データD1を含む判定データDを取得する判定データ取得部108と、状態変数Sと判定データDとを用いて、アシストガスの圧力損失乃至流量の目標偏差と、レーザ加工におけるレーザ加工条件の調整を関連付けて学習する学習部110とを備える。
【0026】
状態観測部106が観測する状態変数Sのうち、レーザ加工条件データS1は、レーザ加工装置2において行われるレーザ加工におけるレーザ加工条件として取得することができる。レーザ加工におけるレーザ加工条件は、例えばレーザ加工装置2によるレーザ加工におけるレーザ出力、周波数、デューティー、加工速度、アシストガスの種類や圧力、ノズル径、ギャップ、焦点位置等が例示され、特に焦点位置、次点で加工速度はワークのレーザ加工の仕上がりに大きな影響を与えるため、少なくともこれらの条件はレーザ加工条件データS1に含まれていることが望ましい。これらのレーザ加工条件は、レーザ加工装置2の動作を制御するプログラムや、加工条件調整装置1に設定され、不揮発性メモリ14に記憶されているレーザ加工パラメータ等から取得することができる。
【0027】
レーザ加工条件データS1は、機械学習装置100が学習部110の学習結果に基づいて1つ前の学習周期におけるアシストガスの圧力損失乃至流量の目標偏差に対して、当該学習周期において調整したレーザ加工におけるレーザ加工条件をそのまま用いることができる。このような手法を取る場合には、機械学習装置100はレーザ加工におけるレーザ加工条件を学習周期毎にRAM103に一時的に記憶しておき、状態観測部106は、RAM103から1つ前の学習周期でのレーザ加工におけるレーザ加工条件を今回の学習周期のレーザ加工条件データS1として取得するようにしても良い。
【0028】
状態観測部106が観測する状態変数Sのうち、ガス目標偏差データS2は、不揮発性メモリ14に記録されたアシストガスの圧力損失乃至流量の目標値に対する、調整されたレーザ加工条件で加工されたワークに対する加工品質検知動作で検出されたアシストガスの圧力損失乃至流量の差分として取得することができる。なお、複数の圧力損失乃至流出を目標値として記録している場合には、ガス目標偏差データS2は、それぞれの圧力におけるアシストガスの圧力損失乃至流出の差分のセット(行列)として定義すれば良い。
【0029】
状態観測部106は、学習部110がオンライン学習を行う場合には、各状態変数をレーザ加工装置2やセンサ3、加工条件調整装置1の各部から逐次取得するようにしても良い。一方、学習部110がオフライン学習を行う場合には、ワークの加工中及び加工品質検知動作時に取得された各情報を加工条件調整装置1が不揮発性メモリ14にログデータとして記憶するようにしておき、状態観測部106は、記録したログデータを解析して各状態変数を取得するようにすれば良い。
【0030】
判定データ取得部108は、ワーク品質判定データD1として、調整されたレーザ加工におけるレーザ加工条件に基づいて加工が行われた場合のワークの品質の判定結果を用いることができる。判定データ取得部108が用いるワーク品質判定データD1としては、例えば、アシストガスの圧力損失乃至流量の目標値に対する、調整されたレーザ加工条件で加工されたワークに対する加工品質検知動作で検出されたアシストガスの圧力損失乃至流量の差が予め定めた所定の閾値よりも小さいか(適)、大きいか(否)といったものを使用すれば良い。
【0031】
なお、判定データ取得部108は、学習部110による学習の段階では必須の構成となるが、学習部110によるアシストガスの圧力損失乃至流量の目標偏差とレーザ加工におけるレーザ加工条件の調整とを関連付けた学習が完了した後には必ずしも必須の構成ではない。例えば、学習が完了した機械学習装置100を顧客に出荷する場合等には、判定データ取得部108を取り外して出荷するようにしても良い。
【0032】
学習部110に対して同時に入力される状態変数Sは、学習部110による学習周期で考えた場合、判定データDが取得された1学習周期前のデータに基づくものとなる。このように、加工条件調整装置1が備える機械学習装置100が学習を進める間、環境においては、ガス目標偏差データS2の取得、取得した各データに基づいて調整されたレーザ加工条件データS1に基づいたレーザ加工装置2によるワークの加工、判定データDの取得が繰り返し実施される。
【0033】
学習部110は、機械学習と総称される任意の学習アルゴリズムに従い、アシストガスの圧力損失乃至流量の目標偏差に対する、レーザ加工におけるレーザ加工条件の調整を学習する。学習部110は、前述した状態変数Sと判定データDとを含むデータ集合に基づく学習を反復実行することができる。アシストガスの圧力損失乃至流量の目標偏差に対する、レーザ加工におけるレーザ加工条件の学習サイクルの反復中、状態変数Sは、上記したように1学習周期前におけるアシストガスの圧力損失乃至流量の目標偏差、及び1学習周期前において調整されたレーザ加工におけるレーザ加工条件から取得し、また判定データDは、調整されたレーザ加工におけるレーザ加工条件に基づいて行われたワークの加工の適否判定結果とする。
【0034】
このような学習サイクルを繰り返すことにより、学習部110は、アシストガスの圧力損失乃至流量の目標偏差と、レーザ加工におけるレーザ加工条件の調整との相関性を暗示する特徴を識別することができるようになる。学習アルゴリズムの開始時にはアシストガスの圧力損失乃至流量の目標偏差と、レーザ加工におけるレーザ加工条件の調整の相関性は実質的に未知であるが、学習部110は、学習を進めるに従い徐々に特徴を識別して相関性を解釈する。アシストガスの圧力損失乃至流量の目標偏差と、レーザ加工におけるレーザ加工条件の調整との相関性が、ある程度信頼できる水準まで解釈されると、学習部110が反復出力する学習結果は、現在状態(つまりアシストガスの圧力損失乃至流量の目標偏差)に対して、レーザ加工におけるレーザ加工条件をどう調整するべきかという行動の選択(つまり意思決定)を行うために使用できるものとなる。つまり学習部110は、学習アルゴリズムの進行に伴い、アシストガスの圧力損失乃至流量の目標偏差に対してレーザ加工におけるレーザ加工条件をどのように調整するべきかという行動との、相関性を最適解に徐々に近づけることができる。
【0035】
意思決定部122は、学習部110が学習した結果に基づいて、レーザ加工におけるレーザ加工条件を調整し、調整したレーザ加工におけるレーザ加工条件を制御部34へと出力する。意思決定部122は、学習部110による学習がレーザ加工条件の調整に利用可能な状態になった段階において、機械学習装置100にアシストガスの圧力損失乃至流量の目標偏差が入力されると、レーザ加工におけるレーザ加工条件(焦点位置、ノズル径、加工速度等)を出力する。意思決定部122は、状態変数Sと学習部110が学習した結果に基づいて、適切なレーザ加工におけるレーザ加工条件を調整する。
【0036】
上記したように、加工条件調整装置1が備える機械学習装置100は、状態観測部106が観測した状態変数Sと判定データ取得部108が取得した判定データDとを用いて、学習部110が機械学習アルゴリズムに従い、アシストガスの圧力損失乃至流量の目標偏差に対するレーザ加工におけるレーザ加工条件の調整を学習するものである。状態変数Sは、レーザ加工条件データS1、及びガス目標偏差データS2といったデータで構成され、また判定データDは、ワークを加工した際に取得された情報や、加工品質検知動作により取得された情報から一義的に求められる。したがって、加工条件調整装置1が備える機械学習装置100によれば、学習部110の学習結果を用いることで、アシストガスの圧力損失乃至流量の目標偏差に応じた、レーザ加工におけるレーザ加工条件の調整を、自動的かつ正確に行うことが可能となる。
【0037】
そして、レーザ加工におけるレーザ加工条件の調整を、自動的に行うことができれば、アシストガスの圧力損失乃至流量の目標偏差(ガス目標偏差データS2)を把握するだけで、レーザ加工におけるレーザ加工条件の適切な値を迅速に調整することができる。したがって、レーザ加工におけるレーザ加工条件の調整を効率よく行うことができる。
【0038】
加工条件調整装置1が備える機械学習装置100の一変形例として、判定データ取得部108は、ワーク品質判定データD1に加えて、調整されたレーザ加工におけるレーザ加工条件に基づいて行われるワークの加工に掛かる時間を判定するためのサイクルタイム判定データD2を判定データDとして用いるようにしても良い。判定データ取得部108が用いるサイクルタイム判定データD2としては、例えば調整されたレーザ加工におけるレーザ加工条件に基づいて行われたワークの加工に掛かった時間が、予め定めた所定の閾値よりも短いか(適)、長いか(否)といったような、適宜設定された判定基準により判定された結果を用いればよい。サイクルタイム判定データD2を判定データDとして用いることにより、ワークの加工時間を極端に長くしない範囲で目標とする加工品質を実現できるレーザ加工条件へと調整することができるようになる。
【0039】
上記構成を有する機械学習装置100では、学習部110が実行する学習アルゴリズムは特に限定されず、機械学習として公知の学習アルゴリズムを採用できる。
図3は、
図2に示す加工条件調整装置1の一形態であって、学習アルゴリズムの一例として強化学習を実行する学習部110を備えた構成を示す。強化学習は、学習対象が存在する環境の現在状態(つまり入力)を観測するとともに現在状態で所定の行動(つまり出力)を実行し、その行動に対し何らかの報酬を与えるというサイクルを試行錯誤的に反復して、報酬の総計が最大化されるような方策(本願の機械学習装置ではレーザ加工におけるレーザ加工条件)を最適解として学習する手法である。
【0040】
図3に示す加工条件調整装置1が備える機械学習装置100において、学習部110は、状態変数Sに基づいてレーザ加工におけるレーザ加工条件の調整がされ、調整されたレーザ加工におけるレーザ加工条件に基づくレーザ加工装置2によるワークの加工の適否判定結果(状態変数Sが取得された次の学習周期で用いられる判定データDに相当)に関連する報酬Rを求める報酬計算部112と、報酬Rを用いて、レーザ加工におけるレーザ加工条件の価値を表す関数Qを更新する価値関数更新部114とを備える。学習部110は、価値関数更新部114が関数Qの更新を繰り返すことによってアシストガスの圧力損失乃至流量の目標偏差に対するレーザ加工におけるレーザ加工条件の調整を学習する。
【0041】
学習部110が実行する強化学習のアルゴリズムの一例を説明する。この例によるアルゴリズムは、Q学習(Q−learning)として知られるものであって、行動主体の状態sと、その状態sで行動主体が選択し得る行動aとを独立変数として、状態sで行動aを選択した場合の行動の価値を表す関数Q(s,a)を学習する手法である。状態sで価値関数Qが最も高くなる行動aを選択することが最適解となる。状態sと行動aとの相関性が未知の状態でQ学習を開始し、任意の状態sで種々の行動aを選択する試行錯誤を繰り返すことで、価値関数Qを反復して更新し、最適解に近付ける。ここで、状態sで行動aを選択した結果として環境(つまり状態s)が変化したときに、その変化に応じた報酬(つまり行動aの重み付け)rが得られるように構成し、より高い報酬rが得られる行動aを選択するように学習を誘導することで、価値関数Qを比較的短時間で最適解に近付けることができる。
【0042】
価値関数Qの更新式は、一般に下記の数1式のように表すことができる。数1式において、s
t及びa
tはそれぞれ時刻tにおける状態及び行動であり、行動a
tにより状態はs
t+1に変化する。r
t+1は、状態がs
tからs
t+1に変化したことで得られる報酬である。maxQの項は、時刻t+1で最大の価値Qになる(と時刻tで考えられている)行動aを行ったときのQを意味する。α及びγはそれぞれ学習係数及び割引率であり、0<α≦1、0<γ≦1で任意設定される。
【0044】
学習部110がQ学習を実行する場合、状態観測部106が観測した状態変数S及び判定データ取得部108が取得した判定データDは、更新式の状態sに該当し、現在状態(つまり、アシストガスの圧力損失乃至流量の目標偏差)に対するレーザ加工におけるレーザ加工条件をどのように調整するべきかという行動は、更新式の行動aに該当し、報酬計算部112が求める報酬Rは、更新式の報酬rに該当する。よって価値関数更新部114は、現在状態に対するレーザ加工におけるレーザ加工条件の価値を表す関数Qを、報酬Rを用いたQ学習により繰り返し更新する。
【0045】
報酬計算部112が求める報酬Rは、例えば、レーザ加工におけるレーザ加工条件を調整した後に行われる、調整されたレーザ加工におけるレーザ加工条件に基づくワークの加工の適否判定結果が「適」と判定される場合(例えば、アシストガスの圧力損失乃至流量の目標偏差が予め定めた所定の閾値以下である場合、ワークの加工のサイクルタイムが予め定めた閾値や、1つ前の学習周期におけるサイクルタイムよりも短かった場合等)に正(プラス)の報酬Rとし、レーザ加工におけるレーザ加工条件を調整した後に行われる、調整されたレーザ加工におけるレーザ加工条件に基づくワークの加工の適否判定結果が「否」と判定される場合(例えば、アシストガスの圧力損失乃至流量の目標偏差が予め定めた所定の閾値を超える場合、ワークの加工のサイクルタイムが予め定めた閾値や、1つ前の学習周期におけるサイクルタイムよりも長かった場合等)に負(マイナス)の報酬Rとすることができる。正負の報酬Rの絶対値は、互いに同一であってもよいし異なっていてもよい。また、判定の条件として、判定データDに含まれる複数の値を組み合わせて判定するようにしても良い。
【0046】
また、調整されたレーザ加工におけるレーザ加工条件に基づくワークの加工の適否判定結果を、「適」及び「否」の二通りだけでなく複数段階に設定することができる。例として、ワークの加工のサイクルタイムの閾値がT
maxである場合、ワークのレーザ加工に掛かるサイクルタイムTが、0≦T<T
max/5のときは報酬R=5を与え、T
max/5≦T<T
max/2のときは報酬R=3を与え、T
max/2≦T<T
maxのときは報酬R=1を、T
max≦Tのときは報酬R=−3(マイナスの報酬)を与えるような構成とすることができる。
【0047】
また、複数の判定データを用いる場合には、それぞれの判定データごとに報酬の値を変化させる(重み付けをつける)ことにより、学習における目標とする状態を変更することもできる。例えば、ワーク品質判定データD1による判定結果に基づいて与える報酬を高くすることで品質重視のレーザ加工条件の調整を学習させることもできるし、一方で、サイクルタイム判定データD2による判定結果に基づいて与える報酬を高くすることで速度重視のレーザ加工条件の調整を学習させることもできる。更に、学習の初期段階は判定に用いる閾値を比較的大きく設定し、学習が進行するにつれて判定に用いる閾値を縮小する構成とすることもできる。
【0048】
価値関数更新部114は、状態変数Sと判定データDと報酬Rとを、関数Qで表される行動価値(例えば数値)と関連付けて整理した行動価値テーブルを持つことができる。この場合、価値関数更新部114が関数Qを更新するという行為は、価値関数更新部114が行動価値テーブルを更新するという行為と同義である。Q学習の開始時には環境の現在状態とレーザ加工におけるレーザ加工条件の調整との相関性は未知であるから、行動価値テーブルにおいては、種々の状態変数Sと判定データDと報酬Rとが、無作為に定めた行動価値の値(関数Q)と関連付けた形態で用意されている。なお報酬計算部112は、判定データDが分かれば、これに対応する報酬Rを直ちに算出でき、算出した値Rが行動価値テーブルに書き込まれる。
【0049】
レーザ加工装置2の動作の適否判定結果に応じた報酬Rを用いてQ学習を進めると、より高い報酬Rが得られる行動を選択する方向へ学習が誘導され、選択した行動を現在状態で実行した結果として変化する環境の状態(つまり状態変数S及び判定データD)に応じて、現在状態で行う行動についての行動価値の値(関数Q)が書き換えられて行動価値テーブルが更新される。この更新を繰り返すことにより、行動価値テーブルに表示される行動価値の値(関数Q)は、適正な行動(本発明の場合、ワークの加工に係るサイクルタイムを極端に長くしない範囲で、焦点距離を増減させたり、加工速度を増減させたり、ノズルの交換を促したり、加工中のアシストガスの圧力を増減させたり等、レーザ加工におけるレーザ加工条件を調整する行動)であるほど大きな値となるように書き換えられる。このようにして、未知であった環境の現在状態(アシストガスの圧力損失乃至流量の目標偏差)とそれに対する行動(レーザ加工におけるレーザ加工条件の調整)との相関性が徐々に明らかになる。つまり行動価値テーブルの更新により、アシストガスの圧力損失乃至流量の目標偏差と、レーザ加工におけるレーザ加工条件の調整との関係が最適解に徐々に近づけられる。
【0050】
図4を参照して、学習部110が実行する上記したQ学習のフロー(つまり機械学習方法の一形態)をさらに説明する。まずステップSA01で、価値関数更新部114は、その時点での行動価値テーブルを参照しながら、状態観測部106が観測した状態変数Sが示す現在状態で行う行動としてレーザ加工におけるレーザ加工条件の調整行動を無作為に選択する。次に価値関数更新部114は、ステップSA02で、状態観測部106が観測している現在状態の状態変数Sを取り込み、ステップSA03で、判定データ取得部108が取得している現在状態の判定データDを取り込む。次に価値関数更新部114は、ステップSA04で、判定データDに基づき、調整されたレーザ加工におけるレーザ加工条件によるワークの加工が適当であったか否かを判断し、適当であった場合、ステップSA05で、報酬計算部112が求めた正の報酬Rを関数Qの更新式に適用し、次いでステップSA06で、現在状態における状態変数S及び判定データDと報酬Rと行動価値の値(更新後の関数Q)とを用いて行動価値テーブルを更新する。ステップSA04で、調整されたレーザ加工におけるレーザ加工条件によるワークの加工が適当でなかったと判断した場合、ステップSA07で、報酬計算部112が求めた負の報酬Rを関数Qの更新式に適用し、次いでステップSA06で、現在状態における状態変数S及び判定データDと報酬Rと行動価値の値(更新後の関数Q)とを用いて行動価値テーブルを更新する。学習部110は、ステップSA01〜SA07を繰り返すことで行動価値テーブルを反復して更新し、レーザ加工におけるレーザ加工条件の調整の学習を進行させる。なお、ステップSA04からステップSA07までの報酬Rを求める処理及び価値関数の更新処理は、判定データDに含まれるそれぞれのデータについて実行される。
【0051】
前述した強化学習を進める際に、例えばニューラルネットワークを応用することができる。
図5Aは、ニューロンのモデルを模式的に示す。
図5Bは、
図5Aに示すニューロンを組み合わせて構成した三層のニューラルネットワークのモデルを模式的に示す。ニューラルネットワークは、例えば、ニューロンのモデルを模した演算装置や記憶装置等によって構成できる。
【0052】
図5Aに示すニューロンは、複数の入力x(ここでは一例として、入力x
1〜入力x
3)に対する結果yを出力するものである。各入力x
1〜x
3には、この入力xに対応する重みw(w
1〜w
3)が掛けられる。これにより、ニューロンは、次の数2式により表現される出力yを出力する。なお、数2式において、入力x、出力y及び重みwは、すべてベクトルである。また、θはバイアスであり、f
kは活性化関数である。
【0054】
図5Bに示す三層のニューラルネットワークは、左側から複数の入力x(ここでは一例として、入力x1〜入力x3)が入力され、右側から結果y(ここでは一例として、結果y1〜結果y3)が出力される。図示の例では、入力x1、x2、x3のそれぞれに対応の重み(総称してw1で表す)が乗算されて、個々の入力x1、x2、x3がいずれも3つのニューロンN11、N12、N13に入力されている。
【0055】
図5Bでは、ニューロンN11〜N13の各々の出力を、総称してz1で表す。z1は、入カベクトルの特徴量を抽出した特徴ベクトルと見なすことができる。図示の例では、特徴ベクトルz1のそれぞれに対応の重み(総称してw2で表す)が乗算されて、個々の特徴ベクトルz1がいずれも2つのニューロンN21、N22に入力されている。特徴ベクトルz1は、重みW1と重みW2との間の特徴を表す。
【0056】
図5Bでは、ニューロンN21〜N22の各々の出力を、総称してz2で表す。z2は、特徴ベクトルz1の特徴量を抽出した特徴ベクトルと見なすことができる。図示の例では、特徴ベクトルz2のそれぞれに対応の重み(総称してw3で表す)が乗算されて、個々の特徴ベクトルz2がいずれも3つのニューロンN31、N32、N33に入力されている。特徴ベクトルz2は、重みW2と重みW3との間の特徴を表す。最後にニューロンN31〜N33は、それぞれ結果y1〜y3を出力する。
なお、三層以上の層を為すニューラルネットワークを用いた、いわゆるディープラーニングの手法を用いることも可能である。
【0057】
加工条件調整装置1が備える機械学習装置100においては、ニューラルネットワークをQ学習における価値関数として用い、状態変数Sと行動aとを入力xとして、学習部110が上記したニューラルネットワークに従う多層構造の演算を行うことで、当該状態における当該行動の価値(結果y)を出力することもできる。なお、ニューラルネットワークの動作モードには、学習モードと価値予測モードとがあり、例えば学習モードで学習データセットを用いて重みwを学習し、学習した重みwを用いて価値予測モードで行動の価値判断を行うことができる。なお価値予測モードでは、検出、分類、推論等を行うこともできる。
【0058】
上記した加工条件調整装置1の構成は、プロセッサ101が実行する機械学習方法(或いはソフトウェア)として記述できる。この機械学習方法は、レーザ加工におけるレーザ加工条件の調整を学習する機械学習方法であって、コンピュータのCPUが、レーザ加工条件データS1、及びガス目標偏差データS2を、レーザ加工装置2が動作する環境の現在状態を表す状態変数Sとして観測するステップと、調整されたレーザ加工におけるレーザ加工条件に基づくワークの加工の適否判定結果を示す判定データDを取得するステップと、状態変数Sと判定データDとを用いて、ガス目標偏差データS2と、レーザ加工におけるレーザ加工条件の調整とを関連付けて学習するステップとを有する。
【0059】
図6は、加工条件調整装置1を備えた第3の実施形態によるシステム170を示す。システム170は、セルコンピュータやホストコンピュータ、クラウドサーバ等のコンピュータの一部として実装された少なくとも1台の加工条件調整装置1と、制御の対象となる複数のレーザ加工装置2と、加工条件調整装置1、レーザ加工装置2を互いに接続する有線/無線のネットワーク172とを備える。
【0060】
上記構成を有するシステム170は、機械学習装置100を備える加工条件調整装置1が、学習部110の学習結果を用いて、アシストガスの圧力損失乃至流量の目標偏差に対するレーザ加工におけるレーザ加工条件の調整を、それぞれのレーザ加工装置2毎に自動的かつ正確に求めることができる。また、加工条件調整装置1の機械学習装置100が、複数のレーザ加工装置2のそれぞれについて得られた状態変数S及び判定データDに基づき、全てのレーザ加工装置2に共通するレーザ加工におけるレーザ加工条件の調整を学習し、その学習結果を全てのレーザ加工装置2の動作において共有するように構成できる。したがってシステム170によれば、より多様なデータ集合(状態変数S及び判定データDを含む)を入力として、レーザ加工におけるレーザ加工条件の調整の学習の速度や信頼性を向上させることができる。
【0061】
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例のみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
【0062】
例えば、機械学習装置100が実行する学習アルゴリズムや演算アルゴリズム、加工条件調整装置1が実行する制御アルゴリズム等は、上述したものに限定されず、様々なアルゴリズムを採用できる。
【0063】
また、上記した実施形態では加工条件調整装置1と機械学習装置100が異なるCPUを有する装置として説明しているが、機械学習装置100は加工条件調整装置1が備えるCPU11と、ROM12に記憶されるシステム・プログラムにより実現するようにしても良い。