五子棋AI大戰OC實現

Gobang

五子棋AI大戰,該項目主要用到MVC框架,用算法搭建AI實現進攻或防守git

一.項目介紹

1.地址:

github地址:Gobanggithub

2.效果圖:

五子棋大戰1
五子棋大戰2
五子棋大戰3

二.思路介紹

大概說下思路,具體看代碼實現。算法

1.畫棋盤及落點

這個能夠去慕課網看看這個視頻:五子棋,裏面有詳細的講解,我對裏面的進行了部分優化。好比怎麼判斷兩點之間到底觸摸的哪一個點。數組

2.重來

每一個點都是一個對象,讓後把對象放數組裏面,進行刪去,或者重置。框架

3.人機模式

AI簡介.png

這裏的AI(人工智能)比較簡單,這個算法可深可淺,此項目就是比較淺的,深的能夠去看算法,此項目AI的大致思路是:優化

  • 先便利棋盤上面的點,找到AI的棋子有活四,死四的點,既下一步能造成5個點的落子點,找到就直接在此點落子。人工智能

  • 若是沒找到,就遍歷玩家活四,或者死四的點,並在此進行落點進行防守,雖然活四無法防守。.net

  • 而後這兩個點都沒找到的話,就直接找AI有造成活三,或者死三的點,進行落子進攻。視頻

  • 若是沒找到,就找用戶能造成活三,死三的點進行防守。就這樣簡單的進行交互。對象

三.用到的三方和借鑑

感謝下面做者

3.慕課網五子棋

四.結語

若是能對你有幫助,就給個star或贊鼓勵下,有什麼沒明白的歡迎留言交流。

相關文章
相關標籤/搜索