我们先从作战的概率计算公式开始研究,因为它在计算过程中出现的各种情况最复杂,因此也最具有代表性。
〈一〉作战的概率计算公式:
(A/(A+D))^y*(D/(A+D))^z*nCr(y+z-1,y-1)
——————————————————————————————————————
^表示幂(次方)运算
A=攻击方攻击值
D=防守方防御值
x=AHP=攻击方HP
y=DHP=防守方HP(攻击方获胜的次数)
z=攻击方HP的损失量(防守方获胜的次数),(z=0,1,2...x-1)
nCr(y+z-1,y-1)是公式中最不好确定的。因为双方交战会出现数种战况,每种战况又有数种结果,虽然这些结果不同但最终的战况是不变的,它表示的就是在每种战况下会出现多少种结果(哎……这一点可能解释得很不清楚,你还是看下面的例子吧)。在真正计算的时候这是一个组合,即(y+z-1)!/(y-1)!(y+z-1-(y-1))!
上面的!表示阶乘计算。阶乘计算的方法很简单,比如:1!=1,2!=1x2,3!=1x2x3,……,0!=1
——————————————————————————————————————
〈第一步:求概率〉
作战概率计算起来并不难,但是要分好多种情况。我们就用具有不同HP值的剑士(A/D/M 3/2/1)vs长矛兵(A/D/M 1/2/1)的例子来一一说明:
条件:由于每次交锋的概率是不变的,所以A/(A+D)=3/(3+2)=0.6,D/(A+D)=0.4。同时我们假设最终总是攻击方获胜。
1、AHP=3, DHP=3
(1)第一种战况,攻击方(A)胜3场,防守方(D)胜0场:
出现的结果数为:(3+0-1)!/(3-1)!(3+0-1-(3-1))!=1(也就是只出现攻击方3场全胜这一结果,记为AAA)
攻击方获胜的概率为:(0.6)^3*(0.4)^0*1=21.6%
(2)第二种战况,攻击方(A)胜3场,防守方(D)胜1场:
出现的结果数为:(3+1-1)!/(3-1)!(3+1-1-(3-1))!=3(出现的3种结果是DAAA(防守方在第1次交锋中获胜),ADAA(防守方在第2次交锋中获胜),AADA(防守方在第3次交锋中获胜))
攻击方获胜的概率为:(0.6)^3*(0.4)^1*3=25.92%
(3)第三种战况,攻击方(A)胜3场,防守方(D)胜2场(最多只能胜AHP-1场):
出现的结果数为:(3+2-1)!/(3-1)!(3+2-1-(3-1))!=6(出现的6种结果是ADADA,DADAA,ADDAA,AADDA,DDAAA,DAADA)
攻击方获胜的概率为:(0.6)^3*(0.4)^2*6=20.736%
最后,这名剑士在同长矛兵作战的整个战斗中,最终能取得胜利的概率为21.6%+25.92%+20.736%=68.256%
——————————————————————————————————————
2、AHP=3, DHP=4
(1)第一种战况,A胜4场,D胜0场:
出现的结果数为:(4+0-1)!/(4-1)!(4+0-1-(4-1))!=1
攻击方获胜的概率为:(0.6)^4*(0.4)^0*1=12.96%
(2)第二种战况,A胜4场,D胜1场:
出现的结果数为:(4+1-1)!/(4-1)!(4+1-1-(4-1))!=4
攻击方获胜的概率为:(0.6)^4*(0.4)^1*4=20.736%
(3)第三种战况,A胜4场,D胜2场:
出现的结果数为:(4+2-1)!/(4-1)!(4+2-1-(4-1))!=10
攻击方获胜的概率为:(0.6)^4*(0.4)^2*10=20.736%
最终能取得胜利的概率为12.96%+20.736%+20.736%=54.432%
——————————————————————————————————————
3、AHP=4, DHP=3
(1)第一种战况,A胜3场,D胜0场:
出现的结果数为:(3+0-1)!/(3-1)!(3+0-1-(3-1))!=1
攻击方获胜的概率为:(0.6)^3*(0.4)^0*1=21.6%
(2)第二种战况,A胜3场,D胜1场:
出现的结果数为:(3+1-1)!/(3-1)!(3+1-1-(3-1))!=3
攻击方获胜的概率为:(0.6)^3*(0.4)^1*3=25.92%
(3)第三种战况,A胜3场,D胜2场:
出现的结果数为:(3+2-1)!/(3-1)!(3+2-1-(3-1))!=6
攻击方获胜的概率为:(0.6)^3*(0.4)^2*6=20.736%
(4)第四种战况,A胜3场,D胜3场:
出现的结果数为:(3+3-1)!/(3-1)!(3+3-1-(3-1))!=10
攻击方获胜的概率为:(0.6)^3*(0.4)^3*10=13.824%
最终能取得胜利的概率为21.6%+25.92%+20.736%+13.824%=82.08%
——————————————————————————————————————
4、AHP=4, DHP=4
(1)第一种战况,A胜4场,D胜0场:
出现的结果数为:(4+0-1)!/(4-1)!(4+0-1-(4-1))!=1
攻击方获胜的概率为:(0.6)^4*(0.4)^0*1=12.96%
(2)第二种战况,A胜4场,D胜1场:
出现的结果数为:(4+1-1)!/(4-1)!(4+1-1-(4-1))!=4
攻击方获胜的概率为:(0.6)^4*(0.4)^1*4=20.736%
(3)第三种战况,A胜4场,D胜2场:
出现的结果数为:(4+2-1)!/(4-1)!(4+2-1-(4-1))!=10
攻击方获胜的概率为:(0.6)^4*(0.4)^2*10=20.736%
(3)第四种战况,A胜4场,D胜3场:
出现的结果数为:(4+3-1)!/(4-1)!(4+3-1-(4-1))!=20
攻击方获胜的概率为:(0.6)^4*(0.4)^3*20=16.5888%
最终能取得胜利的概率为12.96%+20.736%+20.736%+16.5888%=71.02%
——————————————————————————————————————
〈第二步:求均值看其分布〉
前面我们讲过了,概率算出来好多,每种情况的都有,但到底那种情况出现的最普遍呢?这就需要计算均值看其分布。均值是这样算得:
(A种战况下的概率x该情况下的结果数+B种战况下的概率x该情况下的结果数+……)/所有战况下的结果总数=这个作战单位这次作战获胜的概率均值
哎……表述总是很晦涩,还是看例子:
1、AHP=3, DHP=3
(21.6%*1+25.92%*3+20.736%*6)/(1+3+6)=22.3776%
2、AHP=3, DHP=4
(12.96%*1+20.736%*4+20.736%*10)/(1+4+10)=20.1216%
3、AHP=4, DHP=3
(21.6%*1+25.92%*3+20.736%*6+13.824%*10)/(1+3+6+10)=18.1%
4、AHP=4, DHP=4
(12.96%*1+20.736%*4+20.736%*10+16.588%*20)/(1+4+10+20)=18.1%
——————————————————————————————————————
从均值我们可以看出各种情况下的概率分布。
1、AHP=3, DHP=3的概率是这样分布的:
获胜概率
|
| 战况2
|25% |----------|
|-------战况1--|----------|---战况3-----------均值22%
|20%|---------| |----------|
| | | | |
|15%| | | |
| | | | |
|10%| | | |
| | | | |
| | | | |
| | | | |
--------------------------------------------------------战况总数
2、AHP=3, DHP=4的概率是这样分布的:
获胜概率
|
|
|25%
| 战况2 战况3
|20% |----------|----------|------均值20%
| | | |
|15% | | |
| 战况1 | | |
|10%|---------| | |
| | | | |
| | | | |
| | | | |
--------------------------------------------------------战况总数
3、AHP=4, DHP=3的概率是这样分布的:
获胜概率
|
| 战况2
|25% |----------|
| 战况1 | | 战况3
|20%|----------| |----------|
|-------|----------|----------|----------|--------------均值18%
|15%| | | | 战况4
| | | | |----------|
|10%| | | | |
| | | | | |
| | | | | |
| | | | | |
--------------------------------------------------------战况总数
4、AHP=4, DHP=4的概率是这样分布的:
获胜概率
|
|
|25%
| 战况2 战况3
|20% |----------|----------|
|------------------|----------|----------|--战况4-------均值18%
|15% | | |----------|
| 战况1 | | | |
|10%|----------| | | |
| | | | | |
| | | | | |
| | | | | |
--------------------------------------------------------战况总数
通过计算概率和观察概率分布图,我们可以简单分析出以下结论:
1、一方获胜的总概率是由每次交锋(任意一方HP每减少1格算作一次交锋)的胜率累加得到的。
2、双方HP的总和决定了交锋的总次数(这并不是战况总数,而是你在游戏中能看到的两支部队交战的次数),即AHP+DHP-1
3、进攻方HP的增加,将增加战况总数,而每种战况下的胜率保持不变,但整场战斗的平均胜率(均值)会下降,也就是说由于战况增多、战斗的持久性增加,所以进攻方多次受损的可能性也增大。但是由于进攻方总胜率的增加,使得防守方的胜率变小,因此最终获胜的可能性仍然很大!只是在战斗中会损失较多的HP。
4、防守方HP的增加,将增加每种战况下的结果总数,会使每种战况下的胜率减小,而整场战斗的平均胜率(均值)将保持不变甚至有所提高,也就是说由于结果增多、战斗的不确定性增加,而防守方与进攻方之间胜率的不断缩小,使得进攻方整场作战的胜率下降,最终获胜的可能性也减小。
5、总体来说,任何一方HP变量的影响都很大。在不计地形加权的情况下,进攻方HP的增加对整个战局的影响更大。然而当游戏中后期,各种防御加权的累加很大时,防守方HP的增加将起到更大的作用。所以早期快攻是有优势的!
6、在攻防值相差不大的情况下,HP少的单位,作战效果会好于HP多的单位,但HP多的单位作战的持久性更强。这句话的意思是说HP少的单位会使HP多的单位损失很大,但由于HP多的单位战斗持久性强,所以最终可能还是HP多的单位赢!这个结论告诉我们,如果你有数支部队深入腹地被包围,那么为了保证其他部队的安全撤离,用HP少的单位垫后防守往往会有出其不意的效果。
7、在任何一种情况下,进攻方HP损失1点的概率都是最大的,所以你经常可以看到,你的部队与别人交战时,一上来就先损失了1点!这是很正常的。
8、在交战中,随着双方HP的不断减少,双方的胜率都会增加,最终达到单次交锋的胜率水平。如果某一方HP减至很少,那么它一旦获胜1次,胜率马上就会增加很多。这就是有时候你在游戏中看到对手明明被打得快挂掉了却又反败为胜的原因。
9、骑士、枪骑等快速作战单位(移动力至少为2)交战时,相当于普通单位(移动力只有1)在交战。快速单位进攻普通单位,撤退的概率大(下一篇有讲解);普通单位进攻快速单位,胜率比快速单位进攻快速单位略高。
因此用中国铁骑进攻火枪兵(快速单位vs普通单位)损失不大,但进攻小日本武士(快速单位vs快速单位)却还没有用中世纪步兵效果好,而且不能撤退!!所以往往损失很大,因此对付这种难缠加变态兵种时,使用长弓手作为辅助进攻力量还是不错的。
[此贴子已经被作者于2004-5-19 21:34:45编辑过]
[ 本帖最后由 96nn 于 2007-12-26 22:41 编辑 ] |