青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 0,  comments - 5,  trackbacks - 0

最新版本地址:/Files/saha/CCS0.5.rar
參考資料:http://www.sluijten.com/winglet/   http://www.frayn.net/beowulf/theory.html
Monday, April 16, 2012 總體框架設計
           分離UI和AI算法,以利于以后不同平臺的移植。其中AI算法部分做到平臺無關性。
    基本框架如下:




Thursday, April 19, 2012簡單的UI及棋子移動實現
設置棋盤為16*16的數組。冗余部分便于棋子出界判斷。
紅棋值從8-14,黑棋值從16-22.其余部分全部為0

基本UI實現,基本象棋類實現。

Tuesday, April 24, 2012實現棋子規則
1.   實現各個棋子的走法規則,將照面規則暫時未實現。
2.   實現了將軍判斷函數
3.   支持了翻轉功能
4.   實現一些細節。結束后不允許再走棋,重新初始化棋盤等。

Thursday, April 26, 2012
重新實現棋子走法規則判斷邏輯如下:


Friday, May 11, 2012
1.基本的人工智能算法 Alpha-Beta搜索.
其中

Alpha為搜索到的最好值,beta為對方的最壞值。一般起始時設置Alpha為負無窮,beta為正無窮。
之所以在遞歸內部要傳入-beta和-alpha是為了反應對方走棋,及簡化代碼。即表示我方的最好值與對方的最壞值的對應關系。

 

 

int AlphaBeta(int depth, int alpha, int beta) 
{
    if (depth == 0) 
    {
        return Evaluate(); //如果是第一層返回局面估計
    }
    GenerateLegalMoves(); //產生當前的所有下一步走法
    while (MovesLeft()) //排序并遍歷每一步走法
    {
        MakeNextMove(); //走一步

        //遞歸搜索
        val = -AlphaBeta(depth - 1, -beta, -alpha); 
        UnmakeMove();  //回退該步

        //如果比最壞情況還壞,則返回最壞情況
        if (val >= beta) 
        {
            return beta;
        }

        //如果比最好情況差,則保持它為目前探索到的最好情況
        if (val > alpha) 
        {
            alpha = val;
        }
          
    }
    return alpha;  //返回目前找到的最好情況,其對應的走法即是搜索到的最好著法
}

從根局面開始,默認的Alpha和Beta值分別為己方被殺和對方被殺的分值,遞歸搜索己方所有走法。
當一個走法返回的估計值A1>=Beta時,認為該節點是殺棋,則己方必選擇該走法,因此其余節點不用再搜索,只要保存該走法并返回,稱為beta截斷。
當一個走法A1<=Alpha時,認為該節點比己方所能接受的最差結果更差,因此不保留該走法(這里無法做截斷)。
當一個走法A1>Alpha && A1<Beta時,認為該節點是主變例節點(PV Principal Variation),需要保留該走法,并將Alpha設為A1,并繼續探索剩余節點。
對于對方走棋時,只要將上下限取反調用同一alpha-beta函數即可。
2.增加自動測試功能,能電腦vs電腦測試
3.增加不同的電腦級別,以搜索層數劃分

4.增加悔一步棋的功能
V0.1版本完成

 

 

Wednesday, May 12, 2012
1.
增加聲音開關功能
2.悔棋功能,最多支持悔512步
V0.2版本完成

Wednesday, May 30, 2012
1.
空著向前裁剪
空著裁剪的含義就是如果當前的局勢優勢巨大,即使不走這一步棋讓對方走還是能產生beta截斷,相當于少搜索了一層,能大大縮短搜索的時間。
存在的一個問題是在殘局階段,當存在無棋可走的情況下,使用空著恰恰避開了這種問題,從而導致估計不準確,因此在殘局時需要進行判斷來決定是否使用空著裁剪,一種流行的簡單做法是到了殘局就不進行空著裁剪。
2.靜態搜索

相對穩定的局面稱為“安靜”(Quiet)或“寂靜”(Quiescent)的局面,它們需要通過“靜態搜索”(Quiescence Search)來達到。
目前采用簡單的策略即只考慮所有的吃子走法來進行搜索。

3.局面檢驗Zobrist鍵值
Zobrist用一個整型數值來代表一個棋的局面,目前采用的做法是對于每一個棋盤位置的14種情況(7種紅棋,7種黑棋)產生14*256個隨機數,每一個棋局是所有存在棋子的棋盤位置的隨機數異或而得到的一個整型值(稱為Zobrist鍵值),據前人經驗這種表示方法出現沖突的概率非常小。這種表示方法的另一個好處是去除一個棋子和添加一個棋子都是異或操作(由于異或的異或得到原來的值),利用Zobrist鍵值可以做重復局面判斷,長將判斷。
V0.3版本完成

 Thursday, June 14, 2012
1.修改Zobrist鍵值從原來的32位無符號變為int64(據前人經驗32位存在沖突有很多爭論,而64位雖然仍存在沖突的局面,但是實戰中這種情況非常罕見)。
2.修改重復局面檢查函數,從以前的把所有歷史局面全部檢查到現在的只檢查最近6步,以減少不必要的檢查。
3.增加主變例搜索優化。即對當前搜索存在PV走法時,對以后的每一個節點搜索的搜索上下限先設為[-Alpha-1, -Alpha],如果當前節點的值比pv值要大則重新對該節點進行正常搜索,否則丟棄該節點進行下一個節點的搜索。據統計可以提供10%的搜索效率,在程序中直接使用沒有明顯的變化。。。

4.增加置換表。
基本思想:每一個搜索過的局面都記錄他的平均值,以避免以后搜索到同一局面時的重復計算工作。
使用zobrist-hash值記錄每個搜索過的局面。一個置換表的元素包括以下結構:

    CCSINT64 ulZobristKey; //hash-key
    CCSUINT32 depth : 
8;   //搜索深度
    CCSUINT32 flags : 
2;    //標志,分為PV,BETA,ALPHA3種
    CCSUINT32 mvBest : 
22;  //該局面下的最佳走法
    CCSINT32 nValue;    //該局面下的估計值
其中flags3種標志代表不同含義。
pv表示主變例搜索的結果,即這時的nValue是個精確值,可以直接使用
BETA表示該局面的估計值至少為nValue。
ALPHA表示該局面的估計值最多為nValue。
在alpha-beta搜索中的使用如下:
if (HASH_PV == pItem->flags)
{
    
return nValue;  
}
if (HASH_BETA == pItem->flags && nValue >= nBeta) 
{
    
return nBeta;

else if (HASH_ALPHA == pItem->flags && nValue <= nAlpha)
{
    
return nAlpha;
}  
return VALUEUNKNOWN;
是否正確還有待測試。
使用置換表時除了判斷zobrist-hash值是否相同外,還要判斷當前走棋方是否與記錄中的走棋方一致,不一致不能替換.

 Friday, July 27, 2012
修改置換表的使用方式
去除輸棋后的不文明用語
在騰訊游戲中進行測試,使用中等水平在1000分以下玩家中勝率95%+

posted on 2012-04-16 17:44 saha 閱讀(828) 評論(0)  編輯 收藏 引用 所屬分類: 棋類AI

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理



<2025年12月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

常用鏈接

留言簿

文章分類

文章檔案

收藏夾

搜索

  •  

最新評論

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产日韩精品一区二区三区在线 | 欧美午夜电影完整版| 在线日韩欧美| 免费成人毛片| 久久先锋影音| 99国产精品一区| 亚洲一区欧美一区| 亚洲深夜激情| 国产欧美精品xxxx另类| 欧美一级视频精品观看| 欧美一区二区免费| 黄色资源网久久资源365| 欧美激情在线免费观看| 欧美国产日韩一区| 亚洲免费在线视频| 久久丁香综合五月国产三级网站| 在线观看国产欧美| 亚洲国产欧美在线人成| 欧美日韩国产在线播放| 亚洲综合成人婷婷小说| 久久国产精品久久国产精品| 亚洲激情电影在线| 亚洲视频第一页| 一区二区三区在线观看视频| 亚洲高清不卡在线| 国产精品自拍一区| 亚洲第一视频| 国产精品免费网站在线观看| 久久综合一区| 国产精品国产三级国产aⅴ浪潮 | 最新高清无码专区| 亚洲天堂av高清| 韩国av一区二区三区四区| 亚洲欧洲一区二区三区在线观看| 国产精品色婷婷久久58| 亚洲第一天堂av| 国产精品尤物| 亚洲精品视频免费| 一区在线观看视频| 亚洲天堂av电影| 日韩天堂在线视频| 久久全球大尺度高清视频| 亚洲欧美日韩区| 欧美区一区二区三区| 久久久久久久999| 欧美性大战久久久久久久蜜臀| 久久久综合免费视频| 欧美午夜不卡| 亚洲精品国产系列| 伊人久久婷婷| 欧美一区在线看| 欧美一级播放| 欧美午夜宅男影院| 亚洲日本无吗高清不卡| 亚洲黄色av| 久久午夜精品| 久久视频精品在线| 国产啪精品视频| 亚洲欧美日本日韩| 香蕉久久夜色精品| 国产精品久久久一本精品| 亚洲老板91色精品久久| 亚洲另类一区二区| 美乳少妇欧美精品| 欧美大胆a视频| 91久久线看在观草草青青| 久久久久久91香蕉国产| 久久亚洲综合色一区二区三区| 国产欧美视频一区二区| 午夜欧美大尺度福利影院在线看| 亚洲欧美色一区| 国产日本欧美一区二区| 欧美一区二区免费视频| 欧美一区二区三区四区在线观看地址 | 一区二区三区国产| 亚洲天堂久久| 国产精品私人影院| 欧美一级艳片视频免费观看| 久久成人18免费观看| 国产一区二区成人久久免费影院| 亚洲欧美激情四射在线日| 久久精品一本| 亚洲国产精品成人综合| 欧美韩日一区二区三区| 日韩香蕉视频| 久久av最新网址| 激情综合亚洲| 欧美—级高清免费播放| 一本久道综合久久精品| 欧美一区精品| 亚洲成人在线网| 欧美激情无毛| 亚洲一区欧美| 美女图片一区二区| 亚洲乱亚洲高清| 欧美午夜精品久久久| 午夜日韩激情| 亚洲欧洲一区二区三区| 午夜在线精品偷拍| 亚洲大片av| 欧美视频免费| 久久久久久久久一区二区| 亚洲精品在线电影| 久久精品夜夜夜夜久久| 日韩视频二区| 国内一区二区三区在线视频| 欧美激情bt| 午夜激情一区| 亚洲欧洲精品一区二区三区不卡 | 在线播放日韩| 欧美午夜在线一二页| 久久全国免费视频| 亚洲一卡久久| 亚洲电影成人| 久久婷婷丁香| 亚洲综合清纯丝袜自拍| 在线观看国产一区二区| 国产精品区一区二区三区| 欧美电影免费观看大全| 久久国产精品网站| 亚洲女性裸体视频| 亚洲精品久久视频| 久久亚洲春色中文字幕| 亚洲综合首页| 日韩一级裸体免费视频| 好看不卡的中文字幕| 国产精品免费观看视频| 欧美韩日亚洲| 裸体歌舞表演一区二区| 欧美在线亚洲综合一区| 夜夜爽www精品| 亚洲国产精品成人一区二区| 久久免费视频在线| 欧美一区免费| 欧美在线播放| 亚洲欧美国产一区二区三区| 亚洲精选一区二区| 亚洲黄色尤物视频| 伊人婷婷久久| 在线欧美影院| 精品va天堂亚洲国产| 国内精品久久久久影院色| 国产精品尤物| 国产精品免费观看在线| 国产精品久久久久久影视 | 久久久亚洲国产天美传媒修理工| 欧美一级久久久| 午夜精品久久久| 午夜在线精品| 久久精品视频99| 久久久久五月天| 久久人人精品| 在线免费一区三区| 久久久久中文| 欧美日韩国产在线播放| 亚洲人成网站精品片在线观看| 在线播放中文字幕一区| 久久九九精品99国产精品| 免费日韩视频| 亚洲视频图片小说| 国产女主播一区二区三区| 久久成人羞羞网站| 亚洲国产va精品久久久不卡综合| 亚洲免费高清| 亚洲片在线观看| 国产日韩av在线播放| 国产小视频国产精品| 国产午夜精品全部视频在线播放 | 日韩亚洲欧美在线观看| 中国女人久久久| 性欧美精品高清| 久久女同互慰一区二区三区| 女主播福利一区| 欧美色区777第一页| 国产一区二区按摩在线观看| 亚洲级视频在线观看免费1级| 99精品国产99久久久久久福利| 亚洲欧美日韩综合国产aⅴ| 久久久精品午夜少妇| 亚洲国产裸拍裸体视频在线观看乱了 | 在线不卡欧美| 99精品免费视频| 亚洲欧美中文另类| 免费观看成人鲁鲁鲁鲁鲁视频| 亚洲人成人77777线观看| 亚洲欧美日韩直播| 亚洲美女诱惑| 久久久www成人免费毛片麻豆| 亚洲国产成人精品久久久国产成人一区 | 国产日韩欧美在线看| 亚洲国产欧美一区二区三区久久 | 国产一区二区成人久久免费影院| 亚洲成人在线观看视频| 亚洲一区免费观看| 欧美成人在线免费观看| 亚洲综合另类| 欧美日韩精品一二三区| 1024欧美极品| 久久九九热免费视频| 一区二区三区四区五区视频|