(57)【要約】【課題】実応用への適用性に優れたエージェント制御方法を提供すること。【解決手段】エージェント制御方法において、複数のエージェントの巡回対象を表す複数のノードで構成されたグラフを取得し（Ｓ１）、前記グラフのサブグラフを規定する状態変数の関数であって前記グラフを分割して得られる複数のサブグラフの各々をアトラクタとして持つ制御関数と、乱数とを用いて前記状態変数の力学系を表す確率微分方程式を定義し（Ｓ３）、少なくとも１つのノードが何れのエージェントによっても巡回されていない時間が長いほど低くなる活性度を計算し（Ｓ６）、前記活性度が大きいほど前記制御関数の重みを大きくした前記確率微分方程式に従って、エージェントごとに前記状態変数を更新し、前記更新後の状態変数で規定されるサブグラフに含まれるノードを対応するエージェントの巡回対象として決定する（Ｓ７）。【選択図】図４
2017010520.tif 000002
【特許請求の範囲】
【請求項１】
複数のエージェントの巡回対象を表す複数のノードで構成されたグラフを取得し、
前記グラフのサブグラフを規定する状態変数の関数であって前記グラフを分割して得られる複数のサブグラフの各々をアトラクタとして持つ制御関数と、乱数とを用いて前記状態変数の力学系を表す確率微分方程式を定義し、
少なくとも１つのノードが何れのエージェントによっても巡回されていない時間が長いほど低くなる活性度を計算し、
前記活性度が大きいほど前記制御関数の重みを大きくした前記確率微分方程式に従って、エージェントごとに前記状態変数を更新し、
前記更新後の状態変数で規定されるサブグラフに含まれるノードを対応するエージェントの巡回対象として決定する、
エージェント制御方法。
【請求項２】
前記制御関数は、前記アトラクタの集合を用いて学習させたＲｅｓｔｒｉｃｔｅｄ  Ｂｏｌｔｚｍａｎｎ  Ｍａｃｈｉｎｅで構成されている、
請求項１に記載のエージェント制御方法。
【請求項３】
前記活性度の計算において、全てのエージェントで共通の前記活性度を計算する、
請求項１に記載のエージェント制御方法。
【請求項４】
前記複数のノードを複数のクラスタにクラスタリングし、クラスタの単位で各エージェントの巡回対象を決定する、
請求項１に記載のエージェント制御方法。
【請求項５】
複数のエージェントの巡回対象を表す複数のノードで構成されたグラフを取得するグラフ取得部と、
前記グラフのサブグラフを規定する状態変数の関数であって前記グラフを分割して得られる複数のサブグラフの各々をアトラクタとして持つ制御関数と、乱数とを用いて前記状態変数の力学系を表す確率微分方程式を定義するゆらぎ方程式設計部と、
少なくとも１つのノードが何れのエージェントによっても巡回されていない時間が長いほど低くなる活性度を、他のエージェントとの通信に基づいて、計算する活性度計算部と、
前記活性度が大きいほど前記制御関数の重みを大きくした前記確率微分方程式に従って、エージェントごとに前記状態変数を更新し、前記更新後の状態変数で規定されるサブグラフに含まれるノードを対応するエージェントの巡回対象として決定する担当領域更新部と、
を備えるエージェント制御装置。
【請求項６】
前記制御関数は、前記アトラクタの集合を用いて学習させたＲｅｓｔｒｉｃｔｅｄ  Ｂｏｌｔｚｍａｎｎ  Ｍａｃｈｉｎｅで構成されている、
請求項５に記載のエージェント制御装置。
【請求項７】
複数のエージェントからなり、前記複数のエージェントの各々が、
請求項５又は６に記載のエージェント制御装置と、
前記エージェント制御装置が決定した担当領域内で前記エージェントを移動させる移動装置と、を有する、
マルチエージェントシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エージェント制御方法、エージェント制御装置、及びマルチエージェントシステムに関し、特にエージェントの分散制御に関するものである。
【背景技術】
【０００２】
マルチエージェント巡回とは、ネットワーク（無向グラフ）で表現された領域と、ノード間を自律移動可能な複数のエージェントが与えられ、それらのエージェントを用いてグラフを効率よく巡回するための方策を問う問題である。既存技術としては、何らかの効用関数・方策関数（現状態を基に次に巡回するノードを決定するため関数）を用い、次に向かうノードを都度決定する手法や、方策関数を強化学習により構築する手法、グラフの分割に基づく静的なタスク割り当て、オークションに基づく動的なタスク割り当てなど、多岐にわたるアプローチが提案されている。ここでのタスクは巡回対象となるネットワークのサブグラフ（トポロジ）を指す。
【０００３】
一方、通信ネットワーク分野において、生物の適応的振る舞いを記述するアトラクタ選択、及びアトラクタ重畳に基づく仮想網制御技術が提案されている（特許文献１参照）。本先行技術は、物理網上に形成された仮想網のトポロジを当該仮想網の環境変化に対して適応制御する仮想網制御方法であり、前記仮想網のトポロジのダイナミクスをゆらぎ方程式と呼ばれる単純な制御則と活性度と呼ばれるわずかな情報を利用して制御する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１１／０９３３９６号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、既存のマルチエージェント巡回の多くは、エージェントの集中管理やエージェント間での比較的複雑な交渉を前提としているため、実応用への適用性（例えば、信頼性、可用性、及び保守性）の点で改善の余地がある。アトラクタ選択及びアトラクタ重畳はそのような改善を行うための潜在的な能力を有している可能性があるが、特許文献１に記載の従来技術は通信ネットワークに関する技術であり、マルチエージェント巡回への適用に関する開示はない。
【０００６】
そこで、本開示は、実応用への適用性に優れたエージェント制御方法、エージェント制御装置、及びマルチエージェントシステムの提供を目的とする。
【課題を解決するための手段】
【０００７】
上記の課題を解決するために、本開示の一態様に係るエージェント制御方法は、複数のエージェントの巡回対象を表す複数のノードで構成されたグラフを取得し、前記グラフのサブグラフを規定する状態変数の関数であって前記グラフを分割して得られる複数のサブグラフの各々をアトラクタとして持つ制御関数と、乱数とを用いて前記状態変数の力学系を表す確率微分方程式を定義し、少なくとも１つのノードが何れのエージェントによっても巡回されていない時間が長いほど低くなる活性度を計算し、前記活性度が大きいほど前記制御関数の重みを大きくした前記確率微分方程式に従って、エージェントごとに前記状態変数を更新し、前記更新後の状態変数で規定されるサブグラフに含まれるノードを対応するエージェントの巡回対象として決定するものである。
【０００８】
なお、これらの全般的または具体的な態様は、システム、方法、集積回路、またはコンピュータプログラムまたはコンピュータ読み取り可能なＣＤ−ＲＯＭなどの記録媒体で実現されてもよく、システム、方法、集積回路、およびコンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。
【発明の効果】
【０００９】
本開示によれば、各エージェントに巡回担当領域が割り当てられていない状態からも、分散的、かつ協調的にノードの漏れがないように担当領域を決定可能である。また、エージェントの故障に対しても、各エージェントが担当領域を変えることにより対応可能である。また数百のノードから構成されるような大規模なグラフにおいても適応可能である。
【００１０】
本開示によれば、全エージェントで共有される活性度を介して協調動作し、エージェント間の複雑な交渉を必要としない。また、活性度の共有は各エージェントのブロードキャスト通信のみで完結する。その際の通信量も小さく、通信の頻度も間欠的であるため、移動ロボットを用いた実応用においては、ＺｉｇＢｅｅなどの省電力無線通信規格を用いた実現が期待できる。
【図面の簡単な説明】
【００１１】
【図１】アトラクタ選択によって駆動される系の挙動を概念的に示す図
【図２】本開示での系の挙動を概念的に示す図
【図３】本開示の実施の形態１に係るエージェント制御装置のブロック図
【図４】本開示の実施の形態１の動作を説明するためのフローチャート
【図５】本開示の実施の形態２に係るエージェント制御装置のブロック図
【図６】本開示の実施の形態２の動作を説明するためのフローチャート
【図７】シナリオ１、シナリオ２でのシミュレーションの条件を示す表
【図８】シミュレーション（シナリオ１）において巡回対象となるグラフを示す図
【図９】シミュレーション（シナリオ２）において巡回対象となるグラフを示す図
【図１０】シミュレーション（シナリオ１）において各エージェントの担当領域の時間遷移を示す図
【図１１】シミュレーション（シナリオ１）において活性度と平均巡回空き時間の時間変化を示す図
【図１２】シミュレーション（シナリオ２）において各エージェントの担当領域の時間遷移を示す図
【図１３】シミュレーション（シナリオ２）において活性度と平均巡回空き時間の時間
【図１４】本開示の実施の形態３に係るエージェントの斜視図
【図１５】本開示の実施の形態３に係るマルチエージェントシステムを示す図
【発明を実施するための形態】
【００１２】
（本発明の基礎となった知見）
［アトラクタ選択］
アトラクタ選択とは、未知の環境変化に対する生物の適応的な振る舞いを記述する数理モデルであり、本モデルで駆動される力学系（以下、単に系と言う）の状態変数ｘは数式１のランジュバン方程式（確率微分方程式）によって支配される。
【００１３】
【数１】
2017010520.tif 000003
【００１４】
アトラクタ選択において数式１はゆらぎ方程式と呼称される。ゆらぎ方程式において、αは活性度と呼ばれる系のコンディションを示す指標である。ｆ（ｘ）はアトラクタを持つ制御関数、ηはノイズであり、それぞれは系の時間発展の決定論的、及び確率的な挙動を記述する。ここでアトラクタとはｆ（ｘ）＝０となる点を指す。α・ｆ（ｘ）＝−ｇｒａｄφとするとき、アトラクタ選択における系の挙動は、ポテンシャルφで定まる場を揺らぐ粒子の振る舞いとして表現できる。
【００１５】
図１を例に系の挙動を説明する。この図では視覚化のため、ｘを一次元としている。（１）活性度が高い場合、粒子はアトラクタ、すなわち−ｇｒａｄφ＝０（ポテンシャルの勾配が零）となる点の付近に束縛され、系は定常状態を維持する。（２）一方、活性度が低くなると、粒子はポテンシャルの束縛から解かれ、ノイズの作用により系の状態は確率的に変化する。（３）確率的な変化の過程で活性度が高くなると、粒子は再度、近傍のアトラクタに束縛され、系は新たな定常状態に遷移する。このように、本モデルで駆動される系は、活性度にもとづいて環境に適した状態を選択する。
【００１６】
特許文献１では本モデルに基づき、輻輳やリンクの故障に頑健な仮想網制御技術を提案している。活性度としては容易に取得可能な情報であるリンク利用率のみを用いることで、環境変化に対する高速な反応と適応を実現している。
【００１７】
［アトラクタ重畳］
アトラクタ選択により駆動する複数の系が同一環境に存在し、それらが相互作用することを考える。このとき、全ての系が同一の活性度を共有することで、各々の系は共通の活性度が高くなるように状態を選択する。すなわち、活性度という媒体を通じて、全ての系が協調的な振る舞いを見せる。この概念をアトラクタ重畳と呼び、特許文献１では、本概念に基づき複数の仮想網を協調的に制御する方法も併せて提案している。
【００１８】
本開示では、アトラクタ重畳の概念を用いて複数のエージェントを協調的に自律分散制御する。前提として、エージェントは自身の状態を他エージェントにブロードキャストできる能力を持つものとする。また、故障等によりエージェントの個体数は変化するものとし、正確な個体数は未知であるとする。
【００１９】
上記知見に基づき、本発明者らは、アトラクタ選択及びアトラクタ重畳を用い、実応用への適用性に優れた新規なエージェント制御方法、エージェント制御方法、及びマルチエージェントシステムを考案した。
【００２０】
以下、本開示の一態様に係るエージェント制御方法、エージェント制御方法、及びマルチエージェントシステムについて、図面を参照しながら具体的に説明する。
【００２１】
なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
【００２２】
（実施の形態１）
［概略］
数式１における状態変数ｘ∈［０，１］Ｎは各エージェントの巡回するノードを示す変数とする。Ｎはグラフの全ノード数である。状態変数の各要素ｘｉ∈ｘはノードｉ∈｛１，２，・・・，Ｎ｝に対応し、エージェントはｘｉ≧０．５となるノードから構成されるサブグラフを巡回する。制御関数ｆ（ｘ）には、巡回領域の複数の候補がアトラクタとして定義されており、あるアトラクタは、対応するサブグラフのノードに対応する要素が１、それ以外の要素が０の二値で構成される。
【００２３】
図２を参照しながら本手法での系の挙動を概説する。図中の曲面はポテンシャルを、粒子が各エージェントの状態（巡回領域）を、ポテンシャルにおけるアトラクタが巡回領域の候補をそれぞれ示している。なお本図では、視覚化のために状態変数を２次元としている。図２（ａ）では、全ノードを漏れなく巡回するように巡回領域が割り当てられている。この場合、活性度は高く、エージェントは定常状態を維持する。一方、図２（ｂ）では、一台のエージェントが動作を停止した状態を示している。この場合、活性度は低下し、エージェントはノイズにより新たな状態の探索を開始する。探索の過程で、全ノードをカバーできる状態を発見すると、活性度は上昇し、図２（ｃ）に示す通り、エージェントは再び定常状態に移行する。
【００２４】
［本実施の形態の構成要素］
図３は本実施の形態に係るエージェント制御装置３０ａの機能的な構成を示すブロック図である。本図においてグラフ取得部３１は巡回対象となるグラフの情報を取得する。担当領域候補作成部３２は、グラフ取得部３１で取得したグラフ構造から巡回担当領域の候補群を作成する。ゆらぎ方程式設計部３３は、担当領域候補作成部３２で作成した担当領域候補群をアトラクタとして持つゆらぎ方程式を設計する。エージェント間通信部３４は、エージェントの現在の担当領域を他エージェントにブロードキャスト通信により通知し、また、他エージェントからの通知を受信する。活性度計算部３５は、自身の担当領域、またはエージェント間通信部３４から取得した他エージェントの担当領域の情報を基に活性度を計算する。担当領域更新部３６は、ゆらぎ方程式設計部３３で設計したゆらぎ方程式と、活性度計算部３５で計算した活性度の値を基に担当領域を更新する。巡回路計算部３７は、担当領域更新部３６で計算した担当領域の巡回路を計算する。エージェント制御部３８は、巡回路計算部３７で計算した巡回路を巡回するようにエージェントを制御する。
【００２５】
エージェント制御装置３０ａは、例えば、図示していないマイクロプロセッサやメモリを有するコンピュータにより構成されてもよい。エージェント制御装置３０ａの構成要素の一部又は全部の機能は、前記マイクロプロセッサが前記メモリにあらかじめ保持されているプログラムを実行することによって達成されてもよい。また、エージェント制御装置３０ａの構成要素の一部又は全部の機能は、専用のハードウェア回路によって達成されてもよい。
【００２６】
［本実施の形態の動作の流れ］
図４は本実施の形態における各エージェントの動作を説明するフローチャートである。まずＳ１において、グラフ取得部３１はエージェントの巡回対象となる領域を表現するグラフを取得する。次にＳ２において、担当領域候補作成部３２は、取得したグラフを基に、担当領域の候補を複数作成する。その後Ｓ３において、ゆらぎ方程式設計部３３は担当領域候補をアトラクタとして持つゆらぎ方程式を設計する。ゆらぎ方程式の設計後、Ｓ４において、エージェントは初期担当領域を決定し、Ｓ５において担当領域に含まれるすべてのノードを訪問する巡回路を算出する。ノードの巡回はエージェント制御部３８によって制御される。全てのノードを巡回した後、Ｓ６において、活性度計算部３５は活性度を計算し、Ｓ７において、担当領域更新部３６は活性度を基に、担当領域を更新する。その際、Ｓ８においてエージェント間通信部３４は最新の担当領域を全エージェントに通知する。Ｓ５からＳ８の処理は繰り返し実行され、エージェントは巡回を継続的に実施する。
【００２７】
［担当領域候補の作成］
Ｓ２における担当領域候補の作成について述べる。本実施の形態では、グラフ分割アルゴリズムにより、グラフをＤ分割したときのサブグラフを巡回領域の候補とし、アトラクタを定義している。ただしＤ∈｛Ｄｍｉｎ，・・・，Ｄｍａｘ｝であり、Ｄｍａｘ、Ｄｍｉｎは最大のエージェント数などに基づき決定する。担当領域候補の作成については、グラフ分割アルゴリズムによるものに限るものではなく、別の方法を用いてもよい。
【００２８】
［ゆらぎ方程式の設計］
特許文献１では、所望のアトラクタを持つ制御関数ｆ（ｘ）を定義するためにＨｏｐｆｉｅｌｄ  ｎｅｔｗｏｒｋを用いている。しかしながら、Ｈｏｐｆｉｅｌｄ  ｎｅｔｗｏｒｋで定義できるアトラクタの数は、状態変数ｘの次元数の１５％程度であり、厳しい制約がある。そこで本発明では、数式２に示すＲｅｓｔｒｉｃｔｅｄ  Ｂｏｌｔｚｍａｎｎ  Ｍａｃｈｉｎｅ（ＲＢＭ）の利用を新規に提案する。
【００２９】
【数２】
2017010520.tif 000004
【００３０】
ζ（ｚ）は数式３に示すシグモイド関数であり、Ｗ、θｈ、θｖはＲＢＭのモデルパラメータである。
【００３１】
【数３】
2017010520.tif 000005
【００３２】
上記モデルパラメータは、所望のアトラクタの集合を学習データとし、Ｃｏｎｔｒａｓｔｉｖｅ  Ｄｉｖｅｒｇｅｎｃｅ法により計算する。ＲＢＭで定義できるアトラクタの数は、隠れ変数の次元数に比例することが知られており、当該次元数を調整することで、任意の数のアトラクタを収容可能な制御関数ｆ（ｘ）を定義することができる。
【００３３】
［担当領域の巡回］
Ｓ５における、担当領域の巡回路は中国人郵便配達問題を解くことで決定する。なお、別のアルゴリズムを用いて巡回路を決定してもよい。
【００３４】
［活性度の計算］
Ｓ６における活性度の計算について説明する。本発明では、活性度をベクトルαとして定義し、要素αｉ∈αをノードｉに対応させる。数式１における第一項（活性度と制御関数の積）は、ベクトルの要素ごとの積とする。各ノードの活性度αｉは、Ｓ８においてエージェントが最後に当該ノードへの巡回を宣言してから現在までの時間ｔｉに基づき、次式で計算する。
【００３５】
【数４】
2017010520.tif 000006
【００３６】
数式４は、ｔｉが閾値ｔｔｈｄを超えると減衰するように定義されている。μは減衰の傾きを決めるパラメータである。このように計算される活性度αは、少なくとも１つのノードが何れのエージェントによっても巡回されていない時間が長いほど低くなる活性度の一例である。
【００３７】
［担当領域の更新］
Ｓ３で設計したゆらぎ方程式を基に、担当領域を決定する。本実施例では、ノイズηｉ∈ηを、それぞれ独立した正規分布に基づく正規乱数としている。ただし、正規分布の平均は１−αｉに比例させることにより、活性度の低いノードを積極的に巡回対象とするようにしている。
【００３８】
複数のエージェント制御装置３０ａが協調して上述の動作を行うことにより、図２で説明した系の挙動に従って、各エージェント制御装置３０ａの担当領域は、全てのノードが漏れなく巡回されるように決定される。
【００３９】
（実施の形態２）
［本実施の形態の構成要素］
図５は本実施の形態に係るエージェント制御装置３０ｂの機能的な構成を示すブロック図である。本図において図３と同様の要素については同じ符号を用い説明を省略する。図５において、次元削減部３９は、担当領域候補作成部３２の結果を基に状態変数の次元削減処理を行う。
【００４０】
エージェント制御装置３０ｂは、例えば、図示していないマイクロプロセッサやメモリを有するコンピュータにより構成されてもよい。エージェント制御装置３０ｂの構成要素の一部又は全部の機能は、前記マイクロプロセッサが前記メモリにあらかじめ保持されているプログラムを実行することによって達成されてもよい。また、エージェント制御装置３０ｂの構成要素の一部又は全部の機能は、専用のハードウェア回路によって達成されてもよい。
【００４１】
［本実施の形態の動作の流れ］
図６は本実施の形態における各エージェントの動作を説明するフローチャートである。
【００４２】
本図において図４と同様の処理ステップについては同じ符号を用い説明を省略する。本フローチャートではＳ２の担当領域候補の作成後に、次元削減部３９において実行される状態変数の次元削減処理Ｓ９が追加されている。Ｓ９の処理について以下に説明する。
【００４３】
［状態変数の次元の削減］
Ｓ９では、Ｂｏｏｌｅａｎ  Ｍａｔｒｉｘ  Ｆａｃｔｏｒｉｚａｔｉｏｎ（ＢＭＦ）を用いて、状態変数の次元を削減し、以降の処理ステップにおける計算コストや通信量を削減する。Ｍを巡回領域の候補数（アトラクタ数）とし、Ｍ行Ｎ列の行列Ｘを考える。Ｘは各要素がｘｊｉ∈｛０，１｝である二値行列であり、ｊ行目の行ベクトルはアトラクタｊである。ＢＭＦにより、Ｘは次式のように、二つの二値行列Ｙ，Ｂの積の形に分解できる。
【００４４】
【数５】
2017010520.tif 000007
【００４５】
上記の操作は、ノードのクラスタリングと解釈できる。ＹはＭ行Ｎ’列、ＢはＮ’行Ｎ列であり、Ｎ’（＜Ｎ）はクラスタ数を示す。Ｂのｉ’行は基底ベクトルであり、あるクラスタｉ’に所属するノードに対応する要素が１となる。一方、Ｙのｊ行は、クラスタリング後のアトラクタｊを示し、巡回領域を構成するクラスタに対応する要素が１となる。ここで、ｘの代わりにＮ’次元の状態変数ｙを新たに用いることができる。各要素ｙｉ’∈ｙはクラスタｉ’∈｛１，２，・・・，Ｎ’｝に対応する。ｙからｘの変換は数式６で計算でき、エージェントはｘｉ≧０．５となるノードから構成されるサブグラフを巡回する。つまり、本実施の形態では、各エージェントの巡回対象はクラスタの単位で決定される。
【００４６】
【数６】
2017010520.tif 000008
【００４７】
制御関数は、Ｙの行ベクトルをアトラクタとして持つｆ（ｙ）を用いる。活性度、ノイズに関しては、実施の形態１の説明において、ノードをクラスタと読み替えて、新規に定義する。この次元削減により、数式２の行列計算やＲＢＭのモデルパラ―メタの決定に要する計算コスト、及び、Ｓ８の担当領域の通知時における通信量を削減することができる。
【００４８】
［シミュレーションによる検証］
本実施の形態を基に、提案手法の動作をイベント駆動シミュレーションにより検証する。本シミュレーションでは、エージェントは単位時間あたり単位距離移動するものとしている。
【００４９】
シナリオ１、シナリオ２でのシミュレーションの条件を図７に示す。また、シナリオ１、シナリオ２で巡回対象となるグラフを図８、図９にそれぞれ示す。図８のグラフは実際の環境を想定したものであり、ノードは２６ｍ×１６ｍの範囲に分布する。図９のグラフはｒａｎｄｏｍ  ｇｅｏｍｅｔｒｉｃ  ｇｒａｐｈであり、１０ｍ×１０ｍの範囲で３００個の点を一様乱数により生成し、二点間のマンハッタン距離が一定値以下のノード対を連結した。クラスタ数Ｎ’は数式５を満足する最小の値を選択し、また、制御関数におけるＲＢＭの隠れ変数の数はアトラクタ数と同数とした。
【００５０】
図１０、図１１にシナリオ１でのシミュレーションの結果を示す。図１０はシミュレーションを行った際の、各エージェントの担当領域の遷移を示す。濃度が互いに異なる灰色で表された領域Ａ１〜Ａ４が、各エージェントの担当領域を示している。また、図１１は活性度（ｍｉｎ−ａｃｔｉｖｉｔｙ）と平均巡回空き時間（ｍｅａｎ  ｉｄｌｅｎｅｓｓ）の時間変化を示す。ただし、活性度はベクトルであるため、ベクトルの要素の最小値をプロットしている。また、平均巡回空き時間とは各ノードが最後に巡回されてから現在までの時間を、全ノードにわたって平均した値である。本シナリオでは、初期（ｔ＝０）の状態として全エージェントの担当領域Ａ１〜Ａ４が完全に重複している状態から開始している（図１０の（ａ））。
【００５１】
図１０の（ｂ）はシミュレーション開始から、一定時間経過後の状態を示しており、全てのノードを各エージェントが分担して巡回するように担当領域を決定していることがわかる。また、本シナリオでは図１０の（ｂ）の状態から一定時間後に、領域Ａ４を担当していたエージェントの動作を停止させている。この環境変化により、図９において、ｔ＝３０００付近で活性度と平均巡回空き時間が不安定な状態になっている。しかしながら、図１０の（ｃ）に示す通り、各エージェントは担当領域Ａ１〜Ａ３を変化させることで環境変化に対して適応し、漏れの無いように全ノードを巡回できていることがわかる。
【００５２】
シナリオ２における担当領域の時間遷移と、活性度・平均巡回空き時間の時間変化を図１２、図１３にそれぞれ示す。本シナリオにおいても、シナリオ１と同様に、担当領域Ｂ１〜Ｂ６が共通の状態から開始し、また、一定時間経過後に領域Ｂ６を担当していたエージェントを１台停止させている。図１２、図１３から、先のシナリオと同様に、各エージェントは自律的に担当領域Ｂ１〜Ｂ５を変化させ、かつ、エージェントの故障に対して適応できていることがわかる。
【００５３】
（実施の形態３）
［本実施の形態の構成要素］
図１４は本実施の形態に係るエージェント１００の構成を模式的に示す斜視図である。エージェント１００は、エージェント制御装置から指定される領域を自律的に移動しながら、一例として、清掃、警備、運搬などの所定のサービスを行う移動ロボットである。エージェント制御装置には、先の実施の形態で説明したエージェント制御装置３０ａ、３０ｂが用いられる。
【００５４】
エージェント１００において、サービス装置１０は、適したセンサ及び機構を有し、清掃、警備、運搬などのサービスを実行する。移動装置２０は、車輪、駆動機構、及び操舵機構を備え、エージェント１００をエージェント制御装置３０ａ、３０ｂのエージェント制御部３８から指定される領域内で移動させる。エージェント制御装置３０ａ、３０ｂは、エージェント１００の担当領域を決定して移動装置２０に指示する。担当領域の決定は、先の実施の形態で説明した処理に従って、エージェント間通信部３４を介した他のエージェント制御装置３０ａ、３０ｂと通信によって行われる。バッテリー４０は、サービス装置１０、移動装置２０、エージェント制御装置３０ａ、３０ｂに動作電力を供給する。
【００５５】
図１５は本実施の形態に係るマルチエージェントシステムを示す図である。本図は施設内を巡回する４台のエージェント１００を示している。本図において、黒枠は壁などの障害物であり、当該障害物によって図８のグラフに対応する実際の巡回対象が形成されている。４台のエージェント１００は、例えば、図１０の（ｂ）に示す担当領域Ａ１〜Ａ４をそれぞれ巡回している。領域Ａ４を担当していたエージェント１００が、例えばメンテナンスや故障のために巡回から離脱しても、残りの３台のエージェント１００は、各々の担当領域を、例えば図１０の（ｃ）に示す担当領域Ａ１〜Ａ３に変化させ、漏れの無いように全ノードを巡回できるようになる。
【００５６】
以上、本発明の実施の形態に係るエージェント制御方法、エージェント制御装置、マルチエージェントシステムについて説明したが、本発明はこれら実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の一つまたは複数の態様の範囲内に含まれてもよい。
【産業上の利用可能性】
【００５７】
本開示は、マルチエージェント巡回におけるエージェント制御方法、エージェント制御装置として、例えば清掃、警備、運搬などの所定のサービスを行うマルチエージェントシステムに広く利用できる。
【符号の説明】
【００５８】
１０  サービス装置
２０  移動装置
３０ａ、３０ｂ  エージェント制御装置
３１  グラフ取得部
３２  担当領域候補作成部
３３  方程式設計部
３４  エージェント間通信部
３５  活性度計算部
３６  担当領域更新部
３７  巡回路計算部
３８  エージェント制御部
３９  次元削減部
４０  バッテリー
１００  エージェント
【図３】
2017010520.tif 000009
【図４】
2017010520.tif 000010
【図５】
2017010520.tif 000011
【図６】
2017010520.tif 000012
【図７】
2017010520.tif 000013
【図８】
2017010520.tif 000014
【図９】
2017010520.tif 000015
【図１１】
2017010520.tif 000016
【図１３】
2017010520.tif 000017
【図１４】
2017010520.tif 000018
【図１５】
2017010520.tif 000019
【図１】
2017010520.tif 000020
【図２】
2017010520.tif 000021
【図１０】
2017010520.tif 000022
【図１２】
2017010520.tif 000023