如果這個程序是人人對戰的,那和人工智能完全沒有關系。
但是如果妳要編寫壹個帶機器人可以人機對弈的程序,那這個機器人的設計就是人工智能了。這個難度會大出數倍的(五子棋可能好壹些)。不過也有人因為編寫了戰勝世界冠軍的戰棋類機器人而出名過(當然他們用的硬件也很強),如果樓主能編出來這種程序,估計就可以商用往外賣了。
人工智能裏面要學的東西很多,從理論框架到具體的機器學習算法(這個算法和ACM裏面的簡單算法完全是兩回事)。如果樓主不是這個專業的, 而編寫這種程序更多的是為了練習編程,那麽還是建議不要涉獵人機對戰的部分了。
如果真的感興趣,建議等真的有很多時間可以開發個帶機器人的2.0版本來(樓主要真能寫出來,加我好友吧,我們可以互相交流壹下,哈哈,主要是我向妳學習壹下)
=========================
我有個同學以前編過壹個。自己曾經也試圖編掃雷,寫了壹半最後還是放棄了。。。
編程水平的話,首先要有基本的語言知識,能夠相對熟練地編寫百行以上的程序吧。
當然上面的要求太基礎了,要編這種棋類程序還需要兩點技巧:
1. 可視化編程,比如c++的話就需要熟悉win32編程或者MFC編程。這樣才能讓程序可以看到,並且視窗交互。(我也見過壹個cmd版本的五子棋,很驚嘆,不過樣子就不好看了)
2. 復雜邏輯的處理。無論是五子棋和象棋,都有自己的規則。這些規則人描述起來都比較麻煩,要正確的反應到程序中,就需要維護很多狀態信息,加入很多判斷函數(比如是否已經獲勝、走法是否合法、等等)。如果妳可視化編程已經沒有問題,妳會發現這部分邏輯設計難度是遠遠大於語言本身的。
如果以上兩點都可以克服的話,這種程序是可以編出來的。樓主加油吧。