- 1、本文档共28页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
I优化算法
优化算法单纯形法(simplex algorithm)数学/wiki/%E6%9C%80%E4%BC%98%E5%8C%96 \o 最优化最优化中,由/w/index.php?title=George_Dantzigaction=editredlink=1 \o George DantzigGeorge Dantzig发明的单纯形法(simplex algorithm)是/wiki/%E7%BA%BF%E6%80%A7%E8%A7%84%E5%88%92 \o 线性规划线性规划问题的/wiki/%E6%95%B0%E5%80%BC%E6%B1%82%E8%A7%A3 \o 数值求解数值求解的流行技术。有一个算法与此无关,但名称类似,它是/w/index.php?title=Nelder-Mead%E6%B3%95action=editredlink=1 \o Nelder-Mead法Nelder-Mead法或称下山单纯形法,由Nelder和Mead发现(1965年),这是用于优化多维无约束问题的一种数值方法,属于更一般的/w/index.php?title=%E6%90%9C%E7%B4%A2%E7%AE%97%E6%B3%95action=editredlink=1 \o 搜索算法搜索算法的类别。这二者都使用了/wiki/%E5%8D%95%E7%BA%AF%E5%BD%A2 \o 单纯形单纯形的概念,它是N维中的N?+?1个顶点的/wiki/%E5%87%B8%E5%8C%85 \o 凸包凸包,是一个/w/index.php?title=%E5%A4%9A%E8%83%9E%E4%BD%93action=editredlink=1 \o 多胞体多胞体:直线上的一个线段,平面上的一个三角形,三维空间中的一个/wiki/%E5%9B%9B%E9%9D%A2%E9%AB%94 \o 四面体四面体,等等。标准形式以下为线性规划的标准形式,假设有n个/wiki/%E5%8F%98%E9%87%8F \o 变量变量和m个/wiki/%E7%B4%84%E6%9D%9F_(%E6%95%B8%E5%AD%B8) \o 约束 (数学)约束。所有其他形式的线性规划方程组都可以按照下列方式转化成标准形式:目标函数并非最小化:将所有ck取负。约束条件中存在大于或等于约束:将约束两边取负。约束条件中存在等式:将其转化为两个不等式(一个大于等于,一个小于等于)有的变量没有非负约束:加入新变量x,并用x ? x替换原来的变量x松弛形式可以将标准形式的线性规划转化为松弛形式,以方便运算。 在原来n个变量,m个约束的线性规划中,加入m个新的变量,将原来的不等式化为等式:当然,此时依然成立。我们将x1,x2,...,xn这些变量称为基变量,它们构成的/wiki/%E9%9B%86%E5%90%88 \o 集合集合记为B。将 xn + 1,xn + 2,...,xn + m这些变量称为非基变量,它们构成的集合记为N。简单地理解,非基变量能够由基变量唯一确定。在这样的定义下,线性规划的松弛形式可以写为如下形式:因此,线性规划的松弛形式可以由v, c, A, b, N, B唯一确定,其中v是/wiki/%E5%AE%9E%E6%95%B0 \o 实数实数,c和b是长度为n+m的/wiki/%E5%90%91%E9%87%8F \o 向量向量,A是(n+m)*(n+m)的/wiki/%E7%9F%A9%E9%98%B5 \o 矩阵矩阵。N, B是/wiki/%E6%95%B4%E6%95%B0 \o 整数整数集合,分别表示非基变量集合以及基变量集合。转轴操作转轴操作是单纯形法中的核心操作,其作用是将一个基变量与一个非基变量进行互换。可以将转轴操作理解为从/wiki/%E5%8D%95%E7%BA%AF%E5%BD%A2 \o 单纯形单纯形上的一个/wiki/%E9%A1%B6%E7%82%B9 \o 顶点顶点走向另一个顶点。设变量xd属于B(基变量),变量xe属于N(非基变量),执行转轴操作pivot(d,e)之后,xd将变为非基变量,相应地xe将变为基变量。具体地说,一开始我们有/w/index.php?title=%E7%A7%BB%E9%A1%B9action=editredlink=1 \o 移项移项,得如果,我们有将此式代入其他的约束等式以及目标函数,我们就实现了xd与xe在基变量和非基变量上的互换。最优化过程如果b向量所有元素非负,则显然我们只需要令所有的变量等于0,就可以得到一个/w/index.php?title=%E5%8F%AF%E8%A1%8C%E8%A7%A3action=editredlink=1 \o 可行解可行解。在这种情况下,通过下
文档评论(0)