hook for an optimization problem.

4 views (last 30 days)
Alexander
Alexander on 23 Jul 2019
Commented: Alexander on 10 Aug 2019
Is there a possibility to pass optimization information into the optimzation subject?
I try to explain my question on a basic example: Take
How can I print e.g. the current iteration or the current MeshSize from within the optimizing function?
Sure, printing is not my really issue, there is OutputFcn for this. What I would like to achieve is to alter weights inside the optimizationg function based the current state of the optimization process.

Accepted Answer

John D'Errico
John D'Errico on 10 Aug 2019
That is a bad idea.
You want to adjust your objective function in an optimization, based on iteration count, or some other information? Essentially, this creates an objective function that is not a continuous function. Worse, it is not even repeatable, so called a second time at the same location, you won't even return the same value? A really bad idea. And it invalidates the assumptions in essentially any optimization tool.
  1 Comment
Alexander
Alexander on 10 Aug 2019
I see.
Anyway, what I tried as a test a day after I posted was:
I introduced a global variable in a MATLAB source, incremented this along the iteration count, and checked this global var inside my optimization function.
This did not lead to any good behavior. I assume, for the reasons you mentioned. So, I got away from my idea by trying it out.
Thanks, anyway.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!