穿越沙漠的小游戏策略

2021-05-25 10:04张敏
科学技术创新 2021年11期
关键词:挖矿消耗量起点

张敏

(黄河交通学院数学教研室,河南 焦作454002)

在只有一名玩家且仅知道当天的天气状况,决定当天的行动方案的情况下,探索玩家的最佳策略。玩家凭借一张地图,利用初始资金购买一定数量的水和食物(包括食品和其他日常用品),从起点出发,在沙漠中行走。途中会遇到不同的天气,也可在矿山、村庄补充资金或资源,在游戏设定的规则下,规定的时间内到达终点,并保留尽可能多的资金。

1 问题分析

对于游戏一,由于玩家仅知道当天的天气状况,所以需要分情况讨论各种天气下的方案。已知10 天内不会出现沙暴天气。从悲观准则和乐观准则[2]两个角度分析,考虑10 天内全是高温天气或者10 天内全是晴朗天气。在假设不同天气的情况下,确定多种路径,通过每种路线和天数计算出到终点后的剩余资金。比较每种方案在终点时剩余资金数量,选出剩余资金最大的方案。对于游戏二,游戏截止时间为第30 天,已知30 天内较少出现沙暴天气。玩家在仅知道当天的天气状况下,假定“较少出现”为游戏时间段内最多出现一天沙暴天气。从悲观角度分析,假设30 天内有1 天沙暴天气,29 天高温天气。从乐观角度分析,假设30 天内有1 天沙暴天气,29 天晴朗天气。计算两种条件下玩家的到终点后的剩余资金。

2 游戏的求解

2.1 游戏一的求解

游戏一的天气状况未知,已知的情况是十天内不会出现沙暴天气,高温天气比晴朗天气的基础消耗量大。由悲观准则和乐观准则将天气分为两端情况,即十天内全部高温和十天内全部晴朗。考虑不同的天气下是否挖矿。

综合上述分析得到四种情况下的四个情况:第一种情况:玩家极度乐观,认为十天全部晴朗,决定去挖矿,路线是经过矿山挖矿后回到终点。第二种情况:玩家乐观,认为十天全部晴朗,决定不去挖矿,路线是从起点到终点的最短路径。第三种情况:玩家悲观,认为十天全部高温,决定去挖矿,路线是经过矿山挖矿后回到终点。第四种情况:玩家极度悲观,认为十天全部高温,路线是从起点到终点的最短路径。运用Matlab 软件计算得到:第一种方案剩余资金9480 元,第二种方案剩余资金9670 元,第三种方案剩余资金7560 元,第四种方案剩余资金9190 元。对四种方案进行比较发现,在游戏一中无论是高温天气还是晴朗天气,先去挖矿再去终点的策略都比直接去终点的剩余资金数小。因此,在本关游戏中想要在规定时间内到达终点并获得最大剩余资金数的策略是尽量减少行走时的资源消耗,即直接从起点到终点,中间不去挖矿。第二种方案和第四种方案的路径均为:1→5→6→13(地图区域块)。使用Matlab 分别计算出第二种方案和第四种方案所需的物资消耗量。玩家在起点购买(购买物资总量的依据是挖矿最大天数和路程消耗量),如表1 所示:

表1 玩家在起点需要购买的物资量

由表1 知:第二种方案在起点需要购买食物24 箱,水18箱;第四种方案在起点需要购买食物54 箱,水54 箱。

2.2 游戏二的求解

2.2.1 悲观情况下的玩家策略

2.2.1.1 在不考虑外来资金时,即矿山不挖矿。运用广度优先遍历法,得出从起点到终点的最短路径不唯一,然而最短线路都需要8 步。悲观情况下有一天为沙暴天气且沙暴天气必须原地停留,因而从起点到终点的路径需要9 天走完。无论沙暴天气出现在行走中的哪一天,对玩家到达终点均没有影响。此情况下使用枚举法列出从起点到终点最短路径的线路如下:

线路一:1→2→3→4→5→10→15→20→25

线路二:1→2→3→4→9→14→19→24→25

线路三:1→2→3→8→13→18→23→24→25

线路四:1→2→7→12→17→22→23→24→25

线路五:1→6→11→16→21→22→23→24→25

玩家在起点购买(购买物资总量的依据是挖矿最大天数和路程消耗量),如表2 所示:

表2 玩家在起点需要购买的物资量

由表2 知:玩家在起点处所购买水154 箱,食物153 箱,到达终点时剩余资金为7690 元。

2.2.1.2 在考虑外来资金时,即矿山挖矿。在矿山挖矿的前提下,考虑是否经过14 区域(村庄)。

(1)如果不经过村庄,则需要在起点购买路程中需要的所有物资。使用广度优先遍历法得,从起点到终点路过矿山时的线路有多条。使用枚举法列出第一阶段的线路为:

第一条:1→6→11→16→17→18(矿山)

第二条:1→2→7→12→17→18(矿山)

第三条:1→2→3→8→13→18(矿山)

使用枚举法列出第二阶段的线路为:

第一条:18(矿山)→19→20→25

第二条:18(矿山)→19→24→25

第三条:18(矿山)→23→20→25

(2)如果经过村庄,使用广度优先遍历法得此情况下的线路有多条。使用枚举法列出第一阶段的线路为:

第一条:1→2→3→4→9→14(村庄)→19→18(矿山)

第二条:1→2→3→4→9→14(村庄)→13→18(矿山)

第三条:1→2→3→8→9→14(村庄)→19→18(矿山)

第四条:1→2→3→8→9→14(村庄)→13→18(矿山)

第五条:1→2→7→12→13→14(村庄)→19→18(矿山)

第六条:1→6→7→8→9→14(村庄)→19→18(矿山)

第七条:1→6→7→8→9→14(村庄)→13→18(矿山)

使用枚举法列出第二阶段的线路为:

第一条:18(矿山)→19→20→25

第二条:18(矿山)→19→24→25

第三条:18(矿山)→23→20→25

玩家在起点购买(购买物资总量的依据是挖矿最大天数和路程消耗量)和在村庄购买(补充物资总量的依据是挖矿最大天数和路程消耗量),如表3 所示:

表3 玩家在起点(村庄)需要购买的物资量

由表3 知,玩家在起点时购买水83 箱,食物325 箱;在村庄需要补充水142 箱,食物0 箱(补充物资总量的依据是挖矿最大天数和第二阶段的路程消耗量);到达终点时剩余资金数为9415 元。

2.2.2 乐观条件下玩家的最优策略

乐观情况为30 天内有1 天沙暴天气,29 天晴朗天气。玩家在该条件下最优策略的确定与悲观条件相似,分两个策略:

2.2.2.1 在不考虑外来资金时,即矿山不挖矿,玩家直接从起点到达终点。

2.2.2.2 在考虑外来资金时,即矿山挖矿。在矿山挖矿的前提下,考虑是否经过14 区域(村庄)。

在不考虑外来资金,即矿山不挖矿时,玩家在起点购买(购买物资总量的依据是挖矿最大天数和路程消耗量),如表4 所示:

表4 玩家在起点需要购买的物资量

由表4 知,玩家需要在起点购买水48 箱,食物64 箱,到达终点时剩余资金9120 元。

在考虑外来资金,即矿山挖矿,并且经过14 区域(村庄)时,玩家在起点购买(购买物资总量的依据是挖矿最大天数和路程消耗量)和在村庄购买(补充物资总量的依据是挖矿最大天数和路程消耗量),如表5 所示。

表5 玩家在起点(村庄)需要购买的物资量

需要在起点购买水194 箱,食物308 箱,在村庄补给水37箱,食物0 箱,到达终点时剩余资金24580 元。

3 结论

游戏一和游戏二均从悲观准则和乐观准则两个角度出发,去考虑是否挖矿。游戏一得出无论乐观还是悲观,先去挖矿再去终点的策略都比直接去终点的剩余资金数小。因此,在本关游戏中想要在规定时间内到达终点并获得最大剩余资金数是直接从起点到终点,中间不去挖矿。游戏二得出无论是否挖矿,悲观条件下都比乐观条件下的剩余资金数小。因此,乐观的人比较适合玩本关游戏。

猜你喜欢
挖矿消耗量起点
虚拟货币挖矿木马行为监测技术研究与应用
路基石方爆破降低炸药消耗量研究
矿工“杀红眼”!一切皆可挖矿
供电紧张,伊朗禁挖比特币4个月
六月·起点
弄清楚“起点”前面有多少
有机化学反应中试剂最大消耗量问题探析
疯狂迷宫大作战
《轻型商用车辆燃料消耗量限值》强制性国家标准发布
新年的起点