function y=myhs(x)
y=0;
x=x(1);
y=x(2);
z=x(3);
d=[1.1101e+03;1.0035e+03;941.2414;971.2918;1.1419e+03]
for i=1:5
y=y-log(x(1)/x(2)*((d(i)-x(3))/x(2))^(x(1)-1)*exp(-(d(i)-x(3))/x(2))^(x(1)))
end
错了:
d不需要在函数里面:
function Y=myhs(b,XX)
y=0;
alpha=b(1);
beta=b(2);
lambda=b(3);
d=XX;%下面的函数形式也错了,自己把原公式求对数,化成简单形式,然后再求和。(我没改)。
for i=1:5
y=y-log(x(1)/x(2)*((d(i)-x(3))/x(2))^(x(1)-1)*exp(-(d(i)-x(3))/x(2))^(x(1)))
end
Y=-y;%看你用的那个minPowell(?)函数,如果是最小化,就不要了;如果是最大化就留着。(这一句或者错了)


雷达卡
京公网安备 11010802022788号







