(57)【要約】  生産ラインの生産計画を生成する際の処理負荷を軽減するため、基板物量情報収集部（３０）及び生産情報収集部（３２）が、基板物量情報及び生産情報を取得し、基板グループ最適化部（３６）、部品割り当て最適化部（３８）、及び製造順最適化部（４０）が、基板物量情報及び生産情報に基づいて、基板の生産を完了するまでの所要時間に影響を与える複数の要素（基板グループ、部品割り当て、基板製造順）を段階的に最適化する。
2018198246.tif 000002
【特許請求の範囲】
【請求項１】
基板の生産に関する情報と、前記基板に部品を実装する実装ラインの設備情報と、を取得する取得部と、
前記基板の生産に関する情報と、前記実装ラインの設備情報と、に基づいて、前記基板の生産を完了するまでの所要時間に影響を与える複数の要素を段階的に最適化する処理部と、
を備える生産計画生成装置。
【請求項２】
前記処理部は、前記基板のグループ分けの最適化、部品をセットするマウンタに対する部品割り当ての最適化、前記基板の製造順の最適化、の順に処理を実行する、ことを特徴とする請求項１に記載の生産計画生成装置。
【請求項３】
前記処理部は、前記基板のグループ分けの最適化、および前記マウンタに対する部品割り当ての最適化において、前記マウンタに搭載する台車に対する部品のフィーダの配置を最適化する、ことを特徴とする請求項２に記載の生産計画生成装置。
【請求項４】
前記処理部は、前記基板の製造順の最適化において、前記実装ラインに投入される基板の大きさが変わる回数の最小化、および前記実装ラインに基板が投入される単位時間当たりの枚数のばらつきの最小化、の少なくとも一方を行う、ことを特徴とする請求項２又は３に記載の生産計画生成装置。
【請求項５】
前記処理部は、前記複数の要素を最適化するときに、整数計画問題として定式化し、整数計画問題ソルバを利用して最適化を行うことを特徴とする請求項１〜４のいずれか一項に記載の生産計画生成装置。
【請求項６】
基板の生産に関する情報と、前記基板に部品を実装する実装ラインの設備情報と、を取得し、
前記基板の生産に関する情報と、前記実装ラインの設備情報と、に基づいて、前記基板の生産を完了するまでの所要時間に影響を与える複数の要素を段階的に最適化する、
処理をコンピュータに実行させるための生産計画生成プログラム。
【請求項７】
前記最適化する処理では、前記基板のグループ分けの最適化、部品をセットするマウンタに対する部品割り当ての最適化、前記基板の製造順の最適化、の順に処理を実行する、ことを特徴とする請求項６に記載の生産計画生成プログラム。
【請求項８】
前記基板のグループ分けの最適化、および前記マウンタに対する部品割り当ての最適化において、前記マウンタに搭載する台車に対する部品のフィーダの配置を最適化する、ことを特徴とする請求項７に記載の生産計画生成プログラム。
【請求項９】
前記基板の製造順の最適化において、前記実装ラインに投入される基板の大きさが変わる回数の最小化、および前記実装ラインに基板が投入される単位時間当たりの枚数のばらつきの最小化、の少なくとも一方を行う、ことを特徴とする請求項７又は８に記載の生産計画生成プログラム。
【請求項１０】
前記複数の要素を最適化するときに、整数計画問題として定式化し、整数計画問題ソルバを利用して最適化を行うことを特徴とする請求項６〜９のいずれか一項に記載の生産計画生成プログラム。
【請求項１１】
基板の生産に関する情報と、前記基板に部品を実装する実装ラインの設備情報と、を取得し、
前記基板の生産に関する情報と、前記実装ラインの設備情報と、に基づいて、前記基板の生産を完了するまでの所要時間に影響を与える複数の要素を段階的に最適化する、
処理をコンピュータが実行することを特徴とする生産計画生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、生産計画生成装置、生産計画生成プログラム及び生産計画生成方法に関する。
【背景技術】
【０００２】
近年の市場の変化、顧客ニーズの多様化に柔軟に対応するため、多品種少量生産によるものづくりが行われている。基板に部品を実装する生産ライン（ＳＭＴ（(Surface Mounting Technology）ライン）においても多品種少量生産が行われている。【０００３】
従来、基板生産に関し、生産効率の向上や作業時間の短縮化、段取り作業負荷の低減を図るための技術が知られている（例えば、特許文献１等参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−１９１６７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＳＭＴラインにおける生産計画を立案する場合、生産を開始してから終了するまでに要する所要時間に影響を与える要素を最適化することで、製造時間を最小化する必要がある。このためには、製造予定の基板やＳＭＴラインに関連する変数の組み合わせ最適化問題を解く必要がある。【０００６】
しかしながら、所要時間に影響を与える要素は互いに関連しており、要素間でトレードオフの関係にあるものもある。例えば、基板に対する部品の搭載時間と、部品を収めた台車（ＳＭＴライン内のマウンタに対して入れ替え可能な台車）を準備する時間（外段取り時間）は、トレードオフの関係にある。【０００７】
したがって、所要時間に影響を与える要素を決定する場合、要素の組合せは膨大なものとなるため、組合せ爆発対策を行う必要がある。【０００８】
１つの側面では、本発明は、生産ラインの生産計画を生成する際の処理負荷を軽減することが可能な生産計画生成装置、生産計画生成プログラム及び生産計画生成方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
一つの態様では、生産計画生成装置は、基板の生産に関する情報を取得する取得部と、前記基板に部品を実装する実装ラインの設備情報に基づいて、前記基板の生産を完了するまでの所要時間に影響を与える複数の要素を段階的に最適化する処理部と、を備えている。
【発明の効果】
【００１０】
生産ラインの生産計画を生成する際の処理負荷を軽減することができる。
【図面の簡単な説明】
【００１１】
【図１】一実施形態に係る生産システムの構成を概略的に示す図である。
【図２】生産ラインが有する表面実装ラインを示す図である。
【図３】部品搭載時間、外段取り時間、外段取り待ち時間について説明するための図である。
【図４】サーバのハードウェア構成を示す図である。
【図５】サーバの機能ブロック図である。
【図６】基板物量情報ＤＢのデータ構造を示す図である。
【図７】図７（ａ）は、生産情報ＤＢの搭載部品情報テーブルのデータ構造を示す図であり、図７（ｂ）は、生産情報ＤＢのマウンタ情報テーブルのデータ構造を示す図である。
【図８】図８（ａ）は、生産情報ＤＢの台車位置情報テーブルのデータ構造を示す図であり、図８（ｂ）は、生産情報ＤＢの使用チャンネル数テーブルのデータ構造を示す図である。
【図９】図９（ａ）は、生産計画情報ＤＢの基板グループテーブルのデータ構造を示す図であり、図９（ｂ）は、生産計画情報ＤＢの部品割り当てテーブルのデータ構造を示す図である。
【図１０】図１０（ａ）は、生産計画情報ＤＢの外段取り計画テーブルのデータ構造を示す図であり、図１０（ｂ）は、生産計画情報ＤＢの基板グループ製造順テーブルのデータ構造を示す図である。
【図１１】サーバの処理を示すフローチャートである。
【図１２】図１１のステップＳ１０の処理の詳細を示すフローチャートである。
【図１３】図１１のステップＳ１２の処理の詳細を示すフローチャートである。
【図１４】図１１のステップＳ１４の処理の詳細を示すフローチャートである。
【図１５】図１５（ａ）、図１５（ｂ）は、外段取り待ち時間の最小化処理について説明するための図である。
【図１６】図１６（ａ）〜図１６（ｃ）は、図１４の処理の結果を説明するための図である。
【図１７】工数ばらつき平準化処理の効果を説明するための図である。
【図１８】変形例を示す図である。
【発明を実施するための形態】
【００１２】
以下、生産システムの一実施形態について、図１〜図１７に基づいて詳細に説明する。
【００１３】
図１には、一実施形態に係る生産システム１００の構成が概略的に示されている。図１に示すように、本実施形態の生産システム１００は、生産ライン７０と、生産計画生成装置としてのサーバ１０と、作業者用端末６０とを備える。生産ライン７０とサーバ１０と作業者用端末６０とは、ネットワーク８０に接続されている。
【００１４】
生産ライン７０は、一例として、図２に示すような表面実装ライン２０を有するものとする。表面実装ライン２０は、プリント基板（以下、単に「基板」と呼ぶ）に部品を実装するためのライン（ＳＭＴライン）であり、基板ローダ、ハンダ印刷機、印刷検査機、マウンタライン、実装検査機、リフロー炉、外観検査機、アンローダ等を備え、各装置間は、コンベアで接続されている。表面実装ライン２０は、基板に部品を実装する複数のマウンタを有する。
【００１５】
基板ローダは、コンベア上に基板をロードする。ハンダ印刷機は、基板上の所定の箇所にハンダを印刷する。印刷検査機は、基板上のハンダの検査を行う。印刷検査機による検査に合格した基板は、マウンタラインに搬送され、マウンタラインでは、各マウンタにおいて電子部品などの表面実装部品（以下、単に「部品」と呼ぶ）を基板上の印刷されたハンダ上に表面実装する。実装検査機は、基板上の部品の実装に不具合がないか検査する。リフロー炉は、検査に合格した基板に対してリフローを行うことで、部品を基板に固定する。外観検査機は、基板の外観に不具合がないか検査する。アンローダは、検査に合格した基板をコンベアから取り出す。
【００１６】
なお、各表面実装ライン２０（ＳＭＴライン）においては、生産計画において予め定められた順番に沿って基板を処理するものとする。
【００１７】
ここで、表面実装ライン２０には、以下のような設備制約がある。
（１）  基板に搭載する部品種は、部品供給装置（フィーダ）を用いてマウンタ用台車（表面実装部品供給用台車）に準備し、マウンタ用台車をマウンタに設置することで基板への部品搭載を行う。なお、マウンタ用台車に部品を準備する作業のことを「外段取り」と呼ぶ。
（２）  マウンタで基板に搭載する部品種を交換するときは、台車単位での交換となる。なお、図２の左から２つ目のマウンタのように、１つのマウンタに複数の台車が設置される場合もある。
（３）  同じ基板に搭載する部品種全てがマウンタライン内のいずれかの台車に配置されている必要がある。すなわち、同一の基板の製造を行っている間はいずれのマウンタにおいても台車を交換することはできない。また、ある基板の製造を開始する前に外段取りが終了していないと該基板の製造を開始できない。このような外段取りが終了するまで基板の製造開始を待つ時間を、以下においては「外段取り待ち時間」と呼ぶ。例えば、図３に示すように、基板ａ，ｂ，ｃ用の外段取りが終了するまでの間は、基板ａ，ｂ，ｃへの部品搭載ができないので、外段取り待ち時間が発生する。また、基板ａ，ｂ，ｃへの部品搭載を行っている間に、並行して次の基板ｄ，ｅ用の外段取りを行うことはできる。しかしながら、基板ａ，ｂ，ｃへの部品搭載が終わった後、基板ｄ，ｅ用の外段取りが終わるまでは、外段取り待ち時間が発生するため、基板ｄ，ｅへの部品搭載はできない。なお、図３の基板ａ，ｂ，ｃや基板ｄ，ｅ、基板ｆ，ｇ，ｈのまとまりは、マウンタそれぞれにセットされた部品を変更することなく連続して製造できる基板のまとまりであり、「基板グループ」である。
（４）  台車一台に準備できる部品種（フィーダ）には制限がある。なお、フィーダは、部品をマウンタに供給する装置であり、１つのフィーダで１種類の部品を供給する。フィーダへの部品の供給はリール等で行う。フィーダの部品がなくなった場合には新たなリール等をフィーダに設置する。
（５）  フィーダの配置順により、台車のチャンネル使用量が異なる。これはフィーダの物理的な形状による干渉のため、隣り合うフィーダの組によって、フィーダ間に必要な最小限の隙間が異なるからである。したがって、１つの台車に収まるフィーダの数は、フィーダの配置順によって異なることになる。
（６）  部品種毎に外段取り時間が異なる。
【００１８】
最近、表面実装ラインでは、多品種少量生産が行われることが多い。表面実装ラインにおいては、生産計画に含まれる全ての基板を製造する際に用いる全ての部品種を表面実装ラインに一度に設置することができず、台車の入れ替えを行う必要がある。この場合、搭載する部品が似通った基板をできるだけグループ化し、基板グループ内で共通の台車を用いるようにすれば、準備する台車の総数が減り、外段取り作業時間を短縮することができる。また、基板に搭載する部品の割り当て（どのマウンタのどの台車位置から基板にどの部品を何個搭載するか）によって、表面実装ラインでの基板への部品搭載時間（製造時間）が異なる。また、基板グループの製造順を変えることで、外段取り待ち時間も変わる。
【００１９】
なお、一部のマウンタは台車が固定され、生産の開始から完了まで台車を変更することができないものもある。したがって、そのマウンタから搭載できる部品は生産の開始時点で台車に搭載されている部品種に限られる。このようなマウンタ、台車を、「固定マウンタ」、「固定台車」と呼び、固定マウンタでないマウンタを「段取りマウンタ」、固定台車でない台車を「段取り台車」と呼ぶものとする。
【００２０】
図１に戻り、サーバ１０は、予め定められている基板物量情報や生産情報に基づいて、生産ライン７０に含まれる表面実装ライン２０の生産計画を立案する。またサーバ１０は、立案した生産計画を生産ライン７０や作業者用端末６０に送信する。
【００２１】
図４には、サーバ１０のハードウェア構成が示されている。図４に示すように、サーバ１０は、ＣＰＵ（Central Processing Unit）９０、ＲＯＭ（Read Only Memory）９２、ＲＡＭ（Random Access Memory）９４、記憶部（ここではＨＤＤ（Hard Disk Drive））９６、ネットワークインタフェース９７、及び可搬型記憶媒体用ドライブ９９等を備えている。これらサーバ１０の構成各部は、バス９８に接続されている。サーバ１０では、ＲＯＭ９２あるいはＨＤＤ９６に格納されているプログラム（生産計画生成プログラムを含む）、或いは可搬型記憶媒体用ドライブ９９が可搬型記憶媒体９１から読み取ったプログラム（生産計画生成プログラムを含む）をＣＰＵ９０が実行することにより、図５に示す、各部としての機能が実現される。なお、ＣＰＵに限らず、ＭＰＵ（Micro Processing Unit）等がプログラムを実行することにより各部の機能が実現されてもよい。また、例えば、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field Programmable Gate Array）等の集積回路により各部の機能が実現されてもよい。なお、図５には、サーバ１０のＨＤＤ９６等に格納されている基板物量情報ＤＢ（database）５２、生産情報ＤＢ５４も図示されている。
【００２２】
図５には、サーバ１０の機能ブロック図が示されている。ＣＰＵ９０は、プログラムを実行することにより、図５に示す、基板物量情報収集部３０、生産情報収集部３２、制御部３４、基板グループ最適化部３６、部品割り当て最適化部３８、製造順最適化部４０、生産計画出力部４６、として機能する。
【００２３】
基板物量情報収集部３０は、基板物量情報ＤＢ５２から基板物量情報を収集し、制御部３４に送信する。基板物量情報には、基板の生産に関する情報として、各基板を何枚製造するかの情報や各基板の幅の情報が含まれる。図６には、基板物量情報ＤＢ５２のデータ構造の一例が示されている。図６に示すように、基板物量情報ＤＢ５２は、「基板」、「枚数」、「基板幅」の各フィールドを有する。
【００２４】
図５に戻り、生産情報収集部３２は、生産情報ＤＢ５４から生産情報を収集し、制御部３４に送信する。生産情報ＤＢ５４には、基板の生産に関する情報と、基板に部品を実装する表面実装ライン２０の設備情報が含まれる。具体的には、生産情報ＤＢ５４には、図７（ａ）に示す搭載部品情報テーブル１５４Ａ、図７（ｂ）に示すマウンタ情報テーブル１５４Ｂ、図８（ａ）に示す台車位置情報テーブル１５４Ｃ、及び図８（ｂ）に示す使用チャンネル数テーブル１５４Ｄ、が含まれている。
【００２５】
搭載部品情報テーブル１５４Ａは、各基板にどの部品を何個搭載するかをまとめたテーブルであり、図７（ａ）に示すように、「基板」、「部品」、「１枚当たりの搭載数」の各フィールドを有する。例えば、図７（ａ）では、１枚の基板Ａに対し、部品１を１個、部品２を５個、部品３を２０個、部品４を４００個搭載するという情報などが格納されている。
【００２６】
マウンタ情報テーブル１５４Ｂは、各マウンタにセット可能な台車の情報を管理するテーブルである。マウンタ情報テーブル１５４Ｂは、図７（ｂ）に示すように、「マウンタ」、「台車位置」、「台車のチャンネル数」、「固定／段取り」の各フィールドを有する。図７（ｂ）においては、例えば、マウンタ１に、台車のチャンネル数が５０の段取り台車（台車位置１）をセットできるという情報や、マウンタ２にチャンネル数が３０の段取り台車（台車位置２＿１、２＿２）をセットできるという情報などが格納されている。なお、「台車位置」とは、マウンタの台車をセットする位置を意味する。「固定／段取り」のフィールドには、台車が固定台車であるか、段取り台車であるかの情報が格納されている。
【００２７】
台車位置情報テーブル１５４Ｃは、台車位置それぞれの情報を管理するテーブルである。台車位置情報テーブル１５４Ｃは、図８（ａ）に示すように、「台車位置」、「部品」、「１個あたり搭載時間」、「部品が使用するチャンネル数」、「部品の外段取り時間」の各フィールドを有する。台車位置情報テーブル１５４Ｃでは、各台車位置に各部品を準備した場合に、部品１個を基板へ搭載するのにどの程度の時間がかかるか、又は搭載できないかの情報や、部品が使用する台車のチャンネル数がいくつあり、部品の外段取り時間の長さがどの程度であるのかの情報が格納されている。
【００２８】
使用チャンネル数テーブル１５４Ｄは、各台車の各位置に部品（フィーダ）を設置した場合に、チャンネルをいくつ使用するかの情報を管理するテーブルである。使用チャンネル数テーブル１５４Ｄは、図８（ｂ）に示すように、「台車位置」、「左側部品」、「右側部品」、「右側部品が使用するチャンネル数」の各フィールドを有する。使用チャンネル数テーブル１５４Ｄは、「台車位置」のフィールドに格納されている位置に「右側部品」のフィールドに格納されている部品を準備する場合の使用チャンネル数が格納されている。使用チャンネル数テーブル１５４Ｄでは、部品の左側に隣接する部品（「左側部品」のフィールドに格納されている部品）に応じて使用チャンネル数が異なることが示されている。なお、「左側部品」のフィールドに「−」が格納されている場合、「右側部品」のフィールドに格納されている部品が台車のチャンネル部分の左端に配置された場合を示している。
【００２９】
図５に戻り、制御部３４は、サーバ１０の各機能（各部）の処理を統括的に制御する。例えば、制御部３４は、基板物量情報収集部３０及び生産情報収集部３２が収集したデータ等を適切なタイミングで、各部３６、３８、４０、４６に送信したり、各部に適切なタイミングで処理を実行させたりする。
【００３０】
基板グループ最適化部３６、部品割り当て最適化部３８、及び製造順最適化部４０は、制御部３４の指示の下、処理を実行し、処理結果を制御部３４を介して生産計画情報ＤＢ５６に格納する。具体的には、生産計画情報ＤＢ５６には、図９（ａ）の基板グループテーブル１５６Ａ、図９（ｂ）の部品割り当てテーブル１５６Ｂ、図１０（ａ）の外段取り計画テーブル１５６Ｃ、図１０（ｂ）の基板グループ製造順テーブル１５６Ｄ、が含まれる。なお、図９（ａ）〜図１０（ｂ）の各テーブルの詳細については、後述する。
【００３１】
基板グループ最適化部３６は、基板に搭載する部品を同時にマウンタに設置でき、基板数（基板の種類数）が最も多くなる基板の組み合わせを求め、求めた基板の組み合わせを基板グループとする。基板グループ最適化部３６は、整数計画問題として定式化し、ＧＬＰＫ（GNU Linear Programming Kit）等の整数計画問題ソルバを用いて基板グループの最適化処理を実行する。また、基板グループ最適化部３６は、基板グループについて、部品（フィーダ）のすべてが台車に収まるか否かを、フィーダ配置最適化問題として整数計画問題ソルバを用いて判定する。なお、基板グループ最適化部３６の処理の詳細については、後述する。基板グループ最適化部３６の処理結果は、図９（ａ）の基板グループテーブル１５６Ａに格納される。基板グループテーブル１５６Ａには、各基板グループにどの基板が属しているかの情報が格納される。
【００３２】
部品割り当て最適化部３８は、基板グループごとに、その基板グループの搭載時間合計が最小になるように、マウンタへの部品割り当て（どのマウンタからどの部品を何個搭載するか）を整数計画問題ソルバを用いて最適化する。また、部品割り当て最適化部３８は、マウンタへの部品割り当てを最適化した結果、部品（フィーダ）のすべてが台車に収まるか否かを、フィーダ配置最適化問題として整数計画問題ソルバを用いて判定する。なお、部品割り当て最適化部３８の処理の詳細については、後述する。部品割り当て最適化部３８の処理結果は、図９（ｂ）の部品割り当てテーブル１５６Ｂと、図１０（ａ）の外段取り計画テーブル１５６Ｃに格納される。部品割り当てテーブル１５６Ｂには、各基板に搭載する各部品がどのマウンタのどの台車位置に搭載され、各基板に各部品を何個搭載するかの情報が格納される。外段取り計画テーブル１５６Ｃには、各基板グループに対して、どのマウンタのどの台車のどのチャンネル位置にどの部品を収めるかの情報が格納される。なお、図１０（ａ）の「チャンネル位置」のフィールドには、各部品のフィーダを台車に左から詰めて配置した場合における、左から数えた配置順が格納される。
【００３３】
製造順最適化部４０は、製造開始から製造完了までの時間を最小化するように、整数計画問題ソルバを用いて基板グループの製造順を最適化する。また、製造順最適化部４０は、基板グループの製造順を最適化した後、基板グループの製造順を固定したまま、マウンタを流れる基板の幅の変化の回数が最小になるように、すなわち基板が通過するレーンの幅の切り替え作業の回数が最小になるように、整数計画問題ソルバを用いて、基板グループ内での基板の製造順を最適化する。さらに、製造順最適化部４０は、基板の幅の変化の回数を維持したまま、表面実装ライン２０の後の工程に出力する単位時間当たりの基板の枚数を平準化するように、整数計画問題ソルバを用いて、基板グループ内での基板の製造順を最適化する。なお、製造順最適化部４０の処理の詳細については、後述する。製造順最適化部４０の処理結果は、図１０（ｂ）の基板グループ製造順テーブル１５６Ｄに格納される。図１０（ｂ）の基板グループ製造順テーブル１５６Ｄには、各グループの製造順が格納される。また、製造順最適化部４０は、処理結果に基づいて、図９（ａ）の基板グループテーブル１５６Ａの基板の並び順を製造順に並べ替える。
【００３４】
生産計画出力部４６は、制御部３４の指示の下、生産計画情報ＤＢ５６に格納されている情報（生産計画）を、作業者用端末６０に送信したり、生産ライン７０に送信したりする。
【００３５】
なお、生産計画には、上述したように、どの基板にどのマウンタからどの部品を何個搭載するか、基板をどういう順番で製造するか、いつマウンタの台車を入れ替えるか、入れ替える台車にどの部品を準備（配置）するか、等の情報が含まれている。生産計画により、基板への部品搭載時間、台車に部品を準備（配置）する時間（外段取り時間）、搭載に必要な部品の外段取り（台車への準備）が終わっていない場合の外段取り待ち時間、が変化し、製造時間が変わる。このため、サーバ１０では、製造時間が短くなるように適切な生産計画を作成する。
【００３６】
図１に戻り、作業者用端末６０は、作業者が携帯したり、生産ライン７０近傍に設置される端末であり、ＰＣ（Personal Computer）、タブレット型端末、スマートフォン等であるものとする。作業者用端末６０は、ディスプレイを備えており、サーバ１０で決定された生産計画を表示することで、作業者による作業を支援する。
【００３７】
（サーバ１０による生産計画決定処理）
以下、サーバ１０による生産計画決定処理について、図１１〜図１４のフローチャートに沿って、その他図面を参照しつつ詳細に説明する。
【００３８】
図１１の処理が実行されるのは、新たな基板の生産計画を立案する必要があるタイミングであり、例えば、生産ライン７０における１日の操業が開始される前のタイミング等である。
【００３９】
図１１の処理では、基板グループ最適化処理（Ｓ１０）、マウンタの部品割り当て最適化処理（Ｓ１２）、製造順最適化処理（Ｓ１４）が段階的に実行される。以下、各処理の詳細について説明する。
【００４０】
（基板グループ最適化処理（Ｓ１０））
基板グループ最適化処理は、基板グループ最適化部３６が実行する処理であり、具体的には図１２のフローチャートに沿った処理である。
【００４１】
図１２の処理では、まず、ステップＳ２０において、基板グループ最適化部３６は、基板グループの基板数を最大化する処理を実行する。基板グループ最適化部３６は、以下のように、入力変数、決定変数、目的関数、制約条件を定めて、整数計画問題として定式化する。
【００４２】
（入力変数）
（１）  Ｏfp：台車ｆに部品ｐのフィーダを設置した場合の使用チャンネル数。
（２）  Ｍf：台車ｆの上限チャンネル数。
ただし、（１）のＯfpは、部品ｐのフィーダを台車ｆに設置したときに使用するチャンネル数の仮の値（台車位置情報テーブル１５４Ｃの「部品が使用するチャンネル数」のフィールドの値）であるものとする。
【００４３】
（決定変数）
（１）  Ｇd：基板ｄを基板グループに入れるときに１が設定され、基板グループに入れないときに０が設定される。
（２）  Ｓfp：台車ｆに部品ｐを設置するときに１が設定され、設置されないときに０が設定される。
【００４４】
（目的関数（最大化））
目的関数は、グループ化する基板ｄの数であり、次式（１）で表される。
【００４５】
【数１】
2018198246.tif 000003
【００４６】
（制約条件）
（１）  部品の充足制約：基板グループに入れる基板に搭載する部品は台車に設置されなければならない。
（２）  チャンネル容量制約：台車ｆに設置した部品の使用チャンネル数の総和が台車ｆの上限チャンネル数を超えてはならない。
【００４７】
基板グループ最適化部３６は、目的関数が最大となるように整数計画問題ソルバを用いて整数計画問題を解くことで、各変数の値を決定する。
【００４８】
次いで、ステップＳ２２に移行すると、基板グループ最適化部３６は、フィーダ配置を最適化する処理を実行する。前述したステップＳ２０では、Ｏfpとして、部品ｐのフィーダを台車ｆに設置したときに使用するチャンネル数の仮の値を設定したため、実際に部品ｐのフィーダが台車ｆに設置できるとは限らない。台車に並べる部品の並び順により、使用チャンネル数が異なるためである。したがって、基板グループ最適化部３６は、本ステップＳ２２において、使用チャンネルが最小となる並び順を見つける。
【００４９】
この場合、基板グループ最適化部３６は、以下のように、入力変数、決定変数、目的関数、制約条件を定めて、最短ハミルトン路問題として定式化する。
【００５０】
（入力変数）
（１）  Ｏpq：部品ｐの右側に部品ｑを隣接して設置する場合に使用するチャンネル数。
（２）  Ｑp：部品ｐを左端に設置する場合に使用するチャンネル数。
【００５１】
（決定変数）
（１）  ｓpq：部品ｐの右側に部品ｑを隣接して設置するときに１が設定され、そうでないときに０が設定される。
（２）  ｌp：部品ｐが左端のときに１が設定され、そうでないときに０が設定される。
【００５２】
（目的関数（最小化））
目的関数は、使用チャンネル数の総和であり、次式（２）で表される。
【００５３】
【数２】
2018198246.tif 000004
【００５４】
（制約条件）
（１）  一列の制約：左端から右端まで一列に部品が並んでいなければならない。またすべての部品が必ず一度だけ、列に含まれなければならない。
【００５５】
基板グループ最適化部３６は、目的関数が最小となるように整数計画問題ソルバを用いて最短ハミルトン路問題を解くことで、各変数の値を決定する。
【００５６】
上記のようにして、ステップＳ２２の処理が行われた後は、ステップＳ２４に移行し、基板グループ最適化部３６は、フィーダを台車に配置可能か否かを判断する。この場合、上述したステップＳ２２では、最小の使用チャンネル数の総和が求まるため、この最小の使用チャンネル数の総和と台車のチャンネル数とを比較し、次式（３）を満たす場合に、基板グループ最適化部３６はフィーダを台車に配置できると判断する。
最小の使用チャンネル数の総和≦台車のチャンネル数      …（３）
【００５７】
ステップＳ２４の判断が否定された場合には、ステップＳ２６に移行し、基板グループ最適化部３６は、台車のチャンネル数（上限チャンネル数Ｍf）を減らして（例えば１減らして）、ステップＳ２０に戻る。ステップＳ２０に戻った場合、ステップＳ２４の判断が肯定されるまで、ステップＳ２０〜Ｓ２６を繰り返し実行する。
【００５８】
一方、ステップＳ２４の判断が肯定された場合には、ステップＳ２８に移行する。ステップＳ２８では、基板グループ最適化部３６は、基板グループを確定する。基板グループ最適化部３６は、ステップＳ２８において確定した基板グループの情報を制御部３４を介して、生産計画情報ＤＢ５６（基板グループテーブル１５６Ａ（図９（ａ）））に格納する。そして、ステップＳ３０に移行すると、基板グループ最適化部３６は、これまでに確定した基板グループに含まれていない基板があるか否かを判断する。このステップＳ３０の判断が肯定された場合には、ステップＳ３２に移行し、確定した基板グループに含まれる基板を除外した上で、ステップＳ２０に戻る。ステップＳ２０に戻った場合、基板グループ最適化部３６は、残りの基板を用いて、上述した処理と同様の処理を実行する。
【００５９】
そして、すべての基板が基板グループに含まれた場合には、ステップＳ３０の判断が否定され、図１２（Ｓ１０）の全処理を終了し、図１１のステップＳ１２に移行する。
【００６０】
（マウンタの部品割り当て最適化処理（Ｓ１２））
次に、部品割り当て最適化部３８が実行する、図１１のステップＳ１２の処理（マウンタの部品割り当て最適化処理）について、図１３のフローチャートに沿って説明する。
【００６１】
図１３の処理では、まず、ステップＳ４０において、部品割り当て最適化部３８は、ステップＳ１０において確定した基板グループのうちの１つを選択する。
【００６２】
次いで、ステップＳ４２では、基板グループ搭載時間を最小化する処理を実行する。本処理では、選択した基板グループの搭載時間の合計が最小になるように、マウンタへの部品割り当てを最適化する。具体的には、部品割り当て最適化部３８は、以下のように、入力変数、決定変数、目的関数、制約条件を定めて、整数計画問題として定式化する。
なお、基板ｄに搭載が必要な部品ｐが固定台車ｆに割り当てられている場合は、固定台車ｆから基板ｄに部品ｐを搭載数だけ搭載するとして、決定変数Ｓfdpは予め（最適化前に）固定値としておく。
【００６３】
（入力変数）
（１）  Ｍf：台車ｆの上限チャンネル数。
（２）  ＴＳdp：基板ｄに搭載する部品ｐの総搭載数。
（３）  Ｃfp：台車ｆに部品ｐを設置した場合のマシンサイクルタイム。
（４）  Ｏfp：台車ｆに部品ｐを設置した場合の使用チャンネル数。
（５）  Ｑd：基板ｄの製造予定枚数。
上記（３）のマシンサイクルタイムとは、台車のｆの部品ｐを１つ基板に搭載するのに要する時間を意味する。また、（４）のＯfpは、前述したように、部品ｐのフィーダを台車ｆに設置したときに使用するチャンネル数の仮の値である。
【００６４】
（決定変数）
（１）  Ｓfdp：台車ｆから基板ｄに部品ｐを搭載する場合の搭載数。
（２）  ＲＳfp：台車ｆに部品ｐのフィーダを設置する場合に１が設定され、そうでないときに０が設定される。
（３）  Ｔdf：基板ｄの台車ｆでの実装時間（総マシンサイクルタイム）。
（４）  ＭＴd：基板ｄの最大実装時間。
上記（１）の搭載数は、その部品を対象基板に実装する数（実装数）を意味する。
【００６５】
（目的関数（最小化））
目的関数は、次式（４）で表される。
【００６６】
【数３】
2018198246.tif 000005
【００６７】
（制約条件）
（１）  搭載数の制約：個々の基板にそれぞれの部品を既定された搭載数だけ搭載しなければならない。
（２）  部品設置の制約：部品をいずれかの台車に設置しなければならない。
（３）  実装時間の制約：基板ｄの最大実装時間ＭＴdは、基板ｄの各マウンタの実装時間Ｔdfの最大値と等しく、各マウンタの実装時間はマシンサイクルタイムＣfpと搭載数Ｓfdpの積と等しい。
（４）  トレイ部品設置の制約：トレイ部品専用台車ｆから基板ｄに搭載される部品pの占有チャンネル数の総和は、台車fの上限チャンネル数を超過することはできない。
（５）  テープ／スティック部品設置の制約：テープ／スティック部品専用台車ｆに設置された部品群の占有チャンネル数の総和は、台車ｆの上限チャンネル数を超過することはできない。
【００６８】
ここで、テープ／スティック部品専用台車と、トレイ部品専用台車では、機能や構成が異なる。トレイ部品は、１つの基板グループ内であっても、基板が変わる際に段取り替えすることが可能である。一方、テープ／スティック部品は、基板グループが変わる際にしか段取り替えができない。このため、上記制約では、トレイ部品に関しては、同じ基板に搭載する部品が使用するチャンネルが台車の上限チャンネル数を超えなければよい、とされている。
【００６９】
部品割り当て最適化部３８は、目的関数が最小となるように整数計画問題ソルバを用いて整数計画問題を解くことで、各変数の値を決定する。
【００７０】
次いで、ステップＳ４４に移行すると、部品割り当て最適化部３８は、フィーダ配置を最適化する処理を実行する。前述したステップＳ４２では、Ｏfpとして、部品ｐのフィーダを台車ｆに設置したときに使用するチャンネル数の仮の値を設定したため、実際に部品ｐのフィーダが台車ｆに設置できるとは限らない。台車に並べる部品の並び順により、使用チャンネル数が異なるためである。したがって、部品割り当て最適化部３８は、本ステップＳ４４において、使用チャンネルが最小となる並び順を見つける。なお、このステップＳ４４の処理は、図１２のステップＳ２２と同様であるので、説明は省略する。
【００７１】
ステップＳ４４の処理が行われた後は、ステップＳ４６に移行し、部品割り当て最適化部３８は、フィーダを台車に配置可能か否かを判断する。この場合、部品割り当て最適化部３８は、上述したステップＳ２４と同様に判断を行う。
【００７２】
そして、ステップＳ４６の判断が否定された場合には、ステップＳ４８に移行し、部品割り当て最適化部３８は、台車のチャンネル数（上限チャンネル数）を減らして（例えば１減らして）、ステップＳ４２に戻る。ステップＳ４２に戻った場合、ステップＳ４６の判断が肯定されるまで、ステップＳ４２〜Ｓ４８を繰り返し実行する。
【００７３】
一方、ステップＳ４６の判断が肯定された場合には、ステップＳ５０に移行する。ステップＳ５０では、部品割り当て最適化部３８は、これまでの処理に基づいて、台車への部品割り当てと、各部品の基板への実装数を決定する。部品割り当て最適化部３８は、ステップＳ５０において確定した情報を制御部３４を介して、生産計画情報ＤＢ５６（部品割り当てテーブル１５６Ｂ（図９（ｂ））に格納する。
【００７４】
その後、ステップＳ５２に移行すると、部品割り当て最適化部３８は、すべての基板グループをステップＳ４０で選択済みか否かを判断する。このステップＳ５２の判断が否定された場合には、ステップＳ４０に戻る。ステップＳ４０に戻った場合、未選択の基板グループの中から１つを選択し、上述した処理を繰り返し実行する。
【００７５】
そして、すべての基板グループが選択され、ステップＳ５２の判断が肯定された場合には、図１３（Ｓ１２）の全処理を終了し、図１１のステップＳ１４に移行する。
【００７６】
（製造順最適化処理（Ｓ１４））
次に、製造順最適化部４０が実行する、図１１のステップＳ１４の処理（製造順最適化処理）について、図１４のフローチャートに沿って説明する。
【００７７】
図１４の処理においては、外段取り待ち時間の最小化処理（Ｓ６０）、基板幅替え回数の最小化処理（Ｓ６２）、工数ばらつきの平準化処理（Ｓ６４）の順に各処理が実行される。
【００７８】
（外段取り待ち時間の最小化処理（Ｓ６０））
外段取り待ち時間の最小化処理（Ｓ６０）においては、製造順最適化部４０は、製造開始から製造完了までの時間（１番目の基板グループの処理を開始してから最後の基板グループの処理を終了するまでの時間）を最小化するように、基板グループの製造順を最適化する。例えば、基板グループＡ〜Ｃがあり、各グループの外段取り時間と実装時間が、図１５（ａ）に示すような時間であったとする。このような場合に、製造順最適化部４０は、製造開始から完了までの時間が最小となるように基板グループの製造順を並べ替え、図１５（ｂ）のように製造順を最適化する。
【００７９】
以下、具体的な処理について説明する。製造順最適化部４０は、以下のように、入力変数、決定変数、目的関数、制約条件を定めて、整数計画問題として定式化する。
【００８０】
（入力変数）
（１）  ＳＴg：基板グループｇの外段取り時間。
（２）  ＭＴg：基板グループｇの部品搭載時間。
【００８１】
（決定変数）
（１）  Ｉsg：製造順ｓに基板グループｇを投入するときに１が設定され、そうでないときに０が設定される。
（２）  ＳＳs：製造順ｓにおける外段取り開始時刻。
（３）  ＳＥs：製造順ｓにおける外段取り終了時刻。
（４）  ＭＳs：製造順ｓにおける部品搭載開始時刻。
（５）  ＭＥs：製造順ｓにおける部品搭載終了時刻。
【００８２】
（目的関数（最小化））
ＭＥ|s|：最終製造順における部品搭載終了時刻。
【００８３】
（制約条件）
（１）  製造順の制約：基板グループの製造順の中に、全ての基板グループはそれぞれ１回現れなければならない。
（２）  開始、終了時刻の制約：製造順ｓ+１における外段取り開始時刻は、製造順ｓにおける外段取り終了時刻以降でなければならない。また、製造順ｓにおける部品搭載開始時刻は、製造順ｓにおける外段取り終了時刻以降でなければならない。
（３）  外段取り、搭載時間の制約：「製造順ｓの外段取り終了時刻−製造順ｓの外段取り開始時刻」は、製造順ｓの基板グループの外段取り時間と等しい。また、「製造順ｓの部品搭載終了時刻−製造順ｓの部品搭載開始時刻」は製造順ｓの基板グループの部品搭載時間と等しい。
【００８４】
製造順最適化部４０は、目的関数が最小となるように整数計画問題ソルバを用いて整数計画問題を解くことで、各変数の値を決定する。製造順最適化部４０は、本処理により得られた結果（基板グループの製造順）を、生産計画情報ＤＢ５６（基板グループ製造順テーブル１５６Ｄ）に格納する。
【００８５】
なお、外段取り待ち時間の最小化処理が行われたことにより、図１６（ａ）に示すように基板グループの製造順が決定され、各基板グループに含まれる基板と、各基板の基板幅と、各基板の搭載時間が図１６（ａ）に示すように定まっているものとする。なお、図１６（ａ）は一例であり、図６等に示すＤＢとの整合性はとれていないものである。
【００８６】
（基板幅替え回数の最小化処理（Ｓ６２））
次に、基板幅替え回数の最小化処理（Ｓ６２）について説明する。ステップＳ６２の処理においては、製造順最適化部４０は、マウンタの基板が流れるレーンの幅の変更作業（作業者の手作業）の負荷を軽減するため、基板の幅の変化回数が最小になるように、整数計画問題ソルバを用いて基板の製造順を最適化する。ただし、ステップＳ６０で決定した基板グループの製造順は変えないものとする。
【００８７】
以下、具体的な処理について説明する。製造順最適化部４０は、以下のように、入力変数、決定変数、目的関数、制約条件を定めて、最短ハミルトン路問題として定式化する。
【００８８】
（入力変数）
（１）  Ｗde:基板ｄと基板ｅの幅の間に差があるときには１が設定され、そうでない場合には０が設定される。
なお、基板と基板のペア（２つの基板の組み合わせ）の集合をＤＤとした場合に、ｄ，ｅは、次式（５）を満たすものとする。
【００８９】
【数４】
2018198246.tif 000006
【００９０】
（決定変数）
（１）  ｓde：基板ｄと基板ｅがｄ，ｅの順に連続して投入されるときに１が設定され、そうでないときに０が設定される。
【００９１】
（目的関数（最小化））
目的関数は、基板幅の変更回数であり、次式（６）で表される。
【００９２】
【数５】
2018198246.tif 000007
【００９３】
（制約条件）
（１）  基板グループ制約：基板グループ内でのみ基板の製造順を入れ替える。
（２）  基板の順番の制約：順番に基板が並んでいなければならない。また順番の中に全ての基板はそれぞれ１回現れなければならない。
【００９４】
製造順最適化部４０は、目的関数が最小となるように整数計画問題ソルバを用いて最短ハミルトン路問題を解くことで、各変数の値を決定する。
【００９５】
なお、図１６（ｂ）には、図１６（ａ）に対してステップＳ６２の処理を実行した結果が示されている。図１６（ａ）の場合、基板幅の変更が５回（基板ＡとＢの間、基板ＤとＥの間、基板ＥとＦの間、基板ＦとＧの間、基板ＧとＨの間）であったが、図１６（ｂ）の場合、基板幅の変更が３回（基板ＣとＡの間、基板ＥとＦの間、基板ＩとＧの間）に減少していることがわかる。
【００９６】
（工数ばらつきの平準化処理（Ｓ６４））
次に、工数ばらつきの平準化処理（Ｓ６４）について説明する。ステップＳ６４の処理においては、製造順最適化部４０は、表面実装ライン２０の後の工程の負荷（工数）を平準化し、生産性を向上するため、表面実装ライン２０が後工程に出力する単位時間当たりの基板枚数を平準化するように、基板の製造順を最適化する。ただし、ステップＳ６０で決定した基板グループの製造順は変えず、ステップＳ６２で決定した基板の幅の変化は変えないようにする。
【００９７】
以下、具体的な処理について説明する。製造順最適化部４０は、以下のように、入力変数、決定変数、目的関数、制約条件を定めて、整数計画問題として定式化する。
【００９８】
（入力変数）
（１）  Ｑd：基板ｄの枚数
（２）  Ｔd：基板ｄの、基板１枚の各マウンタでの実装時間のうちの最大実装時間（＝基板ｄのサイクルタイム）。
（３）  Ｆd：基板ｄのサイクルタイムＴdに枚数を掛けた値（基板ｄの総搭載時間）であり、次式（７）で表される。
Ｆd＝Ｔd×Ｑd      …（７）
（４）  μ：平均サイクルタイム（基板の枚数に応じた重み付き平均）であり、次式（８）で表される。
【００９９】
【数６】
2018198246.tif 000008
【０１００】
なお、上記（３）のＦdは、本処理（工数ばらつき平準化処理）における「工数」を意味する。
【０１０１】
（決定変数）
（１）  Ｓsd：製造順ｓに基板ｄを投入する場合には１が設定され、そうでない場合には０が設定される。
（２）  ＤＩs：「製造順ｓまでの理想工数」と「製造順１番目から製造順ｓまでの工数(の和)」の差の絶対値。
【０１０２】
（目的関数（最小化））
目的関数は、ＤＩsの総和であり、次式（９）で表される。
【０１０３】
【数７】
2018198246.tif 000009
【０１０４】
（制約条件）
（１）  基板製造順入れ替えの制約：同じ基板グループ内で、かつ、同じ基板幅の基板の間でしか、基板の製造順を入れ替えてはならない。
（２）  基板の順番の制約：順番に基板が並んでいなければならない。また順番の中に全ての基板はそれぞれ１回現れなければならない。
（３）  ＤＩsの制約：ＤＩsは「基板製造順sまでの合計枚数を１枚あたり平均サイクルタイムで作ったときの時間」と、「基板製造順１からｓまでの個々の基板別の総搭載時間の合計」の差の絶対値に等しい、もしくはそれ以上でなければならない。
【０１０５】
製造順最適化部４０は、目的関数が最小となるように整数計画問題ソルバを用いて整数計画問題を解くことで、各変数の値を決定する。製造順最適化部４０は、本処理により得られた結果（基板グループの製造順）を用いて、生産計画情報ＤＢ５６の基板グループテーブル１５６Ａの各グループにおける基板の並び順を更新する。
【０１０６】
ここで、図１６（ｃ）には、図１６（ｂ）に対してステップＳ６４の処理を実行した結果が示されている。なお、図１６（ｃ）では、両矢印で示すように、図１６（ｃ）から、基板ＣとＢ、基板ＩとＨの製造順が入れ替わっている。また、図１７には、工数ばらつき平準化処理の前後における実装時間（部品搭載時間）が示されている。なお、図１７の実線は、理想値（理想工数）を示している。工数ばらつき平準化処理前（図１６（ｂ）、図１７の〇）は、ＤＩsが１１８であったのに対し、工数ばらつき平準化処理後（図１６（ｃ）、図１７の×）は、ＤＩsが９６になり、工数ばらつきが少なく、より理想に近づいていることがわかる。
【０１０７】
以上のようにして、図１４の処理が終了すると、図１１の全処理も終了する。
【０１０８】
なお、図５の生産計画出力部４６は、制御部３４の指示の下、生産計画情報ＤＢ５６に格納された情報を生産ライン７０や作業者用端末６０に対して送信する。生産ライン７０において、生産計画情報に沿った生産が行われることにより、生産時間を短縮することが可能となっている。
【０１０９】
これまでの説明から明らかなように、本実施形態では、基板グループ最適化部３６と、部品割り当て最適化部３８と、製造順最適化部４０と、を含んで、基板の生産時間に影響を与える複数の要素を段階的に最適化する処理部の機能が実現されている。また、基板物量情報収集部３０と、生産情報収集部３２と、により、基板の生産に関する情報を取得する取得部としての機能が実現されている。
【０１１０】
以上、詳細に説明したように、本実施形態によると、基板物量情報収集部３０及び生産情報収集部３２が、基板物量情報及び生産情報を取得し、基板グループ最適化部３６、部品割り当て最適化部３８、及び製造順最適化部４０が、基板物量情報及び生産情報に基づいて、基板の生産を完了するまでの所要時間に影響を与える複数の要素（基板グループ、部品割り当て、基板製造順）を段階的に最適化する。これにより、本実施形態では、現実的な時間で解が求まる最適化問題に分割して、生産ライン７０の生産計画の最適化問題を解くこととしているので、組み合わせ爆発を発生させないようにすることができる。したがって、最適な生産計画に近く、かつ実行可能な生産計画を、現実的な時間で決定することが可能となる。すなわち、生産計画を生成する際の処理負荷を軽減することができる。
【０１１１】
また、本実施形態によると、基板グループ最適化、部品割り当て最適化、基板製造順最適化、の順に処理を行うため、処理の重複等が少なく、無駄のない処理を行うことができる。
【０１１２】
また、本実施形態では、基板グループ最適化において、整数計画問題として定式化することで基板数最大の基板の組み合わせを網羅的探索するため、基板数の多い基板グループが作られやすく、それにより基板グループ数を減らすことが可能となる。このように基板グループ数を減らすことで、外段取り時間を削減することが可能となる。
【０１１３】
また、本実施形態では、部品割り当て最適化、基板製造順最適化においても、整数計画問題として定式化することで部品割り当てや基板製造順を網羅的探索するため、適切な生産計画を生成することが可能となる。
【０１１４】
また、本実施形態では、基板グループ最適化及び部品割り当て最適化において、マウンタに搭載する台車に収める部品のフィーダの配置を最適化する。これにより、生産計画を実行する際に台車にフィーダを設置できないという事態が発生するのを防止することができる。
【０１１５】
また、本実施形態では、基板製造順の最適化において、基板幅替え回数の最小化処理（Ｓ６２）及び工数ばらつきの平準化処理（Ｓ６４）を行うこととしている。これにより、基板が流れるレーンの幅替え作業の回数が減ることで、作業者の作業負担が軽減する。また、工数ばらつきを平準化することで、表面実装ライン２０の後工程の生産性を向上させることが可能である。
【０１１６】
また、本実施形態では、各最適化処理を整数計画問題として定式化し、整数計画問題ソルバを利用して最適化を行うこととしているので、大規模な整数計画問題であっても短時間で解くことができる。
【０１１７】
なお、上記実施形態では、ステップＳ１４において、ステップＳ６０（外段取り待ち時間の最小化処理）、Ｓ６２（基板幅替え回数の最小化処理），Ｓ６４（工数ばらつきの平準化処理）を実行する場合について説明した。しかしながら、これに限らず、例えば、ステップＳ６０のみを実行することとしてもよい。また、ステップＳ６０と、ステップＳ６２又はステップＳ６４と、を実行することとしてもよい。
【０１１８】
なお、サーバ１０は、上記実施形態（図１）のように、生産ライン７０を所有する会社等で管理されるオンプレミスの形態であってもよいし、図１８に示す生産システム２００のようにクラウドサーバの形態であってもよい。図１８のクラウドサーバ１１０は、工場１５０内の作業者用端末６０からネットワーク１８０を介して送信されてくるデータを取得して、処理し、処理結果を作業者用端末６０に提供する。なお、クラウドサーバ１１０と、工場１５０の所在国は異なっていてもよい。
【０１１９】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、処理装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体（ただし、搬送波は除く）に記録しておくことができる。
【０１２０】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ（Digital Versatile Disc）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）などの可搬型記録媒体の形態で販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１２１】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１２２】
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【符号の説明】
【０１２３】
１０  サーバ（生産計画生成装置）
２０  表面実装ライン（実装ライン）
３０  基板物量情報収集部（取得部の一部）
３２  生産情報収集部（取得部の一部）
３６  基板グループ最適化部（処理部の一部）
３８  部品割り当て最適化部（処理部の一部）
４０  製造順最適化部（処理部の一部）
【図１】
2018198246.tif 000010
【図２】
2018198246.tif 000011
【図３】
2018198246.tif 000012
【図４】
2018198246.tif 000013
【図５】
2018198246.tif 000014
【図６】
2018198246.tif 000015
【図７】
2018198246.tif 000016
【図８】
2018198246.tif 000017
【図９】
2018198246.tif 000018
【図１０】
2018198246.tif 000019
【図１１】
2018198246.tif 000020
【図１２】
2018198246.tif 000021
【図１３】
2018198246.tif 000022
【図１４】
2018198246.tif 000023
【図１５】
2018198246.tif 000024
【図１６】
2018198246.tif 000025
【図１７】
2018198246.tif 000026
【図１８】
2018198246.tif 000027
【手続補正書】
【提出日】令和1年8月22日(2019.8.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
基板の生産に関する情報と、前記基板に部品を実装する実装ラインの設備情報と、を取得する取得部と、
前記基板の生産に関する情報と、前記実装ラインの設備情報と、に基づいて、前記基板の生産を完了するまでの所要時間に影響を与える複数の要素を段階的に最適化する処理部と、
を備える生産計画生成装置。
【請求項２】
前記処理部は、前記基板のグループ分けの最適化、部品をセットするマウンタに対する部品割り当ての最適化、前記基板の製造順の最適化、の順に処理を実行する、ことを特徴とする請求項１に記載の生産計画生成装置。
【請求項３】
前記処理部は、前記基板のグループ分けの最適化、および前記マウンタに対する部品割り当ての最適化において、前記マウンタに搭載する台車に対する部品のフィーダの配置を最適化する、ことを特徴とする請求項２に記載の生産計画生成装置。
【請求項４】
前記処理部は、前記基板の製造順の最適化において、前記実装ラインに投入される基板の大きさが変わる回数の最小化、および前記実装ラインに基板が投入される単位時間当たりの枚数のばらつきの最小化、の少なくとも一方を行う、ことを特徴とする請求項２又は３に記載の生産計画生成装置。
【請求項５】
前記処理部は、前記複数の要素を最適化するときに、整数計画問題として定式化し、整数計画問題ソルバを利用して最適化を行うことを特徴とする請求項１〜４のいずれか一項に記載の生産計画生成装置。
【請求項６】
基板の生産に関する情報と、前記基板に部品を実装する実装ラインの設備情報と、を取得し、
前記基板の生産に関する情報と、前記実装ラインの設備情報と、に基づいて、前記基板の生産を完了するまでの所要時間に影響を与える複数の要素を段階的に最適化する、
処理をコンピュータに実行させるための生産計画生成プログラム。
【請求項７】
基板の生産に関する情報と、前記基板に部品を実装する実装ラインの設備情報と、を取得し、
前記基板の生産に関する情報と、前記実装ラインの設備情報と、に基づいて、前記基板の生産を完了するまでの所要時間に影響を与える複数の要素を段階的に最適化する、
処理をコンピュータが実行することを特徴とする生産計画生成方法。
【国際調査報告】
2018198246.tif 000028
2018198246.tif 000029
2018198246.tif 000030
2018198246.tif 000031