馬晨昊 宋舒嫻 李潤含
(1、大連海事大學(xué)信息科學(xué)技術(shù)學(xué)院,遼寧 大連116000 2、大連海事大學(xué)航海學(xué)院,遼寧 大連116000)
“穿越沙漠”游戲規(guī)定為:每名玩家在游戲開始時都會收到一定數(shù)額的資金與闖關(guān)地圖,分別用來購買行進過程中必要的生活用品和規(guī)劃全局路線,途中經(jīng)過村莊可以用來補給資源,經(jīng)過礦山并采礦能獲得固定資金,玩家在探險途中還可能會遇到惡劣天氣。在系統(tǒng)指定的時間內(nèi)從起點處穿越沙漠到達終點即為通過,剩余的資金與資源越豐富獲得優(yōu)勝的機會越大。
要在未知天氣狀況下建立模型制定玩家的通關(guān)策略。
首先我們對影響最終結(jié)果的所有可能進行分析得到玩家出發(fā)當天遇到高溫天氣做出的選擇不確定性最大,為對游戲進行仿真模擬我們建立基于熵權(quán)法的TOPSIS 多因素概率模型得到高溫天氣下玩家傾向選擇概率,并結(jié)合行走時間對其做出動態(tài)分析。
其次我們使用基于動態(tài)步長的逐天模擬算法結(jié)合兩幅不同地圖對所有最佳路線進行仿真,此算法特點主要有兩點:一是對于天氣狀況的生成具有隨機性;二是大量模擬結(jié)果使得每種情況最終值精確。
基于熵權(quán)法的TOPSIS創(chuàng)新應(yīng)用的多因素概率模型:
玩家在未知情況下遭遇高溫天氣時的選擇會對最終結(jié)果產(chǎn)生很大影響。例如我們假設(shè)高溫狀態(tài)下玩家一律選擇呆在原地休整,等到晴天時才往下一個目的地出發(fā),這樣造成的結(jié)果可能為未在規(guī)定時間內(nèi)到達終點任務(wù)通關(guān)失敗,或者是在礦山挖礦時間短收益小導(dǎo)致最終總體浪費資源過多;當假設(shè)玩家在高溫狀態(tài)下持續(xù)行走不做停留,造成的結(jié)果可能會是中途玩家擁有物資短缺不足以支撐到下一個目的地。為解決此類問題我們需對玩家在高溫天氣下選擇停留的概率進行分析。
TOPSIS(優(yōu)劣解距離法)為C.L.Hwang 與K.Yoon 在1981 年提出的一種綜合評價方法,在已知原始數(shù)據(jù)信息的情況下評價結(jié)果能精確反應(yīng)各評價方案之間的差距,是應(yīng)用于多目標決策分析中的一種有效方法,具有過程簡單,處理靈活方便等特點,適用于對玩家在不同情況下選取特定概率。
我們將玩家的每個選擇視為對象,物資消耗與收獲資金視為指標,已知各個指標對應(yīng)的具體信息。對指標的權(quán)重賦值有很多方法如專家評判,但其主觀性較強,不同評判會對結(jié)果產(chǎn)生很大影響,采用熵權(quán)法來盡可能利用數(shù)據(jù)信息對指標進行客觀權(quán)重賦值。
下面我們利用基于熵權(quán)法的TOPSIS 模型對玩家面對不同情況選擇概率進行具體求解。
3.1 統(tǒng)一指標類型。資源消耗為極小型指標,消耗越多對選擇越不利;爭取資金為極大型指標,掙取越多對結(jié)果越有益。采用差值法對數(shù)據(jù)進行正向化處理,我們采用如下公式:maxi-Xi(1)
其中S軌i∈[0,1],為歸一化后的概率得分,通過求解我們得到玩家在第三關(guān)遭遇高溫天氣選擇停留的概率為0.7672;在第四關(guān)遭遇高溫天氣選擇停留的概率為0.5753。
前面已經(jīng)利用TOPSIS 法對玩家在遭遇高溫天氣時選擇停留進行客觀評價并求解出具體概率數(shù)值,但真實情況往往更為復(fù)雜。在游戲開始后不久玩家遇到高溫天氣時會以一定概率選擇是否繼續(xù)行走,當游戲進程時間越靠近截止日期時玩家的心境會從理性變?yōu)榻辜?,在越接近游戲結(jié)束日期時會出于節(jié)省時間的考慮傾向于高溫天繼續(xù)行走這一選擇。
指數(shù)函數(shù)通常適合用來描述兩關(guān)聯(lián)因素之間的規(guī)律變化特征,對其進行修改得到玩家在高溫天氣選擇停留的概率與時間變化的關(guān)系,我們設(shè):P=pie1-ti(i=1,2) (11)
其中i=1,2 分別代表第三關(guān)與第四關(guān)兩種情況;P 為玩家在不同時間內(nèi)遇到高溫天氣選擇停留的概率;pi為關(guān)卡內(nèi)游戲開始第一天為高溫天氣時玩家選擇停留的概率,p1=0.7672,p2=0.5753;ti為從游戲開始到遇到高溫的時間數(shù),t1∈[1,10],t2∈[1,30]。
當i=1 即處于第三關(guān)時,假設(shè)玩家在第一天遇到高溫,此時選擇原地停留休整的概率最大,即為p1;當t1不斷增大時選擇概率不斷緩慢下降最終趨于0,因此公式(9)能完整、合理地描述概率隨時間動態(tài)變化過程。
三個天氣因素中高溫的不確定性最大,因此玩家需要重點考慮高溫天氣下是否做出停留選擇,當時間充裕時玩家出發(fā)當天為高溫天以一定概率在原地休整,來減少資源消耗量(如果在礦山遇到高溫天以更大的概率停留下來挖礦);當玩家所剩時間不多時,為保證自己能夠按時到達終點,在除沙暴天外玩家盡可能趕路,最終到達終點。
根據(jù)生成的當局天氣(晴天與高溫)決定下一次的行動結(jié)果,特點為大量隨機模擬利用Matlab 采用以上述步驟進行仿真,得到如圖1-2 所示結(jié)果。
在5 種情況下的通關(guān)最大資金量對比圖,分析圖3-4 中信息我們得到:隨著晴朗天數(shù)的增多,各情況在到達終點處的剩余資金呈單調(diào)上升趨勢;晴天天數(shù)增加對循環(huán)兩次的路線影響更加明顯,對情況1 的影響最為薄弱;圖中最大交叉點處位于第25 天,為情況1 與情況4 的交叉點;當晴朗天數(shù)幾乎為0 時,除循環(huán)兩圈的情況時終點剩余資金最少外,其余情況大多分布在6000 到8000 元之間。
接下來利用分析得到的信息對羅列出的所有情況進行篩選:在一定時間范圍內(nèi)隨著晴朗天數(shù)的增加,循環(huán)一遍的剩余最大資金總是高于循環(huán)兩遍的最大資金,合理推測循環(huán)三圈收獲的效益會更低,因此我們排除循環(huán)多次的情況只考慮循環(huán)一圈的路線。
圖1 五種情況下最大剩余資金量對比圖
圖2 所有天氣狀況下的最多剩余資金
圖3 穩(wěn)定性評價
圖4 先后經(jīng)過村莊剩余資金量對比圖
最后分析可知隨著晴天天數(shù)的增加,先經(jīng)過礦山后經(jīng)過村莊獲得的收益總是大于先經(jīng)過村莊后經(jīng)過礦山的收益。