(57)【要約】【課題】飛行体を適切に制御すること。【解決手段】一実施形態に係るウェイポイントの決定方法は、プロセッサを備えるコンピュータシステムにより実行される、飛行体に対象領域を飛行させるためのウェイポイントの決定方法である。この方法は、対象領域を示す領域データと、飛行体の静止状態における作用範囲を示す範囲データとに基づいて、飛行体の飛行に伴って移動する作用範囲の軌跡が対象領域をなぞるように複数のウェイポイントを決定するステップを含む。【選択図】図３
2019082873.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサを備えるコンピュータシステムにより実行され、対象領域を飛行する飛行体に利用されるウェイポイントの決定方法であって、
前記プロセッサが、前記飛行体の飛行する経路上の点で構成される複数の候補点データを取得する取得ステップと、
前記プロセッサが、前記対象領域を示す領域データ及び前記飛行体の作用範囲を示す範囲データに基づいて、前記複数の候補点データから所定の条件を満たす候補点データをウェイポイントとして決定する決定ステップと
を実行するウェイポイントの決定方法。
【請求項２】
前記決定ステップでは、
前記プロセッサが、決定されたウェイポイントと該ウェイポイントから前記経路前方の候補点とを結ぶ仮想直線に沿った前記作用範囲の軌跡が前記対象領域を包含するという前記所定の条件を満たす基準点のうち最も経路方向前方に位置する基準点を次のウェイポイントとして決定する
請求項１に記載のウェイポイントの決定方法。
【請求項３】
前記決定ステップでは、
前記プロセッサが、前記経路における形状の変化が所定以上の地点である場合に新たな候補点を追加する
請求項１または２に記載のウェイポイントの決定方法。
【請求項４】
飛行体に対象領域を飛行させるためのウェイポイントの決定をプロセッサを備えるコンピュータシステムに実行させるためのプログラムであって、
前記飛行体の飛行する経路上の点で構成される複数の候補点データを取得する取得ステップと、
前記対象領域を示す領域データ及び前記飛行体の作用範囲を示す範囲データに基づいて、前記複数の候補点データから所定の条件を満たす候補点データをウェイポイントとして決定する決定ステップと
を前記コンピュータシステムに実行させるプログラム。
【請求項５】
飛行体に対象領域を飛行させるために用いられるデータのデータ構造であって、
前記飛行体の飛行する経路上の点で構成される複数の候補点データから、前記対象領域を示す領域データ及び前記飛行体の作用範囲を示す範囲データに基づいて決定される所定の条件を満たす候補点データの集合で構成されるデータのデータ構造。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の一側面は決定方法、プログラム、データ構造に関する。
【背景技術】
【０００２】
従来から、飛行体を制御するための技術が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−２１１４９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の一側面は、飛行体を適切に制御することを目的とする。
【課題を解決するための手段】
【０００５】
本発明の一側面に係るウェイポイントの決定方法は、プロセッサを備えるコンピュータシステムにより実行される、飛行体に対象領域を飛行させるためのウェイポイントの決定方法であって、対象領域を示す領域データと、飛行体の静止状態における作用範囲を示す範囲データとに基づいて、飛行体の飛行に伴って移動する作用範囲の軌跡が対象領域をなぞるように複数のウェイポイントを決定するステップを含む。
【図面の簡単な説明】
【０００６】
【図１】実施形態に係るウェイポイント（ＷＰ）決定システムの機能構成の例を示す図である。
【図２】実施形態に係るサーバのハードウェア構成の例を示す図である。
【図３】実施形態に係るＷＰ決定システムの動作の例を示すフローチャートである。
【図４】飛行体の作用範囲の軌跡と対象領域との関係の例を示す図である。
【図５】複数の候補点の中から複数のウェイポイントを決定する処理の例を示すフローチャートである。
【図６】ウェイポイントの決定に関する具体的な例を示す図である。
【図７】ウェイポイントの決定に関する具体的な例を示す図である。
【図８】高度も考慮してウェイポイントを決定する処理の例を示す図である。
【図９】ウェイポイントの位置の調整の例を示す図である。
【図１０】禁止区域を避けるようにウェイポイントを決定する処理の例を示す図である。
【発明を実施するための形態】
【０００７】
以下、添付図面を参照しながら本発明の実施形態を詳細に説明する。なお、図面の説明において同一または同等の要素には同一の符号を付し、重複する説明を省略する。
【０００８】
［システムの構成］
実施形態に係るウェイポイント決定システム（ＷＰ決定システム）１は、飛行体に対象領域を飛行させるためのウェイポイント（ＷＰ）を決定するコンピュータシステムである。ＷＰ決定システム１は決定されたウェイポイントを示すＷＰデータを生成し、飛行体はこのＷＰデータに従って対象領域を飛行することができる。飛行体とは、空中を移動することが可能な人工物である。飛行体の種類は限定されず、例えば有人航空機でもよいし無人航空機（ドローン）でもよい。対象領域とは、飛行体を飛行させる対象となる地理的な領域である。ウェイポイントとは、飛行体の飛行経路を決定するために設定される特定の位置を表す。一般的には、緯度と経度の情報の組で表現され、高度の情報が加わる場合もある。飛行体３０は複数のウェイポイントを順次経由しながら飛行する。ＷＰデータは、コンピュータが読み取ることが可能な電子データであり、飛行体に対象領域を飛行させるために必要なデジタル情報を含む制御データである。
【０００９】
図１に示すように、本実施形態では、ＷＰ決定システム１はサーバ１０、地図データベース２０、および飛行体３０を備えて構成される。サーバ１０はＷＰデータを生成するコンピュータである。地図データベース２０は、ＷＰデータの生成に用いられる地図データを記憶する装置である。飛行体３０は、生成されたＷＰデータに基づいて飛行することが可能である。サーバ１０、地図データベース２０、および飛行体３０は有線または無線の通信ネットワークを介してデータを送受信することができる。例えば、サーバ１０は図示しない通信ネットワークを介して、地図データベース２０から地図データを読み出したり、飛行体３０にＷＰデータを送信したりすることができる。
【００１０】
サーバ１０は機能モジュールとしてＷＰ候補設定部１１、作用範囲特定部１２、ＷＰ決定部１３、および通信部１４を備える。
【００１１】
ＷＰ候補設定部１１は、飛行体３０に対象領域を飛行させるために必要なウェイポイントの候補を設定する機能モジュールである。ウェイポイントは水平方向における位置を示す２次元データ（例えば、緯度経度）で表現されてもよい。あるいは、ウェイポイントは水平方向および鉛直方向における位置を示す３次元データ（例えば、緯度経度および高度）で表現されてもよい。以下では、ウェイポイントの候補を候補点という。候補点も２次元データまたは３次元データで表現され得る。ＷＰ候補設定部１１は対象領域に対応する複数の候補点を設定する。
【００１２】
作用範囲特定部１２は、飛行体３０の静止状態における作用範囲（以下では単に「作用範囲」ともいう）を特定する機能モジュールである。「飛行体の静止状態における作用範囲」とは、飛行体３０が空中で静止した状態（すなわち、飛行体３０がホバリングしている状態）において該飛行体３０の影響が及ぶ範囲のことをいう。
【００１３】
作用範囲は飛行体３０の特性または機能の種類に応じて特定されてもよいし、他の要因も考慮して特定されてもよい。例えば、作用範囲は、飛行体３０に取り付けられた装置（例えば、センサ、散布装置、ＧＰＳなど）の機能に応じて特定されてもよい。飛行体３０が、センサの一種であるカメラ（撮影機能）を有する場合には、飛行体の静止状態における作用範囲は、該静止状態においてカメラのフレームに収まる範囲（すなわち、撮影範囲）である。飛行体３０が水や農薬などの物質を散布する機能を有する場合には、飛行体３０の静止状態における作用範囲は、静止状態において散布された物質が到達し得る範囲である。飛行体３０のＧＰＳの誤差を考慮して、飛行体３０が確実に存在するといえる範囲が作用範囲として特定されてもよい。あるいは、飛行体３０が緊急着陸する可能性がある範囲が作用範囲として特定されてもよい。例えば、その潜在的な緊急着陸の範囲は、飛行体３０の寸法、重量、動力などの特性に基づいて特定されてもよい。あるいは、気象（例えば風など）による飛行体３０の飛行範囲のぶれも考慮して作用範囲が特定されてもよい。平面視における飛行体３０と作用範囲との位置関係も限定されず、例えば、平面視において作用範囲が飛行体３０の位置を含んでもよいし含まなくてもよい。
【００１４】
作用範囲は仮想的な形状で表現され得る。作用範囲は、水平方向における範囲を示す２次元データで表現されてもよいし、水平方向および鉛直方向における範囲を示す３次元データで表現されてもよい。作用範囲の定義方法はこれらの例に限定されず、任意に定められてよい。作用範囲が２次元で表現されるか３次元で表現されるかにかかわらず、作用範囲の形状は任意に設定されてよい。例えば、作用範囲の形状は円でも矩形でもよいし、球、直方体、または立方体でもよい。
【００１５】
ＷＰ決定部１３は、設定された候補点から複数のウェイポイントを決定する機能モジュールである。ＷＰ決定部１３は、対象領域と、ＷＰ候補設定部１１により設定された候補点と、作用範囲特定部１２により特定された作用範囲とに基づいてウェイポイントを決定し、そのウェイポイントを示すＷＰデータを生成する。
【００１６】
通信部１４は、ＷＰ決定部１３により生成されたＷＰデータを出力する機能モジュールである。ＷＰデータは飛行体３０の経路を決定するために用いられ、飛行体３０はその決定された経路に従って飛行することができる。
【００１７】
図２は、サーバ１０のハードウェア構成の例を示す。例えば、サーバ１０は制御回路１００を有する。制御回路１００は、一つまたは複数のプロセッサ１０１と、メモリ１０２と、ストレージ１０３と、通信ポート１０４と、入出力ポート１０５とを有する。プロセッサ１０１はオペレーティングシステムおよびアプリケーションプログラムを実行する。ストレージ１０３はハードディスク、不揮発性の半導体メモリ、または取り出し可能な媒体（例えば、磁気ディスク、光ディスクなど）の記憶媒体で構成され、オペレーティングシステムおよびアプリケーションプログラムを記憶する。メモリ１０２は、ストレージ１０３からロードされたプログラム、またはプロセッサ１０１による演算結果を一時的に記憶する。プロセッサ１０１は、メモリ１０２と協働してプログラムを実行することで、上記の各機能モジュールとして機能する。通信ポート１０４は、プロセッサ１０１からの指令に従って、通信ネットワークＮＷを介して他の装置（例えば地図データベース２０または飛行体３０）との間でデータ通信を行う。入出力ポート１０５は、プロセッサ１０１からの指令に従って、キーボード、マウス、モニタなどの入出力装置（ユーザインタフェース）との間で電気信号の入出力を実行する。
【００１８】
サーバ１０は一つまたは複数のコンピュータにより構成され得る。複数のコンピュータが用いられる場合には、通信ネットワークを介してこれらのコンピュータが互いに接続されることで論理的に一つのサーバ１０が構成される。
【００１９】
サーバ１０として機能するコンピュータは限定されない。例えば、サーバ１０は業務用サーバなどの大型のコンピュータで構成されてもよいし、パーソナルコンピュータや携帯端末（例えばスマートフォン、タブレット端末など）などの小型のコンピュータで構成されてもよい。
【００２０】
サーバ１０は、ＷＰデータを生成するために、地図データベース２０内の地図データを用いる。地図データは、様々な地物の属性を表現するデータである。地物とは、地上に存在する任意の有体物または無体物である。地物は自然物でも人工物でもよい。例えば、地物は、山地、農地、住宅地、更地、河川、湖、海、道路、鉄道、建物、公園、塔などを含み得る。無体物である地物の例として、任意の目的で設定された区域（例えば禁止区域）、イベントが開催される区域などが挙げられる。当然ながら、地物の種類はこれらに限定されない。地物の属性とは、地物の性質または特徴を表す任意の種類の情報である。地物の属性の例として名称、位置、形状、寸法、構成、構造などが挙げられる。個々の地物を一意に特定するための識別子（地物ＩＤ）、および地物の種類（例えば、「山」「河川」「建物」「道路」など）も、地物の属性であり得る。地物の属性の表現方法は限定されない。例えば、地物の形状、構成、または構造は、座標点の集合で表現されてもよいし、ノード（座標点）と、ノード間を結ぶリンクとにより表現されてもよい。地物の位置、形状、および寸法はそれぞれ、２次元データで表現されてもよいし、３次元データで表現されてもよい。２次元データは、水平方向において定義される値で構成され、例えば、緯度経度、幅、奥行き、長さなどを含み得る。３次元データは、水平方向において定義される値と鉛直方向において定義される値とで構成される。鉛直方向において定義される値の例として、標高、高度、高さなどが挙げられる。地物がリンクを用いて表現される場合には、リンクの情報が寸法（例えば、道路の幅、車線数など）を含んでもよい。
【００２１】
地図データは、道路ネットワーク情報を用いて作成されてもよいし、道路ネットワーク以外の情報（例えば、鉄道ネットワーク情報、建築物の情報、自然物の情報など）を用いて作成されてもよい。あるいは、地図データは道路ネットワーク情報と、道路ネットワーク以外の情報との双方を用いて作成されてもよい。ＷＰデータの生成に必要な情報が提供できるのであれば、地図データの準備方法および構成は何ら限定されない。
【００２２】
［システムでの処理手順］
図３〜図５を参照しながら、ＷＰ決定システム１の動作を説明するとともに本実施形態に係るウェイポイントの決定方法を説明する。図３は、ＷＰ決定システム１の動作の例を示すフローチャートである。図４は、飛行体３０の作用範囲の軌跡と対象領域との関係の例を示す図である。図５は、複数の候補点の中から複数のウェイポイントを決定する処理の例を示すフローチャートである。
【００２３】
ステップＳ１１では、ＷＰ候補設定部１１が、対象領域を示す領域データを取得する。対象領域の形状は限定されない。例えば、道路、線路、河川、電線などある程度の幅を有して延伸する地物に沿って対象領域が設定された場合には、その対象領域は線状または帯状を呈する。別の例として、田畑や牧草地など特定の閉じられた領域を網羅する対象領域が設定された場合には、その対象領域は平面図形のような形状を呈し得る。あるいは、対象領域は、線図形、帯図形と平面図形とを組み合わせたような複雑な形状を呈してもよい。
【００２４】
領域データの取得方法は限定されない。例えば、ＷＰ候補設定部１１は、ユーザにより入力された情報（入力情報）と地図データベース２０内の地図データとに基づいて領域データを生成してもよい。入力情報は、対象領域に対応する１以上の地物（すなわち、上空を飛行体が通過する地物）を示す情報であってもよく、例えば、１以上の地物ＩＤの集合、１以上の地物名の集合などでもよい。あるいは、入力情報は、対象領域を規定する座標点（緯度経度）の集合で表現されてもよい。いずれにしても、入力情報は、対象領域における飛行開始地点および飛行終了地点を示す情報を含む。入力情報の取得方法は限定されない。例えば、ＷＰ候補設定部１１は、ユーザインタフェースを介して入力情報を受け付けてもよいし、他のコンピュータから入力情報を受信してもよいし、任意の記憶装置から入力情報を読み出してもよい。任意の記憶装置は何ら限定されないが、例えばストレージ１０３でもよいし、図示しないデータベースでもよい。
【００２５】
ＷＰ候補設定部１１は、入力情報を用いて地図データベース２０を検索することで、その入力情報に対応する１以上の地物を特定し、特定した地物の地図データを用いて領域データを生成する。例えば、ＷＰ候補設定部１１は入力情報に含まれる地物ＩＤまたは地物名に対応する地物の地図データを用いて領域データを生成してもよい。あるいは、ＷＰ候補設定部１１は、入力情報の座標点に対応する位置に存在する地物を特定し、その地物の地図データを用いて領域データを生成してもよい。
【００２６】
領域データは、水平方向に沿った２次元の領域（すなわち、面を示すデータ）を示してもよいし、水平方向だけでなく鉛直方向も考慮した３次元の領域（すなわち、立体を示すデータ）を示してもよい。したがって、領域データは、少なくとも水平方向に沿った長さおよび幅を表現する。領域データは、対象領域における飛行開始地点および飛行終了地点を示す情報を含む。
【００２７】
あるいは、ＷＰ候補設定部１１は領域データを生成するのではなく、生成済の領域データを取得してもよい。例えば、ＷＰ候補設定部１１は、ユーザインタフェースを介して入力された領域データを受け付けてもよいし、他のコンピュータから領域データを受信してもよいし、任意の記憶装置から領域データを読み出してもよい。
【００２８】
ステップＳ１２では、ＷＰ候補設定部１１が、領域データで示される対象領域に対応する複数の候補点を設定する。候補点の設定方法は限定されない。例えば、領域データが対象領域の中心線を示すデータ（例えば、道路ネットワークにより得られる、道路の中心線や走行線を示すデータ）を含む場合には、ＷＰ候補設定部１１はその中心線に沿って複数の候補点を設定してもよい。領域データがその中心線を示さない場合には、ＷＰ候補設定部１１は対象領域の幅方向における中心を結んだ中心線を算出し、その中心線に沿って候補点を設定してもよい。あるいは、ＷＰ候補設定部１１は中心以外の任意の位置に候補点を設定してもよい。候補点の間隔は限定されない。例えば、ＷＰ候補設定部１１は対象領域の形状に関係なく等間隔に候補点を設定してもよい。あるいは、ＷＰ候補設定部１１は対象領域の形状に応じて候補点間の間隔を変化させてもよい。一例として、ＷＰ候補設定部１１は、対象領域の直線部では線分の始点および終点にのみ候補点を設定する一方で、蛇行部では曲がり具合に応じて候補点の間隔を細かく設定してもよい。
【００２９】
ステップＳ１３では、作用範囲特定部１２が、飛行体３０の静止状態における作用範囲を示す範囲データを取得することで該作用範囲を特定する。作用範囲の特定方法は限定されない。例えば、作用範囲特定部１２はユーザにより入力された作用範囲を受け付けることで該作用範囲を特定してもよい。あるいは、作用範囲特定部１２は、飛行体３０の特性または機能に基づいて作用範囲を算出することで該作用範囲を特定してもよい。例えば、作用範囲特定部１２は飛行体３０のセンサの設置角度（例えばカメラの向き）と予定される飛行高度とに基づいて作用範囲を算出してもよい。あるいは、作用範囲特定部１２は飛行体３０の散布装置の設置角度および放出性能（すなわち、散布物が放出される向きおよび強さ）と予定される飛行高度とに基づいて作用範囲を算出してもよい。作用範囲特定部１２は、特定した作用範囲を示す範囲データを生成または取得する。
【００３０】
ステップＳ１４では、ＷＰ決定部１３が領域データおよび範囲データに基づいて、設定された複数の候補点の中から複数のウェイポイントを決定する。ＷＰ決定部１３は、飛行体３０の飛行に伴って移動する作用範囲の軌跡が対象領域をなぞるように複数のウェイポイントを決定し、そのウェイポイントを示すＷＰデータを生成する。
【００３１】
「作用範囲の軌跡が対象領域をなぞる」とは、対象領域の始点から終点にかけて作用範囲の軌跡が該対象領域を含むことをいう。より具体的には、「作用範囲の軌跡が対象領域をなぞる」とは、対象領域の始点から終点にかけて作用範囲の軌跡が対象領域の全体を包含するか、または、該始点から該終点にかけて作用範囲の軌跡の全体が対象領域と重複することをいう。作用範囲の軌跡と対象領域との間の包含関係に多少の誤差が存在してもよい。例えば、作用範囲の軌跡が対象領域のわずかな部分を包含しなくてもよいし、作用範囲の軌跡のわずかな部分が対象領域と重複しなくてもよい。「作用範囲の軌跡」とは、飛行体３０の移動に応じて移動した作用範囲の跡を示す仮想的な領域である。
【００３２】
図４の例（ａ）は、円形の作用範囲３０１の軌跡３０２が対象領域（道路）２００の全体（始点２０１から終点２０２までの範囲）を包含する場合を示す。この例（ａ）に示すように、作用範囲の軌跡が対象領域の全体を包含する場合には、該軌跡は対象領域以外の領域をさらに含んでもよい。図４の例（ｂ）は、円形の作用範囲３１１の軌跡３１２の全体が、対象領域（河川）２１０の始点２１１から終点２１２にわたって該対象領域２１０と重複する場合を示す。
【００３３】
ステップＳ１５では、通信部１４がＷＰデータを送信する。ＷＰデータの宛先は限定されない。例えば、通信部１４はＷＰデータを、飛行体３０に送信してもよいし、飛行体３０以外の任意のコンピュータに送信してもよい。あるいは、通信部１４はＷＰデータを将来の飛行に備えて任意のデータベースに格納してもよい。ＷＰデータは飛行経路を算出するために用いられる。例えば、飛行体３０の制御回路がＷＰデータを受信および処理することで飛行経路を算出し、その経路に沿って飛行するように飛行体３０の動力および舵を制御してもよい。あるいは、飛行体３０以外のコンピュータ（例えばリモートコントローラ）がＷＰデータに基づいて飛行経路を算出して該経路を示す経路データを飛行体３０に送信し、飛行体３０の制御回路がその経路データに基づいて飛行体３０の動力および舵を制御してもよい。いずれにしても、飛行体３０は、サーバ１０から提供されるＷＰデータに基づいて対象領域が包含される範囲を飛行することができる。
【００３４】
図５を参照しながら、ステップＳ１４におけるウェイポイントの決定方法について詳しく説明する。ステップＳ１４１では、ＷＰ決定部１３は、対象領域の始点に対応する候補点を１番目のウェイポイントとして決定する。このウェイポイントは、対象領域において飛行体が最初に通過する地点である。
【００３５】
ステップＳ１４２において、ＷＰ決定部１３は、その決定されたウェイポイントを基準点として設定する。「基準点」とは、次のウェイポイントを決める際に基準となるウェイポイントである。基準点はステップＳ１４２の時点で最後に決定されたウェイポイントであるということもできる。
【００３６】
基準点を設定すると、ＷＰ決定部１３は該基準点に近い候補点から順に複数の候補点を探索しながら次のウェイポイントを決定する。以下では、この探索方法を、便宜的に変数ｉを用いて説明する。
【００３７】
ＷＰ決定部１３は、ステップＳ１４３において変数ｉを１に設定した上で、ステップＳ１４４において、基準点からｉ番目の候補点（基準点から対象領域に沿って進んだ場合にｉ番目に現れる候補点）を選択する。ｉ＝１であれば、ＷＰ決定部１３は基準点の隣（次に飛行予定のポイント）の候補点を選択する。
【００３８】
ステップＳ１４５では、ＷＰ決定部１３は基準点とｉ番目の候補点とを結ぶ仮想直線に沿った飛行体の作用範囲の軌跡を直線軌跡として算出する。直線軌跡とは、仮想直線上での飛行体の移動に応じて移動した作用範囲の跡を示す仮想的な領域である。作用範囲が平面で表現されるならば直線軌跡は一つの平面で表現され、作用範囲が立体で表現されるならば直線軌跡は一つの立体で表現される。
【００３９】
ステップＳ１４６では、ＷＰ決定部１３は、基準点とｉ番目の候補点とを結ぶ仮想直線の範囲において直線軌跡が対象領域をなぞるか否かを判定する。「仮想直線の範囲において直線軌跡が対象領域をなぞる」とは、基準点からｉ番目の候補点までの区間（以下ではこれを「検査区間」という）の全体にわたって直線軌跡が対象領域を含むことをいう。より具体的には、「直線軌跡が対象領域をなぞる」とは、検査区間において直線軌跡が対象領域の全体を包含するか、または、検索区間において直線軌跡の全体が対象領域と重複することをいう。直線軌跡が対象領域の全体を包含する場合には、該直線軌跡は対象領域以外の領域をさらに含んでもよい。
【００４０】
直線軌跡が対象領域をなぞる場合には（ステップＳ１４６においてＹＥＳ）、処理はステップＳ１４７に進む。ステップＳ１４７において、ＷＰ決定部１３は選択した候補点（ｉ番目の候補点）が対象領域の終点に対応するか否かを判定する。選択した候補点が該終点に対応しないということは（ステップＳ１４７においてＮＯ）、対象領域の全体を網羅する飛行経路が未だ決まっていないことを意味する。この場合、処理はステップＳ１４８に進む。ステップＳ１４８においてＷＰ決定部１３は変数ｉを一つ増分する。そして、ステップＳ１４４以降の処理が再び実行される。ｉ＝２であれば、ＷＰ決定部１３は基準点の二つ隣の候補点に関して直線軌跡と対象領域との関係を検査する。ＷＰ決定部１３は、直線軌跡が対象領域をなぞると判定する限り、変数ｉを１ずつ増分しながら順番に候補点を検査する。
【００４１】
ステップＳ１４６において、直線軌跡が対象領域をなぞらない場合には（ステップＳ１４６においてＮＯ）、処理はステップＳ１４９に進む。ステップＳ１４９において、ＷＰ決定部１３はｉ−１番目の候補点を基準点の次のウェイポイントとして決定する。すなわち、ＷＰ決定部１３は、直線軌跡が対象領域をなぞると最後に判定された候補点を次のウェイポイントとして決定する。決定されたウェイポイントは、直線軌跡が対象領域をなぞると判定された候補点のうち基準点から最も遠い候補点であるということもできる。処理はこのステップＳ１４９からステップＳ１４２に戻る。
【００４２】
ステップＳ１４７において、ｉ番目の候補点が対象領域の終点に対応する場合には（ステップＳ１４７においてＹＥＳ）、処理はステップＳ１５０に移る。ステップＳ１５０において、ＷＰ決定部１３はｉ番目の候補点（対象領域の終点に対応する候補点）を基準点の次のウェイポイントとして決定する。この結果、対象領域に対応するすべてのウェイポイントが決まる。
【００４３】
ステップＳ１５１において、ＷＰ決定部１３は決定された複数のウェイポイントを示すＷＰデータを生成する。
【００４４】
［ＷＰデータのデータ構造］
ＷＰデータのデータ構造は順番情報および位置情報を含む。順番情報は、対象領域の全体における飛行経路を示す１番目からｎ番目（ｎは１より大きい自然数）までのウェイポイントの順番を示す。すなわち、順番情報は飛行体３０が通過する順番を表す。１番目のウェイポイントは対象領域の始点に対応し、ｎ番目のウェイポイントは対象領域の終点に対応する。位置情報はそれぞれのウェイポイントの位置を示す。順番情報および位置情報の表現方法は限定されない。例えば、順番情報は配列の添え字により表現されてもよい。位置情報は２次元座標（例えば緯度経度）で表現されてもよいし、３次元座標（例えば、緯度経度および高度）で表現されてもよい。いずれにしても、ＷＰデータは、決定された個々のウェイポイントについての、順番情報と位置情報とのペアを含む。
特に、本実施形態におけるＷＰデータは、単なるウェイポイントが羅列されたデータではない。上述した手法により、複数の候補点からＷＰ決定部１３によって決定されたウェイポイントの点列により構成されるデータである。
【００４５】
ＷＰデータは、飛行体３０を飛行させるために作動するプロセッサにより参照される。例えば、ＷＰデータは飛行体３０に搭載されたプロセッサにより参照されてもよいし、飛行体３０に指示信号を送信するコンピュータ（例えばリモートコントローラのプロセッサ）により参照されてもよい。プロセッサは、ＷＰデータの順番情報で示される順番に従って位置情報を参照し、その位置情報で示されるウェイポイントに向かって飛行体３０を飛行させる。この結果、飛行体３０の作用範囲の軌跡が対象領域をなぞるように飛行体３０が飛行する。
【００４６】
［ウェイポイントの決定の具体例］
図６および図７は、ウェイポイントの決定に関する具体的な例を示す。この例では、サーバ１０は作用範囲の軌跡が対象領域（道路）２００の全体を包含するように複数のウェイポイントを決定する。以下では、ＷＰ候補設定部１１が対象領域２００の始点２０１から終点２０２にかけて１３個の候補点Ｃ１〜Ｃ１３を設定したことを前提として、ＷＰ決定部１３の処理を説明する。図６および図７における破線の星印は、ステップＳ１４４の処理で選択された候補点を表す。
【００４７】
ＷＰ決定部１３は始点２０１に対応する候補点Ｃ１を１番目のウェイポイントＷＰ１として決定する。そして、ＷＰ決定部１３はウェイポイントＷＰ１の隣にある候補点Ｃ２から順に、直線軌跡が対象領域２００の全体を包含するか否かを判定することで、次のウェイポイントＷＰ２を決定する。図６の例では、ＷＰ決定部１３は候補点Ｃ２，Ｃ３のそれぞれについて直線軌跡が対象領域２００の全体を包含すると判定し、さらに候補点Ｃ４についても、円形の作用範囲３０１に基づく直線軌跡３２１が対象領域２００の全体を包含すると判定する。次いで、ＷＰ決定部１３はさらに候補点Ｃ５について、作用範囲３０１に基づく直線軌跡３２２が対象領域２００の全体を包含するか否かを判定する。図６に示すように、この直線軌跡３２２は対象領域２００の全体を包含していない（検査区間において対象領域２００の一部が直線軌跡３２２から外れている）。したがって、ＷＰ決定部１３は候補点Ｃ４を次のウェイポイントＷＰ２として決定する。
【００４８】
次いで、ＷＰ決定部１３はウェイポイントＷＰ２の隣にある候補点Ｃ５から順に、直線軌跡が対象領域２００の全体を包含するか否かを判定することで次のウェイポイントＷＰ３を決定する。図７の例では、ＷＰ決定部１３は候補点Ｃ５〜Ｃ９のそれぞれについて直線軌跡が対象領域２００の全体を包含すると判定し、さらに候補点Ｃ１０についても、作用範囲３０１に基づく直線軌跡３２３が対象領域２００の全体を包含すると判定する。次いで、ＷＰ決定部１３はさらに候補点Ｃ１１について、作用範囲３０１に基づく直線軌跡３２４が対象領域２００の全体を包含するか否かを判定する。図７に示すように、この直線軌跡３２４は対象領域２００の全体を包含していない。したがって、ＷＰ決定部１３は候補点Ｃ１０を次のウェイポイントＷＰ３として決定する。
【００４９】
次いで、ＷＰ決定部１３はウェイポイントＷＰ３を基準点として次のウェイポイントＷＰ４を決定する。図７の例では、ＷＰ決定部１３は候補点Ｃ１３を次のウェイポイントＷＰ４として決定する。このウェイポイントＷＰ４は対象領域２００の終点２０２に対応するので、ＷＰ決定部１３はウェイポイントの探索を終了し、複数のウェイポイントＷＰ１〜ＷＰ４を示すＷＰデータを生成する。図７に示すように、ウェイポイントＷＰ１〜ＷＰ４を通る飛行体３０の作用範囲３０１の軌跡３０２は対象領域２００の全体を包含する。
【００５０】
［プログラム］
コンピュータをサーバ１０として機能させるためのプログラムは、該コンピュータをＷＰ候補設定部１１、作用範囲特定部１２、ＷＰ決定部１３、および通信部１４として機能させるためのプログラムコードを含む。このプログラムは、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリなどの有形の記録媒体に固定的に記録された上で提供されてもよい。あるいは、プログラムは、搬送波に重畳されたデータ信号として通信ネットワークを介して提供されてもよい。提供されたプログラムはストレージ１０３に記憶され、プロセッサ１０１がメモリ１０２と協働してそのプログラムを実行することで上記の各機能モジュールが実現する。
【００５１】
［効果］
以上説明したように、本実施形態の一側面に係るウェイポイントの決定方法は、プロセッサを備えるコンピュータシステムにより実行される、飛行体に対象領域を飛行させるためのウェイポイントの決定方法であって、対象領域を示す領域データと、飛行体の静止状態における作用範囲を示す範囲データとに基づいて、飛行体の飛行に伴って移動する作用範囲の軌跡が対象領域をなぞるように複数のウェイポイントを決定するステップを含む。
【００５２】
本実施形態の一側面に係るプログラムは、飛行体に対象領域を飛行させるためのウェイポイントの決定をコンピュータに実行させるためのプログラムであって、対象領域を示す領域データと、飛行体の静止状態における作用範囲を示す範囲データとに基づいて、飛行体の飛行に伴って移動する作用範囲の軌跡が対象領域をなぞるように複数のウェイポイントを決定するステップをコンピュータに実行させる。
【００５３】
本実施形態の一側面に係るデータ構造は、飛行体に対象領域を飛行させるためのデータ構造であって、複数のウェイポイントのそれぞれの順番を示す順番情報と、複数のウェイポイントのそれぞれの位置を示す位置情報とを含み、プロセッサに、順番情報で示される順番に従って位置情報を参照させることで、飛行体の静止状態における作用範囲の軌跡が対象領域をなぞるように飛行体を飛行させる。
【００５４】
このような側面においては、飛行体の作用範囲の軌跡が対象領域をなぞるように複数のウェイポイントが決定されるので、飛行の目的または条件を考慮した効率的な飛行経路を作成することができる。この飛行経路は、対象領域を示す領域データと、飛行体の作用範囲を示す範囲データとに基づいて生成されるので、ＧＰＳ情報を用いる必要がなく、その分、ウェイポイントの決定に要するコンピュータの処理負荷を下げることができる。
【００５５】
他の側面に係るウェイポイントの決定方法においては、複数のウェイポイントを決定するステップでは、決定済のウェイポイントである基準点と次のウェイポイントとを結ぶ仮想直線に沿った作用範囲の軌跡が仮想直線の範囲において対象領域をなぞるように、次のウェイポイントを決定し、決定された次のウェイポイントを基準点として設定して、更なる次のウェイポイントを決定してもよい。
【００５６】
この場合には、隣接するウェイポイント間を結ぶ仮想直線に沿った作用範囲の軌跡が対象領域をなぞるように複数のウェイポイントが次々に決定される。直線の連続により飛行経路が決定されるので、対象領域を飛ぶ飛行体の消費エネルギをより低減させることができる。
【００５７】
他の側面に係るウェイポイントの決定方法においては、複数のウェイポイントを決定するステップでは、作用範囲の軌跡が対象領域の全体を包含するか、または、作用範囲の軌跡の全体が対象領域と重複するように、複数のウェイポイントを決定してもよい。
【００５８】
作用範囲の軌跡と対象領域とがこのような関係を満たすように複数のウェイポイント決定することで、飛行の目的または条件を考慮した効率的な飛行経路を作成することができる。
【００５９】
［変形例］
以上、本発明をその実施形態に基づいて詳細に説明した。しかし、本発明は上記実施形態に限定されるものではない。本発明は、その要旨を逸脱しない範囲で様々な変形が可能である。
【００６０】
サーバ１０は、作用範囲の軌跡が対象領域をなぞるという条件（以下では「トレース条件」という）を満たすと共に、対象領域において該軌跡と地上との距離が閾値以上であるという条件（以下では「高度条件」という）も満たすように、複数のウェイポイントを決定してもよい。すなわち、飛行体３０の高度の維持をさらに考慮してウェイポイントが決定されてもよい。この場合、領域データは標高を含む必要があり、範囲データは飛行体３０の高度を含む必要がある。閾値は予め設定される。
【００６１】
ＷＰ決定部１３は、上記実施形態におけるステップＳ１４１〜Ｓ１４５の処理を実行した後に、検査範囲において直線軌跡が対象領域をなぞり（トレース条件）、かつ該検査範囲において直線軌跡と地上との距離が閾値以上である（高度条件）か否かを判定する。これら二つの条件の双方を満たす場合には、ＷＰ決定部１３は、上記実施形態と同様に、次の候補点について直線軌跡と対象領域との関係を検査する。すなわち、ＷＰ決定部１３は上記実施形態におけるステップＳ１４７、Ｓ１４４，Ｓ１４５の処理を実行する。これに対して、該二つ条件のうち少なくとも一方を満たさない場合には、ＷＰ決定部１３は二つの条件の双方を満たすと判定された最後の候補点を次のウェイポイントとして決定し、対象領域の終点に至らない限り、さらに次のウェイポイントを探索する。すなわち、ＷＰ決定部１３は上記実施形態におけるステップＳ１４８以降の処理（ステップＳ１４２以降の処理の繰り返しを含む）を実行する。
【００６２】
図８は、高度も考慮してウェイポイントを決定する処理の例を示す。上記実施形態と同じ対象領域（道路）２００の標高を模式的に実線２０３で表す。すなわち、対象領域２００の始点２０１から少しの間の区間は平坦だが、最初のカーブの中程から２番目カーブの中程まで下りが続き、その後は終点２０２まで平坦である。直線軌跡が対象領域をなぞるか否かというトレース条件のみを考慮する場合には、図６に示すように、候補点Ｃ４が２番目のウェイポイントＷＰ２として決定される。しかし、図８の例では、基準点であるウェイポイントＷＰ１と候補点Ｃ４とを結ぶ直線軌跡３３１が候補点Ｃ３の付近で地上に近くなっている。候補点Ｃ３の付近における直線軌跡３３１と地上との距離ｄ１が閾値未満であれば、候補点Ｃ４はトレース条件を満たすが高度条件を満たさないので、ＷＰ決定部１３は候補点Ｃ３を２番目のウェイポイントＷＰ２として決定する。図８の例では、ＷＰ決定部１３は最終的に、候補点Ｃ１，Ｃ３，Ｃ４，Ｃ１０，Ｃ１３をウェイポイントＷＰ１〜ＷＰ５として決定する。
【００６３】
ＷＰ決定部１３は、上記実施形態における処理（ステップＳ１４１〜Ｓ１４９）を実行した後に、決定した複数のウェイポイントの位置の少なくとも一つを、飛行経路が直線に近くなるように調整してもよい。ただし、ＷＰ決定部１３は、作用範囲の軌跡が対象領域をなぞるという条件を満たす限りにおいてウェイポイントの位置を調整する。飛行経路は隣接するウェイポイント間を結ぶ直線のつながりにより表され、隣接する２直線により角度が形成され得る。飛行経路が直線に近くなるようにウェイポイントの位置を調整することは、少なくとも一つの該角度が１８０°に近づくようにウェイポイントの位置を調整することを意味する。図９は、ウェイポイントの位置の調整の例を示す。この例では、作用範囲３０１の軌跡３０２を規定するウェイポイントＷＰ１〜ＷＰ４のうちウェイポイントＷＰ１およびＷＰ４の位置が調整され、その結果、対象領域２００の全体を包含する軌跡３０２Ａが規定される。このようなウェイポイントの調整は、トレース条件および高度条件の双方を満たすようにウェイポイントを決定した場合に実行されてもよい。いずれにしても、飛行経路が直線に近くなるようにウェイポイントを調整することで、より短い飛行経路が作成されるので、対象領域を飛ぶ飛行体３０の消費エネルギをより低減させることができる。
【００６４】
ＷＰ決定部１３は、作用範囲の軌跡が対象領域をなぞるという条件（トレース条件）を満たすと共に、該軌跡の全体が、予め定められた禁止区域から外れているという条件（以下では「回避条件」という）も満たすように、複数のウェイポイントを決定してもよい。すなわち、飛行体３０が禁止区域に影響を及ぼさないようにウェイポイントが決定されてもよい。禁止区域の情報は、ＷＰ候補設定部１１が地図データを参照することで得られ、領域データの一部を構成する。
【００６５】
ＷＰ決定部１３は、上記実施形態におけるステップＳ１４１〜Ｓ１４５の処理を実行した後に、検査範囲において直線軌跡が対象領域をなぞり（トレース条件）、かつ該検査範囲において直線軌跡の全体が禁止区域から外れている（回避条件）か否かを判定する。これら二つの条件の双方を満たす場合には、ＷＰ決定部１３は、上記実施形態と同様に、次の候補点について直線軌跡と対象領域との関係を検査する。すなわち、ＷＰ決定部１３は上記実施形態におけるステップＳ１４７、Ｓ１４４，Ｓ１４５の処理を実行する。これに対して、該二つ条件のうち少なくとも一方を満たさない場合には、ＷＰ決定部１３は二つの条件の双方を満たすと判定された最後の候補点を次のウェイポイントとして決定し、対象領域の終点に至らない限り、さらに次のウェイポイントを探索する。すなわち、ＷＰ決定部１３は上記実施形態におけるステップＳ１４８以降の処理（ステップＳ１４２以降の処理の繰り返しを含む）を実行する。
【００６６】
図１０は、禁止区域を避けるようにウェイポイントを決定する処理の例を示す。上記実施形態と同じ対象領域（道路）２００の２番目のカーブの付近に禁止区域２２０が存在するものとする。直線軌跡が対象領域をなぞるか否かというトレース条件のみを考慮する場合には、図６に示すように、候補点Ｃ１０が３番目のウェイポイントＷＰ３として決定される。しかし、図１０の例では、作用範囲３０１の軌跡３０２の一部が禁止区域２２０と重なるので回避条件を満たさず、したがって、ＷＰ決定部１３は候補点Ｃ１０よりもウェイポイントＷＰ２に近い候補点をウェイポイントＷＰ３として決定する必要がある。図１０の例では、ＷＰ決定部１３は候補点Ｃ８を３番目のウェイポイントＷＰ３として決定し、その後も禁止区域２２０を避けるようにさらなるウェイポイントを決定する。この例では、ＷＰ決定部１３は最終的に、候補点Ｃ１，Ｃ４，Ｃ８，Ｃ１０，Ｃ１１，Ｃ１３をウェイポイントＷＰ１〜ＷＰ６として決定する。作用範囲３０１の軌跡３０３は禁止区域２２０と重なることなく対象領域２００をなぞる。
【００６７】
ウェイポイントを決定するためのシステム構成は限定されない。例えば、サーバ１０が地図データベース２０を備えてもよい。あるいは、飛行体３０がサーバ１０の機能を備えてもよい。飛行体３０がウェイポイント決定の機能を有する場合には、飛行体３０は通信ネットワークを介して地図データベース２０にアクセスすることで地図データを読み出す。あるいは、飛行体３０がサーバ１０および地図データベース２０の双方の機能を備えてもよく、この場合には、飛行体３０はあたかもスタンドアロンマシンのように、他の情報処理装置に頼ることなくウェイポイントを決定することができる。
【００６８】
プロセッサにより実行されるウェイポイントの決定の手順は上記実施形態での例に限定されない。例えば、上述したステップ（処理）の一部が省略されてもよいし、別の順序で各ステップが実行されてもよい。また、上述したステップのうちの任意の２以上のステップが組み合わされてもよいし、ステップの一部が修正または削除されてもよい。あるいは、上記の各ステップに加えて他のステップが実行されてもよい。
【００６９】
以上の実施形態の全部または一部に記載された態様は、飛行体のための適切なウェイポイントの決定、処理速度の向上、処理精度の向上、使い勝手の向上、データを利用した機能の向上または適切な機能の提供その他の機能向上または適切な機能の提供、データおよび／またはプログラムの容量の削減、装置および／またはシステムの小型化等の適切なデータ、プログラム、記録媒体、装置および／またはシステムの提供、並びにデータ、プログラム、装置またはシステムの制作・製造コストの削減、制作・製造の容易化、制作・製造時間の短縮等のデータ、プログラム、記録媒体、装置および／またはシステムの制作・製造の適切化のいずれか一つの課題を解決する。
【符号の説明】
【００７０】
１…ウェイポイント（ＷＰ）決定システム、１０…サーバ、２０…地図データベース、３０…飛行体、１１…ＷＰ候補設定部、１２…作用範囲特定部、１３…ＷＰ決定部、１４…通信部、３０１，３１１…作用範囲、３０２，３０２Ａ，３０３，３１２…作用範囲の軌跡、２００，２１０…対象領域、Ｃ１〜Ｃ１３…候補点、ＷＰ１〜ＷＰ６…ウェイポイント、３２１〜３２４，３３１…直線軌跡。
【図１】
2019082873.tif 000003
【図２】
2019082873.tif 000004
【図３】
2019082873.tif 000005
【図４】
2019082873.tif 000006
【図５】
2019082873.tif 000007
【図６】
2019082873.tif 000008
【図７】
2019082873.tif 000009
【図８】
2019082873.tif 000010
【図９】
2019082873.tif 000011
【図１０】
2019082873.tif 000012