freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于android技術(shù)的中國象棋人機(jī)對(duì)弈游戲的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)論文-資料下載頁

2025-08-19 19:53本頁面

【導(dǎo)讀】中國象棋是一款智力休閑游戲,具有歷史悠久而且擁有巨大的游戲愛好者群體,皆宜的娛樂游戲。隨著手持設(shè)備、智能手機(jī)的普及,搭載Android操作系統(tǒng)的智能手。本論文通過實(shí)際應(yīng)用軟件的開發(fā)深入分析和研究Android開發(fā)技術(shù)。本文實(shí)現(xiàn)了中國象棋在計(jì)算機(jī)中表示問題,基于Android平臺(tái)應(yīng)用,腦能夠通過產(chǎn)生著法,搜索,估計(jì)來產(chǎn)生一步最優(yōu)的走棋,實(shí)現(xiàn)人機(jī)會(huì)話的目的。

  

【正文】 點(diǎn)擊幫助界面中的“返回”按鈕,界面返回至菜單界面。 ( 1)點(diǎn)擊“開始游戲”按鈕 ,界面切換至游戲界面如(圖 5)所示。當(dāng)前由“紅將”即紅棋先走,聲音狀態(tài)為關(guān)閉狀態(tài)。 基于 Android技術(shù)的中國象棋人機(jī)對(duì)弈游戲的設(shè)計(jì)與實(shí)現(xiàn) 31 圖 游戲界面 ( 2) 玩家先走棋,玩家走一步棋;當(dāng)前位置顯示為黑帥,輪到電腦走棋如圖 所示: 圖 輪到電腦走棋 基于 Android技術(shù)的中國象棋人機(jī)對(duì)弈游戲的設(shè)計(jì)與實(shí)現(xiàn) 32 ( 3)電腦走完棋后當(dāng)前位置顯示紅將,輪到玩家走棋;如圖 所示: 圖 電腦走完棋轉(zhuǎn)換玩家 ( 4)對(duì)局結(jié)束紅方將輸了(電腦贏了 )如圖 所示: 圖 紅方玩家輸了(電腦勝利) 基于 Android技術(shù)的中國象棋人機(jī)對(duì)弈游戲的設(shè)計(jì)與實(shí)現(xiàn) 33 (5)對(duì)局結(jié)束紅方將贏了(電腦輸了)如圖 所示: 圖 紅方玩家贏了(電腦輸了) ( 5)點(diǎn)擊“您輸了”小框體或者點(diǎn)擊“退出”按鈕退出游戲界面切換到菜單界面,如圖 所示: 圖 從游戲界面返回菜單界面 基于 Android技術(shù)的中國象棋人機(jī)對(duì)弈游戲的設(shè)計(jì)與實(shí)現(xiàn) 34 6 運(yùn)行測試 系統(tǒng)測試是軟件開發(fā)投入使用之前必不可少的一個(gè)步驟,同時(shí)也必須嚴(yán)格要求進(jìn)行測試,對(duì)程序的功能,性能、可用性、客戶端兼容性和美觀等測試。測試完成后要上交測試報(bào)告,我們可以根據(jù)測試報(bào)告及 時(shí)發(fā)現(xiàn)問題并提出解決方案,便于系統(tǒng)的維護(hù)與升級(jí)。 經(jīng)過最初的測試,系統(tǒng)能正常運(yùn)行,能夠很好地實(shí)現(xiàn)模塊界面間的切換,音樂聲音的開關(guān),象棋能夠按照規(guī)則來行走等功能都能正常運(yùn)行;同時(shí)電腦也可以進(jìn)行走棋,實(shí)現(xiàn)人和電腦下棋。不足是在游戲過程中,人和電腦對(duì)弈電腦著法比較粗糙,只是初步的實(shí)現(xiàn)人工智能。 通過對(duì)大量資料的了解學(xué)習(xí),最終初步設(shè)計(jì)實(shí)現(xiàn)了 負(fù)極大值搜索引擎的搜索和局面的評(píng)估代碼。 對(duì)于 負(fù)極大值搜索,由于對(duì)于每層每個(gè)節(jié)點(diǎn)都要掃描評(píng)估,如果層次增加,那樣的數(shù)據(jù)量也就相當(dāng)?shù)拇?,以至于搜索的效率也?huì)變 差。 造成象棋對(duì)弈過程中電腦走棋思索時(shí)間太長,將使得玩家受不了。對(duì)于搜索算法和局面評(píng)估還有待于繼續(xù)實(shí)現(xiàn)和完善。 基于 Android技術(shù)的中國象棋人機(jī)對(duì)弈游戲的設(shè)計(jì)與實(shí)現(xiàn) 35 7 結(jié)束語 本論文詳細(xì)論述了基于 Android 技術(shù)中國象棋人機(jī)對(duì)弈的設(shè)計(jì)與實(shí)現(xiàn),采用了JDK, Eclipse for IDE, Android SDK, ADT 等工具。使得應(yīng)用程序基本實(shí)現(xiàn)了系統(tǒng)功能需求分析中的基本功能。對(duì) Android 手機(jī)的兼容,歡迎界面、菜單界面、幫助界面、游戲界面之間的切換,背景音樂的開與關(guān),安全的退出游戲,棋子按規(guī)則行走等基本功能都得到實(shí)現(xiàn);而且粗 略的完成了象棋的人機(jī)對(duì)弈。進(jìn)入游戲界面便可以開始和電腦對(duì)弈。 由于技術(shù)和時(shí)間的問題,本系統(tǒng)對(duì)弈時(shí)電腦走棋相對(duì)比較粗糙,系統(tǒng)中還存在著許多不足的地方需要改正和完善,如人機(jī)對(duì)戰(zhàn)時(shí)電腦走棋人工智能還欠缺。由于對(duì)博弈樹的算法沒能夠完全掌握,只是初步設(shè)計(jì)實(shí)現(xiàn)了 負(fù)極大值搜索引擎 。對(duì)于人機(jī)博弈搜索算法只是用了 負(fù)極大值搜索,負(fù)極大值搜索由于搜索太多效率較差 由此設(shè)想可以通過對(duì)幾種不同的算法如歷史表法、迭代加深、極小窗口、渴望搜索、 alphabeta 等的同時(shí)實(shí)現(xiàn)然后選擇有效的搜索,來提高電腦人工智能的效率。對(duì)于這些算法在后面工作中有待于實(shí)現(xiàn)。 基于 Android技術(shù)的中國象棋人機(jī)對(duì)弈游戲的設(shè)計(jì)與實(shí)現(xiàn) 36 致 謝 經(jīng)過這段時(shí)間的忙碌和工作,本次畢業(yè)設(shè)計(jì)已經(jīng)接近尾聲,作為一個(gè)本科生的畢業(yè)設(shè)計(jì),由于經(jīng)驗(yàn)的匱乏,難免有許多考慮不周全的地方,如果沒有導(dǎo)師的督促指導(dǎo),以及一起工作的同學(xué)們的支持,想要完成這個(gè)設(shè)計(jì)是難以 想象 的。 在此更要感謝我的導(dǎo)師 林椹尠 老師 和專業(yè)老師,是你們的細(xì)心指導(dǎo)和關(guān)懷,使我能夠順利的完成畢業(yè)論文。 我的設(shè)計(jì)較為復(fù)雜煩瑣,而且涉及到的一 些技術(shù)算法很是生僻,但是林老師仍然細(xì)心地糾正我程序設(shè)計(jì)中的錯(cuò)誤,并且為我提供閱讀資料和開發(fā)文檔供我參考。 在我的學(xué)業(yè)和論文的研究工作中無不傾注著老師們辛勤的汗水和心血。老師的嚴(yán)謹(jǐn)治學(xué)態(tài)度、淵博的知識(shí)、無私的奉獻(xiàn)精神使我深受啟迪。從尊敬的導(dǎo)師身上,我不僅學(xué)到了扎實(shí)、寬廣的專業(yè)知識(shí),也學(xué)到了做人的道理。在此我要向我的導(dǎo)師致以最衷心的感謝和深深的敬意。 然后還要感謝大學(xué)四年來所有的老師,為我們打下一定的技術(shù)知識(shí)的基礎(chǔ);同時(shí)還要感謝所有的同學(xué)們,正是因?yàn)橛辛四銈兊闹С趾凸膭?lì)。此次畢業(yè)設(shè)計(jì)才會(huì)順利完成。 最后感謝西安 郵電大學(xué)和理學(xué)院這四年來對(duì)我的教導(dǎo),使我能夠成長為現(xiàn)在這樣一個(gè)擁有技術(shù),即將踏入社會(huì)的學(xué)子。 基于 Android技術(shù)的中國象棋人機(jī)對(duì)弈游戲的設(shè)計(jì)與實(shí)現(xiàn) 37 參考文獻(xiàn) [1] 徐心和 , 王驕 . 中國象棋計(jì)算機(jī)博弈關(guān)鍵技術(shù)分析 .小型微型計(jì)算機(jī)系統(tǒng) , 2020, 27(6): 961– 965。 [2] 黃晨等 . 象棋百科全書 . 。 [3] 馬占欣 , 李亞 , 陸玉昌 . 用遺傳算法解決博弈問題 . 河南科學(xué) , 2020, 25(2): 273277。 [4]王驕 , 王濤 , 羅艷紅 , 等 . 中國象棋計(jì)算機(jī)博弈系統(tǒng)評(píng)估函數(shù)的自適應(yīng)遺傳算法實(shí)現(xiàn) . 東北大學(xué)學(xué)報(bào) , 2020, 126(10): 949952.。 [5] 付強(qiáng) , 陳煥文 . 中國象棋人機(jī)對(duì)弈的自學(xué)習(xí)方法研究 . 計(jì)算機(jī)技術(shù)與發(fā)展 , 2020, 17(12): 7679。 [6] 王贈(zèng)凱 , 呂維先 . 機(jī)器博弈搜索技術(shù)分析 . 軟件導(dǎo)刊 , 2020, 2: 2627。 [7] 張從明、馬京成 . 網(wǎng)絡(luò)教學(xué)設(shè)計(jì) . 第四軍醫(yī)大學(xué)出版社, 2020。 [8] 周瑋 , 王水 濤 , 孫旸 . 中國象棋計(jì)算機(jī)博弈中的一種數(shù)據(jù)結(jié)構(gòu)方法 . 計(jì)算機(jī)工程與應(yīng)用 , :219。 基于 Android技術(shù)的中國象棋人機(jī)對(duì)弈游戲的設(shè)計(jì)與實(shí)現(xiàn) 38 附錄: package 。 import 。//引入相關(guān)的包 import 。 import 。 import 。 import 。 import 。 import 。 public class ChessActivity extends Activity { boolean isSound = true。//是否播放聲音 MediaPlayer startSound。//開始和菜單時(shí)的音樂 MediaPlayer gamemusic。//游戲聲音 Handler myHandler = new Handler(){//用來 更新 UI線程中 的控件 public void handleMessage(Message msg) { if( == 1){ //WeleView或 HelpView或 GameView傳來的消息,切換到 MenuView initMenuView()。//初始化并切換到菜單界面 } else if( == 2){//MenuView傳來的消息,切換到 GameView initGameView()。//初始化并切換到游戲界面 } else if( == 3){//MenuView傳來的消息,切換到 HelpView initHelpView()。//初始化并切換到幫助界面 } } }。 public void onCreate(Bundle savedInstanceState) {//重寫的 onCreate (savedInstanceState)。 基于 Android技術(shù)的中國象棋人機(jī)對(duì)弈游戲的設(shè)計(jì)與實(shí)現(xiàn) 39 //全屏 requestWindowFeature()。 getWindow().setFlags( , )。 startSound = (this, )。//加載歡迎聲音 (true)。//設(shè)置游戲聲音循環(huán)播放 gamemusic = (this, )。//游戲過程的背景聲音 (true)。//設(shè)置游戲聲音循環(huán)播放 ()。//初始化歡迎界面 } public void initWeleView(){//初始化歡迎界面 (new WeleView(this,this))。//切換到歡迎界面 if(isSound){//需要播放聲音時(shí) ()。//播放聲音 } } public void initGameView(){//初始化游戲界面 (new GameView(this,this))。 //切換到游戲界面 } public void initMenuView(){//初始化菜單界面 if(startSound != null){//停止 ()。//停止播放聲音 startSound = null。 } if(){//是否播放聲音 ()。//播放聲音 } (new MenuView(this,this))。//切換 View } public void initHelpView(){//初始化幫助界面 (new HelpView(this,this))。//切換到幫助界面 基于 Android技術(shù)的中國象棋人機(jī)對(duì)弈游戲的設(shè)計(jì)與實(shí)現(xiàn) 40 } } package 。 /** * 該類為棋子的一個(gè)走法 * 包含是什么棋子 * 起始點(diǎn)的位置 * 目標(biāo)點(diǎn)的位置 * 以及估值時(shí)所用到的 score */ public class ChessMove { int ChessID。//表明是什么棋子 int fromX。//起始的坐標(biāo) int fromY。 int toX。//目的地的坐標(biāo) int toY。 int score。//值 ,估值時(shí)會(huì)用到 public ChessMove(int ChessID, int fromX,int fromY,int toX,int toY,int score){//構(gòu)造器 = ChessID。//棋子的類型 = fromX。//棋子的起始坐標(biāo) = fromY。 = toX。//棋子的目標(biāo)點(diǎn) x坐標(biāo) = toY。//棋子的目標(biāo)點(diǎn) y坐標(biāo) = score。 } } 基于 Android技術(shù)的中國象棋人機(jī)對(duì)弈游戲的設(shè)計(jì)與實(shí)現(xiàn) 41 package 。 public class SearchEngine { //表示棋盤棋的分布 public static int m_curPosition[][] = new int[10][9]。 //記錄最佳走棋 public static ChessMove bestMove = new ChessMove()。 //走法產(chǎn)生七器 public static GuiZe moveGen = new GuiZe()。 //估值產(chǎn)生器 public static Eveluation m_eve = new Eveluation()。 //搜索深度 public static int m_searchDepth。 //當(dāng)前搜索深度 public static int m_maxDepth。 //移動(dòng)棋子 public static void searchAgoodMove(int position[][]){} public static int makeMove(ChessMove data) { int chessID。 chessID = m_curPosition[][]。 m_curPosition[][] = m_curPosition[][]。 m_curPosition[][] = 。
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1