下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第七章线性规划与非线性规划例1max z=10x1+5x2s.t.5x1+2x2<=83x1+4x2=9x1+x2>=1x1,x2>=0首先可化为标准形式:min-z=-10x1-5x2s.t.5x1+2x1<=8-x1-x2<=-13x1+4x2=9x1,x2>=0library(Rglpk)obj<-c(-10,-5)mat<-matrix(c(5,2,-1,-1,3,4),3,2,T)dir<-c("<=","<=","==")rhs<-c(8,-1,9)Rglpk_solve_LP(obj,mat,dir,rhs)#直接求解library(Rglpk)obj<-c(10,5)mat<-matrix(c(5,2,1,1,3,4),3,2,T)dir<-c("<=",">=","==")rhs<-c(8,1,9)Rglpk_solve_LP(obj,mat,dir,rhs,max=T)非线性规划求解(Rdonp2)例2有如下的条件约束最优化问题:min(z=x2siny+y2cosx)'-100<x<100-100<y<1002<x+y<1<3x一y<3xy=2sinxcosy<3library(Rdonlp2)p=c(10,10) #迭代初始值#对求解问题进行描述min(z=x2siny+y2cosx)fn=function(x){x[1]人2*sin(x[2])+x⑵人2*cos(x[1])}#对x,y值域描述-100<x<100-100<y<100##par.l和par.u分别为约束的左边和右边par.l=c(-100,-100);par.u=c(100,100)##目标值域#对线性约束进行描述2<x+y1<3x-y<3A=matrix(c(1,1,3,-1),2,byrow=TRUE)##线性约束系数lin.l=c(2,1);lin.u=c(+Inf,3)##分别为约束的左边和右边#对非线性约束进行描述xy=2sinxcosy<3nlcon1=function(x){x[1]*x[2] ##公式x*y}nlcon2=function(x){sin(x[1])*cos(x[2]) ##公式sin(x)*cos(y)}##两个非线性约束的左右边##x*y=2等价于2<=x*y<=2
nlin.l=c(2,-Inf);nlin.u=c(2,0.6)#将参数输入donlp2函数中进行求解##输入参数第一行:x,y值域及目标函数##输入参数第二行:线性约束条件##输入参数第三,四行:非线性约束条件ret=donlp2(p,fn,par.u=par.u,par.l=par.l,A,lin.l=lin.l,lin.u=lin.u,nlin=list(nlconl,nlcon2),nlin.u=nlin.u,nlin.l=nlin.l)##输出结果ret$parret$par例3解下列二次规划7 '7if(x)=+ —两兀2—2Xj—6兀2*SJ.Xx^rX2<2,丿一兀]+2兀2兰2,2xi+x2<3.xx>0? >0+x1x1-[26]x1x2」xL2」二次规划的优化问题,这是一种特殊形式的非线性约束优化问题。二次规划在许多领域都有运用,比如投资组合优化、求解支持向量机(SVM)分类问题等。想要用quadprog包求解二次规划,我们需要同时转化我们的目标函数和约束条件为矩阵形式。quadprog包默认是求解最小化问题,目标函数二次,约束一次。所以,我们的约束条件默认的形式也就是AX>=bvec。通常我们需要把一些原来是求极大值的问题或者<=约束通过乘以负号来转化library(quadprog)Dmat<-matrix(c(1,-1,1,2),2,2,T)Dmatdvec<-c(2,6)A<-matrix(-c(1,1,-1,2,2,1),3,2,T)Abvec<-c(-2,-2,-3)Amat<-t(A)sol<-solve.QP(Dmat,dvec,Amat,bvec)sol参数Dmat表示海赛矩阵参数dvet表示一阶向量,和Dmat的维数要相对应。参数Amat表示约束矩阵,默认的约束都是>=。参数bvet表示右边值,由向量,和Amat的维数要相对应。参数meq表示从哪一行开始Amat矩阵中的约束是需要被当作等式约束的。例4假设以决策变量x1、x2、x3分别表示甲、乙、丙、丁4种肥料的用量,得线性规划模型"minz=0.04x+0.15x+O.lx+0.125xTOC\o"1-5"\h\z1 2 3 4s.t0.03x+0.3x+0.15x>321 2 4< 0.05x+0.2x+0.1x=241 3 40.14x+0.07x<421 4x,x,x,x>0/r
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 生物材料编程调控肿瘤血管生成的策略
- 生物打印技术在神经干细胞移植中的应用
- 生物化学虚拟实验与交叉学科融合
- 生物制品稳定性试验强制降解试验设计
- 生物制剂联合免疫抑制剂治疗的MDT协同方案
- 生物制剂失应答的炎症性肠病免疫调节治疗
- 生物3D打印:器官移植长期功能维持方案设计
- 数据面试题及业务理解能力含答案
- 图书出版采购编辑面试题及答案
- 深度解析(2026)《GBT 19396-2025铽镝铁磁致伸缩材料》
- 【MOOC答案】《电子线路设计、测试与实验(二)》(华中科技大学)章节作业慕课答案
- 2025年高考数学立体几何检测卷(立体几何中的三角函数应用)
- 2025年综合类-卫生系统招聘考试-护士招聘考试历年真题摘选带答案(5卷100题)
- 驻外销售人员管理办法
- 医疗反歧视培训
- GB/T 45701-2025校园配餐服务企业管理指南
- 2025-2030中国高效节能电机行业竞争力优势与发展行情监测研究报告
- 健身房合伙协议书
- 美甲师聘用合同协议
- 《储能电站技术监督导则》2580
- 保安人员安全知识培训内容
评论
0/150
提交评论