(58)【調査した分野】(Int.Cl.,DB名)
水中翼船の水面に対する高さを調整するための一以上のフラップの追加操作量を取得する場合に使用される追加操作量導出モデルを構築するように構成されたモデル構築装置であって、
前記水中翼船上の一以上の位置から波浪を撮像した手動操作時画像を取得する手動操作時画像取得部と、
少なくとも一人のオペレータが手動操作を行った時の前記水中翼船上から前記波浪を撮像した前記手動操作時画像と、前記手動操作における手動操作量との関係性を解析する解析部と、
前記解析部の解析結果に基づいて、対象波浪画像に応じて前記フラップの前記追加操作量を取得するための前記追加操作量導出モデルを構築するモデル構築部と、
を備えるモデル構築装置。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、実際の波浪形状では、観測時刻から時間が経過するにつれて、波長や波高が変化し、不規則な変化が発生する場合がある。そのため、波浪形状を予測してフラップを制御する自動制御では、波浪形状に不規則な変化が発生した場合に対処できないことがある。このような場合に対処するために、水中翼船のオペレータ(操船者)は、自動制御で不十分な場合に手動操作を行うことによって水中翼船の高さを調整している。
【0005】
波浪形状の変化を予測して、このような手動操作を行うためには、熟練した技能と経験が必要である。また、手動操作の頻度が高ければ、手動操作を行うオペレータの負担が増加する。
【0006】
上述の事情に鑑みて、本発明の少なくとも一実施形態は、水中翼船のオペレータの手動操作に伴う負担を軽減することを目的とする。
【課題を解決するための手段】
【0007】
(1)本発明の少なくとも一実施形態に係る水中翼船の高さ制御装置は、
水中翼船の水面に対する高さを調整するための一以上のフラップを制御するように構成された水中翼船の高さ制御装置であって、
前記水中翼船の通常操作に用いられる前記フラップの通常操作量を取得する通常操作量取得部であって、前記水中翼船の前記水面からの目標高さと前記水中翼船の前記水面からの実測高さとの偏差に基づいて決定される前記通常操作量を取得する通常操作量取得部と、
前記水中翼船上における少なくとも一つの撮像位置から波浪を撮像した対象波浪画像を取得する対象波浪画像取得部と、
決定された前記通常操作量と前記対象波浪画像とに基づいて、前記通常操作に加えて必要となる前記フラップへの追加操作の要否を判定する判定部と、
追加操作が必要と判定されたときに、オペレータが手動操作を行った時の前記撮像位置に対応する位置から前記波浪を撮像した手動操作時画像と、前記手動操作における手動操作量との関係性を含む学習データを学習した追加操作量導出モデルに基づいて、前記対象波浪画像に応じた前記フラップの追加操作量を取得する追加操作量取得部と、
前記通常操作量、及び前記追加操作量に基づいて、前記フラップの実操作量を出力する操作部と、
を備える。
【0008】
上記(1)の構成では、オペレータが手動操作を行った時の撮像位置に対応する位置から撮像した手動操作時画像と、その手動操作における手動操作量との関係性を含む学習データを学習した追加操作量導出モデルに基づいて、追加操作量を取得する。この場合、通常操作量では不十分な場合に追加操作量を実操作量に反映させることが可能となる。そのため、水中翼船のオペレータの手動操作に伴う負担を軽減することができる。
【0009】
(2)幾つかの実施形態では、上記(1)の構成において、
前記追加操作量導出モデルは、前記通常操作量から調整された操作量を追加操作量として導出する。
【0010】
上記(2)の構成によれば、追加操作量導出モデルに基づいて、通常操作量から調整された操作量を追加操作量として導出することが可能となる。
【0011】
(3)幾つかの実施形態では、上記(1)又は(2)の構成において、
前記学習データは、前記オペレータが前記手動操作を行わなかった時の前記撮像位置に対応する位置から撮像した不操作時画像をさらに含み、
前記判定部は、前記不操作時画像を含む前記学習データを学習した要否判定モデルに基づいて、前記対象波浪画像について前記追加操作の要否を判定する。
【0012】
上記(3)の構成によれば、判定部が追加操作の要否を判定し、追加操作が必要と判定された場合に、追加操作量取得部が取得した追加操作量に基づいて、操作部が実操作量を出力する。そのため、判定部が追加操作の要否を判定し、追加操作が不要と判定した場合には、追加操作量取得部が追加操作量を取得する必要が無くなるため、処理負担を抑えることが可能となる。
【0013】
(4)幾つかの実施形態では、上記(1)乃至(3)の何れか一つの構成において、前記追加操作量導出モデルに前記対象波浪画像を入力することよって得られる前記追加操作量と、前記追加操作量導出モデルに入力された前記対象波浪画像に対する前記オペレータの前記手動操作量との対比結果に基づいて前記追加操作量導出モデルを修正するモデル修正部を備える。
【0014】
上記(4)の構成によれば、水中翼船の高さ制御装置の使用に伴って、追加操作量導出モデルを修正し、最適化することが可能となる。例えば、長期間の使用に基づく最適化により、気象、季節等の条件も追加操作量導出モデルに反映させることができる。
【0015】
(5)幾つかの実施形態では、上記(1)乃至(4)の何れか一つの構成において、
前記対象波浪画像取得部は、複数の前記撮像位置のそれぞれで撮像された複数の前記対象波浪画像を取得し、
前記追加操作量取得部は、複数の前記対象波浪画像のうち、ハレーションが発生していない一以上の前記対象波浪画像に基づいて、前記追加操作量を取得する。
【0016】
上記(5)の構成によれば、ハレーションの影響によって、追加操作量取得部が取得する追加操作量の精度が低下する虞を低減することができる。
【0017】
(6)幾つかの実施形態では、上記(1)乃至(5)の何れか一つの構成において、前記追加操作量導出モデルは、予めレベル分けされた複数の追加操作量候補の中からいずれか一つを前記追加操作量として出力する。
【0018】
上記(6)の構成によれば、予めレベル分けされた複数の追加操作量候補の中からいずれか一つを追加操作量として出力するため、その都度、追加操作量を算出する構成に比べて、応答速度を早くすることができる。
【0019】
(7)幾つかの実施形態では、上記(1)乃至(6)の何れか一つの構成において、前記操作部から出力された前記フラップの実操作量に代えて又は重畳して、優先的に前記フラップを制御する操作量を出力する出力部をさらに備える。
【0020】
上記(7)の構成によれば、緊急時には、オペレータの操作を受け付けて、フラップを制御することができる。そのため、安全性が向上する。
【0021】
(8)本発明の少なくとも一実施形態に係る水中翼船は、
上記(1)乃至(7)の何れか一つに記載の水中翼船の高さ制御装置と、
前記水中翼船上における少なくとも一つの撮像位置から波浪を撮像した対象波浪画像を取得するための少なくとも一つの撮像装置と、
前記水中翼船の高さ制御装置によって制御され、水中翼船の水面に対する高さを調整するための一以上のフラップと、
を備える。
【0022】
上記(8)の構成によれば、上記(1)乃至(7)の何れか一つに記載の水中翼船の高さ制御装置を備えていることにより、水中翼船のオペレータの手動操作に伴う負担を軽減することができる。
【0023】
(9)本発明の少なくとも一実施形態に係る水中翼船の高さ制御方法は、
水中翼船の水面に対する高さを調整するための一以上のフラップを制御する水中翼船の高さ制御方法であって、
前記水中翼船の通常操作に用いられる前記フラップの通常操作量を取得する通常操作量取得ステップであって、前記水中翼船の前記水面からの目標高さと前記水面からの実測高さとの偏差に基づいて決定される前記通常操作量を取得する通常操作量取得ステップと、
前記水中翼船上における少なくとも一つの撮像位置から波浪を撮像した対象波浪画像を取得する対象波浪画像取得ステップと、
決定された前記通常操作量と前記対象波浪画像とに基づいて、前記通常操作に加えて必要となる前記フラップへの追加操作の要否を判定する判定ステップと、
追加操作が必要と判定されたときに、オペレータが手動操作を行った時の前記撮像位置に対応する位置から前記波浪を撮像した手動操作時画像と、前記手動操作における手動操作量との関係性を含む学習データを学習した追加操作量導出モデルに基づいて、前記対象波浪画像に応じた前記フラップの追加操作量を取得する追加操作量取得ステップと、
前記通常操作量、及び前記追加操作量に基づいて、前記フラップの実操作量を出力する操作ステップと、
を備える。
【0024】
上記(9)の方法によれば、オペレータが手動操作を行った時の撮像位置に対応する位置から撮像した手動操作時画像と、その手動操作における手動操作量との関係性を含む学習データを学習した追加操作量導出モデルに基づいて、追加操作量を取得する。この場合、通常操作量では不十分な場合に追加操作量を実操作量に反映させることが可能となる。そのため、水中翼船のオペレータの手動操作に伴う負担を軽減することができる。
【0025】
(10)本発明の少なくとも一実施形態に係るプログラムは、
水面に対する高さを調整するための一以上のフラップを備える水中翼船の通常操作に用いられる前記フラップの通常操作量を取得する通常操作量取得手段であって、前記水中翼船の前記水面からの目標高さと前記水面からの実測高さとの偏差に基づいて決定される前記通常操作量を取得する通常操作量取得手段、
前記水中翼船上における少なくとも一つの撮像位置から波浪を撮像した対象波浪画像を取得する対象波浪画像取得手段、
決定された前記通常操作量と前記対象波浪画像とに基づいて、前記通常操作に加えて必要となる前記フラップへの追加操作の要否を判定する判定手段、
追加操作が必要と判定されたときに、オペレータが手動操作を行った時の前記撮像位置に対応する位置から前記波浪を撮像した手動操作時画像と、前記手動操作における手動操作量との関係性を含む学習データを学習した追加操作量導出モデルに基づいて、前記対象波浪画像に応じた前記フラップの追加操作量を取得する追加操作量取得手段、
前記通常操作量、及び前記追加操作量に基づいて、前記フラップの実操作量を出力する操作手段、
として機能させる。
【0026】
上記(10)の構成では、オペレータが手動操作を行った時の撮像位置に対応する位置から撮像した手動操作時画像と、その手動操作における手動操作量との関係性を含む学習データを学習した追加操作量導出モデルに基づいて、追加操作量を取得する。この場合、通常操作量では不十分な場合に追加操作量を実操作量に反映させることが可能となる。そのため、水中翼船のオペレータの手動操作に伴う負担を軽減することができる。
【0027】
(11)本発明の少なくとも一実施形態に係るモデル構築装置は、
水中翼船の水面に対する高さを調整するための一以上のフラップの追加操作量を取得する場合に使用される追加操作量導出モデルを構築するように構成されたモデル構築装置であって、
前記水中翼船上の一以上の位置から波浪を撮像した手動操作時画像を取得する手動操作時画像取得部と、
少なくとも一人のオペレータが手動操作を行った時の前記水中翼船上から前記波浪を撮像した前記手動操作時画像と、前記手動操作における手動操作量との関係性を解析する解析部と、
前記解析部の解析結果に基づいて、対象波浪画像に応じて前記フラップの前記追加操作量を取得するための前記追加操作量導出モデルを構築するモデル構築部と、
を備える。
【0028】
上記(11)の構成では、上記の水中翼船の高さ制御装置に適用可能な操作量導出モデルを構築することが可能となる。構築された操作量導出モデルを水中翼船の高さ制御装置に適用すれば、水中翼船のオペレータの手動操作に伴う負担を軽減することができる。
【発明の効果】
【0029】
本発明の少なくとも一実施形態によれば、水中翼船のオペレータの手動操作に伴う負担を軽減することが可能となる。
【図面の簡単な説明】
【0030】
【
図1】本発明の一実施形態に係る水中翼船の構成を概略的に示す模式図である。
【
図2】一実施形態に係る水中翼船の高さ制御装置の構成を概略的に示すブロック図である。
【
図3】一実施形態に係る水中翼船の高さ制御装置の機能を説明するための概念図である。
【
図4】一実施形態に係る水中翼船の高さ制御装置が実行する制御処理の一例を示すフローチャートである。
【
図5】一実施形態に係るモデル構築装置の構成を概略的に示すブロック図である。
【
図6】一実施形態に係るモデル構築装置の機能を説明するための概念図である。
【0031】
以下、添付図面を参照して本発明の幾つかの実施形態について説明する。ただし、実施形態として記載されている又は図面に示されている構成部品の寸法、材質、形状、その相対的配置等は、本発明の範囲をこれに限定する趣旨ではなく、単なる説明例にすぎない。
例えば、「ある方向に」、「ある方向に沿って」、「平行」、「直交」、「中心」、「同心」或いは「同軸」等の相対的或いは絶対的な配置を表す表現は、厳密にそのような配置を表すのみならず、公差、若しくは、同じ機能が得られる程度の角度や距離をもって相対的に変位している状態も表すものとする。
例えば、「同一」、「等しい」及び「均質」等の物事が等しい状態であることを表す表現は、厳密に等しい状態を表すのみならず、公差、若しくは、同じ機能が得られる程度の差が存在している状態も表すものとする。
例えば、四角形状や円筒形状等の形状を表す表現は、幾何学的に厳密な意味での四角形状や円筒形状等の形状を表すのみならず、同じ効果が得られる範囲で、凹凸部や面取り部等を含む形状も表すものとする。
一方、一の構成要素を「備える」、「具える」、「具備する」、「含む」、又は、「有する」という表現は、他の構成要素の存在を除外する排他的な表現ではない。
【0032】
図1は、本発明の一実施形態に係る水中翼船5の構成を概略的に示す模式図である。
図1に示すように、水中翼船5は、水中翼船の高さ制御装置100と、水中翼船5上における少なくとも一つの撮像位置から波浪を撮像するための少なくとも一つの撮像装置1と、一以上のフラップ3(3A,3B)と、実測高さを得るための高度センサ4とを備える。
【0033】
一以上のフラップ3(3A、3B)は、例えば、前部翼フラップ3Aと後部翼フラップ3Bとを含む。水中翼船の高さ制御装置100は、前部翼フラップ3Aと後部翼フラップ3Bとの少なくとも一方を制御する。具体的には、水中翼船の高さ制御装置100は、フラップ3(3A、3B)の駆動装置2(2A、2B)に制御信号を送信し、駆動装置2(2A、2B)を介してフラップ3(3A、3B)の角度を制御する。これにより、水中翼船5の水面に対する高さHが調整される。
【0034】
少なくとも一つの撮像装置1は、水中翼船5上における少なくとも一つの撮像位置に配置される。撮像位置は、例えば、水中翼船5のブリッジである。なお、少なくとも一つの撮像位置は、水中翼船5上において波浪を撮像するのに適した位置であればよく、水中翼船5のブリッジ、船首、甲板、船体等のうち一以上の位置であってもよい。
【0035】
高度センサ4は、例えば、水中翼船5のブリッジに配置され、水中翼船5の水面に対する高さHを計測する。これにより、実測高さが得られる。
【0036】
以下、一実施形態に係る水中翼船の高さ制御装置100について詳細に説明する。
図2は、一実施形態に係る水中翼船の高さ制御装置100の構成を概略的に示すブロック図である。
【0037】
図2に示すように、水中翼船の高さ制御装置100は、他の装置と通信を行う通信部11と、各種データを記憶する記憶部12と、オペレータの入力を受け付ける入力部13と、ユーザに情報を出力する出力部14と、装置全体の制御を行う制御部15とを備える。これらの構成要素は、バスライン16によって相互に接続される。
【0038】
通信部11は、他の装置と通信を行うための通信インターフェースを備える。通信部11は、例えば、少なくとも一つの撮像装置1と、高度センサ4と、駆動装置2(2A、2B)と通信を行い、撮像装置1からの対象波浪画像を受信したり、高度センサ4から実測高さの情報を受信したり、駆動装置2(2A、2B)に制御信号を送信したりする。なお、これらの情報の送受信は、入力部13や出力部14によって行われてもよい。そのため、水中翼船の高さ制御装置100は、通信部11を備えない構成であってもよい。
【0039】
記憶部12は、RAM(Random Access Memory)、ROM(Read Only Memory)等から構成される。記憶部12は、各種制御処理を実行するためのプログラム、各種データ等を記憶する。例えば、記憶部12は、追加操作量導出モデル、要否判定モデル、目標高さの設定値、予めレベル分けされた複数の追加操作量候補等の情報を記憶する。
【0040】
入力部13は、例えば、操作ボタン、操作レバー等の装置から構成される。入力部13は、オペレータが指示を入力するための入力インターフェースである。また、入力部13は、オペレータが操作した場合の操作量を取得する。
【0041】
出力部14は、例えば、ディスプレイ、スピーカー等の出力装置から構成される。出力部14は、オペレータに操作に関連する情報を提示するための出力インターフェースである。
【0042】
制御部15は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)等のプロセッサから構成される。制御部15は、記憶部12に記憶されているプログラムを実行することにより、後述する制御処理を実行する。
【0043】
以下、制御部15の機能的な構成を説明する。制御部15は、通常操作量取得部151、対象波浪画像取得部152、追加操作量取得部153、操作部154、判定部155、モデル修正部156、緊急操作部157(出力部)として機能する。
【0044】
通常操作量取得部151は、水中翼船5の通常操作に用いられるフラップ3(3A、3B)の通常操作量を取得する。具体的には、通常操作量取得部151は、水中翼船5の水面からの目標高さと水中翼船5の水面からの実測高さとの偏差に基づいて決定される通常操作量を取得する。
【0045】
対象波浪画像取得部152は、水中翼船5上における少なくとも一つの撮像位置から波浪を撮像した対象波浪画像を取得する。具体的には、対象波浪画像取得部152は、通信部11を介して、撮像装置1から対象波浪画像を受信することによって対象波浪画像を取得する。このような動作は、水中翼船5が運転している状態において、定期的に、又は連続的に行われる。なお、対象波浪画像は、例えば、1秒以内の短い間隔で取得される静止画データであってもよいし、継続的に取得される動画データであってもよい。このことは、後述する手動操作時画像及び不操作時画像においても同じである。
【0046】
追加操作量取得部153は、水中翼船5の追加操作に用いられるフラップ3(3A、3B)の追加操作量を取得する。追加操作量取得部153は、記憶部12に記憶されている追加操作量導出モデルに基づいて、対象波浪画像取得部152が取得した対象波浪画像に応じた追加操作量を取得する。
【0047】
追加操作量導出モデルは、追加操作が必要と判定されたときに、オペレータが手動操作を行った時の撮像位置に対応する位置から波浪を撮像した手動操作時画像と、その手動操作における手動操作量との関係性を含む学習データを学習したモデルである。追加操作量導出モデルは、通常操作量から調整された操作量を追加操作量として導出するように構成される。学習データは、少なくとも一人のオペレータが手動操作を行わなかった時の撮像位置に対応する位置から波浪を撮像した不操作時画像をさらに含む。なお、「撮像位置に対応する位置」とは、対象波浪画像の撮像位置と実質的に同じ位置を意味する。換言すると、モデル利用時の撮像位置(対象波浪画像の撮像位置)は、モデル構築時の撮像位置(手動操作時画像の撮像位置)と同一であってもよいし、追加操作量の導出に影響が出ない範囲内でモデル構築時の撮像位置から変更されていてもよいことを意味する。例えば、モデル利用時の撮像位置がモデル構築時の撮像位置に比べて波浪から離れた位置に変更されている場合であっても、ズームの設定を変更すれば追加操作量の導出に影響が出ない場合がある。
【0048】
なお、学習データに使用される手動操作量は、自動運転モードにおける手動操作(すなわち、自動運転モードでは不十分な場合に、オペレータが行う一時的な手動操作)であってもよいし、手動運転モードにおける手動操作(自動運転モードを稼働させずに、オペレータが継続的に行う手動操作であってもよい。この場合、例えば、フラップ3(3A、3B)の角度を固定している時間も手動操作時間に含まれる)であってもよい。
【0049】
操作部154は、通常操作量取得部151が取得した通常操作量、及び追加操作量取得部153が取得した追加操作量に基づいて、フラップ3(3A、3B)の実操作量を出力する。
【0050】
判定部155は、不操作時画像を含む学習データを学習した要否判定モデルに基づいて、対象波浪画像について追加操作の要否を判定する。判定部は、決定された通常操作量と対象波浪画像とに基づいて、通常操作に加えて必要となるフラップ3(3A、3B)への追加操作の要否を判定してもよい。要否判定モデルは、対象波浪画像を入力とし、その入力に対して追加操作が必要か否かを判定するモデルである。このような判定は、要否判定モデルに、手動操作時画像と不操作時画像とを含む学習データに基づいてそれらの関係性を予め機械学習させておき、入力された波浪画像に対して追加操作の要否を判定可能にすることによって実現される。追加操作量導出モデルは、対象波浪画像を入力とし、その入力に対して必要な追加操作量を算出するモデルである。このような算出は、追加操作量導出モデルに、手動操作時画像とそれに対する手動操作量とを含む学習データに基づいてそれらの関係性を予め機械学習させておき、入力された波浪画像に対して追加操作量を算出可能とすることによって実現される。
【0051】
要否判定モデルと追加操作量導出モデルは、例えば、学習データに含まれる手動操作時画像と不操作時画像を画像解析することによって、それらの画像に含まれる波浪の高さ、波浪の広がり、波浪までの推定距離、波浪までの方向等の特徴量を取得することによって構成されていてもよい。そして、これらのモデルに対象波浪画像が入力された場合には、要否判定モデルと追加操作量導出モデルは、その対象波浪画像についても画像解析を行い、上記と同様の特徴量を取得し、学習データに含まれる手動操作時画像と不操作時画像の特徴量との比較結果に追加操作の要否判定又は追加操作量を導出してもよい。要否判定モデルは、例えば、2分木、サポートベクタマシン(SVM)等の分類器を用いて2クラスの分類(追加操作の要否判定)を行うように構成される。なお、学習データに基づく要否判定モデルと追加操作量導出モデルの具体的な構築方法については、後述のモデル構築装置200の説明において説明する。
【0052】
モデル修正部156は、追加操作量導出モデルに対象波浪画像を入力することよって得られる追加操作量と、追加操作量導出モデルに入力された対象波浪画像に対するオペレータの手動操作量との対比結果に基づいて追加操作量導出モデルを修正する。
【0053】
緊急操作部157(出力部)は、操作部154から出力されたフラップ3(3A、3B)の実操作量に代えて又は重畳して、優先的にフラップ3(3A、3B)を制御する操作量を出力する。すなわち、緊急操作部157は、緊急時にオペレータが緊急操作部157を介して手動で操作を行うことを可能にしている。
【0054】
以下、水中翼船の高さ制御装置100の機能と具体的な制御処理の内容について説明する。
図3は、一実施形態に係る水中翼船の高さ制御装置100の機能を説明するための概念図である。
図4は、一実施形態に係る水中翼船の高さ制御装置100が実行する制御処理の一例を示すフローチャートである。
【0055】
図4に示すように、水中翼船の高さ制御装置100は、通常操作量を取得する(ステップS1)。具体的には、
図3に示すように、水中翼船5の水面に対する高さ(制御量)を高度センサ4が計測した結果である実測高さと水中翼船5の水面に対する目標高さとの偏差に基づいて通常操作量取得部151が通常操作量を取得する。通常操作量取得部151が取得した通常操作量は、操作部154に入力される。なお、目標高さは、基本的には一定に設定される。
【0056】
図4に示すように、水中翼船の高さ制御装置100は、対象波浪画像を取得する(ステップS2)。具体的には、
図3に示すように、対象波浪画像取得部152が撮像装置1から対象波浪画像を取得する。対象波浪画像取得部152が取得した対象波浪画像は、判定部155と追加操作量取得部153に入力される。
【0057】
図4に示すように、水中翼船の高さ制御装置100は、追加操作が必要であるか否かを判定する(ステップS3)。具体的には、
図3に示すように、判定部155が、要否判定モデルに基づいて、入力された対象波浪画像について追加操作の要否を判定する。その判定結果は、追加操作量取得部153に入力される。
【0058】
ここで、判定部155が、その対象波浪画像について追加操作が必要であると判定した場合(ステップS3;Yes)、追加操作量取得部153が追加操作量を取得する(ステップS4)。この場合、追加操作量取得部153が取得した追加操作量が操作部154に入力される。一方、判定部155が、その対象波浪画像について追加操作が不要であると判定した場合(ステップS3;No)、ステップS4がスキップされる。なお、追加操作が不要である場合には、ステップS4をスキップせずにステップS4において、追加操作量がゼロであることを示す信号が出力されてもよい。
【0059】
図4に示すように、操作部154は、入力された通常操作量と追加操作量とに基づいてフラップ3(3A、3B)を操作するための実操作量を出力する(ステップS5)。具体的には、操作部154は、駆動装置2(2A、2B)に実操作量を示す制御信号を送信して、それにより制御対象であるフラップ3(3A、3B)を制御する。なお、
図3では、駆動装置2(2A、2B)を省略している。
【0060】
図4に示すように、ステップS5において操作部154が実操作量を出力すると、制御処理がリターンして、再びステップS1に戻って処理が実行される。この間に、
図3に示すように、制御量である水中翼船5の水面に対する高さは、外乱として波浪の影響によって変動する。その変動後の水中翼船5の水面に対する高さは、高度センサ4によって計測され、実測高さとしてフィードバックされる。
【0061】
なお、
図3に示す一例では、操作部154は通常操作量と追加操作量を加算した結果を実操作量として出力する構成を示している。しかし、操作部154は、このような構成に限られず、通常操作量と追加操作量のいずれか一方を実操作量として出力するように構成されてもよい。例えば、操作部154は、追加操作量が入力された場合には、追加操作量を実操作量として出力し、追加操作量が入力されていない場合には、通常操作量を実操作量として出力してもよい。このように、操作部154は、通常操作量及び追加操作量に基づいて実操作量を出力するように構成されればよい。
【0062】
図4に示す一例では、オペレータによる緊急操作が行われなかった場合を示している。しかし、
図3に示すように、オペレータによる緊急操作が行われた場合には、緊急操作部157(出力部)が操作部154から出力されたフラップ3(3A、3B)の実操作量に代えて又は重畳して、優先的にフラップ3(3A、3B)を制御する操作量を出力する。
【0063】
以上説明したように、本発明の少なくとも一実施形態に係る水中翼船の高さ制御装置100は、例えば、
図1〜
図3に示すように、水中翼船5の通常操作に用いられるフラップ3(3A、3B)の通常操作量を取得する通常操作量取得部151であって、水中翼船5の水面からの目標高さと水中翼船5の水面からの実測高さとの偏差に基づいて決定される通常操作量を取得する通常操作量取得部151と、水中翼船5上における少なくとも一つの撮像位置から波浪を撮像した対象波浪画像を取得する対象波浪画像取得部152と、決定された通常操作量と対象波浪画像とに基づいて、通常操作に加えて必要となるフラップ3(3A、3B)への追加操作の要否を判定する判定部155と、追加操作が必要と判定されたときに、オペレータが手動操作を行った時の撮像位置に対応する位置から波浪を撮像した手動操作時画像と、その手動操作における手動操作量との関係性を含む学習データを学習した追加操作量導出モデルに基づいて、対象波浪画像に応じた追加操作量を取得する追加操作量取得部153と、通常操作量取得部151が取得した通常操作量、及び追加操作量取得部153が取得した追加操作量に基づいて、フラップ3(3A、3B)の実操作量を出力する操作部154と、を備える。
【0064】
このような構成では、オペレータが手動操作を行った時の撮像位置に対応する位置から撮像した手動操作時画像と、その手動操作における手動操作量との関係性を含む学習データを学習した追加操作量導出モデルに基づいて、追加操作量を取得する。この場合、通常操作量では不十分な場合に追加操作量を実操作量に反映させることが可能となる。そのため、水中翼船5のオペレータの手動操作に伴う負担を軽減することができる。
【0065】
幾つかの実施形態では、追加操作量導出モデルは、前記通常操作量から調整された操作量を追加操作量として導出するように構成されていてもよい。
【0066】
かかる構成によれば、追加操作量導出モデルに基づいて、通常操作量から調整された操作量を追加操作量として導出することが可能となる。
【0067】
幾つかの実施形態では、学習データは、オペレータが手動操作を行わなかった時の撮像位置に対応する位置から撮像した不操作時画像をさらに含み、判定部155は、不操作時画像を含む学習データを学習した要否判定モデルに基づいて、対象波浪画像について追加操作の要否を判定する。
【0068】
かかる構成によれば、判定部155が追加操作の要否を判定し、追加操作が必要と判定された場合に、追加操作量取得部153が取得した追加操作量に基づいて、操作部154が実操作量を出力する。そのため、判定部155が追加操作の要否を判定し、追加操作が不要と判定した場合には、追加操作量取得部153が追加操作量を取得する必要が無くなるため、処理負担を抑えることが可能となる。
【0069】
幾つかの実施形態では、例えば、
図2に示すように、水中翼船の高さ制御装置100は、追加操作量導出モデルに対象波浪画像を入力することよって得られる追加操作量と、追加操作量導出モデルに入力された対象波浪画像に対するオペレータの手動操作量との対比結果に基づいて追加操作量導出モデルを修正するモデル修正部156を備える。
【0070】
かかる構成によれば、水中翼船の高さ制御装置100の使用に伴って、追加操作量導出モデルを修正し、最適化することが可能となる。例えば、長期間の使用に基づく最適化により、気象、季節等の条件も追加操作量導出モデルに反映させることができる。
【0071】
幾つかの実施形態では、例えば、
図2及び
図3に示す構成において、対象波浪画像取得部152は、複数の撮像位置のそれぞれで撮像された複数の対象波浪画像を取得し、追加操作量取得部153は、複数の対象波浪画像のうち、ハレーションが発生していない一以上の対象波浪画像に基づいて、追加操作量を取得するように構成されてもよい。ハレーションが発生しているか否かは、例えば、対象波浪画像の輝度が閾値以上であるか否かによって判別される。
【0072】
かかる構成によれば、ハレーションの影響によって、追加操作量取得部153が取得する追加操作量の精度が低下する虞を低減することができる。また、複数の対象波浪画像に基づいて総合的な評価を行って追加操作量を取得することができるため、精度が向上する。
【0073】
幾つかの実施形態では、追加操作量取得部153が使用する追加操作量導出モデルは、予めレベル分けされた複数の追加操作量候補の中からいずれか一つを追加操作量として出力するように構成されていてもよい。複数の追加操作量候補は、例えば、操作量の大きさを第1の値(操作量大)、第2の値(操作量中)、第3の値(操作量小)などの予め定められた離散値である。
【0074】
かかる構成によれば、追加操作量取得部153は、予めレベル分けされた複数の追加操作量候補の中からいずれか一つを追加操作量として出力するため、その都度、追加操作量を算出する構成に比べて、応答速度を早くすることができる。
【0075】
幾つかの実施形態では、水中翼船の高さ制御装置100は、例えば、
図2及び
図3に示すように、操作部154から出力されたフラップ3(3A、3B)の実操作量に代えて又は重畳して、優先的にフラップ3(3A、3B)を制御する操作量を出力する出力部(緊急操作部157)をさらに備える。
【0076】
かかる構成によれば、緊急時には、オペレータの操作を受け付けて、フラップ3(3A、3B)を制御することができる。そのため、安全性が向上する。
【0077】
以下、一実施形態に係るモデル構築装置200について詳細に説明する。
図5は、一実施形態に係るモデル構築装置200の構成を概略的に示すブロック図である。一実施形態に係るモデル構築装置200は、追加操作量導出モデル及び要否判定モデルを構築するための装置である。なお、モデル構築装置200は、追加操作量導出モデルと要否判定モデルとのいずれか一方のみを構築するための装置であってもよい。
【0078】
図5に示すように、モデル構築装置200は、他の装置と通信を行う通信部21と、各種データを記憶する記憶部22と、オペレータの入力を受け付ける入力部23と、ユーザに情報を出力する出力部24と、装置全体の制御を行う制御部25とを備える。これらの構成要素は、バスライン26によって相互に接続される。
【0079】
なお、モデル構築時のオペレータは、熟練した技能と経験を有していることが好ましい。また、モデル構築時のオペレータは、上述した水中翼船の高さ制御装置100を利用するオペレータとは異なるオペレータであってもよい。また、以下の説明において、撮像装置1と、高度センサ4と、駆動装置2(2A、2B)とは、水中翼船の高さ制御装置100を利用する際の装置とは異なる装置であってもよい。ただし、これらの装置は、実質的には、水中翼船の高さ制御装置100を利用する際の装置と同様の機能を有していることが好ましい。また、モデル構築時の撮像装置1の位置、撮像方向、撮像範囲等の撮像条件は、モデル利用時の撮像装置1の撮像条件と差異が少ないことが好ましい。これは、モデル構築時とモデル利用時との環境条件の差によって精度が低下することを防止するためである。
【0080】
通信部21は、他の装置と通信を行うための通信インターフェースを備える。通信部21は、例えば、少なくとも一つの撮像装置1と、高度センサ4と、駆動装置2(2A、2B)と通信を行い、撮像装置1からの対象波浪画像を受信したり、高度センサ4から実測高さの情報を受信したり、駆動装置2(2A、2B)に制御信号を送信したりする。なお、これらの情報の送受信は、入力部23や出力部24によって行われてもよい。そのため、モデル構築装置200は、通信部21を備えない構成であってもよい。
【0081】
記憶部22は、RAM、ROM等から構成される。記憶部22は、各種制御処理を実行するためのプログラム、各種データ等を記憶する。例えば、記憶部22は、学習アルゴリズム203(後述する
図6参照)、構築した追加操作量導出モデル、構築した要否判定モデル、予めレベル分けされた複数の追加操作量候補等の情報を記憶する。また、記憶部22は、入力情報である手動操作時画像及び不操作時画像と、入力情報に対応する正解情報である手動操作における手動操作量及び手動操作の有無等の情報を記憶する。なお、入力情報は入力DB201(後述する
図6参照)として、正解情報は正解DB202(後述する
図6参照)として記憶される。
【0082】
入力部23は、例えば、操作ボタン、操作レバー等の装置から構成される。入力部23は、オペレータが指示を入力するための入力インターフェースである。また、入力部23は、オペレータが操作した場合の手動操作量を取得する。なお、取得される手動操作量は、オペレータが操作した実際の操作量と同じではなく、実際の操作量の大きさに応じて、予めレベル分けされた複数の追加操作量候補(例えば、操作量大、操作量中、操作量小)の中からいずれか一つに変換されたものであってもよい。
【0083】
出力部24は、例えば、ディスプレイ、スピーカー等の出力装置から構成される。出力部24は、オペレータに操作に関連する情報を提示するための出力インターフェースである。
【0084】
制御部25は、CPU、GPU等のプロセッサから構成される。制御部25は、記憶部22に記憶されているプログラムを実行することにより、後述する制御処理を実行する。
【0085】
以下、制御部25の機能的な構成を説明する。制御部25は、手動操作時画像取得部251、不操作時画像取得部252、手動操作量取得部253、解析部254、モデル構築部255として機能する。
【0086】
手動操作時画像取得部251は、水中翼船5の一以上の位置から波浪を撮像した手動操作時画像を取得する。手動操作時画像は、オペレータが手動操作を行った時の波浪の画像である。
【0087】
不操作時画像取得部252は、水中翼船5の一以上の位置から波浪を撮像した不操作時画像を取得する。不操作時画像は、オペレータが手動操作を行わなかった時の波浪の画像である。
【0088】
手動操作量取得部253は、手動操作時画像に対応する手動操作における手動操作量を取得する。なお、手動操作量取得部253は、手動操作量がゼロか否かに応じて、手動操作の有無も取得する。取得される手動操作量は、自動制御による通常操作量に対して重畳される追加操作量(追加分のみ)であってもよいし、自動制御による通常操作量の代わりとして適用される操作量(全操作量)であってもよい。
【0089】
解析部254は、水中翼船5上から撮像した手動操作時画像と、その手動操作における手動操作量との関係性を解析する。
【0090】
モデル構築部255は、解析部254の解析結果に基づいて、追加操作量導出モデルと要否判定モデルを構築する。
【0091】
以下、モデル構築装置200の機能について詳細に説明する。
図6は、一実施形態に係るモデル構築装置200の機能を説明するための概念図である。
【0092】
図6に示すように、モデル構築装置200は、撮像装置1から入力情報として手動操作時画像及び不操作時画像を取得する。これらの画像は、撮像装置1が対象波浪画像として取得した画像に対してオペレータが手動操作を行ったか否かによって、その画像を手動操作時画像又は不操作時画像として識別されてもよい。取得した入力情報は、入力DB201に蓄積される。
【0093】
モデル構築装置200は、入力部13を介して、入力情報に対応する正解情報としてオペレータの手動操作の有無と手動操作量とを取得する。入力DB201に蓄積された情報は、学習アルゴリズム203に入力される。なお、
図6では、作成している要否判定モデル又は追加操作量導出モデルとそれらのモデルを作成するためのアルゴリズムとを含めて学習アルゴリズム203としている。
図5に示す解析部254は、学習アルゴリズム203を用いて、入力DB201に蓄積された情報を解析し、モデル構築部255は、その解析結果に基づいて、追加操作量導出モデルと要否判定モデルを暫定的に構築する。
【0094】
次に、
図6に示すように、モデル構築装置200は、撮像装置1が取得した対象波浪画像を学習アルゴリズム203に入力し、暫定的に構築された追加操作量導出モデルと要否判定モデルとに基づいて追加操作量又は追加操作の要否の判定結果を出力する。また、モデル構築装置200は、正解DB202から、その対象波浪画像に対してオペレータが手動操作を行ったか否かと手動操作の手動操作量とを正解情報として取得する。
【0095】
暫定的に構築された追加操作量導出モデルと要否判定モデルによって得られた出力と、正解DB202から取得した正解情報とは、評価部204に入力される。評価部204は、それらを対比した結果を学習アルゴリズム203にフィードバックする。これにより、徐々に正解情報と暫定的に構築された追加操作量導出モデルと要否判定モデルの出力との誤差が修正され、その誤差が所定範囲内に収まった場合に追加操作量導出モデルと要否判定モデルとが構築される。なお、
図6に示す学習アルゴリズム203及び評価部204は、
図5に示す解析部254とモデル構築部255とが協働することによって実現される。
【0096】
<要否判定モデルの場合>
要否判定モデルの構築では、事前に取得した対象波浪画像(手動操作時画像又は不操作時画像)と、その波浪状態でオペレータが手動操作をしたか否かを示す二値情報が使用される。入力DB201には、事前に取得したN個(Nは任意の自然数)の対象波浪画像のデータが記憶される。正解DB202には、N個の対象波浪画像と1対1に対応する追加操作の有無を示す二値情報が記憶される。二値情報は、例えば、操作ありが1、操作なしが0と表現されてもよい。
【0097】
図6において、X
iは、入力DB201から抽出された対象波浪画像のデータを示している。X
iは、例えば、m×nピクセルの画像(mとnは任意の自然数)におけるRGB情報である。この場合、X
iは、各ピクセルの赤、緑、及び青のそれぞれの成分の数値を示すm×n×3個の実数値のデータである。Y
iは、X
iに対応する正解情報として抽出される二値情報である。
【0098】
要否判定モデルは、例えば、X
iを入力した場合に0又は1を出力する関数y
iである。例えば、関数はy
i=f(X
i,a)である。aは、パラメータ群を示す。例えば、X
iがm×n×3個の実数値である場合に、X
i=[X
i1,X
i2,X
i3,…,X
im×n×3]と表し、パラメータ群をa=[a
1,a
2,a
3,…,a
N]と表した場合、y
i=a
1×X
i1+a
2×X
i2+…a
i×X
i1×X
i1+a
i+1×X
i1×X
i2+…のような非線形関数が考えられる。評価部204でこのような関数y
iから求めた値と正解情報のY
iとを対比評価して、その評価結果に応じて学習アルゴリズム203は、暫定的な要否判定モデルの関数y
iの出力値y
iが正解情報Y
iと近似するようにパラメータ群を調整する。これにより、最終的な要否判定モデルが構築される。
【0099】
<追加操作量導出モデルの場合>
追加操作量導出モデルの構築では、事前に取得した対象波浪画像のうちオペレータが手動操作を行った波浪画像(すなわち手動操作時画像)と、そのときの追加操作量(すなわち手動操作量に含まれる全操作量又は追加分の操作量)とを使用する。
【0100】
入力DB201には、事前に取得したN個(Nは任意の自然数)の対象波浪画像のデータが記憶される。正解DB202には、N個の対象波浪画像と1対1に対応する追加操作量が記憶される。追加操作量は、例えば、0〜100の実数で表現されてもよい。
【0101】
追加操作量導出モデルの構築においても、要否判定モデルの場合と同様に、X
iは、入力DB201から抽出された対象波浪画像のデータであり、例えば、m×n×3個の実数値のデータである。Y
iは、X
iに対応する正解情報として抽出される追加操作量である。
【0102】
追加操作量導出モデルは、例えば、X
iを入力した場合に0〜100の範囲内の追加操作量の数値を出力する関数y
iである。例えば、関数はy
i=f(X
i,a)である。aは、パラメータ群を示す。なお、追加操作量導出モデルのパラメータ群と要否判定モデルのパラメータ群は異なるものであってもよい。追加操作量導出モデルの構築においても、学習アルゴリズム203と評価部204が、要否判定モデルの構築の場合と同様にパラメータ群を調整する。これにより、最終的な追加操作量導出モデルが構築される。
【0103】
以上説明したように、一実施形態に係るモデル構築装置200は、水中翼船5の水面に対する高さを調整するための一以上のフラップ3(3A、3B)の追加操作量を取得する場合に使用される追加操作量導出モデルを構築するように構成されたモデル構築装置である。また、モデル構築装置200は、水中翼船5の一以上の位置から波浪を撮像した手動操作時画像を取得する手動操作時画像取得部251と、少なくとも一人のオペレータが手動操作を行った時の水中翼船5上から波浪を撮像した手動操作時画像と、手動操作における手動操作量との関係性を解析する解析部254と、解析部254の解析結果に基づいて、対象波浪画像に応じてフラップ3(3A、3B)の追加操作量を取得するための追加操作量導出モデルを構築するモデル構築部255と、を備えている。
【0104】
このような構成では、上記の水中翼船の高さ制御装置100に適用可能な追加操作量導出モデルを構築することが可能となる。構築された追加操作量導出モデルを水中翼船の高さ制御装置100に適用すれば、水中翼船5のオペレータの手動操作に伴う負担を軽減することができる。
【0105】
本発明は上述した実施形態に限定されることはなく、上述した実施形態に変形を加えた形態や、これらの形態を適宜組み合わせた形態も含む。
【0106】
例えば、水中翼船の高さ制御装置100及びモデル構築装置200は、要否判定モデルや追加操作量導出モデルの構築時又は利用時には、水中翼船5の速度、加速度、気象条件(例えば風量や風向き)等の他の情報も加味されるように構成されてもよい。モデル構築装置200は、VR技術による仮想空間の映像を用いて、あたかも水中翼船5を運転しているかのような状態を演出し、オペレータの手動操作の有無又は手動操作量を学習するように構成されていてもよい。
【0107】
水中翼船の高さ制御装置100とモデル構築装置200とは、適宜組み合わせて構成することが可能である。例えば、水中翼船の高さ制御装置100にモデル構築装置200のモデル構築を行うための機能を実装し、水中翼船の高さ制御装置100が制御に使用するモデルを構築可能な構成にされてもよい。また、水中翼船の高さ制御装置100のモデル修正部156の機能をモデル構築装置200に実装し、モデル構築装置200がモデルの構築と修正の両方を実行可能な構成にされてもよい。