目次
1. 災害救助シミュレーションにおける確率モデルによるエージェントの評価方法,
高橋 友一 (名城大学理工学部情報工学科) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1

2. 他者の状態価値の推定に基づく協調・競合行動の獲得,
野間 健太郎 [1], 高橋 泰岳 [1], 浅田 稔 [1,2](1 大阪大学大学院工学研究科, 2 JST ERATO 浅田共創知能システムプロジェクト) . . . . . . . .

7

3. Physical Visualization Sub-League: A New Platform for Research and Edutainment,
Rodrigo da Silva Guerra[1], Joschka Boedecker[1], Minoru Asada[1,2](1 Graduate School of Engineering, Osaka University,
2 JST Erato Asada Synergistic Intelligence Project) . . . . . . . . . . . . . . . . . . . . . . . . . 15
4. Successful Teaching of Agent-Based Programming to Novice Undergrads in a Robotic
Soccer Crash Course,
Rodrigo da Silva Guerra[1], Joschka Boedecker[1], Hiroshi Ishiguro[1,2], Minoru Asada[1,2](1 Graduate School of Engineering, Osaka University,
2 JST Erato Synergistic Intelligence Asada Project) . . . . . . . . . . . . . . . . . . . . . . . . . 21
5. 四足歩行ロボットによるアドホックネットワークの構築,
植村 渉 (龍谷大学理工学部) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

6. 動的環境におけるエージェント配置手法の提案,
秋山 英久, 野田 五十樹 (産業技術総合研究所) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

7. マルチエージェントシステムにおける行動制御アーキテクチャの自己組織化,
川上 皓平 [1], 杉山 英輔 [1], 藤井 飛光 [2], 吉田 和夫 [2], 高橋 正樹 [2](1 慶應義塾大学大学院理工学研究科, 2 慶應義塾大学理工学部) . . . . . . . . . . . . . . . . . . . . 38
8. Sim-3D リーグ Humanoid ロボットに向けたこのへんファジィ制御の提案,
西野 順二 (電気通信大学) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

9. 3D2Real and other perspectives for the Humanoid League,
N. Michael Mayer, Joschka Boedecker, Masaki Ogino, Sawa Fuke, Kazuhiro Masui,
Ayako Watanabe, Takanori Nagura, and Minoru Asada(JST ERATO Asada Synergistic Intelligence Project) . . . . . . . . . . . . . . . . . . . . . . . . 48
10. 間引きを用いたシュートモーション学習,小林 隼人 [1]畑埜 晃平 [2]石野 明 [1]篠原 歩 [1](1 東北大学大学院情報科学研究科, 2 九州大学大学院システム情報科学研究科) . . . . . . . . . . . 52
11. ニューラルネットとヒューリスティックを用いたドリブルスキルの開発,
中島 智晴，荘司 悠希男，石渕 久生 (大阪府立大学大学院工学研究科) . . . . . . . . . . . . . . . . . 58

12. Incremental Behavior Acquisition Based on Reliability of Observed Behavior Recognition,
Tomoki NISHI[1], Yasutake TAKAHASHI[1], Minoru ASADA[1,2](1 Graduate School of Engineering, Osaka University,
2 JST ERATO Asada Synergistic Intelligence Project ) . . . . . . . . . . . . . . . . . . . . . . . 62

13. Q 学習を用いた制約付巡回セールスマン問題の解法,
伏島 優 [1], 五十嵐 治一 [1], 石原 聖司 [2](1 芝浦工業大学工学部, 2 近畿大学工学部) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
14. 方策勾配法を用いたサッカーエージェントの学習 〜フリーキック時の壁パス〜,
福岡 仁志 [1], 中村 浩二 [1], 五十嵐 治一 [1], 石原 聖司 [2](1 芝浦工業大学工学部, 2 近畿大学工学部) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
15. 背景色を利用したマーカ色抽出と全方位移動型ロボットの制御 〜RoboCup 小型リーグ〜,
長谷川 卓也 [1], 脇本 耕平 [1], 五十嵐 治一 [1], 田中 一基 [2](1 芝浦工業大学工学部, 2 近畿大学工学部) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

社団法人 人工知能学会

人工知能学会研究会資料

Japanese Society for
Artificial Intelligence

JSAI Technical Report
SIG-Challenge-A701-1 (5/4)

災害救助シミュレーションにおける確率モデルによるエージェントの評価方法
An Evaluation Method using Probability Model for Agents in Disaster Rescue Simulation

高橋友一

Tomoichi Takahashi

名城大学 理工学部 情報工学科
Meijo University, Nagoya

ttaka@ccmfs.meijo-u.ac.jp
一方で，シミュレーション結果を実験データとつきあ

Abstract
Agent-based simulation makes it possible to simulate

わせて検証する事が難しく，科学・工学分野と同様に，仮説に基くモデルの作成，モデルに基くシミュレーショ

social phenomenon by presenting human behaviors
by agents. Taking disaster and rescue simulation as

ン・評価などの手法を採ることができない．寺野は，人an example, we discuss agent based social simulations
from viewpoints whether they can be used for prac-

間活動を含む社会現象をシミュレーションシステムに

tical use or not. First, possibility in applying agent
approaches to social tasks is shown by comparing sim-

1. 現実と整合的な結果が得られる事．

ulation results with other methods. Next, we propose
a method to present agent behaviors with probabil-

3. シミュレーション結果に満足できる事．

対する要求事項として以下をあげている [8]．

2. 既在の理論では説明が困難な現象が示せる事．
4. 結果の妥当牲を評価できる事．

ity model and discuss results of applying the method
applied to RoboCup Rescue Simulation data. These
will delve into future research topics for developing

5. 既在の理論では説明困難な課題に対して接近できる事．

agent based social simulations to practical ones.

本論文では，災害救助シミュレーションを例に，エージェントベースのシミュレーション結果のタスクに依1存した評価例とタスクに依存しない解析手法について

まえがき

述べる．

人間活動を要因とする社会現象は，自然現象と異り再現性の保証がなく，実験することも難しい．従来は，事例研究によるデータからモデルを構築し ，評価・考察する手段がとられてきた．最近では，構成要素の自2

災害・救助シミュレーションの評価

2.1

自治体における用途

律的な動きをエージェントと呼ばれるプログラムで表
自治体は過去の災害データを元にして，地域にあっ現し ，社会現象をシミュレーションするアプローチがた被害推定モデルで災害被害を想定している [6]．阪神

注目を集めている．

淡路大震災以降の都道府県・政令都市における地震被エージェントベースのアプローチは多種多様な分野に適用されている．社会システムの分野においても，害想定調書の特徴として，住民が生活する上で支障にシミュレーション実験の新な手法を提供している [2]．

なる項目や被害と対策の時間推移に関する予測（シナリオ被害想定）などの項目が追加されている [6]．過去

1表 2: 想定出火数を用いたシミュレーション結果
区
西

出火数
夜 30
昼 58
中村
夜 22
昼 45
相関係数


2



3





延焼率 nF名古屋 RCRS
2.8%
8.5%
5.8% 13.4%
2.4%
8.9%
5.1% 15.6%
0.89

延焼率 F
名古屋 RCRS
2.4%
8.1%
4.9% 13.0%
1.9%
8.5%
4.5% 15.2%
0.92

4







!

"


















面積比で設定），表.2 は地震災害時に特に警戒が必要
#















%

&

'

0

-

.

村区を対象に想定出火数でシミュレーションした結果(
,とされる名古屋駅近くの密集市街地を抱える西区と中

$













/

を示す．延焼率 nF と延焼率 F は各々，名古屋市の被

1

)

*

+










GIS


2

3









害想定における消防運用（ 初期消火活動）なしとあり

UDP/IPに対応する．シミュレーションでは，消防エージェン






























トの接続の有無が救助活動ありなしに対応している．



表から以下の事がいえる．

図 1: レスキューシミュレーションのアーキテクチャ• 消防エージェントによる救助活動の結果，延焼率が減少している．
のデータの他に，災害規模や発生時間などの災害状況• 出火条件が異なる表.1 において，消防運用なし（延に加え救助活動や避難行動を含めたシナリオにそった

焼率 nF ）と救助活動あり（ 延焼率 F ）ともに名災害救助シミュレーションは自治体の防災対策の上で古屋市被害想定値とシミュレーション結果の間に有効な手段を提供する．

は，-0.06, 0.18 と相関関係がない．出火数を合わせた表.2 では，0.89, 0.92 と相関関係がある．

2.2

MAS による災害救助シミュレーション

2.2.1

ロボカップレスキューシミュレーション• 名古屋市被害想定における延焼率 nF と延焼率 Fの間に相関は高い．1 シミュレーション結果で両者の間で相関関係があるものの，想定値程高くない．

ロボ カップレ スキューシ ミュレ ーションシ ステム

両者の延焼率の値が異なるのは，火災シミュレータ(RCRS) は，阪神淡路大震災における事例をもとに設計されたエージェントベースの災害救助シミュレーショ

や住宅データの違いによる．一方で，初期条件を合わせると両者の間に相関関係があるので同じ傾向を示し

ンシステムである [7]．地震による建物崩壊，火災などている．これらは，寺野が示した事項 1, 3, 4 を満たしの災害と現場で救助・救援活動をする消防隊，市民のているが，2,3 の問題にアプローチするには不十分で活動をエージェントで表現し ，災害と救助活動を合せある．

てシミュレーションする (図．1)．

2.3

名古屋市の火災被害想定値との比較

名古屋市はマグニチュード 8 クラスの地震に対し

3

確率モデルによる解析

3.1

マクロ的な解析の必要性て被害想定をしている．昼間に濃尾地震クラスにより延焼率などのマクロ的な評価だけでなく，自治体の発生した火災の想定状況と，シミュレーション結果を防災担当者は，いくつかのシナリオに基づくシミュレー

表.1，.2 に示す．表.1 は名古屋市が複数地点で火災が発生すると想定した区に対する結果（ 出火点数は区の1 名古屋市被害想定では，消防運用の効果は初期消火だけに影響し ，その後は関与しないので，当然，相関値は高い．

2

表 1: 名古屋市の濃尾地震クラスに対する被害想定とシミュレーション結果
対象区の道路網
名古屋市被害想定（ 昼間）区頂点
辺
建物数 出火数 延焼率 nF 延焼率 F
北
6,069
3,870
39,302
22
3.9%
3.4%
西
6,430
4,122
44,773
58
5.8%
4.9%
中村
6,044
3,766
41,769
45
5.1%
4.5%
中
2,026
2,093
18,726
5
0.9%
0.5%
瑞穂
4,053
2,563
30,092
2
0.5%
0.1%
熱田
2,609
1,760
17,580
3
1.3%
1.0%
中川
9,449
6,154
58,61231
2.6%
1.7%
複数出火 7 区の被害想定値とシミュレーション結果の相関係数
延焼率 nF と延焼率 F の相関係数
099

RCRS シミュレーション結果
建物数 出火数 延焼率 nF 延焼率 F
9,541
7
1.51%
0.99%
10,468
7
1.97%
1.74%
8,994
6
2.16%
1.15%
5,396
4
2.03%
1.12%
6,656
4
0.65%
0.47%
4,309
3
4.32%
1.42%
17,327
13
0.93%
0.87%
0.96
-0.06
0.18
0.59

ション結果から，救助隊や市民などのエージェントのn4

動きを大局的に把握，防災計画を立案する必要がある．

n3

ミクロレベのエージェントシミュレーション結果からマクロレベルの動きの解析方法を提案する．

3.2

n5

b15

b13

11
00
00
11
n1
00
11
00
11

エージェント 活動と確率モデル

n2
b11

n0

エージェントの動作モデルを以下に示す [3]．

action : S ∗ → A,

図 2: エージェントの動作選択と確率モデル

env : S × A → P(S),S = {s1 , s2 , . . . } は環境の状態，A = {a1 , a2 , . . . } はエージェントの行動，P(S) は S の羃集合を示す．状• エージェントは環境を観測して次の行動を決める．

態 si にあるエージェントは，環境情報，他のエージェ

エージェントの行動によって引き起こされる環境の変化が MAS の出力となる．

ントとの会話と自分の経験（データ）から自らの判断• エージェントの振舞いは，状況 i である行動をとっで ai を実行する．

た結果，行動 j に移る確率 {pij } の集合で表現でエージェント i の動きは，履歴 hi として表現される．
aa

きる．同じ状況においては，同じ目的をもつエー

a

0
1
2
hi : s0 −→
s1 −→
s2 −→
s3 · · ·ジェントは似通って行動をとると考えられる．

n 個のエージェントからなるマルチエージェントシス

• 与えられた状況に対し，望ましい結果を導いたエー
ジェントとそうでないエージェントの行動の違い

テム（ MAS ）の動きはその集まり H = {h1 , . . . , hn }として表現できる．

は，行動選択（ {pij } ）の違いで表現できる．

災害発生時に，救助エージェントは素早く災害現場をみつけ，その場所に向かう．図. 2 は，2 個所 n2 ，n3

3.3

で火災が発生し ，救助エージェントが交差点 n0 から現場に向っている状況を示す．交差点 n1 でどちらの火F（ P ）による履歴表現と解釈

状態 i から状態 j への移動した回数を fij を要素と災を消火するか，即ち，直進するか，右折するか，あする F（以降，頻度行列と呼ぶ）はシミュレーション結

るいは指令を待つかなどの行動を選択する必要がある．

果から求める事ができる．与えられた状況に対し ，同

その選択結果は，交差点 n1 から次のステップでど ちを p1j とすると，救助エージェントの行動パターンをじ目的をもったエージェントの履歴のアンサンブル平P均をとり，P（ 正規化の条件： j pij = 1 ）とする．

P1 = {p10 , p11 , p12 , p13 , p14 } で表現できる．

空になると給水場所に移動し，満タンになると消火活

らの交差点 nj に移動したかで観測できる．その確率

P の例として，消火場所に移動し ，放水，タンクが以上，まとめると以下の事がいえる．

3

1
A1

10

1
A



10


 0
n→∞ 
−−−−→ 
 0

 0

B1
1

B

1

C

1
1
C

0

1

1
B2

0

0

10/24 0

0

0
0

0
0

1/24

0

0




1/24 00 
10/24 1/24 
1/240

固有値，固有ベクトルを計算すると，

10
case 10m = 24n + 2 で，行列のランクは 3 になる．

1
A2

0

case1 : F の固有値は 0.842 と -0.008 で，対応する固有ベクトルは (0, -0.995, -0.09)t と (0, 0.09,-0.995)tcase 2

図 3: 救助エージェントの行動パターン例（ 辺の横にである．最大固有値 0.842 をもつ固有ベクトルである数字はステップ数）

最大成分を持つ第 2 成分は，火災現場 B に対応
する．

case2 : 0.425, 0.417, -0.008 と 2 つの固有値が同じ動を再開する消防エージェントの 2 つの行動パターン

大きさを持つ．(0, 0.7, 0, 0.7, 0.14)t , (0, 0.7, 0,を考える（ 図. 3)．ここで，移動には 1 タイムステッ-0.7, 0)t が 2 つの固有値に対応する固有ベクトルプ，満水から消火を続けタンクが空になるまで 10 タイで，case1 と同様に，大きな値の成分は各々火災

ムステップかかるとし ，A は初期位置，B は火災発生

現場 B1 ,B2 に対応する．

位置で消火場所，C は給水場所とする．

以上から次の性質がいえる．

case1 : エージェント数は 1 個, B と C の場所も 1 個所とし ，放水と給水を n 回繰り返す．
A

B

そのエージェントの有効な動きを示す．同じ F のサイCズでランクが大きいほど ，エージェントはその範囲で

A

1/m

B
C

10n/m n/mn/m
0

性質 1 エージェントの行動履歴を示す F のランクは，

0

0

有効に動いている．
性質 2 固有値の大きい固有ベクトルの主要な成分はエージェントがよく訪れた場所（ 状態）に対応する．



n→∞ 

−−−−→  0 10/12 1/12 
0 1/120

性質 3 複数のエージェントの動きが独立であれば，固有値の大きさはその独立の成分に応じて分散し ，固有ベクトルの成分も各々のエージェントの動き対応する．

ここで，全体のステップ数 m = 1+n(10+1+1) =12n + 1 で，行列 F のランクは 2 である．
case2 : 2 個所で火災が発生し ，2 つのエージェント
が分担して消火する．
A1

B1

A1

1/m

B1
A2

10n/m

B2
C

n/m

A2

B2

C

4

救助シミュレーション結果の解析

4.1

シミュレーション結果の時間的変化

図. 4 は，RCRS で提供されている阪神淡路大震災

n/m

時の長田区2 で，市民エージェントとして 85 個，負傷

1/m

者を病院に避難所に搬送する救急エージェント，道路

10n/m n/m
n/mから瓦礫を取り除くエージェントと火災を消火する消防エージェントそれぞれ 7，11，13 個が災害・救助活動をした状況をしめす．目視から以下の事がいえる．
2 道路網の頂点数，辺，建物の数は，各々765，820，740 で建物の 2 個所が給水できる避難所 (refuge 0，refuge 1) に指定されている．

4

(a) 災害発生直後 (B1,B2,B3 出火地点）(b) 50 ステップ(c) 100 ステップ(d) 150 ステップ(e) 300 ステップ(f) 固有ベクトルの主要成分に対応する位置

図 4: 災害の拡がりと救助エージェンの活動の時間変化(a) 3 個所 (B1，B2，B3) で火災が発生する．

最初は離れた位置にいた救助エージェントが，時(b) 50 ステップの段階では，B1，B2 の火災に対して消火する．B3 の火災はひろがる．
（ 黒い部分は火間とともに同じ活動をしている事を示している．

• 頻繁に訪れた場所に対する固有ベクトルの主成分

災で延焼した部分を示す．
）

から以下の事がいえる．

– すべての時間を通じて，給水場所に指定された(c) 100 ステップの段階では，B3 の火災に対して消火活動が始まる．

建物 (主要位置を示す図. 4 (f) で refuge 0 と指定された b 1) が一番訪問されている．

(d,e) 150 ステップ以降，消火活動により延焼を防止– 100 か ら 250 ステップ で ，B1 に 近 い 道 路(road 1) が 2 番目の場所である．
– 250 ステップに B3 に近い b 3 が 3 番目に現れ，300 ステップには 2 番目になっている．

している．

4.2

固有値，固有ベクト ルからの解釈

50 ステップ刻みの消防エージェントに活動に対するがいえ，これらは 4.1 節の延焼率の時間的な変化，目固有値，固有ベクトル 3 を表. 3 に示す．表から，視での観察にはないシミュレーションの経過を説明している．

• 行列の大きさ（ランク）が示す救助エージェントの活動は時間とともに拡がっている．

• 固有値の絶対値の比をみると，時間とともに，他

5に比べ 1 番値の大きいものが主になる．これは，

考察とまとめエージェントを用いたアプローチは，人間の活動を

3 ここで，F の大きさは，頂点数，辺と建物の数をあわせた 2325×2325 で，消防エージェント数 (13) とシミュレーション時間 (300)からするとスパースな行列である．固有値，固有ベクトルの計算にあたっては，訪れていない場所を除外した行列で計算した．

含む社会シミュレーションに新しい研究手段を提供する．実際問題に適用する時に，シミュレーションモデ

5表 3: 延焼率，頻度行列，固有値・ベクトルの時間的変化
時間

延焼率

行列

固有ベクトルの主要成分に対応する位置

サイズ /ランク

固有値 (1/2/3)

最大固有値

2 番目の固有値

3 番目の固有値

50
100

2.6%
4.0%

155/135
246/217

96/36/36
343/38/36

b1
b1

b2
road 1road 1
b2

150
200

4.9%
5.0%

300/271355/325

615/39/36
844/39/36

b1
b1

road 1road 1

b2
b2

250
300

5.0%
5.1%

422/388484/4421018/39/37
1192/40/39

b1
b1

road 1b3

b3
road 1

1
A1

最期に，日頃，ご 意見を頂くロボカップレスキュー

10

search fire

B1
1

関連の皆様，貴重なご助言を頂いた齊藤 公明氏に感謝します．

1
extinguish fires

C

参考文献

1

1
1
A2

B2

[1] 名古屋市地震被害想定調査, 3 月 1999.

water tank

10[2] Peter Stone and Manuela Veloso. Multiagent systems: A survey from a machine learning perspec-

図 5: エージェントの行動と状態の遷移

tive. Autonomous Robots, Vol. 8(3), pp. 369–381,
2000.

ルの健全性と結果の妥当性を説明できる事が課題とし[3] Gerhard Weiss. Multiagent Systems. The MITて指摘されている．

Press, 2000.

本論文では，災害救助シミュレーションとして RCRS
を用いその結果が他の方法による自治体の災害想定値[4] 高橋, 高橋, 伊藤. 防災計画へのマルチエージェン
トシステム適用の一考察. In JAWS06, 2006.

にあった結果である事を示した．次に，確率モデルを元にシミュレーション結果を解釈する方法を提案した．
図．5 に示す様に，エージェントの位置移動がその状[5] 高橋, 谷川, 高橋. 公開地図データにおける建物の自態遷移に対応すると仮定し ，シミュレーション結果か動生成方法. 情報処理学会 第 67 回全国大会 1V-8,

らエージェントの履歴を確率モデルを基にする行列で2004.

表現し ，その固有値，固有ベクトルからマクロレベル[6] 被害保険料率算定会. 地震保険調査報告 28 地震被で妥当な解釈ができる事を示した．

害想定資料集, 9 月 1998.

今後，検討すべき項目として以下があげられる．

[7] 田所諭, 北野宏明, 高橋友一, 松野文俊, 竹内郁雄.
Robocup-rescue：情報科学の緊急災害対応問題へ• 複数のシナリオのシミュレーション結果の比較などを通じて，モデルの健全性と結果の妥当性を高の挑戦. 情報処理, No. 4, pp. 412–418, 2000.

め, 防災計画の評価手段の提供する．

• 災害救助以外に社会現象に対し，確率モデルによる解釈の適用を検討する．

[8] 寺野隆雄. エージェント・ベース・モデリング :その楽しさと難しさ. 計測と制御, Vol. 43, No. 12, pp.
927–931, 2004.

謝辞本研究の一部は，文部科学省科学研究費補助金（ 課題番号：17500099) の助成により行われた．

6

社団法人 人工知能学会

人工知能学会研究会資料

Japanese Society for
Artificial Intelligence

JSAI Technical Report
SIG-Challenge-A701-2 (5/4)

他者の状態価値の推定に基づく協調・競合行動の獲得
Cooperative/Competitive Behavior Acquisition Based on State Value Estimation of Others

野間 健太郎 1 ，高橋泰岳 1 ，浅田 稔 1,2
Kentaro NOMA1 , Yasutake TAKAHASHI1 , Minoru ASADA1,2
1
1

阪大学大学院工学研究科，2 JST ERATO 浅田共創知能システムプロジェクト

Graduate School of Engineering, Osaka University, 2 JST ERATO Asada Synergistic Intelligence Project{kentaro.noma,yasutake,asada}@ams.eng.osaka-u.ac.jp

Abstract

1

はじめに

The existing reinforcement learning approaches

エージェントが複数存在するマルチエージェント環境に強have been suﬀering from the curse of dimension
problem when they are applied to multiagent

化学習を適用し，協調・競合行動の獲得を行う研究が多くなされている[1, 2, 3, 4, 5]. マルチエージェント環境で強dynamic environments. One of the typical examples is a case of RoboCup competitions sinceother agents and their behaviors easily cause

化学習を適用する際の問題点として，自身や対象物の記

state and action space explosion. The keys forlearning to acquire cooperative/competitive be-

なるため現実時間で学習するのが困難である．

述だけでなく，複数の他者との関係の記述も必要なため，考慮しなければならい情報が多くなり，探索空間が莫大に

haviors in such an environment are as follows:

Shivaram et al.[3]は，ハーフコートのサッカーフィール
ドで 4 対 5 でパスを行いシュートを決めるタスクで，味方の学習情報を共有することで，学習効率が上がることを• a two-layer hierarchical system with multilearning modules is adopted to reduce the示した．しかし，センサレベルの状態変数を使って状況判断をしているため，先に述べたように探索空間が大きく，
学習時間が非常に長い．Stefan et al.[1]はマクロ行動を導

size of the sensor and action spaces. The
state space of the top layer consists of the

入することにより，2 台のロボットが協調行動の獲得を実

state values indicating how close to the goalsof the individual modules at the lower level,
and the macro actions are used to reduce the

時間で実現している．マクロ行動とは設計者によってあsize of the physical action space, and further,

ることができる．彼らは，２台のロボットがいる環境で行• to what extent the other agent task has

動のみ抽象化することで，実時間で協調行動を獲得できbeen achieved is estimated by observation
and used as a state value in the top
layer state space to accelerate the cooper-

ることを示した．しかし，複数のロボットがいるような環

ative/competitive behavior learning.

競合行動を行う際，他者の行動予測が重要となってくる．

らかじめ決められた行動のことで，モータレベルの行動を学習する必要がないので，効率的に状態空間を探索す

境では，センサレベルの情報を用い，行動のみ抽象化するだけでは，現実時間では学習が困難である．他者と協調・
これは他者の将来の行動が適切に予測可能であれば，他者This paper presents a method of modular learn-の行動を考慮に入れた上で，自身のタスク達成に最適な行

ing in a multiagent environment, by which thelearning agent can acquire cooperative behav-

動決定を行なうことが可能であるためである．Takahashi
et al.[6]は，強化学習の枠組を用い，ゴール状態までの距

iors with its team mates and competitive ones
against its opponents. The method is applied
to 4 on 5 passing task, and the learning agent

離を表す状態価値を用いて，他者の行動を推定する手法

successfully obtained the desired behaviors.

対応する行為の推定した状態価値の増加・減少によって意を提案している．この手法では，相手の行動の違いや視点の差による状態認識の違いが存在しても，ある意図に図を正しく推定できることが確かめられている．センサ

7レベルの情報を用いて現在の状況を判断するのではなく，他者行為の状態価値の推定情報を組み込むことで，探索空間が小さくなり，結果的に学習時間が短縮できると考えられる．
本研究では，センサレベルの情報を抽象化した ” 自己行為の状態価値と他者行為の推定した状態価値 ” に基づく協調・競合行動を速やかに獲得する手法を提案する．

RoboCup 中型機リーグに出場しているサッカーロボットを想定したシミューレータを用い，5 対 4 でパス，ドリブ

Figure 2: Sketch of a state value function

ル，シュートを行うタスクで実験を行ない，本手法の有効
性を示す．

2

を推定し，これを基にある行動の状態価値を推定するモ

強化学習

ジュールも存在する．この状態価値推定は自己の行為と強化学習は，エージェントが環境との相互作用を通して累

他者の行為両方に関して同じものを利用する．これらの積報酬を最大化にする枠組である．エージェントは試行錯

自己と他者の状態価値推定を基に新たに状態価値空間を誤を行いゴールを見つける．状態価値 V (s) とは，ゴール

張り，協調競合行動学習を行う．

状態までの累積報酬の期待値である (式 1)．ここで簡単な例を示す．Fig.1 では，エージェントが状態 s0 から s5 まシステムは，下位層に行動モジュール (action module)

で移動し，報酬 0 を受け，s5 で止まる行動をとり，正のと他者行為推定モジュール (V estimation module) があ

報酬 +1 を受け取る様子を示している．この経験により，り，上位層に学習器 (Gate) があるマルチモジュール型学

各状態の状態価値 V は s5 から s0 へと減衰率 γ の割合で習機構である (Fig.3). 行動モジュールは観測情報から各伝播していく．状態価値関数は Fig.2 のようにゴール状態

行動に対する状態価値を計算する．一方，他者行為推定モに向かって山のような形の関数となるので，状態価値の高ジュールは自分の観測情報を基に，自己中心座標系からさはゴール状態への近さを反映する．エージェントは状

他者中心座標系への変換を行い，他者の観測情報を推定

態価値が高くなるような行動をとる．マルチエージェン

する．すでに獲得している自分の行動モジュールに他者

ト環境では，センサレベルの情報を使っての学習は探索

推定観測情報を当てはめることで，他者の行為の状態価

空間が大きくなり現実時間では困難である．そこで，セン値を推定する．上位層の学習器は，他者行為推定モジュー

サ情報ではなく，センサ情報を抽象化した状態価値を用いルと行動モジュールから送られてくる状態価値を状態変ることで，探索空間が抑えることを考える．

数として，どの行動モジュールを選択するかを動的計画

V (s) = E{∞∑

法の枠組で学習し，選ばれた行動モジュールに従った行動}

γ k rt+k+1 |st = s

をとる．センサ情報を使って他者の状況を認識するので(1)はなく，他者の行為を推定することによって，探索空間をk=0

抑え学習効率を向上させることができる．

Figure 1: Sketch of state value propagation

3

協調競合行動学習

学習者はいくつかの基本行動モジュールを持っており，こFigure 3: A multi-module learning system

れらはあらかじめ強化学習の枠組で状態価値推定と共に獲得されているものとする．また，他者の視点の観測情報

8タスクと仮定4

環境は RoboCup 中型機リーグのフィールドにオフェンス
チームが 5 台，デイフェンスチームが 4 台で構成されている．オフェンスチームはパスを回し，シュートをする．
ディフェンスチームはオフェンスをマークしながら，ボールが近くにくるとボールをとりにいく. オフェンス (ディフェンス) チームのマーカーの色はマジェンダ (シアン) で，自陣ゴールの色は青色 (黄色) である．ボールに一番近いロボットがパサーとなる．
仮定として，オフェンスチームのパサーのみが学習し，他のレシーバとデイフェンスは固定政策で動くものとする．パサーは基本行動として 4 台のレシーバにパスをす
るか，ドリブルシュートを用い，状況に応じた適切な行動を学習する．パサーがレシーバに向かって，パスを出し

Figure 4: A passer and the defence formation

た後，パスを受けたレシーバがパサーに，パスを出した
パサーがレシーバに切り替わるものとする．１試行が終わるたびに，各ロボットがコミュニケーションを行うこと

方位カメラから得られるを情報を使って，三次元再構成

により，学習情報を共有できるものとする．また，行動モ

をし，他者のセンサ情報を推定する．

ジュールと推定モジュールはあらかじめ，学習しているも
のとする．

4.1

オフェンスチーム

パサーは他の４台のレシーバのうち，どのレシーバにパスをするか，またドリブル・シュートを選択する．パサーはパスを出した後，ある一定時間だけゴールに向かって移動するパスアンドゴーを行うものとする．レシーバはボールの方を向き，ボールやパサーや他のレシーバに一定距離以上近づかず，長方形を作るように動く (Fig.4). なお，

Figure 5: A real robot

試行開始時の位置は，自陣でランダムに配置されている．

4.2

デイフェンスチーム

ボールの一番近くにいるオフェンス（パサー）に一番近いデイフェンスがマークをし，残りのディフェンスは一番近いオフェンスをマークする．マークとは，オフェンスの近くでオフェンスと自陣ゴールの間に入ることである(Fig.4)．そして，ボールが近くにくるとボールをとりにくる．また，オフェンスチームの不利にならないように，
ペナルティエリアに一定時間入れないものとする．なお，
試行開始時の位置は，自陣でセンターサークルに入らなFigure 6: Viewer of simulator

いようにランダムに配置されている．

4.3

ロボットと実験環境

RoboCup 中型機リーグに出場しているロボット (Fig.5)を想定したシミュレーションにより実験を行った (Fig.6).
ロボットは，センサに全方位カメラ，前方カメラ，移動機

4.4

上位学習器の状態/行動空間

構に全方位移動機構，キック機構を持ったロボットである．

ジュールを１つ，合計５つある．下位層のレシーバ推定

Fig.6 の右上は，前方カメラ，右下は全方位カメラの画像モジュールは，各レシーバーがパスを受けた後のシューを表している．ロボットは，色情報を使って，ボールや他

トのしやすさの達成度を推定するもので，合計４つある．

のロボットを認識している．仮定として，ロボットは，全これらの行動モジュールとレシーバ推定モジュールはあ

パサー (学習者) の下位層の行動モジュールは，各レシーバに対するパスモジュールを４つ，ドリブル・シュートモ

9らかじめ，上位層の学習の前に獲得しているものとする．
下位層の行動空間は，設計者によって設計されたマクロ
行動を適用する．マクロ行動は，モータレベルの探索をしないため，探索空間を抑えることができる．パサーの上位層の学習器の状態空間 S は，下位層から送られてくる状
態価値から成り立っている．

• 各レシーバに対するパスモジュールの状態価値それ
ぞれ４つ• ドリブルシュートモジュールの状態価値１つ• レシーバ推定モジュールの状態価値それぞれ４つ
状態数は，２値化されていて，24 x 2 x 24 =512 である．
報酬は次のように与えられている．

Figure 7: state variable of the pass module• 10 ボールがゴールに入る．(1 試行終了)• -1 ボールをインターセプトされる．(1 試行終了)• 0.1 パスが成功する．
• 0.3 ドリブルが成功する．
ボールがフィールドの外に出たり，ある一定時間たつと引きで 1 試行が終了する．以下では，下位層の行動モジュー
ルの詳細を示す．

4.5

パスモジュールの状態空間

パスモジュールの状態空間 S は，全方位カメラ上で，• レシーバより手前にいるディフェンスの中で，レシー

Figure 8: examples of state valuesof the pass module

バとのなす角が最も小さいディフェンスとの角度 (θ1 )• 一番近いディフェンスとレシーバの角度 (θ2 )である (Fig.7). 二つの角度は，ロボットが見えない状態を含めて，それぞれ 10 個に量子化されている．よって，状態数は 100 である．パスモジュールの状態価値のイメー
ジ図を Fig.8 に示す．Fig.8 はある状況でパサーがパスのしやすさを示したものである．パサーは 3 号機である. 各
レシーバ (0,1,2,4 号機) の横にあるゲージは各レシーバに対するパスモジュールの状態価値を表していて，ゲージが高いほど状態価値が高い．1，2 号機はディフェンスにパスコースを防がれていないので，状態価値が高い．一方，

0，4 号機はディフェンスにパスコースを防がれているのFigure 9: state value map of the pass module

で，状態価値が低い．状態価値のマップを Fig. 9 に示す．
レシーバとディフェンスの角度が小さい程，状態価値が低い．黒色の領域は未経験の状態である．上位層に送られる
状態価値は黄色と赤黒で 2 値化されている．

10

4.6

ドリブル・シュートモジュール

ドリブル・シュートモジュールの状態空間 S は，全方位カメラ上で，• 一番近いディフェンスと相手ゴールの角度 (θ1 )• 一番近いディフェンスとボールの角度 (θ2 )• 一番近いディフェンスの距離 (r)• 相手ゴールの両エッジの角度 (θ3 )（ゴールまでの距
離を表す）である (Fig.10)．それぞれ，8,8,5,7 に量子化されている．
よって，状態数は 8 x 8 x 5 x 7 = 2240 である．パサーのドリブル・シュートモジュールの状態価値のイメージ図
を Fig.11 に示す．Fig.11 は，ドリブルシュートのしやすさを示している．左図は，パサー (1 号機) は，ディフェンスが近くにいなく，ゴールに近いので，状態価値が高い．
一方，右図は，パサー (3 号機) は，ゴールから遠く，ディFigure 10: state variables of the dribble and shoot module

フェンスが近くにいるので，状態価値が低い．θ2 と θ3 を固定した時の θ1 と r の状態価値のマップを Fig. 12 に示す．レシーバとディフェンスの角度が小さい程，ゴールから遠い程，状態価値が低い．上位層に送られる状態価値は
黄色と赤黒で 2 値化されている．

4.7

レシーバの推定モジュール

パサーは全方位画像情報から３次元再構成をし，レシー
バがどのような画像情報を取得しているか計算する．そして，すでに獲得している自分のレシーバモジュールに当てはめてることで，レシーバがパスを受けてからシュー
トしやすさの推定を行う．レシーバの推定モジュールの状

Figure 11: two examples of state values of the dribble

態空間 S は，全方位カメラ上で，and shoot module• 一番近いディフェンスの距離 (r)• 相手ゴールの両エッジの角度 (θ1 )（ゴールまでの距
離を表す）である (Fig.13). それぞれ，5,7 に量子化されていて，状態数は 5 x 7 = 35 である．レシーバ推定モジュールの状
態価値のイメージ図を Fig.14 に示す．Fig.14 に示す．各
レシーバ (0,1,3,4 号機) の横にあるゲージは状態価値を表し，状態価値が高いとゲージが高い．0 号機は相手ゴール

Figure 12: state value map of the dribble and shoot moduleの近くでディフェンスが近くにいないので状態価値が高い．一方，1 号機は相手ゴールから遠く，ディフェンスが近くにいるので状態価値が低い．レシーバ推定モジュー
ルの状態価値のマップを Fig. 15 に示す．ディフェンスが遠く，ゴールに近いほど，状態価値が高い．黒色の領域は
未経験の状態 (ゴールの中に入った) である．上位層に送られる状態価値は黄色と赤黒で 2 値化されている．

11

5

実験結果

成功率を Fig. 5 に示す．下位のモジュール選択を 80%

greedy 20%ランダムで行った時のグラフである．900 試行
後，成功率が 30%, 失敗率が 70%, 引き分け率が 10%に収束している．Shivaram et al.[3]は，30000 試行後，成功率が 30%程度であり，学習時間は 30 倍程度短くなった．Fig.

16 は，1 試行のパス回数を示している．350 試行以降パス回数が減っている．これは，無駄なパス回しをしていないということである．100%greedy の時の成功率，失敗率，引分率は，それぞれ，55%，35%，10%である．100%randomの時は，それぞれ，2%, 97%, 1%である．100%greedy の時の成功率は，80%greedy の時の成功率よりよい．これは，レシーバとディフェンスは固定政策であり，新たな状
況がそれほど起こらないからである．獲得された行動の様子の一例を Fig.18 に示す．

Figure 13: state variables of the receiver module1

success rate
failure rate
draw rate

Success Rate

0.8
0.6
0.4
0.2
0
0

100 200 300 400 500 600 700 800 900 1000
Number of Episodes

Figure 16: success rate
109Number of Passes

Figure 14: examples of state values of the receiver module

8
7
6
5
4
3
0

100 200 300 400 500 600 700 800 900 1000
Number of Episodes

Figure 17: the number of passes

6
Figure 15: state value map of the receiver module

考察

学習を加速させるため，センサ情報の代わりに状態価値，
モータコマンドの代わりにマクロ行動，そして，レシー
バの行動を推定するモジュールを導入した．この結果，学習時間が 30 倍速くなった．比較手法[3]は，30000 試行後，

12

Figure 18: a sequence of a behavior in simulation

13

[2] Shoichi Ikenoue, Minoru Asada, and Koh Hosoda.

成功率がコミュニケーションありで 32%，コミュニケー
ションなしで 23%に収束している．

Cooperative behavior acquisition by asynchronous
policy renewal that enables simultaneous learning in
multiagent environment. In Proceedings of the 2002

本手法では，1 試行中エージェント間でコミュニケー
ションを行なわないが，レシーバ推定モジュールが同じ役

IEEE/RSJ Intl. Conference on Intelligent Robots
and Systems, pp. 2728–2734, 2002.

割をしていると考えられる．レシーバ推定モジュールを用いない場合の成功率を Fig. 19 に示す．成功率は 21%程度に収束している．これは比較手法[3]の成功率 23%と近い.

[3] Shivaram Kalyanakrishnan, Yaxin Liu, and Peter

状態と行動の抽象化 (状態価値とマクロ行動) は学習時間

Stone. Half ﬁeld oﬀense in robocup soccer: A multiagent reinforcement learning case study. In Proceed-を抑えることができる．一方で，レシーバ推定モジュールの導入は，チームワークの向上につながる．実機での実験

ings CD RoboCup, 2006.

が今後の課題である．
1
0.8
Success Rate

[4] Peter Stone, Richard S.Sutton, and Gregory
Kuhlmann. Scaling reinforcement learning toward

success rate
failure rate
draw rate

robocup soccer. Journal of Machine Learing Research, Vol. 13, pp. 2201–2220, 2003.

0.6[5] Yasutake Takahashi, Kazuhiro Edazawa, and Minoru
Asada. Multi-module learning system for behavior
acquisition in multi-agent environment. In Proceed-

0.4

ings of 2002 IEEE/RSJ International Conference onIntelligent Robots and Systems, pp. CD–ROM 927–

0.2
0
0

931, October 2002.

100 200 300 400 500 600 700 800 900 1000
Number of Episodes[6] Yasutake Takahashi, Teruyasu Kawamata, and Minoru Asada. Learning utility for behavior acquisition

Figure 19: Success rate without the receiver’s state inference modules

and intention inference of other agent. In Proceedings of the 2006 IEEE/RSJ IROS 2006 Workshop on
Multi-objective Robotics, Vol. 1, pp. pp.25–31, 2006.

7

結言

従来，マルチエージェント環境に強化学習を適用する場
合，センサレベルの情報を用いて探索すると，状態空間の爆発により現実時間で学習することが困難である問題に直面する．そこで，マルチモジュール学習機構を導入し，センサレベルの情報を抽象化した ” 自己行為の状態価値と他者行為の推定した状態価値 ” を用いて，探索空間を抑えこの問題を解決した．

RoboCup 中型機リーグに出場しているサッカーロボットを想定したシミューレータを用い，5 対 4 でパス，ドリブル，シュートを行うタスクで実験を行ない，本手法の有効性を示した．

参考文献[1] Stefan Elfwing, Eiji Uchibe, Kenji Doya, and Henrik I. Chirstensen. Multi-agent reinforcement learning: Using macro actions to learn a mating task.
Proceedings of 2004 IEEE/RSJ International Conference on Intelligent Robots and Systems, Vol. 13,
pp. 3164–2220, 2004.

14

社団法人 人工知能学会

人工知能学会研究会資料

Japanese Society for
Artificial Intelligence

JSAI Technical Report
SIG-Challenge-A701-3 (5/4)

Physical Visualization Sub-League: A New Platform for Research and
Edutainment
Rodrigo da Silva Guerra 1 , Joschka Boedecker 1 , Minoru Asada 1,2
1
Graduate School of Engineering, Osaka University, Osaka, Japan
2
JST Erato Asada Project{rodrigo.guerra,joschka.boedecker,asada}@ams.eng.osaka-u.ac.jp

Abstract
This work introduces a novel minirobotics system which is to become a new sub-league of
the RoboCup Soccer Simulation League, called
Physical Visualization. We incorporate mature technology proven efficient over the years
in other RoboCup leagues and we introduce
new collaborative development concepts into
the games of this new sub-league shifting essential research issues from the playing agentsthemselves to the development of a new versatile research and educational platform. We describe in detail the technical aspects supporting
this multi-agent robotic framework, integrating cutting-edge and low cost watch technology in the form of a miniature multi-robot system which mixes reality and simulation. Competition formats and roadmaps are presented
and discussed and the advantages for education
and research applications are emphasized. Finally we discuss benefits of this new platform interms of standardization, flexibility and reasonable price and try to characterize and discuss
the future possibilities enabled by this project
and the place of this new sub-league within the
RoboCup community.

1

Introduction

Physical Visualization (PV for short) is candidate to
be a new RoboCup Soccer Simulation sub-league. The
project is intended for fostering education, research anddevelopment together with the RoboCup community.
The PV is based on a miniature multi-robot system
which mixes reality and simulation through an Augmented Reality (AR) environment. The project has a
two-folded focus: research and education. The main
goals of the PV are:• to gradually improve the platform so that it becomes a powerful and versatile standard for multiagent research and education.

• to explore educational possibilities and real world
applications based either on the system as a whole
or on some parts of it (e.g. the robots alone).
Since March of 2006 CITIZEN Co. and Osaka University committed themselves to the endeavor of developing
together with RoboCup a new miniature, and yet affordable, robotics platform. This comes against the mainstream in robotics, where, in general, the solutions arecostly. We focused on versatility and affordability, taking advantage of well established industry technologies
to allow the development of an inexpensive platform. In
order to do that we used the know-how of the cuttingedge and low cost watch technology as a basis for building an affordable miniature multi-robot system mixing
reality and simulation. This allows the employment ofa large number of robots in a rather reduced space witha very low budget and amazing portability. Both therobots and the system are to be constantly upgradedand improved, being developed together with PV and
CITIZEN exclusively for the competitions. Three dominant characteristics of the project are: (a) affordability,(b) standardization and (c) open architecture. These
aspects are explained in detail in the next paragraphs.
Affordability: Generally speaking, doing research on
robotics is an expensive task, specially when it comes tomulti-agent robotics. Even in the most inexpensive realrobot experiments, it is a common sense that one would
expect to spend at least several thousands of dollars inorder to have a multi-agent setup. For the main reasons, one could surely account for the unavailability ofadequate commercial platforms, thus bringing the needfor custom robots. In RoboCup the strong competition
forces teams to challenge themselves to come up withnew design ideas which quite often are translated into
more complex and expensive hardware. This last factor also implies that a wider spectrum of technical fields
needs to be covered for the complete design of the machines, including issues which are not always related to
the research focus originally in mind. Such difficulties
may seem inherent to the research track of some institutions, but they most likely come as an obstacle to those15

who do not have the man-hour and the money for thejourney.
Standardization: Sharing a common standard platform allows the easy comparison of results and concepts
into the same grounds. The two-dimensional environment of simulation league [8] is a successful example ofsuch standardization: papers often show comparative results using the same common simulation environment,
for example, playing against the code of a good team offormer years (e.g. [7, 12, 11]). To a minor degree thefour-legged league [15] also shares some of these characteristics as, for instance, the champion teams usually
release their source code for the others to build on in the
coming year, thus speeding the progress and avoiding
the need for newcomer teams to ”re-invent the wheel”.
In our understanding there was still a lack of a standard
platform such ours, providing the flexibility of simulations but in real robots and at a reasonable price.
Open architecture: Our platform brings the above
standardization in a completely open architecture withroom for collaborative improvement. All program codes,
including the computer software codes and the robots
firmware are being released with the GNU GPL license[10]. Moreover, schematics are already being provided
for all electronic circuits of the system.

2

Technical Aspects

The technical aspects of the main system are illustrated
in the block diagram of figure 1 and on the simplified
drawing of figure 3-a. Robots obey commands sent by
a central server through an IR beam, while their actual
position and orientation is fedback to the server by acamera located on the top. Meanwhile a number of visual features are projected onto the field by using a flat
display. This system merges characteristics and concepts
from two of the most mature RoboCup leagues, Simulation and Small-Size [5], and adds a new key-feature:augmented reality.
All the robots are centrally controlled from one CPU
but their decision making algorithms run on networked
clients, making the robots behave autonomously virtually isolated from each other just like in simulation
league. Position feedback is based on colored markers
placed on top of the robots which are detected througha vision system in the same way used in small-size league.
Robot control is based on strings of commands sent by
modulated infrared signals (in this sense resembling Uleague to some extent [1]).
One characterizing feature of the system is the unmodelled embodiment dependent representation of therobots. Contrary to the misleading impression the term
”physical visualization” might imply, the robots are notmere physical visualizations of some sort of internallysimulated mechanism of any kind. On the contrary,
the system blindly sends client commands to the robots
which may (or may not) respond by performing arbitrary movements. In other words, changes on the physical body of the robot would not require changes on the

Figure 1: Block diagram illustrating the main systemcomponents
server internal representation of the robot’s mechanisms
for there is no such a thing.
2.1

The position feedback

The position of the robots (and eventually other objects,
such as ball) is detected from the processing of highresolution camera images. The computer vision systemcurrently implemented can be divided into three main
subsystems: (a) undistortion, (b) blob detection, and(c) identification & orientation. Each one is described in
the following paragraphs.
Undistortion: The vast majority of consumer cameras are known to have no significant lens distortion,
therefore it is common practice to assume a linear pinhole model. Despite the fact of the PV robots being real
three-dimensional objects occupying volume in space,the domain of possible locations for their bodies overthe plane of the flat screen is known to be confined intoa two-dimensional space. Because of that the calibration problem can be reduced, without loss of generality,
to a plane-to-plane linear transformation from the planeof the captured image to the plane of field itself. Thistransformation is a single linear 3 × 3 matrix operator
which defines a homography in the two-dimensional projective space (see figure 2). In the presence of significant
lens distortion the simple addition of a prior step for radial lens undistortion, such as in Tsai’s method [14], islikely to be sufficient. Refer [3] for a more extensive review on the projective geometry approach to computer
vision.
Blob detection: After undistorted, the image is segmented into blobs of certain colors of interest. These
colors are defined by a mask in the three-dimensional
Y × U × V space. Adjacent pixels, in a 8-neighborhood,belonging to the same color mask configure a single blob.
The area (total amount of pixels) and center of mass
(average (x, y) coordinates) of the blobs are extracted.
Blobs whose mass values are not within a tolerance range
from the expected are discarded. This procedure is used

16

(a)

Figure 2: Plane-to-plane projective undistortion basedon homography transformation, where H is a 3 × 3 matrix operator and p and po are 3-dimensional vectors representing points in the two-dimensional projective spacefor finding the center of the colored marking patterns on
the top of each robot – the red shape seen on figure 3-b.
Identification and orientation: The process here
described is inspired on [9]. Once a potential blob isfound, a radial pattern of colors is sampled within a
pre-defined radius of its center. In figure 3-b thesesampling locations are artificially illustrated by a closed
path of little green dots. This pattern is cross correlated with a database of stored patterns, each of which
uniquely defining a robot’s identity. Let’s denote x(i) tobe the color in the pattern x at the angle i. The crosscorrelation rxy is calculated accordingly to the equation
1 for each pattern y the database, and for each ∆α in
the interval [0o , 360o ). If, for a pattern x, the minimum
value of rxy (∆α), for any y and ∆α ∈ [0o , 360o ), exceeds
a minimum threshold, then the corresponding y gives theidentity of a robot, and ∆α gives its orientation.
P360orxy (∆α) = qP

i=0o [(x(i) − x̄) · (y(i − ∆α) − ȳ)]360o2i=0o (x(i) − x̄) ·

qP

360o
2
i=0o (y(i − ∆α) − ȳ)

(1)
2.2

Augmented reality

The idea about the augmented reality setup is anextension of a previously published similar concept
where robot ants would leave visually coloured trailsof ”pheromones” by the use of a multimedia projector
on the ceiling of a dark room in a swarm intelligencestudy [13]. Huge improvements in versatility, flexibility,
and standardization can be introduced by applying thatconcept into a more customizable system. The figure 3-ashows an illustrative drawing and figure 3-b shows an actual picture of our system in action. Given the reduced
size and weight of the PV sub-league robots the application of a conventional flat display as the field becomesfeasible – depending on the application, displays as small
as 20-inches are more than enough. This adds much versatility to the system without adding much costs andwithout complicating the required setup. The mixtureof reality and simulation enables projections of environmental features surrounding the real robots. By doing
so, not only the environment becomes more visually appealing, but also allows for an enormous variety of new
applications which would be otherwise impractical ex-(b)

Figure 3: On the left an illustration of the overall system
including the feedback control loop (infrared transmitter, camera, server) and the augmented reality screen.
On the right an actual close-up picture of two robots
playing using such setup. (See last paragraph of subsection 2.1 for explanation about the green dots)

tending the possibilities to the limit of one’s imagination.
2.3

The miniature robot

Until now, a few developments have been made on verysmall sized robots, being ALICE one of the most prominent names (see [2] for a survey). In terms of hardwarethe (current) robot here described is not much different
from those many other mini-robots that have been developed so far. We emphasize that it is the unique features
brought together by our proposed framework allied to
the low cost, robustness and simplicity of the architecture that make this system so attractive.
The first versions of the miniature robot here usedwere originaly developed by CITIZEN as merchandize
devices for demonstrating their new solar powered watch
technologies [16]. Since March of 2006 three new prototype versions were already developed for matching therequirements of this project. The most current versionof the robot has dimensions of 18 × 18 × 22mm, no sensors, an infrared receiver and is driven by two differential wheels. This first robot was purposely designed tohave rather simplistic hardware configuration as a starting point, a seed, to be followed by numerous upgradesin the long term. The main robot components are (numbers in accordance to figure 4-b):
1. Motor – Customized from wristwatch motor unit.
See further details in the dedicated sub-section 2.4.
2. Battery – Miniature one-cell rechargeable 3.7V
lithium ion polymer battery with capacity of
65mAh.
3. Control board – Currently based on the Microchip
8bit PIC18 family of microcontrollers, each robot
comes equipped with a PIC18LF1220 which features
4kb of re-programmable flash memory.
4. IR sensor – An IR sensor is used in order to listen
for commands from the PC. The sensor operates atthe 40kHz bandwidth modulation (same of mosthome-appliance remote controls).
5. Body – The resistant durable body of the robot is
micro-machined in aluminum using CITIZEN’s highprecision CNC machines.

17

(a)

(b)

Figure 4: On the left a close-up picture of the step motor,
on the right an exploded view of revealing the robot
parts.
FeatureDimensions (mm)Configuration
Gear ratio
Torque (gf · cm at 2.8V )Current at 200rps (mA)
Nominal rotation (rpm)Direction

Value
7.0 × 8.5 × 1.9
2 coils × 1 rotor
1 : 240
between 2.0 and 4.0
between 4 and 12
12.000standard and reverse

Table 1: Technical specifications of the step motors usedin the miniature robots
2.4

The micro step motor

CITIZEN Co. is renowned in what regards to the manufacture of miniature devices. The motors are one of themain features without which it would be hardly possible to achieve such elevated degree of miniaturization.
The miniature robots use two motors to drive its differential wheels. For couping with the torque requirements
CITIZEN developed a new special class of step motors
combining high-speed rotation and nano-scaled geared
reduction. The result is highly reliable motor with very
low power consumption fitting into the same thin packaging.
2.5

number of robots result in longer control lags. Therefore
the protocol format was designed so that the command
could be sent in a very short time. The current command protocol has a length of 12bits: ID (5bits), leftcommand (3bits), right command (3bits), and bit parity check (1bit). Less frequently used instructions are
multiplexed from a sequence of two or more commands.

3

RoboCup is not only a place for robot tournaments andcompetitions, but also an international effort towards abigger common goal [6]. Therefore it is crucial for thesurvival of the new sub-league that its conceptual bases
are not redundant with other leagues and in accordancewith the RoboCup long term road map. In the strict
technical sense, the autonomous playing agents developed for the PV system, just by themselves add no newchallenge if compared to other existing RoboCup competitions and are not the central aspect around which
teams should concentrate their effords. The original anddominant point of the proposed sub-league is its concept
of collaboration towards the development of a central
platform for the benefit of all. While in other leagues essential research issues are traditionally faced in the playing agents themselves (AI, biped walking, vision, etc.),
in the PV the research issues are in the improvement of
the system – in the development of the platform and its
robots.
Therefore, the PV sub-league multi-agent interface
should be simple to use and adequate for educational
purposes. Agent code is expected to be developed byseasonal students while permanent members (professor,
staff and graduates) pursue longer term projects that
contribute for the sub-league itself and for its platformversatility in a variety of fields.
Keeping these ideas in mind we prepared, three competitions:• Electronics & Firmware Competition;• Educational Games Competition;• Undergrad Team Development Competition.

Robot’s firmware and control protocol

The current control protocol was programmed in C andcompiled using the proprietary MPLAB C18 compiler –sadly, a code port to the open source SDCC compiler has
been delayed due to temporary instabilities in that compiler’s support for the PIC18 architecture. Eventually
the code might become supported by the GNU C compiler if the robot’s microcontroller changes in the next
comming years (see sub-section 3.1).
All robots share the same firmware but dynamic IDs
are be assigned so that commands to an individual robot
can be discriminated. Each of the two wheels can be controlled to run at two different speeds, in both directions
or stopped (total of 5 possible values). These two speeds
can be fine tunned by infrared commands. An extra setof fast ballistic movements is also provided, with duration customizable, again, by infrared commands. Additional firmware features include low-level battery checkand special software reset and sleep commands. Becauseof the physical nature of the infrared light beam, commands have to be sent by the server to one robot at atime, in an ordered fashion. This implies that bigger

Competitions with cooperation

These three competitions form a kind of selfsustainable ”ecological” cycle like shown in the figure
5. Arcs 1 and 2 represent respectively the new needs
that inspire hardware development and the new possibilities these developments tend to provide (in future years,
if they are incorporated into the the standard system).
Arcs 3 and 4 work in a similar way, but within the official hardware of the system to which all teams shall haveaccess. Arc 3 represents a selection of interesting ideas
from educational games presented in previous years thatare put in practice in a big tournament among undergraduates from various teams, bringing again new ideas
for even more interesting games in arc 4. Arc 5 and6 represent the volunteer contribution of the technicalcommittee for ”cluing” all pieces together and making
the system work. The idea is to maximize the flow inarcs 1, 2, 3, and 4 while minimizing the contributions
through arcs 5 and 6, in the form of a self-sustained evolution cycle for the sub-league.

18

cepts related to common subjects ranging from basic
computer programming to very specialized topics related
to multi-agent systems and artificial intelligence.

These competitions are indroduced in the next subsections.

The entries would consist of the proposed games alongwith their source code, supporting tools or API (if any),
documentation and accompanying teaching materials.
In order to ensure that other teams could easily profit
from these contributions the entries would need to benecessarily based on the current official system only.
While the eventual introduction of accessories such asballs maze walls or colored objects would, in general,be permitted, no external specialized electronic devices
would be allowed. Live demonstrations and poster presentations would be performed during the game event,and together with prior qualified reviewing would rank
the entrant.

3.1

3.3

Figure 5: Typical self-sustained development cycle expectedElectronics & Firmware Competition

Goal Allow the evolution of the robot’s technology andimprove all non-software related aspects of the system.
Summary Teams would have the opportunity to contribute with new ideas for the electronic aspects of thesystem as well as robot’s firmware. Those with background in fields more closely related to the hardware
would be able to include in their projects the improvement of certain aspects of the system either for didactic
purposes (e.g. class on microcontrollers) or for research.
Meanwhile, teams with background in fields more related
to computer science would be able to acquire valuable experience by accompanying or even contributing to theseprojects.
Entries for this competition will consist of documents
describing in detail the proposed modification, alongwith CAD drawings, source code, schematics, etc. Developments could be made on any of the current elementsof the system, including the robot, or by introducing a
new electronic element to the system. All must be madeavailable to other teams so that they can use and improve at their own. Closed portions will be allowed aspart of an entry, but but those parts will not be officiallyconsidered during judgement.
Developments on the control circuit of the robots
will be required to meet several restrictions regarding
the position of mounting holes and pads, the size andshape of the board, the maximum bounding volume, theweight limit of the robot and place of certain components
in order to ensure compatibility with current micromechatronic architecture. Within those constraints completely new architectures could be proposed. Optionally,
entries could even consist of firmware development only.
3.2

Educational AI Games Competition

Goal Create a pool of interesting didactic software applications in the form of games using the system for educational purposes.
Summary Entrants would come up with different
game ideas using the system in which they teach con-

Rapid (Soccer) Team Development
Competition

Goal Allow undergraduate students to develop complete teams of their own within the typically limited time
window of their courses.
Summary The teams would be based on a simplified
didactic game framework allowing easy development requiring only a very limited amount of knowledge. All
contestants would have an equally limited amount oftime for the development of their teams, thus giving
similar advantages to teams with limited time to spare.
Game rules and supporting software would be officiallyreleased just a predefined amount of months before thegames.
This comes to fill the gap between RoboCup Junior and the other RoboCup Senior leagues. Typically
RoboCup Junior focus mainly on primary and secondary
school children, making its challenges less interesting forthe more mature undergraduates of courses more related to specialized subjects. The undergraduation curricula are generally composed of a number of classes
that last half a year or less and are taken simultaneously over the course of several years. This makes it very
difficult for projects based on RoboCup Senior leagues
to be included into the main curriculum. Refer to [1,4] for a previous account to some of above points, wherea new league directed exclusively toward undergraduate
students was proposed (the U-league).
In the Rapid Soccer Competition alumni woulb be able
to experiment their ideas into a RoboCup environment
regardless of their time constraints (i.e. having moretime to spare would post no advantage). Competitions
would take the form of a tournament which would spamover the duration of the RoboCup event.

4

Discussion

This paper introduced the main technical and conceptual characteristics of a new miniature robotic platform.
In particular, it was emphasized in the beginning of section 3 the advantages of shifting of focus from the play-19

Conference on Artificial Intelligence), pages 29–38,
1998.
[6] Hiroaki Kitano and Minoru Asada. The robocup
humanoid challenge as the millennium challenge foradvanced robotics. Advanced Robotics, 13(8):723–
736, 2000.
[7] Jelle R. Kok and Nikos A. Vlassis. Using the maxplus algorithm for multiagent decision making in coordination graphs. In RoboCup 2005: Robot Soccer
World Cup iX, Lecture Notes in Artificial Intelligence, pages 1–12. Springer, 2006.
Figure 6: People get very attracted to the small robots
ing agents to the shared system. Furthermore, the threecompetitions showed in a more clear way how this collaboration shall be fostered toward the constant development of a versatile system for education and research.
In the last trimester of 2006 we already started someundergradutation class experiments where inexperienced
second year students of engineering courses could learn
to program and develop whole soccer playing teams in
only five sessions in three weeks. Figure 6 gives an idea of
the kind of entertaining atmosphere the mini robots produce on people, attracting crowds in the public demonstrations of the system. People feel much more attracted
to the miniature robots with their limited behavioral
skills than for the virtual agents such as those used in
RoboCup soccer simulation league. The small robots
seem to attract specially the kids. This is likely to help
the use of the system in studies that require interactionof small children in the loop (see figure 1), typical infields related to developmental cognitive studies such as
developmental psychology and cognitive neuroscience.

References[1] John Anderson, Jacky Baltes, David Livingston,
Elizabeth Sklar, and Jonah Tower. Toward an undergraduate league for robocup. In Proceedings of
RoboCup-2003: Robot Soccer World Cup VII, Lecture Notes In Artificial Intelligence. Springer, 2003.
[2] G. Caprari. Autonomous Micro-Robots: Applications and Limitations. PhD thesis, Federal Instituteof Technology Lausanne, 2003.
[3] Olivier Faugeras. Three-dimensional computer vision: a geometric viewpoint. MIT Press, Cambridge, MA, USA, 1993.
[4] Fredrik Heintz. Robosoc, a system for developing
robocup agents for educational use. Master’s thesis, Dept. of Computer and Information Science,
Linkopings Univ., 2000.
[5] Harukazu Igarashi, Shougo Kosue, Yoshinobu
Kurose, and Kazumoto Tanaka. A robot system forrobocup small size league:js/s-ii project. In Proceeding of RoboCup Workshop (5th Rim International[8] I. Noda, H. Matsubara, K. Hiraki, and I. Frank.
Soccer server: A tool for research on multiagent
systems. Applied Artificial Intelligence, 12:233–250,
1998.
[9] Shoichi Shimizu, Tomoyuki Nagahashi, and Hironobu Fujiyoshi. Robust and accurate detectionof object orientation and id without color segmentation. In Proceedings of RoboCup-2005: Robot Soccer
World Cup IX, Lecture Notes In Artificial Intelligence, pages 408–419. Springer, 2005.
[10] Richard Stallman and Roland McGrath. GNU make: a program for directing recompilation. Free Software Foundation, 1996.
[11] Frieder Stolzenburg, Oliver Obst, and Jan Murray. Qualitative velocity and ball interception. In
Proceedings of the 25th Annual German Conference
on AI: Advances in Artificial Intelligence, Lecture
Notes In Computer Science, pages 283 – 298, 2002.
[12] Peter Stone. Layered Learning in Multiagent Systems: A Winning Approach to Robotic Soccer. MIT
Press, 2000.
[13] Ken Sugawara Toshiya Kazama and Toshinori
Watanabe. Traffic-like movement on a trail of interacting robots with virtual pheromone. In Proceedings of the 3rd International Symposium on Autonomous Minirobots for Research and Edutainment(AMiRE 2005), pages 383–388, 2005.
[14] R.Y. Tsai. An efficient and accurate camera calibration technique for 3d machine vision. In Proceedings of IEEE Conference on Computer Vision
and Pattern Recognition, Lecture Notes In Artificial
Intelligence, pages 364–374, 1986.
[15] Manuela Veloso, William Uther, Masahiro Fujita,
Minoru Asada, and Hiroaki Kitano. Playing soccer
with legged robots. In Proceedings of IROS-98, Intelligent Robots and Systems Conference, Victoria,
Canada, October 1998.
[16] Kazuhiko Yoshikawa. Eco-be!: A robot which materializes a watch’s life. Nature Interface, (8):56–57,
2002.

20

社団法人 人工知能学会

人工知能学会研究会資料

Japanese Society for
Artificial Intelligence

JSAI Technical Report
SIG-Challenge-A701-4 (5/4)

Successful Teaching of Agent-Based Programming to Novice
Undergrads in a Robotic Soccer Crash Course
Rodrigo da Silva Guerra 1 , Joschka Boedecker 1 , Hiroshi Ishiguro1,2 , Minoru Asada 1,2
1
Graduate School of Engineering, Osaka University, Osaka, Japan
2
JST Erato Asada Project{rodrigo.guerra,joschka.boedecker,ishiguro,asada}@ams.eng.osaka-u.ac.jp

Abstract
This work describes a method for introducing
agent based programming concepts as a handson experience targeted at inexperienced students learning C as their first programming language. The approach is based on three mainfeatures: (a) a simplified C interface to the
RoboCup 2D soccer simulation framework; (b)a strict agent-centered polar vector arithmetics
approach for describing soccer skills and agent
behaviors; and (3) on a tournament at theend of the course to give students an opportunity to evaluate their programs against one
another in a fun environment. We present dataof our experience performing a five-day (15h)course with sixty second-year engineering bachelor students who had just barely learned thebasics of computer programming. We showhow, based on the described scheme, students
with very limited computer programming experience became able to develop their own teamsof autonomous agents, in some cases including concepts such as dynamic role-assignment,
multi-agent coordination, and team formation.
We defend the method presented here helps
exposing the students to valuable experienceahead of their normal schedule, and boostingoverall motivation and performance.

1

Introduction

Even though using real and virtual robots in engineering related courses is known to boost motivation of
students [1, 12, 5, 4], care needs to be taken in thecourse design to minimize the many practical problems of working with the robots or simulation environments. This is especially true for students with little programming experience. In this paper, we present
the contents and results from a very short introductory level programming course for undergraduate engineering majors using simulated robotic soccer as aframework to teach agent-based programming, and to
give students an opportunity to get hands-on experience
putting to work the programming skills they had justbarely learned. The approach we chose corresponds towhat Lund [8] terms guided constructionism, i.e., a combination of traditional constructionist approaches [10,11] and explicit guidance in forms of lectures and coaching by more experienced students.
We built the course around the 2D soccer simulator [9]which has been widely accepted as a standard researchand educational platform for multi-agent applications.
Numerous works using this tool have been carried out,
including both scientific level research papers (e.g. [7,14, 13]) and agent programming courses (see e.g. [2,5]). This helped making this system a robust platform
for testing ideas in multi-agent disciplines. However, despite of its wide-spread and general acceptance, the twodimensional simulation framework is still rather complex, requiring the kind of specialized knowledge typicalof programmers with rather mature experience. While
such complexity often regards features without which interesting multi-agent problems could not be properly attacked, this same complexity also comes as an obstacle tothe non-experienced programming beginners as pointed
out in [2, 5].
We believe the limited programming skills of students
should not prevent them from experimenting with thebasic concepts of agent-based programming. On thecontrary, we think allowing these students to experiment with their first codes already in such a dynamic
and motivating environment helps boosting their learning of programming concepts as they become necessary
for producing more elaborate autonomous soccer teams.
Aimplified interface to program the agents was createdmaking it possible to cope with a very narrow time frameof only 5 sessions (each of 3 hours duration) with lecturesand programming work plus an additional separate session for a class tournament.
The rest of the paper is organized as follows: Section 2 describes the simplified C-interface around which
the course was formulated. Section 3 shows in detailthe strict vectorial approach which worked as the cen-21

tral conceptual tool for programming the agents. Section 4 present specific details about the organization of
the course. Section 5 gives some qualitative impressions
from the authors based on the obtained results. Finally,
sections 6 summarizes the main contributions of the paper and discusses directions future works.

2

The Simplified C-Interface

We prepared a set of wrapping functions allowing students to implement their code in a very compact andsimplified way requiring only the use of standard C code.
The idea is similar to that of RoboSoc [6], but with amuch stronger focus on simplicity – at the price of loosing
generality. These wrapping functions were constructedaround the Trilearn base code published in 2002 [3].
The whole environment provided by the Trilearn basecode was wrapped into four control functions and a
few sense/act functions. Some of the sense/act functions were simple wrapping of existing C++ functionsof the original code while others were implemented fromscratch or heavily simplified. The four control functions
are described below:• pv init – Includes all initialization procedures thatshould happen before the main loop in order to prepare the agent and including initial communication
with the server. The only argument passed to thisfunction is the desired team name;• pv update – Includes all the necessary routines forparsing messages received from the server and updating the internal world model of the Trilearn basecode. This function is called inside the main loop
right at the beginning, so that actualized sensor values can be assured;• pv flush – Takes all accumulated action commands, assembles them into messages and sends
them to the server so that the agent can actually
perform them. This eliminates the burden of sending the commands every time an agent takes a decision. Should be called in the last instruction inside
the main loop;• pv close – Performs all procedures necessary forfinishing the program, de-allocating resources.
The listing 1 shows an example of a complete agent
which is capable of passing the ball to a teammate (variable names are consistent with figure 1). Together with
our strict vector approach (which is detailed in section 3)
this simplified interface enabled the students with very
little programming experience to program a variety ofsoccer playing behaviors in a very clear and intelligibleway.

3

The Vector Arithmetics Approach

Most people learn basic operations with vectors alreadyat school. Vector arithmetics are visually intuitive, especially in the two dimensional space, where calculations
can be approximated by sketching simple strokes on apiece of paper. More than that, the analogy of the soccer field as a two-dimensional space gives a very straight

Listing 1: Example of a simple ”passing” agent#include < c i n t e r f a c e . h>i n t main ( i n t argc , char ∗ argv [ ] ){struct s t r c t v e c t o r c ;struct s t r c t v e c t o r e ;p v i n i t ( ”MyTeam” ) ;while ( pv update ( ) ){c = pv getball ();e = pv getteammate ( 1 ) ;i f ( pv cankick ( ) ){pv kick ( e ) ;} else {pv steerto (c );}pv flush ( ) ;}pv close ();}forward interpretation for directions and magnitudes of
two-dimensional vectors which can represent forces, accelerations, velocities of players and ball. In fact, thisapproach is so straight forward that it is very common
to see implementations involving two-dimensional vector
arithmetics of some kind across the various RoboCup
Soccer leagues.
In our approach we developed a complete framework
where all essential elements necessary for making a teamof soccer playing agents could be implemented by theexclusive use of two-dimensional vector arithmetics andnothing else. Moreover, we took care of describing allnecessary components relative to the self in an agentcentered approach excluding completely explicit global
coordinates of any sort. This agent-centered perspective
allows a deeper understanding on the agent perspective
embodied with sensors and immerse in the environment.
In the figure 1 we illustrate how one can take advantage of the two-dimensional vector representation for avery visual strategy planning. Suppose, for instance,
your agent were to mark an opponent by placing itself
between the opponent and the ball. The vector fromthe ball to the opponent, according to the figure 1, isgiven by the expression c − d. One could simply scale
down this vector, let’s say, half-way ( c−d2 ), and sum tothe vector representing the direction to the ball, yielding
the expression c+c−d. This last expression would be the2direction the agent should go. Similarly, if an agent were
to kick the ball (c) into the center of the goal ( a+b2 ), itwould need to go towards c + (c − a+b
)(r
+
r
),
r
b where2
rr and rb are the radius of the robot and the ball respectively (compare with the previous expression).
A web-based applet was developed in Java as a toolfor helping the students draw their vector arithmetics
on the screen of the computer and test their ideas on
different game situations. See figure 2 for a screen shot.
To our understanding this simplified vector approachprovides a powerful unifying interpretation which can beused across for a variety of very different soccer robots.

22

Figure 1: An example of game situation where allnecessary elements can be visualized in terms of twodimensional vectors

Figure 3: Example of simplified pinhole camera. One
can find a simple mapping from the distances x and y
to the corresponding angles α and β respectively. In thetwo-dimensional vector approach the angle α gives the
direction and the magnitude is given by d = f (β). This
relation is derived by simple trigonometry
a direct mapping into distances on the floor (assuming
camera is at constant high).
Pan & Tilt: Consider, images on the center of projection of the camera. Pan angles can be used directlyas the directions of the two-dimensional vectors whiletilt angles map into distances in the floor. The pinhole
camera attached to the pan & tilt mechanism can be approximated by simply summing pan and tilt angles withhorizontal and vertical camera angles respectively.

Figure 2: Screen shot of the Java vector applet developedfor enabling students to visualise their different strategies and check resulting expressions.
See below some examples of very straight forward interpretation in the case of the most popular platforms.
Omni-directional camera: Suppose the vertical axisof revolution of the omni-camera is normal relative tothe horizontal plane (of the field) and fixed in the robot(which is often the case). The center of the revolved
image is the origin for the two-dimensional vector representation. Radial distances from the origin in the image
have direct mapping into distances from the robot body.
Projective camera: For the sake of simplicity lets assume square pixels, pinhole model, and center of projection on center of image (usually very practical approximation when it comes to non-precision robotics). One
can assume a simple mapping from the distances of arbitrary image points to the center of the image into thecorresponding horizontal and vertical angles of their respective rays (taking the pinhole as the vertex). See
figure 3. The horizontal angle α give the direction of thetwo-dimensional vector while the vertical angle β gives

Control theorists experienced in mobile robotics would
probably still argue it is not so straight forward to derive
control laws when you have non-holonomic restrictionsin the mobility of the robots (e.g. two wheeled differentially driven robots). Such problems have been focus
of constant research in the past years due to the challenging control problem they represent (i.e. closed-form
solution does not exist). But here again, this should notcome as an obstacle to the learner who is eager to put
a robot into movement into a simplistic and practicalexperiment – otherwise all beginners in robotics would
require robots equipped with omni-wheels.
In the original two-dimensional simulation framework
agents are moved by the sucessive use of dash & turncommands, for, respectively, turning and moving forward the agent’s position. We implemented an interface
which mimics the effect of having differential wheels (i.e.
transforming the fictitious wheel velocitys into a corresponding series of dash & turn commands). This wasdone in an effort for keeping the virtual agent as closely
related as possible to the most typical robotic architectures – at the price of restricting the original (less realistic) maneuverability of the agents.
In our simulated differential driven robot the velocityof each wheel could be set into three different constantvalues, both backward and forward, or zero (stopped).
In such case, for example, (+3, +3) would make therobot go forward, (+2, −2) would make the robot spinclockwise and (+3, +1) would make the robot go in an
arc-trajectory to the direction forward/right. In orderto face the problem of steering the robot into arbitrary

23

Day

Content summary

1stIntroduction, review of concepts ofvector arithmetics, basic agent
programming concepts

2nd

Introduce the most elementary code,
explain the use of a simple Makefile,start working on very atomic behaviors(e.g. kick to goal and run to the ball)

3rd

Start generalizing these atomic behaviors
with the introduction of simple functions(e.g. find closest teammate)

4th

Make the agent even more versatile
introducing dynamic role assignment andgeneral changes of behavior according tothings such as own-id, side of play, etc.

5th

Divide the class in groups of four
students and start developing their own
teams for the final tournament.

6thTournament

Figure 4: State machine implementing a simple steering
algorithm for a two-wheeled differential driven robot
locations we implemented a simple state-machine. See
figure 4. This approach was chosen for being simple andeffective enough so that the student with their limited
experience in programming (and robotics) could easily
understand and eventually improve their agent’s navigatibility by customizing their own steering methods.
This way they not only could understand and use very
realistic robots in their experiments but also had contact
with a state-machine for decision making in their code.

Table 1: Summary of the course program

5
4

Course Format

The course was performed at the Osaka University during the month of March of 2007 to an audience of 62
second-year engineering students (amoung which only 4were females). It was composed by five separate lecturesof three hours each, given twice a week plus an extra
sixth lecture where the tournament was realized. The
overall program of the class is summarized in the table1.
Except for the first class, which was almost completely
theoretical, all the other classes were build around thestudent exercise and practice. In the end of each classa homework was a assigned, which would involve andstretch concepts learned in class, but also bring up issues which would only be formally introduced in the nextclass. This was done in order for them to experience theneeds before trying the solution, so that when the solution was presented its value could be more promptly
understood. For instance, students would compile using
the command prompt in the first class, but be introduced
to Makefiles in the second class, and they would implement different skills (such as passing) inside their main
loop in the second class but learn how to create moregeneric parameterized functions in the third class, andso forth. Despite all the theory being not completely new
to them (they came fresh from a theoretical introduction
to programming), it takes quite a lot of practice and experimentation until they can really put their knowledge
into work in such a dynamical situation.

Results

A questionnaire was formulated in order to help evaluating the evolution of the interests and degree of confidence of the students in three main aspects: (a) programming, (b) robotics and (c) soccer. The questionnaire was distributed twice, firstly before the first classand again later, after the first round of games during
the tournament. This questionnaire was extensive andcomposed by several multiple choice questions. In thesequestions students had to classify their interests, previous experience and self-confidence on many criteria regarding themes directly or indirectly related to the contents of the course. The speculations discussed in thissection are based on the results of this questionnaire, together with the collected homework, the final team code
and a final report.
To our surprise, all students were unanimous in thatthey had never even heard about the term ”agent programming” before. On the other hand, when asked
to list from the top of their heads names of robots
and soccer players, robots like ASIMO and AIBO werecited more often than the most often cited soccer player(which was Ronaldinho). The authors interpret this as
an strong indication that robotics is a rather popularsubject among young engineering students in Japan.
At the end of the course, despite the fact that we
didn’t talk about real robots during any of the practicalclasses, students showed that they have increased significantly their confidence about how much they believed
they could make a real robot play soccer. See figure 5.

24

if compared to the data collected during this course inwhich we used simulation only. Moreover, we plan tomake our evaluation methods conform to suggested [12]standards thus enabling easy comparison of results.

7
(a)

(b)

(c)

Figure 5: Results of the pool where students were invited
to self-evaluate to what extent they believed they could
make a real robot play soccer (a) when asked before and(b) when asked after the course, and similarly for making (c) an artificial agent play soccer after the course.
The five columns in each chart represent the total number of students that chose each of the corresponding five
options, which were, from left to right: (1) can nothingat all, (2) can do almost nothing, (3) can do a little, (4)can do well, (5) can do very well. (the neutral option
was explicitly omitted)
Furthermore a much bigger number of students declared
to have become more interested in both robot soccer
and agent programming. Moreover, in the end of thecourse we found a very strong correlation between theirconfidence on their own agent programming skills with
their confidence on how much they believed they could
make a real robot play soccer (compare charts in figure
5-b and 5-c). On our interpretation the above indicates
that, although we worked only with a very simplistic twodimensional simulation environment, the students could
still relate this to a broader concept applicable to realrobots.
Furthermore, the authors noticed the positive effectsof the tournament on the motivation of the students,
which were often verbally expressed on their final reports, and also rather evident when reviewing the videos
recorded during the tournament.

6

Discussion

This work presented an effective approach for exercising
basic programming skills in the very dynamic environment of soccer simulation in a very short period of time.
The method here presented together with the observed
results support the idea that limitations on programmingskills do not prevent students achieving their goals in thecomplex and dynamic multi-agent environment.
During the class we collected some strong evidenceof the popularity of robotics among the students. For
future work we plan to investigate how the (eventual) useof real robots in class would influence their performance

Acknowledgements

The authors would like to thank to Chisato Yoshida
for her help on the empirical portions of the work, toMatthias Bohnen for developing the nice Java applet for
helping on vector arithmetics, to the teaching assistantsfor their great help both during the classes and later on
analysing the collected data, and to the students themselves for their collaboration and understanding. The authors also want to thank JSPS and JST and the Japanese
Ministry for Sports and Education for their financial support.

References[1] John Anderson and Jacky Baltes. An agent-based
approach to introductory robotics using robotic soccer. International Journal of Robotics and Automation, 21(2):141 – 152, April 2006.
[2] S. Corradeschi and J. Malec. How to make a challenging ai course enjoyable using the robocup soccer
simulation system. In RoboCup-98: Robot Soccer
World Cup II, Lecture Notes In Artificial Intelligence. Springer, 1998.
[3] Remco de Boer and Jelle R. Kok. The incremental
development of a synthetic multi-agent system: theuva trilearn 2001 robotic soccer simulation team.
Master’s thesis, University of Amsterdam, 2002.
[4] Barry S. Fagin and Laurence Merkle. Quantitative
analysis of the effects of robots on introductory computer science education. ACM Journal of Educational Resources in Computing, 2(4):1–18, December 2002.
[5] Frederik Heintz, Johann Kummeneje, and Paul
Scerri. Simulated robocup in university undergraduate education. In RoboCup 2000: Robot Soccer
World Cup IV, Lecture Notes In Artificial Intelligence, pages 309 – 314. Springer, 2001.
[6] Fredrik Heintz. Robosoc, a system for developing
robocup agents for educational use. Master’s thesis, Dept. of Computer and Information Science,
Linkopings Univ., 2000.
[7] Jelle R. Kok and Nikos A. Vlassis. Using the maxplus algorithm for multiagent decision making in coordination graphs. In RoboCup 2005: Robot Soccer
World Cup iX, Lecture Notes in Artificial Intelligence, pages 1–12. Springer, 2006.
[8] Henrik Hautop Lund. Robot soccer in education.
Advanced Robotics, 13(8):737–752, 1999.
[9] I. Noda, H. Matsubara, K. Hiraki, and I. Frank.
Soccer server: A tool for research on multiagent

25systems. Applied Artificial Intelligence, 12:233–250,
1998.
[10] S. Papert. Mindstorms: Children, Computers, andPowerful Ideas. Basic Books, New York, 1980.
[11] S. Papert. Constructionism: A new opportunity forelementary science education. A proposal to the
National Science Foundation. Massachusetts Institute of Technology, Media Laboratory, Epistemology and Learning Group., 1986.
[12] Elizabeth Sklar, Simon Parsons, and Peter Stone.
Using robocup in university-level computer scienceeducation. ACM Journal on Educational Resourcesin Computing, 4(2), 2004.
[13] Frieder Stolzenburg, Oliver Obst, and Jan Murray. Qualitative velocity and ball interception. In
Proceedings of the 25th Annual German Conference
on AI: Advances in Artificial Intelligence, Lecture
Notes In Computer Science, pages 283 – 298, 2002.
[14] Peter Stone. Layered Learning in Multiagent Systems: A Winning Approach to Robotic Soccer. MIT
Press, 2000.

26

社団法人 人工知能学会

人工知能学会研究会資料

Japanese Society for
Artificial Intelligence

JSAI Technical Report
SIG-Challenge-A701-5 (5/4)

四足歩行ロボットによるアドホックネットワークの構築
Development of a Novel Ad-Hoc Network with 4-legged Robots for a Disaster Scene

植村 渉
Wataru UEMURA

龍谷大学理工学部
Ryukoku University

wataru@rins.ryukoku.ac.jp

1

はじめに

クにおける被災者発見のためのロボットシステムのプロトタイプを提案し，そこから生じる問題について検討する．

地震や火災などの災害現場では，被災者の発見は重要事

災害現場において，救助部隊が直接探索をすることが項の一つである．そのような災害現場において，従来からできない領域を，被災者発見ロボットが探索を行うこと敷設されているネットワークは，それ自身も被災していは大変重要である．しかし，ロボットが災害現場の内部奥る可能性が高く，そのようなネットワークを災害救助に用深くへと進むと，操作者と通信できなくなる場合がある．

いることは困難である．このような環境において，端末同

そのような場合，他のロボットが，現場のロボットと操作士でネットワークを構築するアドホックネットワークが注者との通信を中継することが必要となる．直接通信のこと目されている [7, 10, 11]．災害現場においては，被災者ををシングルホップ（single hop）といい，中継を介した通発見するためのロボットが重要である．ロボットは災害現場に入り込み，現場の情報を操作者へ伝える必要がある．
ロボットを遠隔操作するためには，無線による通信が期

クネットワークにおける経路設定では，端末の状態を管理する基地局が存在しないため，ネットワーク全ての端待されるが，そのために操作者は無線通信できる距離か末の情報をリアルタイムに獲得することは難しい．操作

ら操作する必要がある．しかし現場は危険なため，操作者はできる限り離れていたいというトレードオフが生じる．
そこで，ロボットと操作者間の通信は直接通信ではなく，中継器を間に挟むことで距離を延ばす必要がある．この者とそれぞれの端末は，通信を行うたびに動的に経路を設定しなければならない [4, 5, 8]．
アドホックネットワークのための経路設定は，大きく二種類に分けられる．一つはリアクティブ型であり，もうような中継を含む無線通信をマルチホップ通信という．本

一つはプロアクティブ型である．また，それらを組み合わ節では，災害現場でのネットワークの端末としてアイボ
1

信のことをマルチホップ（multi hops）という．アドホッ

せたハイブリッド型も存在する．リアクティブ型の経路設に着目し，アイボの遠隔操作について議論する．

定では，経路設定の要求が起こってから，経路設定のた

アイボは，ソニー株式会社が生産した2 四足歩行ロボッ

めの通信を行う．この方法では，経路設定の必要がない場

トである．10 万画素のカメラを搭載しており，自律歩行

合は通信を行わないため，帯域を有効に使うことができ，したり首を動かしたりできるため，自分の周辺の情報を映またバッテリーも長持ちする．しかし，経路設定の必要像として獲得することができる．また，ステレオマイクとが生じてから，経路設定のための情報を交換し合うため，

モノラルスピーカを搭載しているため，周辺の音情報を操

経路設定に時間がかかる欠点がある．代表的なリアクティ

作者へ伝えたり，操作者がアイボを通じて呼びかけを行っブ型の経路設定として，AODV(the Ad-hoc On-Demand

たりすることも可能であり，被災者との会話が期待でき

Distance Vector routing)[9] や DSR(the Dynamic Source

る．アイボの移動は，足の長さの関係もあるため，段差が大きいところは通ることができない．そのため，がれきの多い災害現場では不適切であるが，そうでない災害現場，
例えば有害ガスが漏れた場所などでは足元は安定していRouting Protocol for Mobile Ad Hoc Networks)[3]，そして DYMO(Dynamic MANET On-demand Routing)[1] などが挙げられる．一方，プロアクティブ型の経路設定では，それぞれのノードは常に経路設定のための情報を交換し合るため，有効である．本論文では，アドホックネットワー

う．長所と短所はリアクティブ型と逆になり，すばやい経路

1 ”AIBO”および”AIBO”ロゴはソニー株式会社の商標および登録商設定ができる代わりに，経路設定のための帯域を常に必要標である．
2 残念ながら，2006 年 3 月に生産中止となった．

とし，電力も必要とする．代表的なプロアクティブ型の経路

27

commands

Operator

Robot
Data
(pictures, sound)Figure 2: BabyTigers DASH を拡張した遠隔操作システム

listenrelay

Figure 1: 4-legged Robot AIBO

relay

設定として，TBRPF(Topology Dissemination Based on

Reverse-Path Forwarding)[6] や OLSR(Optimized Link
State Routing Protocol)[2] などが挙げられる．本節では，

Robot

reply

Figure 3: パケットを中継する端末の仕組み

災害現場での利用を想定するため，長時間のバッテリー駆
動を可能とするリアクティブ型の経路設定である AODV
を中心に用いる．本論文では，被災者発見のためのアド

路設定アルゴリズムの一つである．AODV 経路設定では，

ホックネットワークのプロトタイプを提案する．操作者

経路要求が起こってから経路設定の作業を始める．経路

は，複数のロボットを操作することができ，またセンサ情設定の必要がない場合は通信を行わないため，帯域を有報を得ることができる．ロボットが操作者の通信可能範

効に使うことができ，またバッテリーも長持ちする．しか囲から離れた場合は，間にいる他のロボットがパケットをし，経路設定の必要が生じてから，経路設定のための情中継することで，通信を実現する．現段階では，本システ

報を交換し合うため，経路設定に時間がかかる．パケット

ムのロボットは自分で判断して動くことはできず，操作者を送信する端末は，隣接の端末の情報だけを知ればよく，による遠隔操作による移動のみである．将来的には，各ロ

ネットワーク全体の情報を知る必要はない．つまり，経路

ボットが自分で判断し，より適切な中継点へ移動したり，設定の情報は，ネットワーク内の全ての端末に分散され以上を操作者へ報告することなどが考えられる．

ていると言える．

以下，経路設定アルゴリズムについて説明し，使用する

AODV では，経路設定を要求する端末によって RREQ
ロボットであるアイボの仕様について紹介する．そして， （Route REQuest）メッセージがブロードキャストされる．
被災者発見システムについて提案し，実験により通信性
それを中継する端末は，そのメッセージにコストを付加
能を確認する．最後に，まとめと今後の課題を述べる．

2

し，次の端末へ中継する．もし，一度受け取ったメッセー
ジを再び受け取った場合は，中継せずに破棄する．目的と経路設定プロトコルと四足歩行ロボットについてする端末に最初に届いたメッセージが，最もコストが低い
経路を経由したことになる．そして，RREQ メッセージを受信した目的端末は，RREP（Route REPly）メッセー

ここでは，経路設定のプロトコルと，システムで使用したジを，経路設定を要求した端末に対して送信する．このよ

四足歩行ロボットについて紹介する．

うにして，経路を確立する．

2.1

AODV 経路設定アルゴリズム
2.2

AODV（the Ad-hoc On-Demand Distance Vector）経路

四足歩行ロボット

設定アルゴリズムは，IETF（Internet Engineering Task

次に，ネットワークの終端と中継の両方の機能を備えた端Force）[13] の MANET（Mobile Ad hoc Network）ワー

末として四足歩行ロボットであるアイボを紹介する．アキンググループによって制定され，リアクティブ型の経

イボは，IEEE 802.11b に準じた無線ネットワークカード

28

と，10 万画素の解像度を持つデジタルカメラ，ステレオ
マイクロフォンとモノラルスピーカを持つ（図 1）. そして，8,000Hz のサンプリングレートで wav ファイルを再生することができ，16,000Hz のサンプリングレートで録音することができる．また，各足は二箇所の関節を持ち，Robot #3 WC EV

WC

Robot #2

それぞれのモータを動かすことで歩くことが可能である．
災害現場において，四足の足を動かし移動し，カメラとマイクによる視聴覚情報より被災者の発見に努めることができる．被災者を発見した後は，操作者はアイボのマイクとスピーカを通して，被災者と会話をすることが可能である．アイボが操作者の通信圏内から離れた場合，直接通信することは不可能になる．そのため，それ以外のアイボを間に移動させ，通信を中継しなければならない．
つまり，アイボは，終端端末としての働きと共に，中継端末としての働きをする必要がある．
アイボは CPC（Configurable Physical Component）

WCと 呼 ば れ る OPEN-R（Open Architecture for Enter-

EV

WC

Robot #1

Operator

tainment Robot）[12] ハードウェアから成り立っている．
OPEN-R は，ロボット間の構成の違いを吸収し，異なる
プラットフォームへの移植を容易にした仕様である．アイ
ボではオブジェクト指向言語である C++言語を用いてプFigure 4: 実験環境

ログラムを書くことができる [14]．代表的なアイボの利用方法として，ロボカップ [16] 四足リーグ [17] がある．ロ

2.3

ボカップでは，人間が操作することなく，ロボットがサッ

被災者発見システム

BTD デバッグプログラムは，ポート 11111 を通してアイボと通信をする（図 2）．そのため中継端末は，ポートカーをする競技であり，最終的には人と試合をすることが目的である．その中の四足リーグでは，ロボットを作
いて，各チームがどれだけプログラムのレベルを高めら

11111 の通信で待ちうけを行い，受け取ったパケットを次の端末のポート 11111 へ送信する必要がある．また，次れるかを目的として設置されている．なお，単なるプロの端末からの返信を受け取り，元の端末へそのパケットをグラムの向上であれば，計算機上だけでサッカーを行う

引き渡す必要がある（図 3）．今回，中継端末における転シミュレーションリーグがあるが，四足リーグは実世界で送のためのバッファとして，1024 バイトのメモリを確保

サッカーを行うところに難しさがある．本研究で提案すする．なおキャッシュメモリとしての役割は持たせていな

るプログラムは，四足リーグに参加しているチームであ

いため，一度に一つずつしか転送をしない．ネットワーク

る BTD(BabyTigers DASH)[15] チームのソースコードを上に一つのメッセージしか流れないため，中継器を多くベースとした．このチームは，大阪大学と大阪市立大学，

用意すればするほど，転送にかかる時間は長くなること

そして龍谷大学の合同チームである．本来は前述の通り，が予想される．将来的には，緩衝材としてキャッシュメモ

人がロボットを操作することない．しかし，デバッグを行

リを用意し，中継器の数に依存しない中継時間の実現がうにあたり，ロボットがフィールド上でどのように物を見必要となる．

ることが目的ではなく，同一ハードウェアと言う条件におているのか，どのように音を聞いているのかといった情

2.4

報を遠隔のノートパソコンで確認することは重要である

通信性能の測定ため，デバッグモードとしてそのような機能を組み込ん

ここでは，四足歩行ロボットによる作成したプロトタイでいる．その機能を利用し，被災者発見システムへ適用

プの性能を評価する．

する．アイボと操作者とは，TCP による無線通信でつな

図 4 のように，フロアの四隅に三台のロボットと操作

がり，遠隔操作の制御プロトコルは独自のものを利用して者（Operator）を配置する．ロボットは，全台同じプロ

いる．デバッグのためのプログラムであるため，直接通信

グラムが稼動しており，操作者が中継端末か終端端末かのしか考慮していない．そこで，制御プロトコルを拡張し，役割を決定する．いつでも，役割を入れ替えることが可

中継通信を実現する．

能である．フロアの長辺は約 55m であり，短辺は約 15m

29

100

Transfer Speed(KB/s)

1hop
2hops

1hop
2hops
3hops

3hops

0
0

50

Distance(m) 100

150

Figure 5: 距離に対する通信速度である．それぞれのロボットは，同じ辺上にいるロボット

2.5

まとめ

とのみ直接通信できる．例えば，ロボット#1 とロボット#3 は，直接通信できない．この配置においては，ロボッ

災害現場では，被災者の早期発見は最重要タスクのうちのト#1 と操作者とは直接通信が可能であるが，ここでは直一つである．人間が入ることができない現場も存在する．

接通信をせず，ロボット#2 とロボット#3 を中継して通そのような場合，ロボットが被災者を発見することが重信させる．操作者とロボット#3 の通信を 1 ホップ通信と要である．それぞれのロボットは操縦者へ自分の周りのする．これは直接通信となる．ロボット#2，ロボット#1

情報を報告しなければならない．ロボットと操作者の距との通信において，2 ホップと 3 ホップの通信が必要とな離が離れていたり障害物があるとき，直接通信が困難にる．各辺上にロボットを配置し，操作者との総距離に対なる場合がある．このとき，他のロボットが間に入り，通する通信速度を測定する．各辺の角に到達すると，その信を中継すればよい．つまり，中継ロボットによってアドロボットは中継端末とし，次の辺上を新しいロボットが動

ホックネットワークが構築される．本節では，ネットワー

く．カメラ画像の転送を行い，25 秒間の平均を転送速度

ク端末として四足歩行ロボット，アイボを用いて構築したとして扱う．

アドホックネットワークについて提案した．アイボは，搭載しているカメラを用いて写真を撮影することができ，無線ネットワークを通してデータを送信することができた．
また，操作者と離れているときは，他のアイボがそのデー結果が図 5 である．それぞれの辺上における転送速度はほぼ一定であり，距離に対する影響は見受けられない．

IEEE802.11b の規格においても，室内においては 50m ほタを中継することで，離れたアイボの情報を得ることができた．本実験において最大ホップ数は 3 であったが，それは我々の仕様で制限はしていない．アイボに限らず，中ど，室外では 150m ほどが到達距離であるため，この環境では見通しがよく十分な通信ができていると考えられる．
各角において，中継器をおかずに進める場合，すぐに見継の役割を果たす端末を使えば，ホップ数を増やすことが可能である．

通しが悪くなり通信が遮断されるため，転送速度が著し本研究では，アイボは完全に遠隔操作されるだけの端く遅くなることがわかる．また，中継器を増やしホップ数末であった．今後の課題として，アイボが自ら周辺環境のが増えると，ネットワーク上での 1 つのメッセージに対情報を獲得し，よりよい電波環境へ移動したり，「大きなする送通信回数が増加するため，通信速度が遅くなる．3

音がした」とか「何かが動いた」といった環境の変化情報

ホップでは，1 ホップの 1/3 ほどの速さであるが，周りのを操作者へ伝える仕組みを組み込めれば，被災者の発見

状況を十分に確認できるカメラ画像が安定して得られた．

に役立つと考えられる．

30

謝辞

net Engineering Task Force(IETF), Internet-Draft:
draft-ietf-manet-aodv-13.txt (July, 2004).

本研究は文部科学省のハイテク事業による私学助成を得[10] Martijn N.Rooker and Andreas Birk: “Combiningて行われた．

Exploration and Ad-Hoc Networking in RoboCup
Rescue,” RoboCup 2005: Robot Soccer World Cup

参考文献[1] I.Chakeres, Boeing, C.Perkins, and Nokia:

VIII, Springer, LNAI 3276, pp.236–242, 2005.

Dy-

namic MANET On-demand (DYMO) Routing, In-[11] H.Sugiyama, T.Tsujioka and M.Murata: “Victim
Detection System Consists of Networked Mobile

ternet Engineering Task Force(IETF), InternetDraft: draft-ietf-manet-dymo-05.txt (June, 2006).
[2] T.Clausen and P.Jacquet:

Robots,” Journal of Information Processing Societyof Japan, Vol.46, No.7, pp.1777–1788, 2005.

Optimized link staterouting protocol(OLST), Internet Engineering Task
Force(IETF), Internet-Draft: draft-ietf-manet-olsr-[12] http://openr.aibo.com/

11.txt (July, 2003).

[13] http://www.ietf.org/[14] http://www.jp.aibo.com/[3] D.B.Johnson, D.A.Maltz, and Y.Hu:
The dynamic source routing protocol for mobile ad[15] http://www.kdel.info.eng.osaka-cu.ac.jp/robocup/

hoc networks(DSR),Internet Engineering Task
Force(IETF), Internet-Draft: draft-ietf-manet-dsr-[16] http://www.robocup.org

10.txt (July, 2004).

[17]
http://www.tzi.de/4legged/bin/view/Website/WebHome[4] S.Kikuchi, H.Tsuji, R.Miura and A.Sano: “MobileTerminal Localization Based on Local Scattering
Model in Multipath Environments,” The Transactions of the IEICE, Vol.J87-B, No.12, pp.2020–2028,
2004.
[5] T.Mukai, H.Murata and S.Yoshida: “Study on Channel Selection Algorithm and Number of Established
Routes of Multi-hop Autonomous Distributed Radio
Networks,” The Transactions of the IEICE, Vol.J85B, No.12, pp.2080–2086, 2002.
[6] R.Ogier, M.Lewis, and F.Templin: Topology dissemination based on reverse-path forwarding(TBRPF),
Internet Engineering Task Force(IETF), InternetDraft: draft-ietf-manet-tbrpf-11.txt (Oct, 2003).
[7] M.Okamoto,H.Sugiyama,
T.Tsujioka
andM.Murata: “Low Power Consumption Type Multirobot Network System,” Technical Report of IEICE,
CS2005-21, Vol.105, No.280, pp.31–36, 2005.
[8] Osama H.Hussein, Tarek N.Saadawi, and Myung
Jong Lee: “Probability Routing Algorithm for Mobile Ad Hoc Networks’ Resources Management,”
IEEE Journal on selected areas in communications,Vol.23, No.12, pp.2248–2259, 2005.
[9] C.Perkins, E.Belding-Royer, and S.Das:

Ad hocon-demand distance vector(AODV) routing, Inter-31

社団法人 人工知能学会

人工知能学会研究会資料

Japanese Society for
Artificial Intelligence

JSAI Technical Report
SIG-Challenge-A701-6 (5/4)

      !"Muliti-Agent Positioning Mechanism in the Dynamic Environment#%$'&)( *,+.-0/21
3046587890:0;0<0=

Hidehisa AKIYAMA and Itsuki NODA
National Institute of Advanced Industrial Science and Technology{hidehisa.akiyama, I.Noda}@aist.go.jp

       
"!# 
$ % &')($$*+,.-/( *  !#$021"34%$5"01"346728)9
$:;$021"34=<">@?ACB ED EFHGI
Figure 1: SBSP

Abstract

GetSBSPPosition( Num )
:
Num
:
1.
:= BasePosition( Num );2.
:= BallAttract( Num );
:=
+
3.
4.
:= MovableRegion( Num );5. if
6.
7. returnThis paper describes our novel agent positioning mechanism for the dynamic environment.
This mechanism utilizes Delaunay Triangulation to split a environment space with sample
data and interpolates output values based onr þ F »úû rGØÙ.^Pê  wbgKJMLIF2N¶ m
R S P öqv'UTWV.XZY¤Ú=[\Á6]_^BcGC`ZNa OMk|PlxQ m¹På'§ mKbdc  eM²nf'º\BL cG TqViX³Z_L'¨

the shading algorithm in 3D computer graphic
domain. This method is very simple, but runs
fast and has high accuracy and scalability. In
the experiment, we compared our method with

Delaunayother function approximation method on the
RoboCup Soccer Simulation environment.

RoboCup(RCSS)[3, 4]

2D

>
@
B
?
D
A
C
Ej\GFIkKHKlnmpJIo LNJIMPLNORMGQ.OiSUQqTWSsVYruXKt'ZYvNLNwxT\gz[]y|Q_^R{x`b}baNTWcKV~dGXebZ]LNfGeGT|gi[YhQ ¹ ²~ºbgiLKhir|jl|k ~gnm\LPF\½Li»\^x`b§N lGm mLGF\}=oqp
Ku  lwg=rtvx\s kbb\c_k  Áç m ýIr¡¹ {W~KgP¯K°I¢ û Y'c
I ^IBgnIuBxq\Y}bcU'b m
j rB^ m\b rG.^G\JWL\k\MWlPO'mn« Q `b§N lPmno JbLbMIObQSpryB{\²]CºImLKLGT|F'V_rXW¡ZY{KLI^nT[zuQ ^h¬ S ruKg\Icu­K¡®q{Wru¢K¯K£°2d_ m\¤W±gb¬ aG¥WzgIcxgJb¦~LbgIMI§|Ob¨PQ©'ªS rKI¡ yK}z{ 'Ð"|8c%[M¦Y\¥Wi\¶z§' cG
{rBGGE³^G.²R´wbQigGµ'­®¶g\k aRH'¥'LIK» g³b¦z¼ gIB§xcin½|·GLI¸B»|^ ^ImP`\¹ §b²u ºlxL m
|
k
x
l
m
¾ ZY¿iÀÁk zg\c o JbLbMKO\Q³Ssm }GÂKÃBr¯KÄB^2zGÅ0Æ
m|L
¬
«
³
m
¾
q
F
R
r
³
¡
.
{

Î

b

¶
_
Z
K
¿

À
R
r
W

\

.
¡
.
{

í
rGlPÏÇBÈ ¶BÐpÑB\ÉÒ¶¶~ÁÊÁ¶xabe³g|pai ¥B HLb»'rxËÁÌ|ÍxLKEÎQP© ¬ |c úuû å ì |cn= }q^ m I ~ c r KnM. ±¡.{irqGÕWBÖ×gWÐ Ø\h Ù2j ^dP¤.cb¶PÚmÛ|^J|liLWmKMWÜ O'v|QrRS Ý}NÞW\ßB\àÓÁ¦nrÔ T{CMV³XwY\yM¤.z ccn  kKmo Æur=r B ¾ þ Z_wK¿KgGÀbCr boZ¡³{ wyMgxz \D WF¡ F
á\âWã\ä Gå§c áqæ 2çpèWéq}iê  w k |cRÉ¶nàÎ¶ GI»B  ^ â R
g¡.b}2{n¦ î'mbëïqì^Gð.rR¯W\°³\`6^  ÐR¶n| J|lbñxLWòqMWkO''QícbS }IÚ\Û m ð.ÓÁÔ ¦  X r sn¾ r=Z~BK¿ibÀ\¡Brn{IK ¡lRm {\mW% LRWF\x} ÌKGs_LRMr F ¬U qû ^b \lPc m¥BúnûÚRó³}IüôW8r ¹ ng'Q ¾cxF'³à2ýB¦ kb± ¬bmIþWõ ÿBnö.k'vKlim.­\cP®÷8rR¦z¯\à'°írBø_ù« m'r ` LiûF.k rR\\cP³WC^ ýBZ¶_ qm c R XísnU rCB . ^'û nkKP.m  Zm'|¾ m Zu¿NÀ¬ b¶ m J|LWMWO'QíS]rR\\¡.{ Î ± ¬ zqc|ø_ù rnIK¡'{N} I yz 'c qK k =r  lGm Bb¡'{b^1

2

predator-

RoboCuppray

Situation BasedStrategic Position[1]2.0.1

Situation Based Strategic Position

Situation Based Strategic Position(SBSP)

SBSP

1

1

2

[0, 1]

332 ¶n m m'LiFqrRWm^  ¬M ú_û û Áa\Ú³ªÉSsFÁm ¶ X¾ YbM¬ ¤B ûcqzr §Áõ } ^ Cg S Ð P  m _m'g LiFqmbrx¾ §|\cP³|^   ¶zM ~ cnZY¿iMÀb }= MW\Ó 'm cW\Î_ ^Ng\Rcn o^ Z~¿xÀWrl ng JLiF k Îç m  r ¾ Z~¿xÀWr 

à
Î
g
ç
ÃÎs¶nu|§c³¶nW§W§g\~Kï§I]2k ¶nàÎN¥q¶ m Îm  ¾ àZ_¿ba ÀWbH}m'LK»qLiF. .^[r!Ð c dn¤qc''z} k ÔIcG `" p$#&% k Wc''zà¦ m¹ ²_ºLTBVxXqZzLTÁ[RQP^'('cnb  
rNH'LI»} · )|à *&+.r J_LIF³ ,|å¶_\§WcG
1

SBSP

RoboCup

Figure 2: Delaunay

SBSPzF
¡ j áqæ LL¨qb¶nNð.k ¦~¥BÚ o|¹ Q ¾ F} m&n w\^|¢ å¶¥BmÚ  ¹ r Q ¹ ¾ Q Fq¾ ^F BR\ |¥ r§Ki³t³%vBo £ ôbR ^¶R¤ Ú\ cNkK^ mlPo'm ¹ð'ÁQ ¾ ¦Fqu ÎrGW¦ ¥B&¦9cPNB§ ý'b ý\kNr m Q W R Æ _lR m^Qô  z _qg\c c_m tqv|§ e¨ \B}
OKP_
Q
R ¶ m NZO_P r o©  k Ù8¦~¥³c ± ¬Kõ r.S P ö.NMv
Im ¶_z§Á$[_\]K^'cPR  þb ÿ'm S kWlRöBm N_vOKr P_[_Q\R Ir¶_[_ \Deluanay N_OKP_Q
P

-/.0

x
¬
õ
k
\
G
l
b
m
±
1 bBl KK¡'{ yz D FFGIK»rk2 åím dP¥.c únû ^43ÔÐ65 É¶nW§cxWï7^ â ¶RÚ
2 'å._^d_¥bK`2ç rm B  þH)'DrnFH9Ë F8:xGIbLW»¨ ;.kWl4²S k `Kg Â S kP Ôxú_c_û  }= 1 ^RbB¢l}B<Mq cb^ ÚÛ|^ wg lipGmrI> ^Ig'_g cG_Ë?³8&¶P:beqLp¨N;ÎI²1 S~bGå $ ì3¶ýr\`.Ú\ÛÔ mm ¯?Ë Ä.8&^G:bL¨  ;Î@²AqS bvW 4r 2  åX ¶Pb gNr ¥b/gÎB ¦_m gb?Ë §N8 :KL¨;Î²S~@&A.Bc ÎC&DBqcKgGrFEx© S }GH ¶ m IJ_b.l ÑB§N

3

K L/- MNOPRQST&-U/V
W Æ rXIï|rYZ^i`K§I m SBSP k2 å.d_¥c úzû  m
S P úPû à2¦ < S&[ únûF\ ¢}6¶ m]  r únû 
+ JL
n
ú
û
Fqb^q¶nKmRIT|Ø\µÙJ|¿idP¤. cBúnû xG&_W^Î` V'únûÚ [b7] ¶naRb + JË.LKFL; ¾ Sed QN 2 å¶ m GUI r\f LxFB^BKR Ü vK3 c} ¹ Q¾ Fnð.c áqæ mW2¹ çpè\é¾ ^.KR + lúnû nØ\ÙdP¤
ÚiÐ máb¶nâ àíßB¶Gr_gbk }2§?¦ u`2ç~Q rnyqFq{|r42\g `bÂ Â|h&'i cW|| eílnç!ò Dj ¶zÐzàZg ÚG|Bçlj§_+hi³z, Ùqå|cN} ÚNu Ûbí^ ¦YlP¥qm4cGm n wNgnèIé'}C~c g úû &+wJ_LIFBr_|mn wNgnèKé|}C~ c g úuû +ZJKLRF'rno BwNgdpGrB
¶StsnmL\ª _p BBquvbú£Fû w/(Radial²
Basis Funciton : RBF) rzúûx© r ²'SysPLª (Normalized[5]z~}W\cP'¶_à¶ m _¥
gGaussian network : NGnet)[6]¦nS{dWrKJQILKFç p}l |0è\ÐémRdP¹ ¤.Q cG¾ Ë?F'8 r K: û L}_¨I~r Wû ci} ^ 3 c _Ë.GèILéq; ^ ¾
àËbà'L;c¾GE ©×S{|d SU}QÁ3 z·nÔ.¸BÐY^ gWm cqáKuâ §ÎßBr ì  ztY`a/2Ib ç]reNèKÚ é m I3 c}xªxÙ6©i£¦ ¥B¶cqÁ¶xl e³ôb¦}_ §ím _ÙÉh ¦]j ¥Bptcí +dn¥qú_cGû  }/W8 ²nªm³²
þWÿBk'lim P¥É¦nrh j  y ¶ m .j § +&h Îi U`

3.1

2.0.2

SBSP

NOMPQ R

SBSP

SBSP

Delaunaygøzù\ÁPå'§'cG

ª«&¬­¯®

Rlm
\r_²_X r
RQ
m

Î

¶
Ú

^
°µq± e¥|c ëiì r NOnNMP OKr¶P^·¹¸ }WýNrWøyºB^ r ³tµ.exgI§ Q R r'W kim]o N
rUoÀ »BÐxrW¶PøgbO §2Á³o_3B§í^R{'1c½ÂÁ¼ aFg.bKY/¾  m NK^ OP Rg\cOÓ0P Ð!¿
R rGÁ â RKRdK^ lxm
N OM

P
Q

N
M
O

P
Q
Ã  g ú  ^Wc
 pyÄBàK¥W\§'cGðqí¦YR¥Úl ý²r X.²rPWX³Õ ^ û  } ¶n XÅ) Wì r 4^  Æ³X Û'm c} k
N ÔIO_cGPZQR  K&R k ÆqÛ|c D FEF G


N
M
O

P
Q
IK» l §íÇÐ bb=à |6¦ ¥K`ç m oqpjÈBg D FFGII»\rk |cRÎK k R m &û É &Å RÊ&ir û ± r
M& lkmD
² X N¥B G FÁ¨N¿» r N OP Q rË }~ cKk bcn þbÿWk å\§Wc ¾ db
µ8G» lPm p.W. pejÈBg
D F F G2I\»'
rÌí$ b2b¶nn |×¦~¥._c Í&Îw Ï Ð&Ñ&( \På'§b.`"É¶GÚx

2.0.3

Delaunay

R
M
N
K
O
_
P
Q
y³´  X

Delaunay
T

”
T

P

”

P

2 Delaunay
Delaunay

Voronoi

3

Delaunay

DelaunayO(n log n)[2 ]Ò&¬Ó¹Ô&ÕTRÖR×_ØÙö
U[M\i¶z lGm `  Èi³~Úí¶z m g v
rWªi^xøYùM`W\.aKcåWÜn§\qacni[Mz¥ \BlGrm Ì³eÐb Û9k E\bQNc´PµXPdiLWL¨NTKµOx8KL.ÌLd  ²
QNµ D FEm FHGI» ·³2K&¨_D \ k WcG ^ µ dNLKTKOG.L LZKQRµ F FGIK»\r nÝÊ

3.2

S P

3

3

ÂBcJ_LIF³6]_^BcG

[8]

3

33

ÚÇÛÜ!1!MÝMnQ¹Ôº Õ ;y R|SjÖ| ×T±%/U;ØVjW QQÞÙ4ß##à*á!ejÃÄ % R
SYcÌâ %ãä *åæ1âÝç2Q  s;âèÌ9éê Ö $#ëíìî"  pqï) ½Yðñ òó %• ®
x pqï)Q;ôõ  z !µ9ö T±UVjW % ëí÷ÐÏ
R!SYc9pq[!\ %/ø  ÏÑùæ1âú 9û Ì$2ü ö¦4ý áóâ\YôYQõ þ4ÿ!ÌkÌÏj$ Â9á  z µ9ö T±U;VjW!á
¤#%n®

Ì  Z   í$'i  çnâ   Q  È • ®
bc#Â ö 4 á MZ  %/¼ SMâMÝç Ïíi Q¹Mº$©ª   ¦ Ö $T+UVjW "!$#{# â MZ  Q•ª!c&%!á!Â9á  z µ9ö T±U;VjWQ9RS+" | ' ¨  Ï ö ©;ªY(%áÞYß %/Õ " â$) ö ©ª*  ¦ Ö ¬ +õ9 0 zâ$T±U
VjW!á »¼4 ' *,-Q  Ï2âMÝMç  ö ./ áT±UV
W % ./ á  $m 02U 1 !1!âMÝMçnQ¹º+çâ$±Ýö  ÔÕ y 4| ó \i b2c ö .&/ á  3
m 0*U 1 
6
/
5
Q
(
4
;
s

â

Ý
ç

1

â
$
Ø §M%•dILT\OiLnLWWQiµ D FHF GIK»W^icUS Pµöqv â¥ R NOMP r ©  uà ¦ Ù0¦Y¥qc ±ø$º¬ µKýx¥

Figure 3:

Pa ,Pb ,Pc

NOMP Æ!#" $)  O(PB ),O(P),O(P O(B)
 B %'& (*)+,)- P P  /.0 I % Æ$
1. P
 −−→
21!3 I 4
−−→2. |P I| = m |P I| = n
5 O(I)  
a

b

c

a

b

b c

1

c

1

798;:=<3>;7@?"A$BDC!IH Z*JZ 4ánó\
;Y%/¸ Ìb c4ö ­ 0FE l Z ­3G/U3T$À+
K _1L â$V2RCSS¢ç(b/M2c N ö %2¥ b2c(O6â PQ Z&R U
 %2¥%TS

W

i
k

NGnet
U
/
|
|
W
b
TX

/
á
M
ó
\
W
b
$
ç  %'·¸ ö h [Z (%;á T U9%3¥VW4Y QRS " ;öYÕ$" M|NGnet
ó\ %* ¸ ÌYc ö (%ái\]  ç M#

À

1

â
N %n¥

4

m1
O(I) = O(Pb ) + (O(Pc ) − O(Pb ))m1 + n 1−−→
3. |Pa B| = m2

 |−BI|'1
→=n2

O(B) = O(Pa ) + (O(I) − O(Pa ))m2
m2 + n 2

6798;:4<!=>?@A!B7 CEDFGH;>I J
KL M NOP!Q;RS!T+UVW YXMZ W[\ % De-` a0 Ybc9dfeE$/g a40  Mh launay ]4^_
XZy W/[$ \4jikWb*QczYV# lnmoQ/{pqM1|rtsn[s2\9u}9v!~ Qwxtr | ) _MXZ W]^;_ jnc9Vlm9oQjpq1;rs2[!\juvMQ 3 a0 j 5M " ! y cMj y $
3.4 4Y>
KL  1   4 Menj 0#% xM
) _t*4 Wkj¡ M¢4£4¤• 4 %/y ¥4¦ $$;RS | T+UVjW j§  *¨ QY©ª jw4«
4­!UVjW 9®¯ jq4°$RSMjT±U;VjW • 4¬
Q ²³´¤M z Mµ  ¥¶4·4¸ Q¹Mº$
T±U;VjW »¼M½Y¾¿ QÀMÁ c Â/ÃÄQÅÆÇ
•UVWQË y Ì ]4^ zj$ »ªÐ
¼ÉÏÑÈÊÃ¾Ä¿ y | T±_ÍYÎ %/ÒÓ y YÌ$
3.3! #`_ Za cá b2d  ztë ö RBF ^ !
RBF ^#c_ Zaefg âghiáj9 % ö ª h iájá*k e
2c ¿2lm 1â 0 Q nMâ$ RBF ^ ! #`_ Za ö hi  áTopMQ*ts*Ìq N3e hi!ár  [\Fs  jYQ 0
ÌYc#*b te uv(Q wdM1â9Q ö NGnet *¿ lme* s
/chi  ô x  QÀÁyâ$z Z {| U$#Eá/óe\ uv ef Ìc  ö j~Q } âMÝMç t!b!Ï2Ì| ö KL  RBF ^ !$#_ e Z a + Ï  NGnet % 
¸ b | $  ç21âç öájá"!$# i  "
x %§
NGnet
á jj  ö  Fá   R!S " y!â$

4.1

NGnet

NGnet

fi (x, w) =PN

j=1 wij φj (x)

(1)

PN

Már g2 h i 23F" jj![2 #  M"'ááÞj* N z#+ ë ö z4â$ ácφ  (x) RM Sr
 " y!â$ 
j=1 φj (x)wijjφj (x) = exp(−34||x − cj ||2
)
2σj2

(2)

Ý Ý  ö c  g2hiMár;[M\ ö σ  h2iá/-O Zj z4â$Þ N + w  ö 4 áT e 9â ð Yj y â$â [9] $i&\] [e ö RoboCup2004 e¼ b | JZ 
á#ç   z4â UvA Trilearn(  ;Wj( ) %·4¸ b | $
2

j

3

i

(3)

U$#  á ¨; α % 0.5 çb | $ η % 0.1 ö ¾;¿Zhiá r[!\ cj e ö T U9VW çb/cR!S | XZ Wá[M\uv % h;átt ·¸ 1â$;1jÁ ö T#UVW±ç hiá   &%kçâ$*hiá- σ e ö M á Õ "y!â 2
 E Z  3 ! a  5 %/·4¸ 1â$
N

σ=

1 X
||ci − cj ||
N i=1

(4)

ÝÝ  ö c  c á  áhi % /65 1â$ji

V lnmYoMáó\4á _ L6ef Ìc  ö Øe ;â !Ç#Ù 0  "á  ö hbcMhá e h Ï'(Ç !
Qôõ  zâ*$hÝ  ö"$#  ö TtUVWMá%&°' %)(
b
n
%
¥

Y

m| ¹Mº $Me Ýj1á â GUIW *Z W ejö ÝFormationEditoröç ó!\áÙÚ m ( + b 4) ö .
N *Y- Z MZ %n · çâT± UVjW % %_&L1!,âM´ Ý% ç
Q  s;â$

4.2

FormationEditor¥| óM^ ;Þ \ ß eÂ94{ö ç Â #ë ász  â/T#ÌQ UVWy 3| $!Ý# %ny ¸ Ìöc Ôë Õ ázb
âjT±U;e VjW "!$# %¸ Ìc ÔÕ ¦ b | ó\4á )2  e . QzâMçíå   sâ$  ëá;zâT UjV/W3!# %/¸ Ì | q
y y!â/ó\  ö XZ WQ[P Z W>=
N rUö NGnet
9


Ô
Õ
â ¡¢ C £ ª#V l2m;oCQ  )ç < ¥à ¤¦kb/cÌâ$

eWMz4
A
XpZ q Q À!Ì öZ WBCD  Wm3cU  *z sÐ Ï;ç ö ª V#lnmo4Q ðç*ñz
t ªë W#á%  Ìó\ çâj$ü e ö § ¨!
WZ  £ 4m `U ©4s   "P Z «
W =IrO  XZ WQ ¬#â Ke Â ö V#lnmoMáq±sjb £­ Ì$M`Ý y e i b2c ö ª Z  á q N qç ] Zá q N.® £ ö Ì xytÂ P Z «W =ª $
Ìc XZ WY[Îef\ eN Á | V l2m;oápqMMQ ¯° ® s;@â ±Q ²  ´
Q ³9Â'÷Ì µ·¶ £ ö %¸¹ B® á Õ0 M
D NGnetW 3*zk  s  t ®XZ 
W º x :»2y µ9ö há ttV#l/mo4Q}  e &"t4 | ¡¼!Q ½ x+y y ö Õ0 á ¾¿ 
Q ÀMS || » ® z !e;ªç ÁÂ y yM{â ±ü e ö ¹ e{Ã »:t*y | q N£ ö P Z «W = rU  ³¥Ä2Å e ¬tâ*pqá `Æ QMÇÌ | » e ö Ä2ÅQ  e*N Á x e 40 1!âYá ®£ Ì  ¥ç ÁÂ y y!@â ±O  L.j6e  ÌYcÂ ö NGnet ®j QMÈt | 7
V!l3mo4áp;q Éá È]4Q C® z !ªe ± 5£ö V!rl3U m®oYá
Q XZ W7º x ncYÌ;cÂ ö h;á/q#s eTN Á cpqkbeçYbÌ | » e ö OËÊ Z Q ] Ï2Mjc
b*t4 | ç¥ÁÂ y y!â@±cÝ yI³/áÞYß  ³ ö NGnet ®C£ ö i  ÍYÌ
ÎE ® ö áT U
)
VjW!á* ¤ á@W!Qó\4á e ±s ÏEÃ4ÄÌº/RS ÞßçYbc ö JMZ (á O PQ Z R FU  e Â'ÃÌÄ ºRS ½ 1Ì

4.5/021 3

T±UVW "!$#ççYb*c 3  á*O Z U %¸ / 1!âj$s
4 A á + 5  " + 7 e T#UV*WMá*-5 % O1j$hy Z y ö
á 6 8á[!\Q;T U9VWá XZ W[!\ %9 1j$+ r7tFx ö &¬ á M2N·¸ s9â ´
t  ° ë;: <ú*T¤e
UV*W $! # %¸ / b | ( + 5) $!ÝjáTtUV*W 6! # 
W =ª 6
ACöBD PW 3Z >Î@? jc;T U9VWQR!S " y4c f ë öe*z+ CE á ¤ Q ½½;® e MjcÌâ$ G áT U;V[ G áT U;V9W "!$#F H
W "!$#  ö 1 I
 " ö P Z JW =KML ö P Z NW =Ir O ö h b*c BCD W
3*z  
á P % Q b ö R  S2T
E2ejý 1âjT±UVjW
1â$ ( + 6)$ÝáT U9VW  ! #  ö BD W [z+W = rU çá VáW(Q  sÏ3MjcÌâ$ ç X P öZ >
 G ájTtUVW 6![#  "  e TtUVW % S
Y2eö
W = rO Tç P Z [W =\KL e Má PT UjVW %T b | P2 Z Z
W "!$# %*¸ / 1â$ ( + 7)$
Q b ]áT U9VcÝ y " % 7
N - Z  çb/c ¸ ÌYc ö  ç NGnet
á4(h y Z y e V#l/moMáó\ %ÔÕ y | $ hbc ö ÔÕ1â/y $ y | ó\ V!%l3· m9joc Vö _) 1 æáj i ç\ b'] c  Mö ç*"$á # MQNt`*w%/¥ b À |¥^;¸   zâ 
RCSS 
¸ aZ JZ  agent2d V _1   %'·¸ 1
4.3/0

gYó\ Z &e i b/c ö 1 !Z P 3000 TMm a Wá MN#%x  À# |ö s 4 B á 96e ö _1P/m9W  " j50 
b | Z;% O41j$6j1â Z  ö Vl3mo4ánó\Yá Ì 
â/ÃÄQ j ½ 14Ì  2z e,ùv çb/c ö Õ0 öeO á L.j ö O  H$!$# á j çb | $á   [0 e{ G 1âç Mö  ëá;zâT UjV/W  !
9 2
#,Tá q N3e ö Y! NGnet á 3 -!á 1  `Ï t Y0Q S#" cYÌ4âÝ4çQj-  â$ü e ö Õ;0/[
@
Á x 

¬
e
úQ NGnet á Qj÷MÌ9$  e ö 9 3 á Oá L73e
G 1âç ö 44 á ten2Q O L Q÷!Ì$ ) { ![#,á NGnet áó!\ e&f Ìc öe Âö  çë3Â zO ë3áTtUV*W M
L.j Q ]!+Ï3M | $4.4∂
+ α(w(t) − w(t − 1))w(t + 1) = w(t) − η∂w

1

u\v@bdw cfsyehx g\c{ikz}jd|l ~RoboCup2006
f m\\; m 4 n)oqphrds TokyoTechSFC t

2 http://sourceforge.jp/projects/rctools/1ÍÎÐÏ¥Ñ¥ÒÔÓqÍÎÕÏ¥ÑÒÔÓq

3 http://www.science.uva.nl/˜jellekok/robocup/

35

Figure 4: FormationEditorÝç2QÁÂ y y!â@±Á. ö NGnet ®C£ ö P Z W>=
ikb*câr Ï %X e T±U;VjWº ¸ / b g y µ 
eO6
PQ &
cU º Õ âÝç'Q +bMÏ ö ÌS(y µjö gZRhiá 
á O ;Z  á !QkbÌÝç º /65 â@±Ý y e i b2c ö  ©C ®£ ö T UjVWTá ¤ {á W e2¨ ÏÑó\á ) Qæ b/cÌ@â ±á ¥ À

 'r]Í'&-Î¡4-Ï\R/Ð= Ñ=Ò¡ÉÊ 6 9Ó-ÔV U
Û & Î4Ï+`D\/ F ÕÇR/RÖ×]Ø]`áÙ-â Ç]S{Î4Ï`\5/+Ú9;Ü=Ý
/-Þ-ß^9+àQms ltU]ãä=å ÛÛææ ¿ /$çzE/èé G ( *±Ã
m5s læ ê G £'råî ï=ð }O dë=vbì ãä5ms }]eRí&rÛå æ {rñ.&6 X!dã5ä].v9+)( * â dl &=W5(b*R=012]34 /`]òV/;óô]õ
& WT Ûæ 'G9`M@  g©`&{-ª!g!uö÷5ms D løùãä5}-Æ!
/ù ú ûØR} üý&={ U=-Rþø
ã=äV9Eÿ ¡(+U^u 9b± STC {'²;/ } Ã&{ ms '©öl  ®£ ! #" $ %'&$)(+*-,./01 2 354
6 859;:=<'>=&?=@BA+C EDF)G (;*- Delaunay H
I=J / 7!
K GML J N'O 9+PRQSTCVUW+. X YVZ[]\^9`_a (b RCSS 9 c5d U efV&Vg]h*5i/ :=jB9;k)(Ul
e5f5m-nBh-Ua oDp'F &]q d=*rstvuxwzy{|R}-~ {]R&h-5U}_ d=Z []\5rm5s b/U==-^9;^+ES=T='C { *=Dq)F um s Gx r-*d l'(E'(;{-}^ _ a DF &]r/]¡b¢=£5 l• ¤Z¥+9`w¦'&§=¨ l NGnet /Vg©;{W`.=XYZ=[\µ m=sª «µ ¬ 6­ 1=®/+¯S°±V{'²E/ a ³RD ´]F ¤1&¶R·[5µ1 }¸¹vA 5*B(t©E}_mr ¶V·=[1 9;ºV*»)(`*=q={ ¼ª]{B;{d-lG;¾ /][51 µ¿ /À=ÁR}XÂ'/][51 µ¿ /À=Á
• ½9`Ã GÄzA  ÅVG }5s U--¾ ¶R·[51 µ /6 .R}Æ Ri)+/Ç SÈB9+» U= /ÉÊ }ËÌ
{ l

5



[1] L. P. Reis et al. Situation Based Strategic Positioning
for Coordinating a Simulated RoboSoccer Team, Balancing Reactivity and Social Deliberation in MAS,
pp. 175–197, 2000.

' – ()*+-,/.10243 '6 5,798;:-<  , X!=">#?A$&@ % ,[2] M. de Berg et al.
2000.
[3] TheRoboCup
Soccerhttp://sserver.sourceforge.net/[4] I. Noda et al.,Simulator,

Soccer Server and Researches on
Multi-Agent Systems, Proceedings of IROS-96 Workshop on RoboCup, 1996.

36

[5] T. Poggio et al., Networks for approximation andlearning, Proceedings of the IEEE, 78, pp. 1481–
1497, 1990.
[6] J. Moody et al., Fast learning in networks of locallytunned processing units, Neural Computation, 1, pp.
281–294, 1989.
[7] H. Akiyama et al., Team Formation Construction
Using a GUI Tool in the RoboCup Soccer Simulation,
Proceedings of SCIS & ISIS 2006, 2006.
[8] H. Gouraud, Continuous shading of curved surfaces,

Figure 7:

In Rosalee Wolfe(editor), Seminal Graphics: Pioneering efforts that shaped the field, ACM Press,
1998.

B

'  ,   A    2D
 !#" , $%'&-Ê() , 2006.
A *,+.-/.021 3,45#687:9<;>=

H,I,JKLNM>13OQPSRUTWV
Table 1:

[9 ]X Îv4Ï\?B¬ 6 @ m/ZC Y[B @=
Y[ @= p]\ a D| FºVC [1 µEubG s¡u
Table 2:Îv4Ï\?B¬ 6A@ ºV[1 µB

Table 3:Figure 6:37

0.2(0.4)

0.08(0.27)

0.24(0.52)

0.06(0.22)

0.02(0.14)

0.02(0.14)

NGnet

_

0.98(0.89)

0.76(0.9)

1.76(1.24)
3.7(1.97)

0.6(0.74)
3.16(1.67)

NGnet

_

99.06(19.08)

110.6(18.79)

67.68(15.07)
83.86(19.1)

91.44(21.35)
84.3(18.48)

X Îv4Ï\?B¬ 6 m6/ZY[ ³5@ ÊbC ¬ 6 B a.
Y[ ³5Êb¬ a. p]\ a D| F

µ
ºV

[
1
C ubs¡uEGÎv4Ï\?B¬ 6A@DC ubs¡u B_

X Îv4Ï\?B¬ 6 m/ZY[ @ ³5Ê C _]` B a.
Y[ ³5Ê _]` a. p]\ a D| FµºV
C [ub1s¡u
EG
Table 4:

NGnet

X Îv4Ï\?B¬ 6 @ m/ZC Y[B ^=Y[=^  p]\ a D| FºVC [1 µEubG s¡u
Figure 5:Îv4Ï\?B¬ 6A@FEG B

NGnet

_

20.2(5.06)
18.8(5.52)

17.18(6.06)
19.32(5.29)

12.06(4.17)

14.5(5.21)

社団法人 人工知能学会

人工知能学会研究会資料

Japanese Society for
Artificial Intelligence

JSAI Technical Report
SIG-Challenge-A701-7 (5/4)

マルチエージェントシステムにおける行動制御アーキテクチャの自己組織化
Self-Organization of Action Control Architecture
for Multi-Agent System〇川上皓平,

杉山英輔 (慶應義塾大学大学院理工学研究科)

藤井飛光, 吉田和夫, 高橋正樹 (慶應義塾大学理工学部)* Kohei KAWAKAMI, Eisuke SUGIYAMA (Graduate School, Keio Univ.),
Hikari FUJII, Kazuo YOSHIDA, Masaki TAKAHASHI (Keio Univ.)*corre1@a5.keio.jp, sugiyama@yoshida.sd.keio.ac.jp
fujii@sd.keio.ac.jp, yoshida@sd.keio.ac.jp, takahashi@sd.keio.jpてトップダウンとボトムアップの 2 手法がある．前者は設計意図を明確に組み込むことができ，後者は創発性を持つエージェントが環境に応じたシステム
を自律的に構築することができる．
本研究では両者の特性を活かし，設計意図を取り入れて進化論的計算手法により学習することで準最適なシステムを獲得する手法の構築を図る．具体的には行動制御アーキテクチャを複数の機構に分け，各機構を自己組織化領域，人工設計領域に区切ることができるシステムを設計する．
また，マルチエージェントシステムにおいて，エージェントの動機に基づいたタスク分担をすることで効果的な協調行動を実現する．
本研究は，RoboCup 中型リーグ用のサッカーエージ
ェントを題材とする．複数の未知なタスクが混在する動的環境下においても有効に機能する行動制御アーキテクチャを構築し，その性能を検証する．

Abstract-This paper deals with a design problem of action control architecture for cooperative action ofmulti-agent system in dynamic environment and presents
a self-organization method based on autonomy andemergence. The architecture consists of a task selector, an
action selector and action modules. These are developed
by self-organization using an evolutionary computation
method of GNP and GA. All agents in the team have
similar action control architecture. This enables flexible
cooperation in the agent’s action based on the global simultaneous evaluation of adaptivity and necessity of thetask. The method is applied to the system of the robots for
the Middle Size League of RoboCup to verify the effectiveness of the method.

1

序論

近年，情報工学やロボティクス分野の急激な発展に伴い，エージェントを取り囲む環境が大規模になり，エージェントに対する要求も複雑化してきている．これらの問題をマルチエージェントによって協調的に解決する制御手法の研究が盛んに行われている［1］．従来研究では設計者が状況を想定して予めタスクを設定し，そのタスクをいかにエージェントに振り分け解決するのかという役割分担問題に焦点が当てられており，設計者の意図しない環境の変化に
エージェントを対応させることが困難であった．
本研究で提案する行動制御アーキテクチャの特徴
は，エージェントの制御器を設計者が設計するのではなく，進化論的計算手法を用いて自律性と創発性を持つエージェントが自己組織化して構築するところにある．エージェントが自らタスクを抽出し，選択し，行動することで，設計者が予めタスクや詳細な規則を与えなくても，様々な状況において目標を達成できる柔軟な協調制御が可能となる．
行動制御アーキテクチャの設計手法は大きく分け

2

マルチエージェントシステム

2.1 エージェント間のタスク分担
エージェントの環境に応じたタスク選択はエージ
ェント間の役割の重複を避け，効果的な協調を実現する．マルチエージェントシステムにおけるタスク
分担の研究は以下に示すように多くなされている．
情報を一箇所に集めてからタスクを振り分ける
AUCTION［2］はそれぞれエージェントのタスクに対する適応度を集めた上で優先度の高いタスクを適応
度の高い順に振り分けていく．これは常に他のすべてのエージェントとの相対評価を必要とする．
Parker らが提案した ALLIANCE【3】では各エージェントの持つ impatience と acquiescence という 2 種の動機をもとにチーム内でタスクを動的に振り分ける．
他のエージェントを補うようにタスクを分担するため，堅牢な協調制御を実現している．
また，感情によるタスク選択手法は昆虫など生物

38

3.2 行動モジュールの集団行動における役割選択モデルを用いる例が挙【4】
行動モジュールは実際に行動するために必要な指げられる．文献
では人の感情の「快-不快」に着令値を計算し，アクチュエータへ指令を与える機構
目し，好意を持つエージェントに接近し，嫌悪されである．単純かつ連続性のある行動をモジュール化ているエージェントからは離れるという作用によっした．また行動モジュールが実行可能であるかを判て障害物回避などの行動制御を実現している．
定するための判定モジュールを設計した．
2.2 提案する協調制御手法
3.3 行動選択器
マルチエージェントシステムにおいて，環境の変状況に応じて行動モジュールを選択する機構であ化に柔軟に対応できる協調行動の実現を図る．情報
る．3.2 節の判定モジュールと行動モジュールを遺伝を集中的に管理することなく，タスクのみ共有する的ネットワークプログラミング(GNP:Genetic Netことでエージェントが所属するチーム全体の協調を
work Programming)[6]によりネットワーク状に繋ぎ，行う．藤井，加藤ら【5】は設計者が設定した目標に対する各エージェントの達成度を評価して，チームに行動系列を構築した．概念図を Figure 2 に示す．菱
おける自身の役割を決定する手法を実現した．これ
形は判定モジュール，四角は行動モジュール，矢印
は抽象化された情報を共有することで協調している． は行動選択の流れを意味する．
本研究ではエージェントが環境におけるタスク適
3.4 タスク選択器
応度を，チームにおけるタスク必要度と比較するこ
タスク選択器は，状況に応じて行動選択器内の実とで自身の実行すべきタスクを選択する．タスクと行すべき行動系列を決定する機構である．タスク選
抽象化された評価情報を共有することでチーム全体
択器は，タスク適応度算出器とタスク必要度算出器の目標を達成する．また設計者の意図しない環境のからなる．タスク適応度とは，環境におけるエージ
変化に適応するため，タスクは設計者が設定せず，
ェントのタスクに対する評価値であり，タスク実行
エージェントが環境からタスクを抽出し，タスクをのためのエージェントの評価指標といえる．適応度
解決する行動系列を獲得する自己組織化を行う．環はそれぞれエージェントを中心とした局所的な環境
境に応じた自発的な協調行動を実現するために，行情報から算出される．
動制御アーキテクチャの機構を分割し，学習を取りタスク必要度は，チームがタスク実行を必要とす入れた分散協調制御のためのシステム設計を行う．
る程度を表す評価指標といえる．これはタスクの解決に必要となるエージェントの適応度の合計値である．必要度はチーム全体における大局的な環境情報
3 行動制御アーキテクチャから算出される．
タスク選択は，自身より高いタスク適応度をもつ
3.1 システムの概要
エージェントから優先的にタスクを選択し，自エー
Figure １に本研究の提案する行動制御アーキテク
ジェントは最後に必要度が満たされていないタスク
チャの構成を示す．行動決定を行いアクチュエータ
を選択する．但し，エージェントのタスク適応度がへの指令値を決定する部分は，環境から情報を取得
し，それをもとに自身のタスクを決定し，タスク内
Action selectorの行動選択器において実行すべき行動モジュールを
Action 1
Action 2
Action 3
Action m
sequence
sequence
sequence
sequence
決定する．エージェントは協調のため共通のアーキ
テクチャを持つ．次節より各機構について説明する．
行動系列

行動系列

1

行動系列

2

行動系列

3

m

・・・

T as k
comm

unica
ti

TTaassk
k aaddaapptitivvit
ityy

on

TTaasskk nneecce
essssitityy

recep

A c t ion Se lFigure 2: An aciton selector

e c to r

Se q ue nc e
1
Seq u
en ce
2

Task
Priority

Necessity
Task
Task 00A c tio

n Mo

n2

・・・

nn

Task
Task 11

Task
Task 22

ON / E
ffectoOF F (
rac t u at

order

or)

Moto
r
Engin
e
etc..

Own Agent

Actio

n1

・・
・

Actio

d u le s

・・
・

Actio

・・
・

S equ
ence
m

Adaptivity

Other Agents

In fo rm
proce ation
ssing

to r

・・・

（sen tor
sors
）
Ca m
e ra
Enco
der
etc..

S e le cThreshold

Figure 3: A task selector

Figure 1: An action controller

39

な動作ができる．Figure 5 に外観を示す．
閾値以下もしくは必要度が満たされていれば，その4.2 RoboCup への適用
タスクは選択されず，次に優先度の高いタスクに対3 章で述べた行動制御アーキテクチャを RoboCup
して同様の処理を行う．タスク番号の小さいものほど優先度が高い．Figure 3 はこの処理の流れを示す． 中型リーグのロボットに適用した．シュートやパスなどの行動をそれぞれ行動モジュールとし，9 種の判
箱の大きさがタスク必要度，各エージェントが持つ
定モジュールと 10 種の行動モジュールの組みあわせ箱に入れる中身がタスク適応度を表している．このを GNP により学習した．エージェントのタスク適応
図では，TASK1 の必要度が他エージェントによって度はボールとの位置関係など自身の環境情報から求満たされているため，自エージェントは TASK2 を実め，タスク必要度は得失点差など大局的な情報から行する．各エージェントは実行タスクを伝達するの求める．この環境情報の重みを GA により学習した．
ではなく，あくまで抽象化されたタスク毎のタスク
学習の適応度はゲームで勝つことをチームの大目
適応度を通信によって共有する．
標としているため，得失点差，ボール支配率，ボータスク必要度を算出する際の環境情報に対する重ルの敵陣存在率を増やし，衝突回数を減らすよう設
み，およびタスクの閾値を遺伝的アルゴリズム(GA:Genetic Algorism)を用いた学習により獲得する． 計した．これを Figure 6 に示す．
4.3 シミュレーション
3.5 タスクの抽出
4.1 節のシミュレータ上で，学習基準となる人工的
これまでタスクを評価し選択するためのタスク選に行動制御アーキテクチャを設計した相手(2006 年
択器と，実際にタスクを解決する行動選択器の構築
EIGEN KEIO UNIVERSITY)と試合をするシミュレー
について述べてきた．これらの制御器は，タスクをションを行った．学習後の個体とは 200 世代学習し介して関連している．タスクは，タスク選択器と行たものである．世代交代モデルは ER(Elite Recombi動選択器の設計の指標となる．本研究では，タスク
nation)を用いた．次の 3 条件において実験を行った．
選択器と行動選択器の構築を同時に行うことで，環境に存在するタスクそのものを構築しようと試みる． (1) タスク選択器を人工的に設計し，行動選択器の行動系列を GNP により学習した．
具体的には，各制御器の学習を Figure 4 のようにタ(2) 設計意図を組み込んだ行動選択器を使用して，タスクの性質と解決方法を関連付けて同時学習するこ
スク選択器の重みを GA で学習した．
とにより，設計者に依存せず環境からエージェント(3) 設計意図を与えず，行動選択器とタスク選択器をに必要なタスクを自ら抽出する．
同時に学習を行った．
また，すべてを学習させるのではなく，一部の機構を人工的に設計することで，設計意図を組み込んだ学習を行うことができる．このため，学習の効率(18000, 0)x化と設計方針を明確にすることができる．
Agentsエージェント(Blue Team)実験

4

エージェントAgents(Yellow Team)

ボール
Ball

4.1 実験環境
本研究では，RoboCup 中型リーグの環境を模擬したクライアント-サーバ方式のシミュレータを用いた．これはプログラムを継承することで実機と同様の動作を実現できる．ボールの反発や摩擦，認識誤差などを再現し，また学習のため実時関よりも高速
Task Selector
Adaptivity

ゴール
Goal
(Blue Team)yFigure 5: 2D simulator

Startactionaction

・・・

・・・

・・・

Other AgentsBall Dist
Ball Rad
Ball FreeSpace
Own Position
etc.

Task
Task 11
Task
Task 22

Own AgentThresholdmodules

Environmental Information

Task
Priority
Task
Task 00

vsvs Man-designed model(0, 12000)

Action Selector
Necessity

Leaning model

ゴール
Goal
(Yellow Team)

judgment

actionactionJudgment

actionjudgment

Adaptivity

11 elements
thresholdScore
Agent Number
Ball Position
Agents Position
etc..
Necessity

6 elements

judgment

actionBall Visible Check
Position Check
Ball Keep Check
ApproachBall Check
etc…

Shoot , Pass
Approach Ball
Search Ball
Defense , Moveetc…

9 modules

10 modules

1 threshold

Action Control Architecture
Task1

GA Parameters

Deriving the task

・・・

・・・

Task 2Fitness

GNP Parameters

fitness = ( score friend − scoreenemy + ( posession friend − 50 / 50 )+ ( ball _ ratioenemy − ball _ ratio friend ) /100

Solving the task

− ( collision friend + collisionGK ) /100) × 1000

Task N

Figure 6: Learning elements

Figure 4: Simultaneous learning

40

Ball
5，Task 2
Approach Ball(a)

1，Task 3
Move FW

GK
4，Task 4
Search Ball(e)

3，Task 4
Move DF

3，Task 3
Search Ball

GK

5，Task 4
Move DF
Ball

4，Task 4
Move DF 2，Task 1
Pass

2，Task 4
Move DF(b)5，Task 1
Pass
Ball

(f)
3，Task 4
Move DF

3，Task 4
Move DF
1，Task 3
Move FW

GK
4，Task 4
Move DFGK
4，Task 4
5，Task 4
Move DF
Move DF

2，Task 4
Move DF(c)5，Task 4
Move DFGK

3，Task 4
Move DF

2，Task 3
Move FW

1，Task 2
Approach Ball
Ball

1，Task 3
Move FW

GK

4，Task 2
Approach Ball
2，Task 4
Move DF

4，Task 4
Move DF
5，Task 4
Move DF(d)3，Task 4
Move DF
5，Task 4
Move DFGK

1，Task 2
Approach Ball
Ball

(g)

3，Task 3
Move FW

Ball

1，Task 3
Move FW

2，Task 3
Move FW(h)3，Task 4
Move DF

1，Task 3
Move FW

GK

Ball
4，Task 2
2，Task1
Approach Ball
Pass

4，Task 4
Search Ball
5，Task 4
Move DF

Figure 8: A result of learning with design intention (Blue: learning with pass task)

41

1，Task 2
ShootBall
2，Task 3
Move FW

(a)

Task2
5
Move DF
GK

(e)

Task3
1
Move FW

Task1
Approach Ball
Task3
5
Ball
GK
Move FW
Task2 4
Task2 1
2
Move DFMove DF
Task3
3
Move FW

Task2
4
Move DF

Task1
2 Approach Ball
Task1
3
Approach
BallBallTask1(f)
Approach Ball
5
Task2
Ball
Task3
Move DF
Task2
Move FW
4
2
GK
1
Move DF

(b)
Task2
5
Move DFGK

Task3
1
Move FW

Task2
4
Move DF
Task2
Ball Task 1
3
2
Move DF Approach Ball

Task3
3
Move FW

(c)

(g)
Task2
Move DF
4

Task2
5
Move DFGK

Task 1
Task2
4
Approach Ball
Move DF 1
Task 1
Task3
2
3
Ball
Approach Ball Move FW

GK
2 Task2
Move DF

Task1
Task3 Approach Ball
Move FW5
1
Ball
3

(d)

Task3
Move FW(h)
Task2
Move DF
4

Task2
5
Move DF
Task3
Move
FW
GKTask1 Ball
1
4
Task1
Approach Ball
2
Task3
Approach Ball
3
Move FW

GK

Task2
Task3
Move DF
Ball
1
Move FW
Task2
5
3 Task1
2
Approach Ball
Move DF

Figure 9: A result of simultaneous learning (Blue: learning team)42

りしている．局所的にエージェントが集中すること
4.4 実験結果
なく，フィールド全体を使ったポジショニングが実2006 年 EIGEN の行動選択器の一部と，学習後の(1)
現できている．また(a),(c),(d)など相手側がボールをの結果を比較したものが Figure 7 である．優先度の保持している場合は複数がボールへアプローチする
最も高いタスクにパスを組み込んだ(2)の学習結果のことでボールを獲得している．このため，(c)から(d)
行動を Figure 8 とする．また(3)の学習結果の行動を
Figure 9 に示す．青いエージェント群が学習群である． のように相手に攻め込まれた場合は迅速な守備ができている．エージェントが協調することで(d)から(e)4.5 考察のように速やかに守備から攻撃へ切り替えることがFigure 7 では 7 個の行動モジュールと 6 個の判定モ
でき，効果的なゲーム展開が実現できている．
ジュールを持つ行動選択器が，学習により各 2 個の行動，判定モジュールで形成された．有効なモジュールだけを用いることで 1/3 ほど大幅にコンパクト
5 結論
で環境に応じた行動選択器が構築できている．
Figure 8 では，1 体がボールにアプローチしている本研究で提案した行動制御アーキテクチャの自己間は他エージェントが補助するようにポジショニン
組織化により，動的環境において，自らタスクを抽グしている．また(b)や(d)を見ると，パスタスクを実出し，動的に切り替えることで協調行動を実現した．
行して，味方にパスをすることでボールを敵陣へ運本研究は，エージェントの動作環境における大目標
んでいることがわかり，タスクの切り替えが有効にを学習の適応度とすることで行動制御アーキテクチ
働いているといえる．特に(d)ではゴール前に待機しャが自己組織化できることを示した．また各エージている No.1 のエージェントにボールを渡すことで，ェントが局所的に得られる抽象的な情報を共有する
相手の守備が整う前に攻めることができ，シュートことで動的にタスク決定が行われ，効果的な協調行まで持ち込んでいる．効果的なパスは自群にとって動を達成できることを示した．
有利なゲーム展開を実現することが確認できる．
行動制御アーキテクチャを機構ごとに分割して設
Figure 9 は行動選択とタスク選択の両方を学習さ計することで，環境における進化と設計意図をともせた結果である．ボールを保持するタスクとしてに組み込んだシステムが生成された．激しく変化すTASK1 が，TASK2 と 3 がボールを持たないエージェ
る環境に適応した有効な協調行動の実現を示した．
ントが待機するタスクとして創発された．まずボー
謝辞
ルに近いエージェントが最も優先度の高い TASK１
本研究は，文部科学省平成 15 年度 21 世紀 COE プログを実行し，ボールへのアプローチをしている．次にラム【知能化から生命化へのシステムデザイン】によるも自陣にいるエージェントは TASK2 を実行し，DF 位のであることを記し，謝意を示す．
置につき，そのほかのエージェントは FW に位置取

BallVisibleCheckY
ShootCheck

参考文献

】 to
All action modules connect[Start] nord

OFF
Start
Start
N

1.

A.Gage, R.Murphy, K.Valanis and M.Long, Affective task
allocation for distributed multi-robot teams.

SearchBallCheck

Shoot

2.

SearchBall

Y.Kashimura, A.Ueno and S.Tatsumi, A Distributed Coordination Method for Dynamic Role Assignment in

PassCheck

Multi-Robot System, the 20th Annual Conference of theJapanese Society for Artificial Intelligence, 2006

Pass

3.

FieldAreaCheck
ApproachBallCheck

DefenseCheck

ApproachBall

DefenseL. Parker, ALLIANCE: An Architecture for Fault Tolerant
Multirobot Cooperation, IEEE Transaction on Robotics
and Automation, vol.14, no.2, pp.220-240, 1998.

MoveFW

4.

Start

BallVisibleCheck

Sharing of Robots with Emotion Model, IEEJTransaction
EIS, vol.125,No.7,pp1037-1042, 2005

N

5.

Y
FieldAreaCheck

ApproachBallCheck
ApproachBall

T.Kusano, A.Nozawa and H.Ide, Emergent of Burden

DefenseSearchBall

H.Fujii, M.Kato and K.Yoshida, Cooperative Action Control based on Evaluating Objective Achievements, RoboCup International Symposium 2005, 208-218, 2005

MoveDF

6.

DefenseCheck

H.Katagiri, K.Hirasawa and J. Hu, Genetic Network Programming-Application to Intelligent Agents-, Systems,
Man, and Cybernetics, 2000 IEEE International Confer-

Figure 7: An action selector of man-designed (top)and a learning result (bottom)

ence on, vol5,3829-3834, 2000

43

社団法人 人工知能学会

人工知能学会研究会資料

Japanese Society for
Artificial Intelligence

JSAI Technical Report
SIG-Challenge-A701-8 (5/4)

Sim-3D リ ー グ Humanoid ロ ボ ットに 向け た こ の へ ん フ ァ ジィ 制御の 提案
KONOHEN-fuzzy Control for Sim-3D league Humanoid robots
西野順二
Junji NISHINO

電気 通信大学
Dept. of systems engineering,
The University of Electro-Communications

nishino@se.uec.ac.jp
こ れ ら の 手法に よ る 制御則構築、 学習則の 適用に は 、 十Abstract

分に 精密なロ ボ ット動力学モ デル の 構築が 欠か せ ない 。 しThis paper presents KONOHEN-FUZZY reasoning system control method for humanoid
robots that have many and redundant joints.
We show a simple control exaple model on

か し、 RoboCup ヒ ュ ー マ ノ イ ドリ ー グで 多用さ れ て い る

dance task with humanoid. The task is modeld
on torus manifold and 2-dimensional fuzzy setshandle the critical conditions.

現在ま で の と こ ろ 、 固定点で 表さ れ る 姿勢を 事前か つ 試の は 実機 ベ ー スで 開発が 進む ホ ビ ー 用サー ボ に よ る ロ ボ ッ
トで あ り 、 費用的に も ハ ー ドウ ェア 的に も 制御則の 構築に利用で き る 高精度モ デル の 準備が 困難で あ る 。 こ の た め
行錯誤的に 複数指定し、 そ れ ら の シー ケン ス遷移 に よ っ て
行動を 規 定して い る 。 こ れ は 一 般に モ ー ショ ン コン トロ ー
ル と 呼ば れ て い る 。

1

多く の 場合、 二つ の 登録姿勢間 の 補間 は す べ て の サーヒ ュ ー マ ノ イ ド化した シミ ュ レ ー ショ ン
リ ー グの サッカー モ デル

ボ に つ い て 平均的に 、 す なわ ち 線形に 補間 さ れ て い る 。 この た め 、 補間 さ れ た 中間 姿勢で と き に 不安 定状態に 陥 り 転

RoboCup サッカー シミ ュ レ ー ショ ン リ ー グ[RCS]の 3D 部

倒す る こ と も しば しば 発生す る 。 そ こ で 、 操縦者の 知識と門は 、 2007 年か ら 、 ヒ ュ ー マ ノ イ ドの シミ ュ レ ー ショ ン

熟練に よ っ て 姿勢の 組合せ に よ っ て は 遷移 を 規 制した り 、モ デル に 移 行す る こ と と なっ た 。 ヒ ュ ー マ ノ イ ドロ ボ ット

安 定な中継点を 試行錯誤的に 発見し追加す る こ と で 、 転の 特徴と して 、 歩行など の 目的タスクに 比して 冗長な多倒問題を 回避して い る 。 シミ ュ レ ー タを 用い る と して も 、

数の 関 節を 持つ 点が あ る 。 こ の た め 、 従来の シミ ュ レ ー

そ も そ も 試行錯誤的に 安 定中継点を 発見す る 必要が あ る

ショ ン 2D リ ー グが 戦略的な高次判断が 研究 の 主眼 で あ っの は 、 ロ ボ ットモ デル の 多変数性と 位 相構造の 複雑さ にた の に 対し、 新た な 3D リ ー グに お い て は 、 ロ ボ ットの 冗

起 因 す る 。

長な自由度の 利用と 制御法を 検討す る 必要が 生じ る 。

通常で １０自由度を 超え る よ う なヒ ュ ー マ ノ イ ドロ ボ ッ

本研究 は 、 ヒ ュ ー マ ノ イ ドロ ボ ットの よ う な冗長自由度
を も つ システム の 制御に 「 こ の へ ん フ ァ ジィ 」 推論[西野トは 、 制御工学的に は 複雑なシステム で あ り 、 数理的な構

06]を 応用す る こ と を 目的と す る 。

動力学モ デル や 逆 動力学モ デル を 直接設計で き ない た め 、造を 求 め る こ と は 難しい 。 こ う した システム に 対して は 、
数理モ デル を 元に した 制御則の 設計も 困難で あ る 。 そ こ

多数の 回転リ ン クに よ っ て 構成さ れ る システム の 状態
空間 は 位 相構造も ユ ー クリ ッド空間 と は 同相で ない 複雑なで 、 人間 や 生物を 高次に 模倣した 学習に 基 づ く システム

多様体と なり 、 変数間 の 関 係も 非線形で あ る 。 こ の た め 、が 研究 さ れ て い る 。 状態空間 を 離散的に 扱 う 方法は 多変

多く の 場合で 連続な時不変フ ィ ー ドバ ック則を 求 め る こ と数システム で は 組合せ 爆発が 発生す る た め 、 学習等に 成も で き ず 、 そ も そ も 数理的モ デル を 一 般に 求 め る こ と も 難

功す る 事例は 少ない 。

しい 。 こ の た め 、 個々 の ロ ボ ットの コン フ ィ ギュ レ ー ショ

本論文で 適用を 提案 す る 「 こ の へ ん フ ァ ジィ 制御」 は 、ン に 応じ て 試行錯誤的に 数理モ デル を 構成した り 、 小脳モ
デル 等に よ る 逆 動力学モ デル の 構成や 、 強化学習に よ る

任意 の 構造を 持つ 多変数空間 上で 定義 さ れ る 自由形状の 多次元フ ァ ジィ 集合を 用い た 推論システム で あ る [西野 06]。

状態空間 の 分割 と 制御など 、 学習機 構に よ っ て 制御則をそ こ で 、 こ の 特徴を 用い て 、 非線形性や 位 相構造を フ ァ

得る こ と が 行わ れ て き た 。

ジィ 集合そ れ 自体で 対応す る こ と に よ る 制御を 行い 、 冗

44

w

θ

1

CG

w

θ

0

F0

F1

XL

ZMP

Figure 1: ロ ボ ットの ダン スタスク

ZMP

XR

Figure 2: ２ リ ン ク表示した ダン スロ ボ ットの 機 構モ デル

長自由度を 持ち 、 作業空間 が 複雑な位 相構造を 持つ 制御

3

対象に 適用可能で あ る 。 行動制御で は 次の 式 (1) よ う な形

こ の へ ん フ ァ ジィ 制御に よ る 危 険姿勢回避

ロ ボ ットの 制御構造と して 、 安 定制御、 行動制御、 戦略制式の 規 則を 用い る 。

御の ３ 階層の モ デル を 仮定す る 。 本研究 で 示す こ の へ ん

Ri : if 作業状態 is こ の へ ん then 行動 is 動作 A (1)フ ァ ジィ の 適用は 、 中間 階層の 行動制御で も ち い る 。 行動

ユ ー クリ ッド空間 と 同相で ない 多様体の 作業空間 あ る い

制御で は 、 最下層に お い て 安 定性を 保証さ れ た 基 本的な運は 状態空間 に 対し、 こ の へ ん フ ァ ジィ の 手法で は 曖昧な部

動制御モ ジュ ー ル を 、 状態認識に も と づ い て 選択し、 サッ

分空間 を 定義 して 直接的に 規 則を 構成す る 。 多様体上のカー で あ れ ば ドリ ブ ル や パ スなど の ま と ま っ た 行動を 行う

曖昧な部分空間 は フ ァ ジィ 集合を 用い て 表現す る 。

も の で あ る 。 運 動制御で は 、 立つ 、 歩く 、 走る 、 止ま る 、

本論文で は 多次元上の フ ァ ジィ 集合を 用い る こ と で 、蹴る など の 基 本運 動が で き る も の と す る 。 行動制御は 式(1) で 構成さ れ 、 結論部に こ れ ら の 運 動モ ジュ ー ル を 指定
す る 。

ヒ ュ ー マ ノ イ ドに 代表さ れ る 作業空間 、 状態空間 が トー
ラ スなど 複雑な多様体構造を 持つ ロ ボ ットの 制御を 行う
方法に つ い て 提案 と 考察を 行う 。

2

こ の へ ん フ ァ ジィ を 適用す る に 先立ち 、 ま ず 静的な安 定
領域 と 危 険領域 お よ び 境界を 調べ て みる 。 θ i に よ る 状態

2 リ ン クダン スモ デル へ の 応用

空間 上に 表現す る と 図 3 の よ う な形状と なる 。 ２ リ ン ク

本論文で は 、 図 1 に 示す ヒ ュ ー マ ノ イ ドモ デル を 対象と

ロ ボ ットを 身体に 見立て た ダン ス運 動は 、 こ の 空間 上のし、 こ の へ ん フ ァ ジィ に よ る ダン ス運 動の 制御を 考え る 。

軌 跡と なる 。 静的特性の みを 考え る と 、 図 3 の ハ ッチで 示

簡 単の た め 両足は 連動す る も の と し、 足首床面接地部

した 危 険な状態に 入ら ない よ う に 運 動制御しなけ れ ば なと 腰の ２ 関 節の みが 回転す る ２ リ ン クシステム と して 、 図ら ない 。

2 の よ う に モ デル 化す る 。
ア クチュ エー タの 回転運 動は 十分に ゆ っ く り で あ る とし、 角速度 θ̇i お よ び 角運 動量 I θ̇i i も 十分に 小さ い も の と仮定す る 。
θ̇i << 

こ う した モ ー ショ ン 制御は 通常、 目的の 姿勢ポ イ ン トを線形に 連結して 行わ れ る 。 しか しなが ら θ i の 空間 を ユ ー
クリ ッド空間 と みなした 単純な補間 で は 、 図 4 に 示す よう に 、 ポ イ ン ト間 で 安 全領域 を 出て しま う こ と が しば し(2)

ば 発生す る 。

こ の 仮定の 下で は ZMP の 位 置は 重心の 直下と なる た め 、

こ の よ う な安 全領域 逸 脱状態を 回避す る た め 、 通常はロ ボ ットは ZMP が 足裏内か ら 出る と 転倒し、 ZMP が 足

図 5 の 2’、 3’ の よ う な安 定領域 で の ポ イ ン トを 増や す こ

裏内に あ る 間 は 直立静止を 保て る も の と なる 。

と で 対応す る 。 こ れ ら の ポ イ ン トは 実際の ロ ボ ットの 挙
動を 見なが ら 試行錯誤的に 求 め ら れ る 。 そ の 際に は 試験

xL < xCG < xR

(3)

的に 追加、 挙動テストの 後、 追加点の 修正も しく は 再追加と テストを 繰り 返さ ね ば なら ない 。

十分に 小さ い なが ら も 発散方向に 働く 角運 動量が あ る と仮定し、 境界付近で は 転倒の 危 険性が 発生す る 。

θ i で 表現した 作業空間 は 、 回転特性上 θi = π = −π

45

θ1

θ1

π

π
1

2’
3

3’

2

−π

−π
π

−π

θ0

−π

Figure 3: 関 節角局所作業空間 (状態空間 )πθ0Figure 5: 中継ポ イ ン ト追加に よ る 忌 避領域 を 避け た 軌 道
解の 試行錯誤的生成

θ1

険領域 と の 界面と して 、 左に 行き 過ぎ (TooRight) 、 右 に

π

行き 過ぎ (TooLeft)、 と い う 曖昧な状態を 定義 しした 。 こ

1の フ ァ ジィ 集合を 用い て 次の よ う な規 則を 構成す る 。

RL :

3

if (θ0 , θ1 ) is T ooLeft then 行動 is 足首 + 回転(4)RR : if (θ0 , θ1 ) is T ooRight then 行動 is 足首 − 回転(5)角運 動量が 微小の と き 、 足首の 角度の 加減に よ り 図 8 中の 矢印 で 示した 方向へ の 軌 跡の 修正が 行わ れ る 。 危 険領域
境界と い う 、 非線形で 形状的複雑性を 持っ た 制約を 、 フ ァ2−π

ジィ 集合に よ っ て 直接的に カバ ー して い る 。
こ の 二つ の こ の へ ん フ ァ ジィ 制御則は 、 危 険状態に 近
−π

π

θ0

付い た 場合に は 安 全方向に 姿勢を 変化さ せ る 行動を 取る 、と い う メ タ知識を 表現した も の に なっ て い る 。 危 険状態と い う 曖昧な観 念を 右 と 左の 二つ に 大き く 分け た だ け で 、Figure 4: θ i 空間 で 表示した ダン ス行動の 軌 跡

そ れ ぞ れ 一 つ の 「 こ ん な状態」 を 表す 多次元上フ ァ ジィ 集
合で 表現す る 。 ダン ス動作の 基 本遷移 を 線形補間 規 則でと 連接して い る 。 こ の た め 実際に は 、 θ i を 局所座標と す作り 、 式 (4) 式 (5) の RL , RR と 並列に 用い る こ と で 必要

る トー ラ スの ２ 次元多様体を なして お り 、 図 6 の よ う に 、に 応じ て 危 険を 回避す る 行動を 加え る こ と が で き 、 安 全

３ 次元空間 に 埋め 込ん で 作業空間 を 表示す る こ と が で きな遷移 を 実現す る 。

る 。 ダン スの 行動計画や 軌 道計画は 、 こ の トー ラ ス状多様

4

体上で 行わ なけ れ ば なら ない も の で あ る 。

フ ァ ジィ 集合の 構築コスト

モ デル で は 腰部に お け る 上半身の 角度に 制限を 設け ず

図 8 に 示した の TooLeft, TooRight と い う ２ 次元空間 上

回転で き る も の と して い る 。 そ こ で 、 図 7 に 示す よ う なの フ ァ ジィ 集合は 収集した サン プ ル 点集合に よ っ て 構成す

軌 跡も 動作の 解と して 有効で あ る 。 しか し、 こ の よ う な行

る 。 実機 ロ ボ ットに あ ら か じ め 危 険な状態を 複数与え 、 各

動を 実装す る た め に は 、 設計者に よ る 行動の 試行錯誤的

状態量を サン プ ル す る 。 収集した サン プ ル 点を 、 こ の へ ん「 発見」 が 必要で あ る 。

フ ァ ジィ 推論エン ジン に フ ァ ジィ 集合と して 登録し利用す

こ の へ ん フ ァ ジィ 制御で は 、 軌 道に 対して 直接的な目標

る 。 本論文の よ う な２ 次元作業空間 多様体の 場合、 一 つ

ポ イ ン トを 追加す る の で は なく 、 並列推論を 活か して つ ねの フ ァ ジィ 集合を 定義 す る た め に １０〜 １００点程度のに 安 全領域 に お さ ま る よ う な行動を 追加す る 。 図 8 に 危

登録で 実用上十分で あ る 。 こ の フ ァ ジィ 集合を 構築す る 作

46

θ1
π

TooRight

TooLeft−πFigure 6: ３ 次元に 埋め 込ん だ トー ラ スを なす 作業空間 多
様体

−π

π

θ0

θ1

Figure 8: こ の へ ん フ ァ ジィ に よ る 忌 避状態の 回避規 則π1

こ と で あ る 。 こ の よ う なロ ボ ットシステム を 、 知識の 無い状態か ら 学習に よ っ て モ デリ ン グす る 手法に 対し、 本論
3

文で 提案 した 方法は 実物に 体す る 人間 の 直観 的知識を 用
い る 手法で あ る 。 実際の 、 と く に ホ ビ ー 的分野で の ヒ ュ ー
マ ノ イ ドロ ボ ット制御で も 、 直観 を 使う 方法と 言え る 試

3’

行錯誤に よ る 軌 道生成が 行わ れ て い る 。 こ の へ ん フ ァ ジィ
を 援 用す る こ と で 、 実体の 状態と 直観 的知識を 制御規 則

2と して 結び 、 知識に よ る 有効な制御が 可能と なる 。 新た な−π

ロ ボ ットシステム を 作る 上と き 、 知識無しか ら す べ て を−ππ

構築す る の で は なく 、 こ の へ ん フ ァ ジィ を 用い た 直観 的知

θ0

識と 融合した 行動則の 設計が 有効な場面が 多数あ り こ のへ ん フ ァ ジィ が 有効で あ る と 考え る 。

Figure 7: トー ラ ス上を 遷移 す る 行動解

今後の サッカー シミ ュ レ ー ショ ン ３ Ｄ で は 、 ドリ ブ ル や
走り 込み、 ストップ など 、 動的か つ 高速なヒ ュ ー マ ノ イ ド

業の 負荷は 、 ダン ス軌 道ご と に そ の 近傍の 安 定ポ イ ン ト

モ デル の 行動制御が 必要と なる 。 こ れ ら の 技術は 実ロ ボ ッ

を 探す 試行錯誤の 負荷と 同等程度で あ る と 言え る 。 ま た 、トで も ま だ 完 成して して い ない 。 そ こ で 、 ヒ ュ ー マ ノ イ ド

軌 道生成を 多数行う 場合に は 、 ポ イ ン ト探索の 試行錯誤が

ロ ボ ットの ３ Ｄ シミ ュ レ ー ショ ン モ デル を 対象に 、 直接的

生成す る 軌 道の 数に 比例して 増加す る の に 比べ 、 フ ァ ジィ

空間 表現の 困難な状態空間 に 対して 、 こ の へ ん フ ァ ジィ の集合は 一 度構成す れ ば 良い の で トー タル コストは 少ない

適用例を 示して ゆ く こ と が 今後の 課題で あ る 。

と 考え ら れ る 。

5

なお 、 本研究 に 関 連す る システム の 開発の 一 部は 、 独立行政法人情報処理推進機 構 (IPA) よ り 、 2005 年度上期 未踏ソフ トウ ェア 創造事業の 支援 に よ り 行わ れ た も の で あ る 。

ま と め と 今後の 課題

こ の へ ん フ ァ ジィ は 人間 が 通常持っ て い る 直観 的な概念をも と に 、 多次元状態空間 に 対す る 行動制御を そ の ま ま 表

参考文献

現で き る 仕組みで あ る 。 ヒ ュ ー マ ノ イ ドロ ボ ットに 代表さ[RCS]

れ る 多関 節冗長自由度システム の 制御に お い て も 適用でRCSSwiki, : http:// sserver. sourceforgec. net /wiki.

[西野 06] 西野, 久 保, 下羅, 中島： 位 置に 基 づ く 行動規 則を 実装
した 入門用サッカー エー ジェン ト作成キット OZED,第 23 回 SIG-Challenge 研究 会講演 論文集, pp. 19–24
人工知能学会, 2006.

き る こ と を ２ リ ン クモ デル で の ダン スタスクを 対象と して 示した 。
新しい 形状の ロ ボ ットを 作っ て ゆ く こ と は 、 機 構的およ び 動力学的な性質の 分か ら ない 新た なシステム を 作る

47

社団法人 人工知能学会

人工知能学会研究会資料

Japanese Society for
Artificial Intelligence

JSAI Technical Report
SIG-Challenge-A701-9 (5/4)

3D2Real and other perspectives for the Humanoid League
N. Michael Mayer, Joschka Boedecker,
Masaki Ogino, Sawa Fuke, Kazuhiro Masui, Ayako Watanabe, Takanori Nagura andMinoru AsadaJST ERATO Asada Synergistic Intelligence Projectmichael@jeap.org

Abstractin the year 2008, and further increasing numbers in
the following years.

Started in 2002 the Humanoid League hasgrown and is now one of the major leagues of
the RoboCup. The present contribution to the
SIG Challenge deals with several engineering
problems and the important question how tokeep and to improve the status of the league asa meaningful benchmark for science, i.e. for research issues like embodiment and autonomous
behaviour and even for communication and development. In order to provide a good basis forresearch good engineering is essential. Thus,
we discuss how this basis can look like and how
joint projects with other leagues can be established. As an example we oultline the 3D2Real
project.

1• Human-like sensors. In particular the plan is for thelater future to ban the omni-vision camera. Vision
sensors in other places than the head are alreadybanned by the current rules.
• Foot size. The maximal allowed foot size in the current robots is defined as follows. The smallest rectangle covering one foot should not exceed H 2 /22.
This value has been decreased continuously fromH 2 /18 between 2004 until 2006. A further reductionis planned from 2008.
A useful measure for further milestones is the utopiansounding goal of having finals between the world champion in human soccer and robots, which will be of course
humanoids. In order to achieve this target, accomplishments in several leagues have to be merged; one example
how this could happen, and what benefits arise from sucha merger is the 3D2Real project (see also [1]).
Whereas the KidSize robots evolved rapidly during thepast 2-3 years, we expect the same development in the
TeenSize yet to come. Typically, TeenSize robots areeither derived from KidSize models (typically just on thelower limit of the permitted size of the TeenSize class)or we see that robots participate from initially unrelated
fields of research. It is very much to hope that in thenear future a TeenSize class with its own profile andown technology evolves.
One of the biggest challenges for the organizers is
probably to lead the TeenSize class appropriately into
a technological sound development. As already mentioned before different from the smaller robots we havenot seen a break through in this area yet. The intentionof the organizers is to establish the TeenSize class as a
size class of significantly taller robots than those in the
KidSize class. At the moment most of the robots participating in the TeenSize class are either non-functional or
elongated derivatives of KidSize robots, which are juston the lower height limit of the TeenSize class. A clear
profile of the TeenSize class is still missing.

Introduction

Since the start the Humanoid League (HL) underwent
a profound development. Competitions and challenges
have changed in various ways; rules maturated in many
points and gained more focus on the issues that are essential from a technical point of view; and of course therobots became better. In the RoboCup 2005 for the
first time regular 2-2 games have been conducted. In
2006 we saw a further improvement of the performanceof the teams. For the RoboCup 2007 we have 24 qualified teams in the KidSize League (Height < 60 cm) and8 teams in the TeenSize league (>80cm).
In the passed some months there has been vivid discussion about the future of the Humanoid League theresults are• Increase the number of players. This has been avery emotional discussion in the past years, because
the costs increase significantly with each additional
player. Various test games of mixed teams havebeen conducted during the previous RoboCup competitions. At the moment, we are planning to increase the number of players. The most probable
number at the moment is 3 players in the KidsSize

48

Teamwork
behaviors
Penalty Kick

Run andJump

Run andTurn

Change
Speed

Run

Walk

Jump

Basic player
behaviors

Pass a ball

Run, Jump,
and Turn

Turn

Advancedhumanoid team

Kick todesired directions

Recievea moving ballKick
a moving ballPrecise leg
motion control

Kicka stationary ball

Objectfollowing

Highly sensitive
situation swareness
Reacting to
Coach’s Command
Collision
avoidance

Multiple
objects tracking

Strategic
Planning

Real−Time
Planning
Learning

Auditory Scene
Analysis

Objecttracking

Separation of
Speech and Noise

Objectrecognition

Speech Recognition

Figure 1: Road map as suggested by Kitano and Asada in 1998 [2]: Red circled are the milestones that have beenachieved up to the present; solid lines represent achieved and used in regular games; dashed lines represent milestones
that were achieved in some demos or technical challenges within a RoboCup event, dotted lines represent at least
partly available technologies that could be integrated into the HL.
Additional changes are discussed with regard to thehandling of the robots. A falling TeenSize robot is more
likely to be damaged than a KidSize robot thus it has
been suggested to allow robot handlers on the field who
can catch a falling TeenSize robot and prevent farther
damage.
Different from the TeenSize, the perspective for the
next several years is relatively clear in the Kidsize class.
If one has followed the discussions during the time spanfrom 2004 to the present stage one can perceive a continuous and ongoing refinement of the discussion for the
benefit of the conductance of the competition, and thechallenging moment of the competition.

The reasons for this unsatisfying situation are multifold: One important issue is the costs. One robot of thissize class is typically several times more expensive thana humanoid robot that is designed for the KidSize class.
While a robot of the KidSize class can be designed ata price of below USD 10.000 the costs for a functional
Teensize robot over 1m can easily reach a multitude ofthis figure.
The second issue is the control problem. The handlingof the control is very different. RC Servos that can handle the typical forces that appear in a robot of a size ofabove 1m are not available, thus motor controller units
have to be designed by the team themselves.
Nevertheless, at each of the last RoboCups there havebeen one or two promising candidates who had to someextent the potential to serve as prototypes of the TeenSize class. At the RoboCup 2005 the Team Guroo, presented a roughly 30kg heavy robot with a size over 1m.
In 2006, a fully functional TeenSize robot was presented
by PAL robotics. In addition, the Darmstadt Dribblers
Team presented an interesting study for a robot of the
TeenSize class[3].
In order to encourage its own profile of the TeenSize
class with an technology that is different from the KidSize class, the rules have been modified. Already 2005
different types of competitions from the KidSize classhave been introduced. Thus, regular games are currently not conducted and are also not planned within
the near future. The most important planned change
for the Robocup 2007 is that the minimal height H of arobot in the TeenSize class is going to be increased from65 to 80 cm. In this way a more distinct separation of
KidSize robots from TeenSize robots is intended.

2

Developmental science in the
Humanoid League

Often a team for the Humanoid League is funded bysome research organization because it is intended to use
the Humanoid League competitions as a benchmark fortesting a research or engineering paradigm. Reviewing
the literature and also for what purpose the humanoid
League has been proposed by Kitano and Asada (see Fig.
1), one can see that both goals that relate to engineeringand goals that relate to research have been seen as themain challenges for the new league.
Due to the nature of the competition and in spite ofsignificant effords of some teams, the engineering is stillby far more important than the science and research issues.
The reason is that the robusteness of the robots is still
not achieved to a sufficient extend and the more robust
approach is usually the winner against a developmental

49

Actuators

Actuators

HMDP

future of both leagues, as well as the specification of standards and the development of tools that can be used inboth leagues.
Traditionally, the SSL and the HL in RoboCup have
had rather different research topics. While researchers
in the HL mainly worked on the design and the lowlevel control of their robots, participants in the SSL wereconcerned with high-level strategies and collaboration.
In recent years, however, there have been developments
which might bring both leagues closer to each other. On
the side of the SSL, there have been continuing efforts
to introduce more realism into the rather abstract simulation of the SSL in order to ensure that the developed
strategies can be transferred more easily to real robots.
Humanoid robot simulation is the preferred choice formany participants of the SSL in order to achieve this. In
the HL, on the other hand, the first multi-robot games
have been held, and the great progress in controlling therobots allows researchers to approach issues of collaboration and coordination which have been extensively
studied in the SSL. In short, both leagues are beginningto come closer to each other, and joint efforts in the development of tools and architectures that allow easiertransfer of knowledge and technologies could speed up
the mutual progress towards the 2050 goal of RoboCup.

Sensors

HMDP

Sensors

00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
1111111111111111111111
0000000000000000000000
SL Organizers
HL Participants
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
0000000000000000000000
1111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
0000000000000000000000
1111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
0000000000000000000000
1111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
0000000000000000000000
1111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
0000000000000000000000
1111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
0000000000000000000000
1111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
0000000000000000000000
1111111111111111111111
Real Robot
Simulation Environment
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
0000000000000000000000
1111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
0000000000000000000000
1111111111111111111111
3D SL Simulator
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
0000000000000000000000
1111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
0000000000000000000000
1111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
0000000000000000000000
1111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
0000000000000000000000
1111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
0000000000000000000000
1111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
Robot Compatibility Layer
ODE Compatibility Layer
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
11111111111111111111111111111111111111111111111
00000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
Control Program
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111
SL Participant
00000000000000000000000000000000000000000000000
11111111111111111111111111111111111111111111111

Figure 2: 3D2Real project: Layout of the control architecture. The hatched boxes show how the different
leagues contribute to the complete system architectureof the (deleted for blind review) project. The control
program for simulation system and real robot system
are identical. The graphics includes the proposed role ofthe HMDP protocol [4].
or learning approach where the team had less time to
put their energy into the robustness.
In addition, for developmental and learning approaches long periods or running robots are necessary.
Since the lifetime of the mechanical parts is still limited
and intensive maintenance of the devices necessary, formany research issues a simulation seems more appropriate than to run the whole developmental and learning
process in real robots.
Many teams usually develop an own simulator as apart of their tool chain for behavior prototyping.
Recently the simlation league has started the competitions of a 3D simulatoor that simulates humanoid
robots. The intention is to make this simulation (byobeying some constraints as realistic as possible). As ameans the 3D2Real project is currently being discussed.
As a side effect the resulting simulator can be used as a
research platform for developmental science. The resulting behaviors can again be tested in real robots. In thefollowing we outline the concept of the 3d2Real and its
current achievements. We conclude with a discussion.

3

Until
RC
2008
RC
2007

Soccer
Simulation
Leaguereal robot type implemented in 3D simulator

2008 –
2009
RC
2009

3D SSL technical challenge: 2nd round in realrobotsDevelopment of theCPR
3D SSL finals in realrobots (one type)

RC
2010

3D SSL finals with several types of real robots

Humanoid League

RoSiMLmodels part of the HL
qualification
HL teams commit
to the CPR

Table 1: Overview of the current road map towards themilestone of the 3D2Real project.
The joint road map we propose is given in table 1.
The goal we envision for the 3D2Real project is to havethe finals of the simulation league using real robots by
the year 2009. For this ambitious goal several steps arenecessary in the next years to create the necessary infrastructure and tools. First, the 3D simulator of the SSL [6]has to be completed, and a real robot prototype has to be
implemented as a simulation model. For the descriptionof the robot models, the XML-based format RoSiML as
used in the SimRobot simulator [7] seems promising. According to the proposed road map, a technical challenge
would be held at RoboCup 2007 to test the ability to use
the agent code of SSL participants on a pre-determined
real robot. From 2007 until 2008, we propose the devel-

The 3D2Real Project

One problem for the RoboCup project is that throughout the leagues a lot of work is duplicated, and collaboration is rather sparse between the different leagues. This
is not a desirable situation as know-how is not transferred effectively, and progress is slower than it could
be since resources are bound to solve the same problems over and over again. To address this situation, the3D2Real project [5] was initiated in 2006.
The main idea of this project is to try and use synergy effects from a collaboration between researchers inthe Humanoid and the Soccer Simulation League (SSL).
This collaboration includes a joint roadmap for the near50

References

opment of a central parts repository (CPR). This would
be a collection of real robot designs, sensor and actuatormodels, pre-assembled robots, as well as controllers forcertain architectures. Participants of both HL and SSL
contribute to this repository according to their expertiseand interest. The format would again be the RoSiML
mentioned above. These contributions become a mandatory part for the HL qualification from 2008, and should
be continued (at least) until 2009, even after the 3D SSL
final has taken place using real robots.
Current State: In the SSL the 3D competition isfor the first time conducted in to some extend realistic
humanodi robots. For the abstract communication of
motion patterns a new type of protocol (HMDP, pleasecf. [4]) has been proposed.

4[1] Boedecker,
J.,
Mayer,N.M.,
Ogino, M., da Silva Guerra, R., Kikuchi, M., Asada,M.: Getting closer: How simulation and humanoid
league can benefit from each other. In Murase, K.,
Sekiyama, K., Kubota, N., Naniwa, T., Sitte, J., eds.:
Proceedings of the 3rd International Symposium on
Autonomous Minirobots for Research and Edutainment, Springer (2006) 93–98[2] Kitano, H., Asada, M.: RoboCup Humanoid Challenge: That’s One Small Step for A Robot, One Giant Leap for Mankind. In: Proc. of IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS ’98). (1998) 419 – 424[3] Friedmann, M., Kiener, J., Kratz, R., Petters, S.,
Sakamoto, H., Stelzer, M., Thomas, D., von Stryk,
O.: Team Description Paper: Darmstadt Dribblers
and Hajime Team (KidSize) and Darmstadt Dribblers (TeenSize). In: RoboCup 2006 Symposium papers and team description papers CD-ROM. (2006)

Discussion

If one assumes the Humanoid League as huge evolutionary project this type of design can be seen as the resultof the optimization process of the challenges to which
the teams have been exposed so far.
On the other hand there are still many things to overcome and to be done in order to go on further. Fig. 1
depicts the initial road map for milestones to be achieved
within the Humanoid League. Those were outlined in1998 [2]. One can see that the league has reached somemilestones since it was introduced in the RoboCup of
2002 in Fukuoka. Many milestones related to controlledwalking, object recognition and ball handling have beenrealized.
Some of the missing issues are partly subject to leanring and developmental research issues. For these issues
the 3D2Real environment can be useful toolbox to develop behaviors in the simulator and to test them in thereal robots.

[4] Mayer, N.M., Boedecker, J., Masui, K., Ogino, M.,
Asada, M.: HMDP: A new protocol for motion pattern generation towards behavior abstraction. In:
RoboCup Symposium. (2007) (accepted).
[5] Mayer, N.M., Boedecker, J., da Silva Guerra, R.,
Obst, O., Asada, M.: 3d2real: Simulation league
finals in real robots. In Lakemeyer, G., Sklar, E.,
Sorrenti, D.G., Takahashi, T., eds.: RoboCup 2006:
Robot Soccer World Cup X. Lecture Notes in Artificial Intelligence, Springer (2006) to appear.
[6] Obst, O., Rollmann, M.: SPARK – A Generic Simulator for Physical Multiagent Simulations. Computer
Systems Science and Engineering 20(5) (September
2005)

Acknowledgements[7] Laue, T., Spiess, K., Röefer, T.: SimRobot - ageneral physical robot simulator and its applicationin robocup. In: RoboCup 2005: Robot Soccer
World Cup IX. Lecture Notes in Artificial Intelligence, Springer (2006)

We greatfully acknowledge the support of this work by
the Japan Science and Technology Agency (JST), anda fellowship for young scientists from the Japan Society
for the Promotion of Science (JSPS).

51

社団法人 人工知能学会

人工知能学会研究会資料

Japanese Society for
Artificial Intelligence

JSAI Technical Report
SIG-Challenge-A701-10 (5/4)

間引きを用いたシュートモーション学習
Shot Motion Learning Using Thinning-out

小林 隼人 1

畑埜 晃平 2

石野 明 1

篠原 歩 1

Hayato Kobayashi1 , Kohei Hatano2 , Akira Ishino1 , and Ayumi Shinohara1
1

東北大学大学院情報科学研究科
122

九州大学大学院システム情報科学研究科

Graduate School of Information Sciences, Tohoku University

Graduate School of Information Science and Electrical Engineering, Kyushu University{kobayashi@shino., ishino@, ayumi@}ecei.tohoku.ac.jp and hatano@i.kyushu-u.ac.jp
Abstract（肢体を持つロボット）は，歩く，シュートする，パスす
るといった基本技術を獲得するための能力が必要である．

Shooting is one of the most important skills
in soccer games, as it directly a ects scoring
points. In the four-legged robot league, we

この，身体ロボットが基本技術を学習する能力は，身体学
習 (physical learning) として知られており，重要視されている．

must develop accurate and strong shot motions
only by changing the parameters of the mo-

ここ数年でも，多くの身体学習に関する研究が存在す
る．Kim と Uther [2]は，歩行の軌跡を四角形でモデル化
して，ロボットに高速な歩行を学習させた．Saggar ら [6]tions, since the hardware is limited to AIBO.
This task consumes much of developers’ timeand energy and is needed whenever the envi-

は，歩行の軌跡を楕円形でモデル化して，ロボットに視覚情報を使いながら安定した歩行を学習させた．Fidelmanと Stone [1]は，ボールを掴む技術の学習方法を提案した．

ronment (e.g., friction of the eld) is changed.
By using machine learning, we can efficiently

この学習は，1 層目に歩行学習，2 層目にボールを掴む技
術の学習を導入した階層学習である．Kobayashi ら [4]は，reduce these burdens. Existing learning methods, however, take much evaluation time foreach trial in the motion learning. In this pa-

強化学習で動いているボールのトラップ技術を 1 次元で学習させた．

per, we propose a new concept, thinning-out,
for reducing the number of trials in the mo-

本論文では，Zagal と Solar [8]と同様に，シミュレータ
上でロボットにシュートモーションを学習させる．素早くtion learning. Thinning-out means to skip oversuch trials that are unlikely to improve motions,in the same way that gardeners thin-out weak

強力なシュートは直接得点に結びつくため，シュートモー
ションの作成は RoboCup サッカーにおいて重要な作業のひとつである．しかしシュートモーションの学習は問題のseedlings. We show that our thinning-out technique signi cantly reduces the number of trials.

モデル化が難しいため，上で述べた他の作業と比較すると難しい問題といえる．Zagal と Solar は，動作モデルを仮

In addition, we show that our virtual robots
can acquire a sophisticated motion that is muchdi erent from the initial motion as the result

定することなくシュートモーションを直接学習させたが，彼らの方法は足の関節のみを対象にしており，探索する次元数も固定している．我々も同様にモデルを置かないが，

of utilizing a hybrid learning method combining meta-heuristics and the thinning-out tech-

我々の方法はすべての関節を対象としており，次元数も固定しないため，どんなモーションにも適用することがでnique.

1

きる．しかし，それゆえに学習には多くの試行回数を必要としてしまう．一回の試行に非常に時間がかかるロボッ

はじめにトの学習においては，この問題は深刻である．

ロボットが実世界で機能するには，未知の環境に適応する能

本論文では，この問題を解決するために，学習過程に力，つまり学習能力が必要である．この能力は，RoboCup

おける試行回数を削減する間引き (thinning-out) を提案

サッカーにおいても重要な役割をしめる．特に四足ロボッ

する．間引きは，決定木学習における枝刈り (pruning) とトリーグやヒューマノイドリーグにおける身体ロボット

同様の概念であり，園芸家が悪い苗を間引くように，学習52

過程において結果に貢献しない試行を省くことを意味す

肉球（足裏の接触センサ）をクリックすることでその足をる．我々は，間引きを使うことで効果的に試行回数を削脱力させることができ，もう一度クリックすることで固減できることを示す．この間引きは，メモリーベース学習

定することができるため，我々はパラパラ漫画やクレイ(memory-based learning) の一種であり，Memory-based
Fitness Evaluation Genetic Algorithm (MFEGA) を提案した Sano[7]らと動機は同じである．しかし，我々の提案アニメを作成するのと同様に，直感的にさまざまなモーションを作成できる．

2.3

する間引きは，スコア関数の形を推定しながら試行自体

学習問題

本章では，キーフレームを直接探索空間として使うことでを直接省くという点で完全に彼らの手法とは異なる．
本論文の構成は以下のとおりである．第 2 節では，我々のシュートモーションの学習を行う．我々は，学習後のモー

フレームワークにおけるモーション再生の仕込みとシューションの骨組みを決める大雑把なモーションを作成するだ

トモーションを作成するためのモーションエディタを説明けでよい．そうすれば，その骨組みから，その近傍のよいし，本論文で取り扱う学習問題を定式化する．第 3 節でシュートを学習することができる．今回は補間数を学習

は，間引きの方法について説明し，それを実現するための対象としないため，キーフレーム数を n とすると，取の 2 つの手法を提案する．そして，間引きの候補点を選り扱う探索空間は 15n 次元となる．
シュートを評価するためのスコア関数は，ボールの相択するためのメタヒューリスティクスについて説明する．
第 4 節では，提案した学習手法を用いて，シミュレータ上

対距離 rb , ボールの相対角度のロボットにシュートモーションを学習させ，その実験結した．

b として以下のように設計
| t − b|score(rb , b ) = rb · 1 −果について考察する．第 5 節では，全体のまとめと今後

cの課題について述べる．

この式は，シュートの目的角度 t とボールの相対角度との2

シュートモーションの学習

2.1

シュートモーション

差に反比例して，スコアを線形的に小さくする． c はスコ
アの減少具合いと決める定数であり，本論文では

c = 45とした．

AIBO のモーションは，首や足の 15 個の関節角度で構成されるフレーム (frames) を 8 ms ごとに OVirtualRobot
へ送り込むことで実現される．OVirtualRobot はプロキ
シオブジェクトの一種であり，AIBO のソフトウェア開発

3

学習方法

3.1

間引き

キット OPEN-R で定義されている．我々のフレームワー

本節では，不必要な試行を間引く方法について議論する．

クでは，これらのフレームはキーフレーム (key-frames)

まず我々は，スコア関数が探索空間上で連続で，ある程度によって生成される．キーフレームは，それぞれのモー

なめらかであることを仮定する．ロボットの動きは連続

ションの骨組みとなる特徴的なフレームのことである．たであり，パラメータの小さな変更はスコアにそれほど影響

とえば，キックモーションはボールを押し出すために足をを及ぼすことはないため，この仮定は妥当なものといえ一度後ろに下げてから前に出さなければならないので，少る．この仮定に基づき，我々はスコア関数の局所的な形をなくとも 2 つのキーフレームが必要である．我々はそれぞ推定する．与えられた試行の候補点に対して，我々は試行れのキーフレームに対して補間数を指定し，それを元にの履歴中の最近傍点との距離を使うことで候補点のスコ線形補間で完全なフレームを生成する．それゆえ，我々のアを推定する．もし推定されたスコアの上限が現在の最モーションを実行するには，補間数を n とすると 8n ms

高点よりも低い場合は，その候補点を間引く．このとき，が必要である．

現在の最高点との距離を考慮にいれていないことに注意されたい．我々は真の最高点が現在の最高点の近くにある

2.2

モーションエディタ

ことを仮定していない．それゆえ，高いスコアが得られる

我々は，モーションを簡単に作成し調整するために，図 1と予測された点は，たとえ現在の最高点よりも遠かったとのようなスプレッドシートを持つモーションエディタをしても試行される可能性がある．したがって，我々の方法作成した．このエディタを使うことで，我々はそれぞれのは局所解に陥りにくいという意味で頑健であるといえる．

モーションのためのキーフレームとその補間数を指定す

ここで我々は，リプシッツ条件 (Lipschitz condition) をることができる．しかし，通常はロボットを見ただけで持ちいて，スコア関数の局所的ななめらかさを定義する．

はその関節角度の正確な値を推定することができないた

リプシッツ条件は，微分積分の標準的な教科書にあるようめ，手作業で関節角度のすべてを入力するのは困難であに定数 c に対する c-リプシッツ連続を定義するものだが，る．したがって，エディタにロボットの関節角度をキャプ

本論文ではその自然な拡張として関数 g に対する g-リプ

チャする機能を持たせた．我々のロボットプログラムは，

シッツ連続を定義する．

53

Figure 1: 作成したモーションエディタの一部分．スプレッドシートの 1 行がキーフレームを意味する．HT, HP, ...,
LR3 の列はそれぞれの関節角度を意味し，n の列はそのキーフレームまでの補間数を意味する．

定義 1 (リプシッツ条件，Lipschitz condition) X をができる．しかし実際には，c 自身を知ることはできない

探索空間とする．f : X → R を探索空間上のスコア関数

ので，我々は過去の試行におけるすべての 2 点におけるとする．ある関数 g : R → R について，どんな x1 , x2 ∈ R

最大傾斜でそれを置き換える．これはおそらく，十分な試に対しても以下の条件を満たすとき，f は g-リプシッツ

行のあとには c のよい近似となるはずである．したがって

連続 (g-Lipschitz continuous) であるという．

我々はこの方法を最大傾斜法 (MG) と呼ぶ．
この方法は，スコア関数上で起伏の一番大きい場所を|f (x2 ) − f (x1 )| ≤ g(|x2 − x1 |).

基準とする単純なものだが，一番安全な方法である．しかf を g-リプシッツ連続とする．そのとき，どんな x1 ，し，関数 g が返す値は多くの場合大きすぎるため，起伏の大きいスコア関数上ではほとんど候補を間引くことは

x2 に対しても，次のように f (x1 ) の上限が得られる．

できないと予想される．

f (x1 ) ≤ f (x2 ) + g(|x2 − x1 |).

差分収集法 (Gathering Differences Method)

これより，我々はスコア関数 f が，ある g に対して g-リ

差分収集法 (GD) は，試行の履歴中の任意の 2 点におプシッツ連続であると仮定する．我々の間引き戦略は，候いて，それらの差の小さなものから昇順で，候補点と最近補点のスコアの上限が得られるように，スコア関数 f を

傍点との距離以上になるまで，それらのスコアの差分を特徴づける関数 g を推定することである．もしもその上限足し合わせることで関数 g を推定する．Algorithm 1 にこが現在の最高点よりも小さいとき，我々はその候補点を試の方法のアルゴリズムを示す．

行する必要はない．関数 g を推定する方法の詳細は後に

この方法は，現在の最高点付近のスコア関数の局所的述べる．我々の間引き条件は以下のように定式化される．

な形を推定するので，多くの候補点を間引くことができ

定義 2 (間引き条件，Thinning-out condition) xb をる．しかし，この方法は単なるヒューリスティクスであり現在の最高点とする．xc を試行の候補点とする．xn を理論的妥当性はないため，間違って間引く可能性は MG

その候補点の最近傍点とする．ある推定関数 ĝ : R → R

よりも高いと予想される．

について，次の条件を満たすとき，xc は ĝ に関して間引

3.2

き条件 (thinning-out condition) を満足するという．

メタヒューリスティクス

我々が提案した間引きは単に候補点を省く手法であるたf (xn ) + ĝ(|xc − xn |) ≤ f (xb )め，その候補点を取ってくるための効率のよいサンプリ
ング手法が必要である．シュートモーションの学習問題で

ここで，我々は g を推定する 2 つの手法を提案する．

はスコア関数が未知であるため，いくつかのメタヒュー
リスティクスを利用する．Kohl と Stone [5]は，遺伝的最大傾斜法 (Max Gradient Method)

アルゴリズム (Genetic Algorithm: GA)，山登り法 (Hillまず，X 上の任意の 2 点 x1 ，x2 について，スコア関数

Climbing: HC)，政策勾配法 (Policy Gradient: PG)，ア
メーバ法 (Amoeba) の 4 つのメタヒューリスティクスを用いて，四足歩行の学習をおこなった．本研究でも，こf の最大の傾斜c=max

x1 6=x2 , x1 ,x2 ∈X|f (x2 ) − f (x1 )||x2 − x1 |れらのメタヒューリスティクスを利用するが，アメーバを知っていると仮定する．このとき，g(d) = c · d によっ

法だけは除いた．これは，アメーバ法が決定的アルゴリて定義される関数によって，f が g-リプシッツであることズムであるため，間引きを直接適用することができないは容易にわかる．それゆえ，g は安全に候補を間引くことからである．それゆえ，アメーバ法の代わりに，よく知54Algorithm 1: Gathering de erences method
input : distance and the set Hist of pairs (x, f (x))
observed so far

Algorithm 2: Simulated annealing with thinningout
input : num trials, initial motion,

output: An inferred value of g(distance)

initial temperature, cooling facter
output: an optimized motoin

initialize Diff as a map from R to R;
foreach key1, value1 in Hist do

state ← initial motion ;Hist [state ] ← Evaluate(state);
temperature ← initial temperature ;while true in num trials do
new state ← a random perturbation of state ;while new state satis es the thinning-out
condition do
new state ← a random perturbation of state ;end
new score ← Evaluate(new state);

foreach key2, value2 in Hist do
Diff [|key1 − key2|] ← |value1 − value2|;
end
end
sum diff key ← 0;
sum diff val ← 0;
foreach key, value in Diff in ascending order w.r.t.
key dosum diff key ← sum diff key + key ;if new score < score thenif true with a probability
 of
score
−new score
thenexp − temperaturestate ← new state ;sum diff val ← sum diff val + value ;if sum diff key ≥ distance thenreturn sum diff val ;endscore ← new score ;end

end
return ∞ ;endtemperature ← temperature · cooling facter ;られたメタヒューリスティクスの一つである疑似焼き鈍Hist [new state ] ← new score ;endreturn Max(Hist);

し法を (Simulated Annealing: SA) を実験に加えた．GA,

HC, PG に関しては Kohl と Stone のアルゴリズムと同じものを使用するため，SA のアルゴリズムの詳細に関してだけ述べる．

本研究では，右前足で左斜め方向にボールを打つシュー
トモーションを初期モーションとして用いた．このモー

疑似焼き鈍し法 (Simulated Annealing)

SA は，Kirkpatrick ら [3]によって提案された金属工学

ションは 5 個のキーフレームを使用するため，探索空間

における焼き鈍し処理を模した最適化手法である．Algo-は 75 次元となる．実験はメタヒューリスティクスによりrithm 2 に，間引きを用いた SA のアルゴリズムを示す．
我々の提案する間引きはメタ戦略であるため，他の手法

50 個の候補点を選ぶことを 10 回行い，間引き率とその失に関しても，同様の方法で簡単に間引きを適用することれた候補点も評価した．
）本実験はシミュレータ上で行うができる．

が，物理シミュレーションには複雑な計算が必要であるた

敗率の平均を出した．
（今回は失敗率を出すために間引かめ，それでもかなりの時間が必要となる．実際，今回の

4

実験

4.1

シュートモーションの学習

一回の実験には数十時間を要した．それゆえ，時間のかかる試行自体を削減する間引きは，実環境だけではなく，仮想環境においても有効に働く．

本節では，間引きが身体学習に適応できることを確かめ

表 1 に，2 種類の間引き (MG, GD) を適用した各種メるために，物理シミュレーションによるシュートモーショ
ンの学習を行う．シミュレータとして，Zaratti ら [9]が開タヒューリスティクス (GA, SA, HC, PG) による実験結発した 3D シミュレータを拡張して使用した．このシミュ果を示した．表の MG と GD を比較すると，MG は比較

レータは，非常に使いやすいユーザインターフェイスを的安全だがあまり候補点を間引けず，GD は失敗を恐れず持っており，実ロボットと同じように各関節角度を送り込に多くの候補点を間引けることが分かる．また，GD は 9

むことで簡単に仮想ロボットを動かすことができる．この割以上の成功率で試行回数を通常の半分程度にできるこ

シミュレータは完全な実環境を実現するものではないが，とが分かる．今回は 50 個の候補点での結果であるため間ロボットを傷つけないだけではなく，実ノイズに悩まされ引き率はそれほど高くないが，候補点が多いほど間引きることなく再現性のある実験ができるため，新しい手法

率を高くできることが分かっている．

MG と GD の性質を比較するために，SA にそれぞれのの性能を検証するには敵した環境である．

55

手法を適用した実験結果のグラフを図 2 に示す．青い丸

つの手法以外にもいくつかの推定方法を思いついたが，どは実際に試行された候補，黄色い四角は正しく間引かれ

れもうまくいかなかった．今後は，個々の問題に依存したた候補，赤い十字は間違えて間引かれた候補を表す．表 1

ヒューリスティクスをうまく活用することによって，もっと同様に，MG の結果 (a) では高い確率でスコアが低い候とよい推定ができないかを考えたい．

補点だけが間引かれており，GD の結果 (b) ではある程度高いスコアを持つ候補点も間引かれていることが分かる．

GD の結果 (b) に表れているように，誤って間引いたとしても，未来の試行でより高いスコアを持つ候補点を見つ[1] P. Fidelman and P. Stone.

The Chin Pinch: A

Case Study in Skill Learning on a Legged Robot. In
RoboCup 2006: Robot Soccer World Cup X, LNAI.
Springer-Verlag, 2007. to appear.

ける可能性がある．
図 3 に，初期モーションと学習の結果得られたモーションを示す．初期モーション (a) はほとんど左前足だけしか[2] M. S. Kim and W. Uther. Automatic Gait Optimisation for Quadruped Robots. In Proceedings of

使っていなかったが，学習したモーション (b) は体全体を使っている．また，モーション (c) は体重を乗せて，足を降2003 Australasian Conference on Robotics and Automation, pp. 1–9, 2003.

り下ろすモーションである．これらの学習後のモーション
はどちらも体全体を動かしているため，次元数を減らすた
めにモデル化するような既存の学習方法では獲得すること[3] S. Kirkpatrick, C. D. Gelatt, and M. P. Vecchi.

が困難である．学習前，学習後それぞれのモーションの動画

Optimization by Simulated Annealing.
220(4598):671–680, May 1983.

は，我々のサイト (http://www.jollypochie.org/papers/)
で閲覧可能である．

5

参考文献

Science,[4] H. Kobayashi, T. Osaki, E. Williams, A. Ishino, and
A. Shinohara. Autonomous Learning of Ball Trapping in the Four-legged Robot League. In RoboCup

まとめと今後の課題

本論文では，それぞれの試行に多くの評価時間を要する

2006: Robot Soccer World Cup X, LNAI. SpringerVerlag, 2007. to appear.

問題に対して有効な間引きを提案した．また，間引きで利用する関数 g を推定するための 2 つの手法 (MG と GD)[5] N. Kohl and P. Stone. Machine Learning for Fast
Quadrupedal Locomotion. In The Nineteenth National Conference on Arti cial Intelligence, pp. 611–を提案した．シュートモーション学習の実験により，本手法がさまざまなメタヒューリスティクスに関して有効であり，汎用的なメタ戦略であることを確かめた．

616, 2004.

今後は，間引きが実ノイズに耐えうるかどうかを確かめるために，実ロボットでの実験が必要である．しかし，[6] M. Saggar, T. D’Silva, N. Kohl, and P. Stone. Au-

実環境でのシュートモーション学習は，毎回の試行後に転tonomous Learning of Stable Quadruped Locomotion. In RoboCup 2006: Robot Soccer World Cup
X, LNAI. Springer-Verlag, 2007. to appear.

がったボールの距離や角度などを測定し，それを注意深く
元の場所に戻す作業を行わなければならないため，非現実的である．それゆえ我々は，Kobayashi ら[4]のように，ロボットに自律学習 (autonomous learning) を行わせるこ[7] Y. Sano and H. Kita. Optimization of Noisy Fitnessとを検討している．前方シュートの自律学習は，彼らの手

Functions by means of Genetic Algorithms using His-

法をそのまま利用することができる．他の方向のシュー

tory of Search with Test of Estimation. In Proceedings of the Congress on Evolutionary Computation(CEC2002), pp. 360–365, 2002.

トに関しても，天井カメラなどを用いれば可能である．自律学習という概念は，通常は現実的ではなかったシュート
モーション学習などを実現するだけではなく，試合中に，
つまりオンラインで身体動作を学習し，向上させる可能性を秘めている．実機リーグにおいては，戦略のオンライン[8] J. C. Zagal and J. R. del Solar. Learning to Kickthe Ball Using Back to Reality. In RoboCup 2004:
Robot Soccer World Cup VIII, Vol. 3276 of LNAI,
pp. 335–347. Springer-Verlag, 2005.

学習はいくつか報告されているが，身体動作のオンライ
ン学習はいまだ行われていない．オンライン学習能力は，
未来の RoboCup に必要とされる重要な能力であるため，[9] M. Zaratti, M. Fratarcangeli, and L. Iocchi. A 3D
Simulator of Multiple Legged Robots based on USARSim. In RoboCup 2006: Robot Soccer World Cup

取り組みがいのある問題だといえる．
また，本章で提案した 2 つの手法は一長一短であった

X, LNAI. Springer-Verlag, 2007. to appear.

ため，我々はより精度の高い関数 g の推定方法を考える必要がある．我々は，重みつき平均を用いた手法など，256

Table 1: シュートモーション学習の実験結果．actual trial は間引き率，error rate は失敗率を表す．失敗率は，間引かれた候補の中で，学習の性能を落とす原因となった候補の率を表す．
actual trial
MG
GD
37.6%
49%
66.2% 76.2%
7.2%
57.4%
10.6% 47.6%

GA
SA
HC
PG

error rate
MG
GD
0.56% 7.69%
0.75% 7.00%
0.00% 2.88%
0.71% 3.54%

350

700
actual tried candidates
wrongly thinned-out candidates
correctly thinned-out candidates

300

600

actual tried candidates
wrongly thinned-out candidates
correctly thinned-out candidates

250
500
200

score

score

400
150

300
100
200
50

100

0

0

0

10

20

30

40

-50

50

0

10

20

30

candidatecandidate(a) 最大傾斜法(b) 差分収集法

Figure 2: 疑似焼き鈍し法における最大傾斜法と差分収集法の実験結果(a) 初期モーション(b) 学習後：体全体を使ったモーション(c) 学習後：体重を使ったモーション

Figure 3: 初期モーションと学習後のモーション

57

40

50

社団法人 人工知能学会

人工知能学会研究会資料

Japanese Society for
Artificial Intelligence

JSAI Technical Report
SIG-Challenge-A701-11 (5/4)

ニューラルネットとヒューリスティックを用いたドリブルスキルの開発
Developing Dribble Skills Using Neural Networks and Heuristic Knowledge

中島 智晴，荘司 悠希男，石渕 久生
Tomoharu NAKASHIMA, Yukio SHOJI, Hisao ISHIBUCHI

大阪府立大学大学院 工学研究科
Graduate School of Engineering, Osaka Prefecture University

nakashi@cs.osakafu-u.ac.jp, shoji@ci.cs.osakafu-u.ac.jp, hisaoi@cs.osakafu-u.ac.jp

Abstract
Body angle = Target angle?
In this paper we show the developmente of dribble skills using neural networks and heuristics.
We divide the dribble skill into two parts suchas driving part and heading part. In the driving part the dribbling agent moves straight towards its heading while kicking the ball. The
predicted position of the ball is calculated fromthe physical movement specified by the soccer
server. For the heading part we use a neuralnetwork that is trained to mimic the directionof a target dribbling agent. We also use heuristic rules to determine the heading of the dribbling agent when it is in the opponent’s penalty
area.

Yes

No

Drive forward

Heading

Kick and dash

Turn

Figure 1: ドリブルスキルにおける意思決定の構造

合には体の向きを変更させることが必要となる．そこで，本論文では，ドリブルスキルを図 1 のような構造を持つ
意思決定として取り扱うことにする．
図 1 では，ドリブルを行う際，まずはじめに体の向きが目標角度と一致しているかどうかを調べる．もし一致していれば前進のための意思決定（キックもしくはダッシュ）

1

を行い，一致していなければ方向変換（ターン）の意思決

はじめに

定を行う．

ロボカップサッカーシミュレーションは，エージェントの物理的な設計の必要が無く，自律的なサッカー行動をおこ

3

前進移動

なうための研究が行いやすい環境である．サッカー行動
は大きく二つに分けることができる．一つは，エージェン

前進移動はキックによりボールを前方へ移動させ，ダット個人の技能により関係する低レベル行動であり，もう一シュにより自身を前方に移動させるという行動の組み合

つは，チーム全体の協調行動により関係する高レベル行

わせである．ボールをキックするためには，ボールがエー動である．

ジェントキッカブルエリア内になければならない（図 2）．

洗練された戦略の開発により重点がおかれている．し従って，キックする際には，次にキックをする時点でのボー

かし，どんなにすぐれた戦略を開発することができたとルの位置を計算しておかなければならないことになる．

しても，

2

本論文では，あるキックから次のキックまでの行動を一連のエピソードとする．次のキックまでに何回ダッシュ

ドリブルスキルするかが決められると，キックのパラメータ（パワーとドリブルスキルは，キックとダッシュを組み合わせてボー角度）がそれに応じて計算される．なお，以下の計算で

ルとエージェント自身を移動させる行動とみなすことがは，エージェントやボールの移動にノイズは考慮されてできる．さらに，目的の方向と移動方向が異なっている場

いない．

58

1
0.9

Player

0.8
0.7
0.6

Kickable margin

0.5
0.4

Kickable area

Figure 2: キッカブルエリア
3.1

Figure 3: ボール位置が加速度に与える影響

キックパラメータの決定

キックの後に n 回のダッシュを行い，一つのエピソード

を式変形することにより得られる．Atb が決定された後，が終了すると仮定する．時刻 t におけるキックのパラメー
タは，時刻 t + n + 1 にボールが目標地点にあるように計

ボールに加速度 Atb を与えるキックのパラメータであるパ

算される．

ワーと角度を決定する．

時刻 t におけるボールの位置ベクトルと速度ベクトル

キックがボールに与える加速度ベクトルの大きさは，キッをそれぞれ Xbt ，Vbt ，キックにより与えられたボールの加速度ベクトルを Atb とする．このとき，時刻 t + n + 1 におけるボールの位置 Xbt+n+1 は以下で求められる．
nX
Xbt+n+1 = Xbt +(Vbt + Atb ) ∗ decaybk(1)
k=0

クパワーとキックした時点でのボールとエージェントの位置関係に依存している．図 3 に，ボールの位置関係がキック力に与える影響を図示している．ボールの位置関係がキック力に与える影響を ρ とすると，ρ は以下で求められる．

ここで，decayb はボールに対する減衰係数であり，定ρ = 1.0 − 0.25 ∗

数である．

δdir
δdist
∗ 0.25 ∗(4)180
kickableM argin

ここで，δdir はエージェントの体の向きに対するボール

一方，エージェントは時刻 t においてキックした後 n 回

位置の角度，δdist はエージェントからボールまでの距離，ダッシュを行い，時刻 t + n + 1 で再びキックをする．ダッシュのパラメータ（パワー）を dashP ower とする．一つのエピソード内では，dashP ower は一定であるとする．

kickableM argin は，サッカーサーバで決められているキッカブルマージンであり，定数である．
図 3 では，図の中心にエージェントがおり，向かって右

時刻 t におけるエージェントの位置ベクトルと速度ベクト= (vxt , vyt )，を Xpt = (ptx , pty )，エージェt側が前方であると仮定している．色が明るい部分ほどキッントのスタミナを stamina とすると，キックの後連続しクパワーがそのままボールの加速度に反映されることをて n 回ダッシュした際の時刻 t + n + 1 におけるエージェ

示し，暗い部分ほどキックパワーが加速度に反映されなントの位置 Xpt+n+1 は以下で求められる．

いことを示している．図 3 より，ボールがエージェントのルをそれぞれ Vt

Xpt+n+1 =Xpt + V tnk
XX+
{Vpt ∗ decay l +Apt+l ∗ decaypl−1 }前方にあるほど，さらにボールがエージェントに近いほどキックパワーがボールの加速度に与える影響が高いこ(2)とがわかる．
キックパワーとボール位置が加速度に与える影響が与

k=1
l=1
ここで，Atp は，時刻 t にプレーヤに与えられた加速度でえられたという過程のもとで，ボールに与えられる加速度 Ab の大きさは以下で決定される．

ある．ただし，式 (1) と式 (2) の両方において，サッカー|Ab | = kickP ower ∗ 0.027 ∗ (1.0 − ρ)

サーバで定められている最高速度を超えることはないものとする．

式 (5) より，ドリブル中，時刻 t でキックする際のパラ

時刻 t + n + 1 におけるボールの位置は，エージェント

メータ kickP owert は以下となる．

の位置より少しずれた位置になければならない（衝突するため）ので，ボールの目標位置を Xpt+n+1 + φ とすると，キックによりボールに与える加速度は

Xbt+n+1 = Xpt+n+1 + φ(5)kickP ower = |Atb |/0.027/(1.0 − ρ)(6)

キック角度は，|Atb | の角度とエージェントの体の向き(3)との差から求められる．

59

op1

opk

opn3

1

LkL

n3

1

ある．ドリブルの軌跡から，ボールの位置とエージェントの体の向きをニューラルネットの教師出力として利用する．なお，ニューラルネットの学習用パターンの生成はすべて手作業で行われる．図??で，ドリブルの移動方向が変更されているのは，近傍に静止している敵がいるため，

L jLn

wkj

回避している様子を示している．

2

1

L iLn

x p1

x pi

wji

1

x pn

Figure 4: ３層階層型ニューラルネット
3.2

ダッシュパワー

3.1 の仮定により，ダッシュパワーは一度決定されるとエピソードが終わるまで固定である．キック後に連続して n
回のダッシュを行う実装は agent2d[1]の Intention クラス
を用いて行われる．

4

Figure 5: 抽出されたドリブル軌跡の例
なお，ニューラルネットの学習はサッカーの試合中には行わず，オフラインで行われる．したがって，本論文の仕様では，いったん試合が始まるとドリブルの移動方向は

方向決定部

ボールの位置によって一意に決まる．ボールを奪いにく
ドリブルの目標方向決定は，ニューラルネットにより行わる敵に対して回避行動をとる必要があるが，本論文ではれる．ニューラルネットは，３層階層フィードフォワード

考えられておらず，今後の課題である．

型（図 4）を用いる．特に，本論文では，２つの入力層ユ5

ニット，５つの中間層ユニット，１つの出力層ユニットから構成されるニューラルネットワークを用いて方向を決定

数値実験

数値実験では，主にニューラルネットによって得られたすることにする．ニューラルネットワークへの入力はボー

ドリブル方向について考察する．学習用パターンの抽出に使用したチームは TokyoTech06[3], TokyoTech05[2],ルの位置，ニューラルネットワークからの出力はドリブルの移動方向とする．ただし，ニューラルネットワークの出YowAI06yowai06, UvA Trilearn03[4]である．それぞれのチームに対して，試合中まったく動かないエージェントからなるチームを敵チームとして 6000 サイクル分の試合を実行した．図 6 に敵チームの静止位置を示す．
試合中，適宜手作業でボールの位置を変更し，なるべ
くたくさんのポイントからドリブルが始められるように

力は 0 から 1 までの実数であるので，これをドリブルス
キルへ適用する際には− 90 から+90 へのスケール化を施すことにする．
ニューラルネットの学習用パターンとして，インター
ネット上で公開されているチームのドリブル方向を利用する．学習用パターンの生成手続きは以下になる

した．図 7 に，獲得されたドリブルの軌跡を示す．学習

Step 1: ターゲットとするチームを用いて試合を行う．

前のニューラルネットの重みはランダムに生成されるため，何も学習していない状態のニューラルネットを用いる

Step 2: ターゲットチームがドリブルをしている時刻とエージェント番号を記録する．

と，ゴール方向には向かわない．その一方で，学習済みのStep 3: 記録した時刻のボールの位置をニューラルネッに向かってドリブルを進めている様子がわかる．また，たニューラルネットワークを用いた方向決めの場合，ゴール
だ直線的に進むのではなく，静止している敵位置の近傍で

トの入力とし，そのときのエージェントの体のはそれを避けるような方向が得られている．入力がボー向きをニューラルネットの教師出力とする．

ルの位置のみであるにもかかわらず，敵エージェントを避
図 5 に，上記の手続きによって得られたドリブルの例

けることができるのは，学習用パターンの生成時に手本を示す．この図は，2005 年の世界大会に出場したチームとなるチームが静止している敵エージェントを避けながHELIOS のエージェントから得られたドリブルの軌跡でらドリブルしていたからである．学習したニューラルネッ

60Figure 8: 開発したドリブルの軌跡１
Figure 6: 敵チームの静止位置

ム中に敵の動きに合わせて移動方向を適応的に変化させる技術も必要である．この技術については，近い将来の課

トには，このような明確に含まれていない情報も考慮し題である．

たうえで方向付けを行うことができる．

参考文献
[1]

秋山 英久，ロボカップサッカーシミュレーション 2D
リーグ必勝ガイド，秀和システム，2006．

[2]

東京工業大学[3]

東京工業大学[4]

アムステル大学 Uva Trilearn2003 download page,

TokyoTech06 download page,
http://www.ntt.dis.titech.ac.jp/ akiyama/robocup/
download.html

http://staff.science.uva.nl/ jellekok/robocup/2003/
trilearn rc2003 bin.tar.gz

Figure 7: 開発したドリブルの軌跡１[5]

6

TokyoTech05 download page,
http://www.ntt.dis.titech.ac.jp/ akiyama/robocup/
download.html

おわりに

本論文では，ニューラルネットとヒューリスティックを駆使したドリブルスキルの開発を行った．ドリブルスキルは個人技能の中でも重要な役割を占めており，優れたドリブルを行うことは，強いチームを構築するための絶対条件ともいえる．本論文では，サッカーサーバの仕様を領域知識としてヒューリスティックなキックパラメータの決定に用い，一方でチームの個性がよりよく出るドリブル方向の決定をニューラルネットを用いて行った．ニューラルネッ
トの学習用パターン生成には，他のチームのゲームログ
から週出されたドリブル情報が用いられた．したがって，
ボールを前に運ぶ技術は我々独自のものであるが，ボールを運ぶ方向については他チームを参考にしているとみなすことができる．本論文では，ニューラルネットの学習がいったん終了すればその後は変更していないが，ゲー

61

YowAI
2006
download
page,
http://ssil.uni-koblenz.de/RC06/2D/Binaries/
東京大学

社団法人 人工知能学会

人工知能学会研究会資料

Japanese Society for
Artificial Intelligence

JSAI Technical Report
SIG-Challenge-A701-12 (5/4)

Incremental Behavior Acquisition Based on Reliability of Observed Behavior Recognition

Tomoki NISHI1 , Yasutake TAKAHASHI1 , Minoru ASADA1,2
1Osaka University, 2 JST ERATO Asada Synergistic Intelligence Project{tomoki.nishi,yasutake,asada}@ams.eng.osaka-u.ac.jp

Abstract

In the environment involving robots and/or humans,
it is less necessary to discover new tasks/behaviors onlywith self exploration than through observations of be-

We propose a novel approach for acquisitionand development of behaviors through observation in multi-agent environment. Observed

haviors of others with skills. The latter is also much
useful and realistic in practical view. Furthermore, it isbehaviors of others gives fruitful hints for alearner to ﬁnd a new situation, a new behav-

a very useful ability to utilize understanding of intentionof humans in order to generate cooperative behaviors
with them.

ior for the situation, necessary information forthe behavior acquisition. RoboCup scenario
gives us a good test-bed multi-agent environ-1

Baldwin et al. [1] showed a fact that a young childof 10-11 months already has a segmentation ability of ament where a learner can observe behaviors ofothers during practices or games. It is more

behavior through some experiments. In addition, they
insist that young children seem to have a low level model

realistic, practical, and eﬃcient to take advantages of observation of skilled players than to
discover new skills and necessary information

with continuity of trajectory of the body and segment
the observed trajectory where it deviates from the modelas the break of the behavior because of the fact that

only though the interaction of a learner andan environment. The learner automatically de-they can do the behavior segmentation even if the observation is the ﬁrst time for them. Itti and Baldi [2] did

tects state variables and a goal of the behavior
through the observation based on mutual information. Reinforcement learning method is ap-

the experiment regarding visual features which induce
the gaze of a person. A vision image is divided spatiallyinto small regions and temporally short periods and theplied to acquire the discovered behavior suited
to the robot. Experiments under RoboCup

feature quantity such as diﬀerence of color strength of
red and green are modelled dynamically in regard to the

MSL scenario shows the validity of the proposed method.

each regions. Then, they showed that the human gazeis induced by the regions where the changes of parameter values of the model are large. From those insights,
segmentation of an observed behavior seems to be doneby detecting a remarkable point as a break point of theIntroduction

Imitation is one of the most signiﬁcant ability of a person. The young children increase their repertoire of behaviors and keep advancing it through the imitation of

behavior where parameter values of the model change
largely.

the observed behaviors with interest. Meltzoﬀ et al. insists that the ability of imitation has borne importanttion and development of behaviors through detection ofremarkable points of observed behaviors. and apply it torole for understanding intention and feelings of the otherperson.

our robots. A local linear model is introduced to checkcontinuity of trajectory concerning each sensor value andWe propose a novel approach for incremental acquisi-62a point with a big error of this model is regarded asremarkable point for segmentation of the observed behavior. A new behavior learning module is assigned au-

motor skill learning and robot behavior acquisition. It
generates not only an appropriate policy (map from sensor outputs to motor commands) to achieve a given task
but also an estimated discounted sum of reward that will
be received in future while a learning agent is taking an

tonomously to a novel segmented behavior. Reinforcement learning method is applied to acquire the new behavior suited to the robot. Experiments under RoboCup
MSL scenario show the validity of the proposed method.

optimal policy. But it is known well that learning time
and the required computational resources for a simple
application to a real robot tends to be too huge and al-2

most unpractical. One of the potential solutions might
be application of so-called “mixture of experts” proposed
by Jacobs et al. [8], in which a whole state space is de-Related Work

Research regarding imitation through observation has
been done so far [3, 4, 5]. Almost conventional work fo-

composed to a number of areas so that each expert module can produce good performance in the assigned area,

cuses on eﬃcient reproduction of observed behaviors byfollowing trajectory of an observed behavior of a demon-and one gating system weights the output of the eachexpert module for the ﬁnal system output. This idea
is very general and has a wide range of applications [9,10, 11]. Therefore, emulation can be achieved based on

strator. Those proposed imitation methods have applicability limitation as a trajectory of its imitated behavior
becomes almost same of the instructed behavior because
the imitated behavior is evaluated not by the intentionof the behavior but by the similarity of the trajectory

reinforcement learning so that the observed behavior is
divided into a number of modules and a reward is given
when the result of behavior is reproduced. In general, ititself. The imitation with reproducing the observed trajectory is called mimicry as known as the most primitive
imitation.

is a diﬃcult problem to design appropriate combinationof behaviors beforehand and it is desirable to be done
autonomously by the observer itself.

Expanded deﬁnition of imitation of the young child includes this mimicry, emulation, and narrow deﬁned imitation. Emulation is when after observing an action, theobserver jumps to conclusions and performs only thoseactions that will lead it to the goal, without caring about
the exact methods of the demonstrator (although observed methods biases future actions). Finally, imitationis the crowning of copying, the sophisticated capability

Many kinds of modular learning systems with autonomous behavior segmentation mechanisms are proposed so far. Samejima et al. [4] arranged modules ofa linear prediction model and a controller of reinforce-of reenacting sequence of actions to detailed levels, withthe agent clearly aiming for the same objective as thedemonstrator’s.

ment learning method as group in parallel, changed those
assignment adaptively based on prediction error of theprediction models. Taniguti et al. [12] also proposed

Capability of emulation is useful for intention recognition because it is important to reproduce the resultof the observed behavior but not about the exact trajec-

a system with a set of reinforcement learning modules
in parallel that splits and merges among them based on

tory of the observed behavior. It is unrealistic in the realworld to acquire precise trajectory of an observed behavior because of the sensor/actuator noises or any possible

the prediction error of reinforcement signal. In these systems, the state space, the space which describes the relationship between a learning agent and an environment,

diﬀerences in the parameters of body between the observer and the demonstrator and/or objects. Takahashi
et al. [6] proposed a method of emulation that does not

and a reward function have to be deﬁned beforehand.
Unfortunately, it is also diﬃcult in general to design a

use similarity of the trajectory and does infer the intention based on the increase and decrease of achievement

state space and a reward function appropriately because
it depends on not only behaviors the learner will observe
and acquire in future but also the sensors and the motionof the observed behavior. They showed the validity ofthe proposed method to infer the intention of other evenmechanism equipped on it. We need some mechanism
to ﬁnd an appropriate state space and reward function

if the trajectory of observed behavior is diﬀerent fromthe one of own behavior of itself.

automatically for each segmented behavior through observation of instructed behaviors.

Reinforcement learning [7] has been studied well for63

3

Observed Behavior Segmentation
based on Remarkable Points

3.1

2. Detect remarkable points in the observed behavior
3. If there is at least one remarkable points, then, go
to next, else, go to 6.

Basic Idea

From the insights of Baldwin et al. [1] and Itti and
Baldi [2], it seems to be possible to segment an observed

4. Segment the observed behavior into smaller ones
based on the remarkable points,

behavior properly at remarkable points where parameter values of a simple model changes largely during the

5. Find a state space and a goal state for the segmented
behavior based on degree of attention.

observation as a human tends to look at the points carefully. Since a trajectory of one single behavior tends tohave stable direction and speed, then a local linear model

6. If there are more than one observed behavior, thengenerate another learning module at higher layer tocoordinate them.

can be applied to ﬁt the trajectory. On the other hand,because linearity of a trajectory breaks when continuity

We adopt a hierarchical learning system proposed by
Takahashi et al. [9] Because of limited space of paper, weof trajectory breaks, the remarkable point can be easily found by measuring change of reliability of the local
linear model parameters. We call this measurement aseliminate the details of the hierarchical learning systemand concentrate on the acquisition of new behaviors fromthe observation.

“degree of attention” in this paper. In addition, an important space and a target state in order to explain theobserved behavior can be found based on the mutual information between the remarkable points and the statein the space because a remarkable point is also a positionof the target state of the behavior.
On the basis of argument above, our method,
1. ﬁnds remarkable points of observed behavior basedon degree of attention,
2. segments observed behavior based on the remarkable points, and3. assigns a behavior learning module to each segmentof the observed behavior.
If observed behavior can be emulated by an appropriate module in a behavior repertory, then the degree ofattention is suppressed so that acquisition of only novel
behaviors for the learner can be focused on. An hierarchical learning system integrates a number of small
time-scale behaviors so that the observer can emulate
a long time-scale behavior. The hierarchical learning
system has reinforcement learning modules that acquire
purposive action policy through trial and error manner.
Another advantage of this hierarchical learning system is
eﬃcient re-usability of behaviors learned before and enables the observer to keep learning new behaviors while

Figure 1: Sketch of Algorithm of New Behavior Detection

it accumulates useful ones.
3.2

Fig. 1 shows a sketch of algorithm of new behavior

Algorithm Overview

detection and acquisition. From a number of observation data, degree of attention and reliabilities of existing

A learner tries to emulate observed behavior and cumulatively acquire behaviors by the procedure below:

behavior are calculated. The degree of attention suppressed by the reliabilities is used for selection of state

1. Observe behaviors of other,64

variables related to a new behavior acquisition based on
mutual information. A reinforcement learning modules
is assigned with a new generated state space with therepresents the closeness to a goal of the behavior. If
a demonstrator follows to a policy of the behavior, thestate value keeps rising, while it shows a movement inselected state variables and a goal state, then, acquires
the behavior through trials and errors. The details are

the opposite direction, then, the state value tends to decrease. Reliability that has higher value when the state

explained in following sections.

value is rising and lower else is introduced here. The degree of attention is suppressed by this reliability (Fig.1
2b)

3.3

Remarkable Point and Degree of Attention

As mentioned about the insights from the work of Baldwin et al. and Itti and Baldi before, we introduce a

The reliability Rl (t) of a learning module l at of time
t is deﬁned as follow:

concept of degree of attention. The degree of attention
should be large if the continuity of the trajectory breaks.
We adopt a local linear model to detect a remarkableRl (t)

point of the continuity of the observed trajectory.

e(t)One dimensional local linear model x = at + b is introduced and we assume that variation of measurement+=

1
1 + exp (−k1 e(t))



0






V (t) − V (t − 1)values follows normal distribution, then, variance of error of parameter is presumed as below.
∑
∑
∑
1
(
x2i − bxi − ati xi )
N −2
N
∑
∑
σ2
N t2i − ( ti )2 0
∑ 2t
∑ 2 i ∑ 2 σ02
N ti − ( ti )=(7)
if e(t − 1) > k2ore(t − 1) < −k(8)
2

else,

where k1 and k2 are a gradient factor of sigmoid function
and maximum value of e(t), respectively. Initial value of(2)

the reliability is 0.5, that is, e(0) = 0 in this paper.
This reliability Rl (t) can evaluate how the observed
behavior follows the policy of the module. In other(3)

words, if the reliability of this learning module is high,this means that the observed behavior has been alreadywhere N is number of samples during observations. We
deﬁne a reliability Rm (t) of the parameter of the local

acquired in advance. Then degree of attention is suppressed as below on the basis of the reliability of theexisting learning modules. The suppressed degree of at-

σ02

=

σa2

=

σb2

=

linear model m at time t as follows:√σ 2 (t) =(σa2 (t))2 + (σb2 (t))2
−σ 2 (t) if σ 2 (t) < 1
Rm (t) =

else

(1)

tention Â(t) is calculated as(4)Â(t) =

(1 − max Rl (t))A(t) ,
l∈L

(9)

where maxl∈L Rl (t) is maximum of reliabilities of all ex-(5)isting learning module acquired.

This reliability has a high value if the observed data
has good linearity. Then we apply one dimensional local
linear model on each state variable and deﬁne the degree

3.5

of attention A(t) at of time t as total sum of the changesof the reliabilities of all models. That is,suppressed degree of attention Â(t). The mutual information I(X; Y ) is information gain of the phenomenon
Y when the phenomenon X is observed and shows depthA(t) =∑|Rm (t + 1) − Rm (t)| .

Fig. 2 shows a diagram of selection of state space anda goal state for learning a new behavior based on the(6)of the relation of two phenomena. A new state space foran observed behavior is selected as the space with mostm∈M

We deﬁne the remarkable point where the degree of attention A(t) is larger than a threshold k as the part withmutual information gain between the phenomena “Â(t)is higher than a threshold” and the one “The state s
takes place in the state space S”. Then, a new behav-

big change of the parameters of the all models.
3.4

Selection of a state space and a goal state

ior module is assigned to the state space. The concrete
procedure of selection of a state space and a goal state

Suppression of Degree of Attention

If a behavior has been already assigned before, then theassignment of a new behavior module should be sup-is shown below:

pressed even if the degree of attention is high. Statevalue V (t) which is utilized with reinforcement learning

1. Create a histogram H1 of appearance frequency ofstate visited through observed behaviors

65relative angle between the ball and the receiver from theviewpoint of the passer, distance between the ball andthe passer, on the image of the observer, respectively.
These values are normalized accordingly. From this ﬁgure, the passer starts dribbling from around 150th step
toward the receiver and kicks a ball to the receiver atapproximately 220th step. Then, the receiver received
the ball at around 230th step.
Degree of attention Â(t) is calculated through all 41
times observations. Fig. 4(a) shows a sequence of degree of attention during the observation of the instruction. Â(t) is calculated with all observed behavior andthe mutual information between each state variable andthe region where the Â(t) is over than a threshold 0.2 isFigure 2: Sketch of a system which selects state spacegraphed in Fig. 4(b). Two new behavior modules, LM1
and LM2, that have state spaces and goal states whereare highly related with a space where Â(t) is larger than a

2. Create a histogram H2 of appearance frequency ofstate where the Â(t) is larger than a threshold

threshold based on mutual information is assigned. Table 1 shows the state space and the goal state. LM1

3. Calculate the mutual information gain between phenomena “Â(t) is higher than the threshold” and theone “the state s takes place in the state space S”
based on the histogram H1 and H2

acquired a behavior of approaching a ball while LM2
acquired a behavior of turning around the ball and facing them in front of the body. Fig. 5(a) and (b) show

4. Assign a new behavior learning module with thestate space and the goal state which appear mostexamples of the acquired behaviors by learning modules
LM1 and LM2. Whole pass behavior is acquired by inte-frequently in the histogram if the mutual information gain is larger than a threshold

grating these behavior modules using a hierarchical reinforcement learning mechanism. One example of theacquired passing behavior is shown in Fig. 5(c).

4Experiments

4.1

Experimental setup

4.3

Shooting Behavior Observation andAcquisition

The proposed method was veriﬁed with real robots unAs the second instruction, the learner observed shoo-

der a scenario of RoboCup MSL. A robot has one omnidirectional vision system and detects objects around it
in all direction simultaneously. It also has a omni-

ing behavior 41 times, again. The relationship between
a state space and a region which Â(t) is larger than athreshold was calculated based on mutual information,

directional vehicle to go to all direction and turn aroundon ﬂoor. Additionally, a kick mechanism is attached on

again. Fig. 6(a) shows an example behavior acquiredby a new module with the new state space. Fig. 7(a)the robots. There are a passer, who shows instruction
behaviors, a receiver, a ball, two goals, and an observer(learner) in the environment.
4.2

and (b) show a sequence of degree of attention Â(t) during the observation and the mutual information between
each state variable and the region where the Â(t) is overPassing Behavior Observation andAcquisition

than a threshold, respectively. A behavior of approaching a ball is necessary for this observed behavior andIn our experiments, the learner observed a passing behavior 41 times from diﬀerent viewpoints. 41 times isexperimentally enough for the task. Fig. 3(a) and (b)this behavior has been already acquired as LM1 throughpassing behavior, then, LM1 does not need additional
learning stage. A new behavior module LM3 is gener-

show an example of the observation situation and a sequence of major sensor values during the observation

ated with an appropriate state space and a goal state
shown in Table 1. The shooting behavior is acquired as

respectively. Red, blue and the green lines in ﬁgure Fig.
3(b) indicate distance between the ball and the receiver,

the integration of LM1 and LM3 with hierarchical reinforcement learning mechanism. One example of the66

Table 1: List of state variables and goal state in acquired learning modules
learning module
LM1
LM2

LM3

state variable
distance to ballangle to ballangle between ball and receiverangle to balldistance to ballangle between ball and goal
angle to a balldistance to a ballcenter of goal state
0.05
0.00
0.00
0.00
arbitary
0.00
0.00
arbitrary(b) behavior of LM2(c) integrated behavior(a) behavior of LM1

Figure 5: Examples of acquired behaviors of LM1 and LM2 and integrated one
behavior is shown in Fig. 6(b).

5of the 2001 IEEE/RSJ International Conferenceon Intelligent Robots and Systems, pp. 1416–1427,

Conclusion and Future work

2001.

We proposed a novel approach for acquisition and devel-[4] Kazuyuki Samejima, Kenji Doya, and Mitsuo
Kawato. Mosaic reinforcement learning architecture: Symbolization by p redictability and mimic

opment of behaviors through observation in multi-agent
environment. The learner automatically detected statevariables and a goal of the behavior through the obser-

learning by symbol. Journal of the Robotics Societyof Japan, Vol. 19, No. 5, pp. 551–556, 2001.

vation based on mutual information. Experiments under
RoboCup MSL scenario showed the validity of the proposed method. The learner observed passing and shooting behaviors and tried to imitate them by incremental
skill acquisition such as LM1, LM2, and LM3. Future[5] Aude Billard and Maja J. Mataric. Learning human arm movements by imitation: evaluation of abiologically inspired connectionist architecture. In
Robotics and Autonomous Systems, Vol. 941, pp. 1–

work will investigate more number of typical behaviors
like “obstacle avoidance”, “receiving a ball”, “interfering

16, 2001.

the opponents” and so on in RoboCup games.
[6] Y.Takahashi, Kawamata, and M.Asada. Learning

参考文献

utility for behavior acquisition and intention inference of other agent. In Proceedings of the 2006

[1] Dare A. Baldwin, Jodie A. Baird, Megan M. Saylor, and M. Angela Clark. Infants parse dynamic

IEEE/RSJ IROS 2006 Workshop on Multi-objective
Robotics, pp. 25–31, 2006.

action. Child Development, Vol. 72, No. 3, pp. 709–
717, May/June 2001.

[7] R. Sutton and A. Barto. Reinforcement Learning :An Introduction. MIT Press, 1998.

[2] Laurent Itti and Pierre Baldi. A principled approach to detecting surprising events in video. In[8] R. Jacobs, M. Jordan, Nowlan S, and G. Hinton.
Adaptive mixture of local experts. Neural Compu-IEEE Int’l Conf. on Computer Vision and Pattern
Recognition, June 2005.

tation, Vol. 3, pp. 79–87, 1991.

[3] Yuichiro Yoshikawa, Minoru Asada, and Koh[9] Y.Takahashi and M.Asada. Multi-controller fusion in multi-layerd reinforcement learning. In

Hosoda. View-based imitation learning by conﬂict
resolution with epipolar geometry. In Proceedings

67

(a)

(a)

(b)

Figure 3: (a)Instruction of passing behavior, (b)Example
sequence of the major sensor values ;((red line): distance
between receiver and ball, (blue line): angle between receiver and ball, and (green line): distance between passer
and ball)(b)

IEEE/RSJ International Conferrence on Mul-

Figure 4: (a) Sequence of degree of attention during observation and (b) Mutual information in each state vari-tisensor Fusion and Integration for Intelligent
Systes(MFI2001), pp. 7–12, 2001.
[10] Jun Morimoto and Kenji Doya.

able

Acquisition ofstand-up behavior by a real robot using hierarchicalreinforcement learning. In Proceedings of International Conference on Machine Learning, pp. 623–
630, 2000.
[11] Satinder P. Singh. The eﬃcient learning of multiple task. Neural Information Processing Systems,
Vol. 4, pp. 251–258, 1992.
[12] T. Taniguchi and T. Sawaragi.

Incremental acquisition of behavioral concepts through social interactions with a caregiver. In Artiﬁcial Life andRobotics (AROB 11th ’06), 2006.
(a) behavior of LM3(b) integrated behavior

Figure 6: Example of acquired behavior of LM3 andintegrated one for shooting a ball

68

(a)

(b)

Figure 7: (a) Sequence of degree of attention during observation of shooting behavior and (b) Mutual information in each state variable69

社団法人 人工知能学会

人工知能学会研究会資料

Japanese Society for
Artificial Intelligence

JSAI Technical Report
SIG-Challenge-A701-13 (5/4)

Q 学習を用いた制約付巡回セールスマン問題の解法
A Solution to the Traveling Salesman Problem with Additional Constraints
Using Q-learning〇伏島 優(芝浦工業大学工学部)
五十嵐 治一 (芝浦工業大学工学部)
石原 聖司 (近畿大学工学部)* Yutaka FUSEJIMA(SIT) , Harukazu IGARASHI(SIT), Seiji ISHIHARA (Kinki Univ.)
まず経路 l の総距離を E1(l)，制約違反数を E2(l)とし，経路 l の関数として目的関数 E(l)を次のように定義する．

Abstract— Simulated annealing (SA) and Genetic Algorithm (GA) are known as quick approximate solution
techniques for solving combinatorial optimization problems. They give optimal or nearly optimal solutions inrather short computation time. However, appropriately
adjusting several parameters to avoid being trapped inlocal optimal solutions and wasting computation time is
not easy. In this paper, we tried to learn the control ofparameters in the objective function used in SA algorithms by Q-learning. We tested and verified our method
by applying it to traveling salesman problems with additional constraints.

E(l )  E1 (l )  ωE 2 (l )(1)(1)中のωは制約項 E2(l)の重み係数である．本論文
では経路 l は 20 個の都市の訪問順序を表す 1 次元
リストで表現する．E2(l)=0 という制約を満たし(実行可能解)，総距離 E1(l)ができるだけ小さくなるような経路(最適解)を見つけることが探索の目的である．

1.はじめに組合せ最適化問題は実社会のいたるところに現れ，高速で最適解を導き出すことが重要課題となっている．そのため組合せ最適化問題の近似解法
として，シミュレーテッド・アニーリング(SA)や遺伝的アルゴリズム(GA)等が考案された[1]．これ
らは比較的短時間で最適解，もしくは準最適解を得ることが可能であるが，パラメータの設定が必要であり，その設定を誤ると無駄な探索の増加や局所解に陥るという問題点がある．
本研究では Q 学習を用いて SA で使用する目的
関数中のパラメータの調整を行い，得られる解の精度向上を目的とする．今回は例題として制約付
きの巡回セールスマン問題をとりあげた．

： 都市： 先行関係

Fig.1

City arrangement and precedence relation

3.提案方式
3.1 処理フローSA は統計物理学における熱平衡状態を人工的に作り，徐々に温度を下げることで，問題に対して設定された目的関数の大局的最小点を見つける手法である．SA は比較的短時間で最適解，もしくは準最適解を得ることができるが，パラメータ(2.の例ではω)の値の設定次第では局所解や実行不可能解に陥りやすくなる．そこで本研究では，SA 実行中に目的関数中の重みを Q 学習により自動的に調整できる方式を考案した．本研究での解探索(SA+重み調整)の流れを
Fig.2 に示す．Q 学習については次節で述べる．
まず，①の初期設定では初期温度 T0 および初期重み係数ω0 の値を設定する．②の試行変形操作では，現在の状態 x（都市の訪問順序）からランダムに 2つの都市を選択し，その 2 つの都市を入れ替えて次状態 x’を作る．③の受理判定では 2 つの都市を入れ

2.制約付巡回セールスマン問題
一般に巡回セールスマン問題は，n 個の都市全てを一度ずつ巡り戻って来る経路の中から，総距離が最小になる経路を求める問題である[2]．これに訪問順の制約を加えた問題を「制約付巡回セールスマン問題」と本稿では定義する．今回は都市数を 20 とし，円周上に等間隔で配置し，さらに制約条件として訪問する都市間に先行関係を設けた.
この制約条件は 7 つ設定した．Fig.1 に都市配置と先行関係を示す．
次に，この問題の解法のための定式化を行う．

70

替える前の状態(x)と後の状態(x’)を比較し，次状態 x’を受理するかどうかを判定する．今回は受理判定の方法としてメトロポリス法を用いた．メトロポリス
法においては，現在の状態 x の目的関数値を E(x)，次状態の目的関数値を E(x’)，その差を ΔE≡E(x’)－E(x)としたときに，次状態 x’の受理確率 P(x,x’)は以下のように表される．

 1

P( x, x' )  ΔE) exp( 
T




Rt 

γ r
k

(4)

t  k 1k 0γは割引率と呼ばれるパラメータ(0≤γ≤1)である．
割引率は将来の報酬が現在においてどれだけ価値があるかを決定する．Q 学習における Q 関数の更新式を以下に示す．
Q(s, a )  Q(s, a ) αr γ max Q(s' , a' )  Q(s, a ) (5)a'A ( s' )

ΔE < 0(2)

Q(s’,a’)は遷移先の状態 s’において行動 a’をとるときの価値を示し，r は状態 s から s’への遷移において得T は現在の温度である．
られる報酬，A(s’)は状態 s’で実行可能な行動全体の⑤の冷却判定では，あらかじめ設定された回数だ集合である．また α(0<α≤1)は学習率である．(5)のけ試行変形，受理判定，状態遷移を繰り返したかど
Q(s,a)は使用した方策によらずに，最終的に(3)の最うかを判定し，温度 T を下げる(⑥，ただし 0<β<1.0)． 大値
その際に制約項の重み係数ωの調整も同時に行う．
(6)
Q * (s, a )  max Qπ(s, a )πωの変化量Δωは次節で述べる Q 学習により学習する．温度 T が一定の値より小さくなったら探索を終に収束する．最適方策は Q*(s,a)から決定論的に求め了する（⑦終了判定）．試行変形，受理判定，状態ることができる．
遷移，冷却判定，T およびωの更新操作をまとめて 1
つの step と呼ぶことにする．
4.重み係数の学習実験
4.1 状態と行動①初期設定
3.2 の Q 学習を用いるには，状態 s と行動 a を定義する必要がある．今回の実験では，状態 s を現在②試行変形の温度 T と重み係数ω，
したがって s=(T,ω)と表し，
no
行動 a を a=(a1,a2)と定義する．ただし a1 は重み変化
③受理判定
yes
量Δω，a2 は温度変化量ΔT であるが，a2 はあらか
SA
④状態遷移
1step
じめ，操作：T←β×T に固定し，a1 のみを確率的に選択する．今回の実験では以下に示すボルツマン選
no⑤冷却判定
択を使用した．
yes
行動選択
no

⑥

ΔE≧0

T←β×T
ω ← ω + ΔωP(a | s) exp( Q(s, a) /τ)exp( Q(s, a) /τ)

(7)


a

⑦終了判定
yes

P(a|s)は状態 s で行動 a を取る確率である．実験ではΔωは，-50 から 50 の間で値を 5 刻みで離散化した-50，-45，-40 … 40，45，50 の計 21 種の中から(7)に従い決定する．
4.2 報酬
次に報酬 r を設定する．解探索終了時の最終状態
を出力解とし，その解に報酬を与える．本研究の目
的は出力解の精度向上なので，出力解が実行可能解
で(E2=0)，最適解(E1=260)に近いほど高報酬を与えることにした．報酬の具体的な値を Fig.3 に示す．

終了

Fig.2

Flow of solution search

3.2 Q 学習における学習則
強化学習では，数値化された報酬信号を最大にするための行動決定の方法(方策)を試行錯誤を通して獲得する[3]．本研究では強化学習の手法として Q 学
習を用いる．Q テーブルは，時刻 t において状態 s
で行動 a を取り，以後方策πに従った場合の期待報
酬として次のように定義される．

Qπ(s, a)  EπRt |st  s, at  a(3)

Rt は割引報酬であり，次のように定義されている．

実行可能解（E2(l)＝0）

報酬 r

E1(l) = 260 （最適解）200260 < E1(l) ≦280100

E1(l) > 2800

実行不可能解（E2 (l) ≠0）

－100

Fig.3

71

Reward

4.3 実験条件
学習は計 20 万回行った．初期温度 T0=500.0 と設定し，初期重み係数ω0 は 0，10，20，30 の中からランダムに決定する．1step 中の試行変形回数は 500
回，
冷却速度β=0.8 とし，終了条件は T<1.0 とした．
これにより，解探索 1 回あたりのステップ数は 29 となる．ただし，29 ステップ目は終了状態であるため，解の探索は行われない．よって学習 1 回における総試行変形回数は 500×28=14000 回である．ボルツマ
ン選択時のパラメータτは，τ=5.0 に設定した．Q
テーブルはすべて 0.0 で初期化し，割引率はγ=0.9，
学 習係数 α =0.1 とし た． なお， コンピ ュータ はPentium(R) 4 CPU 3.4GHz，メモリは 2GB のものを使用し，20 万回の学習に要する時間は約 2 時間であった．
4.4 学習実験の結果
学習 1000 回ごとに得られる報酬 r の平均値 r1000 の推移を Fig.4 に示す．Fig.4 より，学習が進むにつれて r1000 の値が増加しており，学習の有効性がわかる．

初期重み係数ω0，試行変形の回数，冷却速度β，終了条件，出力解は 5.1 で使用したものと同じになるよう設定した．結果を Fig.6 に示す．
Efea

600
540.4

aaa
Ninf

500
400
401.6
365.0

352.3

300

100
0

325.4

329.2

330.3

215

170

152

162

125

150

175

200

110
0
25

50

0

1

75

100

（×1000）

学習回数

Fig.5 Performance comparison
Efea
390

370

45

326.4

200

380

r1000

Ninf
Ninf

Efea
E

fea

350

25

347.6
509

330

-5

336.8
206

320

5

360.5

352

805

340

15

378.3

367.2

360

35

aaaaa
Efea

135

91

70

ω=25

ω=30

ω=35

310

25

50

75

100

125

学習回数

150

175

ω=10

200

ω=15

Fig.6

（×1000）ω=20

Results of SA when ω is fixed

-15

Fig.4

Change of r1000

5.評価実験
5.1 学習回数ごとの評価実験
4.の学習実験より得た Q 値を用いて，Fig.2 の流れに沿って評価実験を行い，学習回数 2 万 5 千回ごとに性能を比較した．評価実験に使用した実験条件は4.3 に述べたものと同じであるが，行動は各状態 s において Q(s,a)を max とする行動 a を選択させるようにした．出力解も学習実験とは異なり，探索中に得た実行可能解の中で E1(l)が最も小さいものとした．
探索は各々1000 回行い，その中で発見した実行可能
解の E の平均値 Efea ，実行不可能解の出力回数 Ninf
をカウントした．結果を Fig.5 に示す．
5.2 ωを手動で設定した場合の評価実験
ωを固定した従来の SA の性能評価実験を行った．
SA では初期ωをω=10，15，20，25，30，35 に設定し，各々解探索を行う．探索回数，初期温度 T0，72

5.3 ωの推移
20 万回学習後の Q 値を用いたときの，ある解探索中のωの挙動を観察した．初期重み係数ω 0 の値を30 に設定したときの推移の例を Fig.7 に示す．横軸はステップ数 n(1≦n≦29)である．
ωの変化の仕方としては，探索開始直後の n=2 で
ω=0 まで下げ，その後ω=0 を保ち，探索終盤（24≦n≦26）にω=35 に増加後，終了間際（27≦n≦29）
でωを 75 まで急増させている．この推移の傾向は初期重み係数ω0 の値を 0，10，20 に設定しても同じであった．
次に上記の解探索の各ステップごとに，取った状
態 s における学習のエントロピーSent を計算し，行動決定の不確定さを調べた．
その結果を Fig.8 に示す．
各状態 s での学習のエントロピーSent(s)は次式により求めている．

S ent (s )   P(a|s ) log 10 P(a|s )a(8)

P(a|s)は(7)で与えられ，エントロピーの計算の際は
τ=0.5 と，τの値は低く設定した．
Fig.8 より高温では Sent(s)が高く，低温になるにつれ Sent(s)が低くなっていくことがわかる．Sent(s)が高いということは，状態 s において Q(s,a)の差があまりないことを表している．実際に 20 万回学習した後の Q テーブルの値を観察すると，高温時の各状態では，どの行動に対しても Q 値はほぼ同じであった．
評価実験では，各状態において Q(s,a)を max とするような行動 a を選択させるようにしたため，Fig.7 のようにω=0 となったが，実際は高温時のωの値は必
ず 0 にする必要はなく，行動選択にボルツマン選択を用いると，ωの値が高くなることも観測された．

が Ninf =206 であるのに対し，20 万回学習後では Ninf
=162 と，実行不可能解の出力回数をωを固定した場
合の SA よりも約 20%抑えることができた．
5.3 のωの挙動の仕方については，次のように考えている．まず探索序盤(1≦n≦13)では，ω=0 まで下げているが，Fig.8 より高温時はωの値はあまり重要ではない．これは高温の場合，ωの値によらず局所解から抜け出すことが容易なためと考えられる．
次に探索中盤(14≦n≦23)であるが，学習のエント
ロピーSent(s)がかなり低いことから，確実にωを 0にしようとする行動を選択していることがわかる．
これはω=0 として制約違反を気にせずに広く探索したほうが良いと学習したためと考えられる．ただし
ω=0 のままでは制約違反を考慮していないため，実行不可能解を出力してしまう可能性が高い．よって
ωの値をどこかで上げる必要があるが，そのタイミ
ングが n=24 であると考えられる．その後さらにωを 75 まで急上昇させているが，これについては，制約違反を完全になくすように学習したためであると考えられる．実際，実験中に得られた最適解もしく
は準最適解は step24～26 で求まっていることが多く，それ以降のステップでは，その解から実行不可
能解への遷移をしないようにωを大きくしたのではないかと思われる．

ω
80
70
60
50
40
30
20
10
0
1

3

5

7

9 11 13 15 17 19 21 23 25 27 29
step

Fig.7

Sent(s)Change of ω

1.4
1.2
1
0.8
0.6
0.4
0.2
0
1

3 5

7

9 11 13 15 17 19 21 23 25 27 29
step

Fig.8

Change of entropy

7.考察
Fig.6 からわかるように，SA の場合，ωが小さす
ぎると制約を重視せず，実行不可能解が多く出現してしまう．そのためなかなか実行可能解を見つけられず，出力解は悪くなる．一方，ωが大きすぎると実行不可能解の出力回数は減るが，局所解に陥りやすくなるため出力解は悪くなる傾向がある．今回は，Fig.6 よりωを固定した場合の SA の中で実行可能解の E の平均値が一番良いのはω=20 のときで， Efea=
336.8 であった．これと同程度の性能は，学習 12.5
万回以降で得ることが可能であった(Fig.5)．さらに実行不可能解の出力回数は，ωを固定した場合の SA

73

8.まとめ
本研究では SA で使用する目的関数中のパラメー
タωの調整法を学習し，ωを固定した場合の SA よりも実行不可能解の出力回数を約 20%減らすことができた．しかし学習後の解の精度が格段に良くなっているわけではない．そこで今後はさらに出力解の精度をあげることを目指したい．その一つの方針として，今回はωのみを学習し，温度は常に一定の割合で下げていったが，今後は温度変化の学習も行う
ことを考えたい．特に温度を上げることはレプリカ
交換モンテカルロ法でも行われている[4]．この手法を取り入れることを検討したい．
また，状態 s の定義についても温度 T と制約項の重み係数ωだけでは不十分である可能性がある．そのため，目的関数 E のゆらぎを状態量として考慮するなど再検討が必要であると考えている．
参考文献[1] 白 石 洋 一 ： 組 合 せ ア ル ゴ リ ズ ム の 最 新 手 法 ，
丸善株式会社，pp.43-161 (2002).
[2]柳浦睦憲，茨城俊秀：組合せ最適化－メタ戦略を中心として－，朝倉書店 (2004).
[3]三上貞芳，皆川雅章 訳，Richard S.Sutton 他著：
強化学習，森北出版，pp159-161(2000).
[4]伊庭幸人 他：計算統計Ⅱ，岩波書店，pp.74-78(2005).

社団法人 人工知能学会

人工知能学会研究会資料

Japanese Society for
Artificial Intelligence

JSAI Technical Report
SIG-Challenge-A701-14 (5/4)

方策勾配法を用いたサッカーエージェントの学習～フリーキック時の壁パス～
Learning of Soccer Player Agents Using Policy Gradient Methods~Wall Pass after Free Kicks~〇福岡 仁志
(芝浦工業大学工学部)
中村 浩二(芝浦工業大学工学部)
五十嵐 治一 (芝浦工業大学工学部)
石原 聖司(近畿大学工学部)* Hitoshi FUKUOKA(SIT), Koji NAKAMURA(SIT), Harukazu IGARASHI(SIT),
Seji ISHIHARA(Kinki Univ.)
Abstract— The RoboCup Simulation League is a test
bed for research of multi-agent learning. As an example,
we dealt with a learning problem between a kicker and a
receiver when a direct free kick is awarded just outside
the opponent’s penalty area. In such a situation, whereshould the kicker kick the ball? We previously proposed afunction that expresses heuristics that evaluate howadvantageous a target point is for sending/receiving apass safely and contributing to scoring. The evaluation
function makes it possible to handle a large space ofstates consisting of the following positions: kicker,
receiver, and a pair of opponents. A target point of a freekick is selected by the kicker using Boltzmann selection
with an evaluation function. Parameters in the function
can be learned by a kind of reinforcement learning called
the policy-gradient method. The point to which a receivershould run to receive the ball is simultaneously learned in
the same manner. In this paper, we raise the learning of
the passing action between kicker and receiver at freekicks to a more intelligent level. As one advanced tactic,
we adopted and realized the learning of a wall passbetween two players immediately after free kicks.
1. はじめに
近年，人工知能の分野ではマルチエージェント環
境下での協調行動，実時間処理，不完全知覚といった複雑な問題が研究されている[1]．これらの問題を含んだ研究材料としてロボットサッカーの競技会であるRoboCupが提唱されている[2]．これまでに著者
らは，ゴール前でのフリーキックの場面において
passerとreceiverによる協調行動の学習という研究を行ってきた[3][4]．これは，フリーキックという限られた場面ではあるが，状態数によらない方策表現を用いた強化学習法を採用することにより，精度の高い協調行動の実現を目指したものであった．しかし，この研究では２人のプレーヤー（passerとreceiver）が行動決定を同時刻に各々１回のみ(passerのパス先決
定，receiverの移動先決定)を行うというものに留まっていた．
そこで本研究では，フリーキックを行った後に，さらにパス行動を複数回行うという協調行動の拡張74を目指した．これにより，フリーキックからの壁パスの実現や，実際のゲームでのスムーズなパスワー
クの実現へと繋がることを期待している．
2. 学習方式
2.1 方策勾配法の適用
本研究では強化学習の一種である方策勾配法を用
いて学習を行う．方策勾配法とは，報酬の期待値が最大になるように方策パラメータを更新する学習法である．このときの最大化の手段として確率的勾配法を用いる．方策勾配法は数学的な基礎がはっきりしており，理論的に取り扱いやすい．また，方策として if-then 型のルールや，ポテンシャルなどの様々な関数が利用できるので，方策への知識表現が容易であるという長所がある．元々は，Williams により提案された手法[5]であるが，著者らも追跡問題やカーリングゲームに適用し，有効性を確認している[6][7]．
2.2 目的関数
本研究では，次章で述べるフリーキックの問題のために，以下のような行動決定方式を用いる[3][4]．
まず，一般的なパス行動を考える．フィールドを格子状の長方形セルの集合に区切る．セル k へパスを出す/移動するという行動 ak の価値を次のような目的関数で表す．

E (a k ; ω ) = −∑ ωi ⋅ U i (a k )(1)i

この関数は，パス先のセル k を決める上で有効と思われる状態の特徴量（ヒューリスティクス）Ui の線形和である．ただし，目的関数 E の値が小さい方が行動としての価値が高くなるように設計する．また，重み ωi は学習により決定する．
式(1)では敵プレーヤーの数や配置，味方プレーヤーの位置など，その場面に応じて各セルへのパスを出す行動の価値を計算しており，プレー中の環境の変化も考慮している．勿論，広大な状態空間の保存を必要としていない．
2.3 確率的な方策
この目的関数を用いて，プレーヤーは次のボルツ分すると，形式的には，

マン選択による確率的な方策を用いてパス先/移動
先のセル k を決定する．

e − E ( ak ; s ) T
π (a k ; s ) ≡∑ e − E ( x;s ) T∂E [ r ]∂θij(2)⎡ L −1⎤= E ⎢ r ∑ eθij ( t ) ⎥⎣ t =0⎦(6)となる．(5)の近似を用いて(6)の右辺の適正度を計算
すると，xボルツマン選択は温度パラメータ T を大きくする∂
eθij ( t ) ≡ln π ( a; s )(7)
ほどランダムに行動を選択するようになり，小さく∂θij
するほど最も大きい価値の行動を選択しやすくなる．
特に，T→０では決定論的な行動決定となる．なお，∂
s は全系の状態（i.e. 全プレーヤー，ボールの位置）≈
ln π i ai ; s, θij(8)i ∂θ ijを表している．
2.4 学習則
さらに，各エージェントの目的関数中のパラメー
一般に，マルチエージェント系全体の状態を s, 行
タは互いに独立であると仮定すると(7),(8)は，動を a とする．それぞれ，各エージェントの状態と∂Ei ⎤1 ⎡ ∂E
行動とを要素とするベクトルであることに注意する
eθ ij (t ) ≈ − ⎢ i −(9)⎥必要がある．行動 a に対する目的関数を E(a;s,θ)とし，∂θ ij ⎥⎦
T ⎢⎣ ∂θ ij
方策が式(2)のようなボルツマン選択である場合に，と表される．なお，<--->は(2)の分布による期待値操
そのまま方策勾配法を適用すると，パラメータ θ に作である．一方，パラメータ θij の学習則は(3)の導出
関する学習則は，と同様に，(6)を用いて確率的勾配法を適用すると，

∑

L −1

Δθ = ε ⋅ r ∑ eθ ( t )Δθij = ε ⋅ r ∑ eθij ( t )となる．ただし，(5)の近似により(10)の右辺の適正度は(9)で与えられる．(3)が系全体の目的関数 E(a;s)に含まれるパラメータに関する学習則であるのに対し，(10)はエージェント i が自己の行動 ai を選択するために使用する目的関数 Ei の中に含まれるパラメー
タの学習則であり，かつ，自己の目的関数 Ei だけを用いている点で，自律分散的な学習であると言える．
以上より，本稿における式(1)のパラメータ ωi の学
習則は(9)，(10)より，状態 s において実際に選択された行動 ak に対して，(4)

2.5 自律分散的な行動決定と学習
次に，行動決定と学習とを自律分散的に行うことを考える．そこで，系全体の方策を，エージェント iごとの方策関数 πi の積で近似する[6]．すなわち，

π (a; s,θ ) ≈ ∏ π i (ai ; s,{θ ij })

(10)

t =0

で表される[6].ε(>0)は学習係数，r はエピソード終了時に与えられる報酬，Ｌはエピソード長である．eθ(t)は，離散時刻 t における特徴的適正度(characteristic
eligibility)で，次の式で定義されている．

∂
ln π (a; s,θ )
∂θ

)

L −1

(3)

t =0

eθ (t ) ≡(Δω i = r ⋅ ε ⋅

(5)

1⎛
⎞
⎜U i (a k ) − ∑ U i (a ) ⋅ π (a; s )⎟
T⎝
a
⎠

(11)

となる．
3. 対象とする課題
3.1 フィールドの分割実験では図１に示すようにペナルティエリア付近
を一辺５m の正方形セルで４×８に分割したフィールドを用いる．さらに均等にゴールも３分割する．
これにより，「ゴールにパスをする」ことが「シュートをする」ことを実現している．
使用するエージェントと配置場所を以下に，その配置例を図１に示す．なお，SoccerServer ではフィールドの中心（センターマーク）を原点とし，タッチ
ラインに平行に X 軸，ゴールラインに平行に Y 軸をとる．プレーヤーは３種類で，味方プレーヤーが２人，敵チームのディフェンダー１人とゴールキーパ
ー１人である．また，便宜上味方プレーヤーは最初にパスを行うものをＡ，最初にレシーブを行うもの
をＢとする．

iと仮定する．ここで，ai はエージェント i の行動であり，θij は πi に含まれる j 番目のパラメータである．
さらに，各 πi は，各エージェントに定義される目的
関数 Ei (ai;s,{θij})を用いたボルツマン分布とする．したがって，式(2)中の右辺の目的関数 E は，厳密にはエージェントごとに定義された目的関数 Ei である．
なお，(5)の近似は，エージェント間の行動選択の相関を無視していることに相当している．また，他のプレーヤーの位置情報も分かっているという前提に立っているので，各 πi には系全体の状態 s が使用されている．したがって，各エージェントは味方や敵の行動選択とは無関係に行動を選択するが，彼らの存在（位置情報）までを無視しているわけではな
いので，このような近似を行っても協調行動を学習することはある程度までは可能と考えられる．
一方，報酬 r の期待値 E[r]をパラメータについて微75

A を配置する際に配置場所の X 座標はゴールライ
ンから 24m の位置で固定，Y 座標はランダムな位置とする．配置場所はオフサイドポジションにならな
いランダムな位置とする．
敵ディフェンダーはゴールを決めさせないためにパスカットやプレスを行う．配置場所はゴール３セ
ルを除くセルの中でランダムな位置とする．ゴール
キーパーはゴールエリア内のランダムな位置に配置
する．
Y

際Bは移動先の決定と移動を行わず，パスを受けたA
は必ずシュートを行うものとする(A4)．今回，これらの行動決定のうちでA1，A2，B2を学習の対象とした．
なお，１エピソードを70シミュレーションサイクル(7sec)とし，１エピソード終了前にゴールを決めるか
70シミュレーションサイクルが過ぎると，エピソー
ドはそこで終了とし，エピソード終了時に報酬を与える．報酬の与え方については4.4で述べる．

5m

A1
シュートorパス先決定

X
GK

A

5m

A3

A２
ポジショニングBDF

24m

フリーキック
パス先通知
B

A

移動

A４

シュート

パス先通知

レシーブ成功レシーブ成功

移動先通知
B1

移動

B2

シュートorパス先決定

時間

Fig.2 Actions of players A and B

Fig. 1 Arrangement of players

4.2 実験条件
プレーヤーの他に trainer というエージェントも使複数回の行動に対して学習をする前準備として，用 す る ． trainer は プ レ イ モ ー ド を kick_off か ら
A1 のみを学習する予備的な学習実験を行った．この
free_kick に変更したり，プレーヤーとボールを移動
結果を本実験において，A1 の重みの初期値として使したりすることができる．そして，フィールドを監用することで，学習時間の短縮ができる．予備実験
視し，パスは通ったのか，シュートは決まったのかの際のパラメータは T=10.0，ε=0.04 とし 2000 エピソ
ード学習する．
をプレーヤーに伝えることができる．
次に本実験を行う．ここで学習が期待されるのは3.2 本研究におけるエージェントの学習
A→B→A とパスが渡り A4 でシュートを行うまでの，本研究では２人のエージェントA,Bがフリーキッ
いわゆる壁パスが通った後にシュートを行う協調プ
クの後に複数回のパスを行うという協調行動を考えレーである．実験の際のパラメータは T=10.0，ε=0.04
る．複数回の行動決定を行うために，エージェントとし，2000 エピソード学習する．なお，予備実験，ごとに，かつ，行動決定ごとにそれぞれ目的関数(1)本実験共に対戦相手として Trilearn Base を使用したを用意する．エージェントの行動決定としては，パ[8]．Trilearn Base とは 2003 年に優勝したアムステル
ス先の決定と移動先の決定(ポジショニング)の２つ
ダム大学チーム UvA Trilearn 2003 から高度な行動決を考える．
定や戦略を除いてソースコード形式で配布されていまた，複数回の行動決定を含むあるエピソードをるチームである．よって，UvA Trilearn 2003 よりは定義し，エピソード終了時にプレーに対して報酬を与える．そして(1)のωiを(11)の学習則により学習する． 弱くなっているが最低限の行動は保証されている．
4.3 ヒューリスティクスの設計
4. 実験
実験では， パス行動 A1，B2 においてゴール前で
4.1 処理の流れのフリーキックに有効と思われる
1)～4)の４つのヒエピソード中の処理の流れを図２に示す．なお，行ューリスティクス U1~U4 と，ポジショニング A2 にお動決定の機会をA1~A4，B1~B2で表す．まず，passer
いて有効と思われる
5)～10)の６つのヒューリスティ
であるプレーヤーAはフリーキック前にパス先を決クスU~Uを用いた．なお，どの関数
Ui も攻撃側に510定する(A1)．フリーキック後，Aは移動先を決定(A2：
とって値が大きいほど価値があるとする．
ポジショニング)してそこへ移動し，決定した２つのまず，パス先の決定において使用するヒューリス
行動内容（A1とA2）をBへ通知する．receiverである
ティクス U1~U4 を以下に示す．
Bはその情報に基づいて移動して(B1)ボールを受け
1) パスコースにおける敵の有無：取った後はpasserとなり，逆にAはreceiverへと役割を⎧10.0 敵がいない場合変更する．次に，新たにpasser となったBはパス先を(12)
U1 = ⎨
敵がいる場合決定して(B2)パスを行い，A に行動内容を通知する．
⎩2.0
Aはその情報を基に移動しボールを受け取るが，その実際にパスをするにあたって，パスコースに敵が76

いない方がパスは通りやすい．図３a のようにパスコ
ースに敵がいないセル（α の範囲内のセル）がパス先であれば 10，敵周辺と敵の後方のセル（β の範囲内のセル）がパス先であれば 2 を返す．
2) パス先とゴールとの距離：

U 2 = (− ( X G + YG ) + 37.5) / 3.5

ぞれ「移動先」と味方との距離ベクトルのX成分，Y成分であり，3)と考え方が似ているが，距離が遠い方がよいとする点，パス先ではなく「移動先」と味方との距離としている点が異なる．式(18)は正規化
してあり，取りうる範囲は0.0～10.0である．
8)移動先と最近接の敵との距離：(13)

パス先とゴールとの距離が近い方が，パスを受け取った時にゴールに結びつきやすい．式(13)の XG とYG は図３b のようにそれぞれパス先とゴールとの距
離ベクトルの X 成分，Y 成分である．なお，式(13)は正規化してあり，取りうる範囲は 0.5～10.0 である．
3) パス先と味方との距離：

U 3 = (− ( X r + Yr ) + 50.0) 5.0(14)

パス先と味方(receiver)との距離が近いほど，パスは通りやすい．式(14)の Xr と Yr は図３c のようにそれぞれパス先と味方との距離ベクトルの X 成分，Y成分である．なお，式(14)は正規化してあり，取りう
る範囲は 0.0～10.0 である．
4) パス先と最近接の敵との距離：

U 4 = ( X O + YO ) 5.0(15)

パス先と敵との距離が遠いほど，そのパス先にはスペースがあるということである．つまり，フリー
でシュートを打ちやすくなる．式(15)の XO と YO は
図３d のようにそれぞれパス先と最近接の敵との距
離ベクトルの X 成分，Y 成分である．なお，式(15)は正規化してあり，取りうる範囲は 0.0～10.0 である．
次に，移動先の決定（ポジショニング）において使用するヒューリスティクス U5~U10 を以下に示す．
5)移動先とパス先との距離：

U 5 = ( X n + Yn ) 5.0(19)「移動先」と敵との距離が遠い方がパスをうけるのに望ましい．式(19)は4)の(15)と同じ式で目的も同様だが，「移動先」とパス先の間の距離である点が異なる．式(19)は正規化してあり，取りうる範囲
は0.0～10.0である．
9)移動先と現在位置との距離：(20)
U 9 = (− ( X m + Ym ) + 5.0 ) / 5.95
移動先と現在位置との距離が遠いと，移動が完了する前に味方がパスを出してしまい，パス先にたどり着けない可能性が高くなってしまう．式(20)のXｍとYｍは図３fのように移動先と現在位置との距離ベ
クトルのX成分，Y成分である．なお，式(20)は正規化してあり，取りうる範囲は0.0～10.0である．
10)移動先とパス先の間の敵の有無：⎧10.0
U 10 = ⎨⎩2.0

敵がいない場合(21)

敵がいる場合パスが通った先からパスが行われると考えられる
ので，パス先と移動先の間に敵がいない方がパスは通りやすい，1)と同様に選択したセルがα内のセルであれば10，β内のセルであれば２を返す．
Xr

α

Yr

(16)

β
ＸG

移動先とパス先が近いと，連続パスなどのプレーを効果的に行いにくくなるため，遠い方がよい．式(16)のXｎとYｎは図３eに示すように，移動先とパス先との距離ベクトルのX成分，Y成分である．なお，
式(16)は正規化してあり，取りうる範囲は0.0～10.0
である．
6)移動先とゴールとの距離：

U 6 = (− ( X G + YG ) + 37.5) / 3.5

U 8 = ( X O + YO ) 5.0

YGβ(a)U1,U10(b)U2,U6

Xo
Yn

(17)

2)の(13)と同じ式で目的も同様だが，「移動先」とゴールの間の距離である点が異なる．なお，式(17)は正規化してあり，取りうる範囲は0.5～10.0である．
7)移動先と味方との距離：(18)
U 7 = ( X r + Yr ) 5.0
移動先と味方との距離が近いと，ボールを交換するだけの短いパスといった無駄なパスに繋がりやすくなるため遠い方がよい．式(18)のXr とYrは，それ77(c)U3,U7

Yo(d)U4,U8

Xn

Ym
Xm

(e)U5
(f)U9
Fig.3 Heuristics{Ui}(i=1~10)

4.4 報酬
4.2 の学習では，行動決定 A1，A2，B2 ごとに目的関数を用意する．プレーヤーA は A1，A2 の，プレーヤーB は B2 の目的関数を各行動決定に用いる．したがって，重み係数も別々に{ωA1}，{ωA2}，{ωB2}と用意する．また，それぞれの重み係数の学習に対し，学習則(11)において与える報酬をそれぞれ rA1，rB2，
rA2 とし,１エピソード終了時に図４のように設定した．それぞれの重みに与えられる報酬のパターンとしては 6 種類あるが，行動決定の段階(本稿の図 2 における A1~B2，B2~A4，A4 以降の３段階)と結果に応じていずれか１種類の報酬が与えられる．
rB2

rA2

rA1

rB2

rA2

B2でのパス失敗

0.5

-20

-20

B2でシュート成功

80

80

rA1

rB2

rA2

A4でのシュート失敗

2

2

2

A4でシュート成功

100

100

100

rA1
A1でのパス失敗-20

直接シュート成功

60

{ωA2}
ω5

ω6

ω7

ω8

ω9

ω10

ω8

25

ω9

20
15

ω10

10
5
0
0

200

400

600

800

1000 1200 1400 1600 1800
エピソード(b)Action A2

A1のパス成功{ωB2 }
ω1

ω2

ω3

ω4

25

B2のパス成功

20

ω3

15

ω4

10

Fig.4 Rewards rA1,rB2,and rA2

ω1

5
0

4.5 学習実験
4.2 の条件で学習実験を行った．実験中の重みの変化を図５に，学習実験中の A1，A2，B2 の報酬の期0

図５a より，行動決定 A１でパス先を決定する際に，味方の近くのセルを重要視する U3 の重み ω3 と敵から遠いセルを重要視する U4 の重み ω4 の割合が大きい．したがって，最初に A が行うパス(A1)では味方の近くで敵から遠い場所，つまり B が安全にパスを受けることのできる場所へ蹴ることを学習している．
同様にして，図５b より，行動決定 A2 で移動先を決定（ポジショニング）を行う先を決定する際に，敵から遠いセルで(U8)，現在位置から近く(U9)，かつ，
A1 で決定したパス先の地点からパスコースのあいているセル(U10)を選択することが分かる．つまりパスカットの行われにくい近くの場所へと移動することを学習している．
図５c からは，行動決定 B2 では ω3 と ω4 が大きくなっており，それぞれ味方の近くのセルと敵から遠いセルを重要視していることが分かる．したがって，
B は A が安全にパスを受けることのできる場所へパスすることを学習している．

800

1000 1200 1400 1600 1800
エピソード

rA1

2
1
0
0

-1

200

ω4

400

600

800

1000

1200 1400

-2
-4
-5
-6

(a)Action A1

rA 2

0.5
0
-0.5

0

200

400

600

800

1000

1200

1400

1600

1800
エピソード

-1
-1.5
-2
-2.5
-3
-3.5
-4

(b)Action A2

-0.5

ω3

1800

-3

rB 2
0

200

400

600

800

1000

1200

1400

1600

1800
エピソード

-1

35
30
25
20
15
10
5
0

1600

エピソード

0

ω3

600

3

0.5

{ωA1}
ω2

400

(c)Action B2
Fig.5 Change of weights {ωA1},{ωA2},and {ωB2}

待値 rA1 ， rA 2 ， rB 2 を図６に示す．

ω1

200

-1.5
-2
-2.5

ω4

-3
-3.5
-4

0

200

400

600

800

1000 1200 1400 1600 1800
エピソード(c)Action B2(a)Action A1

Fig.6 Expected value of rewards rA1 , rA 2 ,and rB 2

78

4.6 評価実験
学習実験途中に得られた 100 回ごとの重み{ωA1}，{ωA2}，{ωB2}を使用し，各々500 エピソードだけプレーを行わせた．実験を行う際の温度パラメータ T は0.1 と低く設定した．評価実験で得た A1，B2 におけるパス成功率，A1，B2，A4 のシュート成功率を図７に，A1，B2，A4 におけるシュート試行回数を図８に示す．
図７と図８を見ると，学習回数が 1400 回以降では，
A4 でシュートを行う回数が増えているにもかかわらず，試行回数あたりの得点率が減少傾向にある．
これは，壁パスが成功しても，シュートを行う場所
が悪く，GK や DF にカットされてしまうためと考えられる．そこで図９に 2000 エピソード学習した後のB2 におけるパス先の割合を示した．なお，図９のセルの位置関係は図１のセルと対応している．
図９を見ると，B2 でパスを出す際，ゴールに向かって右 45°と左 45°の最後方のセルにパスを出す割合が非常に高いことが分かる．これでは壁パスが通ってもバックパスに近い安全パスといったものになり，その場でシュート(A4)を行っても，シュートが決まらない確率は当然高くなると考えられる．
A1のパス成功率
B2でのシュート成功率

B2のパス成功率
A4でのシュート成功率

90%
80%
70%
60%
50%
40%
30%
20%
10%
0%
0

200

400

600

800

1000 1200 1400

1600 1800 2000
エピソード

Fig.7 Pass/Goal Success rate
回

A1

B2

A4

300
250
200
150
100
50
0
0

200

400

600

800

1000 1200 1400 1600 1800 2000
エピソード

Fig.8 Number of shots
Y

0.0%

X

0.0%

0.0%

2.7%

2.7%

0.7%

0.0%

0.0%

0.5%

2.5%

1.7%

2.5%

0.2%

1.0%

0.0%

0.0%

0.5%

0.5%

2.0%

2.7%

0.0%

0.0%

0.5%

0.2%

1.0%

0.2%

2.7%

27.2%

0.2%

2.2%

3.5%

3.0%

2.7%

0.7%

35.2%

Fig.9 Target of action B2

79

5. まとめ本研究では，複数パス交換へと協調行動を拡張することを目的とし，壁パスの実現には関して学習の有効性を確認することができた．しかし，安全なパスを目指すあまりに得点率の向上は達成できなかった．得点率の向上をさせるためには，報酬の設計を再検討する必要がある．例えば，バックパスを行う
場合は，パス成功に対する報酬を減少させ，安全パスを行うよりは途中(本稿でのA1，B2)でシュートを行わせることが考えられる．しかし，バックパスのことを考慮する際，必ずしもバックパスを行うことが悪いとは限らないため，報酬の設計は慎重にしなければならないであろう．また，得点するための個
人技術の向上も必要である．
また，著者らはフリーキックに限らず，本研究で示した方策勾配法による学習方式をフルゲームのボールキープの関数に適用し，MF と DF のボールキー
プ力を高める学習実験を行い，学習の有効性を確認している．今後もフルゲームの各種の協調プレーへと適用し，それらを結合することを考えていきたい．
参考文献[1] 高玉圭樹：マルチエージェント学習－相互作用の謎に迫る－，コロナ社(2003)[2] RoboCup Official Site 〈http://www.robocup.org/〉[3] 中村浩二，五十嵐治一，石原聖司：“方策勾配法を用いたサッカーエージェントの学習～フリーキックにおけるキッカーとレシーバ～”，第23 回
SIGchallenge研究会予稿集,pp.7-12(2006)[4] 中村浩二，五十嵐治一，石原聖司：“方策勾配法を用いたサッカーエージェントの学習～フリーキ
ック時のキッカーとレシーバの相互作用～”，数
理モデル化と問題解決シンポジウム論文集(情報処理学会シンポジウムシリーズ，Vol.2006，No.10，
ISSN 1344-0640),pp.119-126（2006.10.24-25，名古屋）[5] Williams, R.J.：Simple Statistical Gradient- Following
Algorithms for Connectionist Reinforcement Learning,
Machine Learning, Vol.8, pp.229-256 (1992)[6] 石原聖司，五十嵐治一：マルチエージェント系における行動学習への方策こう配法の適用－追跡問
題－，電子情報通信学会論文誌 D-I，Vol.J87-D-I，
No.3，pp.390-397(2004)[7] 五十嵐治一，石原聖司，野原 勉：方策勾配法を用いた運動方程式中のパラメータ学習~２ストー
ン系のカーリングゲーム~，ロボティクス・メカト
ロニクス講演会’05(ROBOMEC’05)講演論文集，
1A1-N-028(pp.1-4)(2005.6.10-11, 神戸，主催：日本機械学会ロボティクス・メカトロニクス部門)[8] The Universiteit van Amsterdam〈http://staff.science.uva.nl/~jellekok/robocup/〉

社団法人 人工知能学会

人工知能学会研究会資料

Japanese Society for
Artificial Intelligence

JSAI Technical Report
SIG-Challenge-A701-15 (5/4)

背景色を利用したマーカ色抽出と全方位移動型ロボットの制御～RoboCup 小型リーグ～
Marker Color Extraction Using Background Colorand Control of an Omnidirectional Robot～RoboCup Small-Size League～〇長谷川 卓也
脇本 耕平
五十嵐 治一田中 一基（芝浦工業大学工学部）（芝浦工業大学工学部）（芝浦工業大学工学部）（近畿大学工学部）*Takuya HASEGAWA(SIT), Kohei WAKIMOTO(SIT), Harukazu IGARASHI(SIT),
Kazumoto TANAKA(Kinki Univ.)
象として研究を行ってきた[2]．第 1 のテーマは，マーカ認識におけるロバストな色抽出であり，第 2 のテーマは，本ロボットシステムでも使用している全方位移動型ロボットの正確な走行制御である．第１のテーマについては，背景色（＝床面の緑色）の HLS
値をキーとする閾値データベースを用いる方式をこれまで提案してきた．第 2 のテーマについては，ロボットの走行特性を強化学習の代表的な手法である
Q 学習を用いて学習する方法を提案し，直進走行という簡単な事例について適用してきた．本研究では、第 1 の色抽出については従来方式に対して閾値デー
タベースの検索キーとマーカ判定方式に改良を加えた．第 2 の走行制御に関してはロボットの姿勢制御のために適切なコマンドパラメータを探索することを試みた．

Abstract—In this paper, we describe two improvementsof our robot system made for competing in the RoboCup
Small-Size League. First, we propose a color-recognition
method that can be applied under the non-uniform
lighting conditions observed in actual games. Our
proposal’s basic idea uses the value of green lightness asa key for searching a database to find proper thresholds inthe HLS color space, because the carpet surrounding therobot is green. Second, we propose a method forcontrolling omnidirectional moving robots based on abinary search for an appropriate value of argument ω inmoving command MOVE. The command MOVE has
three arguments incleding argument ω, which specifies
the robot’s rotational velocity. Our experiments
demonstrated the effectiveness of employing these two
methods.

1. はじめにマルチエージェントシステムにおける制御や学習
2. ロボットシステムの全体構成と，自律移動型ロボットシステムの評価を行う試み
本システムではベースとして，近畿大学で開発さの一つとして，ロボットサッカー競技会 RoboCup がれたロボットシステム KU-Boxes++[3]を用いている．
1997 年から開催されている[1]．競技部門はいくつか
システム構成を Fig.1 に示す．に分かれているが，小型リーグ部門はグローバルビ
ジョンカメラの使用が許されているのが特徴であり，かつ，実機を使用する部門の中では情報処理とロボット移動とにおいてスピードを最も必要とされている．初期の頃は，スピードを重視する余り，制御に正確性を欠き，衝突や暴走する場面がしばしば見られたが，最近では画像処理や制御の精度が上がり，サッカー競技らしい試合が多く見受けられるようになった．これに伴い，研究の重点も，自然環境に近い照明条件下におけるロバストなマーカ認識（＝ロFig.1 System overview of KU-Boxes++
ボットの位置と姿勢の認識），協調行動や戦略レベ
ルでの制御・学習へとより高度なものに徐々に移行
このシステムは，実際にフィールド上で試合を行しているようである．
う移動ロボット（on- board システム）と，それを制
我々は，このような小型リーグのロボットシステ
御するシステム（off-board システム）とに分かれてムを構築する際に生じた，以下の 2 つのテーマを対いる．後者の off-board システムは，画像処理サーバ，

80通信中継サーバ，リモートブレインから構成されている．小型リーグの規約では，フィールド上方に設置したビデオカメラによるグローバルビジョンの使用が許されており，ロボット上面に貼り付けたマー
カを認識することにより，5 台のロボットの識別と位置・姿勢情報を取得することが可能である．

回は明るさの変動には最も敏感である輝度 L の値のみを検索キーとして用いることにより精度向上と計算量の削減を図った．

3. 背景色を利用した色抽出方式
Fig.2 に 2005 年に開催された世界大会の小型リーグで用いられた競技用フィールド上での照明の状態の一例を示す．このようにフィールド上の明るさは一様ではなく，はっきりとした影の領域も存在する．
したがって，マーカ認識においては，実環境での明るさの変動の影響を受けて，色を正しく認識できな
いことがある．また，通常，各マーカの認識に使われる閾値の設定が競技前にしか行われないために，
競技中での明るさの時間的変動に対応できないといった問題点もある．すなわち，空間的・時間的に照明が変動する環境下でも正しくマーカの色を抽出することが必要になってくる．本研究では前者の空間的に照明が変動する環境下でのマーカ色の抽出に焦点を絞ることにする．

Fig.3 Example of placing markers(lux)
Fig.4 Illuminance of the robot field used for our color
extraction experiment

4. マーカ認識

4.3 マーカ判定方式
これまでは，色抽出の後二値化により２×２ドッ
ト以上のラベル領域をマーカとして認識していた[2]．
しかし，白色を検出対象に加えると複数色を持つ画素が出現しやすいため正常な認識ができない事があった．また画像のにじみによってマーカの輪郭から別の色を認識する場合もあった．
そこで，本方式では複数色として抽出された画素を含むラベル領域に対しても，そのラベル領域の重心付近の画素を調べて最も抽出頻度の高い色を判定結果とする方式を考案した．
4.4 色抽出実験
Fig.4 のフィールドを 36 分割し，各領域内に各色
１つずつマーカを設置し，以下の 4 方式(1)～(4)で1000 回の色抽出を行った．その結果を Table1～4 に示す．

4.1 全体の流れ
本ロボットシステムにおけるマーカ配置例を Fig.3に示す．このマーカの認識処理は，①色抽出，②マーカ判定③，ID・姿勢検出からなる．①ではチーム
カラーの青・黄，ボール色の橙に加えてさらにサブ
マーカの色である白の計 4 色の色抽出を対象とする．
①，②についてそれぞれ 4.2 と 4.3 で簡単に説明する．
4.2 色抽出
9 分割したフィールド(1.8m×2.1m)の領域毎に抽出すべき色と緑(床面)の計 5 色の閾値データベースを作成する．これまで色抽出時には緑の HLS 値をデータベースの検索キーとして使用していた[2]が，今(1)従来方式[2]：閾値データベースの検索キーとして背景色である緑の HLS 値すべてを用い，かつ 2×2
ドット以上のラベル領域を単にマーカと判定する
方式．
(2)本方式 1：従来方式から閾値データベースの検索
キーを L 値のみとしたもの（4.2 で説明）．
(3)本方式 2：従来方式からラベル領域の重心付近の画素を用いてマーカの判定を行うようにしたもの（4.3 で説明）．
(4)本方式 1+2：従来方式から検索キー，マーカ判定
方式の両方を改良したもの．

Fig.2 Robot field used in RoboCup 2005
そこで，フィールド内の異なる複数の場所で HLS
表色系（H：色相，L：明度，S：彩度）における閾値を設定し，データベースとして保存しておく．これを閾値テーブルと称する．さらに，マーカの背景
色（ここでは床面の緑色）の HLS 値の平均値を保存しておき，色抽出時には閾値テーブルからの検索時にキーとして利用する[2]．

81Table1～4 に示すとおり，黄の抽出は従来方式にお依存し，フィードフォワード的な制御だけでは正確
いて白との誤認識が多かった．しかし，Table2～4 かな走行制御は難しいとされている．
ら，本方式のどちらも有効であり，約 21%あった白
したがって，実際の走行時にはグローバルビジョとの誤認識を最終的には約 1%まで抑えることがでンからの視覚情報を利用したフィードバック制御にきた．白の抽出については本方式 2 が有効であり，よる走行方向の補正処理を欠かすことができない．
認識率が約 5 ポイント上昇し，青については本方式 1
我々は，このグローバルビジョンによる補正処理のが有効であり，認識率が約 4 ポイント上昇した．橙
負担を軽減するために，その走行環境におけるオムについては，従来方式でも本方式でも誤認識は殆ど
ニ Robo-E の走行特性を学習し，学習結果をより正確発生しておらず，2 つの改良による悪影響は無かった． な走行制御に利用することができないかと考えた．
5.1 MOVE コマンドによる走行例
Table1 Recognition rate by method in the past
制御にはロボス社から提供された MOVE コマンドを 使 用 す る ． MOVE コ マ ン ド は 進 行 方 向 φ (0 ～抽出 重複 誤認識(%) 正認識360[degree])，速度ｖ(0～1800 [mm/s])，回転速度ω
失敗 認識 青黄橙白(-128～127 [degree/s])の 3 つの引数を指定する．φは
青 95.25 3.03 1.71
0.00 0.00 0.00
黄 79.38 0.02 0.03 0.00
0.00 20.58
ロボットの正面方向を基準とし，ωとともに反時計
橙 99.60 0.38 0.01 0.00 0.01
0.00
回りに大きくなっていく．
白 94.40 0.00 0.00 0.00 5.60 0.00

正面方向

速度ｖ
Table2 Recognition rate by Present method 1

進行方向φ

抽出 重複 誤認識
失敗 認識 青黄橙白99.33 0.41 0.26
0.00 0.00 0.00
92.99 0.00 0.02 0.00
0.00 6.99
100.00 0.00 0.00 0.00 0.00
0.00
94.57 0.00 0.00 0.00 5.43 0.00(%) 正認識
青
黄
橙
白

回転速度ω
Table3 Recognition rate by Present method 2
Fig.5 Parameters of command MOVE

抽出 重複 誤認識
失敗 認識 青黄橙白95.25 3.03 1.71
0.00 0.00 0.00
95.93 0.00 0.04 0.00
0.00 4.02
99.11 0.04 0.76 0.00 0.09
0.01
99.14 0.00 0.00 0.00 0.86 0.00(%) 正認識青黄橙白

これまで著者らは 3 つの引数のうち，φの値のみを Q 学習により学習することで，指定した目的地への直進性を改善することができた[2]．しかし，このときの回転速度ωは 0 で固定としていたにも関わらず，実際の動作では回転が生じていた．そこで本研
究では回転速度ωに対する補正値を自動的に推定し，その推定値を用いることにより姿勢制御することを試みた．
まず，Fig.6 にロボットの動作の実測値を示す．ただし，ｖ=500，ω=0 と固定し，φを 0～330°まで
30°ごとに指定した場合の走行結果の軌道が示されている．なお，ロボットの走行時間は 2 秒間で，500ms
ごとの位置が示されている．この走行実験においてはω=0 と固定しているため，理想的には指定したφの方向に姿勢を保持したまま平行移動するはずである．しかし，実際には図のように，φ=0，φ=180 といった前後の動作の場合はその方向へほぼ直進しているが，それ以外のφの値を指定した場合にはずれが生じ，軌道が変形していることがわかる．また，姿勢も保持されていない．

Table4 Recognition rate by Present method 1+2
抽出 重複 誤認識
失敗 認識 青黄橙白99.33 0.41 0.26
0.00 0.00 0.00
98.95 0.00 0.00 0.00
0.00 1.05
100.00 0.00 0.00 0.00 0.00
0.00
99.60 0.00 0.00 0.00 0.40 0.00(%) 正認識青黄橙白

5. 走行制御
本ロボットシステムでは移動型ロボットとして，ロボス社製のオムニ Robo-E を使用している．オムニ
Robo-E はオムニホイールと呼ばれる特殊な車輪を 4個用いることにより，姿勢を保持したまま全方位移動が可能である．しかし，オムニホイールは多数の小さな車輪を周辺に取り付けた車輪であり，すべりや引っかかりなどのため床面の材質等に走行特性が82

また，Fig.6，Fig.7 における動作の最終時刻（移動開始から 2 秒後）における平行移動時の姿勢のずれ
を Fig.8 に示す．Fig.8 では，横軸は MOVE コマンドで指定したφの値，縦軸は初期姿勢からのずれである．ω=0 と固定した場合，-100°～+80°の大きな姿
勢のずれが生じているが，補正値ω'を用いたことにより，-5°～5°に抑えることが出来た．

（φ，ω）
Fig.6 Robot traces by command MOVE where ω=0
5.2 回転速度ωの補正
MOVE コマンドの引数(ｖ,φ,ω)を指定した場合，ロボットは常に正面方向から一定方向φに進もうとする．これに加えて自転が発生すると，合成された
結果は円運動となる．Fig.6 にはこのような現象が見られる．しかし，逆に走行中の自転を打ち消すようなωの値を指定すればロボットは直進するのではな
いかと考えた． そこで，1 つの MOVE コマンドを送ってから 2 秒間姿勢を保持し，回転が生じないようにωの値を補正する．φの値を 0～330°まで 30°ず
つ変化させていき，それぞれのφに対して目標の姿
勢（ここでは初期姿勢）となるようなωの値を 2 分
探索法により求めた．求めたωの補正値ω'を MOVE
コマンドに指定し，実際に 2 秒間走行させた結果を示したのが Fig.7 である．Fig.7 を見ると補正値ω'を用いたことにより，ロボットがほぼ直進するようになったことがわかる．

（φ，ω'）
Fig.7 Robot traces using the corrected values ω's

83

100
姿勢のずれ
80
(degree)
60
40
20
φ
0
-20 0 30 60 90 120 150 180 210 240 270 300 330
-40
-60
-80
ω=0
-100
ω = ω'(補正値)-120

Fig.8 Comparison of gap of posture at translation

6. 今後の課題と展開
試合中など時間的に照明が変動する環境下での安定した色抽出と ID・姿勢検出についてのアルゴリズ
ムについては検討中である．
今後は，色抽出のための閾値設定の自動化や，ロボットの走行コマンドの引数値の自動調整，移動障
害物の存在する環境下での経路計画，さらには音声認識と自然言語処理を用いたコーチシステムの構築
を目指す．
参考文献
[1]RoboCup Official Site <http://www.robocup.org/>[2] 五十嵐治一，梁島昇弘，吉田翔，村木俊幸，岩男
卓哉，“背景色を利用したマーカー色抽出と Q 学習による全方位移動型ロボットの制御～RoboCup 小型リーグ～”，ROBOMEC2006,2P1-B05(2006.5.26-28,
東京)．
[3]三好威士他，“RoboCup 小型リーグ向けロボット
システムの構築”平成 15 年度近畿大学工学部卒業論
文．
[4]五十嵐治一：“強化学習を用いた自立移動型ロボ
ットの行動計画方の提案”電子情報通信学会論文誌
D-I, Vol.J84-D-I, No.3, pp.294-3-2(2001)．

c 2007°

Special Interest Group on AI Challenges
Japanese Society for Artificial Intelligence
社団法人 人工知能学会 AI チャレンジ研究会〒 162 東京都新宿区津久戸町 4-7 OS ビル 402 号室 03-5261-3401 Fax: 03-5261-3402(本研究会についてのお問い合わせは下記にお願いします.)AI チャレンジ研究会
主査
奥乃 博
京都大学大学院 情報学研究科
知能情報学専攻 音声メディア分野〒 606-8501 京都市左京区吉田本町
Tel: 075-753-5376
Fax: 075-753-5977
okuno@i.kyoto-u.ac.jp
担当幹事
浅田 稔
大阪大学大学院 工学研究科
知能・機能創成工学専攻 先導的融合工学講座〒 565-0871 大阪府吹田市山田丘 2-1
Tel: 06-6879-7349
Fax: 06-6879-7348 /JST ERATO 浅田共創知能システムプロジェクト
asada@ams.eng.osaka-u.ac.jp
担当幹事
光永 法明
(株) 国際電気通信基礎技術研究所
知能ロボティクス研究所〒 619-0288 京都府相楽郡精華町光台 2-2-2
Tel: 0774-95-1401
Fax: 0774-95-1408
mitunaga@atr.jp
幹事中臺 一博(株) ホンダ・リサーチ・インスティチュート・ジャパン〒 351-0114 埼玉県和光市本町 8-1
Tel: 048-462-5219
Fax: 048-462-5221 /東京工業大学大学院 情報理工学研究科
nakadai@jp.honda-ri.com

Executive Committee
Chair
Hiroshi G. Okuno
Dept. of Intelligence Sci. and Tech.,
Graduate School of Informatics,
Kyoto University
Yoshida-honmachi Sakyo-ku,
Kyoto, 606-8501, JAPAN
Secretary in Charge
Minoru Asada
Dept. of Adaptive Machine Systems,
Graduate School of Engineering,Osaka University
2-1 Yamada-oka, Suita,
Osaka 565-0871, JAPAN /JST ERATO Asada Synergistic
Intelligence Project
Secretary in Charge
Noriaki Mitsunaga
Dept. of Intelligent Robotics andCommunication Laboratories,
Advanced Telecommunications
Research Institute International
2-2-2 Hikaridai, Seika-cho, Souraku,
Kyoto 619-0288, JAPAN
Secretary
Kazuhiro Nakadai
Honda Research Institute Japan
8-1 Honcho, Wako,
Saitama, 351-0114, JAPAN /Dept. of Math. and Comp. Sci.,
Graduate School of Engineering,Tokyo Institute of Technology

SIG-AI-Challenges web page; http://winnie.kuis.kyoto-u.ac.jp/SIG-Challenge/