Choice of algorithm for mixed-integer-continuous variables optimization problem
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
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 Commenti
Risposte (1)
Torsten
il 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 Commenti
Walter Roberson
il 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
il 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.
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!