document01_B.pdf

公立はこだて未来大学 2011 年度 システム情報科学実習
グループ報告書
Future University Hakodate 2011 System Information Science Practice
Group Report
プロジェクト名
進化ゲームの数理とシミュレーション
Project Name
A mathematical principle of evolutionary game and its simulation
グループ名
システム班
Group Name
System group
プロジェクト番号/Project No.
1-B
プロジェクトリーダ/Project Leader
1009148
金村康佑
Kosuke Kanamura
グループリーダ/Group Leader
1009190
日下善博
Yoshihiro Kusaka
グループメンバ/Group Member
1009114
高野祐磨
Yuma Takano
1009115
傳法一輝
Kazuki Denpo
1009153
島野晃輔
Kosuke Shimano
1009190
日下善博
Yoshihiro Kusaka
指導教員
川越敏司
川口聡
Advisor
Toshiji Kawagoe Satoshi Kawaguchi
提出日
2012 年 1 月 18 日
Date of Submission
January 18, 2012
概要
本プロジェクトは、進化ゲームの数理を理解し、数値的シミュレーションの基礎となるモデル
を開発する。そのモデルをベースにシミュレーションを行い、進化ゲームのダイナミクスの挙
動を多角的に捉える。視覚化するツールを開発し、その結果の表示を試みる。ここで扱う進化
ゲームとは、戦略分布や戦略プロファイルで表現される社会状態の変化を分析する動学的な体
系のことである。出生や死滅で起こる集団中の戦略分布の変化をレプリケータ方程式を用いて
解く。捕食者と被食者の増減関係をモデル化し、増減速度を表現したものをロトカ・ヴォルテ
ラの方程式という。このことを非線形微分方程式を用いて解く。前期では、進化ゲームの数理
を理解するために、理論班、システム班ともに進化ゲームの基礎となる部分であるレプリケー
タ方程式とロトカ・ヴォルテラ方程式の参考書のセミナーを行った。参考書に記載されている
図を計算してプログラミングで表示した。後期は、前期に学んだ内容を応用し、言語の進化と
いうテーマを考えた。理論班が求めた数式からシステム班はプログラムを組み、グラフやセル
オートマトンの作成をした。
キーワード
進化ゲーム, ロトカ=ボルテラ方程式, レプリケータ方程式, ダイナミクスの挙
動, 言語の進化
(※文責: 島野晃輔)
-i-
Abstract
Abstract in English. In this Project Learning, we try to understand the mathematical
principle of evolutionary games and develop the basic model of numerical simulation.
We try to perform simulation by using this model. Then we grasp dynamics of evolutionary game by multilateral. Also we develop the tool that can visualize these result.
The evolutionary game we use in this project is the behaviorstic system. This system
analysis changes of social status which is explained strategic destributon and strategic
profile. We try to solve the changes of strategic distribution occurred by birth or death
by using Replicator equation. Also, we solve the Lotka-Volterra equation by Nonlinear Differential Equations. Lotka-Volterra equation is the model of fluctuate relation of
Prey and Predator, and its speed of fluctuate. In first term, to understand mathematical
principle of evolutionary game, we exocute many seminars by using text of Replicator
equation and Lotka-Volterra equation which are basic of evolutionary game. Alsom we
dres some graphs by Programming. In second term, we think theme ”Evolution of Linguistics” by putting knowledge to practical use. Theory group solves the mathematical
model, then System group creates graph and sell- automaton.
Keyword
Evolutionary game, Lotka-Volterra equation, Replicator equation, behavior of Dynamics, Evolutionary of Linguistics
(※文責: 傳法一輝)
- ii -
目次
第1章
概要
1
1.1
該当分野の現状と従来例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1.2
現状における問題点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1.3
課題の概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
到達目標
2
第2章
2.1
本プロジェクトにおける目的
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
2.2
通常の授業ではなく、プロジェクト学習で行う利点 . . . . . . . . . . . . . . . . .
2
2.3
具体的な手順・課題設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
2.4
課題の割り当て . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
課題解決のプロセスの概要
4
第3章
3.1
システム班の課題
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
3.2
プロセスの概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
課題解決のプロセスの詳細
6
4.1
高野祐磨 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
4.2
傳法一輝 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
4.3
島野晃輔 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
4.4
日下善博 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
第4章
第5章
ロトカ=ボルテラ方程式 I:被食者・捕食者系
11
5.1
被食者・捕食者方程式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
5.2
ボルテラの原理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
5.3
種内競争を持つ被食者・捕食者方程式 . . . . . . . . . . . . . . . . . . . . . . . .
13
第6章
5.3.1
直線が交わらない場合 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13
5.3.2
直線が交わる場合 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
ロトカ=ボルテラ方程式 II:2 種の競争種
15
6.0.3
線形微分方程式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
6.0.4
線形化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
6.1
競争方程式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
17
6.2
L1,L2 が交わらない場合 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
17
d
f
d
f
のとき . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
L1,L2 が交わる場合 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
6.3.1
6.3.2
第7章
< de , ae <
17
6.2.2
6.3
a
b
a
b
のとき . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2.1
a
c
a
c
>
d a
e,c
>
> fd , ab >
<
d a
f,b
>
d
e
d
e
のとき . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
19
のとき . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
19
レプリケーター方程式
20
- iii -
7.1
レプリケーター力学系 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
20
7.2
ナッシュ均衡と進化的に安定な状態 . . . . . . . . . . . . . . . . . . . . . . . . .
21
7.3
第8章
8.1
第9章
7.2.1
ナッシュ均衡 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
7.2.2
進化的に安定な状態 (evolutionarily stable state:ESS) . . . . . . . . . . .
21
レプリケーター力学とロトカ=ボルテラ方程式 . . . . . . . . . . . . . . . . . . .
21
タカ・ハトゲーム
23
2 × 2 ゲームの安定性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
ライフゲーム
26
第 10 章 言語の進化
10.1
10.2
27
周りの人を自分を含めた 3 × 3 で作成 . . . . . . . . . . . . . . . . . . . . . . . .
27
10.1.1 得られる利得、子供に教えられる確率、初期の配置を乱数で与える . . . . .
27
10.1.2 初期の配置を固定する . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28
10.1.3 周りから得られる利得と子供に教えられる確率を入力 . . . . . . . . . . . .
28
周りの人を自分を含めた5×5で作成 . . . . . . . . . . . . . . . . . . . . . . . .
29
10.2.1 得られる利得、子供に教えられる確率、初期の配置を乱数で与える . . . . .
29
10.2.2 周りの人から得られる利得と次の世代に教えられる確率の固定 . . . . . . .
29
第 11 章 結果
31
11.1
プロジェクトの結果 (前期) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
11.2
プロジェクトの結果 (後期) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
11.3
成果の評価 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
11.3.1 iPad2 の環境設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
32
11.3.2 シミュレーションツール . . . . . . . . . . . . . . . . . . . . . . . . . . .
32
第 12 章 アンケートの結果
12.1
12.2
12.3
33
中間発表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
12.1.1 発表技術について . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
12.1.2 発表内容について . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
最終発表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
12.2.1 発表技術について . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
12.2.2 発表内容について . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
前期と後期の比較
第 13 章 今後の課題と展望
35
13.1
今後の課題 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
13.2
展望 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
第 14 章 相互評価
36
14.1
高野祐磨 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
14.2
傳法一輝 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
14.3
島野晃輔 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
14.4
日下善博 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
- iv -
付録 A
新規習得技術
38
付録 B
活用した講義
39
参考文献
40
-v-
A mathematical principle of evolutionary game and its simulation
第1章
概要
この章では概要について書いていく。
本プロジェクトは、進化ゲームについて学ぶ。今までこの分野についてあまり触れていなかった
ので、これまでに大学等で学んだことを復習・応用し、基礎となる部分の方程式を理解する。進化
ゲームの学習で得たことを応用して、iPad2 を使い、まずは高校生等の大学生に近い存在に理解し
てもらえるツールを開発し、方程式から求められる数値の変化を視覚化する。
(※文責: 島野晃輔)
1.1
該当分野の現状と従来例
進化ゲーム理論は戦略分布や戦略プロファイルで表現される社会状態の変化を分析の対象とする
動学的な体系である。プレーヤーの出生死滅で集団中の戦略分布が変化することを想定するレプリ
ケータダイナミクスモデルや、プレーヤーの学習によって戦略分布や戦略プロファイルが変化する
学習ダイナミクスモデルが考えられている。
(※文責: 島野晃輔)
1.2
現状における問題点
本プロジェクトは、今年度が初めてということもあり、参考にするものが限られていた。その
ため、今までの大学の講義で行ったことを復習した。また、進化ゲームについてテキストや web
上の情報を利用し、セミナーを行いながら互いに理解する必要があった。メンバーが全員複雑系科
学科ということもあり、独自で Processing やイラストレーターを学んで対応する必要もあった。
(※文責: 島野晃輔)
1.3
課題の概要
進化ゲームを理解していく上で、基礎となる2つの方程式を勉強する必要がある。出生や死滅で
起こる集団中の戦略分布の変化を表現したレプリケータ方程式と、捕食者と被食者の増減関係をモ
デル化し、増減速度を表現したロトカ・ヴォルテラの方程式である。このことを非線形微分方程式
を用いて解いていく。また、解いた結果をプログラムし、どのように変化していくかがわかるよう
に視覚化することを試みる。
(※文責: 島野晃輔)
Group Report of 2011 SISP
-1-
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
第 2 章 到達目標
この章では到達目標として、本プロジェクトにおける目的、プロジェクト学習でおこなう利点、
具体的な手順や課題の割り当てについて書いていく。
2.1
本プロジェクトにおける目的
複雑系を理解する手がかりとして、進化ゲームを取り上げ、進化生態学・ゲーム理論・力学系
の観点からそれを解析し、その成果を iPad2 などといった機材で視覚化するツールを開発するこ
と。これにより、高校生等の下級生がゲーム理論について理解することができるようになること。
(※文責: 島野晃輔)
2.2
通常の授業ではなく、プロジェクト学習で行う利点
講義ではタカハトゲームや、囚人のジレンマといったゲーム理論における代表的な例しか学ばな
い。その上、複雑系の選択科目ということで、ゲーム理論について知る機会が少ない。プロジェク
ト学習で取り上げることで、ゲーム理論について学ぶ機会が増え、iPad2 などという機材で視覚化
することにより、ゲーム理論について理解することができる人たちが増えることが利点である。ま
た、時間をかけてゲーム理論について考えることにより、『なぜ世界中には様々な言語が存在し、
長い年月が経った今でも1つの言語に落ち着かないのか』といった、授業内容より発展した例を考
え、紹介することができる。
(※文責: 島野晃輔)
2.3
具体的な手順・課題設定
目標達成するために、理論班とシステム班の2つのグループに分かれて考えることにした。ま
ず、プロジェクトメンバーがゲーム理論について理解するため、両グループともに4月から6月ま
でゲーム理論を考えるための基礎知識を身につけるためのセミナーを毎週毎行った。このセミナー
でゲーム理論を考える上で必要となるロトカ・ヴォルテラ方程式やレプリケータ方程式といったも
のを中心に考え、それらの関係性について学んだ。基礎を学んだ後はそれらを応用して、言語の進
化について考えた。理論班が数式を解析し、その数値を用いて視覚化するためのプログラムをシス
テム班が考えることにした。
2.4
課題の割り当て
まず、理論班とシステム班にグループ分けをし、セミナーを計6回行った。セミナーは理論班が
2回、システム班が1回ずつ担当し、それぞれが担当した章について学習をすすめて基礎知識を身
につけることにした。その後、理論班は数値解析、システム班はプログラムについて担当した。
Group Report of 2011 SISP
-2-
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
(※文責: 島野晃輔)
Group Report of 2011 SISP
-3-
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
第 3 章 課題解決のプロセスの概要
この章では課題解決のプロセスとしてシステム班の課題とプロセスの概要を書いていく。
3.1
システム班の課題
理論班が解析した結果求められた計算方法を元に、複雑で分かりにくい数値計算を視覚的に捕ら
えられるシミュレーションツールを開発する。
3.2
プロセスの概要
4月
グループ内で理論班・システム班と役割を分けてグループ分けを行い、プロジェクトリーダーおよ
びグループリーダーを選び、1 年間の計画を立てた。このプロジェクトでは「進化ゲームと微分方
程式」「進化のダイナミクス」の 2 冊を基本的に使用するテキストとして選んだ。理論班は数値計
算を行うための知識を得ることが必要なのは当然であるが、システム班もシミュレーションツール
を開発する上で使用する数式などの基本的な知識を身につけなければならないため、前期は理論
班・システム班で分かれずに合同でテキスト「進化ゲームと微分方程式」を使用して基礎知識を身
につけていくこととした。「進化のダイナミクス」については内容が少し高度であるため、基礎知
識が身についた後期にこのテキストから適切なテーマを選択し、数値計算・シミュレーションを行
うこととした。
5月
班に関係なく 2 人で 1 組のグループ分けをして、「進化ゲームと微分方程式」のテキストを各章ご
とに分担して読み進めた。最初の 2 週間は担当教員により今後学んでいく「ロトカ・ヴォルテラ方
程式」「レプリケータ方程式」に関する簡単な講義が行われ、3 週目からは毎週水曜日に 2 人 1 組
のグループごとに学習した章の内容をまとめて発表していくことで、グループ全体で理解するとい
う方法でテキスト内容を理解していった。全員で同時に読んでいく方法に比べて分担して勉強し、
教えあうということで効率よく学習できた。毎週金曜日は各自自習や次週の発表の準備、水曜日の
セミナーで理解が足りなかった部分を補うなどの時間とした。
6月
5 月と同様に毎週水曜日にセミナーを行い、テキスト内容の理解を深めていった。また、7 月に行
われる中間発表に向けてどの部分を発表すれば面白いだろうか、といった計画なども立て、今後の
活動を明確にしていった。テキスト内容も後半に差し掛かり内容が難解になっていったため、グ
ループ全体での理解には非常に苦労を要した。
7月
中間発表に向けて、今までのセミナーで学んだことのまとめを行い、発表用のポスター、スライド
Group Report of 2011 SISP
-4-
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
を作成する係、発表に使う視覚化ツールの例として「ライフゲーム」の作成を行うシステム係に分
担し、それぞれが準備を進めていった。発表では作成したライフゲームで「パルサー」
「グライダー
銃」などの代表的な例を動作させ、システム班で行う「計算の視覚化シミュレーションツール」と
はどのようなものを指しているのか、といった説明なども行った。発表終了後はアンケート結果に
目を通し、問題点についての反省をして、最終発表に向けて解決法を考えた。中間発表後は中間報
告書の作成に取り組み、前期のセミナーで学んできたことを軸にグループ報告書・個人報告書を作
成した。
10 月
前期で学んできた基礎知識をもとに、後期は「進化のダイナミクス」のテキストを使用して、実際
に「言語の進化」といテーマに関するアプローチをスタートした。後期は前期のはじめに決めたよ
うに理論班・システム班の2つにグループが分かれ、それぞれが別の作業を行った。理論班が数式
モデルの解析を行っている間、システム班では iPad2 の環境設定、開発言語の確認、シミュレー
ションツールのデザイン、動作イメージなど、ツールを開発するための準備を整えていった。ここ
から Processing を使用してシミュレーションツールの開発をスタートし、中間発表で使用したラ
イフゲームと同じくセルオートマトンの形式で作成することとした。
11 月
理論班が解析した結果を元に、セルオートマトンに「言語の進化」で使用する数式を導入したが、
予想される結果とは異なるシミュレーション結果が現れた。そこからなぜ異なる結果が生じたのか
を考え、セルオートマトンの世界設定やセルの変化に関わる範囲などに問題があることが判明し、
そこを修正することで理論班が証明した結果と同様の結果をシミュレーションすることが出来た。
様々な初期条件でシミュレーションを続けていく内に、最初はバラバラだった 2 色(英語/中国語)
のセルが、所々で同じ色同士で集まっているような部分が見つかった。このことを現実問題にあて
はめると、世代を重ねるごとに同じ言語を使用する人同士が集まって集落のようなものを作るよう
な状況であり、単に数式を計算しただけでは見られなかった新しい事実をシミュレーションツール
を使ったことによって発見することが出来た。11 月終盤は 12 月の最終発表の準備に取り掛かり、
前期と同様にグループ分けをして作業を行った。今回は中間発表のアンケートに書かれていたこと
を反省し、指摘された事に関して注意して準備を行った。
12 月
11 月から引き続き準備を行い、最終発表を行った。中間発表の時は全員が発表に回った為にアン
ケート用紙を配ったりスライドを進めたりする部分がうまくいかなかったこともあり、今回は発表
者、スライド係、用紙配布係などに分担し、発表がスムーズに進むように工夫した。発表後はアン
ケートを見て各自反省し、最終報告書の作成に取り組んだ。
(※文責: 高野祐磨)
Group Report of 2011 SISP
-5-
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
第 4 章 課題解決のプロセスの詳細
この章では各人のプロセスの詳細について書いていく。
4.1
高野祐磨
4月
進化ゲーム、ロトカ・ヴォルテラ方程式の概要について先生の説明で勉強。今後使用していく教
材や計画などを決める話し合いをした。
5月
教材を分担して読み進めることになり、自分は 3 章、種内競争のある場合の 2 種の競争方程式につ
いての勉強を開始した。月末頃から 1 章から他担当者の発表が開始され、発表された学習内容に関
しての理解にも努めた。
6月
5 月に引き続き担当部分の学習を進める。自力で読み進めることは困難だったが、ライブラリの
図書を利用して、使用教材よりもさらに基礎の部分を勉強をするなどして着実に学習を進めていっ
た。自分の担当箇所である 3 章の発表があったが安定性の解析法を完全に理解することが出来てお
らず、発表中に先生からの助言を頂くことで発表後はしっかりと理解することが出来た。
7月
テキスト後半部分の発表を聞いて理解するのと共に、中間発表に向けての準備を進めた。自分は
発表用スライドの作成を担当した。
8 月,9 月
夏休み中は今まで勉強してきたテキスト内容の復習をし、曖昧になっていた部分を中心に勉強を
した。
10 月
iPad2 の環境設定を開始する。リサーチ不足もありネットワークの接続が非常に難航し、大学の
システム管理者の助けを得ることで接続することが出来ると気づくまでにかなりの時間を要してし
まった。「言語の進化」テーマに関する知識も身につけておいたほうがいいと思ったので、この期
間は理論班に混ざり計算の補助などをしてテーマの状況を理解し、実際のシミュレーションツール
のイメージを膨らませることに尽力した。
11 月
シミュレーションツールの状況設定などに 10 月に勉強してきたことを元に自分の意見を積極的に
発信した。月末から最終発表に向けての準備がスタートし、今回はスライドの手直し・修正・仕上
Group Report of 2011 SISP
-6-
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
げを担当した。
12 月
他の人が作成したスライドの修正・仕上げを担当した。実際に行った修正内容は、
・
「ゲーム理論」について勘違いした人が中間発表時に居たため、最終発表のスライドでは
「ゲーム理論」というものについての誤解が生まれないように説明を追加
・
「言語の進化」の解析過程について説明する部分のスライドが分かりにくいという意見が
を発表練習時にあったので、その部分を丸々修正
・
「言語の進化」テーマにおける問題提起をイメージしやすい具体的な内容に書き換え
・
「言語の進化」テーマにおける状況設定がスライドを見た人にイメージしやすいような図
で表すように書き換え、図と文字だけではまだ分かりにくいものであったため、中間発表で
「タカハトゲーム」の状況設定を説明したときと同様に具体的なイメージ絵を併用すること
にした。
(※文責: 高野祐磨)
4.2
傳法一輝
4月
進化ゲームに必要な基礎、主にレプリケータ方程式、ロトカヴォルテラ方程式について学んだ。ま
た、どのようにプロジェクト学習を進めていくか話し合った。
5月
プロジェクトメンバーでテキストを読みまわし、自習を行った。また、セミナーを実施し、それぞ
れ担当を決め、発表を行った。
6月
5 月と同じく、主にテキストを参考にし自習を行った。自分は 3 章の部分を担当し、発表を行った。
7月
前半はセミナーの続きを行い、後半は主に発表のための準備を行った。自分はポスターを担当し、
イラストレーターについて 1 から学び、ポスターを作成した。
8月
夏休み期間であったため、メンバーが集まることは無かったが、後期に備えて予習や復習を行った。
9 月,10 月
後期の発表で使うためのツール (iPad2) の環境作りを行った。また、言語の進化についての予習を
行った。
11 月
Group Report of 2011 SISP
-7-
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
理論班の知識も借りつつ、成果物の作成のために、グラフとシステムの作成を行った。また、最終
発表への準備も行った。前期のポスターで不足していた部分を再確認し、ポスター作成を行った。
12 月
最終発表を行った。また、最終発表に来て頂いたからからの評価を参考にし、良くなかった部分、
良かった部分を再認識した。
(※文責: 傳法一輝)
4.3
島野晃輔
4月
プロジェクトの配属。配属されてからは、先生によるロトカ・ヴォルテラ方程式についての講義を
行ってもらった。この最初の講義では、タカハトゲームを取り上げて説明していただき、これから
どのようなことを考えていくのか、感覚を掴んだ。
5月
まずは全員が必要となる知識を身につける為、理論班・システム班合同でセミナーを行った。
6月
二人一組となり、教科書を章ごとで分担した。水曜日にプロジェクトメンバーの前で担当した章を
発表をし、金曜日は各自で他に担当された章や、水曜日に学んだことの復習などをして知識をつけ
ていった。私たちは第2章を担当し、捕食者・被食者に対するロトカ・ヴォルテラ方程式について
メンバーの前で発表した。はじめ教科書を読んだ時、理解するのに苦労したが、組みを組んだ人か
ら教えてもらいながら学習し、なんとか理解することができた。
7月
中間発表に向けての役割分担と発表準備。学んできたことの例として、タカハトゲームとライフ
ゲームを用いて発表をした。私は発表用スライドを担当し、勉強中心だったため、数式と言葉につ
いての説明で文字ばかりのつまらないスライドとなってしまった。発表では、やはり、スライドに
ついて指摘され、最終発表で改善しなければならない点となった。学んできたことを発表すると
いった形になった為、このプロジェクトにおけるオリジナリティがないという意見や、数式や説明
ばかりで聴いていただけた人には難しいといった印象が強く残ったような意見を多く頂いた。
9月
まずはじめに、前期の活動の振り返り、今後どのように活動していくのか確認し、最終発表までの
日程を決めた。後期では、前期に学んだことを応用し、言語の進化というテーマを考えることにし
た。ここから理論班とシステム班が別で活動することとなった。システム班は、理論班から数式を
もらいプログラムを組む為、活動自体は同じ場所で行った。情報の供給とバックアップを取るとい
う意味で、データのやり取りは USB メモリーを使った。
10 月
Group Report of 2011 SISP
-8-
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
可視化する際に iPad2 を使用する為、iPad2 を学内で使えるように環境設定を行った。学内で使え
るようにしてから必要となるアプリをダウンロードし、iPad2 に慣れることに努めた。
11 月
理論班が出した数式からグラフとセル・オートマトンの作成をした。この二つで可視化を試みた。
セル・オートマトンではうまく規則性を見出すことが出来ず、試行錯誤して幾度とプログラムを組
み直した。メンバーだけでは正しい動きをしているのかわからなかった為、確認は担当教員から意
見を頂いた。私は、プログラムを組むのが苦手だった為、理論班から渡された数式が正しいのか確
認する為、再度数式を解いて確認をした。
12 月
最終発表に向けての役割分担と発表準備。最終発表では、ポスター作りを二人で担当した。ポス
ターに書く内容を考え、全体のデザインについては二人で意見を言い合った。中間発表で指摘を頂
いたスライドについては、中間発表時よりは改善されたと思われるものを作成できた。しかし、ま
だまだ改善の余地はあるとも思えた。発表内容については、中間発表では難しいといった印象を持
たれるものだった為、プロジェクトメンバーで考えながら進めたが、うまく簡単に説明することが
できなかった。もっと余裕を持ってスケジュールを進め、発表練習に時間をかける必要があったと
感じた。
(※文責: 島野晃輔)
4.4
日下善博
4月
プロジェクト内でのグループ分けを行い、予算の検討をした。川越先生からレプリケーター方程
式、川口先生からロトカ=ボルテラ方程式の概要の説明があった。
5月
プロジェクトメンバーで教科書の分担を行い、セミナー形式で発表をした。
6月
自分の班の発表の準備をして被食者・捕食者系のロトカ=ボルテラ方程式の発表を行った。基本の
ロトカ=ボルテラ方程式だけでなく、被食者間、捕食者間の種内競争を取り入れたモデルも考え
た。種内競争を取り入れたロトカ=ボルテラ方程式は解析に解くことはできず等傾斜線法を用い
て、直線が交わらないときと交わるときについて考察をした。
7月
中間発表の準備としてライフゲームのプログラムを ActionScript で作成した。
9月
前期のおさらいを行い、今後の計画を立てた。
Group Report of 2011 SISP
-9-
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
10 月
iPad2 の環境を整えた。学内では iPad2 で学内認証ができず、難航したが、たくさんの協力があり
学内でのネットワークに接続することができた。
11 月
理論班から渡された数式からグラフの出力とセルオートマトンの作成をした。グラフの出力は難な
くできたが、セルオートマトンはなかなか出来ず何度も修正をした。
12 月
最終発表の直前までセルオートマトンの作成を行った。
(※文責: 日下善博)
Group Report of 2011 SISP
- 10 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
第 5 章 ロトカ=ボルテラ方程式 I:被食者・捕
食者系
5.1
被食者・捕食者方程式
第一次世界大戦後、アドリア海の漁獲高を調べると、戦前に比べて捕食者の数が大きくなってい
た。戦争中は漁業はされていなかったが、どうして漁業活動の中断が捕食者に有利に働いらのだろ
うか。この問題を持ちかけられたボルテラは次のように考えた。
ẋ = x(a − by)
ẏ = y(−c + dx)
パラメータ
意味
x
被食者の密度
y
捕食者の密度
a
被食者の増加率
b
被食者が餌になって減少する割合
c
捕食者の減少率
d
捕食者が餌を見つけて増加する割合
(5.1)
(5.2)
(5.1)、(5.2) の休止点は x̄(a − bȳ) = 0 と ȳ(−c + bx̄) = 0 を満たしかつ x̄ > 0, ȳ > 0 である。
従って、
x̄ =
c
a
, ȳ =
d
b
が得られる。ẋ と ẏ の符号は y と ȳ 、x と x̄ の大小に依存する。従って x-y 平面を 4 個領域に分け
ることができ、反時計方向の回転をする周期軌道で囲まれている。
Group Report of 2011 SISP
- 11 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
図 5.1
ロトカ=ボルテラ方程式
図 4.1 から明らかに F=(x̄, ȳ) を中心にして、その周りを回転するような軌跡が得られる。
(※文責: 島野晃輔)
5.2
ボルテラの原理
被食者-捕食者系では安定な定常解はなく、被食者と捕食者の数は時間的に変動している。個体
群密度の時間平均は一定であり、休止点 F の対応する成分の値は等しい。
1
x̄ =
T
∫
T
0
1
x(t)dt, ȳ =
T
∫
T
y(t)dt
0
(5.2) を 0 から T で積分する。
1
T
∫
∫
d
1 T
log xdt =
(a − by)dt,
T 0
0 dt
1
x(T )
log
= a − bȳ.
T
x(0)
T
T → ∞ の極限をとると左辺は 0 であるので、右辺=0 より、
ȳ =
a
b
x̄ =
c
d
が得られる。同様に (5.2) より
が得られる。よって平均値は中心点 F の座標により与えられる。
戦争のための漁業活動の中断は被食者、捕食者共に捕獲される確立は減るので
a → a + k, c → c − m
Group Report of 2011 SISP
- 12 -
(5.3)
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
である。従って、
x̄ =
a+k
c−m
, ȳ =
b
d
になる。戦争による漁業活動の中断は、捕食者密度は増加し、被食者密度は減少したのである。
(※文責: 島野晃輔)
5.3
種内競争を持つ被食者・捕食者方程式
(5.1)、(5.2) の式に種内競争を取り入れると
ẋ = x(a − ex − by)
ẏ = y(−c + dx − f y)
(5.4)
となる。
パラメータ
意味
e
被食者間の種内競争係数
f
捕食者間の種内競争係数
これを解析的にとくことはできないが、等傾斜線の方法が有効である。初期状態 x ̸= 0、y ̸= 0 で
あれば x,y は無限に小さくなっても 0 になることはない。このとき ẋ = 0、ẏ = 0 となる直線は
a − ex − by = 0
−c + dx − f y = 0
である。パラメータの値によって直線が交わらない場合と交わる場合の 2 つのケースに区別するこ
とができる。
5.3.1
直線が交わらない場合
図 5.2
Group Report of 2011 SISP
直線が交わらない場合
- 13 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
この場合、被食者だけ生き残り捕食者は絶滅する。
被食者間に競争を導入すると被食者間の競争が激しくなり、被食者の数が捕食者を養うのに十分な
数がいないため捕食者は絶滅する。このようなことが起こる条件は
5.3.2
a
e
<
c
d
のときだけである。
直線が交わる場合
直線が交わる条件は
a
e
>
c
d
が満たされる場合である。任意の初期値から出発して作図しても共
存点 F に収束する。F は
a − bȳ − ex̄ = 0
−c + dx̄ − f ȳ = 0
で決まる。
図 5.3
直線が交わる場合
F への収束状況はリアプノフの定理によって保証される。この定理とは V̇ ≥ 0 の条件を満たす
リアプノフ関数 V が見つかれば、t → ∞ では V̇ = 0 に行き着くというのがリアプノフの定理であ
る。今回の場合、H(x) = x̄ log x − x,G(y) = ȳ log y − y として、
V = dH(x) + bG(y)
がリアプノフ関数の条件を満たす。なぜなら
V̇ (x, y) = de(x − x̄)2 + bf (y − ȳ)2
であるから、定理によって最終的に x → x̄, y → ȳ に行き着く。
(※文責: 日下善博)
Group Report of 2011 SISP
- 14 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
第6章
争種
6.1
ロトカ=ボルテラ方程式 II:2 種の競
線形微分方程式
休止点の安全性に関する全ての重要な問題は、多くの場合関連する線形方程式の問題に還元でき
る。そこで、線形系の主要な特徴をいくつか簡単に見てみる。A を n× n の実行列とし、
ẋ = Ax
(6.1)
を、Rn の線形微分方程式とする。この解 x(t) は、eAt x(0) と表せる。ここで行列は、eAt は
eAt = I + A
t
t2
+ A2
1!
2!
で与えられる。A の固有値は実数または複素数であり、後者の場合、共役な複素数が共に固有値と
なる。(6.1) の解の成分 xi (t) は、次の関数の線形結合で与えられる。(i)eλt :λが A の実固有値で
あるとき、(ii)eat cosbt、eat sinbt、すなわちの実数部分と虚数部分:μ=a + ib が A の複素固有値
であるとき、(iii)tj eλt 、tj eat cosbt、tj eat sinbt(0 ≤ j < m):λまたはμが重複度の m 固有値である
とき。複素固有値がμ解の振動成分を与えることに注意する。この振動が減衰するための必要十分
条件は a < 0 である。原点 0 は (6.1) の休止点である。0 は次のように分類される。
(a) 固有値の実部λと a が全て負の場合、0 は沈点と呼ばれる。
(b) 固有値の実部が全て正である場合、0 は源点と呼ばれる。
(c) 固有値が複素平面 C の左半平面と右半平面の両方に存在し、かつ虚数軸上に存在しない場合、
双曲型と呼ばれる。
虚数軸上の固有値 0 は”退化”解に対応する。すなわち、固有値は休止点の線形形多様体に、虚数
軸上の固有値の組± ib は
2π
b
周期を持つ周期解から構成される線形多様体にそれぞれ対応する。す
べての固有値が虚数軸上にある場合、0 は渦心点と呼ばれる。0 が双曲型でない場合、行列 A はの
成分に任意の小さな摂動を加えると、0 を源点、沈点、鞍点に変化させることができるため、まっ
たく違った挙動を得られる。また、双曲型の場合は、構造安定である。すなわち、行列の成分の値
に対する摂動が十分に小さければ、軌道の挙動は本質的にかわらない。
(※文責: 高野祐磨)
6.2
線形化
Rn の点 z の近傍で
ẋ = f (x)
(6.2)
の解の局所的な挙動を調べる。もし z が休止点でないとすると、z の近傍 U を考えれば、連続的な
変換により軌道を”まっすぐに伸ばす”ことが可能で、すべての軌道は平行を見なせる。これは、
Z におけるテイラー展開の初項が定数 f(x) ≠ 0 を満たすことから導かれる。しかし、z が休止点で
Group Report of 2011 SISP
- 15 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
ある場合、局所的挙動をスケッチすることは少し難しくなる、今度は定数項 f(z) が 0 である。テイ
ラー展開の次の項は、一階の偏導関数から作られるヤコビアン行列 Dz f = A で与えられる。


A=
∂f1
∂x1 (z)
..
.
∂fn
∂x1 (z)
···
..
.
···
∂f1
∂xn (z)
..
.



∂fn
∂xn (z)
線形方程式
ẏ = Ay
(6.3)
は解析的に解ける。A のすべての固有値の実数が 0 でない場合、z が双曲型である限り (6.2) の解
析に役立つ。またこれは、次のハートマン・グロブマンの定理の中身である。
定理 4.3.1.
(6.2) の任意の双曲型休止点に対し、その近傍 U と、U から原点のある近傍 V への同相写像 h が
存在し、y=h(x) ならば、x(t) ⊆ U を満たすすべての t ⊆ R に対してとなる。(ここで、x(t) は
x(o)= x を満たす (6.2) の解、y(t) は y(0) となる線形方程式 (6.3) の解である。同相写像とは、連
続な逆写像を持つ連続写像である。) 従って、局所的には、z の近傍における (6.2) の軌道は、原点
の近傍における (6.3) の軌道と同一視できる。線形系の場合と同様に、(6.2) の沈点、源点、鞍点、
安定・不安定多様体について議論できる。特に z が沈点であるならば、それは漸近安定である。も
し A の固有値のうちで1つでも正の実部をもつものがあれば、z は不安定である。微分方程式と
差分方程式の安定条件を比較すると有益である。ℜ2 の微分方程式 (6.2) に対応する差分方程式と
して、
ẋ = x + hf (x)
(6.4)
を考える。ここで、増分は ẋ− x (6.2) のベクトル場と同一方向を指している。h は刻み幅である
(通常 h=1)
。数値解析学ではオイラー法と呼ばれる。h が小さければ、少なくともある有限な時間
内では、(6.4) の軌道は (6.2) の軌道の近傍に留まると思われる。今、z を (6.2) の、従って (6.4) の
不動点として、A = Dz f と置く。両方の方程式において、z の近傍における局所的挙動を比較す
るため、その線形化
ẏ = y + hAy = (I + hA)y
(6.5)
|1+hλ|<1
(6.6)
と
を考える。0 が(6.5)安定休止点であるための必要十分条件は、A の固有値が全て負の実部を持つ
ことである。A の固有値をλとすれば、1 + h λは I + hA の固有値であるから、(6.6)の 0 が安
定となるためには
|1+hλ|<1
すなわち、λが中心 − h1 で半径
1
h
の円の内部も存在することが必要である。従って、差分方程式
に対する安定条件の方が、微分方程式に比べると厳しい。0 が(6.5)に対して安定であるとき、h
が十分小さい場合に限り、(6.6)に対しても安定となる。h をあまり大きくしすぎると、0 は離散
時間に関して安定性を失う。また、もし 0 が(6.5)の渦心点であるならば、(6.2) に対しては漸近
安定であることは可能であるが、(6.6) に対しては h をどのように選んでも 0 は常に不安定である。
(※文責: 高野祐磨)
Group Report of 2011 SISP
- 16 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
6.3
競争方程式
2種類の個体が競争するモデルを考える。競争は種内、種間の両方で働くので方程式は
ẋ = x(a − bx − cy)
ẏ = y(d − ex − f y)
(6.7)
で表される。
パラメータ
意味
x
種 1 の密度
y
種 2 の密度
a
種 1 の増加率
b
種 1 の種内競争係数
c
種 1 と種 2 の種間競争係数
d
種 2 の増加率
e
種 2 と種 1 の種間競争係数
f
種 2 の種内競争係数
種内競争を持つ被食者・捕食者方程式同様に解析的に解くはできないが視覚的な描写は等傾斜線法
で得ることができる。x,y 方向の勾配が 0 になる直線は
L1 : a − bx − cy = 0
L2 : d − ex − f y = 0
である。L1,L2 が交わらない場合と交わる場合を考える。
6.4
L1,L2 が交わらない場合
この場合、パラメータの値により 2 種類の可能性がある。
6.4.1
a
b
< de , ae <
d
f
のとき
図 5.1(a) のように任意の初期値から出発しても x = 0, y =
Group Report of 2011 SISP
- 17 -
d
f
に収束し、種 1 は絶滅する。
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
(a) L1 が L2 の内側
(b) L2 が L1 の内側
図 6.1 L1,L2 が交わらない場合
6.4.2
a
b
> de , ac >
d
f
のとき
図 5.1(b) のように任意の初期値から出発しても x =
6.5
a
b,y
= 0 に収束し、種 2 は絶滅する。
L1,L2 が交わる場合
この場合もパラメータの値によって 2 つの可能性がある。
(a)
a
c
>
d a
,
f b
>
d
e
(b)
a
c
<
d a
,
f b
>
d
e
図 6.2 L1,L2 が交わる場合
Group Report of 2011 SISP
- 18 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
6.5.1
a
c
> fd , ab >
d
e
のとき
図 5.2(a) のように任意の初期値から出発しても共存点に収束する。
6.5.2
a
c
< fd , ab >
d
e
のとき
この場合は共存点に収束することはなく、初期値によって種 1 だけが生き残り、種 2 は絶滅する
状態、または種 2 だけが生き残り、種 1 は絶滅する状態に収束する。このようなケースを双安定と
呼び、2 種類の個体は共存することはない。
(※文責: 高野祐磨)
Group Report of 2011 SISP
- 19 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
第 7 章 レプリケーター方程式
7.1
レプリケーター力学系
あるプレーヤの集団があり、そこで n この戦略が用いられる状況を考える。戦略 i を採用するプ
レーヤの数を Pi 、戦略 i を採用するプレーヤ全体の占めるシェアを xi 、戦略のシェア分布を示す
ベクトルは x = (x1 , x2 , x3 , ..., xn ) として、xi の時間変化の微分方程式を求める。
pi の増加率を λi とする。
dpi
= λi pi
dt
となり、λi が時間的に一定であれば
pi (t) = pi (0) · exp(λi t)
となり、pi は指数関数的に増加 (減少) をする。ここで戦略に無関係な成分を λ、戦略に依存する
部分を ui とする。ui は一般に集団の戦略分布 x にも依存するので ui (x) と書くことができる。こ
のときの pi の支配方程式は
dpi
= (λ + ui (x))pi
dt
(7.1)
となる。この式の ui (x) が進化ゲームにおける戦略の「利得」になります。進化ゲームにおける利
得とは戦略の採用人数の時間増加率を示す概念である。これを、通常のゲーム理論における、フォ
ンノイマン・モルゲンシュテルン効用と区別して「進化ゲーム利得」と呼び、(7.1) 式が進化ゲー
ム利得の定義式である。以上のように利得を定義したときに、戦略 i の頻度の変化率
dxi
dt
がどうな
るか考える。
p を集団の人数 (Σpi ) とすると、xi =
pi
p
と書ける。これより
pi = xi p
両辺を t で微分して
dpi
dxi
dp
·p=
· p + xi ·
dt
dt
dt
移行して
dpi
dp
dxi
·p=
· p − xi ·
dt
dt
dt
(7.2)
ここで
dp
dpj
=Σ
dt
dt
= Σ(λ + uj (x))pj
= λp + Σuj (x)pj
(7.3)
(7.1) と (7.3) を (7.2) に代入すると
dxi
· p = (λ + ui (x))pi − xi (λp + Σuj (x)pj
dt
= λpi + ui (x)pi − xi λp − xi Σuj (x)pj )
Group Report of 2011 SISP
- 20 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
両辺を p で割って
dxi
= λxi + ui (x)xi − λxi + Σuj (x)xj
dt
= ui (x)xi − xi Σuj (x)xj
Σuj (x)xj は集団の平均利得なので u(x) とする。
dxi
= (ui (x) − u(x))xi
dt
(7.4)
という微分方程式が得られる。これがレプリケーターダイナミクスの支配方程式で (7.4) に従うダ
イナミクスをレプリケーターダイナミクスと言う。
7.2
7.2.1
ナッシュ均衡と進化的に安定な状態
ナッシュ均衡
ナッシュ均衡とは集団の中で自分だけが戦略を変えても利得が増えないような組み合わせの
状態。
7.2.2
進化的に安定な状態 (evolutionarily stable state:ESS)
ESS とは、対称ナッシュ均衡 (自分と相手が同じ戦略を採用しているナッシュ均衡) を構成する
部分集合である。集団の個体が全て進化的に安定な戦略を採用しているとき、それを進化的に安定
な状態と呼ぶ。
7.3
レプリケーター力学とロトカ=ボルテラ方程式
n 変数のレプリケータ方程式は、n-1 変数のロトカ=ボルテラ方程式に変形することができる。
xi
xn
= yi , yn = 1 とする。
δ
xi
δxn
= 2 + δxi xn
xn
xn
xi δxi
δxn
=
(
−
)
xn xi
xn
δxi
δxn
δyi = yi (
−
)
xi
xn
(7.5)
δxi = xi (Σj ai jxj − Σk Σj ak jxk xj ), δxn = xn (Σj an jxj − Σk Σj ak jxk xj ) より
∑
∑∑
δxi
=
aij xj −
akj xk xj
xi
j
j
n
n
n
k
n−1
∑
= xn (
aij yj + ain − xn
n ∑
n
∑
j
k
akj yk yj )
(7.6)
j
∑
∑∑
δxn
=
anj xj −
akj xk xj
xn
j
j
n
n
n
k
n−1
∑
= xn (
anj yj + ann − xn
j
Group Report of 2011 SISP
n ∑
n
∑
k
- 21 -
akj yk yj )
(7.7)
j
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
(7.5) 式に (7.6) 式,(7.7) 式を代入すると
δyi = yi [
n−1
∑
(aij − anj )yj + ain − ann ]xn
j
ri = ain − ann , bij = aij − anj とすると
= yi (ri −
n−1
∑
bij yj )xn
j=1
速度変化を無視して、項 xn を除去する
ẏ = yi (ri +
n−1
∑
bij yj )
(7.8)
j=1
が得ることができる。逆にロトカ=ボルテラ方程式からレプリケータ方程式を求めることもでき
る。性質によっては一方の方程式で証明することが容易であり、ESS との関係も成り立つ。
(※文責: 傳法一輝)
Group Report of 2011 SISP
- 22 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
第8章
タカ・ハトゲーム
タカ派の戦略:どちらかが動けなくなるまで戦う
ハト派の戦略:自分より強そうだと思えば、逃げる
この 2 種類の戦略はどちらが有利なのか、強いものだけが生き残るのか
ゲームの得点
・タカ派とハト派が戦うとき、かならずタカ派が勝つ (10 点)
・ただし、敗者のハト派は逃げるのでダメージは受けない (0 点)
・タカ派同士、ハト派同士が戦うとき、勝率は 50% になるがタカ派同士は動けなくなるま
でダメージを受けるので負ければ (-30 点)、勝てば (10 点)
・ハト派はダメージを受けないので負けても (0 点)、勝てば (10 点)
・そのかわり、なかなか決着がつかないので、ハト派は時間的ロスが生じる (-2 点)
以上の条件でそれぞれがどのくらい得点を得るか見てみる。集団のタカ派の割合を P(0 <P< 1)
とすると、ハト派の割合は 1-P となる。
・タカ派の得点
タカ派に出会ったとき=(10 − 30) ÷ 2 = −10 点
ハト派に出会ったとき=10 点
タカ派の平均得点=−10 × P + 10 × (1 − P ) = 10 − 20P
・ハト派の得点
タカ派に出会ったとき=0 点
ハト派に出会ったとき=(0 + 10) ÷ 2 − 2 = 3 点
ハト派のの平均得点=0 × P + 3 × (1 − P ) = 3 − 3P
両者の割合が平衡状態になるのは平均得点が等しくなるときなので
10 − 20P = 3 − 3P
17P = 7
7
P =
≃ 0.41
17
以上の計算よりタカ派が約 40% を占めるとき安定状態になる。
8.1
2 × 2 ゲームの安定性
Group Report of 2011 SISP
A
B
A
a
b
B
c
d
- 23 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
この状態空間の A,B の各戦略のシェアを x,y とする。x + y = 1(0 ≤ x ≤ 1, 0 ≤ y ≤ 1) という
線分になる。この線分の端点 (0,1),(1,0) は常にレプリケーターダイナミクス
dx
= (ax + by − x(ax + by) − y(cx + dy))x
dt
(8.1)
の休止点になる。(0,1) が漸近安定のとき、戦略 B が ESS となり、(1,0) が漸近安定の場合、戦略
A が ESS となる。
(8.1) 式は 3 次式なので最大で 3 つの休止点が存在し、端点以外に状態空間の内部に休止点が存在
することもある。
休止点を (λ, 1 − λ) とする (0 < λ < 1)。(8.1) 式に
λ=
dx
dt
= 0 を代入して計算すると、
d−b
a−b−c+d
が得られ、0 < λ < 1 に代入して分母をはらうと
0<d−b<a−b−c+d
c < a, b < d
(8.2)
で a − b − c + d > 0 を満たす。a − b − c + d < 0 を満たすときは
c > a, b > d
(8.3)
である。(8.2) は戦略 A,B ともに ESS となる。(8.3) はどちらの戦略も ESS とならない。次に、内
点 (λ, 1 − λ) の局所安定性を調べる。
dx
= f (x) = (ax + by − x(ax + by) − y(cx + dy))x
dt
f(x) を x で微分して
′
f (x) = −3(a − b − c + d)x2 + 2(a − 2b − c + 2d)x + b − d
x=λ=
d−b
a−b−c+d
を代入して計算すると、
′
f (λ) =
(d − b)(a − c)
a−b−c+d
となる。
′
(8.2) のとき f (λ) =
(d−b)(a−c)
a−b−c+d
> 0 となるので、内点定常点は不安定である。休止点から少しで
もずれると、そのずれ拡大していきます。このときどちらかの戦略が集団全体を占めた状態で安定
となります。
′
(8.3) のときは f (λ) =
(d−b)(a−c)
a−b−c+d
< 0 となるので、内点定常点は漸近安定である。休止点から少
しずれても時間が経つと休止点に戻ってきます。このときは複数の戦略が共存する状態が安定とな
り、この状態を多型安定という。(8.3) のときは ESS ではないので多型安定点が唯一の安定点とな
る。
今回のタカ・ハトゲームは
Group Report of 2011 SISP
- 24 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
タカ派
ハト派
タカ派
-10
10
ハト派
0
3
なので、(8.3) を満たすので、タカ派の戦略とハト派の戦略は ESS ではなく多型安定となる。
λ=
d−b
a−b−c+d
=
7
17
7
なので休止点は ( 17
,
10
17 )
である。つまり、タカ派の戦略:ハト派の戦略=7:10
の割合で共存し、安定になることがわかる。
(※文責: 日下善博)
Group Report of 2011 SISP
- 25 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
第 9 章 ライフゲーム
中間発表では、進化ゲームとはどういうものか理解してもらうため、ルールが理解しやすいライ
フゲームをセルオートマトンで作成し発表した。ライフゲームとは簡単なルールを与え、誕生、進
化、淘汰を再現したシミュレーションゲームである。ライフゲームのルールは以下の通りである。
・誕生:死んでいるセルの周りに生きているセルがちょうど3つあれば次の世代が誕生する。
・生存:生きているセルの周りに生きているセルが2つまたは3つあれば次の世代でも生存
する。
・過疎:生きているセルの周りに行きているセルが1つ以下なら次の世代では過疎によって
死亡する。
・過密:生きているセルの周りに生きているセルが4つ以上なら次の世代では過密によって
死亡する。
以上のルールをもとにアクションスクリプトで作成した。
図 9.1
ライフゲームが動いてる様子
(※文責: 島野晃輔)
Group Report of 2011 SISP
- 26 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
第 10 章
言語の進化
言語の進化とは2種の言語で成り立つ仮定の世界を想像し、その世界で2種の言語がどのように
広がるのか、またはどちらかの言語が消滅するのかを微分方程式で求める。
まず、理論班が数値解析した微分方程式を c 言語でプログラムした4次のルンゲ=クッタ法を用い
て data ファイルに書き込み gnuplot でグラフにした。
図 10.1
超対称のグラフ
次に言語がどのように広がるかを可視化するセルオートマトンを作成した。言語の進化のルールは
以下の通りである。
1. 周りの人から得られる利得の総和を計算する。
2. 1で計算した総和が周りの人の利得の総和の平均との大小を比較する。
3. 自分が得られた利得の総和が周りにいる人の利得の総和の平均より大きい場合、現在使っ
ている言語を次の世代にある確率で教えることができる。
4. 自分が得られた利得の総和が周りにいる人の利得の総和の平均より小さい場合、現在使っ
ていない言語を次の言語にある確率で教えることができる。
以上のルールをもとに processing でプログラムの作成をした。
以上の手順を繰り返すことによってクラスタ (集合体) ができ、クラスタがある場所で留まるま
たはクラスタがまとまった状態で動き続けると仮定してプログラムの作成をはじめた。
10.1
周りの人を自分を含めた 3 × 3 で作成
10.1.1
得られる利得、子供に教えられる確率、初期の配置を乱数で与える
はじめに周りに人を最近隣の自分を含めた3×3でプログラムを作成した。周りにいる8人から
の利得と次の世代に教えられる確率と初期の配置を乱数で与えた。結果はクラスタは作られず言語
Group Report of 2011 SISP
- 27 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
がバラバラの状態が続いた。仮定した結果と異なるためプログラムの作り直しをした。
10.1.2
初期の配置を固定する
周りの人を変えずに初期の配置を乱数で与えずに世界の左半分に言語1、右半分に言語2になる
ようにしてプログラムをした。結果は先程と同じでクラスタは作られず言語がばらばらの状態が続
いた。仮定した結果と異なるためプログラムの作り直しをした。
(a) t=0
(b) t=10
(c) t=20
(d) t=30
図 10.2 10.1.2 の動いている様子
10.1.3
周りから得られる利得と子供に教えられる確率を入力
自分の得られる利得と次の世代に教えられる確率を乱数で与えずプログラムを開始時に自分で入
力するようにした。初期の配置は(10.1.2)と同じ配置である。その結果、利得を小さい数にすれ
ばするほどクラスタができやすく次の世代に大きくればクラスタができやすくなることがわかっ
た。しかし、クラスタの大きさは小さくすぐにバラバラになるため仮定した結果とは異なる。
図 10.3 入力画面
周りにいる人の数が自分を含めた3×3の大きさでは仮定した結果と異なり十分な結果を得られな
いため周りの人の数を増やして自分を含めた5×5で作成した。
Group Report of 2011 SISP
- 28 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
10.2
周りの人を自分を含めた5×5で作成
10.2.1
得られる利得、子供に教えられる確率、初期の配置を乱数で与える
3×3のときと同様に周りにいる人から得られる利得、次の世代に教えることができる確率、最
初の配置をすべて乱数で与える。結果はクラスタができバラバラにならずまとまった状態で動くと
きとバラバラになるときがある。
10.2.2
周りの人から得られる利得と次の世代に教えられる確率の固定
3×3のときに、周りの人から得られる利得を小さくすることと、次の世代に教えられる確率を
大きくするとクラスタができやすくなることがわかっているため2つをプログラムを得られる利得
を 0.3、次の世代に教えられる確率を 0.9 に固定した。バラバラになることがなくなりクラスタを
作ることができた。
(a) t=0
(b) t=10
(c) t=20
(d) t=30
図 10.4 10.2.2 の動いている様子
Group Report of 2011 SISP
- 29 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
仮定した結果と作成したプログラムが同様の結果になったのではじめに理論班の求めた微分方程式
と作成したプログラムが正しいかを確かめた。検証の方法はプログラムの言語 1 の個体数と言語 2
の個体数を 100 世代まで excel にまとめてグラフを出力する。これを 100 回繰り返した。100 回分
のグラフとはじめに作成した c 言語と gnuplot で出力したグラフを見比べた。プログラムで作成し
たグラフは全体の半分付近で増減を繰り返すグラフが出力された。
(a) gnuplot のグラフ
(b) excel のグラフ
図 10.5
gnuplot のグラフと excel のグラフ
(※文責: 日下善博)
Group Report of 2011 SISP
- 30 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
第 11 章
11.1
結果
プロジェクトの結果 (前期)
前期は、本プロジェクトにおける目的であるシミュレーションをする前段階としてまず具体的な
問題を解析するために必要な知識を身につけた。学習を通して、ロトカ・ボルテラ方程式を変数変
換することによってレプリケータ方程式にすることができ、この2つは互いに同値関係にあると
いうこと、そして求めた解の安定性解析にゲーム理論における進化的に安定な戦略(Evolutionary
Stable Strategy)を用いることが可能であるということが分かった。このことによって、前期で
は 2 種の動物の関係を例に学習してきたが、他の問題も同様に解析していけるということが分かっ
た。中間発表では、他のプロジェクトの発表に押され、声が小さい、発表資料や原稿を見過ぎてい
る難しい用語の説明を工夫するべきという意見が多く発表前の準備の足りなさがアンケートの結果
で伺えた。
(※文責: 傳法一輝)
11.2
プロジェクトの結果 (後期)
我々のプロジェクトは前期は理論班・システム班の 2 つのグループでセミナー形式でプロジェク
ト学習を進めてきたが、後期は理論班とシステム班で作業を分担して同時進行でプロジェクト学習
を進めた。後期のプロジェクト学習は言語の進化について、シミュレーションを行い視覚化するこ
とで多くの人にどのように言語が伝わっていくのかを見てもらった。システム班の作業は、理論班
の求めた微分方程式をグラフにすること、その微分方程式からプログラムのアルゴリズムを考え、
プログラムを構築することであったが理論班の作業がなかなか進まず理論班の手伝いをしながら
iPad2 の環境を整えたりグラフを出力をした。後期の発表は iPad2 を用いたが iPad2 のタッチパ
ネル等の機能はなく、ただ表示をして見てもらうものであった。今後の課題としてはタッチパネル
等の機能をつかい、見てもらうだけではなく実際に触ってもらい言語の伝わり方の違いを体験して
もらい、興味を持ってもらうことが大切だと思う。
(※文責: 日下善博)
11.3
成果の評価
1 年間のプロジェクトを通して前期では必要な知識を学習し、後期には実際に「言語の進化」と
いうテーマについて解析を行い、その結果をシミュレーションツールで視覚化することができ、4
月に設定した大まかな目標としては達成することができた。
Group Report of 2011 SISP
- 31 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
11.3.1
iPad2 の環境設定
プロジェクトの目標の iPad2 上で動作するシミュレーションツールを作成するため、後期の最初
にシステム班は届いた iPad2 の環境設定を最初に行った。しかし iPad2 本体にファイルを転送す
るために購入した USB 端子付きアダプタが画像・映像のみに対応するものでその他ファイルを転
送することが出来ないものであったためインターネットに接続する必要に迫られた。しかし設定を
してもうまく接続出来ず、最終的に大学側に mac アドレスを登録しなければ学内から外部へ接続
することが出来ない、という事実に気づき設定が完了するまで非常に時間がかかってしまい、後期
の作業時間が大幅に削られてしまった。さらに objective-C でツールを作成しようとしたが iPad2
のアプリケーションを作成するためにはお金のかかるユーザ登録が必要で予算申請をしていなかっ
たために別の手段をとらざるを得なくなった、代用として FLASH でシミュレーションツールを作
成しようとしたが iPad2 は FLASH を再生することができなかった、など事前の iPad2 という端
末に関しての調査不足から問題が多く発生してしまった。
11.3.2
シミュレーションツール
シミュレーションツールの作成上述した理由により当初予定していた言語ではなく、Processing
を使用してのシミュレーションツール作成をすることとなった。シミュレーションツールは中間発
表時に予定していたセルオートマトンの形式で作成したが、最初のシミュレーションでは理論班の
結果とは異なるシミュレーションになってしまっていた。その後セルオートマトンの世界の状況設
定の間違いを修正したり、セルが変化するルールをより現実的な設定へと変更したりすることで、
理論班が解析した結果通りのシミュレーションを行うことが出来、さらに数式を計算しているだけ
では気づくことの出来ない、同じ言語の使用者同士が集まっていくようなクラスタ化の素となるよ
うな小さな集まり、流れのようなものを目で確認することができるものとなった。これは当初考え
ていたものではなく、シミュレーションツールを作成することによって発見できたことで、予定以
上の面白い結果が得ることができた。このクラスタ化のような現象をもっと大きなものにしようと
色々試したが、結局最終発表までにこのクラスタ化を顕著なものにすることができなかった。最終
発表の準備段階では数式以上により現実的な状況でのシミュレーションを行うことができるものが
出来たと思っていたが、最終発表時の質疑応答で「人の意思が反映されていないので現実的には思
えない」「このシミュレーションから何を得ることができるのか?」といった意見があり、当初予
定していたレベルでのシミュレーションツールの作成を行うことは出来たが、これでは目標として
いたゲーム理論を知らない人にゲーム理論について理解してもらえるようなものには仕上げること
ができなかった、と思い知らされた。
(※文責: 高野祐磨)
Group Report of 2011 SISP
- 32 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
第 12 章
12.1
アンケートの結果
中間発表
発表技術 平均評価 6.0
発表内容 平均評価 6.4
図 12.1
12.1.1
中間発表の得点分布
発表技術について
• 声を出している人と出していない人とがいて、声を出していない人が目立っていた。
• 他の発表に押されているイメージがあり、声が小さいという意見が多かった。
• 学習してきたことを理解する為の情報が少なく、難しい用語の説明を工夫すべき。
• 発表資料や原稿を見過ぎている。
12.1.2
発表内容について
• シミュレーションを行っていてよかったが、そのシミュレーションの動作が速く、どのよう
に動いているのかわからなかった。
• 全体的に説明が不十分で、これからやっていくこと、また、このプロジェクトの対象が誰な
のかが曖昧だった。
• このプロジェクトにおけるオリジナリティが何なのかわからなかった。
12.2
最終発表
発表技術 平均評価 5.6
Group Report of 2011 SISP
- 33 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
発表内容 平均評価 5.6
図 12.2 最終発表の得点分布
12.2.1
発表技術について
• スライドを見すぎていた。
• 一部の人しか声が聞こえなかった。
• スライドに工夫がなかった。
• スライドのどこを説明しているかわからなかった。
12.2.2
発表内容について
• スライドに専門用語が多かった。
• 何を伝えたいのかわからなかった。
• セルオートマトンは興味深かった。
12.3
前期と後期の比較
• 声は改善されたがまだ一部の声の出し方が足りない人がいた。
• 難しいことを簡単に放すことが課題とあげていながらまだまだ簡単に話せていないことがア
ンケートよりわかった。
• セルオートマトンでやってきたことを表すことができこのセルオートマトンでオリジナリ
ティは表わせたのではないかと思う
(※文責: 島野晃輔)
Group Report of 2011 SISP
- 34 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
第 13 章
13.1
今後の課題と展望
今後の課題
このプロジェクトは、今年が初ということもあって、これまで行ってきた活動で得られた成果
が良かったものであるのか、実際にはあまりわからない。 iPad 等の目で確認できるツールを作
ることが目標であり、作成することが出来たが、これが何を示していて、この結果から何を得るこ
とができるのか、発表会のアンケートからよくわかってもらえなかったことがわかった。そのた
め、これからの課題としては、さらに結果をわかりやすく表示することが求められる。また、iPad
上で動作させることはできたが、実際は iPad の特徴を生かしたものでなく、ただ表示させるもの
だけであったため、ノートパソコンでも良かったものだった。そのため、これからは、iPad の特
徴であるタッチパネルを生かしたものをつくり、実際に手を動かして結果を表示させるものを作製
することで、更に理解を深めてもらえるのではないかと思えた。
13.2
展望
今回は、2 つの言語があり、例えば A という国でその 2 つの言語がどのように広がっていくの
か、ということを調べたが、実際には 2 つの言語のみということはあり得ない。そのため、実際に
世界で使われている言語の数でシミュレーションを行わなければ、役立つものは得られないと考え
られる。そのためにこれからは、これらのことを踏まえ、実際に役立てることができるシステムを
作製していくことが求められる。
(※文責: 傳法一輝)
Group Report of 2011 SISP
- 35 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
第 14 章
14.1
相互評価
高野祐磨
島野晃輔
明るい性格でシステム班を引っ張り、ムードメーカーの役目も果たし、意見交換などが彼の積極性
により、とてもスムーズに進めることが出来た。
日下善博
プログラミング面における大黒柱と言える存在で、チームリーダーとして遺憾ない実力を発揮して
くれた。
傳法一輝
持ち前の英語力で中間・最終発表などの英訳や、英語で書かれたテキストを読み解く際にとても助
けてもらった。
(※文責: 高野祐磨)
14.2
傳法一輝
島野晃輔
難しい課題に直面しても、持ち前のリーダーシップで上手くグループを良い方向へ導いてくれ、ス
ムーズに活動することができた。
高野祐磨
細かい作業でもしっかりとこなし、難解な問題でも真面目に取り組んでいた。話し合いをしている
ときでも、上手く助言してくれ、助けられた。
日下善博
このグループの課題であるプログラミングにおいて、よく学びプログラムを作っていた。何度も上
手くいかずに、悩んでいた様にも思えた。だが、諦めずに最後まで取り組み、最終的には成功に導
いてくれた。
(※文責: 傳法一輝)
14.3
島野晃輔
日下善博
Group Report of 2011 SISP
- 36 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
プログラムを考える時にすごく助かった。いなかったら成果物はできていない。最終成果物は C
言語ではなく、授業では習っていない言語について独学で頑張り、幾度と無く手直しをし、時間ギ
リギリまでプログラムを調節し、すごく頑張っていたと思う。
高野祐磨
理論班から渡された数式の確かめを頑張っていたと思う。再度確かめることで正しい答えだと思え
たし、プログラムを組む際に、しっかりとしておかなければならない点だと思うので重要なことを
してもらえたと思う。また、後期のスライド作りでは、中間発表のスライドよりはいいものを作っ
てもらえたと思う。
傳法一輝
独自でイラストレーターについて学び、デザインについての知識がない中で、文字の配置や全体の
デザインを頑張っていたと思う。複雑系だけで構成されたプロジェクトメンバーで、誰も扱うこと
が出来なかったのでポスター作りではかなり助けられた。
(※文責: 島野晃輔)
14.4
日下善博
傳法一輝
プロジェクトメンバーの中で英語のスキルが一番高く、ポスターや報告書の英文で助けられた。ポ
スター作成では複雑系だけのプロジェクトにも関わらずイラストレーターを独自で学習し全体の配
置等を最後まで頑張っていた。
高野祐磨
手の空いているときは理論班の手伝いをし数式を解いていてくれたため、グラフの出力やアルゴリ
ズムを考えるとき助かった。
島野晃輔
ムードメーカーとして話し合いをするときには積極的に意見を出していた。プロジェクトをスムー
ズに進めることができた。
(※文責: 日下善博)
Group Report of 2011 SISP
- 37 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
付録 A
新規習得技術
• Adobe Illustrator CS5
ポスター制作のために利用した
• TeX
報告書作成のために利用した
• Processing
今回、プログラムは C 言語ではなく Processing を利用した
Group Report of 2011 SISP
- 38 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
付録 B
活用した講義
• 解析学 I,II
• 線形代数学 I,II
• 微分方程式
• 複素関数論
• 非線形力学
• ベクトル解析
• カオス理論
• 複雑系科学演習
Group Report of 2011 SISP
- 39 -
Group Number 1-B
A mathematical principle of evolutionary game and its simulation
参考文献
[1] Hofbauer J., K. Sigmund, 1998, Evolutionary Games and Population Dynamics, Cambridge
University Press, (竹内康博, 佐藤一憲, 宮崎倫子, 2001, 『進化ゲームと微分方程式』, 現代数
学社).
[2] Martin A. Nowak, 2006, Evolutionary Dynamics: Exploring the Equations of Life, The
President and Fellows of Harvard University Press, (竹内康博, 佐藤一憲, 巌佐庸, 中岡慎治,
2008, 『進化ゲームのダイナミクス-生命の謎を解き明かす方程式』, 共立社).
[3] 「Processing 1.0
ALPHA」, <http://tetraleaf.com/p5 reference alpha/>
Group Report of 2011 SISP
- 40 -
Group Number 1-B