(57)【特許請求の範囲】
【請求項１】
生産対象である複数のオーダーの負荷を、生産計画の開始から終了までの間において所定幅で区切られた時間軸上の複数の時間区分に対して割り付けて、生産計画を作成する生産計画作成方法であって、
計算機の演算部により実行される処理が、
前記複数のオーダーの納期及び負荷をオーダー情報として登録するオーダー情報記憶ステップと、
前記複数のオーダーの負荷を前記複数のオーダーの納期に対応する時間区分に山積みして、負荷山積み結果として出力する負荷山積みステップと、
前記負荷を山積みした時間区分を負荷累積計算時間区分として、各負荷累積計算時間区分に関して、前記負荷山積み結果に基づいて、生産計画の開始から当該負荷累積計算時間区分まで山積みした前記負荷を累積した当該負荷累積計算時間区分の負荷累積量を計算して、負荷累積計算結果として出力する負荷累積計算ステップと、
時間軸方向を基準として最も遅い負荷累積計算時間区分を除く各負荷累積計算時間区分に関して、生産計画の開始から当該負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量以上となる累積生産量不等式制約、生産計画の開始から時間軸方向を基準として最も遅い負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量と等しくなる最終累積生産量等式制約、各時間区分での生産量は非負であるという生産量の非負制約を満たしつつ、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値のｐ乗（ｐは任意の自然数）の総和、または、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値のｐ乗（ｐは任意の自然数）の総和を前記時間区分の数で割った値である各時間区分の生産量の変動を示す評価式が最小となる決定変数を各時間区分の生産量として計算する生産量計算ステップと、
計算された前記各時間区分の生産量を工程能力とみなして、負荷を再割り当てする負荷山崩しステップと、
を有することを特徴とする生産計画作成方法。
【請求項２】
前記生産量計算ステップが、更に、
前記評価式を、ｐ＝２として、各時間区分の生産量を意味する決定変数の分散とし、
前記累積生産量不等式制約、前記最終累積生産量等式制約、及び、前記生産量の非負制約を満たしつつ、当該評価式を最小にする決定変数を、凸二次計画法を用いて計算し、計算により得られた決定変数を各時間区分の生産量とすることを特徴とする請求項１に記載の生産計画作成方法。
【請求項３】
前記生産量計算ステップが、更に、
前記評価式を、ｐ＝１として、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値の総和とし、
前記累積生産量不等式制約、前記最終累積生産量等式制約、及び、前記生産量の非負制約を満たしつつ、当該評価式を最小にする決定変数を、線形計画法を用いて計算し、計算により得られた決定変数を各時間区分の生産量とすることを特徴とする請求項１に記載の生産計画作成方法。
【請求項４】
生産対象である複数のオーダーの負荷を、生産計画の開始から終了までの間において所定幅で区切られた時間軸上の複数の時間区分に対して割り付けて、生産計画を作成する生産計画作成プログラムであって、
前記複数のオーダーの納期及び負荷をオーダー情報として登録するオーダー情報記憶ステップと、
前記複数のオーダーの負荷を前記複数のオーダーの納期に対応する時間区分に山積みして、負荷山積み結果として出力する負荷山積みステップと、
前記負荷を山積みした時間区分を負荷累積計算時間区分として、各負荷累積計算時間区分に関して、前記負荷山積み結果に基づいて、生産計画の開始から当該負荷累積計算時間区分まで山積みした前記負荷を累積した当該負荷累積計算時間区分の負荷累積量を計算して、負荷累積計算結果として出力する負荷累積計算ステップと、
時間軸方向を基準として最も遅い負荷累積計算時間区分を除く各負荷累積計算時間区分に関して、生産計画の開始から当該負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量以上となる累積生産量不等式制約、生産計画の開始から時間軸方向を基準として最も遅い負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量と等しくなる最終累積生産量等式制約、各時間区分での生産量は非負であるという生産量の非負制約を満たしつつ、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値のｐ乗（ｐは任意の自然数）の総和、または、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値のｐ乗（ｐは任意の自然数）の総和を前記時間区分の数で割った値である各時間区分の生産量の変動を示す評価式が最小となる決定変数を各時間区分の生産量として計算する生産量計算ステップと、
計算された前記各時間区分の生産量を工程能力とみなして、負荷を再割り当てする負荷山崩しステップと、
を有し、計算機において演算部により読み出して各ステップの処理を実行させることを特徴とする生産計画作成プログラム。
【請求項５】
前記生産量計算ステップが、更に、
前記評価式を、ｐ＝２として、各時間区分の生産量を意味する決定変数の分散とし、
前記累積生産量不等式制約、前記最終累積生産量等式制約、及び、前記生産量の非負制約を満たしつつ、当該評価式を最小にする決定変数を、凸二次計画法を用いて計算し、計算により得られた決定変数を各時間区分の生産量とすることを特徴とする請求項４に記載の生産計画作成プログラム。
【請求項６】
前記生産量計算ステップが、更に、
前記評価式を、ｐ＝１として、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値の総和とし、
前記累積生産量不等式制約、前記最終累積生産量等式制約、及び、前記生産量の非負制約を満たしつつ、当該評価式を最小にする決定変数を、線形計画法を用いて計算し、計算により得られた決定変数を各時間区分の生産量とすることを特徴とする請求項４に記載の生産計画作成プログラム。
【請求項７】
計算機の演算部を用いて、生産対象である複数のオーダーの負荷を、生産計画の開始から終了までの間において所定幅で区切られた時間軸上の複数の時間区分に対して割り付けて、生産計画を作成する生産計画装置であって、
前記複数のオーダーの納期及び負荷をオーダー情報として登録するオーダー情報記憶部と、
前記複数のオーダーの負荷を前記複数のオーダーの納期に対応する時間区分に山積みして、負荷山積み結果として出力する負荷山積み部と、
前記負荷を山積みした時間区分を負荷累積計算時間区分として、各負荷累積計算時間区分に関して、前記負荷山積み結果に基づいて、生産計画の開始から当該負荷累積計算時間区分まで山積みした前記負荷を累積した当該負荷累積計算時間区分の負荷累積量を計算して、負荷累積計算結果として出力する負荷累積計算部と、
時間軸方向を基準として最も遅い負荷累積計算時間区分を除く各負荷累積計算時間区分に関して、生産計画の開始から当該負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量以上となる累積生産量不等式制約、生産計画の開始から時間軸方向を基準として最も遅い負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量と等しくなる最終累積生産量等式制約、各時間区分での生産量は非負であるという生産量の非負制約を満たしつつ、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値のｐ乗（ｐは任意の自然数）の総和、または、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値のｐ乗（ｐは任意の自然数）の総和を前記時間区分の数で割った値である各時間区分の生産量の変動を示す評価式が最小となる決定変数を各時間区分の生産量として計算する生産量計算部と、
計算された前記各時間区分の生産量を工程能力とみなして、負荷を再割り当てする負荷山崩し部と、
を有することを特徴とする生産計画作成装置。
【請求項８】
前記生産量計算部が、更に、
前記評価式を、ｐ＝２として、各時間区分の生産量を意味する決定変数の分散とし、
前記累積生産量不等式制約、前記最終累積生産量等式制約、及び、前記生産量の非負制約を満たしつつ、当該評価式を最小にする決定変数を、凸二次計画法を用いて計算し、計算により得られた決定変数を各時間区分の生産量とすることを特徴とする請求項７に記載の生産計画作成装置。
【請求項９】
前記生産量計算部が、更に、
前記評価式を、ｐ＝１として、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値の総和とし、
前記累積生産量不等式制約、前記最終累積生産量等式制約、及び、前記生産量の非負制約を満たしつつ、当該評価式を最小にする決定変数を、線形計画法を用いて計算し、計算により得られた決定変数を各時間区分の生産量とすることを特徴とする請求項７に記載の生産計画作成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、種々の納期のオーダーを生産対象とし、生産対象である複数のオーダーの負荷を割り当てて、生産計画を作成する生産計画作成方法及び生産計画作成プログラム、並びに生産計画作成装置に関する。
【背景技術】
【０００２】
従来から、生産対象である複数のオーダーの負荷を、生産計画の開始から終了の間において所定幅で区切られた時間軸上の複数の時間区分に対して割り付けて、生産計画を作成する技術が開発されている。そして、生産計画に割り付けた負荷を平準化する技術として、所定幅で区切られた複数の時間区分に対して、暫定的に負荷を割り付け（山積み）、割り付けられた負荷の高い時間区分において、負荷の一部を隣接する負荷の低い時間区分に逐次移動させる（山崩し）ことで、時間区分ごとの負荷の変動を小さくする方法がある（例えば、特許文献１）。尚、暫定的に負荷を割り付ける手法として、納期を基準に（納期に間に合う限界の時間区分に）割り付ける手法、最早着手を基準に（最も早く作業を開始できる時間区分に）割り付ける手法などがある。
【０００３】
暫定的な負荷の割り付け状態では、通常、負荷の高い時間区分と負荷の低い時間区分が混在する。そして、負荷の高い時間区分では、大幅に工程能力を超えてしまい、作成された生産計画をそのまま実行に移すことは不可能な場合が多い。従って、特許文献１のような方法を用いることにより、負荷の高い時間区分は負荷が低くなり、負荷の低い時間区分は負荷が高くなることから、工程能力を有効活用することができるため、設備能力の範囲で納期遅れを最低限にとどめる生産計画を作成することが可能である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−３３８６０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に示すような従来技術では、以下の問題がある。
・負荷の高い時間区分の検索と隣接する時間区分への負荷の移動を繰り返して実行する必要があり、最終的に全体の負荷が平準化されるまでに多くの計算時間を要する。
・負荷が工程能力を超えている限り、納期を犠牲にしても時間軸の未来方向に山崩しを行うことで、実行可能な生産計画を作成することができるが、納期を厳守する条件で、工程能力の超過を許容した負荷の平準化ができない。これは、従来技術が、「負荷が工程能力以下になる」以外に明確な山崩しの終了条件を持たないことに由来する。そのため、多少の工程能力の増強（例えば、残業や増員（極力少ないほうが良い））を投入してでも、納期に間に合わせる生産計画を立案することは困難である。あるいは、どの程度の工程能力の増強策をどの時間区分で講じれば、納期を遵守できるかの指針が得られない。
【０００６】
そこで、本発明が解決しようとする課題は、多少の工程能力の超過を許容しつつ、オーダーの納期を遵守した生産計画を作成することができる生産計画作成方法及び生産計画作成プログラム、並びに生産計画作成装置を提供するものである。
【課題を解決するための手段】
【０００７】
本発明に係る生産計画作成方法は、生産対象である複数のオーダーの負荷を、生産計画の開始から終了までの間において所定幅で区切られた時間軸上の複数の時間区分に対して割り付けて、生産計画を作成する生産計画作成方法であって、計算機の演算部により実行される処理が、前記複数のオーダーの納期及び負荷をオーダー情報として登録するオーダー情報記憶ステップと、前記複数のオーダーの負荷を前記複数のオーダーの納期に対応する時間区分に山積みして、負荷山積み結果として出力する負荷山積みステップと、前記負荷を山積みした時間区分を負荷累積計算時間区分として、各負荷累積計算時間区分に関して、前記負荷山積み結果に基づいて、生産計画の開始から当該負荷累積計算時間区分まで山積みした前記負荷を累積した当該負荷累積計算時間区分の負荷累積量を計算して、負荷累積計算結果として出力する負荷累積計算ステップと、時間軸方向を基準として最も遅い負荷累積計算時間区分を除く各負荷累積計算時間区分に関して、生産計画の開始から当該負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量以上となる累積生産量不等式制約、生産計画の開始から時間軸方向を基準として最も遅い負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量と等しくなる最終累積生産量等式制約、各時間区分での生産量は非負であるという生産量の非負制約を満たしつつ、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値のｐ乗（ｐは任意の自然数）の総和、または、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値のｐ乗（ｐは任意の自然数）の総和を前記時間区分の数で割った値である各時間区分の生産量の変動を示す評価式が最小となる決定変数を各時間区分の生産量として計算する生産量計算ステップと、計算された前記各時間区分の生産量を工程能力とみなして、負荷を再割り当てする負荷山崩しステップと、を有することを特徴とする。
【０００８】
本発明に係る生産計画作成プログラムは、生産対象である複数のオーダーの負荷を、生産計画の開始から終了までの間において所定幅で区切られた時間軸上の複数の時間区分に対して割り付けて、生産計画を作成する生産計画作成プログラムであって、前記複数のオーダーの納期及び負荷をオーダー情報として登録するオーダー情報記憶ステップと、前記複数のオーダーの負荷を前記複数のオーダーの納期に対応する時間区分に山積みして、負荷山積み結果として出力する負荷山積みステップと、前記負荷を山積みした時間区分を負荷累積計算時間区分として、各負荷累積計算時間区分に関して、前記負荷山積み結果に基づいて、生産計画の開始から当該負荷累積計算時間区分まで山積みした前記負荷を累積した当該負荷累積計算時間区分の負荷累積量を計算して、負荷累積計算結果として出力する負荷累積計算ステップと、時間軸方向を基準として最も遅い負荷累積計算時間区分を除く各負荷累積計算時間区分に関して、生産計画の開始から当該負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量以上となる累積生産量不等式制約、生産計画の開始から時間軸方向を基準として最も遅い負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量と等しくなる最終累積生産量等式制約、各時間区分での生産量は非負であるという生産量の非負制約を満たしつつ、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値のｐ乗（ｐは任意の自然数）の総和、または、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値のｐ乗（ｐは任意の自然数）の総和を前記時間区分の数で割った値である各時間区分の生産量の変動を示す評価式が最小となる決定変数を各時間区分の生産量として計算する生産量計算ステップと、計算された前記各時間区分の生産量を工程能力とみなして、負荷を再割り当てする負荷山崩しステップと、を有し、計算機において演算部により読み出して各ステップの処理を実行させることを特徴とする。
【０００９】
本発明に係る生産計画作成装置は、計算機の演算部を用いて、生産対象である複数のオーダーの負荷を、生産計画の開始から終了までの間において所定幅で区切られた時間軸上の複数の時間区分に対して割り付けて、生産計画を作成する生産計画装置であって、前記複数のオーダーの納期及び負荷をオーダー情報として登録するオーダー情報記憶部と、前記複数のオーダーの負荷を前記複数のオーダーの納期に対応する時間区分に山積みして、負荷山積み結果として出力する負荷山積み部と、前記負荷を山積みした時間区分を負荷累積計算時間区分として、各負荷累積計算時間区分に関して、前記負荷山積み結果に基づいて、生産計画の開始から当該負荷累積計算時間区分まで山積みした前記負荷を累積した当該負荷累積計算時間区分の負荷累積量を計算して、負荷累積計算結果として出力する負荷累積計算部と、時間軸方向を基準として最も遅い負荷累積計算時間区分を除く各負荷累積計算時間区分に関して、生産計画の開始から当該負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量以上となる累積生産量不等式制約、生産計画の開始から時間軸方向を基準として最も遅い負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量と等しくなる最終累積生産量等式制約、各時間区分での生産量は非負であるという生産量の非負制約を満たしつつ、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値のｐ乗（ｐは任意の自然数）の総和、または、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値のｐ乗（ｐは任意の自然数）の総和を前記時間区分の数で割った値である各時間区分の生産量の変動を示す評価式が最小となる決定変数を各時間区分の生産量として計算する生産量計算部と、計算された前記各時間区分の生産量を工程能力とみなして、負荷を再割り当てする負荷山崩し部と、を有することを特徴とする。
【００１０】
これによると、オーダー毎の負荷は、まず納期に間に合う限界の時間区分（負荷累積計算時間区分）に山積みされる。次に、この結果をもとに、負荷累積計算時間区分に対して、山積みされた負荷の累積が計算される。そして、負荷の累積結果をもとに、各時間区分の生産量の変動が最小になるように、各時間区分の生産量を計算する。生産量の変動は、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値のｐ乗（ｐは任意の自然数）の総和、または、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値のｐ乗（ｐは任意の自然数）の総和を前記時間区分の数で割った値とすることにより、生産量の決定問題として具体的に計算することができる。なお、評価式を計算する解法として、ｐ＝１の場合は、線形計画法を用いて計算し、ｐ＝２の場合は、凸二次計画法を用いて計算する。また、ｐ≧３の場合は、ラグランジュの未定乗数法やペナルティ関数法など汎用的な解法を用いて計算する（ｐ≧３の場合に限らず、ｐ＝１，２でも計算可能）。ここで、決定した各時間区分の生産量は、（累積生産量不等式制約より）オーダーの納期を遵守するための必要最低限の工程能力以上であり、また各時間区分の生産のペースが平準化された生産量となっている。次に、計算した生産量を各時間区分の工程能力と見なして負荷を再割り当てる（山崩しする）。これにより、山崩し操作の前に、納期を満たすために必要な最低限の工程能力が算定できるため、従来方法のように山崩し操作を繰り返し実行する必要がなく、高速に負荷の平準化が可能となる。さらに、納期を厳守するために最低限必要な生産能力を見積ることも可能となる。従って、多少の工程能力の超過を許容しつつ、オーダーの納期を遵守した生産計画を作成することができる。
【００１４】
また、本発明に係る生産計画作成方法及び生産計画作成プログラムは、前記生産量計算ステップが、更に、前記評価式を、ｐ＝２として、各時間区分の生産量を意味する決定変数の分散とし、前記累積生産量不等式制約、前記最終累積生産量等式制約、及び、前記生産量の非負制約を満たしつつ、当該評価式を最小にする決定変数を、凸二次計画法を用いて計算し、計算により得られた決定変数を各時間区分の生産量として良い。
【００１５】
本発明に係る生産計画作成装置は、前記生産量計算部が、更に、前記評価式を、ｐ＝２として、各時間区分の生産量を意味する決定変数の分散とし、前記累積生産量不等式制約、前記最終累積生産量等式制約、及び、前記生産量の非負制約を満たしつつ、当該評価式を最小にする決定変数を、凸二次計画法を用いて計算し、計算により得られた決定変数を各時間区分の生産量として良い。
【００１６】
これによると、評価式を計算する解法として、ｐ＝２として、生産量の変動を、生産量の分散とすることにより、生産量の決定問題が凸二次計画問題となり、凸二次計画法の適用が可能となる。従って、生産量を決定する日数が多い場合であっても、時間区分の生産量を高速に計算することができる。
【００１７】
また、本発明に係る生産計画作成方法及び生産計画作成プログラムは、前記生産量計算ステップが、更に、前記評価式を、ｐ＝１として、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値の総和とし、前記累積生産量不等式制約、前記最終累積生産量等式制約、及び、前記生産量の非負制約を満たしつつ、当該評価式を最小にする決定変数を、線形計画法を用いて計算し、計算により得られた決定変数を各時間区分の生産量として良い。
【００１８】
本発明に係る生産計画作成装置は、前記生産量計算部が、更に、前記評価式を、ｐ＝１として、各時間区分の生産量を意味する決定変数と当該決定変数の平均との差の絶対値の総和とし、前記累積生産量不等式制約、前記最終累積生産量等式制約、及び、前記生産量の非負制約を満たしつつ、当該評価式を最小にする決定変数を、線形計画法を用いて計算し、計算により得られた決定変数を各時間区分の生産量として良い。
【００１９】
これによると、評価式を計算する解法として、ｐ＝１として、生産量の変動を、生産量と平均生産量の差の絶対値の総和とすることにより、生産量の決定問題に線形計画法の適用が可能となる。従って、生産量を決定する日数が多い場合であっても、時間区分の生産量を高速に計算することができる。
【００２０】
尚、本発明に係る生産計画作成プログラムは、リムーバブル型記録媒体やハードディスクなどの固定型記録媒体に記録して配布可能である他、有線又は無線の電気通信手段によってインターネットなどの通信ネットワークを介して配布可能である。
【発明の効果】
【００２１】
本発明の生産計画作成方法及び生産計画作成プログラム、並びに生産計画作成装置は、多少の工程能力の超過を許容しつつ、オーダーの納期を遵守した生産計画を作成することができる。
【図面の簡単な説明】
【００２２】
【図１】本実施形態に係る生産計画作成装置のブロック図である。
【図２】本実施形態に係る生産計画作成方法の処理の手順について説明したフローチャートである。
【図３】本実施例に係る生産計画の対象となるオーダーの生産工程を示す図である。
【図４】本実施例に係る生産計画の対象となるオーダーの納期と負荷を示す図である。
【図５】本実施例に係る生産計画の負荷山積み結果を示す図である。
【図６】本実施例に係る生産計画の負荷累積計算結果を示す図である。
【図７】本実施例１に係る生産計画において、計算した生産量の累積量を示すイメージ図である。
【図８】本実施例１に係る生産計画において、生産量の計算結果を示すイメージ図である。
【図９】本実施例１に係る生産計画において、負荷の再割り当てをした結果を示すイメージ図である。
【図１０】本実施例１に係る生産計画において、再割り当てした負荷と工程能力とを比較した結果を示すイメージ図である。
【図１１】本実施例２に係る生産計画において、計算した生産量の累積量を示すイメージ図である。
【図１２】本実施例２に係る生産計画において、生産量の計算結果を示すイメージ図である。
【図１３】本実施例２に係る生産計画において、負荷の再割り当てをした結果を示すイメージ図である。
【図１４】本実施例２に係る生産計画において、再割り当てした負荷と工程能力とを比較した結果を示すイメージ図である。
【発明を実施するための形態】
【００２３】
以下、図面を参照しつつ、本発明に係る生産計画作成方法及び生産計画作成プログラム、並びに生産計画作成装置を実施するための形態について、具体的な一例に即して説明する。
【００２４】
尚、以下に説明するものは、例示したものにすぎず、本発明に係る生産計画作成方法及び生産計画作成プログラム、並びに生産計画作成装置の適用限界を示すものではない。すなわち、本発明に係る生産計画作成方法及び生産計画作成プログラム、並びに生産計画作成装置は、下記の実施形態に限定されるものではなく、特許請求の範囲に記載した限りにおいてさまざまな変更が可能なものである。
【００２５】
また、以下で説明する本実施形態に係る生産計画作成方法及び生産計画作成プログラム、並びに生産計画作成装置で用いる時間区分（即ち、生産計画の開始から終了までの間において所定幅で区切られる時間軸上の連続した複数の区分）としては、日単位であっても良いし、月、週、勤、時間などの単位を用いることができる。
【００２６】
まず、本実施形態に係る生産計画作成装置について、図１に基づいて説明する。図１は、本実施形態に係る生産計画作成装置のブロック図である。生産計画作成装置１は、演算部と、記憶部と、入力部と、出力部と、から構成されて、計算機上に実装される。ここで、図１に示されている生産計画作成装置１の各部（演算部、記憶部、入力部、及び、出力部）は、例えば汎用のパーソナルコンピュータ等の計算機によって構成されている。かかる計算機には、ＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスク、ＣＤ−ＲＯＭの駆動装置などのハードウェアが収納されており、ハードディスクには、プログラム（このプログラムは、リムーバブルな記憶媒体に記録しておくことにより、様々なコンピュータにインストールすることが可能である）を含む各種のソフトウェアが記録されている。そして、これらのハードウェアおよびソフトウェアが組み合わされることによって、上述の各部が構築されている。
【００２７】
図１に示すように、生産計画作成装置１は、オーダー情報記憶部１１と、負荷山積み部１２と、負荷累積計算部１３と、生産量決定部１４と、負荷山崩し部１５と、オーダー情報２１と、山積み結果２２と、負荷累積２３と、山崩し用生産量情報２４と、山崩し結果２５と、から構成される。
【００２８】
オーダー情報記憶部１１は、生産対象となる複数のオーダーの納期と負荷が外部から登録されて、オーダー情報２１として記憶するためのものである。各オーダーの負荷は、重量、数量、個数や時間などを用いることができる。ここで、オーダー情報記憶部１１において、外部から登録される情報は、生産計画作成開始時に、図示しない入力部（キーボード等）から入力されたり、リムーバブルな記憶媒体に記録されて与えられたり、有線又は無線の電気通信手段によってインターネットなどの通信ネットワークを介して与えられたりして、記憶装置や補助記憶装置等に記憶される。そして、オーダー情報２１は、負荷山積み部１２に入力される。
【００２９】
負荷山積み部１２は、オーダー情報２１として記憶された各オーダーの負荷を各オーダーの納期に対応する時間区分に山積みし、山積み結果２２として出力するためのものである。そして、山積み結果２２は、負荷累積計算部１３に入力される。
【００３０】
負荷累積計算部１３は、山積み結果２２に基づいて、時間軸の未来方向の負荷の累積を計算し、負荷累積２３として出力するためのものである。具体的には、負荷累積計算部１３は、山積み結果２２で、負荷を山積みした時間区分を負荷累積計算時間区分として、各負荷累積計算時間区分に対して、その時間区分よりも時間軸の過去方向の時間区分において山積みした負荷を累積する、即ち、生産計画の開始から当該負荷累積計算時間区分まで山積みした負荷を累積する。そして、その結果を、負荷累積２３として出力する。尚、累積であるため、時間軸の未来方向、即ち、日の進みに対して、累積値は単調増加となる。そして、負荷累積２３は、生産量決定部１４に入力される。
【００３１】
生産量決定部１４は、各時間区分の生産量を決定し、山崩し用生産量情報２４として出力するためのものである。具体的には、時間軸方向を基準として最も遅い負荷累積計算時間区分を除く各負荷累積計算時間区分に関して、生産計画の開始から当該負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量以上となる累積生産量不等式制約、生産計画の開始から時間軸方向を基準として最も遅い負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量と等しくなる最終累積生産量等式制約、各時間区分での生産量は非負であるという生産量の非負制約を満たしつつ、各時間区分の生産量の変動を示す評価式が最小となる各時間区分の生産量を計算し、山崩し用生産量情報２４として出力する。なお、評価式を計算する解法として、ｐ＝１の場合は、線形計画法を用いて計算し、ｐ＝２の場合は、凸二次計画法を用いて計算する。また、ｐ≧３の場合は、ラグランジュの未定乗数法やペナルティ関数法など汎用的な解法を用いて計算する（ｐ≧３の場合に限らず、ｐ＝１，２でも計算可能）。
【００３２】
累積生産量不等式制約は、次式（式（１）〜（４））で表わされる。
【００３３】
【数１】
0005470586.tif 000002
【００３４】
また、最終累積生産量不等式制約は、次式（式（５））で表わされる。
【００３５】
【数２】
0005470586.tif 000003
【００３６】
また、生産量の非負制約は、次式（式（６））で表わされる。
【００３７】
【数３】
0005470586.tif 000004
【００３８】
各時間区分の生産量の変動は、決定変数をｘｉ（ｉ番目の時間区分の生産量）として、例えば、下記の２つの式（式（７）または式（８））で表わされる。
【００３９】
【数４】
0005470586.tif 000005
【００４０】
【数５】
0005470586.tif 000006
【００４１】
負荷山崩し部１５は、山崩し用生産量情報２４に基づいて、計算された各時間区分の生産量を工程能力とみなして、負荷を再割り当てするためのものである。そして、負荷を再割り当てした負荷山崩しの結果を、山崩し結果２５として記憶する。尚、山崩し結果２５は、生産計画作成装置１における計算結果として、図示しない結果出力部を介して、図示しないディスプレイ、プリンタ等の出力部に出力しても良い。
【００４２】
次に、本実施形態に係る生産計画作成方法の処理の手順について、図２に基づいて、説明する。図２は、本実施形態に係る生産計画作成方法の処理の手順について説明したフローチャートである。
尚、以下で説明する本実施形態に係る生産計画作成方法の処理は、計算機において処理される。同様に、生産計画作成プログラムとしても、計算機においてＣＰＵにより読み出して実行することができる。また、この生産計画作成プログラムは、リムーバブルな記憶媒体に記録しておくことにより、様々な計算機の記憶装置にインストールすることが可能である。
【００４３】
図２に示すように、計算機において、オーダー情報として、生産対象となる複数のオーダーの納期と負荷を、事前に、入力部から入力されたり、リムーバブルな記憶媒体に記録されて与えられたり、有線又は無線の電気通信手段によってインターネットなどの通信ネットワークを介して与えられたりして、記憶部に登録する（ＳＴＥＰ１：オーダー情報記憶ステップ）。尚、本ステップの詳細については、上述した生産計画作成装置１のオーダー情報記憶部１１及びオーダー情報２１の記載内容と同様であり、その説明を省略する。
【００４４】
そして、ＳＴＥＰ１で登録された各オーダーの負荷を各オーダーの納期に対応する時間区分に山積みし、山積み結果として出力する（ＳＴＥＰ２：負荷山積ステップ）。尚、本ステップの詳細については、上述した生産計画作成装置１の負荷山積み部１２及び山積み結果２２の記載内容と同様であり、その説明を省略する。
【００４５】
次に、ＳＴＥＰ２で出力された山積み結果に基づいて、時間軸の未来方向の負荷の累積を計算し、負荷累積として出力する（ＳＴＥＰ３：負荷累積計算ステップ）。具体的には、負荷山積み結果で、負荷を山積みした時間区分を負荷累積計算時間区分として、各負荷累積計算時間区分に対して、その時間区分よりも時間軸の過去方向の時間区分において山積みした負荷を累積する、即ち、生産計画の開始から当該負荷累積計算時間区分まで山積みした負荷を累積する。そして、その結果を、負荷累積として出力する。尚、本ステップの詳細については、上述した生産計画作成装置１の負荷累積計算部１３及び負荷累積２３の記載内容と同様であり、その説明を省略する。
【００４６】
そして、ＳＴＥＰ３で計算された負荷累積に基づいて、各時間区分の生産量を決定し、山崩し用生産量情報として出力する（ＳＴＥＰ４：生産量決定ステップ）。具体的には、時間軸方向を基準として最も遅い負荷累積計算時間区分を除く各負荷累積計算時間区分に関して、生産計画の開始から当該負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量以上となる累積生産量不等式制約、生産計画の開始から時間軸方向を基準として最も遅い負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量と等しくなる最終累積生産量等式制約、各時間区分での生産量は非負であるという生産量の非負制約を満たしつつ、各時間区分の生産量の変動を示す評価式が最小となる各時間区分の生産量を計算し、山崩し用生産量情報として出力する。尚、本ステップは、上述した生産計画作成装置１の生産量決定部１４の記載内容と同じであり、その説明を省略する。
【００４７】
ＳＴＥＰ５では、ＳＴＥＰ４で計算された山崩し用生産量情報に基づいて、計算された各時間区分の生産量を工程能力とみなして、負荷を再割り当てし、負荷を再割り当てした負荷山崩しの結果を山崩し結果として記憶して、生産計画作成方法の処理を終了する（ＳＴＥＰ６：負荷山崩しステップ）。尚、本ステップは、上述した生産計画作成装置１の負荷山崩し部１５の記載内容と同じであり、その説明を省略する。
【００４８】
このように、本実施形態の生産計画作成装置及び生産計画作成方法、並びに生産計画作成プログラムによれば、オーダー毎の負荷は、まず納期に間に合う限界の時間区分（負荷累積計算時間区分）に山積みされる。次に、この結果をもとに、負荷累積計算時間区分に対して、山積みされた負荷の累積が計算される。そして、負荷の累積結果をもとに、各時間区分の生産量の変動が最小になるように、各時間区分の生産量を計算する。ここで、決定した各時間区分の生産量は、（累積生産量不等式制約より）オーダーの納期を遵守するための必要最低限の工程能力以上であり、また各時間区分の生産のペースが平準化された生産量となっている。次に、計算した生産量を各時間区分の工程能力と見なして負荷を再割り当てる（山崩しする）。これにより、山崩し操作の前に、納期を満たすために必要な最低限の工程能力が算定できるため、従来方法のように山崩し操作を繰り返し実行する必要がなく、高速に負荷の平準化が可能となる。さらに、納期を厳守するために最低限必要な生産能力を見積ることも可能となる。従って、多少の工程能力の超過を許容しつつ、オーダーの納期を遵守した生産計画を作成することができる。
【００４９】
以上、本発明の好適な実施の形態について説明したが、本発明は、前記実施の形態に限定されるものではなく、特許請求の範囲に記載した限りにおいてさまざまな変更が可能なものである。
【実施例】
【００５０】
次に、本実施形態の生産計画作成装置及び生産計画作成方法、並びに生産計画作成プログラムの具体例の説明のために、２つの実施例について、以下で説明する。
【００５１】
本実施例に係る生産計画で対象とするオーダーの生産工程は、図３に示すように、１台の加工機械と出荷バッファの工程を持ち、オーダー単位に原料を投入して製品を製造する。そして、図４に示すように、本実施例では、４月３日、４月６日、４月１０日、４月１３日の４種類の納期を持つオーダー１〜１２の１２個のオーダーに対して、４月１日以降の生産計画を行うものとする。オーダー１〜４は、納期が４月３日であり、オーダー５，６は、納期が４月６日であり、オーダー７〜１１は、納期が４月１０日であり、オーダー１２は、納期が４月１３日である。また、各オーダーの重量（負荷）は、それぞれ、１トンとする。また、本実施例では、時間区分を１日として、生産計画の開始時間区分（本実施例では時間区分が１日であり、開始日となる。）を４月１日、生産計画の終了時間区分（本実施例では時間区分が１日であり、終了日となる。）を４月１３日とする。また、本実施例では、納期は出荷納期とみなし、納期前に製造完了した場合は、納期日に出荷するものとする。
【００５２】
［実施例１］
まず、実施例１について、図１，２に基づいて説明する。本実施例では、オーダー情報記憶部１１により、図４に示すオーダー１からオーダー１２まで１２個のオーダー情報２１が登録される（ＳＴＥＰ１）。図４に示すように、オーダー１〜４の納期は４月３日、オーダー５，６の納期は４月６日、オーダー７〜１１の納期は４月１０日、オーダー１２の納期は４月１３日である。また、各オーダーの負荷（本実施例では、重量）は、それぞれ、１トンとする（ＳＴＥＰ１）。
【００５３】
そして、負荷山積み部１２は、オーダー情報２１として登録された各オーダーの負荷を各オーダーの納期に対応する時間区分に山積みし、山積み結果２２として出力する（ＳＴＥＰ２）。本実施例では、時間区分が１日であるため、負荷山積み部１２により、オーダー１〜１２の負荷が、それぞれの納期日に山積みされ、山積み結果２２は、図５に示すように、４月３日：４トン、４月６日：２トン、４月１０日：５トン、４月１３日：１トンとなる。
【００５４】
次に、負荷累積計算部１３は、山積み結果２２に基づいて、時間軸の未来方向の負荷の累積を計算し、負荷累積２３として出力する（ＳＴＥＰ３）。本実施例では、納期日が累積計算日（負荷累積計算時間区分）となり、図６に示すように、４月３日：４トン、４月６日：２トン＋４トン＝６トン、４月１０日：５トン＋２トン＋４トン＝１１トン、４月１３日：１トン＋５トン＋２トン＋４トン＝１２トンとなる。
【００５５】
そして、生産量決定部１４が、負荷累積２３に基づいて、時間軸方向を基準として最も遅い負荷累積計算時間区分を除く各負荷累積計算時間区分に関して、生産計画の開始から当該負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量以上となる累積生産量不等式制約、生産計画の開始から時間軸方向を基準として最も遅い負荷累積計算時間区分まで累積した累積生産量が、前記負荷累積計算結果で得られた当該負荷累積計算時間区分の負荷累積量と等しくなる最終累積生産量等式制約、各時間区分での生産量は非負であるという生産量の非負制約を満たしつつ、各時間区分の生産量の変動を示す評価式が最小となる各時間区分の生産量を計算し、山崩し用生産量情報として出力する（ＳＴＥＰ４）。本実施例では、上述の数４に示す式（７）において、ｐ＝２として、各時間区分の生産量を意味する決定変数ｘｉの分散を評価式として、凸二次計画法を用いて計算した。
【００５６】
本実施例における評価式は、次式（式（９））のようになる。式（９）は、各時間区分（４月１日〜１３日）の生産量の分散を意味する式である。
【００５７】
【数６】
0005470586.tif 000007
【００５８】
また、累積生産量不等式制約は、次式（式（１０）〜（１２））のようになる。式（１０）は、１番目に早い累積計算日（４月３日）までの累積生産量が、同じく１番目に早い累積計算日（４月３日）までの累積負荷量（４トン）以上であるという制約を表わしている。また、式（１１）は、２番目に早い累積計算日（４月６日）までの累積生産量が、同じく２番目に早い累積計算日（４月６日）までの累積負荷量（６トン）以上であるという制約を表わしている。また、式（１２）は、３番目に早い累積計算日（４月１０日）までの累積生産量が、同じく３番目に早い累積計算日（４月１０日）までの累積負荷量（１１トン）以上であるという制約を表わしている。
【００５９】
【数７】
0005470586.tif 000008
【００６０】
また、最終累積生産量等式制約は、次式の式（１３）のようになる。さらに、次式の式（１４）は、各時間区分の生産量は非負であるという生産量の非負制約を表わしている。
【００６１】
【数８】
0005470586.tif 000009
【００６２】
本実施例において、計算された各時間区間の生産量は表１のようになる。
【００６３】
【表１】
0005470586.tif 000010
【００６４】
また、図７に計算した時間区分の生産量の累積量のイメージ図を示す。図７に示すように、下記の３つの期間ごとに、生産のペースが平準化されている。尚、図７において、太線の直線は、負荷の累積線を示している。
・４月１日から４月３日において、４／３［トン／日］の生産ペースに平準化されている。
・４月４日から４月１０日において、１［トン／日］の生産ペースに平準化されている。
・４月１１日から４月１３日において、１／３［トン／日］の生産ペースに平準化されている。
【００６５】
そして、負荷山崩し部１５は、山崩し用生産量情報２４に基づいて、計算された各時間区分の生産量を工程能力とみなして、負荷を再割り当てし、負荷を再割り当てした負荷山崩しの結果を、山崩し結果２５として出力する（ステップＳ５）。図８に、表１に示す各時間区分の生産量の結果をイメージ図にしたものを示す。そして、図８に示された生産量を工程の生産能力とみなすことにより、負荷の再割り当てをし、負荷を再割り当てした山崩し結果２５を図９に示す。図９から、例えば、以下のことが分かる。
・４月１日から４月３日において、１．３３３［トン／日］（４／３［トン／日］）を生産能力として、オーダー１からオーダー４の負荷が均等に割り付けられている。ここで、オーダー１からオーダー４の納期は４月３日であるため、納期遅れは発生していない。
・４月４日から４月１０日において、１［トン／日］を生産能力として、オーダー５からオーダー１１の負荷が均等に割り付けられている。ここで、オーダー５とオーダー６の納期は４月６日、オーダー７からオーダー１１の納期は４月１０日であるため、納期遅れは発生していない。
・４月１１日から４月１３日において、０．３３３［トン／日］（１／３［トン／日］）を生産能力として、オーダー１２の負荷が均等に割り付けられている。ここで、オーダー１２の納期は４月１３日であるため、納期遅れは発生していない。
【００６６】
このように、本実施例から、納期を遵守した上で、負荷を極力平準化する山崩しを負荷の選択と移動を繰り返すことなく高速かつ容易に実行できることが分かる。また、図１０に示すように、納期を遵守するために必要な最低限の能力向上率と期間を簡単に確認することができる。この実施例では、標準の能力を１トン／日と設定しており、４月１日から４月３日にかけて４／３倍の能力向上が必要であることが分かる。
【００６７】
［実施例２］
次に、実施例２について説明する。実施例２では、実施例１の評価式を、生産量と平均生産量の差の絶対値の総和にした例について説明する。ここで、実施例２では、オーダー情報や工程能力など、他の条件は実施例１と同じである。また、処理の流れも実施例１と同じであるため、実施例１と異なる点のみを以下に説明する。
【００６８】
ＳＴＥＰ１〜３までは、実施例１と同じである。
【００６９】
ＳＴＥＰ４において、本実施例では、上述の数４に示す式（７）において、ｐ＝１として、各時間区分の生産量を意味する決定変数ｘｉと当該決定変数ｘｉの平均との差の絶対値の総和を評価式として、線形計画法を用いて計算した。
【００７０】
評価式が実施例１と異なり、本実施例における評価式は、次式（式（１５））のようになる。定式化した問題（評価式は、式（１５）、評価式以外の式は実施例１と同じ）は、線形計画問題となるため、線形計画法を用いて解き、各時間区分の生産量を計算する。
【００７１】
【数９】
0005470586.tif 000011
【００７２】
本実施例において、計算された各時間区間の生産量は表２のようになる。
【００７３】
【表２】
0005470586.tif 000012
【００７４】
また、図１１に計算した時間区分の生産量の累積量のイメージ図を示す。図１１に示すように、下記の３つの期間ごとに、生産のペースが平準化されている。尚、図１１において、太線の直線は、負荷の累積線を示している。
・４月１日は２［トン／日］で生産する。
・４月２日から４月４日において、１［トン／日］の生産ペースに平準化されている。
・４月５日から４月６日において、１．０５［トン／日］の生産ペースに平準化されている。
・４月７日から４月１０日において、０．９７４［トン／日］の生産ペースに平準化されている。
・４月１１日から４月１３日において、０．３３３［トン／日］の生産ペースに平準化されている。
【００７５】
図１２に、表２に示す各時間区分の生産量の結果をイメージ図にしたものを示す。そして、ＳＴＥＰ５において、図１２に示された生産量を工程の生産能力とみなすことにより、負荷の再割り当てをし、負荷を再割り当てした山崩し結果２５を図１３に示す。図１３から、例えば、以下のことが分かる。
・４月１日は２［トン／日］を生産能力として、オーダー１からオーダー２の負荷が割り付けられている。ここで、オーダー１とオーダー２の納期は４月３日であるため、納期遅れは発生していない。
・４月２日から４月４日におけて、１［トン／日］を生産能力として、オーダー３からオーダー５の負荷が均等に割り付けられている。ここで、オーダー３とオーダー４の納期は４月３日、オーダー５の納期は４月６日であるため、納期遅れは発生していない。
・４月５日から４月６日におけて、１．０５［トン／日］を生産能力として、オーダー６からオーダー８の負荷が均等に割り付けられている。ここで、オーダー６の納期は４月６日であり、オーダー７の納期は４月１０日であるため、納期遅れは発生していない。
・４月７日から４月１０日において、０．９７４［トン／日］を生産能力として、オーダー８からオーダー１１の負荷が均等に割り付けられている。ここで、オーダー８からオーダー１１の納期は４月１０日であるため、納期遅れは発生していない。
・４月１１日から４月１３日におけて、０．３３３［トン／日］を生産能力として、オーダー１２の負荷が均等に割り付けられている。ここで、オーダー１２の納期は４月１３日であるため、納期遅れは発生していない。
【００７６】
このように、本実施例から、納期を遵守した上で、負荷を極力平準化する山崩しを負荷の選択と移動を繰り返すことなく高速かつ容易に実行できることが分かる。また、図１４に示すように、納期を遵守するために必要な最低限の能力向上率と期間を簡単に確認することができる。この実施例では、標準の能力を１トン／日と設定しており、４月１日は２倍の能力向上が必要であり、４月５日と６日は、１．０５倍の能力向上が必要であることが分かる。
【００７７】
従って、本実施形態の生産計画作成装置及び生産計画作成方法、並びに生産計画作成プログラムで、多少の工程能力の超過を許容しつつ、オーダーの納期を遵守した生産計画を作成することができていることが分かる。
【符号の説明】
【００７８】
１    生産計画作成装置
１１  オーダー情報記憶部
１２  負荷山積み部
１３  負荷累積計算部
１４  生産量決定部
１５  負荷山崩し部
２１  オーダー情報
２２  山積み結果
２３  負荷累積
２４  山崩し用生産量情報
２５  山崩し結果
ＳＴＥＰ１  オーダー情報記憶ステップ
ＳＴＥＰ２  負荷山積みステップ
ＳＴＥＰ３  負荷累積計算ステップ
ＳＴＥＰ４  生産量決定ステップ
ＳＴＥＰ５  負荷山崩しステップ
【図２】
0005470586.tif 000013
【図１】
0005470586.tif 000014
【図３】
0005470586.tif 000015
【図４】
0005470586.tif 000016
【図５】
0005470586.tif 000017
【図６】
0005470586.tif 000018
【図７】
0005470586.tif 000019
【図８】
0005470586.tif 000020
【図９】
0005470586.tif 000021
【図１０】
0005470586.tif 000022
【図１１】
0005470586.tif 000023
【図１２】
0005470586.tif 000024
【図１３】
0005470586.tif 000025
【図１４】
0005470586.tif 000026