(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023098481
(43)【公開日】2023-07-10
(54)【発明の名称】ジョブショップ作業時間の推定装置、総作業時間推定装置、ジョブショップ作業時間の推定プログラム及びジョブショップ作業時間の推定方法
(51)【国際特許分類】
G05B 19/418 20060101AFI20230703BHJP
G06Q 50/04 20120101ALI20230703BHJP
【FI】
G05B19/418 Z
G06Q50/04
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2021215272
(22)【出願日】2021-12-28
(71)【出願人】
【識別番号】000000974
【氏名又は名称】川崎重工業株式会社
(71)【出願人】
【識別番号】504139662
【氏名又は名称】国立大学法人東海国立大学機構
(74)【代理人】
【識別番号】100118784
【弁理士】
【氏名又は名称】桂川 直己
(72)【発明者】
【氏名】横田 康成
(72)【発明者】
【氏名】深井 英和
(72)【発明者】
【氏名】今井 敬吾
(72)【発明者】
【氏名】河村 洋子
(72)【発明者】
【氏名】酒井 亨
(72)【発明者】
【氏名】厚坂 裕太郎
【テーマコード(参考)】
3C100
5L049
【Fターム(参考)】
3C100AA05
3C100AA12
3C100AA16
3C100BB03
3C100BB14
3C100BB33
3C100BB39
5L049CC04
(57)【要約】
【課題】ジョブショップの作業時間を小さな計算コストで推定する。
【解決手段】部品のオーダーがジョブショップに与えられ、オーダーのタイミングから0単位時間前,1単位時間前,・・・,M単位時間前における、当該ジョブショップにおける当該部品のオーダーの仕掛数がBs(0),Bs(1),・・・,Bs(M)で表される場合を考える。作業時間を未知のパラメータを用いて表す近似式により得られる推定作業時間と、過去の作業時間の実績データと、の誤差が最小となるように、当該パラメータが決定される。前記近似式は、τ=0,1,・・・,Mに関する、重み付けパラメータbs(τ)を用いた仕掛数Bs(τ)の重み付け線形和の項を含む。未知の前記パラメータに、前記重み付けパラメータbs(τ)が含まれる。パラメータが決定された前記近似式を用いて、当該オーダーが当該ジョブショップに与えられた場合の作業時間が推定される。
【選択図】
図2
【特許請求の範囲】
【請求項1】
ジョブショップ型生産システムを構成するジョブショップに部品のオーダーが与えられた場合における当該ジョブショップの作業時間を推定する推定装置であって、
前記作業時間を推定する近似式に含まれる未知のパラメータを、過去の作業時間の実績データに基づいて決定する近似式パラメータ決定部と、
前記パラメータが決定された前記近似式を用いて前記作業時間を推定する作業時間推定部と、
を備え、
前記作業時間は、少なくとも実作業時間と待ち時間の和で表され、
ある部品のオーダーが、あるジョブショップに与えられ、オーダーのタイミングから0単位時間前,1単位時間前,・・・,M単位時間前における、当該ジョブショップにおける当該部品のオーダーの仕掛数がBs(0),Bs(1),・・・,Bs(M)で表される場合に、
前記近似式パラメータ決定部は、前記近似式により得られる推定作業時間と、過去の作業時間の実績データと、の誤差が最小となるように、未知の前記パラメータを決定し、
前記近似式は、τ=0,1,・・・,Mに関する、重み付けパラメータbs(τ)を用いた仕掛数Bs(τ)の重み付け線形和の項を含み、
未知の前記パラメータに、前記重み付けパラメータbs(τ)が含まれることを特徴とするジョブショップ作業時間の推定装置。
【請求項2】
請求項1に記載のジョブショップ作業時間の推定装置であって、
前記仕掛数Bs(τ)及び前記重み付けパラメータbs(τ)におけるτの最大値がMであり、前記オーダーが前記ジョブショップに与えられた場合の前記実作業時間がa単位時間である場合に、M≧aであることを特徴とするジョブショップ作業時間の推定装置。
【請求項3】
請求項1又は2に記載のジョブショップ作業時間の推定装置であって、
前記オーダーを完了するために前記ジョブショップは1以上の作業を行い、
前記近似式のうち前記実作業時間に相当する項は、各作業を特定するインデックスをkとしたときに、k=1,・・・,NLCに関する、当該オーダーの完了のために当該作業を行う回数A(k)を用いた、各作業に必要な時間a(k)の重み付け線形和の項を含み、
未知の前記パラメータに、各作業に必要な時間a(k)が含まれることを特徴とするジョブショップ作業時間の推定装置。
【請求項4】
請求項1から3までの何れか一項に記載のジョブショップ作業時間の推定装置であって、
当該ジョブショップが複数の部品に対するオーダーを取り扱うことが可能である場合、
前記オーダーのタイミングから0単位時間前,1単位時間前,・・・,M単位時間前における、当該ジョブショップにおける全ての部品のオーダーの仕掛数がBo(0),Bo(1),・・・,Bo(M)で表される場合に、
前記近似式は、τ=0,1,・・・,Mに関する、重み付けパラメータbo(τ)を用いた前記仕掛数Bo(τ)の重み付け線形和の項を含み、
未知の前記パラメータに、前記重み付けパラメータbo(τ)が含まれることを特徴とするジョブショップ作業時間の推定装置。
【請求項5】
請求項1から4までの何れか一項に記載のジョブショップ作業時間の推定装置であって、
部品のオーダーが複数のジョブショップを通過して完了する場合に、当該部品のオーダーが完了するまでの総作業時間を推定する総作業時間推定部を備え、
前記作業時間推定部は、前記オーダーが通過するそれぞれのジョブショップにおいて必要な前記作業時間を推定し、
前記総作業時間推定部は、前記オーダーが通過するジョブショップに関して推定された前記作業時間の総和に基づいて、前記総作業時間を推定することを特徴とするジョブショップ作業時間の推定装置。
【請求項6】
請求項5に記載のジョブショップ作業時間の推定装置であって、
前記総作業時間を推定する総作業時間近似式に含まれる未知のパラメータを、過去の総作業時間の実績データに基づいて決定する総作業時間近似式パラメータ決定部を備え、
前記総作業時間は、前記作業時間の総和と部品移動時間の和として表され、
前記総作業時間近似式パラメータ決定部は、前記総作業時間近似式により得られる推定総作業時間と、過去の総作業時間の実績データと、の誤差が最小となるように、当該パラメータを決定し、
前記総作業時間近似式は、ジョブショップを特定するインデックスをj及びj’としたときに、前記オーダーが通過する複数のジョブショップj,j’に関する、ジョブショップjからジョブショップj’への部品移動時間c(j,j’)を用いた、当該オーダーを完了させるためにジョブショップjからジョブショップj’へ部品を移動させる回数C(j,j’)の重み付け線形和の項を含み、
未知の前記パラメータに、前記部品移動時間c(j,j’)が含まれ、
前記総作業時間推定部は、前記パラメータが決定された前記総作業時間近似式を用いて、前記総作業時間を推定することを特徴とするジョブショップ作業時間の推定装置。
【請求項7】
請求項1から6までの何れか一項に記載のジョブショップ作業時間の推定装置であって、
複数のジョブショップによる部品の生産をシミュレートする生産シミュレータを備え、
前記生産シミュレータは、前記作業時間推定部が推定した作業時間を用いて、生産のシミュレートを行うことを特徴とするジョブショップ作業時間の推定装置。
【請求項8】
請求項7に記載のジョブショップ作業時間の推定装置であって、
前記生産シミュレータのシミュレート結果に応じて前記オーダーのオーダー開始タイミングを変更するスケジューリング部を備えることを特徴とするジョブショップ作業時間の推定装置。
【請求項9】
複数のジョブショップから構成されるジョブショップ型生産システムに部品のオーダーが与えられ、当該オーダーが1以上のジョブショップを通過して完了する場合に、当該部品のオーダーが完了するまでの総作業時間を推定する総作業時間推定装置であって、
前記総作業時間を推定する総作業時間近似式に含まれる未知のパラメータを、過去の総作業時間の実績データに基づいて決定する総作業時間近似式パラメータ決定部と、
前記パラメータが決定された前記総作業時間近似式を用いて前記総作業時間を推定する総作業時間推定部と、
を備え、
ある部品のオーダーが、あるジョブショップに与えられ、当該ジョブショップへのオーダーのタイミングから0単位時間前,1単位時間前,・・・,M単位時間前における、当該ジョブショップにおける当該部品のオーダーの仕掛数がBs(0),Bs(1),・・・,Bs(M)で表される場合に、
前記総作業時間近似式パラメータ決定部は、前記総作業時間近似式により得られる推定総作業時間と、過去の総作業時間の実績データと、の誤差が最小となるように、未知の前記パラメータを決定し、
前記総作業時間近似式は、τ=0,1,・・・,Mに関する、重み付けパラメータbs(τ)を用いた仕掛数Bs(τ)の重み付け線形和の項を、当該オーダーが通過するそれぞれのジョブショップについて含み、
未知の前記パラメータに、当該オーダーが通過するそれぞれのジョブショップについての前記重み付けパラメータbs(τ)が含まれることを特徴とする総作業時間推定装置。
【請求項10】
コンピュータを、ジョブショップ型生産システムを構成するジョブショップに部品のオーダーが与えられた場合における当該ジョブショップの作業時間を推定する推定装置として動作させるためのプログラムであって、
前記コンピュータに、
前記作業時間を推定する近似式に含まれる未知のパラメータを、過去の作業時間の実績データに基づいて決定するステップと、
前記パラメータが決定された前記近似式を用いて前記作業時間を推定するステップと、
を実行させ、
前記作業時間は、少なくとも実作業時間と待ち時間の和で表され、
ある部品のオーダーが、あるジョブショップに与えられ、オーダーのタイミングから0単位時間前,1単位時間前,・・・,M単位時間前における、当該ジョブショップにおける当該部品のオーダーの仕掛数がBs(0),Bs(1),・・・,Bs(M)で表される場合に、
前記コンピュータに、前記作業時間を未知のパラメータを用いて表す近似式により得られる推定作業時間と、過去の作業時間の実績データと、の誤差が最小となるように、当該パラメータを決定させ、
前記近似式は、τ=0,1,・・・,Mに関する、重み付けパラメータbs(τ)を用いた仕掛数Bs(τ)の重み付け線形和の項を含み、
未知の前記パラメータに、前記重み付けパラメータbs(τ)が含まれることを特徴とするジョブショップ作業時間の推定プログラム。
【請求項11】
ジョブショップ型生産システムにおいて、ある部品のオーダーが、あるジョブショップに与えられ、オーダーのタイミングから0単位時間前,1単位時間前,・・・,M単位時間前における、当該ジョブショップにおける当該部品のオーダーの仕掛数がBs(0),Bs(1),・・・,Bs(M)で表される場合に、
少なくとも実作業時間と待ち時間の和で表される作業時間を未知のパラメータを用いて表す近似式により得られる推定作業時間と、過去の作業時間の実績データと、の誤差が最小となるように、当該パラメータを決定し、
前記近似式は、τ=0,1,・・・,Mに関する、重み付けパラメータbs(τ)を用いた仕掛数Bs(τ)の重み付け線形和の項を含み、
未知の前記パラメータに、前記重み付けパラメータbs(τ)が含まれ、
前記パラメータが決定された前記近似式を用いて、当該オーダーが当該ジョブショップに与えられた場合の作業時間を推定することを特徴とするジョブショップ作業時間の推定方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ジョブショップ型生産システムにおける作業時間又は総作業時間の推定に関する。
【背景技術】
【0002】
工業製品の生産に関し、多品種少量生産に適した方式として、ジョブショップ型生産方式が用いられることがある。ジョブショップ型生産方式においてオーダーの作業完了日を予測する構成は、例えば特許文献1及び2に開示されている。
【0003】
特許文献1は、新規ワークの作業完了日を予測するための予測システムを開示する。このシステムでは、仕掛中ワークと新規ワークを含むすべてのワークについて、ワーク毎の優先度が算出される。算出された優先度に従って、各ワークについて作業処理シミュレーションが実施される。作業処理シミュレーションにおいて作業が完了した仕掛中ワークは、再び処理ラインに投入され、その仕掛中ワークの最初の工程から作業が行われる。特許文献1は、これにより、シミュレーション上の作業負荷を一定に保ち、その結果、新規ワークの作業完了日を精度良く予測できるとする。特許文献1には、この予測システムがジョブショップ型ラインに適用可能であることが記載されている。
【0004】
特許文献2は、工程管理装置を開示する。この工程管理装置は、同じ装置及び工程を用いて多品種の製品が混在した状態で生産される多品種少量生産システムにおいて、製品の処理における進捗状況を管理する。この工程管理装置は、過去の実績データにおける仕掛ワーク数の推移と、現在の仕掛ワーク数と、過去の実績データにおける工程間リードタイムの分布データとから、現在の仕掛ワーク数に応じた計算用工程間リードタイムを算出する。
【0005】
計算用工程間リードタイムは、具体的には以下のように求められる。即ち、過去の所定期間における、仕掛ワーク数の最大値Nmaxと最小値Nminとが工程毎に算出される。仕掛ワーク数の最小値Nminを0%、最大値Nmaxを100%として、現在の仕掛ワーク数Npが属する分位置QTが、以下の式により算出される。
QT=(Np-Nmin)×100/(Nmax-Nmin)
工程間リードタイムの分布データにおいて、この分位置QTと同じ分位置の工程間リードタイムが、計算用工程間リードタイムとして求められる。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2011-3097号公報
【特許文献2】特許第6618888号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
上記特許文献1の構成においては、仕掛中ワークの位置、進捗状況、各工程の設備条件、作業員の労働条件、優先度計算ルール(例えば、残作業時間の少ない順、納期までの時間が短い順等)等の各種シミュレーション条件を定める必要がある。しかし、特許文献1では、各条件を具体的にどのように定めるかが開示されていない。
【0008】
特許文献2においては、現在の仕掛ワーク数に応じた計算用工程間リードタイムを算出する方法が開示されているものの、仕掛ワーク数の分位置だけが指標となっているため、算出された値の誤差及びバラツキが必ずしも小さくない。
【0009】
また、特許文献1及び2に開示される技術の適用対象は、小規模ないしは単純なジョブショップ形態である。従って、特許文献1及び2に開示される技術を用いて、例えば、ジョブショップの数が500以上、1日のオーダー数が3000以上というような大規模かつ複雑なジョブショップ型生産システムにおいて、作業時間の推定を現実的な時間で行うことは、実質的に不可能であった。
【0010】
本開示は以上の事情に鑑みてされたものであり、その目的は、ジョブショップ型生産システムにおけるジョブショップでの作業時間又は総作業時間を小さな計算コストで推定することにある。
【課題を解決するための手段】
【0011】
本開示の解決しようとする課題は以上の如くであり、次にこの課題を解決するための手段とその効果を説明する。
【0012】
本開示の第1の観点によれば、以下の構成のジョブショップ作業時間の推定装置が提供される。即ち、この推定装置は、ジョブショップ型生産システムを構成するジョブショップに部品のオーダーが与えられた場合における当該ジョブショップの作業時間を推定する。推定装置は、近似式パラメータ決定部と、作業時間推定部と、を備える。前記近似式パラメータ決定部は、前記作業時間を推定する近似式に含まれる未知のパラメータを、過去の作業時間の実績データに基づいて決定する。前記作業時間推定部は、前記パラメータが決定された前記近似式を用いて前記作業時間を推定する。前記作業時間は、少なくとも実作業時間と待ち時間の和で表される。ある部品のオーダーが、あるジョブショップに与えられ、オーダーのタイミングから0単位時間前,1単位時間前,・・・,M単位時間前における、当該ジョブショップにおける当該部品のオーダーの仕掛数がBs(0),Bs(1),・・・,Bs(M)で表される場合を考える。前記近似式パラメータ決定部は、前記近似式により得られる推定作業時間と、過去の作業時間の実績データと、の誤差が最小となるように、未知の前記パラメータを決定する。前記近似式は、τ=0,1,・・・,Mに関する、重み付けパラメータbs(τ)を用いた仕掛数Bs(τ)の重み付け線形和の項を含む。未知の前記パラメータに、重み付けパラメータbs(τ)が含まれる。
【0013】
本開示の第2の観点によれば、以下の構成の総作業時間推定装置が提供される。即ち、この総作業時間推定装置は、複数のジョブショップから構成されるジョブショップ型生産システムに部品のオーダーが与えられ、当該オーダーが1以上のジョブショップを通過して完了する場合に、当該部品のオーダーが完了するまでの総作業時間を推定する。前記総作業時間推定装置は、総作業時間近似式パラメータ決定部と、総作業時間推定部と、を備える。前記総作業時間近似式パラメータ決定部は、前記総作業時間を推定する総作業時間近似式に含まれる未知のパラメータを、過去の総作業時間の実績データに基づいて決定する。前記総作業時間推定部は、前記パラメータが決定された前記総作業時間近似式を用いて前記総作業時間を推定する。ある部品のオーダーが、あるジョブショップに与えられ、当該ジョブショップへのオーダーのタイミングから0単位時間前,1単位時間前,・・・,M単位時間前における、当該ジョブショップにおける当該部品のオーダーの仕掛数がBs(0),Bs(1),・・・,Bs(M)で表される場合に、前記総作業時間近似式パラメータ決定部は、前記総作業時間近似式により得られる推定総作業時間と、過去の総作業時間の実績データと、の誤差が最小となるように、未知の前記パラメータを決定する。前記総作業時間近似式は、τ=0,1,・・・,Mに関する、重み付けパラメータbs(τ)を用いた仕掛数Bs(τ)の重み付け線形和の項を、当該オーダーが通過するそれぞれのジョブショップについて含む。未知の前記パラメータに、当該オーダーが通過するそれぞれのジョブショップについての前記重み付けパラメータbs(τ)が含まれる。
【0014】
本開示の第3の観点によれば、以下のようなジョブショップ作業時間の推定プログラムが提供される。即ち、この推定プログラムは、コンピュータを、ジョブショップ型生産システムを構成するジョブショップに部品のオーダーが与えられた場合における当該ジョブショップの作業時間を推定する推定装置として動作させる。前記推定プログラムは、前記コンピュータに、以下の2つのステップを実行させる。第1ステップでは、前記作業時間を推定する近似式に含まれる未知のパラメータを、過去の作業時間の実績データに基づいて決定する。第2ステップでは、前記パラメータが決定された前記近似式を用いて前記作業時間を推定する。前記作業時間は、少なくとも実作業時間と待ち時間の和で表される。ある部品のオーダーが、あるジョブショップに与えられ、オーダーのタイミングから0単位時間前,1単位時間前,・・・,M単位時間前における、当該ジョブショップにおける当該部品のオーダーの仕掛数がBs(0),Bs(1),・・・,Bs(M)で表される場合を考える。前記推定プログラムは、前記コンピュータに、前記作業時間を未知のパラメータを用いて表す近似式により得られる推定作業時間と、過去の作業時間の実績データと、の誤差が最小となるように、当該パラメータを決定させる。前記近似式は、τ=0,1,・・・,Mに関する、重み付けパラメータbs(τ)を用いた仕掛数Bs(τ)の重み付け線形和の項を含む。未知の前記パラメータに、重み付けパラメータbs(τ)が含まれる。
【0015】
本開示の第4の観点によれば、以下のジョブショップ作業時間の推定方法が提供される。即ち、ジョブショップ型生産システムにおいて、ある部品のオーダーが、あるジョブショップに与えられ、オーダーのタイミングから0単位時間前,1単位時間前,・・・,M単位時間前における、当該ジョブショップにおける当該部品のオーダーの仕掛数がBs(0),Bs(1),・・・,Bs(M)で表される場合を考える。この推定方法では、少なくとも実作業時間と待ち時間の和で表される作業時間を未知のパラメータを用いて表す近似式により得られる推定作業時間と、過去の作業時間の実績データと、の誤差が最小となるように、当該パラメータを決定する。前記近似式は、τ=0,1,・・・,Mに関する、重み付けパラメータbs(τ)を用いた仕掛数Bs(τ)の重み付け線形和の項を含む。未知の前記パラメータに、前記重み付けパラメータbs(τ)が含まれる。前記推定方法では、前記パラメータが決定された前記近似式を用いて、当該オーダーが当該ジョブショップに与えられた場合の作業時間を推定する。
【0016】
これにより、近似式の未知のパラメータを小さな計算コストで決定することができる。また、ジョブショップでの作業時間を短時間の計算で推定することができるため、特に大規模なジョブショップ型生産システムに好適である。
【発明の効果】
【0017】
本開示によれば、ジョブショップ型生産システムにおけるジョブショップの作業時間又は総作業時間を小さな計算コストで推定することができる。
【図面の簡単な説明】
【0018】
【
図1】ジョブショップ型生産システムを説明する概念図。
【
図2】ジョブショップ作業時間の推定装置のブロック図。
【
図3】作業時間を推定する線形回帰モデルのMの値と、シミュレーションにおけるRMSEと、の関係を示すグラフ。
【
図4】あるジョブショップでの作業時間のオーダーごとの推移の実績値を示すグラフ。
【
図5】線形回帰モデルで作業時間を推定した場合の、あるジョブショップでの作業時間のオーダーごとの推移のシミュレーション結果を示すグラフ。
【
図7】線形回帰モデルによってオーダー完了日を推定した結果を示すグラフ。
【
図8】
図6及び
図7に対応する、あるジョブショップにおける実績仕掛数と推定仕掛数の推移を示すグラフ。
【
図9】線形回帰モデルを用いて工場の工程スケジューリングを行った第1例を示すグラフ。
【
図10】線形回帰モデルを用いて工場の工程スケジューリングを行った第2例を示すグラフ。
【発明を実施するための形態】
【0019】
次に、図面を参照して、開示される実施の形態を説明する。
図1は、ジョブショップ型生産システムを説明する概念図である。
【0020】
ジョブショップ型生産システムは、例えば、製造対象部品を製造する工場1に適用される。以下では、製造対象部品を部品5と呼び、工場1に投入する前の製造対象部品の素材を素材ワーク6と呼ぶ。工場1は、様々な部品のオーダーを受け付けて、当該オーダーに係る部品を製造することができる。
【0021】
オーダーに応じて、素材ワーク6が工場1に投入される。素材ワーク6に対して様々な作業が工場1において行われることで、部品5が完成する。工場1は複数の加工場4から構成されている。加工場4は、作業区と言い換えることもできる。加工場4はジョブショップの一例である。
【0022】
通常、各加工場4には1以上の加工機械が配置される。ただし、加工機械が配置されない加工場4があっても良い。加工場4で行われる作業としては、例えば機械加工、溶接、表面処理、塗装、配線加工等を挙げることができるが、これに限定されない。
【0023】
ジョブショップ型生産方式は周知であるので簡単に説明する。ジョブショップ型生産方式は、多品種少量生産において最も一般的とされる形態である。ジョブショップ型生産方式では、加工場4のレイアウトにおいて機能の観点が重視され、似た機能を有する加工場4は近くに配置される。ジョブショップ型生産方式では、異なる工程順を持つ部品が同一の加工場4を共有する。
【0024】
工場1が部品5を製造する過程で、素材ワーク6が投入されてから部品5が完成するまでの間に、部品が少なくとも1つの加工場4を通過する。
図1に示す実線矢印、点線矢印、白抜き矢印は部品が通過する通過経路を示しており、この通過経路は、オーダーの対象の部品5に応じて異なる。
【0025】
本実施形態では、それぞれの加工場4における作業時間の推定を、
図2に示す推定装置10を用いて行う。推定は、予測と言い換えることもできる。
図2に示すように、推定装置10は、近似式パラメータ決定部11と、作業時間推定部12と、総作業時間近似式パラメータ決定部13と、総作業時間推定部14と、生産シミュレータ15と、スケジューリング部16と、を備える。
【0026】
本実施形態の推定装置10は、公知のコンピュータ(図略)から構成されている。このコンピュータは、例えば、工場1に設置されているサーバコンピュータとすることができる。コンピュータは、図略のCPU、ROM、RAM、HDD、入出力部等を備える。HDDには、各種プログラムやデータ等が記憶されている。HDDに記憶されるプログラムには、本開示の作業時間の推定方法を実現するための推定プログラムが含まれる。CPUは、各種プログラム等をHDDから読み出して実行することができる。推定装置10においては、上記のハードウェアとソフトウェアの協働によって、上記のコンピュータを、近似式パラメータ決定部11、作業時間推定部12、総作業時間近似式パラメータ決定部13、総作業時間推定部14、生産シミュレータ15及びスケジューリング部16として動作させることができる。
【0027】
近似式パラメータ決定部11は、作業時間を近似する近似式に含まれている未知のパラメータを決定する。この近似式は、ある部品5のオーダーが、ある1つの加工場4に与えられた場合に、加工場4においてオーダーが完了するまでの作業時間を近似する式である。本実施形態では、この近似式として、線形回帰モデルによる近似式が用いられる。近似式に含まれる未知のパラメータを決定するために、加工場4における過去の作業時間の実績データが用いられる。作業時間を近似する近似式及び当該近似式に含まれる未知のパラメータを決定する方法の詳細については後述する。
【0028】
作業時間は、待ち時間と、実作業時間と、の和であると考えることができる。待ち時間は、先行する別のオーダーの関係で加工場4がオーダーを処理できない場合に、処理可能な状態になるまで待っている時間である。実作業時間は、オーダーに応じてその加工場4で実際に作業が行われる時間である。
【0029】
作業時間推定部12は、近似式パラメータ決定部11によりパラメータが決定された近似式を用いて、ある部品5のオーダーが、ある加工場4に与えられた場合に、当該加工場4においてオーダーが完了するまでの作業時間を推定する。
【0030】
総作業時間近似式パラメータ決定部13は、総作業時間を近似する近似式に含まれている未知のパラメータを決定する。この総作業時間近似式は、ある部品5のオーダーが1又は複数の加工場4を経由した結果、オーダーが最終的に完了するまでの総作業時間を近似する式である。本実施形態では、総作業時間近似式として、線形回帰モデルによる近似式が用いられる。総作業時間近似式に含まれる未知のパラメータを決定するために、過去の総作業時間の実績データが用いられる。総作業時間を近似する近似式及び当該近似式に含まれる未知のパラメータを決定する方法の詳細については後述する。
【0031】
総作業時間推定部14は、総作業時間近似式パラメータ決定部13によりパラメータが決定された総作業時間近似式を用いて、ある部品5のオーダーが工場1に与えられた場合に、工場1においてオーダーが最終的に完了するまでの総作業時間を推定する。
【0032】
生産シミュレータ15は、複数のオーダーが様々なタイミングで工場1に与えられた場合の、各オーダーの作業完了日及びある加工場4から別の加工場4までの移動時間を、総作業時間推定部14の推定結果を用いて求める。また、生産シミュレータ15は、各オーダーの各加工場4での作業時間及び待ち時間を、作業時間推定部12を用いて求める。
【0033】
スケジューリング部16は、工場1に与えられるオーダーのスケジューリングを行う。この詳細については後述する。
【0034】
次に、部品iに対するジョブショップjの作業時間の推定方法について詳細に説明する。以下の説明では、ジョブショップjとは加工場4を意味する。iは部品を特定するためのインデックスであり、jはジョブショップを特定するためのインデックスである。
【0035】
ある部品5に関するオーダーが工場1に与えられた場合を考える。このオーダーは、通常、
図1に示すように、工場にある多数のジョブショップのうち複数のジョブショップを通過し、最終的に部品5が完成する。
【0036】
多数のうち1つのジョブショップに注目し、このジョブショップに、部品5に関するオーダーが到着した場合を考える。当該ジョブショップにオーダーが与えられた日(以降、ジョブショップにオーダーが与えられた日をオーダー日と呼ぶ。)からτ=0,1,・・・,M日前の、当該ジョブショップにおける当該オーダーの仕掛数をBs(τ)としたとき,このオーダーの待ち時間は、以下の式(1)により近似することができる。
【数1】
ここで、bs(τ)は、仕掛数Bs(τ)に対する重み付けパラメータである。このように、ある1つのジョブショップにおける、あるオーダーの待ち時間は、τ日前の仕掛数Bs(τ)に対する重み付け線形和として表現される。
【0037】
上述のとおり、作業時間は、待ち時間と実作業時間との和であると考えることができる。このため、作業時間の推定値w
ESTは、上記の近似された待ち時間と、実作業時間aを実質的に示す実作業時間パラメータa’を加算した、以下の式(2)で示される仕掛数Bs(τ)の線形回帰モデルで表すことができる。
【数2】
【0038】
作業時間の推定値wESTは、推定作業時間と呼ぶこともできる。本実施形態において、作業時間は日数を単位として管理されているので、作業日数は作業時間と実質的に同じ意味である。
【0039】
作業時間の推定値wESTを求める上記の近似式には、実作業時間パラメータa’が含まれている。以下、実作業時間パラメータa’について説明する。ジョブショップの忙しさを何らかの方法で数値化したものをx軸、作業時間をy軸にとったグラフにおいて、忙しさと作業時間との関係を直線で近似することを考える。ジョブショップの忙しさは、0以上の値であり、忙しければ忙しい程大きい値となるように数値化される。忙しさの数値は、例えば仕掛数に基づいて決定することができる。実作業時間パラメータa’は、得られた近似直線において、忙しさの数値がゼロであるときの作業時間、即ち近似直線のy切片を意味する。従って、厳密に言えば、実作業時間パラメータa’は、実作業時間aとは異なる。
【0040】
上記の式(2)において、仕掛数Bs(τ)は、後述する収集された実績データにより算出できるため、未知であるパラメータは、実作業時間パラメータa’、及び、重み付けパラメータbs(τ)である。ただし、τ=0,1,・・・,Mである。これらのパラメータは、計算により、与えられた過去の実績データとの近似誤差が最も小さくなるように決定される。
【0041】
本実施形態においては、工場1を構成する多数のジョブショップ、即ち加工場4の全てについて、オーダー作業実績に相当する実績データの収集が行われている。従って、今回注目している1つのジョブショップについても、データ収集期間内に取り扱った全てのオーダーに関して、ジョブショップに当該オーダーが到着した日付と、当該オーダーの作業が完了した日付と、が予めデータとして得られている。上記のように収集されたデータから、ジョブショップにオーダーが到着した日からτ日前の仕掛数Bs(τ)と、当該ジョブショップにおいてオーダーから作業完了までに掛かった作業時間wと、を計算により求めることは容易である。
【0042】
上記の未知である実作業時間パラメータa’、及び、重み付けパラメータbs(τ)は、実績データに含まれるオーダーの全てについて、実績データから得られた仕掛数Bs(τ)を式(2)に代入して得られる作業時間の推定値wESTと、実績データの作業時間wと、の誤差が最小となるように決定される。誤差の定義と、誤差を最小とする方法については後述する。
【0043】
上記のMは、オーダーが与えられた日から何日前までの仕掛数を線形回帰モデルにおいて考慮するかを表す数値であり、計算コストに影響がある。本願発明者は、Mをどの程度の値にするのが適当であるかについてシミュレーション実験を行った。この実験では、1日当たりの平均オーダー到着数が所定の数値となるように、ランダムなタイミングで約6500のオーダーを発生させ、公知の待ち行列のM/D/sモデルによって各オーダーの作業完了日を理論的に計算し、このシミュレーション結果を実績データとした。このシミュレーションにおいては、実作業日数a=5、同時処理可能オーダー数s=20、1日当たりの平均オーダー到着数λ=3程度とした。
【0044】
本願発明者は、Mを1から20まで1刻みで増加させながら、それぞれのMについて式(2)の未知のパラメータを決定した。次に、それぞれのMに対応して決定された式(2)を用いて、上記のシミュレーションと全く同じタイミングでオーダーが発生した場合の作業完了日を推定し、実績データの作業完了日との間のRMSEを計算した。RMSEとは、Root Mean Square Errorの略称である。
【0045】
上記の実験の結果が
図3に示されている。
図3のグラフにおいて、横軸はMの値であり、縦軸はRMSEである。RMSEは、Mが1から4まで増加するのに伴って比較的大きく減少するが、減少の勢いは徐々に緩やかになり、Mが5以上になると殆ど減少しなくなることが分かる。これは、Mを実作業日数であるa=5以上とすることにより、推定精度に関して良好な結果が得られることを意味している。
【0046】
図4には、あるジョブショップでの作業時間のオーダーごとの推移の実績値が示されている。
図5には、上記と同一のジョブショップにおいて、本実施形態により作業時間を推定した場合の、作業時間のオーダーごとの推移のシミュレーション結果が示されている。ただし、
図5には、M=20の場合を示した。
図4と
図5の比較により、本実施形態の式(2)に示す線形回帰モデルは、実績データが待ち行列のM/D/sモデルに従う場合に、実績データの各オーダーの作業時間を良好に推定できていることが分かる。
【0047】
次に、本実施形態の線形回帰モデルと、待ち行列理論との関係について説明する。
【0048】
待ち行列理論は、サービスの資源に対して利用要求がされることによって混雑する現象を、数理モデルを用いて解析するための理論として良く知られている。例えば1つのジョブショップに着目し、単位時間において当該ジョブショップにオーダーが到着する平均の数をλ、単位時間にオーダーが完了する平均の数をμ、当該ジョブショップが同時に処理できるオーダー数をsとすると、待ちオーダー数、平均待ち時間等を、公知の式によって計算で求めることができる。同時処理可能オーダー数sは、顧客がサービスを受けるための窓口の数に例えられることがある。
【0049】
待ち行列理論では様々な性質の数理モデルが取り扱われ、その性質はケンドール記号によって表現される。ケンドール記号については公知であるので説明を省略する。本実施形態では、ジョブショップに対してオーダーは何らかの確率分布に従って到着する一方、実作業時間は実質的に一定の値aである。ケンドール記号でいうM/D/sモデルは、オーダーの到着がポアソン分布に従い、実作業時間が、確率変数ではない確定値であり、同時処理可能オーダー数がsであることを示す。従って、このM/D/sモデルは、今回のジョブショップの挙動を表す数理モデルとして概ね適しているということができる。
【0050】
待ち行列のM/D/sモデルでは、実作業日数aと同時作業可能オーダー数(窓口数)sが既知であれば、以下の[1],[2]で示すように、状態空間モデルを用いたシミュレーションによって、作業完了日を求めることができる。
【0051】
[1]オーダーが到着したとき、空いている窓口があれば、その窓口にて直ちに作業が開始され、a日後に作業が完了する。窓口が空いていなければ、そのオーダーは待ち行列に入る。[2]ある窓口で作業が完了したオーダーがあれば、待ち行列に入っている最初のオーダーについて、その窓口で作業が開始されて、a日後に作業が完了する。待ち行列に入っているオーダーがなければ、その窓口は空きのままである。
【0052】
本実施形態では、ジョブショップにオーダーが与えられた日と作業完了日は過去のデータから得られているものの、実作業時間aと同時処理可能オーダー数sは未知である場合を想定している。従って、これらの未知のパラメータを推定する必要がある。
【0053】
このパラメータの推定は、例えば以下のようにして行うことができる。即ち、実作業日数aと同時作業可能オーダー数sを暫定的かつ試行錯誤的に定めて、M/D/sモデルのシミュレーションによってオーダーの作業完了日を推定し、過去の実績データと比較した平均2乗誤差を得ることを繰り返す。試行錯誤的に定められたパラメータのうち、上記の平均2乗誤差を最小にする実作業日数aと同時作業可能オーダー数sの組を、推定値とする。
【0054】
しかし、M/D/sモデルの1回のシミュレーションには、多数のオーダーについて作業完了日を推定する計算が含まれる。パラメータを精度良く推定するためには、上記の試行錯誤を十分な回数反復する必要があるため、コンピュータの計算リソースを大きく消費してしまう。例えば工場全体での工程計画を検討する場合、パラメータの推定は、多数あるジョブショップの全てに対して、かつ全ての部品に対して、それぞれ行う必要がある。従って、膨大な計算時間が必要になってしまう。
【0055】
また、工場1の工程計画の最適化を行う場合、条件を変えながら試行を何度も繰り返すため、上記の更に何倍もの計算時間が必要になる。
【0056】
この点、本実施形態の線形回帰モデルは、上述のとおり、未知のパラメータの推定を極めて高速に行うことができる。また、適切にパラメータが決定された線形回帰モデルは、
図4と
図5の比較で明らかであるとおり、待ち行列理論と同等の精度で作業時間を推定することができる。従って、本実施形態によれば、例えば、ジョブショップの数が500以上、1日のオーダー数が3000以上というような大規模なジョブショップ型生産システムにおいても、作業時間の推定を現実的な時間で完了させることができる。
【0057】
次に、式(2)に対する様々な変形について説明する。
【0058】
1つのジョブショップにおいてオーダーにより行われる作業は、殆どの場合、複数の作業内容の組合せである。ここで、それぞれの作業内容を特定するインデックスをk(k=1,・・・,N
LC)とした場合に、ジョブショップでの作業を、作業内容1がA(1)回、作業内容2がA(2)回、・・・、作業内容N
LCがA(N
LC)回、というように分解して表す。それぞれの作業内容kに対して一定の実作業時間a(k)が掛かると考えると、上記の式(2)は、以下の式(3)のように表すことができる。
【数3】
ただし、上記の式(3)においては、a’をaと表している。このように、作業時間の推定値w
ESTは、作業回数A(k)及び仕掛数Bs(τ)の線形回帰モデルで表すことができる。
【0059】
1つのジョブショップが、異なる種類の部品5に対するオーダーを同時に処理することがある。ジョブショップにおいて、ある1つのオーダーに係る部品ではない別のオーダーに係る部品の仕掛数が多い場合、作業員及び機械等の資源が割かれるため、待ち時間が増えることが予想される。これを考慮し、当該ジョブショップのオーダー日からτ=0,1,・・・,M日前の、当該ジョブショップで作業する部品全体に関する仕掛数をBo(τ)としたとき,このオーダーの作業時間を、以下の式(4)のように近似することもできる。
【数4】
ここで、bo(τ)は、部品全体の仕掛数Bo(τ)に対する重み付けパラメータである。このように、待ち時間の近似は、τ日前の部品全体の仕掛数Bo(τ)に対する重み付け線形和を含んだ形で行うこともできる。言い換えれば、作業時間の推定値w
ESTは、作業回数A(k)、仕掛数Bs(τ)及び仕掛数Bo(τ)の線形回帰モデルで表すことができる。
【0060】
工場全体の観点からみると、上述の作業時間の推定値w
ESTは、ジョブショップ毎に、かつ、部品5毎に存在する。そこで、ジョブショップを特定するためのインデックスをj、部品5を特定するためのインデックスをiでそれぞれ表して、上記の式(4)は、以下の式(5)のように表すことができる。
【数5】
ここで、bo(τ,j)及びBo(τ,j)は、ジョブショップjで作業する部品全体に関する量であるので、部品iには依存しない。
【0061】
上記の式(5)において、A(k,i,j),Bs(τ,i,j),Bo(τ,j)は、予め得られている実績データから算出することができるため、式(5)において、未知であるパラメータは、a(k,i,j),bs(τ,i,j),bo(τ,j)である。これらのパラメータは、計算により、与えられた過去の実績データとの近似誤差が最も小さくなるように決定される。
【0062】
近似式パラメータ決定部11は、実績データに含まれるオーダーの全てについて、実績データから得られたA(k,i,j),Bs(τ,i,j),Bo(τ,j)を式(5)に代入して得られる作業時間の推定値wEST(i,j)と、実績データの作業時間w(i,j)と、の誤差が最小となるようにa(k,i,j),bs(τ,i,j),bo(τ,j)を決定する。近似式パラメータ決定部11は、例えば、作業時間の推定値wEST(i,j)と、実績データの作業時間w(i,j)と、の平均2乗誤差E[(wEST(i,j)-w(i,j))2]が最小となる場合のa(k,i,j),bs(τ,i,j),bo(τ,j)を、式(5)の作業時間a(k,i,j),重み付けパラメータbs(τ,i,j),bo(τ,j)と決定する。このように、式(2)の代わりに式(5)を使用することにより、推定された作業時間と実際の作業時間との誤差をより小さくすることができる。ただし、工場1の規模、ジョブショップjの数、部品iの数等によっては、式(5)の右辺第3項は省略しても良い。式(5)は線形回帰モデルであるので、誤差の大きさを平均2乗誤差Eで定義した場合、パラメータは一般的な最小2乗法を用いて高速に求めることができる。しかし、誤差の大きさは、平均2乗誤差に限定されず、例えば絶対誤差である1乗ノルム、∞乗ノルム等の公知の基準を用いて評価されても良いし、独自に設定した評価基準により評価されても良い。また、誤差が最小となるパラメータの決定は、最小2乗法に限定されず、例えば勾配法、機械学習を用いた方法等、公知の方法を用いて行うことができる。
【0063】
式(5)において未知であるパラメータを全て決定した後、この式(5)を用いて、ジョブショップj毎に、かつ、部品i毎に、作業時間の推定値wEST(i,j)を求めることができる。ただし、状況等を考慮して、式(5)の代わりに、式(2)、式(3)又は式(4)を用いることもできる。以後で式(5)が言及されている部分においても、同様に、式(2)、式(3)又は式(4)を用いることができる。
【0064】
次に、総作業時間近似式パラメータ決定部13及び総作業時間推定部14について詳細に説明する。総作業時間近似式パラメータ決定部13及び総作業時間推定部14を有することにより、推定装置10は総作業時間推定装置として機能する。
【0065】
w
EST(i,j)は、上述のとおり、部品iに関するあるオーダーがジョブショップjに与えられた場合の作業時間を表す。オーダーは通常、1つだけのジョブショップでは完了せず、複数のジョブショップを経由することにより完了する。部品iに関する、工場1に対するオーダーが完了するまでの総作業時間の推定値w
EST_T(i)は、当該オーダーに関わるジョブショップの集合をJで表すと、以下の式(6)に示すように、各ジョブショップでの作業時間の推定値w
EST(i,j)の総和として表すことができる。
【数6】
総作業時間の推定値w
EST_T(i)は、推定総作業時間と呼ぶこともできる。
【0066】
上記の式(6)では表現されていないが、複数のジョブショップは物理的に離れている場合もあるため、総作業時間を推定するにあたって、ジョブショップ間の移動時間を考慮することで、実際の総作業時間との誤差をより小さくすることができる。移動元のジョブショップを特定するインデックスをj、移動先のジョブショップを特定するインデックスをj’とし、工場へのオーダーが最終的に完了するまでの間にジョブショップjからジョブショップj’へ移動しなければならない回数をC(j,j’)と表す。それぞれの移動に対して一定の移動時間c(j,j’)が掛かると考えると、総作業時間の推定値w
EST_T(i)は、上記の式(6)に代えて、以下の式(7)を用いて表すこともできる。
【数7】
この式の右辺第2項は、総移動時間を表す。総移動時間は、工場へのオーダーが完了するまでの間にジョブショップjからジョブショップj’へ移動しなければならない回数C(j,j’)に対する重み付け線形和として表現される。この重み付け線形和において、未知のパラメータである移動時間c(j,j’)は、重み付けパラメータであると考えることができる。上記のように、総作業時間の推定値w
EST_T(i)は、移動回数C(j,j’)の線形回帰モデルとして表すことができる。
【0067】
上記の式(7)で、C(j,j’)は、予め得られている実績データから求めることができるため、未知であるパラメータは、移動時間c(j,j’)である。総作業時間近似式パラメータ決定部13は、実績データに含まれるオーダーの全てについて、実績データから得られたC(j,j’)を式(7)に代入して得られる総作業時間の推定値wEST_T(i)と、実績データの総作業時間wT(i)と、の誤差が最小となるように移動時間c(j,j’)を決定する。
【0068】
例えば、総作業時間近似式パラメータ決定部13は、総作業時間の推定値wEST_T(i)と、実績データの総作業時間wT(i)と、の平均2乗誤差E[(wEST_T(i)-wT(i))2]が最小となるように未知のパラメータである移動時間c(j,j’)を決定する。式(7)は線形回帰モデルであるので、誤差の大きさを平均2乗誤差Eで定義した場合、パラメータは一般的な最小2乗法を用いて高速に求めることができる。しかし、誤差の大きさは、平均2乗誤差に限定されず、例えば絶対誤差である1乗ノルム、∞乗ノルム等の公知の基準を用いて評価されても良いし、独自に設定した評価基準により評価されても良い。また、誤差が最小となるパラメータの決定は、最小2乗法に限定されず、例えば勾配法、機械学習を用いた方法等、公知の方法を用いて行うことができる。
【0069】
式(7)において未知であるパラメータを全て決定した後、総作業時間推定部14は、この式(7)を用いて、部品i毎に、総作業時間の推定値wEST_T(i)を求めることができる。ただし、複数のジョブショップが物理的にあまり離れていない、経由するジョブショップの数が少ない等、ジョブショップ間の移動時間を無視しても実際の総作業時間と推定された総作業時間との誤差が小さいと考えられる場合は、総作業時間推定部14は、式(7)の代わりに式(6)を用いて、部品i毎に、総作業時間の推定値wEST_T(i)を求めても良い。
【0070】
本実施形態では、最初に、式(5)における未知のパラメータを決定した後、式(7)における未知のパラメータを決定している。しかし、最初に式(5)の未知のパラメータを決定せず、式(7)において未知のパラメータの全てを一度に決定する方が、考え方として簡素であるということもできる。言い換えれば、近似式パラメータ決定部11及び作業時間推定部12を、総作業時間近似式パラメータ決定部13及び総作業時間推定部14に統合することも可能である。この場合、総作業時間近似式パラメータ決定部13で式(7)における未知のパラメータを決定し、総作業時間推定部14で、部品i毎に、各ジョブショップjでの作業時間wEST、及び総作業時間の推定値wEST_T(i)を求めることができる。
【0071】
しかし、本実施形態では、推定を意図的に2段階に分けて行っている。これにより、未知のパラメータ同士の組合せ爆発を回避して、全体としての計算コスト、具体的には計算時間及び使用メモリ量を大幅に減らすことができる。
【0072】
式(7)におけるパラメータc(j,j’)について説明する。データの記録方法にもよるが、上述の実績データにおいては、移動時間c(j,j’)が、移動元のジョブショップj又は移動先のジョブショップj’における作業時間として暗示的に含まれており、単独で分離して把握することができない場合が多い。本実施形態では、そのような事情を無視して、式(5)における未知のパラメータを決定し、作業時間の推定値wEST(i,j)を求めている。従って、式(7)の移動時間c(j,j’)は、その名のとおり移動時間を意味していると同時に、移動時間の分離をせずに式(5)のように作業時間の推定値wEST(i,j)を求めることによる影響を吸収するための調整時間という役割も有している。このことから、式(7)の移動時間c(j,j’)は、負の値をとることもあり得る。
【0073】
生産シミュレータ15は、複数のオーダーが様々なタイミングで工場1に与えられた場合の、各オーダーの作業完了日を求めることができる。
【0074】
推定装置10と通信可能なクライアントコンピュータは、キーボード、マウス、タッチパネル等の入力部と、ディスプレイ、スクリーン等の出力部と、を備える。ユーザは、当該入力部を操作することにより、生産シミュレータ15に、オーダー情報を多数(例えば、数千個)並べたオーダーデータ列を入力することができる。オーダーデータ列の入力は、例えばテキストファイルの読込みによって実現することができる。それぞれのオーダー情報は、オーダー番号、オーダーが工場に与えられる日付、オーダーの対象部品、及び納期を示すオーダー必要日等の情報を含んでいる。生産シミュレータ15は、オーダーデータ列が入力されると、シミュレーション結果情報を多数並べた結果データ列を、前記出力部へ出力する。シミュレーション結果情報は、前述のオーダー情報と1対1で対応している。それぞれのシミュレーション結果情報は、オーダー番号、各ジョブショップの作業完了日、各ジョブショップでの待ち時間、あるジョブショップから別のジョブショップまでの移動時間、及びオーダーの作業完了日の日付等の情報を含んでいる。この日付又は時間は、オーダーが工場1に与えられた日付と、作業時間推定部12が推定する各ジョブショップの作業時間と、総作業時間推定部14が推定する総作業時間と、を用いて求めることができる。
【0075】
生産のシミュレーションのための処理は、具体的には以下のように行われる。
【0076】
(ステップS1)近似式パラメータ決定部11が、予め、式(5)と実績データに基づいて近似式パラメータを決定する。近似式パラメータ決定部11は、得られたパラメータを作業時間推定部12へ出力する。
(ステップS2)総作業時間近似式パラメータ決定部13が、予め、式(6)又は式(7)と実績データに基づいて総作業時間近似式パラメータを決定する。総作業時間近似式パラメータ決定部13は、得られたパラメータを総作業時間推定部14へ出力する。
(ステップS3)生産シミュレータ15に近似式パラメータ決定部11、総作業時間近似式パラメータ決定部13で推定したパラメータが入力される。更に、生産シミュレータ15にオーダーデータ列が入力される。
(ステップS4)生産シミュレータ15は、ステップS3で入力されたパラメータを利用し、入力されたオーダーに対し、日毎に各ジョブショップでの作業完了日を作業時間推定部12を使って推定する。
(ステップS5)1つの作業区で作業を終えたオーダーは,総作業時間近似式パラメータ決定部13で推定した作業区間移動時間で補正したのち,次の作業区に送られる。
(ステップS6)ステップS4及びステップS5の処理をすべてのオーダーに対して日付順に繰り返すことにより,すべてのオーダーの各ジョブショップでの工程完了日とオーダー完了日が推定される。
(ステップS7)生産シミュレータ15は、推定された上記の情報を取りまとめて出力部に出力する。
【0077】
本願発明者は、上記の生産シミュレータ15の有用性を確かめるために、以下のシミュレーションを行った。即ち、最初に、多数のオーダーを適宜の確率分布に従ってランダムなタイミングで生成し、検証用オーダーデータ列を作成した。この検証用オーダーデータ列において、各オーダーの対象部品はランダムとした。次に、この検証用オーダーデータ列に従って工場にオーダーが与えられたと仮定したときに、完成に至るまでオーダーがどのジョブショップを通過したかの情報と、各ジョブショップの作業時間と、総作業時間とを、待ち行列M/D/sモデルを用いたシミュレーション計算によって求め、この結果を仮想の実績データとした。待ち行列モデルにおいて、ジョブショップの数は15、部品の数は20、作業内容の種類の数は10とした。
【0078】
図6は、上記の待ち行列モデルによるシミュレーション結果を視覚的に示したものである。
図7は、仮想の実績データを近似式パラメータ決定部11、作業時間推定部12、総作業時間近似式パラメータ決定部13及び総作業時間推定部14に入力して得られるパラメータを生産シミュレータ15に組み込み、検証用オーダーデータ列を入力して得られた結果データ列を視覚的に示したものである。
図6、
図7のグラフにおいて、横軸は日付、縦軸はオーダー番号である。グラフに多数ある左右方向の直線のそれぞれは、あるオーダーがあるジョブショップを通過したことに対応する。直線の左右位置はジョブショップを経由した時期を示し、1つの直線の長さは、作業時間の長さを示す。複数の直線が左右に並んでいる場合、オーダーが複数のジョブショップを通過したことを意味する。左右で隣り合う直線の間にある隙間は、作業区在庫、即ち各ジョブショップでの待ち時間、及びあるジョブショップから別のジョブショップまでの移動時間の和を意味する。
【0079】
最も右方に位置する直線の右端の位置は、オーダーの作業完了日を示している。以下、オーダーの作業完了日を、オーダー完了日と呼ぶことがある。直線に対して最も右方にあるマークは、オーダー必要日を示している。オーダー完了日からオーダー必要日までの間の期間は、完成品在庫を意味する。
【0080】
図7のグラフは、
図6のグラフと良く似ている。これは、本実施形態の線形回帰モデルが、待ち行列モデルによりシミュレーション的に生成した仮想の実績データを良好に近似できることを示している。即ち、本実施形態の推定装置10が、各オーダーの実績データを良好に推定できることを示している。
【0081】
図8は、設置数が15であるジョブショップのうち1つに着目した、
図6及び
図7のグラフに対応する仕掛数の時間変化を示す。
図8のグラフにおいて、横軸は日付、縦軸は仕掛数である。
図8のグラフにおいて、実線が上記待ち行列モデルによりシミュレーション計算した仕掛数の仮想の実績データであり、破線が生産シミュレータ15のシミュレーション計算による仕掛数の推定値である。2つの曲線は良く似ている。これは、ジョブショップ毎の仕掛数の観点から言っても、本実施形態の線形回帰モデルが実績データを良好に近似できることを示している。
【0082】
図8のグラフにおける水平な破線は、当該ジョブショップにおける同時作業可能オーダー数を示している。曲線が同時作業可能オーダー数を大きく超えている部分は、当該ジョブショップの待ち時間が大きくなりがちなこと、言い換えれば、当該ジョブショップがボトルネックになり易いことを示している。このように、本実施形態の線形回帰モデルを用いたシミュレーション計算によれば、小さな計算コストでボトルネックを容易に発見することができる。
【0083】
上記は実績データをシミュレーション計算により生成した例であるが、本願発明者は、実際の工場を運用することにより得られた実績データに対しても実験を行った。この結果は図示しないが、現実の工場から得られた実績データに基づいて近似式の未知のパラメータを決定した場合でも、生産シミュレータ15を用いてオーダー完了日を良好な精度で推定できることが確かめられた。
【0084】
次に、本実施形態の線形回帰モデルを用いた、工場の工程スケジューリングの2つの例を説明する。このスケジューリングは、推定装置10が備えるスケジューリング部16によって実現することができる。
【0085】
工程スケジューリング方法の第1例を説明する。
【0086】
このスケジューリング方法は、以下のようにして実現される。即ち、最初に、工場1に与える複数のオーダーのそれぞれについて、オーダー開始日を、一律に、オーダー必要日の所定日数前となるように定める。次に、定められたオーダー開始日に従ってオーダーデータ列を生成し、当該オーダーデータ列を基に、生産シミュレータ15によって各オーダーのオーダー完了日が推定される。
【0087】
続いて、全てのオーダーについて、推定されたオーダー完了日がオーダー必要日よりも遅くならないようにスケジューリングを行う。このスケジューリングは、例えば、オーダー完了日がオーダー必要日より遅れている1以上のオーダーがある場合に、全オーダーのオーダー開始日を、遅れの最大日数だけ早くなるように変更することで実現することができる。
【0088】
図9には、第1例のスケジューリングにより得られた工程が示されている。
図9のグラフにおいては、オーダー必要日のマークよりも右へはみ出す直線が1つもない。このように、第1例によれば、全てのオーダーがオーダー必要日に間に合うようにスケジューリングできていることが分かる。
【0089】
工程スケジューリング方法の第2例を説明する。このスケジューリング方法は、以下の[1]~[6]により実現される。
【0090】
[1]最初に、各オーダーについて、工場にオーダーする日、即ちオーダー開始日の初期値を定める。初期値の定め方は任意であるが、例えば、一律に、オーダー必要日の所定日数前となるように定めることができる。
【0091】
[2]定められたオーダー開始日に従ってオーダーデータ列を生成し、当該オーダーデータ列を基に、生産シミュレータ15によって各オーダーのオーダー完了日及び工程が推定される。工程とは、例えば、各ジョブショップの作業完了日、各ジョブショップでの待ち時間、あるジョブショップから別のジョブショップまでの移動時間等の情報である。
【0092】
[3][2]で得られた推定結果に基づいて、例えば、平均リードタイム等、適宜の評価値を計算する。得られた評価値は、工程とともに保存される。
【0093】
[4]全てのオーダーについて、以下の[a],[b]を行う。[a]オーダー完了日がオーダー必要日を超えるオーダーについては、オーダー開始日を、遅れ日数のp1倍だけ前となるように修正する。遅れ日数は、オーダー完了日からオーダー必要日を減算した日数である。p1は、1より大きい数であり、例えば1.5とすることができる。[b]オーダー完了日がオーダー必要日を超えないオーダーについては、オーダー開始日を、余裕日数のp2倍だけ後となるように修正する。余裕日数は、オーダー必要日からオーダー完了日を減算した日数である。p2は、0より大きく1より小さい数であり、例えば0.5とすることができる。
【0094】
[5]所定の回数だけ、上記の[2]~[4]の処理を反復する。所定の回数は適宜設定できる。
【0095】
[6]保存されている評価値の中で最も良好な評価値に対応する工程及びオーダー開始日を、スケジューリング結果として採用する。
【0096】
図10には、第1例で用いたのと同一のオーダーの集合に関して、第2例のスケジューリングにより得られた工程が示されている。第2例においても第1例と同様に、全てのオーダーがオーダー必要日に間に合うようにスケジューリングできていることが分かる。
【0097】
第2例のスケジューリングによる工程では、第1例と比較してオーダー完了日がオーダー必要日に近接しており、これは、完成品在庫を削減できていることを意味する。発明者の試算によれば、第2例の平均リードタイムは、第1例の平均リードタイムの36%程度であった。これは、第2例が工程のスケジューリングとして相当に優れていることを示している。
【0098】
次に、ボトルネックの改善のために導入することが可能な増強係数について説明する。
【0099】
上述の式(5)においては、作業時間の推定値wESTが、実作業時間の項と待ち時間の項の和として表現されている。これは、各ジョブショップにおいて、それぞれのオーダーが待ち状態であるか実作業状態であるかを推定できることを意味する。即ち、本実施形態において、ジョブショップの仕掛数は、待ち状態の仕掛数と実作業状態の仕掛数とに分解して推定することができる。
【0100】
本例においては、待ち状態仕掛数の平均値が計算される。以下、待ち状態仕掛数の平均値が所定値以上であるジョブショップをボトルネックのジョブショップと称することがある。また、待ち状態仕掛数の平均値が別の所定値を下回るジョブショップを、余裕があるジョブショップと称することがある。
【0101】
本例においては、同時作業可能オーダー数sを何倍にすべきかの目安となる増強係数が、それぞれのジョブショップについて求められる。具体的には、以下の[a]~[e]に示す処理が行われる。
【0102】
[a]最初に、全てのジョブショップについての増強係数を1で初期化する。
【0103】
[b]工程のスケジューリングを行う。このスケジューリングは、例えば、上述した工程スケジューリング方法の第1例又は第2例によって行うことができる。このときのジョブショップごとの作業時間及び総作業時間の推定は、それぞれのジョブショップの同時作業可能オーダー数sに増強係数を乗じた形で行われる。
【0104】
[c][b]で設計された工程に基づいて、ボトルネックのジョブショップと、余裕があるジョブショップと、を特定する。
【0105】
[d]ボトルネックのジョブショップに関しては、増強係数を以前のq1倍となるように修正する。q1は、1より大きい数であり、例えば2とすることができる。余裕があるジョブショップに関しては、増強係数を以前のq2倍となるように修正する。q2は、1より小さい数であり、例えば0.66とすることができる。
【0106】
[e]上記の[b]~[d]を、所定回数、又は、増強係数が収束するまで反復する。
【0107】
上記により、各ジョブショップについて増強係数が得られる。この増強係数が1より大幅に大きい場合、ボトルネックの解消のために、当該ジョブショップに対する人員等の増強を検討すべきことを意味する。一方、増強係数が1より大幅に小さい場合、当該ジョブショップの人員等の削減を検討する余地があることを意味する。このように、増強係数を用いることで、ボトルネック解消のための措置を適切に行うことが可能になる。
【0108】
本実施形態による作業時間及び総作業時間の推定が有利な点をまとめると、以下のとおりである。
【0109】
本実施形態の構成により、部品iに対するジョブショップjの作業時間の推定値と、部品iのオーダーが完了するまでの総作業時間の推定値と、を得ることができる。特筆すべきは、上記の作業時間の推定値及び総作業時間の推定値を得るために、それぞれのジョブショップの属性を考慮したシミュレーションを行う必要がない。従って、計算負荷の少ない実用的な方法で、これらの推定値を得ることができる。言い換えれば、従来のシミュレーションでは組合せ爆発を起こして、一般的な処理能力のコンピュータでは処理時間的に破綻するような大規模なジョブショップ型生産システムに対しても、本実施形態の構成によれば、現実的な処理時間で良好な精度の推定値を得ることができる。
【0110】
本実施形態によれば、実作業時間等のデータが過去の実績データに含まれなくても、作業時間及び総作業時間を問題なく推定することができる。即ち、実作業日数a、同時作業可能なオーダー数s等に関しては各ジョブショップがブラックボックスであることを許容しながら、実用的な精度で、作業時間の推定値及び総作業時間の推定値を得ることができる。
【0111】
例えば大規模なジョブショップでは、個々の部品をマスターで管理することは事実上不可能であることが多い。本実施形態の構成は、そのような場合でも作業時間及び総作業時間を良好に推定でき、この点で極めて有利である。
【0112】
上記の推定値は、ジョブショップ型生産システムの生産効率を高める上で特に有用な値であるから、ジョブショップ型生産システムのあらゆる場面で様々に利用することができる。例えば、以下の(1)~(3)に示す活用方法が考えられる。
【0113】
(1)部品iのオーダーが完了するまでの総作業時間の推定値に基づいて、完成在庫を減らすことができる。この結果、原料費及び保管場所等のコストを大幅に削減できる。
【0114】
(2)部品iに対するジョブショップjの作業時間の推定値が、ジョブショップjで待ち時間ゼロで部品iを処理するのに要する時間を大幅に上回っていれば、当該ジョブショップがボトルネックになっていると判断することができる。このように生産上のボトルネックを簡単に発見できるため、当該ジョブショップjのライン数を増加させたり、当該ジョブショップjの前工程を検討して改善したりする等の対応が容易になる。
【0115】
(3)例えば、部品iのオーダーが完了するまでの総作業時間の推定値が、指示された納期に間に合わない場合を考える。本来、このようなオーダーは受注を断念せざるを得ない。しかし、このような状況でも、指示された納期が、部品iが各ジョブショップにおいて待ち時間ゼロで作業されると仮定した場合の総作業時間で間に合う程度の納期であれば、各ジョブショップにおいて部品iの通過工程を最優先で処理するようにすることで、当該オーダーを受注して納期に間に合わせる余地がある。このように、利益等を考慮して、工程を柔軟にスケジューリングすることができる。
【0116】
以上に説明したように、本実施形態の推定装置10は、ジョブショップ型生産システムを構成するジョブショップに部品のオーダーが与えられた場合におけるジョブショップの作業時間を推定する。推定装置10は、近似式パラメータ決定部11と、作業時間推定部12と、を備える。近似式パラメータ決定部11は、作業時間の推定値wESTを求める近似式に含まれる未知のパラメータを、過去の作業時間の実績データに基づいて決定する。作業時間推定部12は、パラメータが決定された近似式を用いて作業時間の推定値wESTを求める。作業時間は、実作業時間と待ち時間の和で表される。ある部品のオーダーが、あるジョブショップに与えられ、オーダー日から0日前,1日前,・・・,M日前における、ジョブショップにおける部品のオーダーの仕掛数BsがBs(0),Bs(1),・・・,Bs(M)で表される場合を考える。近似式パラメータ決定部11は、近似式により得られる作業時間の推定値wESTと、過去の作業時間wの実績データと、の誤差が最小となるように、未知のパラメータを決定する。近似式は、τ=0,1,・・・,Mに関する、重み付けパラメータbs(τ)を用いた前記仕掛数Bs(τ)の重み付け線形和の項を含む。未知のパラメータに、重み付けパラメータbs(τ)が含まれる。
【0117】
これにより、近似式の未知のパラメータを小さな計算コストで決定することができる。また、ジョブショップの作業時間の推定値wESTを短時間の計算で得ることができるため、特に大規模なジョブショップ型生産システムに好適である。
【0118】
本実施形態のジョブショップ作業時間の推定装置10において、近似式に含まれる仕掛数Bs(τ)及び重み付けパラメータbs(τ)におけるτの最大値Mは、オーダーがジョブショップに与えられた場合の実作業時間aがa日である場合に、M≧aである。
【0119】
これにより、作業時間の推定精度が良好になる。
【0120】
本実施形態において、オーダーを完了するためにジョブショップは1以上の作業を行う。推定装置10において用いられる近似式として例えば式(3)を用いる場合、近似式のうち実作業時間aに相当する項は、各作業を特定するインデックスをkとしたときに、k=1,・・・,NLCに関する、各作業に必要な時間a(k)を用いた、オーダーの完了のために作業を行う回数A(k)の重み付け線形和の項を含む。未知のパラメータに、各作業に必要な時間a(k)が含まれる。
【0121】
これにより、ジョブショップの作業内容を考慮しながら、当該ジョブショップの作業時間を推定することができる。
【0122】
本実施形態において、1以上のジョブショップが、複数の部品に対するオーダーを取り扱うことが可能である。そのようなジョブショップにおいて、オーダーのオーダー日から0日前,1日前,・・・,M日前における、当該ジョブショップにおける全ての部品のオーダーの仕掛数BoがBo(0),Bo(1),・・・,Bo(M)で表される場合を考える。推定装置10において用いられる近似式として例えば式(4)を用いる場合、当該近似式は、τ=0,1,・・・,Mに関する、重み付けパラメータbo(τ)を用いた仕掛数Bo(τ)の重み付け線形和の項を含む。未知のパラメータに、重み付けパラメータbo(τ)が含まれる。
【0123】
これにより、オーダー対象の部品と異なる部品に関する仕掛数を考慮しながら、当該ジョブショップの作業時間を推定することができる。
【0124】
本実施形態のジョブショップ作業時間の推定装置10は、部品のオーダーが複数のジョブショップを通過して完了する場合に、部品のオーダーが完了するまでの総作業時間の推定値wEST_Tを求める総作業時間推定部14を備える。作業時間推定部12は、オーダーが通過するそれぞれのジョブショップにおいて必要な作業時間の推定値wESTを求める。総作業時間推定部14は、例えば式(7)に示すように、オーダーが通過するジョブショップに関して推定された作業時間の総和に基づいて、総作業時間の推定値wEST_Tを求める。
【0125】
これにより、部品のオーダーについての総作業時間の推定値wEST_Tを、短時間の計算で得ることができる。
【0126】
本実施形態のジョブショップ作業時間の推定装置10は、総作業時間近似式パラメータ決定部13を備える。総作業時間近似式パラメータ決定部13は、総作業時間の推定値wEST_Tを求める総作業時間近似式に含まれる未知のパラメータを、過去の総作業時間の実績データに基づいて決定する。総作業時間近似式として式(7)が用いられる場合、総作業時間は、作業時間の総和と部品移動時間の和として表される。総作業時間近似式パラメータ決定部13は、総作業時間近似式により得られる総作業時間の推定値wEST_Tと、過去の総作業時間wTの実績データと、の誤差が最小となるように、パラメータを決定する。総作業時間近似式は、ジョブショップを特定するインデックスをj及びj’としたときに、オーダーが通過する複数のジョブショップj,j’に関する、オーダーを完了させるためにジョブショップjからジョブショップj’へ部品iを移動させる回数C(j,j’)の重み付け線形和の項を含む。この重み付け線形和において、ジョブショップjからジョブショップj’への部品移動時間c(j,j’)が、重み付けパラメータとして用いられる。未知のパラメータに、部品移動時間c(j,j’)が含まれる。総作業時間推定部14は、パラメータが決定された総作業時間近似式を用いて、総作業時間の推定値wEST_Tを求める。
【0127】
これにより、ジョブショップ間での移動時間を考慮しながら、部品のオーダーについての総作業時間を推定することができる。
【0128】
本実施形態のジョブショップ作業時間の推定装置10は、複数のジョブショップによる部品の生産をシミュレートする生産シミュレータ15を備える。生産シミュレータ15は、作業時間推定部12が求めた作業時間の推定値wESTを用いて、生産のシミュレートを行う。
【0129】
これにより、工程計画等のために極めて有用な情報を素早く得ることができる。
【0130】
本実施形態のジョブショップ作業時間の推定装置10は、生産シミュレータ15のシミュレート結果に応じてオーダーのオーダー開始日を変更するスケジューリング部16を備える。
【0131】
これにより、オーダーの良好なスケジューリングを実現することができる。
【0132】
以上に本開示の好適な実施の形態を説明したが、上記の構成は例えば以下のように変更することができる。変更は単独で行われても良いし、複数の変更が任意に組み合わせて行われても良い。
【0133】
近似式における未知のパラメータは、近似式により得られる推定作業時間と、過去の作業時間の実績データと、の誤差が最小ではなく、要求される推定精度から外れない範囲で、最小より少し大きい数となるように決定されても良い。総作業時間近似式における未知のパラメータについても同様である。
【0134】
作業時間の推定値wESTを求めるための式(2)~式(5)に関して、上記した以外の観点から拡張が行われても良い。総作業時間の推定値wEST_Tを求めるための式(6)、式(7)についても同様である。
【0135】
前記仕掛数Bs(τ)及び前記重み付けパラメータbs(τ)におけるτの最大値Mとして、実作業時間aより小さい値が採用されても良い。
【0136】
推定装置10において、生産シミュレータ15及びスケジューリング部16のうち少なくとも何れかが省略されても良い。
【0137】
仕掛数Bs(τ)を集計して求める単位となる時間(タイムスケール)は、オーダー日の0日前,1日前,・・・,M日前とすることに代えて、例えば、オーダー時の0時間前,1時間前,・・・,M時間前とすることもできる。シフト制が定められている工場において、例えば、その1回のシフトを単位時間とすることもできる。このように、単位時間をどのように定めるかは任意である。
【0138】
工場1を構成する全ての加工場4が1つの経営主体によって運営されても良いし、加工場4のうち一部が別の経営主体によって運営されても良い。
【0139】
本明細書で開示する要素の機能は、開示された機能を実行するように構成又はプログラムされた汎用プロセッサ、専用プロセッサ、集積回路、ASIC(Application Specific Integrated Circuits)、従来の回路、及び/又は、それらの組み合わせ、を含む回路又は処理回路を使用して実行できる。プロセッサは、トランジスタやその他の回路を含むため、処理回路又は回路と見なされる。本開示において、回路、ユニット、又は手段は、列挙された機能を実行するハードウェアであるか、又は、列挙された機能を実行するようにプログラムされたハードウェアである。ハードウェアは、本明細書に開示されているハードウェアであっても良いし、あるいは、列挙された機能を実行するようにプログラム又は構成されているその他の既知のハードウェアであっても良い。ハードウェアが回路の一種と考えられるプロセッサである場合、回路、手段、又はユニットはハードウェアとソフトウェアの組み合わせであり、ソフトウェアはハードウェア及び/又はプロセッサの構成に使用される。
【符号の説明】
【0140】
1 工場
4 加工場(ジョブショップ)
5 部品