- 1、本文档共59页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2008全国青少年信息学奥林匹克冬令营形形色色的“智能” 刘汝佳 rujia.liu@ 智能? 数据、信息、知识、智能…… 思考?行动?情感? 中文屋子… 类人?理性?完美? 图灵测试,天上掉馅饼… 智能到什么程度是我们所需要的? 第一部分 博弈 例1. 消灭敌人 (MIPT040) 敌人在地下道(无向连通简单图)里活动,每分钟走到一个相邻结点(不能不走)。你每分钟可以轰炸一个结点,如果敌人恰好在该结点,就被消灭了;否则被轰炸的结点将在一分钟之内被修复。 你看不到敌人的任何行踪,是否可以制定一条万能方案使得无论敌人初始位置在哪、如何移动,一定会被消灭? 基本逻辑 什么叫“无论敌人初始位置在哪、如何移动,一定会被消灭”呢?我们可以假定有一种能预知未来的天才敌人,他从一开始就知道我们设计的攻击顺序,因此,只要敌人存在一种不被消灭的走法,我们就会失败。我们无法感知敌人的任何信息,因此策略只是静态的。 我就是天才敌人 设身处地的想一想,如果我就是天才敌人,我应该怎样逃脱被轰炸的厄运呢?天才敌人的特异功能是预知未来,所以对手的轰炸方案应该包含于我们决策的依据 悲惨遭遇:“明知山有虎,偏向虎山行” 如果… 如果我们永远可以避开1度点(度数为1的结点,即只和一个其他结点相邻),那么就永远不会遇上刚才的囧境。 结论一 结论一:只要图中存在圈,天才敌人一定可以保命。方法是一开始就在圈里,然后坚决不离开圈。由于预知轰炸序列,每次都可以找到一个不被消灭的方案 推论:有圈图都无解,所以只需要考虑树的情况。 尽管已经把图的范围大大缩小,但树还是挺复杂。还是应该先考虑简单的情况。 总结一下 刚才我们看了几条简单的链。结论如下: 长度为2的链,连着炸两次1,正确性显然 长度为3的链,连着炸两次2,正确性显然 长度为4的链,顺序为2-3-3-2,但是正确性似乎不是很显然……需要计算一下,依次递推出每分钟天才敌人的可能位置,并用黄色表示。不可能在的位置用白色表示 递推法有什么好处? 我们来回顾以下,刚才是怎么证明序列2-3-3-2可以消灭天才敌人的? 一开始天才敌人可以存在于任意位置 如果顺利的话,随着轰炸的进行,天才敌人可以藏匿的地方越来越少 最后再也没有容身的地方,于是被消灭 我们实际上得到了一个判定算法:对于给定的轰炸顺序,判断是否能消灭天才敌人 可以枚举轰炸顺序并调用判定算法,但… 结论二 结论二:链总是有解的。一个万能方案是2-3-4-5-6-…-(n-1)-(n-1)-(n-2)-…-3-2 注意:第一轮攻击2-3-…-(n-1)-(n-1)的作用是把黄色结点限制在当前轰炸点的左侧并且黄色结点的编号与轰炸点同奇偶 推论:毛毛虫(存在一条主链,使得每个点要么在主链上,要么与主链直接相连)也总是有解的。轰炸者只需要简单的忽略毛毛冲的脚,套用毛毛虫主干的轰炸法即可。想一想,为什么(提示:奇偶性) 长度为2的支链 仍然和链的情况类似!对于连有长支链的分支点u来说,应依次轰炸各长支链的中点(每次轰炸完一个中点后要再轰炸一下u) 长度为3的链 注意,在这种情况下一定存在一个点,连了三条长度至少为3的链,否则将属于前面的情况。换句话说,它包含如下子图: 枚举算法 前面提到一种枚举算法:搜索轰炸序列,然后用前面的判定算法进行判定。由于判定算法的核心是天才敌人的可能位置集合。所以这个枚举算法实际上可以理解为:以可能位置集为结点构造图,找一条从{1,2,3,…,n}到空集的路。 例2. 间谍 (ACM/ICPC WF 2007) 间谍想从无向图的结点1走到结点0。间谍的行踪随时在你掌控之中。你可以瞬间让一条隧道(边)倒塌(但不能让间谍当前所在隧道倒塌)。至少需要摧毁多少条隧道才能保证阻止间谍? 如果… 如果本题变一下,改成无法监控间谍的行踪,那么最好的方法就是一开始就把“该弄塌”的隧道全部弄塌了,免得夜长梦多。而以后再也不弄塌任何其他隧道。在没有任何感知的情况下,这也是没有办法的事。 在这种策略下,最小开销是分离结点1和结点0的最小割C(1,0),可以转化成最大流 C(u,v)代表分离结点u和v的最小割 不一样的逻辑 还是无向图上的对抗,然而逻辑是不一样的。第一、我们可以感知,所以策略是动态的。第二、不仅是可以感知,而且具有完全信息,所以我们的策略应该是确定性的(想一想,为什么)。 静态决策:以不变应万变。 确定性的动态决策:决策是历史感知序列的确定性函数。 如果有感知… 哦!!! 原来要学会按兵不动,等到敌人最脆弱的时候给予致命一击!!! 等到间谍到结点u的时候一次性的弄塌所有该弄塌的隧道,需要摧毁C(u,0)条边 取让C(u,0)最小的u,等着间谍走过去 看上去是个不错的办法,可是… 守株待兔??? 不能指望间谍自觉,需要强制 设需要摧毁x条隧道,就能阻断所有从
文档评论(0)