IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社エクサの特許一覧

特開2025-16090積み付け方法、積み付け装置、積み付けプログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025016090
(43)【公開日】2025-01-31
(54)【発明の名称】積み付け方法、積み付け装置、積み付けプログラム
(51)【国際特許分類】
   G06Q 10/083 20240101AFI20250124BHJP
   B63B 27/00 20060101ALI20250124BHJP
   B65G 67/60 20060101ALI20250124BHJP
   G06Q 10/04 20230101ALI20250124BHJP
【FI】
G06Q10/083
B63B27/00 E
B65G67/60 A
B65G67/60 G
G06Q10/04
【審査請求】未請求
【請求項の数】21
【出願形態】OL
(21)【出願番号】P 2023119131
(22)【出願日】2023-07-21
(71)【出願人】
【識別番号】591057256
【氏名又は名称】株式会社エクサ
(74)【代理人】
【識別番号】110002572
【氏名又は名称】弁理士法人平木国際特許事務所
(72)【発明者】
【氏名】松山 圭一
【テーマコード(参考)】
3F077
5L010
5L049
【Fターム(参考)】
3F077AA01
3F077EA09
3F077EA28
5L010AA04
5L010AA16
5L049AA04
5L049AA16
(57)【要約】
【課題】荷物とバラスト水を運搬する船舶に対する積み付け計画を作成するに際して、実用的な時間内で精度のよい解を得ることができる技術を提供する。
【解決手段】本発明に係る積み付け方法は、ホールドとバラストタンクをそれぞれ大スライスと小スライスの2種類へ分割し、荷物の最大数量制約と荷物の最小数量制約を用いて搭載状態を評価することにより、荷物の積込順序を決定する。
【選択図】図1
【特許請求の範囲】
【請求項1】
荷物とバラスト水を運搬する船舶に対して前記荷物を積み込む順序を決定する積み付け方法であって、
前記船舶は、前記荷物を搭載する容器であるホールドと、前記バラスト水を搭載するバラストタンクとを備え、
前記積み付け方法は、
前記ホールドを、前記船舶の高さ方向において、大ホールドスライスと、前記大ホールドスライスよりも容量が小さい小ホールドスライスとの2種類へ仮想的に分割するステップ、
前記バラストタンクを、前記高さ方向において、大バラストタンクスライスと、前記大バラストタンクスライスよりも容量が小さい小バラストタンクスライスとの2種類へ仮想的に分割するステップ、
前記大ホールドスライスまたは前記小ホールドスライスのうち少なくともいずれかに対して前記荷物を搭載するとともに前記大バラストタンクスライスまたは前記小バラストタンクスライスのうち少なくともいずれかに対して前記バラスト水を搭載した搭載状態について、前記搭載状態の評価値を計算するための関数を定義するステップ、
前記関数にしたがって前記評価値を計算するステップ、
前記評価値を最適化することができる前記搭載状態を探索するステップ、
を有し、
前記関数は、
前記船舶に対して積み込む前記荷物の数量が最大契約数量を超えている場合は前記評価値を改悪するペナルティを課す最大数量制約、
前記船舶に対して積み込む前記荷物の数量が最小契約数量未満である場合は前記評価値を改悪するペナルティを課す最小数量制約、
によって構成されている
ことを特徴とする積み付け方法。
【請求項2】
前記最小数量制約は、前記荷物の種別ごとに、前記大ホールドスライスに対して搭載する前記荷物の最小数量と前記小ホールドスライスに対して搭載する前記荷物の最小数量とを規定しており、
前記ホールドを分割するステップにおいては、前記大ホールドスライスの個数が、前記大ホールドスライスに対して搭載する前記荷物の最小数量を全荷物種別について合算した数量以上となるとともに、前記小ホールドスライスの個数が、前記小ホールドスライスに対して搭載する前記荷物の最小数量を全荷物種別について合算した数量以上となるように、前記ホールドを分割する
ことを特徴とする請求項1記載の積み付け方法。
【請求項3】
前記最小数量制約は、前記大バラストタンクスライスに対して搭載する前記バラスト水の最小数量と前記小バラストタンクスライスに対して搭載する前記バラスト水の最小数量とを規定しており、
前記バラストタンクを分割するステップにおいては、前記大バラストタンクスライスの個数が前記大バラストタンクスライスに対して搭載する前記バラスト水の最小数量以上となるとともに、前記小バラストタンクスライスの個数が前記小バラストタンクスライスに対して搭載する前記バラスト水の最小数量以上となるように、前記バラストタンクを分割する
ことを特徴とする請求項1記載の積み付け方法。
【請求項4】
前記関数を定義するステップにおいては、前記ホールドを分割するステップにおいて生成した第1ホールドスライスに第1荷物を搭載するとともに、前記第1ホールドスライスよりも下層または船首側に位置する第2ホールドスライスに第2荷物を搭載した前記搭載状態について、前記関数を定義し、
前記関数は、
前記搭載状態における前記第1荷物と前記搭載状態における前記第2荷物との間の関係を評価する荷物スライス評価係数、
前記搭載状態における前記第1ホールドスライスと前記搭載状態における前記第2ホールドスライスとの間の関係を評価するホールドスライス評価係数、
によって構成されている
ことを特徴とする請求項1記載の積み付け方法。
【請求項5】
前記関数は、
前記第1ホールドスライスに前記第1荷物が搭載されているか否かを表すバイナリ値、
前記第2ホールドスライスに前記第2荷物が搭載されているか否かを表すバイナリ値、
前記荷物スライス評価係数、
前記ホールドスライス評価係数、
を乗算することによって前記評価値を計算するように構成されている
ことを特徴とする請求項4記載の積み付け方法。
【請求項6】
前記荷物スライス評価係数は、前記第1荷物と前記第2荷物の積み込み順序を評価する積込評価係数によって構成されており、
前記積込評価係数は、前記第2荷物の積込港が前記第1荷物の積込港よりも前である場合は、前記評価値を改善する作用を有するように構成されており、
前記積込評価係数は、前記第2荷物の積込港が前記第1荷物の積込港よりも後である場合は、前記評価値を改悪する作用を有するように構成されており、
前記積込評価係数は、前記第2荷物の積込港が前記第1荷物の積込港と同じである場合は、前記評価値を改善する作用も改悪する作用も有さないように構成されている
ことを特徴とする請求項4記載の積み付け方法。
【請求項7】
前記荷物スライス評価係数は、前記第1荷物と前記第2荷物の積み降ろし順序を評価する積降評価係数によって構成されており、
前記積降評価係数は、前記第2荷物の積降港が前記第1荷物の積降港よりも後である場合は、前記評価値を改善する作用を有するように構成されており、
前記積降評価係数は、前記第2荷物の積降港が前記第1荷物の積降港よりも前である場合は、前記評価値を改悪する作用を有するように構成されており、
前記積降評価係数は、前記第2荷物の積降港が前記第1荷物の積降港と同じである場合は、前記評価値を改善する作用も改悪する作用も有さないように構成されている
ことを特徴とする請求項4記載の積み付け方法。
【請求項8】
前記荷物スライス評価係数は、前記第1荷物の種別と前記第2荷物の種別を評価する荷物種別評価係数によって構成されており、
前記荷物種別評価係数は、前記第1荷物の種別と前記第2荷物の種別が同じである場合は、前記評価値を改善する作用を有するように構成されており、
前記荷物種別評価係数は、前記第1荷物の種別と前記第2荷物の種別が異なる場合は、前記評価値を改悪する作用を有するように構成されており、
前記荷物種別評価係数は、前記バラスト水については前記評価値を改善する作用も改悪する作用も有さないように構成されている
ことを特徴とする請求項4記載の積み付け方法。
【請求項9】
前記船舶は、前記船舶の前後方向に沿って配置された、複数の前記ホールドを備え、
前記ホールドスライス評価係数は、前記ホールドスライス評価係数内において前記船舶の船尾側に配置されている前記ホールドに対する積込が、前記ホールドスライス評価係数内において前記船舶の船首側に配置されている前記ホールドに対する積込よりも前である場合は、前記評価値を第1評価量だけ改悪する作用を有するように構成されている
ことを特徴とする請求項4記載の積み付け方法。
【請求項10】
前記ホールドスライス評価係数は、同一の前記ホールドに対して異なる種類の前記荷物が混載された場合は、前記評価値を前記第1評価量よりもさらに大きく改悪する第2評価量だけ改悪する作用を有するように構成されている
ことを特徴とする請求項9記載の積み付け方法。
【請求項11】
前記関数は、前記順序が制約条件を充足しないとき前記評価値を改悪するペナルティ関数によって構成されており、
前記ペナルティ関数は、前記ホールドが搭載した前記荷物の合計容量が前記ホールドの搭載可能容量を超える場合、前記評価値を改悪するペナルティを課すように構成されている
ことを特徴とする請求項1記載の積み付け方法。
【請求項12】
前記関数は、前記順序が制約条件を充足しないとき前記評価値を改悪するペナルティ関数によって構成されており、
前記ペナルティ関数は、前記ホールドが搭載する前記荷物の重量制約として、
単一の前記ホールドが搭載することができる前記荷物の最大値を規定する単一ホールド最大重量制約、
単一の前記ホールドが搭載する必要がある前記荷物の最小値を規定する単一ホールド最小重量制約、
隣接する2つの前記ホールドが搭載することができる前記荷物の合計重量の最大値を規定する隣接ホールド最大重量制約、
隣接する2つの前記ホールドが搭載する必要がある前記荷物の合計重量の最小値を規定する隣接ホールド最小重量制約、
によって構成されている
ことを特徴とする請求項1記載の積み付け方法。
【請求項13】
前記積み付け方法はさらに、
前記搭載状態における前記船舶の排水量に相当する喫水、前記船舶の最大トリム、前記船舶の縦方向浮面中心、前記ホールドの縦方向重心を用いて、前記ホールドの喫水を計算するステップ、
前記ホールドの喫水を用いて、前記ホールドに対して課される前記重量制約を計算するステップ、
を有し、
前記ホールドに対して課される前記重量制約を計算するステップにおいては、前記船舶の許容最大荷物重量と前記船舶の許容最小荷物重量との間の線形関係に対して、前記ホールドの喫水を当てはめることにより、前記ホールドにおける許容荷物重量を計算し、
前記ホールドに対して課される前記重量制約を計算するステップにおいては、前記船舶の必要最大荷物重量と前記船舶の必要最小荷物重量との間の線形関係に対して、前記ホールドの喫水を当てはめることにより、前記ホールドにおける必要荷物重量を計算する
ことを特徴とする請求項12記載の積み付け方法。
【請求項14】
前記ペナルティ関数は、前記隣接ホールド最大重量制約の重みと前記隣接ホールド最小重量制約の重みが他の前記制約条件における重みの半分となるように構成されている
ことを特徴とする請求項12記載の積み付け方法。
【請求項15】
前記関数は、前記順序が制約条件を充足しないとき前記評価値を改悪するペナルティ関数によって構成されており、
前記ペナルティ関数は、前記搭載状態における前記船舶の総重量と、前記搭載状態における前記船舶の排水量との間の差分が閾値以下となる解が、前記探索するステップにおいて得られるように構成されている
ことを特徴とする請求項1記載の積み付け方法。
【請求項16】
前記関数は、前記順序が制約条件を充足しないとき前記評価値を改悪するペナルティ関数によって構成されており、
前記ペナルティ関数は、前記搭載状態における前記船舶のトリムが指定範囲内となる解が前記探索するステップにおいて得られるように構成されている
ことを特徴とする請求項1記載の積み付け方法。
【請求項17】
前記積み付け方法はさらに、前記船舶の前後方向の位置ごとにせん断応力と曲げモーメントを計算するステップを有し、
前記関数は、前記順序が制約条件を充足しないとき前記評価値を改悪するペナルティ関数によって構成されており、
前記ペナルティ関数は、全ての前記位置における前記せん断応力と全ての前記位置における前記曲げモーメントが許容範囲内である必要がある縦強度制約によって構成されている
ことを特徴とする請求項1記載の積み付け方法。
【請求項18】
前記積み付け方法はさらに、前記搭載状態における前記船舶のトリムを計算するステップを有し、
前記せん断応力と前記曲げモーメントを計算するステップにおいては、前記トリムを計算するステップにおいて計算した前記トリムを用いて、前記せん断応力と前記曲げモーメントを計算し、
前記せん断応力と前記曲げモーメントを計算するステップにおいては、計算式内における前記トリムの2乗の項を前記トリムの1乗の項によって近似した上で、その近似式を用いて前記せん断応力と前記曲げモーメントを計算する
ことを特徴とする請求項17記載の積み付け方法。
【請求項19】
前記積み付け方法はさらに、
前記探索するステップによって積み残しが発生した場合は、前記大ホールドスライスまたは前記小ホールドスライスのうち前記ホールドの最上段に位置しているものを除く残スライスを前記ホールドごとに単一のスライスとして再定義するステップ、
前記ホールドの最上段に位置している前記大ホールドスライスまたは前記小ホールドスライスをより小さなスライスへ分割した上で前記探索を再実施することにより、前記積み残しを減少させるステップ、
を有する
ことを特徴とする請求項1記載の積み付け方法。
【請求項20】
荷物とバラスト水を運搬する船舶に対して前記荷物を積み込む順序を決定する積み付け装置であって、
前記船舶は、前記荷物を搭載する容器であるホールドと、前記バラスト水を搭載するバラストタンクとを備え、
前記積み付け装置は、前記順序を決定する演算装置を備え、
前記演算装置は、
前記ホールドを、前記船舶の高さ方向において、大ホールドスライスと、前記大ホールドスライスよりも容量が小さい小ホールドスライスとの2種類へ仮想的に分割するステップ、
前記バラストタンクを、前記高さ方向において、大バラストタンクスライスと、前記大バラストタンクスライスよりも容量が小さい小バラストタンクスライスとの2種類へ仮想的に分割するステップ、
前記大ホールドスライスまたは前記小ホールドスライスのうち少なくともいずれかに対して前記荷物を搭載するとともに前記大バラストタンクスライスまたは前記小バラストタンクスライスのうち少なくともいずれかに対して前記バラスト水を搭載した搭載状態について、前記搭載状態の評価値を計算するための関数を定義するステップ、
前記関数にしたがって前記評価値を計算するステップ、
前記評価値を最適化することができる前記搭載状態を探索するステップ、
を実施することにより前記順序を決定し、
前記関数は、
前記船舶に対して積み込む前記荷物の数量が最大契約数量を超えている場合は前記評価値を改悪するペナルティを課す最大数量制約、
前記船舶に対して積み込む前記荷物の数量が最小契約数量未満である場合は前記評価値を改悪するペナルティを課す最小数量制約、
によって構成されている
ことを特徴とする積み付け装置。
【請求項21】
請求項1から19のいずれか1項記載の積み付け方法をコンピュータに実行させることを特徴とする積み付けプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、船舶に対して荷物を積み込む順序を決定する積み付け方法に関する。
【背景技術】
【0002】
荷物を運搬する船舶は、荷物を収容する容器(ホールド)と、バラスト水を収容するバラストタンクとを、それぞれ1つ以上備えている。船舶に対して荷物を搭載する際には、その積込順序によって、作業効率が異なる。この影響は、積込港と積降港いずれにおいても発生する。例えば積降港において積み降ろす荷物がホールド内の奥まった位置に置かれていると、作業効率が低下する。あるいは上段ホールドに荷物が置かれている状態で下段ホールドから荷物を取り出す作業は、効率が悪いと考えられる。
【0003】
下記特許文献1は、『どのような条件の下でも,最良の積み付け位置計画を自動的に作成でき,又,積み付け作業の途中で作業バースをシフトさせる場合にも対応できる。』ことを課題として、『適宜の積み付け配置案を作成し所定の評価値を演算する配置案作成工程と,積み付け配置案の変更配置案を作成し所定の評価値を演算する変更配置案作成工程と,2つの評価値の比較結果に基づいてより良い配置案を選択する配置案選択工程と,選択された配置案若しくは新たな配置案を配置案作成工程における積み付け配置案として,配置案作成工程,変更配置案作成工程,及び配置案選択工程を繰り返す積み付け位置最適化工程とを具備して構成する。更に,積み付け途中で作業バースが変更される場合には,作業バース割り付け情報と所定のルールとに基づいて,各製品を各作業バースに割り当てる作業バース割り当て工程を具備して構成する。』という技術を記載している(要約参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平10-305929号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ホールドが搭載する荷物とバラストタンクが搭載するバラスト水を最適に配置するためには、これらに対する積み付けを組み合わせ最適化問題として定式化し、シミュレーテッドアニーリングなどの最適化アルゴリズムを用いて最適解を求めることが考えられる。具体的には、例えばホールドとバラストタンクをそれぞれ等容量のスライスに分割し、荷物とバラスト水も同様に等容量のスライスに分割して、それらスライスの組み合わせを求めればよい。
【0006】
しかし、例えば排水量20万トンの船舶を例にすると、1つのスライスの容量を1000mにセットしたとしても、荷物スライスだけでも200スライスとなり、さらにホールドスライス、バラスト水スライス、バラストタンクスライスも取り扱う必要がある。そうすると、各スライスの状態を表す状態変数は数万となり、最適化アルゴリズムを実行する際の消費メモリ容量が過大となって実用性がない。しかも、1000mのスライスでは十分な精度が得られず、積み残しが発生する可能性がある。
【0007】
特許文献1のような従来の積み付け方法は、このような状態変数が膨大となる組み合わせ最適化問題を実用的に解く方法は提供していない。したがって、同文献の手法をそのまま上記例において適用したとしても、実用的な時間内で精度のよい解を得ることは困難であると考えられる。
【0008】
本発明は、上記のような課題に鑑みてなされたものであり、荷物とバラスト水を運搬する船舶に対する積み付け計画を作成するに際して、実用的な時間内で精度のよい解を得ることができる技術を提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明に係る積み付け方法は、ホールドとバラストタンクをそれぞれ大スライスと小スライスの2種類へ分割し、荷物の最大数量制約と荷物の最小数量制約を用いて搭載状態を評価することにより、荷物の積込順序を決定する。
【発明の効果】
【0010】
本発明に係る積み付け方法によれば、荷物とバラスト水を運搬する船舶に対する積み付け計画を作成するに際して、実用的な時間内で精度のよい解を得ることができる。上記以外の課題、構成、利点などについては、以下の実施形態の説明によって明らかとなる。
【図面の簡単な説明】
【0011】
図1】実施形態1に係る船舶が備えるホールドとバラストタンクの構造を模式的に示す図である。
図2】評価関数Hの定義を説明する図である。
図3A】状態変数qの例を示す。
図3B図3Aの点線で囲んだ部分の拡大図である。
図4】Cijのうち積込評価係数について説明する図である。
図5】Cijのうち積降評価係数について説明する図である。
図6】CTijの例を説明する図である。
図7A】Ankの例を示す図である。
図7B】Loading Sequenceが指定する順番にしたがってホールドを配置したAnkの例を示す概念図である。
図8】ペナルティ関数Hのうち最大数量制約について説明する図である。
図9】ペナルティ関数Hのうち最小数量制約について説明する図である。
図10】ペナルティ関数Hのうちホールド容量制約について説明する図である。
図11】ペナルティ関数Hのうちホールド重量制約について説明する図である。
図12】隣接ホールド制約について説明する図である。
図13】許容最大重量と必要最小重量を例示するグラフである。
図14】ペナルティ関数Hのうち喫水制約について説明する図である。
図15】ペナルティ関数Hのうちトリム制約について説明する図である。
図16】ペナルティ関数Hのうち縦強度制約を課すフレーム位置について説明する図である。
図17】縦強度制約の詳細について説明する図である。
図18】せん断応力SS(n)と曲げモーメントSB(n)を求める手順を説明する図である。
図19】状態変数qの最適解を探索する過程を説明する処理フロー図である。
図20】表層並び替えについて説明する模式図である。
図21】実施形態2に係る積み付け装置1の構成図である。
【発明を実施するための形態】
【0012】
<実施の形態1>
上述のように、ホールドやバラストタンク(荷物とバラスト水も同様)を等容量のスライスに分割すると、状態変数が数万に達し、実用的な時間内で精度のよい組み合わせ最適解を得ることは困難である。変数はコスト関数だけでなく制約関数においても必要となるので、変数の個数はさらに増える。したがって、状態変数の個数は1万未満に抑えることが望ましい。他方で状態変数の個数を抑えることによって積み付け精度が著しく低下しないようにする必要がある。
【0013】
そこで本発明の実施形態においては、ホールドとバラストタンクをそれぞれ大容量スライスと小容量スライスの2種類へ分割する。例えば全てを1000mのスライスに分割するのではなく、小容量スライスは1000m、大容量スライスは10000mに分割する。これにより、スライス総数を大幅に減らすことを図る。
【0014】
図1は、本発明の実施形態1に係る船舶が備えるホールドとバラストタンクの構造を模式的に示す図である。図1において、ホールドは9個、バラストタンクは8個ある。各ホールドや各バラストタンクの容量がそれぞれ異なる場合であっても、スライスの個数は全て同じとする。例えばホールドは全て、大ホールドスライス2個と小ホールドスライス6個へ分割し、バラストタンクは全て、大バラストタンクスライス1個と小バラストタンクスライス7個へ分割する。これにより、いずれのホールドやバラストタンクに対して荷物やバラスト水を搭載する場合であっても、条件は同じとなる。
【0015】
ホールドへ搭載する荷物とバラストタンクへ搭載するバラスト水も、同様に大スライスと小スライスへ分割する。大荷物スライスは大ホールドスライスへ搭載し、小荷物スライスは小ホールドスライスへ搭載する。同様に大バラスト水スライスは大バラストタンクスライスへ搭載し、小バラスト水スライスは小バラストタンクスライスへ搭載する。
【0016】
図2は、評価関数Hの定義を説明する図である。評価関数Hは、ペナルティ関数Hと接続エネルギー関数Hの和によって表される。接続エネルギー関数Hは、荷物スライスの搭載状態を、荷物スライス間の接続エネルギーおよびホールドスライス間の接続エネルギーとして定式化することにより、その接続エネルギーを最小化するように状態変数を探索することを介して、最適な荷物積込状態を探索アルゴリズムによって解くためのものである。ペナルティ関数Hについては後述する。
【0017】
図2の数式において、qは荷物スライスの位置を表す状態変数である。Cijは、荷物スライス間の接続エネルギーに対して重み付けすることにより、荷物スライス間の配置関係を評価するために用いる、荷物スライス評価係数である。Ankは、ホールドスライス間の接続エネルギーに対して重み付けすることにより、ホールドスライス間の配置関係を評価するために用いる、ホールドスライス評価係数である。
【0018】
本実施形態においては、評価関数Hを最小化する(接続エネルギーを最小化する)ような状態変数qを、例えばシミュレーテッドアニーリングなどの最適化アルゴリズムによって探索する。
【0019】
図3Aは、状態変数qの例を示す。状態変数qは、荷物jがホールドiに搭載されているときqij=1、搭載されていないときqij=0、であるバイナリ値によって構成された行列として表すことができる。状態変数qは、(ホールドスライス数+バラストタンクスライス数)×(荷物スライス数+バラスト水スライス数)の要素を有する行列である。状態変数qは、図3右上が示す最大数量制約と最小数量制約を有する。これらの制約は例えば契約数量によって課されるものである。点線部分については後述する。
【0020】
最小数量制約は、荷物の種類(この例においてはType#0~Type#2)ごとに、大ホールドスライスに対して搭載すべき荷物スライスの最小数量と、小ホールドスライスに対して搭載すべき荷物スライスの最小数量とを規定している。例えばType#0の荷物については、大ホールドスライスに対して最小5個を搭載し、小ホールドスライスに対して最小3個を搭載する必要がある。バラスト水とバラストタンクスライスも同様の制約を有するが、バラスト水(BW)の種類は1つのみである。
【0021】
最大数量制約は、荷物の種類(Type#0~Type#2)ごとに、大ホールドスライスに対して搭載すべき荷物スライスの最大数量と、小ホールドスライスに対して搭載すべき荷物スライスの最大数量とを規定している。例えばType#0の荷物については、大ホールドスライスに対して最大8個を搭載し、小ホールドスライスに対して最大5個を搭載することができる。バラスト水とバラストタンクスライスも同様の制約を有するが、バラスト水(BW)の種類は1つのみである。
【0022】
以上の制約を満たすように荷物を搭載する場合の状態変数qは、図3左図のように構成される。網掛け部分は荷物を搭載しない。黒塗り部分が示す荷物スライスは、いずれかのホールドスライスに対して搭載する必要がある(最小数量制約)。白塗り部分が示す荷物スライスは、搭載してもしなくてもよい(最大数量制約)。
【0023】
スライス総数は以下のルールを満たす必要がある。大ホールドスライスの総数は、大ホールドスライスへ搭載する荷物の最小数量を全ての荷物種別について合算した個数以上でなければならない。小ホールドスライスの総数は、小ホールドスライスへ搭載する荷物の最小数量を全ての荷物種別について合算した個数以上でなければならない。大バラストタンクスライスの総数は、大バラストタンクスライスへ搭載するバラスト水の最小数量以上でなければならない。小バラストタンクスライスの総数は、小バラストタンクスライスへ搭載するバラスト水の最小数量以上でなければならない。
【0024】
バラスト水は、バラストタンクだけでなく、例えば偶数番号のホールドに搭載してもよい場合がある。例えば荷物が非常に少ないと船の安定性が悪くなるのでバラストタンクへバラスト水を搭載するが、それでも足りなければ偶数番号ホールドにもバラスト水を搭載する。この場合、バラストタンクスライスの個数に加えて偶数番号ホールドスライスの個数も、バラスト水を搭載可能なスライスとしてカウントすることになる。したがってスライス総数のルールは以下のようになる。大バラストタンクスライスの総数と偶数番号大ホールドスライスの総数の合算は、大バラストタンクスライスへ搭載するバラスト水スライスの最小数量以上でなければならない。小バラストタンクスライスの総数と偶数番号小ホールドスライスの総数の合算は、小バラストタンクスライスへ搭載するバラスト水スライスの最小数量以上でなければならない。
【0025】
図3Bは、図3Aの点線で囲んだ部分の拡大図である。図3Bを用いて、最大数量制約と最小数量制約それぞれの例を説明する。
【0026】
最小数量制約について説明する。最小数量制約は黒升部分によって表される。この例において、Type#0の大荷物スライスは、最小5個搭載する必要がある。これら5つの大荷物スライスは、点線が囲んでいる黒升のうちいずれかに必ず搭載される。例えば1つ目の大荷物スライスがCH#0の1つ目の大ホールドスライスに搭載される場合、図3B最左最上の升に1がセットされる。その上下の升は全て0となる(すなわち同じ大荷物スライスが別の大ホールドスライスに対して重複搭載されることはない)。CH#0の1つ目の大ホールドスライスは既に使用済となるので、その左右の升は全て0となる。2つ目以降の大荷物スライスについても同様に搭載し、1をセットした黒升の上下左右の升は全て0となる。
【0027】
最大数量制約について説明する。最大数量制約は白升部分によって表される。この例において、Type#0の大荷物スライスは、最大8個搭載可能である。最小5個の大荷物スライスは既に搭載しているので、残り3つの大荷物スライスは、搭載してもしなくてもよい。例えば6つ目の大荷物スライスをCH#1の2つ目の大ホールドスライスに搭載する場合、図3B右から3列目が示すように、白升に1がセットされる。その上下左右の升は全て0となる。7つ目の大荷物スライスと8つ目の大荷物スライスも同様に搭載する。6つ目~8つ目の大荷物スライスは搭載しなくてもよいが、搭載する場合は以上の例に準じる。
【0028】
以上の例に示すように、最大数量制約と最小数量制約はそれぞれ以下のように表すことができる。最小数量制約を表す黒升部分については、同じ列に属する状態変数の合計は1となる。最大数量制約を表す白升部分については、1をセットしてもしなくてもよいが、セットした場合はその上下左右の升は0となる。換言すると、白升部分については、同じ行に属する状態変数の合計は0または1となり、同じ列に属する状態変数の合計も0または1となる。
【0029】
最大数量制約と最小数量制約を合わせると、以下のように説明することができる。まず最大数量制約と最小数量制約に共通して、同じ行に属する状態変数qijの合計は0または1となり、同じ列に属する状態変数の合計も0または1となる。その上で、最小数量制約については、同じ列に属する状態変数の合計は1となる。
【0030】
図4は、Cijのうち積込評価係数について説明する図である。Cijは、Cij=CLij×AMPLOADING+CDij×AMPDISCHARGE+CTijとして定式化することができる。CLij×AMPLOADINGは、荷物スライスを積み込む順番を評価する積込評価係数である。CDij×AMPDISCHARGEは、荷物スライスを積み降ろす順番を評価する積降評価係数である。CTijは、ある荷物スライスの船首側または下段に同じ荷物種別が搭載されているか否かを評価する荷物種別評価係数である。図4はこれらのうちCLijの例を図示している。AMPLOADINGとAMPDISCHARGEは、任意に設定することができる。
【0031】
(1)CLijを-1と評価とするのは以下の積込状態の場合である:
下層または船首側の荷物jの積込港が、上層または船尾側の荷物iの積込港よりも手前である、つまり、if iの積込港>jの積込港:CL[i,j]=-1
(2)CLijを+1と評価するのは上記以外の積込状態の場合である:
下層または船首側の荷物jの積込港が、上層または船尾側の荷物iの積込港よりも後である、つまり、if iの積込港<jの積込港:CL[i,j]=1
(3)CLijを0と評価するのは上記以外の積込状態の場合:
下層または船首側の荷物jの積込港が、上層または船尾側の荷物iの積込港が同じである、つまり、if iの積込港=jの積込港:CL[i,j]=0
【0032】
図5は、Cijのうち積降評価係数について説明する図である。CDijは以下のように定義することができる。
【0033】
(1)CDijを-1と評価とするのは以下の積込状態の場合である:
下層または船首側の荷物jの積降港が、上層または船尾側の荷物iの積降港よりも後である、つまり、if iの積降港<jの積降港:CD[i,j]=-1
(2)CDijを+1と評価するのは上記以外の積込状態の場合である:
下層または船首側の荷物jの積降港が、上層または船尾側の荷物iの積降港よりも手前である、つまり、if iの積降港>jの積降港:CD[i,j]=1
(3)CDijを0と評価するのは上記以外の積込状態の場合である:
下層または船首側の荷物jの積降港が、上層または船尾側の荷物iの積降港が同じである、つまり、if iの積降港=jの積降港:CD[i,j]=0
【0034】
図6は、CTijの例を説明する図である。ある荷物スライスとその船首側または下段に搭載された荷物スライスが同じ荷物種別である場合、CTij=-1である(評価値を改善する)。荷物種別が異なる場合は、CTij=AMP_TYPEである(評価値を改悪する)。AMP_TYPEは任意にセットできるが、例えば+1である。バラスト水に関しては、CTijの値はセットしない(0とする)。すなわち、バラスト水については、荷物とは異なり、同一バラストタンクに同一タイプのバラスト水スライスが集まることを評価しない。さもないと、バラスト水がバラストタンクに偏って集まる傾向が出てしまうからである。なお、積み残しとなった荷物スライスはqij=0なので、コスト計算の対象外である。
【0035】
図7Aは、Ankの例を示す図である。Ankは、荷物スライスqniとqkjを搭載した状態において、ホールドnとkとの間の配置関係が望ましいか否かを評価するために用いられる。Ankは、ホールドnとkとの間の配置関係が望ましくない場合、評価関数Hを増加させる(評価値を改悪する)ように構成されている。
【0036】
ホールドnとkが同一である場合、Ank=AMP_INTRA=m(mは2以上の正整数)とする。これは、同一ホールドに対して異種荷物が混載されることを厳しく評価するためのものである。ただしバラスト水については、荷物とは異なり、同一バラストタンクに対して搭載してもよいものとする。すなわちバラストタンクについてはAMP_INTRAをセットしない。
【0037】
ホールドnとkが、船尾側ホールドに対して荷物を搭載した後に船首側ホールドに対して荷物を搭載するような配置関係である場合、評価関数Hを増加させる(評価値を改悪する)。本実施形態においてホールドは1階層のみであり上下の配置関係はないので、上下方向の重み付けはない。
【0038】
船舶によっては、各ホールドに対する搭載順序を、Loading Manual内のLoading Sequenceが指定している場合がある。Ankを作成する際にこの順序を考慮してもよい。この場合、Ankを作成する際には、個船のLoading Manualに記載されているLoading Sequenceの順番で、船首側からホールドを並べる。たとえば、Loading Sequenceがホールド番号719356284の順で荷物を搭載するように指示しているのであれば、Ankのn行はバラスト水タンク行の次から順に719356284の順番で配置する。これにより、Loading Sequenceに従いながらホールドnとkとの間の配置関係を評価する。図7AはLoading Sequenceが指定している順番とホールド番号の実際の順番が一致している場合の例を示した。
【0039】
図7Bは、Loading Sequenceが指定する順番にしたがってホールドを配置したAnkの例を示す概念図である。ここでは上記例(ホールド番号:719356284)の順番で各ホールドに対して荷物を積み込む場合における例を示した。すなわち、ホールド番号7はAnkにおいて最も船首側に配置されており、ホールド番号4はAnkにおいて最も船尾側に配置されている。
【0040】
図8は、ペナルティ関数Hのうち最大数量制約について説明する図である。ペナルティ関数Hは、状態変数qが制約条件を満たさないとき評価関数Hに対してペナルティを課すために構成された関数である。ペナルティ関数Hは、(a)荷種別契約数量制約、(b)ホールド容量制約、(c)ホールド重量制約、(d)喫水・トリム制約、(e)縦強度制約、の合算である。
【0041】
最大数量制約の観点から、qijは、それぞれの行/列において1となる変数の個数が1つ以下である行列でなければならない。理由は図3A図3Bにおいて説明した通りである。図8の式を満たせない場合、評価関数Hに対してペナルティを加算する。
【0042】
図9は、ペナルティ関数Hのうち最小数量制約について説明する図である。最小数量制約の観点から、qijは、それぞれの荷種の最小契約数量分の荷物スライス列において総和が1となる行列でなければならない。理由は図3A図3Bにおいて説明した通りである。図9の式を満たせない場合、評価関数Hに対してペナルティを加算する。
【0043】
図10は、ペナルティ関数Hのうちホールド容量制約について説明する図である。ホールド内の荷物の合計容量は、そのホールドが搭載可能な容量を超えてはならない。全てのホールドについてこの制約を満たす必要がある。いずれか1つでもホールド内の荷物容量の合計がそのホールドの搭載可能容量を超える場合、評価関数Hに対してペナルティを加算する。この制約は図10の式によって表される。
【0044】
図11は、ペナルティ関数Hのうちホールド重量制約について説明する図である。ホールド内の荷物の合計重量は、そのホールドが搭載可能な許容最大重量(Allowed_Mass)を超えてはならず、搭載すべき必要最小重量(Required_Mass)以上であることが必要である。全てのホールドについてこの制約を満たす必要がある。いずれか1つでもホールド内の荷物重量の合計がそのホールド重量制約を満たさない場合、評価関数Hに対してペナルティを加算する。この制約は図11の式によって表される。許容最大重量と必要最小重量の詳細については後述する。
【0045】
図12は、隣接ホールド制約について説明する図である。ホールド重量制約は、単独ホールド制約と隣接ホールド制約がある。隣接ホールド制約は、図12のようにバルクヘッド(ホールド間の隔壁)を挟んだ隣接する2つのホールドの合計の荷物重量について、最大許容重量と最小必要重量を定める制約である。例えば、隣接制約1&2と隣接制約2&3がある場合において、ホールド2に対して荷物を追加したとき、これらは同時に制約違反を起こす可能性が高い。つまり隣接ホールド制約については違反時のペナルティ値が2倍になるということであり、制約条件の重みが2倍に急増する。この制約条件の重みの急増は、目的関数の最小化を妨げることになり、解を得られない傾向が強くなる。そこで、隣接ホールド重量制約条件については、他の制約条件の個別重み付けが1.0であるのに対して0.5と設定する。
【0046】
図13は、許容最大重量と必要最小重量を例示するグラフである。これらの値は図13のような線形グラフによって与えられる。このグラフは、例えばLoading Manualにおいて与えられる。このグラフは、単独ホールド制約については各ホールドの中間点における横軸(喫水)の値ごとの許容最大重量と必要最小重量を示し、隣接ホールド制約については隣接ホールドの中間点における横軸(喫水)の値ごとの許容最大重量と必要最小重量を示す。したがって、喫水を用いてこのグラフを参照すれば、許容最大重量と必要最小重量を得ることができる。
【0047】
ただし、本実施形態において喫水を求めるためには、トリムと縦方向重心(LCG)が必要であり、いずれも状態変数qを用いて計算することになる。換言すると、状態変数qを探索する過程において制約関数として許容最大重量と必要最小重量を組み込む必要があるが、許容最大重量と必要最小重量を求めるために状態変数qが必要であり、解(q)とその制約関数が同時に変化する関係となっている。このような多重的な最適化問題を解くことは現実的ではない。
【0048】
そこで本実施形態においては、最適解に到達した時点において喫水はDCF(排水量に相当する喫水)に到達し、トリムは最大トリム(TRIM_MAX)±精度補正値に到達すると仮定し、図13の式1を用いて各喫水Dmh[fp]を算出することとした。その上で図13のグラフとDmp[fp]から許容最大重量と必要最小重量を計算する式は、図13の式(2)となる。したがって本実施形態においては、式(2)を用いて許容最大重量と必要最小重量を求めることとした。
【0049】
図14は、ペナルティ関数Hのうち喫水制約について説明する図である。喫水制約については、指定した喫水(DRAFT)に相当する排水量Δを例えばHydrostatic Tableから求め、船の総重量DW(Dead Weight)が可能な限りΔに近づくように、解を求める。後述するトリム制約においては、DWがΔ近傍まで十分収束していることを前提として、DW=ΔのときのLCB(縦方向浮力中心)などを用いる。したがって、DWがΔ近傍まで十分収束していなければ、トリム制約による最適化において誤差が生じる。そこで探索過程においては、DW=0.999Δまで荷物を積み付けることを目標とする。喫水制約を満たさない状態変数qに対してペナルティを加算する。
【0050】
図15は、ペナルティ関数Hのうちトリム制約について説明する図である。指定の喫水に該当するeven keelでの浮心、トリムモーメント等をHydrostatic Tableから求め、さらに船の各要素のmidshipからの腕の長さをTABLES FOR CAPACITY AND CENTER OF GRAVITYから求めた上で、回転モーメント合計が指定されたトリム範囲内での姿勢をもたらすような積み付けを求める。トリム制約を満たさない状態変数qに対してペナルティを加算する。
【0051】
図16は、ペナルティ関数Hのうち縦強度制約を課すフレーム位置について説明する図である。せん断応力と曲げモーメントをフレーム位置ごとに算出し、すべてのフレーム位置においてこれらが許容値以内であることを、縦強度制約とする。図16のうちF.R.26.5(0)については、強度計算で考慮するコンポーネントとしてqijが含まれないので、例えば定数としてせん断応力と曲げモーメントに加算する。
【0052】
図17は、縦強度制約の詳細について説明する図である。縦強度制約は、せん断応力制約と曲げモーメント制約によって構成されている。これらの制約は、図17の各式によって表される。これらの制約条件を満たさない場合、評価関数Hに対してペナルティを加算する。
【0053】
せん断応力SS(n)と曲げモーメントSB(n)は、指定した喫水とトリムおよび静水の下、軽貨重量(Lightship Weight)と浮力によってフレーム位置FP(n)において生じるものである。これらの値は、指定された喫水(DRAFT[M])における排水量に近い重量で積み付けられた船のDM(Draft Mean)とトリム(TRIM[M])とそれぞれのフレーム位置での係数(SS-Coeff,SB-Coeff)によって求めることができる。したがってSS(n)とSB(n)は後述する図18の計算式によって表される。
【0054】
図18は、せん断応力SS(n)と曲げモーメントSB(n)を求める手順を説明する図である。図18の計算式のうち、TRIMは姿勢制約によって制約が掛けられる値であり、最適解を探索する過程の状態変数qを含んでいる。DMもTRIMを用いて計算するので、同様に状態変数qを含んでいる。すなわちSS(n)とSB(n)は、最適解を探索する過程において計算されることになる。
【0055】
係数DTはDM**2を含み、さらにDM×TRIMの計算式はTRIM**2を含んでいる。そしてTRIMの算出式は状態変数qを含む。したがって、せん断応力や曲げモーメントの制約式中のDM**2とDM×TRIMの算出には状態変数qの2乗が含まれることになる。これにより、最適解を探索する過程において縦強度制約式をメモリ展開する際に大量のメモリ資源を必要とすることになるので、特に40個の制約式を必要とする縦強度制約は、コンピュータ資源、実行時間、通信時間ともに運用上実用性がない。そこで本実施形態においては、TRIM**2を1次式に近似することにより、縦強度制約式の次数を2次から1次に落とす(マクローリン展開)。
【0056】
具体的には、TRIMを指定範囲内に向かわせることを前提として、TRIMの範囲を図18が記載する範囲内とし、さらにTRIM**2、DM**2、DM×TRIMを図18が記載しているTRIMの1次式で近似する。
【0057】
図19は、状態変数qの最適解を探索する過程を説明する処理フロー図である。本実施形態における積み付け計画はナップザック問題でもあるので、制約として最大喫水を指定した場合、荷物量が最大となるように喫水は最大喫水へと向かう。たとえば、積付係数の大きい原料の積み付けにおいて最大喫水に至る前にホールドが満杯になってしまうような場合、その不足分のバラスト水が注入される。この場合は、後述する表層並び替えを実施してもよい。
【0058】
図20は、表層並び替えについて説明する模式図である。図19の繰り返しの過程において、状態変数を一部確定しつつ、未確定の状態変数については荷物スライスの粒度を次第に小さくしながら改めて繰り返しを実施してもよい。例えば表層以下の荷物の積み付けについてはホールド毎に1スライスとして固定し、表層(それぞれ1000m程度)を小さな粒度のスライス(例えば500m)に分割して再度探索を実施する。バラスト水の注入量は減少方向に評価されて荷物ホールドへと移ってゆくので、その時の注入量を最大としてスライスを細粒度化(例えば、500m)する。これによって、各ホールドの余白部分に細かい粒度にした表層スライスを並べる問題を解くことになり、変数の数を変えずにあるいは減らしながら精度を向上することができる。
【0059】
<実施の形態1:まとめ>
本実施形態に係る積み付け方法は、ホールド/バラスト水タンク/荷物/バラスト水をそれぞれ大スライスと小スライスの2種類へ分割し、最大数量制約と最小数量制約を満たしつつ最適解を探索する。これにより、メモリ資源の消費を抑制しつつ、現実的に運用可能な時間内で積み付け計画を最適化問題として解くことができる。
【0060】
本実施形態に係る積み付け方法は、積込評価係数CLij×AMPLOADINGと積降評価係数CDij×AMPDISCHARGEを用いて、積込順序と積降順序が作業効率のよいものとなっているか否かを評価する。これにより、積込作業と積降作業それぞれの作業効率を考慮した積み付け計画を作成することができる。
【0061】
本実施形態に係る積み付け方法は、船首側または下段に搭載した荷物と同じ種別の荷物を搭載することを、荷物種別評価係数CTijによって評価する。これにより、荷物種別の搭載順序に基づき、積込作業または積降作業の効率を考慮した最適化が可能となる。ホールド間の配置関係についても、ホールドスライス評価係数Ankを用いて同様に評価することができる。
【0062】
本実施形態に係る積み付け方法は、状態変数qを含まない近似式を用いて許容最大重量と必要最小重量を計算し、これらを用いてペナルティ関数Hを構成する。これにより、積み付け計画の精度を落とすことなく、ホールド重量制約を考慮した現実的な積み付け計画を得ることができる。
【0063】
本実施形態に係る積み付け方法は、喫水制約とトリム制約を用いてペナルティ関数Hを構成する。指定した喫水を前提としてこれらの制約を満たす積み付け状態を求めることにより、その他の制約も同時に満たす現実的な積み付け計画を得ることができる。
【0064】
本実施形態に係る積み付け方法は、ペナルティ関数Hの一部として縦強度制約を用いる。縦強度制約において、せん断応力SS(n)と曲げモーメントSB(n)は、状態変数qの1次式を用いた近似式によって計算する。これにより、計算資源の消費を現実的な範囲内に抑えて、実運用上で実用性がある計画手法を得ることができる。
【0065】
<実施の形態2>
図21は、本発明の実施形態2に係る積み付け装置1の構成図である。積み付け装置1は、実施形態1で説明した積み付け方法を実施する装置である。積み付け装置1は、演算部11、記憶部12を備える。演算部11は、積み付け装置1に対する指示(例:固定スライス制約における固定指定)を受け取ることもできる。
【0066】
演算部11は、実施形態1で説明した積み付け方法を実施する機能部である。演算部11は、その機能を実装した回路デバイスなどのハードウェアによって構成することもできるし、その機能を実装したソフトウェアをCPU(Central Processing Unit)などの演算装置が実行することによって構成することもできる。
【0067】
記憶部12は、演算部11が用いるデータを格納する記憶装置である。例えば荷物スライスとホールドスライスの初期値を記述したデータ、評価関数Hおよびその各係数などを記述したデータ、固定スライス制約において指定する荷物とホールドを記述したデータ、などを格納することができる。演算部11による演算結果を格納することもできる。
【0068】
演算部11は、積み付け方法を実施することによって得た積み付け状態を記述したデータを、任意の方法によって出力する。例えばその結果を記述したデータを出力する、積み付け装置1が備えるディスプレイなどの出力デバイス上で提示する、などの態様で出力することができる。
【0069】
<実施の形態3>
本発明の実施形態3では、以上の実施形態におけるパラメータの最適化について検討する。積み付け方法自体は以上の実施形態と同様であるので、本実施形態においては最適なパラメータの数値について主に検討する。
【0070】
<実施の形態3:実運用可能なスライス数>
積み付け計画をナップザック問題として扱うためには、積み付ける荷物をある量の粒(スライス)に分割することにより、有限個の集合としなければならない。このときのスライスの幅(容量あるいは重量)は、当然のことながら小さいほど誤差がより少なく、積み付ける最大量の精度は高くなる。しかしながら、スライスの数((荷物スライス+バラスト水スライス)×(ホールドスライス+バラストタンクスライス))は、焼きなまし計算における変数の数であり、論理モデルオブジェクト生成時のメモリ消費量、そのオブジェクトの転送時間、焼きなまし計算時間などに対して大きく影響する。例えば、排水量20万トンの船で、スライス幅を1000m(排水量の0.5%)程度として焼きなましを実施しようとする場合、変数の数は少なくとも200×200=40000ほどとなり、現在利用できる計算資源では実用的な運用は難しい。そこで以上の実施形態においては、大スライスと小スライスの2種類へ分割することとした。
【0071】
例えば、小スライスを1000m(排水量の0.5%)程度としながら、10000m程度の大スライスを併用する。スライス分割の方針としては、ホールドの2/3は大スライスとし、残りの1/3を小スライスとして分割するものとする。例えば、24000mのホールドが容量最大のホールドであった場合は、以下のように計10スライスに分割する。これによって、単純に1000mで等分割した場合の24スライスを10スライスまで減らすことができる。変数の数が2.4倍になった場合、メモリ消費量は30倍以上(2.4の4乗)となる。したがって、スライス数を抑制することにより、メモリ消費量を大幅に抑制できる。
【0072】
・16000mは8000mの大スライス2個
・残りの8000mは1000mの小スライス8個
【0073】
スライス数(大スライス,小スライス)は、船ごとのホールド数、ホールド容量、許容最大重量、荷物量から決定されるが、実用上の変数上限があるので、制約条件の数(負荷)も考慮して適当な数にしなければならない。例えば20万トン、9ホールドの船舶の場合は、メモリ消費量、モデルオブジェクトの転送時間から、下記が適当であると考えられる。このときの変数の数は129×58=7482変数となる。
【0074】
・ホールドスライス数(2,7)
・バラストタンクスライス数(1,7)
【0075】
スライスのサイズは以下の方針で決定する。これは容量に関しての分割サイズについて規定したものだが、重量に関しても同じ分割数(2,7)のなかで最大の許容最大重量に対して分割サイズを決める。
【0076】
・num_of_small_slice×size_of_small_slice≧size_of_big_slice
・Σ(small_slices+big_slices)≧max(ホールド容量)
【0077】
<実施の形態3:容量勝ちと重量勝ち>
以上の実施形態において、荷物スライスに容量と重量の2つの属性を持たせることにより、容量勝ち(後述)の荷物についてはホールド容量制約をかけることができ、重量勝ち(後述)の荷物については重量制約をかけることができるようにした。バラスト水については容量勝ちの荷物として扱う。つまり、荷物とバラスト水はそのSF(積み付け係数)が、境界となるSF値よりも大きいか小さいかによって分割サイズが変わることになる。大スライスと小スライスに分割されたホールドとバラストタンクに、容量と重量の異なる複数種類の荷物スライスが混在することになる。
【0078】
石炭などのようにSFが大きい荷物は、最大のホールド容量から決定したサイズに分割し、その容量に相当する重量を属性として併せ持たせる。鉄鉱石などのようにSFが小さい荷物は、ホールドの許容最大重量から決定したサイズに分割し、その重量に相当する容量を属性として併せ持たせる。
【0079】
“重量勝ちの荷物”とは、ホールドが満杯になる前にそのホールドの許容最大重量を超える荷物である。“容量勝ちの荷物”とは、ホールドの許容最大重量を超える前にそのホールドが満杯になる荷物である。したがって、どちらかの判断の境界となるSFは個船ごとに異なるが、例えばその境界となるSFを以下のように算出することができる。
【0080】
境界となるSF[CF/LT]=(max(ホールド容量[m])x40x1.016)/(max(ホールドの許容最大重量[MT])x1.1327)
【0081】
この方式の最も重要な点として以下が挙げられる。ホールドおよびバラストタンクは、例えばスライス数(大,小)=(2,7)で分割された9ホールド分(81個)の升目とスライス数(大,小)=(1,7)で分割された8バラストタンク分(64個)の升目からなる129個の升目であり、その升目自体は容量や重量を持たない。このように構成されたスライスが充足すべきルールは、『大荷物スライスは大ホールドスライスにしか入らないし、小荷物スライスは小ホールドスライスしか入らない』ということのみである。これによって、容量と重量の両制約を同時に掛けることができるようになり、重量勝ちの荷物であっても、容量勝ちの荷物であっても、あるいはそれらの混載の積み付けであっても、同じモデル(定式化)で扱うことが可能となっている。
【0082】
<実施の形態3:スライス分割に起因する誤差について>
以上の実施形態においては、例えば指定されている喫水DCF=15.00[M]における排水量Δ=167786[MT]をHydrostatic Table(排水量表)から読み取り、「Dead Weight(DW:載貨重量)がもっともΔに近づく最大の荷物を積み付ける」という制約のもとに、同じくDCF=15.00[M]でHydrostatic Tableから読み取ったLCB(Longitudinal Center of Buoyancy)とMTC(1cmトリムに必要なモーメント)を使ってトリムを算出して指定のトリム範囲に収まるようにトリム制約をかける。
【0083】
この手順は、DWがΔへ十分収束していない場合において、トリム計算や以降の強度計算にも誤差を発生させる。そこで、常に十分な精度(例:DW≧0.999Δ、バラスト水が指定量以下であることを目安にしている)を維持した上で焼きなまし実行を繰り返し実施することとした。
【0084】
この誤差は、「複数ナップザック割り当て問題」として積み付け組み合わせ問題を解くために、荷物、バラスト水、ホールド、バラスト水タンクをある程度の適当な小容量にスライス分割して有限集合化していることに起因する。実施形態1で説明した表層並び替えを実施することにより、誤差をさらに低減することができる。
【0085】
<本発明の変形例について>
以上の実施形態において、積み付け計画問題を解くアルゴリズムとしてシミュレーテッドアニーリングを例示したが、その他任意の最適化アルゴリズムを用いてもよい。積み付け装置1は、例えばイジングマシンとして構成してもよい。
【符号の説明】
【0086】
1:積み付け装置
11:演算部
12:記憶部
図1
図2
図3A
図3B
図4
図5
図6
図7A
図7B
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21