matlab求助,急.一个规划的题目 max R=m(y-b)+k*b-0.25(a+b)其中 0〈y〈= X,X为常数,比如取30;m为常数,比如取16.8;k也为常数.比如取2;而且 b〈=y.如果解不出来,可以令a为常数,比如120,给我个程序.
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/05 05:22:23
![matlab求助,急.一个规划的题目 max R=m(y-b)+k*b-0.25(a+b)其中 0〈y〈= X,X为常数,比如取30;m为常数,比如取16.8;k也为常数.比如取2;而且 b〈=y.如果解不出来,可以令a为常数,比如120,给我个程序.](/uploads/image/z/13945812-60-2.jpg?t=matlab%E6%B1%82%E5%8A%A9%2C%E6%80%A5.%E4%B8%80%E4%B8%AA%E8%A7%84%E5%88%92%E7%9A%84%E9%A2%98%E7%9B%AE+max+R%3Dm%EF%BC%88y-b%EF%BC%89%2Bk%2Ab-0.25%EF%BC%88a%2Bb%EF%BC%89%E5%85%B6%E4%B8%AD+0%E3%80%88y%E3%80%88%3D+X%2CX%E4%B8%BA%E5%B8%B8%E6%95%B0%2C%E6%AF%94%E5%A6%82%E5%8F%9630%EF%BC%9Bm%E4%B8%BA%E5%B8%B8%E6%95%B0%2C%E6%AF%94%E5%A6%82%E5%8F%9616.8%EF%BC%9Bk%E4%B9%9F%E4%B8%BA%E5%B8%B8%E6%95%B0.%E6%AF%94%E5%A6%82%E5%8F%962%EF%BC%9B%E8%80%8C%E4%B8%94+b%E3%80%88%3Dy.%E5%A6%82%E6%9E%9C%E8%A7%A3%E4%B8%8D%E5%87%BA%E6%9D%A5%2C%E5%8F%AF%E4%BB%A5%E4%BB%A4a%E4%B8%BA%E5%B8%B8%E6%95%B0%2C%E6%AF%94%E5%A6%82120%2C%E7%BB%99%E6%88%91%E4%B8%AA%E7%A8%8B%E5%BA%8F.)
matlab求助,急.一个规划的题目 max R=m(y-b)+k*b-0.25(a+b)其中 0〈y〈= X,X为常数,比如取30;m为常数,比如取16.8;k也为常数.比如取2;而且 b〈=y.如果解不出来,可以令a为常数,比如120,给我个程序.
matlab求助,急.一个规划的题目 max R=m(y-b)+k*b-0.25(a+b)
其中 0〈y〈= X,X为常数,比如取30;
m为常数,比如取16.8;
k也为常数.比如取2;
而且 b〈=y.
如果解不出来,可以令a为常数,比如120,给我个程序.
我想做个循环,X分别取10:50,结果怎么样?
谢谢大哥大姐.
matlab求助,急.一个规划的题目 max R=m(y-b)+k*b-0.25(a+b)其中 0〈y〈= X,X为常数,比如取30;m为常数,比如取16.8;k也为常数.比如取2;而且 b〈=y.如果解不出来,可以令a为常数,比如120,给我个程序.
%你的这些条件没法求出最大值得,b可以取负值,得出是无穷大
%我跟你说下程序,附加条件b>0,自变量y和b,其他为常数
clear
clc
%常数设置
m=16.8;
kc=2;%与循环冲突用kc表示k
a=120;
%精度设置(精度值不要设置太小,容易溢出)
jdy=1;%y的精度
jdb=0.1;%b的精度
%x范围
x=10:50;
%设一个三维矩阵R来储存数据R(y值/jdy ,b值/jdb,x值)
%比如R(1,2,3)表示y值为jdy*1,b值为jdb*2,x值为x(3)=12
row=x(end)/jdy;
column=x(end)/jdb;
xlei=length(x);
R=zeros(row,column,xlei);
for i=1:xlei
for j=1:x(i)/jdy
for k=1:x(i)/jdb
if (k*jdb)0
end
end
end
end
%最大值
max(R(:))
% 最大值坐标
[maxpoy,maxpob,maxpox] = ind2sub(size(R),indmax);
%求的x、y和b值
y_iter=maxpox*jdy
b_iter=maxpob*jdb
x_iter=x(maxpox)
%根据上面的值再缩小x、y、b的范围继续增加精度寻找
%我只能想到这种方法
%matlab里应该还有更方便的方法,求高手指教