マルチエージェントシミュレーション方式による 組織構造を有する人間行動モデル構築法
及びその応用に関する研究
Study on Development Method for
Hierarchical Organized Human Behavior Model Based on Multi-Agent Simulation and its Applications
倉本健介
Kensuke Kuramoto
THESIS
Submitted to the Graduate School of Industrial Technology Nihon University
in partial fulfillment of the requirements for the degree of Doctor of Philosophy, 2017
Narashino, Japan
マルチエージェントシミュレーション方式による 組織構造を有する人間行動モデル構築法
及びその応用に関する研究
平成 28 年度
倉本健介
論文要旨
物理現象や社会現象の解明や予測,多様かつ複雑なシステムの設計,開発及び評価,
あるいは防衛及び災害等に対する対応において,シミュレーション技術は重要な役割 を果たしている.
シミュレーションの方式は目的に応じて多岐に渡り,そのうち複数のエージェント の相互作用によってシミュレーションを実施するものをマルチエージェントシミュレー ションと呼ぶ.マルチエージェントシミュレーションは,行動判断ルールを有する個々 のエージェントが他のエージェントや環境と相互に情報のやり取りを行い影響しあう ことで,集合的な現象をボトムアップ的に模擬することが特徴である.
マルチエージェントシミュレーション技術は,交通シミュレーション,避難行動を含 む群衆シミュレーション,大規模病院におけるトリアージシミュレーション及び仮想 市場における交渉シミュレーション等に応用され,多くの成果が得られている.特に 防衛の分野において,マルチエージェントシミュレーション技術は指揮所における指 揮官の意思決定訓練を行うための演習に用いられ,その省力化に貢献し,必要なコス トを大きく減少させることに成功した.また,大規模で複雑なシステムの代表例であ る防衛装備品の評価等においても,将来想定される装備品を仮想空間に登場させ,敵 味方の相互作用を含めてシミュレーションすることにより,その効果を検討すること が行われている.
このような訓練及び装備品評価の用途でシミュレーションの対象となる組織は,防 衛,消防,警察等の階層構造を有する組織となる.ピラミッド型の上意下達の指揮系 統を有し,命令と報告の対象が明確に決められ,組織の各構成員がそれぞれ役割分担 を受け持って行動する組織は官僚型組織と呼ばれ,人間社会には官僚型組織の特徴を 有する組織が数多く存在する.しかしながら,現在までのマルチエージェントシミュ レーションにおいて,エージェントの組織化の研究はエージェントの目的達成の効率 化のために人間やその他の動物の組織を参考としたものが多く,人間組織の模擬を目 的とした事例は多くない.
そのため,エージェントによって構成された官僚型組織に人間のプレイヤーが加わっ
て組織行動を実施するための十分な知見は得られておらず,前述した指揮所演習用シ ミュレーションにおいては,訓練対象の人員以外に,訓練対象者の命令を計算機が模 擬するエージェントに入力するレスポンスセルと呼ばれる多数の人員が今なお要求さ れ,また統裁官と呼ばれる訓練実施者が訓練対象者の上官の役割を受け持ち,状況を 設定する必要がある.また,人間が介在しない装備品評価用シミュレーションにおい ては,複数の階層を有するような大規模組織による装備品の運用状況を模擬すること が困難である.
これらの問題を解決するため,本論文では階層構造を有する組織行動モデル構築技 術について述べる.本論文で提案する組織行動モデルにより,マルチエージェントシ ミュレーションに組織の概念を導入することが可能となる.組織に属する下位のエー ジェントは上位のエージェントに状況を報告し,上位のエージェントは自己の目的の 達成のために下位のエージェントに命令を下し,組織行動によって目的を達成する.
本論文は全8章で構成されており,それぞれの章の内容を以下に示す.第1章では,
本研究の背景について述べる.第2章では,本研究に関連する人間行動を模擬したマ ルチエージェントシミュレーションの先行研究とその成果,また現時点での問題点に ついて述べる.
第3章以降は,以下に示す5つのフェーズで本研究を実施した結果を述べる.
第3章では,本研究で提案する組織モデルと,組織としての行動を模擬するための 方式について検討した.組織行動の効果を確認するため,簡易的な避難シミュレーショ ンを構築することにより,リーダーの存在によってエージェント集団の行動が効率化 することを確認した.
第4章では,本研究で提案するシミュレーションフレームワークのためのプロトタ イプとして,日本の戦国時代における歴史上の戦闘を仮想のパラメーターを利用して シミュレーションするためのソフトウェアを作成し,その実装及びマルチエージェン トシミュレーションのためのフレームワークに必要な機能を確認した.
第5章では,エージェントを組織の一員として行動させるための行動判断アルゴリ
ズムCaSPAを提案した.CaSPAは,エージェントの現在の状況と,与えられた目的
から,現在とるべき行動をプランニングするアルゴリズムである.目的達成に必要な 情報が存在しない場合においてもその状況を不明としたままプランニングが実施でき,
その際は不明な情報を獲得するための行動を含んだプランを生成する.CaSPAの設計 及び計算機上での実験により,不完全情報下においてもプランニングを実施し,目的 が達成可能であることを確認した.
また,エージェントの行動判断ルールを設定するために,GUIとCUIによる操作を 組み合わせ,GUIによる直観的な行動判断ルールの把握と編集を実現しつつ,詳細な
論文要旨 設定が必要な場合にはプログラム言語による記述も可能なユーザーインターフェース を設計した.またその実装を行い,行動判断ルールの構築が効率的に行えることを確 認した.
第6章では,CaSPAを搭載したシミュレーション開発環境FUSEを提案した.FUSE
はマルチエージェントシミュレーションに必要な機能を集合させたライブラリであり,
エージェント及びシミュレーション環境の管理,メッセージによる情報交換,時刻進 行の制御,2D及び3Dによる状況表示が可能である.さらに,複数のCPUコアを搭載 した近年のコンピューターに適応するため,利用するCPUコアの負荷を均等に高める ことで効率よく計算を実行するアルゴリズムを考案し,搭載した.これらの機能を有 するFUSEを実際のコンピュータプログラムとして実装することで,6章までに提案し た技術の実用性を確認した.
第7章では,FUSEによって構築された大規模シミュレーションの機能及び性能を評 価することにより,本研究の有効性を示した.
第8章は,全体のまとめと今後の課題について述べる.
以上,本研究で提案した組織行動モデルにより,複数階層によって構成される組織 を模擬可能であることが確認され,また命令及び報告の処理をメッセージによって規 格化することにより,エージェントで構成された組織に部分的に人間が介在すること が可能であることが示された.また,シミュレーション開発環境FUSEを開発するこ とにより,組織行動モデルを応用したシミュレーションシステムを効率的に設計及び 開発できる基盤が確立された.これらの成果により,今後の訓練用シミュレーション,
評価用シミュレーション,あるいは災害対処シミュレーション等において組織行動モ デルを導入するための技術的解明がなされた.
目 次
第1章 序論 1
1.1 本研究の背景 . . . . 1
1.2 本研究の目的 . . . . 3
1.3 本論文の構成 . . . . 6
第2章 関連研究 8 2.1 序言 . . . . 8
2.2 マルチエージェントシミュレーション . . . . 8
2.2.1 計算機シミュレーションにおけるMASの位置づけ . . . . 9
2.2.2 MASにおける粒度とフィデリティ . . . . 10
2.3 人間行動モデル . . . . 11
2.3.1 群衆シミュレーション . . . . 12
2.3.2 エージェント間の関係と情報交換 . . . . 13
2.3.3 行動判断機構 . . . . 14
2.4 MASの応用事例 . . . . 15
2.5 MASのためのフレームワーク . . . . 16
2.5.1 ライブラリ型フレームワーク . . . . 17
2.5.2 アプリケーション型フレームワーク . . . . 18
2.5.3 本研究におけるフレームワーク型の選択 . . . . 18
2.6 必要とされる研究要素 . . . . 19
2.7 結言 . . . . 20
2.A 付録:主なMASフレームワーク一覧 . . . . 21
第3章 組織構造のモデル化とその基礎的評価 23 3.1 序言 . . . . 23
3.2 官僚制システム . . . . 23
目 次
3.2.1 官僚制システムの概要 . . . . 23
3.2.2 官僚制システムのモデル化 . . . . 24
3.3 基礎的評価 . . . . 25
3.3.1 評価プログラムの設計 . . . . 26
3.3.2 評価実験 . . . . 29
3.3.3 評価結果 . . . . 31
3.4 結言 . . . . 32
第4章 組織戦闘再現のためのシミュレーションフレームワーク 33 4.1 序言 . . . . 33
4.2 歴史シミュレーション . . . . 33
4.3 戦国戦闘シミュレーション . . . . 34
4.3.1 戦国戦闘シミュレーションの概要 . . . . 34
4.3.2 想定する状況 . . . . 34
4.4 戦国戦闘シミュレーションの主要機能 . . . . 36
4.4.1 必要な機能の検討 . . . . 36
4.4.2 エージェント管理 . . . . 36
4.4.3 エージェントの行動判断 . . . . 37
4.4.4 環境モデル . . . . 38
4.4.5 状況表示及びユーザーインターフェース . . . . 39
4.4.6 シミュレーション編集機能 . . . . 39
4.5 戦国戦闘シミュレーションによるシナリオの実行及び結果 . . . . 40
4.5.1 シナリオの想定と初期配置 . . . . 40
4.5.2 戦闘経過及びシミュレーション結果 . . . . 41
4.6 課題 . . . . 42
4.7 結言 . . . . 43
第5章 エージェントの行動判断のための連鎖的部分目的生成アルゴリズム 44 5.1 序言 . . . . 44
5.2 目的を達成するためのプランニング . . . . 45
5.3 CaSPAのタスク構造及び記述方法. . . . 45
5.4 CaSPAによるプランニング手順 . . . . 46
5.5 組織行動への応用 . . . . 47
5.6 計算機への実装 . . . . 49
5.6.1 Java言語による実装 . . . . 49
5.6.2 スクリプト言語による記述機能の実装 . . . . 49
5.6.3 CaSPA要素の部品化と再利用性 . . . . 53
5.7 CaSPAによる問題解決の例 . . . . 54
5.7.1 単独エージェントによるゴール到達ゲーム . . . . 54
5.7.2 チームによる協調作業の再現(1) . . . . 56
5.7.3 チームによる協調作業の再現(2) . . . . 57
5.8 行動判断ルール入力方式 . . . . 59
5.9 開発方針 . . . . 60
5.10 ユーザーインターフェースの設計 . . . . 61
5.10.1 メインパネル . . . . 61
5.10.2 ツールパレット . . . . 61
5.10.3 コードエディター . . . . 62
5.11 本プログラムによるルール設計の手順 . . . . 62
5.11.1 タスクの登録 . . . . 63
5.11.2 条件及びアクションの設定 . . . . 63
5.11.3 タスク名とタスククラスの関係の設定 . . . . 64
5.11.4 保存 . . . . 65
5.12 構文解析機構 . . . . 66
5.12.1 動的ルール登録型パーサー . . . . 67
5.12.2 構文ファンクション . . . . 69
5.12.3 動的言語におけるエラー判定及び入力補助 . . . . 69
5.13 結言 . . . . 76
5.A 付録:Hello Worldをパースするためのパーサーコード . . . . 77
第6章 マルチエージェントシミュレーション構築用フレームワークの開発 80 6.1 序言 . . . . 80
6.2 FUSEの特徴 . . . . 81
6.2.1 FUSEの構造 . . . . 81
6.2.2 研究用MASフレームワークとしての要求 . . . . 81
6.3 FUSEの機能 . . . . 82
6.3.1 バーチャルオブジェクト管理機能 . . . . 82
6.3.2 環境管理機能 . . . . 83
6.3.3 状況表示機能 . . . . 83
目 次
6.3.4 プラグイン追加機能 . . . . 85
6.3.5 セーブ及びリストア機能 . . . . 85
6.3.6 事後再生機能 . . . . 85
6.3.7 CaSPAによる行動判断ルール . . . . 86
6.4 高い実行効率の実現 . . . . 86
6.4.1 負荷分散の均等化 . . . . 86
6.4.2 ジョブ負荷の推定方法 . . . . 88
6.5 ジョブのクラスター化に関する検討 . . . . 89
6.5.1 テストプログラムによる実験 . . . . 92
6.5.2 多数のエージェントが登場するMASによる実験 . . . . 95
6.6 結言 . . . . 97
第7章 訓練用大規模シミュレーションへの応用 99 7.1 序言 . . . . 99
7.2 大規模シミュレーション . . . . 99
7.2.1 登場エージェント . . . 101
7.2.2 エージェントによる組織行動 . . . 101
7.3 性能評価実験 . . . 102
7.3.1 実験方法 . . . 102
7.3.2 結果及び考察 . . . 102
7.4 指揮能力向上評価実験 . . . 103
7.4.1 指揮能力評価システム . . . 104
7.4.2 訓練モード . . . 104
7.4.3 実験方法 . . . 105
7.4.4 結果及び考察 . . . 107
7.5 結言 . . . 109
第8章 結論 111 8.1 成果 . . . 111
8.2 今後の課題 . . . 112
図 目 次
1.1 本論文の構成 . . . . 7
2.1 既存の主なMASフレームワークの特徴 . . . . 19
2.2 主なMASフレームワーク一覧(1/2) . . . . 21
2.3 主なMASフレームワーク一覧(2/2) . . . . 22
3.1 官僚制システムのモデル化 . . . . 25
3.2 設定した環境 . . . . 26
3.3 シミュレーションの状況(左)とリーダーの認識(右) . . . . 27
3.4 エージェントの周囲のメッシュセルの混雑度 . . . . 28
3.5 リーダー及び部下の行動のフローチャート . . . . 29
3.6 実験環境 . . . . 30
4.1 戦国戦闘シミュレーションの画面 . . . . 35
4.2 シミュレーション初期の初期の武田軍の動作 . . . . 41
4.3 岐阜城攻撃後の織田軍の動作 . . . . 42
4.4 転進後の織田軍の動作 . . . . 42
5.1 タスクの構造 . . . . 46
5.2 Javaによる記述例 . . . . 46
5.3 タスクグラフの例 . . . . 49
5.4 組織行動への応用 . . . . 50
5.5 スクリプトインターフェース利用時の構成 . . . . 51
5.6 スクリプトによるルール定義の疑似コード . . . . 52
5.7 CaSPAテストケースの概観 . . . . 54
5.8 CaSPAによるゲームの推移 . . . . 56
5.9 脱出ゲーム(2):協調が必要な場合 . . . . 57
5.10 ゲームの推移(1) . . . . 58
図 目 次
5.11 脱出ゲーム(3):より複雑な環境 . . . . 58
5.12 ゲームの推移(2) . . . . 59
5.13 本プログラムの画面構成 . . . . 62
5.14 言語選択画面 . . . . 63
5.15 初期画面 . . . . 64
5.16 タスク登録 . . . . 65
5.17 スケルトンコード . . . . 66
5.18 タスク名とタスククラスの関係 . . . . 67
5.19 DRRPにおける型名及び文字列の定義 . . . . 68
5.20 一般的なHello Worldのソースコード . . . . 69
5.21 Hello Worldの構文木 . . . . 70
5.22 Hello Worldを解析するためのルールの記述 . . . . 71
5.23 ルール変更による構文木の変化 . . . . 72
5.24 動的型付けの特徴 . . . . 72
5.25 単純なケースによる型推定 . . . . 73
5.26 単純なケースによる型推定2 . . . . 74
5.27 メソッドの返り値による型推定 . . . . 75
5.28 変数型が複数の型を持つようになる場合 . . . . 75
5.29 Hello Worldに対するパーサーコード(1/3) . . . . 77
5.30 Hello Worldに対するパーサーコード(2/3) . . . . 78
5.31 Hello Worldに対するパーサーコード(3/3) . . . . 79
6.1 FUSEの構造の概要. . . . 82
6.2 状況表示の流れ . . . . 84
6.3 負荷分散技術の分類 . . . . 87
6.4 基本的なジョブ分配の例 . . . . 88
6.5 効率的なジョブ分配の例 . . . . 89
6.6 ソートを利用したジョブ分配の例 . . . . 90
6.7 クラスター化したジョブ分配の例 . . . . 91
6.8 初期レシオの決定方法 . . . . 92
6.9 指数分布によるエージェントのジョブ負荷の分布 . . . . 93
6.10 実験結果(1/3) . . . . 94
6.11 実験結果(2/3) . . . . 95
6.12 シミュレーションのスクリーンショット(1/2) . . . . 96
6.13 シミュレーションのスクリーンショット(2/2) . . . . 96
6.14 実験結果(3/3) . . . . 98
6.15 既存の主なMASフレームワークとFUSEの特徴. . . . 98
7.1 訓練モードの画面 . . . 100
7.2 性能評価実験結果 . . . 103
7.3 指揮能力評価実験のスケジュール . . . 104
7.4 指揮能力評価システム . . . 105
7.5 指揮能力評価実験の構成 . . . 106
7.6 訓練モードの画面 . . . 107
7.7 Alphaの戦略の変化. . . 109
7.8 Bravoの戦略の変化 . . . 110
表 目 次
3.1 実験条件 . . . . 31
3.2 実験結果 . . . . 31
4.1 作戦 . . . . 39
5.1 プランニングの手順 . . . . 48
5.2 CaSPA動作確認用ルール . . . . 55
6.1 実験に利用した計算機 . . . . 92
6.2 シミュレーションに登場するエージェント . . . . 97
7.1 消防エージェントの主要なアクション一覧 . . . 102
7.2 実験に利用した計算機 . . . 103
7.3 訓練群と対照群の得点及び向上(司令部モード) . . . 108
7.4 訓練群と対照群の得点及び向上(リーダーモード) . . . 108
7.5 Alpha及びBravoのスコア及び向上(司令部モード) . . . 109
Study on Development Method for
Hierarchical Organized Human Behavior Model Based on Multi-Agent Simulation and its Applications
Kensuke Kuramoto
Simulation technology plays important roles in many applications. The examples are analysis or predictions of physical and social phenomenon, design, develop and evalu- ation for complex systems such as defense or disaster evacuation support systems.
There are number of methods of simulation to achieve each of its objectives. One of the most important types is a multi-agent simulation, and it simulates behavior of entities in a real world as agents and interaction among them. A characteristic of multi-agent simulation is that it is a bottom up approach to simulate congregative phenomenon by using interaction among environment and each agents they have their own behavior decision rule.
Traffic simulation, mass crowd simulation including evacuation, triage simulation in a large hospital and negotiation simulation in virtual markets are typical fields of multi-agent simulation, and there are many studies. Especially, in the field of defense, multi-agent simulation technology is used for trainings of Command Post eXercise (CPX) to reduce the workloads and costs. Moreover, multi-agent simulation is used for evaluation of the effectiveness of future defense equipment, which is one of ideal example of large scale and complex system, by discussing the result of simulation of virtual equipment and their interaction in virtual world.
The organizations with hierarchical structure that the thesis focuses for training and evaluation simulation are defense, firefighting and police. Such organizations have pyramid shaped commanding system, and orders and reports are exchanged be- tween members depending on their clearly defined rolls. Such organizations are called bureaucracy-type, and there are many such types in human society. Although there are multi-agent simulations that refer to human organizations as agents behavior, there objectives are to solve their problems, but not simulating the agents of composing the organization.
Therefore, there is not enough knowledge to execute bureaucracy-type organization by simulating behavior of agents, and with human players. As we have previously mentioned, CPX simulations are used for commander’s training, but such simulations require number of response-cells that are staff who relay trainee’s decisions by input to computers. Furthermore, these simulations also need a judgement officer who defines
the situation of the training and acts as the superior officer of the trainee. Besides such a training purpose, it is difficult to simulate the operation that treats much of equipment handled by large organization including multiple layers.
In order to solve the above problems, this thesis describes the technology of organiza- tion behavior model with layered structure. The model makes multi-agent simulation enable to include a conception of organization. Organization’s lower class agents report their situation to upper class agent and an upper class agent sends command to lower class agents to achieve its objective. As a result, an organization achieves the whole objective by organization behavior.
This thesis consists of eight chapters. Chapter 1 describes the background of this thesis. Chapter 2 describes the previous studies of multi-agent simulations that related to the thesis and the outcomes and current problems of the studies.
In the following 5 chapters, the thesis describes the processes and results.
Chapter 3 describes the investigation of the organization model and the method to simulate agents’ behavior as organization. The author developed a simple evacuation simulation for disclosing the effect of organization then confirmed the optimization of evacuation by the existence of leader agent.
Chapter 4 describes development of the software as proto-type simulation framework that simulates historical battle field of Japan’s Sengoku era under the support of a history researcher. The author designed and implemented the program, then discussed and confirmed the functions that required by a multi-agent framework.
Chapter 5 describes the proposal of CaSPA that is the algorithm of decision making.
CaSPA is an algorithm that plans agent’s appropriate actions by given objective and current situation. CaSPA can make plan even if there is not complete information to achieve objective initially. In this case, CaSPA makes plan that includes actions to acquire information. The author designed and implemented CaSPA and confirmed the algorithm has ability to plan without complete information and achieve its objective.
Chapter 6 describes FUSE that is a development and runtime environment for multi- agent simulation integrated with CaSPA. FUSE is a library that gathered the functions required developing multi-agent simulations and it has functions of agents and environ- ment management, information exchange by messages, logical time management and 2D/3D visualization. Moreover, the author invented an algorithm to compute more efficient by equalize each workload of CPU cores. The thesis confirms practicability of the methods proposed until chapter 6 by implementing FUSE as actual computer
Chapter 7 describes the effectiveness of this study by evaluating the functions and performance of large scale simulation built by FUSE.
Chapter 8 describes conclusion and future issues.
As stated above, it was confirmed that organizations consist of multi layers can be simulated by organization behavior model that proposed by the thesis. Moreover, it became certain that human operators can play roles as a part of virtual organization by standardizing processing messages of command and report. In addition, the base method to design and develop simulation that applied organization behavior model efficiently was established.
These results have clarified the technological method to introduce organization model to simulations for training, evaluation and anti-disaster.
第 1 章 序論
1.1 本研究の背景
モデリング&シミュレーション(M&S)技術は,コンピュータの性能向上と多様なビッ グデータ利用技術の発展とともに,物理現象や社会現象の解明や予測,多様かつ複雑 なシステムの設計,開発及び評価,あるいは防衛及び災害等に対する予測や対処法の 検討等に用いられ,その効用にはこれまで以上に期待が高まっている.近年では様々 な工業製品の開発,土木及び建築,あるいは医療の分野で,応力計算,流体解析,回 路設計,手術訓練等,多くの分野でM&S技術が用いられている.これらのシミュレー ションは,実際の実験が時間的な問題,安全上の問題,あるいはコスト的な問題によっ て困難または不可能な場合において非常に有用である.
シミュレーションの模擬対象を自律的に行動する主体として扱うのが,マルチエー ジェントシミュレーション(MAS)である.MASは,社会・組織・個人をエージェント として捉え,それらの競争・競合・協調等の相互作用をモデル化し,コンピュータ上で の再現によって創発現象等を観測して問題解決をするための有効な手段であり,エー ジェントベースシミュレーション(ABS)とも呼ばれる.MASの応用分野例としては,
災害対処[1, 2],避難[3–7],交通 [8–10],病院における医療活動 [11, 12],防衛[13–18]
等があり,エージェントの学習による創発性に着目したものも存在する [19].
M&Sを実施する上で重要な点は,目的に応じて適切なモデルの粒度とフィデリティ
を考慮しなければならない点である [7, 20].一例として,渋滞の再現を目的とした交 通シミュレーションを考えると,個々の車両の振舞いを模擬して渋滞の発生を観測す るミクロシミュレーション法と,単位時間あたりに交差点を通過する車両の台数を統 計的に取り扱うマクロシミュレーション法がある.いずれの方法でも同じように渋滞 を再現できるが,ドライブシミュレータと連携させて渋滞に巻き込まれた運転手がど
1.
のように振舞えば渋滞が変化するかを評価する場合には,ミクロシミュレーションの 方が有効である.
同様に,流体のシミュレーションにも分子動力学法により分子レベルで流体を扱う シミュレーション法から,粒子法(MPS)や格子ボルツマン法まで,目的に応じて様々 な粒度でのシミュレーション法を利用することが重要である.
MASにおいても,実世界における個々の人間等をエージェントとしてモデル化する 方法と,実世界における人間の集合を抽象化したエージェントとしてモデル化する方 法等があり,上述したミクロな交通シミュレーションはMASの代表的な応用例である.
訓練用のシミュレーション等で,人間が介入するHILS(Human in the Loop Simulation) においても,多数のエージェントが登場する場合はMASによる方法が取られることが 多い.
本研究で対象とするシミュレーションは,粒度としては人間1名から数十名のグルー プを1エージェントとして扱い,フィデリティとしては,エージェントは座標や大きさ を有するものの,物理現象の詳細なシミュレーションまでは行わないものとする.
MASにおけるエージェントは,従来は互いに独立して行動し,他のエージェントと の情報交換は自分の行動方針を決定するために用いられていた.しかしながら,防衛,
消防,警察等の組織に属する人間をエージェントとして模擬する場合には,単体とし て行動するだけでは不十分であり,組織の一員としての行動を模擬する必要がある.
エージェント間の協調または競争行動に関する研究は多く存在するが,それらの多 くは目的達成の効率化,あるいは得られる結果の最適化を主眼としており,エージェ ントは高度に抽象化されている場合が多く,必ずしも人間組織を模擬することを目的 としてはいない [21, 22].
一方,例えば防衛及び消防等の組織に導入するための装備品の効果等をシミュレー ションにより評価する場合等,組織に属する人間を模擬する状況においては,人間組 織の構造に基づく人間行動モデルが重要となる.しかし,人間が介在しない装備品評 価用シミュレーションにおいては,組織構造の概念なしには複数の階層を有するよう な大規模組織による装備品の運用状況を模擬することが困難である.
また,近年防衛組織等で多く利用されているコンピューターを用いたCPX(Command
Post eXercise:指揮所演習)においては,シミュレーションの導入によって演習に必要
な人数と時間を大きく削減することに成功したが,CPXにはレスポンスセルと呼ばれ る,エージェントを操作するための人員が今なお多数必要であり,さらに統裁官と呼 ばれる訓練実施者が訓練対象者の上官の役割を受け持ち,状況を設定する必要がある.
エージェントが組織構造に基づき上司に報告を送り,上司の命令を実行し,部下を 指揮する人間行動モデルを実現することは,これらのシミュレーションにおいて大き
1.2 本研究の目的 な利便性の向上が期待できる.特に,エージェントが部下に対して目的を設定できる ことは,人間である訓練者に対して上位のプレイヤーをエージェントによって模擬す ることが可能となる.
組織に属する人間を模擬する場合,エージェントは組織としての目的を達成するた めに,自分及び下位のエージェントの行動を決定しなければならない.その場合,自 己が直接的に認識している状況のみならず,上位からの命令,下位からの報告に基づ いて判断を下す必要がある.
組織構造に基づく行動は人間集団の行動原理として重要なものであるが,エージェ ントの協調行動として人間組織を模擬するための研究は少なく,人間組織の模擬方法 について定まった方法論はまだ存在しない.また,そのような組織構造を有するエー ジェントは,組織としての最終的な目的の他に,それを達成するために自己あるいは 下位のエージェントによって達成すべき複数の部分目的を有することになり,優先順 位を設定しつつそれらを達成していく必要がある.
そのため,組織行動に適した行動判断ルールの定義方法と,ルールから適切に現在 の行動を決定するための解釈機構が必要である.
更に,MASを利用した計算機上での実験を行う場合,シミュレーション条件の設定,
実験,結果の解析が一連の流れとなり,解析結果をフィードバックする形でこの手順 を繰り返すことが普通である.また,前述したように人間組織が活動する分野は多岐 に渡り,利用したい結果も一様ではないため,それらに対応するためのMASは多種多 様な形態を取ることが予想される.しかしながら,それらのMASを一から作り上げる ことは効率的ではなく,共通して必要な機能を抽出した,使いやすいフレームワーク が必要となる.
MASフレームワークを基盤ソフトウェアとして幅広く利活用するためには,様々な OS環境で利用可能であり,近年のマルチコアCPUを利用した効率的な実行が可能で あり,またシミュレーション結果を確認するための分かりやすい可視化機能を有する 必要がある.
1.2 本研究の目的
前節で記述したように,指揮官の意思決定訓練,組織に適した戦略の導出,あるい は組織によって運用される装備品の評価等,M&Sにおいて人間組織を前提にしなけれ ばならない課題は多い.現在は状況を限定することで複雑な組織的な行動を回避する か,あるいは人間がエージェントを操作することによってその問題を解決しているが,
人間組織をモデル化し,エージェントに組織に基づく人間行動を取らせることができ
1.
れば,より現実に近い状況を再現することができ,あるいはより効率的に訓練を行う ことが可能となる.本研究の目的は,組織に基づく人間行動をマルチエージェントシ ミュレーション上で実現するための技術を確立することである.
そのために必要な要素として,人間組織をモデル化し,組織に所属するエージェン トに構成員としての行動を取らせるための,組織に基づく人間行動モデルが必要とな る.加えて,エージェントが自分の情報に上司及び部下から得た情報を組み合わせ,組 織としての目的を達成するためのプランを構築し,それを実行する方式を確立する必 要がある.更に,それに適した行動判断ルールの定義方法を定めなくてはならない.
また,現実世界の問題解決のためにMASを適用するためには,様々な用途で使用す るためのMASを容易に構築できることが重要である.
そのため,本研究では以下の3つの目的を設定した.
目的
1.人間組織のモデル化及び人間行動モデルの実現
人間組織を計算機上で模擬するためには,組織構造をモデル化する必要がある.報 告すべき対象である上司と,指揮すべき対象である部下の関係を基本として,階層構 造を有する組織は官僚制システムと呼ばれ [23],多くの人間組織が官僚制システムを 採用している.官僚制システムにおいては,組織としての目的を達成するため,構成 員には役割が与えられ,その役割を達成するために行動する.
本研究では,官僚制システムに属する組織構造と,組織に属する構成員をモデル化 し,組織構造を有するエージェントの人間行動モデルを設計し,実際に計算機シミュ レーションとして実装して評価を行い,組織行動に基づく効率的な動作を行えること を確認する.
また,本研究による人間行動モデルを指揮官意思決定訓練へ応用した場合の効果を 確認するため,本研究で実現した人間行動モデルを導入した意思決定訓練用シミュレー ションを試作し,意思決定能力の向上を確認する.
目的
2.組織行動に適用可能な行動判断アルゴリズムの実現
MASにおいて,エージェントは自己の目的を達成するために,アクションを実行す ることによって環境に影響を与える.
エージェントが組織構造に基づく行動判断を実施する場合,エージェントは自分が 直接的に認識している情報以外に,上位者からの命令,下位者からの報告に基づいて 判断を下す必要がある.このような場合,従来用いられているようなIF-THENルール
1.2 本研究の目的 や状態遷移を用いた行動判断ルールを利用すると,場合の数や状態の数が膨大になり,
ルールの設計が困難となる.
よって,エージェントが考慮しなければならない状況が複雑になった場合について も,自分に可能なアクションを組み合わせ,目的を達成するためのプランニングを実 行できる必要がある.また,それに適した行動判断ルールの定義方法が必要となる.
本研究では,組織行動を実現するためにエージェントが有するべき行動判断ルール のアルゴリズムとして,連鎖的部分目的生成アルゴリズムCaSPAを提案する.本論文
では,CaSPAを設計し,実際に計算機上に実装し,その問題解決能力に関して評価を
行い,部分目的の組み合わせによる目的達成が実現することを確認する.
目的
3.大規模組織の
M&Sのための開発及び実行環境の構築
効率的なMASの開発においては,共通に利用される機能をライブラリ化したフレー ムワークが必要となる.実際に,MASのためのフレームワークが開発されている.フ レームワークに求められる条件としては,エージェント及び環境を管理し,状況表示 を行う機能が最低限必要となる.また,汎用性を高めるために,利用する機能を取捨 選択できることが望ましい.
米国のアルゴンヌ国立研究所ではRepast及びRepast Symphony [24]が開発されて おり,日本では(株)構造計画研究所によってartisoc [25]が開発されている.また,米 国海軍大学院ではゲームの技術を応用した訓練用シミュレーション作成用のフレーム ワークであるDelta3D [26]が開発されている.また,Santa Fe InstituteでSwarmが開 発され,現在では非営利のSwarm Development Groupによってメンテナンスが行われ
ている [27].国内でも国際的な政治経済のシミュレーションを実施するためのフレー
ムワークとしてGPGSiMが開発された [28].Repast Symphonyやartisocも統合的な 開発環境であり,効率的にMASを構築することができる.
その一方で,エージェントの行動判断モデルについては,Repastがサポートしてい るのは単純なIF-THENルールであり,artisocは行動判断ルールに関してアルゴリズ ム等は提供されておらず,スクリプトによって自分で作成する必要がある.Delta3Dに 関しては汎用的なMASと言うよりは訓練用シミュレーションを開発するためのフレー ムワークに特化しており,3DCGの表示エンジンを中心としたゲーム開発環境に近い 枠組みであるため,他の用途への応用には大きな労力が必要と考えらえる.また,これ らはいずれもそれ自体で完結した環境であり,部分的に機能を利用することは難しい.
本研究では,組織行動に基づくMASを効率的に構築するため,必要な機能を有し,
かつ利用の容易な開発環境としてFUSE(Furu-lab Unified Simulation Environment)を
1.
設計した.本論文ではFUSEの機能性能について評価を行い,実用規模のシミュレー ションに対応できる機能性能を有することを確認する.
1.3 本論文の構成
本論文の構成を,図1.1に示す各章の関連図とともに以下に示す.第2章では,本研 究に関連する人間行動を模擬したマルチエージェントシミュレーションの先行研究と その成果,また現時点での問題点について述べる.
第3章以降は,以下に示す5つのフェーズで本研究を実施した結果を述べる.
第3章では,本研究で提案する組織モデルと,組織としての行動を模擬するための 方式について検討する.組織行動の効果を確認するため,簡易的な避難シミュレーショ ンを構築することにより,リーダーの存在によってエージェント集団の行動が効率化 することを確認した.
第4章では,組織的な戦闘を実現するために試作したシミュレーションフレームワー クに関して,その設計及び実装について述べる.
第5章では,エージェントを組織の一員として行動させるための行動判断アルゴリ
ズムCaSPAを提案する.CaSPAは,エージェントの現在の状況と,与えられた目的
から,現在とるべき行動をプランニングするアルゴリズムである.目的達成に必要な 情報が存在しない場合においてもその状況を不明としたままプランニングが実施でき,
その際は不明な情報を獲得するための行動を含んだプランを生成する.CaSPAの設計 及び計算機上での実験により,不完全情報下においてもプランニングを実施し,目的 が達成可能であることを確認した.またGUIを利用した行動判断ルールの入力方法の 検討及びその実装例についても併せて記す.
第6章では,CaSPAを搭載したシミュレーション開発環境FUSEを提案する.FUSE
はマルチエージェントシミュレーションに必要な機能を集合させたライブラリであり,
エージェント及びシミュレーション環境の管理,メッセージによる情報交換,時刻進 行の制御,2D及び3Dによる状況表示が可能である.FUSEを実際のコンピュータプ ログラムとして実装することで,5章までに提案した技術の実用性を確認した.
第7章では,FUSEによって構築された大規模シミュレーションの機能及び性能を評 価することにより,本研究の有効性を示す.
第8章では,本論文の結論として本研究全体の成果及び今後の課題を示す.
1.3 本論文の構成
➨ϭ❶ ᗎㄽ
➨Ϯ❶ 㛵㐃◊✲
➨ϯ❶
⤌⧊ᵓ㐀䛾䝰䝕䝹䛸 䛭䛾ᇶ♏ⓗホ౯
➨ϱ❶
䜶䞊䝆䜵䞁䝖䛾⾜ືุ᩿䛾 䛯䜑䛾㐃㙐ⓗ㒊ศ┠ⓗ⏕
ᡂ䜰䝹䝂䝸䝈䝮
➨ϲ❶
䝬䝹䝏䜶䞊䝆䜵䞁䝖䝅䝭䝳䝺䞊䝅䝵䞁 ᵓ⠏⏝䝣䝺䞊䝮䝽䞊䜽䛾㛤Ⓨ
➨ϳ❶
カ⦎⏝つᶍ䝅䝭䝳䝺䞊䝅䝵䞁䜈 䛾ᛂ⏝
➨ϴ❶
⤖ㄽ
➨ϰ❶
⤌⧊ᡓ㜚⌧䛾䛯䜑䛾 䝅䝭䝳䝺䞊䝅䝵䞁
䝣䝺䞊䝮䝽䞊䜽
図 1.1: 本論文の構成
第 2 章 関連研究
2.1 序言
本章では,本研究の背景となる関連研究について述べる.まず,本研究テーマの中核 技術であるマルチエージェントシミュレーション(MAS)に関して述べた後,人間を模擬 するMASにおける行動モデルについて,群衆シミュレーションに関するものと,エー ジェント間に人間関係及び情報交換を取り入れたものについて述べる.続いて,MAS の応用例について述べ,MASを実現するためのフレームワークに関して述べる.
2.2 マルチエージェントシミュレーション
マルチエージェントシミュレーションとは,シミュレーションの対象とする世界にお ける個々の実行主体をエージェントとし,エージェントの行動ルールと相互作用をモ デルとして記述するものである [29].計算機上に環境とエージェントを構築し,環境 または他のエージェントとの間で行動ルールに基づく相互作用を行わせることによっ て得られるアウトプットから,現実世界に応用可能な知見を得ることがその主たる目 的となる.
MASの研究はその他の研究分野と密接に関連しており,特に人工知能とは深く関係 している.また,多数のエージェントを対象とするため高速性が要求されるため,並 列・分散処理とも関係が深い.
2.2 マルチエージェントシミュレーション
2.2.1
計算機シミュレーションにおける
MASの位置づけ
計算機シミュレーションの代表的な応用分野として,訓練用シミュレーションが挙 げられる.訓練用シミュレーションの概念は,電子計算機の開発以前に遡る.Edwin
Linkは1930年代にLink Trainerと呼ばれる機械式のフライトシミュレーターを作成し
た [30, 31].これは地上に設置されたシミュレーターであり,操縦者に計器飛行の訓練
を行うためのものであった.Link Trainerはオルガンの原理を応用した空気圧による駆 動機構を有しており,操縦者の操作に応じて機体を傾けることができた.
初期の電子計算機の開発において,物理シミュレーションは暗号解読と並んで主要 な動機の一つであった.最初期の電子計算機の一つであるENIAC [32]は射表を作成 するための弾道計算を目的として開発された.しかし,完成が終戦後となったために 当初の目的のための弾道計算を行うことはなかった.計算機の能力が向上するととも にシミュレーションの対象も広がり,天文学における銀河の衝突 [33]や広域の気象予 測 [34],航空機開発のための流体力学 [35]等もシミュレーションの対象となり,High
Performance Computing(HPC)の進展とともに成果が蓄積されてきた.これらの特徴
は,対象が物理現象であることから,定型的な処理を基本としている.
一方,交通,防衛,災害対処,経営等の,構成要素として人間が存在するシステムを 対象としたシミュレーションに対するニーズも大きく,人間同士の相互作用等,従来の 計算機シミュレーションの手法では解明の難しい問題の存在が明らかになってきた.自 律的に動作するエージェントの相互作用によって現実世界の課題を分析するMASは,
そのような問題に対応するのに適していた.
MASの原型となるエージェントベースの源流は,1940年代のVon Neumannによる 自己増殖オートマトンにまで遡ることができる[36].Neumannの最終的な目的は,人 間の脳のような知的なデバイスを作ることであり,Ulamの助言によって2次元の格子 によるセルラ・オートマトンという概念が誕生した.セルラ・オートマトンの最も有 名な応用例は,Conwayによるライフゲーム(Conway’s Game of Life)である.ライフ ゲームは2次元格子の各セルに生と死の二つの状態を持たせ,あるセルの周囲8つの セルの生死により,誕生,生存,過疎,過密という新たな状態に遷移させるものであっ た.ライフゲームは単純なルールから,自己複製を含む複雑なパターンを生み出すこ とが可能であることを示し,人工生命という学問分野の基礎となった.
エージェントという概念に基づく最も初期の研究の一つは,Schellingによる住み分 けモデルである [37].Schellingは彼の論文“Dynamic models of segregation”によって 人種間における居住クラスタが発生するメカニズムを示したが,彼が利用した住民モ デルは周囲を認識し,判断し,行動する,エージェントとしての基本的な機能を有し
2.
ていた.
また,別の著名な研究として,Dorigoによって提案された蟻コロニー最適化(ACO:Ant Colony Optimization)が存在する[38].ACOは実際のアリの行動を観察することによっ て導きだされた方法であり,ACOによる問題解決には,アリをモデル化したエージェ ントを用いる.ACOは巡回セールスマン問題の近似解を求めることができ,かつグラ フが動的に変化する場合にも対応できるという利点がある.
計算機の高性能化とともにMASの適用範囲は広がり,90年代半ばには様々な分野に おいて有効なツールとして広く認められるようになった.またMASは人工社会システ ムを構築し,または理解するためのツールとして大きな期待を寄せられるようになっ た [25, 39, 40].
現在では防衛,交通を始めとして,災害対策や医療活動のシミュレーションに,ま たMASの技術を応用した群衆シミュレーションは映画やゲーム等のエンターテイメン トの分野でも利用されている.
2.2.2 MAS
における粒度とフィデリティ
シミュレーションにおいて,模擬対象をどの粒度とフィデリティでモデル化するか は,必要な結果を取得するための重要な選択となる [20].MASにおいてもそれは同様 であり,粒度としてはエージェントの単位を個人レベルにするか,小集団にするか,あ るいは国家や会社のような独立した単位の組織にするか等が考えられる.また,粒度が 個人という同じレベルだった場合でも,その模擬の方法には様々な段階が考えらえる.
例えば群衆シミュレーション等においては,空間上の歩行者エージェントを2次元 連続空間上の物理的存在として具体的に模擬することも可能であるが,セルラ・オー トマトンで表現するか,あるいは地点と経路のみを考慮するネットワークモデルで表 現することもできる [7].
適切な粒度とフィデリティは,シミュレーションの対象に応じて変化する.群衆シ ミュレーションを考えると,歩道の幅員変化による歩行者の混雑の変化に着目する場 合等は,2次元連続空間のモデルを使うのが適切と考えられる.地形による制約や歩行 者間の衝突回避等,物理的な模擬が必要になってくるためである.一方,大震災等に おける首都圏の帰宅困難者の流動を分析するためには,そのような詳細な属性よりも 大域的な流れの方が大きな意味を持つ場合が多い.よって,このような規模のシミュ レーションには,ネットワークモデルを用いて人の流れを統計的に表現することが適 切と考えられる.セルラ・オートマトンによる表現はその中間の規模に適用するのが 適切と考えらえる.
2.3 人間行動モデル 本研究でシミュレーションの対象とするのは,階層的な組織を持ち,階層間での情 報交換と意思決定を特徴とする人間組織の概念を中核とするシステムである.代表的 な例としては,防衛及び災害時における指揮官の意思決定訓練用シミュレーションで あり,また,大規模で複雑かつ階層的な構成を特徴とするC4Iシステムを前提とする 防衛用装備品の開発支援及び評価用のシミュレーションである [41].
そのため,本研究において想定している粒度は,1エージェントが1人,あるいは数 十人までの少数の集団となる.これは,具体的な装備品を評価する際に,運用の主体 としてこれ以上の規模のエージェントが必要となる状況は少ないと考えられるからで ある.
また,基本的なフィデリティとしては座標と大きさを持つ物体として扱う.これは,
装備品の評価においても指揮官が部下を指揮する場合においても,座標の要素は必須 であり,また道路等での展開を考慮する際に大きさの情報が必要だからである.その 一方で,指揮官の意思決定訓練に用いる場合,それ以上に詳細な身体形状及び姿勢等 の要素が必要となる状況は少ないと考えられる.また,装備品評価の際に詳細な形状 等が必要になる場合は,MASを利用したシステム統合レベルのシミュレーションより も,個々のシステムレベルのシミュレーションを利用する方が適切である.
2.3 人間行動モデル
MASにおいて,物理的な要素としても,行動判断の主体としても,人間は重要な模 擬対象の一つである.人間行動に関してはMASの概念が登場する以前から様々な先行 研究がある.
計算機上で人間を模擬する試みの歴史は古く,1960年代にドイツ及びアメリカの計算 機科学者であるWeizenbaumはELIZAという原始的な対話プログラムを作成した[42].
Eliza自体はおうむ返しを基本とした単純なアルゴリズムで駆動するプログラムだった
が,多くの人間がElizaを人間として扱いチャットを行う等,単純なアルゴリズムであっ ても人間が誤認するほどの人間らしさを獲得する場合があることを示した.
それより以前,英国のTuringは機械が知的かどうかを判定するために,チューリン
グテスト(Turing Test)を提案した [43].これは,人間である判定者が人間及びAIと
コンソールを通じてテキストチャットにより会話を行い,相手が人間かAIかを判定す るというものである.判定者が人間とAIの確実な区別ができなかった場合,このAI はチューリングテストに合格したことになる.
チューリングテストの定義に従えば,前述したELIZAはチューリングテストに合格 することもありうることになる.アメリカの哲学者であるJohn Searleは,人工知能に
2.
否定的な立場から「強いAIと弱いAI(Strong AI and Weak AI)」という概念を提唱し た.彼が提唱した「中国語の部屋(Chinese Room)」という思考実験により,チューリ ングテストに合格したからと言って,そのAIが知能を有するとは言えないという見解 を示した.
人間と変わらないような自意識や,広い認知能力を伴う知能を有する人工知能は,
Searleの分類によれば「強いAI」と呼ばれる.近年では深層学習の急速な発展により
コンピューターの認知能力が飛躍的に向上してきたが[44, 45],人間と見分けのつかな いような応答を返すAIの実現は現時点でも困難である.一方で,「強いAI」のような 精神の実現を目指さない,あるいは特定の目的のための推論や認知の機能を有する人 工知能は「弱いAI」と呼ばれ,「弱いAI」には多くの実用例が存在する.
例えば,前述したELIZAは「弱いAI」である.また,1997年にチェスの世界チャ ンピオンであるGarry Kasparovを破ったDeep Blueや,現在の将棋ソフトウェアの基 礎を作り上げたBonanza等は特定用途のための人工知能であるため,その目的におい てどれほど高性能であったとしても「弱いAI」に含まれる.
また,近年ではチェスや将棋等のテーブルゲーム以外においても,コンピューター ゲームにおいて敵味方のプレイヤーを人工知能で模擬することが珍しくなくなってい
る[46].ゲーム機の性能向上に伴ってゲームAIもより高度化しており,コンピューター
ゲームは産業における人間行動モデルの応用先として重要な地位を占めつつある.
本研究において目指す人間行動モデルは,強いAIか弱いAIかで言えば,弱いAIを 指向している.個々のエージェントの振舞いは人間的であることが望ましいが,それが 人間的な意識を有している必要はないからである.本研究では,人間組織の行動をモ デル化し,明示的なルールに基づいて駆動することを基本とする.それは,本研究が対 象とする人間行動ルールがMASに適用することを前提としているからである.MAS の結果が予想外のものになることはあっても,ルールと状況からエージェントがなぜ その選択をしたのかを分析することが可能であることが求められ,その点ではチェス や将棋,あるいはゲームのAIに近いものが要求される.
2.3.1
群衆シミュレーション
多くの人間を模擬するシミュレーションとして,群衆シミュレーションが存在する.
群衆シミュレーションは建物等における避難シミュレーションまたは映画及びゲーム 等のエンターテイメント用途において広く利用されている[47].
群衆シミュレーションの嚆矢と言えるものはReynoldsによる鳥の群れモデル[48]で あり,個々の鳥モデルについて経路を記述しなくても,それぞれの鳥モデルが簡単な