欢迎来到天天文库
浏览记录
ID:27585707
大小:128.44 KB
页数:8页
时间:2018-12-04
《matlab数学规划问题求解》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、Matlab数学规划问题求解1.线性规划线性规划问题是目标函数和约束条件均为线性函数的问题,MATLAB6.0解决的线性规划问题的标准形式为:minffx,xeR"sub.to:A-x2、inprog(f,A,b)x=linprog(f,A,b,Aeq,beq)x=linprog(f,A,b,Aeq,beq,lb,ub)x=linprog(f,A,b,Aeq,beq,lb,ub,xO)x=linprog(f,A,b,Aeq,beq,lb,ub,xO,options)[x,fval]=linprog(…)[x,fval,exitflag]=linprog(...)[x,fval,exitflag,output]=linprog(...)说明:x=linprog(f,A,b)值x为最k解向量。[x,fval,exitflag,output,lambda]=lin3、prog(…)%求minf’*x,sub.toA线性规划的最优解。返回x=linprog(f,A,b,Aeq,beq)%含有等式约束心…a:=/?叫,若没有不等式约束则令A=[],b=[]。x=linprog(f,A,b,Aeq,beq,lb,ub)%指定x的范围x=li叩rog(f,A,b,Aeq,beq,lb,ub,xO)%设置xO为初值点。x=linprog(f,A,b,Aeq,beq,lb,ub,xO,options)%options为指定的优化参数。下面将进行专门描述。[x,fval]=linprog(…)%返回目标函数最优值,即fval=f,*x。[x,lamb4、da,exitflag]=linprog(…)%lambda为解x的Lagrange乘子。[x,lambda,fval,exitflag]=linprog(…)%exitflag为终止迭代的错误条件。[x,fval,lambda,exitflag,output]=linprog(…)%output为关于优化的一些信息。若exitflag>0表示函数收敛于解x,exitflag=O表示超过函数估值或迭代的最大数字,exitflag<0表示函数不收敛于解x;lambda=lower(lambda.lower)表示下界lb,lambda=upper(lambda.upper)表示5、上界ub,lambda=ineqlin(lambda.ineqlin)表示不等式约束,lambda=eqlin(lambda.eqlin)表示等式约束,lambda中的非0元素表示对应的约束是有效约束;output=iterations表示迭代次数,output=algorithm表示使用的运算规则,output=cgiterations表示PCG迭代次数。Options函数描述:对于优化控制,MATLAB提供了18个参数,这些参数的具体意义为:opti(ms(l)•参数显示控制(默认值为0)。等于1时显示一些结果。options(2)•优化点x的精度控制(默认值为le-46、)。options(3)•优化函数F的精度控制(默认值为le-4)。options(4)•违反约束的结束标准(默认值为le-6)。options(5)•算法选择,不常用。options(6)•优化程序方法选择,为0则为BFCG算法,为1则采用DFP算算法oPtionS(7)•线性插值算法选择,为0则为混合插值算法,为1则采用立方插;ooptions(8)•函数值显示(目标一达到问题中的Lambda)opti(mS(9)•若需要检测用户提供的梯度,贝蠟为1。options(lO)•函数和约束估值的数目。options(11)-函数梯度估值的个数。options(12)-约束估7、值的数目。options(13)•等约束条件的个数。options(14)-函数估值的最大次数(默认值是100X变量个数)options(15)•用于目标一达到问题中的特殊目标。oPtions(16)-优化过程中变量的最小有限差分梯度值。options(17)-优化过程中变量的最大有限差分梯度值。options(18)•步长设置(默认为1或更小)。例1求下面的优化问题min-5x,-4x2-6x3*x}-x2+x3<203x+2x?+4x,<42sub.toj3x,+2x2<300
2、inprog(f,A,b)x=linprog(f,A,b,Aeq,beq)x=linprog(f,A,b,Aeq,beq,lb,ub)x=linprog(f,A,b,Aeq,beq,lb,ub,xO)x=linprog(f,A,b,Aeq,beq,lb,ub,xO,options)[x,fval]=linprog(…)[x,fval,exitflag]=linprog(...)[x,fval,exitflag,output]=linprog(...)说明:x=linprog(f,A,b)值x为最k解向量。[x,fval,exitflag,output,lambda]=lin
3、prog(…)%求minf’*x,sub.toA线性规划的最优解。返回x=linprog(f,A,b,Aeq,beq)%含有等式约束心…a:=/?叫,若没有不等式约束则令A=[],b=[]。x=linprog(f,A,b,Aeq,beq,lb,ub)%指定x的范围x=li叩rog(f,A,b,Aeq,beq,lb,ub,xO)%设置xO为初值点。x=linprog(f,A,b,Aeq,beq,lb,ub,xO,options)%options为指定的优化参数。下面将进行专门描述。[x,fval]=linprog(…)%返回目标函数最优值,即fval=f,*x。[x,lamb
4、da,exitflag]=linprog(…)%lambda为解x的Lagrange乘子。[x,lambda,fval,exitflag]=linprog(…)%exitflag为终止迭代的错误条件。[x,fval,lambda,exitflag,output]=linprog(…)%output为关于优化的一些信息。若exitflag>0表示函数收敛于解x,exitflag=O表示超过函数估值或迭代的最大数字,exitflag<0表示函数不收敛于解x;lambda=lower(lambda.lower)表示下界lb,lambda=upper(lambda.upper)表示
5、上界ub,lambda=ineqlin(lambda.ineqlin)表示不等式约束,lambda=eqlin(lambda.eqlin)表示等式约束,lambda中的非0元素表示对应的约束是有效约束;output=iterations表示迭代次数,output=algorithm表示使用的运算规则,output=cgiterations表示PCG迭代次数。Options函数描述:对于优化控制,MATLAB提供了18个参数,这些参数的具体意义为:opti(ms(l)•参数显示控制(默认值为0)。等于1时显示一些结果。options(2)•优化点x的精度控制(默认值为le-4
6、)。options(3)•优化函数F的精度控制(默认值为le-4)。options(4)•违反约束的结束标准(默认值为le-6)。options(5)•算法选择,不常用。options(6)•优化程序方法选择,为0则为BFCG算法,为1则采用DFP算算法oPtionS(7)•线性插值算法选择,为0则为混合插值算法,为1则采用立方插;ooptions(8)•函数值显示(目标一达到问题中的Lambda)opti(mS(9)•若需要检测用户提供的梯度,贝蠟为1。options(lO)•函数和约束估值的数目。options(11)-函数梯度估值的个数。options(12)-约束估
7、值的数目。options(13)•等约束条件的个数。options(14)-函数估值的最大次数(默认值是100X变量个数)options(15)•用于目标一达到问题中的特殊目标。oPtions(16)-优化过程中变量的最小有限差分梯度值。options(17)-优化过程中变量的最大有限差分梯度值。options(18)•步长设置(默认为1或更小)。例1求下面的优化问题min-5x,-4x2-6x3*x}-x2+x3<203x+2x?+4x,<42sub.toj3x,+2x2<300
此文档下载收益归作者所有