# How to use simulated annealing to optimize a simulation based, multicriteria Problem?

2 views (last 30 days)
Robin on 3 Sep 2021
Commented: Robin on 6 Sep 2021
Hello all, I try to optimize some parameters of a Simulink Model which works fine. The outcome of this model are 3 values (energy used, elapsed time and the cost resulting) so this is a multicriteria problem. So far, for this use case, I have used the weighted sums method (all these criteria summed up) in conjunction with a patternsearch algorithm. There are 2 main questions resulting:
1. how can I optimize multicriteria using the simulated annealing algorithm? When I form a struct from the three output functions, simulannealbnd reports errors.
2. is there a possibility to tell the algorithm via constraints that not all values are allowed but that there is a certain step size (say lb=10 - ub=100 in steps of 10)?

Alan Weiss on 6 Sep 2021
Your question confuses me because you talk about having a multiobjective problem but then seem to want to use simulannealbnd to solve it. If you want to solve a multiobjective problem, use gamultiobj or paretosearch. See Multiobjective Optimization.
Alan Weiss
MATLAB mathematical toolbox documentation
Robin on 6 Sep 2021
Your advice describes the method I currently use for simulated annealing. Then I will look at GA to determine if the multi-objective view is beneficial in my use case.
On the other point: I am currently optimizing (simulation based) the complete double range. After that i round the result to the points i want them to be (e.g. multiples of 10) and simulate again with those rounded numbers. Is this one of the ways youre reffering to?

### Categories

Find more on Simulated Annealing in Help Center and File Exchange

R2020a

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!