optimization cannot continue due to the evaluation function fail tocalculate the objectionfunction value,because fsolve can't converge using the variables given by multistat

I run a optimization process using the solver like multistart, globalsearch or simply using fmincon. The problem is that the evaluation function cannot calculate the value of the objection function using the optimization variables given by the multistart solver sometimes. Then the multistart solver cannot keep solving the problem until the fsolve in the evaluation function exceeds its Maxiteration. It will be a long time to wait. So I have to stop the whole optimization process everytime I face this problem. Besides, since the start points of the multistart are randomly choosen in the domain, I may lose the best optimization variables output by the multistart as I have to stop the optimization facing the problem mentioned above. Can anyone teach me how to fix the problem?

3 Comments

I haven't had the chance to experiment with creating a MultiStart object. Could you please provide the optimization code here so that we can analyze it?
Can anyone teach me how to fix the problem?
I'd try to find the reason why the objective cannot be evaluated and avoid such parameter constellations.
Thank you for your kind answer. The objective function is a function that evluates a mean error of a physical quantity like stress, energy, or external force of a flexible beam. And the profile of the beam is parameterized by the variables given by the optimize solver. So the objective cannot be evaluated when the beam with such profile cannot be modeled to obtian its physical quantities at certain conditions. And there are mountains of the variables that could induce the beam to face this problem. I can avoid a part of the variables through adding a additional nonlinear constraint in the optimize solver but I cannot avoid all of the variables which could induce the problem.

Sign in to comment.

Answers (0)

Asked:

on 1 Mar 2024

Edited:

on 4 Mar 2024

Community Treasure Hunt

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

Start Hunting!