作者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
1F:推 tkcn:呜呜,说好不打脸的。 09/29 23:45
2F:推 godfat:这个厉害,我没想到这一步 XD (不过大概也是因为前面还没写 09/30 03:13
4F:推 PsMonkey:这样我放假回来才有办法 update T__T 09/30 06:57
5F:推 ericinttu:呜‧好痛。 09/30 08:58
6F:→ 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)
7F:推 swind:期望值的这个想法真好.... 10/01 12:06