(57)【要約】      （修正有）【課題】建築用木材をコンパクトに安定に少スペースで積み上げる手順をコンピュータシミュレーション処理で短時間で示す積層体形成装置を提供する。【解決手段】積層体形成装置において、コンピュータは、個体生成手段１６と、世代交代手段１８と、積層体形成手段２０と、積層体判定手段２２と、積層体評価手段２３とを備える。建築用木材は、条件データ２６の条件を満たすように積層体を生成する。できあがった積層体を評価値３０により評価し、制限した短時間の演算処理時間内で最適に近い積層体を求める。【選択図】図３
2020046813.tif 000002
【特許請求の範囲】
【請求項１】
積載して運送をするために、所定のｍ個の直方体の建築用木材を積層体に形成する積層体形成装置であって、
上記ｍ個の直方体の建築用木材の品番を表す遺伝子と、それらの遺伝子を整列させて上記建築用木材の引当順を表す遺伝子座を有する染色体とを生成し、かつ、上記遺伝子の整列順の異なる染色体を備えた個体を複数生成する個体生成手段と、
上記生成した複数の個体を親個体とし、交叉処理、突然変位処理をして、複数の子個体を生成し、選択処理をして、次世代の親個体とする、世代交代を繰返し、上記建築用木材の引当順を表す個体を順次生成する世代交代手段と、
上記生成した個体が表す引当順に建築用木材を取り出して、最下段から段を形成し、順に上段を形成するように配置する際、
下記の（１）から（５）の条件を満たすように配置できるかを判定する積層体判定手段と、
条件を満たすように配置できる場合には、取り出した建築用木材を配置して、配置済みとし、
条件を満たすように配置できない場合には、取り出した建築用木材を引当順の元の位置に戻し、
次の引当順の建築用木材を取り出すという処理を、下記の（６）、（７）の規則にしたがい、すべての建築用木材が配置済みになるまで繰返して積層体を形成する積層体形成手段と、
上記形成した積層体の数、または積層体に外接する直方体の体積を評価値として算出する積層体評価手段と、を備えたことを特徴とする積層体形成装置。
（１）段の高さを揃えるために、建築用木材の規格幅方向を段の高さ方向に向ける。
（２）配置したときに段の幅が、その上限値を超えない。
（３）配置したときに段の長さが、その上限値を超えない。
（４）第１段の幅≧第ｉ段の幅（ｉ≧２）である。
（５）配置したときに積層体の高さが、その上限値を超えない。
（６）次以降の引当順の建築用木材に未配置の建築用木材がない、かつ上記の（５）の条件を満たすときは、未配置で引当順が早い建築用木材を取り出し、上の段に配置するという手順で建築用木材を積上げて積層体を形成する。
（７）次以降の引当順の建築用木材に未配置の建築用木材がない、かつ上記の（５）の条件を満たさないときは、その積層体を形成完成として、未配置で引当順が早い建築用木材を取り出し、新たな積層体の形成を開始する。
【請求項２】
上記建築用木材には金物が取り付けられており、上記遺伝子は、上記建築用木材の品番と金物が積層体中でどの位置にあるかを示す符号からなり、
上記積層体形成手段は、
同一の段の隣り合う建築用木材の間にいずれかまたは両方の建築用木材の金物が突出しているときは、その金物の最大突出長さに相当する隙間を、その隣り合う建築用木材間に空けるように建築用木材を配置することを特徴とする請求項１に記載の積層体形成装置。
【請求項３】
上記世代交代手段は、
上記交叉処理においては、
上記親個体の任意の２つを「親１」と「親２」とし、その両方から遺伝子配列の一部を承継した染色体を備えた子個体を上記親個体と同数生成して、
上記突然変異処理においては、
上記いずれかの子個体に対して遺伝子座の任意の２つの遺伝子を交換して、新たな子個体を生成し、
上記個体の選択処理においては、
上記親個体と上記子個体のそれぞれの上記評価値を比較して、上記評価値の小さいものから上記親個体と同数個選択し、該当の上記親個体または子個体を次世代の親個体とすることを特徴とする請求項１または２に記載の積層体形成装置。
【請求項４】
上記世代交代手段は、以下の手順で、上記建築用木材の引当順を表す個体を生成することを特徴とする請求項３に記載の積層体形成装置。
（１）初期の個体集団（第一世代）をランダムにＭ個生成する。
（２）そのＭ個の個体集団から２個の親個体をランダムに選択する。
（３）２個の親個体から交叉処理で子個体をＭ個つくる。
（４）得られたＭ個の子個体のうち設定した数の子個体に突然変異処理を行う。
（５）親個体がＭ個、子個体がＭ個で合せて２Ｍ個の個体について、評価値を算出する。
（６）評価値が小さいほうからＭ個の個体を取り出して、
次世代（第二世代）の個体集団とする。
（７）上記（２）から（６）の世代交代を繰返し、評価値の差が収束判定基準に達したとき、または設定した世代交代回数に達したとき、計算を終了する。
【請求項５】
コンピュータを請求項１乃至請求項４のいずれかに記載の積層体形成装置として機能させるコンピュータプログラム。
【請求項６】
請求項５に記載のコンピュータプログラムを記録したコンピュータで読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、建築用木材を積載して運送するための積層体を形成する際の、作業者による積層体形成のための考慮作業をなくし、作業効率を向上させる積層体形成装置に関する。
【背景技術】
【０００２】
建築用木材をトラック等に積載して運送するためには、何本かずつに分けた建築用木材を積み上げて、必要に応じて梱包をする作業が必要になる。こうした建築用木材の積層体を形成するには、様々な形状の建築用木材の幅や長さや予め取り付けられた金物の位置などを考慮して、建築用木材の配列の組み合わせを考慮しなければならない。従来、これをコンピュータで計算する技術が紹介されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５６２２３０１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
既知の従来の技術には、次のような解決すべき課題があった。
特許文献１に示したような最適化処理のためには、複雑な演算処理が必要になる。木材の種類や本数が多くなると計算時間も長時間になる。計算時間が長時間では、現場での利用が制限される。利用を拡大するためには、より少ない計算時間で最適化された、または準最適化された積層体形成演算をする機能が求められる。本発明は、上記の課題を解決することを目的とする。
【課題を解決するための手段】
【０００５】
以下の構成はそれぞれ上記の課題を解決するための手段である。
【０００６】
＜構成１＞
積載して運送をするために、所定のｍ個の直方体の建築用木材を積層体に形成する積層体形成装置であって、
上記ｍ個の直方体の建築用木材の品番を表す遺伝子と、それらの遺伝子を整列させて上記建築用木材の引当順を表す遺伝子座を有する染色体とを生成し、かつ、上記遺伝子の整列順の異なる染色体を備えた個体を複数生成する個体生成手段と、
上記生成した複数の個体を親個体とし、交叉処理、突然変位処理をして、複数の子個体を生成し、選択処理をして、次世代の親個体とする、世代交代を繰返し、上記建築用木材の引当順を表す個体を順次生成する世代交代手段と、
上記生成した個体が表す引当順に建築用木材を取り出して、最下段から段を形成し、順に上段を形成するように配置する際、
下記の（１）から（５）の条件を満たすように配置できるかを判定する積層体判定手段と、
条件を満たすように配置できる場合には、取り出した建築用木材を配置して、配置済みとし、
条件を満たすように配置できない場合には、取り出した建築用木材を引当順の元の位置に戻し、
次の引当順の建築用木材を取り出すという処理を、下記の（６）、（７）の規則にしたがい、すべての建築用木材が配置済みになるまで繰返して積層体を形成する積層体形成手段と、
上記形成した積層体の数、または積層体に外接する直方体の体積を評価値として算出する積層体評価手段と、を備えたことを特徴とする積層体形成装置。
（１）段の高さを揃えるために、建築用木材の規格幅方向を段の高さ方向に向ける。
（２）配置したときに段の幅が、その上限値を超えない。
（３）配置したときに段の長さが、その上限値を超えない。
（４）第１段の幅≧第ｉ段の幅（ｉ≧２）である。
（５）配置したときに積層体の高さが、その上限値を超えない。
（６）次以降の引当順の建築用木材に未配置の建築用木材がない、かつ上記の（５）の条件を満たすときは、未配置で引当順が早い建築用木材を取り出し、上の段に配置するという手順で建築用木材を積上げて積層体を形成する。
（７）次以降の引当順の建築用木材に未配置の建築用木材がない、かつ上記の（５）の条件を満たさないときは、その積層体を形成完成として、未配置で引当順が早い建築用木材を取り出し、新たな積層体の形成を開始する。
【０００７】
＜構成２＞
上記建築用木材には金物が取り付けられており、上記遺伝子は、上記建築用木材の品番と金物が積層体中でどの位置にあるかを示す符号からなり、
上記積層体形成手段は、
同一の段の隣り合う建築用木材の間にいずれかまたは両方の建築用木材の金物が突出しているときは、その金物の最大突出長さに相当する隙間を、その隣り合う建築用木材間に空けるように建築用木材を配置することを特徴とする構成１に記載の積層体形成装置。
【０００８】
＜構成３＞
上記世代交代手段は、
上記交叉処理においては、
上記親個体の任意の２つを「親１」と「親２」とし、その両方から遺伝子配列の一部を承継した染色体を備えた子個体を上記親個体と同数生成して、
上記突然変異処理においては、
上記いずれかの子個体に対して遺伝子座の任意の２つの遺伝子を交換して、新たな子個体を生成し、
上記個体の選択処理においては、
上記親個体と上記子個体のそれぞれの上記評価値を比較して、上記評価値の小さいものから上記親個体と同数個選択し、該当の上記親個体または子個体を次世代の親個体とすることを特徴とする構成１または２に記載の積層体形成装置。
【０００９】
＜構成４＞
上記世代交代手段は、以下の手順で、上記建築用木材の引当順を表す個体を生成することを特徴とする構成３に記載の積層体形成装置。
（１）初期の個体集団（第一世代）をランダムにＭ個生成する。
（２）そのＭ個の個体集団から２個の親個体をランダムに選択する。
（３）２個の親個体から交叉処理で子個体をＭ個つくる。
（４）得られたＭ個の子個体のうち設定した数の子個体に突然変異処理を行う。
（５）親個体がＭ個、子個体がＭ個で合せて２Ｍ個の個体について、評価値を算出する。
（６）評価値が小さいほうからＭ個の個体を取り出して、
次世代（第二世代）の個体集団とする。
（７）上記（２）から（６）の世代交代を繰返し、評価値の差が収束判定基準に達したとき、または設定した世代交代回数に達したとき、計算を終了する。
【００１０】
＜構成５＞
コンピュータを構成１乃至構成４のいずれかに記載の積層体形成装置として機能させるコンピュータプログラム。
【００１１】
＜構成６＞
構成５に記載のコンピュータプログラムを記録したコンピュータで読み取り可能な記録媒体。
【発明の効果】
【００１２】
コンピュータに積層体形成プログラムを組み込んで機能させることにより、作業者の経験に頼らずに、一定の制限下で建築用木材をコンパクトに安定に積み上げる手順を短時間で示すことができる。従って、建築用木材を積み上げて保管するスペースを最小限にでき、そのまま梱包をして効率よく輸送することができる。
【図面の簡単な説明】
【００１３】
【図１】積層体を形成する製品（建築用木材）のデータ構造である。
【図２】実施例によって得られた製品の最適な引当順の一例を示す説明図である。
【図３】積層体形成装置とその演算処理結果を示すブロック図である。
【図４】製品（建築用木材）の各部の呼び名を示す斜視図である。
【図５】金物を備えた製品同士の位置関係を示す平面図である。
【図６】積層体の各層の製品の配置例を示す平面図である。
【図７】積み上げられた積層体の一例を示す側面図である。
【図８】遺伝子座と染色体の説明図である。
【図９】製品引当順とポインタの関係を示す説明図である。
【図１０】図３の積層体形成装置のブロック内の演算処理例フローチャートである。
【図１１】積層体形成手段の演算処理例フローチャートである。
【図１２】梱包１の段１〜段３の具体例平面図である。
【図１３】梱包２の段１〜段３の具体例平面図である。
【図１４】梱包３の段１〜段３の具体例平面図である。
【図１５】梱包４の段１〜段３の具体例平面図である。
【図１６】梱包５の段１〜段３の具体例平面図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態を実施例１で詳細に説明する。
【実施例１】
【００１５】
上記の構成の積層体形成装置により建築用木材を積層体に形成する例を、上記の図面を参照しながら説明する。
図１には積層体を形成する４２本の建築用木材のデータ構造を示した。Ｈ，Ｌ，Ｗとあるのは、例えば、図４に示したような形状の建築用木材の、各部の寸法である。その単位はｍｍである。
【００１６】
なお、本発明の積層体形成装置は、建築用木材のみならず、ある程度定型化された様々な製品の積み上げに利用できる。以下の説明では建築用木材を単に製品と呼ぶことにする。この実施例１では、製品の積み出しのための梱包に適した積層体を形成する例を説明する。
【００１７】
この実施例１で説明する製品には、それぞれいずれかの面に金物が取り付けられているものが含まれる。図１の表で、Ｈ方向金物出寸法上とあるのは、図４に示した建築用木材の、Ｈ方向と示した向きに平行に上方に金物が突出している場合のＨ方向の長さである。
【００１８】
Ｈ方向金物出寸法下とあるのは、図４に示した建築用木材の、Ｈ方向と示した向きに平行に下方に金物が突出している場合のＨ方向の長さである。Ｗ方向についても同様の要領である。
【００１９】
なお、図１の表で、幅Ｗが全ての製品で等しい値になっている。この幅Ｗはこの製品の規格寸法ということができる。木造建築の横架材などに使用される製品はその幅方向の寸法が等しいものが多く、これを利用すると、何層かに積み上げるときに平坦な段を形成し易い。図２に示した積層体形成装置はこの特徴を巧みに利用している。
【００２０】
上記の製品で積層体を形成するための条件は以下のとおりである。
（１）図１に示すように全ての製品の幅Ｗは１０５ｍｍである。この幅Ｗが段の高さ方向になるように各製品を配置することとした。
（２）段の幅方向（Ｈ方向）の上限値は９１０ｍｍとした。
（３）段の長さ方向は、製品の長さＬに依存する。実施例１では、長さ方向の上限値は、最長製品長さの５００５ｍｍとした。
（４）第１段の幅≧第i段の幅（i≧２）になるように配置することとした。
（５）積層体の高さの上限は５２５ｍｍとした。
【００２１】
図７に示すように、製品を３段に積み上げるとき、第１段の製品１２と第２段の製品１２の間や第２段の製品１２と第３段の製品１２の間には金物１４が存在する。これらの金物の干渉を防ぐために厚さ１０５ｍｍのスペーサー１５を段間に入れる。これで、積層体の高さは５２５ｍｍになる、なお、第１段の下に破線のように桟木を敷くがこれは積層体の高さに含めないで計算をする。また、積層体の寸法条件は、ここでは例えば、積層体を梱包してトラックに積み込むときに最適な形状とした。
【００２２】
金物がない製品の場合には各製品をできるだけ隙間無く配列するように積み上げればよい。しかし、実施例１では、全て金物付きの製品を積み上げるので、次の条件を追加する。
（１＊）段の金物を含む幅方向の上限値を９９０ｍｍとした。
（２＊）第１段では、最小製品長≧２６００ｍｍ、かつ、製品をＬ方向に複数つないで配置しないものとした。梱包をして運搬するときの形状の安定性を増すためである。
（３＊）同一段中の最大製品長と最小製品長との差の上限を１０００ｍｍとした。
【００２３】
積層体の構成は製品を配列するために取り出す順番（引当順）に大きく依存する。この引当順を最適化するために、遺伝子による世代交代を利用する。この世代交代のための演算処理に利用するパラメータは、個体数Ｍ＝５００、突然変位数＝１０、世代交代回数＝１００、評価値は積層体に外接する直方体体積とした。
【００２４】
世代交代により製品の取り出し順を最適順に近づけていくと、ある時点で評価値の収束が始まる。他の例を参考にすると、製品数が約２０個以上では、世代交代の途中で収束したように見える場合が多い。すなわち、さらに世代交代を続ければ、再度評価値が小さくなる場合が多い。この実施例では、製品数が４２個なので、収束判定を上記終了条件に使用せず、上記終了条件を世代交代回数の上限値とした。従って１００回世代交代をした最小評価値となる個体が備える染色体を引当順とする積層体データを出力する。これで処理待ち時間はほぼ一定になる。
もし、製品数が約２０個以下の場合は、収束判定と世代交代回数の上限値を上記終了条件とすることにより、早いほうの条件で終了することができるので、収束判定も上記終了条件に使用するとよい。
【００２５】
次に、図３に示した演算処理のためのコンピュータの機能を説明する。コンピュータは、個体生成手段１６と世代交代手段１８と積層体形成手段２０と積層体判定手段２２と積層体評価手段２３とを備えている。これらの手段は、この実施例１で、図１０と図１１に示すフローチャートに従って演算処理を実行した。
【００２６】
まず、図１０のステップＳ１０１で、個体生成手段１６は、図１の製品データ２４から第一世代の個体集団５００個をランダム生成した。個体データ２８は、図２の（Ｆ）に示すような４２個の遺伝子座に整列された遺伝子の配列をもつ染色体を備えたものである。
【００２７】
この染色体は、積層体形成手段２０が処理を実行する時の製品の引当順と、金物が積層体中でどの位置にあるかを表すためのデータを含む。各遺伝子は、製品の品番と、その製品に取り付けられた金物が、積層体中でどの位置にあるかを示す符号Ａ、Ｂ、Ｃ、Ｄとからなる。
【００２８】
金物を取り付けてある製品の向きは、図２の（Ａ）、（Ｂ）、（Ｃ）、（Ｄ）のいずれのパタンになる。いずれも製品の平面図と端面図を示した。遺伝子の符号がＡなら（Ａ）のパタンである。
【００２９】
基本方向を図２の（Ａ）の向きとしたとき、製品のＬ方向、Ｈ方向、Ｗ方向を軸にして回転したときは、図２の（Ｂ）、（Ｃ）、（Ｄ）のようなパタンになる。特殊な場合には、同じパタンになることもあるがその場合も（Ａ）〜（Ｄ）のように区別して問題はない。
【００３０】
すでに説明したとおり、製品の上下面と左右面及び端面の位置や方向は、図４に示すように表現する。製品の上下面に垂直な方向をＨ方向、左右面に垂直な方向をＷ方向、端面に垂直な方向をＬ方向と呼んで説明をする。
【００３１】
金物が付いていない製品は、図４に示すＨ方向、Ｌ方向、Ｗ方向を軸として回転しても、同じ形である。この場合には、製品を積層体に形成するのに、製品の引当順だけを決めればよい。
【００３２】
しかし、金物が付いている製品は、図４に示すＨ方向、Ｌ方向、Ｗ方向を軸として回転すると、図２に示すように、金物位置が異なってくる。従って、引当順に製品を取り出してから、製品を段に配置する向きを選択する必要がある。この向きが異なるように配置したものは異なる結果が得られることになる。そこで、遺伝子に製品の向きを示すデータを含ませることにした。
【００３３】
図８を用いて、遺伝子座と染色体の関係を説明する。図２で説明したように、製品の品番を１としたときに、その品番にA〜Dの記号を付与する。ひとつの品番に対して、１A、１B、１C、１Dというように４種類の遺伝子がある。
【００３４】
図８に示すように、例えば、品番が１、２、３の３本の製品が対象の場合には遺伝子座は３個あり、例えば、染色体ｘ１は（１Ａ、２Ａ、３Ａ）になる。染色体ｘ２は（３Ｂ、２Ｄ、１Ｃ）になる。このように、様々な組み合わせの遺伝子を持つ染色体が得られる。
【００３５】
個体集団中では１Ａ、１Ｂ、１Ｃ、１Ｄのような、同一品番、異符号の遺伝子の数は等しくしておくと好都合である。１Ａの個数の和＝１Ｂの個数の和＝１Ｃの個数の和＝１Ｄの個数の和というようにである。
【００３６】
次に、図１０のステップＳ１０２で、世代交代手段１８は、第一世代の個体集団５００個からランダムに２個選択し、交叉処理で子個体を２個生成するという処理を、子個体を５００個生成するまで行った。その後、５００個の子個体からランダムに１０個を選択して、突然変位処理を行った。
【００３７】
上記交叉処理においては、 第一世代の個体の任意の２個を「親１」と「親２」とし、その両方から遺伝子配列の一部を承継した染色体を備えた子個体を２個生成する。
【００３８】
上記突然変異処理においては、上記子個体からランダムに選択した１０個に対して遺伝子座の任意の２つの遺伝子を交換して、新たな子個体を生成する。
【００３９】
次に、ステップＳ１０３で、積層体形成手段２０による処理が全個体に適用されたかを判断し、未適用個体があるときは、ステップＳ１０４で未適用個体を取り出す。ステップＳ１０５で、積層体形成手段２０は、上記の第一世代の個体（親個体）５００個と子個体５００個すべてについて、積層体を形成するまで繰り返す。すなわちここで１０００通りの積層体が形成される。
【００４０】
なお、積層体評価手段２３は、ステップＳ１０５で、（条件（２）、（３）、（４）、（１＊）、（２＊）、（３＊））の判定をしたり、（条件（５））の判定をしたりする。また、第二世代以降の親個体の評価値は、その直前の世代で算出しているので、子個体の評価値を算出するだけでよい。
【００４１】
全部の個体について、積層体形成処理の適用が済んだら、ステップＳ１０３からステップＳ１０６に進む。ステップＳ１０６では、設定した世代交代回数１００に達したかを判定する。世代交代回数１００に達していないときは、ステップＳ１０７で、世代交代手段１８が、世代交代処理（選択処理）を実行する。
【００４２】
ステップＳ１０７では上記の１０００個の個体が形成する積層体に外接する直方体の体積和が小さいほうから５００個を選択して、次世代の親個体５００個として、ステップＳ１０２に戻る。ステップＳ１０２からステップＳ１０７までのフローを第百世代まで繰り返した。
【００４３】
ステップＳ１０６で、設定した世代交代回数が１００回に達したときは、ステップＳ１０８で、５００個の親個体、５００個の子個体の１０００個の評価値から最小の値を持つ個体を選択して、積層体データ３２を生成して処理を終了する。
【００４４】
上記の積層体形成手段２０の処理手順例をフローチャートで説明する。図１１のフローチャートは、図１０のステップＳ１０５に適用される。
【００４５】
ステップＳ１１では、まず、段番号＝１、積層体番号=１として、初期設定をする。一つ積層体が完成するたびにこの積層体番号が増える。一つ段が完成するたびに段番号が増える。図３の例では積層体５までで、全ての製品を積み上げることができた。
【００４６】
ステップＳ１２では、すべての製品が配置済みかどうかを判断する。ノーの場合には次のステップＳ１３に進む。イエスの場合はステップＳ２４に進み、積層体評価手段２３が評価値を算出して処理を終了する。
【００４７】
ステップＳ１３では、ポインタを製品引当順の一番早い位置にある未配置製品に移す。即ち、各段の製品の配置を決める最初の処理は常にこの状態からになる。
【００４８】
なお、図９には製品引当順とポインタの関係を示した。引当順は１〜ｍと表示した。ポインタは次に引当てる製品を指示する。次の引当順の製品がｉであるときは、ポインタがｉの位置にある。
【００４９】
ステップＳ１４では、ポインタの指す製品を取り出す。ステップＳ１５では、積層体判定手段２２が、現在の段番号の段に製品が配置できるかどうかを判定する。
【００５０】
ここでは下記の配置規則に従う配置が、上記の条件（２）〜（４）、（１＊）、（２＊）、（３＊）を満たすか否かを判定する。条件を満たす場合には、ステップＳ１６で製品を配置して配置済みにし、条件を満たさない場合には、ステップＳ１７でその製品を元の位置に戻す。
【００５１】
ステップＳ１５の製品の配置規則を図６の（ａ）で説明する。
（１）１本目の場合
図６の（ａ）は、積層体の段を上から見た平面である、はじめに
取り出した製品（製品１）を、段の左下隅に配置してみる。ここで、上記の条件（２）〜（４）、（１＊）、（２＊）、（３＊）を満たすならばその製品１を配置する。なおこの段の左下隅を計算上の座標軸の原点にする。すなわち、積層体の段の最初に引き当てられた製品１をここに配置する。
（２）２本目以降の場合
取り出した製品（製品２，３，４，５）を、この座標軸で、直前に置いた製品の上側に配置して、上記の条件（２）〜（４）、（１＊）、（２＊）、（３＊）を満たすならば配置する。条件を満たさないときは、直前に置いた製品の右側に配置する。上記の条件（２）〜（４）、（１＊）、（２＊）、（３＊）を満たすならばこのまま配置する。
【００５２】
すなわち、製品１の次に引き当てた製品２は段を上から見た平面上で、製品１の上方には段の長手方向の長さ上限を超えるので配置できない。そこで製品１の右方に配置する。次に引き当てた製品３は段を上から見た平面上で、製品２の上方に配置可能なのでそこに配置する。
【００５３】
次に引き当てた製品４は段を上から見た平面上で、製品３の上方に配置可能なのでそこに配置する。次に引き当てた製品５は段を上から見た平面上で、製品４の上に配置できないので製品２の右方に配置する。次に引き当てた製品以降は、この段の上方に配置しても右方に配置しても段の幅上限値、長手方向長さ上限値を超えるので配置できない。これで段が一段完成する。
【００５４】
図６（ｂ）の場合には、製品３の上に製品４が配置できないので、製品２と３の右方に製品４を配置した。さらに製品４の上に製品５を配置している。製品５の長さが長すぎる場合には引当順に別の短い製品を見つけて配置する。なお、図６（ａ）と（ｂ）とはいずれも２本の製品をつないだ部分があるが、１段目については、製品を上方につながず横に並べるように配列する。
【００５５】
金物がある場合には、図５に示すように、突出が長い方の金物１４の長さに相当する隙間が製品１２の間にできる。その場合には例えば、図示しないパッキン材を挟んで、製品１２自体は互いに平行に並べたまま配置する。隣り合う製品の間隔は、突出が長い方の金物１４の寸法になるのであるが、図６では金物の図示は省略した。
【００５６】
上記の条件（２）から（４）、（１＊）、（２＊）、（３＊）について図５を用いて説明する。図５に示した段幅１ｋの上限値は、条件（２）の９１０ｍｍである。段最大長の上限値は、条件（３）の５００５ｍｍである。
【００５７】
条件（４）は、第１段の段幅１ｋ≦第ｉ段の段幅１ｋ（ｉ≧２）を満たすかどうかで判定する。図５に示した段幅２ｋの上限値は、条件（１＊）の９９０ｍｍである。段最大長と段最小長との差の上限値は、条件（３＊）の１０００ｍｍである。
【００５８】
条件（２＊）は、第１段の段最小長≧２６００ｍｍを満たすかどうかで判定する。このときは、つなぐ配置はしない。
【００５９】
段の両端には金物が突出しないことが好ましい。また、第１段の下面には金物が突出しないことが好ましい。評価値算出の段階でこれを評価値に含めて優劣を判断するとよい。
【００６０】
次に図１１のステップＳ１８は、後の引当順に未配置の製品があるかどうかを検索して、ある場合には、ステップＳ１９でその未配置の製品にポインタを移動する。その後はステップＳ１４へ戻る。
【００６１】
後の引当順に未配置の製品がない場合には、ステップＳ２０で、その段を完成にして、ステップＳ２１に進む。ステップＳ２１では、
新しい段の形成開始可否の判定をする。
【００６２】
積層体判定手段２２は、上記の条件（５）積層体の高さの上限を満たすかどうかを判定し、条件を満たす（もう１段積める）場合は、ステップＳ２３で、段番号＋１とする。その後ステップＳ１２へ進む。
【００６３】
条件を満たさない（もう１段積めない  積層体が完成）場合は、ステップＳ２２で、段番号＝１というように段番号を初期化し、積層体番号に１を加えてステップＳ１２へ戻る。
【００６４】
最後に、ステップＳ１２ですべの製品が配置済みと判定したら、ステップＳ２４で、積層体評価手段２３は、上記１０００個の積層体の評価値、すなわち１０００個の直方体の体積を求めて、積層体形成処理を終了し、図１０のステップＳ１０３に戻る。
【００６５】
以上のように、実施例１では、図２（Ｆ）の個体に示すような最適引当順が得られた。図３には、その結果生成された積層体データを示した。積層体数は５であった。その具体的な例は図１２〜図１６に示した。
【００６６】
図３の例では積層体１から積層体５までの５個の積層体を形成できた。例えば、積層体１の１段目の段には製品番号が１１０９，１１０８，１１１３の３個の製品が引き当てられている。２段目は６個、３段目は４個でひとかたまりの積層体１が完成している。
【００６７】
この５個の積層体１〜５を結束し、５個の梱包として後の運送工程等に渡す。図１２は梱包１の例で、（ａ）は１段目の配列、（ｂ）は２段目の配列、（ｃ）は３段目の配列を示している。図１３から図１６も同様に、（ａ）は１段目の配列、（ｂ）は２段目の配列、（ｃ）は３段目の配列を示している。
【００６８】
１１０９番の"Ｕ９０ーＤ０ーＬ０−Ｒ０"の意味は、上面(Ｕ)には最大９０ｍｍ金物が突出し、下面(Ｄ)には最大０ｍｍ金物が突出し、左面(Ｌ)には最大０ｍｍ金物突が出し、右面(Ｒ)には最大０ｍｍ金物が突出しているという意味である。
【００６９】
これらの記号は、第１段の下面に突出する金物の寸法を小さくしたい場合や、金物の突出寸法を含めて積層体の幅の上限値を決めたい場合に利用するとよい。
【００７０】
また、 "１１６３+１１０２+"の意味は、１１６３番と１１０２番を長手方向につなぐように配置するという意味である。積層体の長さの上限値を実施例１では、最大製品長に決めたが、それを超える長さを設定する場合に利用するとよい。
【００７１】
実施例１では、金物付きの製品を対象に積層体を形成したが、金物のない製品の場合は、図１において金物出寸法＝０ｍｍとして、実施例１と同様に行うことができる。
【００７２】
以上のように、製品の引当順を遺伝子の世代交代により最適値に近づけるようにして、一定の配列規則と制限値を定めて一段ずつ積み上げるように積層するシミュレーション演算処理をして、コンパクトで安定な積層体を形成する手順をみつけられる。しかも、世代交代数を定めて演算処理時間を制限したので、適切な処理時間で結果を得ることができ、製品の格納や梱包作業の効率化と最適化や運送コストの節約等に貢献できる。
【符号の説明】
【００７３】
１２  製品
１４  金物
１５  スペーサー
１６  個体生成手段
１８  世代交代手段
２０  積層体形成手段
２２  積層体判定手段
２３  積層体評価手段
２４  製品データ
２６  条件データ
２８  個体データ
３０  評価値
３２  積層体データ
【図１】
2020046813.tif 000003
【図２】
2020046813.tif 000004
【図３】
2020046813.tif 000005
【図４】
2020046813.tif 000006
【図５】
2020046813.tif 000007
【図６】
2020046813.tif 000008
【図７】
2020046813.tif 000009
【図８】
2020046813.tif 000010
【図９】
2020046813.tif 000011
【図１０】
2020046813.tif 000012
【図１１】
2020046813.tif 000013
【図１２】
2020046813.tif 000014
【図１３】
2020046813.tif 000015
【図１４】
2020046813.tif 000016
【図１５】
2020046813.tif 000017
【図１６】
2020046813.tif 000018