国家集训队2007论文集4.刘雨辰《对拟阵初.ppt

国家集训队2007论文集4.刘雨辰《对拟阵初.ppt

  1. 1、本文档共32页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
对拟阵的初步研究 浙江省杭州第二中学 刘雨辰 概览 第一部分 : 拟阵的基本概念 第二部分 : 拟阵的最优化问题 第三部分 : 一个任务调度问题 第四部分 : 拟阵实例 拓展部分 : Shannon开关游戏 第一部分:拟阵的概念 定义 定义 实例:图拟阵 第二部分:拟阵上的最优化问题 问题提出 贪心算法 时间复杂度 排序 正确性证明 只需证明在算法的每一步A都是某个最优解的子集,那么当算法结束时A就是一个最优解 运用归纳思想 归纳基础:初始时A为空,满足要求 归纳:只需证明一个最优解的子集A经过一次循环后仍满足要求. 第三部分 任务调度问题 问题提出 问题提出 分析 考虑这么一个问题:对于S的子集A,是否存在调度方案使A中的任务都被完成。 将A按任务的截止时刻从小到大排序作为调度方案,如果按此调度无法全部完成A的任务,则其他任意调度方案都无法完成。 拟阵结构 对于给定的任务集合A,能够有效地判断这些任务能否全部完成 能全部完成的任务集合A称为可行的 第四部分:拟阵实例 图拟阵和线性拟阵 图拟阵和线性拟阵 匹配拟阵 拓展部分:Shannon开关游戏浅谈 总结 总结 最小化问题转化为最大化问题 谢谢 最小化问题 最大化问题 (12 -3 19 7 5 8) (-12 3 -19 -7 -5 -8) + 19 +1 (8 23 1 13 15 12) 这是本文的一个概览 拟阵中文又称矩阵胚,英文名matroid。1935年美国数学家Whitney首先提出了拟阵的概念。拟阵理论在近几十年得到了空前的发展,已成为一门博大精深的学科. 本文对拟阵进行了初步探讨.拟阵相当优美,接下来,就让我带领大家进入拟阵的世界 拟阵是一个二元组M=(S,L),其中S是一个有限集,L是一个以集合作为元素的集合,它的元素必须是S的子集。我们有必要对这个抽象概念进行形象地解释,如果把S看成一堆零件,L就是一些机器,很明显机器是零件的组合. 拟阵须满足两条性质:遗传性和交换性。遗传性是指对L的任意元素B,B的任意子集A,仍然是L的元素.这是一种包容性.用我们的机器观点来看,从L的某台机器中拿掉几个零件所得到的新机器仍在L中 交换性是指对L的任意元素A,B,如果A的大小比B小,那么B中存在一个不属于A的元素x.现在我们有了两台机器,一台小,一台大,必然可以从大的一台拆下一个零件装到A上,使新得到仍在L中 再来看一些定义,对于S的子集U,如果U是L的元素,则称之为独立集,也就是说L中的元素被称为独立集.一台机器就是一个独立集 对于独立集A,如果存在一个属于S但不属于A的元素x,满足A并x属于L,则称A为可扩展的,满足此条件的x称为A的一个可扩展元素.不可扩展的独立集称为极大独立集 我们可以通过反证得到一个简单的定理.我们假设有2个极大独立集A和B,它们大小不同,不妨认为A比B小,根据交换性,B中有元素可扩展A,矛盾.所以拟阵的极大独立集大小相同 我们来汇总一下,这就是拟阵.前两条定义了S和L,后面两条是拟阵的根本性质 我们来看一个拟阵的实例. 对于无向图,我们定义M=(S,L),其中S是边集E,S的子集x是独立集当且仅当x不形成环 要证明M是拟阵,我们需要说明M满足遗传性和交换性 无环的边集的子集必然无环,故满足遗传性 我们来看交换性. 如果边集A的边数比边集B少,则A形成的连通分量数目比B多 所以B中存在一个连通分量,该分量在A中不连通. 此连通分量中必然存在一条边,放入A中不形成环. 该边显然属于B-A.交换性成立 M是拟阵,称为图拟阵 对于一个拟阵,我们可以给S的每个元素x赋予一个正整数权值w(x),S的任意子集U的权值w(U)是U的所有元素的权值和. 我们现在的目标是求权值最大独立集 该问题可以贪心解决.我们先给出这个问题的贪心算法. 贪心法的基本思想是尽量取权值大的元素来扩充当前的独立集 我们设我们要求的权值最大独立集是A 初始时,把A置为空 然后根据w按递减顺序对S排序 最后我们按此递减顺序遍历S,对于当前遍历的元素x,如果A并上x以后仍然是个独立集,那么我们就将x并入A 遍历完后得到的A就是一个权值最大独立集 该算法的时间复杂度很好分析 排序的时间复杂度是O(n log n) 遍历S需要进行O(n)次判断是否为独立集的操作 如果判断是否为独立集的操作需要O(f(n))的时间 那么总的时间复杂度就是O(n log n + n * f(n)) 我们发现,时间复杂度的瓶颈在于判断是否为独立集的操作 其实,问题是各不相同的,拟阵体现了它们的一种共性,所以可以贪心,而它们的不同之处也就集中体现在判断独立集上了. 只需证明在算法的每一步A都是某个最优解的子集,那么当算法结束时A就是一个最优解 归纳思想: 归纳基础:初始时A为空,满足要求.满足要求指A是一

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档