Why multi objctive GA doesn't give identical answers?

1 visualización (últimos 30 días)
Faezeh Manesh
Faezeh Manesh el 16 de Oct. de 2020
Editada: John D'Errico el 16 de Oct. de 2020
I am trying to use gamultiobj for a problem, but every time that I run my code, I get a different answer out of gamultiobj. WHy this happens and how I can fix this problem?

Respuesta aceptada

John D'Errico
John D'Errico el 16 de Oct. de 2020
Editada: John D'Errico el 16 de Oct. de 2020
First, many optimization problems have multiple solutions. Nonlinear problems often do.
Second, there is no assurance that any optimizer, including ga or tools like it, will generate the globally optimal solution. Those tools try to increase the probability that an optimal solution is found.
Third, since those tools use random searches, they will often find different solutions. Call it twice, and since the random seed will be different, you can get a different result. Again the goal is you get a globally optimal solution, but that cannot be gauranteed.
Finally, even if two methods find the same "solution" they may find slightly different solutions, to within any tolerances.
You probably need to spend some time in learning about optimization, and the optimizers you are using.
How can you "fix" it? Again, learn about optimization. You may be able to better constrain the problem, since if you know something about the process, then providing intelligently chosen constraints can hugely improve the result.
Next, since the optimizers use randomness to try to improve things, then running the tools for a longer time can help. And using multi-start methods can help.

Más respuestas (0)

Categorías

Más información sobre Direct Search en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by