《人狗鸡米过河.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《人狗鸡米过河

学校代码: 10128 学 号: 200820905016 ( 二 〇一二 年 5月 人狗鸡米过河问题 一.摘要 本文主要对数学建模的基础模型跟“商人过河”类似简单问题的人 狗鸡米过河问题 ,在图论和数学游戏问题中,有不少渡河问题。渡河问题是在一定的限制条件下,要求给出最好解,反映在图论中就是求最短路线问题。对于这类问题,有多种解决方法,其中Dijkstra递推算法是最常用的方法。50年代中期,由于计算机科学技术迅猛发展,出现了一门新兴的学科,叫做“人工智能”。人工智能研究的是如何使计算机具有人类的智能,使计算机像人类那样智能地工作,去完成那些需要人的智能才可以完成的工作。从另一个角度来说,人工智能研究如何使人的智能用计算机来实现。例如,本题中从初始状态(1,1,1,1)到目标状态(0,0,0,0)的搜索过程都可以用人工智能的方法——由计算机来实现。利用人工智能的方法还能证明定理(例如,平面几何中的定理)。机器证明定理就是把人证明定理的过程通过一套符号体系,变成一系列能在计算机上实现的符号运算过程,从而把人的推理演绎过程机械化。这对我们所求的问题方便了很多。 关键词:最短路问题 Dijkstra递推算法 渡河问题 二 问题重述 人、狗、鸡、米均要过河,船需要人划,另外至多还能载一物,而当人 不在时,狗要吃鸡,鸡要吃米。请设计一个安全渡河方案,并使渡河次 数尽量少? 三 模型假设(每次运载只能一人一物,而且不能把狗和鸡留在一起,也不能把鸡和米留在一起),最后达到目标状态,即人、狗、鸡、米均在对岸。为了将问题数学化,我们用四元数组(即由4个数所组成的数组来表示初始状态,目标状态以 及中间的各种可取状态。 假设一物在本岸时,用数字“1”表示;在对岸时,用数字“0”表示。于是,人、狗、鸡、米的状态可以用每个数取0或1的四元数组来表示。例如,(1,0,1,0)表示人在本岸,狗在对岸,鸡在本岸,米在对岸,每个数取0或 1的四组数组共有16个: (1,1,1,1) (0,0,0,0) (1,1,1,0) (0,0,0,1) (1,1,0,1) (0,0,1,0) (1,0,1,1) (0,1,0,0) (1,1,0,0) (0,0,1,1) (1,0,1,0) (0,1,0,1) (1,0,0,1) (0,1,1,0) (1,0,0,0) (0,1,1,1) 四 模型建立与求解 由于鸡和米或者狗和鸡不能留在一起,所以(1,1,0,0),(0,0,1,1),(1,0,0,1),(0,1,1,0)(1,0,0,0),(0,1,1,1)所表示的状态都是不允许的,而其他10个状态都是允许存在的,也就是说,是可取状态,它们分别是 (1,1,1,1) (0,0,0,0) (1,1,1,0) (0,0,0,1) (1,1,0,1) (0,0,1,0) (1,0,1,1) (0,1,0,0) (1,0,1,0) (0,1,0,1) 我们用10个顶点分别表示以上10个可取状态。如果一个可取状态可以经过一次过河运载转移到另一个可取状态,那么在表示这两个可取状态的顶点之间联结一条边,从而构成一个图(图29-1)。例如,(1,0,1,1)和(0,0,1,0)之间联结一条边表示如果人把米从本岸运到对岸,那么可取状态(1,0,1,1)就转移到可取状态(0,0,1,0);反过来,如果人把米从对岸运到本岸,那么可取状态(0,0,1,0)就转移到可取状态(1,0,1,1)。现在问题变为在图29-1中找一条从顶点(1,1,1,1)通过相联结的边到顶点(0,0,0,0)的路径,每条路径就是一个解。 解:从图29-1可以找到两条从顶点(1,1,1,1)到顶点(0,0,0,0)的路径(如图29-2所示),其中一条所表示的解为 (1)人把鸡运到对岸; (2)留下鸡,人返回; (3)人把狗运到对岸; (4)留下狗,人把鸡带回; (5)人把米运到对岸; (6)人独自返回,留下米(还有狗); (7)人把鸡运到对岸。 只要把(3),(4),(5)分别改为 (3)人把米运到对岸; (4)留下米,人把鸡带回; (5)人把狗运到对岸 就得到另一解。 这二解所需的运载次数相等,所以是等优的。 五 结果分析 以上我们采用图作数学模型,直观明了地解决了问题。由于人狗鸡米过河问题比较简单,也可以用递推方法来解,这方法基于逻辑推理。

文档评论(0)

1983xuesheng + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档