有关matlab中 fmincon问题
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/08/27 22:12:39
有关matlab中 fmincon问题
在利用matlab中fmincon求解非线性规划问题时(x = fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,options))目标函数fun十分复杂,在求解x的同时,fun中需要另外一些临时输入的常数,此时fun函数应该怎么处理,请回答详细一些,最好有例子.
在利用matlab中fmincon求解非线性规划问题时(x = fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,options))目标函数fun十分复杂,在求解x的同时,fun中需要另外一些临时输入的常数,此时fun函数应该怎么处理,请回答详细一些,最好有例子.
function fun(x,a,b,c)%其他参数,比如a,b,c等等
代码
end
用的时候这么用,假设a,b,c分别为2,3,4
x = fmincon(@fun(x,2,3,4),x0,A,b,Aeq,beq,lb,ub,nonlcon,options))
再问: 我按照方法实验了,原来调试好的一个小程序,随意加个参数,改成@fun(x,0),就显示Error: Unbalanced or unexpected parenthesis or bracket.
再答: x = fmincon(@(x)fun(x,2,3,4),x0,A,b,Aeq,beq,lb,ub,nonlcon,options))%不好意思,这里写错了
再问: 那如果约束条件m文件里面也有类似的常数,应该怎么办呢?
再答: 做类似的处理,你自己肯定能搞定的,方法就是那样
代码
end
用的时候这么用,假设a,b,c分别为2,3,4
x = fmincon(@fun(x,2,3,4),x0,A,b,Aeq,beq,lb,ub,nonlcon,options))
再问: 我按照方法实验了,原来调试好的一个小程序,随意加个参数,改成@fun(x,0),就显示Error: Unbalanced or unexpected parenthesis or bracket.
再答: x = fmincon(@(x)fun(x,2,3,4),x0,A,b,Aeq,beq,lb,ub,nonlcon,options))%不好意思,这里写错了
再问: 那如果约束条件m文件里面也有类似的常数,应该怎么办呢?
再答: 做类似的处理,你自己肯定能搞定的,方法就是那样