(57)【要約】【課題】生産計画の運用範囲に柔軟性を持たせる生産計画装置等を提供する。【解決手段】ＣＰＵ１７を有する生産計画装置１であって、ＣＰＵ１７は、製品の部品を識別する品目及び前記部品を製造する期を含む計画データと、前記部品を製造するラインの生産能力を含むマスタデータとを取得する。更に、ＣＰＵ１７は、前記部品に関わる前記品目、前記ライン及び前記期を要素とする三次元要素を定義する。ＣＰＵ１７は、前記部品又は前記ラインに固有の制約条件を所定操作に応じて選択し、選択された前記固有の制約条件と、予め定められた共通の制約条件とを含む、前記三次元要素毎に、当該品目の最適な生産量を割り当てる整数計画法の数理モデルを生成する。更に、ＣＰＵ１７は、前記数理モデルを実行することで、前記固有の制約条件及び前記共通の制約条件を満たした前記三次元要素毎に、当該品目の最適な生産量を割り当てる各処理を実行する。【選択図】図１
2013122733.tif 000002
【特許請求の範囲】
【請求項１】
製品の部品を識別する品目及び前記部品を製造する期を含む計画データと、前記部品を製造するラインの生産能力を含むマスタデータとを取得し、
前記部品に関わる前記品目、前記ライン及び前記期を要素とする三次元要素を定義し、
前記部品又は前記ラインに固有の制約条件を所定操作に応じて選択し、選択された前記固有の制約条件と、予め定められた共通の制約条件とを含む、前記三次元要素毎に、当該品目の最適な生産量を割り当てる整数計画法の数理モデルを生成し、
前記数理モデルを実行することで、前記固有の制約条件及び前記共通の制約条件を満たした前記三次元要素毎に、当該品目の最適な生産量を割り当てる
各処理をコンピュータに実行させることを特徴とする生産計画プログラム。
【請求項２】
前記品目毎に、前記最適な生産量を優先的に割り当てる優先度を付与し、
前記優先度が高い品目から前記三次元要素毎に前記最適な生産量を順次割り当てる
各処理を前記コンピュータに実行させることを特徴とする請求項１に記載の生産計画プログラム。
【請求項３】
前記優先度が高い品目の三次元要素から前記最適な生産量を割り当てた後、次位の品目の三次元要素に、当該品目の最適な生産量を割り当てる際、前記割当済みの生産量を前記制約条件に反映した前記数理モデルを生成する
処理を前記コンピュータに実行させることを特徴とする請求項２に記載の生産計画プログラム。
【請求項４】
前記共通の制約条件は、
前記部品の生産量を算出する、前記部品の当期の在庫数及び前記当期の直前である前期の在庫数の推移を示す在庫制約条件と、
前記部品の当期の在庫数が正である納期制約条件と、
前記部品の全期間の生産数が需要数以上である需要制約条件と、
前記部品を製造する前記ラインの生産負荷が前記ラインの生産能力以下である能力制約条件と
を含むことを特徴とする請求項１〜３の何れか一つに記載の生産計画プログラム。
【請求項５】
前記三次元要素を定義する際、前記三次元要素毎に、当該部品の生産の有無を付す
処理を前記コンピュータに実行させることを特徴とする請求項１〜４の何れか一つに記載の生産計画プログラム。
【請求項６】
プロセッサを有する生産計画装置であって、
前記プロセッサは、
製品の部品を識別する品目及び前記部品を製造する期を含む計画データと、前記部品を製造するラインの生産能力を含むマスタデータとを取得し、
前記部品に関わる前記品目、前記ライン及び前記期を要素とする三次元要素を定義し、
前記部品又は前記ラインに固有の制約条件を所定操作に応じて選択し、選択された前記固有の制約条件と、予め定められた共通の制約条件とを含む、前記三次元要素毎に、当該品目の最適な生産量を割り当てる整数計画法の数理モデルを生成し、
前記数理モデルを実行することで、前記固有の制約条件及び前記共通の制約条件を満たした前記三次元要素毎に、当該品目の最適な生産量を割り当てる
各処理を実行することを特徴とする生産計画装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、生産計画プログラム及び生産計画装置に関する。
【背景技術】
【０００２】
例えば、多種類の製品を複数の工程で製造する製造工場では、製品の生産計画を立案する。生産計画では、限られた資源、例えば、製造ライン（以下、単にラインと称する）、人員や材料等を用いて製品内の各部品を計画時間内に効率良く生産しようとする際に、必要な資源をいつ、どの部品を、どのラインに割り当てるかが問題となる。
【０００３】
そこで、製造工場の工程管理の担当者が立案する生産計画では、主に「負荷山積み・山崩し法」が用いられる。この方法は、製品の完成予定日から製造リードタイムを逆算して製造の開始日を仮決めする。そして、仮決めした日毎に製造工程の作業時間を積上げて、その作業時間と１日分の製造工程の生産能力とを比較する。そして、生産能力を超過する分は、その製造開始日を前倒しする。そして、この作業を全日程、例えば、通常は１ヶ月間、全製造工程、全製品に適用して負荷を平準化する。その結果、最適な生産結果が立案できる。
【０００４】
しかしながら、「負荷山積み・山崩し法」では、生産規模が大きくなると、製造工程で競合する部品も多くなるため、その調整に多大な時間を要する。また、生産規模が大きくなると、生産負荷も変動しやすくなり、余分な工場在庫数も多くなる。そこで、「負荷山積み・山崩し法」を汎用プログラミング言語で実現することも考えられるが、負荷山積み計算と山崩しの負荷分散とを繰り返し行う必要がある。その結果、プログラムのステップ数は、数千ステップと大きくなり、その開発に多大な時間を要する。しかも、製造工程の構成が変更する都度、プログラムの修正を行うケースも多くなる。
【０００５】
また、理論面から見ると、入力するオーダのラインへの割当はｎ個のオーダをｍ本のラインに割当てるため、その方法は、（ｎ！）m通りある。これは、全体の組み合わせ数がライン本数に対して指数関数的に増加するＮＰ（NP:Non-deterministic  Polynomial）完全問題である。従って、割当解を求めるためには膨大な計算量を要する。そこで、計算時間を最小限に抑えるように工夫した最適化解法が研究されている。
【０００６】
最適化解法としては、目的関数と制約条件とで構成する数式でモデル化して最適解を求める数理計画法がある。しかも、数理計画法の中で、生産計画の離散的な最適解を求める手法としては整数計画法の数理モデルが知られている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００５−９２７２６号公報
【非特許文献】
【０００８】
【非特許文献１】村松健児著、「ロットのサイズと順序の同時最適化」、日本経営工学会、Vol.  52,  No.  5，  2001年12月
【非特許文献２】田村隆善及び人見勝人著、「段取替え回数最小化を評価基準とした多品種・多期間のロットスケジューリングに関する研究」、日本機械学会、1978年
【非特許文献３】渡辺展男、安范俊及び平木秀作著、「引っ張り型生産指示方式の数理計画的アプローチ」、日本経営工学会、Vol.44,  No.6,  pp.478-486  1994年2月
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、生産計画の最適解を求める整数計画法の数理モデルは、制約条件が固定条件であるため、適用できる製造工程の生産計画も限定的となる。その結果、数理モデルの適用範囲が限定的となって、生産計画の運用範囲が限定されてしまう。
【００１０】
一つの側面では、生産計画の運用範囲に柔軟性を持たせたることができる生産計画プログラム及び生産計画装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
開示の態様は、製品の部品を識別する品目及び前記部品を製造する期を含む計画データと、前記部品を製造するラインの生産能力を含むマスタデータとを取得し、前記部品に関わる前記品目、前記ライン及び前記期を要素とする三次元要素を定義する。開示の態様は、前記部品又は前記ラインに固有の制約条件を所定操作に応じて選択し、選択された前記固有の制約条件と、予め定められた共通の制約条件とを含む、前記三次元要素毎に、当該品目の最適な生産量を割り当てる整数計画法の数理モデルを生成する。更に、開示の態様は、前記数理モデルを実行することで、前記固有の制約条件及び前記共通の制約条件を満たした前記三次元要素毎に、当該品目の最適な生産量を割り当てる各処理をコンピュータに実行させる。
【発明の効果】
【００１２】
開示の態様では、生産計画の運用範囲に柔軟性を持たせることができる。
【図面の簡単な説明】
【００１３】
【図１】図１は、本実施例の生産計画装置の構成の一例を示す説明図である。
【図２】図２は、製品の受注から出荷までの流れ及び、本実施例の生産計画装置の位置付けを示す説明図である。
【図３】図３は、製品の部品構成の一例を示す説明図である。
【図４】図４は、製造工程の流れの一例を示す説明図である。
【図５】図５は、計画データベース内の計画オーダの一例を示す説明図である。
【図６】図６は、搭載時間テーブル内のデータ一例を示す説明図である。
【図７】図７は、個片数テーブル内のデータ一例を示す説明図である。
【図８】図８は、数理モデルの設定画面の一例を示す説明図である。
【図９】図９は、生産計画処理に関わるＣＰＵの処理動作の一例を示すフローチャートである。
【図１０】図１０は、モデルファイル生成処理に関わるＣＰＵの処理動作の一例を示すフローチャートである。
【図１１】図１１は、高優先度計画オーダの一例を示す説明図である。
【図１２】図１２は、ライン−品目別生産量テーブル内のデータ一例を示す説明図である。
【図１３】図１３は、ライン−品目別生産時間テーブル内のデータ一例を示す説明図である。
【図１４】図１４は、前回割当済みテーブルの一例を示す説明図である。
【図１５】図１５は、低優先度計画オーダの一例を示す説明図である。
【図１６】図１６は、ライン−品目別生産量テーブル内のデータ一例を示す説明図である。
【図１７】図１７は、ライン−品目別生産時間テーブル内のデータ一例を示す説明図である。
【図１８】図１８は、設備稼働率最大化のガントチャートの一例を示す説明図である。
【発明を実施するための形態】
【００１４】
以下、図面に基づいて、本願の開示する生産計画プログラム及び生産計画装置の実施例を詳細に説明する。尚、本実施例により、開示技術が限定されるものではない。
【実施例】
【００１５】
図１は、本実施例の生産計画装置の構成の一例を示す説明図である。図１に示す生産計画装置１は、多種類の製品を複数の製造工程で製造する製造工場において、各製品をどの製造工程でいつ製造するかを指示する生産計画を立案する。尚、生産計画装置１は、例えば、パーソナルコンピュータ（以下、単にパソコンと称する）で構成する。
【００１６】
図１に示す生産計画装置１は、キーボード１１と、ディスプレイ１２と、通信インタフェース１３と、外部媒体駆動装置１４と、ＨＤＤ（Hard  Disk  Drive）１５と、主メモリ１６と、ＣＰＵ（Central  Processing  Unit）１７と、システムバス１８とを有する。キーボード１１は、各種コマンド及びデータ等を入力する。ディスプレイ１２は、各種情報を画面表示する。通信インタフェース１３は、図示せぬ外部ネットワークと接続して、外部ネットワークとの間で通信する。外部媒体駆動装置１４は、例えば、ＣＤ−ＲＯＭ（Compact  Disk-Read  Only  Memory）やＵＳＢ（Universal  Serial  Bus）メモリ等の外部記憶媒体を駆動する。ＨＤＤ１５は、各種情報を格納するものである。主メモリ１６は、ＣＰＵ１７で実行するプログラムを展開する、例えば、ＲＡＭ（Random  Access  Memory）等のメモリ領域である。ＣＰＵ１７は、生産計画装置１全体を制御する。
【００１７】
外部媒体駆動装置１４は、例えば、ＣＤ−ＲＯＭに格納された生産計画プログラムを読み出し、読み出された生産計画プログラムを主メモリ１６に展開する。ＣＰＵ１７は、主メモリ１６に展開された生産計画プログラムに基づき、生産計画処理を実行するものである。
【００１８】
次に、本実施例の生産計画装置１が適用される全体の仕組みについて説明する。図２は、製品の受注から出荷までの流れ及び、本実施例の生産計画装置１の位置付けを示す説明図である。図２に示す仕組みでは、大きく分けて、サプライチェーンと、関連システムと、製造システムとに分類できる。サプライチェーンは、顧客１０１から営業１０２、生産１０３、購買１０４、製造１０５、出荷１０６と続く。営業１０２では、顧客１０１からの製品の受注及び受注見込みに基づき、仕込情報を生産管理システム２０１に入力する。
【００１９】
生産管理システム２０１では、営業１０２で入力された仕込情報に基づき、技術情報（ＢＯＭ：Bill  of  Material）２０２と、倉庫２０５内の在庫情報とから製品の生産に必要な部品の需要量及び発注時期をＭＲＰ(Material  Requirements  Planning）展開する。生産管理システム２０１では、部品の需要量及び発注時期に応じて、外部業者に発注する外作オーダ又は社内に発注する内作オーダを作成する。
【００２０】
購買受入システム２０３は、生産管理システム２０１からの外作オーダに基づき製品の購買を購買１０４に指示する。製造管理システム２０４は、生産管理システム２０１からの内作オーダに基づき、製品毎の完了納期を付与した計画オーダを作成し、計画オーダを、前述した生産計画装置１に入力する。
【００２１】
生産計画装置１は、計画オーダに応じて製品内の部品の品目、ライン及び期の三次元要素毎に最適な生産量を割り当てる。そして、生産計画装置１は、三次元要素毎の最適な生産量を製造工程２０６に指示する。尚、生産計画装置１は、部品を優先的に生産する優先度、ライン能力、その他の製造条件を考慮して、計画オーダから部品の品目、ライン及び期毎に最適な生産量を割り当てる。尚、品目は、製品の部品を識別する。ラインは、部品を製造する設備である。期は、生産計画期間を投入単位で細分化した時間幅である。
【００２２】
図３は、製品の部品構成の一例を示す説明図である。尚、製品の完成品は、例えば、携帯電話機を対象とする。図３に示す完成品３００は、ディスプレイを実装する可動部３００Ａ内部のプリント基板３０１と、キーを実装する固定部３００Ｂ内部のプリント基板３０２とを有する。可動部３００Ａのプリント基板３０１は、例えば、表面側にのみ、電子部品を実装するものである。尚、１枚の基板シートで４枚の個片のプリント基板３０１が得られるものとする。また、固定部３００Ｂのプリント基板３０２は、例えば、基板の両面（表面及び裏面）側に電子部品を実装するものである。尚、１枚の基板シートで４枚の個片のプリント基板３０２が得られるものとする。
【００２３】
図４は、製造工程の流れの一例を示す説明図である。図４に示す製造工程では、例えばＮ台のＳＭＴ（Surface  Mount  Technology）ライン４０１と、Ｍ台の総組ライン４０２と、Ｍ台の試験ライン４０３と、Ｍ台の梱包ライン４０４とを使用する。各ＳＭＴライン４０１は、部品倉庫４０５から搬送されたプリント基板及び電子部品を用いて、プリント基板上に所定の電子部品を実装して部品を生産するラインである。そして、ＳＭＴライン４０１で生産した部品は、中間倉庫４０６内に搬送される。
【００２４】
また、各総組ライン４０２は、中間倉庫４０６から搬送された部品を組み立て、その組み立てられた部品の完成品を生産するラインである。各試験ライン４０３は、完成品の適正試験を実行するラインである。各梱包ライン４０４は、完成品を梱包するラインである。そして、梱包ライン４０４で梱包された完成品は、出荷待ちの出荷倉庫４０７内に搬送される。
【００２５】
本実施例の生産計画装置１では、図４に示す製造工程の内、例えば、ＳＭＴライン４０１で部品を生産する際の生産計画を立案するものである。
【００２６】
生産計画装置１は、工場の稼働日カレンダと、ＳＭＴライン４０１毎のライン能力と、ラインによる部品毎の搭載時間と、ラインの段取時間と、部品の個片数等とをマスタデータとしてＨＤＤ１５に格納してある。ライン能力は、製造する部品に関係なく、単位期間、例えば、１日間で稼動できる最大の稼働時間である。段取時間は、新たな部品の切替、又は基板の裏表面の切替に要する作業時間である。尚、段取時間は、部品に応じて異なるものである。
【００２７】
また、搭載時間は、部品の組立に要する時間である。尚、搭載時間は、部品に応じて異なるものである。図６は、搭載時間テーブル内のデータ一例を示す説明図である。図６に示す搭載時間テーブル３０は、品目３１毎に、ライン３２別のプリント基板１枚当りの組立時間（秒単位）である搭載時間３３を管理する。ＣＰＵ１７は、搭載時間テーブル３０を参照し、例えば、“ライン１”を使用して“品目１”を組み立てる場合、プリント基板１枚当り“３５．５秒”を要することが認識できる。また、ＣＰＵ１７は、例えば、“ライン６”を使用した“品目１”の搭載時間３３が“９９９９９９”であるため、“品目１”に“ライン６”を使用できないことが認識できる。
【００２８】
また、個片数は、基板シート１枚から得られるプリント基板の個片数である。図７は、個片数テーブル内のデータ一例を示す説明図である。図７に示す個片数テーブル４０は、品目４１毎の基板シート１枚から得られるプリント基板の枚数、すなわち個片数４２を管理するものである。ＣＰＵ１７は、個片数テーブル４０を参照し、例えば、“品目１”のシート１枚当りの個片数４２が“４枚”と認識できる。
【００２９】
図５は、計画データベース内の計画オーダの一例を示す説明図である。図５に示す計画オーダは、製造管理システム２０４で生成された機種、指令、個片及び納期日毎の計画生産量を計画した投入計画である。計画オーダ２０は、部品の機種２１、指令２２及び個片数２３と、部品を製造する納期日２４と、納期日２４毎の計画生産量２５とを有する。尚、ＣＰＵ１７は、機種２１、指令２２及び個片数２３で、マスタデータ内の部品の品目を識別するものである。計画オーダは、機種２１、指令２２及び個片数２３毎に、納期日２４及び計画生産量２５を対応付けて管理するものである。尚、計画オーダは、例えば、外部ネットワークに接続された生産管理システム２０１内の図示せぬ計画データベースに格納されているものとする。
【００３０】
また、生産計画装置１は、生産計画プログラムの整数計画法の数理モデルを実行することで、計画オーダから品目、ライン及び期の三次元要素毎に割り当てる最適な生産量等に基づき、目的関数の最適解を得るものである。尚、数理モデルは、例えば、需要数、ライン能力時間、品目のライン別単位の搭載時間、個片数等を入力値とする。また、数理モデルは、例えば、ライン別、期別の品目生産数量等を出力値とする。また、数理モデルは、目的関数及び制約条件を含む。数理モデルの実行とは、制約条件の下で目的関数が最大又は最小となる出力値を算出することである。
【００３１】
生産計画装置１のＣＰＵ１７は、品目、ライン及び期の三次元要素を定義する。更に、ＣＰＵ１７は、共通の制約条件及び、製造工程固有の制約条件等を含む、整数計画法の数理モデルを生成する。共通の制約条件は、在庫制約条件と、納期制約条件と、能力制約条件と、需要制約条件と、投入制約条件等とを有する。
【００３２】
需要制約条件は、ある品目の期全体での合計生産量が生産必要量（需要量）の合計以上となることを保証する制約条件である。例えば、需要制約条件は、Σ生産数品目、ライン、期≧Σ需要数（生産必要量）品目、期で表現する。
【００３３】
能力制約条件は、ある品目に割り当てられたラインの生産負荷（各期の生産時間の合計）がライン能力（最大稼働時間）以下となることを保証する制約条件である。例えば、能力制約条件は、Σ生産時間品目、ライン、期≦設備能力ライン、期で表現する。
【００３４】
在庫制約条件は、期の前後で在庫の繰り越し及び前倒しが発生することを保証する制約条件である。例えば、Σ当期在庫数品目、ライン、期＝Σ前期の繰り越し在庫数品目、ライン、期＋Σ生産数品目、ライン、期―需要数（出荷数）品目、期で表現する。
【００３５】
納期制約条件は、当期在庫数が正であることで在庫切れによる納期遅れが発生しないことを保証する制約条件である。例えば、納期制約条件は、Σ当期在庫数品目、ライン、期≧０で表現する。
【００３６】
投入制約条件は、１本のラインで１期内に１種類の品目しか投入しないことを保証する制約条件である。例えば、投入制約条件は、Σ投入ライン品目、ライン、期≦１で表現する。
【００３７】
図８は、数理モデルの設定画面の一例を示す説明図である。図８に示す数理モデルの設定画面５０は、目的関数選択部５１と、固有制約条件選択部５２と、開始日選択部５３と、期間選択部５４と、時間幅選択部５５と、オーダ数選択部５６と、ライン数選択部５７と、設定部５８と、取消部５９とを有する。尚、目的関数選択部５１、固有制約条件選択部５２、開始日選択部５３、期間選択部５４、時間幅選択部５５、オーダ数選択部５６、ライン数選択部５７、設定部５８及び取消部５９は、例えば、キーボード１１やマウス等を使用して選択操作を実行するものである。
【００３８】
目的関数選択部５１は、予め準備した目的関数を選択する。目的関数は、例えば、段取時間の最小化（段取替え回数の最小化）、ライン稼働時間（ライン稼働率）の最大化及び仕掛在庫数の最小化等である。
【００３９】
固有制約条件選択部５２は、予め準備した固有の制約条件を選択する。固有の制約条件は、品目又はライン等の製造工程固有の条件、例えば、ラインのグループ化、品目の優先度及び多段工程等である。尚、固有の制約条件は、適宜設定変更可能である。
【００４０】
開始日選択部５３は、品目の生産を開始する年月日を選択する。期間選択部５４は、製造開始日から期間を選択する。尚、期間には、例えば、１ヶ月、２週間及び１週間がある。時間幅選択部５５は、期の時間幅を選択する。尚、時間幅には、例えば、４時間、８時間、１６時間及び２４時間等がある。
【００４１】
オーダ数選択部５６は、オーダ数を選択する。ライン数選択部５７は、ラインの本数を選択する。設定部５８は、設定画面５０上の選択内容を確定する。取消部５９は、設定画面５０上の選択内容を取り消す。
【００４２】
次に、本実施例の生産計画装置１の動作について説明する。図９は、生産計画処理に関わるＣＰＵ１７の処理動作の一例を示すフローチャートである。図９においてＣＰＵ１７は、計画オーダ及びマスタデータに基づき初期データを生成する（ステップＳ１１）。尚、ＣＰＵ１７は、外部ネットワークを通じて、図示せぬ計画データベースから計画オーダを取得すると共に、ＨＤＤ１５に格納されたマスタデータを取得する。ＣＰＵ１７は、計画オーダから、機種２１、指令２２及び個片数２３毎の納期日２４及び計画生産量２５を取得する。更に、ＣＰＵ１７は、マスタデータからライン能力、搭載時間及び個片数等を取得する。
【００４３】
ＣＰＵ１７は、設定画面５０上の選択内容を設定する（ステップＳ１２）。尚、利用者は、図８に示す数理モデルの設定画面５０上の設定操作に応じて、目的関数、固有の制約条件、開始日、期間、時間幅、オーダ数及びライン数を選択するものである。
【００４４】
ＣＰＵ１７は、設定画面５０上の設定操作に応じて、初期データの計画オーダ内の機種２１、指令２２及び個片数２３をマスタデータ内の品目に変換する（ステップＳ１３）。更に、ＣＰＵ１７は、固有の制約条件として品目の優先度が選択された場合、優先度品目の三次元要素が最適化可能なデータであるか否かを判定する（ステップＳ１４）。
【００４５】
ＣＰＵ１７は、優先度品目の三次元要素が最適化可能なデータである場合（ステップＳ１４肯定）、優先度品目の計画オーダ及びマスタデータに基づき、数理モデルの入力であるデータファイルを生成する（ステップＳ１５）。尚、ＣＰＵ１７は、未割当の優先度品目の内、優先度が上位の高優先度品目の計画オーダを抽出する。例えば、ＣＰＵ１７は、図１１に示すように、“品目１”〜“品目６”の内、“品目２”、“品目３”、“品目５”及び“品目６”の納期日２４毎の計画生産量２５を含む計画オーダを抽出する。
【００４６】
ＣＰＵ１７は、共通の制約条件に基づく数理モデルのモデルファイルを生成すべく、図１０に示すモデルファイル生成処理を実行する（ステップＳ１６）。ＣＰＵ１７は、データファイル及びモデルファイルに基づく、整数計画法の数理モデルを実行する（ステップＳ１７）。尚、数理モデルの実行は、目的関数が段取時間の最小化であれば、所与の制約条件の下で段取時間が最小となるライン別期別の品目生産数量を算出することである。また、数理モデルの実行は、目的関数がライン稼働時間の最大化であれば、所与の制約条件の下でライン稼働時間が最大となるライン別期別の品目生産数量を算出することである。また、数理モデルの実行は、目的関数が仕掛在庫数の最小化であれば、所与の制約条件の下で仕掛在庫数が最小となるライン別期別の品目生産数量を算出することである。
【００４７】
ＣＰＵ１７は、数理モデルに基づく、優先度品目の三次元要素毎に割当てる生産量を最適化する（ステップＳ１８）。尚、ＣＰＵ１７は、最適化された優先度品目の三次元要素毎の生産量をＨＤＤ１５内のライン−品目別生産量テーブル（図１２及び図１６参照）に格納する。また、ＣＰＵ１７は、最適化された優先度品目の三次元要素毎の生産量に対応した生産時間をＨＤＤ１５内のライン−品目別生産時間テーブル（図１３及び図１７参照）に格納する。
【００４８】
ＣＰＵ１７は、優先度品目の三次元要素毎に割当てる生産量を最適化した後、未割当の優先度品目の三次元要素があるか否かを判定する（ステップＳ１９）。ＣＰＵ１７は、未割当の優先度品目の三次元要素がある場合（ステップＳ１９肯定）、割り当てられた三次元要素毎の生産量を割当済み生産量として、主メモリ１６内の前回割当済みテーブル（図１４参照）に登録更新する（ステップＳ２０）。
【００４９】
そして、ＣＰＵ１７は、前回割当済みテーブルの割当済み生産量を踏まえて、ステップＳ１４以降の処理動作に移行する。つまり、ＣＰＵ１７は、未割当の優先度品目の内、低優先度品目の三次元要素毎の最適な生産量を割り当てる際、低優先度品目の計画オーダの他に、前回割当済みテーブルの割当済み生産量を踏まえて共通の制約条件を再設定する。その結果、数理モデルのモデルファイルを再生成することになる。
【００５０】
ＣＰＵ１７は、優先度品目のデータが最適化可能なデータでない場合（ステップＳ１４否定）、未割当の優先度品目があるか否かを判定すべく、ステップＳ１９に移行する。
【００５１】
ＣＰＵ１７は、未割当の優先度品目がない場合（ステップＳ１９否定）、ステップＳ１８で最適化された三次元要素毎に割当てる生産量を最適化結果としてＨＤＤ１５内の図示せぬ生産量テーブルに格納する（ステップＳ２１）。尚、ＣＰＵ１７は、三次元要素毎に割当てる生産量を時間換算した生産時間を最適結果としてＨＤＤ１５内の図示せぬ生産時間テーブルに格納する。更に、ＣＰＵ１７は、生産量テーブル又は生産時間テーブルのテーブル内容に基づき、設定画面５０で選択された目的関数の最適解を算出する（ステップＳ２２）。尚、生産量テーブルは、全優先度品目毎のライン−品目別生産量テーブルを格納したものである。また、生産時間テーブルは、全優先度品目のライン−品目別生産時間テーブルを格納したものである。
【００５２】
ＣＰＵ１７は、目的関数に対応した最適解を出力し（ステップＳ２３）、図９に示す処理動作を終了する。尚、ＣＰＵ１７は、最適解として、例えば、ライン及び期毎に品目の生産時間を示すガントチャート（図１８参照）をディスプレイ１２に画面表示する。
【００５３】
図９に示す生産計画処理では、共通の制約条件及び固有の制約条件を含む整数計画法の数理モデルを生成し、数理モデルを実行することで、高優先度品目の三次元要素毎に最適な生産量を優先的に割当てる。そして、生産計画処理は、割当済みの前回の生産量を数理モデルに反映して次位の優先度品目の三次元要素毎に最適な生産量を優先的に割当てる。その結果、優先度品目に応じて、三次元要素毎に最適な生産量を割り当てるので、その都度、投入ライン、生産量及び投入期を生産計画として同時に解決できる。更に、共通の制約条件だけでなく、適宜選択可能な固有の制約条件を踏まえることで生産計画の運用範囲に柔軟性を持たせることができる。
【００５４】
図１０は、モデルファイル生成処理に関わるＣＰＵ１７の処理動作の一例を示すフローチャートである。図１０においてＣＰＵ１７は、数理モデルに入力値である変数を設定する（ステップＳ３１）。尚、ＣＰＵ１７は、計画オーダから対象の優先度に応じた品目（機種、指令及び個片数）、納期日及び計画生産量を抽出する。ＣＰＵ１７は、抽出した品目に関わるマスタデータを抽出する。尚、マスタデータは、計画対象期間に対応した工場の稼働日カレンダ、ライン能力、搭載時間、段取時間、多面取りの個片数及び、表・裏面のペアの有無である。
【００５５】
ＣＰＵ１７は、品目、ライン及び期の集合を定義する。例えば、品目∈（品目1,品目2・・・品目N）、ライン∈（ライン1,ライン2・・・ラインL）及び期∈（期1,期2・・・期T）である。つまり、ＣＰＵ１７は、品目、ライン及び期の三次元要素を定義する。ＣＰＵ１７は、変数として、需要数、在庫数、生産数、生産の有無（０−１整変数）、絶対値変換変数(０−１整変数)、搭載時間、個片数、割当済み数を定義する。更に、ＣＰＵ１７は、定数として、整数計画法での連続変数の上限値、ライン能力、秒→時間変換係数を定義する。
【００５６】
ＣＰＵ１７は、高優先度の品目、ライン及び期の三次元要素毎に最適な生産量を割当てた後、高優先度品目の三次元要素毎に割当てられた生産量を主メモリ１６の前回割当済みテーブルに更新登録する。そして、ＣＰＵ１７は、次位の優先度品目の三次元要素毎に最適な生産量を割当てる際に、前回割当済みテーブルの割当済みの生産量を能力制約条件に反映するものである。つまり、ＣＰＵ１７は、前回割当済みの生産量＋今回の生産量に対応する生産時間がラインの最大稼働時間を超えないように今回の生産量の割当を調整するものである。
【００５７】
ＣＰＵ１７は、共通の制約条件内の在庫制約条件を設定する（ステップＳ３２）。尚、在庫制約条件は、Σ当期在庫数品目、ライン、期＝Σ前期の繰り越し在庫数品目、ライン、期＋Σ生産数品目、ライン、期―需要数（出荷数）品目、期の制約条件である。ＣＰＵ１７は、共通の制約条件内の納期制約条件を設定する（ステップＳ３３）。尚、納期制約条件は、Σ当期在庫数品目、ライン、期≧０の制約条件である。
【００５８】
ＣＰＵ１７は、共通の制約条件内の能力制約条件を設定する（ステップＳ３４）。尚、能力制約条件は、Σ生産時間品目、ライン、期≦ライン能力ライン、期の制約条件である。ＣＰＵ１７は、共通の制約条件内の需要制約条件を設定する（ステップＳ３５）。尚、需要制約条件は、Σ生産数品目、ライン、期≧Σ需要数品目、期の制約条件である。
【００５９】
更に、ＣＰＵ１７は、共通の制約条件内の投入制約条件を設定する（ステップＳ３６）。尚、投入制約条件は、Σ生産数品目、ライン、期≦１の制約条件である。１ライン及び１期で存在する品目は１品目以下とする。
【００６０】
更に、ＣＰＵ１７は、固有の制約条件を設定する（ステップＳ３７）。尚、固有の制約条件は、設定画面５０上の固有制約条件選択部５２で選択した固有の制約条件である。
【００６１】
更に、ＣＰＵ１７は、定義された三次元要素の内、生産有無に応じて０−１整変数に設定する（ステップＳ３８）。尚、ＣＰＵ１７は、品目、ライン及び期の三次元要素毎に、生産有りの場合は“１”、生産無しの場合は“０”を設定する。ＣＰＵ１７は、Ｘ品目、ライン、期（Ｘ＝０（生産なし）orＸ＝1（生産有り）)、すなわち、Ｘが“０”又は“１”に基づき、品目に関し、該当ライン及び期での生産の有無を判断する。そして、Ｙ＝Ａ＊ＸとしてＹ品目、ライン、期生産量を決定する混合整数計画法として数式化する。
【００６２】
ＣＰＵ１７は、絶対値変換を設定する（ステップＳ３９）。尚、絶対値変換は、数理モデルで得た解の絶対値を変換するものである。更に、ＣＰＵ１７は、選択された目的関数を設定する（ステップＳ４０）。尚、目的関数は、設定画面５０で選択された目的関数を設定するものである。そして、ＣＰＵ１７は、ステップＳ３１乃至Ｓ４０の設定内容を含む数理モデルのモデルファイルを生成し（ステップＳ４１）、図１０に示す処理動作を終了する。
【００６３】
図１０に示すモデルファイル生成処理では、在庫制約条件、納期制約条件、需要制約条件及び能力制約条件等の共通の制約条件と、例えば、品目の優先度等の固有の制約条件とを含む整理計画法の数理モデルを生成する。固有の制約条件を適宜選択することで数理モデルの適用範囲を調整することで柔軟性のある生産計画の数理モデルを生成できる。
【００６４】
モデルファイル生成処理では、三次元要素毎に生産有無を示す「０」又は「１」を設定したので、品目、ライン及び期の三次元要素の内、当該品目の生産を実行しない組み合わせを簡単に識別できる。
【００６５】
次に、例えば、計画オーダから“品目１”〜“品目６”の生産計画を立案する生産計画装置１の動作について説明する。生産計画装置１のＣＰＵ１７は、図１１に示す計画オーダから高優先度グループの品目２，３，５及び６の第１日目〜第６日目までの計画生産量を抽出する。図１１は、高優先度計画オーダの一例を示す説明図である。ＣＰＵ１７は、抽出された高優先度グループの品目６１及び日程６２の第１日目〜第６日目までの計画生産量６３を、図１１に示す高優先度計画オーダ６０Ａとして主メモリ１６に格納する。尚、ＣＰＵ１７は、図１１の高優先度計画オーダ６０Ａを参照し、例えば、“品目２”の第１日目の投入台数が５１００台と認識できる。
【００６６】
ＣＰＵ１７は、高優先度計画オーダ及びマスタデータに基づくデータファイルを生成し、高優先度品目の三次元要素毎に最適な生産量を割当てる。ＣＰＵ１７は、高優先度品目の三次元要素毎に最適な生産量を割当てた後、三次元要素毎に割当てられた生産量を、ＨＤＤ１５内の図１２に示すライン−品目別生産量テーブル７０Ａに格納する。図１２は、ライン−品目別生産量テーブル７０Ａの一例を示す説明図である。図１２に示すライン−品目別生産量テーブル７０Ａは、品目７１、ライン７２及び期７３の三次元要素毎に、最適化の計算結果で得た生産量７４を管理する。尚、ＣＰＵ１７は、図１２のライン−品目別生産量テーブル７０Ａを参照して、例えば、“品目１”、“ライン４”及び“期１”の生産量が２８３９台と認識できる。
【００６７】
更に、ＣＰＵ１７は、高優先度品目の三次元要素毎に割当てられた最適な生産量に基づき時間換算の生産時間を算出した後、高優先度品目の三次元要素毎の生産時間を、ＨＤＤ１５内の図１３に示すライン−品目別生産時間テーブル８０Ａに格納する。図１３は、ライン−品目別生産時間テーブル８０Ａの一例を示す説明図である。図１３に示すライン−品目別生産時間テーブル８０Ａは、品目８１、ライン８２及び期８３の三次元要素毎に、最適化の計算結果である割当生産時間８４を管理する。尚、ＣＰＵ１７は、図１３のライン−品目別生産時間テーブル８０Ａを参照して、例えば、“品目１”、“ライン４”及び“期１”の割当生産時間が７．０時間と認識できる。
【００６８】
更に、ＣＰＵ１７は、高優先度品目の三次元要素毎に割当てられた最適な生産量をライン−品目別生産量テーブル７０Ａに格納した後、未割当の優先度品目があるか否かを判定する。ＣＰＵ１７は、未割当の優先度品目、例えば、低優先度品目がある場合、主メモリ１６内の図１４に示す前回割当済みテーブル９０Ａに三次元要素毎の割当済みの生産量を更新する。図１４は、前回割当済みテーブル９０Ａの一例を示す説明図である。図１４に示す前回割当済みテーブル９０Ａは、高優先度品目の最適化が完了した時点で割り当てられた割当済みの生産量９４を、品目９１、ライン９２及び期９３の三次元要素毎に管理する。尚、図１４に示す期は、設定画面５０の時間幅選択部５５で選択された時間幅が８Ｈであるため、１日２４時間を３期に分別したことになる。ＣＰＵ１７は、図１４の前回割当済みテーブル９０Ａを参照し、例えば、“品目２”の“ライン２”の“期４”の割当量９４が２５６３台と認識できる。
【００６９】
ＣＰＵ１７は、計画オーダから低優先度品目の“品目１”及び“品目４”の第１日目〜第６日目までの計画生産量を抽出する。図１５は、低優先度計画オーダの一例を示す説明図である。ＣＰＵ１７は、抽出された低優先度品目の品目６１及び日程６２の第１日目〜第６日目までの計画生産量６３を、図１５に示す低優先度計画オーダ６０Ｂとして主メモリ１６に格納する。尚、ＣＰＵ１７は、図１５の低優先度計画オーダ６０Ｂを参照し、例えば、“品目１”の第１日目の投入台数が８４００台と認識できる。
【００７０】
ＣＰＵ１７は、低優先度計画オーダ及びマスタデータに基づくデータファイルを生成し、低優先度品目の三次元要素毎に最適な生産量を割当てる。ＣＰＵ１７は、低優先度品目の三次元要素毎に最適な生産量を割当てた後、三次元要素毎の生産量を、ＨＤＤ１５内の図１６に示すライン−品目別生産量テーブル７０Ｂに格納する。図１６は、ライン−品目別生産量テーブル７０Ｂの一例を示す説明図である。図１６に示すライン−品目別生産量テーブル７０Ｂは、品目７１Ｂ、ライン７２Ｂ及び期７３の三次元要素毎に、最適化の計算結果で得た生産量７４を管理する。ＣＰＵ１７は、例えば、“品目３”、“ライン１”及び“期１”の生産量が２５６３台と認識できる。
【００７１】
更に、ＣＰＵ１７は、低優先度品目の三次元要素毎に割当てた最適な生産量に基づき時間換算の生産時間を算出した後、三次元要素毎の割当生産時間を、ＨＤＤ１５内の図１７に示すライン−品目別生産時間テーブル８０Ｂに格納する。図１７は、ライン−品目別生産時間テーブル８０Ｂの一例を示す説明図である。図１７に示すライン−品目別生産時間テーブル８０Ｂは、品目８１Ｂ、ライン８２Ｂ及び期８３の三次元要素毎に、最適化の計算結果である生産時間８４を管理する。尚、ＣＰＵ１７は、図１７のライン−品目別生産時間テーブル８０Ｂを参照し、例えば、“品目３”、“ライン１”及び“期１”の生産時間が７．０時間と認識できる。
【００７２】
更に、ＣＰＵ１７は、低優先度品目の三次元要素の最適な生産量をライン−品目別生産量テーブル７０Ａに格納した後、未割当の優先度品目があるか否かを判定する。ＣＰＵ１７は、未割当の優先度品目がある場合、主メモリ１６内の前回割当済みテーブル９０Ａに三次元要素毎の生産量を更新する。その結果、次回の割当では今回の割当済みの生産量と今回の優先度品目のオーダを使用して最適化を行う。これを全品目実施することにより最終的な割当結果が得られる。
【００７３】
また、ＣＰＵ１７は、未割当の優先度品目がない場合、生産量テーブル又は生産時間テーブルの内容に基づき、目的関数に対応した最適解を算出し、最適解に基づく、例えば、図１８に示すガントチャートをディスプレイ１２に画面表示する。その結果、利用者は、ガントチャートを見てライン毎の品目の投入期及び生産時間を認識できる。更に、ＣＰＵ１７は、三次元要素毎に割り当てられた最適な生産時間を製造工程に指示する。
【００７４】
つまり、ＣＰＵ１７は、優先度品目の三次元要素毎に最適な生産量を割り当て、未割当の優先度品目の三次元要素があるか否かを判定し、未割当の三次元要素がある場合、割当済みの三次元要素の生産量を制約条件に組み込む。そして、優先度に応じて最適な生産量の割当てを繰り返し実行する。
【００７５】
本実施例では、品目、ライン及び期の三次元要素毎に「０」又は「１」で生産有無を定義し、共通の制約条件及び、選択可能な固有の制約条件を組み込んだ数理モデルを実行することで、三次元要素毎に最適な生産量を割り当てる。その結果、品目の最適な投入ライン、最適な投入期及び最適な生産量を同時に解決できる。更に、共通の制約条件で生産計画の枠組みを決定し、現場固有の制約条件を選択可能にし、数理モデルの適用範囲を調整することで、生産計画の運用範囲に柔軟性を持たせることができる。
【００７６】
本実施例では、品目毎に優先度を付し、優先度の高い品目から最適な生産量を順次割当てるため、優先度の高い品目から最適な生産量を確実に割り当てることができる。その結果、優先度の高い品目の生産量を優先的に割り当て、優先度の低い品目の生産量を空き領域に埋め込むことで、人間の判断に近い割当てが可能になる。
【００７７】
本実施例では、在庫制約条件と、納期制約条件と、需要制約条件と、能力制約条件とを共通の制約条件としたので、生産計画の枠組みを決定できる。
【００７８】
本実施例では、三次元要素毎に「０」又は「１」で示す生産有無を定義するため、三次元要素毎の生産有無を簡単に識別できる。
【００７９】
尚、上記実施例では、共通の制約条件として、在庫制約条件、納期制約条件、需要制約条件、能力制約条件及び投入制約条件を含めたが、投入制約条件を含めなくても良い。
【００８０】
また、優先度品目を高優先度及び低優先度の２種類としたが、優先度は２種類に限定されるものではなく、３種類以上であっても良い。
【００８１】
また、高優先度の品目の制約条件は厳しく設定し、低優先度の品目は制約条件を緩く設定しても良く。この場合、優先度に応じて制約条件を調整することで、最適化が収束しやすくなる。例えば、低優先度の品目の場合、納期制約条件を緩く、Σ当期在庫数品目、ライン、期≧−３００等に変更しても良い。また、低優先度の品目の場合、投入制約条件を緩く、Σ投入ライン品目、ライン、期≦２等に変更しても良い。
【００８２】
また、図示した各部の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
【００８３】
更に、各装置で行われる各種処理機能は、ＣＰＵ（Central  Processing  Unit）（又はＭＰＵ（Micro  Processing  Unit）、ＭＣＵ（Micro  Controller  Unit）等のマイクロ・コンピュータ）上で、その全部又は任意の一部を実行するようにしても良い。また、各種処理機能は、ＣＰＵ（又はＭＰＵ、ＭＣＵ等のマイクロ・コンピュータ）で解析実行するプログラム上、又はワイヤードロジックによるハードウェア上で、その全部又は任意の一部を実行するようにしても良いことは言うまでもない。
【００８４】
以上、本実施例を含む実施の形態に関し、更に以下の付記を開示する。
【００８５】
（付記１）製品の部品を識別する品目及び前記部品を製造する期を含む計画データと、前記部品を製造するラインの生産能力を含むマスタデータとを取得し、
前記部品に関わる前記品目、前記ライン及び前記期を要素とする三次元要素を定義し、
前記部品又は前記ラインに固有の制約条件を所定操作に応じて選択し、選択された前記固有の制約条件と、予め定められた共通の制約条件とを含む、前記三次元要素毎に、当該品目の最適な生産量を割り当てる整数計画法の数理モデルを生成し、
前記数理モデルを実行することで、前記固有の制約条件及び前記共通の制約条件を満たした前記三次元要素毎に、当該品目の最適な生産量を割り当てる
各処理をコンピュータに実行させることを特徴とする生産計画プログラム。
【００８６】
（付記２）前記品目毎に、前記最適な生産量を優先的に割り当てる優先度を付与し、
前記優先度が高い品目から前記三次元要素毎に前記最適な生産量を順次割り当てる
各処理を前記コンピュータに実行させることを特徴とする付記１に記載の生産計画プログラム。
【００８７】
（付記３）前記優先度が高い品目の三次元要素から前記最適な生産量を割り当てた後、次位の品目の三次元要素に、当該品目の最適な生産量を割り当てる際、前記割当済みの生産量を前記制約条件に反映した前記数理モデルを生成する
処理を前記コンピュータに実行させることを特徴とする付記２に記載の生産計画プログラム。
【００８８】
（付記４）前記共通の制約条件は、
前記部品の生産量を算出する、前記部品の当期の在庫数及び前記当期の直前である前期の在庫数の推移を示す在庫制約条件と、
前記部品の当期の在庫数が正である納期制約条件と、
前記部品の全期間の生産数が需要数以上である需要制約条件と、
前記部品を製造する前記ラインの生産負荷が前記ラインの生産能力以下である能力制約条件と
を含むことを特徴とする付記１〜３の何れか一つに記載の生産計画プログラム。
【００８９】
（付記５）前記在庫制約条件は、
前記部品の当期の在庫数と、前記部品の前期の在庫数と、前記部品の当期の需要数とに基づき、前記部品に割り当てる最適な生産量を算出する方程式であることを特徴とする付記４に記載の生産計画プログラム。
【００９０】
（付記６）前記三次元要素を定義する際、前記三次元要素毎に、当該部品の生産の有無を付す
処理を前記コンピュータに実行させることを特徴とする付記１〜５の何れか一つに記載の生産計画プログラム。
【００９１】
（付記７）プロセッサを有する生産計画装置であって、
前記プロセッサは、
製品の部品を識別する品目及び前記部品を製造する期を含む計画データと、前記部品を製造するラインの生産能力を含むマスタデータとを取得し、
前記部品に関わる前記品目、前記ライン及び前記期を要素とする三次元要素を定義し、
前記部品又は前記ラインに固有の制約条件を所定操作に応じて選択し、選択された前記固有の制約条件と、予め定められた共通の制約条件とを含む、前記三次元要素毎に、当該品目の最適な生産量を割り当てる整数計画法の数理モデルを生成し、
前記数理モデルを実行することで、前記固有の制約条件及び前記共通の制約条件を満たした前記三次元要素毎に、当該品目の最適な生産量を割り当てる
各処理を実行することを特徴とする生産計画装置。
【符号の説明】
【００９２】
１  生産計画装置
１５  ＨＤＤ
１６  主メモリ
１７  ＣＰＵ
【図１】
2013122733.tif 000003
【図２】
2013122733.tif 000004
【図３】
2013122733.tif 000005
【図４】
2013122733.tif 000006
【図５】
2013122733.tif 000007
【図６】
2013122733.tif 000008
【図７】
2013122733.tif 000009
【図８】
2013122733.tif 000010
【図９】
2013122733.tif 000011
【図１０】
2013122733.tif 000012
【図１１】
2013122733.tif 000013
【図１２】
2013122733.tif 000014
【図１３】
2013122733.tif 000015
【図１４】
2013122733.tif 000016
【図１５】
2013122733.tif 000017
【図１６】
2013122733.tif 000018
【図１７】
2013122733.tif 000019
【図１８】
2013122733.tif 000020