策劃冷知識--蘭切斯特規律是個什麼鬼?
策劃冷知識--蘭切斯特規律是個什麼鬼?我來詳細解釋一下
在一本正經的介紹蘭切斯特定律前
先膜拜一下定律的創始人
F.W.蘭切斯特
弗雷德里克·威廉姆·蘭徹斯特,1868—1946蘭切斯特方程最早收錄在蘭切斯特的工程著作《戰鬥中的飛機》一書中,其核心主要是預測大規模多人會戰中,各方隊伍在人數、戰力數據明確的情況下,各方在戰鬥結束時的戰損情況,並且因為其計算結果在多次戰爭中得到印證而逐漸的被神化
因為其對理想狀況下戰損預測的高度精確性,在遊戲行業中也經常會有一些人去琢磨怎樣利用蘭切斯特規律讓自己的戰鬥結果更加真實可信。而事實可能往往不如人意,這也是本文為什麼要詳細的介紹蘭切斯特定律的原因。
第一部分:誕生背景
蘭徹斯特提出的這個數學工具有著非常強的時代背景。當時的歐洲戰爭,是以「排隊槍斃」戰術為主流,打起來基本是這樣的:
18,19世紀英國主流戰術—「排隊槍斃」
在我們現代人眼裡,線列步兵這種「排隊槍斃」戰術簡直就是二貨扎堆的真人版,槽點滿滿。但實際上,這卻是當時最先進、最實際的戰術,沒有任何其它戰術能比它更加有操作性。
「排隊槍斃」戰術在實戰過程中分成兩個階段,遠距離對射,近距離肉搏,基於該特徵,蘭切斯特在對戰爭損耗的模擬時,也利用了分情況討論,並且以此得出了兩個(準確的說有三個)不同的戰損計算公式。
第二部分:方程解釋
蘭切斯特方程一共分為三種情況,下面我逐一介紹一下每種情況的適用條件,以及最後的戰損計算情況。
1.遠距離恆定傷亡對射情況(上古時代才有的情況)
該情況的戰爭示意圖,大概是下面這個樣子
蘭切斯特第一線性律
以古代戰鬥模型為基礎,戰鬥結局取決於雙方的格鬥水平。其假定條件是作戰兵力相互暴露,可解釋成人對人或武器對武器的交戰,每一方損耗率都平均為常值
為了對其進行詳細的數學分析,我先設定幾個變數;
設x0為紅方在t=0時刻的初始兵力,xt為紅方在t時刻瞬時兵力(或剩餘兵力);
設y0為藍方在t=0時刻的初始兵力,yt為藍方在t時刻瞬時兵力(或剩餘兵力);
即:
初值設定好以後,我在設定兩個瞬時變數。
設a為紅方單位時間內損失的作戰單位數;(每秒死a個人)
設b為藍方單位時間內損失的作戰單位數;(每秒死b個人)
則紅方,藍方在戰鬥中的人員損失情況可以用常微分方程表述如下:
簡單求解可得在戰鬥過程中紅方剩餘人數xt以及藍方剩餘人數yt的具體數值。
戰鬥結果分析:
a,b分別代表紅方,藍方的損耗係數,換個方式來理解,a代表著藍色方對紅方的殺傷力,b代表著紅色方對藍色方的殺傷力。
簡單的換算一下,紅方,藍方的戰鬥力可以表述如下:
總結起來,戰鬥結果如下:
當bx0>ay0時:
紅方獲得戰鬥勝利
戰鬥結束時間為:t2
戰鬥結束時紅方剩餘人數:x=x0-a*t2
當bx0<ay0時:
藍方獲得戰鬥勝利
戰鬥結束時間為:t1
戰鬥結束時紅方剩餘人數:y=y0-b*t1
當bx0=ay0時:
雙方同歸於盡
這是第一線性定律,適用條件有限,適用的戰爭實例大概如下:
第一線性戰損公式適用條件分析:
- 第一線性律適用於同兵種、損耗係數為常數、能進行直接瞄準的一對一格鬥的作戰過程(如步兵對步兵、坦克對坦克的格鬥)
- 第一線性律的基本特徵是:在作戰過程中,雙方不斷減員,兵力對比關係不斷變化,但雙方在單位時間內的對敵殺傷數卻始終恆定
- 第一線性律所描述的戰場態勢具有這樣的性質:在戰鬥進行過程中,雙方各自的對敵殺傷率不因戰鬥減員而變化,不因兵力對比關係的變化而變化
第一線性定律講完再講遠距離模糊炮擊情況。
2.不能精確探測雙方位置的遠距離對戰
大概是下面這種情況
蘭切斯特第二線性律
以炮擊為基礎,射擊帶有一定的盲目性,火力集中在已知的敵戰鬥單位的集結地區,並不針對具體的目標實施射擊,而這個集結地區的大小几乎與敵部隊的數量無關(面射擊模型)。因為射擊為隨機瞄準且不轉移火力,在此情況下,雙方的損耗率與自己部隊數量,敵方戰鬥力,敵方部隊數量均成正比
同樣的先設定幾個參數
設藍軍戰鬥力為a(每秒對紅軍的殺傷力)
設紅軍戰鬥力為b(每秒對藍軍的殺傷力)
則紅方,藍方在戰鬥中的人員損失情況可以用常微分方程表述如下:
根據第一定律時設定的初值條件和常微分方程知識,可以求解出紅方,藍方在不同時間段的剩餘兵力計算公式如下(過程略去,給出最後的計算結果供大家參考。)
基於該剩餘公式,可以分析其戰鬥結果。
戰鬥結果分析:
當bx0>ay0時
紅方獲得戰鬥勝利
剩餘兵力為:
當bx0<ay0時
藍方獲得戰鬥勝利
剩餘兵力為:
當bx0=ay0時
雙方同歸於盡
同樣的,第二線性定律也有其獨特的適用範圍。
第二線性戰損公式適用條件分析:
- 第二線性律適用於清楚敵方大概方位,但是因為射程,視距等因素影響不能對其進行精準打擊的情況。
- 第二線性律的基本特徵是:在作戰過程中,雙方戰鬥力會隨己方戰鬥減員而發生變化。
終於講到了最普適,也最有借鑒意義的平方律了,平方律適用於大多數現實情況下的遭遇戰!
3.大規模遭遇戰(適合大多數現實情況)
同樣先來一張示意圖,該情況下戰鬥情形大概如下:
蘭切斯特平方律
以大部分遭遇戰為原型,合理的解釋了「人海戰術」的科學性和合理性,同時因為方程自身存在的特性,也提供了為敵眾我寡,分而擊之提供了理論依據(計算結果顯示,將大團隊等分能最大限度降低戰鬥的作戰能力,這也是截斷戰術的理論解釋),不過現代戰爭中影響戰力偏差的因素太多,所以蘭切斯特平方定律並不能完美的解釋現代戰爭的傷亡人數比。
在蘭切斯特平方律中,己方人員損失速率完全取決於敵方殺傷力和敵方人數,在能夠精確打擊的情況下,敵方一波能夠帶走己方人數的數量由敵方單體戰鬥力和敵方當前可投入戰鬥人數決定,即:
根據常微分方程知識,可以對該方程進行求解,得出紅軍,藍軍在t時候的剩餘人數xt和yt(略去計算過程,結果僅供參考)
註:根據狀態方程,在大規模混戰中軍團戰鬥力正比於單兵作戰能力乘以軍團人數的平方,即:
同樣的,根據剩餘兵力方程,我們可以對其進行戰鬥結果分析
戰鬥結果分析:
紅方戰力大於藍方,紅方獲勝
獲勝時紅方剩餘兵力為:
藍方戰力大於紅方,藍方獲勝
獲勝時藍方剩餘兵力為:
一個重要的結論:
在大規模混戰模型中,如下公式在戰鬥的各個階段始終成立
以上,這個方程的神秘面紗就全部揭開了,那麼他到底有什麼用呢?
第三部分:應用分析
很多人都思考過怎樣將蘭切斯特定律應用到RTS遊戲的設計中去,以便製造出更加模擬的戰鬥結果;然而事實是,對遊戲設計而言,蘭徹斯特方程並沒有想像中那麼實用——它適合對非常理想化、單一化的戰場情況進行模擬,比如沒有第三方火力、排除地形因素等等,而實際戰場遠非這麼簡單。
試想一下,在皇室戰爭中利用蘭切斯特公式對戰鬥結果進行修正會出現什麼情況?
因為皇室戰爭的戰鬥表現是及時的,玩家對戰鬥的細節一清二楚,而公式只能控制最終結果,如果二者出現偏差,玩家會在第一時間久發現問題。這說明,在所有需要表現戰鬥過程的多對多對戰遊戲中蘭切斯特定律都起不到任何作用。
那麼是不是蘭切斯特定律在遊戲設計中真的毫無用處嗎?,答案也是否定的!
在忽略戰鬥過程的情況下,蘭切斯特公式是最合理的計算戰損比例的方式。所以在諸如《三國霸業》,《三國志》等通過兵力數值變化來表示戰鬥結果的遊戲中,蘭切斯特定律是大有可為的!蘭切斯特自身的局限,最大的原因不是現實環境的制約,而是其本身是跳過過程直接對戰鬥結果進行模擬。事實上,在所有需要表達戰鬥過程的對戰遊戲中,戰鬥的結果會自然的去向於蘭切斯特規律,根本就不需要用蘭切斯特定律來對戰鬥結果進行修正!
如果為了追求一個理論上合理的結果而改變遊戲的體驗,這是違背遊戲設計原則的。蘭切斯特只是規律,不是標準!只是規律,不是標準!
推薦閱讀:
※全面戰爭戰錘:遲來的英雄無敵
※遊戲設計之路(1)——我的第一個關卡
※遊必有方 Vol.8 Papers, please 及其遊戲設計分析
※【遊戲設計&廣告變現】Hill Clim Racing 2的進化之路
※遊戲行業的100種死法(四)