(57)【特許請求の範囲】
【請求項１】
貨物箱を配置しないときの貨物室の重心位置である最適重心位置からのずれ量が基準値以内になるようにサイズが相互に異なる複数種類の貨物箱を前記貨物室に配置する場合の前記複数種類の貨物箱に対する好適な配置位置の決定をコンピュータに実行させるためのプログラムであって、
受付手段が、前記複数種類の貨物箱のサイズおよび個数と各貨物箱の重量とを受付ける第１のステップと、
探索手段が、前記受付手段が受け付けた前記複数種類の貨物箱のサイズに基づいて、サイズが最も大きい第１の種類に属する複数の貨物箱を前記貨物室内に配置したときの前記貨物室の重心位置の前記最適重心位置からのずれ量が前記基準値以内になるように前記第１の種類に属する複数の貨物箱の配置位置を決定する第２のステップと、
前記探索手段が、前記受付手段が受け付けた前記複数種類の貨物箱のサイズに基づいて、既に配置位置が決定された貨物箱のうちでサイズが最も小さい貨物箱の次にサイズが大きい第２の種類に属する複数の貨物箱を前記貨物室内に配置したときの前記貨物室の重心位置の前記最適重心位置からのずれ量が前記基準値以内になるように前記第２の種類に属する複数の貨物箱の配置位置を決定する第３のステップと、
前記探索手段が、前記受付手段が受け付けた前記複数種類の貨物箱のサイズに基づいて、サイズが最も小さい種類に属する複数の貨物箱の配置位置が決定されるまで各種類に属する複数の貨物箱に対して前記第３のステップを繰り返し実行する第４のステップとをコンピュータに実行させ、
前記第２のステップにおいて、前記探索手段は、同じサイズの貨物箱同士の位置交換からなる第１の処理と、前記第１の種類に属する１個の貨物箱を該１個の貨物箱に隣接する空き空間へ移動させる第２の処理と、前記第１および第２の処理を行なう第３の処理とのいずれかの処理を行なうことによって前記第１の種類に属する複数の貨物箱の配置位置を決定し、
前記第３のステップにおいて、前記探索手段は、前記第１から第３の処理のいずれかの処理を行なうことによって前記第２の種類に属する複数の貨物箱の配置位置を決定する、コンピュータに実行させるためのプログラム。
【請求項２】
前記複数の貨物箱は、種類決定手段によってサイズの大きい順に第１の種類、第２の種類、第３の種類および第４の種類に分類され、
前記第４のステップにおいて実行される前記第３のステップにおいて、前記探索手段は、前記第１から第３の処理のいずれかの処理を行なうことによって前記第２の種類に属する複数の貨物箱の配置位置を決定し、前記第１の処理を行なうことによって前記第３の種類に属する複数の貨物箱の配置位置および前記第４の種類に属する複数の貨物箱の配置位置を決定する、請求項１に記載のコンピュータに実行させるためのプログラム。
【請求項３】
前記第４のステップにおいて実行される前記第３のステップにおいて、前記探索手段は、前記第１の処理を行なうことによって前記第２の種類に属する複数の貨物箱の配置位置を決定する、請求項２に記載のコンピュータに実行させるためのプログラム。
【請求項４】
前記第４のステップにおいて実行される前記第３のステップにおいて、前記探索手段は、前記第２の処理を行なうことによって前記第２の種類に属する複数の貨物箱の配置位置を決定する、請求項２に記載のコンピュータに実行させるためのプログラム。
【請求項５】
前記第４のステップにおいて実行される前記第３のステップにおいて、前記探索手段は、前記第３の処理を行なうことによって前記第２の種類に属する複数の貨物箱の配置位置を決定する、請求項２に記載のコンピュータに実行させるためのプログラム。
【請求項６】
前記第２のステップにおいて、前記探索手段は、前記第１から第３の処理のうち、前記第２の種類に属する複数の貨物箱の配置位置の決定に用いた処理と同じ処理を行なうことによって前記第２の種類に属する複数の貨物箱の配置位置を決定する、請求項２に記載のコンピュータに実行させるためのプログラム。
【請求項７】
前記第２のステップにおいて実行される前記第１の処理は、前記第１の種類に属する１個の貨物箱と前記第１の種類に属する複数の貨物箱からランダムに選択された他の貨物箱との位置交換からなる、請求項２に記載のコンピュータに実行させるためのプログラム。
【請求項８】
前記第４のステップにおいて実行される前記第３のステップにおいて前記第２の種類に属する複数の貨物箱の配置位置の決定のために実行される前記第１の処理は、前記第２の種類に属する１個の貨物箱と前記第２の種類に属する複数の貨物箱からランダムに選択された他の貨物箱との位置交換からなり、
前記第４のステップにおいて実行される前記第３のステップにおいて前記第３または第４の種類に属する複数の貨物箱の配置位置の決定のために実行される前記第１の処理は、前記第３または第４の種類に属する１個の貨物箱と、該１個の貨物箱に隣接し、かつ、前記第３または第４の種類に属する１個の貨物箱と同じ種類に属する他の貨物箱との位置交換からなる、請求項２に記載のコンピュータに実行させるためのプログラム。
【請求項９】
前記第４のステップにおいて実行される前記第３のステップにおいて前記第２の種類に属する複数の貨物箱の配置位置の決定のために実行される前記第１の処理は、前記第２の種類に属する１個の貨物箱と前記第２の種類に属する複数の貨物箱からランダムに選択された他の貨物箱との位置交換からなり、
前記第４のステップにおいて実行される前記第３のステップにおいて前記第３または第４の種類に属する複数の貨物箱の配置位置の決定のために実行される前記第１の処理は、前記第３または第４の種類に属する１個の貨物箱と前記第３または第４の種類に属する１個の貨物箱と同じ種類に属する複数の貨物箱からランダムに選択された他の貨物箱との位置交換からなる、請求項２に記載のコンピュータに実行させるためのプログラム。
【請求項１０】
前記第４のステップにおいて実行される前記第３のステップにおいて前記第２の種類に属する複数の貨物箱の配置位置の決定のために実行される前記第１の処理は、前記第２の種類に属する１個の貨物箱と前記第２の種類に属する複数の貨物箱からランダムに選択された他の貨物箱との位置交換からなり、
前記第４のステップにおいて実行される前記第３のステップにおいて前記第３または第４の種類に属する複数の貨物箱の配置位置の決定のために実行される前記第１の処理は、前記第３または第４の種類に属する１個の貨物箱と、該１個の貨物箱に隣接し、かつ、前記第３または第４の種類に属する１個の貨物箱と同じ種類に属する他の第１の貨物箱との位置交換と、前記第３または第４の種類に属する１個の貨物箱と前記第３または第４の種類に属する１個の貨物箱と同じ種類に属する複数の貨物箱からランダムに選択された他の第２の貨物箱との位置交換からなる、請求項２に記載のコンピュータに実行させるためのプログラム。
【請求項１１】
請求項１から請求項１０のいずれか１項に記載されたプログラムを記録したコンピュータ読取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、複数の対象物をユーザからの要求事項を満たすように配置するときの複数の対象物に対する好適な配置位置の決定をコンピュータに実行させるためのプログラムおよびそのプログラムを記録したコンピュータ読取り可能な記録媒体に関するものである。
【背景技術】
【０００２】
最近の宇宙開発の活発化に伴い、宇宙で使用する多くの物資を輸送機に搭載して宇宙船へ運搬することが行なわれている。そして、宇宙飛行士は、輸送機の物資を宇宙船内へ搬入し、宇宙船内で使用する。宇宙飛行士は、物資を使用した後、使用済みの物資を輸送機へ再搭載する。物資を再搭載された輸送機は、宇宙船から切り離され、宇宙で燃焼するか、地球内の所定の場所に落下される。
【０００３】
図２８は、物資を宇宙船へ運搬する輸送機の斜視図である。輸送機１００は、円柱形状から成り、輸送部１１０と、エンジン部１２０とを備える。輸送部１１０は、貨物搭載部１１１と、ドッキング部１１２と、出入口１１３とを有する。複数の物資は、貨物搭載部１１１へ搭載される。
【０００４】
地球上から打ち上げられた輸送機１００は、エンジン部１２０によって推進し、宇宙船へ到達する。そして、輸送機１００は、ドッキング部１１２によって宇宙船とドッキングし、宇宙飛行士は、出入口１１３から輸送機１００の貨物搭載部１１１へ入り、搭載された物資を宇宙船へ搬入する。
【０００５】
そして、宇宙飛行士は、使用済みの物資を出入口１１３から、再び、貨物搭載部１１１へ搭載し、輸送機１００は、宇宙船から切り離される。宇宙船から切り離された輸送機１００は、宇宙で燃焼するか、大気圏へ突入後、地球内の所定の場所へ落下する。
【０００６】
この場合、使用済みの物資を搭載した輸送機１００を地球内の予め決定された所定の場所へ落下させるには、物資を搭載した輸送機１００の重心位置と輸送機１００の本来の重心位置とのずれが数センチメートル以内になるように、物資を輸送機１００に搭載する必要がある。物資を搭載した輸送機１００の重心位置が、輸送機１００の本来の重心位置から大きくずれると、宇宙船から切り離された輸送機１００は、重心位置のずれに伴い回転運動をしながら大気圏へ近づき、回転運動が起こらない場合の軌道からずれるため、予め決定された場所と異なる場所へ落下するからである。
【０００７】
また、使用済みの物資を搭載した輸送機１００を宇宙で完全に燃焼させる場合も、同様に、物資を搭載したときの重心位置のずれ量が数センチメートル以内になるように物資を輸送機１００に搭載する必要がある。
【０００８】
このように、輸送機１００へ物資を搭載する場合、物資を搭載した後の輸送機１００の重心位置が、輸送機１００のみの重心位置から大きくずれないように物資を輸送機１００へ搭載する必要がある。
【特許文献１】出願人は、本発明に関連する先行技術文献を調査したが、本発明に関連する先行技術文献を出願時までに発見していない。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかし、サイズおよび重量が異なる複数の物資を輸送機の重心位置が大きくずれないように輸送機へ搭載する場合、次のような問題が生じる。
【００１０】
まず、地上のオペレータによって物資を輸送機へ搭載すると、人間が物資の搭載を制御するため、ミスを生じる可能性が高くなり、コストも高くなるという問題が生じる。
【００１１】
また、宇宙船における物資の搬入／搬出は、宇宙飛行士により行なわれるものであるため、物資の変更による配置位置の変更が多いと宇宙飛行士に過度の負担をかけるという問題が生じる。
【００１２】
さらに、宇宙船および輸送機等から成る宇宙システムでは、ユーザからの設定条件を満たす解を速く見出す必要があり、特に、輸送機へ搭載すべき複数の物資のうち、一部の物資が変更された場合にも、その物資の変更に即座に対応して、輸送機の重心位置が大きくずれないように物資の配置位置を決定する必要がある。そのため、人間が物資の配置位置を決定していたのでは、輸送機へ搭載する物資の変更にも対応できず、輸送機の重心位置が大きくずれないように物資の配置位置を迅速に決定することが困難であるという問題が生じる。
【００１３】
また、さらに、上述した問題は、医療機関における医者および看護婦のスケジュールの決定、個人住宅への家具の配置位置の決定、およびプリント基板上への各回路の配置位置の決定においても生じる。
【００１４】
そこで、本発明は、かかる問題を解決するためになされたものであり、その目的は、複数の対象物をユーザからの要求事項を満たすように配置するときの複数の対象物に対する好適な配置位置の決定をコンピュータに実行させるためのプログラムを提供することである。
【００１５】
また、この発明の別の目的は、複数の対象物をユーザからの要求事項を満たすように配置するときの複数の対象物に対する好適な配置位置の決定をコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体を提供することである。
【課題を解決するための手段】
【００１６】
この発明によれば、コンピュータに実行させるためのプログラムは、複数の種類に分類された複数の対象物をユーザからの要求事項を満たす所定領域内の好適な位置に配置する場合の前記複数の対象物に対する好適な配置位置の決定をコンピュータに実行させるためのプログラムであって、受付手段が要求事項を受付ける第１のステップと、受付手段が、要求事項を満たすために必要な前記複数の種類と、複数の種類の各々に属する対象物の個数とを受付ける第２のステップと、探索手段が、好適な配置位置の決定に対する影響の度合が大きい種類の順に、各種類に属する対象物の配置位置を要求事項を満たすように種類ごとに決定することによって、好適な配置位置を決定する第３のステップとをコンピュータに実行させる。そして、第３のステップにおいて、探索手段は、１つの種類に属する対象物の配置位置を決定するとき、好適な配置位置が決定された対象物が所定領域内に配置されていれば、既に配置された対象物および１つの種類に属する対象物の全体が要求事項を満たすように１つの種類に属する対象物の配置位置を決定する。対象物は、宇宙へ物資を運搬するための一定の重量およびサイズを有する貨物箱である。複数の種類に分類された複数の対象物は、重量およびサイズが異なる複数の貨物箱である。所定領域は、複数の貨物箱を搭載するための貨物船である。要求事項は、複数の貨物箱を搭載した貨物船の重心位置と、貨物箱を搭載しないときの貨物船の最適重心位置との距離が所定範囲内になるように重心位置を決定することである。好適な配置位置に対する影響の度合が大きい種類の対象物は、貨物箱の重量が大きい貨物箱である。
【００１７】
好ましくは、第３のステップにおいて、探索手段は、各重量に属する全ての貨物箱の位置が順次変更され、１つの貨物箱の位置が変更されるごとに貨物船の重心位置を演算し、その演算した複数の重心位置のうち、最適重心位置とのずれが所定範囲内にあり、かつ、最小である重心位置を好適な重心位置として抽出することにより各重量に属する貨物箱の配置位置を決定する。
【００１８】
好ましくは、第３のステップにおいて、探索手段は、所定範囲内の全空き領域が所定値よりも大きいときに配置位置が決定される貨物箱の位置の変更を、所定範囲内の全空き領域が所定値以下のときに配置位置が決定される貨物箱の位置の変更と異なる方法により行なう。
【００１９】
好ましくは、複数の貨物箱は、種類決定手段によって重量が大きい順に第１の重量、第２の重量、第３の重量、および第４の重量に分類される。そして、第３のステップにおいて、探索手段は、第１または第２の重量に属する貨物箱の位置の変更を、第３または第４の重量に属する貨物箱の位置の変更と異なる方法によって行なう。
【００２０】
好ましくは、第３のステップにおいて、探索手段は、第１の重量に属する貨物箱の位置の変更を、第２の重量に属する貨物箱の位置の変更と同じ方法によって行ない、第３の重量に属する貨物箱の位置の変更を、第４の重量に属する貨物箱の位置の変更と同じ方法によって行なう。
【００２１】
好ましくは、第３のステップにおいて、探索手段は、第１または第２の重量に属する貨物箱の位置の変更を、貨物箱の隣接する空き領域への移動により行ない、第３または第４の重量に属する貨物箱の位置の変更を、同じ重量に属する貨物箱同士のランダムな位置に存在する貨物箱との交換により行なう。
【００２２】
好ましくは、第３のステップにおいて、探索手段は、第１の重量に属する貨物箱の位置の変更を、第２の重量に属する貨物箱の位置の変更と同じ方法によって行ない、第３の重量に属する貨物箱の位置の変更を、第４の重量に属する貨物箱の位置の変更と異なる方法によって行なう。
【００２３】
好ましくは、第３のステップにおいて、探索手段は、第１または第２の重量に属する貨物箱の位置の変更を、貨物箱の隣接する空き領域への移動により行ない、第３の重量に属する貨物箱の位置の変更を、第１および／または第２の貨物箱を介した位置に存在する同じ種類の貨物箱との交換により行ない、第４の重量に属する貨物箱の位置の変更を、隣接する位置に存在する同じ種類の貨物箱との交換により行なう。
【００２４】
好ましくは、第３のステップにおいて、探索手段は、第１または第２の重量に属する貨物箱の位置の変更を、貨物箱の隣接する空き領域への移動と、同じ重量に属する貨物箱同士のランダムな位置に存在する貨物箱との交換とにより行ない、第３の重量に属する貨物箱の位置の変更を、第１および／または第２の貨物箱を介した位置に存在する同じ種類の貨物箱との交換と、ランダムな位置に存在する同じ種類の貨物箱との交換とにより行ない、第４の重量に属する貨物箱の位置の変更を、隣接する位置およびランダムな位置に存在する同じ種類の貨物箱との交換により行なう。
【００２５】
好ましくは、複数の貨物箱は、種類決定手段によって重量が大きい順に第１の重量、第２の重量、第３の重量、および第４の重量に分類される。そして、第３のステップにおいて、探索手段は、第１または第２の重量に属する貨物箱の位置の変更を、第３または第４の重量に属する貨物箱の位置の変更と同じ方法によって行なう。
【００２６】
好ましくは、第３のステップにおいて、探索手段は、第１または第２の重量に属する貨物箱の位置の変更を、同じ重量に属する貨物箱同士のランダムな位置に存在する貨物箱との交換により行ない、第３または第４の重量に属する貨物箱の位置の変更を、同じ重量に属する貨物箱同士のランダムな位置に存在する貨物箱との交換により行なう。
【００２７】
好ましくは、複数の貨物箱は、貨物船の複数の部屋に分けて搭載される貨物箱である。貨物箱の交換は、２つの貨物箱のうち、一方の貨物箱が一方の部屋に属し、他方の貨物箱が一方の部屋に隣接する他方の部屋に属するときの一方の貨物箱と他方の貨物箱との交換を含む。
【００２８】
また、この発明によれば、コンピュータ読取り可能な記録媒体は、請求項１から請求項１２のいずれか１項に記載されたプログラムを記録する。
【発明の効果】
【００２９】
この発明によるプログラムは、複数種類の対象物をユーザからの要求事項を満たすように配置する場合、要求事項に与える影響の度合が大きい順に複数種類の対象物の配置位置を計算するので、不要な計算を防止することができる。
【００３０】
その結果、配置位置を決定する際のコストを削減でき、配置位置を迅速に決定できる。特に、サイズおよび重量が異なる４種類の貨物箱を輸送機に搭載して宇宙へ搬送する場合に、輸送機の重心ずれが１２．６ｍｍ以下になるように４種類の貨物箱の配置位置を決定する場合においては、１秒程度で解を出すことができる。
【００３１】
また、ユーザからの要求事項に与える影響の度合が大きい順に配置位置を決定するので、複数種類の対象物のうち１種類の対象物が他種類の対象物に変更されても、その変更に即座に対応することができるロバストネスが大きい。
【００３２】
さらに、サイズおよび重量が異なる複数種類の貨物箱を輸送機に搭載して宇宙へ搬送するシステムにおいては、輸送機の重心位置のずれが少ないようにサイズおよび重量が異なる複数種類の貨物箱の配置位置を計算するので、輸送機の重心位置のずれが少なくなる貨物箱の適切な数、および複数種類の貨物箱を搭載する貨物室の適切な形状等を設計できる。
【発明を実施するための最良の形態】
【００３３】
本発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。
【００３４】
この発明によるプログラムが配置位置を決定する対象となる貨物箱の宇宙への運搬について説明する。図１は、複数の貨物箱を搭載した輸送機１０が宇宙船２０にドッキングした状態を示す斜視図である。宇宙船２０についての詳細は、この発明とは無関係であるので、ここでの説明を省略するが、宇宙船２０は、宇宙における各種の観測等を行なう宇宙船である。
【００３５】
輸送機１０は、円柱形状から成り、貨物搭載部１１と、エンジン部１２とを備える。貨物搭載部１１は、底面の直径が約５ｍであり、高さ方向（矢印１３の方向）の長さも約５ｍである。エンジン部１２は、輸送機１０が地上から打ち上げられ、宇宙船２０へ到着するまでの間、輸送機１０を推進させる。
【００３６】
この発明によるプログラムによって決定された配置位置に貨物箱を配置することにより、複数の貨物箱が貨物搭載部１１へ搭載される。そして、複数の貨物箱が搭載された輸送機１０は、地上から打ち上げられ、エンジン部１２によって推進されて宇宙船２０にドッキングする。
【００３７】
宇宙船２０内で働いている宇宙飛行士は、輸送機１０の貨物搭載部１１に搭載された多くの貨物箱を宇宙船２０内へ搬入して使用する。そして、宇宙飛行士は、使用済みの貨物箱を、この発明によるプログラムによって決定された配置位置へ戻すことにより輸送機１０へ、再度、搭載する。使用済みの貨物箱を搭載した輸送機１０は、宇宙船２０から切り離されて、宇宙で燃焼するか、地球上の予め決定された場所に落下する。
【００３８】
図２は、輸送機１０の貨物搭載部１１を詳細に説明するための斜視図である。貨物搭載部１１は、３つの貨物搭載室２１〜２３を有する。貨物搭載室２１〜２３の各々は、中心部に空間３５を有し、空間３５の周りに貨物室３１〜３４を配置した構造から成る。このように、中心に空間３５を配置することにより、宇宙飛行士が、貨物室３１〜３４に貨物箱を容易に出し入れすることができる。そして、貨物室３１〜３４の各々には、後述する方法によって決定された配置位置に複数の貨物箱が配置される。
【００３９】
図３は、貨物室３１〜３４に搭載される貨物箱の種類、およびサイズを示す図である。貨物室３１〜３４に搭載される貨物箱は、貨物箱４０，５０，６０，７０から成る。貨物箱４０は、４２５ｍｍの幅、２４８ｍｍの高さ、および２５１ｍｍの奥行きを有する。貨物箱５０は、４２５ｍｍの幅、２４８ｍｍの高さ、および５０２ｍｍの奥行きを有する。貨物箱５０は、貨物箱４０に対して２倍の奥行きを有する。
【００４０】
貨物箱６０は、４２５ｍｍの幅、４９６ｍｍの高さ、および５０２ｍｍの奥行きを有する。貨物箱６０は、貨物箱５０に対して２倍の高さを有し、貨物箱４０に対して２倍の高さおよび奥行きを有する。貨物箱７０は、４２５ｍｍの幅、７４４ｍｍの高さ、および５０２ｍｍの奥行きを有する。貨物箱７０は、貨物箱４０に対して３倍の高さおよび２倍の奥行きを有し、貨物箱５０に対して３倍の高さを有し、貨物箱６０に対して１．５倍の高さを有する。
【００４１】
また、貨物箱４０は、６ｋｇ（許容範囲：３〜１３ｋｇ）の重量を有する。貨物箱５０は、１２ｋｇ（許容範囲：６〜２７ｋｇ）の重量を有する。貨物箱６０は、２４ｋｇ（許容範囲：９〜５４ｋｇ）の重量を有する。貨物箱７０は、３６ｋｇ（許容範囲：１５〜８１ｋｇ）の重量を有する。
【００４２】
このように、貨物箱４０，５０，６０，７０は、同じ幅を有し、高さ、奥行きおよび重量が相互に異なる貨物箱である。なお、貨物箱４０，５０，６０，７０をそれぞれ「ハーフサイズの貨物箱」、「シングルサイズの貨物箱」、「ダブルサイズの貨物箱」および「トリプルサイズの貨物箱」と言う。
【００４３】
図４は、貨物室３１〜３４へ貨物箱４０，５０を配置した例を示す図である。貨物室３１〜３４の各々は、１２個の貨物箱５０（貨物室の内部では「Ａ」として記載されている）と、１２個の貨物箱４０（貨物室の内部では「Ｂ」として記載されている）とを搭載可能である。
【００４４】
この発明によるプログラムは、貨物箱を搭載した輸送機１０の重心位置と貨物箱を搭載しない輸送機１０の重心位置とのずれ量が１２．６ｍｍ以内になるように、サイズおよび重量が異なる４種類の貨物箱４０，５０，６０，７０を貨物室３１〜３４へ搭載するときの貨物箱４０，５０，６０，７０の配置位置を決定する。
【００４５】
以下、輸送機１０の重心位置のずれ量を１２．６ｍｍ以内に保持しながら、貨物箱４０，５０，６０，７０を４つの貨物室３１〜３４へ搭載するときの貨物箱４０，５０，６０，７０の配置位置を決定するプログラムについて説明する。
【００４６】
［実施の形態１］
図５は、実施の形態１によるプログラムのフローチャートである。貨物箱４０，５０，６０，７０の配置位置を決定する動作が開始されると、貨物室３１〜３４へ搭載すべき貨物箱（ＣＴＢ：Ｃａｒｇｏ Ｔｒａｎｓｆｅｒ Ｂａｇ）の種類が入力される（ステップＳ１）。具体的には、貨物箱の種類として４種類の貨物箱４０，５０，６０，７０のサイズおよび重量が入力される。
【００４７】
そして、入力された貨物箱の種類のうち、サイズ（重量）が最も大きいトリプルサイズの貨物箱７０の配置位置が決定される（ステップＳ２）。その次に、２番目にサイズ（重量）が大きいダブルサイズの貨物箱６０の配置位置が決定され（ステップＳ３）、以下、シングルサイズの貨物箱５０、およびハーフサイズの貨物箱４０の順に配置位置が決定される（ステップＳ４，Ｓ５）。そして、貨物室３１〜３４における貨物箱４０，５０，６０，７０の配置位置を決定する動作が終了する。
【００４８】
このように、貨物箱の配置位置を決定する動作においては、サイズ（重量）が大きい順に貨物室３１〜３４における配置位置が決定される。これは、次の理由による。
【００４９】
輸送機１０の重心位置のずれ量を１２．６ｍｍ以内に保持しながら、サイズ（重量）が異なる４種類の貨物箱４０，５０，６０，７０を貨物室３１〜３４へ配置する場合、「重心位置のずれ量を１２．６ｍｍ以内に保持する」というユーザからの要求事項に与える影響の度合は、トリプルサイズの貨物箱７０、ダブルサイズの貨物箱６０、シングルサイズの貨物箱５０、およびハーフサイズの貨物箱４０の順に大きい。従って、ユーザからの要求事項に与える影響の度合が小さい順に配置位置を決定すると、トリプルサイズの貨物箱７０を配置する自由度が少なくなり、トリプルサイズの貨物箱７０の配置位置を決定する際に、既に決定されたハーフサイズの貨物箱４０、シングルサイズの貨物箱５０、およびダブルサイズの貨物箱６０も含めて配置位置を決定する必要性が生じ、結局、最初から４種類の貨物箱４０，５０，６０，７０の配置位置を決定し直す事態が生じ得るからである。
【００５０】
図６は、図５に示すフローチャートのステップＳ２，Ｓ３におけるトリプルサイズの貨物箱７０の配置位置の決定動作およびダブルサイズの貨物箱６０の配置位置の決定動作を示すフローチャートである。すなわち、この発明の実施の形態１においては、トリプルサイズの貨物箱７０は、ダブルサイズの貨物箱６０と同じ方法によって配置位置が決定される。
【００５１】
トリプルサイズの貨物箱７０の配置位置の決定動作が開始されると、トリプルサイズの貨物箱７０の総数ＭａｘＣＴＢが入力される（ステップＳ１１）。そして、配置位置を決定する対象となる全ての貨物箱７０（番号が１からＭａｘＣＴＢの貨物箱７０）に対して位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］が”Ｎｏ”に設定され、貨物箱７０の位置を移動／交換しない数ＮｏＣｈａｎｇｅが”０”に設定される（ステップＳ１２）。
【００５２】
位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］が”Ｎｏ”に設定されることは、配置位置を決定する対象となる貨物箱７０の位置が前の位置と異なること（すなわち、前の位置から移動していること）を意味し、位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］が”Ｙｅｓ”に設定されることは、配置位置を決定する対象となる貨物箱７０の位置が前の位置と同位置であること（すなわち、移動していないこと）を意味する。ステップＳ１２において、全ての貨物箱７０に対して位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］を”Ｎｏ”に設定するのは、配置位置を決定する動作の始めにおいて、対象となる貨物箱７０の位置が前の位置から移動されたこと、すなわち、その貨物箱７０を移動可能な状態に設定するためである。また、位置を移動／交換しない数を”０”に設定するのは、配置位置を決定する動作の始めにおいて、全ての貨物箱７０の位置を移動／交換して貨物箱７０の配置位置を決定する必要があるからである。
【００５３】
ステップＳ１２の後、貨物箱７０の番号ＣＴＢが初期値”１”に設定される（ステップＳ１３）。そして、番号ＣＴＢが”１”のトリプルサイズの貨物箱７０の配置位置を、上下左右の隣接する空いている場所（領域）へ移動させ、移動させた各場所における重心位置を演算する（ステップＳ１４）。その後、番号ＣＴＢが”１”のトリプルサイズの貨物箱７０を他の番号ＣＴＢを有するトリプルサイズの貨物箱７０とランダムに交換し、その交換した場所における重心位置を演算する（ステップＳ１５）。
【００５４】
そして、ステップＳ１４におけるトリプルサイズの貨物箱７０の位置の移動およびステップＳ１５におけるトリプルサイズの貨物箱７０の位置の交換により、重心位置のずれ量が最小となる位置へ番号ＣＴＢが”１”であるトリプルサイズの貨物箱７０を移動／交換する（ステップＳ１６）。つまり、ステップＳ１４〜ステップＳ１６において、番号ＣＴＢが”１”であるトリプルサイズの貨物箱７０の位置を移動および交換によって変更した場合に、重心位置のずれ量が最小となる位置が決定され、その決定された位置へ番号ＣＴＢが”１”であるトリプルサイズの貨物箱７０が移動および交換される。
【００５５】
そして、移動および交換によって位置を変更すべき次の貨物箱７０の番号ＣＴＢが決定される（ステップＳ１７）。この次の番号ＣＴＢは、具体的には、
次の番号ＣＴＢ＝ｍｏｄ（ＣＴＢ，ＭａｘＣＴＢ）＋１・・・（１）
によって決定される。
【００５６】
式（１）によれば、次の番号ＣＴＢは、ＣＴＢ番号の小さいものからＣＴＢ番号の大きいものへ順次決定される。
【００５７】
次に、位置を移動および交換すべき貨物箱７０の番号が決定されると、位置を移動／交換しない数ＮｏＣｈａｎｇｅが、ステップＳ１１において設定された貨物箱７０の総数ＭａｘＣＴＢに等しいか否かが判断される（ステップＳ１８）。位置を移動／交換しない数ＮｏＣｈａｎｇｅが貨物箱７０の総数ＭａｘＣＴＢに等しくないとき、ステップＳ１４〜ステップＳ１８が、位置を移動／交換しない数ＮｏＣｈａｎｇｅ＝貨物箱７０の総数ＭａｘＣＴＢに達するまで繰返される。すなわち、番号：１，・・・，ＭａｘＣＴＢを有する貨物箱７０の各々について重心位置のずれ量が最小となる位置が決定され、各番号ＣＴＢを有する貨物箱７０がその決定された位置へ移動／交換されるまでステップＳ１４〜ステップＳ１８が繰返される。
【００５８】
そして、位置を移動／交換しない数ＮｏＣｈａｎｇｅが貨物箱７０の総数ＭａｘＣＴＢに等しくなると、移動／交換によって位置を変更すべき貨物箱７０が存在しないので、配置位置の決定動作は終了する。
【００５９】
上記においては、ステップＳ１７における次の番号ＣＴＢの決定は、ＣＴＢ番号の小さいものからＣＴＢ番号の大きいものへ順次行なわれると説明したが、この発明においては、これ以外の方法によって次の番号ＣＴＢが決定されてもよい。
【００６０】
即ち、次の番号ＣＴＢは、ＣＴＢ番号の大きいものからＣＴＢ番号の小さいものへ順次決定されてもよい。また、次の番号ＣＴＢは、偶数のＣＴＢ番号において順次決定された後、奇数のＣＴＢ番号において順次決定されてもよい。更に、次の番号ＣＴＢは、奇数のＣＴＢ番号において順次決定された後、偶数のＣＴＢ番号において順次決定されてもよい。更に、次の番号ＣＴＢは、ＣＴＢ番号に無関係にランダムに決定されてもよい。
【００６１】
図７は、図６に示すフローチャートのステップＳ１４における動作を詳細に説明するためのフローチャートである。図６に示すフローチャートのステップＳ１３の後、番号ＣＴＢが”１”であるトリプルサイズの貨物箱７０の現在位置Ｌが記憶される（ステップＳ１４１）。そして、現在位置Ｌにおける重心位置Ｇが演算される（ステップＳ１４２）。
【００６２】
その後、番号ＣＴＢが”１”であるトリプルサイズの貨物箱７０を、隣接する上下左右の空いている場所へ移動させ、その位置の記憶とその位置における重心の演算とが行なわれる（ステップＳ１４３）。具体的には、対象となる貨物箱７０に隣接する上側の場所が空いていれば、その対象となる貨物箱７０を上側の空いている場所へ移動させ、その移動させた位置Ｌｕを記憶し、位置Ｌｕにおける重心Ｇｕを演算する。また、対象となる貨物箱７０に隣接する下側の場所が空いていれば、その対象となる貨物箱７０を下側の空いている場所へ移動させ、その移動させた位置Ｌｄを記憶し、位置Ｌｄにおける重心Ｇｄを演算する。さらに、対象となる貨物箱７０に隣接する右側の場所が空いていれば、その対象となる貨物箱７０を右側の空いている場所へ移動させ、その移動させた位置Ｌｒを記憶し、位置Ｌｒにおける重心Ｇｒを演算する。また、さらに、対象となる貨物箱７０に隣接する左側の場所が空いていれば、その対象となる貨物箱７０を左側の空いている場所へ移動させ、その移動させた位置Ｌｌを記憶し、位置Ｌｌにおける重心Ｇｌを演算する。
【００６３】
つまり、ステップＳ１４３においては、対象となる貨物箱７０を移動可能な空き領域があれば、その移動可能な全ての場所の位置が記憶され、その移動可能な全ての場所における重心位置が演算される。
【００６４】
ステップＳ１４３の後、対象となる貨物箱７０は、現在位置Ｌに戻され（ステップＳ１４４）、図６R>６に示すステップＳ１４の詳細な動作が終了する。
【００６５】
図８は、図６に示すフローチャートのステップＳ１５における動作を詳細に説明するためのフローチャートである。図６に示すフローチャートのステップＳ１４の後、番号ＣＴＢが”１”であるトリプルサイズの貨物箱７０の現在位置Ｌが記憶される（ステップＳ１５１）。その後、対象となる貨物箱７０と交換すべき他の番号ＣＴＢを有する貨物箱をランダムに選択し、その選択した貨物箱と対象となる貨物箱７０とを交換することにより、対象となる貨物箱７０の位置を変更する。そして、交換によって位置が変更された貨物箱７０の位置Ｌｒｄが記憶される（ステップＳ１５２）。
【００６６】
その後、現在位置Ｌにおける重心位置Ｇが演算され（ステップＳ１５３）、交換された位置Ｌｒｄにおける重心位置Ｇｒｄが演算される（ステップＳ１５４）。重心位置Ｇｒｄが演算された後、現在位置Ｌに戻され（ステップＳ１５５）、図６に示すステップＳ１５における詳細な動作が終了する。
【００６７】
図９は、図６に示すフローチャートのステップＳ１６における動作を詳細に説明するためのフローチャートである。図６に示すフローチャートのステップＳ１５の後、ステップＳ１４およびステップＳ１５において演算された重心位置Ｇｕ，Ｇｄ，Ｇｒ，Ｇｌ，Ｇｒｄのうち、貨物箱７０を貨物室３１〜３４へ搭載しない場合の最適重心位置からのずれ量が最小の重心位置Ｇｍｉｎが抽出される（ステップＳ１６１）。そして、重心位置Ｇｍｉｎが、現在位置における重心位置Ｇよりも小さいか否かが判定される（ステップＳ１６２）。
【００６８】
ステップＳ１６２において、重心位置Ｇｍｉｎが重心位置Ｇよりも小さいとき、すなわち、対象となるトリプルサイズの貨物箱７０を現在位置から別の位置へ移動／交換させた方が最適重心位置からのずれ量が小さくなるとき、ステップＳ１６１において抽出された最小の重心位置へ対象となるトリプルサイズの貨物箱７０を移動／交換する（ステップＳ１６３）。そして、番号ＣＴＢが”１”である貨物箱７０の位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］が”Ｙｅｓ”か否か、すなわち、対象となる貨物箱７０の位置が前の位置と同じであるか否かが判定される（ステップＳ１６４）。対象となる貨物箱７０の位置が前の位置と同じであるか否かが判定されるのは、図６に示すステップＳ１７において同じ番号ＣＴＢを有する貨物箱が次の番号ＣＴＢとして繰返し決定される可能性があり、その決定された番号ＣＴＢを有する貨物箱は、ステップＳ１４〜ステップＳ１６において重心位置が小さくなる位置へ移動される対象となるからである。
【００６９】
ステップＳ１６４において、位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］が”Ｙｅｓ”でないとき、すなわち、対象となる貨物箱７０の位置が前の位置と異なるとき、図６に示すステップＳ１６の詳細な動作は終了する。一方、ステップＳ１６４において、位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］が”Ｙｅｓ”であるとき、すなわち、対象となる貨物箱７０の位置が前の位置と同じであるとき、位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］が”Ｎｏ”に設定され、位置を移動／交換しない数ＮｏＣｈａｎｇｅが”１”だけ減算され（ステップＳ１６５）、図６に示すステップＳ１６の詳細な動作が終了する。
【００７０】
ステップＳ１６４において、位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］が”Ｙｅｓ”であるとき、ステップＳ１６５において位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］が”Ｎｏ”に設定されるのは、対象となる貨物箱７０の位置が前の位置と同じであるとき、対象となる貨物箱７０の位置をさらに移動できる可能性があるからである。そして、ステップＳ１６５において位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］を”Ｎｏ”に設定した番号ＣＴＢを有する貨物箱が、図６に示すステップＳ１４，１５において実際に移動／交換可能であるか否かは、ステップＳ１４の詳細な動作を示す図７のステップＳ１４３およびステップＳ１５の詳細な動作を示す図８のステップＳ１５２で決定されることであり、図９に示すステップＳ１６５においては、重心位置がさらに小さくなる位置へ、位置決定の対象となる貨物箱７０を移動／交換させる可能性を残しておくのである。このように設定することにより、重心位置をより小さくする貨物箱７０の位置を見出すことが可能となる。
【００７１】
ステップＳ１６２において、重心位置Ｇｍｉｎが重心位置Ｇよりも小さくないとき、すなわち、対象となるトリプルサイズの貨物箱７０を現在位置に保持した方が最適重心位置からのずれ量が小さくなるとき、対象となる貨物箱７０の位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］が”Ｎｏ”であるか否か、すなわち、対象となる貨物箱７０の位置が、前の位置と異なっているか否かが判定される（ステップＳ１６６）。
【００７２】
ステップＳ１６６において、位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］が”Ｎｏ”でないとき、すなわち、対象となる貨物箱７０の位置が前の位置と同じであるとき、図６に示すステップＳ１６の詳細な動作は終了する。一方、ステップＳ１６６において、位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］が”Ｎｏ”であるとき、すなわち、対象となる貨物箱７０の位置が前の位置と異なるとき、位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］が”Ｙｅｓ”に設定され、位置を移動／交換しない数ＮｏＣｈａｎｇｅが”１”だけ加算され（ステップＳ１６７）、図６に示すステップＳ１６の詳細な動作が終了する。
【００７３】
ステップＳ１６６において、位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］が”Ｎｏ”であるとき、ステップＳ１６７において位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］が”Ｙｅｓ”に設定されるのは、対象となる貨物箱７０の位置が前の位置と異なるとき、対象となる貨物箱７０の位置をさらに移動できる可能性が少ないからである。
【００７４】
上述したように、図６から図９に示すフローチャートによってトリプルサイズの貨物箱７０に対して重心位置が最小となる位置が決定され、その決定された位置にトリプルサイズの貨物箱７０が移動／交換される。この場合、トリプルサイズの貨物箱は、例えば、図１０１０に示すように４つの貨物室３１〜３４に配置される。
【００７５】
図５に示すフローチャートのステップＳ３において決定されるダブルサイズの貨物箱６０の配置位置も、図６から図９に示したフローチャートと同じフローチャートに従って決定され、トリプルサイズの貨物箱７０をダブルサイズの貨物箱６０に読替えればよい。そして、図６から図９に示すフローチャートを用いてダブルサイズの貨物箱６０の配置位置を決定する場合、図１０R>０に示すようにトリプルサイズの貨物箱７０が配置された貨物室３１〜３４の空き空間を用いてダブルサイズの貨物箱６０の位置が移動／交換され、トリプルサイズの貨物箱７０およびダブルサイズの貨物箱６０を配置した状態で重心位置が最小となるようにダブルサイズの貨物箱６０の配置位置が決定される。その結果、トリプルサイズの貨物箱およびダブルサイズの貨物箱は、例えば、図１１に示すように４つの貨物室３１〜３４に配置される。
【００７６】
図１２は、図５に示すフローチャートのステップＳ４，Ｓ５におけるシングルサイズの貨物箱５０の配置位置の決定動作およびハーフサイズの貨物箱４０の配置位置の決定動作を示すフローチャートである。なお、シングルサイズの貨物箱５０の配置位置を決定する場合、図１１に示すようにトリプルサイズの貨物箱７０およびダブルサイズの貨物箱６０が配置された貨物室３１〜３４の空き空間を用いてシングルサイズの貨物箱５０の位置が交換され、トリプルサイズの貨物箱７０、ダブルサイズの貨物箱６０、およびシングルサイズの貨物箱５０を配置した状態で重心位置が最小となるようにシングルサイズの貨物箱５０の配置位置が決定される。
【００７７】
シングルサイズの貨物箱５０の配置位置の決定動作が開始されると、シングルサイズの貨物箱５０の総数ＭａｘＣＴＢが入力される（ステップＳ２１）。そして、配置位置を決定する対象となる全ての貨物箱５０（番号が１からＭａｘＣＴＢ）に対して位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］が”Ｎｏ”に設定され、貨物箱５０の位置を移動／交換しない数ＮｏＣｈａｎｇｅが”０”に設定される（ステップＳ２２）。
【００７８】
ステップＳ２２において、全ての貨物箱５０に対して位置変更フラグＳａｍｅＬｏｃを”Ｎｏ”に設定する理由は、図６に示すステップＳ１２において位置変更フラグＳａｍｅＬｏｃ［ＣＴＢ］を”Ｎｏ”に設定する理由と同じである。また、位置を移動／交換しない数を”０”に設定する理由は、図６に示すステップＳ１２において、位置を移動／交換しない数を”０”に設定する理由と同じである。
【００７９】
ステップＳ２２の後、貨物箱５０の番号ＣＴＢが初期値”１”に設定される（ステップＳ２３）。そして、番号ＣＴＢが”１”であるシングルサイズの貨物箱５０の配置位置を、上下左右の隣接するシングルサイズの貨物箱の配置位置と交換し、交換した各場所における重心位置を演算する（ステップＳ２４）。その後、番号ＣＴＢが”１”であるシングルサイズの貨物箱５０を他の番号ＣＴＢを有するシングルサイズの貨物箱とランダムに交換し、その交換した場所における重心位置を演算する（ステップＳ２５）。
【００８０】
そして、ステップＳ２４におけるシングルサイズの貨物箱５０と、隣接する位置に存在するシングルサイズの貨物箱との交換およびステップＳ２５におけるシングルサイズの貨物箱５０と、ランダムな位置に存在するシングルサイズの貨物箱との交換により、重心位置のずれ量が最小となる位置へ番号ＣＴＢが”１”であるシングルサイズの貨物箱５０を交換する（ステップＳ２６）。つまり、ステップＳ２４〜ステップＳ２６において、番号ＣＴＢが”１”であるシングルサイズの貨物箱５０の位置を交換によって変更した場合に、重心位置のずれ量が最小となる位置が決定され、その決定された位置へ番号ＣＴＢが”１”であるシングルサイズの貨物箱５０が交換される。
【００８１】
そして、交換によって位置を変更すべき次の貨物箱５０の番号ＣＴＢが上記の式（１）によって決定される（ステップＳ２７）。
【００８２】
次に、位置を交換すべき貨物箱５０の番号が決定されると、位置を交換しない数ＮｏＣｈａｎｇｅが、ステップＳ２１において設定された貨物箱５０の総数ＭａｘＣＴＢに等しいか否かが判断される（ステップＳ２８）。位置を交換しない数ＮｏＣｈａｎｇｅが貨物箱５０の総数ＭａｘＣＴＢに等しくないとき、ステップＳ２４〜ステップＳ２８が、位置を交換しない数ＮｏＣｈａｎｇｅ＝貨物箱５０の総数ＭａｘＣＴＢになるまで繰返される。すなわち、番号：１，・・・，ＭａｘＣＴＢを有する貨物箱５０の各々について重心位置のずれ量が最小となる位置が決定され、各番号ＣＴＢを有する貨物箱５０がその決定された位置へ交換されるまでステップＳ２４〜ステップＳ２８が繰返される。
【００８３】
そして、位置を交換しない数ＮｏＣｈａｎｇｅが貨物箱５０の総数ＭａｘＣＴＢに等しくなると、交換によって位置を変更すべき貨物箱５０が存在しないので、配置位置の決定動作は終了する。
【００８４】
図１３は、図１２に示すフローチャートのステップＳ２４の動作を詳細に説明するためのフローチャートである。図１２に示すステップＳ２３の後、シングルサイズの貨物箱５０の現在位置Ｌが記憶される（ステップＳ２４１）。そして、現在位置Ｌにおける重心位置Ｇが演算される（ステップＳ２４２）。
【００８５】
その後、番号ＣＴＢが”１”であるシングルサイズの貨物箱５０の位置を、隣接する上下左右の位置に存在するシングルサイズの貨物箱の位置と交換し、その交換した位置の記憶とその位置における重心の演算とを行なう（ステップＳ２４３）。具体的には、対象となる貨物箱５０の上側の場所にシングルサイズの貨物箱が存在すれば、その対象となる貨物箱５０を上側に存在するシングルサイズの貨物箱と交換し、その交換した位置Ｌｕを記憶し、位置Ｌｕにおける重心位置Ｇｕを演算する。また、対象となる貨物箱５０の下側の場所にシングルサイズの貨物箱が存在すれば、その対象となる貨物箱５０を下側に存在するシングルサイズの貨物箱と交換し、その交換した位置Ｌｄを記憶し、位置Ｌｄにおける重心位置Ｇｄを演算する。さらに、対象となる貨物箱５０の右側の場所にシングルサイズの貨物箱が存在すれば、その対象となる貨物箱５０を右側に存在するシングルサイズの貨物箱と交換し、その交換した位置Ｌｒを記憶し、位置Ｌｒにおける重心位置Ｇｒを演算する。また、さらに、対象となる貨物箱５０の左側の場所にシングルサイズの貨物箱が存在すれば、その対象となる貨物箱５０を左側に存在するシングルサイズの貨物箱と交換し、その交換した位置Ｌｌを記憶し、位置Ｌｌにおける重心位置Ｇｌを演算する。
【００８６】
つまり、ステップＳ２４３においては、対象となる貨物箱５０を交換可能なシングルサイズの貨物箱が存在すれば、その交換可能な全ての場所の位置が記憶され、その交換可能な全ての場所における重心位置が演算される。なお、ステップＳ２４３において、シングルサイズの貨物箱５０は、図１４に示すように、自己に隣接する位置に存在するシングルサイズの貨物箱（（ａ）および（ｂ）参照）のみならず、ダブルサイズの貨物箱を介した位置に存在するシングルサイズの貨物箱（（ｃ）および（ｄ）参照）と交換されてもよい。なお、図１４の（ａ）および（ｃ）は、貨物室３４を正面から見た図であり、図１４の（ｂ）および（ｄ）は、貨物室３１〜３４を上から見た図である。そして、より一般的には、シングルサイズの貨物箱５０は、自己に隣接する位置に存在するシングルサイズの貨物箱のみならず、トリプルサイズの貨物箱および／またはダブルサイズの貨物箱を介して存在するシングルサイズの貨物箱と交換されてもよい。そして、位置交換は、１つの貨物室３４（または３１，３２，３３）に配置されたシングルサイズの貨物箱同士で行なわれる場合に限らず、図１４に示すように隣接する貨物室３１，３４に存在するシングルサイズの貨物箱同士で行なわれる場合も含まれる。
【００８７】
ステップＳ２４３の後、対象となる貨物箱５０は、現在位置Ｌに戻され（ステップＳ２４４）、図１２１２に示すステップＳ２４の詳細な動作が終了する。
【００８８】
図１２に示すフローチャートのステップＳ２５の詳細な動作は、図８に示すフローチャートと同じフローチャートに従って実行される。また、図１２に示すフローチャートのステップＳ２６の詳細な動作は、図９R>９に示すフローチャートと同じフローチャートに従って実行される。
【００８９】
上述したように、図８、図９、図１２および図１３に示すフローチャートに従ってシングルサイズの貨物箱５０に対して重心位置が最小となる位置が決定され、その決定された位置にシングルサイズの貨物箱５０が交換される。この場合、トリプルサイズの貨物箱、ダブルサイズの貨物箱およびシングルサイズの貨物箱は、例えば、図１５に示すように４つの貨物室３１〜３４に配置される。
【００９０】
図５に示すフローチャートのステップＳ５において決定されるハーフサイズの貨物箱４０の配置位置も、図８、図９、図１２および図１３に示したフローチャートと同じフローチャートに従って決定され、シングルサイズの貨物箱５０をハーフサイズの貨物箱４０に読替えればよい。そして、図８、図９、図１２および図１３１３に示すフローチャートを用いてハーフサイズの貨物箱４０の配置位置を決定する場合、図１５に示すようにトリプルサイズの貨物箱７０、ダブルサイズの貨物箱６０、およびシングルサイズの貨物箱５０が配置された貨物室３１〜３４の空き空間を用いてハーフサイズの貨物箱４０の位置が交換され、トリプルサイズの貨物箱７０、ダブルサイズの貨物箱６０、シングルサイズの貨物箱５０、およびハーフサイズの貨物箱４０を配置した状態で重心位置が最小となるようにハーフサイズの貨物箱４０の配置位置が決定される。そして、トリプルサイズの貨物箱、ダブルサイズの貨物箱、シングルサイズの貨物箱、およびハーフサイズの貨物箱は、例えば、図１６に示すように４つの貨物室３１〜３４に配置される。なお、ハーフサイズの貨物箱４０の配置位置を決定する場合、図１３に示すステップＳ２４３においてハーフサイズの貨物箱４０は、必ず、自己に隣接するハーフサイズの貨物箱と交換される。
【００９１】
このようにして、４種類の貨物箱４０，５０，６０，７０を貨物室３１〜３４に配置するときの配置位置が決定される。そして、４種類の貨物箱４０，５０，６０，７０が貨物室３１〜３４に配置されたときの重心位置は、最適重心位置から０．１０９〜０．２２５ｍｍしかずれておらず、目標値である最適重心位置からのずれ量１２．６ｍｍを大きく下回っている。
【００９２】
上述したように、トリプルサイズの貨物箱７０およびダブルサイズの貨物箱６０に対する配置位置の決定は、貨物箱の移動および交換によって行なわれる点で、貨物箱の交換のみによって配置位置を決定するシングルサイズの貨物箱５０およびハーフサイズの貨物箱４０に対する配置位置の決定と異なる。従って、この発明においては、空き領域が所定値以上のときに配置される貨物箱に対する配置位置の決定方法は、空き領域が所定値以下のときに配置される貨物箱に対する配置位置の決定方法と異なることを特徴とする。
【００９３】
シングルサイズの貨物箱５０およびハーフサイズの貨物箱４０に対する配置位置を決定する場合、シングルサイズの貨物箱５０およびハーフサイズの貨物箱４０は、同種類の貨物箱同士で交換される点で同じメカニズムによって配置位置が決定される。しかし、シングルサイズの貨物箱５０は、自己に隣接する位置に存在するシングルサイズの貨物箱、またはトリプルサイズの貨物箱および／またはダブルサイズの貨物箱を挟んだ位置に存在するシングルサイズの貨物箱と交換されるのに対し、ハーフサイズの貨物箱４０は、必ず、自己に隣接する位置に存在するハーフサイズの貨物箱と交換される点で、シングルサイズの貨物箱５０およびハーフサイズの貨物箱４０に対する配置位置を決定するメカニズムは異なる。
【００９４】
上述した４種類の貨物箱４０，５０，６０，７０に対する配置位置を決定する場合、貨物箱４０，５０，６０，７０は、人工知能を持ったエージェント（自律個体）として機能する。従って、図７、図８、および図１３のフローチャートに示す貨物箱の位置の移動時または位置の交換時には、貨物箱４０，５０，６０，７０は、自律的に上下左右またはランダムな位置へ移動する。
【００９５】
例えば、ダブルサイズの貨物箱６０を例にして説明する。図１７は、ダブルサイズの貨物箱６０の移動／交換を示す概念図である。図１７において、ダブルサイズの貨物箱６０は、記号「Ｄ」で表されている。図１７の（ａ）は、貨物室３４の平面図を示し、図１７の（ｂ）は、貨物室３１〜３４を上から見た図を示す。自律個体としてのダブルサイズの貨物箱６０は、上下左右の隣接する位置へ自律的に移動する。そして、貨物箱６０は、隣接する上側の位置へ移動すると、その移動先の位置（Ｌｕ）を記憶し、その位置Ｌｕにおける重心位置が演算される（図７のステップＳ１４３参照）。また、貨物箱６０は、自律個体としてランダムな位置に存在するダブルサイズの貨物箱と位置を入れ替わり、その入れ替わった位置（Ｌｒｄ）を記憶し、その位置Ｌｒｄにおける重心位置が演算される（図８のステップＳ１５２，Ｓ１５４参照）。演算された重心位置は、貨物箱６０が認識可能な位置に表示され、貨物箱６０は、自己が移動したことによって、または他のダブルサイズの貨物箱と入れ替わったことによって重心位置が小さくなっているか否かを知ることができる。
【００９６】
このようにして、貨物箱６０は、自律個体として上下左右の隣接する位置へ移動し、またはランダムな位置に存在するダブルサイズの貨物箱と入れ替わることによって重心位置を認識し、最終的に重心位置が小さくなる位置へ移動または入れ替わる。なお、貨物箱６０の移動には、１つの貨物室３４内だけでの移動または入れ替わりと、隣接する貨物室３１，３４間での移動または入れ替わりとが含まれる。
【００９７】
トリプルサイズの貨物箱７０、シングルサイズの貨物箱５０およびハーフサイズの貨物箱４０も、ダブルサイズの貨物箱６０と同じように自律個体として移動または入れ替わりを行なうことによって重心位置を認識し、最終的に重心位置が小さくなる位置へ移動または入れ替わる。
【００９８】
図１８は、図５〜図９、図１２、および図１３１３に示すフローチャートによって実行される貨物箱４０，５０，６０，７０の配置位置の決定を行なうプログラムの機能を示す機能ブロック図である。この発明によるプログラムの機能ブロック８０は、積荷種類決定手段８１と、積荷要求計算手段８２と、積荷配置位置局所探索手段８３とを備える。積荷種類決定手段８１は、輸送機１０の貨物室３１〜３４に配置すべき貨物箱の種類を決定する。具体的には、積荷種類決定手段８１は、入力された貨物箱４０，５０，６０，７０から、貨物箱４０，５０，６０，７０を貨物室３１〜３４に配置した場合の重心位置のずれ量を１２．６ｍｍ以内にするというユーザからの要求事項に影響を与える度合が大きい順に貨物箱を選択する。
【００９９】
積荷要求計算手段８２は、貨物箱４０，５０，６０，７０を貨物室３１〜３４に配置した場合の重心位置と、貨物箱４０，５０，６０，７０を配置しない場合の重心位置とのずれ量を１２．６ｍｍ以内にするという要求事項を計算する。
【０１００】
積荷配置位置局所探索手段８３は、積荷種類決定手段８１によって選択された貨物箱７０、貨物箱６０、貨物箱５０、および貨物箱４０の順に、貨物箱４０，５０，６０，７０の各々が積荷要求計算手段８２からの要求事項を局所的に満たす位置を探索する。この場合、積荷配置位置局所探索手段８３は、具体的には、貨物箱４０，５０，６０，７０の局所的な移動または同じ種類間での位置交換によって貨物箱４０，５０，６０，７０の各々が積荷要求計算手段８２からの要求事項を局所的に満たす位置を探索し、その探索した位置に貨物箱４０，５０，６０，７０を移動または交換する。
【０１０１】
図１９は、図１８に示す積荷種類決定手段８１、積荷要求計算手段８２、および積荷配置位置局所探索手段８３と、図５〜図９、図１２、および図１３に示すフローチャートとの関係を示す。なお、図１９においては、積荷種類決定手段８１は、記号「Ａ」によって表され、積荷要求計算手段８２は、記号「Ｃ」によって表わされ、積荷配置位置局所探索手段８３は、記号「Ｂ」によって表されている。また、図５に示すステップＳ２，Ｓ３は、記号「Ｘ」で表され、ステップＳ４，Ｓ５は、記号「Ｙ」で表されている。さらに、図７に示すフローチャートは記号「Ｘ１」で表され、図８に示すフローチャートは記号「ＸＹ１」で表され、図９に示すフローチャートは記号「ＸＹ２」で表されている。
【０１０２】
積荷種類決定手段８１は、４種類の貨物箱４０，５０，６０，７０に基づいて、トリプルサイズの貨物箱７０、ダブルサイズの貨物箱６０、シングルサイズの貨物箱５０、およびハーフサイズの貨物箱４０の順に、貨物箱４０，５０，６０，７０の配置位置を決定するという図５に示すステップＳ２〜ステップＳ５に対応する機能を果たす。また、積荷要求計算手段８２および積荷配置位置局所探索手段８３は、重心位置のずれ量を１２．６ｍｍ以内にするという要求事項を計算し、その計算した要求事項を満たすように貨物箱４０，５０，６０，７０を局所的に移動または位置交換して最終的に重心位置のずれ量が小さい位置に貨物箱４０，５０，６０，７０を移動または位置交換するという図７〜図９に示すフローチャートに対応する機能を果たす。
【０１０３】
この発明によるプログラムの機能ブロックは、図２０に示す機能ブロック８０Ａであってもよい。機能ブロック８０Ａは、機能ブロック８０に積荷個別付加制約充足手段８４を追加したものであり、その他は機能ブロック８０と同じである。
【０１０４】
積荷個別付加制約充足手段８４は、貨物箱４０，５０，６０，７０の各々に個別に付加された制約を充足するように貨物箱４０，５０，６０，７０を配置する。例えば、積荷個別付加制約充足手段８４は、「貨物箱４０，５０，６０，７０のうち、最も重量の大きいトリプルサイズの貨物箱７０は、宇宙飛行士が貨物室３１〜３４から最も取出し易い位置に配置しなければならない」という制約を満たすようにトリプルサイズの貨物箱７０を配置する。なお、積荷個別付加制約充足手段８４は、貨物箱４０，５０，６０，７０の各々に個別に付加された制約を扱い、貨物箱４０，５０，６０，７０の全体配置に関する制約を扱わない。
【０１０５】
積荷個別付加制約充足手段８４を追加することによって、貨物箱４０，５０，６０，７０の全てを配置した後に、個別制約を充足しようとすると一度配置したものを崩さなければならず、不必要な計算が必要になるという問題を解決でき、貨物箱４０，５０，６０，７０の配置位置を効率的に決定できる。
【０１０６】
また、この発明によるプログラムの機能ブロックは、図２１に示す機能ブロック８０Ｂであってもよい。機能ブロック８０Ｂは、機能ブロック８０に積荷要求充足計算打ち切り手段８５を追加したものであり、その他は機能ブロック８０と同じである。
【０１０７】
積荷要求充足計算打ち切り手段８５は、貨物箱４０，５０，６０，７０の配置位置に対して、ユーザからの要求事項を充足しているか否かを計算し、充足していれば貨物箱４０，５０，６０，７０の配置位置の計算を打ち切る。機能ブロック８０は、ユーザからの要求事項を充足していても、さらに、重心位置のずれ量が小さくなる貨物箱４０，５０，６０，７０の配置位置の計算を継続する。これに対して、機能ブロック８０Ｂは、積荷種類決定手段８１、積荷要求計算手段８２および積荷配置位置局所探索手段８３によって計算された貨物箱４０，５０，６０，７０の配置位置における重心位置のずれ量がユーザからの要求事項を充足すれば、その時点で貨物箱４０，５０，６０，７０の配置位置の計算を打ち切る。これによって、不必要な計算が付加されるのを防止することができる。そして、貨物箱の交換回数を少なくしてユーザからの要求事項を充足する配置位置を決定できる。
【０１０８】
さらに、この発明によるプログラムの機能ブロックは、図２２に示す機能ブロック８０Ｃであってもよい。機能ブロック８０Ｃは、機能ブロック８０に積荷個別付加制約充足手段８４および積荷要求充足計算打ち切り手段８５を追加したものであり、その他は機能ブロック８０と同じである。積荷個別付加制約充足手段８４については、機能ブロック８０Ａにおいて説明したとおりであり、積荷要求充足計算打ち切り手段８５については機能ブロック８０Ｂにおいて説明したとおりである。
【０１０９】
機能ブロック８０Ｃは、機能ブロック８０，８０Ａ，８０Ｂに対してさらに不要な計算を防止でき、貨物箱４０，５０，６０，７０の配置位置を効率的に決定できる。
【０１１０】
図２３は、上述したプログラムを用いてユーザの要求事項を満たすように貨物箱４０，５０，６０，７０の配置位置の決定を実行するパーソナルコンピュータの機能ブロック図である。パーソナルコンピュータ９０は、データバスＢＳと、ＣＰＵ（Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）９１と、ＲＡＭ（Ｒａｎｄｏｍ Ａｃｃｅｓｓ Ｍｅｍｏｒｙ）９２と、ＲＯＭ（Ｒｅａｄ Ｏｎｌｙ Ｍｅｍｏｒｙ）９３と、シリアルインタフェース９４と、端子９５と、ＣＤ−ＲＯＭドライブ９６と、ディスプレイ９７と、キーボード９８とを備える。
【０１１１】
ＣＰＵ９１は、ＲＯＭ９３に格納されたプログラムをデータバスＢＳを介して読出し、その読出したプログラムを用いて上述した貨物箱４０，５０，６０，７０の配置位置の決定を行なう。また、ＣＰＵ９１は、シリアルインタフェース９４、端子９５およびインターネット網を介して取得したプログラム、またはＣＤ（Ｃｏｍｐａｃｔ Ｄｉｓｋ）９９からＣＤ−ＲＯＭドライブ９６を介して読出したプログラムをＲＯＭ９３に格納する。さらに、ＣＰＵ９１は、キーボード９８から入力されたユーザからの指示を受付けるとともに、上述したプログラムによって計算した貨物箱４０，５０，６０，７０の配置位置をディスプレイに表示する。
【０１１２】
ＲＡＭ９２は、ＣＰＵ９１が上述したプログラムを用いて貨物箱４０，５０，６０，７０の配置位置を決定する際のワークメモリである。ＲＯＭ９３は、上述したプログラムを格納する。シリアルインタフェース９４は、データバスＢＳと端子９５との間でデータのやり取りを行なう。
【０１１３】
端子９５は、ケーブルによってパーソナルコンピュータ９０をモデム（図示せず）に接続するための端子である。ＣＤ−ＲＯＭドライブ９６は、ＣＤ９９に記録されたプログラムを読出す。ディスプレイ９７は、各種の情報を視覚情報としてユーザに与える。キーボード９８は、ユーザからの指示を入力する。
【０１１４】
ユーザが上述したプログラムを用いてパーソナルコンピュータ９０により貨物箱４０，５０，６０，７０の配置位置を決定するとき、ＣＰＵ９１は、データバスＢＳを介してＲＯＭ９３からプログラムを読出す。そして、ＣＰＵ９１は、読出したプログラムを実行し、貨物箱の種類の入力を促すメッセージをディスプレイ９７に表示する。
【０１１５】
パーソナルコンピュータ９０のユーザは、ディスプレイ９７に表示されたメッセージを見て、計算に用いる貨物箱の種類（重量およびサイズ）をキーボード９８からパーソナルコンピュータ９０に入力する。そして、ＣＰＵ９１は、キーボード９８から入力された貨物箱の種類を受付ける。
【０１１６】
その後、ＣＰＵ９１は、上述したフローチャートに従って貨物箱４０，５０，６０，７０の配置位置を決定し、その結果をディスプレイ９７に表示する。
【０１１７】
図２０に示す機能ブロック８０Ａで表されるプログラムを用いている場合、ＣＰＵ９１は、計算に用いる貨物箱４０，５０，６０，７０の各々に個別に付加される制約の入力をディスプレイ９７を介してユーザに促す。そして、ユーザが個別に付加される制約をキーボード９８から入力すると、ＣＰＵ９１は、入力された制約を満たすように貨物箱４０，５０，６０，７０の配置位置を決定する。
【０１１８】
また、図２１に示す機能ブロック８０Ｂで表されるプログラムを用いている場合、ＣＰＵ９１は、計算した結果である貨物箱４０，５０，６０，７０の配置位置をディスプレイ９７に表示するとともに、計算を継続するか否かを問うメッセージをディスプレイ９７に表示する。そして、ユーザは、キーボード９８から計算を中止する指示を入力すると、ＣＰＵ９１は、貨物箱４０，５０，６０，７０の配置位置を決定する計算を中止する。
【０１１９】
さらに、図２２に示す機能ブロック８０Ｃで表されるプログラムを用いている場合、計算に用いる貨物箱４０，５０，６０，７０の各々に個別に付加される制約の入力をディスプレイ９７を介してユーザに促す。そして、ユーザが個別に付加される制約をキーボード９８から入力すると、ＣＰＵ９１は、入力された制約を満たすように貨物箱４０，５０，６０，７０の配置位置を決定する。そして、ＣＰＵ９１は、計算した結果である貨物箱４０，５０，６０，７０の配置位置をディスプレイ９７に表示するとともに、計算を継続するか否かを問うメッセージをディスプレイ９７に表示する。ユーザがキーボード９８から計算を中止する指示を入力すると、ＣＰＵ９１は、貨物箱４０，５０，６０，７０の配置位置を決定する計算を中止する。
【０１２０】
ユーザは、パーソナルコンピュータ９０を端子９５を介してモデム（図示せず）と接続し、インターネットを介してプログラムを取得することができる。そして、ＣＰＵ９１は、端子９５、シリアルインタフェース９４、およびデータバスＢＳを介して取得したプログラムをＲＯＭ９３に格納する。また、ユーザは、ＣＤ９９をＣＤ−ＲＯＭドライブ９６に装着し、ＣＤ９９に記録されたプログラムをパーソナルコンピュータ９０に読込む。ＣＰＵ９１は、ＣＤ−ＲＯＭドライブ９６が読込んだプログラムをデータバスＢＳを介して取得し、ＲＯＭ９３に格納する。そして、ＣＰＵ９１は、ユーザからの指示により、ＲＯＭ９３に格納されたプログラムをデータバスＢＳを介して読出して貨物箱４０，５０，６０，７０の配置位置を決定する。
【０１２１】
このように、パーソナルコンピュータ９０は、各種の方法により、貨物箱４０，５０，６０，７０の配置位置の決定を行なうプログラムを取得することができる。従って、この発明においては、貨物箱４０，５０，６０，７０の配置位置の決定を行なうプログラムは、上述した各種の方法により取得されたプログラムを含む。
【０１２２】
［実施の形態２］
実施の形態２によるプログラムは、図５に示すフローチャートと同じフローチャートから成る。しかし、実施の形態２によるプログラムにおいては、図５に示すステップＳ２，Ｓ３の詳細な動作は、図６に示すフローチャートに代えて図２４に示すフローチャートに従って実行される。
【０１２３】
図２４に示すフローチャートは、図６に示すフローチャートからステップＳ１５を削除したものであり、その他は、図６に示すフローチャートと同じである。つまり、図２４に示すフローチャートにおいては、トリプルサイズの貨物箱７０とランダムな位置に存在するトリプルサイズの貨物箱との交換、およびダブルサイズの貨物箱６０とランダムな位置に存在するダブルサイズの貨物箱との交換を行なわずに、トリプルサイズの貨物箱７０およびダブルサイズの貨物箱６０の配置位置を決定する。
【０１２４】
また、実施の形態２によるプログラムにおいては、図５に示すステップＳ４，Ｓ５の詳細な動作は、図１２に示すフローチャートに代えて図２５に示すフローチャートに従って実行される。
【０１２５】
図２５に示すフローチャートは、図１２に示すフローチャートからステップＳ２５を削除したものであり、その他は、図１２に示すフローチャートと同じである。つまり、図２５に示すフローチャートにおいては、シングルサイズの貨物箱５０とランダムな位置に存在するシングルサイズの貨物箱との交換、およびハーフサイズの貨物箱４０とランダムな位置に存在するハーフサイズの貨物箱との交換を行なわずに、シングルサイズの貨物箱５０およびハーフサイズの貨物箱４０の配置位置を決定する。
【０１２６】
このように、実施の形態２においては、貨物箱４０，５０，６０，７０の位置を、ランダムな位置に存在する同種類の貨物箱の位置と交換せずに、貨物箱６０，７０を隣接する空き領域に移動させ、貨物箱４０，５０を隣接する位置に存在する同種類の貨物箱と交換することによってユーザからの要求事項を満たすように貨物箱４０，５０，６０，７０の配置位置を決定することができる。
【０１２７】
その他は、実施の形態１における説明と同じである。
【０１２８】
［実施の形態３］
実施の形態３によるプログラムは、図５R>５に示すフローチャートと同じフローチャートから成る。しかし、実施の形態３によるプログラムにおいては、図５に示すステップＳ２，Ｓ３の詳細な動作は、図６R>６に示すフローチャートに代えて図２６に示すフローチャートに従って実行される。
【０１２９】
図２６に示すフローチャートは、図６に示すフローチャートからステップＳ１４を削除したものであり、その他は、図６に示すフローチャートと同じである。つまり、図２６に示すフローチャートにおいては、トリプルサイズの貨物箱７０およびダブルサイズの貨物箱６０を隣接する位置に存在する空き領域へ移動させずに、トリプルサイズの貨物箱７０およびダブルサイズの貨物箱６０の配置位置を決定する。
【０１３０】
また、実施の形態３によるプログラムにおいては、図５に示すステップＳ４，Ｓ５の詳細な動作は、図１２に示すフローチャートに代えて図２７に示すフローチャートに従って実行される。
【０１３１】
図２７に示すフローチャートは、図１２に示すフローチャートからステップＳ２４を削除したものであり、その他は、図１２に示すフローチャートと同じである。つまり、図２７に示すフローチャートにおいては、シングルサイズの貨物箱５０と、対象となる貨物箱５０の上下左右の位置に存在するシングルサイズの貨物箱との交換、およびハーフサイズの貨物箱４０と、対象となる貨物箱４０に隣接する位置に存在するハーフサイズの貨物箱との交換を行なわずに、シングルサイズの貨物箱５０およびハーフサイズの貨物箱４０の配置位置を決定する。
【０１３２】
このように、実施の形態３においては、貨物箱４０，５０，６０，７０の位置を、ランダムな位置に存在する同種類の貨物箱の位置と交換することのみによって、ユーザからの要求事項を満たすように貨物箱４０，５０，６０，７０の配置位置を決定することができる。
【０１３３】
その他は、実施の形態１における説明と同じである。上記においては、４種類の貨物箱４０，５０，６０，７０を移動および／または交換することによって、ユーザからの要求事項を満たすように貨物箱４０，５０，６０，７０の配置位置を決定することについて説明した。この発明によるプログラムは、ユーザからの要求事項を満たすように４種類の貨物箱４０，５０，６０，７０の配置位置を決定する場合、一般に貨物箱４０，５０，６０，７０の位置を変更することによって貨物箱４０，５０，６０，７０の配置位置を決定するプログラムであればよい。
【０１３４】
また、上記においては、４種類の貨物箱の配置位置を決定するプログラムについて説明したが、この発明においては、貨物箱の種類は４種類に限らず、１種類以上であればよい。貨物箱の種類が１種類であっても、複数の貨物箱が貨物室に配置されるので、図１０に示すように重心位置のずれ量を小さくして複数の貨物箱を貨物室３１〜３４に配置する必要がある。したがって、この発明によるプログラムは、１種類の貨物箱の配置位置を決定する場合にも適用可能である。
【０１３９】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【産業上の利用可能性】
【０１４０】
この発明は、複数の対象物をユーザからの要求事項を満たすように配置するときの複数の対象物に対する好適な配置位置の決定をコンピュータに実行させるためのプログラムに適用される。また、この発明は、複数の対象物をユーザからの要求事項を満たすように配置するときの複数の対象物に対する好適な配置位置の決定をコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体に適用される。
【図面の簡単な説明】
【０１４１】
【図１】複数の貨物箱を搭載した輸送機が宇宙船にドッキングした状態を示す斜視図である。
【図２】図１に示す輸送機の貨物搭載部を詳細に説明するための斜視図である。
【図３】図２に示す貨物室に搭載される貨物箱の種類、およびサイズを示す図である。
【図４】貨物室へ２種類の貨物箱を配置した例を示す図である。
【図５】実施の形態１〜３によるプログラムのフローチャートである。
【図６】図５に示すフローチャートのステップＳ２，Ｓ３の詳細を示す実施の形態１におけるフローチャートである。
【図７】図６に示すフローチャートのステップＳ１４の詳細を示すフローチャートである。
【図８】図６に示すフローチャートのステップＳ１５の詳細を示すフローチャートである。
【図９】図６に示すフローチャートのステップＳ１６の詳細を示すフローチャートである。
【図１０】トリプルサイズの貨物箱を４つの貨物室に配置したときの概念図である。
【図１１】トリプルサイズおよびダブルサイズの貨物箱を４つの貨物室に配置したときの概念図である。
【図１２】図５に示すフローチャートのステップＳ４，Ｓ５の詳細を示す実施の形態１におけるフローチャートである。
【図１３】図１２に示すフローチャートのステップＳ２４の詳細を示すフローチャートである。
【図１４】シングルサイズの貨物箱の移動概念を説明するための図である。
【図１５】トリプルサイズ、ダブルサイズおよびシングルサイズの貨物箱を４つの貨物室に配置したときの概念図である。
【図１６】トリプルサイズ、ダブルサイズ、シングルサイズおよびハーフサイズの貨物箱を４つの貨物室に配置したときの概念図である。
【図１７】ダブルサイズの貨物箱の移動／交換を示す概念図である。
【図１８】この発明によるプログラムの機能ブロック図である。
【図１９】図１８に示す機能ブロックとフローチャートとの関係図である。
【図２０】この発明によるプログラムの他の機能ブロック図である。
【図２１】この発明によるプログラムのさらに他の機能ブロック図である。
【図２２】この発明によるプログラムのまたさらに他の機能ブロック図である。
【図２３】パーソナルコンピュータの機能ブロック図である。
【図２４】図５に示すフローチャートのステップＳ２，Ｓ３の詳細を示す実施の形態２におけるフローチャートである。
【図２５】図５に示すフローチャートのステップＳ４，Ｓ５の詳細を示す実施の形態２におけるフローチャートである。
【図２６】図５に示すフローチャートのステップＳ２，Ｓ３の詳細を示す実施の形態３におけるフローチャートである。
【図２７】図５に示すフローチャートのステップＳ４，Ｓ５の詳細を示す実施の形態３におけるフローチャートである。
【図２８】従来の問題点を説明するための輸送機の斜視図である。
【符号の説明】
【０１４２】
１０，１００ 輸送機、１１，１１１ 貨物搭載部、１２，１２０ エンジン部、１３ 矢印、２０ 宇宙船、２１〜２３ 貨物搭載室、３１〜３４ 貨物室、３５ 空間、４０，５０，６０，７０ 貨物箱、８０，８０Ａ，８０Ｂ，８０Ｃ 機能ブロック図、８１ 積荷種類決定手段、８２ 積荷要求計算手段、８３積荷配置位置局所探索手段、８４ 積荷個別付加制約充足手段、８５ 積荷要求充足計算打ち切り手段、９０ パーソナルコンピュータ、９１ ＣＰＵ、９２ＲＡＭ、９３ ＲＯＭ、９４ シリアルインタフェース、９５ 端子、９６ＣＤ−ＲＯＭドライブ、９７ ディスプレイ、９８ キーボード、９９ ＣＤ、１１０ 輸送部、１１２ ドッキング部、１１３ 出入口。
【図１】
0004525930.tif 000002
【図２】
0004525930.tif 000003
【図３】
0004525930.tif 000004
【図４】
0004525930.tif 000005
【図５】
0004525930.tif 000006
【図６】
0004525930.tif 000007
【図７】
0004525930.tif 000008
【図８】
0004525930.tif 000009
【図９】
0004525930.tif 000010
【図１０】
0004525930.tif 000011
【図１１】
0004525930.tif 000012
【図１２】
0004525930.tif 000013
【図１３】
0004525930.tif 000014
【図１４】
0004525930.tif 000015
【図１５】
0004525930.tif 000016
【図１６】
0004525930.tif 000017
【図１７】
0004525930.tif 000018
【図１８】
0004525930.tif 000019
【図１９】
0004525930.tif 000020
【図２０】
0004525930.tif 000021
【図２１】
0004525930.tif 000022
【図２２】
0004525930.tif 000023
【図２３】
0004525930.tif 000024
【図２４】
0004525930.tif 000025
【図２５】
0004525930.tif 000026
【図２６】
0004525930.tif 000027
【図２７】
0004525930.tif 000028
【図２８】
0004525930.tif 000029