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

Title

連鎖構成力向上のためのぷよぷよの問題作成

Author(s)高橋, 竜太郎; 池田, 心Citation

情報処理学会研究報告. GI, 研究報告ゲーム情報学,
2018‑GI‑39(10): 1‑7

Issue Date

2018‑02‑23

Type

Journal Article

Text version

publisher

URL

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

Rights社団法人 情報処理学会, 高橋竜太郎，池田心, 情報処理学会研究報告. GI, 研究報告ゲーム情報学, 2018‑
GI‑39(10), 2018, 1‑7. ここに掲載した著作物の利用に関する注意: 本著作物の著作権は（社）情報処理学会に帰属します。本著作物は著作権者である情報処理学会の許可のもとに掲載するものです。ご利用に当たっては「著作権法」ならびに「情報処理学会倫理綱領」に従うことをお願いいたします。 Notice for theuse of this material: The copyright of thismaterial is retained by the Information
Processing Society of Japan (IPSJ). This material
is published on this web site with the agreementof the author (s) and the IPSJ. Please becomplied with Copyright Law of Japan and the Codeof 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 of Japan.

Description

Japan Advanced Institute of Science and Technology

情報処理学会研究報告
IPSJ SIG Technical Report

Vol.2018-GI-39 No.10
2018/3/2

連鎖構成力向上のためのぷよぷよの問題作成
高橋 竜太郎†1

池田 心†1

概要：将棋や囲碁，麻雀など多くのゲームでコンピュータプログラムが十分強くなり，より複雑なゲームやより高次な目的に関心が移りつつある．
「ぷよぷよ」は二十年以上遊ばれる人気の落ちものパズルゲームであるが，これも近年十分強いコンピュータプログラムの作成が達成された．本研究では，“連鎖構成”というこのゲームの中心的課題の一つに着目し，連鎖構成を身につけられれば楽しめる一方でこれができずに上達を諦めてしまう人が多い現状を解決したいと考える．そのためには，連鎖構成に特化した問題群，いわゆる「なぞぷよ」「詰めぷよ」を沢山与えることが有効であると考える．人手により多くの良い問題が作成公開されているが，プレイヤごとの技術レベルや嗜好に合わせた問題が自動で無数に作成できれば，ぷよぷよを続ける人が増えることが期待できる．我々は，ランダム生成検査方式と，逆向き生成方式の二つのなぞぷよ作成法を試みる．さらに，作成された問題の「難しさ」「面白さ」「役立ち度」などを推測する関数を機械学習によって構成することを試みる．これらにより，プレイヤのレべルや好みにあった問題だけを提示するシステムを提案する．
キーワード：ぷよぷよ，なぞぷよ，連鎖，訓練，コンテンツ生成

Mating Problem Generation of Puyo-Puyo for Training
RYUTARO TAKAHASHI†1

1. はじめに

KOKOLO IKEDA†1

助が効果的になると考える．

チェスでは 1997 年に IBM Deep Blue が世界チャンピオ

これらの背景を踏まえ，本研究では，落ちものパズルゲ

ン Kasparov に勝利し，将棋でも bonanza などの登場によりームとして二十年以上愛されている「ぷよぷよ」を対象に，2017 年現在明確にプロ棋士よりも強いと言われ，さらには初級者が“連鎖”という技術を習得することを補助するた

囲 碁 で も 2016 年 に DeepMind か ら プ ロ 棋 士 よ り 強 いめの問題ドリルを作成することを目的とする．連鎖はこの

AlphaGo[1]が登場するなど，コンピュータプレイヤの強さ

ゲームの中心的課題の一つであり，できるようになれば大の進歩は目覚ましいものがある．

変楽しい一方で，できるようになるのが困難であり，このより複雑なゲーム，例えば麻雀，Civilization，Starcraft，

ゲームを続けて行くことの大きな関門とされる技術である．

HearthStone，Heroes of the Storm などのゲームではまだコンピュータによる連鎖構成の試みもさまざまに行われて人間のチャンピオンのほうが強いと言われるが，昨今の進おり，人間らしい連鎖の構成もできるようになってきてい歩のスピードを考えれば，ほぼ全てのゲームでコンピューる[7]．

タが十分な強さを持つようになる日は遠くないと考える．

初級者が連鎖構成技術を習得するためには，理論的解説

強さが十分になったとしても，ゲームでの人工知能技術はもとより，実戦的な問題を繰り返し何度も解くことが必

研究が終わるわけではない．人間の相手や仲間をするコン要であると考える．単に実戦をするだけでは練習に向いた

ピュータプレイヤはただ強ければ良いのではなく，人間プ

状況が与えられるとは限らず，連鎖，しかも特定のレベル

レイヤを楽しませることが要求されるからである．そのたの連鎖に特化した練習が効果的であると考える．これは囲めには，自然な挙動[2][3]，個別のプレイヤの価値観の推測

碁における詰め碁，将棋における詰め将棋が練習に用いらと迎合[4]などが必要であり，また相手としてではなくゲー

れるのと似ている．ぷよぷよではこのような部分問題を「詰ムそのものを楽しくするために，マップやストーリーの自めぷよ」あるいは「なぞぷよ」などと称し，盤面と「２手動生成，自動バランス調整，問題作成[5]なども必要になりで３連鎖すべし」「全消しすべし」などの目的が与えられる．

つつある．コンピュータを人間プレイヤの上位に見た場合，

本研究では，このような問題を，自動で生成することを目教育[6]もまた重要な目的となってくる．難しいゲームを上的とする．

達することは困難であり，適切な補助が得られなければや

詰めぷよは詰め碁の本などと同様複数人で共有できるもめてしまうことも頻繁である．人間上級者の補助には手間のだから，人間が一度作成してしまえばそれでよいと思わ

的にも技術的にも限界があるため，コンピュータによる補れるかもしれない．しかし，各人の技術レベルや嗜好に適†1 北陸先端科学技術大学院大学
Japan Advanced Institute of Science and Technology
kokolo@jaist.ac.jpⓒ2018 Information Processing Society of Japan1

情報処理学会研究報告
IPSJ SIG Technical Report

Vol.2018-GI-39 No.10
2018/3/2

切なものを，それぞれ数百問数千問レベルで準備するのは容易なことではないため，このような自動作成技術には十最大で 22 通りの合法手がある．
［状態遷移］同じ色のぷよが４つ以上上下左右に連結

分価値があると考える．当然，人間の職人が作成したもの

すると，その集団は消滅する（図１(c)）．消滅した集に比べ，面白さや爽快感が著しく劣るものであれば，練習団の上部にある石は重力に従い落下するが，それによに続けて用いてもらえないため，意味がない．そこで本研

り新たに４つ以上の連結が生じ消滅が起きた場合，こ究では，「どのような特徴を持った問題であればどの程度のれを連鎖と呼ぶ（図１(d)）．

難易度であり，またどの程度面白いと思ってもらえるのか」

［攻撃］n 段階の“落下と消滅”が繰り返されたとき，ということを推測する技術にも挑戦する．これにより，自それを n 連鎖と呼ぶ．原理的には 19 連鎖が生じ得る．

動作成した問題のうち，面白いと思われる問題だけを，まn 連鎖を達成すると，およそ n の 2 乗に比例した数のた適した難易度だと思われる問題だけを提示することが可「おじゃまぷよ」と呼ばれる特殊なぷよが相手の盤上能になる．

に落下する．おじゃまぷよは 4 つ連結しても消えず，
上下左右に隣接するいずれかの通常ぷよが消えた場

2. ぷよぷよとなぞぷよ

合にのみ消える．


ぷよぷよは，テトリスと並ぶ落下型パズルゲームの代表

ほうがその差分だけ一方的に相手におじゃまぷよを格であり，1991 年にコンパイル社が発売し，現在ではセガ社がその権利を保有している．ぷよぷよがテトリスと大きく異なる点は，単に自分のフィールドに落下してくるブロ［相殺］双方が攻撃を行った場合には攻撃力の大きい
落下させることができる．

［敗北］（主に相手に攻撃され）配ぷよを置く場所がなくなった場合，負けとなる．

ックを処理すればよいだけでなく，2 人で対戦して相手のフィールド（盤面）を攻撃することで打ち負かす必要がある点である．相手のフィールドを攻撃するためには通常，“連鎖”と呼ばれる状況を発生させなければならない．で横に移動できる○○

きるだけ強い連鎖をできるだけ効率良く作ること，敵の連鎖構成を邪魔したりタイミング良く攻撃したりすることな

縦
13
マ
ス

2.1 ぷよぷよのルール
本節では，ぷよぷよのルールとその戦略を概説する．ぷよぷよにはシリーズやゲームモードごとにさまざまなルー
べる．本節は過去の論文[7]から図面や文章の多くを引用し

○

△
△△

見次
るの
こ手
とと
が，
で次
きの
る次
の
手
は

・落下位置
・向き
の2つを決定し着手

予着
告手
がす
変る
わと
る，

回転できる

どが本ゲームの醍醐味である．

ルがあるが，ここではそれらにほぼ共通する部分だけを述

○
△
△

横6マス

（a）初期状態○○（b）一手目ている．
［プレイ人数］１人のプレイヤが１つの盤面を持ち，通常 2 人でプレイする．連鎖（後述）によって相手を攻撃する以外は相手の盤に邪魔をすることはできな
い．



着手

△△
○

△△
○

［盤とマス］盤は通常横 6 縦 13 の 2 次元格子からなり（図１(a)），下方向に重力を持つ．左右端，上下端に位相的繋がりはない．

［ぷよ］１つのマスは，空であるか，１つのぷよが占めるものとする．ぷよには最大５つ通常４つの色が存在する．他に，後述するおじゃまぷよと呼ばれるものも存在する．

［配ぷよ］プレイヤには，２つのぷよからなる“配ぷよ”が与えられる．ぷよの色は概ねランダムに決めら

4つ以上の
連結で消滅

○
△
○ △△△
○○
（c）連鎖開始

図１：

落下○

落下したぷよがさらに消滅し２連鎖となる○○○（d）2 連鎖
基本的なぷよぷよのルール

れ，２手先４個分が予告されている（図１(a)）．
［着手］プレイヤは，２つのぷよを回転および左右に移動し，落下させる（図１(b)）．盤横幅が 6 の場合，

ⓒ2018 Information Processing Society of Japan2

情報処理学会研究報告
IPSJ SIG Technical Report
2.2 連鎖構成力となぞぷよ
前節の攻撃の項・相殺の項で述べたように，ぷよぷよでは概ね，相手に勝てるだけの長さの連鎖を，相手に大きくは負けない程度の時間で，効率良く組むことが必要になる．
しかし，5 連鎖あるいは 10 連鎖といった長い連鎖を組むことは初級者には容易ではなく，最初からこのゲームに取り組むことを諦めてしまったり，上達せずに負け続けて途中で投げ出してしまったりする人も多い．連鎖構成力を高めるためには，「短い時間しか考えられない実戦を通じて」だ
けではなく，「連鎖の例を見て」「理論を学び」「ゆっくり考えられる状況で繰り返し鍛える」ことが有効だと考える．
そのために，なぞぷよモードは適していると考える．

Vol.2018-GI-39 No.10
2018/3/2

3. 関連研究
近年，Procedural Content Generation という文脈での研究が非常に盛んになっているが，詰め碁や詰め将棋など，パズル問題を自動作成するという試みは古くから行われており，その目的や手法もさまざまである．通常，プロ棋士やパズル作成家による人手の作成は，作品と呼べるような素晴らしい問題生成には適しているが，大量生産には向かな
い．多くのレベル・多くの嗜好に対応するためには自動生成が必要な場合も多く，そのうえでできるだけ質も落とさないための試みが幾つも行われている．
例えば藤原らは，ナンプレ（数独）の問題を自動生成するプログラムを公開・販売している[10][11]．これは，人工
知能と知識工学を活かしてパズル作家が問題を手作りする
際の思考を取り入れた“良質”な問題を生成できるようになっている．藤原は，“良質”の定義を「対称性がある美しいデザインで，25 個以下の少量の数字，解き味がよく，レベル分けとテクニックが身につく問題が，本当の意味での良質．この傾向はむしろ初心者向けの問題に現れる」と述べている[14]．良問の普及で「パズルの楽しさを知ってもらう」ことを目指している．

図２：

なぞぷよの例．問題（左）と回答例（右）例えば広瀬らは，逆算法を用いて詰め将棋の問題の生成を試みた[9]．逆算法とは，ある詰め将棋の詰め手順の最後

なぞぷよでは，いくつかのぷよが配置された盤面と，数手先までの配ぷよが与えられる（図２左）．この配ぷよは，
対戦モードと異なり，４手５手先まで与えられることも珍しくない．さらになぞぷよでは，“相手を倒す”という目的がない代わりに，その問題ごとに固有のクリア条件が与えられる（図２左，右下部）．クリア条件はさまざまであり，
たとえば・２手で３連鎖すべし

・

４手で１１連鎖すべし

・

全てのぷよを消すべし

・

１０個のぷよを同時に消すべしなどが挙げられる．この例では，２手で２連鎖をすれば良い簡単な問題であり，図２右はその回答例である．
詰め碁や詰め将棋などと同じく，なぞぷよの問題は多くの意味で非常に幅広いものが存在する．初級者にも簡単なものから上級者にも難しいもの．平凡な手で良いものから意外な手が正解となるもの．大規模なものから小規模なもの．作品と呼べるようなものから，練習用と言えるようなもの．実戦に登場しそうなものから，そうとは思えないよ
うなものなどである．従って，連鎖構成訓練ということを考えれば，その人それぞれのレベルと好みに合ったものを提供することが必要であると考える．本研究では，問題の自動作成と，選別方法についての提案を行う．

の方を基本として，詰み手順の最初の方に手を肉付けしていく．詰め将棋の一つに，曲詰めと呼ばれる詰め上がりに趣向を凝らしたもので詰め上がりが決まっているものがあり，逆算法を使うことで曲詰めの創作が可能になる．広瀬らは「内容の良さ」，「完成度の高さ」，「解き難さ」を評価値の要素とし，曲詰めの問題の作成を行った．実際に生成された問題は，専門誌において好評だった．
例えば山崎らは，パネルでポンと呼ばれるパズルゲーム
でコンピュータに面白い問題を作らせることを試みた[8]．
面白さ関わる要素として連鎖回数のみに着目しており，長い連鎖が行えるほど面白い問題としている．問題創作手順
は，まず，同じ種類のパネルが 3 枚以上並んでおり，パネルが消える条件を満たしている 6 種類のパターンのパネルを用意する．パターンのどれかを盤面の最下段に配置し，直前に配置したパターンに食い込ませるように新たなパターンを配置していき，これらを設定した連鎖回数，手数を満たすまで繰り返すことで問題を作っていく．次に解の個数を調べて問題として成立しているのかを判断している．
実験では，100 問中 43 問がパズル問題として成立していた．
山崎らの方法も逆算法の一種であり，本研究でもほぼ同じ
ような手法を用いている．
例えば大町らは，上海ゲームのやりがいのある問題の生成を試みた[5]．上海ゲームは不完全情報性があるため，“本
来クリア確率が最も高くなる手”を選択したとしても，それがゆえにクリア不可能になる（裏目に出る）ことが生じⓒ2018 Information Processing Society of Japan3

情報処理学会研究報告
IPSJ SIG Technical Report

Vol.2018-GI-39 No.10
2018/3/2

得る．しかしこのようなことが頻繁に生じては面白くない．

有効な問題を作成するのにかかる時間は現実的ではなくな

大町らは，問題をランダムに生成したあと，上級者エージ

る．さらに，連鎖に関係してこないぷよが多数発生しうる

ェントと初級者エージェントにプレイさせ，「初級者のほう点も問題である．w×h の値を大きくするほど 3 連鎖は発が上級者よりも高い確率でクリアできる問題」を，好まし

生しやすくなるが，無駄なぷよの数も増えることになる．

い行動が裏目に出る問題と解釈，棄却するアプローチを取った．

4.2 ランダム生成法の結果と例

例えば石飛らは，詰将棋の面白さを推測するために，各本節では，ランダム生成法を用いた場合の生成効率やそ問題を証明数探索で解いた場合のノード数や証明数・反証の作成例を紹介する．図３は，6×5 の領域にランダム生成数を用いることを提案している[13]．そしてそれらが面白

法 1.-4. を 5000 回用いた場合に，最大連鎖数が 0,1,..,4 とない条件を満たすように駒を追加削除することでより面白い

る問題がどれだけ生成できたかを示したヒストグラムであ問題を作成するという試みを提案している．

る．横軸は盤上のぷよ数であり，これが 7 個以下の場合には原理的に 3 連鎖は不可能である（7+4 < 3×4）．少し見に

4. 問題生成法

くいが，盤上ぷよ数が 14 以上から 3 連鎖ができるものが見つかり始めている．全体では 83 問つまり 1.6％のみが，本研究では，なぞぷよとして成立する問題を自動生成す2 手 3 連鎖の問題として抽出できた．全体の実行時間は一る手法を２つ提案し，その特徴を比較する．その上で次章

般的な PC で 200 秒ほどであり，1 問あたり 2.45 秒で生成

では，それらの問題の難しさや役立ち度などを推定し，好できたことになる．

ましいものだけを抜き出す方法を提唱する．

図４は，少し個数を増やして 6×7 の範囲にランダム生

本稿で提案する手法は基本的には「m 手で n 連鎖すべし」

成した場合のヒストグラムである．2 手 3 連鎖の問題は 346というタイプのなぞぷよ全てに対応するが，説明の簡単さ

問，6.7%生成でき，1 問あたりの生成時間は 0.55 秒となっのためと初級者に適したレベルであることから，説明や例，た．これは実用上十分な速度である．しかしながら，問題

実験は全て「2 手で 3 連鎖すべし」という条件を用いる．

の質ということを考えた場合には問題も残る．

4.1 ランダム生成法
10 連鎖などの長い連鎖が偶然生じることは滅多にないが，3 連鎖であれば適当にぷよを設置していっても偶然発生することはしばしばある．そこで，2 手 3 連鎖の問題生成法として，以下のアルゴリズムを提案する．
1.

盤面 w の幅に，各列の高さを最低 0 最大 h となるよ
うにぷよを積んでいく．

2.

各ぷよを積むたびにランダムに色を定めるが，周囲のぷよとの接続状況を確認し，4 つ同じ色が接続してしまわないようにする．あるいはより強い制約として，左右に同じ色が接続しないようにする．

3.

2 手分の配ぷよ 4 個について，色をランダムに定める．

4.

作成した盤面と配ぷよを用いて，全幅探索を行う（2

図３：6×5，横同色禁止の場合の最大連鎖数分布

手先のノード数は高々222 である）．
5.

最大連鎖数が 3 になったものだけを採用し，そうでなければ 1. に戻る．
ランダム生成法はいわば「2 手 3 連鎖が偶然できるのを待つ」手法であり，多くの無駄が予想される．2 手 3 連鎖にならない問題も多数生成されてしまうであろう．これは条件の厳しい問題（例えば 10 連鎖など）であればなおさらである．また，手順 4 に必要な計算時間も，探索深さつまり手数に指数的に響いてしまう．例えば“6 手で 7 連鎖せよ”といった問題では 226 のノード数の探索が必要であり，また 7 連鎖が偶然できる可能性も低いだろうから，1 つのⓒ2018 Information Processing Society of Japan

図４：6×7，横同色禁止の場合の最大連鎖数分布

4

情報処理学会研究報告
IPSJ SIG Technical Report

Vol.2018-GI-39 No.10
2018/3/2

4.3 逆向き生成法
図５は，6×8 の領域に作成した 2 手 3 連鎖の問題のう

ランダム生成法は条件を満たす配置が出てくることを偶

ち，少な目の 23 個，多めの 40 個が盤上にある 2 つの問題

然に任せねばならず，2 手 3 連鎖くらいならばともかく 4を選んだものである．どちらも，問題の中心となる部分は

手 8 連鎖などの規模の問題になれば非常に作成コストが大実戦にも登場しやすくかつ自明ではない，練習に良い問題

きいと予想される．そこで本研究では，「出来上がり図」をと言える．しかし，左側の問題でも右上方面の 10 個程度は最初に作ってから，徐々に問題図へと逆向きに近づけてい殆ど意味のないぷよであるし，右側の問題では左側 3 列，く方法も試みる．これは，倉庫番，詰将棋[9]などさまざま

下部 3 列が意味のないぷよになってしまっている．場合になパズルで用いられている問題作成法である．

もよるが，このような無駄なぷよが少ない問題のほうが美2 手 3 連鎖問題おける具体的な手順の概略を図７を用いしく見える可能性は高く，少なくとも「そういう問題も作て説明する．ぷよぷよでは，同じ色のぷよが４つ“以上”れる」ようであってほしい．ランダム生成法では図 3 図 4接続すると消える．もし４つのみに限定すれば，その消えを見れば分かるようにぷよ数の少ない問題では 3 連鎖を作る際の形はテトロミノの回転対称数 19 通りである．

りづらいという課題がある．

(a) まず，最後に消える４つのぷよを 19 通りの中からランダムに選び，盤上のランダムな場所に配置する（図７a）．
(b) 続いて，２番目に消える４つのぷよを同様ランダムに選び，先ほど置いたぷよ（○）を“一部押し上げるように”挿入する（図７b）．なお，19 通りの中にはぷよが宙に浮いてしまうような場合もあるので，その場合は別の色のぷよを使って下を支える（図７b の☆）．
(c) 最初に消える４つのぷよを 19 通りの中からランダムに選び，２番目に消えるぷよ（△）を一部押し上げる
ように挿入する（図７c）．これで，□から始まる３連鎖が構成できる．
(d) 盤上から２組４個のぷよを取り除いて，配ぷよとする

図５：23 個，40 個の問題の例（図７d）．その際，各組は着手として置けるように取り除かなければならない．つまり，埋まっている場所

図６は横の同色接続を禁止しない場合の分布であり，３や，左右に２つ以上離れた場所からは取り除いてはい

連鎖がより高い確率（10.6%）
・広いぷよ数範囲でできるよ

けない．また，配ぷよの２手目には，必ず最初に消えうになっていることが分かるが，それでも十分ではない．
また，用いるぷよの色数を２や３に限定することでも意趣の異なる問題を生成することができる．

るぷよ（□）を含めなければならない．
(e) 最後に，与えられた盤面と配ぷよで深さ 2 の全幅探索を行い，「２手３連鎖ができること」「４連鎖以上にはならないこと」「１手目で３連鎖にならないこと」などをチェックする．失敗していれば(a)に戻る．

図６：6×7，横同色許可の場合の最大連鎖数分布

図７：逆向き生成法ⓒ2018 Information Processing Society of Japan5

情報処理学会研究報告
IPSJ SIG Technical Report

Vol.2018-GI-39 No.10
2018/3/2

実際に実装する際には，もう少し細かい工夫を入れたほうが効率は良い．例えば，図 7(b)のように宙に浮いた部分にぷよを入れる場合にその数が多すぎると全体のぷよ数が増えすぎたり４連鎖以上が生じやすくなるため，個数を限定したほうがよい．また，“一部押し上げる”ように挿入する際に，元の４つの接続したぷよの接続がちぎれていることを保証する必要がある．例えば図７(a)の右側 2 つを同時

図９：逆向き法による問題例に 1 段ずつ持ち上げても，接続は保たれてしまうため，そのような挿入は不適である．またここではテトロミノ 19 種のみを用いているが，問題の多様性という意味ではペントミノなど 5 つ以上が消えるパターンも導入したほうがよい

5. 面白さの推定と問題選別
前章で説明した２つの手法には一長一短があるが，実際であろう．

に問題を作成してみてはっきりと分かったことは，どちら4.4 逆向き生成法の結果と例の手法を使った場合でも，非常に多様な問題が生成されう

図 8 は，1000 問を手順(a)-(d)で作成した場合の，盤上ぷ

るということである．つまらない問題面白い問題，簡単なよ数ごとの，最大連鎖数のヒストグラムである．図 3,4,6 に問題難しい問題，実践でもありえそうな問題なさそうな問比べて，非常に少ないぷよ数で，高い確率（89.8％）で 3 連

題，などである．したがって，問題の面白さや難しさを推鎖が作成できていることが分かる．1 問作成にかかる時間

測することができるようになれば，作成した問題から必要コストも 0.037 秒と極めて小さい．

なものだけを抜き出すことが可能になると考える．

一方で，問題の面白さという意味では課題が残る．図 9
は，作成された問題の例である．左側の問題は，１手目に5.1 被験者実験

工夫が必要であり初級者にはそれなりに難しい面白い問題

我々はまず，問題のどのような（計算可能な）特徴が人である．右側は基本形に近く，反復練習には良いかもしれ

間の感性評価にどのように影響するのかを調べるための被ないが一般的には簡単すぎる問題と考える．ランダム法に

験者実験を行った．原稿執筆時点では十分な問題数を十分よる問題（図５）には無駄な部分が多すぎたが，一方で逆な人数にやってもらうことはできなかったが，大まかな傾向き法による問題（図９）には無駄な部分がなさすぎるの向をつかんで手法の枠組みを実行してみることはできた．

が問題と言えるかもしれない．手順(a)の前あるいはその後

問題は 2 手 3 連鎖の 32 問，自動生成したものや，手動での手順の途中にある程度関係ないぷよをランダムに追加す面白いように生成したものなど多様なものを初級者～中級

るなどの工夫が有効になる可能性はある．

者に解いてもらい，「面白さ」「難しさ」「練習に役立つか」を５段階で評価してもらった．一方，各問題について以下の特徴量を計算した．
・

Fp : 盤上のぷよ数

・Fcor : 正解手順の数

・

Fpos : １連鎖以上が起きうる手順の数

・

Ffall : 正解手順で落下するぷよの数・

Fcol : （４つ以上存在する）ぷよの色の数

・

Fused : 正解手順で消えるぷよの色の数

・

Fcon : 3 連鎖で消えるぷよとは同時に消えない同色ぷよ
が，問題図では接続している数．まぎらわしさ．

5.2 線形回帰
特徴量から点数を推定する方法はニューラルネットワー
図８：逆向き法の最大連鎖数分布

クや SVR 含めさまざまにあるが，本研究ではデータ数が少ないため，単純な線形回帰法を用いた．機械学習ツール
Weka の LinearRegression のデフォルト設定による学習により，難しさや役立ち度について以下の式が求められた．他の特徴量は，デフォルト設定の M5 method により不利用とⓒ2018 Information Processing Society of Japan6

情報処理学会研究報告
IPSJ SIG Technical Report

Vol.2018-GI-39 No.10
2018/3/2

なった．

参考文献

・難しさ = 0.0308Fp －0.0598Fcor +0.0081Fpos[1] David Silver, Aja Huang ら, Mastering the game of Go with deepneural networks and tree search, Nature 529, pp.484-489, 2016[2] 藤井叙人ら，生物の基本原則の導入によるビデオゲーム COM
プレイヤの『人間らしい』振る舞いの自動獲得，IPSJ EC
研究会，Vol. 2013-EC-27 No.16, 2013[3] Sila Temsiririrkkul, Huu Phuc Luong and Kokolo Ikeda, Productionof Emotion-based Behaviors for a Human-like Computer Player,
GAMEON'2016, pp.49-53, 2016-09.
[4]Naoyuki Sato, Kokolo Ikeda and Takayuki Wada, Estimation ofPlayer’s Preference for Cooperative RPGs Using Multi-Strategy
Monte-Carlo Method, IEEE Conference on Computational
Intelligence and Games (CIG2015), pp.51-59, 2015-08.
[5]大町洋，佐藤直之，池田心，複数ソルバを用いた上海ゲームのインスタンス生成， 第 18 回ゲームプログラミングワークシ
ョップ，2013-11[6]Kokolo Ikeda, Simon Viennot and Naoyuki Sato, Detection andLabeling of Bad Moves for Coaching Go, IEEE Conference on
Computational Intelligence and Games (CIG2016), pp.395-401,
2016-09.
[7]富沢大介，池田心： 落下型パズルゲームの定石形配置法とぷ
よぷよへの適用，情報処理学会論文誌，Vol.53, No.11, pp.
2560-2570, 2012-11.
[8]山崎隆介，Reijer Grimbergen，連鎖型パズルゲームにおけるパズル問題の自動創作，第 18 回ゲームプログラミングワーク
ショップ，2013-11[9]広瀬正幸，伊藤琢巳，松原仁，逆算法による詰め将棋の自動創
作，人工知能学会誌，Vol.13, No.3, pp.452-460, 1998-5[10]TIMEINTERMEDIA-パズル自動生成エンジン，
http://www.timedia.co.jp/service/ai/puzzle-engine/（アクセス日
時 2018/02/03）[11]パソコン初心者の館，http://www.pro.or.jp/~fuji/（アクセス日
時 2018/02/03）[12]ITmediaNews-「ナンプレ」パズルの良問を自動・大量生成す
る新システムhttp://www.itmedia.co.jp/news/articles/0609/06/news107.html（アクセス日時 2018/02/03）[13]石飛太一，Deep 証明数探索と詰将棋の美観評価，北陸先端科
学技術大学院大学博士論文，2016-03[14]PCwatch- 高品質なナンプレ問題を自動生成する人工知能シス
テム，https://pc.watch.impress.co.jp/docs/2006/0906/yajiuma.htm（アクセス日時 2018/02/05）－0.3924Fcol + 0.1655Fcon +2.665
・役立ち度 = －0.027Fcor－0.0536Ffall +0.3863Fused +2.9863
難しさについて交叉検証の RMSE は 0.7841 でベースラ
イン 1.0292 よりも 24％程度小さい．役立ち度については
0.5891 で，ベースライン 0.6703 より 12％程度小さい．面白さについては 5%以上 RMSE を小さくできる式は発見できていないが，これは特徴量数や問題数を増やすことで改善できると考える．
求められた式そのものは，説明をつけることができると考えている．すなわち，難しさについては「ぷよ数が多いほど考えることが多く難しい」「正解手順が多いほどどうやっても解けるので難しくない」「連鎖開始ができる場所が多いほど迷うので難しい」「2 色や 3 色しかない問題はあちこ
ちで連鎖が起きそうで難しい」「問題図で接続しているぷよが連鎖中にちぎれる問題は想像力を必要として難しい」，これらはどれも納得ができるものである．役立ち度について
は，「どうやっても解ける問題では練習にならない」「落下ぷよが多い問題は頻繁に生じないので練習にならない」「2色で完結する問題（2 色のみの配置が多い）は現実的でないので練習にならない」などと解釈できる．
４章で述べた生成法と，前節で述べた評価法を用いれば，問題の生成と選別が行える．学習は必ずしも「オフライン
で」「全初級者向けに」行われる必要はなく，オンラインで，そのプレイヤに適応する形で行われてもよい．そのプレイ
ヤのレベルや好み（問題への評価）に合わせて調整できれば，より効率の良い訓練に役立つと考える．

6. おわりに本研究では，ぷよぷよというパズルゲームを取り上げた．
初級者が実力向上とプレイ継続をするためには，なぞぷよと呼ばれる詰将棋的な問題を繰り返し解くことが重要である．その背景を踏まえ本論文では，多様ななぞぷよ問題を多数自動的に生成するアルゴリズムを提案，さらにその難しさや面白さを推測して各プレイヤごとに選別するための機械学習を提案した．現時点では機械学習に用いた問題数や特徴量が少なく，十分正確な推測ができているとはいいがたいが，線形和表現された難易度や役立ち度の推定式はある程度納得できるものであり，今後の発展が期待できる
と考える．

謝辞

本研究は JSPS 科研費 17K00506 の助成を受けたものである．

ⓒ2018 Information Processing Society of Japan

7