77范文网 - 专业文章范例文档资料分享平台

matlab第四次

来源:网络收集 时间:2020-05-12 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

Matlab素质拓展课第四次作业

主要包括:线性规划非线性规划,元胞数组结构体,文件输入输出

Dy4_1. max f(x1,x2)=2x1+3x2

s.t. x1+x2≤8

4x1≤16

4x2≤12

x1,x2≥0 解:

% Dy4_1. max f(x1,x2)=2x1+3x2

% s.t. x1+x2≤8

% 4x1≤16

% 4x2≤12

% x1,x2≥0 clc;

clear;

c=[-2 -3];

A=[1 2;4 0;0 4];

b=[8;16;12];

[x z]=linprog(c,A,b)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% Dy4_1. max f(x1,x2)=2x1+3x2

% s.t. x1+x2≤8

% 4x1≤16

% 4x2≤12

% x1,x2≥0 clc;

clear;

c=[-2 -3];

A=[1 2;4 0;0 4;-1 0;0 -1];

b=[8;16;12;0;0];

[x z]=linprog(c,A,b)

一是 对于linprog命令的几种常用格式及其求解的对应的问题模型,现作陈述如下:

(1) x=linprog(f,A,b)

求解的模型 min z=cx

s.t. Ax≤b

(2) x=linprog(f,A,b,Aeq,beq)

求解的模型 min z=cx

s.t. Ax≤b

Aeq.x=beq

若没有不等式约束Ax≤b,则在M文件中加入命令:A=[],b=[].

(3) x=linprog(f,A,b,Aeq,beq,lu,ub)

求解的模型 min z=cx

s.t. Ax≤b

Aeq.x=beq

lb≤x≤ub

若没有不等式约束Aeq.x=beq,则在M文件中加入命令:Aeq=[],beq=[].

二是 二次规划

在matlab中二次规划(QP)问题的标准型为:

Min f(x)=1/2.xTHx+cTx

s.t. Ax≤b

Aeq.x=beq

vlb≤x≤vub

其中H∈Rn×n为对称矩阵,A和Aeq为矩阵,其余为向量.

Dy4_2. min f(x1,x2)=-x1-2x2+1/2.x1^2+1/2.x2^2

s.t. 2x1+2x2≤8

x1+4x2≤5

x1,x2≥0

解:写成标准形式:

% Dy4_2. min f(x1,x2)=-x1-2x2+1/2.x1^2+1/2.x2^2

% s.t. 2x1+2x2≤8

% x1+4x2≤5

% x1,x2≥0 clc;

clear;

H=[1 0;0 1];

c=[-1;-2];

A=[2 2;1 4];

b=[6;5];

lb=[0;0];

[x,fval]=quadprog(H,c,A,b,[],[],lb)

三是一般非线性规划解法

Matlab中非线性规划的数学模型写成以下标准型:

Min f(x)

s.t. Ax≤b

Aeq.x=beq

C(x)≤0

Ceq(x)=0

vlb≤x≤vub

其中x为n维向量,f(x)是标量函数,A,b,Aeq,beq是相应维数的矩阵和向量,C(x)和Ceq(x)是非线性向量函数.

Matlab中非线性规划求解的函数是fmincon,命令的基本格式为 :

X=fmincon(fun,x0,A,b,Aeq,beq,VLB,VUB,nonlcon)

其中,给定初值x0,求解fun函数的最小值x.fun函数的约束条件为Ax≤b, Aeq.x=beq, vlb≤x≤vub,在nonlcon参数中提供非线性不等式c(x)≤0和等式Ceq(x)=0。

Dy4_3 min f(x)=e^x1(4x1^2+2x2^2+4x1x2+2x2+1)

s.t. x1+x2=0

1.5+x1x2-x1-x2≤0

-x1x2-10≤0 解

% min f(x)=e^x1(4x1^2+2x2^2+4x1x2+2x2+1)

% s.t. x1+x2=0

% 1.5+x1x2-x1-x2≤0

% -x1x2-10≤0

%dy4_3.m clc;

clear;

x0=[-1;1];

Aeq=[1 1];

beq=0;

[x,fval]=fmincon('fun4_3',x0,[],[],Aeq,beq,[],[],'nonlcon4_3')

先定义目标函数 fun4_3.m

function f=fun4_3(x)

f=exp(x(1))*(4*x(1)^2+2*x(2)^2+4*x(1)*x(2)+2*x(2)+1); end

再定义非线性函数nonlcon4_3.m

function [c,ceq]=nonlcon4_3(x)

c=[1.5+x(1)*x(2)-x(1)-x(2);-x(1)*x(2)-10];

ceq=[];

end

dy4_4 max (x1^2+2x2^2+x3^2+x1x2+x1x3)

s.t. x1^2+x2^2+x3^2-25=0;

8x1+14x2+7x3-56=0

x1,x2,x3≥0

解: 先转换成标准模型求 min (-x1^2-2x2^2-x3^2-x1x2-x1x3)

% max (x1^2+2x2^2+x3^2+x1x2+x1x3)

% s.t. x1^2+x2^2+x3^2-25=0;

% 8x1+14x2+7x3-56=0

% x1,x2,x3≥0

% 解: 先转换成标准模型求 min (-x1^2-2x2^2-x3^2-x1x2-x1x3)

% dy4_4.m clc;

clear;

x0=[1;1;1];

VLB=[0;0;0];

VUB=[];

A=[]; b=[];

Aeq=[8 14 7];

beq=56;

[x,f,exitflag,output]=fmincon('fun4_4',x0,A,b,Aeq,beq,VLB,VUB,'nonlcon4_4')

先定义目标函数 fun4_4.m

function f=fun4_4(x)

y=-x(1)*x(1)-2*x(2)*x(2)-x(3)*x(3)-x(1)*x(2)-x(1)*x(3); end

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库matlab第四次在线全文阅读。

matlab第四次.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/1046926.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: