How do I implement simulannealbnd function in simulink?
Mostrar comentarios más antiguos
Hello,
I am trying to implement simulated annealing optimisation into my simulink model through the Matlab function block. Unfortunatey when I run the simulation I get the error 'Function 'simulannealbnd' not supported for code generation.'. I understand this is a limitation of the function and it cannot be directly implemented in simulink, however I was wondering if there were any workarounds or equivalent simulink functions that I can use. Here is a snippet of the code I am using:
function [c_batt, c_sc] = sa_optimisation(P_dem, Pmax_batt, Pmax_sc)
%Prerequisites
lb = [-1,-1];
ub = [1,1];
x0 = lb;
rng default
%Execute cost function
cost_function = @(x,y)powerCostFunction(P_dem, x, y, Pmax_batt, Pmax_sc);
loss = @(p)cost_function(p(1),p(2));
x = simulannealbnd(loss,x0,lb,ub);
c_batt = x(1);
c_sc = x(2);
end
Respuesta aceptada
Más respuestas (0)
Categorías
Más información sobre Manual Performance Optimization en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!