level 7
Null84
楼主
昨天看到@Валия 发了一个叫做“初探战列舰交战中火力、数量与损失的数学关系”的帖子……
https://tieba.baidu.com/p/2272775009
实在错漏百出,让人不忍继续下去……于是,本人在楼下回复指出其错误,不想……
但是今日一看还是有些吧友回复,所以,为了避免其错误误导他人特此开帖讲讲……
在这里,我们就先拿她的原帖做一个反面教材,我会同时讲
正确的
形式以及相关……
原贴开贴不久,Валия就通过这样一段话引入了兰彻斯特平方率:
“主力舰交战符合利用炮群集中攻击单位目标这样的模式,而这一交战模式用数学描述的话则是完全契合兰彻斯特平方率的,即:
dx/dt=B*yt
dy/dt=A*xt
(其中dx为A方的损失,dy为B方的损失,A为A方的单位攻击力,B为B方的单位攻击力,xt为t时A方作战单位数量,yt为t时B方的作战单位数量。”
那么这里有什么问题呢?
事实上,兰彻斯特平方率仅仅适用于大规模的战役级别的兵力损失预估……双方的参战兵力基本是成百上千……否则就会出现“半个士兵”开火的笑话……试图将其用于海战的话需要的将是异常复杂的修正……因为参战的海军主力舰连50艘都不大可能有……
相关联接:http://en.wikipedia.org/wiki/Lanchester%27s_laws
可见,从一开始,这就已经错了……
但是这段文字的错误不仅仅如此……兰彻斯特平方率的公式一如连接中给出其形式如下:
dA/dt = -βB
dB/dt = -αA
看着和上面的差不多哈?注意下面……其中A为A方的单位数量,B为B方的单位数量,α为A方单位的毁伤效率,β为B方单位的毁伤效率,t为交战时间(单位为开火轮数)……
对照一下:原帖中的dx、dy对应了dA、dB;A、B对应了α、β;xt、yt对应了A、B……但是原帖中对于dx、dy的解释是双方的损失,对于A、B的解释是攻击力,对于xt、yt的解释是某时刻下的单位数量……
这种错误的变量对照逐步导致了其后面的混乱……细节决定成败……
下面,Валия开始了他的演算:
“由上式转换可得:
dx/dy= B*yt/ A*xt
B*yt*dy=A*xt*dx
二边积分得:
Byt^2=Axt^2
设双方初始数量为x0、y0(皆为常数项),则可得公式:
By0^2-Byt^2=Ax0^2-Axt^2”
有人看出问题了么?
且不论∫B*yt*dy 能不能按照∫B*y*dy 积分……∫Bydy = ?学过微积分基础的也应该知道∫Bydy = 1/2By²+ C……所以,当对等式Bydy = Axdx两边积分后,得到的应该是1/2By²= 1/2Ax²+ C……
或许有人不懂微积分,问了:你怎么证明你的计算才是对的?……很简单:如果By²= Ax²成立,那么我们看看会是怎样的奇怪现象……B是B方的单位攻击力,y是B方的作战单位数量,则By²这一数值仅仅取决于B方的火力和数量(至少交战开始之前是这样),Ax²同理,关键来了交战双方的司令官难道是事先商量好的,使得By²= Ax²?……
正确的情况是什么呢?
为了统一,我在后面使用原帖的数值体系x、y、A、B,那么我们从之前发现的错误继续,两边积分后,有:
1/2By²= 1/2Ax²+ C(C为任意实数,但是不为任何变量)
好了,怎么会出来一个不知道是几的C,不忙,对照前面那个证明By²= Ax²的逻辑,如果1/2By²= 1/2Ax²+ C成立,则有:1/2BY²= 1/2AX²+ C(X、Y为交战前双方的初始兵力)现在,除了C未知,没有未知数了(初始兵力和毁伤效率都不知道就没法使用该公式了)则,可以得到C = 1/2BY²- 1/2AX²,再将C带回原式,得到1/2By²= 1/2Ax²+1/2BY²- 1/2AX²,整理移项,可得:
Ax²-AX²=By²-BY²
为什么和原帖作者的结果一样?……很简单,这就是一些不会做题的人看着答案找过程的结果……
然后开始讲实例应用了,且不管我前面说适不适合的问题,看看原帖:
“在这里,我们假设交战双方战舰所使用的主炮型号相同,双方的区别在于单艘战舰安装的主炮数量有差别。所以我们可以直接将单位攻击力视为单位战舰所拥有的主炮数量。
在20世纪前期的海战中,受制于观瞄、通信等设备的水平,编队只能进行有限规模的火力协同,常见的是中队模式,既由4条同级别战列舰构成一个完整的中队,在战斗中可以以编队形式进行火力协同,实现最佳的作战效率。而编队如果超出一个中队的规模,则反而会使作战效能下降(编队机动迟缓,弹着点互相干扰,影响观察和校射),所以我们的交战模型以4V4的情况为基准状态,即便一方编队拥有更多的战舰也只能作为预备队逐次投入到交战中。
在计算中会遇到损伤以小数形式表现,但战舰数量显然是个数计的,所以在计算中,如果损伤超过0.5则计为完全损失。
下面,举一个具体例子
设交战的A、B两只舰队,A方拥有安装12门主炮的战列舰4条,B方拥有安装8门同规格主炮的战列舰4条,则交战公式为:
12*16-12xt=8*16
xt=2.3≈2
如果要B方舰队全灭(yt=0),则A方损失为:
dx=x0-xt=2
也就是说A方损失3艘战舰全灭B方,双方损失比为1:2,可见如果没有数量差距,在中队交战中,双方损失与火力成反比。”
前面的计算错误到此由于“看答案”的影响完全没有反应出来……但是最早的关于变量的认知错误在此开始显现端倪……
还记得兰彻斯特平方率最初的样子么?对dx/dt=-By和dy/dt=-Ax 这里每个式子表示的是什么?A方的单位数量乘上A方单位的毁伤效率或者B方的……实际上dx/dt就是单位时间内A方被摧毁的单位数……看到了问题了么?如果A和B取例子中的数值……A方单位时间内的损失将是8*4=32!显然B方也好不了哪去……双方于一次交火后对等摧毁……这就是不理解公式胡乱套用的典型……
且再退一步,将这个数值仅仅当做火力比看待(计算损失比的时候还可以应付)这里他试图使用等式Ax²-AX²= By²-BY²,推算双方的损失比,我们也代入一下数值,得到12*x²- 12*4*4 = 8*y²- 8*4*4……看到问题了?8*y²一项哪去了?……只有y = 0的时候没有这一项……还好他后面是要计算B方全灭……
但是最终是结论很令人费解……火力(毁伤效率)比例为3:2的两军交战后损失比为2:4……这是双方损失与火力成反比?……实际上之前已经得出dx/dt就是单位时间内A方被摧毁的单位数,除以B方……结果是双方单位时间内的损失比为By/ Ax……注意到了吧……这是一个和双方剩余兵力有关的函数而非一个固定值!……
好吧,事实上,到此为止,他的计算毕竟还没有实质错误,但是随着计算的深入,最早的关于变量的认知错误最终导致了他的计算陷入混乱……
“如果B方有预备队可在损失后即刻补充编队,则交战过程为:
12*16-12xt1=8*16-8*9
xt1=3.37≈3
这个时候双方各损失一艘,接下来B方补充一艘战列舰,A方剩余3艘。
12*9-12*xt2=8*16-8*9
xt2≈2
A方剩余2艘,B方继续补充,
12*4-12xt3=8*16-8*9
xt3=0”
这次他的运气没有上次好了……无论前面两次计算怎么掩饰,最终一次计算中12*4 - 12*x = 8*16 - 8*9是无论如何也不会得到x = 0的!当然你说x实际变成了负数,但是这就在交火过程中出现了“负数敌军”开火的笑话……正确的情况呢?套用等式Ax²-AX²= By²-BY²,最后一次交火时x=0,则有:12*0 – 12*4 = 8*y – 8*16,解方程得y ≈ 3.162278……好吧,运气再次站在他身旁,使得这个战舰确实的损失掉了……
“比如,抢占T字横头究竟能为我方带来多大的优势?
仍然以中队交战为例,假设A、B双方各拥有4条安装8门主炮的战列舰,A方在交战中抢占到的有利阵位,对B方形成T字横头。
这个时候A方4条战舰32门主炮可同时向B方队列首舰射击,而B方只能以队列首舰前部4门主炮还击,大家都清楚B方显然是处于非常不利的地位,可这种不利地位究竟会带来多惊人的结果呢?这里探讨用数学来推测和描述。
将以上条件代入公式后得:
8*16-8*t1=4*1
t1=3.94≈4
可以看出,当A方击沉B方首舰时,A方队列中遭到还击的那条舰只遭受到6%的损失,完全可以忽略,而接下来的交战无非是以上过程的循环,直到B方全灭或者改变不利阵位为止,A方的损伤微乎其微。
我们继续讨论上面的问题,假如B方因为自己的战列舰无法获得机动优势以抢占有利阵位,而将全部8门主炮布置在前方,那又会有什么结果呢?
将以上条件代入公式后得:
8*16-8*t1=8*1
t1≈3.87
可见这次虽然给予了A方一艘战舰以一定程度的创伤,可仍然不能改变大局。
接下来8*3.87^2-8*t2=8*1*3
T2=3.46,这回当B方全灭时,A方将有一条战舰被重创,虽然比上次好看了一点,可毕竟还是完全惨败。”
现在,他的帖子即将结束,其计算也终于迎来了混乱不堪,完全影响结论的尾声……
如果说前面代入等式Ax²-AX²= By²-BY²的时候还可以理解……这里代入成8*16 - 8*x=4*1就实在匪夷所思了……4对4的战斗变成了4对1……这要是不一边倒……好了,这里怎么去正确的代入计算我就不说了……但是我们可以看到假设全部火炮装于舰艏从而放弃T头的时候,舰队间按照兰彻斯特平方率交战将是怎样的方程?答案是:8*x²- 8*16 = 8*y²- 8*16……不用算了吧……双方势均力敌……
好了原帖的分析到此为止……
在回复原帖的3楼中,我提到过,兰彻斯特平方率实际上是一个微分方程组,通过数学手段,我们是可以计算出当dA/dt = -βB和dB/dt = -αA成立时dA与dt以及dB与dt的函数关系的……鉴于过程复杂,我就不具体讲如何解方程组了……
在本帖,我仅仅给出答案如下:

好了,本帖到此告一段落,真心希望每一个认真看完本帖的人能够有所收获……谢谢大家!

