(57)【要約】【課題】飛行体を適切に制御すること。【解決手段】一実施形態に係るコンピュータシステムは、少なくとも一つのプロセッサを備える。少なくとも一つのプロセッサは、地上ネットワークと動的に変化する状況を示す動的情報とが関連付けられた地上ネットワークデータと、空ネットワークと地上ネットワークとが関連付けられた空ネットワークデータとに基づいて、空ネットワークにおける飛行体の飛行を制御する。【選択図】図２
2020113089.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも一つのプロセッサを備え、
前記少なくとも一つのプロセッサが、地上ネットワークと動的に変化する状況を示す動的情報とが関連付けられた地上ネットワークデータと、空ネットワークと前記地上ネットワークとが関連付けられた空ネットワークデータとに基づいて、前記空ネットワークにおける飛行体の飛行を制御する、
コンピュータシステム。
【請求項２】
前記地上ネットワークデータが、前記地上ネットワークを構成する地上地図要素と前記動的情報との関連付けを含み、
前記空ネットワークデータが、前記空ネットワークを構成する空地図要素と前記地上地図要素との関連付けを含む、
請求項１に記載のコンピュータシステム。
【請求項３】
前記空地図要素が、前記飛行体を空中で停止させるための複数の候補地点を含み、
前記飛行体の飛行の制御が、前記少なくとも一つの状況に基づいて、前記複数の候補地点のうちのどこに前記飛行体を配置させるかを決定するステップを含む、
請求項２に記載のコンピュータシステム。
【請求項４】
前記飛行体の飛行の制御が、
前記複数の候補地点のうちの少なくとも一部の候補地点について、前記飛行体の配置の優先度を前記少なくとも一つの状況に基づいて設定するステップと、
前記複数の候補地点のうち前記優先度が最も高い候補地点に前記飛行体を配置させると決定するステップと
を含む、
請求項３に記載のコンピュータシステム。
【請求項５】
地上ネットワークを構成する地上地図要素と、動的に変化する状況を示す動的情報とが関連付けられた地上ネットワークデータと、
空ネットワークを構成する空地図要素と前記地上地図要素とが関連付けられた空ネットワークデータと
を含み、
プロセッサに、
前記空ネットワークデータを参照させることで、少なくとも一つの前記空地図要素に対応する少なくとも一つの前記地上地図要素を特定させ、
前記少なくとも一つの地上地図要素に対応する前記地上ネットワークデータを参照させることで、該少なくとも一つの地上地図要素に対応する少なくとも一つの前記状況を特定させ、
前記少なくとも一つの状況に基づいて、前記少なくとも一つの空地図要素を含む前記空ネットワークにおける飛行体の飛行を制御させる、
データ構造。
【請求項６】
地上ネットワークを構成する地上地図要素と、動的に変化する状況を示す動的情報とが関連付けられた地上ネットワークデータと、
空ネットワークを構成する空地図要素と前記地上地図要素とが関連付けられた空ネットワークデータと
を含み、
プロセッサに、
前記地上ネットワークデータを参照させることで、少なくとも一つの前記地上地図要素に対応する少なくとも一つの前記状況を特定させ、
前記空ネットワークデータを参照させることで、前記少なくとも一つの地上地図要素に対応する少なくとも一つの前記空地図要素を特定させ、
前記少なくとも一つの状況に基づいて、前記少なくとも一つの空地図要素を含む前記空ネットワークにおける飛行体の飛行を制御させる、
データ構造。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示の一側面はコンピュータシステムおよび／またはデータ構造に関する。
【背景技術】
【０００２】
従来から、飛行体を制御するための技術が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１３４６６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本開示の一側面は、飛行体を適切に制御することを目的とする。
【課題を解決するための手段】
【０００５】
本開示の一側面に係るコンピュータシステムは、少なくとも一つのプロセッサを備え、少なくとも一つのプロセッサが、地上ネットワークと動的に変化する状況を示す動的情報とが関連付けられた地上ネットワークデータと、空ネットワークと地上ネットワークとが関連付けられた空ネットワークデータとに基づいて、空ネットワークにおける飛行体の飛行を制御する。
【図面の簡単な説明】
【０００６】
【図１】地上ネットワークおよび空ネットワークの一例を示す図である。
【図２】実施形態に係る飛行制御システムの機能構成の一例を示す図である。
【図３】実施形態に係るサーバのハードウェア構成の一例を示す図である。
【図４】地上ネットワークと空ネットワークとの関連付けの一例を示す図である。
【図５】地上ネットワークデータおよび空ネットワークデータの一例を示す図である。
【図６】地上ネットワークデータおよび空ネットワークデータの別の例を示す図である。
【図７】飛行制御システムの動作の一例を示すフローチャートである。
【図８】飛行体の制御の詳細を例示するフローチャートである。
【図９】飛行体の制御の詳細を例示するフローチャートである。
【発明を実施するための形態】
【０００７】
以下、添付図面を参照しながら本開示での実施形態を詳細に説明する。なお、図面の説明において同一または同等の要素には同一の符号を付し、重複する説明を省略する。
【０００８】
［システムの概要］
実施形態に係る飛行制御システム１は飛行体を制御するコンピュータシステムである。飛行体とは、空中を移動することが可能な人工物のことをいう。飛行体の種類は限定されず、例えば有人航空機でもよいし無人航空機（ドローン）でもよい。飛行体の制御方法は限定されない。例えば、飛行制御システム１は飛行体を直接に制御してもよいし、他の装置またはコンピュータを介して飛行体を間接的に制御してもよい。飛行体の間接的な制御の一例として、飛行体の制御の支援が挙げられる。「飛行体の制御」は直接的な制御と間接的な制御（例えば飛行体の制御の支援）との双方を含み得る。飛行制御システム１は飛行体の進行方向または速度を変更してもよいし、飛行体を離着陸させてもよいし、飛行体を空中で停止させてもよいし、決定された飛行経路を飛行体の移動中に変更してもよい。「飛行体の制御」は、飛行体の移動の制御と、飛行体に搭載された機器（例えばカメラ）の制御との少なくとも一方を含んでもよい。飛行体の移動の制御にあたっては、空中における飛行体の現在位置（三次元位置）を検出する機能を有していることが好ましい。飛行体の制御の目的も何ら限定されず、飛行制御システム１は輸送、調査、監視、誘導に関する案内（例えば避難誘導）、規制に関する案内などの任意の目的で利用され得る。
【０００９】
飛行制御システム１は地上ネットワークデータおよび空ネットワークデータに基づいて飛行体の飛行を制御する。地上ネットワークデータおよび空ネットワークデータはいずれも、コンピュータが読み取ることが可能な電子データであり、飛行体の制御に必要なデジタル情報を含む制御データである。
【００１０】
地上ネットワークデータは、地上を移動する物体（例えば人、自動車、列車、船舶など）が通行し得る経路を示す地上ネットワークを表すデータである。本開示における「地上」は地球の表面を意味し、したがって、地面だけでなく水面も包含する概念である。具体的には、地上ネットワークデータは、地上ネットワークと、動的に変化する状況を示す動的情報とが関連付けられたデータである。「動的に変化する状況」とは、時間の経過に伴って変化する状況のことをいう。状況の変化に要する時間の長さは限定されず、例えば１秒、１０秒、３０秒、１分、１０分、３０分、１時間、２時間、３時間、１２時間、１日などの任意の値であってよい。状況の種類は何ら限定されず、例えば自然現象でもよいし、人工物により引き起こされる状況でもよいし、人により定められた規則に基づく状況でもよい。例えば、動的に変換する状況は、気象（天気）、通行規制、道路の渋滞の度合い、障害物の位置、人の密集度などであり得る。動的に変化する状況は、現実に発生した状況であってもよいし、コンピュータシミュレーションなどによって得られた仮想の状況（例えば、予測される状況）であってもよい。
【００１１】
空ネットワークデータは、飛行体が通行し得る経路を示す空ネットワークを表すデータである。具体的には、空ネットワークデータは、空ネットワークと地上ネットワークとが関連付けられたデータである。
【００１２】
地上ネットワークデータおよび空ネットワークデータは任意の手法で用意されてよい。これら２種類のネットワークデータの少なくとも一方は地図データの一部であってもよい。言い換えると、地図データが地上ネットワークデータおよび空ネットワークデータの少なくとも一方として機能してもよい。あるいは、地上ネットワークデータおよび空ネットワークデータの少なくとも一方が地図データと独立して用意されてもよい。
【００１３】
図１は地上ネットワークおよび空ネットワークの一例を示す図である。この例では、地物は道路７０、施設７１、および施設７２であり、地上ネットワーク８０は道路７０に沿って設定され、空ネットワーク９０は地上ネットワーク８０に対応して設定されている。
【００１４】
空ネットワーク９０および地上ネットワーク８０はいずれも、ノード、リンクなどの地図要素により表現することができる。ノードとは、移動体の移動（空ネットワークであれば、飛行体の飛行）を制御するために設定される位置のことをいい、より具体的には、移動体の移動方法（例えば方向、速度など）を変えることができる位置のことをいう。リンクとは、移動体の移動経路（空ネットワークであれば、飛行体の飛行経路）を示すために設定される仮想的な線のことをいい、隣接するノード間を結ぶ。リンクの形状は直線でも曲線でもよく、あるいは、直線と曲線との組合せでもよい。本開示では、地上ネットワークを構成するノードおよびリンクをそれぞれ地上ノード、地上リンクといい、空ネットワークを構成するノードおよびリンクをそれぞれ空ノード、空リンクという。
【００１５】
図１では、地上ネットワーク８０は複数の地上ノード８１および複数の地上リンク８２を含んで構成され、空ネットワーク９０は複数の空ノード９１および複数の空リンク９２を含んで構成される。なお、図１では明確な図示を目的として空ネットワーク９０を道路７０および地上ネットワーク８０から離して表現しているが、空ネットワーク９０の少なくとも一部が地上ネットワーク８０または道路７０と重なるように空ネットワーク９０が定義されてもよい。図１では地上ネットワーク８０および空ネットワーク９０の形状が同じかまたはほぼ同じであるが、これら双方のネットワークの形状の少なくとも一部が互いに異なってもよい。
【００１６】
［システムの構成］
図２は、飛行制御システム１の機能構成の一例を示す図である。図２に示すように、本実施形態では、飛行制御システム１はサーバ１０、地上データベース２０、空データベース３０、および飛行体４０を備える。サーバ１０は、飛行体４０に指示データを送信することで該飛行体４０を制御するコンピュータである。指示データは、コンピュータが読み取ることが可能な電子データであり、飛行体４０を制御するために必要なデジタル情報を含む制御データである。地上データベース２０は地上ネットワークデータ２１を記憶する装置であり、空データベース３０は空ネットワークデータ３１を記憶する装置である。飛行体４０は、サーバ１０からの指示データに基づいて飛行することができる。
【００１７】
サーバ１０、地上データベース２０、空データベース３０、および飛行体４０は有線または無線の通信ネットワークを介してデータを送受信することができる。例えば、サーバ１０は通信ネットワークを介して、地上データベース２０または空データベース３０からデータを読み出したり、飛行体４０に指示データを送信したりすることができる。通信ネットワークの具体的な構成は限定されず、例えば、通信ネットワークはインターネットおよびイントラネットの少なくとも一方を含んで構成されてもよい。
【００１８】
飛行制御システム１の構成は図２の例に限定されない。例えば、地上データベース２０は飛行制御システム１とは別のコンピュータシステムにより管理されてもよいし、サーバ１０に備えられてもよい。地上データベース２０と同様に、空データベース３０の構成または管理も限定されない。地上データベース２０および空データベース３０は一つのデータベースに統合されてもよい。
【００１９】
サーバ１０は機能モジュールとして指示生成部１１および通信部１２を備える。指示生成部１１は飛行体４０を制御するための指示データを用意する機能モジュールである。通信部１２は、その指示データを出力する機能モジュールである。
【００２０】
図３は、サーバ１０のハードウェア構成の一例を示す。例えば、サーバ１０は制御回路１００を有する。一例では、制御回路１００は、一つまたは複数のプロセッサ１０１と、メモリ１０２と、ストレージ１０３と、通信ポート１０４と、入出力ポート１０５とを有する。プロセッサ１０１はオペレーティングシステムおよびアプリケーションプログラムを実行する。ストレージ１０３はハードディスク、不揮発性の半導体メモリ、または取り出し可能な媒体（例えば、磁気ディスク、光ディスクなど）の記憶媒体で構成され、オペレーティングシステムおよびアプリケーションプログラムを記憶する。メモリ１０２は、ストレージ１０３からロードされたプログラム、またはプロセッサ１０１による演算結果を一時的に記憶する。一例では、プロセッサ１０１は、メモリ１０２と協働してプログラムを実行することで、上記の各機能モジュールとして機能する。通信ポート１０４は、プロセッサ１０１からの指令に従って、通信ネットワークＮＷを介して他の装置との間でデータ通信を行う。入出力ポート１０５は、プロセッサ１０１からの指令に従って、キーボード、マウス、モニタなどの入出力装置（ユーザインタフェース）との間で電気信号の入出力を実行する。
【００２１】
サーバ１０は一つまたは複数のコンピュータにより構成され得る。複数のコンピュータが用いられる場合には、通信ネットワークを介してこれらのコンピュータが互いに接続されることで論理的に一つのサーバ１０が構成される。
【００２２】
サーバ１０として機能するコンピュータは限定されない。例えば、サーバ１０は業務用サーバなどの大型のコンピュータで構成されてもよいし、パーソナルコンピュータや携帯端末（例えばスマートフォン、タブレット端末など）などの小型のコンピュータで構成されてもよい。
【００２３】
［データ構造］
飛行経路を示す空ネットワークは空ネットワークデータ３１によって地上ネットワークと関連付けられ、その地上ネットワークは地上ネットワークデータ２１によって動的情報と関連付けられる。このようなデータ構造により、空ネットワークは地上ネットワークを介して動的情報とも関連付けられる。したがって、飛行制御システム１は、動的に変化する状況に基づいて飛行体を制御することができる。地上ネットワークを介することなく空ネットワークと動的情報とを直接に関連付けると、空ネットワークデータ３１の構造が複雑になるので、空ネットワークデータ３１の管理（例えば、設計、生成、更新）が煩雑になる。例えば、動的に変化する状況が地上の事象に関する場合（例えば、地上での通行規制、道路の渋滞の度合い、地上での障害物の位置、人の密集度など）には、該事象を空ネットワークと関連付ける処理が複雑になり得る。空ネットワークと動的情報とを地上ネットワークを介して関連付けることで、空ネットワークデータの管理（例えば、設計、設計、更新）が容易になり、動的に変化する状況に基づいて飛行体を適切に制御することができる。
【００２４】
図４は地上ネットワーク８０と空ネットワーク９０との関連付けの一例を示す図である。この例では、地上ネットワーク８０はＰＮＷ００１，ＰＮＷ００２，ＰＮＷ００３，ＰＮＷ００４，ＰＮＷ００５という５個の地上リンクを含む。一方、空ネットワーク９０はＳＮＷ００１，ＳＮＷ００２，ＳＮＷ００３，ＳＮＷ００４，ＳＮＷ００５という５個の空リンクを含む。図４は、地上ネットワーク８０を構成する二つの地上ノードＰＮ００１，ＰＮ００２と、空ネットワーク９０を構成する二つの空ノードＳＮ００１，ＳＮ００２とを特に明示する。図４はさらに、三つの候補地点ＳＹ００１，ＳＹ００２，ＳＹ００３も示す。本開示における候補地点とは、飛行体４０を空中で停止させること（いわゆるホバリング）が可能な地点のことをいう。候補地点も空ネットワーク９０の地図要素である。空ネットワークにおける候補地点の位置は限定されない。例えば、候補地点は空ノード上または空リンク上に設定されてもよいし、空ノードおよび空リンクの双方から離れて設定されてもよい。図４の例では、候補地点ＳＹ００１，ＳＹ００３は空リンク上に位置し、候補地点ＳＹ００２は空ノードおよび空リンクから離れている。
【００２５】
空ネットワークの地図要素（例えば、空ノード、空リンク、および候補地点）は、地上ネットワークの地図要素（例えば、地上ノードおよび地上リンク）と直接にまたは間接的に関連付けられる。関連付けの方法は何ら限定されず、任意の方針で実現されてよい。例えば、空ノード、空リンク、および候補地点のいずれも、地上ノードおよび地上リンクの少なくとも一方と関連付けられてもよい。空ネットワークの地図要素と地上ネットワークの地図要素との対応関係は、１対１でも、１対多でも、多対１でもよい。本開示では、空ネットワークの地図要素を「空地図要素」ともいい、地上ネットワークの地図要素を「地上地図要素」ともいう。
【００２６】
地上ネットワークと空ネットワークとは静的に関連付けられてもよいし、動的に関連付けられてもよい。「静的に関連付けられる」とは、地上ネットワークと空ネットワークとの関連付けが予め設定され、人手の介入がない限りはその関連付けが変更されないことをいう。一方、「動的に関連付けられる」とは、地上ネットワークと空ネットワークとの関連付けが任意の事象に応じて人手の介入無しに変更され得ることをいう。動的な関連付けは、関連付けを制御するプログラムが所定のコンピュータ上で実行されることで実現される。動的な関連付けは飛行制御システム１により実行されてもよいし、別のコンピュータシステムにより実行されてもよい。
【００２７】
空ネットワークと地上ネットワークとが関連付けられる限り、空ネットワークデータ３１のデータ構造は限定されない。言い換えると、或る一つの空地図要素と少なくとも一つの地上地図要素とが関連付けられるのであれば、空ネットワークデータ３１のデータ構造は任意に設計されてよい。同様に、地上ネットワークと動的情報とが関連付けられる限り、地上ネットワークデータ２１のデータ構造は限定されない。言い換えると、或る一つの地上地図要素と動的情報とが関連付けられるのであれば、地上ネットワークデータ２１のデータ構造は任意に設計されてよい。いずれにしても、空ネットワークと動的情報とが地上ネットワークを介して関連付けられるので、飛行制御システム１は、動的に変化する状況に基づいて飛行体４０を制御することができる。
【００２８】
図５は、図４に示す地上ネットワーク８０および空ネットワーク９０に対応する地上ネットワークデータ２１および空ネットワークデータ３１の一例を示す図である。この例では、地上ネットワークデータ２１は、地上リンクを示す地上リンクデータ２１１と、動的情報２１２とを含む。空ネットワークデータ３１は、空リンクを示す空リンクデータ３１１と、候補地点を示す候補地点データ３１２とを含む。
【００２９】
一つの地上リンクを示す地上リンクデータ２１１は、地上リンクを一意に特定する地上リンクＩＤと、該地上リンクの端点である地上ノード（開始地上ノードおよび終了地上ノード）を一意に特定する地上ノードＩＤとを含む。一つの地上リンクに対応する動的情報２１２は、地上リンクＩＤと、地上リンクに対応する施設を示す施設情報と、地上リンクの２方向（順方向および逆方向）のそれぞれにおける時間帯別の移動人数とを含む。地上リンクデータ２１１と動的情報２１２とは地上リンクＩＤによって互いに関連付けられる。
【００３０】
一つの空リンクを示す空リンクデータ３１１は、空リンクを一意に特定する空リンクＩＤと、該空リンクの端点である空ノード（開始空ノードおよび終了空ノード）を一意に特定する空ノードＩＤと、候補地点を一意に特定する少なくとも一つの候補地点ＩＤとを含む。一つの候補地点に対応する候補地点データ３１２は、候補地点ＩＤと、候補地点に対応する少なくとも一つの施設情報と、候補地点の地理的位置を示す座標と、候補地点での飛行体４０の制御に関する情報と、対応する地上リンクＩＤと、候補地点の有効範囲とを含む。図５の例では、施設情報は、施設名と、候補地点から施設までの距離とを示す。飛行体４０の制御に関する情報は、案内方法および方向を示す。空リンクデータ３１１と候補地点データ３１２とは候補地点ＩＤによって互いに関連付けられる。
【００３１】
地上ネットワークデータ２１と空ネットワークデータ３１とは、地上リンクデータ２１１の地上リンクＩＤと候補地点データ３１２の地上リンクＩＤとによって互いに関連付けられる。飛行制御システム１は、地上ネットワークデータ２１と、空ネットワークデータ３１と、これら二つのデータの関連付けとを含んで構成されるデータ構造を参照することで、動的に変化する状況に基づいて飛行体を制御することができる。
【００３２】
図６は、図４に示す地上ネットワーク８０および空ネットワーク９０に対応する地上ネットワークデータ２１および空ネットワークデータ３１の別の例を示す図である。この例では、地上ネットワークデータ２１は、地上リンクを示す地上リンクデータ２２１と、施設およびネットワーク方向に関する第１動的情報２２２と、通行規制に関する第２動的情報２２３とを含む。空ネットワークデータ３１は、空リンクを示す空リンクデータ３２１と、空ノードを示す空ノードデータ３２２と、候補地点を示す候補地点データ３２３とを含む。
【００３３】
一つの地上リンクを示す地上リンクデータ２２１は、地上リンクＩＤと、開始地上ノードおよび終了地上ノードのそれぞれの地上ノードＩＤと、対応する空リンクＩＤとを含む。一つの地上リンクに対応する第１動的情報２２２は、地上リンクＩＤと、対応する施設情報と、人の流れ（多くの人が進む方向）を示すネットワーク方向とを含む。第２動的情報２２３は、通行規制が敷かれている地上リンクの地上リンクＩＤを示す。地上リンクデータ２２１、第１動的情報２２２，および第２動的情報２２３は地上リンクＩＤによって互いに関連付けられる。
【００３４】
一つの空リンクを示す空リンクデータ３２１は、空リンクＩＤと、開始空ノードおよび終了空ノードのそれぞれの空ノードＩＤと、対応する地上リンクＩＤとを含む。一つの空ノードを示す空ノードデータ３２２は、空ノードを一意に特定する空ノードＩＤと、空ノードの地理的位置を示す座標と、空ノードに対応する候補地点を示す少なくとも一つの候補地点ＩＤとを含む。一つの候補地点に対応する候補地点データ３２３は、候補地点ＩＤと、候補地点に対応する施設情報と、候補地点の座標と、候補地点での飛行体４０の制御に関する情報（図６の例では案内方法および方向）と、対応する地上リンクＩＤと、飛行体４０の制御のために用いられる優先度とを含む。空リンクデータ３２１と空ノードデータ３２２とは空ノードＩＤによって互いに関連付けられ、空ノードデータ３２２と候補地点データ３２３とは候補地点ＩＤによって互いに関連付けられる。
【００３５】
地上ネットワークデータ２１と空ネットワークデータ３１とは、地上リンクデータ２２１の地上リンクＩＤと空リンクデータ３２１の地上リンクＩＤとによって互いに関連付けられる。あるいは、地上ネットワークデータ２１と空ネットワークデータ３１とは、地上リンクデータ２２１の空リンクＩＤと空リンクデータ３２１の空リンクＩＤとによって互いに関連付けられる。図６の例についても、飛行制御システム１は、地上ネットワークデータ２１と、空ネットワークデータ３１と、これら二つのデータの関連付けとを含んで構成されるデータ構造を参照することで、動的に変化する状況に基づいて飛行体を制御することができる。
【００３６】
図５および図６に示すデータ構造は一例である。空ネットワークと動的情報とが地上ネットワークを介して関連付けられるのであれば、地上ネットワークデータ２１および空ネットワークデータ３１のデータ構造は任意の方針で設計されてよい。例えば、候補地点データに関して、図５または図６に示すデータ項目の少なくとも一つが省略されてもよいし、他のデータ項目が付加されてもよい。候補地点は必須の構成要素ではなく、したがって、候補地点データが省略されてもよい。動的情報のデータ構造およびデータ項目も何ら限定されない。いずれにしても、空ネットワークと動的情報とが地上ネットワークを介して関連付けられるので、地上ネットワークデータ２１および空ネットワークデータ３１の用意と、動的情報に基づく飛行体４０の制御とを効率良く実行することが可能になる。
【００３７】
動的情報は、任意のコンピュータシステムによって任意のタイミングで更新されてよい。例えば、動的情報は飛行制御システム１および他のコンピュータシステムの少なくとも一方によって更新されてよい。候補地点データに関し、飛行体４０の制御に関する情報（案内方向、方向、有効範囲、および優先度）は、飛行制御システム１または他のコンピュータシステムにより任意のアルゴリズムで自動的に設定されてもよいし、ユーザ入力により設定されてもよい。
【００３８】
［システムでの処理手順］
図７〜図９を参照しながら、飛行制御システム１の動作を説明するとともに本実施形態に係る飛行体の制御方法を説明する。図７は、飛行制御システム１の動作の一例を示すフローチャートである。図８および図９はいずれも飛行体４０の制御の詳細を例示するフローチャートである。図８は図５に示すデータ構造に対応し、図９は図６に示すデータ構造に対応する。
【００３９】
まず、図７を参照しながら飛行制御システム１の動作の全体像を説明する。ステップＳ１では、指示生成部１１が、飛行体４０を制御する対象となる地理的範囲に対応する地上ネットワークデータ２１を取得する。指示生成部１１はユーザまたは他のコンピュータシステムから入力された指示データに基づいてその地理的範囲を認識する。そして、指示生成部１１は地上データベース２０にアクセスして、その地理的範囲に対応する地上ネットワークデータ２１を読み出す。取得された地上ネットワークデータ２１は、少なくとも一つの地上地図要素と、その地上地図要素に対応する動的情報とを含む。
【００４０】
ステップＳ２では、指示生成部１１が、その地上ネットワークデータ２１に対応する空ネットワークデータ３１を空データベース３０から取得する。指示生成部１１は空データベース３０にアクセスして、取得された地上ネットワークデータ２１で示される少なくとも一つの地上地図要素または空地図要素を含む空ネットワークデータ３１を読み出す。取得された空ネットワークデータ３１は少なくとも一つの空地図要素を含む。
【００４１】
ステップＳ３では、指示生成部１１および通信部１２が連携して、取得された地上ネットワークデータ２１および空ネットワークデータ３１に基づいて少なくとも一つの飛行体４０を制御する。指示生成部１１および通信部１２は、取得された地上ネットワークデータ２１で示される地上地図要素の一部または全部と、取得された空ネットワークデータ３１で示される空地図要素の一部または全部とを参照して、少なくとも一つの飛行体４０を制御する。
【００４２】
例えば、指示生成部１１は、空ネットワーク内の少なくとも一つの空地図要素を特定すると、空ネットワークデータ３１を参照することで、該少なくとも一つの空地図要素に対応する少なくとも一つの地上地図要素を特定する。続いて、指示生成部１１は、その少なくとも一つの地上地図要素に対応する地上ネットワークデータ２１を参照することで、該少なくとも一つの地上地図要素に対応する少なくとも一つの状況（動的に変化する状況）を特定する。そして、指示生成部１１は、その少なくとも一つの状況に基づいて、少なくとも一つの空地図要素を含む空ネットワークにおける飛行体４０の飛行を制御する。
【００４３】
別の例では、指示生成部１１は、地上ネットワーク内の少なくとも一つの地上地図要素を特定すると、地上ネットワークデータ２１を参照することで、該少なくとも一つの地上地図要素に対応する少なくとも一つの状況（動的に変化する状況）を特定する。続いて、指示生成部１１は、空ネットワークデータ３１を参照することで、該少なくとも一つの地上地図要素に対応する少なくとも一つの空地図要素を特定する。そして、指示生成部１１は、その少なくとも一つの状況に基づいて、少なくとも一つの空地図要素を含む空ネットワークにおける飛行体４０の飛行を制御する。
【００４４】
このように、飛行制御システム１は地上ネットワークデータ２１を参照した後に空ネットワークデータ３１を参照してもよいし、空ネットワークデータ３１を参照した後に地上ネットワークデータ２１を参照してもよい。すなわち、飛行制御システム１がデータ構造を参照する順番は限定されない。
【００４５】
図８および図９を参照しながら、ステップＳ３の例をより詳細に説明する。まず、図８を参照しながら、図５のデータ構造に基づくステップＳ３の処理の例を第１の例として説明する。
【００４６】
ステップＳ３０１では、指示生成部１１が、取得された空ネットワークデータ３１で示される１以上の候補地点のそれぞれの優先度を設定する。本開示における優先度とは、飛行体４０を配置するために用いられる値である。第１の例では、優先度が高い候補地点に飛行体４０が優先して配置される。優先度の具体的な値および設定方法は限定されず、任意の方針で個々の候補地点に優先度が設定されてよい。例えば、指示生成部１１は、候補地点と関連付けられた地上リンクでの特定の時間帯における人数に基づいて、該候補地点の優先度を設定してもよい。あるいは、指示生成部１１は、候補地点と、該候補地点に関連付けられた地上リンクに対応する施設との間の距離に基づいて、該候補地点の優先度を設定してもよい。優先度の設定手順としては、処理すべき候補地点のすべてについて、順次処理を行う。たとえば、空ネットワークデータ３１を参照することで、候補地点ＳＹ００１については、地上リンクＰＮＷ００２が対応することが分かり、地上ネットワークデータ２１を参照することで、動的情報２が特定される。動的情報２が特定されると、特定の時間帯における人数が判明するので、その人数に基づき優先度が設定される。次に、候補地点ＳＹ００２について、空ネットワークデータ３１を参照することで、対応する地上リンクＩＤが分かり、地上ネットワークデータ２１を参照することで、動的情報が特定される。この処理を、順次、候補地点すべてについて処理を実行するのである。このように、取得された地上ネットワークデータ２１および空ネットワークデータ３１は互いに関連付けられるので、指示生成部１１は、動的に変化する状況に基づいて各候補地点の優先度を設定することができる。
【００４７】
ステップＳ３０２では、指示生成部１１が、１以上の飛行体４０から、処理の対象とする一つの飛行体４０を選択する。ステップＳ３０３では、指示生成部１１が、優先度が最も高い候補地点を、選択された飛行体４０の配置先として設定する。すなわち、指示生成部１１は、複数の候補地点のうち優先度が最も高い候補地点に飛行体４０を配置させると決定する。
【００４８】
ステップＳ３０４では、指示生成部１１が、処理対象の飛行体４０が配置される候補地点の周辺にある他の候補地点を周辺地点として特定する。指示生成部１１は、飛行体４０が配置される候補地点の有効範囲内に位置する他の候補地点を周辺地点として特定する。例えば、図５に示す候補地点ＳＹ００１が配置先として設定された場合には、指示生成部１１は、候補地点ＳＹ００１から６０ｍ以内に位置する他の候補地点を周辺地点として特定する。例えば、候補地点ＳＹ００２およびＳＹ００３の少なくとも一つが周辺地点として特定されるかもしれない。
【００４９】
ステップＳ３０５では、指示生成部１１が、特定された各周辺地点の優先度を現在値よりも低く設定する。優先度の低下幅は限定されず、任意の方針で設計されてよい。
【００５０】
ステップＳ３０６で示されるように、指示生成部１１は、処理すべき飛行体４０のすべてについて配置先を設定するまでステップＳ３０３〜Ｓ３０５の処理を繰り返す。処理すべき飛行体４０がまだ残っている場合には、処理はステップＳ３０７に進み、指示生成部１１は次に処理する一つの飛行体４０を処理対象として選択する。そして、処理はステップＳ３０３に戻り、指示生成部１１は、残っている候補地点、すなわち、まだ飛行体４０が配置されていない候補地点のうち、優先度が最も高いものを、選択された飛行体４０の配置先として設定する。続いて、指示生成部１１はステップＳ３０４，Ｓ３０５の処理を実行する。
【００５１】
すべての飛行体４０について処理すると処理はステップＳ３０８に進み、指示生成部１１は、各飛行体４０を制御するための指示データを用意する。指示生成部１１は、メモリに予め記憶されている指示データを読み出すことで指示データを用意してもよいし、指示データを動的に生成してもよい。指示データの内容およびデータ構造は何ら限定されない。例えば、指示データは、飛行経路を算出するための情報を含んでもよいし、飛行経路そのものを示す情報を含んでもよい。一例として、指示生成部１１は飛行体４０を配置先まで飛行させるための指示データを用意してもよい。
【００５２】
ステップＳ３０９では、通信部１２が各飛行体４０に、対応する指示データを送信する。指示データの宛先は限定されない。例えば、通信部１２は指示データを、飛行体４０に直接に送信してもよいし、飛行体４０以外の任意のコンピュータを経由して飛行体４０に送信してもよい。指示データは飛行経路を算出するために用いられる。例えば、飛行体４０の制御回路が指示データを受信および処理することで飛行経路を算出し、その経路に沿って飛行するように飛行体４０の動力および舵を制御してもよい。あるいは、飛行体４０以外のコンピュータ（例えばリモートコントローラ）が指示データに基づいて飛行経路を算出して該経路を示す経路データを飛行体４０に送信し、飛行体４０の制御回路がその経路データに基づいて飛行体４０の動力および舵を制御してもよい。いずれにしても、飛行体４０は、サーバ１０から提供される指示データに基づいて飛行することができる。
【００５３】
次に、図９を参照しながら、図６のデータ構造に基づくステップＳ３の処理の例を第２の例として説明する。
【００５４】
ステップＳ３１１では、指示生成部１１が、取得された空ネットワークデータ３１で示される１以上の空ノードから一つの空ノードを選択する。
【００５５】
ステップＳ３１２では、指示生成部１１が、選択された空ノードに対応する候補地点のうち所定の条件を満たす候補地点の優先度を現在値よりも高く設定する。この例でも、優先度の具体的な値および設定方法は限定されず、任意の方針で個々の候補地点に優先度が設定されてよい。例えば、指示生成部１１は、選択された空ノードに対応する候補地点と関連付けられた地上リンクに通行規制が敷かれている場合に、その候補地点の優先度を高くしてもよい。たとえば、空ネットワークデータ３１を参照することで、空ノードＳＮ００１については候補地点ＳＹ００１が対応し、候補地点ＳＹ００１には地上リンクＰＮＷ００２が対応することが分かり、地上ネットワークデータ２１を参照することで地上リンクＰＮＷ００２には、動的情報として、通行規制が敷かれていることが分かる。これにより、候補地点ＳＹ００１の優先度が高く設定される。次に、空ノードＳＮ００２について、空ネットワークデータ３１を参照することで、対応する候補地点ＩＤが分かり、その候補地点ＩＤから対応する地上リンクＩＤが分かり、地上ネットワークデータ２１を参照することで、通行規制が敷かれているか否かが分かる。この処理を、順次、空ノードすべてについて処理を実行するのである。あるいは、指示生成部１１は、選択された空ノードに対応する複数の地上リンクのネットワーク方向に基づいて人の流れを特定することで、人がどの方向に流れ出ているかを特定し、その流出方向を示す地上リンクに対応する候補地点の優先度を高くしてもよい。このように、取得された地上ネットワークデータ２１および空ネットワークデータ３１は互いに関連付けられるので、指示生成部１１は、動的に変化する状況に基づいて各候補地点の優先度を設定することができる。
【００５６】
ステップＳ３１３で示されるように、指示生成部１１は、処理すべき空ノードのすべてについてステップＳ３１２の処理を実行する。処理すべき空ノードがまだ残っている場合には、処理はステップＳ３１４に進み、指示生成部１１は次に処理する一つの空ノードを処理対象として選択する。そして、処理はステップＳ３１２に戻り、指示生成部１１はその選択された空ノードに関して、所定の条件を満たす候補地点の優先度を現在値よりも高く設定する。
【００５７】
すべての空ノードについて処理すると処理はステップＳ３１５に進み、指示生成部１１は優先度が最も高い候補地点を特定する。ステップＳ３１６では、指示生成部１１が、特定された候補地点に飛行体４０を配置させるための指示データを用意する。すなわち、指示生成部１１は、複数の候補地点のうち優先度が最も高い候補地点に飛行体４０を配置させると決定する。ステップＳ３０８と同様に、指示データを用意する方法は限定されず、指示データの内容およびデータ構造も限定されない。ステップＳ３１７では、通信部１２が飛行体４０にその指示データを送信する。ステップＳ３０９と同様に、指示データの宛先も、指示データに基づく飛行体４０の制御方法も限定されない。
【００５８】
地上ネットワークデータ２１および空ネットワークデータ３１のデータ構造が限定されないことに対応して、ステップＳ３の具体的な処理手順は図８および図９の例に限定されない。例えば、優先度に関する処理は必須ではなく、したがって、飛行制御システム１は優先度を用いることなく、飛行体４０のために指示データを用意および送信してもよい。例えば、飛行制御システム１は優先度を用いることなく、複数の候補地点のうちのどこに飛行体４０を配置させるかを決定してもよい。
【００５９】
［プログラム］
コンピュータをサーバ１０として機能させるためのプログラムは、該コンピュータを指示生成部１１および通信部１２として機能させるためのプログラムコードを含む。このプログラムは、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリなどの有形の記録媒体に固定的に記録された上で提供されてもよい。あるいは、プログラムは、搬送波に重畳されたデータ信号として通信ネットワークを介して提供されてもよい。提供されたプログラムはストレージ１０３に記憶され、プロセッサ１０１がメモリ１０２と協働してそのプログラムを実行することで上記の各機能モジュールが実現する。
【００６０】
［効果］
以上説明したように、本開示の一側面に係るコンピュータシステムは、少なくとも一つのプロセッサを備え、少なくとも一つのプロセッサが、地上ネットワークと動的に変化する状況を示す動的情報とが関連付けられた地上ネットワークデータと、空ネットワークと地上ネットワークとが関連付けられた空ネットワークデータとに基づいて、空ネットワークにおける飛行体の飛行を制御する。
【００６１】
このような側面においては、空ネットワークが地上ネットワークを介して動的情報と関連付けられる。空ネットワークと動的情報とが直接にではなく間接的に関連付けられるので、空ネットワークデータの管理が簡単になり、動的に変化する状況に基づいて飛行体を適切に制御することができる。
【００６２】
他の側面に係るコンピュータシステムでは、地上ネットワークデータが、地上ネットワークを構成する地上地図要素と動的情報との関連付けを含み、空ネットワークデータが、空ネットワークを構成する空地図要素と地上地図要素との関連付けを含んでもよい。空ネットワークを構成する空地図要素と動的情報とが地上地図要素を介して関連付けられるので、動的に変化する状況に基づいて飛行体をより綿密に制御することができる。
【００６３】
他の側面に係るコンピュータシステムでは、空地図要素が、飛行体を空中で停止させるための複数の候補地点を含み、飛行体の飛行の制御が、少なくとも一つの状況に基づいて、複数の候補地点のうちのどこに飛行体を配置させるかを決定するステップを含んでもよい。この場合には、動的に変化する状況に基づいて飛行体を適切に配置することができる。
【００６４】
他の側面に係るコンピュータシステムでは、飛行体の飛行の制御が、複数の候補地点のうちの少なくとも一部の候補地点について、飛行体の配置の優先度を少なくとも一つの状況に基づいて設定するステップと、複数の候補地点のうち優先度が最も高い候補地点に飛行体を配置させると決定するステップとを含んでもよい。このように候補地点の優先度を設定および利用することで、動的に変化する状況に基づいて飛行体を適切に配置することができる。
【００６５】
本開示の一側面に係るデータ構造は、地上ネットワークを構成する地上地図要素と、動的に変化する状況を示す動的情報とが関連付けられた地上ネットワークデータと、空ネットワークを構成する空地図要素と地上地図要素とが関連付けられた空ネットワークデータとを含み、プロセッサに、空ネットワークデータを参照させることで、少なくとも一つの空地図要素に対応する少なくとも一つの地上地図要素を特定させ、少なくとも一つの地上地図要素に対応する地上ネットワークデータを参照させることで、該少なくとも一つの地上地図要素に対応する少なくとも一つの状況を特定させ、少なくとも一つの状況に基づいて、少なくとも一つの空地図要素を含む空ネットワークにおける飛行体の飛行を制御させる。
【００６６】
本開示の一側面に係るデータ構造は、地上ネットワークを構成する地上地図要素と、動的に変化する状況を示す動的情報とが関連付けられた地上ネットワークデータと、空ネットワークを構成する空地図要素と地上地図要素とが関連付けられた空ネットワークデータとを含み、プロセッサに、地上ネットワークデータを参照させることで、少なくとも一つの地上地図要素に対応する少なくとも一つの状況を特定させ、空ネットワークデータを参照させることで、少なくとも一つの地上地図要素に対応する少なくとも一つの空地図要素を特定させ、少なくとも一つの状況に基づいて、少なくとも一つの空地図要素を含む空ネットワークにおける飛行体の飛行を制御させる。
【００６７】
このような側面においては、空ネットワークが地上ネットワークを介して動的情報と関連付けられる。空ネットワークと動的情報とが直接にではなく間接的に関連付けられるので、空ネットワークデータの管理が簡単になり、動的に変化する状況に基づいて飛行体を適切に制御することができる。また、上記の手順でプロセッサを動作させることで、飛行体の飛行を適切に制御することができる。
【００６８】
［変形例］
以上、本開示をその実施形態に基づいて詳細に説明した。しかし、本開示は上記実施形態に限定されるものではない。本開示は、その要旨を逸脱しない範囲で様々な変形が可能である。
【００６９】
飛行体を制御するためのシステム構成は限定されない。例えば、サーバ１０が地上データベース２０および空データベース３０のうちの少なくとも一つを備えてもよい。あるいは、飛行体４０がサーバ１０の機能を備えてもよく、この場合には、飛行体４０は通信ネットワークを介して地上データベース２０および空データベース３０にアクセスすることで地上ネットワークデータ２１および空ネットワークデータ３１を読み出す。あるいは、飛行体４０がサーバ１０の機能と、地上データベース２０および空データベース３０のうちの少なくとも一つの機能とを備えてもよい。飛行体４０がサーバ１０、地上データベース２０、および空データベース３０の機能を備える場合には、飛行体４０はあたかもスタンドアロンマシンのように、他の情報処理装置に頼ることなく飛行することができる。
【００７０】
少なくとも一つのプロセッサにより実行される飛行体の制御の手順は上記実施形態での例に限定されない。例えば、上述したステップ（処理）の一部が省略されてもよいし、別の順序で各ステップが実行されてもよい。たとえば、図９のステップＳ３１２において、空ネットワークデータ３１を地上ネットワークデータ２１よりも先に参照することとしたが、逆であってもよい。具体的には、地上ネットワークデータ２１を参照することで、地上リンクＰＮＷ００２に通行規制が敷かれていることが分かり、空ネットワークデータ３１を参照することで、地上リンクＰＮＷ００２には、候補地点ＳＹ００１が対応することが分かる。これにより、候補地点ＳＹ００１の優先度が高く設定される。この処理を、順次、通行規制が敷かれた地上リンクすべてについて処理を実行するのである。また、上述したステップのうちの任意の２以上のステップが組み合わされてもよいし、ステップの一部が修正または削除されてもよい。あるいは、上記の各ステップに加えて他のステップが実行されてもよい。
【００７１】
以上の実施形態の全部または一部に記載された態様は、飛行体の適切な制御、処理速度の向上、処理精度の向上、使い勝手の向上、データを利用した機能の向上または適切な機能の提供その他の機能向上または適切な機能の提供、データおよび／またはプログラムの容量の削減、装置および／またはシステムの小型化等の適切なデータ、プログラム、記録媒体、装置および／またはシステムの提供、並びにデータ、プログラム、装置またはシステムの制作・製造コストの削減、制作・製造の容易化、制作・製造時間の短縮等のデータ、プログラム、記録媒体、装置および／またはシステムの制作・製造の適切化のいずれか一つの課題を解決する。
【符号の説明】
【００７２】
１…飛行制御システム、１０…サーバ、１１…指示生成部、１２…通信部、２０…地上データベース、２１…地上ネットワークデータ、３０…空データベース、３１…空ネットワークデータ、４０…飛行体、７０…道路、８０…地上ネットワーク、８１…地上ノード、８２…地上リンク、９０…空ネットワーク、９１…空ノード、９２…空リンク、２１１…地上リンクデータ、２１２…動的情報、２２１…地上リンクデータ、２２２…第１動的情報、２２３…第２動的情報、３１１…空リンクデータ、３１２…候補地点データ、３２１…空リンクデータ、３２２…空ノードデータ、３２３…候補地点データ。
【図１】
2020113089.tif 000003
【図２】
2020113089.tif 000004
【図３】
2020113089.tif 000005
【図４】
2020113089.tif 000006
【図５】
2020113089.tif 000007
【図６】
2020113089.tif 000008
【図７】
2020113089.tif 000009
【図８】
2020113089.tif 000010
【図９】
2020113089.tif 000011