(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-08
(45)【発行日】2024-04-16
(54)【発明の名称】情報処理装置、最適化方法および最適化プログラム
(51)【国際特許分類】
B65G 1/137 20060101AFI20240409BHJP
B65G 67/60 20060101ALI20240409BHJP
G06Q 10/08 20240101ALI20240409BHJP
G06Q 10/04 20230101ALI20240409BHJP
【FI】
B65G1/137 A
B65G67/60 F
G06Q10/08
G06Q10/04
(21)【出願番号】P 2020214325
(22)【出願日】2020-12-23
【審査請求日】2023-08-04
(31)【優先権主張番号】P 2020072589
(32)【優先日】2020-04-14
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】山口 秀史
(72)【発明者】
【氏名】島田 典明
【審査官】板澤 敏明
(56)【参考文献】
【文献】特開2003-173366(JP,A)
【文献】特開平08-153085(JP,A)
【文献】特開平10-305929(JP,A)
【文献】米国特許出願公開第2018/0040092(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B65G 1/137
B65G 67/60 - 67/62
G06Q 10/00 - 10/30
(57)【特許請求の範囲】
【請求項1】
複数の区画に区分けされるとともに、前記複数の区画の相互間の経路および前記複数の区画それぞれから出入口への経路が定義された、貨物を配置する対象空間に関する空間情報を受け付ける受付部と、
前記空間情報にしたがって、前記貨物の運び入れ時および運び出し時に、運び入れ対象または運び出し対象の貨物から前記出入口への経路上に他の貨物が存在しないことを示す第1の制約条件と、運び入れる貨物数および運び出す貨物数を示す第2の制約条件と、前記複数の区画それぞれの最大積載量を示す第3の制約条件を生成する生成部と、
前記第1の制約条件、前記第2の制約条件、および、前記第3の制約条件に基づいて前記対象空間における前記貨物の配置を決定する決定部と
を有することを特徴とする情報処理装置。
【請求項2】
前記生成部は、前記対象空間の不安定度合いを算出する目的関数を生成し、
前記決定部は、前記第1の制約条件と前記第2の制約条件と前記第3の制約条件と前記目的関数とを用いたエネルギー関数を用いて、前記対象空間の不安定度合いを最小化する前記貨物の配置を決定することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記決定部は、前記エネルギー関数をイジングマシンに入力して、前記イジングマシンによる求解結果を用いて、前記対象空間の不安定度合いを最小化する前記貨物の配置を決定することを特徴とする請求項2に記載の情報処理装置。
【請求項4】
前記受付部は、複数の運び入れる場所それぞれについて運び入れる貨物数と、複数の運び出す場所それぞれについて運び出す貨物数とが対応付けられた搬入出情報、および、前記空間情報における前記複数の区画それぞれについての前記最大積載量に関する積載情報を受け付け、
前記生成部は、前記空間情報と前記搬入出情報と前記積載情報とにしたがって、前記第1の制約条件と前記第2の制約条件と前記第3の制約条件を生成することを特徴とする請求項1に記載の情報処理装置。
【請求項5】
コンピュータが、
複数の区画に区分けされるとともに、前記複数の区画の相互間の経路および前記複数の区画それぞれから出入口への経路が定義された、貨物を配置する対象空間に関する空間情報を受け付け、
前記空間情報にしたがって、前記貨物の運び入れ時および運び出し時に、運び入れ対象または運び出し対象の貨物から前記出入口への経路上に他の貨物が存在しないことを示す第1の制約条件と、運び入れる貨物数および運び出す貨物数を示す第2の制約条件と、前記複数の区画それぞれの最大積載量を示す第3の制約条件を生成し、
前記第1の制約条件、前記第2の制約条件、および、前記第3の制約条件に基づいて前記対象空間における前記貨物の配置を決定する
処理を実行することを特徴とする最適化方法。
【請求項6】
コンピュータに、
複数の区画に区分けされるとともに、前記複数の区画の相互間の経路および前記複数の区画それぞれから出入口への経路が定義された、貨物を配置する対象空間に関する空間情報を受け付け、
前記空間情報にしたがって、前記貨物の運び入れ時および運び出し時に、運び入れ対象または運び出し対象の貨物から前記出入口への経路上に他の貨物が存在しないことを示す第1の制約条件と、運び入れる貨物数および運び出す貨物数を示す第2の制約条件と、前記複数の区画それぞれの最大積載量を示す第3の制約条件を生成し、
前記第1の制約条件、前記第2の制約条件、および、前記第3の制約条件に基づいて前記対象空間における前記貨物の配置を決定する
処理を実行させることを特徴とする最適化プログラム。
【請求項7】
貨物を搬送する移動体の貨物格納空間である対象空間への前記貨物の配置を決定する情報処理装置であって、
複数の区画に区分けされるとともに、前記複数の区画の相互間の経路および前記複数の区画それぞれから出入口への経路が定義された前記対象空間に関する空間情報を受け付ける受付部と、
前記移動体が経由する場所であって前記貨物が運び入れられる場所および前記貨物が運び出される場所とともに、前記場所の順序が規定された搬入出情報を取得する取得部と、
前記搬入出情報と前記空間情報に基づき、前記対象空間における前記貨物の積載量が極小となる第1タイミングと極大となる第2タイミングとを特定する特定部と、
前記空間情報にしたがって、前記貨物の運び入れ時および運び出し時に、運び入れ対象または運び出し対象の貨物から前記出入口への経路上に他の貨物が存在しないことを示す制約であって前記第1タイミング前後で前記経路を変更する条件を規定した第1の制約条件と、運び入れる貨物数および運び出す貨物数を示す第2の制約条件と、前記複数の区画それぞれの最大積載量を示す制約であって前記対象空間の貨物量が極大となる前記第2タイミングで前記最大積載量を満たすことを規定する第3の制約条件を生成する生成部と、
前記第1の制約条件、前記第2の制約条件、および、前記第3の制約条件に基づいて前記対象空間の不安定度合いを最適化する貨物の配置を決定する決定部と
を有することを特徴とする情報処理装置。
【請求項8】
前記特定部は、前記搬入出情報に前記貨物が運び入れられる場所よりも前に前記貨物が運び出される場所が複数存在する場合、前記貨物が運び出される場所から前記貨物が運び入れられる場所へ切り替わる境界を特定し、前記境界の前後で前記場所の順序をグループ化し、
前記生成部は、各グループについて、前記第1の制約条件と前記第2の制約条件と前記第3の制約条件とを生成することを特徴とする請求項7に記載の情報処理装置。
【請求項9】
前記特定部は、前記搬入出情報から、前記貨物の運び入れと前記貨物の運び出しの両方を実行する場所である同時場所を特定し、
前記生成部は、前記同時場所を前記貨物が運び入れられる第1場所と前記貨物が運び出される場所第2場所とが連続して行われる2つの場所と区別し、前記場所の順序において前記同時場所を前記2つの場所に置き換えて、前記第1の制約条件と前記第2の制約条件と前記第3の制約条件とを生成することを特徴とする請求項7または8に記載の情報処理装置。
【請求項10】
貨物を搬送する移動体の貨物格納空間である対象空間への前記貨物の配置を決定するコンピュータを用いた最適化方法であって、コンピュータが、
複数の区画に区分けされるとともに、前記複数の区画の相互間の経路および前記複数の区画それぞれから出入口への経路が定義された前記対象空間に関する空間情報を受け付け、
前記移動体が経由する場所であって前記貨物が運び入れられる場所および前記貨物が運び出される場所とともに、前記場所の順序が規定された搬入出情報を取得し、
前記搬入出情報と前記空間情報に基づき、前記対象空間における前記貨物の積載量が極小となる第1タイミングと極大となる第2タイミングとを特定し、
前記空間情報にしたがって、前記貨物の運び入れ時および運び出し時に、運び入れ対象または運び出し対象の貨物から前記出入口への経路上に他の貨物が存在しないことを示す制約であって前記第1タイミング前後で前記経路を変更する条件を規定した第1の制約条件と、運び入れる貨物数および運び出す貨物数を示す第2の制約条件と、前記複数の区画それぞれの最大積載量を示す制約であって前記対象空間の貨物量が極大となる前記第2タイミングで前記最大積載量を満たすことを規定する第3の制約条件を生成し、
前記第1の制約条件、前記第2の制約条件、および、前記第3の制約条件に基づいて前記対象空間の不安定度合いを最適化する貨物の配置を決定する、
処理を実行することを特徴とする最適化方法。
【請求項11】
貨物を搬送する移動体の貨物格納空間である対象空間への前記貨物の配置を決定する最適化方法をコンピュータに実行させる最適化プログラムであって、コンピュータに、
複数の区画に区分けされるとともに、前記複数の区画の相互間の経路および前記複数の区画それぞれから出入口への経路が定義された前記対象空間に関する空間情報を受け付け、
前記移動体が経由する場所であって前記貨物が運び入れられる場所および前記貨物が運び出される場所とともに、前記場所の順序が規定された搬入出情報を取得し、
前記搬入出情報と前記空間情報に基づき、前記対象空間における前記貨物の積載量が極小となる第1タイミングと極大となる第2タイミングとを特定し、
前記空間情報にしたがって、前記貨物の運び入れ時および運び出し時に、運び入れ対象または運び出し対象の貨物から前記出入口への経路上に他の貨物が存在しないことを示す制約であって前記第1タイミング前後で前記経路を変更する条件を規定した第1の制約条件と、運び入れる貨物数および運び出す貨物数を示す第2の制約条件と、前記複数の区画それぞれの最大積載量を示す制約であって前記対象空間の貨物量が極大となる前記第2タイミングで前記最大積載量を満たすことを規定する第3の制約条件を生成し、
前記第1の制約条件、前記第2の制約条件、および、前記第3の制約条件に基づいて前記対象空間の不安定度合いを最適化する貨物の配置を決定する、
処理を実行させることを特徴とする最適化プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、最適化方法および最適化プログラムに関する。
【背景技術】
【0002】
階層建ての倉庫、平面の駐車場、車両輸送船などに貨物を配置する際、貨物や車両の運び入れや運び出し時に貨物等が通行の妨げにならないように、貨物等を運び入れるときの配置を最適化することが行われている。
【0003】
例えば、1階建ての天井がオープンな船に複数の倉庫から薄板コイルを運搬して船に2段積みで積載する時に、船のバランス等を最適化する技術が知られている。また、複数の配送元から複数の配送先に配送品を配送する場合、各配送先で配送品を卸した後に他の配送品を積んで次の配送先に配送するために、運送効率の良い配送計画を作成する技術が知られている。また、自動車専用船への積付計画(車両配置)において、船内のブロック内で船内障害物を避けブロークンスペースを作らないように個別の車両配置を決定する技術が知られている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開平10-305929号公報
【文献】特開2005-112609号公報
【文献】特開平1-127526号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記技術では、複数回の運び入れと運び出しが発生する場合に、制約条件が多く、最適化にかかる時間が長くなる。例えば、複数の港で車両を積み込み、複数の港で陸揚げを行う車両輸送船を考える。この場合、車両輸送船内の各ブロックに車両を配置するプランニングを行うときに、運び入れ及び陸揚げが可能であることを考慮しながら行う必要がある。これらのプランニングは手作業で行われることが一般的であり、非常に多くの時間がかかる。
【0006】
一つの側面では、貨物配置の最適化にかかる時間を短縮することができる情報処理装置、最適化方法および最適化プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
第1の案では、情報処理装置は、複数の区画に区分けされるとともに、前記複数の区画の相互間の経路および前記複数の区画それぞれから出入口への経路が定義された、貨物を配置する対象空間に関する空間情報を受け付ける受付部を有する。情報処理装置は、前記空間情報にしたがって、前記貨物の運び入れ時および運び出し時に、運び入れ対象または運び出し対象の貨物から前記出入口への経路上に他の貨物が存在しないことを示す第1の制約条件と、運び入れる貨物数および運び出す貨物数を示す第2の制約条件と、前記複数の区画それぞれの最大積載量を示す第3の制約条件を生成する生成部を有する。情報処理装置は、前記第1の制約条件、前記第2の制約条件、および、前記第3の制約条件に基づいて前記対象空間における前記貨物の配置を決定する決定部を有する。
【発明の効果】
【0008】
一実施形態によれば、貨物配置の最適化にかかる時間を短縮することができる。
【図面の簡単な説明】
【0009】
【
図1】
図1は、実施例1にかかる情報処理装置を説明する図である。
【
図2】
図2は、実施例1にかかる情報処理装置の機能構成を示す機能ブロック図である。
【
図4】
図4は、車両運搬船の空間をグラフ構造で表した図である。
【
図6】
図6は、ブロックをセルに分割した模式図である。
【
図7】
図7は、最適化装置による求解と解が表す車両配置の演算を説明する図である。
【
図8】
図8は、最適化された車両配置を説明する図である。
【
図9】
図9は、最適化処理の流れを示すフローチャートである。
【
図10】
図10は、実施例2にかかる車両搬入出表を説明する図である。
【
図11】
図11は、実施例2にかかる寄港順を説明する図である。
【
図12】
図12は、実施例2にかかる制約条件1の定式化を説明するための切り替わり時の特定を説明する図である。
【
図13】
図13は、実施例2にかかる制約条件1の一般式を説明する図である。
【
図14】
図14は、実施例2にかかる制約条件3の定式化を説明する図である。
【
図15】
図15は、実施例2にかかる制約条件3の一般式を説明する図である。
【
図16】
図16は、同時港が存在する場合の制約条件1を説明する図である。
【
図17】
図17は、同時港が存在する場合の制約条件3を説明する図である。
【
図18】
図18は、実施例2にかかる最適化処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0010】
以下に、本願の開示する情報処理装置、最適化方法および最適化プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、各実施例は、矛盾のない範囲内で適宜組み合わせることができる。
【実施例1】
【0011】
[情報処理装置の説明]
図1は、実施例1にかかる情報処理装置10を説明する図である。
図1に示す情報処理装置10は、階層建ての倉庫、平面の駐車場、車両輸送船などに貨物を配置する際、貨物や車両の運び入れや運び出し時に貨物等が通行の妨げにならないように、貨物等を運び入れるときの貨物配置を最適化するコンピュータ装置の一例である。
【0012】
実施例1では、貨物配置の一例として、1回の航海で複数の港で車両を積み込み、複数の港で陸揚げする車両輸送船を例にして説明する。なお、車両は、貨物の一例であり、車両輸送船は、貨物を配置する対象空間の一例である。
【0013】
図1に示すように、情報処理装置10は、複数の区画に区分けされるとともに、複数の区画間の経路および複数の区画それぞれから出入口への経路が定義された、車両を配置する車両輸送船内に関する空間情報の入力を受け付ける。同様に、情報処理装置10は、どの港で何台の車両を積み込み、どの港で何台の車両を陸揚げするかを示す、いわゆる車両搬入出表に該当する搬出入情報の入力を受け付ける。
【0014】
そして、情報処理装置10は、入力された情報を用いて、制約条件を生成する。例えば、情報処理装置10は、車両の積み込み時および陸揚げ時に、積み込みまたは陸揚げ対象の車両から出入口への経路上に他の車両が存在しないことを示す第1の制約条件を生成する。また、情報処理装置10は、積み込み数および陸揚げ数は予め指定されていることを示す第2の制約条件を生成する。また、情報処理装置10は、複数の区画それぞれには予め設定される積載量(最大積載量)を越えない範囲で車両を配置することを示す第3の制約条件を生成する。
【0015】
各港で車両の運び入れまたは陸揚げした時の船の重心も重要であり、船が転覆しないためには船の重心ができるだけ低くなるようにプランニングを考えることが好ましい。本実施例では、情報処理装置10は、車両輸送船の不安定度合いを算出する目的関数を生成する。その後、情報処理装置10は、アニーリング計算機やイジングマシンなどの最適化装置を用いて、第1の制約条件、第2の制約条件、および、第3の制約条件の条件下において目的関数を最小化する車両の配置を決定する。このようにすることで、情報処理装置10は、複雑な制約条件を自動で生成することができるので、車両配置の最適化にかかる時間を短縮することができる。
【0016】
[情報処理装置の機能構成]
図2は、実施例1にかかる情報処理装置10の機能構成を示す機能ブロック図である。
図2に示すように、情報処理装置10は、通信部11、表示部12、記憶部13、制御部20を有する。
【0017】
通信部11は、他の装置の間の通信を制御する処理部であり、例えば通信インタフェースなどにより実現される。例えば、通信部11は、管理者などが利用する装置などの外部装置との間で、各種データの送受信を実行する。
【0018】
表示部12は、各種情報を表示する処理部であり、例えばディスプレイやタッチパネルなどにより実現される。例えば、表示部12は、最終的に得られた車両の配置結果や、算出された求解結果などを表示する。
【0019】
記憶部13は、各種データや制御部20が実行するプログラムなどを記憶する処理部であり、例えばメモリやハードディスクなどにより実現される。この記憶部13は、船舶情報14や車両搬入出表15を記憶する。
【0020】
船舶情報14は、複数の区画に区分けされるとともに、複数の区画間の経路および複数の区画それぞれから出入口への経路が定義された、車両を配置する車両輸送船に関する情報である。例えば、船舶情報14は、車両運搬船の模式図をグラフ化した情報などが該当する。
【0021】
まず、車両運搬船の模式図について説明する。
図3は、車両運搬船の模式図である。
図3に示す模式図に示すように、車両輸送船は、1階のデッキ1から6階のデッキ6まで6階建てあり、各デッキはブロックに分割されるとともに、出入口は1箇所でデッキ3にあり、各デッキはスロープS1、S2、S3で繋がっている。
【0022】
また、デッキ6は、ブロック1から4の4つのブロックに分割され、デッキ5は、ブロック5から8の4つのブロックに分割され、デッキ4は、ブロック9から12の4つのブロックに分割される。同様に、デッキ3は、ブロック13から16の4つのブロックに分割され、デッキ2は、ブロック17から19の3つのブロックに分割され、デッキ1は、ブロック20から22の3つのブロックに分割される。
【0023】
また、スロープS1は、デッキ6およびデッキ5からデッキ3の出入口までの経路であり、スロープS2は、デッキ4から出入口までの経路であり、スロープS1は、デッキ2およびデッキ1から出入口までの経路である。
【0024】
次に、車両運搬船の模式図をグラフ化した情報について説明する。
図4は、車両運搬船の空間をグラフ構造で表した図である。
図4に示すように、同一デッキ内の各ブロックは、相互に繋がっている。また、デッキ6のブロック1からブロック4は、ブロック2、ブロック6、ブロック13を順に経由して出入口に繋がる。デッキ5のブロック5からブロック8は、ブロック6、ブロック13を順に経由して出入口に繋がる。デッキ4のブロック9からブロック12は、ブロック10、ブロック13を順に経由して出入口に繋がる。
【0025】
デッキ3のブロック13からブロック16は、ブロック13を経由して出入口に繋がる。デッキ2のブロック17からブロック19は、ブロック17、ブロック14、ブロック13を順に経由して出入口に繋がる。デッキ1のブロック20からブロック22は、ブロック20、ブロック17、ブロック14、ブロック13を順に経由して出入口に繋がる。
【0026】
なお、船舶情報14には、
図4に示したデッキ位置、ブロック位置、スロープ位置などを含むグラフ構造の情報以外にも、各ブロックの最大積載量などが定義された積載情報も含まれる。
【0027】
図2に戻り、車両搬入出表15は、寄港順や積み下ろし台数などを定めた搬入出情報の一例である。
図5は、車両搬入出表15を説明する図である。
図5に示すように、車両搬入出表15は、車両を積み込む積み込み港と、車両を陸揚げする陸揚げ港と、それぞれの車両数とが対応付けられる。
【0028】
具体的には、車両搬入出表15では、港A→港B→港C→港D→港E→港Fの順で寄港することが定義されている。また、車両搬入出表15の数字は、各港で積み下ろしする車両の台数を示している。例えば、車両(8)の1600台は、港Bで積み込まれて、港Fで陸揚げされる。
【0029】
制御部20は、情報処理装置10全体を司る処理部であり、例えばプロセッサなどにより実現される。この制御部20は、受付部21、定式化部22、最適化部23、出力演算部24を有する。なお、受付部21、定式化部22、最適化部23、出力演算部24は、プロセッサなどの電子回路で実現することもでき、プロセッサが実行するプロセスの一例として実現することもできる。
【0030】
受付部21は、船舶情報14や車両搬入出表15を受け付ける処理部である。例えば、受付部21は、通信部11を介して、管理者端末などから船舶情報14や車両搬入出表15を受け付けて、記憶部13に格納する。なお、船舶情報14や車両搬入出表15は、管理者などが人為的に生成した情報でもよく、公知のツールなどを用いて生成された情報でもよい。
【0031】
定式化部22は、船舶情報14や車両搬入出表15などを用いて、制約条件や目的関数の定式化を実行する処理部である。具体的には、定式化部22は、実施例1にかかる最適化問題を数理最適化問題と捉え、複数の制約条件と目的関数を生成する。
【0032】
(前提)
ここで、定式化部22は、各ブロックをセルに分割して、各セルにバイナリ変数を割り当てる。
図6は、ブロックをセルに分割した模式図である。
図6に示すように、各ブロックは、4つのセルに分割される。なお、分割する数(セルの数)は、最適化装置の仕様により決定されることが好ましい。例えば、セルを細かく分割し過ぎると、変数が多くなり、最適化装置により最適化が遅くなるので、最適化装置の処理能力にしたがって決定されることが好ましい。
【0033】
そして、定式化部22は、変数および定数の定義を以下のように定める。「xijkm」は、「1」または「0」の値である。なお、「1」のときは、積み込み港i、陸揚げ港jの車両がブロックk内のセルmに存在することを示し、それ以外を「0」とする。「cij」は、積み込み港iで積み込み、陸揚げ港jで陸揚げする車両の台数である。「bkm」は、ブロックk内のセルmの最大積載台数である。「M」は、積み込み港の数であり、「N」は、陸揚げ港の数であり、「R」は、ブロックの数であり、「Sk」は、ブロックk内のセルの数である。
【0034】
(制約条件1)
次に、制約条件1について説明する。例えば、定式化部22は、貨物の運び入れ時および運び出し時に、運び入れまたは運び出し対象の貨物から出入口への経路上に他の貨物が存在しないことを示す制約条件1を生成する。すなわち、定式化部22は、「あるブロックを車が通過する時にそのブロックに存在する車両が0台でないと通過できない」とする制約条件1を生成する。
【0035】
例えば、あるセルに車両があるときに、そのセルと出入口との間にあるブロックに着目すると、その車両の積み込み港より前の積み込み港の車両がそのブロックに無い、かつ、その車両の陸揚げ港より後の陸揚げ港の車両がそのブロックに無い、となればよい。したがって、定式化部22は、ブロックr内のセルsに積み込み港p、陸揚げ港qの車両があり、セルsと出入口との間にあるブロックk´として、通過の妨げになる車両ypqを、式(1)のように定義できる。
【0036】
【0037】
ここで、あるxpqrsについて、(xpqrs=1のときypq=0)かつ(xpqrs=のときypqは任意の値)となればよいことは、式(2)のように定義でき、このとき(xpqrs・ypq)は最小である。よって、すべてのp、q、r、sについて和をとった式(3)が成り立てばよい。
【0038】
【0039】
(制約条件2)
次に、制約条件2について説明する。例えば、定式化部22は、運び入れる貨物数および運び出す貨物数は予め指定されていることを示す制約条件2を生成する。すなわち、定式化部22は、「積み込み港で積み込み、陸揚げ港で陸揚げする車両の台数は車両搬入出表15で指定された値である」を示す制約条件2を生成する。
【0040】
例えば、積み込み港p、陸揚げ港qの車両の車両輸送船全体での総和が車両搬入出表15における値cpqと等しくなればよく、これを式(4)で定義する。よって、すべてのp、qについて和をとった式(5)が成り立てばよい。
【0041】
【0042】
(制約条件3)
次に、制約条件3について説明する。例えば、定式化部22は、複数の区画それぞれには予め設定される積載量を越えない範囲で貨物を配置することを示す制約条件3を生成する。すなわち、定式化部22は、「1つのセルに積載可能量以上の車両を積み込むことはできない」を示す制約条件3を生成する。
【0043】
例えば、セルにいずれかの港の車両が存在するが、2つの港の車両が同一のセルに存在することはない。つまり、あるブロックr内にあるセルsについて、すべての港の総和が0または1になればよく、これを式(6)で定義する。あるxpqrsについては式(7)で定義できる。よって、すべてのr、sについて和をとった式(8)が成り立てばよい。
【0044】
【0045】
(目的関数)
次に、目的関数について説明する。例えば、定式化部22は、車両輸送船の安定性を高めるためには、車両輸送船の重心位置をできるだけ低くすることが好ましい。ここで、車両輸送船の不安定性の度合いを示す値Giを、デッキの上半分の積載量と下半分の積載量との差として定義する。すなわち、実施例1においては「Gi=(デッキ4よりも上の積載量)-(デッキ3よりも下の積載量)」と定義する。このため、それぞれの港を出港するときのGiは式(9)で定義できる。例えば、式(9)におけるG1は、積み込み港Aを出港する時の不安定度合いに該当する。これらの結果、目的関数はGiの平均を用いた式(10)で表せられる。
【0046】
【0047】
以上のように、定式化部22は、制約条件1、制約条件2、制約条件3、目的関数を生成して、最適化部23に出力する。
【0048】
最適化部23は、制約条件1、制約条件2、制約条件3の条件下において車両輸送船の不安定度合いを最適化する処理部である。具体的には、最適化部23は、制約条件付きの最適化問題を解くことにより、不安定度合いを最小とする(できるだけ低くする)解を算出する。
【0049】
例えば、最適化部23は、予め設定する任意の定数(β、γ、σ、ε)を用いて、上記制約条件1、制約条件2、制約条件3、目的関数の和である、式(11)に示すエネルギー関数Eを生成する。そして、最適化部23は、エネルギー関数Eを、イジングマシンやアニーリング計算機などの最適化装置に入力し、最適化装置を実行することで、目的関数の値が最小となる値を算出する。
【0050】
【0051】
出力演算部24は、最適な車両配置を演算する処理部である。具体的には、出力演算部24は、最適化部23により取得された最適化装置による求解結果を用いて、車両輸送船の不安定度合いを最小化する最適な車両配置を決定する。そして、出力演算部24は、決定された車両配置を表示部12に表示したり、記憶部13に格納したりする。
【0052】
図7は、最適化装置による求解と解が表す車両配置の演算を説明する図である。
図7に示すように、出力演算部24は、z
nというバイナリ変数を定義し、z
1=x
1111やz
2=x
1112などのように、z
nとx
ijkmとを対応付ける。例えば、z
n=0,(000・・・000)を初期解として最適化装置で演算を行うと、
図7の式(12)に示す解(z
1=1、z
2=0、・・・、z
13=1・・・)が得られる。
【0053】
ここで、出力演算部24は、zn=1のときに車両が存在するので、zn=1となるnを抽出して、対応するi,j,k,mを求めることにより、車両が存在する積み込み港i、陸揚げ港j、ブロックk内のセルmを算出できる。例えば、出力演算部24は、積み込み港をi、陸揚げ港をjとする車両搬入出表15内の交点の数字をc、積み込み数をMとすると、「c=i+M(j-1)」と表すことができるので、ブロックk内のセルmに車両cが存在すると表すことができる。
【0054】
上述した処理を実行することにより、出力演算部24は、車両が存在する積み込み港i、陸揚げ港j、ブロックk内のセルmを算出し、こららを模式図に対応付けることで、車両配置を決定する。
図8は、最適化された車両配置を説明する図である。
図8に示すように、出力演算部24は、車両搬入出表15に示される各車両(1)から(9)の配置を示した模式図を生成して、表示部12に表示する。
図8の模式図の例では、例えば、積み込み港Aで積み込んで陸揚げ港Dで陸揚げする800台の車両(1)をデッキ6に配置し、積み込み港Cで積み込んで陸揚げ港Dで陸揚げする1300台の車両(3)をデッキ6、デッキ5、デッキ3に跨って配置することが示されている。
【0055】
[処理の流れ]
図9は、最適化処理の流れを示すフローチャートである。
図9に示すように、情報処理装置10の受付部21は、処理が開始されると(S101:Yes)、船舶情報14を取得し(S102)、車両搬入出表15を取得する(S103)。
【0056】
続いて、定式化部22は、船舶情報14や車両搬入出表15に基づいて、各制約条件を生成し(S104)、目的関数を生成する(S105)。そして、最適化部23は、各制約条件と目的関数とを加算するエネルギー関数を生成して最適化装置に入力して、最適化装置による求解の結果を取得する(S106)。
【0057】
その後、出力演算部24は、最適化装置による求解の結果(解)が表す車両配置を演算し(S107)、演算により得られた車両配置を出力する(S108)。
【0058】
[効果]
上述したように、情報処理装置10は、問題を数理最適化問題として捉え、入力データから制約条件と目的関数を定め、最適化装置を用いて解くことにより、複数回の運び入れと運び出しが発生する場合であっても、最適化にかかる時間を短縮することができる。例えば、手作業で解くのに30分かかっていた問題であっても、最適化装置により5分程度で制約を満たした車両配置を求めることができる。
【実施例2】
【0059】
上述したように、情報処理装置10は、各種条件を考慮しつつ一概に設定するのが困難である数理最適化問題の制約条件を、車両運搬船等の移動体の模式図や車両搬入出表などを用いて自動で生成することができる。さらに、情報処理装置10は、制約条件を考慮した数理最適化問題を自動で解くことにより、複雑な車両配置を生成し、所定の装置に出力したり、ディスプレイ等に出力したり、車両配置の提案として出力したり、車両運搬船の運営企業へ提示したりすることができる。この結果、情報処理装置10は、制約条件の生成時間の短縮を実現し、制約条件を自動で生成できないなどの一般的な技術と比較して、貨物配置の最適化にかかる時間を短縮することができる。
【0060】
ところで、実施例1では、車両の積み込み(運び入れ)が終わった後に陸揚げ(運び出し)が発生する例を説明したが、最後の積み込み港よりも前に陸揚げ港が存在する場合もある。実施例2では、このような場合に空きスペースをより有効的に利用する手法について説明する。なお、実施例2にかかる情報処理装置10の機能構成は実施例1と同様とする。
【0061】
図10は、実施例2にかかる車両搬入出表15を説明する図であり、
図11は、実施例2にかかる寄港順を説明する図である。なお、この寄港順も車両搬入出表15に含めることもできる。
【0062】
図10に示すように、車両搬入出表15は、車両を積み込む積み込み港と、車両を陸揚げする陸揚げ港と、それぞれの車両数とが対応付けられており、積み込み港が港A、港B、港Dであり、陸揚げ港が港C、港E、港Fであることが定義されている。また、
図11の寄港表は、「港A、港B、港C、港D、港E、港F」の順で寄港することが定義されている。これらを考慮すると、港Aで2000(=300+600+1100)台を積み込み、港Bで1900(=200+100+1600)台を積み込む。その後、港Cで300台を陸揚げし、港Dで300(=200+100)台を積み込み、さらにその後、港Eで200台を陸揚げし、港Fで100台を陸揚げする。
【0063】
このような条件では、実施例1の手法を用いると、港Cで車両を陸揚げしてできた空きスペースにその後で積み込んだ車両を配置しない可能性もある。
【0064】
そこで、実施例2では、条件分けした制約条件1と制約条件3とを生成して最適化を行うことで、空きスペースのさらなる有効活用を実現し、効率的な車両輸送を実現する。具体的には、実施例2では、制約条件1について、陸揚げ港から積み込み港に切り替わる前後で場合分けして定式化を行い、制約条件3について、船内の積載量が極大となるタイミングで各セルの積載量を確認する定式化を行う。なお、制約条件2については、実施例1と同様である。
【0065】
(制約条件1の定式化)
まず、貨物の積み込み(運び入れ)時および陸揚げ(運び出し)時に、積み込みまたは陸揚げ対象の貨物から出入口への経路上に他の貨物が存在しないことを示す制約条件1について説明する。定式化部22は、制約条件1に関し、貨物の積載量が極小となる第1タイミング、すなわち陸揚げ港から積み込み港に切り替わる前後で場合分けして定式化を行う。つまり、定式化部22は、実施例1の制約条件1に、貨物の積載量が極小となる第1タイミング前後で、出入口への経路を切り替える条件を加える。
【0066】
具体的には、定式化部22は、切り替わりとして、寄港順の区切りを決定する。
図12は、実施例2にかかる制約条件1の定式化を説明するための切り替わり時の特定を説明する図である。
図12に示すように、定式化部22は、積み込み港のうち、船内に積み込まれた台数が変化する(陸揚げが行われる)港Bと港Dの間が切り替わり候補Aとなり、陸揚げ港のうち、船内に積み込まれた台数が変化する(積み込みが行われる)港Cと港Eの間が切り替わり候補Bとなる。そして、定式化部22は、これらの共通となる港Cと港Dの間を切り替わり点に特定する。
【0067】
すなわち、定式化部22は、寄港順において、船内の積載量が極小となる陸揚げと積み込みとの境を切り替わり点と特定する。
【0068】
続いて、定式化部22は、制約条件1の場合分けを実行する。具体的には、
図12に示すように、定式化部22は、陸揚げ港から積み込み港に切り替わる手前の港Cのインデックス「j,q=b」とし、陸揚げ港から積み込み港に切り替わった後の港Dのインデックス「i,p=a」とする。なお、この切り替わり時に船内の積載量は極小になっている。
【0069】
ここで、港Dで車両を積み込むときは、港Cにおいて車両の陸揚げが完了していることから領域Nを考慮する必要がなく、港Cで車両を陸揚げするときは、港Dの積み込み前なので、領域Mを考慮する必要がない。
【0070】
すなわち、定式化部22は、
図12に示すように、車両搬入出表15における「q≦b」に該当する領域Nの車両x
pqrsを陸揚げするときに、港D以降で「i≧a」に該当する領域Mの車両はまだ積み込まれていないので、障害とはならないと判定する。よって、定式化部22は、通過の妨げになる車両y
pqを式(12)のように定義する。
【0071】
【0072】
また、定式化部22は、車両搬入出表15における「p≧a」に該当する領域Mの車両xpqrsを積み込むときに、港C以前で「j≦b」に該当する領域Nの車両はすでに存在しないので、障害とはならないと判定する。よって、定式化部22は、通過の妨げになる車両ypqを式(13)のように定義する。
【0073】
【0074】
さらに、定式化部22は、車両搬入出表15における領域Nと領域M以外の「p<a、q>b」に該当する車両xpqrsの積み込みおよび陸揚げ時に、通過の妨げになる車両ypqを、実施例1で説明した上記式(1)と同様に式(14)のように定義する。
【0075】
【0076】
したがって、定式化部22は、式(12)、(13)、(14)のすべての場合においてxpqrs=1のときypq=0となればよいことから、以下の式(15)のBが最小となるように定義する。
【0077】
【0078】
(制約条件1の一般化)
次に、定式化部22は、式(15)に示した制約条件1の定式化を一般式として表現する。
図13は、実施例2にかかる制約条件1の一般式を説明する図である。
図13では、寄港順と、積み込みまたは陸揚げの対象処理とを関連付けて示している。つまり、
図13の例では、港Aから港Jまでの順で寄港し、港Aでは積み込みが行われることが定義されている。
【0079】
このような状態において、定式化部22は、陸揚げ港から積み込み港に切り替わる前後として、港Dと港Eの境、港Hと港Iの境を特定する。ここで、これらの境が船内の積載量が極小値となることから、港Dおよび港Hを極小前港、港Eおよび港Iを極小後港と呼ぶこととする。
【0080】
この条件において、定式化部22は、式(15)を式(16)のように定義し、式(16)内のypqを、関数J1(p)と関数M1(p)とを用いて式(17)のように一般化することができる。ここで、関数J1(p)は、積み込み港pより前にある港の中で最も近い極小前港のインデックスq+1を返し、前に極小前港が存在しない場合は1を返す関数である。また、関数M1(p)は、陸揚げ港qより後ろにある港の中で最も近い極小後港のインデックスp-1を返し、後ろに極小後港が存在しない場合はMを返す関数である。
【0081】
【0082】
(制約条件3の定式化)
次に、複数の区画それぞれには予め設定される積載量を越えない範囲で貨物を配置することを示す制約条件3について説明する。定式化部22は、実施例1の制約条件3に関し、船内の積載量が極大となる第2タイミングで各セルの積載量を確認する条件を加える。
【0083】
図14は、実施例2にかかる制約条件3の定式化を説明する図である。
図14の形式および情報は、
図10および
図11と同様なので、詳細な説明は省略する。制約条件3は、1つのセルに積載可能量以上の車両を積み込むことができない旨を規定する。このことから、定式化部22は、船内の積載量が極大となるタイミングで各セルに積載可能量以上の車両が存在するか確認すればよいと判定し、積み込みから陸揚げに切り替わるタイミングを特定する。
【0084】
すなわち、定式化部22は、港Bと港Dの出港時であると特定する。したがって、定式化部22は、港Bから港Cへの切り替わり時に、
図14の領域Qの積載量が上限を超えないかを判定し、港Dから港Eへの切り替わり時に、
図14の領域Pの積載量が上限を超えないかを判定する。この結果、式(18)が成り立つこととなる。よって、すべてのrとsについての和である式(19)が最小となればよい。
【0085】
【0086】
(制約条件3の一般化)
次に、定式化部22は、式(19)に示した制約条件3の定式化を一般式として表現する。具体的には、
図15を用いて、最後の積み込み港より前に陸揚げ港が複数港存在する場合の一般式を定義する。
図15は、実施例2にかかる制約条件3の一般式を説明する図である。
図15に示す寄港順は、
図13と同様なので、詳細な説明は省略する。
【0087】
図15に示すように、定式化部22は、寄港順を極小港で区切られた領域(パス)で区切る。
図15では、港A、B、C、Dがパス1、港E、F、G、Hがパス2、港I、Jがパス3となり、各パスには1個ずつ極大港(港B、港F、港I)が存在する。そして、定式化部22は、各パス内で上記式(16)のDが最小となればよいことから、式(16)を用いて、制約条件3を式(20)のように一般化することができる。
【0088】
【0089】
なお、式(20)における「n」は、パスのインデックスを示し、「P」は、パスの集合を示す。また、関数M3(n)は、パスn+1の極小後港のインデックスp-1を返し、パスn+1が存在しないときはMを返す関数である。また、関数J3(n)は、パスn-1の極小前港のインデックスq+1を返し、パスn-1が存在しないときは1を返す関数である。
【0090】
(同時港への対応)
ところで、陸揚げ港と積み込み港とが異なる場合に限らず、両方を行う港(同時港)が存在することもある。このような場合における制約条件について検討する。
図16は、同時港が存在する場合の制約条件1を説明する図であり、
図17は、同時港が存在する場合の制約条件3を説明する図である。なお、
図16と
図17では、港Cにおいて陸揚げと積み込みが発生する例を説明する。
【0091】
図16に示すように、定式化部22は、同時港Cを2つの港に分けて陸揚げを行う陸揚げ港C
Dと積み込みを行う積み込み港C
Lとが連続していると考える。この結果、陸揚げ港C
Dが極小前港、積み込み港C
Lが極小後港となる。したがって、車両搬入出表15における「q≦b」に該当する領域Yの車両x
pqrsを陸揚げするときに、「i≧a」に該当する領域Xの車両はまだ積み込まれていないので、障害とはならない。また、車両搬入出表15における「p≧a」に該当する領域Xの車両x
pqrsを積み込むときに、「j≦b」に該当する領域Yの車両はすでに存在しないので、障害とはならない。
【0092】
このように、定式化部22は、同時港Cを含む場合でも、制約条件1に関し、同時港Cを極小前港CDと極小後港CLとに分けるで、上記式(16)および(17)と同様の式により定式化および一般化することができる。
【0093】
また、
図17に示すように、船内の積載量が極大となるタイミングは、陸揚げ前の港Bと港Dの各出港時である。したがって、港Bの出港時、領域Y内の車両の積載量が上限を超えないように、港Dの出港時、領域D内の車両の積載量が上限を超えないように、積み込みを制御する必要がある。
【0094】
このように、定式化部22は、同時港Cを含む場合でも、制約条件3に関し、同時港Cを極小前港CDと極小後港CLとに分けるで、極大のタイミングを細分化することができ、上記式(20)と同様の式により定式化および一般化することができる。
【0095】
(最適化)
上述したように、情報処理装置10は、制約条件1に式(16)および式(17)、制約条件3に式(20)式を用いた式(21)に示すエネルギー関数Eを、イジングマシンやアニーリング計算機などの最適化装置に入力し、最適化装置を実行する。なお、「β、γ、σ」は、予め設定する任意の定数であり、制約条件2は実施例1の式(5)と同一である。
【0096】
【0097】
ここでは、目的関数は省略したが、情報処理装置10は、実施例1で説明した式(10)の目的関数を用いて、式(11)と同様のエネルギー関数を生成し、最適化を実行することで、目的関数の値が最小となる値を算出することもできる。
【0098】
(処理の流れ)
図18は、実施例2にかかる最適化処理の流れを示すフローチャートである。
図18に示すように、情報処理装置10の受付部21は、処理が開始されると(S201:Yes)、船舶情報14を取得し(S202)、車両搬入出表15を取得する(S203)。
【0099】
続いて、定式化部22は、船舶情報14や車両搬入出表15に基づいて、上記各タイミングである寄港順の区切りを決定し(S204)、寄港中の区切りに基づき条件を細分化し(S205)、細分化した条件にしたがって、各制約条件を生成する(S206)。同様に、定式化部22は、目的関数を生成する(S207)。
【0100】
そして、最適化部23は、各制約条件と目的関数とを加算するエネルギー関数を生成して最適化装置に入力して、最適化装置による求解の結果を取得する(S208)。その後、出力演算部24は、最適化装置による求解の結果(解)が表す車両配置を演算し(S209)、演算により得られた車両配置を出力する(S210)。
【0101】
(効果)
上述したように、情報処理装置10は、最後の積み込み港より前に陸揚げ港が存在している場合でも、同時港が存在している場合でも、条件を細分化した制約条件1と制約条件3を生成することにより、陸揚げ後の空きスペースが効率的に使用可能な車両配置を決定することができる。
【実施例3】
【0102】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。
【0103】
[数値等]
上記実施例で用いた車両数、港数、船内の構成図等は、あくまで一例であり、任意に変更することができる。また、上記実施例では、車両輸送船のブロックを複数のセルに分割した例を説明したが、これに限定されるものではなく、1ブロックが1セルであってもよい。また、最適化を実行する最適化装置は、情報処理装置10と各種バスやネットワークなどにより接続される外部装置を用いることもでき、情報処理装置10が内蔵するプロセッサなどを用いることもできる。なお、エネルギー関数や目的関数の最適化の手法は、公知の様々な手法を採用することができる。また、重心は、不安定度合いの指標の一例である。
【0104】
[貨物]
上記実施例では、車両輸送船を例にして説明したが、これに限定されるものではなく、階層建ての倉庫、平面の駐車場、貨物保管庫など、様々な貨物と空間を対象とすることができる。なお、貨物についても、車両に限らず、段ボール箱などのような各種配送物についても同様に処理することができる。なお、対象空間の不安定度合いの例としては、貨物を運ぶ移動体の重心に限らず、貨物を配置する倉庫の適切な位置や重心なども含まれる。
【0105】
[システム]
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【0106】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。なお、受付部21は、受付部の一例であり、定式化部22は、取得部と特定部と生成部の一例であり、最適化部23と出力演算部24は、決定部の一例である。
【0107】
さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【0108】
[ハードウェア]
次に、情報処理装置10のハードウェア構成例を説明する。
図19は、ハードウェア構成例を説明する図である。
図19に示すように、情報処理装置10は、通信装置10a、HDD(Hard Disk Drive)10b、メモリ10c、プロセッサ10dを有する。また、
図19に示した各部は、バス等で相互に接続される。
【0109】
通信装置10aは、ネットワークインタフェースカードなどであり、他のサーバとの通信を行う。HDD10bは、
図2に示した機能を動作させるプログラムやDBを記憶する。
【0110】
プロセッサ10dは、
図2に示した各処理部と同様の処理を実行するプログラムをHDD10b等から読み出してメモリ10cに展開することで、
図2等で説明した各機能を実行するプロセスを動作させる。例えば、このプロセスは、情報処理装置10が有する各処理部と同様の機能を実行する。具体的には、プロセッサ10dは、受付部21、定式化部22、最適化部23、出力演算部24等と同様の機能を有するプログラムをHDD10b等から読み出す。そして、プロセッサ10dは、受付部21、定式化部22、最適化部23、出力演算部24等と同様の処理を実行するプロセスを実行する。
【0111】
このように、情報処理装置10は、プログラムを読み出して実行することで最適化方法を実行する情報処理装置として動作する。また、情報処理装置10は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、情報処理装置10によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
【符号の説明】
【0112】
10 情報処理装置
11 通信部
12 表示部
13 記憶部
14 船舶情報
15 車両搬入出表
20 制御部
21 受付部
22 定式化部
23 最適化部
24 出力演算部