Which optimization tool to use? And how to get the accurate result?
Show older comments
function Z=igx(x,y)
igx1=((x*y^3)/12)+(x*y)*((((x*y)*(150-(y/2))+113664+6000)/((x*y)+1536+1200))-(150-(y/2)))^2;
igx2=2097152+1536*((((x*y)*(150-(y/2))+113664+6000)/((x*y)+1536+1200))-74)^2;
igx3=10000+1200*((((x*y)*(150-(y/2))+113664+6000)/((x*y)+1536+1200))-5)^2;
z=igx1+igx2+igx3;
Z=-z;
end
Above is the function handle. There are 2 variables which are (x,y). 'x' bounds are 13 to 120 and 'y' bounds are 1 to 12. I want to maximize "igx". Which global optimisation to use and how to use the bounds.
6 Comments
Kevin Chng
on 5 Dec 2018
In your command window type :
optimtool
then in the Objective Function
put @igx
then in the Bounds there
[13 1] to [120 12]
then give some starts point. here you go.
Kiran HR
on 5 Dec 2018
Torsten
on 5 Dec 2018
Objective function:
@(x)igx(x(1),x(2))
Kevin Chng
on 5 Dec 2018
or try change your function to
function Z=igx(x)
%within it, all x change to x(1), all y change to x(2)
end
Kiran HR
on 5 Dec 2018
Kevin Chng
on 5 Dec 2018
I started optimization with this video : https://www.mathworks.com/videos/tips-and-tricks-getting-started-using-optimization-with-matlab-81594.html?elqsid=1544016061314&potential_use=Commercial
Accepted Answer
More Answers (0)
Categories
Find more on Surrogate Optimization in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!