(57)【特許請求の範囲】
【請求項１】
自律ミッションのためのミッション計画を生成および監視するコンピュータ化方法であって、前記ミッション計画は、１つ以上の自律エージェントによって実行され、前記方法は、
複数の一般ミッションテンプレートを記憶するコンピュータ記憶媒体から一般ミッションテンプレートを入手することであって、前記一般ミッションテンプレートのそれぞれは、複数のミッションオブジェクトから構築され、かつ前記複数のミッションオブジェクト間の１つ以上の論理結合を定義し、各ミッションオブジェクトは、それぞれのタイプのミッション要素を論理的に表すように構成されることと、
前記一般ミッションテンプレート中の２つ以上のミッションオブジェクトをそれぞれの現実世界ミッション要素と関連付け、それによって複数のミッション要素を有する特定のミッション計画を生成することと、
プロセッサを使用して、前記一般ミッションテンプレートおよび前記特定のミッション計画に基づいて、前記１つ以上の自律エージェントのそれぞれについてのエージェント特有ミッション計画を生成することであって、前記エージェント特有ミッション計画は、特定のエージェントに割り当てられたタスクを、同じミッション計画下で動作する他のエージェントから個々にリアルタイムで制御および更新することを可能にするそれぞれの指定されたエージェントに割り当てられたタスクを備えることと、
各エージェント特有ミッション計画を、前記それぞれの指定されたエージェントの技術的な要件に適合するフォーマットに変換することと、
前記特定のミッション計画の実行を監視することであって、前記監視することは、
前記特定のミッション計画の進行を継続的に監視することと、
前記ミッションオブジェクトの内の第１のミッションオブジェクトと関連付けられた、前記ミッション要素の内の第１のミッション要素への更新が必要とされることをリアルタイムで特定することと、
前記第１のミッション要素を相応して更新することと、
前記一般ミッションテンプレートに基づいて、前記第１のミッションオブジェクトと、第２のミッション要素と関連付けられた第２のミッションオブジェクトとの間に前記論理結合の内のある論理結合があるかどうかを判断し、前記ある論理結合がありかつ前記第２のミッション要素への更新が必要とされる場合、前記特定のミッション計画の進行を可能にするように前記第２のミッション要素を更新することと、
を含むことと、
を含む、方法。
【請求項２】
前記入手することに先立ち、前記方法が、
複数のミッションオブジェクトタイプを提供することであって、前記ミッションオブジェクトタイプのそれぞれは、それぞれのタイプの現実世界ミッション要素を論理的に表すように構成される変数であることと、
前記複数のミッションオブジェクトタイプからミッションオブジェクトを選択することと、
複数の選択されたミッションオブジェクト間の結合を確立することと、
前記一般ミッションテンプレートを生成することと、
をさらに含む、請求項１に記載の方法。
【請求項３】
前記入手することの後に、前記ミッション計画の実行をシミュレーションし、それによって前記ミッション計画にエラーまたは異なるミッションオブジェクト間の望ましくない論理結合がないことを確証すること
をさらに含む、請求項１乃至２のいずれか１項に記載の方法。
【請求項４】
前記生成することの後に、各エージェント特有ミッション計画をそれぞれの指定されたエージェントに送信すること
をさらに含む、請求項１乃至３のいずれか１項に記載の方法。
【請求項５】
前記関連付けの後に、前記一般ミッションテンプレートのグラフィック表現をディスプレイ上に表示することと、
前記グラフィック表現を活用して、前記ミッション計画に関して前記現実世界ミッション要素のリアルタイム進行を示すことと、
をさらに含む、請求項１乃至４のいずれか１項に記載の方法。
【請求項６】
前記関連付けの後に、前記一般ミッションテンプレート中の第１のミッションオブジェクトに関係する情報を、前記ミッションの実行中に更新することと、
前記更新に応えて、前記第１のミッションオブジェクトに新しいミッション要素を関連付け、それによって前記ミッションが進行している間に前記ミッション計画を変更することを可能にすることと、
をさらに含む、請求項１乃至５のいずれか１項に記載の方法。
【請求項７】
前記新しいミッション要素がエージェントであり、前記情報が前記エージェントのエージェント特有ミッション計画を含む、請求項６に記載の方法。
【請求項８】
前記一般ミッションテンプレート中の第２のミッションオブジェクトが前記第１のミッションオブジェクトに論理的に結合されている場合に、前記第２のミッションオブジェクトと関連付けられたミッション要素に関する情報を更新すること
をさらに含む、請求項６に記載の方法。
【請求項９】
自律ミッションのためのミッション計画を生成および監視する方法であって、前記ミッション計画は、１つ以上の自律エージェントによって実行され、前記方法は、
複数のミッションオブジェクトタイプを生成することであって、前記ミッションオブジェクトタイプのそれぞれは、それぞれのタイプの現実世界ミッション要素を論理的に表すように構成される変数であることと、
前記複数のミッションオブジェクトタイプから複数の選択されたミッションオブジェクトを生成することと、
前記複数の選択されたミッションオブジェクト間の１つ以上の論理結合を確立することと、
一般ミッションテンプレートを生成することと、
プロセッサを使用して、前記一般ミッションテンプレートおよび複数のミッション要素を有する特定のミッション計画に基づいて、前記１つ以上の自律エージェントのそれぞれについてのエージェント特有ミッション計画を生成することであって、前記エージェント特有ミッション計画は、特定のエージェントに割り当てられたタスクを、同じミッション計画下で動作する他のエージェントから個々にリアルタイムで制御および更新することを可能にするそれぞれの指定されたエージェントに割り当てられたタスクを備えることと、
各エージェント特有ミッション計画を、前記それぞれの指定されたエージェントの技術的な要件に適合するフォーマットに変換することと、
前記特定のミッション計画の実行を監視することであって、前記監視することは、
前記特定のミッション計画の進行を継続的に監視することと、
前記ミッションオブジェクトの内の第１のミッションオブジェクトと関連付けられた、前記ミッション要素の内の第１のミッション要素への更新が必要とされることをリアルタイムで特定することと、
前記第１のミッション要素を相応して更新することと、
前記一般ミッションテンプレートに基づいて、前記第１のミッションオブジェクトと、第２のミッション要素と関連付けられた第２のミッションオブジェクトとの間に前記論理結合の内のある論理結合があるかどうかを判断し、前記ある論理結合がありかつ前記第２のミッション要素への更新が必要とされる場合、前記特定のミッション計画の進行を可能にするように前記第２のミッション要素を更新することと、
を含むことと、
を含む、方法。
【請求項１０】
一般ミッションテンプレートを生成することの後に、前記一般ミッションテンプレート中の１つ以上のミッションオブジェクトをそれぞれの現実世界ミッション要素と関連付け、それによって前記特定のミッション計画を生成すること
をさらに含む、請求項９に記載の方法。
【請求項１１】
自律ミッションのためのミッション計画を生成および監視するコンピュータ化システムであって、前記ミッション計画は、１つ以上の自律エージェントによって実行され、前記システムは少なくとも１台のプロセッサを備え、前記プロセッサは、メモリに結合され、かつ、
複数の一般ミッションテンプレートを記憶するコンピュータ記憶媒体から一般ミッションテンプレートを入手することであって、前記一般ミッションテンプレートのそれぞれは、複数のミッションオブジェクトから構築され、かつ前記複数のミッションオブジェクト間の１つ以上の論理結合を定義し、各ミッションオブジェクトは、それぞれのタイプのミッション要素を論理的に表すように構成されることと、
前記一般ミッションテンプレート中の２つ以上のミッションオブジェクトをそれぞれの現実世界ミッション要素と関連付け、それによって複数のミッション要素を有する特定のミッション計画を生成することと、
前記一般ミッションテンプレートおよび前記特定のミッション計画に基づいて、前記１つ以上の自律エージェントのそれぞれについてのエージェント特有ミッション計画を生成することであって、前記エージェント特有ミッション計画は、特定のエージェントに割り当てられたタスクを、同じミッション計画下で動作する他のエージェントから個々にリアルタイムで制御および更新することを可能にするそれぞれの指定されたエージェントに割り当てられたタスクを備えることと、
各エージェント特有ミッション計画を、前記それぞれの指定されたエージェントの技術的な要件に適合するフォーマットに変換することと、
前記特定のミッション計画の実行を監視することであって、前記監視することは、
前記特定のミッション計画の進行を継続的に監視することと、
前記ミッションオブジェクトの内の第１のミッションオブジェクトと関連付けられた、前記ミッション要素の内の第１のミッション要素への更新が必要とされることをリアルタイムで特定することと、
前記第１のミッション要素を相応して更新することと、
前記一般ミッションテンプレートに基づいて、前記第１のミッションオブジェクトと、第２のミッション要素と関連付けられた第２のミッションオブジェクトとの間に前記論理結合の内のある論理結合があるかどうかを判断し、前記ある論理結合がありかつ前記第２のミッション要素への更新が必要とされる場合、前記特定のミッション計画の進行を可能にするように前記第２のミッション要素を更新することと、
を含むことと、
を実行するように動作可能である、システム。
【請求項１２】
前記プロセッサが、
複数のミッションオブジェクトタイプを提供することであって、前記ミッションオブジェクトタイプのそれぞれは、それぞれのタイプの現実世界ミッション要素を論理的に表すように構成される変数であることと、
前記複数のミッションオブジェクトタイプからミッションオブジェクトを選択することと、
複数の選択されたミッションオブジェクト間の結合を確立することと、
前記一般ミッションテンプレートを生成することと、
を実行するようにさらに動作可能である、請求項１１に記載のシステム。
【請求項１３】
前記プロセッサが、
前記ミッション計画をシミュレーションし、それによって前記ミッション計画にエラーがないことを確証すること
を実行するようにさらに動作可能である、請求項１１乃至１２のいずれか１項に記載のシステム。
【請求項１４】
前記プロセッサが、
各エージェント特有ミッション計画をそれぞれの指定されたエージェントに送信すること
を実行するようにさらに動作可能である、請求項１１乃至１３のいずれか１項に記載のシステム。
【請求項１５】
前記システムがディスプレイをさらに備え、前記プロセッサは、
前記一般ミッションテンプレートのグラフィック表現を前記ディスプレイ上に表示することと、
前記ミッション計画に関して前記現実世界ミッション要素のリアルタイム進行を、前記グラフィック表現を活用して示すことと、
を実行するようにさらに動作可能である、請求項１１乃至１４のいずれか１項に記載のシステム。
【請求項１６】
前記プロセッサが、
前記一般ミッションテンプレート中の第１のミッションオブジェクトを更新することと、
前記更新に応えて、前記ミッションオブジェクトと関連付けられたエージェントのエージェント特有ミッション計画をさらに更新し、それによって前記ミッションが進行している間に、前記ミッション計画を変更することを可能にすることと、
を実行するようにさらに動作可能である、請求項１１乃至１５のいずれか１項に記載のシステム。
【請求項１７】
前記プロセッサが、
第２のミッションオブジェクトが前記第１のミッションオブジェクトに論理的に結合されている場合に、前記論理結合が、前記第２のミッションオブジェクトと関連付けられた第２のエージェントに対する命令を更新することを必要とするかどうかを判断することと、
前記命令の更新が必要とされる場合、前記ミッションが進行している間に、前記第２のエージェントのエージェント特有ミッション計画を更新することと、
を実行するようにさらに動作可能である、請求項１６に記載のシステム。
【請求項１８】
自律ミッションのためのミッション計画を生成および監視するコンピュータ化システムであって、前記ミッション計画は、１つ以上の自律エージェントによって実行され、前記システムは少なくとも１台のプロセッサを備え、前記プロセッサは、メモリに結合され、かつ、
複数のミッションオブジェクトタイプを生成することであって、前記ミッションオブジェクトタイプのそれぞれは、それぞれの現実世界ミッション要素を論理的に表すように構成されることと、
前記複数のミッションオブジェクトタイプから複数の選択されたミッションオブジェクトを生成することと、
前記複数の選択されたミッションオブジェクト間の結合を確立することと、
一般ミッションテンプレートを生成することと、
前記一般ミッションテンプレートおよび複数のミッション要素を有する特定のミッション計画に基づいて、前記１つ以上の自律エージェントのそれぞれについてのエージェント特有ミッション計画を生成することであって、前記エージェント特有ミッション計画は、特定のエージェントに割り当てられたタスクを、同じミッション計画下で動作する他のエージェントから個々にリアルタイムで制御および更新することを可能にするそれぞれの指定されたエージェントに割り当てられたタスクを備えることと、
各エージェント特有ミッション計画を、前記それぞれの指定されたエージェントの技術的な要件に適合するフォーマットに変換することと、
前記特定のミッション計画の実行を監視することであって、前記監視することは、
前記特定のミッション計画の進行を継続的に監視することと、
前記ミッションオブジェクトの内の第１のミッションオブジェクトと関連付けられた、前記ミッション要素の内の第１のミッション要素への更新が必要とされることをリアルタイムで特定することと、
前記第１のミッション要素を相応して更新することと、
前記一般ミッションテンプレートに基づいて、前記第１のミッションオブジェクトと、第２のミッション要素と関連付けられた第２のミッションオブジェクトとの間に論理結合があるかどうかを判断し、前記論理結合がありかつ前記第２のミッション要素への更新が必要とされる場合、前記特定のミッション計画の進行を可能にするように前記第２のミッション要素を更新することと、
を含むことと、
を実行するように動作可能である、システム。
【請求項１９】
自律ミッションのためのミッション計画を生成および監視する方法のステップを実行するためにマシンによって実行可能な命令のプログラムを有形的に具体化する、前記マシンによって読取り可能なプログラム記憶装置であって、前記ミッションは、１つ以上の自律エージェントによって実行され、前記方法は、
複数の一般ミッションテンプレートを記憶するコンピュータ記憶媒体から一般ミッションテンプレートを入手することであって、前記一般ミッションテンプレートのそれぞれは、複数のミッションオブジェクトから構築され、かつ前記複数のミッションオブジェクト間の１つ以上の論理結合を定義し、各ミッションオブジェクトは、それぞれのタイプのミッション要素を論理的に表すように構成されることと、
前記一般ミッションテンプレート中の２つ以上のミッションオブジェクトをそれぞれの現実世界ミッション要素とそれぞれ関連付け、それによって複数のミッション要素を有する特定のミッション計画を生成することと、
プロセッサを使用して、前記一般ミッションテンプレートおよび前記特定のミッション計画に基づいて、前記１つ以上の自律エージェントのそれぞれについてのエージェント特有ミッション計画を生成することであって、前記エージェント特有ミッション計画は、特定のエージェントに割り当てられたタスクを、同じミッション計画下で動作する他のエージェントから個々にリアルタイムで制御および更新することを可能にするそれぞれの指定されたエージェントに割り当てられたタスクを備えることと、
各エージェント特有ミッション計画を、前記それぞれの指定されたエージェントの技術的な要件に適合するフォーマットに変換することと、
前記特定のミッション計画の実行を監視することであって、前記監視することは、
前記特定のミッション計画の進行を継続的に監視することと、
前記ミッションオブジェクトの内の第１のミッションオブジェクトと関連付けられた、前記ミッション要素の内の第１のミッション要素への更新が必要とされることをリアルタイムで特定することと、
前記第１のミッション要素を相応して更新することと、
前記一般ミッションテンプレートに基づいて、前記第１のミッションオブジェクトと、第２のミッション要素と関連付けられた第２のミッションオブジェクトとの間に前記論理結合の内のある論理結合があるかどうかを判断し、前記ある論理結合がありかつ前記第２のミッション要素への更新が必要とされる場合、前記特定のミッション計画の進行を可能にするように前記第２のミッション要素を更新することと、
を含むことと、
を含む、プログラム記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自律動作システムの分野に関する。
【背景技術】
【０００２】
自律システムとは、継続的な人間の誘導を受けずに所望されるタスクを実行できるシステムである。異なるシステムの自律の程度は変わることがあり、異なるシステムはさまざまに自律的であることがある。限られたタスクに限定された限られた自律性を有するシステムもある。一方、他のシステムが完全に自律性であることもある。本明細書に使用されるように、用語「自律ミッション」は、自律システムの動作を含む任意のミッションを含む。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本明細書で使用される用語「自律システム」は、人間の介入を受けずに、またはある限られた程度の人間の介入を受けて所定の論理に基づいてタスクを実行できる任意の種類の物理エージェント、仮想エージェント、または他のエージェントを含む。したがって、用語「自律システム」は、たとえば、住宅を清掃するために設計された家庭用ロボット、自律的に泥を取り除くために設計された自律掘削機、宇宙探索機、内蔵自律監視カメラ付きの自律無人航空機（ＵＡＶ）、沿岸警備ミッションでの無人陸上車両（ＵＳＶ）、自律潜水機、または１つもしくは複数のタスク（たとえば、通過する製品を塗装する、および／または検査する）等を完了するために設計された工場アセンブリラインの機械類等の、特定のタスクを自律的に実行するために設計された機械的なアセンブリまたはその構成部分を指すことがある。
【０００４】
さらに、用語「自律システム」は、自律機能を備えた機械を示す任意の仮想インテリジェントエージェント（つまり、係る仮想インテリジェントエージェントが埋め込まれているマシン）を含むこともある。たとえば、自律システムは、航空機に自律的な能力を与える標準的な航空機の内部に埋め込まれたエージェントを指すことがある。たとえば、航空機が所望される場所に自律的に飛行し、パイロットの介入を受けずに、またはパイロットの限られた介入を受けてその場所で積荷を落下できるようにすること。
【０００５】
複雑な自律ミッションを完了するために、何度も、いくつかの自律システムの間での協調および／またはリソース共用が必要とされる。係るミッションを完了するために必要とされる自律的な動作は、たとえば各システムが１つまたは複数の特定のタスクを完了するために構成される複数の自律システムの共同の努力によって達成できる。たとえば、電気光学ペイロードでＵＧＶを標的にし、ＵＧＶをその目的地に導くことによってそのＵＡＶによって提供される座標を使用して特定の場所にナビゲートする無人陸上車両（ＵＧＶ）。
【０００６】
ミッションに参加する各自律システムは、その特定のタスクを達成するために設計され、特にその特定の命令でプログラミングされている。この目的を達成するために、自律ミッションに参加する自律システムに対する命令を含む自律ミッション計画は、多くの場合、ハードコード化される、または自律システムの動作を制御する自律ミッションコンピュータの中にロードされる。
【０００７】
一般に、自律ミッションは、物理層および戦術（または論理）層の情報の２つの仮想層に分けることができる。物理層は、「どこで」ミッションが起こるのか、つまり言い換えると、システムが動作する物理的な環境を定義する。戦術層は、システムがどのように動くのか、つまり言い換えると、システムがその動作中にとる多様な一連のアクションを決定するために使用される決定論理は何であるのかを定義する。
【０００８】
ただし、実際には、両方の層に属する情報はさまざまにミッションに織り交ぜられている。いくつかの場合、ミッションはほぼ地形主導型であり、ミッションの計画はほぼ地図だけに基づき、決定はプラットホームの位置および状態に基づく。他の場合、ミッションは時間主導型またはイベント主導型であり、プラットホームを、外部ソースからの入力に従って動作させる。いずれにせよ、自律システムの決定論理は、予想される地理的な条件および／または特定のミッションの予想される外部入力に結び付けられている。
【０００９】
確かな地域的な発端および／または確かな外部入力に密接に結び付いているミッションは、予想されるシナリオでうまく機能できるが、再利用または改良のためにはほぼ役に立たない。１つの特定の環境でタスクを実行するために設計された自律システムは、異なった地理的条件で、および／または異なった外部入力に基づいて異なるタスクを実行するために容易に変換できない。多くの場合、決定論理は地理的パターンでまとめて作成され、この２つは、これらの仮想層を分離しようとするいかなる試みも事実上ミッションの再計画につながるように本質的に織り交ぜられている。さらに、２つの織り交ぜられた物理層と論理層との間の強力な結合のため‐システムがアクティブであるときに‐ミッションの実行中にリアルタイムで自律システムに割り当てられたタスクを修正することは実際には不可能である。この問題は、それぞれが特定のタスクを実行している多くの自律ロボットが、所望されるミッションを完了するために連携する場合、さらに複雑化する。代わりに、異なる自律システムは明確にプログラミングし直され、新しいタスクに適応され、煩わしく、かつ時間を要するプロセスである。
【課題を解決するための手段】
【００１０】
本開示主題の一態様に従って、自律ミッションを計画する方法が提供され、ミッションは１つまたは複数の自律エージェントによって実行され、方法は、一般ミッションテンプレートを入手することであって、一般ミッションテンプレートは複数のミッションオブジェクトから構築され、複数のミッションオブジェクト間の論理結合を定義し、各ミッションオブジェクトはそれぞれのタイプのミッション要素を論理的に表すように構成される、一般ミッションテンプレートを入手することと、一般ミッションテンプレートの中の１つまたは複数のミッションオブジェクトを、それぞれの現実世界のミッション要素と関連付け、それによって特定のミッション計画を生成することと、プロセッサを使用して、一般ミッションテンプレートおよび特定のミッション計画に基づき、１つまたは複数のエージェントのそれぞれにエージェント特有ミッション計画を生成することであって、エージェント特有ミッション計画が、それぞれの指定されたエージェントに割り当てられるタスクを含み、それぞれの指定されたエージェントの技術的な要件に適合する、エージェント特有ミッション計画を生成することを含む。
【００１１】
本開示主題のある実施形態に従って、入手することは、ミッションオブジェクトの各タイプがそれぞれのタイプの現実世界ミッション要素を論理的に表すように構成される、複数のミッションオブジェクトタイプを提供することと、複数のミッションオブジェクトタイプからミッションオブジェクトを選択することと、複数の選択されたミッションオブジェクトの間の結合を確立することと、および一般ミッションテンプレートを生成することを含む。
【００１２】
本開示主題のある実施形態に従って、ミッション計画実行をシミュレーションし、それによってミッション計画にエラーまたは異なるミッションオブジェクト間の望ましくない論理結合がないことを確証することをさらに含む方法。
【００１３】
本開示主題のある実施形態に従って、各エージェント特有のミッション計画を、それぞれの指定されたエージェントに適合するフォーマットに変換することをさらに含む方法。
【００１４】
本開示主題のある実施形態に従って、一般ミッションテンプレートのグラフィック表現をディスプレイ上に表示することと、グラフィック表現を活用して、ミッション計画に関して現実世界ミッション要素のリアルタイム進行を示すことをさらに含む方法。
【００１５】
本開示主題のある実施形態に従って、ミッション実行中に一般ミッションテンプレートの第１のミッションオブジェクトを更新することと、更新に応えて、ミッションオブジェクトと関連付けられたエージェントのエージェント特有ミッション計画をさらに更新し、それによってミッションが進行中にミッション計画を変更することを可能にすることをさらに含む方法。
【００１６】
本開示主題のある実施形態に従って、第２のミッションオブジェクトが第１のミッションオブジェクトに論理的に結合される場合に、論理結合が第２のミッションオブジェクトと関連付けられた第２のエージェントに対する命令を更新することを必要とするのかを判断すること、および必要とする場合、ミッションが進行中に第２のエージェントのエージェント特有ミッション計画を更新すること。
【００１７】
本開示主題の別の態様に従って、自律ミッションを計画する方法が提供され、ミッションは１つまたは複数の自律エージェントによって実行され、方法は、ミッションオブジェクトの各タイプがそれぞれの現実世界ミッション要素を論理的に表すように構成される、複数のミッションオブジェクトタイプを生成することと、複数の選択されたミッションオブジェクトタイプから複数の選択されたミッションオブジェクトを生成することと、複数の選択されたミッションオブジェクト間の結合を確立することと、一般ミッションテンプレートを生成することとを含む。
【００１８】
本開示主題の別の態様に従って、自律ミッション計画のシステムが提供され、ミッションは１つまたは複数の自律エージェントによって実行され、システムは、メモリに結合される、および一般ミッションテンプレートが複数のミッションオブジェクトから構築され、複数のミッションオブジェクト間の論理結合を定義し、各ミッションオブジェクトがそれぞれのタイプのミッション要素を論理的に表すように構成される、一般ミッションテンプレートを入手するように作動し、一般ミッションテンプレートの１つまたは複数のミッションオブジェクトをそれぞれの現実世界ミッション要素と関連付け、それによって特定のミッション計画を生成するように作動し、エージェント特有のミッション計画がそれぞれの指定されたエージェントに割り当てられたタスクを含み、それぞれの指定されたエージェントの技術的な要件と適合する、プロセッサを使用して、一般ミッションテンプレートおよび特定のミッション計画に基づき、１つまたは複数のエージェントのそれぞれにエージェント特有ミッション計画を生成するように作動する少なくとも１台のプロセッサを含む。
【００１９】
本開示主題の別の態様に従って、自律ミッションを計画するシステムが提供され、ミッションは１つまたは複数の自律エージェントによって実行され、システムは、メモリに結合される、およびミッションオブジェクトの各タイプがそれぞれの現実世界ミッション要素を論理的に表すように構成される複数のミッションオブジェクトタイプを生成するように、複数のミッションオブジェクトタイプから複数の選択されたミッションオブジェクトを生成するように、複数の選択されたミッションオブジェクト間で結合を確立するように、および一般ミッションテンプレートを生成するように作動する少なくとも１台のプロセッサを含む。
【００２０】
本開示主題の別の態様に従って、自律ミッションを計画する方法ステップを実行するためにマシンによって実行可能な命令のプログラムを有形的に具体化する、マシンによって読取り可能なプログラム記憶装置が提供され、ミッションは１つまたは複数の自律エージェントによって実行され、方法は、一般ミッションテンプレートを入手することであって、一般ミッションテンプレートが複数のミッションオブジェクトから構築され、複数のミッションオブジェクト間の論理結合を定義し、各ミッションオブジェクトがそれぞれのタイプのミッション要素を論理的に表すように構成される、一般ミッションテンプレートを入手することと、一般ミッションテンプレートの１つまたは複数のミッションオブジェクトをそれぞれの現実世界ミッション要素と関連付け、それによって特定のミッション計画を生成することと、プロセッサを使用して、一般ミッションテンプレートおよび特定のミッション計画に基づき、１つまたは複数のエージェントのそれぞれにエージェント特有ミッション計画を生成することであって、エージェント特有ミッション計画がそれぞれの指定されたエージェントに割り当てられたタスクを含み、それぞれの指定されたエージェントの技術的な要件に適合する、エージェント特有ミッション計画を生成することを含む。
【００２１】
本開示主題を理解し、本開示主題が実践でどのように実施され得るのかを確かめるために、主題はここで、添付図面を参照して非制限的な例によってのみ説明される。
【図面の簡単な説明】
【００２２】
【図１】本開示主題に係るシステムの例の概略図である。
【図２】本開示主題に係るシステムの例を概略で示す機能ブロック図である。
【図３】本開示主題に係るミッション監視制御装置の例を概略で示す機能ブロック図である。
【図４】本開示主題に係るミッション監視制御装置によって表示されるＧＵＩを例示する概略図である。
【図５】本開示主題に従って実行される動作の例を明示するフローチャートである。
【図６】本開示主題に従って実行される動作の例を明示するフローチャートである。
【図７】本開示主題に従って実行される動作の例を明示するフローチャートである。
【図８】本開示主題に従って、ミッション計画の実行中に実行される動作の例を示すフローチャートである。
【発明を実施するための形態】
【００２３】
示されている図面および説明では、同一の参照数字は異なる実施形態または構成に共通であるそれらの構成要素を示す。
【００２４】
特別に明記されない限り、以下の説明から明らかなように、明細書を通して、「入手すること」、「関連付けること」、「生成すること」、「選択すること」、「確立すること」、「シミュレーションすること」等の用語を活用する説明は、データを操作するおよび／またはデータを他のデータに変換するコンピュータプロセッサのアクションおよび／またはプロセスを含み、該データは、たとえば電子的な量等の物理量として表される、および／または該データは物理的対象を表すことが理解される。
【００２５】
本明細書の教示に従った動作は、所望される目的のために特別に構築されたコンピュータプロセッサによって、またはコンピュータ可読記憶媒体に記憶されるコンピュータプログラムによって所望される目的のために特別に構成される汎用コンピュータプロセッサによって実行され得る。
【００２６】
図２のモジュール１１０および１３０、ならびに図３の装置１５０は、上述された動作を実行するために作動する少なくとも１台のプロセッサを含む、またはそうではない場合少なくとも１台のプロセッサと関連付けられる。用語「プロセッサ」は、非制限的な例としてパーソナルコンピュータ、サーバコンピュータ、コンピューティングシステム、通信装置、プロセッサ（たとえば、デジタルシグナルプロセッサ（ＤＳＰ）、マイクロコントローラ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）等）、任意の他の電子計算装置、およびまたはその任意の組合せを含む、データ処理機能を備えた任意の種類の電子装置をカバーすると拡大して解釈されるべきである。ブロック間の、および／またはブロックの中の動作結合は（たとえば、バスを介して）直接的にまたは遠隔接続を含む間接的に実現されてよい。図１から図４に示される異なる構成要素間の接続は、有線、無線、ケーブル、インターネット、イントラネット、電力、衛星、もしくは他のネットワークを介して、および／または適切な通信規格、通信システムおよび／または通信プロトコル、ならびにその変形物または進化物を使用して提供され得る。
【００２７】
本明細書に使用されるように、句「たとえば」、「等の」、「例として」およびその変形物は、本開示主題の非制限的な実施形態を説明する。明細書中の「１つの場合」、「いくつかの場合」、「他の場合」またはその変形物に対する参照は、実施形態（複数の場合がある）と関連して説明される特定の特長、構造、または特徴が本開示主題の内の少なくとも１つの実施形態に含まれることを意味する。したがって、句「１つの場合」、「いくつかの場合」、「他の場合」またはその変形物の出現は、必ずしも同じ実施形態（複数の場合がある）を指していない。
【００２８】
明確にするために別々の実施形態との関連で説明される、本開示主題の一定の特長が単一の実施形態で組み合わされて提供されてもよいことが理解される。逆に、簡潔にするために単一の実施形態との関連で説明される本開示主題の多様な特長は、別々にまたは任意の適切なサブコンビネーションで提供されてもよい。
【００２９】
本開示主題の実施形態では、図５から図８に示される段階よりも少ない段階、多い段階、および／または図５から図８に示される段階とは異なる段階が実行されてよい。本開示主題の実施形態では、図５から図８に示される１つまたは複数の段階は、異なる順序で実行されてよい、および／または段階の１つまたは複数のグループが同時に実行されてよい。図１、図２および図３は、本開示主題の一実施形態に係るシステムアーキテクチャの一般的な概略図を示す。図１、図２、および図３の構成要素は、１か所に集中することもあれば、複数の場所に分散されることもある。本開示主題の他の実施形態では、システムは図１、図２および図３に示される構成要素よりも少ない構成要素、多い構成要素、および／または図１、図２および図３に示される構成要素とは異なる構成要素を含んでよい。
【００３０】
本開示主題は、ミッションの論理層と物理層との間で分離することを可能にする方法およびシステムを含む。本明細書に開示されるシステムアーキテクチャは、物理層と無関係にミッションの実行の前および実行中に論理層を生成すること、監視すること、および制御することを可能にし、物理層を定義する異なる現実世界シナリオに論理層を適応させることを可能にする。
【００３１】
図１は、本開示主題に係るシステムの概略図である。図１に概略で示される一般テンプレート計画モジュール１１０は、一般ミッションテンプレートを生成するように作動する。一般ミッションテンプレートは、特定の地理的な場所または特定の外部入力ソース等の特定のパラメータに結び付けられていないが、代わりにミッション計画戦術目標の論理および相互依存性を説明するミッション計画の一般的な高レベルの論理表現を提供する。一般ミッション計画は、一般ミッションオブジェクトの集合体から構成され、各オブジェクトはそれぞれのミッションパラメータの高レベルの表現である。
【００３２】
ミッション計画は、ミッションのビルディングブロックを表すミッションパラメータから構成されている。各パラメータはミッションの特定の構成要素または変数を表す。ミッション計画パラメータは、たとえば、ミッションに参加し、タスクを実行する（本明細書では「エージェント」と呼ばれる）異なる自律システム（たとえば、自律航空機、自律走行車、自律監視カメラ等）、異なるミッションエージェントの進行経路およびそのそれぞれのミッション経路に沿って異なるエージェントによって実行される異なるタスクを定める座標および方向、（たとえば、自律システムに搭載されるインプリメントまたはペイロードによって実行される命令を含む）自律システムの操作プロトコル、ミッションの間に実行されるタスク等を含む。
【００３３】
本開示主題に従って、ミッションパラメータはそれぞれのミッションオブジェクトによって包まれ、表される。ミッションオブジェクトは、それぞれのミッションパラメータを特徴付けることを可能にする属性のセットを含む。任意のタイプのミッションパラメータは、ミッションオブジェクトのそれぞれのタイプ（それ以外の場合、「クラス」として知られる）によって表すことができる。ミッションオブジェクトは、任意選択で調整可能である属性を含んでもよい。ミッションオブジェクトの属性は、ミッションオブジェクトによって表されるそれぞれのパラメータの特徴を定義する。
【００３４】
たとえば、タイプ「エージェント」のミッションオブジェクトは、ミッションパラメータの１つのタイプである、自律システムを表すオブジェクトである。ミッションオブジェクトタイプは、任意の特定のエージェント（または自律システム）を特徴付けるために使用できる異なる属性を含むことがある。別の例は、自律ミッションの別のタイプのミッションパラメータである地図座標を表すタイプ「座標」のミッションオブジェクトであることがある。ミッションオブジェクトのさらに別の例は、一定のエージェントによって実行されるタスクを完了するための命令のセットである、別のタイプのミッションパラメータを表すタイプ「タスク」である場合がある。係る命令は、たとえば、タスクがどのように実行されるべきか、どのような条件下でタスクが実行されるべきか、およびミッションでの異なるオブジェクト間の共依存を含むミッションの詳述を定義する情報を含むことがある。
【００３５】
また、命令は、ミッションの所望される自律性の程度を指定することもできる。たとえば、タイプ「タスク」のミッションオブジェクトは、タスクのどの動作が自動的に実行されるべきか、およびどの動作がオペレータによって実行されるべきかを定義する属性または他の情報を含むことがある。
【００３６】
ミッションオブジェクトは、より高い階層の一定のオブジェクトがより低い階層の他のミッションオブジェクトを包含するように、階層構造を含む異なる論理構造を有することがある。たとえば、エージェントの進行経路を定義するタイプ「経路」のミッションオブジェクトは、それぞれがともに進行経路を提供する地図座標および方向等の属性を含む、タイプ「座標」のミッションオブジェクトのアレイを含むことがある。
【００３７】
ミッション計画の生成は、異なる一般ミッションテンプレートを生成するために使用できるツール／フレームワークによって可能にされる。これは、異なるミッションオブジェクトを含むセットを選択し、ミッションオブジェクト間の論理結合を確立することによって達成できる。
【００３８】
図１は、以下にさらに詳しく説明される一般テンプレート計画モジュール１１０と関連付けられた画面上に表示される一般ミッションテンプレート１０１の概略図を含む。図１に示される一般ミッションテンプレートがともに結合された複数のミッションオブジェクトを含むことに留意されたい。たとえば、「エージェントＡ」および「エージェントＢ」は２つのそれぞれのエージェントを表すミッションオブジェクトであり、「タスクＡ」は、たとえばエージェントＡに割り当てられた操縦タスクを表すミッションオブジェクトであり、「タスクＣ」は、たとえばエージェントＡに割り当てられた監視ミッションを表すミッションオブジェクトである。上述されるように、一般ミッションテンプレートは、どの現実世界エージェントがエージェントＡと関連付けられているのか、および何がタスクのそれぞれの特殊な詳細であるのかを開示しない。
【００３９】
各ミッションオブジェクトの属性には、特定のミッションに応じて実際の値（パラメータ）を割り当てることができる。したがって、同じ一般ミッションテンプレートの同じミッションオブジェクトに、１つのミッションの値のあるセット、および異なるミッションの値の異なるセットを割り当てることができる。たとえば、所望される進行経路を定める地図座標のセットを指定するタイプ「進行経路」のミッションオブジェクトには、特定のミッションの所望される場所に基づいた特定の地図座標値を割り当てることができる。
【００４０】
ミッションオブジェクトは直感的なプロセスで容易に追加または削除できるので、ミッションオブジェクトの使用は、一般ミッションテンプレートの生成中の柔軟性を与える。さらに、一般ミッションテンプレートは特定の地理的なシナリオまたは任意の他の現実世界物理要素に結び付けられるのではなく、むしろ異なるミッションオブジェクト間の論理結合を表すので、一般ミッションテンプレートを、任意の特定の地理的シナリオおよび／または異なる機能を備えたエージェントのアレイに後に適応することができる。さらに、一般ミッションテンプレートの部分または完全な一般ミッションテンプレートを記憶し、他のミッションテンプレートの部分として後の機会に使用することもできる。
【００４１】
図２は、本開示主題に係るシステムの例を概略で示すブロック図である。一般テンプレート計画モジュール１１０は、ミッションオブジェクトの集合体を選択し、一般的にミッションテンプレートを表す論理構造を作成するために選択されたミッションオブジェクト間で結合することを可能にするように作動する。
【００４２】
一般テンプレート計画モジュール１１０は、一般ミッションオブジェクトを記憶するために使用されるミッションオブジェクトデータレポジトリ１１４を含む、またはそうではない場合、ミッションオブジェクトデータレポジトリ１１４と関連付けられることがある。ミッションオブジェクトは、たとえば、異なるタイプのミッションオブジェクトを生成し、それらをたとえばデータレポジトリ１１４に記憶するように作動するミッションオブジェクトジェネレータ１０８によって生成できる。
【００４３】
ミッションオブジェクトの選択は、事前にプログラミングされたコンピュータ装置、または人間のオペレータもしくはプランナーのどちらかによって自動的に実行できる。たとえば、必要とされるミッションオブジェクト、および一般ミッションテンプレートを生成するためのミッションオブジェクト間の必要とされる論理結合を示す情報を、この情報に基づいてそれぞれの一般ミッションテンプレートを自動的に生成するように構成できる一般テンプレート計画モジュール１１０が利用できるようにする。
【００４４】
さらにまたは代わりに、一般テンプレート計画モジュール１１０は、グラフィックユーザインタフェース（ＧＵＩ１１２）およびディスプレイ１１６（たとえば、ＬＣＤ画面）であることがあるユーザインタフェースを含む。ユーザインタフェースおよびディスプレイは、オペレータがミッションオブジェクトを選択し、一般ミッションテンプレートを表すミッションテンプレート文書を作成できるようにする。ミッションテンプレート文書は、たとえば一般ミッションテンプレートのグラフィック表現であることがある。異なる使用可能なミッションオブジェクトは、ミッションオブジェクトの所望されるセットを選択し、ミッション要件および論理に基づいて選択されたミッションオブジェクトを編成できるオペレータに図表を用いて表示できる。
【００４５】
一般テンプレート計画モジュール１１０は、オペレータに対し一定の制約を強制するように作動する場合もあり、これは、一般ミッションテンプレートが所定の論理および規則に従って作成されていることを確実にするために、オペレータを一般ミッションテンプレートを作成するプロセスを通して誘導することを可能にする。制約は、ミッションオブジェクトに埋め込まれた属性または特徴によって提供することもできる。ミッションテンプレート文書１０３は、いったん作成されると、将来の使用および参照のためにテンプレート文書データレポジトリ１２０に記憶できる。
【００４６】
ミッションテンプレート文書中の一般ミッションテンプレートの表現がいったん完了すると、ミッションテンプレートジェネレータ１１８は、文書をコンパイルし、データレポジトリ１１４からそれぞれのミッションオブジェクトを取り出し、ミッションテンプレート文書に基づいて一般ミッションテンプレートを表すデータファイルを生成するように作動できる。一般ミッションテンプレートは、データレポジトリ（たとえば、データレポジトリ１２０）に記憶することもできる。
【００４７】
システム１００はさらに、所与の一般ミッションテンプレートに基づいてミッション計画を生成するように作動するミッション計画生成モジュール１３０を含む。一般ミッションテンプレートは、たとえばデータレポジトリ１２０から取り出すことができる。上述されるように、一般ミッションテンプレートはミッションオブジェクトの集合体から構成され、ミッション計画の論理的な表現を提供する。ミッション計画生成モジュール１３０は、実際のミッションに対応する現実世界ミッション要素を一般ミッションテンプレートのミッションオブジェクトに割り当て、それによって実行準備が完了した特定のミッション計画を作成することを可能にする。
【００４８】
用語「ミッション要素」は、特定の現実世界オブジェクトまたは情報を含むように本明細書で使用される。たとえば、一般ミッションテンプレートは、タイプ「エージェント」の１つまたは複数のミッションオブジェクトを含んでよい。対応するミッション要素は、ミッションを実行するために利用できる自律陸上車両のフリートの自律陸上車両の内の任意の１台であることがある。別の例では、一般ミッションテンプレートは、タイプ「タスク監視」の１つまたは複数のミッションオブジェクトを含んでよい。対応するミッション要素は、複数の使用可能な監視プロトコルからの監視プロトコル（つまり、監視タスクを定義する命令）の内の任意の１つであることがある。
【００４９】
いくつかの場合、実際のミッション要素のミッションテンプレートへの割当てのすべてまたは一部は自動的に行うことができる。この目的を達成するために、ミッション計画生成モジュール１３０は、選択されたミッションテンプレートのミッションオブジェクトと、現実世界ミッション要素と、値との間で自動的に関連付けるように作動する自動関連付けモジュール１３２を含むことがある。たとえば、所与のミッションテンプレートには、なんらかのタイプの所定の論理に基づいてミッション要素が割り当てられてよい。代わりにまたはさらに、所与のミッションテンプレートにはデフォルトのミッション要素が割り当てられてよく、これらのデフォルトのミッション要素を指定する情報を、自動関連付けモジュール１３２が（たとえばデータファイルの形式で）利用できるようにする。自動関連付けモジュール１３２は、この情報に基づいて、ミッションテンプレートのミッションオブジェクトとそれぞれのミッション要素との間で関連付けるように作動できる。
【００５０】
他の場合、割当てプロセスのすべてまたは一部が人間のオペレータによって実行される。この目的を達成するために、ミッション計画生成モジュール１３０は、ＵＩ（たとえばグラフィックユーザインタフェース）および人間のオペレータがシステム１００と対話できるようにするディスプレイと関連付けることができる。ＵＩ１１２は、人間のオペレータが選択された一般ミッションテンプレートをレビューし、一般ミッションテンプレートの異なるミッションオブジェクトに、それぞれのミッション要素および値を割り当てることを許す。
【００５１】
任意選択で、現実世界ミッション要素は、所与のミッションオブジェクトが（おそらく多少の自由度をもって）ミッションオブジェクトによって指定される属性に一致する場合にのみ、所与のミッションオブジェクトと関連付けることができる。たとえば、タイプ「エージェント」のミッションオブジェクトが陸上車両であるとして特徴付けられる場合、航空電子輸送手段を選択することは許されない。
【００５２】
使用可能なミッション要素および値は、１つまたは複数の指定されたデータレポジトリに記憶できる。たとえば、データレポジトリ１３６は、使用可能なミッションエージェントに関する情報を含むことがある。この情報は、一般ミッションテンプレートの詳述に基づいて、タイプ「エージェント」の関連するミッションオブジェクトごとに、エージェントに割り当てられたタスクを実行する現実世界エージェントを選択できるオペレータに表示できる。ミッション計画生成モジュール１３０は、特定のミッションの地形に関する地理的な情報を提供し、各「操縦」ミッションオブジェクトの必要とされる進行経路を決定するように作動するマッピングモジュール１３４を含むこともある。
【００５３】
いったん一般ミッションテンプレートのミッションオブジェクトが現実世界ミッション要素と関連付けられると、実行準備が完了したミッション計画が入手される。生成されたミッション計画は、ミッション計画生成モジュール１３０と関連付けられたデータレポジトリ（たとえば、データレポジトリ１４４）に記憶できる。
【００５４】
ミッション計画生成モジュール１３０はさらに、ミッション計画を確証するために作動するシミュレーションモジュール１３８を含むことがある。シミュレーションモジュール１３８は、生成されたミッション計画のシミュレーションを実行するように作動できる。このシミュレーションは、ミッション計画が実際に実行される前に、ミッション計画が実行可能であるかどうか、およびミッション計画がエラーを含んでいるかどうかを判断することを可能にする。
【００５５】
ミッション計画でエラーが検出される場合、シミュレーションモジュール１３８は、エラーを示す警告を発行できる。オペレータは次いでエラーを訂正できる。たとえば、選択されたエージェントがその指定されたタスクの内の１つを実行するために適していないと判断される場合、その代わりに異なるエージェントが選択できる。任意選択で、シミュレーションモジュールは、検出されたエラーに改善策を提案するように構築できる。
【００５６】
いったんミッション計画が確証されると、各エージェントおよびおそらく全体的なミッション計画の追加部分に割り当てられたタスクはそれぞれのエージェントに送信される。この目的を達成するために、ミッション計画生成モジュール１３０は、ミッションに参加する各エージェントに（本明細書では「エージェント特有ミッション計画」と呼ばれる）特定のミッション計画を生成するように作動するエージェント特有ミッション計画ジェネレータ１４０を含む。エージェント特有ミッション計画は、それぞれの特定のエージェントによってミッション中に伝えられる特定の命令を含む。エージェント特有ミッション計画ジェネレータ１４０は、関連するタスクおよびおそらく全体的なミッション計画を、関連するエージェントの技術的な要件と適合するフォーマットに変換するように作動できる。エージェント特有ミッション計画ジェネレータ１４０は、各トランスレータがミッション計画を所与のタイプのそれぞれの指定されたエージェントのフォーマットに変換できる、１つもしくは複数のトランスレータを含む、または１つもしくは複数のトランスレータにアクセスできる。エージェントミッション計画は、通信モジュール１４２を活用してそれぞれの指定されたエージェントのそれぞれに送信される。
【００５７】
一般論理テンプレート計画モジュール１１０およびミッション計画生成モジュール１３０は単一の操作装置として示されているが、これは単に１つの非制限例にすぎず、他の場合、一般論理テンプレート計画モジュール１１０およびミッション計画生成モジュール１３０は、個々の操作装置に分離できる、および／または異なる場所で分散できることが留意されるべきである。
【００５８】
いったんミッション計画が実行されると、ミッション進行は図３に示されるミッション監視制御装置１５０によって監視できる。ミッション監視制御装置１５０は、システム１００の一部として構成できる。さらにまたは代わりに、ミッション監視制御装置１５０は、システム１００から分離し、個別の操作装置として機能できる。ミッション監視制御装置１５０は、ＧＵＩ、およびオペレータがミッションの進行を監視できるようにするディスプレイを含むユーザインタフェースを含むことがある。ミッション監視制御装置１５０は、複数の機能を提供するように構成できる。たとえば、ミッション監視制御装置１５０は、たとえば（停止モジュールを使用して）ミッションを停止し、（再開モジュールを使用して）ミッションを再開することによってミッションの進行を制御することを可能にするミッション制御モジュール１５４を含むことがある。
【００５９】
ミッション監視制御装置１５０は、ミッションが進行中に、既存のミッション要素を異なる要素で置換することも可能にできる。たとえば、ミッションに参加する自律車両が故障すると仮定し、オペレータはミッションの実行中にそれぞれのミッションオブジェクトに対して異なる自律車両を割り当て、それによってその置換を可能にすることができる。別の例では、ミッションが進行中に、エージェントの選択された進行経路（ルート）が通過できないと判断される場合、代替ルートを選択し、ルートを表すそれぞれのミッションオブジェクトに割り当てることができる。
【００６０】
ミッション監視制御装置１５０は、ミッション監視制御装置１５０が、その機能を実行するために異なるエージェントとのオープンな通信を維持できるようにするために、情報の双方向転送を許す通信モジュール１５６を含む。
【００６１】
任意選択で、ミッションの進行中の新しいミッション要素の関連付けは、装置１５０によって自動的に実行できる。ミッション要素を置換する命令は、ミッション計画の中に埋め込むことができる。たとえばミッション計画の一部として（たとえば、タスクに関して提供される情報の一部として）提供される命令は、一定の基準が満たされる場合に所与のエージェントが置換されるべきであることを示す情報を含むことがある。また、所与のエージェントのミッションオブジェクトは、エージェントの置換が必要とされる場合にミッション要素の置換を示す属性を含むこともある。
【００６２】
エージェントが置換されているとき、ミッション監視制御システム１５０は、使用可能な置換エージェントに関してリアルタイム情報を受信し、選択された置換エージェントと通信し、置換エージェントをミッション計画と関連付け、置換エージェントにエージェント特有ミッション計画を提供するように作動できる。
【００６３】
図４は、本開示主題に係るミッション監視制御装置１５０のＧＵＩおよびディスプレイの例の概略図を示す。各エージェントに割り当てられたタスクの進行を監視できることに留意されたい。これは、各ミッションが、ミッションの論理的なバックボーンを提供する一般ミッションテンプレートから生成されるという事実に起因する。論理層は特定の現実世界ミッション要素とは無関係に定義される一般ミッションテンプレートによって表されるので、ミッションの論理進行は一般ミッションテンプレートに従うことによって容易に監視できる。
【００６４】
さらに、各ミッション要素が一般ミッションテンプレートのそれぞれのミッションオブジェクトによって表されるという事実により、ミッション要素の内の任意の１つは、第１のミッション要素のそれぞれのミッションオブジェクトに対する関連付けを取り消し、異なるミッション要素をミッションオブジェクトに関連付けることによってミッションの実行中に置換できる。さらに、ミッションの進行の監視がより簡略になるので、これは所与の規模のミッションを監視するために必要とされる人員の数を削減するのに役立つ。
【００６５】
本開示主題に従って実行される動作のフローチャートを示す図５を参照する。動作は図５に関して説明する、たとえば図１および図２に関して上述されるシステム１００によって実行できる。
【００６６】
ブロック５０１で、一般ミッションテンプレートが受信される。上述されるように、一般ミッションテンプレートは、ミッション計画の（論理層に相当する）論理的な表現を提供する。一般ミッションテンプレートは、それぞれのミッションパラメータを表す少なくとも１つのミッションオブジェクトを含む。受信された一般ミッションテンプレートは、図１および図２に関して上述されるように局所的に生成されることもあれば、受信された一般ミッションテンプレートは外部ソースから受信されてもよい。
【００６７】
ブロック５０３で、一般ミッションテンプレートの各ミッションオブジェクトは、ミッション計画を作成するためにそれぞれの現実世界ミッション要素と関連付けられる。ミッションオブジェクトとそれぞれのミッション要素との間の関連付けは、それぞれのミッションオブジェクトによって定義されるように、必要とされるミッション要素の特徴に基づいて実行される。上記のように、ミッションオブジェクトとミッション要素との間の関連付けは、システム１００によって、および／または人間のオペレータを活用して自動的に行うことができる。
【００６８】
ブロック５０５で、エージェント特有ミッション計画は、ミッションに参加するエージェントごとに生成される。ミッション計画に指定されるタスクは、ミッションに参加する特定のエージェントに割り当てられる。各エージェント特有ミッション計画、種類、それぞれのエージェントに割り当てられるタスク、タスクを完了するための命令を提供する。各エージェント特有ミッション計画は、予定されたエージェントと適合するフォーマットで生成される（またはフォーマットに変換される）。
【００６９】
ここで、本開示主題に従って実行される動作のフローチャートを示す図６を参照する。図６は、一般ミッションテンプレートを生成するプロセスを例示する。このプロセスは、たとえば図５に関して上述されたプロセスの前に起こることがある。始めは、ミッションオブジェクトの集合体が選択される（ブロック６０１）。上述されるように、ミッションオブジェクトの選択は、事前にプログラミングされたコンピュータ装置によって自動的に実行できる。代わりに、選択は、たとえばグラフィックユーザインタフェースと接続できる人間のオペレータによって実行できる。ミッションオブジェクトは、任意選択で図表を用いてオペレータに対して視覚化できるミッションオブジェクトのリストから選択できる。
【００７０】
いったんミッションオブジェクトが選択されると、ミッションの進行を定義する論理結合が選択されたミッションオブジェクトの間で決定される（ブロック６０３）。すでに述べたように、この動作は、事前にプログラミングされたコンピュータ装置によっておよび／または人間のオペレータによって自動的に実行できる。一般ミッションテンプレートを生成するプロセスを通して、より多くのミッションオブジェクトを追加し、結合できる。一方、他のミッションオブジェクトは一般ミッションテンプレートから削除できる。この段階の最後に、一般ミッションテンプレートの表現（たとえば、グラフィック表現または表形式の表現）が生成される。表現は、一般ミッションテンプレートを示す文書（たとえば図面を含む）として保存できる。次いで、文書はコンパイルできる（ブロック６０５）。コンパイル中、文書中に示されるミッションオブジェクトごとにミッションオブジェクトを含む一般ミッションテンプレートが生成される。
【００７１】
図７は、本開示主題に従って実行される動作のフローチャートである。図７は、図５のブロック５０５に関して上述された動作をより詳しく例示する。ミッション計画が生成された後、ミッション計画は、それが実行可能なミッション計画であり、エラーまたは異なるミッションオブジェクト間の望ましくない論理結合を含まないことを保証するために確証される（ブロック７０１）。この目的を達成するために、ミッション計画は（たとえば、シミュレーションプログラムを実行するシミュレーションモジュール１３８によって）シミュレーションできる。シミュレーションの結果は、ミッション計画のあらゆるエラーが特定されたのかどうかを示す。ミッション計画のエラーが特定された場合、エラーは（たとえば、人間のオペレータによって）修正することができ、次いでシミュレーションを再び実行できる。それ以外の場合、プロセスはブロック７０３に続行し、ミッション計画はミッション部分に分けられ、各部分は（たとえば、エージェント特有ミッション計画ジェネレータ１４０を活用して）ミッションに参加する特定のエージェントに割り当てられる１つまたは複数のタスクを含むタスクのグループを含む。別法として、ミッション計画を部分に分ける代わりに、ミッション計画の各タスクは、タスクがエージェントのどれに割り当てられるのかを示すようにマーキングできる。
【００７２】
ブロック７０５で、エージェント特有ミッション計画が、ミッションに参加するエージェントごとに生成される。各エージェント特有ミッション計画（または、いくつかの場合、全体的なミッション計画）は、（エージェント特有ミッション計画ジェネレータ１４０を活用して）このエージェント特有ミッション計画を実行するために指定されたそれぞれのエージェントの技術的な要件と適合するフォーマットに変換される（またはフォーマットで生成される）。たとえば、ミッション計画は、それぞれのエージェントに通信されるように適応される適切な通信プロトコルに変換できる。別の例では、ミッション計画は、それぞれの指定されたエージェントと互換性があるプログラミング言語に変換できる。
【００７３】
各エージェント特有ミッション計画は、次いで（たとえば、通信モジュール１４２を活用して）通信リンク上をそれぞれの指定されたエージェントに送信される（ブロック７０７）。
【００７４】
図８は、本開示主題に従って、ミッション計画の実行中に実行される動作の例を明示するフローチャートである。図８に関して説明される動作は、たとえば図３に関して上述されるミッション監視制御装置１５０を活用して実行できる。上述されるように、ミッション監視制御装置１５０は、ミッションに参加する異なるエージェントとの一定の通信を維持し、それによってミッションの進行を監視することを可能にする。
【００７５】
なんらかの点で仮定すると、継続中のミッションのミッションオブジェクト（ブロック８０３）の内の１つまたは複数に関連する情報を更新する決定が下される。たとえば、自律走行車が使用停止になると、オペレータは機能している自律走行車を、現在機能していない自律走行車と関連付けられているミッションオブジェクトに関連付けることを選んでよい。これによって、機能している自律走行車が、機能していない車両を置換し、その指定されたタスクを完了できる。異なるシナリオでは、オペレータは、監視装置の監視プロトコルを異なるプロトコルで置換することを選んでよい、またはたとえば監視装置（たとえばカメラ）が使用停止になる場合、オペレータは使用停止になった監視装置に割り当てられた監視タスクを取り消すことを選んでよい。
【００７６】
（ミッションオブジェクトと関連付けられたミッション要素を置換する等の）ミッションオブジェクトに関する情報を更新する決定は、自動的に下すことができる。この決定を下すための論理は、特定のミッション計画を生成するために使用される一般ミッションテンプレートの中に埋め込むことができる。ミッションオブジェクトに関係する情報を更新する決定は、人間のオペレータによって下すこともできる。
【００７７】
関連するミッションオブジェクトに関する情報は更新することができ、異なるミッション要素が更新されたミッションオブジェクトと関連付けることができる。たとえば、第１の自律走行車と関連付けられたミッションオブジェクトは、第１の自律走行車の代わりに第２の自律走行車と関連付けることができる。それぞれのエージェントに送られる更新された情報は、第１のエージェントをアンリンクするメッセージ、およびエージェント特有ミッション計画を提供する第２のエージェントに対するメッセージを含むことがある（ブロック８０５）。
【００７８】
第２の（置換）エージェントが更新され、そのタスクが相応して更新された後、ミッションに参加する他のエージェントが置換エージェントに論理的に結合されているかどうかが判断される（ブロック８０７）。これは、一般ミッションテンプレートを調べ、置換エージェントと関連付けられた（第１の）ミッションオブジェクトと、他のエージェントと関連付けられた他のミッションオブジェクトとの間のあらゆる論理結合を探すことによって達成できる。このタスクは、たとえばミッションオブジェクトの更新に応えて、他のミッションオブジェクトが更新されたオブジェクトに論理的に結合されているかどうかをチェックするように作動できるミッション監視制御装置１５０によって達成できる。
【００７９】
他のエージェント間の論理結合が見つけられると、次に、他のエージェントの内のいずれか１つが、第１のミッションオブジェクトの更新の結果として更新されるべきかどうかが判断される（ブロック８０９）。これは再びミッション監視制御装置１５０を活用して達成できる。たとえば、上記に示唆されるように、監視装置の動作は終了されたと仮定し、さらにミッションに参加している自律走行車が監視装置から確認信号を受信した後にのみその次の場所に進行し、前進するように命令されると仮定する。ただし、監視装置は無能力にされるので、監視装置は確認信号を送ることはできず、したがって自律走行車はその現在位置を維持する。したがって、監視装置および自律走行車が論理的に結合されていることが（一般ミッションテンプレートに基づいて）確定された後、第１のエージェントに対して行われる更新（この場合、監視装置を止めること）が、他のエージェントに影響を及ぼすかどうかが判断される。影響を及ぼす場合、他のエージェントは相応して更新される。たとえば、現在の例では、確認信号が監視装置から受信された後にのみ進行するという、自律走行車に与えられる命令が取り消される。
【００８０】
また、本開示主題に係るシステムが適切にプログラミングされたコンピュータであってよいことも理解される。同様に、本開示主題は、本開示主題の方法を実行するためのコンピュータによって読取り可能であるコンピュータプログラムを期待する。本開示主題はさらに、本開示主題の方法を実行するためのマシンによって実行可能な命令のプログラムを有形的に具体化するマシン可読メモリを期待する。
【００８１】
上述された図２および図３は、本開示主題の一実施形態に係るシステムアーキテクチャの一般概略図のブロック図を示す。本発明のある実施形態は、図２および図３に関して説明されるコンピュータシステムのアーキテクチャに適用可能である。ただし、本発明は特定のアーキテクチャによって拘束されない。つまり、同等なおよび／または修正された機能性が別の方法で統合または分割されてよい。当業者は、本発明が同様に異なるコンピュータシステムに適用可能であることを容易に理解する。本発明の異なる実施形態では、機能ブロックおよび／その部分は、（高い可用性の複製を含む）単一の地理的な位置または複数の地理的な位置に設置されてよい。
【００８２】
本開示主題は本明細書に含まれるまたは図面に示される説明に述べられる詳細にその用途で制限されないことが理解されるべきである。本開示主題は、他の実施形態の能力があり、多様に実践および実施できる。したがって、本明細書で利用される用語および専門用語は説明のためであり、制限と見なされるべきではないことが理解されるべきである。したがって、当業者は、本開示が基づいている考えが、本開示主題のいくつかの目的を実施するための他の構造、方法およびシステムを設計するための基礎として容易に活用し得ることを理解する。
【図１】
0006415427.tif 000002
【図２】
0006415427.tif 000003
【図３】
0006415427.tif 000004
【図４】
0006415427.tif 000005
【図５】
0006415427.tif 000006
【図６】
0006415427.tif 000007
【図７】
0006415427.tif 000008
【図８】
0006415427.tif 000009