数学建模商人过河论文.docx
《数学建模商人过河论文.docx》由会员分享,可在线阅读,更多相关《数学建模商人过河论文.docx(8页珍藏版)》请在冰豆网上搜索。
数学建模商人过河论文
组长:
王鹏道110714
组员:
任利伟110713、孙祎110706
小组成员负责情况:
王鹏道:
选择论文题目、设计论文版面字体、分配成员任务、总结
任利伟:
一、问题提出、关键、分析。
二、模型假设、三、模型建立
孙祎:
四、模型求解、五、模型的检验、拓展及延伸
商人过河问题
2014年11月24日
摘要
为了求解3个商人和3个随从的过河问题,用数学分析方法,建立数学模型,并且加以求解,展示动态规划思想的应用步骤。
最后利用计算机蝙程进行求解,获得过河问题的完整求解过程;有效地求解类似多步决策问题的作用。
关键词:
多步决策计算机求解状态转移律图解法
一、问题的提出
随从们密约,在河的任一岸,一旦随从的人数比商人多,就杀人越货,但是乘船渡河的方案由商人决定.商人们怎样才能安全过河?
二、问题的关键
解决的关键集中在商人和随从的数量上,以及小船的容量上,该问题就是考虑过河步骤的安排和数量上。
各个步骤对应的状态及决策的表示法也是关键。
三、问题的分析
在安全的前提下(两岸的随从数不比商人多),经有限步使全体人员过河。
由于船上人数限制,这需要多步决策过程,必须考虑每一步船上的人员。
动态规划法正是求解多步决策的有效方法。
它要求把解的问题一层一层地分解成一级一级、规模逐步缩小的子问题。
直到可以直接求出其解的子问题为止。
分解成所有子问题按层次关系构成一棵子问题树.树根是原问题。
原问题的解依赖于子问题树中所有子问题的解。
四、模型假设
记第k次过河前A岸的商人数为XK,
随从数为YKk=1,2,⋯
XK,YK=0,1,2,3,将二维向量SK=(XK,YK)定义为状态.把满足安全渡河条件下的状态集合称为允许状态集合。
记作S。
则
S={(XK,YK)|(XK=0,YK=0,1,2,3),(XK=3,YK=0,1,2,3),(XK=YK=1)(XK=YK=2)}
记第k次过河船上的商人数为UK
随从数为VK
将二维向量DK=(UK,VK)定义为决策.由小船的容量可知允许决策集合(记作D)为
D={(UK,VK)|UK+VK=l,2}={(O,1);(O,2);(1,O);(1,1);(2,O)}
五、模型建立:
动态规划法正是求解多步决策的有效方法。
它要求把解的问题一层一层地分解成一级一级、规模逐步缩小的子问题。
直到可以直接求出其解的子问题为止。
分解成所有子问题按层次关系构成一棵子问题树.树根是原问题。
原问题的解依赖于子问题树中所有子问题的解。
用动态规划法分析三名商人的过河问题。
可得如下的递归树:
(注解:
当K为奇数时,船在B岸;当K为偶数时,船在A岸。
)
通过分析该递归树,知道求解关键在于正确地写出基本的状态转移关系式和恰当的边界条件。
因为k为奇数时,船是从A岸驶向B岸,k为偶数时。
船是由B岸驶回A岸。
所以状态SK随决策DK变化的规律是
SK+1=SK+(-1)KDK,k=l,2,⋯,
称之为状态转移律,这样,制定过河方案就归结为如下的多步决策问题:
每一步,船由A岸驶向B岸或B岸驶回A岸,都要对船上的人员(商人UK,随从VK各几人)作出决策,在保证安全的前提下即两岸的商人数XK都不比随从数YK少,用有限步使人员全部过河.用状态(变量)SK表示某一岸的人员状况,决策(变量)DK表示船上的人员状况,可以找出状态SK随决策DK变化的规律.这样安全过河问题就转化为:
求决策DK∈D(k=1,2,……,n),使得状态SK∈S,按照状态转移律,由初始状态S1=(3,3),经有限步n到达状态SK+1=(O,O)。
SK+1=SK+(-1)KDK,k=l,2,3,其中DK∈D={(UK,VK)|UK+VK=l,2},{其中SK∈(XK,YK)|(XK=0,YK=1,2,3);(XK=3,YK=0,1,2,3);(XK=YK=1,2)},Sn+1=(0,0)
这就是三个商人的过河问题模型。
六、模型求解:
a)穷举法:
先建立编程的基本过程,然后考虑模型,再编写程序
b)然后就可以得出结果了
主程序流程图
c)图解法:
状态s=(x,y)16个格点
允许状态10个●点
允许决策移动1或2格;k奇,左下移;右下移
总共需要11步
七、模型的检验
用2名商人和2名随从的过河问题的解决思路,检验3名商人和3名随从的过河问题。
八、模型的拓展和延伸
通过三名商人和三名随从的过河问题的解决方案,可以进一步计算四名商人和四名随从的过河问题,通过计算机编程可以设计m名商人和n名随从的过河问题。
这需要用多步决策
九、总结
这是通过数学分析的方法解决实用问题,经过问题提出、问题假设、问题分析、模型建立、模型求解、模型检验的过程,解决商人过河问题。
然后扩展延伸到n个商人的问题。
学习数学建模以来,重新认识了学习数学的乐趣,也重新认识了数学,本以为数学是单调的,枯燥的,学习了之后,发现数学是普遍存在我们生活之中的。
解决现实中的问题,很多都需要数学。
沉浸在数学的世界里,发现学习是有趣的;相比于机械的认识各个组织器官,建立一个数学模型解决问题是十分有趣的。
参考文献:
(1)傅清祥.《数据结构与算法》.王晓东.北京:
电子工业出版社1998.
(2)姜启瑟.《数学建模》(第二版).北京:
高等教育出版社,2000.
(3)运筹学教材编写组.《运筹学》(修订版).北京:
清华大学出版社。
2001.