matlab参数规划问题,

问题描述:

matlab参数规划问题,
用matlab分析下列参数规划中当t变化时最优解的变化情况
Max z(t)=(3-6t) x1+(2-2t) x2+(5-5t) x3 (t>=0)
x1+2x2+x3
1个回答 分类:综合 2014-10-21

问题解答:

我来补答
1、你现在的写法C=[3-6t,2-2t,5-5t,0,0,0];t和数字之间缺少乘号(例如,6t应为6*t),而后面的那三个0又是什么意思?一共不就是三个优化变量吗? 2、参考代码:T = 0:0.1:3;
F = T*NaN;
X = zeros(3,length(T));
A = [1 2 1; 3 0 2; 1 4 0];
b = [430;460;420];
for n = 1 : length(T)
    t = T(n);
    C = [3-6*t,2-2*t,5-5*t];
    [x,f] = linprog(-C,A,b,[],[],[0 0 0]);
    F(n) = -f;
    X(:,n) = x;
end
plot(T,F); xlabel t; ylabel z
figure
plot(T,X); xlabel t; ylabel x_i  3、对结果的解释:t>1时,目标函数的所有系数为负,要使目标函数最大,只能是x取0.所以,t的范围没必要取那么大,取3或者2都绰绰有余了.
再问: 可以改一改,在解线性规划问题时不用系统自带的函数,而是用自己编的函数吗?这个单纯形法函数我已经编出来了:
function [solution,solu_X]=simplex(A,B,C,Cb,X)
A为要求的标准化方程的举证
B为初始时的基解向量
C为待解的系数向量
Cb为初始基解的系数向量
X为基向量
solution为最终算出的max z
solu_X为最终的基解

多谢!
再答: 你自己编的函数自己去调用,还需要我帮你改吗?
我没有你的函数,也不知道你编的对不对,没法帮你改。
而且你对函数参数的说明我也没太看明白,我印象中,没必要搞得这么复杂吧?
 
 
展开全文阅读
剩余:2000