[Kings Table]

nimをプレーするコンピューター・プログラム

nimは、ゲームルールが明確で、プレーに必要な環境も単純であり、戦略の研究も 十分にされているため、コンピューター・プログラミングの題材として適切です。nimについては、参考文献/石とりゲームの数理参考文献/数学セミナー 数理で読み解く石取りゲーム?, 参考文献/ゲームと競技の数学 遊びのサイエンス, 参考文献/ゲームにひそむ数理にも、詳しい研究が発表されています。

館長が以前所有していた、Sharp MZ-80Kのデモプログラムに、BASICで記述された nimが入っていました。プレーして、ほとんど勝てた記憶がないほど、強いプログラム でした。当時は、必勝戦略もしらず、ソースコードの解析もしていなかったので、 なんとも言えませんが、プログラムに必勝戦略が織り込まれていたのかもしれません。

Table of Contents

本連載は、AgileなスタイルでのWebベースアプリケーションを 開発する工程を理解できるよう、 下記のように制作工程をなぞる形式で全編を構成しました。 掲載している資料中、 制作の途中に、設計の不備やプログラムのバグが残っている箇所もありますが、 工程が進むにしたがって修正されていきます。*1

  • 方向付け (1)
  • 分析 (2~4)
  • 構築 (5~9)
  • 導入 (10)
  • 完成したプログラム nim Online

NOTE

本編で使うRubyプログラミングで、一歩進んだ技術を学びたいかたは、参考文献/Rubyによるデザインパターンをご覧ください。

アブストラクトゲームとコンピューター 1, 2, 3や、Abstract Strategy Games Online Projectにもゲームプログラミングに関連する記事を掲載しています。

SEE ALSO

Feedback

選択肢 投票
おもしろい 3  
役に立つ 2  
興味ない 0  
理解できない 0  
やってみたい 0  
食べてみたい 0  

*1 ですので、掲載してあるプログラムを参考にして手を加える場合は、連載終り時点のソースを使うようにしてください。

TOP   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS   [Privacy Policy]  
Last-modified: 2021-11-24 (水) 22:56:18 (553d)