(57)【要約】【課題】一度に全ての制約条件を考慮に入れて、比較的短時間で解を探索可能な生産スケジュールの作成方法を提供することである。【解決手段】未割付けの製造工程での処理１・・・ｎの中から、オーダの優先順位、納期などのルールをもとに、次に割付ける製造工程での処理を選択し、スケジュールの最短化や製品品種間の切替時間合計の最小化などの評価基準をもとに、割付ける設備を決定し、制約伝播によって未割付けの製造工程での処理の開始、終了時刻の範囲を限定し、再び次に割付ける製造工程での処理を選択する過程に戻る。【選択図】図５
2004145880.tif 000002
【特許請求の範囲】
【請求項１】
　複数品種の製品を製造するプロセスにおいて、少なくとも製品の製造に必要な原料の種類と量および製品製造に必要な製造工程の情報からオーダの製造工程を定める過程と、製造工程での処理を実施する設備および開始時刻、終了時刻の割付けが完了するまで未割付けの製造工程での処理の中から少なくともオーダの納期をもとに次に割り付ける製造工程での処理を選択する過程と、少なくともスケジュールの最短化、または製品の切り替えに要する時間と処理の開始待ち時間の総合計時間の最小化を含む評価基準の値を最大化、または最小化するような製造工程での処理の製造する設備および開始時刻、終了時刻を決定する過程と、制約伝播によって未割付けの製造工程での処理に対する処理の開始可能な時刻、終了可能な時刻の範囲を少なくとも納期を含む各種制約条件および既に製造する設備および開始時刻、終了時刻を確定して製造設備への割付けが完了した処理の情報をもとに限定する過程と、前記評価基準の値を最大化、または最小化するような製造工程での処理の製造する設備および開始時刻、終了時刻を決定する過程において前記評価基準をもとに定める未割付けの製造工程での処理が存在する場合でも評価可能な局所的な評価基準に基づいて製造工程での処理の製造する設備および開始時刻、終了時刻を確定して得られる全ての制約を満足するスケジュールを実行可能解として提示する過程から成る生産スケジュールの作成方法。
【請求項２】
　前記製品の切り替え前後の製品品種の組合せにより切替時間が変化する、または切替禁止となるような制約を与える請求項１に記載の生産スケジュールの作成方法。
【請求項３】
　前記製造工程はバッチ処理工程と連続処理工程が混在する請求項１または２に記載の生産スケジュールの作成方法。
【請求項４】
　前記製造工程は前段取り処理、製品の製造処理、後段取り処理、切替え処理から成る請求項１〜３のいずれかに記載の生産スケジュールの作成方法。
【請求項５】
　前記各処理に必要な要員を制約条件とした請求項４に記載の生産スケジュールの作成方法。
【請求項６】
　全ての制約を満足する割付けが得られない場合に、予め指定された優先度の低いオーダから納期の制約を緩和する請求項１〜５のいずれかに記載の生産スケジュールの作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
　この発明は、生産スケジュール、特に最適の生産スケジュールを立案・作成する方法に関する。
【背景技術】
【０００２】
　従来から、顧客のオーダ等に基づいて、その製品をどのような設備に割付け、どのような順序で生産するかを定める生産スケジューリングは広く行われている。
【０００３】
　上記生産スケジューリングを行うには、予め設定した一定のルールに従って作業を割付ける方法、所謂ルールベースによる手法がある。また、問題の規模が小さい場合には、種々の制約条件を考慮に入れ、数理計画法によって解くことも可能である。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
　前者のルールベースによる方法では、熟練者の知識をルール化して取り込む必要があり、ルールだけに基づくため、最適化の機能はなく、また、操業実績のないケースへの適用は困難であったり、制約条件を全て満足できるとは限らない問題がある。しかしコンピュータによって高速で処理適用できる利点がある。
【０００５】
　一方、後者の数理計画法によれば、比較的小規模な問題であり、かつモデル表現が可能であればどのような分野にも適用できる利点があるが、モデル表現に数理計画の知識を要し、また計算時間がオーダ数増加に伴い指数関数的に増加するため、実用的でない場合が多い。
【０００６】
　そこで、この発明の主たる課題は、一度に全ての制約条件を考慮に入れて、比較的短時間で最適解を探索可能な生産スケジュールの作成方法を提供することである。
【課題を解決するための手段】
【０００７】
　上記の課題を解決するために、この発明は、複数品種の製品を製造するプロセスにおいて、少なくとも製品の製造に必要な原料の種類と量および製品製造に必要な製造工程の情報からオーダの製造工程を定める過程と、製造工程での処理を実施する設備および開始時刻、終了時刻の割付けが完了するまで未割付けの製造工程での処理の中から少なくともオーダの納期をもとに次に割り付ける製造工程での処理を選択する過程と、少なくともスケジュールの最短化、または製品の切り替えに要する時間と処理の開始待ち時間の総合計時間の最小化を含む評価基準の値を最大化、または最小化するような製造工程での処理の製造する設備および開始時刻、終了時刻を決定する過程と、制約伝播によって未割付けの製造工程での処理に対する処理の開始可能な時刻、終了可能な時刻の範囲を少なくとも納期を含む各種制約条件および既に製造する設備および開始時刻、終了時刻を確定して製造設備への割付けが完了した処理の情報をもとに限定する過程と、前記評価基準の値を最大化、または最小化するような製造工程での処理の製造する設備および開始時刻、終了時刻を決定する過程において前記評価基準をもとに定める未割付けの製造工程での処理が存在する場合でも評価可能な局所的な評価基準に基づいて製造工程での処理の製造する設備および開始時刻、終了時刻を確定して得られる全ての制約を満足するスケジュールを実行可能解として提示する過程とによって生産スケジュールの作成方法を構成したのである。
【０００８】
　前記製品の切り替え前後の製品品種の組合せにより切替時間が変化する、または切替禁止とする制約を付加してもよい。また製造工程としてバッチ処理工程と連続処理工程が混在していてもよい。前記製造工程は前段取り処理、製造処理、後段取り処理、切替え処理を含む。これらの各処理作業に必要な要員を制約条件に入れるのが好ましい。これらの全制約を満足するスケジュールが得られない場合に、予め指定された優先度の低いオーダから納期の制約を緩和するなど、予め指定された制約を緩和することができる。
【発明の効果】
【０００９】
　この発明によれば、以上のように、顧客のオーダに対して製造工程での処理を定め、これを納期、製造可能設備制約等全ての制約を満足するように制約伝播の方式で各製造設備に割付けて行き、稼働率最大化などの評価基準に合致する割付けを選択するようにしたので、短時間で全ての制約を満足する実行可能なスケジュールまたは最適のスケジュールを作成できる効果がある。
【発明を実施するための最良の形態】
【００１０】
　以下、この発明の実施形態を添付図面に基づいて説明する。図１は、この発明の生産スケジュールの作成方法に用いるハードウェアの一例を示すブロック図である。図示のように、中央演算装置１０には、キーボード等の入力機器１１によって逐次更新される情報や計算条件が入力され、またデータベース１２からはマスタ情報が入力され、これらの入力情報を用いて、中央演算装置１０に格納されたプログラムが種々の計算を行ない、その結果を出力情報としてプリンタ１３やディスプレイ１４などに表示する。なお、入力情報や出力情報は、インターネットやオンラインで送受信することができる。
【００１１】
　前記入力情報と計算プログラム及び出力情報の概要とその関係を図２に示す。図示のように、逐次更新される情報は、顧客からの注文（オーダ）および原料、中間製品、製品在庫量情報であって、この内オーダは製品の種類、量、納期、優先順位（例えば同一納期の場合の優先順位）などである。マスタ情報には、どのような工程がありどのような設備がどれだけあるかを示す工程・設備の数及び能力の情報、各製品を製造するために必要な製造工程と必要な原料量などを示す製造処方の情報、製品の種類、内容を示す情報、製品に対応した処理可能設備の情報、ある設備でＡ製品からＢ製品に製造を切換える際に要する切替時間の情報またはＡ製品からＢ製品には製造の切換え不可を示す禁止情報、作業員の能力（スキル）毎の合計要員数や各作業に必要な要員数などの作業要員情報等がデータベース化されている。計算条件パラメータは、スケジュール最短化、切替時間最小化、設備稼働率の最大化などの計算評価基準、計算対象期間（例えば１ヵ月）、最適化を求めるか実行可能解を求めるかの計算種類の選択などである。
【００１２】
　上記のような入力情報に基づいて、計算プログラムは、制約モデルを作成する。制約としては、納期が最も標準的であるが、勿論後述する様々な制約がある。このモデルに従って各工程毎の各作業の開始・終了時刻などのスケジューリング計算を実行し、計算結果を各種グラフなどの出力情報として出力する。
【００１３】
　ここで、スケジューリングとは、与えられたオーダに対して各種制約条件を考慮に入れて、各工程で必要な処理作業の処理を実施する設備および処理の開始、終了時刻（割付け順序）を決定する組合せ問題である。例えば図３に示すように、オーダとしての製品Ａ、Ｂ、Ｃ、Ｄ、Ｅとそれぞれの量及び納期が図のように与えられているとし、生産設備１と２があって、いずれの製品も製造工程１と２によって生産されるとすれば、納期に間に合う実行可能な工程の組合せが図のように(1) 、(2) 、(3) 、(4) ・・・と多数考えられる。このうちから、例えば全体のスケジュールが最短になる組合せや切替時間合計が最小となる組合せなど一定の評価基準による最適解を見出すものである。
【００１４】
　上記のような実行可能な各工程での処理作業の割付けの組合せを種々の制約から特定化する方法の一例を図４に基づいて説明する。まず、各オーダの製品を生産するために必要な製造工程の組合せの制約があることは前述の通りである。各製造工程には、実際に製品を生産する処理のほか、前段取り処理と後段取り処理及び切替え処理がある。これらの処理には、それぞれ特定の作業要員、特定の設備、特定のユーティリティが必要である。例えば作業要員でも一定の熟練度（スキル）を持たなければ操作できない処理がある。これらの要求も制約となり、例えば図示のように付与される。そして、処理量（例えばオーダの量）と処理能力あるいは切替え後に製造する製品の種類の組合せによる切替時間などの制約から製造工程の全処理時間が計算され、開始時刻、終了時刻も計算される。
【００１５】
　次に、特定化した製造工程で実施される各処理の各設備への割付け方法を説明する。図５、図６に示すように、ステップ１で未割付けの製造工程で実施される各処理１・・・ｎの中から、次に割付ける製造工程での処理を例えばオーダの優先度の高い順、納期の早い順、最早開始時刻の早い順などのルールに従い選択していく。次にステップ２で先に選択された製造工程での処理を割付け可能な設備１、２、３の中から、全体のスケジュール最短化、切替時間の最小化などの評価基準に基づいて例えば一番開始時刻が早くなる設備に割付ける等、未割付けの処理が存在する場合でも評価可能な局所的な評価基準により設備に割付け、工程での処理の開始、終了時刻を決定する。さらにステップ３で制約伝播によって未割付けの製造工程での処理の開始時刻、終了時刻の範囲を限定する。そしてステップ４で全ての製造工程の割付けが完了したかどうかを判定し、未割付けがあればステップ１に戻る。
【００１６】
　以上の説明では各処理を次々に設備に割付けているが、この時に割付け可能な設備がない場合は、次に割付ける処理の優先順位を変更して設備への割付けを実施する（ステップ５〜７）。このとき、既に優先順位変更のパターンを全て実施済で、かつ割付け可能な設備がない場合は、前回の全ての処理が割付けられたスケジュールを計算結果として提示する（ステップ８）。また全ての処理の割付けを完了した場合には、ステップ９でスケジュール計算が評価基準を最適にするスケジュールを提示するものか、実行可能なスケジュールを提示するものかチェックして、実行可能なスケジュールの提示であれば、評価基準の値が現在の評価基準の値に減衰率α＝０を掛けたもの以下になるという制約式を追加してステップ１へ戻る。最適スケジュールの提示の場合は、現在の評価基準の値を算出して、評価基準の値が現在の評価基準の値にある減衰率（０〜１の値）を掛けたもの以下になるという制約式を追加して（ステップ１０）、全ての処理を未割付けとしてステップ１へ戻るが、この時、ステップ１１で未割付けの処理を選択する優先順位を変更して、ステップ１〜ステップ４までの処理をくり返す。なお、実用可能解の場合は、ステップ９において減衰率α＝０として評価基準の制約式を追加するので、ステップ７で優先順位変更のパターンを全て実行しても必ず割付け不可能となるため、１回目の全て割付けられたスケジュールが実行可能解となる。
【００１７】
　上述の処理ステップにおいて、制約式及び目的関数の一例を挙げると次の通りである。いま、ある製品のオーダを製造工程１で製造した中間製品１を原料としてその製造工程２で最終製品として製造する場合、前の工程での製造終了後、delay 時間以内に次工程の製造作業を実施するものとすれば、
　　　Ｔｅ（ｏ，ｐ-1）＋delay ≧Ｔｓ（ｏ，ｐ) 　　・・・（１）
　　　Ｔｅ（ｏ，ｐ-1）≦Ｔｓ（ｏ，ｐ) 　　　　　　・・・（２）
ここでＴｅ（ｏ，ｐ-1）は、オーダｏの製造工程の中のｐ-1工程での製造作業の終了時刻変数を表し、delay は１つ前の工程と現在の工程での製造作業間の最大の遅れ時間を表す。（１）式は、後工程の製造作業の開始が前工程の作業終了後、delay 時間以内に実施されなければならないことを意味する式であり、（２）式は、現在の工程の製造作業の開始は前工程の製造作業終了後しかできないことを意味する。
【００１８】
　また、各オーダｏの製品を製造する最終工程での製造作業の終了時刻が、各オーダの納期よりも早くなければならないから、
　　　Ｔｅ（ｏ，ｐｅ）≦Due Time（ｏ）＋ slack（ｏ）・・・（３）
ここでＴｅ（ｏ，ｐｅ）はオーダｏの製品を製造する最終工程ｐｅでの製造作業の終了時刻変数、Due Time（ｏ）はオーダｏの納期、slack （ｏ）はオーダｏの納期を破ることを許容するために導入する変数を表す。このslack （ｏ）に関しては、通常はslack （ｏ）＝０としてスケジュール計算を実施するが、実行可能な解がない場合には、slack （ｏ）≧０としてスケジュール計算を行う。この場合、後述するスケジュールに対する評価基準である目的関数にslack （ｏ）を追加して、slack （ｏ）の値が最小となるスケジュールを計算する。
【００１９】
　この発明のスケジュール作成方法では、スケジュール計算の目的関数（評価基準）として全体のスケジュール期間の最短化、設備稼働率最大化など複数の評価基準から必要に応じて選択できるようになっている。例えば稼働率最大化の場合の目的関数は次のようになる。
【００２０】
　　　MaximizeΣp Σe Ｒ（ｐ，ｅ）　　              　・・・（４）
　　　Ｒ（ｐ，ｅ）＝Σk Ｔ（ｐ，ｅ，ｋ)/Tperiod     　・・・（５）
ここでＲ（ｐ，ｅ）は工程ｐの設備ｅの稼働率、ΣΣＲ（ｐ，ｅ) は全ての設備の稼働率、ΣＴ（ｐ，ｅ，ｋ) は工程ｐの設備ｅで実施される作業の処理に要する時間を合計した値、ｋは工程ｐの設備ｅに割付けられた１つの処理、Tperiod は計算対象期間の合計時間数、Σの右下のｐ、ｅ、ｋは添字を表すものとする。
【００２１】
ここで制約内のスケジュールがない場合に、特定の制約を緩和したスケジュールを求める場合の方法について説明する。例えば納期の制約を緩和した（納期の制約を破った）スケジュールを求める場合、前述の制約も（３）式でslack ＝０という制約を追加したが、納期制約を緩和する場合は、まずこのslack ＝０という制約を解除して変わりにslack ≧０という制約を追加する。そして、例えば評価基準が稼働率最大化の場合には、（４）式の目的関数を次のように変更する。
【００２２】
　　Maximize (Σp Σe Ｒ（ｐ，ｅ）−Σ(slack（ｏ）×weight (ｏ))　・・・（６）
ここでＲ（ｐ，ｅ）は（４）式と同じもので、Σ（slack （ｏ）×weight（ｏ））は各オーダｏ毎のslack （ｏ）×weight（ｏ）をオーダ数だけ合計したものであり、weight（ｏ）は各オーダの重要度に応じた優先度に基づいて予め設定された重みを表す。例えば優先順位の高いオーダ（できるだけ納期を守りたいオーダ）についてはweight（ｏ）の値を大きく設定する。そうすることにより評価基準である（６）式は、各オーダのslack （ｏ）ができるだけ小さくなるように、かつ優先順位の高いオーダのslack （ｏ）は優先順位の低いオーダよりも小さくなるように計算される。
【００２３】
　他の評価基準の例として以下の項目を挙げることができる。
(I) 製品の製造に使用するスクリュー等副資源の切替回数の最小化
　　製品の製造にスクリューなどの副資源を使用し、かつ製造する製品の種類により副資源を切替えて製造する場合に、できるだけ同じ副資源を使用する製品を連続して製造するように考慮する。このような場合は製品製造に使用する副資源の切替回数を最小化するという評価基準を考慮する。
(II)製品の使用する原料の種類の切替回数の最小化
　　製造する製品が異なれば一般に使用する原料が異なるが、同じ設備を利用して複数の製品を切替えて製造する場合に、使用する原料を供給する装置（原料フィーダ）も複数の原料を切替えて供給するような場合、できるだけ同じ種類の原料を使用する製品を連続して製造することにより原料供給装置の切替洗浄回数を削減することが可能となる。このような場合は評価基準として製品に使用する原料種類の切替回数最小化を考慮する。
(III) 製造する製品の色替えパターンの最適化
　　１つの設備で様々な色の製品を切替えて製造する場合、色の切替パターンについて薄い色から濃い色への切替の方が逆の濃い色から薄い色への切替よりも好ましいなどの条件が存在する。これは色の濃い製品から色の薄い製品へ切り替える場合は、薄い色の製品への濃い色の製品の混入が少しでもあると、混入の影響が大きいが逆の場合は影響がそれほど大きくないような場合が考えられる（例えば、影響が大きい場合は製品を切り替える場合に設備を解体して清掃する必要があるが、影響が小さい場合は設備を解体せずに水洗だけの清掃で切替が可能など切替にかかる時間や、労力に大きな差が出る）。このような場合は、色の切替のパターンの最適化を評価基準として採用する。
【００２４】
　また、複数の評価基準を同時に考慮したい場合には、考慮したい評価基準にそれぞれ優先度に応じた重みを付けて、足し合わせたものを新しい評価基準として考慮することで対応することが可能となる。
【００２５】
　上記評価基準の具体的な考慮方法を以下に説明する。
(I) 使用副資源切替回数最小化、(II)使用原料種類切替最小化とも、前記（４）（５）式に代えて以下のように目的関数を定義することにより切替回数の最小化を考慮する。
　　MinimizeΣp Σe Σk Ｃ（ｐ，ｅ，ｋ）　　　　　　　・・・（７）
　　Ｃ（ｐ，ｅ，ｋ）＝Ｑ（ｐ，ｅ，ｋ，ｋ＋１）　　　　・・・（８）
ここでＱ（ｐ，ｅ，ｋ，ｋ＋１）は工程ｐの設備ｅに割り付られた処理ｋと処理ｋの次に切り替えられる処理ｋ＋１の間のペナルティの値を表すもので、処理ｋ、処理ｋ＋１の使用するスクリューの種類（（II）の場合は使用原料種類）により次の通り定義される。
　　Penalty （ｋ，ｋ＋１）＝１　ｋとｋ＋１が異なるスクリュー（原料種類）の場合
　　Penalty （ｋ，ｋ＋１）＝０　ｋとｋ＋１が同じスクリュー（原料種類）の場合
　　　　　　　　　　　　　　　　　　　　　　　　　　　・・・（９）
また、処理ｋが工程ｐの設備ｅの一番最後（処理完了時刻がもっとも遅い）の処理であれば、Ｑ＝０とする（７）式のΣp Σe Σk Ｃ（ｐ，ｅ，ｋ）は、工程ｐの設備ｅで処理される処理ｋと処理ｋの次に実施される処理ｋ＋１の間のペナルティを全ての工程、設備、処理について合計した値を表す。上述のように評価基準を定義することにより（７）式の値は切替回数の合計値を持つこととなる。従って（７）式を最小化することにより切替回数の最小化を図ることが可能となる。
【００２６】
　次に、(III) 製造する製品の色替えパターンの最適化についても上述の方法と同様に考慮することができる。但しこの場合は、（９）式のPenalty の値を以下のように定義する。
　Penalty （ｋ，ｋ＋１）＝０　　　　　　　　　　ｋとｋ＋１が同じ色の製品の場合
　Penalty （ｋ，ｋ＋１）＝γ（Ｇ（ｋ），Ｇ（ｋ＋１））ｋとｋ＋１が異なる色の製品の場合
　　　　　　　　　　　　　　　　　　　　　　　　　　　・・・（１０）
ここでγは、切替前後の色のパターンにより重み付けをした値を持たせたペナルティ値を表す。例えば、薄い色→濃い色の切替の場合は１として、逆に濃い色→薄い色の切替の場合は１０にするなど、切り替えるパターンに応じて重みを付けたペナルティ値を設定する。このように定義し（７）式の目的関数の最小化を図ることにより、できるだけ同じ色の製品を連続して生産する、また色の切替が必要な場合でも、重みが小さいペナルティ値を取る組み合せの切替（薄い色から濃い色への切替）をできるだけ多くするようなスケジュールを計算することとなる。
【００２７】
　次に上述した評価基準の値を同時に考慮したい場合には、それぞれの評価基準に優先度に応じて重みを付けて足し合わせたものを新たな評価基準として考慮することで対応できる。
　Ｅ* ＝α１×Ｅ１＋α２×Ｅ２＋α３×Ｅ３＋・・・
ここでＥ* は各評価基準に重み付けをして足し合わせた新しい評価基準を表し、α１、α２、α３、・・・は考慮する各評価基準の優先度に応じた重みの値を表し、Ｅ１、Ｅ２、Ｅ３、・・・は考慮する各評価基準を表す。α１、α２、α３、・・・は０または正の実数であり、０と設定することにより考慮の対象からはずすことができることは言うまでも無い。
【００２８】
なお制約条件は、各オーダ毎の納期、製造作業工程間の前後関係や指定時間関係、製造工程の使用設備、製品グレードの切替え時間や切替え禁止、切替え作業の使用設備、作業要員のスキル及び要員数、設備停止期間などがある。また、製造工程はバッチ処理工程と連続処理工程が混在していてもよい。
【図面の簡単な説明】
【００２９】
【図１】この発明のスケジュール作成方法に用いるハードウェアの一例を示すブロック図
【図２】スケジュール作成方法に要する情報とその流れを示す説明図
【図３】スケジュール作成方法の概要を示す説明図
【図４】各製造工程を特定化する方法を示す説明図
【図５】特定化した各製造工程での処理の割付け方法を示す説明図
【図６】特定化した各製造工程での処理の割付け方法を示すフローチャート
【符号の説明】
【００３０】
１〜１１　処理ステップ
１０　中央演算装置
１１　キーボード
１２　データベース
１３　プリンタ
１４　ディスプレイ
【図１】
2004145880.tif 000003
【図２】
2004145880.tif 000004
【図３】
2004145880.tif 000005
【図４】
2004145880.tif 000006
【図５】
2004145880.tif 000007
【図６】
2004145880.tif 000008