JAIST Repository
https://dspace.jaist.ac.jp/

Title

花札のこいこいにおける方策勾配法とNeural Fitted Q
Iteration の適用

Author(s)佐藤, 直之; 池田, 心Citation

ゲームプログラミングワークショップ2017論文集,
2017: 64‑71

Issue Date

2017‑11‑03

Type

Conference Paper

Text version

publisher

URL

http://hdl.handle.net/10119/16089

Rights社団法人 情報処理学会, 佐藤直之，池田心, ゲーム
プログラミングワークショップ2017論文集, 2017,
pp.64‑71. ここに掲載した著作物の利用に関する注意: 本著作物の著作権は（社）情報処理学会に帰属します。本著作物は著作権者である情報処理学会の許可のもとに掲載するものです。ご利用に当たっては「著作権法」ならびに「情報処理学会倫理綱領」に従うことをお願いいたします。 Notice for the use of thismaterial: The copyright of this material isretained by the Information Processing Society ofJapan (IPSJ). This material is published on thisweb site with the agreement of the author (s) andthe IPSJ. Please be complied with Copyright Law
of Japan and the Code of Ethics of the IPSJ if
any users wish to reproduce, make derivative
work, distribute or make available to the public
any part or whole thereof. All Rights Reserved,
Copyright (C) Information Processing Society ofJapan.

Description

Japan Advanced Institute of Science and Technology

The 22nd Game Programming Workshop 2017

花札のこいこいにおける方策勾配法とNeural Fitted Q Iteration の適用
佐藤 直之1,a)

池田 心1,b)

概要：花札の「こいこい」ゲームは交互 2 人零和不完全情報ゲームの一種で，様々な媒体で多くの人に遊ばれているが研究例が少なく，人間の上級者に匹敵する人工プレイヤが開発されたという話も聞かない．
そのため我々は強化学習の方策勾配法と Neural Fitted Q Iteration を用いて強い「こいこい」プレイヤの実装を試みた．それぞれ盤面の低級な特徴量 268 個を入力に用いた人工ニューラルネットワークを状態行
動価値の推定に用い，簡単なルールベース人工プレイヤとの反復対戦を通じて適切なパラメータの学習を行った．その結果それぞれ対戦相手から搾取した平均スコアは-0.3 点と 0.5 点となった．

Applying Policy Gradient method and Neural Fitted Q Iteration for
Hanafuda Koi-Koi game player
Sato Naoyuki1,a)Ikeda Kokolo1,b)Abstract: Koi-koi game, which is played using Hanafuda playing cards, is a Japanese traditional card gameclassified as two players turn based imperfect information zero sum game. There are few research article
focusing on this game even though this game is popular in Japan. Therefore, we tried to make strong Koi-koi
game player by applying two types of reinforcement learning methods. We applied policy gradient method
and neural fitted Q iteration. Each player played games against an artificial player which we constructedmaking its decision in a simple rule based manner. Over 1,000 times game, policy gradient player gained -0.3
score per game and neural fitted Q iteration player gained 0.5 scores in average.

ゼロ和不完全情報ゲームで，同様の不完全情報ゲームでは

1. はじめに

麻雀に形式が似ている．既存の麻雀プレイヤ研究では上級

花札は日本で古来から親しまれてきたカードゲームの１者棋譜の教師あり学習がまず基礎の部分に適用された [1]つである．簡単なルールと手ごろなゲームサイズを持ち，が，花札ではそうした上級者の棋譜が大量に用意しづらい．

スマートフォンのアプリとして手軽に遊ばれたり，ビデオ

よって我々は強化学習を用い，適度な強さの単純なルール

ゲームの商業タイトルの中でのミニゲームとして登場したベースプレイヤを相手に少しずつ訓練する事で強いプレイ

りする．しかし一方で花札を対象とした研究は例が非常にヤの獲得を目指す．

少なく，人間の上級者より十分に強い人工プレイヤが作ら

本稿で我々は 2 種類の強化学習手法をそれぞれ独立に試れた例も我々の知る限りでは無い．

みた．1 つは方策勾配法である．この手法ではパラメタラ

そこで我々は強化学習により強い花札の人工プレイヤ作イズされた方策を持つエージェントの受け取る報酬を観成を目指す．花札を使った遊び方のうち我々は特にルール察し，その獲得報酬の期待値が上昇するようにパラメータが簡明な「こいこい」ゲームに着目する．これは交互 2 人を調整していく．この方策中の “目的関数（状態行動の良さを評価する関数）” として我々は人工ニューラルネット

1

a)
b)

ワーク（以下 ANN と呼ぶ）を用いる．

北陸先端科学技術大学院大学
JAIST, Nomi, Ishikawa 923–1211, Japansatonao@jaist.ac.jp
kokolo@jaist.ac.jp© 2017 Information Processing Society of Japan

もう 1 つの手法として Neural Fitted Q Iteration（以下- 64 -

The 22nd Game Programming Workshop 2017

図 1 花札のゲーム局面．各プレイヤには公開フィールドとしての「持ち札」，非公開フィール
ドとしての「手札」が与えられている．山札や場札から特定の手順によってカードを持ち札に移していって，持ち札に「役」をつくってアガリを目指す．

NFQ と呼ぶ）を適用した．この手法は Deep Q Network [13]える．しかし同じ花のカードが 2 枚だけあった場合の（以下 DQN と呼ぶ）手法と多くの点で類似している．NFQ

み，それらのうち好きな方 1 枚と自分の出した札を自は Q 学習と同様にエージェントの各状態行動の結果とし分の持ち札に加える．そして場に同じ花のカードが 1て受け取れる累積割引報酬の大きさを環境との試行錯誤か

枚も無かった場合は自分は何も持ち札に加えられず，

ら見積もっていく．ただし初歩的なテーブル型の Q 学習

自分が出したカードも新たな場札として追加される．

と違って，Q 関数を ANN で近似し，またエージェントの( 3 ) 先手プレイヤ行動‐山札めくり： 続けて先手プレイヤ

行動履歴を沢山集めてから Q 関数の更新を行う．そしては山札の一番上にある札を表向きにめくる．その札にDQN 手法と NFQ は ANN の更新頻度に違いがある．

ついても先ほどと同様の処理に基づき自分の持ち札を増やす．つまりめくったカードと同じ花が描かれた

2. 花札の「こいこい」ゲーム

カードが場に 1 枚か 3 枚あるときは，めくったカード

対象ゲームについて説明する．花札はトランプのようにもあわせてそれら全てを持ち札に加える．2 枚だけあ

様々な種類の遊び方を持つが，中でも最も有名な遊び方のるときはその片方とめくったカードを持ち札に加え，「こいこい」を我々は扱う．図 1 はその局面の例である．こ1 枚もなければ単に場札に加える．

のゲームは 2 人のプレイヤが交互に自分の手番に手札から( 4 ) 後手プレイヤ行動：次に後手プレイヤが同様に手札のカードを場に出して，「持ち札（手札とは異なるフィールド

提出と山札のカードをめくる手続きを行う．以上の手である）」を増やす．持ち札のカードの中で「役」と呼ばれ続きは両プレイヤ交互に，どちらかのプレイヤの持ちる一定のパターンが完成するとそのプレイヤは「あがり」札に「役」が完成するか提出できる手札が無くなるまによって得点をもらう事ができる．以下に詳細を示す．

で繰り返される．

( 1 ) 初期状態：各プレイヤは 8 枚の手札を持ち，場には場( 5 ) 「あがり」と「こいこい」の選択：片方のプレイヤが札が 8 枚表向きに公開されている．また互いに持ち札

持ち札に「役」を完成させた時，そのプレイヤはただは 0 枚ずつである．残りのカードは山札として伏せらちに「あがる」事によって役に応じた得点をもらうかれた状態で場に積まれる．カードは全 48 枚で，12 種「こいこい」を宣言する事によってゲームを継続する類の花が描かれた札 4 枚ずつから構成される．

事を選ぶ事ができる．「こいこい」は通常，自分が更( 2 ) 先手プレイヤ行動‐手札の提出： まず先手のプレイヤに高い点数の役を狙えそうでなおかつ相手が役の完成

が手札から好きなカードを場に出す．場札に，それとから遠そうな場合に選ばれるオプションである．

同じ「花」が描かれたカードがある場合には自分の持( 6 ) ゲームの終わり：片方のプレイヤがあがった場合に，ち札に加える．その加え方のルールはやや複雑で，場そのプレイヤに得点が与えられてゲームが終わる．あに同じ花のカードが 1 枚または 3 枚だけあった場合

るいはどちらのプレイヤもあがらないまま 8 枚の手札は，自分の出した札と併せてそれら全てを持ち札に加を使いきった場合にゲームが終わり，この場合はどち© 2017 Information Processing Society of Japan- 65 -

The 22nd Game Programming Workshop 2017

らのプレイヤにも得点が与えられない．このゲームは

4. 適用手法

確率的な要素も大きく，通常は何回もゲームを繰り返

我々はアプローチとして強化学習の方策勾配法 [8] としてその合計スコアを競い合う．
以上がこいこいゲームのルールであるが，役の種類や特NFQ [12] を選んだ．ポーカーは各状態での行動がコール・定条件下での手札の配り直し等のローカルルールが加えら

レイズ・フォルドの３つだけだが花札は全カードについてれる事もよくある．特に近代的なオンラインゲームとして48 種の行動が想定されるため行動政策の定式化が難しい．

提供される場合には，既存のものとの差別化のためか，か

そのためポーカーの既存研究のように CFR を適用するア

なり大がかりな独自の特殊ルールが導入されている事もプローチには計算コストの大きさによる困難が予想されある．

る．また麻雀のように利用可能な上級者棋譜が見当たらな
いため教師あり学習も困難である．そこで強化学習によるそのように様々なルールがある中で本稿で採用するルー

動的な強さ向上を目指した．

ルはかなりシンプルで，認められる役は五光（10 点）四光（8 点）雨四光（7 点）三光（5 点）赤短・青短・猪鹿蝶（各また方策勾配法と NFQ という２つの手法を選びそれぞ

5 点）タネ・短冊・カス（各 1 点から 1 枚増加で 1 点追加）

れ独立に実験したのは，両者が異なる長所を持つためであのみである．しばしば用いられる「手四」と「くっつき」

る．一般に方策勾配法のほうが学習の難度が下がると言わは無し*1 とする．また一定条件下での得点の倍増に関するれている（状態価値や状態行動価値を推定しなくても，報ルールも取り入れない．

酬を最大化する行動のみ求められれば良いため）[10]．その一方，NFQ では各状態行動の期待（割引）累積報酬値が3. 既存研究

Q 関数の出力値として具体的に得られるため，今後その数

不完全情報のカードゲームに関する研究はポーカーを

値を他の目的に応用できる可能性がある．例えば，人間プ対象にしたものが盛んである．Martin らは Counter Fac-

レイヤを楽しませるための人工プレイヤ作成のために合計

tual Regret と呼ばれる指標の最小化を強化学習で行う事の獲得点数を相手と同じ程度に合わせようとする行動選択

で Heads-up limit Texas holdem ルールで ϵ ナッシュ均衡を行う用途が想定できる．また人間プレイヤの教育用としの導出に成功した [2]．また Tammelin はその発展形として，最も適切な着手を提示だけでなく「各着手それぞれのての指標である CFR+を提案し学習収束速度の向上を示し

具体的な良さ（獲得スコア期待値）」を示す事は，• 自らの着手選択が最善でないときにも，他着手の中でた [3]．さらにゲーム規模を 2 人用に限定していない多人
数ポーカーにて Counter Factual Regret の適用を試みた研の相対的な良さのフィードバックを受け取れる• 自分が普段選ばないような種類の着手についても良さ

究 [4] やナッシュ均衡から敵モデルを構築して搾取する研究がある [5]．

の度合いを知ることができ，ゲーム全体への理解が深

また花札のこいこいと同様に，役作りとあがり，あがりくなるといった応用可能性から有益であると期待できる．

を延期し更なる高得点を狙うオプションを備えた不完全情報ゲームには麻雀があるが，麻雀では上級者棋譜が使えるため教師あり学習がしばしば用いられる．水上らは教師

4.1 方策勾配法

あり学習からの麻雀プレイヤの作成 [1] とその発展形とし

方策勾配法は「パラメタライズされた方策で行動するてモンテカルロシミュレーションを加えた手法を提案しエージェント」の得る期待報酬を，報酬に対する勾配方向にた [6]．さらに麻雀では人工プレイヤの技術発展を目的と各パラメータを動かす事で増大させようとする．一口に方した競技用のサーバーが用意されている [7]．

策勾配法といっても様々な流儀のものがあるが，我々が用

花札のこいこいを扱った研究として我々は過去に，方策いる方法は五十嵐らが提案した手法を参考にしている [9]．

勾配法を用いたエージェントの性能を試験 [11] した．本

まずエピソード開始から t 回目の行動を行う状態 st で行

稿の方策勾配法との違いは目的関数のモデルであり，前回

動 at をエージェントが選択する確率（つまり方策）をはゲームの固有知識を利用した高級な少数の特徴量の線形和モデルを用いて方策勾配法を試験した．一方で今回は，

πa (at |st ; ω⃗) =exp(Ea (at , st ; ω⃗ )/Ta )Zs(1)

ゲームの固有知識にあまり頼らない低級で多数の特徴量をと定めているものとする．ここで Ea (at , st ; ω⃗ ) は，st での用いた ANN をモデルとし「性能の更なる向上」と「ゲーat の選ばれやすさを表す「目的関数」と呼ばれる指標であム固有知識に頼らない学習の成功」を目指している．更に，る．Ta は温度パラメータで，方策で選ばれる行動のバラつ

本稿では前回扱わなかった NFQ 手法を試みている点も新きに影響する．Zs は st でのエージェントの全可能行動に規である．

ついての選択確率値を 1 以下，総和 1 にし正規化するため*1の項であり，式 (1) の右辺の分子を全可能行動に対し足し初期状態で手四の形ができていたらゲームはやり直しとし，くっつきはそのままゲームを続ける．

© 2017 Information Processing Society of Japan

合わせる事で求められる．

- 66 -

The 22nd Game Programming Workshop 2017

そしてある 1 回のエピソードに対応した報酬を r とし，iAlgorithm 1 Neural Fitted Q Iteration

回目のエピソードの報酬を ri ，報酬とそのエピソード生起

k = 0;
Q = initialized AN N ();while k < N do
x = 1;
P = gen dataset();# {(inputl , targetl ), l = 1, . . . , |P |}# where inputl = (sl , al ),# targetl = r + γmaxa (Q(sl+1 , a))
Q = train(Q, P );k = k + 1;
end while

確率の積 R の期待値を E[R; ω⃗ ] と表すとき，この期待値を重みベクトルの調整によって極大化しようとするためのパ
ラメータ更新式を考える．方策が式 (1) のとき ∇ω⃗)⃗ E(R; ω
は一般に，

∑{
1 ∑
ri p(xi ; ω⃗)∇ω⃗ E(ai,t , si,t ; ω
⃗)
T
t=1
i
∑
}
−
π(a′ |si,t ; ω⃗ )∇ω⃗ E(a′ , si,t ; ω⃗)Li∇ω⃗ E(R; ω⃗) =a′ ∈Asi,tの目的値であり，状態 sk から行動 ak を実行した「以降の累積割引報酬」である．w⃗ は ANN の重みパラメータであという形で計算される．ここで p(xi ; ω⃗ ) はそのエピソード∏Liの生成確率で，り，αは学習率である．

⃗ ) に等しい（ただし Li は
t=1 π(ai,t |si,t ; ω

こうして関数近似は膨大な広さの状態行動空間上でのエピソードの行動ステップ数）．これを用いてω⃗ ←ω⃗ + η∇ω⃗ E(R; ω⃗)エージェントの学習を可能にするが，とはいえ ANN のよ(2)

うな非線形モデルで近似を行った場合，一般に学習が不安と示されるパラメータ更新を行えばよい．ただし η は小さ

定になりやすいという問題点に対処する必要がある．例

な正の定数である．

えば Deep Q Learning [13]（以下 DQL と呼ぶ）は NFQ

このように式 (2) のような更新式を，エピソードを繰りと同じように「ANN を価値観数とした Q 学習」であり，返しながら重みパラメータに適用し続けて，なんらかの終Experience Replay という工夫でその対策をしている．Ex-

了条件を満たしたときに繰り返しを打ち切るのが本稿で利

perience Replay は状態行動と報酬の履歴をメモリに保存用する方策勾配法の概要である．

し，一定量ずつランダムにサンプルしながら学習に使う方法で，パラメータの更新をなだらかにする．

NFQ では (b) の手続きによって学習を安定化させてい4.2 Neural Fitted Q Iteration
NFQ [12] は Martin が提案した手法であり，ANN を利る．つまり，重みの更新を行わずに行動と報酬の履歴を蓄用した Q 関数学習手法という点では DQN [13] と似てい

え続けてから，ANN の学習を行う．一度の学習に多数のる．NFQ は Q 学習と非常に多くの点が共通しているが以訓練データを用いる点は DQL と同じだが，Q 関数の更新

下２点が特徴である．

が飛び飛びの頻度で行われる点は「DQN でデフォルトで(a) ANN で近似した価値関数を用いている．

設計されている形式の Experience Replay」とは異なって(b) 環境との相互作用を行うフェーズと価値関数の調整いる．この方法によって NFQ はエージェントの方策が短い周期で激しく変動するリスクを回避している．

を行うフェーズが大きなかたまりで分離されている．

一般的な NFQ の手順を Algorithm1 に示す．初期化し(a) の特徴は Q 学習の設定の範疇といえるが (b) は NFQ

た ANN を Q 関数に用い，エージェントに環境で行動させに特有である．
まず (a) について述べる．このエージェントの手法ではて一定数のデータを蓄えてから，そのデータを用いた教師

通常の Q 学習と同様に，状態，行動，環境からの報酬，そあり学習を ANN に適用している．こうして ANN の学習

して次状態を観測し，価値関数と累積割引報酬のズレがが少ない頻度（DQL に比べて）のオフライン学習になる

小さくなるようにパラメータを更新する．その際に NFQ

ため，Rprop や Adam といった高度な最適化手法が学習は，通常のテーブル型の Q 学習と異なり，ANN の入出力に適用できる点を Martin は NFQ の利点として指摘してにより近似された価値関数を用いる．このような工夫はいる [12]．また NFQ で用いる ANN は，DQN の場合と違TD-Gammon などにも見られ，状態行動空間のサイズが膨い，深層型である必要はないが我々は深層型のネットワー

大になる問題で有効である．

クを利用した．

この場合には価値関数の更新は，以下の式 (3, 4) のよう

4.3 使用特徴量に２乗誤差を小さくするように進められる．

Lw⃗ =

∑

我々は方策勾配法の「目的関数」と NFQ の Q 関数の両{targetk − Qw⃗ (sk , ak )}2

(3)

w
⃗ ←w
⃗ − α∇w⃗ Lw⃗(4)方において ANN を用いるが，両者の場合で同じ特徴量をk用いているためここで述べる．我々の特徴量は「カードの位置」，「現在のターン数」，「相手の手札になさそうな月」の 3 種である．

ここで targetk は状態 sk と行動 ak に対応した価値関数© 2017 Information Processing Society of Japan- 67 -

The 22nd Game Programming Workshop 2017

5.1 実験条件
5.1.1 提案プレイヤ
我々の提案手法による人工プレイヤは 4.1 項で示した通りの方策勾配法で動作し，式 (1) の「目的関数」には 4.3 項に示した特徴量の ANN を用いた．1 エピソードは 1 ゲー
ムが終わるまでであり，ANN の受け取るエピソード報酬

r は提案プレイヤの終局スコアから相手役プレイヤのスコ

図 2 局面の特徴量ベクトル化

アを差し引いたものである．また式 (1) での温度 T は常に1.0 とし，式 (2) の学習率を 0.1 とした．

まず「カードの位置」の特徴量を以下のように用意した．

5.1.2 相手プレイヤ

花札に使用される 48 のカードそれぞれに ID をつけて，行
動判断の主体となるエージェント（自分）から見てそれぞ

対戦相手も人工プレイヤで，ゲーム知識に基づく If-then

れのカードが以下の 5 種のうちどの場所にあるかを特徴とルールで処理を書き下したルールベースプレイヤである．

する．

このルールベースプレイヤは，「完全にランダムに行動を決• 自分の手札の中めるプレイヤ」と 1,000 戦して平均獲得点数 2.52 点をおさ

• 自分の持ち札の中める程度の強さがあった．具体的には「“松の光” は 20 点」• 相手の持ち札の中（※持ち札は場に公開される）「“梅のカス” は 1 点」という具合に事前に各札に点数を割• 場札の中り当てておき，自分が札を取れる場合は点数の合計が最大• それ以外の場所，つまり自分からは見えないどこかになる取り方を選び，自分が手札を場札に提供せざるを得ない状況ではなるべく点数最低の札を出す．このプレイヤ（※具体的には相手の手札の中か山札の中）
こうして「ID1 のカードは自分の手札にあるか？」,「ID1 のの挙動は本稿の特徴量を用いた ANN で表現可能である．

カードは自分の持ち札に含まれるか？」, . . . , 「ID48 のカー

5.1.3 プレイヤ共通の設定

ドは自分から見えない位置にあるか？」という 5×48(= 240)

なお，このゲームの醍醐味である「こいこい」をするか

種のバイナリ特徴がゲーム局面を表現するため使われる．

しないかの判断はどちらののプレイヤも原始モンテカルロ

次に現在のターン数に関する特徴量は，「現在ゲームの 1

手法のシミュレータにより行う．すなわちこの実験に登場

ターン目である」，「2 ターン目である」というバイナリ特する人工プレイヤはどれも，役を完成させた時に「こいこ徴である．花札のターンは 1 ターン目から最大 16 ターン

い」を宣言した後のゲーム展開を 10 回シミュレーション

までしかないので，この特徴量は 16 個である．

する．そのシミュレーションの中でゲームを進めるのは先最後に「相手の手札になさそうな月」とは，エージェン

手後手ともにランダム行動プレイヤだがそのプレイヤはもトの相手プレイヤが見逃した場札の月を表す特徴である．

はや「こいこい」はせず，あがれるチャンスには必ずあが

例えば，場に 4 月の札と 8 月の札があるとき相手プレイヤ

る．このシミュレーションの平均獲得スコアが，ただちにが 4 月の札も 8 月の札も手札から出す（キャプチャ）事を「アガリ」を選んだ場合より高い場合は実際のゲームで「こせず，単に別の月の札を場に提出した（非キャプチャ）場

いこい」を宣言する．

合，相手の手札には 4 月の札も 8 月の札もないことが推測

5.1.4 対戦条件

される．なぜならば，花札において非キャプチャ手はキャ

この方策勾配法プレイヤはルールベースプレイヤとプチャ手よりも一般に大きく不利な行動となるためである

8,200,000 エピソード（GPU 無しのマシンで高速化処理な

この特徴量は他２つと比べて強くゲーム固有の専門的知識

しで処理時間約 20 日間程度）にわたって対戦した．ただに依るものだが，しかし人間がよく利用してゲーム勝敗へし方策勾配法プレイヤは常に先手番でゲームを始める．実の影響も大きい事が予想されるため，本稿ではひとまず導験環境は自作プラットフォームを用いた．

入の上で実験を行った．

5.2 結果まとめると，図 2 のように合計 268 個の特徴量が盤面の表現に使われる．方策勾配法でも NFQ 手法でも，「ある状

学習の過程における，（学習を一旦中断した状態での）態 s1 におけるある行動 a1 」の良さは，s1 に a1 を適用した

1,000 戦平均スコアを図 3 に示す．最初の 1,000,000 エピ

直後の盤面の特徴ベクトルをニューラルネットワークの入ソード付近まで性能は向上し続けているが，1,000,000 エ力にしたときの出力値として得る．

ピソードからおおむね −0.0 点から −0.5 点の間にスコアが分布し，ルールベースプレイヤに負け越し続けている．

5. 実験１：方策勾配法プレイヤ

1,000 戦対戦平均スコアの 95 ％信頼区間は ±0.30 点である
事を確認しているため，学習終盤の多くの観測点において

まず我々は方策勾配法を用いた人工プレイヤの性能を評

相手プレイヤより有意に弱い．同様の実験をもう１試行，価するため対戦実験を試みた．

© 2017 Information Processing Society of Japan- 68 -

The 22nd Game Programming Workshop 2017

図 4 NFQ を用いての対ルールベースプレイヤの 3000 対戦平均獲得スコア
図 3 方策勾配法を用いての対ルールベースプレイヤの 3000 対戦平
均獲得スコア

れぞれに 60 個ずつの隠れニューロンを持つ．また各隠れ5,000,000 エピソードまで実行してみたが点数変化の傾向

ニューロンの発火関数は ReLU 関数で，入出力層のニューと点数そのものがほぼ同じになった．

ロンの発火関数は線形関数である．ネットワークの学習

この方策勾配法プレイヤは，原理的にはルールベースプ

機構は python3.5 の Keras ライブラリにより実装され，最レイヤと互角以上になる性能限界を持つ．というのも，こ

適化の設定には「adam」を用い，学習のオプションにはの方策勾配法プレイヤの ANN モデルは，ルールベースプレ

Early Stopping（torelance = 0）を設定した．最適化手法

イヤの挙動を表現可能である．そのため今回の実験でルーに関するその他の細かなパラメータは現時点での keras ラルベースプレイヤより強くならなかった原因は，学習の条

イブラリのデフォルト値をあてはめた．

件として温度パラメータと学習率が常に一定だったり，学6.2 相手プレイヤと共通の設定

習設定がナイーブにすぎた点にあると我々は考えている．

前項の方策勾配法プレイヤと同様の相手役ルールベース

6. 実験２：NFQ プレイヤ

プレイヤと対戦した．さらに，13 ターン目以降に両者が共通のルールベースにより動く事と「こいこい」宣言の判

次に我々は NFQ プレイヤの性能を評価するため対戦実断を両者がシミュレーションにより行う点も前項と同様で験を試みた．

ある．

6.1 実験条件
6.3 対戦の設定

6.1.1 人工プレイヤの設計
提案プレイヤは NFQ により動作する．各状態行動を項この NFQ プレイヤはルールベースプレイヤと，重みが 5の特徴量を入力した ANN で評価し，ϵ-greedy 方策により回更新されるまで対戦した．重み 1 回の更新につき GPU

着手を決定した．ϵ パラメータの値は，訓練データ生成時

搭載のマシンで約 5 時間（その大部分が訓練データの生は 0.10 で，性能評価のための勝利スコア集計を行うときは成にかかる）を要した．方策勾配法プレイヤは常に先手番

0.0 とした．

でゲームを始める．実験環境は自作プラットフォームを用いた．

訓練データは入力が局面の特徴ベクトルで，出力がその局面から「相手プレイヤの手札」と「山札」の中身と順序

6.4 結果をシャッフルしながらの 100 回の対戦シミュレーションか
ら得た平均結果スコアである*2 ．データが 60,000 件たまる

イテレーションごとの獲得スコアの推移を図 4 に示す．

ごとに ANN の重み更新が行った．各データは 1，3，5，7，

初期状態では-2 点ずつ搾取されているが，1 回重み更新す

9，11 ターン目の局面それぞれ 10,000 件ずつから成る．各

ると +0.5 点くらいの搾取をルールベースプレイヤから行

更新後には性能データ集計のための 1000 回対戦をそれぞえている．この試行の 95 ％信頼区間は ±0.16 点である．

れ行った．

また「こいこい」は先手有利なゲームであり提案プレイヤは常に先手で対戦したが，ルールベースプレイヤ同士の 3000

ANN は入力層と出力層の間に 3 層の隠れ層を持ち，そ*2回対戦だと先手の平均獲得スコアは +0.051 点である．

そのためブートストラップが一切行われず，Q 学習というよりモ
ンテカルロ法である．しかし全ての意思決定で終端状態に遷移す
る特殊なケースの Q 学習とみなす事もでき，説明の簡便さを重視して本稿の説明では Q 学習および NFQ 手法の一種と位置づけ記述している．

© 2017 Information Processing Society of Japan

つまり標準偏差や先手番の有利を考慮に含めても，提案
プレイヤはルールベースプレイヤより有意に強くなった事が解る．1 イテレーション目以降に有意な性能向上は見ら- 69 -

The 22nd Game Programming Workshop 2017

図 5 1 イテレーション後の ANN による局面結果スコア予測．訓練

図 7

3 層 ANN による局面結果スコア予測

およびテストデータからランダムに 95 件のサンプルを選び，教師信号を横軸に，入力ベクトルからの ANN 出力を縦軸にプロットしている．

図 8 NFQ プレイヤがルールベースより優れた判断を行った局面の例．この場合，光札 4 枚による 8 点役の完成を目指しても，敵に 5 枚中 2 枚の光札を既に取られているため完成できない．
よって，高得点役の札を取るよりもカスやタネの低得点役（1点）の札を地道に集める判断が正解となる．

る．サンプルの教師信号値と ANN 出力値の分布が 4 イテ
レーション目で全体的に大きくなっているのは提案プレイ
ヤの性能が向上して全体的に獲得スコアが向上したためと
図 6考えられる．具体的な平均 2 乗誤差の値は，テストデータ

4 イテレーション後の ANN による局面結果スコア予測

6,000 件に対して 1 イテレーション目と 4 イテレーション
れないが，これは 1 イテレーション目で既にほとんど限界

目の学習後 ANN でそれぞれ 1.0，0.74 である．また図 7 は性能に達したためと我々は考えている．

文献 [11] で我々が隠れ層 1 層のみの ANN で同様の実験をまたイテレーションごとに ANN が局面の結果スコアを行った結果である．図 5，6 どちらの場合も隠れ層 1 層の正しく予測できているかを確かめる予備実験を行った．訓

みの時に比べてスコア近似の良さがあきらかに改善してい練データとテストデータからランダムに，1，3，5，7，9，

る事が見て取れる．

11 ターン目の局面を 15 件ずつ取り出して教師信号と ANN

提案プレイヤがルールベースプレイヤよりも優れた判断

出力値が近い値になっているか比較した．結果を図 5，6を行った局面例を図 8 に示す．この局面でプレイヤの有力に示す．図中のプロットはおおむね右上がりの直線状に分な着手は 2 通りある．柳の札を出して光札とタネ札を 1 枚布しており，学習はおおむねうまくいっているように見えずつ取得するか，荻の札を出してカス札とタネ札を 1 枚ず

© 2017 Information Processing Society of Japan- 70 -

The 22nd Game Programming Workshop 2017

つ取得するかである．1 点役のカスやタネと違って，光札
は 4 枚集めると 8 点もの得点がもらえるが，現局面で既に[11]

5 枚中 2 枚の光札を敵に取られてしまっているため光役の完成は不可能である．我々のルールベースプレイヤは札の[12]

一般的な強さだけ考慮した点数付けをするため，ここで光札を取りにいって失敗するが，NFQ プレイヤはより細やかな状況判断によって得点期待値の高い着手を選ぶ事がで

[13]

きる．

7. まとめと今後の課題
我々は花札の「こいこい」ゲームを対象に，方策勾配法による人工プレイヤ実装を試みた．方策勾配法では設定のためもあるのかもしれながルールベースプレイヤより強いプ
レイヤは得られなかったが，NFQ 手法ではルールベースプ
レイヤに有意に勝ち越す人工プレイヤの獲得に成功した．
今後の課題として，「こいこい」のより複雑なルールを適用した場合の性能の確認，およびそうしたルール上で動作する既存の花札人工プレイヤの対戦などがある．
参考文献
[1]

[2]

[3]

[4]

[5]

[6]

[7]

[8]

[9]

[10]

水上直紀, 中張遼太郎, 浦晃, 三輪誠, 鶴岡慶雅, 近山隆.
降りるべき局面の認識による 1 人麻雀プレイヤの 4 人
麻雀への適用. The 18th Game Programming Workshop
2013，pp.1-7 (2013)．
Martin Zinkevich, Michael Bowling, Michael Johanson,
and Carmelo Piccione . Regret Minimization in Games
with Incomplete Information. Advances in neural information processing systems 2007, pp.1729-1736 (2007).
Tammelin Oskari. Solving large imperfect information
games using CFR+. arXiv preprint arXiv:1407.5042(2014).
Risk Nick Abou, Szfron Duane. Using counterfactual
regret minimization to create competitive multiplayer
poker agents. Proceedings of the 9th International Conference on Autonomous Agents and Multiagent Systems:
volume 1. International Foundation for Autonomous
Agents and Multiagent Systems 2010. p. 159-166 (2010).
GANZFRIED Sam, SANDHOLM Tuomas. Game
theory-based opponent modeling in large imperfectinformation games. The 10th International Conference
on Autonomous Agents and Multiagent Systems-Volume
2. International Foundation for Autonomous Agents andMultiagent Systems, pp.533-540 (2011).
水上 直紀, 鶴岡 慶雅．牌譜を用いた対戦相手のモデル化とモンテカルロ法によるコンピュータ麻雀プレイヤの構築，The 19th Game Programming Workshop 2014，
pp.48-55 (2014)．
「 麻 雀 サ ー バ ー の 紹 介 」, http://www.logos.ic.i.u(actokyo.ac.jp/m̃izukami/slide/majong server.pdf
cessed 2017-06-22).
Williams Ronald J. Simple statistical gradient-following
algorithms for connectionist reinforcement learning. Machine learning.8(3-4) pp.229-256 (1992).
五十嵐治一, 石原聖司, 木村昌臣. 非マルコフ決定過程における強化学習―特徴的適正度の統計的性質―. 電子情報通信学会論文誌 D 90.9 pp.2271-2280 (2007).
Reinforcement Learning: An Introduction Second edition, in progress ****Draft****. http://ufal.mﬀ.cuni.cz-© 2017 Information Processing Society of Japan- 71 -/ straka/courses/npfl114/2016/sutton-bookdraft2016sep.pdf (accessed 2017-06-22).
佐藤 直之，池田 心，上原 隆平．花札の「こいこい」ゲー
ムの強化学習によるコンピュータプレイヤ，第 38 回ゲーム情報学 (GI) 研究発表会，2017-07-15．
Martin Riedmiller. Neural fitted Q iteration-first experiences with a data eﬃcient neural reinforcement learning
method. Lecture Notes in Computer Science: European
Conference on Machine Learning, pp. 317328(2005).
Mnih Volodymyr, et al. Human-level control throughdeep reinforcement learning. Nature 518 pp.529-533(2015).