■はじめに
Google Colabを使えば、スマホからでもPythonコードを実行できます。
今回挑戦したのは、Coolab上で動くAI対戦可能な「リバーシ(オセロ)」作りです。
リバーシは私にとって思い出深いゲーム。
高校時代、当時月刊だったASCII誌で「強いオセロプログラムを作ろう」という企画に熱中し、BASICで座標ごとの優先度を探すプログラムを書いていました。
あの頃のワクワクを、今のAI時代に再現できるならやらない手はありません。
■Geminiで作ってみよう
ChatGPT版は、既に製本化されているコードがありました。そこで方針を変え、Geminiに挑戦してもらうことに。
作成にあたり、Geminiに次の条件を提示しました。
■課題と対応策
・商標の問題:「オセロ」は登録商標 → 呼び方を「リバーシ」に変更
・思考アルゴリズム:読む手数は3手先まで、
評価は固定石の数で
・実装方法:GUIは使わず、座標入力形式に変更(Colab環境での実装を優先)
この方針を整理して、長いプロンプトをファイル化しました。
→【プロンプトへのリンク】
■実行と調整
Geminiが生成したコードをColabに貼り付け、いざ実行。
※このときColabのGeminiウィンドウがアクティブになるので、非表示にしておく。
→【Google ColabのGemini非表示方法】
動作はするものの、表示位置がずれてしまいました。
プログラムのコメントを多くしてもらい、原因を調べると余分なスペースが入り込んでいることが判明。
自分で修正することも可能ですが、更にバクを作るリスクが高いのでGeminiに再度お願いしました。
→【最終ソースへのリンク】
■動作確認
修正版を実行すると、表示ずれも解消。
座標入力だけでプレイできる、シンプルなリバーシが完成しました。
→【動作状況】
■まとめ
今回はGoogle Colab上で、Geminiと協力してミニマックス法を用いたリバーシを作りました。
いくつか表示やコードの修正が必要でしたが、最終的に快適に動くプログラムに仕上がっています。
ちなみに、このAIはかなり強く、私の腕前では太刀打ちできません…。
次の課題は、強さ調整や戦略の多様化。どなたか腕に覚えのある方は、ぜひこのAIをさらに進化させてみてください。