確率的多段階意思決定過程を用いた ビリヤード戦略の最適化

卒業研究論文
確率的多段階意思決定過程を用いた
ビリヤード戦略の最適化
学籍番号 00D8103011K
川端 利哉
中央大学理工学部情報工学科 田口研究室
2004 年 3 月
あらまし
本研究では,ビリヤードの最適戦略を導出する.まず,プレーが行われる台を座標で表
し,手球と的球の衝突後の進む方向,進む距離,クッションの作用など,球の動きを数理
的に表現する.それにより,狙うポケットの決定や,次の状態に推移する確率を算出し,
確率的多段階意思決定を用いて最適戦略を求める.最後に,その戦略のシミュレーション
を行い,確率的多段階意思決定を用いずに求めた戦略と比較し,検証する.
キーワード:動的計画法,最適性の原理,確率的多段階意思決定
目次
第1章
はじめに ............................................................................................................ 1
第2章
ビリヤードの概要 .............................................................................................. 2
2.1 基本概念 ........................................................................................................... 2
2.2 ボーラードのルール
....................................................................................... 3
第 3 章 動的計画法 .......................................................................................................... 4
3.1 動的計画法とは
.............................................................................................. 4
3.2 多段階決定過程
.............................................................................................. 4
3.2.1 要素 ........................................................................................................... 4
3.2.2
N 段階決定過程 ........................................................................................ 5
3.3 最適性の原理 .................................................................................................... 6
3.3.1 性質 ........................................................................................................... 6
3.3.2
N 段階階決定過程での最適性の原理 ........................................................ 6
3.3.3 逐次関係と最適化 ...................................................................................... 7
3.4 確率的多段階意思決定過程 .............................................................................. 8
第 4 章 ビリヤードの数理化 .......................................................................................... 11
4.1 球の配置
4.2 角度と距離
4.3 基本分離
....................................................................................................... 11
................................................................................................... 12
....................................................................................................... 13
4.4 手球及び的球の衝突後の移動距離 .................................................................. 14
4.5 衝突後の手球の経路 ....................................................................................... 15
第5章
確率的多段階意思決定のモデル ...................................................................... 18
5.1 段階と状態 ..................................................................................................... 18
5.2 確率設計 ......................................................................................................... 19
5.2.1 ネクスト配置確率 .................................................................................... 20
5.2.2 シュート成功確率 .................................................................................... 21
5.2.3 使用する確率 ........................................................................................... 23
5.3 期待利得と決定 .............................................................................................. 23
第 6 章 シミュレーション結果 ...................................................................................... 26
6.1 最適戦略シミュレーション
........................................................................
26
6.1.1 シミュレーション準備
.........................................................................
26
6.1.2 シミュレーション結果
.........................................................................
27
6.2 戦略シミュレーション比較
........................................................................
29
6.2.1 シミュレーション結果
.........................................................................
29
第 7 章 おわりに ..........................................................................................................
31
............................................................................................................................
32
.....................................................................................................................
33
謝辞
参考文献
第1章
はじめに
ビリヤードは,国内では「遊び」のイメージが強いが,国際的にはスポーツとして位置
づけられている.57 カ国が加盟する世界ビリヤードスポーツ連合は,1998 年に国際オリン
ピック委員会(IOC)の正式承認団体に承認された.今後,オリンピックの正式種目となる
のも時間の問題であるともいわれている.
ビリヤードの起源については,今日までに明確な事は解明されていないが,14 世紀頃に
フランスで発祥したという説が最も一般的である.1850 年代(江戸時代)になると日本に
もビリヤードが上陸し,華族や将官など一部の階級で社交スポーツとして楽しまれた.街
にビリヤード場ができ,一般に広まっていったのは大正時代に入ってからのことである.
1900 年代になると,アメリカでの流行を受け,日本でも幾度かのブームを繰り返し,現在
に至る.
ビリヤードには,さまざまなゲームが存在する.その中には,相手選手と勝敗を競うの
ではなく,いかにシュートを成功させつづけ,高得点を得られるかを競うボーラードとい
うゲームがある.このゲームの特徴は,狙う的球に指定はなく,シュートなどのプレー技
術だけでなく,どの的球から狙うかという戦略が重要となる点である.同程度のプレー技
術を持ったプレーヤーでも,戦略の違いによってその得点は大きく異なり,最適な戦略を
見い出すことは非常に困難である.
本研究では,ボーラードを簡略化したゲームを題材とする.そして,確率的多段階意思
決定過程を用いてゲームの最適戦略を導出し,その戦略を検証する.
1
第2章
ビリヤードの概要
2.1
基本概念
ビリヤードは手球を撞いて,的球を台上の6ヶ所にあるポケットに落としていくゲーム
である.ミスをせずに連続してポケットするために,1ショット毎に次の球が狙いやすく
なるようなネクストをとることも重要となる.シュートを外す,もしくはファールをする
とミスとなり,そのイニングが終了となる.
ここで,本論文で用いるビリヤード用語を以下に述べる.
・手球
…
プレーヤーが撞くことが許されるただ 1 つのボール.通常は白い球である.
・的球
…
手球に対して,1 番から 15 番までの狙われる球の総称.
・撞点
…
手球を撞く狙い点(手球に回転を与えるために上下左右を撞く).
・ひねり
…
手球に左右の回転を与えること.また,その回転そのもの.撞点の変化に
よりひねりの大きさを調整する.
・押し球
…
上の撞点により,手球に積極的な前進回転を与えたショットで,ショット
された手球が基本分離角より前方へ出るアクションを起こすショット.
・引き球
…
下の撞点により,後退方向に逆回転を与えたショットで,的球に衝突した
後,逆方向または基本分離角を広げるアクションを起こすショット.
・ポケット
…
台上にある穴.または,穴にボールを落とすこと.
・ファール
…
定められたルールに対する違反行為.
・イニング
…
ミスやファールで交代するまで,続けてプレーできる期間.
・ネクスト
…
シュート後に次の的球が狙いやすいように手球の残り配置をコントロー
ルすること.または,その配置.
・ラシャ
…
・クッション
台に張られた緑色の布
…
台の内側側面に張られたゴム製の壁.または,その壁に当たって球が
跳ね返る動作のこと.
・スクラッチ
…
手球が誤ってポケットに落ちてしまうファール.
・セーフティ
…
シュートの成功を狙うのではなく,意図的に残りの配置が相手にとっ
て困難となることを狙った戦略.または,そのような戦略的意図を持
ったショット.
2
・キャノンショット
手球を連続して 2 個以上の的球に当てて,2 個目以降の的球をポ
…
ケットさせる狙い方.または,そのような狙い方をしたショット.
・コンビネーションショット
…
手球を的球に当てた後,さらにその的球を他の的球に
当て,後から当たった的球をポケットする狙い方.ま
たは,そのような狙い方をしたショット.
・バンクショット
…
的球をクッションさせてからポケットする狙い方.または,その
ような狙い方をしたショット.
・ブレークショット
2.2
…
ビリヤードのゲーム開始のショット.
題材とするゲームのルール
ビリヤードの数あるゲームの中から,本研究でモデルとするゲームを選定する.
ビリヤードのゲームの 1 つにボーラードがある.ボーラードとは,対戦相手を必要とせ
ずに,そのプレーヤーの実力を測定するための種目である.これはプロテストの必須種目
でもある. 10 個の的球を用い,そのどれから狙ってもよく,落とした球の個数が点数とな
る.そして,ボーリングの要領で点数を付けていくのだが,1回のミスで1投分の扱いと
なる.つまり,ミスをせずに 10 個の的球を落としきるとストライク,1 回ミスをして落と
しきると,スペアとなる.
このゲームの特徴をまとめると以下のようになる.
・対戦相手が不要なことより,セーフティなどの戦略選択は行われない.
・本人の能力,意思決定によってのみゲームが進む.
・任意の的球を狙ってよいので,各段階でどの球を狙うのか意思決定を行う.
以上の特徴から,題材としてボーラードに注目する.しかし,10 個の的球を用いると 10
段階の意思決定を行うことなり,計算機実験における計算時間が膨大に掛かってしまうた
め,ボーラードを基盤としたオリジナルのゲームを定義する.そのルールを以下に示す.
・ボーラード同様,任意の的球から狙うことができ,対戦相手は存在しない.
・ブレークは行わず,任意の配置を初期状態として設定し,ゲームが始まる.
・初期状態の的球は 5 個である.
また、モデルの簡略化のため,以下の条件も加える.
・シュート以外,球の衝突は起こらない.
・スクラッチは起こらない.
・フロッグは起こらない.
・ヒネリによるカーブは起こらない.
・コンビネーションショットは不可.
・キャノンショットは不可.
・バンクショットは不可.
3
第3章
動的計画法
3.1
動的計画法とは
動的計画法とは,ある目的関数を最大,または最小にする最適問題に対する手法の中で
も,特に時間的または空間的に多段階の最適問題(逐次決定問題)の最適解導出に極めて
有力な手続きを与える数理計画法の一分野であり,1950 年にベルマンによって開発された.
3.2
多段階決定過程
多段階決定過程は,いくつかの段階から成り立ち,各段階において決定がなされなくて
はならない.ある段階でなされる決定が以後の段階でなされる決定に影響するという性質
に対して,全段階後(最終段階)における目的関数を適当にするように各段階での決定を
行う規則を形成する.
3.2.1
要素
多段階決定過程の要素は,次の 5 つの要素からなる.
1)状態
:各段階における系を記述するために用いられる変数の集合であり,その要
素を状態変数という.
2)決定と政策:決定段階は多段によって行われ,各段階における決定によって,過程の目
的とするものは定まる.この決定は,各段階の状態に影響を与え,しかも
多段にわたり最終状態に影響してくる.このような各段階における決定の
系列を政策という.
3)利得
:過程の最終目的とするものの,各段における値のことで,各段階での状態
と決定との関数として定まる.
4)状態変換
:各段階での決定の結果として状態の推移法則を与える.
5)マルコフ性:動的計画法の取り扱う多段決定過程では,系の過去の履歴は,未来の決定
を定めることに何も影響を与えない.すなわち,n 段階以後の状態は n − 1
段階以前の段階における状態には関係しない.
また,上記の 1)2)3)を簡潔に表現すると,次のようにいえる.
・状態 s n =自分がどこにいるか
・決定 d n =現在何をすべきか
4
・利得 rn =どの程度うまく仕事をしているか
多段階決定過程では,1 つの段階のアウトプットの状態が,次の段階のインプットの状態と
なり,図 3.1 のように示すことができる.
dn
d n −1
sn
s n −1
s n−2
第 n − 1 段階
第 n 段階
rn
rn −1
図 3.1 段階の接続
段 の 番 号 は 通 常 降 順 に つ け る . n 段 階 に お け る 決 定 d n に よ り 状 態 sn が 状 態
s n −1 = t n (sn , d n ) に変換され,利得 Rn (s n , d n ) が得られる.
3.2.2
Sn
N 段階決定過程
Tn (s n , d n )
Tn −1 (s n −1 , d n −1 )
Dn
Dn −1
D1
第 n − 1 段階
第 1 段階
Rn −1 (s n −1 , d n −1 )
R1 (s1 , d 1 )
第 n 段階
R n (s n , d n )
S n −1
図 3.2
T1 (s1 , d1 )
S0
R 0 (s 0 )
N 段階決定過程
N 段階決定過程を考える.すなわち,システムが n 段階において,状態の集合 S n の中に
ある状態 s n を初期状態として始動する.決定の集合 Dn から適当な決定 d n ∈ Dn を選び,そ
の結果として,関数 Rn (s n , d n ) で与えられる利得を受け取り,変換 Tn に従って N − 1 段階で
のシステムの状態が定められる.すなわち,
S n −1 = Tn (s n , d n )
(3.1)
である.次に,システムは n − 1 段階に移り,決定の集合 Dn −1 から適当な決定 d n −1 ∈ Dn −1 を
選ぶ.その結果として,関数 Rn −1 (s n −1 , d n −1 ) で与えられる利得を受け取り,変換 Tn −1 に従っ
5
て n − 2 段階での状態 s n − 2 ∈ S n −1 に推移する.同様のプロセスを繰り返して,最後の 1 段階
において,決定の集合 D1 から適当な決定 d1 ∈ D1 を選び,利得 R1 (s1 , d1 ) を受け取る.そし
て,変換 T1 によってシステムは最終状態 S 0 に入り,利得 R0 (s 0 ) が定まってこの多段階決定
過程は終了する.このとき,各段階で選択する決定の系列 {d n , d n −1 , L , d1 } が政策となる.
目的関数として受け取る利得の実数値関数を最大(または最小)にする政策を最適政策と
いい, d n * , d n −1 * , L , d 1 * で表す.目的関数値はシステムの初期状態 s n と,各段階でとる決定
d n , d n −1 , L , d1 によって定められる.以上の仮定に基づき最適政策 d n * , d n −1 * , L , d 1 * を見い
出す方法が動的計画法である.次で述べる最適性の原理が柱となっている.
3.3
3.3.1
最適性の原理
性質
最適性の原理とは,任意の初期状態と決定に対して,残りの決定は最初の決定として生
じた状態に関して最適政策を取らなければならないという原理である.簡単に説明すると
図 3.3 の点 A から点 B への最適経路を考えるとき,その道が点 C を通るならば,点 C から
点 B への道の選び方は,
点 C から点 B への最適経路でなければならないということである.
点A
点B
点C
図 3.3 最適性の原理
3.3.2
N 段階決定過程での最適性の原理
最適性の原理を N 段階決定過程に当てはめると, N 段階決定過程では,その 1 段階にお
ける決定をどのように選択しても,最適解を求めるには残りの n − 1 段階において最適政策
を取らなくてはならない.
f n (s ) を,状態 s からはじめて最適政策を用いて n 段階で得られる最大利得と定義する.n
は決定過程で残っている段階の数を示す.初期段階 n = N において決定 d N を選択したとす
れば,受け取る利得は f n −1 (TN (s, d N )) となる.最適性の原理によれば,
f n (s ) = max f n −1 (TN (s, d N ))
dN
6
(3.2)
が成立する.式(3.2)は一種の再帰関係式であり, N ≥ n ≥ 2 を満足するすべての n につ
いて成立し,特に n = 1 に対しては,
f1 (s ) = max R(TN (s, d N ))
(3.3)
dN
が成立する.従って,逐次 f n (s ) を求めることができる.
3.3.3
逐次関係と最適化
最適性の原理をもとにして導いた再帰関係式(3.2),(3.3)を解く手続きを考える.今,
n 段階の決定過程で 1 段階に到達しているとすれば,それ以前の事柄にかかわらず,
R1 (s1 , d1 ) + R0 (s 0 ) = R1 (s1 , d1 ) = R1 (s1 , d1 ) + R0 (T1 (s1 , d1 ))
(3.4)
が最大になるように決定 d1 を選ばなければならない.1 段階以前に取られた決定系列が最
適でない場合でも同様に式(3.4)が最大となるような決定 d1 を選ぶ.そこで,
max[R1 (s1 , d1 ) + R0 (T1 (s1 , d1 ))] = f1 (s1 )
(3.5)
d1
を考える.関数 f1 は s1 の連続関数である.
次に 2 段階においては,
max[R2 (s 2 , d 2 ) + R1 (s1 , d1 ) + R0 (s 0 )]
d1d 2
= max[R2 (s 2 , d 2 ) + R1 (T2 (s 2 , d 2 ), d1 ) + R0 (T1 (T2 (s 2 , d 2 ), d1 ))]
d1d 2
= max ⎧⎨max[R2 (s 2 , d 2 ) + R1 (T2 (s 2 , d 2 ), d1 ) + R0 (T1 (T2 (s 2 , d 2 ), d1 ))]⎫⎬
d 2 ⎩ d1
⎭
= max ⎧⎨ R2 (s 2 , d 2 ) + max[R1 (T2 (s 2 , d 2 ), d1 ) + R0 (T1 (T2 (s 2 , d 2 ), d1 ))]⎫⎬
d2 ⎩
d1
⎭
= max[R2 (s 2 , d 2 ) + f 1 (T2 (s 2 , d 2 ))]
d2
= f 2 (s 2 )
(3.6)
となる.同様にして,3 段階に対しては,
7
max{R3 (s3 , d 3 ) + f 2 (T3 (s3 , d 3 ))} = f 3 (s3 )
(3.7)
d3
となる.よって 1 ≤ i ≤ n について,
max {Ri (s i , d i ) + Ri −1 + L + R1 + R 0 }
d i d i −1 L d 1
= max {Ri (si , d i ) + f i −1 (Ti (si , d i ))} = f i (si )
(3.8)
di
が成り立つ.よって,多段決定過程は逐次計算可能である.
3.4
確率的多段階意思決定過程
前節までは,状態変換と利得を求める関数(以下,これを利得関数と呼ぶ)が確定的な
確定的決定過程を論じた.それに対し,既知の不確実性を含む逐次決定過程で,確率変数
に対する分布が既知の場合を確率的決定過程という.確率的決定過程の特徴は,段階 i での
最適決定 d i * は状態 s i を観測して,不確実な要素がなくなったときに初めて定められる点で
ある.すなわち,一般的には決定は現在の状態に依存する.
確率的多段階意思決定過程は,多段決定過程での 3 要素,状態変換 Tn ,過程の現在の状
態 S n ,決定 d n に不確実要素を記述する確率 rn を加えて定められ, s n −1 = Tn [s n , d n , rn ] のよ
うに表される.ただし, rn の確率分布は既知とする.各段階からの利得が s i と d i によって
与えられたとしても,状態変換が現在の状態,決定,確率に依存するので,全利得関数は
初期状態と決定系列の確率的関数である.したがって,全利得関数そのものは決定系列を
評価する手段として適していない.ここで,確率的決定過程では全利得の期待値を取り,
全利得関数の期待値を最大にするような決定系列 d n * , d n − 1 * , L , d 1 * を求める.
まず, f n (s1 ) を状態 s1 からはじめて n 段階で得る最大期待利得と定義する.すると,この
最大化問題では
⎧n
⎫
f n (s1 ) = max E ⎨∑ J i [si , d i ] + J n +1 [s n +1 ]⎬
d
⎩ i =1
⎭
(3.9)
を得る.ここで,記号 E は期待値を意味する(すべての確率変数に対する分布に関して期
待値をとる)
.
確率的決定過程に対する関数再帰方程式は,最適性の原理を用いて導出できる.計画期
8
間 n の問題では,2 段階のはじめの時点で,残り期間は n − 1 段階となる. s 2 = T1 [s1 , d1 , r1 ]
を新しい出発状態として,残り n − 1 段階ある過程に対して最適政策を用いる最大期待利得
は f n −1 [Tn (s n , d n , rn )] となる.過程のはじめでは r1 はまだ未知であるが,確率変数 r1 に対す
る確率分布は既知であるので,確率変数 rn に対する確率分布を F (rn ) とすれば, n − 1 段階
での期待利得は,
∫
f n −1 [Tn (s1 , d1 , r1 )] dF (r1 )
∞
−∞
(3.10)
で与えられる. 1 段階からの利得は J 1 [s1 , d1 ]であるので,1 段階での決定が d1 で,その後,
最適政策をとったときの期待利得は,
J 1 (s1 , d1 ) + ∫
∞
−∞
f n −1 [T1 (s1 , d1 , r1 )] dF (r1 )
(3.11)
となる. n 段階の全過程で最適政策ととったとき,期待利得は d1 で始まる n 個の決定すべ
てに関し最大化させなければならない.従って,
{
f n (s1 ) = max J 1 (s1 , d1 ) + ∫
d1
∞
−∞
}
f n −1 [T1 (s1 , d1 , r1 )] dF (r1 )
(3.12)
が成り立ち,初期状態が規定されると最適決定系列 d n * , d n −1 * , L , d 1 * が逐次求められる.
{
}
ここで,期待利得 E ∑ J i [si , d i ] + J n+1 [s n+1 ] は過程の期間中一定ではないことを明示する.
n
i =1
1 段階の過程では,
⎧n
⎫
E ⎨∑ J i [si , d i ] + J n +1 [sn +1 ]⎬
⎩ i =1
⎭
= J1 [s1 , d1 ] + ∫
∞
−∞
L∫
∞
−∞
[J 2 {T [s1 , d1 , r1 ], d 2 }
+ J 3 {T [s2 , d 2 , r2 ] , d 3 }+ L
+ J n {T [sn −1 , d n −1 , rn −1 ], d n }
+ J n +1{T [sn , rn ] } ]dF (r1 ) ⋅ dF (r2 )L dF (rn )
(3.13)
である.過程の 1 段階では,決定 d1 を決める.状態 s 2 = T1 [s1 , d1 , r1 ] は,過程の出発点では
既知ではないが, 1 段階の間で r1 のある値が実際に起こっているため, 2 段階のはじめで
9
は s 2 は既知となる.従って,2 段階のはじめでは次のようになる.
⎧n
⎫
E ⎨∑ J i [si , d i ] + J n +1 [sn +1 ]⎬
⎩ i =1
⎭
= J1 [s1 , d1 ] + J 2 [s2 , d 2 ]
+∫
∞
−∞
L∫
∞
−∞
[J 3 {T [s2 , d 2 , r2 ] , d3 }+ L
+ J n {T [sn −1 , d n −1 , rn −1 ] , d n }
+ J n +1{T [sn , rn ]}] dF (r2 ) ⋅ dF (r3 )L dF (rn )
(3.14)
この期待利得は,(3.13)式で与えられた期待利得とは一般に異なる.
過程の k 番目の段階のはじめでは,決定 d1 , d 2 , L , d k −1 の値と,状態 s1 , s 2 , L , s k の値はす
べて既知であるが,確率 rk , rk +1 , L , rn の値は未知である.従って, k 番目の段階のはじめで
は,
⎫
⎧n
E ⎨∑ J i [si , d i ] + J n +1 [sn +1 ]⎬
⎭
⎩ i =1
= J1 [s1 , d1 ] + J 2 [s2 , d 2 ] + L + J k [sk , d k ]
[J k +1{T [sk , d k , rk ] , d k +1}+ L
+ J n {T [sn −1 , d n −1 , rn −1 ] , d n }
+ J n +1{T [sn , rn ] }]dF (rk ) ⋅ dF (rk +1 )L dF (rn )
+∫
∞
−∞
L∫
∞
−∞
(3.15)
n
となる. k 番目の期間では期待利得 E ⎧⎨∑ J i [si , d i ] + J n +1 [sn +1 ]⎫⎬ は状態 sk と決定 d k , d k +1 , L , d n の
⎩i =1
⎭
確定的関数である.
本研究では,この確率的多段階意思決定過程を用い,問題を解析する.
10
第4章
ビリヤードの数理化
確率的多段階意思決定を行う準備として,ビリヤードを数理的に解析する.しかし,台
上の球のアクションは非常に繊細なものであり,気温,湿度,埃の影響,ラシャの種類や
状態など,あらゆる環境要素において変化する.公式世界大会などにおいては,特定の新
品のラシャの使用を徹底し,台に特殊なヒーターを組み込むことで気温や湿度などの外気
の影響を緩和させている.このような配慮により,環境要素による変化は無視できるもの
とし,本研究では,基本的な物理的理論に基づき解析を行う.
4.1
球の配置
y
4
(3,3)
(7,3)
(1,1)
(5,1)
4
8
x
図 4.1 4×2 メッシュの場合の座標と配置例
台上の球の動きを解析するにあたり,台をメッシュ状に区切り,その1メッシュの中心
に球は配置されるものと考え,それを座標的に扱う.
ビリヤード台のサイズは,2540 ㎜ × 1270 ㎜であり, 2:1 の長方形である.一般化する
と,n × m メッシュ( n = 2 m )の場合,台上の球の動ける範囲を,0 ≤ x ≤ 2 n ,0 ≤ y ≤ 2m
となるように座標をとる.つまり,1 つのメッシュに 1 つの球のみ配置可能と仮定すると,
扱える球の個数は,
11
2×1 メッシュのとき
2個
4×2 メッシュのとき
8個
6×3 メッシュのとき
18 個
M
n × m メッシュのとき
nm 個
となる.図 4.1 に 4×2 メッシュの場合の具体例を示す.
4.2
角度と距離
以後の解析にさしあたり,手球,的球,ポケットの配置関係より,それぞれの角度と距
離の算出方法を記す.前節で論じたとおり,配置を座標的に扱い算出する.
手球,的球,ポケットの配置をそれぞれ( x1 , y1 ),( x 2 , y 2 ),( x3 , y 3 )とし,x 軸に対
して,それぞれ手球と的球を結んだ角度,的球とポケットを結んだ角度を θ a , θ b とする.
また,シュートを狙う際に,手玉の進路に対する的球の進む角度を θ とする.手球と的球
を結んだ距離,的球とポケットを結んだ距離をそれぞれ d a , d b とする.
y
θ
( x3 , y 3 )
( x2 , y 2 )
θb
θa
( x1 , y1 )
x
図 4.2 座標と角度の関係
図 4.2 より,それぞれの距離は,
da =
(x 2 − x1 )2 + ( y 2 − y1 )2
db =
( x 3 − x 2 )2 + ( y 3 − y 2 )2
12
(4.1)
また,それぞれの角度は,
⎛ x2
θ a = arccos ⎜⎜
⎝
− x1
da
⎞
⎟⎟ ,
⎠
⎛ x3 − x 2 ⎞
⎟⎟
⎝ db ⎠
θ b = arccos ⎜⎜
(4.2)
となり,シュートを狙う際に,手球の進路に対する的球の進む角度 θ は,
θ = θb −θa
(4.3)
と算出できる.
また,狙うポケットを決定する際には,任意の手球と的球,それに 6 箇所あるポケット
の位置関係から,式(4.3)で算出する θ が最小となるポケットを選択する.
4.3
基本分離
下の図 4.3 に示すように,手球と的球が衝突した後,その位置関係に応じて手球は進む向
きを変え,的球は衝突による力で動き出す.その際の,手球の進む向きを表現する.
w
u
β
α :衝突後の手球の進路と垂直線のなす方向
β :衝突後の的球の進路と垂直線のなす方向
m :球の質量(手球と的球は同質量)
α
v :衝突前の手球の速度
u :衝突後の手球の速度
衝突
w :衝突後の的球の速度
v
図 4.3 衝突後の分離
衝突前と衝突後のエネルギー保存則,また,垂直方向,及び水平方向の運動量保存則より,
以下の 3 式を得る.
1 2 1
1
mv = mu 2 + mw 2
2
2
2
mv = mu ⋅ cos α + mw ⋅ cos β
13
(4.4)
(4.5)
mu ⋅ sin α = mw ⋅ sin β
(4.6)
ここで,式(4.4),(4.5),(4.6)を簡略化し,さらに式(4,5),(4.6)の両辺を 2 乗す
ると,以下の 3 式を得る.
v 2 = u 2 + w2
v 2 = u 2 ⋅ cos 2 α + 2uw ⋅ cos α ⋅ cos β + w 2 ⋅ cos 2 β
0 = u 2 ⋅ sin 2 α + 2uw ⋅ sin α ⋅ sin β + w 2 ⋅ sin 2 β
(4.4)′
(4.5)′
(4.6)′
さらに,(4.5)′,(4.6)′式を足し合わせると,
v 2 = u 2 + w 2 + 2uw(cos α ⋅ cos β − sin α ⋅ sin β )
(4.7)
となり,この(4.7)式と(4.4)′式を比較することにより,
2uw(cos α ⋅ cos β − sin α ⋅ sin β ) = 0
2uw ⋅ cos(α + β ) = 0
∴α + β =
(4.8)
π
2
しかがって,上式より手球と的球の分離角は 90°であるといえる.
しかし,実際には,手球に上下の回転を加えるようにショットすることで,ラシャとの
摩擦の兼ね合いで,この分離角は変化する.つまり,手球が無回転の状態で的球に衝突し
たときに的球の進む向きに対して 90°に分離するといえる.これを,手球の基本分離角と
定義し,以降の解析に活用する.
4.4
手球及び的球の衝突後の移動距離
d2
l
θ
d
d1
d :手球が進む距離(撞く強さに依存)
d 1 :手球が的球と衝突するまでの距離
d 2 :手球が衝突地点から本来進むはずの距離
l :手球が衝突地点から実際進む距離
m :的球が衝突地点から進む距離
θ:的球が進む角度(3.2.2 節より算出)
図 4.4 衝突後の移動距離
14
図 4.4 より,以下の 2 式が得られる.
d = d1 + d 2
(4.9)
M = d 2 sinθ
以上より,衝突後の手球の移動距離は,
l = (d − d1 )sinθ
(4.10)
であり,同様に,衝突後の的球の移動距離は,
m = (d − d1 ) cosθ
(4.11)
と求めることができる.
4.5
衝突後の手球の経路
まず,クッションがないと仮定して,衝突後の手球の移動距離 l と分離した角度 θ から,
どの位置まで進むかを考える.的球と衝突した点,つまり狙った的球の座標を A( x 2 , y 2 ),
手球が移動後に停止する場所の座標を B( X , Y )すると,
X = l ⋅ cosθ + x 2
(4.12)
Y = l ⋅ sin θ + y 2
となる.
ここで,n × m メッシュのモデルにおいて,球の配置可能範囲は 0 ≤ x ≤ 2n ,0 ≤ y ≤ 2m
なので, X < 0, X > 2n , Y < 0, Y > 2m の場合,クッションの作用を考慮しなければ
ならない.つまり,クッションは x =0, x = 2n , y =0, y = 2m の 4 箇所に存在する.ここ
で,便宜上, N = 2n , M = 2m とする.そして,それぞれの場合に分けて考察する.
まず, Y > M のときを考える.図 4.5 のように,手球の経路上かつ, y = M の点を C
( xc , y c )とし,線分 AB の距離を r とする.斜線部分の三角形の比より,
Y − y2 : M − y2 = l : r
r=
l ⋅ (M − y 2 )
Y − y2
(4.13)
15
つまり,クッションからの跳ね返りの距離 l ′ は
l′ = l − r =
l (Y − M )
Y − y2
(4.14)
B( X , Y )
l
y
2m
C( xc , yc )
r
θ
A( x 2 , y 2 )
D ( xd , y d )
2n
x
図 4.5 クッションの作用
となる.また,式(4.5)より,点 C の座標が求められる.
x d = r ⋅ cos θ + x 2
yd = M
(4.15)
ここで,左右のひねりを考慮しない場合,クッションでは入射角=反射角の関係が成り立
つ.つまり,反射後の進行方向 θ ′ は
θ ′ = −θ
(4.16)
となる.さらに,ひねりを考慮するならば,ひねりによる効果(角度の広がり)を δ とす
ると,反射後の進行方向 θ ′′ は単純に和で求めることができ
θ ′′ = −θ + δ = θ ′ + δ
となるので,式(4.6),
(4.7),(4.9)より,反射後に停止する配置 D(x d , y d ) は
16
(4.17)
x d = l ′ cos θ ′′ + xc
y d = l ′ sin θ ′′ + y c
(4.18)
と導くことができる.
同様に, Y < 0 にときは,
r=
− l ⋅ y2
Y − y2
l′ = l − r =
(4.13)′
lY
Y − y2
xc = r ⋅ cosθ + x2
yc = 0
θ ′′ = −θ + δ = θ ′ + δ
(4.14)′
(4.15)′
(4.17)′
となるので,これらを式(4.10)に代入すると,反射後の停止は位置 D を求めることがで
きる.
続いて, X > N のときは,
r=
l ⋅ ( N − x2 )
X − x2
l′ = l − r =
l(X − N )
X − x2
xc = N
yc = r ⋅ cosθ + x2
θ ′′ = −θ + δ = θ ′ + δ
これらの式を,また同様に, X < 0 のときも,
r=
− l ⋅ x2
X − x2
l′ = l − r =
lX
X − x2
xc = 0
yc = r ⋅ cosθ + x2
θ ′′ = −θ + δ = θ ′ + δ
17
以上の式を得る.式(4.10)に代入することで,反射後に停止する配置 D を決定する.
ただし,この配置 D(x d , y d ) が配置可能範囲である 0 ≤ x ≤ 2n , 0 ≤ y ≤ 2m を満たさない
ときは,同じ処理を繰り返す.
18
第5章
確率的多段階意思決定モデル
4 章までに論じた手法をもとに,確率的多段階意思決定モデルを作成する.ここで,モデ
ルの作成にあたり,必要な要素を以下に整理する.
n =シュート選択の回数
状態 s n =現在の配置の状態
決定 d n =どのような戦略をとるか,どの球を狙うか
確率 rn =次の状態の配置に推移する確率
期待利得 J n =その時点での利得の期待値
5.1
段階と状態
ブレーク後の配置を状態 s0 とし,1 段階の決定を行うと,状態 s1 に移る.つまり,シュ
ートがすべて成功するという仮定のもとで,的球がひとつ減るごとに状態数は1ずつ増加
する.初期状態において的球が k 個の過程では,k 段階過程となり,状態は 0 から k までと
なる.つまり,最終的に手球 1 個だけが台上に残る状態が状態 sn となる.
具体例として,的球 5 個のゲームにおける各段状態の球の個数を表 5.1 に示す.
表 5.1 的球 5 個のゲームにおける各状態の球の個数
状態
s0
s1
s2
s3
s4
s5
手球数
1
1
1
1
1
1
的球数
5
4
3
2
1
0
前述したとおり,台をメッシュで区切り,球の配置を行う.その際,現実感を追及する
ためにメッシュを小さく分けることは困難である.なぜなら,確率的多段階意思決定過程
では各ノード毎に再帰的に計算を繰り返すことに加え,本モデルでは,各状態毎に飛躍的
にノード数が増加するからである.また,いかにして計算量を低減させるかも重要となる.
18
a × b メッシュで,各状態におけるノード数は,その状態での配置の数を表す(前章まで
は n × m メッシュと表記してきたが,記号の混乱を避けるため本章では a × b メッシュと表
記する).球の個数を m とすると,全 n 段階過程の状態 s k では, m = n − k +1 個の球が存在
している.
ここで,計算量を低減させるために,ノード数を減らすことを考慮し,以下の 4 通りの
方法の仮定し,配置数,つまり,ノード数を考え,本研究で用いる方法を決定する.
(A):それぞれの球の配置が全メッシュ数 ab 通り考えられることより,配置は
(ab )m 通り
(B):複数の的球を区別しないものとすると,配置は ab ⋅
m −1
∑
i =1
ab
C i 通り
(C):複数の的球を区別せず,それぞれの的球が同じメッシュに存在しない場合,配
置は ab× ab C m −1 通り
(D):複数の的球を区別せず,すべての球が同じメッシュに存在しない場合,配置は
ab C m 通り
本研究で題材としたゲームでは,どの的球を狙ってもよいので,的球を区別する必要がな
い.つまり,方法(A)では,必要以上のノード数を計算することとなる.また,
(C)のよ
うに,手球と的球が同じメッシュに存在することを許さないと,ネクストを決定する際に
支障が生じる.以上より,本研究のモデルに最適なノード数は方法(B),(C)のどちらか
であるといえる.ここで,方法(B),
(C)のノード数を比較すると,具体例を示した表 5.2
からも明らかなように,方法(B)よりも方法(C)方が配置の組み合わせが少ないので,
このモデルでは方法(C)を採用する.
表 5.2 3×6 メッシュ,的球 5 個のゲームにおける各状態のノード数の比較
状態
5.2
s0
s1
s2
s3
s4
s5
ノード数(A)
34,012,224
1,889,568
104,976
5,832
324
18
ノード数(B)
227,070
72,846
17,766
3,078
324
18
ノード数(C)
154,224
55,080
14,688
2,754
324
18
ノード数(D)
111,384
42,840
12,240
2,448
306
18
確率設計
本節では,確率的多段階決定過程で用いる確率 rn を設計する.それにさしあたり,以下
の 2 つの確率を定義する.
19
・ N :ネクスト配置確率
・ S :シュート成功確率
5.2.1
ネクスト配置確率
ネックスト配置確率は,状態 s k から状態 s k +1 に推移するとき,状態 s k における任意の的
球を狙い,その手球が状態 s k +1 の任意の位置に移動する確率を表す.4.5 節の「衝突後の手
球の経路」を用いて算出する.
( x3 , y 3 )
y
( x2 , y 2 )
( x1 , y1 )
x
図 5.1 ネクスト配置確率
算出方法を以下に示す.
・任意の的球を狙う際に,強さ(手球が進む距離)を 1 ずつ増加させる.
その際,強さの最小値を,的球がポケットに届く最小の強さとし,最大値を,台の
長辺 2 往復分の強さ( a × b メッシュのモデルでは 8a )とする.
・シュート成功後に手球が止まった位置のメッシュ毎にコストをカウントする.
コストは,
[強さの最大値−そのときの強さ]とする.これは,強さによるシュート,
もしくはネクストの難度を考慮するためである.
・全メッシュに対するコストの総和より,各メッシュの確率を算出する.
また,状態 s k において,複数の的球が存在するときには,それぞれの的球についてネク
スト配置確率を導出する.
ここで,6×3 メッシュで図 5.2 のように配置番号を付け,それに対応した手球と的球の
位置関係からネクスト配置確率を算出した結果の一部を図 5.3 に示す.
20
y
6
⑫
⑬
⑭
⑮
⑯
⑰
⑥
⑦
⑧
⑨
⑩
⑪
⓪
①
②
③
④
⑤
12
6
x
図 5.2 6×3 メッシュでの配置番号
手玉=3
的球=8
手球=4
的球=0
0
0 0.0987 0.6051
0
0
0
0
0
0
0
0
0 0.2115
0
0.1916
0 0.0014 0.1269
0
0 0.0654 0.0192
0.0513
0
手球=9
的球=3
0.051 0.018
0.042
手球=6
的球=12
0.17 0.1484 0.0189 0.0405
0
0
0 0.0621
0 0.1053 0.0837
0 0.091 0.172
0.02 0.006 0.079 0.069 0.115
0 0.055 0.087 0.069 0.127
0
手球=11
的球=13
0
0 0.0545 0.1111
0.0061 0.0444 0.1152 0.0424 0.0444 0.0788
0 0.0182 0.0747 0.1475 0.0909
0
手球=9
的球=0
手球=8
的球=3
0
0.0444 0.1273
0 0.0897 0.2872
0
0
0
0 0.1026 0.1359 0.1923
0
0
0.2598
0 0.0038 0.1885
0
0
0.0963
0
手球=12
的球=6
0 0.2476 0.1646
0
0
0
0
0 0.1207
0
0
0
0
0 0.0854 0.0256
0
0
0
0
0
0 0.2027
0
0 0.0315
0
手球=16
的球=7
0
0.473
0
0
0
0
0
0
0
0
0
0
0
0.527
0
0
0
0
0 0.2625
0
0
0
0
0
0
0
0
0
0
0 0.0399 0.2159 0.2016 0.1506 0.1296
0.401∼1.000
手球配置
0.101∼0.400
的球配置
0.001∼0.100
21
0.512
0
0 0.1486 0.1051
0
0
図 5.3 ネクスト配置確率の実行例
5.2.2
シュート成功確率
その名の通り,ある的球を狙ったときに狙ったポケットにシュートが成功する確率であ
る.しかし,現実のシュート成功率というものは当然プレーヤーの能力によって異なるた
め,本研究では仮想のプレーヤーを設定し,それぞれの配置における距離と角度の関係か
らそのシュート成功確率を各プレーヤーに与える.また,シュート成功確率を導出する際
に用いる距離と角度の評価の値を簡易度と定義する.
ここで指す距離とは,手球と的球を結ぶ距離と的球とポケットを結ぶ距離の和であり,
4.2 節でいう d a + d b にあたる.また,その簡易度は台の長辺+短辺の長さをシュート可能な
最大距離とし,それ以上の距離のときは簡易度を 0 とする.
一方,角度は,シュートを狙う際に,手球の進路に対する的球の進む角度のことであり,
4.2 節でいう θ にあたる.ここで,手球の進路に対する的球の進む角度が 90°以上になる
ことは物理的に存在し得ないことから 90°以上の角度は簡易度を 0 とする.
これら 2 つの指標に表 5.3 のように簡易度を割りあてる.ただし,距離の簡易度は, a ×
b メッシュモデルのときの値である.
表 5.3 簡易度との対応
簡易度
0
1
2
3
4
5
6
7
8
9
距離
>6.0 b
>5.7 b
>5.4 b
>5.1 b
>4.8 b
>4.5 b
>4.2 b
>3.9 b
>3.6 b
>3.3 b
角度[度] >90.0
>85.5
>81.0
>76.5
>72.0
>67.5
>63.0
>58.5
>54.0
>49.5
10
11
12
13
14
15
16
17
18
19
20
>3.0 b
>2.7 b
>2.4 b
>2.1 b
>1.8 b
>1.5 b
>1.2 b
>0.9 b
>0.6 b
>0.3 b
>0.0 b .
>45.0
>40.5
>36.0
>31.5
>27.0
>22.5
>18.0
>13.5
> 9.0
>4.5
>0.0
ここで,角度の簡易度に着目すると,任意の配置において最適なポケットを選択したと
きに,その多くは角度が 45°以下になる.例えば,3×6 メッシュにおけるすべての配置で
は,全体の 89.6%を占める.このことから,角度の簡易度による差は生じにくいことがわ
かる.そこで,距離の簡易度に 2 倍の重みを付け,それと角度の簡易度との和をとること
によって,シュート成功確率を導く.
ただし,距離と角度のうち,どちらか一方でも簡易度が 0 の場合は,そのシュートは物
理的に成立しないものとみなし,成功確率を 0 とする.
表 5.4 シュート成功確率と簡易度
シュート成功確率
1.0
0.9
0.8
22
0.7
0.6
0.5
0.4
0.3
0.2
0.1
簡易度(距離+角度)
5.2.3
>54
>48
>42
>36
>30
>24
>18
>12
>6
>0
使用する確率
以上の 2 つの確率を用いて,確率的多段階決定過程で用いる確率 rn を導出する.前述し
たように,確率 rn とは状態 s n−1 から状態 s n に推移する確率である.つまり,状態 s n−1 におい
て任意の的球を狙い,そのシュートを成功させ,状態 s n のどこにネクストが配置されるか
という確率である.つまり,ネクスト配置確率 N とシュート成功確率 S は互いに独立あり,
確率 rn は
rn = N × S
′
rn = N ′ × (1 − S )
シュートが成功した場合
シュートが失敗した場合
となる.ここで N ′ とは,シュート失敗した場合のネクスト配置確率であり,手球のネクス
ト配置だけからでなく,外れた的球が新たにどこに配置されるかという観点から確率を導
出するものである.ただし,本研究のモデルには r ′ を用いる過程,つまり,シュートが失
敗する過程は省略する.
5.3
期待利得と決定
まず,以下の記号を再定義する.
S n :状態
Dn :決定
J n :利得
Rn :確率
Tn :状態変換
s ni :配置を表す状態 S n の要素( s ni ∈ S n )
u ki :状態 s ki から n 段階までの最大期待利得
rn ( j , i )[X ] :的球 X を狙い,状態 s ni から状態 s n +1 j に推移する確率( rn ( j , i ) ∈ Rn )
確率的多段階意思決定過程において,状態 S1 からはじめて n 段階で得る最大期待利得は
{
f n (S 0 ) = max J 0 (S 0 , D0 ) + ∫
d1
∞
−∞
}
f n −1 [T0 (S 0 , D0 , R0 )]dF (R0 )
と表される.また,最終的な目的は,各段階での利得の和
23
(5.1)
n
∑ J [S , D ]
i =1
i
i
(5.2)
i
の期待値を最大にするような決定系列 Dn* , Dn*−1 , L , D1* を求めることである. ここで,本モデ
ルに確率的多段階意思決定を適用した場合を以下に示す.
g (sk , di ) を決定による利得とし,r (s k → s k +1 , d i ) を,s k において決定 d i を用い,s k +1
に移る確率とすると,状態 sk における最大期待利得は
max {∑ u s
d i ∈D ( s k
)
k +1
⋅ r (sk → sk +1 , d i ) + g (sk , d i )}
(5.3)
と表わされる.これを全過程行うことで,最適戦略を表す決定系列 Dn* , Dn*−1 , L , D1* を導出す
る.ただし, g
(sk , di ) 以下に,この過程を段階ごとに示す.ここで,ネットワークを作成
するのにあたり,3×6 メッシュ,的球 5 個のモデルでは,状態 s3 ,状態 s 2 ,状態 s1 ,状態
s 0 において,ノード数がそれぞれ 18,324,2754,14688 となり非常に大規模なネットワ
ークとなる.そのため,状態 s3 ,状態 s 2 ,状態 s1 ,状態 s 0 において,ノード数がそれぞれ
2, 3, 4, 5 である,本研究で用いるネットワークと類似の簡易ネットワークを用いて説
明する.この簡易ネットワークを図 5.4 に示す,
初期状態として,状態 S 3 の最大期待利得 u 4 d ( d = {1,2} )は,状態 S 3 が最後に手球だけ
残っている状態を表しているので,ノード番号 d に関わらず u 4 d = 1 とあらかじめ設定する.
次に,状態 S 2 の最大期待利得 u 3c( c = {1,2,3} ) を導出する 3 段階の過程を追う.状態 S 2
は,台上に手球が 1 個,的球 1 個の状態である.したがって,どの的球を狙うかという戦
略は一意に決まるため,各ノードにおける期待利得は,
u 3c = u 41 ⋅ r3 (1, c ) + u 42 ⋅ r3 (2, c ) + 1
c = {1,2,3}
となり,決定 D3 が定まる.
つづいて,2 段階の過程を追う.状態 S1 は,台上に手球が 1 個,的球が 2 個の状態であ
る.ここでは,的球が 2 個あることより,どの的球を狙うかという戦略は 2 通り存在する.
この場合,2 つの的球をそれぞれ A,B とすると,的球 A を狙ったときの期待利得 u 2b [ A]
( b = {1,2,3,4} )と,的球 B を狙ったときの期待利得 u 2 b [B ] ( b = {1,2,3,4} )のうち,より
大きい方がその状態 S1 の期待利得となる.つまり,各ノードにおける期待利得は以下のよ
うになる.
u 2b = max{u 31 ⋅ r2 (1, b )[ A] + u 32 ⋅ r2 (2, b )[ A] + u 33 ⋅ r2 (3, b )[ A] + 1,
u 31 ⋅ r2 (1, b )[B ] + u 32 ⋅ r2 (2, b )[B ] + u 33 ⋅ r2 (3, b )[B ] + 1}
24
b = {1,2,3,4}
これにより,決定 D2 が定まる.
そして,1 段階は,的球が 3 個の状態なので,戦略は 2 通り存在する.この場合も同様に,
3 つの的球をそれぞれ A,B,C とすると,的球 A を狙ったときの期待利得 u1a [A] ,的球 B
を狙ったときの期待利得 u1a [B ] ,的球 C を狙ったときの期待利得 u1a [C ] のうちで最大とな
る期待値が,状態 S 0 の期待利得となる.ただし,状態 S 0 は現実での初期状態,つまりブレ
ーク後の配置にあたるので,その配置 s 0 a は人為的に決める.この s 0 a における期待利得,
つまりは,全段階における最大期待利得は,
u1a = max{u21 ⋅ r1 (1, a )[A] + u22 ⋅ r1 (2, a )[A] + u23 ⋅ r1 (3, a )[ A] + u24 ⋅ r1 (4, a )[A] + 1,
u21 ⋅ r1 (1, a )[B ] + u22 ⋅ r1 (2, a )[B ] + u23 ⋅ r1 (3, a )[B ] + u24 ⋅ r1 (4, a )[B ] + 1,
u21 ⋅ r1 (1, a )[C ] + u22 ⋅ r1 (2, a )[C ] + u23 ⋅ r1 (3, a )[C ] + u24 ⋅ r1 (4, a )[C ] + 1}
となる.そして,同様に決定 D1 が定まる.
以上より,決定系列 Dn* , Dn*−1 , L , D1* を求めることができる.
s 01
s11
s 21
s 02
s31
s12
s 22
s 03
s13
s32
s 04
s 23
s14
s 05
第 3 段階
第 2 段階
図 5.4 簡易ネットワーク
25
第 1 段階
26
第6章
シミュレーション実験
6.1
最適戦略シミュレーション
6.1.1
シミュレーション準備
第 5 章で導出した決定系列 Dn* , Dn*−1 ,L, D1* より,任意の状態で,最適な戦略をとるにはど
の球を狙えばよいのかがわかる.ここで,実際にゲームのシミュレーションを行う.ただ
し,確率的多段階意思決定によって導出される決定は,狙う的球の決定であって,次の状
態,つまり,次の配置を一意に決定することはできない.
そこで,以下のようにシミュレートする.
(ⅰ)確率的多段階意思決定によって導出された決定系列より,各状態における狙う
球を決定する.
(ⅱ)決定された的球をシュートし,手球が次の状態へ移るとき,推移される場所は
確率的に決まる.そこで,この推移を乱数を用いてランダムに決定する.
ここで,(ⅱ)について,より詳細に述べる.
1
CI
C I −1
M
C4
r に対する
比較対象
C1
C0
図 6.1
r
C3
C2
0
Ci と乱数 r の比較
状態 s k における手球と狙う的球の配置は確定されている.その的球をシュートし,状態
s k +1 に推移する確率は第 4 章で述べたネクスト配置確率 N である.ここで,すべての状態に
26
対し,それぞれの手球と的球の位置関係に対する確率 N の和は ∑ N n =1 となる.状態 s k の
ノード番号をj,状態 s k +1 のノード番号を i ,そのノードの総数を I としたとき,状態 s k の
個々の状態は s k ( j ) ,状態 s k の個々の状態は s k +1 (i ) と表す.そして,状態 s k ( j ) から状態 s k +1 (i )
に推移するときの確率 N を N k (i ) とするとき,式(6.1)
,(6.2)となる Ci を定義する.
Ci =
CI =
i
∑ N k (n ) = Ci −1 + N k (i )
(6.1)
n =1
I
∑ N k (n ) = 1
(6.2)
n=1
ここで,乱数 r を 0 ≤ r ≤ 1 の範囲で発生させる.そして, C 0 から順に C1 , C 2 ,…, C I を乱数
の値 r と大小比較をして, Ci ≥ r となる状態 s k +1 (i ) に推移する.ここで,図 6.1 に大小比較
のイメージを示す.
6.1.2
シミュレーション結果
3×6 メッシュで,初期状態において的球を 5 個用いた場合のシミュレーションを行う.
以下の図 6.2に,同じ初期状態における戦略の実行例を示す.
戦略 A
戦略 B
(a)状態 0
(b)状態 0
(a)状態 1
(b)状態 1
27
(a)状態 2
(b)状態 2
(a)状態 3
(b)状態 3
(a)状態 4
(b)状態 4
(a)状態 5
(b)状態 5
図 6.2 シミュレーションによる戦略の例
28
決定された的球をシュートし手球が次の状態へ移るとき,推移される場所は確率的に決ま
るので,当然,図 6.2 のように初期配置が同じでも戦略は幾通りも存在する.
6.2
戦略シミュレーション比較
以下,確率的多段階意思決定を用いたときの戦略を,適用戦略と呼び,確率的多段階意
思決定は用いずに,狙う的球を現在の配置のみにおいてシュート成功率が最大となる球を
選択する選択を,非適用戦略と呼ぶ.本シミュレーションではこの 2 つの戦略を,すべて
の的球を落としきるまでに,ミスをした回数を指標とし比較する.
シミュレーション方法を以下に示す.
1.
各戦略により導出した決定系列より,各状態における狙う球を決定する.
2.
シュート成功確率を,角度と距離をパラメータとし,設定する.そして,乱数を用い
て決定する.
3.
決定された的球が次の状態へ移るとき,推移される場所は確率的に決まる.そこで,
この推移を乱数を用いてランダムに決定する.
この手法で適応戦略,および非適応戦略において,同配置で 1000 回行う.
6.2.1
シミュレーション結果
350
300
頻度[回]
250
200
適用戦略
非適用戦略
150
100
50
0
0
1
2
3
4
5
6
失敗[回]
7
8
9
図 6.3 適応戦略と非適応戦略の失敗回数の比較
29
10
表 6.1 適用戦略と非適用戦略の統計量比較
適用
非適用
平均
1.67
2.09
標準偏差
1.56
1.72
標本数
1000
1000
図 6.3 および表 6.1 より,適用戦略と非適用戦略とで,以下の特徴がわかる.
ⅰ)標準偏差は適用戦略のほうが小さい.
ⅱ)失敗回数を見ると,0 回,1 回のときは適応戦略の方が多く,それ以上失敗すると
きは非適応戦略の方が多い.
ⅲ)平均失敗回数は非適用戦略の方が大きい.
以上より,適用戦略は非適用戦略に比べて値にばらつきが少なく,安定性が高いことがわ
かる.これは,ネクスト配置は確率的に推移しても,確率的多段階意思決定過程において
現状以降の期待利得が最大となる的球を選択しているため,後の過程で著しくシュート率
の低い的球を狙わなくてはならない状態にはなりにくいからである.そのため,たとえ非
適用戦略の方がひとつの段階だけで見たときのシュート成功確率が高くても,全段階を通
してみると,適用戦略の方が高いシュート成功確率をとることができる.つまり,適用戦
略は非適用戦略より優れた戦略であるといえる.
30
第7章
おわりに
本研究では,ビリヤードの最適戦略を確率的多段階意思決定過程によって導出した.こ
の方法では現状以降の期待利得を考慮するため,ある状態だけを見るとシュート成功率が
最大となる戦略を必ず選択するわけではないが,その後の過程では著しく成功率の低い戦
略を選ぶことなく,安定した結果が得られた.そして,過程全体を通してみると,現在の
状態だけからシュート成功確率が最大の戦略をとったときよりも,高い確率で過程を終え
た.
今後の課題として,シュートが失敗したときのパスも考慮したモデルを作成し,検証す
る必要がある.これを実現することで,より正確なシミュレーションが行えるだけでなく,
ボーラードのように得点を導出することも可能となる.また,より現実感を追求するため
に,2 章で述べた,簡略化のために省いた要素を,モデルに組み込むこと,並びに,アルゴ
リズムを改良し,より細かいメッシュでも対応できるモデルを作る必要がある.
31
謝辞
本研究を進めるにあたり、多くのご指導とご助言をいただきました中央大学理工学部情報
工学科の田口東教授に心から感謝の意を表します。また、多くのご助言とご協力をいたが
きました田口研究室の皆様に深く感謝します。
32
参考文献
[1] 富田栄(編者),田畑吉雄(著者)他:入門 OR セミナー,日本数学社,京都,1981.
[2] 尾形克彦:ダイナミック・プログラミング,培風館,東京,1973.
[3] 杉山昌平:動的計画法,日科技連出版社,東京,1976.
[4] 東口敏郎(編者):CUE’S
EXTRA,BAB ジャパン,東京,2001.
33