JP2023060775A - 航行監視プログラム、航行監視方法および航行監視装置 - Google Patents
航行監視プログラム、航行監視方法および航行監視装置 Download PDFInfo
- Publication number
- JP2023060775A JP2023060775A JP2021170567A JP2021170567A JP2023060775A JP 2023060775 A JP2023060775 A JP 2023060775A JP 2021170567 A JP2021170567 A JP 2021170567A JP 2021170567 A JP2021170567 A JP 2021170567A JP 2023060775 A JP2023060775 A JP 2023060775A
- Authority
- JP
- Japan
- Prior art keywords
- ship
- route
- navigation
- information
- block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 107
- 238000012806 monitoring device Methods 0.000 title claims description 38
- 238000012544 monitoring process Methods 0.000 title claims description 17
- 238000012545 processing Methods 0.000 claims abstract description 67
- 238000003860 storage Methods 0.000 claims abstract description 29
- 238000010801 machine learning Methods 0.000 claims abstract description 14
- 238000005192 partition Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 46
- 238000012937 correction Methods 0.000 description 28
- 239000013598 vector Substances 0.000 description 25
- 238000010586 diagram Methods 0.000 description 17
- 238000013459 approach Methods 0.000 description 14
- 230000003068 static effect Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 238000004891 communication Methods 0.000 description 9
- 238000007637 random forest analysis Methods 0.000 description 8
- 239000000284 extract Substances 0.000 description 6
- 238000002372 labelling Methods 0.000 description 5
- 230000033001 locomotion Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000007781 pre-processing Methods 0.000 description 4
- 101001093025 Geobacillus stearothermophilus 50S ribosomal protein L7/L12 Proteins 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000007477 logistic regression Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 108700019909 BL 19 Proteins 0.000 description 1
- 101000575029 Bacillus subtilis (strain 168) 50S ribosomal protein L11 Proteins 0.000 description 1
- 101000676341 Bacillus subtilis (strain 168) 50S ribosomal protein L27 Proteins 0.000 description 1
- 102100035793 CD83 antigen Human genes 0.000 description 1
- 101000946856 Homo sapiens CD83 antigen Proteins 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005401 electroluminescence Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000015654 memory Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
- G01C21/203—Specially adapted for sailing ships
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B63—SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
- B63B—SHIPS OR OTHER WATERBORNE VESSELS; EQUIPMENT FOR SHIPPING
- B63B79/00—Monitoring properties or operating parameters of vessels in operation
- B63B79/40—Monitoring properties or operating parameters of vessels in operation for controlling the operation of vessels, e.g. monitoring their speed, routing or maintenance schedules
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B63—SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
- B63B—SHIPS OR OTHER WATERBORNE VESSELS; EQUIPMENT FOR SHIPPING
- B63B79/00—Monitoring properties or operating parameters of vessels in operation
- B63B79/20—Monitoring properties or operating parameters of vessels in operation using models or simulation, e.g. statistical models or stochastic models
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G3/00—Traffic control systems for marine craft
- G08G3/02—Anti-collision systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
Landscapes
- Engineering & Computer Science (AREA)
- Ocean & Marine Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mechanical Engineering (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Probability & Statistics with Applications (AREA)
- Automation & Control Theory (AREA)
- Navigation (AREA)
- Traffic Control Systems (AREA)
Abstract
【課題】船舶が航路に沿って航行するかを精度よく予測する。【解決手段】記憶部11は、過去に航行した複数の船舶のそれぞれについての方向を示す方向情報および位置を示す位置情報と、複数の船舶のそれぞれが航路に沿って航行したか否かを示す正解ラベルとを用いた機械学習によって作成された予測モデル11aを示すデータを記憶する。処理部12は、航行中の船舶22の方向情報および位置情報を取得し、取得した方向情報および位置情報を予測モデル11aに入力することで、航行中の船舶22が航路に沿って航行するかを予測する。【選択図】図1
Description
本発明は、航行監視プログラム、航行監視方法および航行監視装置に関する。
船舶に関しては、一般的に、大きな船舶ほど急な針路変更や停止が困難であるという性質がある。このため、船舶同士の衝突を回避するための様々な技術が開発されている。例えば、船舶同士の距離や各船舶の対地針路などに基づいて、船舶同士の接近を検知する、あるいは船舶同士の衝突リスクを算出することが考えられている。
また、関連技術として、例えば、自船の位置が航路領域に設定されたすべてのユニット航路領域内に存在しない場合に、自船が航路を逸脱したと判断する航路表示装置が提案されている。さらに、船舶の位置の変化方向を検出するとともに、航行領域と進行方向とを対応付けた情報に基づき、船舶の位置から特定される航行領域に対応付けられた進行方向を特定し、変化方向と進行方向とのなす角度に基づいて、船舶の航行領域内での逆走を検出するシステムも提案されている。
ところで、船舶が航路に沿って航行するかを予測する技術においては、特に航路が屈曲している場合に、正確な予測を行うことが難しいという問題がある。
1つの側面では、本発明は、船舶が航路に沿って航行するかを精度よく予測可能な航行監視プログラム、航行監視方法および航行監視装置を提供することを目的とする。
1つの側面では、本発明は、船舶が航路に沿って航行するかを精度よく予測可能な航行監視プログラム、航行監視方法および航行監視装置を提供することを目的とする。
1つの案では、コンピュータに、航行中の船舶の方向を示す方向情報および位置を示す位置情報を取得し、過去に航行した複数の船舶のそれぞれについての方向情報および位置情報と、複数の船舶のそれぞれが航路に沿って航行したか否かを示す正解ラベルとを用いた機械学習によって作成された予測モデルに対して、取得した方向情報および位置情報を入力することで、航行中の船舶が航路に沿って航行するかを予測する、処理を実行させる航行監視プログラムが提供される。
また、1つの案では、上記の航行監視プログラムに基づく処理と同様の処理をコンピュータが実行する航行監視方法が提供される。
さらに、1つの案では、上記の航行監視プログラムに基づく処理と同様の処理を実行する航行監視装置が提供される。
さらに、1つの案では、上記の航行監視プログラムに基づく処理と同様の処理を実行する航行監視装置が提供される。
また、1つの案では、コンピュータに、航行中の船舶の方向を示す方向情報を取得するとともに、航路に沿った所定幅の航路領域を航行方向に対して多角形の形状に分割することで設定された複数の区画のうち、航行中の船舶が位置する一の区画を特定し、過去に航行した複数の船舶のそれぞれについての方向情報と、複数の船舶のそれぞれが航路に沿って航行したか否かを示す正解ラベルとを用いて、複数の区画のうち複数の船舶のそれぞれが位置する区画ごとに機械学習することで作成された、複数の区画にそれぞれ対応する複数の予測モデルの中から、一の区画に対応する一の予測モデルを選択し、一の予測モデルに航行中の船舶の方向情報を入力することで、航行中の船舶が航路に沿って航行するかを予測する、処理を実行させる航行監視プログラムが提供される。
また、1つの案では、上記の航行監視プログラムに基づく処理と同様の処理をコンピュータが実行する航行監視方法が提供される。
また、1つの案では、上記の航行監視プログラムに基づく処理と同様の処理を実行する航行監視装置が提供される。
また、1つの案では、上記の航行監視プログラムに基づく処理と同様の処理を実行する航行監視装置が提供される。
1つの側面では、船舶が航路に沿って航行するかを精度よく予測できる。
以下、本発明の実施の形態について図面を参照して説明する。
〔第1の実施の形態〕
図1は、第1の実施の形態に係る航行監視装置の構成例および処理例を示す図である。図1に示す航行監視装置10は、航行中の船舶が航路に沿って航行するかを予測し、その予測結果を出力する装置である。このような予測結果を用いることで、例えば、船舶の航行を支援することが可能となる。この航行監視装置10は、記憶部11と処理部12を有する。
〔第1の実施の形態〕
図1は、第1の実施の形態に係る航行監視装置の構成例および処理例を示す図である。図1に示す航行監視装置10は、航行中の船舶が航路に沿って航行するかを予測し、その予測結果を出力する装置である。このような予測結果を用いることで、例えば、船舶の航行を支援することが可能となる。この航行監視装置10は、記憶部11と処理部12を有する。
記憶部11は、航行監視装置10が備える図示しない記憶装置の記憶領域である。記憶部11には、予測モデル11aを示すデータが記憶される。予測モデル11aは、船舶が航路に沿って航行するかを予測する予測器を学習した学習済みモデルである。処理部12は、例えば、航行監視装置10が備える図示しないプロセッサである。処理部12は、航行中の船舶が航路に沿って航行するかを、予測モデル11aを用いて予測する。
予測モデル11aは、次のような手順で作成される。図1の上側に示すように、ある海域(例えば、特定の港湾)を過去に航行した複数の船舶のそれぞれについて、船舶の方向を示す方向情報と、船舶の位置を示す位置情報と、船舶が航路に沿って航行したか否かを示す正解ラベルとが取得される。そして、複数の船舶のそれぞれについての方向情報、位置情報および正解ラベルを用いた学習によって、船舶が航路に沿って航行するかを予測する予測モデル11aが作成される。
なお、方向情報としては、例えば、対地針路や船首方位角などを用いることができる。また、位置情報としては、例えば、緯度、経度の少なくとも一方を用いることができる。あるいは、位置情報としては、次のような区画番号を用いることもできる。
図1に示す海図20には、ある海域に設定された航路領域21を例示している。航路領域21は、航路に沿って所定の幅を有する領域である。このような航路領域21を航路方向に対して多角形によって分割することで、複数の区画が設定される。位置情報としては、複数の区画のうち、船舶が位置する区画を示す区画番号を用いることができる。
また、正解ラベルは、例えば、次のように設定される。船舶が、ある時刻において上記の航路領域21内に存在したとする。そして、その後に所定時間航行したとき、または所定距離だけ航行したときに、船舶が航路領域21に存在する場合に、船舶が航路に沿って航行したことを示す値が正解ラベルに設定される。また、上記の区画を用いて正解ラベルを設定することもできる。例えば、ある時刻において船舶がある区画に存在したとする。そして、船舶がその後に、その区画から航路方向に所定数だけ先の区画に到達した場合に、船舶が航路に沿って航行したことを示す値が正解ラベルに設定される。
処理部12は、次のような手順で予測処理を実行する。処理部12は、航行中の船舶22についての方向を示す方向情報、および位置を示す位置情報を取得する。処理部12は、取得した方向情報と位置情報を予測モデル11aに入力することで、船舶22が航路に沿って航行するかを予測する。予測結果としては、例えば、船舶22が航路に沿って航行する確率の値が出力される。
ここで、例えば、船舶の方向情報だけを基に船舶が航路に沿って航行するかを予測する方法では、次のような問題がある。例えば、航路が屈曲している領域では、船舶の方向が航路領域21の外側を向く。このため、実際には船舶が航路に沿って航行し続ける場合でも、航路から逸脱すると誤って予測される可能性がある。
これに対して、本実施の形態では、船舶の方向と位置との関係を考慮した予測モデル11aが作成される。そして、航行中の船舶の方向情報と位置情報とが予測モデル11aに入力されることで、その船舶が航路に沿って航行するかが予測される。これにより、航路が屈曲しているか否かに関係なく、ある一定以上の精度で予測することが可能になる。したがって、船舶が航路に沿って航行するかを精度よく予測できる。
〔第2の実施の形態〕
次に、図1に示した航行監視装置10による予測処理を、船舶同士の衝突危険性の判定に適用したシステムについて説明する。
次に、図1に示した航行監視装置10による予測処理を、船舶同士の衝突危険性の判定に適用したシステムについて説明する。
図2は、第2の実施の形態に係る航行支援システムの構成例を示す図である。図2に示す航行支援システムは、船舶の航行を支援するための情報処理システムである。この航行支援システムは、陸上に設置された陸上施設100を含む。陸上施設100は、例えば、海上の船舶についての航行管制を行う施設である。この場合、陸上施設100は、各船舶から受信したAIS(Automatic Identification System)データやレーダによる検出情報に基づいて、各船舶の位置を把握し、各船舶に対して海上交通に関する各種の情報を提供する。
AISデータには、動的情報、静的情報および航行関連情報(準動的情報)が含まれている。動的情報としては、例えば、現在時刻、船舶の位置(緯度、経度)、対地針路(Course Over Ground:COG)、対地船速(Speed Over Ground:SOG)、船首方位角(Heading:HDG)、回頭角速度(Rate Of Turn:ROT)などが含まれる。静的情報としては、例えば、船舶を識別するMMSI(Maritime Mobile Service Identity)番号、船種、船舶の長さなどが含まれる。航行関連情報としては、行き先、喫水などが含まれる。
本実施の形態において、陸上施設100は、各船舶からのAISデータを受信可能な無線通信装置101と、AISデータを用いて船舶の航行を監視する航行監視装置102を含む。無線通信装置101は、例えば、AISデータを受信するためのアンテナを含む。航行監視装置102は、図1に示した航行監視装置10の処理機能を備える装置であり、例えば、サーバコンピュータとして実現される。航行監視装置102は、無線通信装置101によって受信されたAISデータに基づいて、衝突リスクのある船舶のペアを検出し、それらの船舶を通知する警報情報を出力する。
なお、図2では、海上を航行する船舶201,202を例示している。船舶201,202は、AISデータを送受信することが可能なAIS装置203,204をそれぞれ備えている。船舶201,202は、自船に関するAISデータをそれぞれAIS装置203,204を介して他の船舶や陸上施設100に送信できるとともに、他船から送信されたAISデータをそれぞれAIS装置203,204を介して受信できる。
また、航行監視装置102の処理機能の少なくとも一部は、船舶に搭載されてもよい。例えば、船舶に搭載される監視装置は、自船を含む航行中の船舶のAISデータに基づいて、衝突リスクのある船舶のペアを検出し、検出された船舶を示す情報を表示装置に表示させる。
図3は、航行監視装置のハードウェア構成例を示す図である。航行監視装置102は、例えば、図3に示すようなコンピュータとして実現される。図3に示す航行監視装置102は、プロセッサ111、RAM(Random Access Memory)112、HDD(Hard Disk Drive)113、GPU(Graphics Processing Unit)114、入力インタフェース(I/F)115、読み取り装置116、通信インタフェース(I/F)117およびネットワークインタフェース(I/F)118を有する。
プロセッサ111は、航行監視装置102全体を統括的に制御する。プロセッサ111は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)またはPLD(Programmable Logic Device)である。また、プロセッサ111は、CPU、MPU、DSP、ASIC、PLDのうちの2以上の要素の組み合わせであってもよい。
RAM112は、航行監視装置102の主記憶装置として使用される。RAM112には、プロセッサ111に実行させるOS(Operating System)プログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM112には、プロセッサ111による処理に必要な各種データが格納される。
HDD113は、航行監視装置102の補助記憶装置として使用される。HDD113には、OSプログラム、アプリケーションプログラム、および各種データが格納される。なお、補助記憶装置としては、SSD(Solid State Drive)などの他の種類の不揮発性記憶装置を使用することもできる。
GPU114には、表示装置114aが接続されている。GPU114は、プロセッサ111からの命令にしたがって、画像を表示装置114aに表示させる。表示装置としては、液晶ディスプレイや有機EL(ElectroLuminescence)ディスプレイなどがある。
入力インタフェース115には、入力装置115aが接続されている。入力インタフェース115は、入力装置115aから出力される信号をプロセッサ111に送信する。入力装置115aとしては、キーボードやポインティングデバイスなどがある。ポインティングデバイスとしては、マウス、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
読み取り装置116には、可搬型記録媒体116aが脱着される。読み取り装置116は、可搬型記録媒体116aに記録されたデータを読み取ってプロセッサ111に送信する。可搬型記録媒体116aとしては、光ディスク、光磁気ディスク、半導体メモリなどがある。
通信インタフェース117は、例えば無線通信装置101などの他の装置との間でデータの送受信を行う。
ネットワークインタフェース118は、ネットワーク118aを介して他の装置との間でデータの送受信を行う。
ネットワークインタフェース118は、ネットワーク118aを介して他の装置との間でデータの送受信を行う。
以上のようなハードウェア構成によって、航行監視装置102の処理機能を実現することができる。
図4は、航行監視装置が備える処理機能の構成例を示す図である。図4に示すように、航行監視装置102は、記憶部120、特徴量データ作成部131、航行状態学習部132、AISデータ取得部141、衝突危険性判定部142、特徴量データ作成部143、航行状態予測部144および判定結果補正部145を備える。
図4は、航行監視装置が備える処理機能の構成例を示す図である。図4に示すように、航行監視装置102は、記憶部120、特徴量データ作成部131、航行状態学習部132、AISデータ取得部141、衝突危険性判定部142、特徴量データ作成部143、航行状態予測部144および判定結果補正部145を備える。
記憶部120は、例えばRAM112やHDD113など、航行監視装置102が備える記憶装置の記憶領域である。記憶部120には、AIS履歴データベース(DB)121、航路区画データベース(DB)122、学習用の特徴量データベース(DB)123、予測モデルデータ124および推論用の特徴量データベース(DB)125が記憶される。
AIS履歴データベース121には、複数の船舶のそれぞれから過去の航行中に送信されたAISデータが記憶される。
航路区画データベース122には、航路領域に設定されるブロック(航路区画)に関する情報が記憶される。ブロックとは、航路領域を多角形によって分割することで生成される区画である。各ブロックは、ブロックIDによって識別される。
航路区画データベース122には、航路領域に設定されるブロック(航路区画)に関する情報が記憶される。ブロックとは、航路領域を多角形によって分割することで生成される区画である。各ブロックは、ブロックIDによって識別される。
特徴量データベース123には、AIS履歴データベース121に記憶された情報に基づいて特徴量データ作成部131によって作成された特徴量データが記憶される。特徴量データベース123に記憶された特徴量データは、航行状態学習部132による航行状態の学習用に利用される。
予測モデルデータ124は、航行状態指標を算出するための学習済みモデルを示すデータであり、航行状態学習部132による学習の結果として作成される。航行状態指標は、航路領域上のあるブロックに位置する船舶が、その後も航路に沿って航行し続ける可能性を示す定量指標である。したがって、予測モデルデータ124が示す学習済みモデルは、船舶がその後も航路に沿って航行するか(航行し続けるか)を予測する予測器のモデル(予測モデル)を示す。
特徴量データベース125には、航行中の船舶についての特徴量データが蓄積される。この特徴量データは、航行中の船舶から送信され、無線通信装置101によって受信されたAISデータに基づき、特徴量データ作成部143によって作成される。
特徴量データ作成部131、航行状態学習部132、AISデータ取得部141、衝突危険性判定部142、特徴量データ作成部143、航行状態予測部144および判定結果補正部145の処理は、例えば、プロセッサ111が所定のアプリケーションプログラムを実行することで実現される。
特徴量データ作成部131は、AIS履歴データベース121に記憶されたAISデータに基づいて、航行状態の学習用の特徴量データを作成し、特徴量データベース123に登録する。
航行状態学習部132は、特徴量データベース123に登録された特徴量データを学習データ(教師データ)として用いて、航行状態を予測するための予測モデルを学習によって作成する。作成された予測モデルのデータは、予測モデルデータ124として記憶部120に格納される。
AISデータ取得部141は、現在航行中の船舶から送信されたAISデータを、無線通信装置101を介して取得する。
衝突危険性判定部142は、AISデータ取得部141が取得したAISデータに基づいて、航行中の船舶間の衝突危険性を判定する。
衝突危険性判定部142は、AISデータ取得部141が取得したAISデータに基づいて、航行中の船舶間の衝突危険性を判定する。
特徴量データ作成部143は、AISデータ取得部141が取得したAISデータに基づいて、航行中の船舶に対応する特徴量データを特徴量データ作成部131と同様の方法で作成する。特徴量データ作成部143は、作成した特徴量データを、航行状態予測部144に受け渡すとともに、特徴量データベース125に蓄積する。
航行状態予測部144は、予測モデルデータ124に基づく予測モデル(学習済みモデル)に船舶の特徴量データを入力することで、その船舶についての航行状態指標を算出する。これにより、船舶が航路に沿って航行するか(航行し続けるか)を示す航行状態が予測される。
判定結果補正部145は、衝突危険性判定部142による衝突危険性の判定結果を、航行状態予測部144による航行状態の予測結果を用いて補正する。この補正により、衝突危険性判定部142による誤判定の可能性を低減する。
以上の航行監視装置102では、衝突危険性判定部142により、航行中の船舶間の衝突危険性が判定される。この衝突危険性は、例えば、各船舶についての延長ベクトル、船舶間の最接近距離(Distance to Closest Point of Approach:DCPA)や最接近時間(Time to Closest Point of Approach:TCPA)、ある船舶と別の船舶との間の航行妨害ゾーン(Obstacle Zone by Target:OZT)などに基づいて判定される。
ただし、これらの情報は、船舶が直線的に航行することを想定して求められる情報である。このため、これらの情報を基に衝突危険性を判定した場合、特に航路の屈曲部において衝突の危険度を過大評価してしまうという問題があった。
そこで、航行監視装置102では、航行状態予測部144により、船舶が航路に沿って航行するかが予測される。この予測は、船舶からのAISデータに含まれる航行方向や位置などの情報に基づいて実行される。そして、判定結果補正部145により、衝突危険性判定部142による判定結果が、航行状態予測部144による予測結果によって補正される。
また、航行状態の予測は、過去に収集されたAISデータを用いて学習された学習済みモデル(予測モデル)を用いて実行される。航行監視装置102の特徴量データ作成部131および航行状態学習部132は、このような学習済みモデルを作成する学習処理を実行するための処理機能である。
<航行状態の予測の基本的な考え方>
まず、船舶の航路状態を予測するための基本的な考え方について説明する。船舶が航路に沿って航行するか否かを判定するために、航路領域が複数のブロックに分割される。次の図5を用いて、ブロックの設定方法を説明する。
まず、船舶の航路状態を予測するための基本的な考え方について説明する。船舶が航路に沿って航行するか否かを判定するために、航路領域が複数のブロックに分割される。次の図5を用いて、ブロックの設定方法を説明する。
図5は、ブロックの設定方法を示す図である。ブロックは、航路領域を航行方向に分割することで生成される多角形の区画である。本実施の形態では例として、ブロックは四角形とするが、ブロックの多角形の形状は特に限定されるものではない。例えば、航路の直線部ではブロックが四角形とされ、航路の屈曲部ではブロックが五角形または六角形とされてもよい。また、ここでいう「航路領域」とは、船舶が航行する通路として定められた領域である。すなわち、航路は幅を有しており、幅方向の領域全体が航路領域となる。航路領域は、政令など、船舶の航行に関する所定のルールによって定められている。
さらに、航路は、一方向のみに航行可能な場合と双方向に航行可能な場合がある。前者の場合、一般的にはある方向に対する航路とその逆方向に対する航路とが並列して設定される。この場合、それぞれの方向の航路ごとにブロックが設定される。
図5では例として、上側が北であり、下側が南であるとする。図5の上側に例示する航路領域210は、南方向(図5の上側から下側への方向)の航路領域211と北方向(図5の下側から上側への方向)の航路領域212とに分割されている。この場合、航路領域211,212のそれぞれに対して個別にブロックが設定される。図5の下側に示す例では、航路領域211において航路方向に対してブロックBL1~BL9が順に設定され、航路領域212において航路方向に対してブロックBL11~BL19が順に設定されている。
また、図5の上側に例示するように、北方向への航路領域212の途中から航路領域213が分岐している。この場合、航路領域213に対してもブロックが設定される。図5の下側に示す例では、航路領域213には、分岐部を起点として航路方向に対してブロックBL21~BL24が順に設定されている。
航路区画データベース122には、設定された各ブロックの位置および範囲を示す情報が登録される。航路区画データベース122を参照することで、船舶の位置情報(緯度、経度)から、その船舶が位置しているブロックを特定することが可能となる。
図6は、航路に沿って航行するか否かの基本的な判定方法を示す図である。本実施の形態では、船舶が上記のブロックをどのように通過するかによって、その船舶が航路に沿って航行するか否か(航行し続けるか否か)が判定される。基本的に、あるブロック内に存在する船舶が、航行方向に対して次のブロックを通過してその次のブロックに到達する場合に、その船舶が航路に沿って航行すると判定されるものとする。すなわち、航行状態予測部144は、あるブロック内に存在する船舶について、その船舶が1つ先のブロックを通過して2つ先のブロックに到達するか否かを予測する。
図6の例では、船舶が現在ブロックBL12に存在するとする。この場合、矢印L1のように、船舶が次のブロックBL13を通過してその次のブロックBL14に到達する場合に、その船舶は航路に沿って航行すると判定される。一方、例えば、矢印L2,L3のように、船舶が次のブロックBL13を通過したとしても、その次のブロックBL14に到達しない場合には、その船舶は航路に沿って航行し続けない(航路から逸脱する)と判定される。
ここで、他の例として、1つ先のブロックに到達するか否か(図6の例ではブロックBL13に到達するか否か)によって上記の判定を行う方法も考えられる。この方法に対して、図6に示した方法では、予測の難易度は高くなるものの、航路からの離脱をより早く検知できるというメリットがある。
なお、ブロックの設定状況によっては、2つ先でなく、1つ先のブロックや3つ以上先のブロックに到達するか否かによって上記の判定を行う方法が採用されてもよい。例えば、航路方向に対する各ブロックの長さが短いほど、より先のブロックに到達するか否かを判定した方が適切と考えられる。
<航行状態の学習処理>
次に、航行状態を予測するための学習処理について説明する。
図7は、特徴量データベースのレコードに登録されるデータの例を示す図である。学習用の特徴量データベース123のレコード123aのそれぞれには、学習の際に学習データ(説明変数)として用いられる特徴量データが登録される。レコード123aには、特徴量データとして、船舶ID、船種、船舶の長さ、緯度、経度、対地針路、船首方位角、回頭角速度、行き先、喫水、曜日、時間帯、ブロックID、進入時ブロックID、および直前ブロックの通過フラグが登録される。また、レコード123aのそれぞれには、特徴量データ以外のデータとして、現在時刻と正解ラベルが登録される。
次に、航行状態を予測するための学習処理について説明する。
図7は、特徴量データベースのレコードに登録されるデータの例を示す図である。学習用の特徴量データベース123のレコード123aのそれぞれには、学習の際に学習データ(説明変数)として用いられる特徴量データが登録される。レコード123aには、特徴量データとして、船舶ID、船種、船舶の長さ、緯度、経度、対地針路、船首方位角、回頭角速度、行き先、喫水、曜日、時間帯、ブロックID、進入時ブロックID、および直前ブロックの通過フラグが登録される。また、レコード123aのそれぞれには、特徴量データ以外のデータとして、現在時刻と正解ラベルが登録される。
AISデータは、動的情報、静的情報、航行関連情報(準動的情報)の各レコードに分かれて船舶から送信される。上記の特徴量データのうち、船舶ID、船種および船舶の長さは、AISデータの静的情報からそのまま抽出されてレコード123aに登録される。なお、船舶IDとしては、MMSI番号が抽出される。また、上記の特徴量データのうち、緯度、経度、対地針路、船首方位角および回頭角速度は、AISデータの動的情報からそのまま抽出されてレコード123aに登録される。さらに、上記の特徴量データのうち、行き先および喫水は、AISデータの航行関連情報からのそのまま抽出されてレコード123aに登録される。
船舶からの送信間隔は、通常、静的情報と航行関連情報と比較して動的情報の方が長い。そこで、1つのレコード123aは、送信された動的情報をベースとして作成される。まず、ベースとなる動的情報から抽出されたデータがレコード123aに登録され、その動的情報が送信された時刻に対して同じ船舶から直近に送信された航行関連情報から抽出されたデータが、そのレコード123aに統合されて登録される。さらに、同じ船舶からの静的情報から抽出されたデータが、そのレコード123aに統合されて登録される。レコード123a内の現在時刻としては、ベースとなった動的情報に含まれている現在時刻が登録される。
一方、特徴量データのうち、曜日、時間帯およびブロックIDは、AISデータに含まれるデータに基づく計算によって作成されるデータである。曜日および時間帯は、現在時刻に基づいて作成される。ブロックIDは、船舶が位置するブロックの識別番号を示し、緯度および経度と、航路区画データベース122とに基づいて算出される。
また、特徴量データのうち、進入時ブロックID、および直前ブロックの通過フラグは、同じ船舶の航行履歴、すなわち現在時刻より前の時刻における特徴量データベース123のレコードの情報に基づいて設定される。
進入時ブロックIDは、船舶が位置する航路領域に対して、その船舶が最初に進入したブロックのブロックIDを示す。例えば、図5のように南方向への航路領域211にブロックBL1~BL9が設定されているとする。船舶が最初から航路領域211内を航行していた場合、進入時ブロックIDとしてはブロックBL1のブロックIDが設定される。一方、船舶が航路領域211に途中から進入した場合、進入時ブロックIDとしては最初に進入したブロックのブロックIDが設定される。例えば、船舶が図5中の左側(すなわち西側)から航路領域211のブロックBL5に進入した場合、進入時ブロックIDとしてはブロックBL5のブロックIDが設定される。
直前ブロックの通過フラグは、船舶が位置するブロックから航行方向に対して1つ前のブロック(直前ブロック)を、その船舶が通過したか否かを示す。本実施の形態では、直前ブロックを通過した場合、通過フラグとして「1」が設定され、直前ブロックを通過していない場合、通過フラグとして「0」が設定される。
レコード123a内の正解ラベルは、学習の際に目的変数として用いられるデータであり、航路に沿って航行し続けたか否かを示す。本実施の形態では、航路に沿って航行し続けた場合(正例の場合)、正解ラベルとして「1」が設定され、航路から逸脱した場合(負例の場合)、正解ラベルとして「0」が設定される。
図8は、航行状態の学習処理手順を示すフローチャートの例である。
まず、ステップS11~S14では、特徴量データ作成部131によって学習用のデータが作成される。
まず、ステップS11~S14では、特徴量データ作成部131によって学習用のデータが作成される。
[ステップS11]特徴量データ作成部131は、データ作成用の作業データとして、船舶データベース(DB)を作成する。
この処理ではまず、特徴量データ作成部131は、AIS履歴データベース121に記憶されたAISデータの中から静的情報を抽出する。ここでは、静的情報として船舶ID、船種および船舶の長さが抽出されるものとする。特徴量データ作成部131は、船舶ID、船種および船舶の長さを1つのレコードとして船舶データベースに登録する。
この処理ではまず、特徴量データ作成部131は、AIS履歴データベース121に記憶されたAISデータの中から静的情報を抽出する。ここでは、静的情報として船舶ID、船種および船舶の長さが抽出されるものとする。特徴量データ作成部131は、船舶ID、船種および船舶の長さを1つのレコードとして船舶データベースに登録する。
静的情報には、データの欠損や値のバラツキが生じることがある。そこで、特徴量データ作成部131は、同一の船舶IDが登録されたレコード群ごとに、船種および船舶の長さのそれぞれの代表値を算出する。例えば、特徴量データ作成部131は、同一船舶IDのレコード群に含まれる船種の各値について頻度を算出し、頻度が最大の値を船種の代表値とする。船舶の長さについても、同様の手順によって代表値が算出される。特徴量データ作成部131は、同一船舶IDのレコード群を1つのレコードに統合して、そのレコードの船種および船舶の長さとして、それぞれの代表値を登録する。
[ステップS12]特徴量データ作成部131は、AIS履歴データベース121に記憶されたAISデータに対する前処理を実行する。この前処理では、ベースとなる動的情報に対して静的情報と航行関連情報が統合される。
具体的には、特徴量データ作成部131は、AIS履歴データベース121に記憶されたAISデータの中から動的情報を抽出する。特徴量データ作成部131は、特徴量データベース123に新規のレコードを作成し、抽出した動的情報に含まれる船舶ID、現在時刻、緯度、経度、対地針路、船首方位角および回頭角速度を、作成したレコードに登録する。
次に、特徴量データ作成部131は、AIS履歴データベース121に記憶された、上記の動的情報と同じ船舶IDが含まれる航行関連情報の中から、動的情報の現在時刻以前で最新の現在時刻を含む航行関連情報を抽出する。特徴量データ作成部131は、抽出した航行関連情報に含まれる行き先と喫水を上記のレコードに登録する。
さらに、特徴量データ作成部131は、上記の動的情報および航行関連情報と同じ船舶IDが含まれるレコードを船舶データベースから抽出し、抽出したレコードに含まれる船種および船舶の長さを上記のレコードに登録する。
なお、動的情報および航行関連情報の項目の中に異常値や欠損値がある場合、特徴量データ作成部131は、項目ごとに事前に決められた方法(異常値判定ルールや欠損値補完ルールを用いた方法)により、異常値や欠損値を補完する。
特徴量データ作成部131は、上記の処理をAIS履歴データベース121に記憶された動的情報ごとに実行する。これにより、AIS履歴データベース121に記憶されたAISデータから直接的に得られる特徴量データが特徴量データベース123に登録される。
[ステップS13]特徴量データ作成部131は、特徴量データベース123に登録された各レコードに対して正解ラベルを登録するラベリング処理を実行する。以下、ラベリング処理の詳細について、図9を参照して説明する。
図9は、ラベリング処理の手順を示すフローチャートの例である。
[ステップS21]特徴量データ作成部131は、特徴量データベース123の各レコードにブロックIDを登録する。この処理では、特徴量データ作成部131は、航路区画データベース123に登録されたブロックの中から、レコードに登録された緯度と経度が示す現在位置が含まれるブロックを判定し、そのブロックのブロックIDをレコードに登録する。なお、現在位置がいずれのブロックにも含まれない場合には、その旨を示す特定の値(ここでは「0」とする)がブロックIDとしてレコードに登録される。
[ステップS21]特徴量データ作成部131は、特徴量データベース123の各レコードにブロックIDを登録する。この処理では、特徴量データ作成部131は、航路区画データベース123に登録されたブロックの中から、レコードに登録された緯度と経度が示す現在位置が含まれるブロックを判定し、そのブロックのブロックIDをレコードに登録する。なお、現在位置がいずれのブロックにも含まれない場合には、その旨を示す特定の値(ここでは「0」とする)がブロックIDとしてレコードに登録される。
[ステップS22]特徴量データ作成部131は、ステップS25までの正解ラベル登録処理ループを、船舶IDごとに実行する。
[ステップS23]特徴量データ作成部131は、処理対象の船舶IDが登録されたレコードをまとめ、それらのレコードを現在時刻が早い順にソートする。
[ステップS23]特徴量データ作成部131は、処理対象の船舶IDが登録されたレコードをまとめ、それらのレコードを現在時刻が早い順にソートする。
[ステップS24]特徴量データ作成部131は、ソートされたレコードを先頭から順に選択していき、各レコードのデータについて正例(航路に沿って航行する)か負例(航路を逸脱する)かを判定する。特徴量データ作成部131は、正例と判定した場合、正解ラベルとして「1」を登録し、負例と判定した場合、正解ラベルとして「0」を登録する。
[ステップS25]すべての船舶IDについてステップS23,S24の処理が実行されると、正解ラベル登録処理ループが終了する。
ここで、図10は、正例・負例の判定処理を説明するための第1の図である。特徴量データ作成部131は、次の条件1~3のすべてを満たす場合に、処理対象のレコードのデータを正例と判定する。なお、以下の説明では、処理対象のレコードを「レコードRx」とする。
ここで、図10は、正例・負例の判定処理を説明するための第1の図である。特徴量データ作成部131は、次の条件1~3のすべてを満たす場合に、処理対象のレコードのデータを正例と判定する。なお、以下の説明では、処理対象のレコードを「レコードRx」とする。
(条件1)レコードRxから時間的に後のレコードの中に、レコードRxのブロックIDが示す現ブロックから航行方向に2つ先のブロックを示すブロックIDが登録されたレコード(Ryとする)が存在する。
(条件2)レコードRxとレコードRyとの間に、レコードRxのブロックIDおよび1つ先のブロックID以外のブロックIDが登録されたレコードが存在しない。
図10には、特徴量データベース123のレコードの中から船舶ID「1」のレコードを抽出した場合を例示している。なお、図10では、該当レコードが現在時刻の早い順にソートされている。
図10には、特徴量データベース123のレコードの中から船舶ID「1」のレコードを抽出した場合を例示している。なお、図10では、該当レコードが現在時刻の早い順にソートされている。
例えば、ブロックID「5」が登録されたレコードR1を処理対象とする。この場合、時間的に後のレコードの中に、2つ先のブロックを示すブロックID「7」が登録されたレコードR3が存在しており、上記の条件1が満たされている。また、レコードR1とレコードR3との間には、ブロックID「5」およびブロックID「6」以外のブロックIDが登録されたレコードが存在しないので、上記の条件2も満たされている。したがって、レコードR1のデータは正例と判定され、レコードR1の正解ラベルとして「1」が登録される。
また、例えば、ブロックID「6」が登録されたレコードR2を処理対象とする。この場合、時間的に後のレコードの中に、2つ先のブロックを示すブロックID「8」が登録されたレコードR5が存在しており、上記の条件1が満たされている。しかし、レコードR2とレコードR5との間には、ブロックID「6」およびブロックID「7」以外のブロックID「49」が登録されたレコード(例えばレコードR4)が存在しており、上記の条件2は満たされない。これは、ブロックID「7」のブロックからブロックID「8」のブロックに到達する間に航路を逸脱したことを示している。この場合、レコードR2のデータは負例と判定され、レコードR2の正解ラベルとして「0」が登録される。
ところで、海域に対して航路が設定される場合には、航行方向に対して航路領域の両側の境界線が明確に規定されていない場合がある。一方、図5に示した航路領域に対するブロックの設定では、航路領域の両側の境界線が明確に規定されていない場合であっても、ある一定のルールにしたがってブロックの幅が設定される。例えば、前後のブロックの幅に基づいて現ブロックの幅を設定する、あるいはあらかじめ決められた一定の幅を設定する、といったルールが適用される。しかし、境界線が明確に規定されていない領域では、実際には一時的にブロックの外側にはみ出したとしても、その後に航路に沿って航行し続ける船舶も多い。特に、航路の屈曲部においては、ブロックに対して屈曲部の外側(例えば、左に屈曲する場合、右側)に膨らんで航行する場合が多い。
そこで、このように航行した船舶についても正例として判定できるようにするために、図9のラベリング処理が次のように変形されてもよい。
ここでは、航路区画データベース122に設定されたブロック(拡張されていないブロック)を「標準ブロック」と記載する。そして、この変形例では、標準ブロックをその中心線から幅方向(航行方向に対して垂直な方向)に所定倍に拡大した「拡張ブロック」が定義される。
ここでは、航路区画データベース122に設定されたブロック(拡張されていないブロック)を「標準ブロック」と記載する。そして、この変形例では、標準ブロックをその中心線から幅方向(航行方向に対して垂直な方向)に所定倍に拡大した「拡張ブロック」が定義される。
図9のステップS21では、あるレコードの緯度・経度に基づく現在位置が、標準ブロックの範囲に含まれるかだけでなく、拡張ブロックの範囲に含まれるかも判定される。ここでは、現在位置が標準ブロックの範囲に含まれる場合、ブロックIDとしてそのブロックのブロックIDがそのまま登録される。一方、現在位置が標準ブロックの範囲に含まれないが拡張ブロックの範囲に含まれる場合、ブロックIDとして、そのブロックのブロックIDに記号「L」を付加した番号が登録される。
そして、ステップS23でレコードが現在時刻順にソートされた後、ステップS24の実行前に、ブロックIDが拡張ブロックを示すレコード(ブロックIDに「L」が登録されたレコード)について、次のような修正処理が実行される。時間方向に見て、標準ブロックに挟まれている拡大ブロックは、標準ブロックと同様と判定される。この場合、レコードのブロックIDは、標準ブロックを示すように修正される。一方、拡張ブロックが登録されたレコードから、時間方向に見て少なくとも一方にブロック外を示すブロックID「0」が登録されたレコードが存在した場合、拡張ブロックを示すブロックIDは「0」に修正される。
以下、図11、図12を用いて、上記処理の具体例について説明する。なお、図11、図12では、図10と同様に、特徴量データベース123のレコードの中から船舶ID「1」のレコードを抽出した場合を例示しており、抽出されたレコードが現在時刻の早い順にソートされている。
図11は、正例・負例の判定処理を説明するための第2の図である。図11の左側に示す例では、レコードR13~R15において、ブロックID「6」の拡張ブロックを示すブロックID「6L」が登録されている。しかし、これらのレコードR13~R15は、拡張ブロックに対応する標準ブロックを示すブロックID「6」が登録されたレコードR12と、これに隣接する標準ブロックを示すブロックID「7」が登録されたレコードR16とに挟まれている。
このケースでは、船舶は、ブロックID「6」のブロックから一時的に少しはみ出した後、航路領域に戻ったと推定される。そこで、特徴量データ作成部131は、図11の右側に示すように、レコードR13~R15に登録されたブロックIDを、対応する標準ブロックを示すブロックID「6」に修正する。
これにより、船舶は、ブロックID「5」のブロック、ブロックID「6」のブロック、ブロックID「7」のブロックの順に航行したと見なされる。したがって、図9のステップS24では、例えばブロックID「5」が登録されたレコードR11について、上記の条件1~3がいずれも満たされることになり、正解ラベルとして「1」が登録される。
図12は、正例・負例の判定処理を説明するための第3の図である。図12の左側に示す例では、レコードR23,R25において、ブロックID「6」の拡張ブロックを示すブロックID「6L」が登録されている。また、レコードR23より時間的に前のレコードR22には、ブロックID「6L」に対応する標準ブロックを示すブロックID「6」が登録されており、レコードR25より時間的に後のレコードR26には、ブロックID「6L」の拡張ブロックの次の標準ブロックを示すブロックID「7」が登録されている。しかし、レコードR23,R25に隣接するレコードR24には、ブロック外を示すブロックID「0」が登録されている。
このケースでは、船舶は、ブロックID「6」のブロックから一時的に大きくはみ出した後、航路領域に戻ったと推定される。航路領域から大きくはみ出しているので、航路に沿って航行したと見なすのは適切でない。そこで、特徴量データ作成部131は、図12の右側に示すように、レコードR23,R25に登録されたブロックIDを、ブロック外を示すブロックID「0」に修正する。これにより、図9のステップS24では、例えばブロックID「5」が登録されたレコードR21について、上記の条件2が満たされなくなり、正解ラベルとして「0」が登録される。
以下、図8を参照しながら説明を続ける。
[ステップS14]特徴量データ作成部131は、ステップS12で未登録である残りの特徴量データを算出し、特徴量データベース123に登録する。具体的には、曜日、時間帯、ブロックID、進入時ブロックID、および直前ブロックの通過フラグが算出され、特徴量データベース123の各レコードに登録される。
[ステップS14]特徴量データ作成部131は、ステップS12で未登録である残りの特徴量データを算出し、特徴量データベース123に登録する。具体的には、曜日、時間帯、ブロックID、進入時ブロックID、および直前ブロックの通過フラグが算出され、特徴量データベース123の各レコードに登録される。
なお、進入時ブロックIDとしては、ソートされたレコードのうち先頭レコードに登録されたブロックIDが登録されればよい。また、直前ブロックの通過フラグは、処理対象のレコードから時間的に前のレコードの中に、処理対象のレコードのブロックIDより1だけ小さいブロックIDが登録されたレコードが存在する場合に、「1」が登録されればよい。
次に、ステップS15では、航行状態学習部132による学習が実行される。
[ステップS15]航行状態学習部132は、特徴量データベース123からブロックIDが「0」でないレコードを読み込む。航行状態学習部132は、読み込んだ各レコード内の特徴量データを説明変数とし、二値の正解ラベルを目的変数として機械学習を実行し、正例、負例の各分類に属する確率値を算出する予測モデルを作成する。航行状態学習部132は、作成された予測モデルのデータを予測モデルデータ124として記憶部120に格納する。
[ステップS15]航行状態学習部132は、特徴量データベース123からブロックIDが「0」でないレコードを読み込む。航行状態学習部132は、読み込んだ各レコード内の特徴量データを説明変数とし、二値の正解ラベルを目的変数として機械学習を実行し、正例、負例の各分類に属する確率値を算出する予測モデルを作成する。航行状態学習部132は、作成された予測モデルのデータを予測モデルデータ124として記憶部120に格納する。
このステップS15では、例えば、ランダムフォレスト、勾配ブースティング、ロジスティック回帰などを用いた機械学習が実行される。これらのうち、特にランダムフォレストは、図7に示したように多数の種類の特徴量データを用いて学習する場合に好適である。ランダムフォレストでは、複数の種類の特徴量データの組み合わせを考慮したモデルが自動的に作成される。そのため、例えば、船舶の長さが短くて高速な場合には、振れ幅が小さくても航路から外れる可能性が高い、といった学習を実行することが可能となる。
また、ランダムフォレストは、ノンパラメトリックな手法であり、特徴量の分布に関する特別な仮定や制約がない。例えば、対地針路や船首方位角などの角度情報は、「-180度と180度が実質的に同じ状態を示す」「359度と0度との差は1度である」といった循環構造を有している。このため、パラメトリックな手法を用いる場合、適切な変数変換が必要となる。しかし、ランダムフォレストでは、元の値をそのまま入力しても大きな問題は生じない。
また、AISデータの多くの項目には、欠損値が含まれる場合がある。欠損値の発生に対しては一般的に、他のレコードに基づいて補完するか、または欠損値を含むレコードを使用しないという方法が用いられる。ランダムフォレストでは、ノンパラメトリックな手法であるために、前者の方法でも十分に機能する。このため、欠損値の扱いが容易であり、得られているレコードを有効活用できるようになる。なお、上記の特徴は、ランダムフォレストの他に勾配ブースティングにもあてはまる特徴である。
ところで、上記のように、特徴量データベース123に記憶される情報は、過去に実際に航行した船舶からのAISデータに基づいて作成される。実際に船舶が航行する場合、航路に沿って航行する船舶より、航路から逸脱する船舶の方が圧倒的に少ない。このため、特徴量データベース123においても、正例のレコードより負例のレコードの方が圧倒的に少ない。したがって、負例の割合が少なすぎる学習データを用いて学習を実行すると、作成された予測モデルの精度が低下する可能性が高い。
このことから、航行状態学習部132は、特徴量データベース123に記憶された正例のレコードをアンダーサンプリングして学習を実行することが望ましい。例えば、航行状態学習部132は、正例のレコード数が負例の20倍程度になるように、正例のレコードを間引きして取得して学習に利用する。
<航行監視処理>
次に、航行中の船舶を監視する航行監視処理について説明する。
図13は、航行監視処理の全体の手順を示すフローチャートの例である。図13の処理は、現在航行中の複数の船舶の中から船舶ペアを抽出し、船舶ペアごとの衝突危険性を判定するものである。航行中の船舶とは、AISデータが無線通信装置101で受信されている船舶を指す。
次に、航行中の船舶を監視する航行監視処理について説明する。
図13は、航行監視処理の全体の手順を示すフローチャートの例である。図13の処理は、現在航行中の複数の船舶の中から船舶ペアを抽出し、船舶ペアごとの衝突危険性を判定するものである。航行中の船舶とは、AISデータが無線通信装置101で受信されている船舶を指す。
まず、AISデータ取得部141によって航行中の各船舶から取得されたAISデータに基づいて、衝突危険性判定部142により、各船舶ペアについての衝突危険性が判定される(ステップS31)。この処理では、航行中のすべての船舶の中から、船舶ペアの組み合わせがすべて抽出され、抽出されたすべての船舶ペアについての衝突危険性が判定される。判定結果としては、各船舶ペアについて、衝突危険性の度合いを示す定量指標である衝突危険度が出力される。あるいは、判定結果としては、各船舶ペアについて、衝突危険性の有無を示す二値データが出力されてもよい。後者の場合、船舶ペアの中から、衝突危険性があると判定された船舶ペアが特定されて出力されてもよい。衝突危険性判定部142によるこれらの処理は、既存手法を用いて実行される。
また、このような衝突危険性の判定処理と並行して、航行状態予測部144によって航行中の各船舶についての航行状態が予測される(ステップS32)。この処理では、船舶からのAISデータに基づき、特徴量データ作成部143によって船舶の特徴量データが作成される。特徴量データの作成方法は、特徴量データ作成部131による学習時の作成方法と同様である。航行状態予測部144は、作成された特徴量データを予測モデルデータ124に基づく予測モデルに入力することで、船舶が航路に沿って航行する度合いを示す航行状態指標を出力する。
そして、最終段の処理として、衝突危険性判定部142によって船舶ペアごとに判定された衝突危険性の判定結果が、航行状態予測部144によって船舶ペアに含まれる各船舶について予測された航行状態の予測結果を用いて、補正される(ステップS33)。特に、本実施の形態では、前者の判定により衝突危険度が高い、または衝突危険性があると誤判定される可能性を抑制するために、後者の予測結果を用いた補正が行われる。
次に、衝突危険性判定部142による衝突危険性の判定処理(図13のステップS31)について説明する。衝突危険性判定部142は、例えば、以下の判定法1~3のいずれかを用いて衝突危険性を判定する。
(判定法1)延長ベクトルを用いた判定法
図14は、延長ベクトルを用いた衝突危険性の判定処理を示す図である。なお、図14(A)は、船舶ペアの延長ベクトルについての第1の例を示し、図14(B)は、船舶ペアの延長ベクトルについての第2の例を示す。
図14は、延長ベクトルを用いた衝突危険性の判定処理を示す図である。なお、図14(A)は、船舶ペアの延長ベクトルについての第1の例を示し、図14(B)は、船舶ペアの延長ベクトルについての第2の例を示す。
延長ベクトルは、船舶の針路(本実施の形態では対地針路)と同じ方向(方位角)を有し、船舶の現在位置から、船舶が現在の速度を維持した状態で所定時間(一般的には5分)後に到達する位置までの距離を大きさとして有するベクトルである。図14(A)では、船舶221の延長ベクトルV1と、船舶222の延長ベクトルV2とを例示している。図14(B)では、船舶223の延長ベクトルV3と、船舶224の延長ベクトルV4とを例示している。
延長ベクトルを用いた衝突危険性の判定処理では、船舶ペアのそれぞれの延長ベクトルが交差する場合に、衝突危険性があると判定される。図14(A)では、延長ベクトルV1,V2が交差しており、船舶221,222の間で衝突危険性があると判定される。図14(B)では、延長ベクトルV3,V4が交差しており、船舶223,224の間で衝突危険性があると判定される。
(判定法2)OZTを用いた判定法
図15は、OZTを用いた衝突危険性の判定処理を示す図である。OZT(航行妨害ゾーン)は、ある船舶が針路を変更したと仮定した場合に、周囲を航行する他の船舶(相手船)と衝突する可能性のある領域を指す。OZTは、各船舶の位置、対地針路および対地船速などに基づいて算出される。例えば、自船と相手船とが同じ位置に同時に存在する確率が船速などの計測誤差を考慮して計算され、その確率が所定の閾値以上になった領域がOZTと判定される。
図15は、OZTを用いた衝突危険性の判定処理を示す図である。OZT(航行妨害ゾーン)は、ある船舶が針路を変更したと仮定した場合に、周囲を航行する他の船舶(相手船)と衝突する可能性のある領域を指す。OZTは、各船舶の位置、対地針路および対地船速などに基づいて算出される。例えば、自船と相手船とが同じ位置に同時に存在する確率が船速などの計測誤差を考慮して計算され、その確率が所定の閾値以上になった領域がOZTと判定される。
図15の例では、船舶225と相手船としての船舶226との間でOZT231が検出されている。このようなOZT231が検出された場合に、船舶225,226のペア間において衝突危険性があると判定されてもよい。
(判定法3)TCPA,DCPAを用いた判定法
図16は、DCPA,TCPAを用いた衝突危険性の判定処理を示す図である。上記の判定法1,2では、衝突危険性の有無を示す二値データが出力される。これに対して、DCPAやTCPAを用いることで、衝突危険性の度合いを示す定量指標(衝突危険度)を算出する方法がある。
図16は、DCPA,TCPAを用いた衝突危険性の判定処理を示す図である。上記の判定法1,2では、衝突危険性の有無を示す二値データが出力される。これに対して、DCPAやTCPAを用いることで、衝突危険性の度合いを示す定量指標(衝突危険度)を算出する方法がある。
この方法では、船舶ペアのそれぞれの航行記録データに基づく相対運動から、相手船が自船に最も近づく最接近点(CPA)が求められる。そして、自船からCPAまでの最接近距離(DCPA)と、相手船がCPAに到達するまでの時間を示す最接近時間(TCPA)とが算出される。図16では、船舶227とその相手船である船舶228との間でCPA232が検出され、DCPAとして距離Dが算出された場合を例示している。
DCPAとTCPAの少なくとも一方を用いて衝突危険度を算出することができる。基本的に、DCPAが短いほど、またTCPAが短いほど、衝突危険度として高い値が出力される。また、DCPAとTCPAとを組み合わせて衝突危険度を算出する技術としては、例えば、「久保田崇・河口信義(平成21年)、航海者の意思決定・行動モデルに関する研究II-総合的な主観的衝突のおそれ-、日本航海学会論文集22年3月、P.21-26」「Chin, Hoong Chor & Debnath, Ashim (2009). Modeling perceived collision risk in port water navigation. Safety Science, 47(10), pp. 1410-1416.」などがある。
ところで、延長ベクトルやDCPA、TCPA、OZTは、基本的に船舶が直線的に航行することを想定して求められる情報である。上記の判定法1~3は、これらの情報に基づく方法であるため、特に屈曲した航路において船舶ペアのそれぞれが航行している場合に、判定精度が悪化するという問題がある。
例えば、図14(A)では、屈曲した航路領域220において船舶221,222が同じ方向に航行している場合を例示している。図14(A)の左側に示す状態では、船舶221の延長ベクトルV1と船舶222の延長ベクトルV2とが交差しているため、船舶221,222の間で衝突可能性があると判定される。しかし、船舶221,222がともに航路に沿って航行している場合には、図14(A)の右側の例のように、船舶221,222が衝突することはなく、延長ベクトルV1,V2が交差する状態もやがて解消される。
また、図14(B)では、同じ航路領域220において船舶223,224が対向して航行している場合を例示している。図14(B)の左側に示す状態では、船舶223の延長ベクトルV3と船舶224の延長ベクトルV4とが交差しているため、船舶223,224の間で衝突可能性があると判定される。しかし、船舶223,224がともに航路に沿って航行している場合には、図14(B)の右側の例のように、船舶223,224は衝突せずにすれ違い、延長ベクトルV3,V4が交差する状態もやがて解消される。
このように、延長ベクトルは針路方向に直線的に伸びるベクトルであるので、航路の屈曲部に船舶ペアが同時に差し掛かった場合には、衝突せずに安全に航行している状態であっても互いの延長ベクトルが一時的に交差する可能性がある。このため、衝突せずに安全に航行している船舶ペアを、衝突可能性があるとして誤検出してしまう場合がある。特に、延長ベクトルを用いた判定法は、航路上の船舶と、航路を横切る船舶との衝突危険性を検出する精度が高い。しかし、航路の屈曲部においては、このように船舶が航路を横切ることで衝突危険性が発生するケースと、両方の船舶が航路に沿っているケースとを区別することが難しいという特徴がある。
また、図15では、同じ航路領域220において船舶225,226が対向して航行している場合を例示している。図15の左側に示す状態では、船舶225と船舶226との間でOZT231が検出されている。しかし、船舶225,226がともに航路に沿って航行している場合には、図15の右側の例のように、船舶225,226は衝突せずにすれ違う。
OZTは、現時刻で一方の船舶が針路を変更した場合が想定され、当該船舶のその後の移動は直線移動として推定される。図15の例のように、航路の屈曲部の手前に差し掛かった船舶同士でOZTを算出すると、現在地から針路を変更した先に危険な領域が検出される。しかし、各船舶が航路に沿っている場合には、もう少し進んでから針路を変更することになるため、検出された危険領域に各船舶が進入することはない。したがって、本来警戒する必要のない危険領域が検出されて、その検出結果から衝突危険性があると誤判定されてしまう場合がある。
さらに、図16では、同じ航路領域220において船舶227,228が対向して航行している場合を例示している。図16の左側に示す状態では、船舶227と船舶228との間でDCPAとして距離Dが算出されているが、この距離Dは短く、衝突危険度として比較的高い値が算出される。しかし、船舶227,228がともに航路に沿って航行している場合には、図16の右側の例のように、船舶227,228は衝突せずにすれ違う。
DCPAやTCPAは、現在地から針路と速度が維持されることを前提に算出される。このため、図16の例のように、航路の屈曲部では値が小さくなりやすく、衝突危険度が高く算出されやすい。
以上のように、判定法1~3では、屈曲した航路において船舶ペアのそれぞれが航行している場合に、衝突危険性があると誤判定されやすい、あるいは衝突危険度が実際より高く算出されやすい、という問題がある。そこで、本実施の形態では、航行状態予測部144による予測結果を用いて衝突危険性判定部142による判定結果を補正することで、判定精度を向上させる。航行状態予測部144では、各船舶が航路に沿って航行するか否かの判定結果、または航路に沿って航行する度合い(可能性)を示す航行状態指標が算出される。
例えば、上記のように船舶ペアについて衝突危険性があると誤判定された場合でも、各船舶が航路に沿っている場合には衝突危険性がないと判定し直すことができる。また、例えば、上記のように船舶ペアについての衝突危険度が実際より高く算出された場合でも、各船舶についての航行状態指標が高い(航路に沿って航行し続ける可能性が高い)場合には、衝突危険度を低く補正することができる。このようにして、衝突危険性の誤判定や衝突危険度が実際より高く算出される事態の発生可能性を抑制する。
次に、航行状態予測部144による航行状態の判定処理(図13のステップS32)について説明する。
図17は、航行状態予測処理の手順を示すフローチャートの例である。
図17は、航行状態予測処理の手順を示すフローチャートの例である。
[ステップS41]特徴量データ作成部143は、航行中の船舶から送信されたAISデータをAISデータ取得部141から取得し、そのAISデータに対する前処理を実行する。この前処理では、特徴量データ作成部143は、ベースとなる動的情報に対して静的情報および航行関連情報を統合し、1つの特徴量データレコードを作成する。
すなわち、送信された動的情報に含まれる船舶ID、現在時刻、緯度、経度、対地針路、船首方位角および回頭角速度が、新規の特徴量データレコードに登録される。また、同じ船舶IDが含まれる最新の航行関連情報から行き先および喫水が抽出され、同じ特徴量データレコードに登録される。さらに、同じ船舶IDが含まれる最新の静的情報から船種および船舶の長さが抽出され、同じ特徴量データレコードに登録される。なお、静的情報に関しては、学習時と同様に、現在時刻までに送信された同じ船舶IDを含む複数の静的情報に基づいて、データの欠損や値のバラツキが補正された上で特徴量データレコードに登録されてもよい。
[ステップS42]特徴量データ作成部143は、航路区画データベース122に登録されたブロックの中から、特徴量データレコードに登録された緯度と経度が示す現在位置が含まれるブロックを判定し、そのブロックのブロックIDを特徴量データレコードに登録する。なお、現在位置がいずれのブロックにも含まれない場合には、その旨を示す特定の値(ここでは「0」)がブロックIDとして特徴量データレコードに登録される。
[ステップS43]特徴量データ作成部143は、ステップS41,S42で未登録である残りの特徴量データを算出し、特徴量データレコードに登録する。具体的には、曜日、時間帯、ブロックID、進入時ブロックID、および直前ブロックの通過フラグが算出され、特徴量データレコードに登録される。
なお、進入時ブロックIDと直前ブロックの通過フラグは、特徴量データベース125に蓄積されたレコードのうち、特徴量データレコードに登録された船舶IDが登録されたレコードのデータに基づいて算出される。また、特徴量データ作成部143は、すべての特徴量データが登録された特徴量データレコードを、特徴量データベース125に新規レコードとして追加登録する。
なお、後述するように、航行状態に学習時には、図7に例示した特徴量データの一部のみが利用されてもよい。ステップS41~S43では、学習時に作成された特徴量データと同じ種類の特徴量データが作成される。
[ステップS44]このステップS44は、特徴量データレコードのブロックIDが「0」でない場合に実行される。航行状態予測部144は、予測モデルデータ124に基づく予測モデルに対して特徴量データレコード内の特徴量データを入力して、該当する船舶が航路に沿って航行するかを予測する。この処理により、少なくとも、船舶が航路に沿って航行する確率(航行状態指標)が算出される。これに加えて、船舶が航路に沿って航行しない(航路を逸脱する)確率が算出されてもよい。
また、航行状態予測部144は、算出された確率に基づいて、船舶が航路に沿って航行するか否かを示す二値判定値を出力してもよい。この二値判定値は、例えば、航行状態指標が所定の閾値を超えるか否かによって算出される。航行状態指標が閾値を超える場合、二値判定値は、船舶が航路に沿って航行するという判定結果を示す「1」に設定され、航行状態指標が閾値以下の場合、二値判定値は、船舶が航路に沿って航行しない(航路を逸脱する)という判定結果を示す「0」に設定される。
ここで、航行状態の予測に対する特徴量データの寄与について説明する。
図7に示した特徴量データについては、そのすべてが予測モデルの学習、および予測モデルを用いた予測に対して必須であるという訳ではない。ただし、特徴量データとして、少なくとも、船舶の方向を示す方向情報と船舶の位置を示す位置情報とが利用される。これにより、船舶の方向と位置との関係を考慮した予測モデルが生成され、この予測モデルを用いることで、航路が屈曲しているか否かに関係なく、一定以上の精度で予測することが可能になる。したがって、船舶が航路に沿って航行するかを精度よく予測できる。
図7に示した特徴量データについては、そのすべてが予測モデルの学習、および予測モデルを用いた予測に対して必須であるという訳ではない。ただし、特徴量データとして、少なくとも、船舶の方向を示す方向情報と船舶の位置を示す位置情報とが利用される。これにより、船舶の方向と位置との関係を考慮した予測モデルが生成され、この予測モデルを用いることで、航路が屈曲しているか否かに関係なく、一定以上の精度で予測することが可能になる。したがって、船舶が航路に沿って航行するかを精度よく予測できる。
方向情報としては、例えば、対地針路と船首方位角の少なくとも一方が利用される。ただし、船舶の方向をより精度よく捉えた対地針路の方が、予測精度に対して大きく寄与する。
また、位置情報としては、ブロックIDと緯度・経度の少なくとも一方が利用される。ただし、これらの両方を用いることで、ブロックの領域における船舶の相対位置を考慮した予測モデルが生成される。例えば、ブロックの中心付近を通過する方が、ブロックにおける航行方向に対して外側(左右方向)の位置を通過する場合より、その後も航路に沿って航行する可能性が高くなる。ブロックIDと緯度・経度の両方が利用されることで、このような特性を考慮した高精度な予測が可能となる。
また、緯度と経度は必ずしも両方が利用されなくてもよく、一方のみが利用されてもよい。例えば、図5の例のように南北に延びる航路においては、緯度より経度の方が予測精度に対して大きく寄与する。これは、上記のように、船舶がブロックの中央を通過したか、あるいは航行方向に対して外側(この場合は東西方向)の位置を通過したかによって、航路に沿って航行し続ける可能性が変わるという特性が考慮されるからである。したがって、例えば、南北に延びる航路においては、緯度と経度のうち経度のみが特徴量データとして利用されてもよい。
また、その他の特徴量データとしては、例えば、行き先の寄与度が比較的高い。例えば、図5の例のように途中で航路が分岐する場合に、分岐の直前のブロックにおいては行き先が予測精度の向上に大きく寄与する。
また、進入時ブロックIDや直前ブロックの通過フラグは、直近の航行パターンを示す情報であるので、予測精度に対する寄与度が比較的高い。すなわち、進入時ブロックIDや直前ブロックの通過フラグが利用されることで、直近の航行パターンを考慮した予測モデルが生成される。
また、例えば、船種や船舶の長さ、喫水など、船舶の大きさに関係する情報も比較的大きく寄与度する。これは、船舶の大きさによって航行パターンが異なるからである。すなわち、これらのデータが利用されることで、船舶の大きさに応じた航行パターンの違いを考慮した予測モデルが生成される。
次に、判定結果補正部145による判定結果の補正処理(図13のステップS33)について説明する。この補正処理では、衝突危険性判定部142による衝突危険性の判定結果が、航行状態予測部144による航行状態の予測結果によって補正される。
ここではまず、衝突危険性判定部142によって船舶ペアの衝突危険度が算出され、航行状態予測部144によって船舶ペアに含まれる各船舶の航行状態指標が算出される場合について、図18を参照して説明する。
図18は、衝突危険度の補正処理手順を示すフローチャートの例である。
[ステップS51]判定結果補正部145は、衝突危険性判定部142によって衝突危険度が算出された船舶ペアの中から、1組を選択し、選択した船舶ペアの衝突危険度を取得する。
[ステップS51]判定結果補正部145は、衝突危険性判定部142によって衝突危険度が算出された船舶ペアの中から、1組を選択し、選択した船舶ペアの衝突危険度を取得する。
[ステップS52]判定結果補正部145は、選択した船舶ペアに含まれる各船舶についての航路状態指標を取得し、取得した航路状態指標によって衝突危険度を補正する。例えば、次の式(1)を用いて補正が行われる。
Radj=(1-α)×Rorg×(1-PA×PB)+α×Rorg ・・・(1)
式(1)において、Rorgは、船舶ペアについての補正前の衝突危険度を示し、Radjは、補正後の衝突危険度を示す。PAは、船舶ペアに含まれる一方の船舶についての航行状態指標を示し、PBは、他方の船舶についての航行状態指標を示す。ただし、Rorg,PA,PBは、いずれも0以上1以下の値に正規化した状態で式(1)に代入されるものとする。αは、任意に設定される重み係数であり、0以上1以下の値をとる。
Radj=(1-α)×Rorg×(1-PA×PB)+α×Rorg ・・・(1)
式(1)において、Rorgは、船舶ペアについての補正前の衝突危険度を示し、Radjは、補正後の衝突危険度を示す。PAは、船舶ペアに含まれる一方の船舶についての航行状態指標を示し、PBは、他方の船舶についての航行状態指標を示す。ただし、Rorg,PA,PBは、いずれも0以上1以下の値に正規化した状態で式(1)に代入されるものとする。αは、任意に設定される重み係数であり、0以上1以下の値をとる。
[ステップS53]判定結果補正部145は、衝突危険性判定部142によって衝突危険度が算出されたすべての船舶ペアがステップS51で選択済みかを判定する。未選択の船舶ペアがある場合、処理がステップS51に進められ、未選択の船舶ペアの中から1組が選択される。一方、未選択の船舶ペアがない場合、補正処理が終了する。
以上の処理によれば、船舶が航路に沿って航行する確率を示す航行状態指標が高いほど、衝突危険度が低下するように補正される。これにより、航路の屈曲部などを航行中の船舶ペアについて衝突危険性があると誤判定される可能性を低減でき、衝突危険性の判定精度を向上させることができる。
なお、式(1)を用いた上記補正方法は一例であって、これに限定されるものではない。
次に、衝突危険性判定部142によって船舶ペアの衝突危険性の有無が判定され、航行状態予測部144によって船舶ペアに含まれる各船舶が航路に沿って航行するかを示す二値判定値が算出される場合について、図19を参照して説明する。
次に、衝突危険性判定部142によって船舶ペアの衝突危険性の有無が判定され、航行状態予測部144によって船舶ペアに含まれる各船舶が航路に沿って航行するかを示す二値判定値が算出される場合について、図19を参照して説明する。
図19は、衝突危険性の有無の判定結果に対する補正処理手順を示すフローチャートの例である。この図19では、現在航行中の船舶の中から、衝突危険性がある(高い)と判定される船舶ペアを出力する場合について説明する。図19の処理の開始時においては、衝突危険性判定部142によって衝突危険性があると判定された各船舶ペアを示す情報が、記憶部120に記憶された図示しない船舶ペア情報に登録されているとする。
[ステップS61]判定結果補正部145は、衝突危険性判定部142によって衝突危険性があると判定された船舶ペアの中から、1組を選択する。
[ステップS62]判定結果補正部145は、選択した船舶ペアに含まれる各船舶についての、航路に沿っているか否かを示す二値判定値を、航行状態予測部144から取得する。判定結果補正部145は、取得した二値判定値に基づき、船舶ペアに含まれる両方の船舶が航路に沿っているかを判定する。両方の船舶が航路に沿っている場合、処理がステップS63に進められ、少なくとも一方の船舶が航路に沿っていない場合、処理がステップS64に進められる。
[ステップS62]判定結果補正部145は、選択した船舶ペアに含まれる各船舶についての、航路に沿っているか否かを示す二値判定値を、航行状態予測部144から取得する。判定結果補正部145は、取得した二値判定値に基づき、船舶ペアに含まれる両方の船舶が航路に沿っているかを判定する。両方の船舶が航路に沿っている場合、処理がステップS63に進められ、少なくとも一方の船舶が航路に沿っていない場合、処理がステップS64に進められる。
[ステップS63]判定結果補正部145は、ステップS61で選択した船舶ペアを、上記の船舶ペア情報から除外する。
[ステップS64]判定結果補正部145は、衝突危険性判定部142によって衝突危険性があると判定されたすべての船舶ペアがステップS61で選択済みかを判定する。未選択の船舶ペアがある場合、処理がステップS61に進められ、未選択の船舶ペアの中から1組が選択される。一方、未選択の船舶ペアがない場合、処理がステップS65に進められる。
[ステップS64]判定結果補正部145は、衝突危険性判定部142によって衝突危険性があると判定されたすべての船舶ペアがステップS61で選択済みかを判定する。未選択の船舶ペアがある場合、処理がステップS61に進められ、未選択の船舶ペアの中から1組が選択される。一方、未選択の船舶ペアがない場合、処理がステップS65に進められる。
[ステップS65]判定結果補正部145は、船舶ペア情報内に残った船舶ペアを、衝突危険性がある船舶のペアとして最終的に出力する。例えば、判定結果補正部145は、これらの船舶ペアを示す情報が描画された表示情報を生成し、航行監視装置102または他の装置(例えば、航行中の船舶に搭載された装置)に表示情報を送信して、その装置に表示情報に基づく画像を表示させる。
以上の処理によれば、衝突危険性判定部142によってある船舶ペアについて衝突危険性があると判定された場合でも、船舶ペアに含まれる両方の船舶が航行状態予測部144によって航路に沿って航行すると予測された場合には、衝突危険性がないと判定される。これにより、航路の屈曲部などを航行中の船舶ペアについて衝突危険性があると誤判定される可能性を低減でき、衝突危険性の判定精度を向上させることができる。
なお、上記の補正方法は一例であり、これに限定されるものではない。例えば、上記の判定法2によるOZTの判定結果に対する補正は、次のように行うこともできる。ある船舶と相手船との間でOZTが検出された場合、それら2つの船舶についての二値判定値が航行状態予測部144から取得される。二値判定値から、両方の船舶が航路に沿っていると判定された場合、OZTが誤検出されたと判定され、判定結果が「OZTなし」に変更される。
〔第3の実施の形態〕
上記の第2の実施の形態では、航路領域上のすべてのブロックについて共通の予測モデルが作成され、この予測モデルを用いて航行中の船舶の航行状態が予測された。これに対して、以下の第3の実施の形態では、ブロックごとに個別の予測モデルが作成される。
上記の第2の実施の形態では、航路領域上のすべてのブロックについて共通の予測モデルが作成され、この予測モデルを用いて航行中の船舶の航行状態が予測された。これに対して、以下の第3の実施の形態では、ブロックごとに個別の予測モデルが作成される。
図20は、第3の実施の形態における航行監視装置が備える処理機能の構成例を示す図である。なお、図20では、図4と同じ処理機能やデータには同じ符号を付して示しており、それらの説明を省略する。
図20に示す航行監視装置102aは、図4に示した航行監視装置102が備える処理機能のうち、航行状態学習部132の代わりに航行状態学習部132aを備え、航行状態予測部144の代わりに航行状態予測部144aを備える。また、記憶部120には、全ブロックで共通の予測モデルデータ124の代わりに、それぞれ異なるブロックに対応する予測モデルデータ124a,124b,124c,・・・が記憶される。
航行状態学習部132aは、特徴量データベース123に登録されたレコードをブロックIDごとに読み込み、同じブロックIDが登録されたレコードを用いた学習により、そのブロックIDに対応する予測モデルを作成する。これにより、ブロックごとの予測モデルを示す予測モデルデータ124a,124b,124c,・・・が作成され、記憶部120に格納される。
航行状態予測部144aは、予測対象の船舶についての特徴量データレコードを取得すると、その特徴量データレコードからブロックIDを読み出す。航行状態予測部144aは、記憶部120に記憶された予測モデルデータ124a,124b,124c,・・・の中から、読み出したブロックIDに対応する予測モデルデータを取得する。航行状態予測部144aは、取得した予測モデルデータに基づく予測モデルに対して、特徴量データレコードに含まれる特徴量データを入力して、船舶の航路状態を予測する。
図21は、第3の実施の形態における航行状態の学習処理手順を示すフローチャートの例である。図21では、図8と同じ処理内容のステップには同じステップ番号を付して示し、それらの説明を省略する。
[ステップS15a]航行状態学習部132aは、ステップS15cまでの学習処理ループをブロックIDごとに実行する。
[ステップS15b]航行状態学習部132aは、特徴量データベース123から、処理対象のブロックIDが登録されたレコードを読み込む。航行状態学習部132aは、読み込んだ各レコード内の特徴量データを説明変数とし、二値の正解ラベルを目的変数として機械学習を実行し、正例、負例の各分類に属する確率値を算出する予測モデルを作成する。ただし、各レコード内の特徴量データのうち、ブロックIDは機械学習に利用されない。航行状態学習部132aは、作成された予測モデルのデータを予測モデルデータとして記憶部120に格納する。なお、機械学習の手法としては、例えば、図8のステップS15と同様にランダムフォレスト、勾配ブースティング、ロジスティック回帰などを用いることができる。
[ステップS15b]航行状態学習部132aは、特徴量データベース123から、処理対象のブロックIDが登録されたレコードを読み込む。航行状態学習部132aは、読み込んだ各レコード内の特徴量データを説明変数とし、二値の正解ラベルを目的変数として機械学習を実行し、正例、負例の各分類に属する確率値を算出する予測モデルを作成する。ただし、各レコード内の特徴量データのうち、ブロックIDは機械学習に利用されない。航行状態学習部132aは、作成された予測モデルのデータを予測モデルデータとして記憶部120に格納する。なお、機械学習の手法としては、例えば、図8のステップS15と同様にランダムフォレスト、勾配ブースティング、ロジスティック回帰などを用いることができる。
[ステップS15c]ブロックID「0」以外のすべてのブロックIDについてステップS15bの処理が実行されると、学習処理ループが終了する。
図22は、第3の実施の形態における航行状態予測処理の手順を示すフローチャートの例である。図22では、図17と同じ処理内容のステップには同じステップ番号を付して示し、それらの説明を省略する。
図22は、第3の実施の形態における航行状態予測処理の手順を示すフローチャートの例である。図22では、図17と同じ処理内容のステップには同じステップ番号を付して示し、それらの説明を省略する。
[ステップS44a]このステップS44a以降の処理は、特徴量データレコードのブロックIDが「0」でない場合に実行される。航行状態予測部144aは、特徴量データレコードからブロックIDを読み出し、記憶部120に記憶された予測モデルデータ124a,124b,124c,・・・の中から、読み出したブロックIDに対応する予測モデルデータを選択する。
[ステップS44b]航行状態予測部144aは、選択した予測モデルデータに基づく予測モデルに対して特徴量データレコード内の特徴量データを入力して、該当する船舶が航路に沿って航行するかを予測する。ただし、特徴量データレコード内の特徴量データのうち、ブロックIDは予測モデルに入力されない。
図17のステップS44と同様に、上記のステップS44bでは、少なくとも、船舶が航路に沿って航行する確率(航行状態指標)が算出される。これに加えて、船舶が航路に沿って航行しない(航路を逸脱する)確率が算出されてもよい。また、航行状態予測部144aは、算出された確率に基づいて、船舶が航路に沿って航行するか否かを示す二値判定値を出力してもよい。
以上の第3の実施の形態では、第2の実施の形態のようなブロック共通の予測モデルを、特徴量としてブロックIDを利用して学習した場合と、ほぼ同様の予測精度を得ることができる。また、ブロック別の予測モデルのそれぞれの学習に利用される学習データの数が少なくなるため、全体として学習に要する時間を短縮できる可能性が高い。
また、例えば、航路領域上のブロックのうち、屈曲部など、衝突危険性の判定精度が低くなる領域のブロックについてのみ、予測モデルが作成されてもよい。そして、そのブロックに到達した船舶についてのみ、対応する予測モデルを用いて航行状態が予測され、衝突危険性が航行状態の予測結果を用いて補正されてもよい。
なお、上記の各実施の形態に示した装置(例えば、航行監視装置10,102,102a)の処理機能は、コンピュータによって実現することができる。その場合、各装置が有すべき機能の処理内容を記述したプログラムが提供され、そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置(HDD)、磁気テープなどがある。光ディスクには、CD(Compact Disc)、DVD(Digital Versatile Disc)、ブルーレイディスク(Blu-ray Disc:BD、登録商標)などがある。
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CDなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムまたはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムにしたがった処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムにしたがった処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムにしたがった処理を実行することもできる。
10 航行監視装置
11 記憶部
11a 予測モデル
12 処理部
20 海図
21 航路領域
22 船舶
11 記憶部
11a 予測モデル
12 処理部
20 海図
21 航路領域
22 船舶
Claims (13)
- コンピュータに、
航行中の船舶の方向を示す方向情報および位置を示す位置情報を取得し、
過去に航行した複数の船舶のそれぞれについての前記方向情報および前記位置情報と、前記複数の船舶のそれぞれが航路に沿って航行したか否かを示す正解ラベルとを用いた機械学習によって作成された予測モデルに対して、取得した前記方向情報および前記位置情報を入力することで、前記航行中の船舶が航路に沿って航行するかを予測する、
処理を実行させる航行監視プログラム。 - 前記位置情報は、航路に沿った所定幅の航路領域を航行方向に対して多角形の形状に分割することで設定された複数の区画のうち、船舶が位置する区画を示す区画情報を含む、
請求項1記載の航行監視プログラム。 - 前記位置情報は、前記区画情報と、緯度または経度の少なくとも一方とを含む、
請求項2記載の航行監視プログラム。 - 前記正解ラベルは、前記複数の船舶のうち対応する船舶が、前記複数の区画のうち現在位置する区画から航行方向に対して所定数先の区画に到達した場合に、正解を示す値に設定される、
請求項2または3記載の航行監視プログラム。 - 前記方向情報は、対地針路を含む、
請求項1乃至4のいずれか1項に記載の航行監視プログラム。 - 前記予測モデルは、前記方向情報および前記位置情報に加えて、船舶の行き先を示す行き先情報を利用して生成され、
前記予測では、前記方向情報および前記位置情報に加えて、前記航行中の船舶についての前記行き先情報が前記予測モデルに入力される、
請求項1乃至5のいずれか1項に記載の航行監視プログラム。 - 前記予測モデルは、前記方向情報および前記位置情報に加えて、船舶の直近の航行パターンを示す航行パターン情報を利用して生成され、
前記予測では、前記方向情報および前記位置情報に加えて、前記航行中の船舶についての前記航行パターン情報が前記予測モデルに入力される、
請求項1乃至6のいずれか1項に記載の航行監視プログラム。 - 前記予測モデルは、前記方向情報および前記位置情報に加えて、船舶の大きさを示す大きさ情報を利用して生成され、
前記予測では、前記方向情報および前記位置情報に加えて、前記航行中の船舶についての前記大きさ情報が前記予測モデルに入力される、
請求項1乃至7のいずれか1項に記載の航行監視プログラム。 - コンピュータが、
航行中の船舶の方向を示す方向情報および位置を示す位置情報を取得し、
過去に航行した複数の船舶のそれぞれについての前記方向情報および前記位置情報と、前記複数の船舶のそれぞれが航路に沿って航行したか否かを示す正解ラベルとを用いた機械学習によって作成された予測モデルに対して、取得した前記方向情報および前記位置情報を入力することで、前記航行中の船舶が航路に沿って航行するかを予測する、
航行監視方法。 - 過去に航行した複数の船舶のそれぞれについての方向を示す方向情報および位置を示す位置情報と、前記複数の船舶のそれぞれが航路に沿って航行したか否かを示す正解ラベルとを用いた機械学習によって作成された予測モデルを示すデータを記憶する記憶部と、
航行中の船舶の前記方向情報および前記位置情報を取得し、取得した前記方向情報および前記位置情報を前記予測モデルに入力することで、前記航行中の船舶が航路に沿って航行するかを予測する処理部と、
を有する航行監視装置。 - コンピュータに、
航行中の船舶の方向を示す方向情報を取得するとともに、航路に沿った所定幅の航路領域を航行方向に対して多角形の形状に分割することで設定された複数の区画のうち、前記航行中の船舶が位置する一の区画を特定し、
過去に航行した複数の船舶のそれぞれについての前記方向情報と、前記複数の船舶のそれぞれが航路に沿って航行したか否かを示す正解ラベルとを用いて、前記複数の区画のうち前記複数の船舶のそれぞれが位置する区画ごとに機械学習することで作成された、前記複数の区画にそれぞれ対応する複数の予測モデルの中から、前記一の区画に対応する一の予測モデルを選択し、
前記一の予測モデルに前記航行中の船舶の前記方向情報を入力することで、前記航行中の船舶が航路に沿って航行するかを予測する、
処理を実行させる航行監視プログラム。 - コンピュータが、
航行中の船舶の方向を示す方向情報を取得するとともに、航路に沿った所定幅の航路領域を航行方向に対して多角形の形状に分割することで設定された複数の区画のうち、前記航行中の船舶が位置する一の区画を特定し、
過去に航行した複数の船舶のそれぞれについての前記方向情報と、前記複数の船舶のそれぞれが航路に沿って航行したか否かを示す正解ラベルとを用いて、前記複数の区画のうち前記複数の船舶のそれぞれが位置する区画ごとに機械学習することで作成された、前記複数の区画にそれぞれ対応する複数の予測モデルの中から、前記一の区画に対応する一の予測モデルを選択し、
前記一の予測モデルに前記航行中の船舶の前記方向情報を入力することで、前記航行中の船舶が航路に沿って航行するかを予測する、
航行監視方法。 - 航路に沿った所定幅の航路領域を航行方向に対して多角形の形状に分割することで設定された複数の区画を示す区画情報を記憶するとともに、過去に航行した複数の船舶のそれぞれについての方向を示す方向情報と、前記複数の船舶のそれぞれが航路に沿って航行したか否かを示す正解ラベルとを用いて、前記複数の区画のうち前記複数の船舶のそれぞれが位置する区画ごとに機械学習することで作成された、前記複数の区画にそれぞれ対応する複数の予測モデルを示すデータを記憶する記憶部と、
航行中の船舶の前記方向情報を取得するとともに、前記複数の区画のうち前記航行中の船舶が位置する一の区画を特定し、前記複数の予測モデルの中から前記一の区画に対応する一の予測モデルを選択し、前記一の予測モデルに前記航行中の船舶の前記方向情報を入力することで、前記航行中の船舶が航路に沿って航行するかを予測する処理部と、
を有する航行監視装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021170567A JP2023060775A (ja) | 2021-10-18 | 2021-10-18 | 航行監視プログラム、航行監視方法および航行監視装置 |
US17/850,870 US11945560B2 (en) | 2021-10-18 | 2022-06-27 | Storage medium, navigation monitoring method, and navigation monitoring device |
EP22182555.7A EP4166904A1 (en) | 2021-10-18 | 2022-07-01 | Navigation monitoring program, navigation monitoring method, and navigation monitoring device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021170567A JP2023060775A (ja) | 2021-10-18 | 2021-10-18 | 航行監視プログラム、航行監視方法および航行監視装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023060775A true JP2023060775A (ja) | 2023-04-28 |
Family
ID=82547183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021170567A Pending JP2023060775A (ja) | 2021-10-18 | 2021-10-18 | 航行監視プログラム、航行監視方法および航行監視装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11945560B2 (ja) |
EP (1) | EP4166904A1 (ja) |
JP (1) | JP2023060775A (ja) |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60244882A (ja) | 1984-05-21 | 1985-12-04 | Anritsu Corp | 航路表示装置 |
KR101314308B1 (ko) * | 2010-02-26 | 2013-10-02 | 한국전자통신연구원 | 운항체의 운항 상황별 운항경로정보를 이용한 교통관제장치 및 그 방법 |
KR101275277B1 (ko) * | 2011-12-21 | 2013-06-18 | 한국해양과학기술원 | 사각단위항로 생성기법을 이용한 가항항로내 선박 피항 항로 탐색 지원 시스템 |
SG11201602392YA (en) * | 2013-09-27 | 2016-05-30 | Nippon Yusen Kk | Data-processing device, programme, recording medium and data-processing method for generation of data that indicates navigation performance of ship |
JP6540831B2 (ja) | 2016-02-10 | 2019-07-10 | 富士通株式会社 | 船舶の逆走検出に関するコンピュータシステム、逆走検出方法及び逆走検出プログラム |
WO2018193596A1 (ja) * | 2017-04-20 | 2018-10-25 | 富士通株式会社 | 衝突リスク算出プログラム、衝突リスク算出方法および衝突リスク算出装置 |
CN107393346B (zh) * | 2017-09-12 | 2023-02-10 | 浙江国际海运职业技术学院 | 船舶避碰预警系统 |
US10977605B2 (en) * | 2018-06-05 | 2021-04-13 | Signal Ocean Ltd | Carrier path prediction based on dynamic input data |
US10976164B2 (en) * | 2018-12-12 | 2021-04-13 | Here Global B.V. | Methods and systems for route generation through an area |
US12013243B2 (en) * | 2019-04-05 | 2024-06-18 | FLIR Belgium BVBA | Passage planning and navigation systems and methods |
US11988513B2 (en) * | 2019-09-16 | 2024-05-21 | FLIR Belgium BVBA | Imaging for navigation systems and methods |
CN113450596B (zh) * | 2021-05-31 | 2022-07-15 | 武汉理工大学 | 基于船舶轨迹特征点提取的时空dp方法 |
JP2022183692A (ja) * | 2021-05-31 | 2022-12-13 | 富士通株式会社 | 航行監視装置、航行監視方法および航行監視プログラム |
-
2021
- 2021-10-18 JP JP2021170567A patent/JP2023060775A/ja active Pending
-
2022
- 2022-06-27 US US17/850,870 patent/US11945560B2/en active Active
- 2022-07-01 EP EP22182555.7A patent/EP4166904A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US11945560B2 (en) | 2024-04-02 |
EP4166904A1 (en) | 2023-04-19 |
US20230119566A1 (en) | 2023-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3699048A1 (en) | Travelling track prediction method and device for vehicle | |
CN101639988B (zh) | 避免船只碰撞的方法 | |
US8825364B2 (en) | Vehicle position recognition device and vehicle position recognition program | |
JP6806242B2 (ja) | 衝突リスク算出プログラム、衝突リスク算出方法および衝突リスク算出装置 | |
JP2013178146A (ja) | 分岐確率予測装置 | |
JP2019087244A (ja) | 極地海域における海氷領域の探知方法およびそのための探知システム | |
Luo et al. | Incremental route inference from low-sampling GPS data: An opportunistic approach to online map matching | |
US11767028B2 (en) | Change detection criteria for updating sensor-based reference maps | |
US20200264005A1 (en) | Electronic apparatus and controlling method thereof | |
CN113283653B (zh) | 一种基于机器学习和ais数据的船舶轨迹预测方法 | |
JP2020008443A (ja) | 航法装置及びルート作成方法 | |
JP6507841B2 (ja) | 先行車両推定装置及びプログラム | |
Liu et al. | Intelligent tracking of moving ships in constrained maritime environments using AIS | |
CN113741415A (zh) | 路径规划方法、装置、终端设备及计算机可读存储介质 | |
JP2023060775A (ja) | 航行監視プログラム、航行監視方法および航行監視装置 | |
Mazaheri et al. | 20. A Decision Support Tool for VTS Centers to Detect Grounding Candidates | |
Yuan et al. | A two-stage collision avoidance path planning approach for inland ferries under dynamic channel crossing risk conditions | |
CN113525626B (zh) | 一种基于海陆约束的船舶预测轨迹修正方法 | |
JP2022183692A (ja) | 航行監視装置、航行監視方法および航行監視プログラム | |
CN115683142A (zh) | 一种感兴趣区域确定方法及装置 | |
Hakola | Predicting Marine Traffic in the Ice-Covered Baltic Sea | |
CN114690772A (zh) | 用于海域非循迹航行船舶的会遇时空预测方法及系统 | |
CN115131743A (zh) | 航道监测方法、系统及计算机存储介质 | |
CN113721598A (zh) | 一种障碍物轨迹预测方法、装置、设备和存储介质 | |
Zhu et al. | Prediction-enabled path planning for multi-ship encounters in Oslofjord |