how to use fmincon to optimize different parameter set for multiple dependant objective functions?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi I have one large dataset which consist of two categories of data say clockwise and anticlockwise rotation. Each category needs to be evaluated over different data arrays and an optimum value of the parameters needs to be found for both categories separately. But the problem is that these functions are dependant i.e one can be evaluated only after another is done. Example
Dataset is a structure with data fields as clockwise1(1x100),anticlockwise1(1x200),clockwise2(1x100),anticlockwise2(1x200) etc.
Inside objective function for clockwise
for i=1:1:length(tm)
z= z0*exp(-(tm(i)-tm(i-1))/(param(3)*param(2))) ;
v(i) = v1 - (q(i)*param(1)) - z ;
z0 = z;
end
Inside objective function for anticlockwise
for i=1:1:length(tm)
z = z0*exp(-(tm(i)-tm(i-1))/(param(6)*param(5))) ;
v(i) = v1 + (q(i)*param(4)) + z ;
z0 = z;
end
As you can see, objective functions have one shared variable z. I need to find separate optimum values for parameters 1 to 6. If I find the cumulative least square error for the whole dataset and try to minimize that error, the parameter 1 and 4 as well as parameter 2 and 5 and parameter 3 and 6 are almost the same which is not correct. How can I avoid this?
1 Kommentar
Alexandra Harkai
am 20 Okt. 2016
Seems like you have more than one objective functions, is that correct? fmincon is aimed at optimizing for a single objective, see the table here: https://uk.mathworks.com/help/optim/ug/problems-handled-by-optimization-toolbox-functions.html
Antworten (0)
Siehe auch
Kategorien
Mehr zu Get Started with Optimization Toolbox finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!