Minimizing a multivariable function
3 次查看(过去 30 天)
显示 更早的评论
function b=three_var(v)
x=v(1);
y=v(2);
z=v(3);
b=(x-10)^2+(y-4)^2+(z-0.9)^2+3*(1-x*y*z)^2
v=[5,5,5];
a=fminsearch(@three_var,v)
I would like to find minumum multivariable function in matlab
f(x,y,z)=(x-10)^2+(y-4)^2+(z-0.9)^2+3*(1-x*y*z)^2 (x0,y0,z0)=(5,5,5)
ı tried above solution but it has error can anybody help me please
0 个评论
回答(1 个)
Star Strider
2018-3-17
Your code works for me as you posted it. (I added an end as the last line of the function, because I have a test function I use to test functions, and that requires the end call.)
With that one change, I got these results:
a =
9.997810194891304
3.994471169491158
0.025222197590888
2 个评论
Star Strider
2018-3-17
I have no idea what you are doing.
Save your function in its own file in your MATLAB search path as three_var.m. Then run these lines from your script:
v=[5,5,5];
a=fminsearch(@three_var,v)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!