?

基于決策樹的最優穿越沙漠策略研究

2021-09-15 10:50黎金銘潘玉雯陽尚儒
科技經濟導刊 2021年24期
關鍵詞:挖礦決策樹花費

黎金銘,毛 睿,潘玉雯,陽尚儒

(桂林電子科技大學 數學與計算科學學院,廣西 桂林 541004)

基于特定規則研究穿越沙漠的最優策略,求解在初始點購買資源出發至終點,如何補充資源并賺取更多資金,是研究重點。此課題涉及資源與時間、環境與風險、目標與計劃、競爭與合作四項組合優化,通??捎脛討B規劃及啟發式算法求解,若將地圖簡化后建立決策樹模型求解,能更好地解決最優策略問題。

1.問題描述

已知未來30 天內的天氣或僅知當天的天氣,時間最長為30 天或10 天,憑借已知地圖(見圖1 和圖3),利用初始資金購買水和食物,從起點出發穿越沙漠。途中會遇到晴朗、高溫、沙暴三種天氣,可在礦山、村莊補充資金或資源,但在村莊資源的價格是起點價格的兩倍。目標是在截止期限或之前到達終點,若未到達終點而水或食物已耗盡視為策略失敗,到達終點后該活動結束,到達終點時的剩余資金最大。[1]

2.分析問題

穿越沙漠過程中,趕路的資源消耗是停留的2 倍,挖礦是停留的3 倍,每箱水重3 千克,基準價格5 元;每箱食物的質量為2 千克,基準價格為10 元。在圖1 地圖中每日挖礦收益為1000 元,在圖3 地圖中挖礦收益為200 元。問題一,已知未來的天氣情況,需根據每日天氣的變化權衡到底是走是停留還是挖礦,從而到終點時剩余資金最大。問題二,已知當天的天氣,但未來天氣未知且不會出現沙暴天氣,需建立決策樹模型,再結合未來天氣變化概率進行決策,找出最優趕路方案。

圖1 地圖1

3.天氣條件確定模型的分析與求解

3.1 資源消耗計算模型

根據規則,第i 天消耗資源Qi計算式如下

第i 天補充資源花費QSi=2c1xsi+2c2ysi

xi為第i 天消耗的水數量;yi為第i 天時消耗食物的數量(箱);c1為水價格;c2為食品價格;xsi表示第i 天路過村莊補給水的箱數,不補充時為0;ysi表示第i天路過村莊補充食物的箱數當不補充時為0;QSi為第i 天在村莊買東所花的資金。第i 天剩余水的數量

x0為初始購買水的數量,y0初始購買食物的數量。第i 天剩余食物的數量

結合公式2、公式3,定義初始時刻負重為M0(≤1200),初始時刻購買金額為Q0=c1x0+c2y0,由此推導每天負重的公式如下:

第i 天挖礦收益iB當第i 天挖礦收益1000,不挖礦時為0.那么,第i 天剩余資金為

3.2 基于最短路徑的決策樹模型

如圖1 所示,連通兩點之間間隔一天的路程。分析地圖可知“從起點去礦山不經村莊”花費的時間與“從起點去礦山經過村莊”花費的時間相等同時“從礦山去終點”花費的時間與“從礦山經過村莊再去終點”花費的時間相等。故假設從起點出發經過村莊到達礦山;而從礦山出發去終點經過村莊。根據分析可得到如圖2 的決策。

圖2 問題一決策樹圖

3.3 模型的求解

要想到達終點時剩余資金最大需要滿足以下條件:一是在礦山挖礦天數盡可能多;二是盡量不在高溫天氣挖礦和趕路;三是購買的物資滿足挖礦和趕路即可;四是在起點購買更多的食物。每日在礦山挖礦的收益為1000 元。假設未來30 天的天氣狀況已知,基本參數見文獻[1]?;跊Q策樹模擬算法的步驟如下:Step 1 輸入一月內天氣,購買150 箱水、150 箱食物以及決策樹路線進行模擬。Step 2 開始模擬路線趕路,碰到沙暴天氣停止不動,若是晴朗繼續趕路,若是高溫可選擇停留或者趕路,一天結束計算剩余資金。Step 3 若遇上村莊則去補充資源,補充路上消耗或根據未來天氣補充到滿足去終點的資源即可。Step 4 碰上礦山,則去挖礦。挖到剩余資源能滿足去終點或村莊補充資源停止,直奔終點或村莊。轉Step5。Step 5 若能到達終點,重新優化起點背包攜帶量和村莊補給量,計算最大收益H,進入下一步;否則穿越失敗回到Step1,改變高溫天氣下的決策重現遍歷。Step 6 檢查決策樹圖路徑,若決策樹沒有搜索完,返回Step1 按照決策樹圖重新模擬,計算最大收益Hi與H 比較。若Hi更大則最大收益H=Hi;若路徑搜索完輸出最大收益H。

表1 問題一每天趕路決策表

由表3 可知,從起點出發,路線1-25-24-23-22-9-15-14-12-14-15-9-21-27,需要趕路24 天,起點購買178 箱水,333 箱食物,經村莊補充163 箱水,只去礦山一次,挖礦7天,再去終點路過村莊補充36 箱水,24 箱食物,最高收益為10470 元。

表3 高溫停留和高溫趕路的資源花費

4.天氣條件未知的模型分析與求解

模型建立和求解:問題二穿越沙漠的范圍變小,穿越的時間限制為10 天,僅知當天天氣,但不出現沙暴天氣,每日挖礦收益為200 元,建立決策樹模型分析最優決策,簡化后地圖如圖3 所示,基本參數見文獻[1]。由圖3 可知,從起點出發去終點的趕路方案僅有兩種。

圖3 地圖2

方案1 在起點處購買資源后開始出發,直奔終點即1-5-6-13;方案2 在起點處購買資源后出發去礦山,在礦山挖礦后,再去終點即1-4-3-9-11-13。方案2 比方案2 多花兩天的時間去終點,判斷兩種方案的優劣,只需計算方案2 礦山挖礦所得最大凈收益(挖礦收益減去挖礦時的資源花費)減去2 天趕路的花費是否為正數即可。已知挖礦花費是基礎消耗的3 倍,在礦山的最大挖礦時間為5 天。假設挖礦時,天氣全為晴朗,計算可知每天挖礦花費165 元,每天挖礦收益200,凈收益35 元,5 天的收益175 元,趕路花費220 元。方案(2)挖礦的收益小于趕路花費,說明直奔終點是最好選擇。

處于高溫天氣的趕路方案:假設在趕路過程中,天氣變化概率都是獨立同分布的,“晴朗天氣”每天出現概率為P,則“高溫天氣”出現概率為1-P,晴朗天氣出現次數服從二項分布。

完全不停留決策分析:當天氣為晴朗時,資源的消耗最小,最優決策為前往終點。當天氣為高溫時,是停留還是行仍需討論。趕路到終點所需時間記為t;可推導t 天時(0≤t≤ 3),趕路的平均資金消耗公式如下:

其中,kt,i為到達終點只剩余t 天路程時,天氣晴朗出現i次的平均消耗資金;P 為晴朗出現概率,1-P 高溫出現的概率。

權衡原地停留與繼續趕路的決策分析:當剩余天數為j 天時,假設當天天氣為高溫,對應該停留還是趕路進行分析計算。當決定在高溫的天氣狀況中進行原地停留時,資源總花費COST1,j為高溫當天的停留資源花費Qstay與剩余j 天預測的趕路資源花費Ej之和;當決定在高溫天氣趕路時,資源總花費COST2,j為高溫趕路花費Qwalk與剩余(i-1)天預測的趕路平均資源花費Ej-1之和;經分析可知當COST1,j>COST2,j時,應選擇停留;當COST1,j<COST2,j時,最優策略是選擇繼續趕路;當COST1,j=COST2,j時,趕路或停留皆可。

模型的求解:計算高溫天氣下的趕路消耗和停留消耗后,再將晴朗概率從0.1 至0.9 進行遍歷,最終得到高溫停留和高溫趕路的資源花費如表5 所示。

由表5 可知當晴朗天氣出現的概率在0.85 以下,最優決策是不停留直奔終點;當晴朗天氣出現的概率超過0.85,最優策略是原地停留,等待晴朗天氣出現再繼續趕路。

5.結語

本文利用決策樹求解判斷穿越沙漠的最優決策,并通過編程仿真模擬計算,通過全局搜索算法求解出初始時刻最優的資源購買數量。問題二中本文利用天氣概率分析問題,得出趕路花費與概率之間的關系,當高溫天氣出現頻率較大時不推薦趕路應在原地等待晴天出現。本文的模型降低了求解范圍,方式較為創新,減少了計算量和代碼量。

猜你喜歡
挖礦決策樹花費
瘋狂的“挖礦”
礦工“殺紅眼”!一切皆可挖礦
供電緊張,伊朗禁挖比特幣4個月
新春開拍小禮物
情況不同,“花費”不一樣
信息時代基于決策樹對大學生情緒的分類
簡述一種基于C4.5的隨機決策樹集成分類算法設計
決策樹學習的剪枝方法
2014年世界杯會花費多少?
決策樹在施工項目管理中的應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合