matlab参数规划问题,急!!!!!
答案:2 悬赏:10 手机版
解决时间 2021-11-16 11:03
- 提问者网友:浪荡绅士
- 2021-11-15 12:11
matlab参数规划问题,急!!!!!
最佳答案
- 五星知识达人网友:逃夭
- 2021-11-15 12:52
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为最终的基解
多谢!追答你自己编的函数自己去调用,还需要我帮你改吗?
我没有你的函数,也不知道你编的对不对,没法帮你改。
而且你对函数参数的说明我也没太看明白,我印象中,没必要搞得这么复杂吧?
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为最终的基解
多谢!追答你自己编的函数自己去调用,还需要我帮你改吗?
我没有你的函数,也不知道你编的对不对,没法帮你改。
而且你对函数参数的说明我也没太看明白,我印象中,没必要搞得这么复杂吧?
全部回答
- 1楼网友:污到你湿
- 2021-11-15 13:36
我也需要啊啊啊QwQ求
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯