How to get all the history of local solvers when using multi starting point search (MultiStart)
    3 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    SEO BOIL
 el 13 de Ag. de 2021
  
    
    
    
    
    Respondida: Walter Roberson
      
      
 el 13 de Ag. de 2021
            Hi, guys.
I want to save all the history of local solver on MultiStart.
I use the code for 'OutputFcn' based on the matlab documentation like
function stop = outfun(in,optimValues,state)
     persistent history fhistory
     stop = false;
     switch state
         case 'init'
             history = [];
             fhistory = [];
         case 'iter'
         % Concatenate current point and objective function
         % value with history. in must be a row vector.
           fhistory = [fhistory; optimValues.fval];
           history = [history; in(:)']; % Ensure in is a row vector
         case 'done'
             assignin('base','optimhistory',history);
             assignin('base','functionhistory',fhistory);
         otherwise
     end
end
My optimization problem setting is
options = optimoptions('fmincon', 'TolFun', 1e-8, 'TolX', 1e-8, 'Display', 'iter', 'OutputFcn', @outfun);
problem = createOptimProblem('fmincon',... 
    'x0', x0, 'objective', @objf_energy_density, 'lb', Lb, 'ub', Ub,... 
    'Aeq', Aeq, 'beq', beq, 'nonlcon', @conf, 'options', options);
ms = MultiStart;
[x, F, Exitflag, Output, allmins] = run(ms, problem, 20)
When I run the optimization, I can only get the history of 'the last local solver' on MultiStart, not all the history of local solvers.
Is there any way to get all the history of local solvers when using MultiStart?
Thank you for reading my question.
0 comentarios
Respuesta aceptada
  Walter Roberson
      
      
 el 13 de Ag. de 2021
                     history = [];
             fhistory = [];
Do not do those. 
If you want to reset the entire history for another run, then 
clear outfun
0 comentarios
Más respuestas (0)
Ver también
Categorías
				Más información sobre Global or Multiple Starting Point Search 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!