Clear Filters
Clear Filters

Choice of algorithm for mixed-integer-continuous variables optimization problem

2 views (last 30 days)
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??

Answers (1)

Torsten
Torsten on 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 Comments
Walter Roberson
Walter Roberson on 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
Torsten on 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.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!