-
在 MATLAB 命令窗口中键入 :edit,然后在要保存的百分号之间复制以下两行。
function f=y(x)
f(1)=;
f(2)=;
f(3)=;
f(4)=;
返回 MATLAB 命令窗口,输入以下命令,您应该会得到结果。
a=[,0,0,,0,0,,0,0;
b=[4,23,-14,16,310,310,150]';
goal=[,,';
weight=abs(goal);
lb=0;x0=[10,10,10,10,10,10,10,10,10]';
x=fgoalattain('y',x0,goal,weight,a,b,lb,对不起,我是按照你写的,应该是y,注意函数名一般不是那么简单,否则可能会和变量名重复。
另外,matlab不识别中文符号,你自己注意。
-
这样写就好了。
function hahah
a=[,0,0,,0,0,,0,0;
b=[4,23,-14,16,310,310,150]';
goal=[,,';
weight=abs(goal);
lb=0;x0=[10,10,10,10,10,10,10,10,10]';
format short g
x=fgoalattain(@y,x0,goal,weight,a,b,lb,function f=y(x)
f(1)=;
f(2)=;
f(3)=;
f(4)=;
结果:x =
-
很多条件不清楚:
1. 【每次优化需要导入不同的A和B】,什么是A和B?
2.【x有一个范围,是整数】,也就是说,还有其他的约束,为什么不给出呢?
3. 我对此持怀疑态度,这样的目标函数还是线性规划吗? 当然,由于前面提到的“x 是整数”,因此已经确定这是一个整数规划问题。
-
我不太明白你在函数中所说的 i 是什么意思......
在线性规划的情况下,对 x 没有约束。 否则,如何优化。