0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ぷよを分類したい!(3 / 2) 棋譜化(理論)編

Posted at

この記事について

この記事は 某企業アドベントカレンダー2024 の22日目の記事で、9日目の記事 の続きとなります。


前回までのあらすじ

ぷよの色認識をする機械学習モデルを作成しました。このモデルに赤色のぷよ画像を渡すと、赤のラベル (R) を返してくれます。

色認識モデルの画面

本記事でやりたいこと

そもそも色認識のモデルを作成した理由はなんでしたっけ?
そう、 ぷよぷよのプレイ動画から棋譜を作成したい のでした。本記事では、動画からテキストへ変換する手法を探ります。


棋譜化とは

棋譜化とは、ゲームや競技の進行を記録し、「棋譜」という形式にまとめることです。目的は主に以下の2つです:

1. 保存

名勝負や重要な対局を後世に残すため。

  • 例: 歴史的な一戦を記録し、共有する。

2. 学習

過去の対局を振り返り、良い手・悪い手を分析するため。

  • 例: 自分や他人の戦略を研究する。

棋譜化に適した条件

棋譜化はどの競技でも可能なわけではありません。以下の条件を満たしていると適しています:

  1. 状態が明確に表現できる

    • プレイの進行が具体的で記録しやすい。
      例: 将棋の「△3四歩」や囲碁の「D16」。
  2. ターン制である

    • プレイヤーが順番に行動し、それぞれの手が独立している。
      例: チェスやオセロなど、手番が明確な競技。

棋譜化が難しい競技の例

状態が複雑で連続的な競技では棋譜化が難しくなります:

  • サッカーやバスケットボール
    選手の動きやプレイがリアルタイムで変化するため、テキスト形式での記録は現実的ではありません。

  • FPSやMOBAなどのeスポーツ
    瞬時のアクションや膨大なデータ量をテキストで表現するのは困難なため、リプレイや動画形式が主流です。


ぷよぷよの棋譜化

ぷよぷよは棋譜化に適しています。以下の理由から、囲碁や将棋のように棋譜が作成可能です:

  • 縦12マス、横6マスの盤面に対して、1ターンに2個ずつぷよを配置するルールが、「状態の明確さ」と「ターン制」の条件を満たしている。
  • 棋譜による学習が期待できる。

動画保存の課題

現在、ぷよぷよのプレイ学習には YouTube などの動画が利用されていますが、動画は容量が非常に大きいため、将来的に保存しきれない可能性があります。
テキスト形式で保存できれば、容量の問題を大幅に解決できます。

それでは、「ぷよ譜」を作成するための準備を整えていきましょう。


ぷよ譜に必要な情報

今回は問題を簡単にするため、一人プレイの棋譜化を前提にします。

座標系の説明

ぷよぷよ盤面の座標系は以下の通りです:

  • 縦は a~m のアルファベット
  • 横は 1~6 の数字

例えば、1手目で緑を 1a、赤を 1b に配置した場合、「1aG1bR」と記録します。
2手目以降も同様に表記し、カンマ区切りでテキストへ変換します。

色認識モデルの画面
ぷよ譜例

有効フレームの決定

有効フレームとは、N手目の盤面として判断するにふさわしい動画フレームを指します。

プレイ動画には複数のフレームが含まれており、その中から有効フレームを判定する必要があります。例えば、以下のような中間フレームも含まれるため、どれが有効なのかを機械的に判断するルールが求められます。

中間フレーム例

結言

次回の記事では、この問題の解決方法を含め、実際に動画から棋譜化までのプロセスを解説します! ネクストコナンズヒント~!

「ネクスト・ネクネク」

それではまた来年〜(?????)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?