(57)【特許請求の範囲】
【請求項１】
複数の設備および作業者等の資源と複数の工程とからなる生産プロセスにおける負荷計画をコンピュータによって立案する方法であって、
コンピュータに対して、計画の対象となる複数の納期付きオーダー情報、オーダーを工程単位に展開する構成マスタ情報、オーダーが１つの工程を流れる時の設備使用時間情報、設備稼働時間を表すカレンダー情報、負荷を計算する基準時間を表すタイムバケットとその大きさ情報、および負荷計画立案対象期間を表す生産区間情報を入力したとき、
コンピュータは、
入力された各オーダー情報を構成マスタ情報で自動展開することにより複数のジョブを生成し、そのジョブを加工する設備毎の使用時間を設備使用時間情報より抽出して、その時間がタイムバケットの大きさを越えない範囲で１つにまとめ、全行程を複数のタイムバケットに振り分け、
負荷計画立案対象期間分のタイムバケットの数からなる遺伝的アルゴリズムにおける遺伝子座を計画の対象となるオーダーの数だけ組み合わせたものを染色体とし、上記各オーダーの振り分けたバケットを染色体に対応するオーダーの遺伝子座に表現したものを１つの計画候補とし、染色体に対して遺伝的アルゴリズムの演算を繰り返しながら様々なパターン計画候補を生成し、
少なくとも生産効率の度合いを示す評価値のよいものを探索して負荷計画とする
過程において、
計画候補の評価値を計算する際に、新たに作成した計画候補の染色体表現と、以前に評価した計画候補のうちその染色体表現と評価情報を記憶した計画候補の染色体との異なる遺伝子座を検出して、その遺伝子座の評価のみをやり直して計画候補全体の評価値を計算する
ことを特徴とする負荷計画立案方法。
【請求項２】
コンピュータは、計画候補となる染色体の遺伝子を、オーダー毎に、生産を行うタイムバケットと生産を行わないタイムバケットをバイナリビットで区別して表現することを特徴とする請求項１記載の負荷計画立案方法。
【請求項３】
コンピュータは、計画候補となる染色体の遺伝子を、オーダー毎に、負荷のあるタイムバケットの順番に合わせたキャラクタで表現することを特徴とする請求項１記載の負荷計画立案方法。
【請求項４】
コンピュータは、遺伝子座におけるタイムバケットの順番の変化に伴う資源とその時間の増減を事前に記憶しておき、遺伝子座の評価をやり直す際に、前記記憶した資源とその時間の増減を利用することを特徴とする請求項１〜３のいずれかに記載の負荷計画立案方法。
【請求項５】
コンピュータは、新たに作成した染色体と以前に評価した染色体との差違を検出する際に、新たに作成した染色体との差違を検出する対象として、新たに作成した染色体の基となった１世代前の染色体を選ぶことを特徴とする請求項１〜４のいずれかに記載の負荷計画立案方法。
【請求項６】
コンピュータは、新たに作成した染色体と以前に評価した染色体との差違を検出する際に、新たに作成した染色体との差違を検出する対象として、以前に評価して記憶した染色体の中から、新たに作成した染色体と染色体が類似しているものを選び出すことを特徴とする請求項１〜４のいずれかに記載の負荷計画立案方法。
【請求項７】
コンピュータは、遺伝子操作で新たな染色体を生成する時に、交叉点を含むオーダー部分に操作を限定することを特徴とする請求項１〜６のいずれかに記載の負荷計画立案方法。
【請求項８】
コンピュータは、遺伝子操作で新たな染色体を生成する時に、オーダー毎の納期以降に対応する遺伝子座部分は遺伝子演算の対象にならないようにすることを特徴とする請求項１〜７のいずれかに記載の負荷計画立案方法。
【請求項９】
コンピュータは、遺伝子操作で新たな染色体を生成する時に、オーダー毎に生産開始可能日を設定し、開始日以前に対応する遺伝子座部分は遺伝子演算の対象にならないようにすることを特徴とする請求項１〜７のいずれかに記載の負荷計画立案方法。
【請求項１０】
コンピュータは、遺伝子操作で新たな染色体を生成する時に、計画対象のオーダーの中に、同一品番のオーダーがある場合、同一品番オーダー間の着手可能日の順番および納期の順番が変わらないように遺伝子演算の対象となる遺伝子座を制限することを特徴とする請求項１〜９のいずれかに記載の負荷計画立案方法。
【請求項１１】
コンピュータは、生産効率の度合いとして、リードタイムおよび設備負荷を評価することを特徴とする請求項１〜１０のいずれかに記載の負荷計画立案方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数注文により発生する複数のジョブを複数の資源に割り付ける生産プロセスに対して適用され、有限の時間内でより最適な負荷計画を高速に立案する負荷計画立案方法に関するものである。
【０００２】
【従来の技術】
従来、この種の計画立案方法が種々提案されている。例えば、特開平１１−３３３６７４号公報には、ジョブのスループットが向上する多段ジョブショップ型生産の生産計画立案方法が開示され、この方法では、ある割付けの優先順位に従って負荷計画が作成される。
【０００３】
図２１に上記生産計画立案方法で採られる負荷積みの説明図を示し、この負荷積み方法を説明する。まず、優先度１であるオーダー１を抽出し、図２１の上段左に示すように、納期（タイムバケット４）からバックワードで（工程１２から１に向かって）負荷を設備毎に割り付けていく。工程８の時、タイムバケットの大きさを越えたとすると、１つ前のタイムバケット（３）に対して負荷割付を行う。これを工程１まで繰り返す。
【０００４】
続いて、優先度２であるオーダー２を抽出し、納期（タイムバケット４）に合わせて上記と同様に負荷割付を行う。このとき、図２１の上段右に示すように、タイムバケット４の設備Ｂが負荷オーバーになったとすると、図２１の下段右に示すように、オーダー２のタイムバケット３に該当する負荷を１つ前のタイムバケットにシフトし、オーダー２のタイムバケット２も１つ前倒しする。これにより、図２１の下段左に示すような負荷積み結果が得られる。
【０００５】
なお、特開平１０−３２０２７２号公報には、複雑・多目的な組み合わせ最適化問題に対して、計画条件の変化に柔軟性があり、かつ効率よく最適な解を導出可能なスケジューリングシステムが開示されている。
【０００６】
【発明が解決しようとする課題】
しかしながら、上記特開平１１−３３３６７４号公報に記載の方法では、例えばオーダーの納期優先、納期余裕時間最小のオーダー優先等で、優先基準が明確な場合の負荷積みは可能で、優先度順に割り付けていくため、優先度の高いオーダーは最適になるが、全体としての最適性は考慮できない課題がある。
【０００７】
この課題を解決するには最適化手法を利用して最適な解が得られるようにすればよいが、実用可能な時間で最適解を得るのは困難である。
【０００８】
本発明は、上記事情に鑑みてなされたものであり、有限な時間内でより最適な負荷計画を高速に立案することができ、全体のオーダーに対して一括して負荷積みを行うことで、全体としての最適性を考慮できる負荷計画立案方法を提供することを目的とする。
【０００９】
【課題を解決するための手段】
上記課題を解決するために請求項１記載の発明の負荷計画立案方法は、複数の設備および作業者等の資源と複数の工程とからなる生産プロセスにおける負荷計画をコンピュータによって立案する方法であって、コンピュータに対して、計画の対象となる複数の納期付きオーダー情報、オーダーを工程単位に展開する構成マスタ情報、オーダーが１つの工程を流れる時の設備使用時間情報、設備稼働時間を表すカレンダー情報、負荷を計算する基準時間を表すタイムバケットとその大きさ情報、および負荷計画立案対象期間を表す生産区間情報を入力したとき、コンピュータは、入力された各オーダー情報を構成マスタ情報で自動展開することにより複数のジョブを生成し、そのジョブを加工する設備毎の使用時間を設備使用時間情報より抽出して、その時間がタイムバケットの大きさを越えない範囲で１つにまとめ、全行程を複数のタイムバケットに振り分け、負荷計画立案対象期間分のタイムバケットの数からなる遺伝的アルゴリズムにおける遺伝子座を計画の対象となるオーダーの数だけ組み合わせたものを染色体とし、上記各オーダーの振り分けたバケットを染色体に対応するオーダーの遺伝子座に表現したものを１つの計画候補とし、染色体に対して遺伝的アルゴリズムの演算を繰り返しながら様々なパターン計画候補を生成し、少なくとも生産効率の度合いを示す評価値のよいものを探索して負荷計画とする過程において、計画候補の評価値を計算する際に、新たに作成した計画候補の染色体表現と、以前に評価した計画候補のうちその染色体表現と評価情報を記憶した計画候補の染色体との異なる遺伝子座を検出して、その遺伝子座の評価のみをやり直して計画候補全体の評価値を計算するのである。
【００１０】
請求項２記載の発明は、請求項１記載の負荷計画立案方法において、コンピュータは、計画候補となる染色体の遺伝子を、オーダー毎に、生産を行うタイムバケットと生産を行わないタイムバケットをバイナリビットで区別して表現することを特徴とする。
【００１１】
請求項３記載の発明は、請求項１記載の負荷計画立案方法において、コンピュータは、計画候補となる染色体の遺伝子を、オーダー毎に、負荷のあるタイムバケットの順番に合わせたキャラクタで表現することを特徴とする。
【００１３】
請求項４記載の発明は、請求項１〜３のいずれかに記載の負荷計画立案方法において、コンピュータは、遺伝子座におけるタイムバケットの順番の変化に伴う資源とその時間の増減を事前に記憶しておき、遺伝子座の評価をやり直す際に、前記記憶した資源とその時間の増減を利用することを特徴とする。
【００１４】
請求項５記載の発明は、請求項１〜４のいずれかに記載の負荷計画立案方法において、コンピュータは、新たに作成した染色体と以前に評価した染色体との差違を検出する際に、新たに作成した染色体との差違を検出する対象として、新たに作成した染色体の基となった１世代前の染色体を選ぶことを特徴とする。
【００１５】
請求項６記載の発明は、請求項１〜４のいずれかに記載の負荷計画立案方法において、コンピュータは、新たに作成した染色体と以前に評価した染色体との差違を検出する際に、新たに作成した染色体との差違を検出する対象として、以前に評価して記憶した染色体の中から、新たに作成した染色体と染色体が類似しているものを選び出すことを特徴とする。
【００１６】
請求項７記載の発明は、請求項１〜６のいずれかに記載の負荷計画立案方法において、コンピュータは、遺伝子操作で新たな染色体を生成する時に、交叉点を含むオーダー部分に操作を限定することを特徴とする。
【００１７】
請求項８記載の発明は、請求項１〜７のいずれかに記載の負荷計画立案方法において、コンピュータは、遺伝子操作で新たな染色体を生成する時に、オーダー毎の納期以降に対応する遺伝子座部分は遺伝子演算の対象にならないようにすることを特徴とする。
【００１８】
請求項９記載の発明は、請求項１〜７のいずれかに記載の負荷計画立案方法において、コンピュータは、遺伝子操作で新たな染色体を生成する時に、オーダー毎に生産開始可能日を設定し、開始日以前に対応する遺伝子座部分は遺伝子演算の対象にならないようにすることを特徴とする。
【００１９】
請求項１０記載の発明は、請求項１〜９のいずれかに記載の負荷計画立案方法において、コンピュータは、遺伝子操作で新たな染色体を生成する時に、計画対象のオーダーの中に、同一品番のオーダーがある場合、同一品番オーダー間の着手可能日の順番および納期の順番が変わらないように遺伝子演算の対象となる遺伝子座を制限することを特徴とする。
【００２０】
請求項１１記載の発明は、請求項１〜１０のいずれかに記載の負荷計画立案方法において、コンピュータは、生産効率の度合いとして、リードタイムおよび設備負荷を評価することを特徴とする。
【００２１】
【発明の実施の形態】
図１は本発明の第１実施形態に係る負荷計画立案方法の手順を示すフローチャートで、この図を用いて以下に第１実施形態の説明を行う。
【００２２】
図１に示す負荷計画立案方法は、複数の設備および作業者等の資源と複数の工程とからなる生産プロセスにおける負荷計画を立案する方法であって、コンピュータ（図示せず）などを利用して実施される。
【００２３】
まず、ステップＳ１０において、コンピュータに対して、計画立案に必要な情報を入力し、メモリに格納する。
【００２４】
図２に上記計画立案に必要な情報の例を示す。計画立案に必要な情報には、図２（ａ）に示すように、計画の対象となる複数のオーダーの各々に対する数量および納期などのオーダー情報と、図２（ｂ）に示すように、各オーダーを工程単位に展開するための構成マスタ情報と、図２（ｃ）に示すように、各オーダーが１つの工程を流れる時の設備使用時間情報（図では使用時間）と、図２（ｄ）に示すように、日毎の各設備に対する設備稼働時間を表すカレンダー情報とがあるほか、負荷を計算する基準時間（例えば１週間）を表すタイムバケットとその大きさ情報と、負荷計画立案対象期間（例えば２６タイムバケット分の半年）を表す生産区間情報と、個体数、総合評価時の各評価項目に対する重み、最大演算世代数（演算終了条件）、および総合評価目標値（演算終了条件）などの遺伝的アルゴリズム演算情報とがある。
【００２５】
続いて、図１のステップＳ１１に進み、タイムバケット割付基準テーブルおよび設備能力テーブルを作成する。
【００２６】
図３にこれら両テーブルの作成手順の例を示す。ここで、図１のステップＳ１１は、図３（ａ）に示すステップＳ１１０〜Ｓ１１３で構成される。
【００２７】
まず、図３（ｂ）に示すように、入力した各オーダー情報を構成マスタ情報で自動展開することにより複数のジョブを生成する（Ｓ１１０）。
【００２８】
この後、各ジョブを加工する設備毎の使用時間を設備使用時間情報より抽出して、その時間がタイムバケットの大きさを越えない範囲で１つにまとめ、全行程を複数のタイムバケットに振り分ける。すなわち、まずステップＳ１１１のバケット順番振り分けとして、図３（ｃ）に示すように、各オーダー（オーダー１）の最終の工程（工程１２）から最初の工程（工程１）の順に、各工程のタイムバケットへの負荷積みを行い、各負荷積みの際、同じタイムバケットに積まれた全工程の負荷がそのタイムバケットの大きさを越えると、そのタイムバケットの前のタイムバケットにシフトし、オーバーフローの原因となった工程（８，４）から順にシフト後のタイムバケット（３，２）への負荷積みを行い、この後、タイムバケットの先頭から順に生産を行うタイムバケットを検索し、それが見つかればそのタイムバケット（２，３，…）から順にバケット順番（１，２，…）を割り当てる。続いて、ステップＳ１１２に進み、オーダー情報からオーダー名を順次抽出し、オーダー名毎にステップＳ１１１で得たバケット順番を割り当て、バケット順番毎に使用する各設備とその使用時間とを格納して、図３（ｄ）に示すようなタイムバケット割付基準テーブルを作成する。このとき、オーダー毎に、それとマッチングする構成マスタ情報から自動展開を通じてジョブを抽出して、ジョブの設備の使用時間を設備使用時間情報より抽出し、設備の使用時間を全ジョブに対して抽出し終えると、バックワードでタイムバケットの大きさに振り分け、その１つ１つをバケット順番としてそれらに含まれる設備とその使用時間とをまとめる。この後、ステップＳ１１３に進み、設備カレンダー情報とタイムバケット情報とにより設備毎に各バケットの負荷能力を算出し、図３（ｅ）に示すように、設備毎に各バケットの番号と負荷能力とが入力された設備能力テーブルを作成する。つまり、資源／バケット単位での許容負荷時間（分）を設定したテーブルを作成するのである。
【００２９】
続いて、図１のステップＳ１２に進み、初期固体集合の染色体生成として、負荷計画立案対象期間分のタイムバケットの数からなる遺伝的アルゴリズムにおける遺伝子座を、計画の対象となるオーダーの数だけ組み合わせたものを染色体とし、各オーダーに対応する染色体の遺伝子座に、タイムバケット割付基準テーブルに従ってバケット順番の個数分の１をランダムにつけた染色体を、設定した初期固体の数だけ初期固体集合として生成する。
【００３０】
図４に上記初期固体集合の染色体生成の説明図を示す。ここで、図１のステップＳ１２は、図４（ａ）に示すステップＳ１２０〜Ｓ１２６で構成される。
【００３１】
まず、変数ｊを１に初期化し（Ｓ１２０）、続いて、ｊを見て設定した個体数になったか否かを判定し（Ｓ１２１）、設定した個体数になれば（Ｓ１２１でＹｅｓ）、処理を終了し、そうでなければ（Ｓ１２１でＮｏ）、変数ｉを０に初期化する（Ｓ１２２）。
【００３２】
この後、ｉを見て計画するオーダー数になったか否かを判定し（Ｓ１２３）、計画するオーダー数にならなければ（Ｓ１２３でＮｏ）、オーダーｉの遺伝子座の中から、バケット順番の個数分の遺伝子座をランダムに選択し、その遺伝子座の値を１としてその他残りの遺伝子座を０とする（Ｓ１２４）。続いて、変数ｉを１でインクリメントし（Ｓ１２５）、この後、ステップＳ１２３に戻る。ここで、負荷計画立案対象期間を半年とすると、タイムバケットが２６個になり、図４（ｂ）に示すように、各オーダーに対して２６個の遺伝子座が割り当てられることになる。そして、例えばオーダー１のバケット順番が１〜４ある場合、そのバケット順番の個数は４個であるから、オーダー１に対する２６個の遺伝子座から、４個分の遺伝子座がランダムに選択され、それらの各遺伝子座に１が入力され、その他残りの遺伝子座に０が入力されるのである。
【００３３】
これに対して、計画するオーダー数になれば（Ｓ１２３でＹｅｓ）、染色体を生成し（Ｓ１２６）、続いて、変数ｊを１でインクリメントし（Ｓ１２７）、この後、ステップＳ１２１に戻る。ここで、ステップＳ１２６に進む場合、計画するオーダー数（ｎとする）に達し、図４（ｂ）に示すオーダー１〜ｎの各々に対するステップＳ１２４の処理が終了したことになり、これらオーダー１〜ｎの各遺伝子座を鎖ることで、図４（ｃ）に示すような染色体が生成されるのである。そして、このような染色体を持つ個体が設定した個体数分、初期固体集合として生成されるのである。
【００３４】
続いて、図１のステップＳ１３に進み、評価値計算として、各個体の評価値を計算する。この評価値計算の説明図を図５に示し、この図５における設備負荷評価の計算で得られるテーブルを図６に示す。ただし、設備数は３、オーダー数はｎ、そしてタイムバケット数は２６であるとする。
【００３５】
図５（ａ）に示すように、生成した染色体の一部と設備の関係からリードタイム評価を行い、続いて、各タイムバケット毎に各設備に対する設備能力および負荷を評価することで設備負荷評価を行い、これら各評価値に重みを付けて染色体の総合評価を算出する。例えば、（リードタイムの重み×総合リードタイム評価＋設備負荷の重み×総合設備負荷評価）÷２で総合評価を算出すればよい。
【００３６】
ここで、リードタイムは、その開始タイムバケット時刻から納期のタイムバケット時刻までの時間の長さであり、この時間の長さを評価点とする。図５（ａ）に示すように、生産開始から納期までをリードタイムとすると、オーダー１は、バケットが５つになるので、タイムバケットが１週間の場合、そのリードタイムは５０４００分（＝５×７日×２４時間×６０分）になる。従って、評価点は５０４００点となる。その他各オーダーの評価点も同様に算出され、全オーダーの評価点の合計値（５０４００＋４０３２０＋…＋４０３２０）が総合リードタイム評価として求められる。なお、図５（ｂ）はリードタイムテーブルを示す。
【００３７】
他方、設備負荷評価は、タイムバケット毎に、各設備の設備能力と負荷時間から負荷率を算出し、その値に応じた負荷率得点を決定し、得られた各設備の負荷率得点の和をタイムバケットの負荷率得点とし、タイムバケット毎に得られた負荷率得点の和（次式参照）を総合設備負荷評価とすることで実行される。
【００３８】
【数１】
0003820833.tif 000002
【００３９】
すなわち、設備毎の各タイムバケットの負荷が図６（ａ）のトータル負荷テーブルに示すような値であったとすると、トータル負荷テーブルおよび設備能力テーブルから、図６（ｂ）に示すトータル負荷率テーブルが得られる。そして、図６（ｄ）に示す負荷率変換得点表を用いた場合、トータル負荷率テーブルから、図６（ｃ）に示す設備負荷得点テーブルが得られる。そして、上記（数１）を用いて総合設備負荷評価が算出される。例えば、図３（ｅ）に示すように、設備ＭＣ１のタイムバケット１の負荷能力１が１９２０分であれば、設備ＭＣ１のタイムバケット１の負荷が１００分であるから、その負荷率は５％になり、負荷率０〜１００％に該当するので、得点は０点となる。
【００４０】
続いて、図１のステップＳ１４に進み、各固体の遺伝子の並び結果と評価項目毎の評価値とを記憶する（評価染色体および評価結果の記憶）。つまり、評価した固体毎に、染色体（各遺伝子座の値）、リードタイムテーブル、トータル負荷テーブル、トータル負荷率テーブルおよび設備負荷得点テーブルを記憶する。
【００４１】
続いて、ステップＳ１５のＥＮＤ条件に進み、遺伝的アルゴリズム演算の終了判断を行う。主に、遺伝的アルゴリズムの後述するループ（Ｓ１５〜Ｓ２０）の終了判断を行う。終了条件として、ステップＳ１０で入力した総合評価目標値が達成された場合、ステップＳ１０で入力した最大演算世代数を越えた場合に、終了の判断が下される。
【００４２】
続いて、ステップＳ１６の遺伝子操作に進み、次世代の固体の染色体を生成させるために交叉や突然変異を起こす。
【００４３】
図７（ａ）および（ｂ）にそれぞれ交叉および突然変異の説明図を示す。前者について説明すると、図７（ａ）に示すように、まず、計画候補の染色体から２つをランダムに選択し、続いて、交叉点をランダムに選択し、この後、その交叉点を境に両染色体の一部（図では交叉点の後半部）を入れ替えることで交叉を起こす。ただし、交叉点は交叉前後で、生産を行う遺伝子座の数が変わらないように選択する。また、交叉は計画候補の中からステップＳ１０で設定される数の組を選択して行う。
【００４４】
後者について説明すると、図７（ｂ）に示すように、まず、計画候補の染色体から１つをランダムに選択し、続いて、選択した染色体から２つの遺伝子座をランダムに選択し、この後、選択した両遺伝子座の値を入れ替えることで突然変異を起こす。ただし、突然変異はステップＳ１０で設定される数を選択候補から選択して行う。
【００４５】
続いて、図１のステップＳ１７に進み、評価済み染色体情報の選択として、新たに作成した染色体とそれ以前に評価した染色体との差違を検出する際に、新たに作成した染色体との差違を検出する対象として、新たに作成した染色体の基となった１世代前の染色体を選ぶ。
【００４６】
図８に上記評価済み染色体情報の選択の説明図を示す。ステップＳ１６で交叉を起こした場合、すなわち、図８（ａ）に示すように、染色体ＡとＢから、交叉で染色体ＣとＤが生成されたとき、染色体ＣまたはＤの評価を行う場合、その染色体の遺伝子座に占める数を染色体Ａに起因する遺伝子座の数と染色体Ｂに起因する遺伝子座の数を比較して、起因する遺伝子座の数が多い方が多い方の染色体を新たに作成した染色体との差違を検出する対象とする。すなわち、図８（ａ）に示すように、交叉点の前半部の遺伝子座の数をｍとし、後半部の数をｎとしたとすると、ｍ≧ｎのとき、染色体Ｃには染色体Ａを、染色体Ｄには染色体Ｂを選び、ｍ＜ｎのとき、染色体Ｃには染色体Ｂを、染色体Ｄには染色体Ａを選ぶ。
【００４７】
これに対して、ステップＳ１６で突然変異を起こした場合、図８（ｂ）に示すように、染色体Ａから突然変異で染色体Ｂが生成されたとき、染色体Ａを染色体Ｂの評価の対象に選ぶ。
【００４８】
続いて、図１のステップＳ１８に進み、評価値計算として、各固体の評価値を計算する。
【００４９】
図９に上記評価値計算のフローチャートを示し、図１０に評価値計算の説明図を示す。ここで、図１のステップＳ１８は、図９（ａ）に示すステップＳ１８０〜Ｓ１８３で構成される。
【００５０】
まず、ステップＳ１７で選択した染色体に関して記憶した情報を読み込む（Ｓ１８０）。
【００５１】
この後、各オーダーに対して所定の演算処理を行い、この演算処理で得られた結果を各オーダー毎にまとめて図１０（ｄ）に示すようなビット差分テーブルを作成する（Ｓ１８１）。ここで、上記演算処理について説明する。ただし、ステップＳ１７で読み込まれた評価済染色体および評価対象染色体が、それぞれ図１０（ａ）および（ｂ）のようなバイナリビットで表現されるとする。まず、図１０（ｃ）に示すように、オーダー（オーダー１）の評価済（評価済染色体）および評価対象（評価対象染色体）から差分を求める。図では、評価対象−評価済の演算で差分が求められている。続いて、評価済に１が立っていたら−１、評価対象に１が立っていたら＋１として、バケットの先頭から加減していき、ＣＯＵＮＴ値（図１０（ｃ）に示す括弧内の「ＣＯＵＮＴ」の値）とする。例えば、左から第１列目では、双方ともに０により第１列目のＣＯＵＮＴ値を０とする。この０を第２列目のＣＯＵＮＴ値に加えるとともに、対応する評価済が１であるのでさらに−１を加えて、第２列目のＣＯＵＮＴ値を−１とする。この−１を第３列目のＣＯＵＮＴ値に加えるとともに、双方ともに０によりさらに０を加えて、第３列目のＣＯＵＮＴ値を−１とする。この−１を第４列目のＣＯＵＮＴ値に加えるとともに、双方ともに１によりさらに±１を加えて、第４列目のＣＯＵＮＴ値を−１とする。以下同様の演算を行う。ＣＯＵＮＴ値の演算終了後、評価済および評価対象の少なくとも一方が０以外の値にセットされている場合、上記ＣＯＵＮＴ値が０以外のとき、それに対応する評価済に１が立っていたら−１、評価対象に１が立っていたら＋１をそれぞれＣＯＵＮＴ結果（図１０（ｃ）に示す枠で囲った「ＣＯＵＮＴ結果」）の上段および下段にセットする。図の例では、少なくとも一方が０以外の値にセットされているのは、第２，４〜６および８列目の評価済および評価対象であり、これらのうち、対応するＣＯＵＮＴ値が０以外になるのは、第２，４，５列目のものである。したがって、第２，４，５列目のＣＯＵＮＴ結果の上段および下段に、それぞれ対応する評価済および評価対象の値に応じた値がセットされることになる。
【００５２】
続いて、差分とＣＯＵＮＴ結果の各行とのＯＲをとり、得られた結果が−の場合は図１０（ｃ）に示す「結果」の上段（１行目）に、＋の場合は「結果」の下段（２行目）にそのＯＲの値を記入する。ここで、未記入のエリアに対しては０をセットする。例えば、左から第１列目では、差分０、ＣＯＵＮＴ結果の上段は０であるので、差分とＣＯＵＮＴ結果のＯＲが０になる。この場合、「結果」のエリアに対しては何もしない。他方、差分０とＣＯＵＮＴ結果の下段の０に対するＯＲも０であるので、何もしない。したがって、「結果」における第１列目の双方のエリアはともに未記入となるから、それらの各エリアに０をセットする。第２列目では、差分−１とＣＯＵＮＴ結果の１行目の−１とのＯＲが−１になるから、「結果」の１行目にそのＯＲの値−１を記入する。他方、差分−１とＣＯＵＮＴ結果の２行目０とのＯＲが−１になるから、「結果」の１行目にそのＯＲの値−１を記入する。したがって、「結果」における第２列目の２行目のエリアが未記入になるのでそのエリアに０をセットする。以下同様の演算を行う。
【００５３】
図９（ａ）のステップＳ１８１の後、設備負荷評価計算を行う（Ｓ１８２）。ここで、ステップＳ１８２は、図９（ｂ）に示すステップＳ１〜Ｓ９で構成される。また、図１０（ａ）および（ｂ）の両テーブルをそれぞれ評価済ビット表現テーブルおよび評価対象ビット表現テーブルと呼ぶ。
【００５４】
まず、オーダー１およびタイムバケット１から処理が実行されるように初期化を行う（Ｓ１）。続いて、ステップＳ２のＥＮＤ条件に進み、処理中のオーダーがオーダー１〜最終オーダーの範囲内に含まれるか否かを判定する。
【００５５】
含まれれば（Ｓ２でＹｅｓ）、ステップＳ１３と同様の方法で設備負荷評価を行い（Ｓ３）、この後、本フローチャートの処理が終了する一方、含まれなければ（Ｓ２でＮｏ）、ビット差分テーブルにおいて、処理中のタイムバケットの数値情報が０またはなしであるか（つまり、処理中のタイムバケットに＋１，−１が含まれていないか）を判定する（Ｓ４）。
【００５６】
数値情報が０またはなしであれば（Ｓ４でＹｅｓ）、処理すべきタイムバケットを処理中のタイムバケットからその次のタイムバケットに変更し、またこの変更後のタイムバケットがタイムバケット１〜最終タイムバケットの範囲を越える場合には、処理すべきオーダーを処理中のオーダーからその次のオーダーに変更するとともに、タイムバケット１から処理が実行されるように初期化を行い（Ｓ５）、この後、ステップＳ２に戻る。
【００５７】
これに対して、数値情報が０またはなしでなく（Ｓ４でＮｏ）、−１だけであれば（Ｓ６で−１だけ）、評価済ビット表現テーブルのそのバケット位置のバケット先頭からの順番により、タイムバケット割付基準テーブルを基に算出されたバケット順番の複数の設備使用時間をトータル負荷テーブルの該当位置（設備／バケットマトリクス）の数値情報から引く（Ｓ７）。この後、ステップＳ５に進む。
【００５８】
数値情報が０またはなしでなく（Ｓ４でＮｏ）、＋１だけであれば（Ｓ６で＋１だけ）、評価対象ビット表現テーブルのそのバケット位置のバケット先頭からの順番により、タイムバケット割付基準テーブルを基に算出されたバケット順番の複数の設備使用時間をトータル負荷テーブルの該当位置（設備／バケットマトリクス）の数値情報へ足す（Ｓ８）。この後、ステップＳ５に進む。
【００５９】
数値情報が０またはなしでなく（Ｓ４でＮｏ）、−１と＋１であれば（Ｓ６で−１と＋１）、評価済ビット表現テーブルのそのバケット位置のバケット先頭からの順番により、タイムバケット割付基準テーブルを基に算出されたバケット順番の複数の設備使用時間をトータル負荷テーブルの該当位置（設備／バケットマトリクス）の数値情報から引く一方、評価対象ビット表現テーブルのそのバケット位置のバケット先頭からの順番により、タイムバケット割付基準テーブルを基に算出されたバケット順番の複数の設備使用時間をトータル負荷テーブルの該当位置（設備／バケットマトリクス）の数値情報へ足す（Ｓ９）。この後、ステップＳ５に進む。
【００６０】
例えば、ビット差分テーブルにおいて、オーダー１の場合、バケット２がステップＳ６で最初に選別され、−１であるので、ステップＳ７に進む。このとき、オーダー１のバケット２に該当するデータをタイムバケット割付基準テーブルから抽出するのであるが、オーダー１のバケット２は、図３（ｄ）の場合のタイムバケット割付基準テーブルにおいて、図１０（ａ）の評価済ビット表現テーブルから分かるようにバケット順番が１になるので、タイムバケット割付基準テーブルを基に算出されたバケット順番の複数の設備使用時間は、（設備，使用時間）＝（ＭＣ１，１８０）（ＭＣ２，１００）…（ＭＣ１５，５０）になる。トータル負荷テーブルの数値情報は、評価済ビット表現テーブルのそのバケット位置のバケット先頭からの順番、すなわち２により抽出され、トータル負荷テーブルが図６（ａ）の場合、タイムバケット２の列の各設備の負荷１３００，１３００，…が抽出される。したがって、ＭＣ１：１３００−１８０＝１１２０，ＭＣ２：１３００−１００＝１２００，…の演算が行われることになる。
【００６１】
この次、ビット差分テーブルにおけるバケット４がステップＳ６で選別され、−１と＋１であるので、ステップＳ９に進む。このとき、−１に対する処理として、バケット順番が２により、タイムバケット割付基準テーブルを基に算出されたバケット順番の複数の設備使用時間は、（設備，使用時間）＝（ＭＣ１，１００）（ＭＣ３，９０）…になり、バケット４により、タイムバケット４の列の各設備の負荷１４００，１５００，…が抽出され、ＭＣ１：１４００−１００＝１３００，ＭＣ３：１５００−９０＝１４１０，…の演算が行われる。
【００６２】
これに対して、＋１に対する処理として、オーダー１のバケット４に該当するデータをタイムバケット割付基準テーブルから抽出するのであるが、オーダー１のバケット４は、タイムバケット割付基準テーブルにおいて、図１０（ｂ）の評価対象ビット表現テーブルから分かるように、バケット順番が１になるので、タイムバケット割付基準テーブルを基に算出されたバケット順番の複数の設備使用時間は、（設備，使用時間）＝（ＭＣ１，１８０）（ＭＣ２，１００）…（ＭＣ１５，５０）になる。トータル負荷テーブルの数値情報は、評価済ビット表現テーブルのそのバケット位置のバケット先頭からの順番、すなわち４により抽出され、トータル負荷テーブルにおけるタイムバケット４の列の各設備の負荷１４００，１５００，…が抽出される。したがって、ＭＣ１：１４００＋１８０＝１５８０，ＭＣ２：１５００＋１００＝１６００，…の演算が行われることになる。以下、同様の処理が行われる。
【００６３】
図９（ａ）のステップＳ１８２の後、ステップＳ１３と同様の方法でリードタイム評価計算を行う（Ｓ１８３）。
【００６４】
続いて、図１のステップＳ１９に進み、計算候補の選択として、総合評価値に従って固体の総合評価を行い、次回の計算に採用する計画候補（計算候補として残す染色体）を選択する。例えば、算出された評価値の中でよりよい候補を半数残す。
【００６５】
続いて、ステップＳ２０に進み、選択した各固体の遺伝子の並び結果と評価項目毎の評価値を記憶する。この後、ステップＳ１５に戻る。
【００６６】
以上、第１実施形態では、有限な時間内でより最適な負荷計画を高速に立案することができ、全体のオーダーに対して一括して負荷積みを行うことで、全体としての最適性を考慮できる。つまり、全オーダーを一括して高速にタイムバケットに割り付けることで最適解を生成することができる。
【００６７】
また、計画候補となる染色体の遺伝子を、オーダー毎に、生産を行うタイムバケットと生産を行わないタイムバケットをバイナリビットで区別して表現するので、遺伝子のバイナリビット表現により生産の有無を簡潔に表現できる。
【００６８】
また、計画候補の評価値を計算する際に、新たに作成した計画候補の染色体表現と、以前に評価した計画候補のうちその染色体表現と評価情報を記憶した計画候補の染色体との異なる遺伝子座を検出して、その遺伝子座の評価のみをやり直して計画候補全体の評価値を計算するので、変化のある部分のみの評価ですみ、評価が高速になる。
【００６９】
また、新たに作成した染色体と以前に評価した染色体との差違（差分）を検出する際に、新たに作成した染色体との差違を検出する対象として、新たに作成した染色体の基となった１世代前の染色体を選ぶので、類似している部分が多い確率の高い対象との比較により、評価計算量を減らすことができる。
【００７０】
さらに、生産効率の度合いとして、リードタイムおよび設備負荷を評価するので、仕掛在庫を減らし、負荷を平準化した計画の立案が可能になる。
【００７１】
図１１は本発明の第２実施形態に係る負荷計画立案方法の特徴を示す図、図１２は第２実施形態における評価値計算のサブルーチンを示す図、図１３は図１２のサブルーチンの説明図で、これらの図を用いて以下に第２実施形態の説明を行う。また、図１のフローチャートを適宜使用する。
【００７２】
本負荷計画立案方法は、図１１（ａ）に示すように、オーダー毎に負荷のあるタイムバケットの順番に合わせたキャラクタで遺伝子座の値を表現する点で、バイナリビットで遺伝子座の値を表現する第１実施形態と相違する。図１１（ａ）の例では、オーダー１のタイムバケット２，４，５，８に負荷があり、順番、すなわちバケット順番を示すキャラクタである１，２，３，４がそれぞれタイムバケット２，４，５，８の各遺伝子座に格納されている。
【００７３】
このため、第２実施形態では、図１に示したフローチャートのステップＳ１２の「初期固体集合の染色体生成」においては、全タイムバケットからバケット順番の個数分のタイムバケットを選択し、上例の如く番号を振ることなる。
【００７４】
また、ステップＳ１３の「評価値計算」のリードタイム評価においては、図１１（ｂ）に示すように、値が１である遺伝子座から納期ポイントまでの遺伝子座の数（図１１（ｂ）の例では９）を評価することになる。また、設備負荷評価も同様に行うことができ、トータル負荷テーブル、トータル負荷率テーブル、設備負荷得点は第１実施形態と同じものが得られる。
【００７５】
また、ステップＳ１６の「遺伝子操作」においては、交叉を第１実施形態と同様に起こすことができる。これに対して、突然変異は、図１１（ｃ）の「Ａ」に示すように、突然変異後の遺伝子座のキャラクタが２，１，３の如く昇順になっていない場合、図１１（ｃ）の「Ｂ」に示すように、遺伝子座のキャラクタを、位置はそのままで昇順に並び替える必要が生じる。
【００７６】
さらに、ステップＳ１８の「評価値計算」は図１２に示す手順になる。すなわち、ステップＳ１７で選択した染色体に関して記憶した情報を読み込む（Ｓ１８０）。ただし、このとき、図１３（ａ）および（ｂ）に示すように、評価済キャラクタ表現テーブルおよび評価対象キャラクタ表現テーブルが読み込まれる。これらは、それぞれ第１実施形態の評価済ビット表現テーブルおよび評価対象ビット表現テーブルに対応し、キャラクタで表現される点で第１実施形態のそれらと相違する。
【００７７】
この後、評価済と評価対象のキャラクタ比較を行い、異なる数値がセットされている場合は、評価済ならキャラクタ差分テーブルの−側の位置にその装置を、評価対象ならキャラクタ差分テーブルの＋側の位置にその装置をセットして、図１３（ｃ）に示すようなキャラクタ差分テーブルを作成する（Ｓ１８１ａ）。
【００７８】
この後、設備負荷評価計算として、キャラクタ差分テーブルの各オーダーの−欄のタイムバケット順番の設備負荷を引き、＋欄のタイムバケット順番の設備負荷を足し、タイムバケット・設備毎の負荷を総合して設備負荷評価計算を行う（Ｓ１８２ａ）。
【００７９】
例えば、キャラクタ差分テーブルの−側の場合、セットされている数値と同じ番号のタイムバケット割付基準テーブルのバケット順番を抽出して、その設備と使用時間に従って計算を行う。オーダー１、バケット２の場合、（設備，使用時間）＝（ＭＣ１，１８０）（ＭＣ２，１００）…（ＭＣ１５，５０）になる。そして、トータル負荷テーブルのバケット２の位置からそれぞれの設備に対して、算出された使用時間を引く（ＭＣ１：１３００−１８０＝１１２０，ＭＣ２：１３００−１００＝１２００，…）。
【００８０】
これに対して、キャラクタ差分テーブルの＋側の場合、セットされている数値と同じ番号のタイムバケット割付基準テーブルのバケット順番を抽出して、その設備と使用時間に従って計算を行う。オーダー１、バケット４の場合、（設備，使用時間）＝（ＭＣ１，１８０）（ＭＣ２，１００）…（ＭＣ１５，５０）になり、トータル負荷テーブルのバケット４の位置からそれぞれの設備に対して算出された使用時間を足す（ＭＣ１：１４００＋１８０＝１５８０，…）。以下、同様の処理が行われる。
【００８１】
図１２のステップＳ１８２ａの後、第１実施形態と同様にリードタイム評価計算を行う（Ｓ１８３）。
【００８２】
また、図１に示したフローチャートのステップＳ１９の「計画候補の選択」およびステップＳ２０の「選択固体におけるそれぞれの並びと評価項目毎の評価位値を格納」においては、第１実施形態と同様に処理がなされる。
【００８３】
以上、第２実施形態では、有限な時間内でより最適な負荷計画を高速に立案することができ、全体のオーダーに対して一括して負荷積みを行うことで、全体としての最適性を考慮できるほか、計画候補となる染色体の遺伝子を、オーダー毎に、負荷のあるタイムバケットの順番に合わせたキャラクタで表現するので、遺伝子のキャラクタ表現により生産の有無および生産順序を簡潔に表現できる。
【００８４】
また、新たに作成した染色体と以前に評価した染色体との差違を検出する際に、新たに作成した染色体との差違を検出する対象として、新たに作成した染色体の基となった１世代前の染色体を選ぶので、類似している部分が多い確率の高い対象との比較により、評価計算量を減らすことができる。
【００８５】
図１４は本発明の第３実施形態に係る負荷計画立案方法の特徴を示す図で、この図を用いて以下に第３実施形態の説明を行う。また、図１のフローチャートを適宜使用する。
【００８６】
本負荷計画立案方法は、負荷のあるバケットの順番の変化による評価値の変化を予め計算して図１４（ａ）に示すようなバケット差分テーブルで記憶し、図１に示したステップＳ１８の「評価値計算」で、その記憶した計算値を設備負荷評価計算に利用する点で、第２実施形態の負荷計画立案方法と相違する。
【００８７】
ここで、上記バケット差分テーブルは、タイムバケット割付基準テーブルを基に事前に作成される。図１４（ａ）において、「順位遷移」はバケット順番の評価済と評価対象との間での変化を示す。例えば、評価済キャラクタ表現テーブルおよび評価対象キャラクタ表現テーブルがそれぞれ図１４（ｂ）および（ｃ）に示すような値を含む場合、オーダー１のバケット２の計算には、図１４（ａ）の順位遷移１→０を、オーダー１のバケット４には順位遷移２→１の値をバケット差分テーブルから値を参照する。
【００８８】
以上、第３実施形態では、遺伝子座におけるタイムバケットの順番の変化に伴う資源とその時間の増減を事前に記憶しておき、遺伝子座の評価をやり直す際に、前記記憶した資源とその時間の増減を利用するので、変化のある部分の評価が高速になる。
【００８９】
図１５は本発明の第４実施形態に係る負荷計画立案方法の特徴を示すフローチャート、図１６は図１５の「生成した染色体との演算により類似指数を計算」の説明図で、これらの図を用いて以下に第４実施形態の説明を行う。また、図１のフローチャートを適宜使用する。
【００９０】
本負荷計画立案方法は、図１に示したフローチャートにおいて、ステップＳ２０の「選択固体におけるそれぞれの並びと評価項目毎の評価位値を格納」は実行せず、ステップＳ１７の「評価済み染色体情報の選択」およびステップＳ１８の「評価値計算」の代わりに図１５に示す処理を行う手順になっている点で、第１実施形態の負荷計画立案方法と相違する。
【００９１】
すなわち、図１に示したステップＳ１６の「遺伝子操作」の後、ｉを０に初期化し（Ｓ１７ａ）、この後、ｉが計画候補数ｎよりも小さいか否かを判定する（Ｓ１７ｂ）。
【００９２】
ｉが計画候補数ｎよりも小さければ（Ｓ１７ｂでＹｅｓ）、ｉ番目の記憶染色体を選択し（Ｓ１７ｃ）、この後、生成した染色体との演算により類似指数を計算する（Ｓ１７ｄ）。
【００９３】
ここで、このステップＳ１７ｄは、図１６（ａ）に示すステップＳ１７ｅ〜Ｓ１７ｇにより成る。すなわち、排他的論理和の計算として、２つの染色体の対応する遺伝子座で排他的論理和（ＥＯＲ）をとり（Ｓ１７ｅ）、各オーダーの類似指数計算として、排他的論理和の結果において、各オーダーにおける排他的論理和で１となる遺伝子座の分布範囲を計算し（Ｓ１７ｆ）、続いて、染色体の類似指数計算として、各オーダーにおける排他的論理和で１となる遺伝子座の分布範囲の和を計算する（Ｓ１７ｇ）。例えば、オーダーが３つの場合で、２つの染色体が図１６（ｂ）に示す値を持つ「Ａ」，「Ｂ」であったとすると、ステップＳ１７ｅにより図１６（ｂ）の「ＥＯＲ」に示す値が得られ、ステップＳ１７ｆにより分布範囲として４，６，４が得られ、ステップＳ１７ｇにより分布範囲の和（類似度）として１４（＝４＋６＋４）が得られる。
【００９４】
図１５のステップＳ１７ｄの後、ｉの類似指数を記憶し（Ｓ１７ｈ）、ｉを１でインクリメントし（Ｓ１７ｉ）、この後、ステップＳ１７ｂに戻る。
【００９５】
他方、ｉが計画候補数ｎよりも小さくなければ（Ｓ１７ｂでＮｏ）、類似指数が最小となるｉを抽出し（Ｓ１７ｊ）、第１実施形態のステップＳ１８の「評価値計算」と同様、ｉ番目の記憶染色体を用いて、生成した染色体の評価値を計算し（Ｓ１７ｋ）、続いて、ｉ番目の記憶染色体および評価の情報を今回生成した染色体および評価情報と入れ替える（Ｓ１７ｌ）。
【００９６】
以上、第４実施形態では、新たに作成した染色体と以前に評価した染色体との差違を検出する際に、新たに作成した染色体との差違を検出する対象として、以前に評価して記憶した染色体の中から、新たに作成した染色体と染色体が類似しているものを選び出すので、差違が小さくなることにより、評価計算量を減らすことができる。
【００９７】
図１７は本発明の第５実施形態に係る負荷計画立案方法の特徴を示す図で、この図を用いて以下に第５実施形態の説明を行う。
【００９８】
本負荷計画立案方法は、図１に示したステップＳ１６の「遺伝子操作」において、操作位置を限定する点で、第１実施形態の負荷計画立案方法と相違する。
【００９９】
例えば、図１７（ａ）に示すような値を持つ染色体１，２，…ｍがある場合、図１７（ｂ）に示すように、交叉点をオーダーｉ内に設定した場合、交叉および突然変異の遺伝子操作を染色体におけるそのオーダーｉに限定して行うのである（図１７（ｂ）および（ｃ）参照）。
【０１００】
以上、第５実施形態では、遺伝子操作で新たな染色体を生成する時に、交叉点を含むオーダー部分に操作を限定するので、新たに作成した染色体と以前に評価した染色体との差違の検出および評価を簡略化することができる。
【０１０１】
図１８は本発明の第６実施形態に係る負荷計画立案方法の特徴を示す図で、この図を用いて以下に第６実施形態の説明を行う。
【０１０２】
本負荷計画立案方法は、図１に示したステップＳ１６の「遺伝子操作」の突然変異において、納期を越えた範囲に及ぶ突然変異を禁止する点で、第１実施形態の負荷計画立案方法と相違する。
【０１０３】
例えば、図１８に示すように、突然変異前の染色体が図１８の上段に示すような値を持っている場合、中段の突然変異は、納期（図では納期ポイント）を越えた範囲に及んでいないので許容されるのに対し、下段の突然変異は、納期を越えた範囲に及んでいるので禁止されるのである。つまり、オーダー上での納期に当たるタイムバケット以降への遺伝子操作が禁止されるのである。
【０１０４】
以上、第６実施形態では、遺伝子操作で新たな染色体を生成する時に、オーダー毎の納期以降に対応する遺伝子座部分は遺伝子演算の対象にならないようにするので、納期遵守を条件とした場合に、計画候補とならない染色体の発生を抑制することにより、望ましい候補をはやく得ることができる。
【０１０５】
図１９は本発明の第７実施形態に係る負荷計画立案方法の特徴を示す図で、この図を用いて以下に第７実施形態の説明を行う。
【０１０６】
本負荷計画立案方法は、図１に示したステップＳ１６の「遺伝子操作」の突然変異において、生産開始可能ポイントを越えた範囲に及ぶ突然変異を禁止する点で、第１実施形態の負荷計画立案方法と相違する。
【０１０７】
例えば、図１９に示すように、突然変異前の染色体が図１９の上段に示すような値を持っている場合、中段の突然変異は、生産開始可能ポイントを越えた範囲を越えた範囲に及んでいないので許容されるのに対し、下段の突然変異は、生産開始可能ポイントを越えた範囲に及んでいるので禁止されるのである。つまり、資材が揃う日程のために、生産が可能になる日程（タイムバケット）が決まっている場合や、オーダー上での許容リードタイムにあたるタイムバケットが設定されている場合などで、その範囲を超えた遺伝子操作が禁止されるのである。
【０１０８】
以上、第７実施形態では、遺伝子操作で新たな染色体を生成する時に、オーダー毎に生産開始可能日を設定し、開始日以前に対応する遺伝子座部分は遺伝子演算の対象にならないようにするので、生産開始日がある場合や、許容リードタイムが設定されている場合に、計画候補とならない染色体の発生を抑制することにより、望ましい候補をはやく得ることができる。
【０１０９】
図２０は本発明の第８実施形態に係る負荷計画立案方法の特徴を示す図で、この図を用いて以下に第８実施形態の説明を行う。
【０１１０】
本負荷計画立案方法は、図１に示したステップＳ１６の「遺伝子操作」において、同一品番が連続して生産される場合、着手可能日の順番および納期の順番通りに生産されるように、遺伝子座の範囲を限定する点で、第１実施形態の負荷計画立案方法と相違する。
【０１１１】
同一品番のオーダーが複数ある場合、例えば、図２０において、オーダー１，ｉ，ｎのみが同一品番であり、オーダー１，ｉ，ｎの｛生産開始のタイムバケット，生産完了のタイムバケット，納期のタイムバケット｝がそれぞれ｛２，８，９｝，｛６，９，１１｝，｛８，１３，１３｝である場合、それらの生産着手順番および生産終了順番が変わるような遺伝子操作は禁止されるのである。
【０１１２】
図２０において、オーダー１のみ遺伝子操作を行う場合、開始タイムバケットはタイムバケット６まで、終了タイムバケットはタイムバケット９までに制限される。オーダーｉのみ遺伝子操作を行う場合、開始タイムバケットはタイムバケット２から８まで、終了タイムバケットはタイムバケット８から１１までに制限される。オーダーｎのみ遺伝子操作を行う場合、開始タイムバケットはタイムバケット６から、終了タイムバケットはタイムバケット９から１３までに制限される。
【０１１３】
以上、第８実施形態では、遺伝子操作で新たな染色体を生成する時に、計画対象のオーダーの中に、同一品番のオーダーがある場合、同一品番オーダー間の着手可能日の順番および納期の順番が変わらないように遺伝子演算の対象となる遺伝子座を制限するので、同一注文品番がある場合に遺伝子操作と差分の数が減ることで評価値計算を高速に行うことができる。
【０１１４】
【発明の効果】
以上のことから明らかなように、請求項１記載の発明によれば、有限な時間内でより最適な負荷計画を高速に立案することができ、全体のオーダーに対して一括して負荷積みを行うことで、全体としての最適性を考慮できる。つまり、全オーダーを一括して高速にタイムバケットに割り付けることで最適解を生成することができる。しかも、上記異なる遺伝子座を検出して、その遺伝子座の評価のみをやり直して計画候補全体の評価値を計算するので、変化のある部分のみの評価ですみ、評価が高速になる。
【０１１５】
請求項２記載の発明によれば、遺伝子のバイナリビット表現により生産の有無を簡潔に表現できる。
【０１１６】
請求項３記載の発明によれば、遺伝子のキャラクタ表現により生産の有無および生産順序を簡潔に表現できる。
【０１１８】
請求項４記載の発明によれば、変化のある部分の評価が高速になる。
【０１１９】
請求項５記載の発明によれば、類似している部分が多い確率の高い対象との比較により、評価計算量を減らすことができる。
【０１２０】
請求項６記載の発明によれば、差違が小さくなることにより、評価計算量を減らすことができる。
【０１２１】
請求項７記載の発明によれば、新たに作成した染色体と以前に評価した染色体との差違の検出および評価を簡略化することができる。
【０１２２】
請求項８記載の発明によれば、納期遵守を条件とした場合に、計画候補とならない染色体の発生を抑制することにより、望ましい候補をはやく得ることができる。
【０１２３】
請求項９記載の発明によれば、生産開始日がある場合や、許容リードタイムが設定されている場合に、計画候補とならない染色体の発生を抑制することにより、望ましい候補をはやく得ることができる。
【０１２４】
請求項１０記載の発明によれば、同一注文品番がある場合に遺伝子操作と差分の数が減ることで評価値計算を高速に行うことができる。
【０１２５】
請求項１１記載の発明によれば、仕掛在庫を減らし、負荷を平準化した計画の立案が可能になる。
【図面の簡単な説明】
【図１】本発明の第１実施形態に係る負荷計画立案方法の手順を示すフローチャートである。
【図２】図１の「情報入力」において計画立案に必要な情報の例を示す図である。
【図３】タイムバケット割付基準テーブルおよび設備能力テーブルの作成手順の例を示す図である。
【図４】初期固体集合の染色体生成の説明図である。
【図５】評価値計算の説明図である。
【図６】設備負荷評価の計算で得られるテーブルを示す図である。
【図７】遺伝子操作の説明図である。
【図８】評価済み染色体情報の選択の説明図である。
【図９】評価値計算のフローチャートである。
【図１０】評価値計算の説明図ある。
【図１１】本発明の第２実施形態に係る負荷計画立案方法の特徴を示す図である。
【図１２】第２実施形態における評価値計算のサブルーチンを示す図である。
【図１３】図１２のサブルーチンの説明図である。
【図１４】本発明の第３実施形態に係る負荷計画立案方法の特徴を示す図である。
【図１５】本発明の第４実施形態に係る負荷計画立案方法の特徴を示すフローチャートである。
【図１６】図１５の「生成した染色体との演算により類似指数を計算」の説明図である。
【図１７】本発明の第５実施形態に係る負荷計画立案方法の特徴を示す図である。
【図１８】本発明の第６実施形態に係る負荷計画立案方法の特徴を示す図である。
【図１９】本発明の第７実施形態に係る負荷計画立案方法の特徴を示す図である。
【図２０】本発明の第８実施形態に係る負荷計画立案方法の特徴を示す図である。
【図２１】従来の生産計画立案方法で採られる負荷積みの説明図である。
【符号の説明】
Ｓ１０  情報入力
Ｓ１１  タイムバケット割付基準テーブル、設備能力テーブルの作成
Ｓ１２  初期固体集合の染色体生成
Ｓ１３  評価値計算
Ｓ１４  各固体の並びと評価項目毎の評価値を格納
Ｓ１５  ＥＮＤ条件
Ｓ１６  遺伝子操作
Ｓ１７  評価済み染色体情報の選択
Ｓ１８  評価値計算
Ｓ１９  計画候補の選択
Ｓ２０  選択固体のおけるそれぞれの並びと評価項目毎の評価値を格納
【図１】
0003820833.tif 000003
【図２】
0003820833.tif 000004
【図３】
0003820833.tif 000005
【図４】
0003820833.tif 000006
【図５】
0003820833.tif 000007
【図６】
0003820833.tif 000008
【図７】
0003820833.tif 000009
【図８】
0003820833.tif 000010
【図９】
0003820833.tif 000011
【図１０】
0003820833.tif 000012
【図１１】
0003820833.tif 000013
【図１２】
0003820833.tif 000014
【図１３】
0003820833.tif 000015
【図１４】
0003820833.tif 000016
【図１５】
0003820833.tif 000017
【図１６】
0003820833.tif 000018
【図１７】
0003820833.tif 000019
【図１８】
0003820833.tif 000020
【図１９】
0003820833.tif 000021
【図２０】
0003820833.tif 000022
【図２１】
0003820833.tif 000023