C言語 : オセロAI プログラミング

この記事は約2分で読めます。

今回は、以前作ったCUIでの C言語 で書いた オセロAI プログラミングについて紹介します

またもやAIを乱用してしまいました。単純な人工無能です。w

 

是非遊んでみてください!

Golang : DeepLearningを用いた画像分類

※C言語はあまり書かないので、関数名がキャメルケースになってたりと、結構適当になってます。適宜書き換えてください!

実装内容

  • オセロ機能
    • 先攻と後攻選択可能
    • 数字,英字で置く場所を指定する
    • Move関数の設定を帰ると、CPU同士の戦いもできます(前・中・後盤で盤上の重みを分けているのですが、これの重みはCPUvsCPUをやり続けて、一番強い重みを選択しています)
  • AI
    • α-β法
    • 残りx手で完全読み(xは設定可能だが、多すぎると計算量が爆発的に増えます)

 

$ ./othello
先行(x)か後攻(o)か選んでください
x
 abcdefgh
1--------
2--------
3--------
4---ox---
5---xo---
6--------
7--------
8--------
石を置く場所を指定してください 5,f
 abcdefgh
1--------
2--------
3--------
4---ox---
5---xxx--
6--------
7--------
8--------
コンピュータの手
 eval:14
4,f
 abcdefgh
1--------
2--------
3--------
4---ooo--
5---xxx--
6--------
7--------
8--------
石を置く場所を指定してください

実装

ryomak/Othello
Contribute to ryomak/Othello development by creating an account on GitHub.

 

ソースコードを上げたので、git cloneしてください。

 

ちなみに、

ryomak/c
Contribute to ryomak/c development by creating an account on GitHub.

 

GBAエミュレータ用のオセロゲームもC言語で作りました。(5年前くらい)

これは、CPUはランダムに手を出します。

アドレスに直接データを入れる必要があるので、とても勉強になります。

(文字もaschii配列から作りました)

gbaOthello

 

 

 

タイトルとURLをコピーしました