作者stimim (qqaa)
看板java
標題Re: 踩地雷對抗人腦比賽結果!
時間Wed Sep 29 23:06:00 2010
今天早上試著把期望值的計算加進去:
當我們踩某一格後,可能的結果是
1. 他是炸彈,仍然是我的回合
2. 他不是炸彈,換對手
而這格是炸彈的話,可能會讓我確定某些格是炸彈,設此數量為 A ,
同時,令其餘的格子中,是炸彈的機率最大為 pA
若這格不是炸彈,就算不知道這格的數字是多少,也可能會讓某些格一定是炸彈
設此數量為 B ,同時,令其餘格子中,是炸彈的機率最大為 pB
我假設對手的策略是:
把一定是的格子踩完,再去踩機率最大的那一格
因此,我踩某一格 v ,可能會讓對手得 B + pB 分,也可能讓我得 1 + A + pA 分
對手得 B + pB 分的機率是 1-P(v) // v 不是炸彈的機率
我得 1 + A + pA 分的機率是 P(v)
==> 期望值 = P(v) * (1 + A + pA) - (1 - P(v)) * (B + pB)
再把 computeScore 的地方亂改一下,就大勝原本的 GeminiAI 了…
而和 Tkcn 對戰的話,用 500 張地圖比 1000 場,大概可以贏 57x ~ 59x 場
(歡呼~~)
新版的 Code:
GeminiAI_v0.9
http://ppt.cc/X,7b
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.228.152.95
推 tkcn:嗚嗚,說好不打臉的。 09/29 23:45
推 godfat:這個厲害,我沒想到這一步 XD (不過大概也是因為前面還沒寫 09/30 03:13
推 PsMonkey:麻煩還請慧賜一份到 mine.ai@psmonkey.org 09/30 06:57
推 PsMonkey:這樣我放假回來才有辦法 update T__T 09/30 06:57
推 ericinttu:嗚‧好痛。 09/30 08:58
→ stimim:我打算把 tkcn 提出的問題解決後再 update 給你 09/30 10:10
我把 code 放到 GitHub 上面去了,這樣比較好維護
想要code的人請到
http://github.com/Stimim/GeminiAI 下載,
(右上角的 Download Source)
(先前的短網址已經失效)
※ 編輯: stimim 來自: 140.112.7.59 (09/30 10:14)
推 swind:期望值的這個想法真好.... 10/01 12:06