matlab优化工具箱
在命令行中输入optimtool,即可打开优化工具箱
fmincon函数
在matlab中,可以使用函数x = fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,options)求解非线性规划问题。
fun为目标函数
x0为不等式的初始值:
x0=[x(1)0,x(2)0,…,x(n)0]
A,b,Aeq,beq为线性不等式约束条件的参数
A = [1,2];
b = 1; % A*x <= b
Aeq = [2,1];
beq = 1; % Aeq*x <= b
lb,ub为x的上下界
lb=[x(1)min,x(2)min,…x(n)min]
ub=[x(1)max,x(2)max,…x(n)max]
nonlcon为约束条件,写在M文件中
function [c,ceq] = mycon(x)
c = [(),…,()] % 非线性不等式的约束条件
ceq = [(),…,()] % 非线性等式的约束条件
没有非线性等式的约束条件时,需要写ceq=