Choice of algorithm for mixed-integer-continuous variables optimization problem
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I need to find optimum set of variables (K, M) which minimize cost function
c(x, y) = [z(x, y) - z*(x, y)].^2
Here, z(x, y) = N x N target matrix and z*(x, y) = f(x, y; K, M) : function of K and M
Also the constraints are given as follows
- K: integer = [2, 3 .... 200]
- M: H by V matrix, 0 <=M(h, v) <= 250, all elements of M(h, v) are continuous variables (double)
In this problem, what kind of algorithm would be the best choice for this problem??
0 commentaires
Réponses (1)
Torsten
le 13 Mar 2022
I'd call fmincon 199 times for k=2,3,4,...,200 and choose the result for K which gives a minimum for the cost function.
4 commentaires
Walter Roberson
le 14 Mar 2022
Then you will need to use ga with a cost function that is the sum of the c values (so, sum of squares), and using as input a vector that your cost function then splits up between K and M. Number of inputs is numel(K)+numel(M) and the ones that represent K should be marked as integer. Use upper and lower bound to constrain K and M.
You might prefer to write this using Problem Based Optimization
Torsten
le 14 Mar 2022
Why do you call the approach "iterative" ?
You independently run the solver 199 times and choose the run with the minimum value for the objective function as optimum.
Voir également
Catégories
En savoir plus sur Solver Outputs and Iterative Display dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!