- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
YALMIP工具箱使用范例精选
YALMIP工具箱简介
东北大学数学系
王琪
wangqimath@126.com
YALMIP工具箱简介
• 基于符号运算工具箱编写
• 一种定义和求解高级优化问题的模化语言
• 用于求解线性规划、整数规划、非线性规
划、混合规划等标准优化问题以及LMI
• 工具箱主页:
http://control.ee.ethz.ch/~joloef/wiki/pmwiki.php
YALMIP工具箱的安装
• Add the following directories to MATLAB path
• /yalmip
• /yalmip/extras
• /yalmip/demos
• /yalmip/solvers
• /yalmip/modules
• /yalmip/modules/parametric
• /yalmip/modules/moment
• /yalmip/modules/global
• /yalmip/modules/sos
• /yalmip/operators
路径设置
安装测试与示例
• 测试YALMIP及已经存在的优化工具箱是否
正常
• Yalmiptest
• 示例及入门
• Yalmipdemo (学习该工具箱的最佳途径)
实型变量—sdpvar
• sdpvar是YALMIP 的一种核心对象,它所代表的是优
化问题中的实型决策变量。
• 该种类型的变量可以通过如下方法产生:
P=sdpvar(n,m); %表示x为n*m的矩阵
P=sdpvar(n,n,’full’); %表示x为n*n的方阵
P=sdpvar(n,n,symmetric);%表示x为n*n的对称方阵
例:P=sdpvar(3,3);%方阵不带参数默认为对称方阵
P可以像正常的矩阵一样进行各种运算及操作,如:
v = trace(P)+P(1,1)+sum(sum(P))*5;
X = [P diag(P) v*eye(4)];
实型变量—sdpvar
• 变量sdpvar到底是什么?
• 它是符号型、未知的,但可以写为一组基
矩阵的和
• P = P0+p1*P1+p2*P2+...+pn*Pn
• 可以用see函数来了解sdpvar类型数据的构
成
其它决策变量类型
• intvar——整型
如:P=intvar(3,4)
• binvar——0-1型
如:P=binvar(5,5)
约束条件—set
• set (集合)是YALMIP 的另外一种关键对象,用
它来囊括优化问题的所有约束条件。
• 最常用的集合构造方法为采用set函数
例:
P = sdpvar(3,3);
F = set(P 0);%唯一的不等式约束
对于存在上、下界的情况,也可以有如下的写法:
F = set(0 diag(P) 5);
约束条件—set
• 如果是等式约束,注意用“ ”表示,如:
F = set(diag(P) == zeros(3,1));%等式约束
上式也可以写为F = set(diag(P) == 0);
• 如果问题包含多个约束条件,可以将多个
条件用“+”相连
F = set(P0) + set(0 diag(P) 5);
约束条件的三种构造方法
• P = sdpvar(3,3);
• F1 = set(P0)+set(sum(P.^2) [5,6,7]);
• F2 = set(P0)+set(sum(P.^2) [5,6,7]);
• F3 = [P0, sum(P.^2) [5,6,7]];
• 以上构造出的F1、F2、F3完全相同
求解函数—solvesdp
• 函数solvesdp用来求解优化问题
• s=solvesdp(F);%求
文档评论(0)