Decreasing the number of variables in optimization process (SQP - fmincon)

2 views (last 30 days)
Dear community,
I was wondering if there is anyway to decrease the number of variables during an optimization process going on using MATLAB built-in function (fmincon - SQP)?!
For example assume you have specified 10 variables to start the optimization problem and you want to decrease it to 9 variable (i.e. emit one of the variables based on a cetrain condition) after 20 iterations.
Best regarsd,
Sajjad

Accepted Answer

Matt J
Matt J on 1 Jan 2021
Edited: Matt J on 1 Jan 2021
You can use the MaxIterations option to tell the solver to run no more than 20 iterations. Then, you can reformulate the optimization however you wish based on that result and launch a second optimization.
  2 Comments
Sajjad Asefi
Sajjad Asefi on 1 Jan 2021
Thanks for the answer, but I don't want to restart the optimization process
I'm just asking about the possibility of changing variable number during the process
Matt J
Matt J on 2 Jan 2021
Edited: Matt J on 2 Jan 2021
No, you can't. It isn't even clear how that could still be called an optimization process. If the space of unknowns that the function depends on is changing in the course of the iterations, it means that the definition of the function and the location of its minimum are changing, too - the thing you're searching for isn't well-defined in advance.

Sign in to comment.

More Answers (0)

Categories

Find more on Get Started with Optimization Toolbox in Help Center and File Exchange

Products


Release

R2018b

Community Treasure Hunt

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

Start Hunting!