iT邦幫忙

2024 iThome 鐵人賽

DAY 26
1
AI/ ML & Data

從0開始認識AI系列 第 26

Day26-暗棋遊戲

  • 分享至 

  • xImage
  •  

Day26-暗棋遊戲

在現今人工智慧的領域中,遊戲AI的研究一直是一個重要的課題。暗棋作為一種具有中國特色的棋類遊戲,吸引了許多研究者的注意。本文將介紹人機對弈中暗棋AI的設計思路,主要聚焦於minimax演算法的應用,並深入探討了評估函式和翻棋選擇的方法。

1. 規則介紹

暗棋是一種兩人對弈的棋類遊戲,棋盤為4x8的方形格子,棋子分為紅方和黑方,每方16枚棋子。棋子在下棋前是背面朝上的,玩家需要翻開棋子才能知道其身份。遊戲目標是將對方的帥(將)吃掉。

2. 演算法思想

本文採用了minimax演算法作為暗棋AI的核心思想。minimax演算法是一種用於決策樹的搜索算法,旨在找到最佳的行動策略,即使對手也採取最佳反應。其流程如下:

  1. 在每一個層級,AI都假設對手會做出對自己最不利的行動(最小化)。
  2. 在遞迴過程中,AI選擇會導致自身最大收益的行動(最大化)。

3. 評估函式

在minimax演算法中,評估函式起著關鍵作用,它用於評估棋盤局勢的優劣。本文使用了靜態和動態評估的方法:

  • 靜態評估:根據每個棋子的大小和彼此間的距離計算得分。
  • 動態評估:考慮棋子之間的威脅程度,以動態調整棋子價值。

4. 子力計算與威脅度計算

對於子力計算,本文提出了動態調整的方法,考慮了每種棋子的基本價值以及其所能吃到的存活棋子數。而在威脅度計算中,除了基本子力之外,還考慮了棋子之間的距離,以評估威脅的程度。

5. 翻棋選擇

在minimax演算法中,為了提高AI的决策效率,選擇了在第一次計算時就進行翻棋的計算。為了避免計算複雜度過大,僅在第一次計算時考慮翻棋,並使用機率計算進行最終選擇。

6. 結論 

暗棋AI的實踐不僅挑戰了AI在棋類遊戲中的應用能力,同時也體現了minimax演算法的強大性能。通過對暗棋規則的深入理解和對演算法思想的巧妙應用,暗棋AI將成為人機對弈中一個有力的競爭者。


上一篇
Day25-五子棋遊戲
下一篇
Day27-圍棋遊戲
系列文
從0開始認識AI30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言