(57)【要約】【課題】複数の実装ラインにおいて複数の生産プログラムにより基板を生産するとき、基板生産効率を向上させることが可能な方法を提供する。【解決手段】部品実装機を１台又は複数台連結した実装ライン（１）〜（３）を複数設け、複数の生産プログラム（Ａ）〜（Ｅ）を各実装ラインに割り当てて基板が生産される。生産プログラムを各実装ラインで用いて基板を生産するときに要する生産時間が求められ、各生産プログラムは、その生産プログラムを割り当てられた実装ラインでの生産時間の累計が最も短くなる実装ラインに順次割り当てられる。すべての生産プログラムの割り当て終了後各実装ラインでの累計生産時間が評価され、複数生産プログラムの実装ラインへの割り当てが最適化される。このような構成では、全ての基板が生産を終了するまでの生産時間を短縮し、基板の生産性を向上することができる。【選択図】図９
2006287075.tif 000002
【特許請求の範囲】
【請求項１】
部品実装機を１台又は複数台連結した実装ラインを複数設け、複数の生産プログラムを各実装ラインに割り当てて基板を生産する部品実装機の基板生産最適化方法において、
生産プログラムを各実装ラインで用いて基板を生産するときに要する生産時間を、生産プログラムごとに求め、
生産プログラムを、該生産プログラムを割り当てられた実装ラインでの生産時間の累計が最も短くなる実装ラインに順次割り当て、
すべての生産プログラムの割り当て終了後各実装ラインでの累計生産時間を評価して、生産プログラムの実装ラインへの割り当てを最適化することを特徴とする部品実装機の基板生産最適化方法。
【請求項２】
１つの実装ラインで異なる生産プログラムを用いるときに要する段取り時間を取り入れて前記累計生産時間を求めることを特徴とする請求項１に記載の部品実装機の基板生産最適化方法。
【請求項３】
ユーザが設定する複数の制約条件を考慮して割り当てを行い、累計生産時間を求めることを特徴とする請求項１又は２に記載の部品実装機の基板生産最適化方法。
【請求項４】
生産プログラムの実装ラインへの割り当て順を、遺伝的アルゴリズムを使用して定めることを特徴とする請求項１から３のいずれか１項に記載の部品実装機の基板生産最適化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、部品実装機の基板生産最適化方法、更に詳細には、部品実装機を複数台連結させた実装ラインにおいて、基板を生産する複数の生産プログラムの実装ラインへの割り当てを最適化させる方法に関するものである。
【背景技術】
【０００２】
電子部品（以下、単に部品という）を回路基板に実装する電子部品実装機では、基板生産（部品実装）は、基板種類ごとにその基板を生産する生産プログラムを作成して行われる。各生産プログラムは、実装機上で基板を生産するための各種データを含み、例えば、基板に関するデータ、搭載位置に関するデータ、部品に関するデータ（例えば縦横高さの寸法）、吸着位置に関するデータ、画像認識用の情報、接着剤の塗布に関するデータ等から構成されている。
【０００３】
従来から、基板生産効率を向上させるために、生産プログラムの最適化が行われており、例えば、部品の吸着及び搭載順を最適化して生産タクトが短くなるようにすることが行われている。
【０００４】
また、部品を吸着するヘッド部が部品供給部から回路基板の所定位置に移動する経路を直線化することにより生産タクト時間を短縮することも行われている（特許文献１）。
【０００５】
また、部品を供給するフィーダのランダムな配列を複数生成し、これらの各配列を個体とし、遺伝的アルゴリズムを用いて次々に個体を生成しながら、各個体の評価を行い、評価の高い個体を最適なフィーダ配置として、部品実装を最適化することも行われている（特許文献２、３）。
【特許文献１】特開２００１―９４２９５号公報
【特許文献２】特開平１０―２０９６８１号公報
【特許文献３】特開２０００―２６１１９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
通常、基板の生産は部品実装機を複数台連結させた実装ラインにおいて行われており、従来の生産プログラムの最適化方法は、実装ラインをユーザが一種類のみ選択し、その選択した実装ラインに対して一つの生産プログラム若しくは複数の生産プログラムを最適化するものであった。しかしながら、複数の実装ラインを持つユーザ先においては、どの実装ラインでどの生産プログラムを生産することが効率的であるかを自動的に判断する方法が存在せず、基板生産を複数の実装ラインで行う場合には、生産プログラムのライン振り分けが最適でないと、効率的な基板生産が行われないという問題があった。
【０００７】
従って、本発明は、複数の実装ラインにおいて複数の生産プログラムにより基板を生産するとき、基板生産効率を向上させることが可能な方法を提供することを課題とする。
【課題を解決するための手段】
【０００８】
本発明は、
部品実装機を１台又は複数台連結した実装ラインを複数設け、複数の生産プログラムを各実装ラインに割り当てて基板を生産する部品実装機の基板生産最適化方法において、
生産プログラムを各実装ラインで用いて基板を生産するときに要する生産時間を、生産プログラムごとに求め、
生産プログラムを、該生産プログラムを割り当てられた実装ラインでの生産時間の累計が最も短くなる実装ラインに順次割り当て、
すべての生産プログラムの割り当て終了後各実装ラインでの累計生産時間を評価して、生産プログラムの実装ラインへの割り当てを最適化することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、基板生産を複数の実装ラインで分担させて行うとき、複数の実装ラインに対する複数生産プログラムの割り当てを最適化できるので、複数の生産プログラムによる全ての基板が生産を終了するまでの生産時間を短縮し、基板の生産性を向上することができる。
【発明を実施するための最良の形態】
【００１０】
本発明では、複数の実装ラインに対して、複数の生産プログラムを一括して最適化し、各実装ラインに割り当てる。最適化時には、ユーザーの稼動時間や段取り替え時間などを考慮し、全ての生産プログラムが基板生産を終了するまでの時間が最も短くなるように、各生産プログラムのライン割り当てを行い、またそれらの生産順序をスケジューリングする。以下に、添付図面を参照して本発明を詳細に説明する。
【実施例】
【００１１】
図１には、３つの実装ライン（１）〜（３）が設けられ、５つの生産プログラム（Ａ）〜（Ｅ）を一括して最適化し、各実装ラインに生産プログラムを割り当てて基板生産が行われる状態が図示されている。
【００１２】
実装ライン（１）には、部品実装機１０、１１、１２が、実装ライン（２）には、部品実装機２０、２１、２２が、また、実装ライン（３）には、部品実装機３０、３１、３２が複数連結して配置され、各実装ラインにおいて基板が複数の実装機で分担されて生産される。図１の例では、各実装ラインには、同数の複数（３つ）の部品実装機が連結されているが、実装ラインに１つの部品実装機しか配置されない場合もあり、また各実装ラインに、それぞれ異なる数の部品実装機を設けて基板生産が行われる場合もある。
【００１３】
図２には、部品実装機１０の詳細な構成が図示されており、他の部品実装機１１、１２、２０〜２２、３０〜３２も同様な構成となっている。
【００１４】
部品実装機１０は、全体の部品実装を制御するＣＰＵ４１ａ、各種制御プログラムやデータを格納したＲＯＭ４１ｃ、制御データ、処理データを格納し作業領域を提供するＲＡＭ４１ｂから構成される制御部４１を有している。また、部品実装機１０には、ホストコンピュータ（不図示）との間でデータ送受信が可能なデータ送受信部４６が設けられておりホストコンピュータから送信されてくる生産プログラムは、このデータ送受信部４６を介して受信され、データ記憶部４５に格納される。制御部４１は、ホストコンピュータから送信される生産プログラムのデータ並びにデータ入力部４３を介して入力されるデータに従って、Ｘ／Ｙ駆動部及びその他の駆動部４２を駆動して、吸着ヘッド（不図示）をフィーダに移動させ、そこでフィーダから供給される電子部品を吸着ヘッドにより吸着させる。吸着された部品は、カメラを備えた画像認識部４４で吸着姿勢が認識され、吸着位置ずれが補正された後、基板の所定個所に移動して基板上に実装される。
【００１５】
図１の各生産プログラム（Ａ）〜（Ｅ）は、実装機上で基板を生産するための各種データを含み、例えば、基板に関するデータ、搭載位置に関するデータ、部品に関するデータ（例えば縦横高さの寸法）、吸着位置に関するデータ、画像認識用の情報、接着剤の塗布に関するデータ等から構成されている。１つの基板種は、１つの生産プログラムに従って生産され、図１に示すように、各実装ラインに、生産プログラムが割り当てられた場合には、実装ライン（１）では、３台の部品実装機１０、１１、１２により生産プログラム（Ａ）、（Ｂ）に従って２種類の基板がそれぞれ複数枚生産され、実装ライン（２）では、３台の部品実装機２０、２１、２２により生産プログラム（Ｃ）、（Ｄ）に従って２種類の基板がそれぞれ複数枚生産され、実装ライン（３）では、３台の部品実装機３０、３１、３２により生産プログラム（Ｅ）に従って１種類の基板が複数枚生産される。
【００１６】
本発明では、複数生産プログラムの実装ラインへの割り当てを最適化させて、基板生産の効率を向上させる。まず、最適化の実行以前に、最適化実行時に必要となるプロジェクト情報がユーザにより設定される。この設定されるプロジェクト情報が、図３（Ａ）に表図として図示されており、プロジェクト情報は、「各生産プログラムの生産予定基板枚数」、「段取り時間」、「稼動時間」、「各ラインの生産開始可能日時」であり、その内容が各項目の右側に説明されている。
【００１７】
また、最適化実行時には、最適化により出力される割り当てに対して幾つかの制約条件を設定することにより、ユーザが制御条件を取り入れることができるようになっている。この設定可能な制約条件が、図３（Ｂ）に表図として図示されており、制約条件として、「各生産プログラムの納期」、「生産に必要な部品の在庫状況と部品の納期」、「生産プログラム間の前後関係」、「各生産プログラムのライン指定」があり、その内容が各項目の右側に説明されている。
【００１８】
以上のような条件を元に、複数生産プログラムの複数実装ラインへの割り当てを最適化する。この最適化の流れが図４に図示されており、割り当てパターンの生成に関しては、後述する遺伝的アルゴリズム（Ｇｅｎｅｔｉｃ  Ａｌｇｏｒｉｔｈｍ：ＧＡ）が使用される。
【００１９】
まず、図４のステップＳ１、Ｓ２において、実装ラインの情報及び生産プログラムの情報が読み込まれ、次に、各生産プログラムの各実装ラインにおける生産時間を算出しマトリクス化しておく（ステップＳ３、Ｓ４）。これを、本実施例では、生産時間マトリクスとよび、その内容が図５（Ａ）に示されている。生産時間の算出には、所定の最適化ソフト及びシミュレーションが利用される。既に最適化済みの生産プログラムに対しては、シミュレーションのみを実行することにより計算時間を短縮する。
【００２０】
図５（Ａ）のマトリクス内の値は、各生産プログラムの予定生産枚数を一枚の生産時間に乗算したものであり、例えば、実装ライン（１）において生産プログラム（Ａ）に従って基板の生産を行うと、「３」時間と計算されるが、これは、生産プログラム（Ａ）が実装ライン（１）において１枚の基板を生産する時間とその基板の総生産枚数の積に相当している。また、実装ラインの装備状況により生産が不可能な組合せもあり、その場合には、「生産不可」がマーキングされる。
【００２１】
次に、各生産プログラムを切り替えたときにフィーダ配置替えなどに要する段取り時間のマトリクスを生成する（ステップＳ５）。これは、各生産プログラムのフィーダの類似度（荷姿が同一な部品の割合）及び、ユーザがプロジェクト情報にて設定したデフォルト段取り時間から算出する。
【００２２】
段取り時間＝デフォルト段取り時間×（１−類似度）：類似度は０．０〜１．０
として計算され、デフォルト段取り時間は１ｈ（１時間）、類似度はプログラム（Ａ）とプログラム（Ｂ）が１．０、プログラム（Ｃ）とプログラム（Ｄ）が０．５、それ以外は０．０であった場合の段取り時間マトリクスが、図５（Ｂ）に表図として示されている。例えば、この表図から、生産プログラム（Ａ）と（Ｂ）を切り替えた場合、フィーダの類似度は１.０であるので、フィーダ配置替えなどが不要であり、段取り時間は「０」となることがわかる。
【００２３】
以上のマトリクスを元に、図５（Ａ）、（Ｂ）のプロジェクト情報及び制約条件を読み込み（ステップＳ６、Ｓ７）、あるスケジューリングパターンによる基板の生産時間の評価を行う。スケジューリングパターンはＧＡにより生成する（ステップＳ８）。
【００２４】
ＧＡの一般的な流れ及びその内容が、図６と図７に示されており、ＧＡ処理では、まず、初期集団が生成され（ステップＳ２１）、十分な個体の遺伝子プール８０に発生させる。染色体の初期値は、問題固有のコード化にしたがってランダムに決める。続いて、遺伝子プール８０の中から、ある選択基準で次世代に残す親を２個体決定する（ステップＳ２２）。この選択基準には、例えばルーレット選択、トーナメント選択、ランク方式等が用いられる。次に、選択した親同士の遺伝子を交叉という部分的な交換を行って、子供２個体を生成する（ステップＳ２３）。この交叉には、１点交叉、２点交叉、一様交叉等がある。続いて、突然変異処理を行い、交叉によって得られた子供２個体に対して、任意の位置の遺伝子をランダムに変異させる（ステップＳ２４）。この突然変異は、ある個体の遺伝子座をランダムに変更し、局所解に陥るのを防ぐために設けられる。図７に示したように、突然変異により次世代遺伝子プール８１を生成する。そして、終了条件チェックを行い（ステップＳ２５）、予定していた世代が終了している場合や、ある一定期間、解の改善が見られない場合などに、処理を終了する。終了条件を満たさない場合には、新しい遺伝子プール８１で更新して、ステップＳ２２から繰り返す。
【００２５】
本発明では、生産プログラムの並びを遺伝子の並び（染色体）として表現し、それらをＧＡによって世代交代操作を行い、解の改善を試みる。
【００２６】
本発明において、ＧＡの遺伝子コーディングとしては各生産プログラムの並びを直接遺伝子情報としてコーディングする方法を取る。つまり、図８（Ａ）に示したように、各生産プログラム（Ａ）〜プログラム（Ｅ）に対して一意な番号付け＜１＞〜＜５＞を行うことにより、各生産プログラムに対して遺伝子コード＜１＞〜＜５＞を割り当てる（コーディング）。そして、遺伝子の並びをＧＡにより発生させることにより、図８（Ｂ）に示したような種々の遺伝子コードの並び（生産プログラムの並び）を有する遺伝子パターン（１）、（２）、.....（ｎ）を生成する。
【００２７】
次に、遺伝子パターンを解釈して実際のスケジューリングパターンをガントチャートとして生成し評価を行う（ステップＳ８）。
【００２８】
図９（Ａ）は、生産プログラムの順番を入れ替えたときに段取り時間が発生しないとした場合、つまり図５（Ｂ）の段取り時間マトリックスを考慮しない場合の例である。
【００２９】
まず、図８（Ｂ）に示した遺伝子パターン（１）を生成すると、遺伝子パターン（１）の最初の遺伝子コードは＜３＞であるため、３番目の生産プログラム（Ｃ）をまずガントチャートに割り当てる。その際、図５（Ａ）の生産時間マトリクスから生産プログラム（Ｃ）が最も早く終了する実装ライン、つまり生産時間が最も短くなる実装ラインへと割り当て先を決定する。プログラム（Ｃ）は実装ライン（１）では１０時間、実装ライン（２）では２時間、実装ライン（３）では、６時間であるため、生産時間が最も短い実装ライン（２）へ割当先を決定する。これを、決定順を示す番号を丸印内に数字で示し、生産プログラム（Ａ）〜（Ｅ）をその末尾に付されているアルファベットで示して、ガントチャートに記入すると、図９（Ａ）の実装ライン（２）の最初の２時間分に相当する表示となる。
【００３０】
次に、遺伝子パターン（１）の次の遺伝子コードは＜２＞であるため、２番目の生産プログラム（Ｂ）の割り当てを行う。その際に、２番目の生産プログラムを、各実装ラインに順次割り当て、各割り当てられた実装ラインでの生産時間の累計を求め、その累計が最も短くなる実装ラインに、この２番目の生産プログラム（Ｂ）を割り当てる。生産プログラム（Ｂ）は実装ライン（１）では生産不可、実装ライン（２）では生産時間が４時間、実装ライン（３）では６時間であり、生産プログラム（Ｂ）を実装ライン（２）へ割り当てた場合には、当該実装ラインでの累計生産時間は、既割当時間２時間＋４時間＝６時間となり、実装ライン（３）に有り当てた場合は、そのラインへの割り当ては始めてであり、累計生産時間は、生産プログラム（Ｂ）による生産時間と同じ６時間となる。このように、累計時間が最も短くなるラインが複数ある場合には、その実装ラインがまだ未割り当てである場合には、その実装ラインに、またそうでない場合には、そのいずれかに割り当てる。上記例では、実装ライン（３）は、まだ割り当てがないので、実装ライン（３）に割り当てる。従って、図９（Ａ）のガントチャートでは、実装ライン（３）の丸印内に決定順を示す数字２を付して、６時間分に「Ｂ」（生産プログラム（Ｂ））が記入されている。
【００３１】
次に、遺伝子コードは＜４＞で、４番目の生産プログラム（Ｄ）の割り当てとなる。これを、実装ライン（１）に割り当てた場合の累計生産時間は、そのラインへの割り当てがはじめてであることから、その生産時間と同じになり、１時間となる。一方、実装ライン（２）に割り当てた場合には、既割当時間２時間＋８時間＝１０時間となり、また実装ライン（３）での生産は不可であり、割り当てを行うことができない。従って、実装ライン（１）と（２）のうち、累計生産時間が短い実装ライン（１）に割り当てる。
【００３２】
また、次の遺伝子コード＜５＞に対応する生産プログラム（Ｅ）の割り当ては、実装ライン（１）に割り当てた場合は、累計生産時間が１時間＋１２時間＝１３時間となり、実装ライン（２）への割り当ては不可であり、実装ライン（３）に割り当てた場合は、累計生産時間が６時間＋１０時間＝１６時間となるので、実装ライン（１）と（３）のうち、短いほうの実装ライン（１）に割り当てる。
【００３３】
また、次の遺伝子コード＜１＞に対応する生産プログラム（Ａ）の割り当ては、実装ライン（１）に割り当てた場合は、累計生産時間が１時間＋１２時間＋３時間＝１６時間となり、実装ライン（２）へ割り当てた場合は、累計生産時間が２時間＋２時間＝４時間、実装ライン（３）に割り当てた場合は、累計生産時間が６時間＋５時間＝１１時間となるので、３つの実装ラインのうち、最も短い実装ライン（２）に割り当てる。
【００３４】
このようにして、全生産プログラムを所定順、つまり遺伝子パターン（１）による順に、順次実装ラインに割り当てると、図９（Ａ）に示したスケジューリングパターンが生成される。
【００３５】
遺伝子パターンの評価値としては、全ての生産プログラムの生産終了時間を採用する。このことは、全生産プログラムを所定順に実装ラインに割り当てたとき全ての生産プログラム割り当て終了後の各実装ラインでの累計生産時間のうち最も長い累計生産時間を求めることを意味する。割り当て順が上記遺伝子パターン（１）の場合は、実装ライン（１）における累計生産時間が最も長く、その時間である１３時間が評価値と決定される。以下、ＧＡにより生成される遺伝子パターン（２）、.....（ｎ）の割り当て順に対して、遺伝子パターン（１）と同様なアルゴリズムで、ガントチャートを作成し、各実装ラインでの累計生産時間を求めて評価を行う。
【００３６】
このようにしてすべての遺伝子パターンによる評価値が得られたら、その出力結果を表示して（ステップＳ９）、表価値が最も高い、つまり累計生産時間が最も短いガントチャート（全ての生産プログラムによる生産終了時間が最小になる）に従い、生産プログラムの実装ラインへの割り当てを決定する。例えば、図９（Ａ）に示したガントチャートの例が、最も評価値が高い場合には、実装ライン（１）には、生産プログラム（Ｄ），（Ｅ）が割り当てられ、実装ライン（２）には、生産プログラム（Ｃ），（Ａ）が割り当てられ、実装ライン（３）には、生産プログラム（Ｂ）が割り当てられる。
【００３７】
以上は、一つの実装ラインにおいて生産プログラムを入れ替えたときフィーダ配置に段取りが必要でないときの例であったが、そのために、段取り時間が必要となる場合の最適化の例を説明する。
【００３８】
例えば、上記遣伝子パターン（１）に示す順に従って割り当てを行う場合、遺伝子パターン（１）の最初の遺伝子コードは＜３＞であるため、３番目の生産プログラム（Ｃ）をまずガントチャートに割り当てる。その際、生産時間マトリクスから（Ｃ）が最も早く終了する実装ラインへと割り当て先を決定し、それは実装ライン（２）であるので、図９（Ｂ）に示すように、ガントチャートに記録する。次に、２番目の生産プログラム（Ｂ）の割り当てを行う。その際に、生産プログラム（Ｂ）は実装ライン（１）では生産不可、実装ライン（２）では４時間、実装ライン（３）では６時間であるが、図５（Ｂ）に示す段取り時間マトリクスより、実装ライン（２）へ割り当てた場合には、段取り時間１時間＋生産時間４時間＝５時間が加算分となる。従って、実装ライン（２）では累計生産時間が２時間＋５時間＝７時間、実装ライン（３）では６時間であるため、段取り時間も含めた累計生産時間が最も短い実装ライン（３）へと割り当てを決定する。以下同様に、遺伝子コードに対応する生産プログラムを、累計生産時間が最も短くなる実装ラインへ順次割り当てることにより、図９（Ｂ）に示したスケジューリングが得られる。この割り当ての評価値としては、全ての生産プログラムの生産終了時間、つまり各実装ラインのうち、段取り時間を含めた累計生産時間が最も長い実装ライン（１）での１４時間を採用する。
【００３９】
次に、遺伝子パターン（２）の割り当て順に対して、遺伝子パターン（１）と同様なアルゴリズムで、ガントチャートを作成する（図９（Ｃ））。
【００４０】
遺伝子パターン（２）の最初の遺伝子コードは＜５＞であるため、５番目の生産プログラム（Ｅ）をまず生産時間が最小の実装ライン（３）へと割り当てる。次の遺伝子コードは＜１＞であるため、１番目の生産プログラム（Ａ）の割り当てを行う。実装ライン（１）〜（３）での累計生産時間は、３時間、２時間、１０時間＋５時間＝１５時間であるので、最も短い実装ライン（２）に割り当てられる。次の遺伝子コード＜３＞に対応する生産プログラム（Ｃ）を、実装ライン（１）〜（３）に割り当てると、累計生産時間は、１０時間；２時間＋１時間（段取り時間）＋２時間＝５時間；１０時間＋１時間（段取り時間）＋６時間＝１７時間となるので、累計生産時間が最小の実装ライン（２）に割り当てられる。以下同様に、生産プログラム（Ｄ）、（Ｂ）の割り当てを行うと、図９（Ｃ）に示したガントチャートが得られ、その表価値は最も累計生産時間が長い実装ライン（２）、（３）の１０時間となる。表価値が小さいものが、評価が高くなるので、遺伝子パターン（２）によるガントチャートが、遺伝子パターン（１）によるものより高い評価が得られる。
【００４１】
以下、遺伝子パターン（３）、.....（ｎ）によるガントチャートを作成し、そのうち、累計生産時間が最も長いものどうしを比較し、それが最も短い（表価値が最も高い）ガントチャートに従い、生産プログラムの実装ラインへの割り当てを決定する。
【００４２】
一方、図３（Ｂ）に示すような制約条件が設定されている場合には、ガントチャートヘの割り当てを行う際にそれらが考慮される。たとえば、上述の遺伝子パターン（２）の場合に、
制約条件（１）：生産プログラム（Ｅ）は（Ａ）よりも先に完了しなければならない
制約条件（２）：生産プログラム（Ｄ）は４時間後でなければ生産が開始できない
の制約条件があると、生産プログラム（Ａ）の割り当ては生産プログラム（Ｅ）の完了を待たなければならない。従って、図９（Ｄ）に示したように、生産プログラム（Ｅ）の実装ライン（３）への割り当て終了後、そのプログラムによる生産が終了する１０時間後に、生産プログラム（Ａ）の生産時間が最小となる実装ライン（２）に、生産プログラム（Ａ）を割り当てる。
【００４３】
次の遺伝子コード＜３＞に相当する生産プログラム（Ｃ）は、その生産時間が最小の実装ライン（２）の空き時間へ割り当てられ、次の遺伝子コード＜４＞の生産プログラム（Ｄ）の割り当てを行うが、制約条件（２）により、４時間あとに、その生産時間が最小の実装ライン（１）へと割り当てが決定される。以下同様に、全ての遺伝子コードに対して割り当てを決定すると、図９（Ｄ）に示したようなスケジューリングパターンが得られる。
【００４４】
他の制約条件に関しても、上記例と同様にガントチャートヘの配置時に考慮されて割り当てが実行される。ここで、制約条件を満たすようなスケジューリングが行えないような場合には、そのような遺伝子コードをＧＡにおける致死遺伝子とみなし、その個体の評価値が最悪（評価値が取り得る値の最大値）となるように操作する。致死遺伝子とすることで、ＧＡにおける選択、淘汰のメカニズムにより正常な解のみが残るようにする。
【図面の簡単な説明】
【００４５】
【図１】本発明で使用される実装システムの構成を示す構成図である。
【図２】部品実装機の詳細な構成を示すブロック図である。
【図３】（Ａ）はプロジェクト情報を示す表図、（Ｂ）は制約条件を示す表図である。
【図４】本発明による最適化の流れを示すフローチャートである。
【図５】（Ａ）は生産時間マトリクスを示す表図、（Ｂ）は段取り時間マトリクスを示す表図である。
【図６】遺伝的アルゴリズムの基本的な流れを示すフローチャートである。
【図７】遺伝的アルゴリズムの詳細な流れを示す流れ図である。
【図８】遺伝子パターンの生成を説明する表図である。
【図９】種々の遺伝パターンによる生産プログラムの割り当てを示すガントチャートである。
【符号の説明】
【００４６】
１０、１１、１２  部品実装機
２０、２１、２２  部品実装機
３０、３１、３２  部品実装機
【図１】
2006287075.tif 000003
【図２】
2006287075.tif 000004
【図３】
2006287075.tif 000005
【図４】
2006287075.tif 000006
【図５】
2006287075.tif 000007
【図６】
2006287075.tif 000008
【図７】
2006287075.tif 000009
【図８】
2006287075.tif 000010
【図９】
2006287075.tif 000011