基于数学规划模型的“穿越沙漠”路线最优策略 的研究

刘子凯 曾秋云 樊雨童 张瀚 陈晔

湖南文理学院 常德 415000

【摘要】本文主要针对“穿越沙漠”游戏在规定条件下,对数学规划模型的建立进行了相关研究。通过MATLAB求解分析得到最优路线,通过结合分析在食物、水物资、天气、采矿收益、路线、补给日期的选择等多种条件相互约束下,利用0-1规划、线性规划建立在规定时间内最大收益的最优策略的数学规划模型。

【关键词】0-1规划,线性规划,最优路线

基金:湖南文理学院2020年大学生创新性试验计划一般资助项目,项目编号:YB2005;

根据该游戏规则,玩家拥有一张沙漠地图、10000元的初始资金。资金可以在起点和村庄购买所需数量的水和食物,玩家拥有水和食物的重量不能超过玩家负重上限。玩家在每天根据天气、活动的情况不同,所消耗的物资不同。玩家在矿山可以选择挖矿赚取基础资金。若在到达终点之前食物或水资源耗尽,则游戏失败。在天气已知的情况下,玩家从起点出发,须在规定时间内到达终点,并保留尽可能多的资金。

1、问题分析

游戏规定:可能有三种天气情况—晴朗、高温、沙暴,且每天的天气状况已知,若遇沙暴天气,则必须原地休息或挖矿。从第0天开始,须在30天内到达终点,且每次行动只能从所在区域前往相邻区域或者在原地停留。村庄的水和食物的价格为起点的2倍,玩家在原地停留一天消耗的资源数量称为基础消耗量,行走一天消耗的资源数量为基础消耗量的2倍,挖矿一天消耗的资源数量为基础消耗量的3倍。

2.1、模型的建立与求解

首先结合游戏规则以及地图进行分析,发现两种相对较优的可行策略。一是直接从起点到最终点,不进行采矿工作,力求行走过程中花费最少;二是从起点到矿场进行采矿获取资金,再回到终点,力求获取的资金尽可能多。针对第一种策略,找到了一条最优路线。针对第二种策略,利用0-1规划和线性规划建立模型,求得了一条最优路线。比较两种策略下,回到终点剩余的总费用,最终决定采用哪种策略。

针对第一种策略:

利用MATLAB软件求解起点到终点的最短路径,即1—25—26—27。由于在整个游戏时段内每天天气状况事先全部已知,因此可以直观计算出来每天所需的水和食物量,则可求得花费的资金。故最终剩余资金为:(

表示最终剩余资金,

表示第

天水的消耗箱数,

表示第

天食物的消耗箱数。)

针对第二种策略:

首先利用MATLAB软件求出起点到矿山、矿山到终点的最短路径,经过计算发现,从起点到矿山最少耗时10天,从矿山到终点最少耗时5天。为使获取的资金尽可能多,则需要玩家在第11天到第25天在矿山挖矿的天数尽可能多。我们将其分为三段:起点到矿山、矿山策略、矿山到终点。

起点到矿山:利用MATLAB软件计算求得,从起点到矿山至少需要10天(中间两天沙暴天气在原地停留休息),最优路线为:1—25—26—23—23(停留)—22—9—15—15(停留)—14—12。

结合天气、食物和水的消耗等条件,利用MATLAB软件计算求得,从起点到村庄需98箱水、98箱食物,因食物的补给价格较昂贵且村庄物资补给价格为起点物资补给价格的两倍,则在起点处尽可能的多带食物,而所带水的数量为98箱,即从起点到村庄的消耗量。又因最大负重为1200kg,故初始阶段背包内所背负的物资分别为食物452箱、水98箱。从起点到村庄,在村庄补给下一段路程的消耗,即补充水164箱,再出发到矿山,这段路程的水、食物消耗量为确定的值。利用MATLAB软件计算求得:在这期间消耗了食物122箱,消耗水130箱,补充水164箱,第十天的剩余食物量为330箱,水的剩余量为132箱。此时,资金剩余3350元。

矿山策略:为使最终资金尽可能多,则需要挖矿的天数尽可能多。由于从矿山回到终点至少需要5天,则将第11天至第25天划分为第二阶段的耗时天数。

第11天开始挖矿,因第17、18天为沙暴天气,只能挖矿或停留休息,经过分析发现,若从第11天一直挖矿到第17天,则物资不足以支撑到第17天并返回村庄补给食物,故需要在沙暴天气停工休息并及时返回村庄补给食物。又因为从矿山返回村庄再返回矿山至少需要行走4天,由于中间有两天沙暴天气,因此至少需要耗费6天时间。 补给物资的花费为:

矿场到终点:利用MATLAB软件计算求得,从矿山返回起点至少需要五天时间,最优路线为:13---15---9---21---27。要保留尽可能多的资金,则挖矿天数应尽可能多,故第26天开始从矿山经过村庄到达终点并在村庄进行一次补给,以求能顺利到达终点,又因为在终点水和食物的换算价格为起点的一半,故使最终物资剩余量尽可能为0。

结合上述分析,通过0-1规划和线性规划,建立如下数学规划模型:

利用lingo软件编程求得最终剩余资金为10230元。求得最优路线为:1--25--26--23--23(停留)--22--9--15--15(停留)--13--12--12(挖矿)--12(挖矿)--12(挖矿)--13--15--13--13(停留)--13(停留)--12---12(挖矿)--12(挖矿)--12(挖矿)--12(挖矿)--12(挖矿)--12(挖矿)--13--15--9--21--27路线图如下(图1):

matlab穿越荒漠课程设计,基于数学规划模型的“穿越沙漠”路线最优策略的研究...相关推荐

  1. MATLAB相干成像系统,Matlab光学仿真课程设计-基于Matlb相干与非相干照明成像系统的仿真.docx...

    Matlab光学仿真课程设计-基于Matlb相干与非相干照明成像系统的仿真 东 北 石 油 大 学课 程 设 计课课 程 Matlab光学仿真课程设计 题 目 基于Matlab相干与非相干照明 成像系 ...

  2. 2psk系统的仿真课程设计matlab,通信原理课程设计-基于MATLAB-Simulink的2PSK仿真

    <通信原理课程设计-基于MATLAB-Simulink的2PSK仿真>由会员分享,可在线阅读,更多相关<通信原理课程设计-基于MATLAB-Simulink的2PSK仿真(17页珍藏 ...

  3. 自控matlab设计,自动控制原理课程设计--基于MATLAB软件的自动控制系统仿真

    自动控制原理课程设计--基于MATLAB软件的自动控制系统仿真 < 自动控制原理 >课程设计说 明 书日期: 2012.5.21-2012.6.1 自动控制原理 课程设计评阅书题目 基于 ...

  4. 工厂供电MATLAB仿真,工厂供电课程设计---基于MATLAB的电力电子系统仿真

    工厂供电课程设计---基于MATLAB的电力电子系统仿真 课题名称基于 MATLAB 的电力电子系统仿真 ((一一)) 交流交流.直流变流器直流变流器 交流-直流变流器又称整流器.AC-DC 变流器, ...

  5. 计算机组成原理认识fpga,计算机组成原理课程设计-基于EDA和FPGA技术的8位模型计算机的设计与实现_精品.doc...

    计算机组成原理课程设计-基于EDA和FPGA技术的8位模型计算机的设计与实现_精品 目录 前言2 第一章 课程设计内容2 1.1 实验要求2 1.2 实验目的2 第二章 实验原理及方案2 2.1 实验 ...

  6. matlab音乐信号处理,数字信号处理课程设计---基于 MATLAB 的音乐信号处理和分析...

    数字信号处理课程设计---基于 MATLAB 的音乐信号处理和分析 1<数字信号处理>课程设计设计题目:基于 MATLAB 的音乐信号处理和分析一.课程设计的目的本课程设计通过对音乐信号的 ...

  7. 潮流分析matlab课程设计小结,电力系统暂态分析课程设计--基于MATLAB的电力系统复杂潮流分析...

    电力系统暂态分析课程设计--基于MATLAB的电力系统复杂潮流分析 电力系统稳态分析课程设计 题 目基于 MATLAB 的电力系 统 复杂潮流分析 学生姓名 学 号 专 业电气工程及其自动化 班 级 ...

  8. 电力系统分析课程设计——基于MATLAB的三相短路分析

    电力系统分析课程设计--基于MATLAB的三相短路分析 案例:三机九节点系统 3.2.1 题目描述 三相短路发生时,电力系统的三相电路仍然对称,故称之为对称短路.此类 型短路在所有短路故障占比虽然不多 ...

  9. 基于matlab下数字信号的课程设计,数字信号课程设计--基于MATLAB的语音滤波实验...

    数字信号课程设计--基于MATLAB的语音滤波实验 数字信号课程设计 数字信号课程设计 题目基于基于 MATLAB 的语音滤波实验 姓名 班级 电信 1002 班 学号 数字信号课程设计 摘要摘要 数 ...

最新文章

  1. 大三下学期十四周总结
  2. 基于MapWinGis的开发探索(三)--改善缩放、渲染、显示文本
  3. python 手机编程termux_如何优雅的在手机上进行Python编程?
  4. luci编程 openwrt_openwrt开源系统LUCI配置界面
  5. matlab指定的数据范围无效,c – 如何检查迭代器指定的范围是否有效?
  6. 10.210.3 Xcode开发包
  7. 列举ASP.NET 页面之间传递值的几种方式
  8. PI控制器概念 笔记
  9. 各种工业以太网技术浅析
  10. L2-016 愿天下有情人都是失散多年的兄妹 (25 分)
  11. 2020-08-05
  12. 火影忍者中的天才七忍者
  13. Maven文件重命名
  14. 如何用电脑画平面坐标图_如何在WORD或者EXERL上画坐标图?
  15. python replace函数 成功 失败_解决python replace函数替换无效问题
  16. unity游戏存档playerprefs
  17. Long与long的区别
  18. 如何保护电子邮箱安全?163邮箱安全吗?
  19. 调节阀各种特性气动调节阀如何存放
  20. 软件测试是什么?具体的工作内容是什么?有前途吗?

热门文章

  1. html小时分钟秒选择器,时间选择器.html
  2. bootstrap时间控件--时间选择器
  3. 10001.基于Linux和MiniGUI的嵌入式系统软件开发指南(转载)
  4. Python3-word文档操作(一):利用python创建word文档,并且设置标题和正文的内容,设置字体样式
  5. Python递归生成多叉树结构之treelib
  6. java中api是什么_java中API总结
  7. 微信签约完成后,403错误解决
  8. 中国台风计算机,台风丹娜丝或是今年以来最怪的台风了,超级计算机:不知道登中国哪里...
  9. vue 实现pc端调取本地摄像头拍照生成base64数据 navigator.userAgent 功能
  10. 批量提取关键字所在段落,word魔方插件高效完成