Optimizing minimization with fmincon function
    5 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    ektor
 el 25 de Mayo de 2019
  
    
    
    
    
    Comentada: Sulaymon Eshkabilov
      
 el 26 de Mayo de 2019
            Dear all,
I have this function which I minimize:
g=randn(1000,1);
u=randn(1000,1);
y=randn(1000,1);
options = optimoptions('fmincon','Display','off');
f = @(x) sum(   (      y-x(1)*g-u*x(2)         ).^2       );
 nonlcon = @unitdisk; 
 x = fmincon(f,[0.2 0.02],[],[],[],[],[],[],nonlcon,options);
where
function [c,ceq] = unitdisk(x)
c = - x(2) +0.01;
ceq = [];
Is there a faster way of  doing this minimization?
Thanks in advance.
0 comentarios
Respuesta aceptada
  Sulaymon Eshkabilov
      
 el 25 de Mayo de 2019
        Hi,
By setting up the solver algorithm in the option settings, the simulation time cna be shortened substantially. E.g.
g=randn(1000,1);
u=randn(1000,1);
y=randn(1000,1);
options = optimoptions('fmincon','Display','off', 'Algorithm', 'active-set');
f = @(x) sum(   (      y-x(1)*g-u*x(2)         ).^2       );
 nonlcon = @unitdisk; 
 x = fmincon(f,[0.2 0.02],[],[],[],[],[],[],nonlcon,options);
This algorithm shortens the computation time by about 50%. If you are not satisfied with this, you can investigate furthermore with the option settings for fmincon.
Good luck.
2 comentarios
  Sulaymon Eshkabilov
      
 el 26 de Mayo de 2019
				hi,
Again if you post your example, that would be good to answer specifically w.r.t your problem constraints.
Más respuestas (0)
Ver también
Categorías
				Más información sobre Surrogate Optimization en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

