Azzera filtri
Azzera filtri

setting-up input variable in genetic algorithm

8 visualizzazioni (ultimi 30 giorni)
How can I set up an input variable in my ga that varies from 1 to 2 with steps of 0,1?
The results of my ga has too many significant digits after comma ( precisely 4).
Thank you
  1 Commento
Walter Roberson
Walter Roberson il 17 Feb 2021
If you are seeing exactly 4 significant digits, chances are that you have
format short
in effect, and that you would see more digits if you used
format long g

Accedi per commentare.

Risposta accettata

Alan Weiss
Alan Weiss il 17 Feb 2021
You need to use Mixed Integer ga Optimization in one of several ways.
  • Internally to your objective function, change your integer variable x to x/10. Or,
  • Make a list of allowable values in a variable indexvar. Have your objective function evaluate indexvar(x), where x is your integer-valued variable. This is more flexible, in that you can have any list of allowable values.
See Solving a Mixed Integer Engineering Design Problem Using the Genetic Algorithm and in particular the section Add Discrete Non-Integer Variable Constraints.
Alan Weiss
MATLAB mathematical toolbox documentation

Più risposte (1)

Shiva Kalyan Diwakaruni
Shiva Kalyan Diwakaruni il 10 Feb 2021
Hi,
You can try using optimoptions for genetic algorithm where you can many options for passing extra parameters either in form of variables or a user defined function.
please refer the below link for more information on optimoptions for ga function
below is the link to see how we can pass extra paramters for customization of ga function
hope it helps,
thanks
  1 Commento
Ful0
Ful0 il 17 Feb 2021
Hi,
thank you so much for your answer.
I'm yet not able to find a way to set up the option I need for my problem.
How can I set up a step of 0,1 in the output? through PopulationType:custom?
Thank you

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by