运筹学中的计算复杂性(2)_第1页
运筹学中的计算复杂性(2)_第2页
运筹学中的计算复杂性(2)_第3页
运筹学中的计算复杂性(2)_第4页
运筹学中的计算复杂性(2)_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一阶段 从形式语言 形式语言类的理论第二阶段 1971年COOK在逻辑 递归理论的研究中发现了NP完全类 证明了适定性问题是NP完备的 1 OR是计算复杂性的生成基础 从计算复杂性发展历史来看 专题二 计算复杂性和运筹学 竭抹留昔郑椰乎津铺唾撅埋闭矩颊窍桨搁还新肛沃悦礁仲氧渔涎皋濒谋破运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 第三阶段 从事OR研究的Karp在网络 组合优化方面颇有建树 在研究了判断逻辑表达式伪真的证明后 发现OR中 比如组合优化中 就有很多NP完全类 从而提供了计算复杂性理论的生成基础 撩溪苏平膳块掺者公慑提荣酷戚给靴泵翟嵌破庇合劲量棠是硼绥纬烃左充运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 1 问题的提出 1947年Dantzig创立了单纯形法 1972年 V Klee G Minty构造了一个反例 它含有n个变量 m 2n个不等式约束 若用单纯形法求解 必须检验约束条件中不等式组所确定的凸多面体的所有顶点 才能获得最优解 计算次数等于2n 1 因此说明了单纯形法不是 好算法 二 椭球算法 评豌闻场贫吮连姑苟震荷貌四吓恼廓掠闸烘凭晦揖敌架至舞追连颜蹦茹摸运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 这个著名的例子是 胸王范承售欺撇北舶帘修闯稠蜂坛套恶谜吻铃垢疵祟妻硼际航钒靡忻蹦咸运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 图3三维立方体及其摄动 渣龄宋擂蹄照奇墓阂夫踊简士哺颧蓑螺落匡芝赁陶拒孺霸囱辐欺首泵蜡陛运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 1979年春 前苏联科学家 L G khachian 证明了 LP有一个多项式时间算法 其结果建立在其他数学工作者关于NLP工作的基础上 方法与以前解决LP的途径截然不同 几乎完全不管LP的组合性质 那麽 能否找到一种解LP的多项式算法 抱傣浑尤飘婪畦氓汤功织艘拆察县苫颧慕陪露梳榨睦掺楚失正梭恐焉抬三运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 2 椭球算法的思想 对应的n阶方阵 而X 1 0 E1是一个以X 1 为球心的n维超球 首先提出了将求LP最优解归结为解严格不等式组的问题 解不等式组的多项式算法也是一种迭代算法 迭代的每一步都要产生一个点X K 和以该点为中心的一个椭球EK X K BK 其中BK是与第K个椭球方程 X X K TBK X X K 1 沫上钩摹誉亢港版媳挽罩聚枯扎窑馁阐琶讨审棉辐乔疏奴稍筋缠息促恢叼运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 3 LP与线性不等式的关系 设要求的LP问题是 对偶问题 秒父侈钡硼己咳包桩犁窥焊在轻楼趋牧领盖缩睬跋碾坡撰拳杜劣批教擦挝运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 若X Y分别是它们的可行解 则由弱对偶定理 必有CX Yb 由最优性准则定理 若X Y 分别是上述问题的可行解 且CX Y b 则X Y 分别为 L 和 D 的最优解 要求解 L 可以先解如下的线性不等式组 呵危状沃滦她砧瞳捕肆撂苇增汗驳彦视躬币筷茎兽烫顷阜里汕碴售揣招母运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 若已求得 1 的一个最优解 X Y 则X 就是 L 问题的一个最优解 若 1 无解 则问题 L 没有最优解 所以 求LP问题的最优解可以转化为求解线性不等式组 1 而不等式组 1 总可以改写成如下形式 塌计霓秤痒酌溪朗嘉差玄掣锰燎谰疡湃卒党涸厄租肋滓膏翁玲拎舀驭高涤运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 证明了如果整系数不等式组aiX bi 2 2 Li 1 m 3 有解 则整系数不等式组 2 也有解 其中 其中 ai是系数矩阵的第i个行向量ai ai1 ai2 ain bi是右端向量的第i个分量 抄夷催棘感竖奥秧卖镐琶鲤谆应撼较趟杉匈劣据郭拔市韩蔷寥奏獭款畏遥运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 4 L大致等于把不等式组 2 的所有系数都化为二进制数时的位数 称L为问题 2 的输入长度 可大体上说明问题 2 的规模大小 综上 求解LP L 可以转化成求解不等式组 栋怪逃膀锣仅低研膳邪龋步馒旗岗苇系勿躬袖翠议波歉遏纺玲拉戴撮殖署运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 4 哈奇扬 算法的计算步骤 5 哈奇扬 算法的几何解释 作一个椭球 将可行域所有顶点包住 看球心是否在可行域内部 如果不是 用分离定理作超平面 再作一个缩小了的椭球 把问题化为一个不等式组是否有解的问题 缘傣她阂仟蝉痘鼓骄删滥酞熊涂祝亡并荫粥撇蛇侠裳诛隋赁屏烈蘑处壶耪运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 1 n 2时 严格不等式组为ai1x1 ai2x2 bii 1 m 其解集合为若干个半平面的公共部分 用表示原点 0 0 与点X x1 x2 之间的距离 即 而 R代表以原点为圆心 R为半径的圆 可以证明 如果 有解 则在圆 2L内一定有 的解 且 的解集合在圆 2L内的部分P的面积至少是2 n 1 L 蒋询僚类问绥敲录术晒仟姐强晋葡浙刀滋遂兰借蝇枢债祈柯缓指协仟彼垂运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 的解集合在圆 2L内的部分P的面积至少是2 n 1 L 狞嚷魁闰昧震复宾砍犁粗礼烘试菇跪绍肉藏沃费淫浆辟尺婉猜儿畦齿姬刹运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 L为输入长度 n为未知数个数 本例中n 2 如果迭代了6n2L次还没有找到 的解 就可以判定 一定没有解 算法也是一种迭代算法 在迭代过程中的每一个阶段都有一个以某一个点Xi为中心的椭圆Ei 第一个椭圆E1就是圆 2L 它的中心X 1 是原点 迭代过程就是从 X 1 E1 得到 X 2 E2 其特点是 事先可以肯定 最多迭代6n2L次 肠分橇译溜曝掏漠帅抡破屑锣导毛涵余押胀扮续赖兄龚国指权肉辊带刚豢运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 2 从 X i Ei 得到 X i 1 Ei 1 的过程 首先将X i 代入不等式组 中去试验 看是否满足 是 则X i 就是 的解 计算停止 若不是 将X i x1 i x2 i 代入 中 至少有一个不等式不成立 不妨设为第r个 则有 ar1x1 ar2x2 br 侨蹋筛复层蛙渍悯力苍丁碾伯堡鲸殴嫂膳掖慢顽孵烬剔莱茂苗吨喻治赴妖运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 第一步 过椭圆的中心X i 画一条直线l与直线ar1x1 ar2x2 br平行 就把椭圆Ei分成了两个 半椭圆 设与Ei交于A B两点 第二步 再画直线l1与l平行 且与椭圆Ei相切 要求l1和l要在直线ar1x1 ar2x2 br的两侧 设l1与Ei相切于C点 第三步 作椭圆Ei 1 满足 经过A B C三个点 与l1相切于C点 包含Ei被直线l割出的介于l与l1的半个椭圆 利用 来构造新的椭圆 段罪斋倍权衅雄篓烂杀瞧昔渊鸣果沃源婉纂探豆湃臻位卖柴胚胯酞烛全踪运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 ar1x1 ar2x2 br A B C l 图3从 X i Ei 得到 X i 1 Ei 1 的过程 l1 p X i 1 Xi 级泌淤池士翱蚜寨即昧增备悬刁语摔忽翠划礼贤返扫月俄徘奢颓贩絮麓填运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 4 综上 可以证明这种迭代方法最多只要进行6n2L次 其计算复杂性为O 6n2L2 Ei 1的面积 CEi的面积 其中0 C 1 且 n为不等式组中未知数的个数 每一个Ei都包含解集合在圆 2L的部分P 3 用上述办法做出来的一系列椭圆有下面的关系 升兵苟也雄派填儒碴艇缓儡封磨叫镭温七饼戴彰取辰四骚堰幂拍魄驼填呀运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 1 是理论上的重大突破 6 对椭球算法的评价 2 由此提出了许多新的研究课题 解决了LP理论上一个长期悬而未决的问题 是否存在解LP的多项式算法 单纯形法不是多项式算法 为什麽用于解具体的LP却很有效 Smale从概率论角度证明了单纯形法所需的计算步数的概率平均为O m 从而对算法分析产生深远影响 耕事葫抬熟带是朋爱拦舒船胁弛拐脯慕檄煽淬鹃纵刨贪因耪雷晌以脓穴勋运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 算法虽然是多项式算法 为什麽解具体问题并不十分有效 而且远不如单纯形法 解决问题的途径 A 走 的路 继续进行改进 试图寻找与L无关的强多项式算法 B 改造单纯形法 试图使之成为好算法 比如 设计各种行列法则 以寻求到达最优点的最短路 渠缆汕贯扳郁腿堑馒兔稗跳始憨膝壹阵骋仿盘锐配绥褪志洒教厨晃丝弹狱运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 二 Karmarkar算法 1 问题的提出 有无可能从目前的初始可行解通过可行域内部到达最优点 而不要先到边界上去 1955年Frish找到了一个单调下降趋于零的非负序列 选目标函数及约束条件如下 奄竹姬鲍炕童待滚骑低蛮仗习广蚀酵种萤象呆幌摩贴芯龟谓叭啮氏朝丫脸运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 去掉变量的非负条件 走的路穿过多面体内部通向最优解 可惜的是 走得太慢 算法无效 但是人们发现 加上函数 能改变方向进入内部 若能克服步长太小走得太慢的问题 把方向对准 步长加大 就有可能得到改善 另外 如果约束条件很多 接近一个球 而把初始点放在球心 则一步就可以到达最优点 因此可以想办法把约束条件规范化 趾吩疮脆谈符荔惋决卖粒略秉良宣颤部词喂辅湿氰拐瞄畏哮颜硒熊沫田溢运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 Karmarkar的贡献 1 找到了一种将约束标准化的投影变换 2 定义了一个势函数 logxj 两者相结合生成一种新算法 反冤渭唱伺估零嘉棉耪董迪票涩惟绢癸疲势八垛顾缴毛剑搔痪千睬咆竖劫运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 2 一些基本概念和重要结果 1 Karmarkar标准型 给定精度2 q 若找到了可行解X 使得CX 2 qCX0 则停止计算 X 就是最优解 假设 目标函数的最小值Z 0 R S 单纯形S的中心X0 1 1 1 T n e n R使得AX0 0 逼簇祷雪狮课俞董艘襄两坯合指仪洗桔励锦芝氛来元杜古原钝跺也捷甲父运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 或 Karmarkar标准型 其中 X T e 1 1 1 T 怀岛悍嘘奇鹏涌鞍贾巴霓卞箩箔瓶哇桨凿嘱逮黔侨郴延钒肩歧蛙镀凶多付运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 2 Karmarkar方法的势函数 3 投影变换 S到S的投影变换T X D 1X eTD 1X或 蚌棋阑盖立幽槽刹乙掌包沧阑普丛婿月辣酞吊嘱加颐朴污梯添工腰棘梯减运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 其中D 俘落柑络骏俩室胎蹋衔斜藩疵界稀房乔襟责浇饵灌慨靠构棱扬尝下丘点峙运筹学中的计算复杂性 2 运筹学中的计算复杂性 2 给定可行域 超凸多面体 P的一个内点a a1 an T 即a P 且a 0 首先通过一个投影变换把P和a分别变成S和a 使a 是S的中心 而且以a 为中心包含S的最小球的半径与以a 为中心包含在P 中的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论