説明

生産枠を伴う多品目多段工程動的ロットサイズスケジューリング方法

【課題】品目群のファミリーの生産枠を確保する手法を導入して既存のスケジューリングの問題を解決すること。
【解決手段】実機械が処理する実品目の材料となるファミリー品目を処理する仮想機械が前段工程にあるものと仮定した多品目多段工程生産システム100をスケジューリング対象として、少なくとも仮想品目と当該仮想品目の生産枠の中で処理すべき実品目との関係を示す情報を設定するとともに、1)実機械もしくは仮想機械が複数の品目を同時に処理することを禁止する機械干渉禁止制約と、2)実品目の材料となる仮想品目もしくは実品目の品切れを禁止する仕掛かり品目の品切れ禁止制約と、3)仮想品目の材料となる実品目に材欠が生じることを禁止する材欠禁止制約と、4)予め定めた実機械別もしくは仮想機械別の品目の集合の仕掛かり量を制限する機械別仕掛かり制約とを設定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の機械により複数の工程で当該各工程に対応した品目をそれぞれ処理し、かつ少なくとも1つの機械または工程では段取を伴う品目の切り換えが可能な多品目多段工程生産システムに適用される生産スケジュールを生成するのに好適な多品目多段工程動的ロットサイズスケジューリング方法に関し、特に、同じファミリーに属する品目群を該ファミリーの生産枠(処理の時間帯)の中で処理する生産スケジュールを生成するのに好適な、生産枠を伴う多品目多段工程動的ロットサイズスケジューリング方法に関する。
【背景技術】
【0002】
一般に、複数の機械により複数の工程で当該各工程に対応した品目をそれぞれ処理し、かつ少なくとも1つの機械または工程では段取を伴う品目の切り換えが可能な多品目多段工程生産システムにおいては、適切な生産スケジュールを生成する必要から、多品目多段工程動的ロットサイズスケジューリングと呼ばれる手法が採用される。
【0003】
例えば、特許文献1には、多品目多段工程のスケジューリングの問題に含まれる多様な決定の諸局面を一つ一つ列挙することも意識することもなく、また人為的な制約を必要とすることなく、当該諸局面を全体最適化の視点から解決して経済的かつ合理的な実行可能スケジュールを生成する手法が提案されている。
【特許文献1】特開2002−328977号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、扱うべき品目の数が膨大になってくると、個々の段取りの調整が困難となり、時間的ロスや仕掛かり量の増加などの種々な問題が増大するため、既存のスケジューリング技術では対処が困難になってくる。
【0005】
この問題に対処するには、例えば、類似する品目群をファミリーとして捉え、同じファミリーに属する品目群については納期の許す限りファミリーの生産枠(処理の時間帯)を確保してその中でまとめて処理するように計画することが望まれる。しかしながら、そのような計画は簡単に実現できるものではない。
【0006】
本発明は上記実情に鑑みてなされたものであり、品目群のファミリーの生産枠を確保する手法を導入して既存のスケジューリングの問題を解決することのできる、生産枠を伴う多品目多段工程動的ロットサイズスケジューリング方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明に係る生産枠を伴う多品目多段工程動的ロットサイズスケジューリング方法は、複数の機械により複数の工程で当該各工程に対応した品目をそれぞれ処理し、かつ少なくとも1つの機械または工程では段取を伴う品目の切り換えが可能な多品目多段工程生産システムに適用される生産スケジュールをコンピュータにより生成する、生産枠を伴う多品目多段工程動的ロットサイズスケジューリング方法であって、実機械が処理する実品目の材料となる仮想品目を処理する仮想機械が前段工程にあるものと仮定した多品目多段工程生産システムをスケジューリング対象として、少なくとも仮想品目と当該仮想品目の生産枠の中で処理すべき実品目との関係を示す情報を設定するとともに、1)実機械もしくは仮想機械が複数の品目を同時に処理することを禁止する機械干渉禁止制約と、2)実品目の材料となる仮想品目もしくは実品目の品切れを禁止する仕掛かり品目の品切れ禁止制約と、3)仮想品目の材料となる実品目に材欠が生じることを禁止する材欠禁止制約と、4)予め定めた実機械別もしくは仮想機械別の品目の集合の仕掛かり量を制限する機械別仕掛かり制約とを設定する制約設定ステップと、各制約にそれぞれ対応するラグランジュ乗数を有するラグランジュ関数を用いたスケジュールを品目別に生成する品目別スケジュール生成ステップと、いずれかの制約において違反量が閾値を超えるものがある場合に、前記ラグランジュ関数における該当するラグランジュ乗数を更新するラグランジュ乗数更新ステップとを有することを特徴とする。
【0008】
本発明に係るプログラムは、複数の機械により複数の工程で当該各工程に対応した品目をそれぞれ処理し、かつ少なくとも1つの機械または工程では段取を伴う品目の切り換えが可能な多品目多段工程生産システムにおける生産枠を伴う多品目多段工程動的ロットサイズスケジューリングのためのプログラムであって、コンピュータに、実機械が処理する実品目の材料となる仮想品目を処理する仮想機械が前段工程にあるものと仮定した多品目多段工程生産システムをスケジューリング対象として、少なくとも仮想品目と当該仮想品目の生産枠の中で処理すべき実品目との関係を示す情報を設定するとともに、1)実機械もしくは仮想機械が複数の品目を同時に処理することを禁止する機械干渉禁止制約と、2)実品目の材料となる仮想品目もしくは実品目の品切れを禁止する仕掛かり品目の品切れ禁止制約と、3)仮想品目の材料となる実品目に材欠が生じることを禁止する材欠禁止制約と、4)予め定めた実機械別もしくは仮想機械別の品目の集合の仕掛かり量を制限する機械別仕掛かり制約とを設定する制約設定機能と、各制約にそれぞれ対応するラグランジュ乗数を有するラグランジュ関数を用いたスケジュールを品目別に生成する品目別スケジュール生成機能と、いずれかの制約において違反量が閾値を超えるものがある場合に、前記ラグランジュ関数における該当するラグランジュ乗数を更新するラグランジュ乗数更新機能とを実現させることを特徴とする。
【0009】
本発明に係る生産枠を伴う多品目多段工程動的ロットサイズスケジューリング装置は、複数の機械により複数の工程で当該各工程に対応した品目をそれぞれ処理し、かつ少なくとも1つの機械または工程では段取を伴う品目の切り換えが可能な多品目多段工程生産システムに適用される生産スケジュールをコンピュータにより生成する、生産枠を伴う多品目多段工程動的ロットサイズスケジューリング装置であって、実機械が処理する実品目の材料となる仮想品目を処理する仮想機械が前段工程にあるものと仮定した多品目多段工程生産システムをスケジューリング対象として、少なくとも仮想品目と当該仮想品目の生産枠の中で処理すべき実品目との関係を示す情報を設定するとともに、1)実機械もしくは仮想機械が複数の品目を同時に処理することを禁止する機械干渉禁止制約と、2)実品目の材料となる仮想品目もしくは実品目の品切れを禁止する仕掛かり品目の品切れ禁止制約と、3)仮想品目の材料となる実品目に材欠が生じることを禁止する材欠禁止制約と、4)予め定めた実機械別もしくは仮想機械別の品目の集合の仕掛かり量を制限する機械別仕掛かり制約とを設定する制約設定手段と、各制約にそれぞれ対応するラグランジュ乗数を有するラグランジュ関数を用いたスケジュールを品目別に生成する品目別スケジュール生成手段と、いずれかの制約において違反量が閾値を超えるものがある場合に、前記ラグランジュ関数における該当するラグランジュ乗数を更新するラグランジュ乗数更新手段とを具備することを特徴とする。
【発明の効果】
【0010】
本発明によれば、品目群のファミリーの生産枠を確保する手法を導入して既存のスケジューリングの問題を解決することが可能となる。
【発明を実施するための最良の形態】
【0011】
以下、図面を参照して、本発明の実施の形態について説明する。
【0012】
《概要》
本実施形態では、生産枠を伴う多品目多段工程動的ロットサイズスケジューリング方法を提案する。従来の問題を解決するため、本実施形態では、類似する品目群(例えば、材料として同じ部品、染料、薬品等を使用する品目群)をファミリーとして捉え、同じファミリーに属する品目群については納期の許す限りファミリーの生産枠(処理の時間帯)を確保してその中でまとめて処理するように計画することを目指す。
【0013】
そして、本実施形態では、当該計画の困難さを克服するために、実品目を処理する実機械のほか、実品目の材料となる仮想品目(ファミリー品目)を処理するための仮想機械の概念を導入し(すなわち、既存の「いつ(t)、どの品目(i)、どの機械(k)」の3項関係を拡張して、仮想機械やファミリー品目をも含めた工程間の関係も定義し)、既存の多品目多段工程動的ロットサイズスケジューリング問題の解法に帰着させてその問題を解く。その段階で、特に、ファミリー品目の材料となる実品目に材欠が生じることを禁止する材欠禁止制約が必要となることに着眼する。この制限を含めてスケジューリング問題を解くことにより、元の問題の(十分条件は満たされないものの)必要条件が満たされるようにする。
【0014】
さらに、その解には時間的な冗長性あるいは自由度がある(処理の時間帯を前後にシフトすることが許される)ので、それを利用して、ヒューリスティックにファミリー品目の生産枠予定とそれに対応する実品目の処理予定を同期化させることなどを提案する。
【0015】
図1は、本発明の一実施形態に係る多品目多段工程動的ロットサイズスケジューリング装置の主要な機能構成の一例を示す図である。なお、機能構成については、この図1の例に限定されるものではなく、適宜、変形して実施することが可能である。
【0016】
この図1のスケジューリング装置は、多工程から成る生産システムにおいて多様な注文を複数の品目に分類して切り換え生産をするためのスケジューリング(多品目多段工程動的ロットサイズスケジューリング)の有する問題、つまり高次元時間最適化問題を解いて最適スケジュールを決定するものである。
【0017】
このスケジューリング装置は、例えば図2に示す構成のパーソナルコンピュータ等の計算機によって実現される。図2の計算機は、当該計算機全体を制御するCPU21、当該CPU21が実行する最適化スケジューリングプログラム241を含む各種プログラム及びデータ等が記憶される主メモリ22とを備えている。
【0018】
図2の計算機はまた、外部記憶装置としての例えば磁気ディスク装置(以下、HDDと称する)23と、記録媒体としての例えばCD−ROM242に予め格納されている情報を計算機内に読み込むことが可能なCD−ROM装置24とを有している。図2の例では、CD−ROM242には、複数の工程(多段工程)、多機械(多設備)で複数の品目を生産する生産システムにおける多品目多段工程動的ロットサイズスケジューリングを行うための最適化スケジューリングプログラム241が予め格納されている。この最適化スケジューリングプログラム241は、CD−ROM装置24によりCD−ROM242から計算機内に読み込まれて、HDD23に格納(インストール)されていものとする。CPU21がHDD23から最適化スケジューリングプログラム241を主メモリ22上に読み込んで当該プログラム241を実行することにより、図1のスケジューリング装置の各種機能が実現される。
【0019】
図2の計算機は更に、入力装置としてのキーボード25と、表示用の出力装置としてのディスプレイ26とを有している。CPU21、主メモリ22、HDD23、CD−ROM装置24、キーボード25及びディスプレイ26は、システムバス27により相互接続されている。
【0020】
図1のスケジューリング装置は、設定部11、品目別スケジュール生成部12、制約違反監視部13、ラグランジュ乗数更新部14、実行可能スケジュール生成部15などの機能を備えている。
【0021】
設定部11は、実機械が処理する実品目の材料となる仮想品目(以下、「ファミリー品目」もしくは「F品目」と称す)を処理する仮想機械(以下、「ファミリー」と称す場合がある)が前段工程にあるものと仮定した多品目多段工程生産システムをスケジューリング対象として、スケジューリングに使用する各種の数理モデルの設定やそれらに使用するデータ類の設定(例えば、品目間の親子関係を示す情報、機械と品目との対応関係を示す情報、ファミリー品目と当該ファミリー品目の生産枠の中で処理すべき実品目との関係を示す情報などの設定や、各種の制約条件の設定や、ラグランジュ乗数の設定など)を行う機能である。制約条件に関しては、設定部11は、1)実機械もしくは仮想機械が複数の品目を同時に処理することを禁止する機械干渉禁止制約と、2)実品目の材料となるファミリー品目もしくは実品目の品切れを禁止する仕掛かり品目の品切れ禁止制約と、3)ファミリー品目の材料となる実品目に材欠が生じることを禁止する材欠禁止制約と、4)予め定めた実機械別もしくは仮想機械別の品目の集合の仕掛かり量を制限する機械別仕掛かり制約とを設定する機能を有する。
【0022】
品目別スケジュール生成部12は、各制約にそれぞれ対応するラグランジュ乗数を有するラグランジュ関数を用いたスケジュールを品目別に生成する機能である。
【0023】
制約違反監視部13は、いずれかの制約において違反量が閾値を超えるものがあるか否かを監視し、違反量が閾値を超えるものがある場合、その違反量に応じてラグランジュ関数における該当するラグランジュ乗数を更新するようラグランジュ乗数更新部14に指示する機能である。
【0024】
ラグランジュ乗数更新部14は、制約違反監視部13から指示があった場合にラグランジュ関数における該当するラグランジュ乗数を更新する機能である。
【0025】
実行可能スケジュール生成部15は、ラグランジュ乗数の更新等を通じて調整された品目別スケジュールに基づき、実行可能スケジュールを生成する機能である。この実行可能スケジュール生成部15は、少なくとも前述の機械干渉禁止制約の違反、仕掛かり品目の品切れ禁止制約の違反、および材欠禁止制約の違反を順次解消していくヒューリスティクス・アルゴリズムを通じて実行可能スケジュールを生成する機能を備えている。すなわち、実行可能スケジュール生成部15は、ロット開始/終了時点取得部16、機械干渉禁止制約違反解消部17、仕掛かり品目の品切れ禁止制約違反解消部18、材欠禁止制約違反解消部19などの機能を含む。
【0026】
ロット開始/終了時点取得部16は、機械別品目別に、すべてのロットの開始時点と終了時点とを把握する機能である。機械干渉禁止制約違反解消部17は、機械別品目別に、機械干渉を起こしているロットの移動を行うこと等によって、前記機械干渉禁止制約の違反を解消する機能である。仕掛かり品目の品切れ禁止制約違反解消部18は、品目別に、品切れを起こしているロットの処理の速度もしくは順序を変えること等によって、前記仕掛かり品目の品切れ禁止制約の違反を解消する機能である。材欠禁止制約違反解消部19は、仮想品目の処理と実品目の処理との同期をとること等によって、前記材欠禁止制約の違反を解消する機能である。
【0027】
ここで、図3に、スケジューリング対象となる多品目多段工程生産システムに仮想機械の概念を導入した場合の一般的な構成の一例を示す。
【0028】
同中では、実線の丸は実品目を、点線の丸はファミリー品目を表している。同図の例では、ファミリー品目はF品目1〜7の計7品目であり、実品目は実品目1〜14の計14品目であり、実品目8〜14が最終製品(品目)である。
【0029】
また、実線の四角は実機械を、点線の四角は仮想機械を表している。同図の例では、仮想機械1がF品目1〜3を処理し、仮想機械2がF品目4〜7を処理し、実機械1が実品目1〜7を処理し、実機械2が実品目8〜14を処理する。
【0030】
また、実線の丸と丸を繋ぐ実線の矢印は、品目間の親子関係を表している。同図の例では、実品目1と実品目8とは親子関係にある。
【0031】
また、点線の丸と実線の丸を繋ぐ点線の矢印は、ファミリーの関係を表している。同図の例では、実品目1〜3はファミリー品目1に属しており、実品目4,5はファミリー品目2に属している。
【0032】
例えば、このようなファミリー品目と実品目との関係に関しても、仕掛かり品目の品切れ禁止制約を与えることにより、それら実品目を該ファミリー品目の生産枠の中で処理するためのスケジュールの生成が期待される。しかしながら、図3の例では、ファミリー品目と該ファミリー品目が必要とする実品目との関係については定義されていないため、所望のスケジュールを生成することはできない。
【0033】
そこで、本実施形態では、図4の例に示されるようにファミリー品目と該ファミリー品目が必要とする実品目との関係にも着目し、その関係に関して材欠禁止制約をはじめとする各種の制約を与える。
【0034】
制約においては、実品目1,2,3は、ファミリー品目1の生産枠(処理の時間帯)の中でない限り、処理することができないようにする。同様に、実品目4,5は、ファミリー品目2の生産枠(処理の時間帯)の中でない限り、処理することができないようにする。同様に、実品目6,7は、ファミリー品目3の生産枠(処理の時間帯)の中でない限り、処理することができないようにする。
【0035】
また、実品目8,9は、ファミリー品目4の生産枠(処理の時間帯)の中でない限り、処理することができないようにする。同様に、実品目10,11は、ファミリー品目5の生産枠(処理の時間帯)の中でない限り、処理することができないようにする。同様に、実品目12,13は、ファミリー品目6の生産枠(処理の時間帯)の中でない限り、処理することができないようにする。同様に、実品目14は、ファミリー品目7の生産枠(処理の時間帯)の中でない限り、処理することができないようにする。
【0036】
まず、図4の多品目多段工程生産システム100を対象とするスケジューリングにおいて取り扱う記号および数理モデルを以下に示す。
【0037】
《取り扱う記号》
(1)添字
i:品目または処理番号を表し,その集合をI={1,2,…,nI-1,nI}とする。ただし,i=0は市場(システムの外)を表す。
【0038】
k:機械を表し,その集合をK={1,2,…,nK-1,nK}とする。
【0039】
t:タイムスロットを表し,その集合をT={1,2,…,nT-1,nT}とする。
【0040】
(2)集合
A:仕掛かり品目の集合
B:予め定めた品目の集合(例えば,ファミリー別,機械設備別)
K(i):品目iを処理することのできる機械の集合
M(k):機械kが処理できる品目の集合
P(i):品目iの先行直結品目(品目iに使われる品目)の集合
S(i):品目iの後続直結品目(品目iが使われる品目)の集合(空集合を含む)
R(i):ファミリー品目iの先行直結実品目iの集合
R(i):実品目iを材料とするファミリー品目iの集合
(3)入力データ
ik:機械kにおける品目iの1回当たりの段取費用(所与)
i:品目iの処理によって新たに付加される価値に対する1単位当たり1ts当たりの仕掛かり保管費,すなわち梯状在庫(仕掛かり)保管費(所与)
ik:機械kにおける1ts当たりの品目iの処理量(所与)
i0t:品目iのタイムスロットtにおける外部需要あるいは出荷要求量(所与)
ijt:タイムスロットtにおいて品目jを生産するために使用される品目iの所要量
i・t:品目iのタイムスロットtにおける所要量
imaxk:機械kにおける品目iに対する段取り時間(所与)
i0:品目iのタイムスロットt=0における梯状在庫量,すなわち初期梯状在庫量
iu:品目iの梯状在庫量の上限値(所与)
i0:品目iのタイムスロットt=0における実在庫量,すなわち初期実在庫量(所与)
δi0k:機械kにおける品目iのt=0における処理の状態,すなわち初期値(所与)
ρij:品目j1単位当たりの品目iの所要量(所与)
(4)ラグランジュ乗数
μ・tk:機械kのタイムスロットtにおける機械干渉禁止制約(8)式に対応するラグランジュ乗数
μit:仕掛かり品目iのタイムスロットtにおける仕掛かり品目の品切れ禁止制約(9)式に対応するラグランジュ乗数
λ・tk:材欠禁止制約(10)式に対応するラグランジュ乗数
λit:機械別,ファミリー別の仕掛かり制約(11)式に対応するラグランジュ乗数
(5)決定変数
δitk:タイムスロットtにおいて、機械kにより、品目iを処理するときに1をとり、その他の場合には0をとる0-1決定変数。ここに、δitはδitk,k∈K(i)を要素とするベクトルで、
【0041】
【数1】

【0042】
とする。
【0043】
(6)状態変数
itk:品目iのタイムスロットtにおける機械kの段取りの残り時間(単位はts)で,0≦sitk≦simaxkの範囲で推移する。ここに,sitはsitl,l∈K(i)を要素とするベクトルで、
【0044】
【数2】

【0045】
とする。
【0046】
it:品目iのタイムスロットt末における梯状在庫(仕掛かり)量で、定義式は、
【0047】
【数3】

【0048】
しかし、品目iが最終品目(製品)の場合には梯状在庫は実在庫と一致する。
【0049】
(7)その他
v:計算の反復を表す番号
《数理モデル》
(1)目的関数
目的関数は、次のように表わされる。
【0050】
【数4】

【0051】
(2)梯状在庫量の推移方程式
梯状在庫量xitの推移方程式は、次のように表わされる。
【0052】
【数5】

【0053】
上記(3)式のxitは、品目iのタイムスロットt−1末における梯状在庫量(右辺第1項)とタイムスロットtにおける処理量(右辺第2項)との和から外部需要を展開して得られるタイムスロットtまでの所要量ri・t(右辺第3項)を引いたものとして表されている。
【0054】
(3)段取時間の推移方程式
段取時間の推移方程式は、次のように表わされる。
【0055】
【数6】

【0056】
を表す。
【0057】
タイムスロットtにおける各品目iの段取時間の残り時間(残り段取時間)sitkは、機械(生産ライン)の遊休中はsitk=0で、品目を切り換えたとき、すなわち処理状態がδi(t-1)k=0からδitk=1へ変わったときにsimaxkとなる。以後sitkは、時間が1タイムスロット経過する毎に1ずつ0になるまで減少し、それ以後は再び切り換えが起こるまでその状態を維持する。
【0058】
上記(4)式の右辺第1項は、δi(t-1)k=0からδitk=1へ変わったときにsimaxkとなる残り段取時間の状態遷移を示し、第2項中の(si(t-1)k−1)は1タイムスロット経過する毎にsitkが1ずつ減少する状態を示している。
【0059】
(4)梯状在庫量の範囲
梯状在庫量xitの範囲は、次のように表わされる。
【0060】
【数7】

【0061】
(5)各種所要量の関係
品目jの所要量は、次式のように品目iに展開される。
【0062】
【数8】

【0063】
上記(6)式はrijtはρijが反映されたrj・tを用いて表され、上記(7)式はrj・tはrijtとri0tを用いて表されている。
【0064】
上記(7)式では、rj・tは、S(i)に含まれる全品目jについてのタイムスロットtにおいて品目jを生産するために使用される品目iの所要量rijtの総和、つまり後工程(後続直結点)の品目jに組み込まれる量(右辺第1項)と、タイムスロットtにおいてシステムの外へ引かれる分(右辺第2項)との和により表されている。
【0065】
(6)制約条件
i)機械干渉禁止制約
どのタイムスロットtにおいても機械kは高々1品目しか処理できない。ある品目の段取り及び処理中に、別の品目の段取りを行うこともできない。この制約を機械干渉禁止制約と呼び、次式が成立する必要がある。
【0066】
【数9】

【0067】
ii)仕掛かり品目の品切れ禁止制約
仕掛かり品目の品切れは、どのタイムスロットtにおけるどの品目iに対しても許されない。この制約を仕掛かり品目の品切れ禁止制約と呼び、次式が成立する必要がある。
【0068】
【数10】

【0069】
iii)材欠禁止制約(生産枠に使われる前工程からの実品目の品切れを禁止する制約)
材料がなければ生産枠での処理は出来ない。したがって、ファミリー品目の生産枠は、少なくとも、その品目の材料に材欠が起きないように計画されなければならない。更に、材料はあっても生産枠で処理されなければ実品目は生まれない。
【0070】
すなわち、ファミリー品目の生産枠を計画するために必要な条件であって、ファミリー品目に先行直結する実品目(換言すると、該ファミリー品目に後続直結する実品目に先行直結する実品目)の仕掛かり量の総和が材料不足を起こしてはならないというものである。
【0071】
このような制約を材欠禁止制約と呼び、次式が成立する必要がある。
【0072】
【数11】

【0073】
iv)機械別,ファミリー別の仕掛かり制約
予め定めた機械別もしくはファミリー別の品目の集合の仕掛かり量が上限値を超えてはならない。このような制約を機械別,ファミリー別の仕掛かり制約と呼び、次式が成立する必要がある。
【0074】
【数12】

【0075】
(7)Lagrange関数
前述の4種の制約を緩和して次式に示すラグランジュ関数を導く。
【0076】
【数13】

【0077】
ここに、μ・tkは、機械干渉禁止制約(8)式に対応するラグランジュ乗数であり、μitは、仕掛かり品目の品切れ禁止制約(9)式に対応するラグランジュ乗数であり、λ・tkは、材欠禁止制約(10)式に対応するラグランジュ乗数であり、λitは、機械別,ファミリー別の仕掛かり制約(11)式に対応するラグランジュ乗数である。
【0078】
(8)Lagrange関数の分解
前述の(12)式は加算分離可能であるから、
【0079】
【数14】

【0080】
と置けば、ラグランジュ関数を次のように分解することができる。
【0081】
【数15】

【0082】
したがって、ラグランジュ関数の最小化問題は、次のような部分最適化問題に分解することができる。
【0083】
【数16】

【0084】
再び、図4を参照しながら説明する。図4の中には、前述の機械干渉禁止制約(8)式、仕掛かり品目の品切れ禁止制約(9)式、材欠禁止制約(10)式、機械別,ファミリー別の仕掛かり制約(11)式にそれぞれ関連する箇所が指し示されている。以下に、図4の例の中での各制約式の意味合いを制約式ごとに説明する。
【0085】
・機械干渉禁止制約(8)式
例えば、実品目1〜7は,実機械1で処理される。これらすべての品目を同時に処理することができないため、この関係を機械干渉禁止制約とする。
【0086】
・仕掛かり品目の品切れ禁止制約(9)式
例えば、実品目1と8は親子関係にある。実品目8を作る前に、実品目1が出来上がっていなければならない。この関係を仕掛かり品目の品切れ禁止制約とする。
【0087】
・材欠禁止制約(10)式
ファミリー品目の生産枠は、少なくとも、その品目の材料に材欠が起きないように計画されなければならない。更に、材料はあっても生産枠で処理されなければ実品目は生まれない。例えば、実品目1と2のあるタイムスロットにおける在庫の和が、ファミリー品目4のそのタイムスロットにおける在庫よりも常に多くなければならない。この関係を材欠禁止制約とする。
【0088】
・機械別、ファミリー別の仕掛かり制約(11)式
機械別あるいはファミリー別に、それらに属する品目別総仕掛かり量を、予め設定した上限以下に抑えて運用したい場合、機械別、ファミリー別の仕掛かり制約として取り扱う。
【0089】
次に、図5および図6を参照して、同実施形態に係る多品目多段工程動的ロットサイズスケジューリング装置の動作の一例について説明する。
【0090】
本実施形態では、スケジューリングに使用する各種の数理モデルの設定やそれらに使用するデータ類の設定(例えば、品目間の親子関係を示す情報、機械と品目との対応関係を示す情報、ファミリー品目と当該ファミリー品目の生産枠の中で処理すべき実品目との関係を示す情報などの設定や、各種の制約条件の設定、ラグランジュ乗数の設定など)を行った後、材欠禁止制約式をはじめとする各種の相互関係制約式(前述の(8)式〜(11)式)をラグランジュ緩和してラグランジュ関数(前述の(12)式)を導く。このラグランジュ関数は分解ができ(前述の(13)式および(14)式)、問題の最適化は、所与のラグランジュ乗数値に対して各品目の部分最適化問題を他と独立に解くこと(前述の(15)式)と、各制約条件に対応するラグランジュ乗数値を更新することとを交互に反復することで実現される。このような処理を行うことにより、同じファミリー品目に属する実品目群を、該ファミリー品目の生産枠の中で処理するための実行可能スケジュールを生成する。
【0091】
図5は、スケジューリング装置全体の動作の一例を示すフローチャートである。
【0092】
・各種入力データの主記憶装置への読み込み(ステップS1)
設定部11は、例えば、図7〜図10に示されるインプットデータの準備と登録を行う。ここで、図7は、品目j1単位当りの品目iの所要量ρijを示しており、図8は、生産技術データ(処理量pik,段取時間simaxk,段取費用cik)を示しており、図9は、初期実在庫量yi0,仕掛かり保管費hi,外部需要ri0tを示しており、図10は、初期悌状在庫量xi0,部品展開後の所要量ri・tを示している。なお、図7の例では、実品目についてのみ値が記入されているが、実際にはファミリー品目についても値が記入される。
【0093】
・ラグランジュ乗数の初期化(ステップS2)
設定部11は、各ラグランジュ乗数の初期化を行う。
【0094】
・最大繰り返し回数Nの設定(ステップS3)
設定部11は、最大繰り返し回数を設定する。
【0095】
・各違反量の閾値の設定(ステップS4)
設定部11は、各制約違反量の閾値を設定する。
【0096】
・繰り返し回数のカウント用変数N=1(ステップS5)
設定部11は、計算の開始前に繰り返し回数のカウント用変数nに1を代入する。
【0097】
・品目別にスケジュールを生成(ステップS6)
品目別スケジュール生成部12は、品目別にスケジュールを生成する。具体的には、梯状在庫量の推移(前述の(3)式)と段取時間の推移(前述の(4)式)と梯状在庫量の範囲(前述の(5)式)の制約もとで、所与のラグランジュ乗数値に対して各品目の部分最適化問題(前述の(12)式)を解き、その解δitkを所定の記憶領域に記憶する(更新する)。
【0098】
・各違反量の算出(ステップS7)
制約違反監視部13は、制約ごとに違反量を計算する。
【0099】
・各制約違反量の判定:すべて解消済みか?(ステップS8)
ステップS7で算出した各制約違反量がすべて0ならば、実行可能スケジュールが生成されているので、ステップS14へ移行する。各制約違反量のいずれかが0を超えていれば、設定した閾値以下かどうかを判定するために、ステップS9へ移行する。
【0100】
・各制約違反量が設定した閾値以下か?(ステップS9)
ステップS4で設定した各制約違反量の閾値をすべて下回っているならば、ステップS13へ移行する。いずれかの閾値が下回っていなければ、ステップS10へ移行する。
【0101】
・繰り返し回数の判定:n>N?(ステップS10)
計算の繰り返し回数が設定した上限値Nを下回っていれば、ステップS11へ移行する。上限値Nを超えた場合には、ステップS13へと移行する。
【0102】
・各ラグランジュ乗数の更新(ステップS11)
ラグランジュ乗数更新部14は、各制約のラグランジュ乗数を違反量に応じて更新する。
【0103】
・n=n+1(ステップS12)
繰り返し回数のカウント用変数nに1を加算する。
【0104】
・ヒューリスティクスによるスケジュールの生成(ステップS13)
実行可能スケジュール生成部15は、ヒューリスティクス・アルゴリズムによって実行可能スケジュールを生成する。
【0105】
・スケジュール結果出力(ステップS14)
実行可能スケジュール生成部15は、実行可能スケジュールの出力を行う。
【0106】
図6は、図5中のステップS13に係るヒューリスティクス・アルゴリズムの一例を示すフローチャートである。
【0107】
ロット開始/終了時点取得部16は、δitkを用いて,機械別品目別に,すべてのロットの開始時点と終了時点を把握する(ステップS21)。
【0108】
機械干渉禁止制約違反解消部17は、機械干渉禁止制約違反の解消を行う(ステップS22)。具体的には、1)機械別,品目別に機械干渉を起こしているロット、干渉期間を特定し、2)機械干渉を起こしているロットを状況に応じて、バックワード法、フォワード法等により移動して、機械干渉を解消させ、3)機械干渉解消後は、そのロットの順序を基本的に保ちながら、以後の各手順を行う。
【0109】
仕掛かり品目の品切れ禁止制約違反解消部18は、仕掛かり品目の品切れ禁止制約違反の解消を行う(ステップS23)。具体的には、1)品目別に品切れを起こしているロット,品切れ期間を特定し、2)仕掛かり不足を起こしている品目のロットを早めるか、あるいは遅らせ、3)または、そのロットとその一つ前の品目のロットの順序を入れ替え、4)さらに、後続直結品目のロットを遅らせるなどにより、状況に応じて処置を取る。
【0110】
材欠禁止制約違反解消部19は、ファミリー品目と実品目との整合性をとり同期させるにより、材欠禁止制約違反の解消を行う(ステップS24)。具体的には、1)各ファミリー別に、ファミリー品目と実品目との処理の位相(ずれ)期間を特定し、2)位相が生じているファミリー品目のロットを早めるか、あるいは遅らせて、同期をとる。
【0111】
次に、図11および図12を参照して、同実施形態に係る多品目多段工程動的ロットサイズスケジューリング装置の出力結果の一例を説明する。ここには、図4に示されるシステム100を対象としたスケジューリングの出力結果が示されている。図中、“F_ITEM…”はファミリー品目を示し、“R_ITEM…”は実品目を示す。また、“F_MACHINE1…・IDLING”は、仮想機械の遊休を示し、“R_MACHINE1…・IDLING”は、実機械の遊休を示す。“INTERFERENCE”は機械干渉禁止制約の違反の有無を示す。
【0112】
図11は、非実行可能スケジュールと制約違反箇所を例示したものである。図の上側が計画対象期間における繰り返し計算1回目の品目別の在庫推移グラフ(横軸:タイムスロット、縦軸:梯状在庫量)を、下側が機械別品目別のガントチャート(横軸:タイムスロット、縦軸:処理の有無)を示している。
【0113】
図11の上側の在庫推移グラフを見ると、a)材欠禁止制約の違反箇所は、ファミリー品目の在庫推移において,下に凸となって現れている。また、b)仕掛かり品目の品切れ禁止制約の違反箇所は、実品目の在庫推移において、下に凸となって現れている。一方、図11の下側のガントチャートを見ると、c)機械干渉禁止制約の違反箇所が、機械別に現れている。
【0114】
図12は、実行可能なスケジュール結果を示すものである。図の上側が実行可能解算出時の品目別在庫推移グラフ(横軸:タイムスロット、縦軸:梯状在庫量)を、図の下側が機械別品目別のガントチャート(横軸:タイムスロット、縦軸:処理の有無)を示している。
【0115】
図12の上側の在庫推移グラフを見ると、a)ファミリー品目の在庫推移において、下に凸となって現れていた材欠禁止制約の違反箇所は無くなっている。また、b)実品目の在庫推移において、下に凸となって現れていた仕掛かり品目の品切れ禁止制約の違反箇所は無くなっている。また、図12の下側のガントチャートを見ると、c)機械別に現れていた機械干渉禁止制約の違反箇所が無くなっている。
【0116】
さらに注目すべきは、図12の下側のガントチャートを見ると、同じファミリー品目に属する実品目群が、該ファミリー品目の生産枠の中で処理する計画となっている点である。
【0117】
例えば、実品目1,2,3(R_ITEM1,R_ITEM2,R_ITEM3)は、ファミリー品目1(F_ITEM1)の生産枠(処理の時間帯)の中に限り、処理するものとなっている。同様に、実品目4,5(R_ITEM4,R_ITEM5)は、ファミリー品目2(F_ITEM2)の生産枠(処理の時間帯)の中に限り、処理するものとなっている。同様に、実品目6,7(R_ITEM6,R_ITEM6)は、ファミリー品目3(F_ITEM3)の生産枠(処理の時間帯)の中に限り、処理するものとなっている。
【0118】
実品目1〜7(R_ITEM1〜R_ITEM7)は23ロットあるのに対し、ファミリー品目1〜3(F_ITEM1〜F_ITEM3)は20ロットにまとめられていることがわかる。
【0119】
また、実品目8,9(R_ITEM8,R_ITEM9)は、ファミリー品目4(F_ITEM4)の生産枠(処理の時間帯)の中に限り、処理するものとなっている。同様に、実品目10,11(R_ITEM10,R_ITEM11)は、ファミリー品目5(F_ITEM5)の生産枠(処理の時間帯)の中に限り、処理するものとなっている。同様に、実品目12,13(R_ITEM12,R_ITEM13)は、ファミリー品目6(F_ITEM6)の生産枠(処理の時間帯)の中に限り、処理するものとなっている。同様に、実品目14(R_ITEM14)は、ファミリー品目7(F_ITEM7)の生産枠(処理の時間帯)の中に限り、処理するものとなっている。
【0120】
実品目8〜14(R_ITEM8〜R_ITEM14)は28ロットあるのに対し、ファミリー品目4〜7(F_ITEM4〜F_ITEM7)は19ロットにまとめられていることがわかる。
【0121】
以上詳述したように本実施形態によれば、品目群のファミリーの生産枠を確保する手法を導入して既存のスケジューリングの問題を解決することができる。
【0122】
なお、上述した実施形態で述べた本発明に係る各種の処理手順は、コンピュータプログラムとして、コンピュータ(情報処理装置)により読み取り可能な記憶媒体(例えば磁気ディスク,光ディスク,半導体メモリ)に記憶させておき、必要に応じてそれをプロセッサにより読み出して実行するようにしてもよい。また、このようなコンピュータプログラムは、通信媒体を介してあるコンピュータから他のコンピュータに伝送することにより配布することも可能である。
【0123】
本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【0124】
【図1】本発明の一実施形態に係る多品目多段工程動的ロットサイズスケジューリング装置の主要な機能構成の一例を示す図。
【図2】図1に示される多品目多段工程動的ロットサイズスケジューリング装置を実現するための計算機の構成の一例を示す図。
【図3】スケジューリング対象となる多品目多段工程生産システムに仮想機械の概念を導入した場合の一般的な構成の一例を示す図。
【図4】同実施形態においてスケジューリング対象となる多品目多段工程生産システムに仮想機械の概念を導入した場合の構成の一例を示す図。
【図5】スケジューリング装置全体の動作の一例を示すフローチャート。
【図6】図5中のステップS13に係るヒューリスティクス・アルゴリズムの一例を示すフローチャート。
【図7】品目j1単位当りの品目iの所要量ρijを示す図。
【図8】生産技術データ(処理量pik,段取時間simaxk,段取費用cik)を示す図。
【図9】初期実在庫量yi0,仕掛かり保管費hi,外部需要ri0tを示す図。
【図10】初期悌状在庫量xi0,部品展開後の所要量ri・tを示す図。
【図11】非実行可能スケジュールと制約違反箇所を示す図。
【図12】実行可能なスケジュール結果を示す図。
【符号の説明】
【0125】
11…設定部、12…品目別スケジュール生成部、13…制約違反監視部、14…ラグランジュ乗数更新部、15…実行可能スケジュール生成部、16…ロット開始/終了時点取得部、17…機械干渉禁止制約違反解消部、18…仕掛かり品目の品切れ禁止制約違反解消部、19…材欠禁止制約違反解消部、21…CPU、22…主メモリ、23…HDD、24…CD−ROM装置、25…キーボード、26…ディスプレイ、27…システムバス、100…多品目多段工程生産システム、241…最適化スケジューリングプログラム、242…CD−ROM。

【特許請求の範囲】
【請求項1】
複数の機械により複数の工程で当該各工程に対応した品目をそれぞれ処理し、かつ少なくとも1つの機械または工程では段取を伴う品目の切り換えが可能な多品目多段工程生産システムに適用される生産スケジュールをコンピュータにより生成する、生産枠を伴う多品目多段工程動的ロットサイズスケジューリング方法であって、
実機械が処理する実品目の材料となる仮想品目を処理する仮想機械が前段工程にあるものと仮定した多品目多段工程生産システムをスケジューリング対象として、少なくとも仮想品目と当該仮想品目の生産枠の中で処理すべき実品目との関係を示す情報を設定するとともに、1)実機械もしくは仮想機械が複数の品目を同時に処理することを禁止する機械干渉禁止制約と、2)実品目の材料となる仮想品目もしくは実品目の品切れを禁止する仕掛かり品目の品切れ禁止制約と、3)仮想品目の材料となる実品目に材欠が生じることを禁止する材欠禁止制約と、4)予め定めた実機械別もしくは仮想機械別の品目の集合の仕掛かり量を制限する機械別仕掛かり制約とを設定する制約設定ステップと、
各制約にそれぞれ対応するラグランジュ乗数を有するラグランジュ関数を用いたスケジュールを品目別に生成する品目別スケジュール生成ステップと、
いずれかの制約において違反量が閾値を超えるものがある場合に、前記ラグランジュ関数における該当するラグランジュ乗数を更新するラグランジュ乗数更新ステップと
を有することを特徴とする生産枠を伴う多品目多段工程動的ロットサイズスケジューリング方法。
【請求項2】
少なくとも前記機械干渉禁止制約の違反、前記仕掛かり品目の品切れ禁止制約の違反、および前記材欠禁止制約の違反を順次解消していくヒューリスティクス・アルゴリズムを通じて実行可能スケジュールを生成する実行可能スケジュール生成ステップを更に有することを特徴とする請求項1に記載の生産枠を伴う多品目多段工程動的ロットサイズスケジューリング方法。
【請求項3】
前記実行可能スケジュール生成ステップは、
機械別品目別に、すべてのロットの開始時点と終了時点とを把握するステップと、
機械別品目別に、機械干渉を起こしているロットの移動を行うことによって、前記機械干渉禁止制約の違反を解消するステップと、
品目別に、品切れを起こしているロットの処理の速度もしくは順序を変えることによって、前記仕掛かり品目の品切れ禁止制約の違反を解消するステップと、
仮想品目の処理と実品目の処理との同期をとることによって、前記材欠禁止制約の違反を解消するステップと
を有することを特徴とする請求項2に記載の生産枠を伴う多品目多段工程動的ロットサイズスケジューリング方法。
【請求項4】
複数の機械により複数の工程で当該各工程に対応した品目をそれぞれ処理し、かつ少なくとも1つの機械または工程では段取を伴う品目の切り換えが可能な多品目多段工程生産システムにおける生産枠を伴う多品目多段工程動的ロットサイズスケジューリングのためのプログラムであって、
コンピュータに、
実機械が処理する実品目の材料となる仮想品目を処理する仮想機械が前段工程にあるものと仮定した多品目多段工程生産システムをスケジューリング対象として、少なくとも仮想品目と当該仮想品目の生産枠の中で処理すべき実品目との関係を示す情報を設定するとともに、1)実機械もしくは仮想機械が複数の品目を同時に処理することを禁止する機械干渉禁止制約と、2)実品目の材料となる仮想品目もしくは実品目の品切れを禁止する仕掛かり品目の品切れ禁止制約と、3)仮想品目の材料となる実品目に材欠が生じることを禁止する材欠禁止制約と、4)予め定めた実機械別もしくは仮想機械別の品目の集合の仕掛かり量を制限する機械別仕掛かり制約とを設定する制約設定機能と、
各制約にそれぞれ対応するラグランジュ乗数を有するラグランジュ関数を用いたスケジュールを品目別に生成する品目別スケジュール生成機能と、
いずれかの制約において違反量が閾値を超えるものがある場合に、前記ラグランジュ関数における該当するラグランジュ乗数を更新するラグランジュ乗数更新機能と
を実現させるためのプログラム。
【請求項5】
コンピュータに、
少なくとも前記機械干渉禁止制約の違反、前記仕掛かり品目の品切れ禁止制約の違反、および前記材欠禁止制約の違反を順次解消していくヒューリスティクス・アルゴリズムを通じて実行可能スケジュールを生成する実行可能スケジュール生成機能を更に実現させることを特徴とする請求項4に記載のプログラム。
【請求項6】
前記実行可能スケジュール生成機能は、
機械別品目別に、すべてのロットの開始時点と終了時点とを把握する機能と、
機械別品目別に、機械干渉を起こしているロットの移動を行うことによって、前記機械干渉禁止制約の違反を解消する機能と、
品目別に、品切れを起こしているロットの処理の速度もしくは順序を変えることによって、前記仕掛かり品目の品切れ禁止制約の違反を解消する機能と、
仮想品目の処理と実品目の処理との同期をとることによって、前記材欠禁止制約の違反を解消する機能と
を含むことを特徴とする請求項5に記載のプログラム。
【請求項7】
複数の機械により複数の工程で当該各工程に対応した品目をそれぞれ処理し、かつ少なくとも1つの機械または工程では段取を伴う品目の切り換えが可能な多品目多段工程生産システムに適用される生産スケジュールをコンピュータにより生成する、生産枠を伴う多品目多段工程動的ロットサイズスケジューリング装置であって、
実機械が処理する実品目の材料となる仮想品目を処理する仮想機械が前段工程にあるものと仮定した多品目多段工程生産システムをスケジューリング対象として、少なくとも仮想品目と当該仮想品目の生産枠の中で処理すべき実品目との関係を示す情報を設定するとともに、1)実機械もしくは仮想機械が複数の品目を同時に処理することを禁止する機械干渉禁止制約と、2)実品目の材料となる仮想品目もしくは実品目の品切れを禁止する仕掛かり品目の品切れ禁止制約と、3)仮想品目の材料となる実品目に材欠が生じることを禁止する材欠禁止制約と、4)予め定めた実機械別もしくは仮想機械別の品目の集合の仕掛かり量を制限する機械別仕掛かり制約とを設定する制約設定手段と、
各制約にそれぞれ対応するラグランジュ乗数を有するラグランジュ関数を用いたスケジュールを品目別に生成する品目別スケジュール生成手段と、
いずれかの制約において違反量が閾値を超えるものがある場合に、前記ラグランジュ関数における該当するラグランジュ乗数を更新するラグランジュ乗数更新手段と
を具備することを特徴とする生産枠を伴う多品目多段工程動的ロットサイズスケジューリング装置。
【請求項8】
少なくとも前記機械干渉禁止制約の違反、前記仕掛かり品目の品切れ禁止制約の違反、および前記材欠禁止制約の違反を順次解消していくヒューリスティクス・アルゴリズムを通じて実行可能スケジュールを生成する実行可能スケジュール生成手段を更に具備することを特徴とする請求項7に記載の生産枠を伴う多品目多段工程動的ロットサイズスケジューリング装置。
【請求項9】
前記実行可能スケジュール生成手段は、
機械別品目別に、すべてのロットの開始時点と終了時点とを把握する手段と、
機械別品目別に、機械干渉を起こしているロットの移動を行うことによって、前記機械干渉禁止制約の違反を解消する手段と、
品目別に、品切れを起こしているロットの処理の速度もしくは順序を変えることによって、前記仕掛かり品目の品切れ禁止制約の違反を解消する手段と、
仮想品目の処理と実品目の処理との同期をとることによって、前記材欠禁止制約の違反を解消する手段と
を具備することを特徴とする請求項8に記載の生産枠を伴う多品目多段工程動的ロットサイズスケジューリング装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate