電腦將棋遊戲
- 1. 何 采 珊 組 長 陳 世 禮 謝 政 宜 杜 俊 寬 指導教授:許舜欽教授 何 承 翰 曾 暐 翔 鍾 嘉 葦 AI 電腦將棋遊戲 (MiniShogi) 專案編號 :CJCU-IM- PRJ-099-03 99 級資管系畢業專題
- 12. 13 99 級資管系畢業專題 步兵與升級後走法 (玩家二) 往前方一格 走前方三格,與左右兩格及後方一格 升級 步兵升級定義:當銀將移動到敵方底線,自動升級為金將。
- 13. 14 99 級資管系畢業專題 銀將與升級後走法 (玩家二) 走前方三格,與左後右後兩格 走前方三格,與左右兩格及後方一格 升級 銀將升級定義:當銀將移動到敵方底線,自動升級為金將。
- 14. 15 99 級資管系畢業專題 角行與升級後走法 (玩家二) 再不被阻擋的情況下,可不限距離斜行 除了角行走法外,還加上王將走法 升級 角行升級定義:當角行移動到敵方底線,自動升級為龍馬,除本身走法還加上王將走法。
- 15. 16 99 級資管系畢業專題 飛車與升級後走法 (玩家二) 可前後左右直行,不限格數,與中國象棋的車一樣 除了飛車走法外,還加上王將走法 升級 飛車升級定義:當飛車移動到敵方底線,自動升級為龍王,除本身走法外加上王將走法。
- 23. 系統開發方法 玩家 1 玩家 2 利用一維陣列所建構的棋盤配置 99 級資管系畢業專題 24 23 22 21 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3 2 1 0 11 34 29 33 28 27 31 26 30 25 32 44 39 43 38 37 41 36 40 35 42
- 24. 將棋子做編號 , 升級後棋子的編號為未升級編號 +8 玩家 1 系統開發方法 +8 9 10 12 13 金將 金將 龍王 龍馬 升級後 99 級資管系畢業專題 無棋子 0 兵 1 銀將 2 金將 3 飛車 4 角行 5 王將 6
- 25. 將棋子做編號 , 升級後棋子的編號為未升級編號 玩家 2 系統開發方法 金將 金將 龍王 龍馬 升級後 17 18 20 21 99 級資管系畢業專題 -8 無棋子 0 兵 25 銀將 26 金將 27 飛車 28 角行 29 王將 30
- 26. ( 吃子轉換 ) 玩家 1 玩家 2 升級 : 若玩家 1 兵 ( 編號 9) 升級後被吃掉則變為玩家 2 復活區的棋子 編號由 9 改變為 25 (9+16) ,反之 玩家 2 的兵升級後 ( 編號 17) 被吃則 -16 系統開發方法 99 級資管系畢業專題 未升級 : 玩家 1 的兵 ( 編號 1) 被吃掉則變為玩家 2 復活區的棋子 編號由 1 改變為 25 (1+24) ,反之 玩家 2 的兵 ( 編號 25) 被吃則 -24 無棋子 0 升級後 +8 兵 1 金將 9 銀將 2 金將 10 金將 3 飛車 4 龍王 12 角行 5 龍馬 13 王將 6 無棋子 0 升級後 -8 兵 25 金將 17 銀將 26 金將 18 金將 27 飛車 28 龍王 20 角行 29 龍馬 21 王將 30
- 27. 系統開發方法 初始棋盤設置 玩家 1 玩家 2 99 級資管系畢業專題 28 29 26 27 30 0 0 0 0 25 0 0 0 0 1 0 0 0 0 6 3 2 5 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
- 28. 28 棋盤介面 可行步指引 決定移動或吃子 ( 第一手 ) AI 人工智慧 棋子走法規則 重繪棋盤 王將被吃 遊戲結束 另起新局 決定移動或吃子 ( 第二手 ) 系統資料流程 迴圈 if else 結束 99 級資管系畢業專題 執行
- 31. 31 棋盤介面 可行步指引 棋子走法規則 99 級資管系畢業專題 點選 飛車 ,透過走法規則產生可行步指引。 移動至步兵 的位置,將步兵吃掉。
- 36. 37 AI 人工智慧 重繪棋盤 決定移動或吃子 點選 王將 出現可行步 99 級資管系畢業專題
- 38. 39 AI 人工智慧 重繪棋盤 決定移動或吃子 電腦點選飛車,吃掉 王將 。 99 級資管系畢業專題
- 41. 99 級資管系畢業專題 28 29 26 27 30 0 0 0 0 25 0 0 0 0 1 0 0 0 0 6 3 2 5 4 0 0 29 26 27 30 28 0 0 0 25 0 0 0 0 1 0 0 0 0 6 3 2 5 4 0 0 29 26 27 30 28 0 0 0 25 0 0 0 0 1 0 3 0 0 6 0 2 5 4 0 0 29 26 27 30 28 0 0 0 25 0 0 0 0 1 0 5 0 0 6 3 2 0 4 0 28 29 0 27 30 0 0 26 0 25 0 0 0 0 1 0 0 0 0 6 3 2 5 4 0 28 0 26 27 30 0 0 0 0 25 0 0 0 0 1 0 0 0 0 6 3 2 5 4 29 0 29 26 27 30 28 0 0 0 25 0 0 0 0 1 3 0 0 0 6 0 2 5 4 0
- 42. 43 15 17 15 取極大 取極小 取極大 Mini-Max 99 級資管系畢業專題 43 17 17 17 15
- 44. 深度優先搜尋 取極大 取極大 取極大 43 17 父節點的值是各子節點的值的負數的極大值 。 -43 17 -43 -15 -17 -43 負值 43 , -15 負值 15 , 取極大值 43 -15 -17 負值 17 , -15 負值 15 , 取極大值 17 43 負值 -43 , 17 負值 -17 ,取極大值 -17 -17 -15 -15 負值 15 , -17 負值 17 , 取極大 17 Negamax 99 級資管系畢業專題