説明

生産スケジューリング装置および生産スケジューリングプログラム

【課題】効率よく資源を割り付ける。
【解決手段】オーダごとに任意資源数工程において最小必要資源数から最大必要資源数の間のそれぞれの資源数でフォワードパスおよびバックワードパスを算出するPERT計算を実行するPERT計算手段52と、オーダごとにバックワードパスで最大必要資源数で計算されたPERT計算結果を抽出し、抽出されたPERT計算結果に基づいて単位時間ごとに最大必要資源数を越えない様に負荷山積を行うとともに、スケジューリングの対象となる期間における単位時間あたりの平均必要資源数を算出する負荷山積処理手段53と、PERT計算結果におけるオーダごとの最小必要資源数および最大必要資源数に基づいて過去の方向に平均必要資源数を越えないように負荷山崩を行う負荷山崩処理手段34を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、製品を製造するために、最小必要資源数と最大必要資源数との間の所定の資源数で作業が実行される任意資源数工程において、単位時間ごとに必要な資源数を平準化し、最適な資源数を算出する生産スケジューリング装置および生産スケジューリングプログラムに関する。
【背景技術】
【0002】
昨今、工場のライン作業などにおける製品の製造において、製造される製品品目や、その製品品目に利用する資源の割付が、コンピュータによって行われている。ここで「資源」とは、穴明機、研磨機などの製造機器はもちろんのこと、作業員なども含まれる。オーダ(製造製品の注文)が入力されると、コンピュータは、オーダされた製品を納期内に納められるように、資源の作業時間および製造対象の製品品目を割り付け、いつ、何を製造するかを決定する。
【0003】
この資源の割付は、アクティビティと呼ばれる時間単位ごとに行われる。このアクティビティは、製造装置の稼働時間や作業員のシフト時間などに応じて、例えば、1時間または1日などの時間が予め設定される。資源の割付においては、このアクティビティと、製造装置または作業員などの資源と、そのアクティビティにその資源を利用する負荷が関連づけられる。ここで負荷とは、このアクティビティにその資源を利用する製品品目(あるいはオーダ)である。
【0004】
このとき、例えば作業員などは、その調達人数に応じて資源数を任意に変更しやすい。しかし、作業員の雇用状況を考慮すると、なるべく同じ人数を継続して調達することが人員配置の手続上の便宜等の観点から好ましい。また、製造装置などにおいても、その資源数を任意に変更できる場合でも、なるべく同じ数で継続して調達することが好ましい。
【0005】
従って、資源の割付においては、アクティビティにおける負荷を平準化することにより、必要となる資源数を平準化することが求められている。
【0006】
例えば、操業制約の多い他品種工程においても実用的な精算計画を作成する工程負荷調整装置がある(例えば、特許文献1参照)。この特許文献1記載の装置においては、工程情報メモリ、製品情報メモリに格納させた数量を用いて、工程ごとに山積を行い、結果を作業割付テーブルに登録する。負荷山崩は、最も負荷の大きいセグメントを山崩対象とし、セグメントが作業割付可能機関の端に、該当する製品の作業を移動する。作業割付テーブルの全セグメントの負荷が登録された工程能力以下になるまで繰り返す。
【0007】
また、資源の一括調達の時間間隔等に合わせて必要資源の山積値をなるだけ一定に保つ工程計画の自動作成を行う工程計画作成支援方法がある(例えば、特許文献2参照)。この特許文献2においては、作業に要する全期間を複数に区分する区分期間を入力し、作業工程データを用い演算処理によって区分期間に対して資源の量を平準化する。
【特許文献1】特開2004−46308号公報
【特許文献2】特開平8−255196号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
しかし、これらの特許文献1においては、スケジューリングの開始時点から全ての製品を生産開始したとして、負荷の山積を行い、最も負荷の大きいセグメントを山崩の対象として納期の余裕などを考慮してセグメントを移動させる。この特許文献1に記載の方法においては、山積の開始地点は全て同じになっており、セグメントを移動させる場合に、未来方向に移動させることになる。この場合、納期を遵守できない場合も発生してしまうおそれがある。
【0009】
また、特許文献2に記載の方法においては、1つのオーダに対する負荷の平準化を可能としているが、複数のオーダに対して負荷を平準化することはできない。
【0010】
このような状況を鑑み、例えば複数のオーダに対してアクティビティにおける負荷を平準化することにより、効率よく資源を割り付ける方法が求められている。
【0011】
本発明の目的は、効率よく資源を割り付けることのできる生産スケジューリング装置および生産スケジューリングプログラムを提供することである。
【課題を解決するための手段】
【0012】
上記課題を解決するために、本発明の第1の特徴は、製品品目を製造するために、最小必要資源数と最大必要資源数との間の所定の資源数で作業が実行される任意資源数工程において、単位時間ごとに必要な資源数を平準化し、最適な資源数を算出する生産スケジューリング装置に関する。即ち本発明の第1の特徴に係る生産スケジューリング装置は、製品品目、製造数量、開始可能日および納期を含むオーダ情報と、この製品品目を製造する任意資源数工程で利用される資源名、最小必要資源数、最大必要資源数、単位時間に基づく作業効率が関連づけられた作業工程情報とが記憶される記憶手段と、記憶手段からオーダ情報および作業工程情報とを読み出して、スケジューリングの対象となるオーダのオーダ情報、およびこのオーダ情報に含まれる製品品目に関連づけられた作業工程情報を抽出して、スケジュールデータとして記憶手段に記憶するスケジュールデータ取込手段と、記憶手段からスケジュールデータを読み出し、オーダごとに任意資源数工程において最小必要資源数から最大必要資源数の間のそれぞれの資源数でフォワードパスおよびバックワードパスを算出するPERT計算を実行し、オーダごとに、任意資源数工程における、納期を守る最小必要資源数と最小必要資源数における余裕日数、納期を守る最大必要資源数と最大必要資源数における余裕日数、および最早開始可能日と最遅開始可能日と最遅完了日を算出して、PERT計算結果として記憶手段に記憶するPERT計算手段と、記憶手段からPERT計算結果を読み出して、オーダごとにバックワードパスで最大必要資源数で計算されたPERT計算結果を抽出し、抽出されたPERT計算結果に基づいて単位時間ごとに最大必要資源数を越えない様に負荷山積を行って負荷山積結果として記憶手段に記憶するとともに、スケジューリングの対象となる期間における単位時間あたりの平均必要資源数を算出し、負荷山積結果として記憶手段に記憶する負荷山積処理手段と、記憶手段からPERT計算結果および負荷山積結果を読み出し、PERT計算結果におけるオーダごとの最小必要資源数および最大必要資源数に基づいて過去の方向に平均必要資源数を越えないように負荷山崩を行って、負荷山崩結果として記憶手段に記憶する負荷山崩処理手段とを備える。
ここで、「記憶手段」とは、ハードディスクなどの記憶装置や、RAMなどである。
【0013】
このような本発明によれば、まず最も厳しい後ろ倒しの条件で負荷山積を行い、平均必要資源数を越えないように過去方向に負荷山崩を行うを行うことにより、納期を遵守しつつ、資源数を平準化することができる。
【0014】
本発明の第2の特徴は、コンピュータに、製品品目を製造するために、最小必要資源数と最大必要資源数との間の所定の資源数で作業が実行される任意資源数工程において、単位時間ごとに必要な資源数を平準化し、最適な資源数を算出させる生産スケジューリングプログラムに関する。即ち本発明の第2の特徴に係る生産スケジューリングプログラムは、 記憶手段から、製品品目、製造数量、開始可能日および納期を含むオーダ情報と、この製品品目を製造する任意資源数工程で利用される資源名、最小必要資源数、最大必要資源数、単位時間に基づく作業効率が関連づけられた作業工程情報とを読み出し、スケジューリングの対象となるオーダが記憶されたオーダ情報、およびこのオーダ情報に含まれる製品品目に関連づけられた作業工程情報とを抽出して、スケジュールデータとして記憶手段に記憶するスケジュールデータ取込手段と、記憶手段からスケジュールデータを読み出し、オーダごとに任意資源数工程において最小必要資源数から最大必要資源数の間のそれぞれの資源数でフォワードパスおよびバックワードパスを算出するPERT計算を実行し、オーダごとに、任意資源数工程における、納期を守ることのできる最小必要資源数と最小必要資源数における余裕日数、納期を守ることのできる最大必要資源数と最大必要資源数における余裕日数、および最早開始可能日と最遅開始可能日と最遅完了日を算出して、PERT計算結果として記憶手段に記憶するPERT計算手段と、記憶手段からPERT計算結果を読み出して、オーダごとにバックワードパスで最大必要資源数で計算されたPERT計算結果を抽出し、抽出されたPERT計算結果に基づいて単位時間ごとに最大必要資源数を越えない様に負荷山積を行って負荷山積結果として記憶手段に記憶するとともに、スケジューリングの対象となる期間における単位時間あたりの平均必要資源数を算出し、負荷山積結果として記憶手段に記憶する負荷山積処理手段と、記憶手段からPERT計算結果および負荷山積結果とを読み出し、PERT計算結果におけるオーダごとの最小必要資源数および最大必要資源数に基づいて過去の方向に平均必要資源数を越えないように負荷山崩を行って、負荷山崩結果として記憶手段に記憶する負荷山崩処理手段とをコンピュータに実行させる。
【発明の効果】
【0015】
本発明によれば、効率よく資源を割り付けることのできる生産スケジューリング装置および生産スケジューリングプログラムを提供することができる。
【発明を実施するための最良の形態】
【0016】
次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一または類似の部分には同一または類似の符号を付している。
【0017】
(最良の実施の形態)
図1に示すように、本発明の最良の実施の形態に係る生産スケジューリング装置1は、中央処理制御装置101および記憶装置107を備えているコンピュータに所定のソフトウェアプログラムが実行されることによって実現される。本発明の最良の実施の形態に係る生産スケジューリング装置1は、製品品目を製造するために、最小必要資源数と最大必要資源数との間の所定の資源数で作業が実行される任意資源数工程において、アクティビティ(単位時間)ごとに必要な資源数を平準化し、最適な資源数を算出する。本発明の最良の実施の形態においては、1アクティビティを1日として説明する。ここで本発明の最良の実施の形態において任意資源数工程とは、所定の製品を製造するための作業工程フローにおいて、作業員などの資源数を任意に決定できる工程のことである。例えば、1人でも3人でも作業可能である工程を任意資源数工程と呼ぶ。この任意資源数工程において、1人で作業した場合と3人で作業した場合とでは、製品の製造に必要な日数が異なる。本発明の最良の実施の形態においては、例えば顧客からの注文(オーダ)に応じて製品を生産する受注生産方式において、顧客から入力されたオーダ情報に基づいて、製品品目を製造するための資源を割り当てる。このオーダ情報は、例えば、顧客からの注文単位で採番されたオーダ識別子に、顧客名、注文する製品品目、数量、納期などが関連づけられる。本発明の最良の実施の形態においては、特に複数のオーダについて、納期を守りつつ、任意資源数工程における資源数を平準化することのできる生産スケジューリング装置1を説明する。
【0018】
(生産スケジューリング装置のハードウェア構成図)
図2に示すように、本発明の最良の実施の形態に係る生産スケジューリング装置1は、中央処理制御装置101、ROM(Read Only Memory)102、RAM(Random Access Memory)103および入出力インタフェース109が、バス110を介して接続されている。入出力インタフェース109には、入力装置104、表示装置105、通信制御装置106、記憶装置107およびリムーバブルディスク108が接続されている。
【0019】
中央処理制御装置101は、入力装置104からの入力信号に基づいてROM102から生産スケジューリング装置1を起動するためのブートプログラムを読み出して実行し、更に記憶装置107に記憶されたオペレーティングシステムを読み出す。更に中央処理制御装置101は、入力装置104や通信制御装置106などの入力信号に基づいて、各種装置の制御を行ったり、RAM103や記憶装置107などに記憶されたプログラムおよびデータを読み出してRAM103にロードするとともに、RAM103から読み出されたプログラムのコマンドに基づいて、データの計算または加工など、後述する一連の処理を実現する処理装置である。
【0020】
入力装置104は、操作者が各種の操作を入力するキーボード、マウスなどの入力デバイスにより構成されており、操作者の操作に基づいて入力信号を作成し、入出力インタフェース109およびバス110を介して中央処理制御装置101に送信される。表示装置105は、CRT(Cathode Ray Tube)ディスプレイや液晶ディスプレイなどであり、中央処理制御装置101からバス110および入出力インタフェース109を介して表示装置105において表示させる出力信号を受信し、例えば中央処理制御装置101の処理結果などを表示する装置である。通信制御装置106は、LANカードやモデムなどの装置であり、生産スケジューリング装置1をインターネットやLANなどの通信ネットワークに接続する装置である。通信制御装置106を介して通信ネットワークと送受信したデータは入力信号または出力信号として、入出力インタフェースおよびバス110を介して中央処理制御装置101に送受信される。
【0021】
記憶装置107は半導体記憶装置や磁気ディスク装置であって、中央処理制御装置101で実行されるプログラムやデータが記憶されている。リムーバブルディスク108は、光ディスクやフレキシブルディスクのことであり、ディスクドライブによって読み書きされた信号は、入出力インタフェース109およびバス110を介して中央処理制御装置101に送受信される。
【0022】
本発明の最良の実施の形態に係る生産スケジューリング装置1の記憶装置107には、オーダ情報記憶部21、作業工程フロー情報記憶部22、作業工程情報記憶部23、資源グループ情報記憶部24、資源情報記憶部25、スケジュールデータ記憶部31、PERT計算結果記憶部32、負荷山積結果記憶部33、負荷山崩結果記憶部34、資源別スケジュール結果記憶部41、オーダ別スケジュール結果記憶部42が記憶されるとともに、生産スケジューリングプログラムが記憶される。この生産スケジューリングプログラムが生産スケジューリング装置1の中央処理制御装置101に読み込まれ実行されることによって、図1に示すようなスケジュールデータ取込手段51、PERT計算手段52、負荷山積処理手段53、負荷山崩処理手段54、スケジュール結果出力手段55が生産スケジューリング装置1に実装される。
【0023】
図1および図2において、本発明の最良の実施の形態に係る生産スケジューリング装置1を説明したが、1つのハードウェア上に実装される必要はない。例えば、オーダ情報記憶部21、作業工程フロー情報記憶部22、作業工程情報記憶部23、資源グループ情報記憶部24、資源情報記憶部25は、生産スケジューリング装置1に内蔵された記憶装置107に記憶されている必要はなく、例えば生産管理システムなどの異なるハードウェアに実装された記憶装置に記憶され、通信制御装置などを介して生産スケジューリング装置1に読み出されても良い。また、記憶装置107に記憶された各データは、RAM103などの記憶装置に記憶されても良い。具体的には、スケジュールデータ記憶部31、PERT計算結果記憶部32、負荷山積結果記憶部33、負荷山崩結果記憶部34などの、中央処理制御装置101において実現された各手段によって出力される一時ファイルは、RAM103に記憶されても良い。
【0024】
(生産スケジューリング装置の概説)
次に、図1および図3を参照して、本発明の最良の実施の形態に係る生産スケジューリング装置1の概略を説明する。
【0025】
まず、ステップS101において、スケジュールデータ取込手段51は、スケジュールデータの作成処理を行う。ここでは、オーダ情報記憶部21などからスケジューリングの対象となるオーダと、そのオーダに含まれる製品品目に関する作業工程フロー情報、作業工程情報、資源グループ情報、資源情報などを抽出し、スケジュールデータ記憶部31に記憶する。ステップS102において、全てのスケジュールデータが読み込まれたことが確認されると、ステップS103に進む。
【0026】
ステップS103において、PERT(Program Evaluation and Review Technique)計算手段52は、オーダごとに任意資源数工程において最小必要資源数から最大必要資源数の間のそれぞれの資源数でフォワードパスおよびバックワードパスを算出するPERT計算を実行し、オーダごとに、任意資源数工程における、納期を守ることのできる最小必要資源数と最小必要資源数における余裕日数、納期を守ることのできる最大必要資源数と最大必要資源数における余裕日数、および最早開始可能日と最早完了日と最遅開始可能日と最遅完了日などを算出して、PERT計算結果記憶部32に記憶する。ステップS104において全てのオーダについてPERT計算が行われたことが確認されると、ステップS105に進む。
【0027】
ここで、PERT計算とは、例えば複数の製造工程を経て製品を生産するための生産計画において、アクティビティごとに日程管理や工程管理を行う手法である。PERT計算では、例えば1アクティビティを1日にした場合、所定の生産計画について予め定められた着手日と完了日(納期)に基づいて、その生産計画における製品を製造するための個々の製造工程について着手日や完了日などの工程計画を決定する。このとき、完了日を基準として個々の製造工程の完了日を逆算して決められた工程計画はバックワードパスと呼ばれ、生産計画の完了日を厳守するためにはこれより遅れることが許されない最遅の工程計画である。一方、着手日を基準として個々の製造工程の着手日を計算して求められた工程計画はフォワードパスと呼ばれ、これ以上早く製造することが許されない最早の工程計画である。また、バックワードパスにおける最初の製造工程の着手日が、生産計画において予め定められた着手日と同じ場合、或いはフォワードパスにおける最終の製造工程の完了日が、生産計画において予め定められた完了日と同じ場合、その工程計画はクリティカルパスと呼ばれ、余裕日がないことを示す。本発明の最良の実施の形態においては、任意資源数工程においては、資源数に応じてその工程に必要なアクティビティ数が異なるので、任意資源数のそれぞれに応じてPERT計算される。
【0028】
ステップS105において、負荷山積処理手段53は、記憶装置107からPERT計算結果記憶部32を読み出して、オーダごとにバックワードパスで最大必要資源数で計算されたPERT計算結果を抽出し、抽出されたPERT計算結果に基づいてアクティビティごとに最大必要資源数を越えない様に負荷山積を行って負荷山積結果記憶部33に記憶するとともに、スケジューリングの対象となる期間におけるアクティビティあたりの平均必要資源数を算出し、負荷山積結果記憶部33に記憶する。ステップS106において全てのオーダについて負荷山積処理が行われたことが確認されると、ステップS107に進む。
【0029】
ステップS107において、負荷山崩処理手段54は、記憶装置107からPERT計算結果記憶部32および負荷山積結果記憶部33とを読み出し、PERT計算結果におけるオーダごとの最小必要資源数および最大必要資源数に基づいて過去の方向に平均必要資源数を越えないように負荷山崩を行って、負荷山崩結果記憶部34に記憶する。ステップS108において全てのオーダについて負荷山崩処理が行われたことが確認されると、ステップS109に進む。
【0030】
ステップS109において、スケジュール結果出力手段55は、記憶装置107から負荷山崩結果記憶部34を読み出して、資源ごとおよびアクティビティごとに資源に割り当てられたオーダを関連づけて資源別スケジュール結果記憶部41に記憶し、オーダごとに割り当てられた資源と納期予定とを関連づけてオーダ別スケジュール結果記憶部42に記憶する。
【0031】
このように、本発明の最良の実施の形態に係る生産スケジューリング装置1は、予め、各オーダについてバックワードパスおよびフォワードパスを算出し、納期を守ることのできる最早開始可能日、最遅開始可能日および最遅完了日を算出する。
【0032】
次に、納期を守るための最も厳しい後ろ倒しの条件で負荷山積を実行するとともに、平均必要資源数を算出する。更に、PERT計算で計算された情報に基づいて、平均必要資源数を越えない様に過去方向に負荷山崩を行う。
【0033】
これにより、本発明の最良の実施の形態に係る生産スケジューリング装置1は、まず最も厳しい後ろ倒しの条件で負荷山積を行い、平均必要資源数を越えないように過去方向に負荷山崩を行うことにより、納期を遵守しつつ、資源数を平均必要資源数以内に収まるように平準化することができる。
【0034】
(生産スケジューリング装置の詳説)
次に、図1を参照して、本発明の最良の実施の形態に係る生産スケジューリング装置1の各データおよび各手段について詳述する。
【0035】
オーダ情報記憶部21は、図4に示すように、オーダ識別子ごとに、オーダされた製品品目、製造数量、着手可能日、納期などが関連づけられて記憶されている。このオーダ情報記憶部21は、顧客から入力されたオーダに基づいて、生産計画の対象となる製品品目および製造数量についてのみが記載されても良い。ここで、着手可能日は、製造するための部品の調達日や資源の納入日などによって、製品の製造に関する全ての情報を扱う生産管理システムにおいて決定され、本発明の最良の実施の形態に係る生産スケジューリング装置によって資源の割付可能な日である。また納期は、客先への製品の納入リードタイムなどを考慮した納期であって、本発明の最良の実施の形態に係る生産スケジューリング装置が目標とする納期である。
【0036】
作業工程フロー情報記憶部22は、図5に示すように、製品品目ごとに、この製品目を製造するために必要な工程が順番に関連づけられている。
【0037】
作業工程情報記憶部23は、図6に示すように、製品品目および当該製品品目を製造するために必要な工程ごとに、使用する資源名、資源数(例;機械の台数、人員数)、所定時間あたりの作業効率が関連づけられて記憶されている。この作業効率は、アクティビティあたりの作業個数で表されることが好ましい。ここで、「包装工程」の様に、資源数が「1〜5人」と設定されている工程を、本発明の最良の実施の形態において任意資源数工程と定義する。ここで、最小の資源数である「1人」が最小必要資源数であり、「5人」が最大必要資源数である。この任意資源数工程においては、資源数に応じてこの工程に必要とするアクティビティが異なる。具体的には、図6に示した例では、作業効率が「200個/1人日」である。この条件において1000個の製品を製造する場合、包装人員1人および1アクティビティ(1日)あたり200個を作業することができるので、包装人員を1人にするとこの包装工程には5日を要し、包装人員を5人にすると、この包装工程には1日を要す。このような任意資源数工程においては、納期や他の資源と考慮して、任意の資源数を指定して作業することができる。
【0038】
資源グループ情報記憶部24は、図7に示すように、工程ごとに使用可能な資源の保有数と、その資源名が関連づけられている。
【0039】
資源情報記憶部25には、図8に示すように、資源名ごとおよびアクティビティごとにそのスケジュールが記憶されている。図8に示す例においては、包装人員それぞれについて、一日ごとにその包装人員の稼働状況(出勤状況)が関連づけられている。包装人員が出勤しない日は、オーダを割り当てることができない制約条件となる。
【0040】
スケジュールデータ取込手段51は、記憶装置107からオーダ情報記憶部21、作業工程フロー情報記憶部22、作業工程情報記憶部23、資源グループ情報記憶部24、資源情報記憶部25などを読み出して、スケジューリングの対象となるオーダのオーダ情報と、オーダ情報に含まれる製品品目に関連づけられた作業工程フロー情報、作業工程情報、資源グループ情報、資源情報などを抽出して、スケジュールデータ記憶部31に記憶する。オーダ情報記憶部21、作業工程フロー情報記憶部22、作業工程情報記憶部23、資源グループ情報記憶部24、資源情報記憶部25などの情報は、生産管理システムなどの上位システムから、インタフェースを経由して提示されたり、管理者端末などの端末の入力手段から情報が設定されても良い。これらの情報は、外部から記憶装置107に格納され、スケジューリングの対象となるオーダに関するデータが抽出され、そのデータ全てをスケジュールデータ記憶部31として記憶装置107等のメモリに全て取り込み、本処理全てが終了するまで保持される。このスケジュールデータ記憶部31は、RAM103に備えられても良い。
【0041】
PERT計算手段52は、記憶装置107からスケジュールデータ記憶部31を読み出し、オーダごとに任意資源数工程において最小必要資源数から最大必要資源数の間のそれぞれの資源数でフォワードパスおよびバックワードパスを算出するPERT計算を実行し、オーダごとに、任意資源数工程における、納期を守ることのできる最小必要資源数と最小必要資源数における余裕日数、および納期を守ることのできる最大必要資源数と最大必要資源数における余裕日数、および最早開始可能日、最早完了日、最遅開始可能日および最遅完了日などを算出して、PERT計算結果記憶部32に記憶する。
【0042】
このPERT計算手段52は、例えば図9に示すような処理を行う。
ステップS201において、PERT計算手段は、記憶装置107に展開されたスケジュールデータ記憶部31から、オーダごとに取り出す。ここで、ステップS202において既にスケジュールデータ記憶部31の全てのオーダが取り込まれていた(EOF:End of File)と判断された場合、ステップS208に進む。
【0043】
ステップS203において、ステップS201で抽出されたオーダに関連づけられた作業工程フロー情報および資源情報を抽出する。ここで、この作業工程フロー情報において、複数の資源数が関連づけられた任意資源数工程が含まれている場合、ステップS204において、変数「R」を最小必要資源数として設定し、ステップS205において、このRにおけるフォワードパスおよびバックワードパスによるPERT計算を実行する。
【0044】
次に、ステップS206において「R」をインクリメントし、ステップS207において「R」と最大必要資源数を比較する。「R」が最大必要資源数以下の場合、再びステップS205に戻りPERT計算を実行する。
【0045】
ステップS207において「R」が最大必要資源数を越える場合、ステップS201に戻り、新たにオーダを抽出する。
【0046】
このPERT計算が終了した後、ステップS208においてPERT計算手段52は、納期を守れなかった計算パターンを削除する。
【0047】
このように、PERT計算手段52は、オーダごとに、最小必要資源数から最大必要資源数のそれぞれについてPERT計算を実行して、納期を守ることのできる最小必要資源数と最小必要資源数における余裕日数、および納期を守ることのできる最大必要資源数と最大必要資源数における余裕日数、および最早開始可能日、最早完了日、最遅開始可能日および最遅完了日を算出し、その結果をPERT計算結果記憶部32として記憶装置107等の記憶手段に全て取り込み、本処理全てが終了するまで保持される。例えば、このPERT計算結果記憶部32は、RAM103に備えられても良い。
【0048】
次に、図10ないし図13を参照して、本発明の最良の実施の形態に係る生産スケジューリング装置1のPERT計算手段52の処理について説明する。この図10ないし図13は、図6に示した作業工程に従ってPERT計算されている。
【0049】
図10および図11においては、フォワードパスによりPERT計算を行っている。フォワードパスによるPERT計算においては、納期を守れる最小必要資源数および最大必要資源数、最早開始可能日、最早完了日、余裕日数が算出される。ここで、穴明工程、研磨工程のそれぞれの作業効率は、図6に示した例によれば1000個/1日であるので、製品を1000個製造する場合、それぞれ一日の作業日数を要する。
図10においては、3月1日が開始可能日であって3月10日が納期である場合で、包装工程を開始できる最早開始可能日は穴明工程、研磨工程を考慮して3月3日になる。最小必要資源数である1人で作業した場合、3月7日に作業は完了し、納期である3月10日までの余裕日数は3日となる。最大必要資源数である5人で作業した場合、3月3日に作業は完了し、納期である3月10日までの余裕日数は7日となる。図10に示した例においては、任意資源数工程において、指定されたいずれの資源数においても納期を守ることができるので、最小必要資源数は1人でこのときの余裕日数は3日となり、最大必要資源数は5人でこのときの余裕日数は7日となる。また、最大必要資源数の最早開始可能日は3月3日、最早完了日は3月3日となり、最小必要資源数の最早開始可能日は3月3日、最早完了日は3月7日になる。
図11においては、3月1日が開始可能日であって3月5日が納期である場合で、包装工程を開始できる最早開始可能日は穴明工程、研磨工程を考慮して3月3日になる。最小必要資源数である1人で作業した場合、3月7日に作業は完了することになり、納期である3月5日を過ぎてしまう。資源数を2で作業した場合、3月5日に作業は完了し、納期である3月5日までの余裕日数は0日(クリティカルパス)となる。最大必要資源数である5人で作業した場合、3月3日に作業は完了し、納期である3月5日までの余裕日数は2日となる。最大必要資源数である5人で作業した場合、3月3日に作業は完了し、納期である3月5日までの余裕日数は2日となる。図11に示した例においては、任意資源数工程において、指定された資源数のうち2人以上であるときに納期を守ることができるので、最小必要資源数は2人でこのときの余裕日数は0日となり、最大必要資源数は5人でこのときの余裕日数は2日となる。また、最大必要資源数の最早開始可能日は3月3日、最早完了日は3月3日となり、最小必要資源数の最早開始可能日は3月3日、最早完了日は3月5日になる。
【0050】
図12および図13においては、バックワードパスによりPERT計算を行っている。バックワードパスによるPERT計算においては、納期を守れる最小必要資源数および最大必要資源数、最遅開始可能日、最遅完了日、余裕日数が算出される。ここで、穴明工程、研磨工程のそれぞれの作業効率は、図6に示した例によれば1000個/1日であるので、製品を1000個製造する場合、それぞれ一日の作業日数を要する。
図12においては、3月1日が開始可能日であって3月10日が納期である場合で、包装工程を終了する最遅完了日は3月10日になる。最小必要資源数である1人で作業した場合、3月6日に作業を開始することになるので、穴明工程、研磨工程を考慮したこの作業フローの開始可能日である3月1日までの余裕日数は3日となる。最大必要資源数である5人で作業した場合、3月10日に作業を開始することになるので、穴明工程、研磨工程を考慮したこの作業フローの開始可能日である3月1日までの余裕日数は7日となる。図12に示した例においては、任意資源数工程において、指定されたいずれの資源数においても納期を守ることができるので、最小必要資源数は1人でこのときの余裕日数は3日となり、最大必要資源数は5人でこのときの余裕日数は7日となる。また、最大必要資源数の最遅開始可能日は3月10日、最遅完了日は3月10日となり、最小必要資源数の最遅開始可能日は3月6日、最遅完了日は3月10日になる。
図13においては、3月1日が開始可能日であって3月5日が納期である場合で、包装工程を終了する最遅完了日は3月5日になる。最小必要資源数である1人で作業した場合、2月27日(閏年ではない場合であり、閏年の場合には2月28日)に作業を開始することになるので、穴明工程、研磨工程を考慮したこの作業フローの開始可能日である3月1日より過去になってしまう。資源数を2で作業した場合、3月3日に作業を開始することになるので、穴明工程、研磨工程を考慮したこの作業フローの開始可能日である3月1日までの余裕日数は0日(クリティカルパス)となる。最大必要資源数である5人で作業した場合、3月5日に作業を開始することになるので、穴明工程、研磨工程を考慮したこの作業フローの開始可能日である3月1日までの余裕日数は2日となる。図13に示した例においては、任意資源数工程において、指定されたいずれの資源数のうち2人以上であるときに納期を守ることができるので、最小必要資源数は2人でこのときの余裕日数は0日(クリティカルパス)となり、最大必要資源数は5人でこのときの余裕日数は2日となる。また、最大必要資源数の最遅開始可能日は3月3日、最遅完了日は3月5日となり、最小必要資源数の最遅開始可能日は3月3日、最遅完了日は3月5日になる。
【0051】
これらのPERT計算結果に基づいて、図14に示すようなデータがPERT計算結果記憶部32に記憶される。PERT計算結果記憶部32には、所定の資源(ここでは作業員)について、オーダごとにPERTの計算結果が記憶される。図14(a)には、オーダごとのフォワードパスによるPERT計算結果である、納期を守れる最小必要資源数および最大必要資源数、最早開始可能日、最早完了日、余裕日数がPERT計算結果記憶部32aに記憶されている。図14(b)には、オーダごとのバックワードパスによるPERT計算によるPERT計算結果である、納期を守れる最小必要資源数および最大必要資源数、最遅開始可能日、最遅完了日、余裕日数がに記憶される。そのほか、最小必要資源数から最大必要資源数までのそれぞれの計算パターンもPERT計算結果記憶部32に記憶される。図14(a)に示す例において最早開始可能日と最早完了日が、図14(b)に示す例において最遅開始可能日と最遅完了日が同一であるが、これは、調達可能な資源数を最大限に利用した場合に一日で各オーダの作業が完了するためである。例えば、調達可能な資源数を最大限利用しても複数日要する場合、最早開始可能日から最早完了日の日数は複数日となり、最遅開始可能日から最遅完了日の日数は複数日となる。
【0052】
負荷山積処理手段53は、記憶装置107からPERT計算結果記憶部32を読み出して、オーダごとにバックワードパスで最大必要資源数で計算されたPERT計算結果を抽出し、最遅開始可能日から最遅完了日の間で、アクティビティごとに、最大必要資源数を越えない様に負荷山積を行って負荷山積結果記憶部33に記憶するとともに、スケジューリングの対象となる期間における平均必要資源数を算出し、負荷山積結果記憶部33に記憶する。
【0053】
この負荷山積処理手段53は、例えば図15に示すような処理を行う。
まず、ステップS301において、PERT計算結果記憶部32を読み出し、オーダごとにバックワードパスで最大必要資源数で計算された計算結果を抽出する。次に、ステップS302においてステップS301で抽出されたオーダを1件取り出す。このとき、取り出すべきオーダがない場合、ステップS305に進む。
【0054】
ステップS303においてオーダを取り出すと、ステップS304において、最遅開始可能日から最遅完了日の範囲で、負荷山積を行う。これにより、オーダごとに許される最も遅いスケジュールを設定することができる。この結果は、逐次、負荷山積結果記憶部33に記憶される。
【0055】
ステップS304において負荷山積が行われると、ステップS302に戻り次のオーダを抽出する。
【0056】
このように、ステップS301で抽出された全てのオーダについて、負荷山積されると、ステップS305において、平均必要資源数を算出する。具体的には、アクティビティが日単位である場合、スケジュールの対象となるスケジュール終了日(最も遅い日に割り付けられたオーダの最遅完了日)からスケジュール開始日(或いは現在日)を減算して、アクティビティ数(日数)を算出する。一方、オーダ単位での最大必要資源数を積算し、総負荷量を算出する。このように算出された総負荷量をアクティビティ数で除算して、アクティビティ単位の平均必要資源数を算出する。算出された平均必要資源数は、負荷山積結果記憶部33に記憶される。
【0057】
ここで、図16を参照して、負荷山積結果の一例を説明する。図16は、図14(b)に示した結果を参照して作成される。具体的には、オーダAは最遅完了日が3月4日であるので、3月4日に最大必要資源数である3の負荷を山積する。オーダBは最遅完了日が3月5日であるので、3月5日に最大必要資源数である1の負荷を山積する。オーダCは最遅完了日が3月6日であるので、3月6日に最大必要資源数である2の負荷を山積する。オーダDは最遅完了日が3月7日であるので、3月7日に最大必要資源数である5の負荷を山積する。オーダEは最遅完了日が3月8日であるので、3月8日に最大必要資源数である3の負荷を山積する。図16に示す様な負荷山積された結果が、負荷山積結果記憶部33に記憶される。
【0058】
負荷山崩処理手段54は、記憶装置107からPERT計算結果記憶部32および負荷山積結果記憶部33を読み出し、PERT計算結果に含まれる最遅完了日から最早開始可能日に過去の方向に平均必要資源数を越えないように負荷山崩を行って、負荷山崩結果記憶部34に記憶する。
【0059】
具体的には、負荷山崩処理手段54は、オーダごとのPERT計算結果について割付優先順位の高いオーダから順に抽出して、最大必要資源数の負荷量で空き負荷を探索し、最大必要資源数と必要平均資源数とを比較する。ここで、必要平均資源数で割付可能であって既に割付済みのオーダの負荷を過去方向に移動可能である場合、割付済みのオーダを過去方向に移動させて移動後の空き負荷に抽出されたオーダの負荷を割り当て、既に割付済みのオーダの負荷を過去方向に移動可能でない場合、空き負荷に抽出されたオーダの負荷を割り当てる。一方、必要平均資源数で割付不可能であって平均必要資源数を越えた負荷を最遅完了日から最早開始日の過去方向へ移動可能である場合、平均必要資源数を越えた負荷を最遅完了日から最早開始日の範囲で過去方向へ移動し、平均必要資源数を越えた負荷を最遅完了日から最早開始日の範囲で過去方向へ移動可能でない場合、最大必要資源数にて割付を行う。
【0060】
この負荷山崩処理手段54は、例えば図17に示すような処理を行う。
まず、ステップS401において、余裕日数の少ない順など、優先的に資源を割り付けるオーダ順にソートする。図17に示す例では余裕日数の少ない順に山崩を行うが、顧客の優先順位など外部から与えられたそのほかのパラメータに従って、優先的に資源を割り付けるオーダ順にソートされても良い。
【0061】
次に、ステップS402においてステップS401でソートされたオーダから優先順位の高い順にオーダを1件取り出す。オーダを取り出すことができなければ、全てのオーダについて山崩を行ったとして処理を終了する。
【0062】
一方、ステップS402においてオーダを1件取り出すと、最遅完了日から最早開始日の範囲で最大必要資源数にて空き負荷を探索する。ここでは、最大必要資源数にて空き負荷を探索することにより、そのオーダが最短(縦軸:能力最大、横軸:期間最小)の期間で作業を完了できるかを評価する。
【0063】
ステップS405において、最大必要資源数で算出された最遅完了日に、負荷山積処理手段53で算出された平均必要資源数以下で、負荷が割り付けられているか否かを判定する。
【0064】
ステップS405において、平均必要資源数以下で割付られていない場合、ステップS406において、最遅完了日から最早開始日の範囲で、平均必要資源数を越えた負荷を移動させることが可能であるか否かを判定する。負荷を移動できない場合、ステップS407において、最遅完了日を基点に最早開始日の方向へ最大必要資源数の負荷で配置を行う。この場合、最大必要資源数が平均必要資源数を越えることになるが、最大必要資源数を割り付けることにより、納期を守ることができる。一方、負荷を移動できる場合、ステップS408において、平均必要資源数を越えた負荷を、最遅完了日から最早開始日の範囲で過去方向へ山崩を行い、探索された空き負荷にステップS402で取り出されたオーダの負荷を割り当てる。このとき、平均必要資源数を越えないように負荷は移動される。このとき、平均必要資源数を越えた負荷を連続したアクティビティに割り付けるか、連続しないアクティビティに割り付けても良いかなどの割付条件が、外部からパラメータとして入力されても良い。
【0065】
ステップS405において平均必要資源数以下で割り付けられた場合、ステップS409において、既に割り付けられたオーダの負荷は、そのオーダの割付可能範囲で過去方向に負荷を移動できるか否かを判定する。負荷を移動できる場合、ステップS410において、既に割り付けられたオーダの負荷を過去方向に移動させ、移動によって発生した空き負荷に、ステップS402で取り出されたオーダの負荷を割り当てる。一方、負荷を移動できない場合、最遅完了日の空き負荷に、ステップS402で取り出されたオーダの負荷を割り当てる。
【0066】
図16に示した具体的な負荷山積の処理結果に基づいて、負荷山崩を説明する。図16に示した例で負荷山崩処理手段54は、余裕日数に基づいて、オーダBおよびオーダC、オーダA、オーダD、オーダEの順にソートする。
【0067】
まず、オーダBおよびオーダCについては、余裕日数が0日なので、負荷山積処理手段53によって山積された状態で、図18に示すようにそれぞれの最遅完了日に負荷が山積される。
【0068】
次に、オーダDについては、負荷山積処理手段53によって最遅完了日である3月7日に5つの負荷が山積されているが、山積された負荷が平均必要資源数である3を越えるため、負荷山崩処理手段54は、図19に示すように過去の方向に負荷を移動させる。このとき、負荷山崩処理手段54は、最遅完了日から最早開始可能日まで過去の方向に遡って空き負荷を探索する。具体的には、このオーダDは、図16に示すように、最早開始可能日が3月5日であるので、3月5日から3月7日までの間で負荷を割り当てることができる。平均必要資源数を越える2つの負荷について、まず、一日過去に遡った3月6日に空き負荷があるか否かを探索する。この3月6日には、オーダCによって2つの負荷が割り付けられているが、平均必要資源数までに1つの空き負荷があるので、3月6日の1つの空き負荷に、オーダDを割り当てる。更に一日過去に遡った3月5日に空き負荷があるか否かを探索する。この3月5日には、オーダBによって1つの負荷が割り付けられているが、平均必要資源数までに2つの空き負荷があるので、3月5日の1つの空き負荷に、オーダDを割り当てる。このように処理することにより、オーダDの負荷が、平均必要資源数を越えない様に、最遅完了日から最早開始可能日までに割り付けられる。
【0069】
次に、オーダAについては、負荷山積処理手段53によって最遅完了日である3月4日に3つの負荷が山積されているが、山積された負荷が平均必要資源数である「3」を越えないため、図20に示すように最遅完了日に負荷が山積される。
【0070】
次に、オーダEについては、負荷山積処理手段53によって最遅完了日である3月8日に3つの負荷が山積されているが、山積された負荷が平均必要資源数である「3」を越えないため、最遅完了日に負荷が山積される。ここで負荷山崩処理手段54は、既に割付済みの負荷を割付可能範囲で過去方向に移動可能であるか否かを検証する。ここで、オーダAの最早開始可能日が3月1日であり、オーダEよりオーダAの方が納期に余裕がないので、図21に示すように、オーダAに関する負荷を3月3日に移動させ、オーダAの負荷の移動で空き負荷になった3月4日にオーダEの負荷を移動させる。
【0071】
このような負荷山崩処理を行うことにより、平均必要資源数を越えないように過去方向に負荷山崩を行うことにより、納期を遵守しつつ、資源数を平準化することができる。
【0072】
スケジュール結果出力手段55は、記憶装置107から負荷山崩結果記憶部34を読み出して、資源ごとおよび単位時間ごとに資源に割り当てられたオーダを関連づけて資源別スケジュール結果記憶部41に記憶し、オーダごとに割り当てられた資源と納期予定とを関連づけてオーダ別スケジュール結果記憶部42に記憶する。
【0073】
このスケジュール結果出力手段55においては、オーダ順、工程順、納期順、余裕日数の少ない順といった条件をパラメータ等で指定して出力しても良い。この資源別スケジュール結果記憶部41およびオーダ別スケジュール結果記憶部42は、生産管理システム等の上位システムへデータ送信されて生産管理システムで保存されても良いし、生産管理システムなどで任意のフォーマットで提示されても良い。このとき、スケジュール結果は、ガントチャート等を用いて提示されても良い。
【0074】
上述したように、本発明の最良の実施の形態に係る生産スケジューリング装置1は、まず最も厳しい後ろ倒しの条件で負荷山積を行い、平均必要資源数を越えないように過去方向に負荷山崩を行うことにより、納期を遵守しつつ、資源数を平準化することができる。資源数を平準化することにより、例えば作業員を同じメンバーで長期的に雇用することができるので、新たな雇用が発生しないので、作業員の教育や雇用に関する余計なコストが発生しない。また、同じ作業員に継続して作業させることにより、この作業員の習熟度を高めることができ、不良品の減少や歩留まりの向上などの品質に関わる効果が期待される。
【0075】
(その他の実施の形態)
上記のように、本発明の最良の実施の形態によって記載したが、この開示の一部をなす論述および図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例および運用技術が明らかとなる。
【0076】
本発明はここでは記載していない様々な実施の形態等を含んでも構わない。従って、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められる。
【図面の簡単な説明】
【0077】
【図1】本発明の最良の実施の形態に係る生産スケジューリング装置の機能ブロック図。
【図2】本発明の最良の実施の形態に係る生産スケジューリング装置のハードウェア構成図。
【図3】本発明の最良の実施の形態に係る生産スケジューリング装置の主な処理を説明するフローチャート。
【図4】本発明の最良の実施の形態に係るオーダ情報記憶部のデータ構造とデータの一例を説明する図。
【図5】本発明の最良の実施の形態に係る作業工程フロー情報記憶部のデータ構造とデータの一例を説明する図。
【図6】本発明の最良の実施の形態に係る作業工程情報記憶部のデータ構造とデータの一例を説明する図。
【図7】本発明の最良の実施の形態に係る資源グループ情報記憶部のデータ構造とデータの一例を説明する図。
【図8】本発明の最良の実施の形態に係る資源情報記憶部のデータ構造とデータの一例を説明する図。
【図9】本発明の最良の実施の形態に係るPERT計算手段のフローチャートの一例。
【図10】本発明の最良の実施の形態に係るPERT計算処理手段において、フォワードパスにより行われるPERT計算を説明する図。(その1)
【図11】本発明の最良の実施の形態に係るPERT計算処理手段において、フォワードパスにより行われるPERT計算を説明する図。(その2)
【図12】本発明の最良の実施の形態に係るPERT計算処理手段において、バックワードパスにより行われるPERT計算を説明する図。(その1)
【図13】本発明の最良の実施の形態に係るPERT計算処理手段において、バックワードパスにより行われるPERT計算を説明する図。(その2)
【図14】本発明の最良の実施の形態に係るPERT計算結果記憶部のデータ構造とデータの一例を説明する図。
【図15】本発明の最良の実施の形態に係る負荷山積処理手段のフローチャートの一例。
【図16】本発明の最良の実施の形態に係る負荷山積処理手段による処理結果の一例。
【図17】本発明の最良の実施の形態に係る負荷山崩処理手段のフローチャートの一例。
【図18】本発明の最良の実施の形態に係る負荷山崩処理手段による処理結果の一例。(その1)
【図19】本発明の最良の実施の形態に係る負荷山崩処理手段による処理結果の一例。(その2)
【図20】本発明の最良の実施の形態に係る負荷山崩処理手段による処理結果の一例。(その3)
【図21】本発明の最良の実施の形態に係る負荷山崩処理手段による処理結果の一例。(その4)
【符号の説明】
【0078】
1…生産スケジューリング装置
21…オーダ情報記憶部
22…作業工程フロー情報記憶部
23…作業工程情報記憶部
24…資源グループ情報記憶部
25…資源情報記憶部
31…スケジュールデータ記憶部
32…PERT計算結果記憶部
33…負荷山積結果記憶部
34…負荷山崩結果記憶部
41…資源別スケジュール結果記憶部
42…オーダ別スケジュール結果記憶部
51…スケジュールデータ取込手段
52…PERT計算手段
53…負荷山積処理手段
54…負荷山崩処理手段
55…スケジュール結果出力手段
101…中央処理制御装置
102…ROM
103…RAM
104…入力装置
105…表示装置
106…通信制御装置
107…記憶装置
108…リムーバブルディスク
109…入出力インタフェース
110…バス

【特許請求の範囲】
【請求項1】
製品品目を製造するために、最小必要資源数と最大必要資源数との間の所定の資源数で作業が実行される任意資源数工程において、単位時間ごとに必要な資源数を平準化し、最適な資源数を算出する生産スケジューリング装置において、
製品品目、製造数量、開始可能日および納期を含むオーダ情報と、この製品品目を製造する任意資源数工程で利用される資源名、最小必要資源数、最大必要資源数、前記単位時間に基づく作業効率が関連づけられた作業工程情報とが記憶される記憶手段と、
前記記憶手段から前記オーダ情報および前記作業工程情報とを読み出して、スケジューリングの対象となるオーダのオーダ情報、およびこのオーダ情報に含まれる製品品目に関連づけられた作業工程情報を抽出して、スケジュールデータとして前記記憶手段に記憶するスケジュールデータ取込手段と、
前記記憶手段から前記スケジュールデータを読み出し、前記オーダごとに前記任意資源数工程において最小必要資源数から最大必要資源数の間のそれぞれの資源数でフォワードパスおよびバックワードパスを算出するPERT計算を実行し、前記オーダごとに、前記任意資源数工程における、納期を守る最小必要資源数と前記最小必要資源数における余裕日数、納期を守る最大必要資源数と前記最大必要資源数における余裕日数、および最早開始可能日と最遅開始可能日と最遅完了日を算出して、PERT計算結果として前記記憶手段に記憶するPERT計算手段と、
前記記憶手段からPERT計算結果を読み出して、前記オーダごとにバックワードパスで最大必要資源数で計算されたPERT計算結果を抽出し、抽出された前記PERT計算結果に基づいて前記単位時間ごとに前記最大必要資源数を越えない様に負荷山積を行って負荷山積結果として前記記憶手段に記憶するとともに、スケジューリングの対象となる期間における前記単位時間あたりの平均必要資源数を算出し、前記負荷山積結果として前記記憶手段に記憶する負荷山積処理手段と、
前記記憶手段から前記PERT計算結果および前記負荷山積結果を読み出し、前記PERT計算結果における前記オーダごとの前記最小必要資源数および前記最大必要資源数に基づいて過去の方向に前記平均必要資源数を越えないように負荷山崩を行って、負荷山崩結果として前記記憶手段に記憶する負荷山崩処理手段
とを備えることを特徴とする生産スケジューリング装置。
【請求項2】
前記記憶手段から前記負荷山崩結果を読み出して、前記資源ごとおよび前記単位時間ごとに前記資源に割り当てられた前記オーダが関連づけた資源別スケジュール結果と、前記オーダごとに割り当てられた前記資源と納期予定とが関連づけられたオーダ別スケジュール結果とを前記記憶手段に記憶するスケジュール結果出力手段
を更に備えることを特徴とする請求項1記載の生産スケジューリング装置。
【請求項3】
前記負荷山積処理手段は、前記記憶手段から前記PERT計算結果を読み出して、前記オーダごとにバックワードパスで最大必要資源数で計算されたPERT計算結果を抽出し、前記最遅開始可能日から前記最遅完了日の間で、前記単位時間ごとに、前記最大必要資源数を越えない様に負荷山積を行って負荷山積結果として前記記憶手段に記憶するとともに、スケジューリングの対象となる期間における平均必要資源数を算出し、前記負荷山積結果として前記記憶手段に記憶し、
前記負荷山崩処理手段は、前記記憶手段から前記PERT計算結果および前記負荷山積結果を読み出し、前記PERT計算結果に含まれる前記最遅完了日から前記最早開始可能日に過去の方向に前記平均必要資源数を越えない様に負荷山崩を行って、負荷山崩結果として前記記憶手段に記憶する
ことを特徴とする請求項1または2記載の生産スケジューリング装置。
【請求項4】
前記負荷山崩処理手段は、前記オーダごとのPERT計算結果について割付優先順位の高いオーダから順に抽出して、
前記最大必要資源数の負荷量で空き負荷を探索し、前記最大必要資源数と前記必要平均資源数とを比較するとともに、
前記必要平均資源数で割付可能であって既に割付済みのオーダの負荷を過去方向に移動可能である場合、前記割付済みのオーダを過去方向に移動させて抽出されたオーダの負荷を移動後の空き負荷に割り当て、前記既に割付済みのオーダの負荷を過去方向に移動可能でない場合、抽出されたオーダの負荷を空き負荷に割り当てるとともに、
前記必要平均資源数で割付不可能であって前記平均必要資源数を越えた負荷を前記最遅完了日から前記最早開始日の過去方向へ移動可能である場合、前記平均必要資源数を越えた負荷を前記最遅完了日から前記最早開始日の範囲で過去方向へ移動し、前記平均必要資源数を越えた負荷を前記最遅完了日から前記最早開始日の範囲で過去方向へ移動可能でない場合、前記最大必要資源数にて割付を行う
ことを特徴とする請求項3記載の生産スケジューリング装置。
【請求項5】
コンピュータに、製品品目を製造するために、最小必要資源数と最大必要資源数との間の所定の資源数で作業が実行される任意資源数工程において、単位時間ごとに必要な資源数を平準化し、最適な資源数を算出させる生産スケジューリングプログラムにおいて、
記憶手段から、製品品目、製造数量、開始可能日および納期を含むオーダ情報と、この製品品目を製造する任意資源数工程で利用される資源名、最小必要資源数、最大必要資源数、前記単位時間に基づく作業効率が関連づけられた作業工程情報とを読み出し、スケジューリングの対象となるオーダが記憶されたオーダ情報、およびこのオーダ情報に含まれる製品品目に関連づけられた作業工程情報とを抽出して、スケジュールデータとして前記記憶手段に記憶するスケジュールデータ取込手段と、
前記記憶手段から前記スケジュールデータを読み出し、前記オーダごとに前記任意資源数工程において最小必要資源数から最大必要資源数の間のそれぞれの資源数でフォワードパスおよびバックワードパスを算出するPERT計算を実行し、前記オーダごとに、前記任意資源数工程における、納期を守ることのできる最小必要資源数と前記最小必要資源数における余裕日数、納期を守ることのできる最大必要資源数と前記最大必要資源数における余裕日数、および最早開始可能日と最遅開始可能日と最遅完了日を算出して、PERT計算結果として前記記憶手段に記憶するPERT計算手段と、
前記記憶手段からPERT計算結果を読み出して、前記オーダごとにバックワードパスで最大必要資源数で計算されたPERT計算結果を抽出し、抽出された前記PERT計算結果に基づいて前記単位時間ごとに前記最大必要資源数を越えない様に負荷山積を行って負荷山積結果として前記記憶手段に記憶するとともに、スケジューリングの対象となる期間における前記単位時間あたりの平均必要資源数を算出し、前記負荷山積結果として前記記憶手段に記憶する負荷山積処理手段と、
前記記憶手段から前記PERT計算結果および前記負荷山積結果とを読み出し、前記PERT計算結果における前記オーダごとの前記最小必要資源数および前記最大必要資源数に基づいて過去の方向に前記平均必要資源数を越えないように負荷山崩を行って、負荷山崩結果として前記記憶手段に記憶する負荷山崩処理手段
とをコンピュータに実行させることを特徴とする生産スケジューリングプログラム。
【請求項6】
前記記憶手段から前記負荷山崩結果を読み出して、前記資源ごとおよび前記単位時間ごとに前記資源に割り当てられた前記オーダが関連づけた資源別スケジュール結果と、前記オーダごとに割り当てられた前記資源と納期予定とが関連づけられたオーダ別スケジュール結果とを前記記憶手段に記憶するスケジュール結果出力手段
を更にコンピュータに実行させることを特徴とする請求項5記載の生産スケジューリングプログラム。
【請求項7】
前記負荷山積処理手段は、前記記憶手段から前記PERT計算結果を読み出して、前記オーダごとにバックワードパスで最大必要資源数で計算されたPERT計算結果を抽出し、前記最遅開始可能日から前記最遅完了日の間で、前記単位時間ごとに、前記最大必要資源数を越えない様に負荷山積を行って負荷山積結果として前記記憶手段に記憶するとともに、スケジューリングの対象となる期間における平均必要資源数を算出し、前記負荷山積結果として前記記憶手段に記憶し、
前記負荷山崩処理手段は、前記記憶手段から前記PERT計算結果および前記負荷山積結果を読み出し、前記PERT計算結果に含まれる前記最遅完了日から前記最早開始可能日に過去の方向に前記平均必要資源数を越えない様に負荷山崩を行って、負荷山崩結果として前記記憶手段に記憶する
ことを特徴とする請求項5または6記載の生産スケジューリングプログラム。
【請求項8】
前記負荷山崩処理手段は、前記オーダごとのPERT計算結果について割付優先順位の高いオーダから順に抽出して、
前記最大必要資源数の負荷量で空き負荷を探索し、前記最大必要資源数と前記必要平均資源数とを比較するとともに、
前記必要平均資源数で割付可能であって既に割付済みのオーダの負荷を過去方向に移動可能である場合、前記割付済みのオーダを過去方向に移動させて移動後の空き負荷に抽出されたオーダの負荷を割り当て、前記既に割付済みのオーダの負荷を過去方向に移動可能でない場合、空き負荷に抽出されたオーダの負荷を割り当てるとともに、
前記必要平均資源数で割付不可能であって前記平均必要資源数を越えた負荷を前記最遅完了日から前記最早開始日の過去方向へ移動可能である場合、前記平均必要資源数を越えた負荷を前記最遅完了日から前記最早開始日の範囲で過去方向へ移動し、前記平均必要資源数を越えた負荷を前記最遅完了日から前記最早開始日の範囲で過去方向へ移動可能でない場合、前記最大必要資源数にて割付を行う
ことを特徴とする請求項7記載の生産スケジューリングプログラム。


【図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

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate


【公開番号】特開2006−106829(P2006−106829A)
【公開日】平成18年4月20日(2006.4.20)
【国際特許分類】
【出願番号】特願2004−288512(P2004−288512)
【出願日】平成16年9月30日(2004.9.30)
【出願人】(000003078)株式会社東芝 (54,554)
【出願人】(301063496)東芝ソリューション株式会社 (1,478)
【Fターム(参考)】