How to run evolutionary or other optimization with discrete set of inputs

3 views (last 30 days)
Hi,
I have an optimization problem that involves many inputs and a large data set. I have considered using evolutionary optimization, however the calculation time will likely be way too long. From what I know so far, evolutionary optimization is quite efficient for a nonlinear problem like mine, but runs for continuous inputs.
My question is: is there a way to run an optimization, perhaps evolutionary, where only a set of certain inputs is considered by the algorithm? I don't need to get perfect values for my purposes, and would be happy to give say 5 different potential values for 7-8 different inputs instead of having the algorithm considering all inputs in a continuous range. This would reduce dramatically the computation time (I hope), as the algorithm would not have to try as many scenarios to get to the optimal one given the constraints.
Does anybody know how to set up an optimization problem like this? Perhaps it is just a matter of setting constraints somehow in an evolutionary optimization? Thanks in advance.
Best, Mike

Accepted Answer

Michael
Michael on 4 Aug 2014
Alan,
Thanks so much. That looks perfect!
Best, Mike

More Answers (1)

Alan Weiss
Alan Weiss on 4 Aug 2014
You can use the genetic algorithm with mixed integer optimization for discrete choices. This example shows how to use mixed integer optimization to choose from a finite set of choices in certain dimensions.
Good luck,
Alan Weiss
MATLAB mathematical toolbox documentation

Community Treasure Hunt

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

Start Hunting!