Info

La pregunta está cerrada. Vuélvala a abrir para editarla o responderla.

Problem with nonlinear optimization of a process model

1 visualización (últimos 30 días)
Sascha
Sascha el 24 de Oct. de 2012
Cerrada: MATLAB Answer Bot el 20 de Ag. de 2021
Hello everybody,
I have a process model with several input parameters and one output to be optimizes. As a first step I tried to fix the input parameters except two of them. Then I plottet the output in dependence of the two inputs left. It is obvious that this funtion is convex, so it should be a good optimization problem for solvers such as fmincon (there are parameter combinations leading to NaNs, but only at the edges of the function!). So far, so good. Now I tried to optimize but the input parameters hardly move from the starting values. The solver stops because the raelative changes in x are smaller than TolX (1e-12). How can that happen and what can I do about it?
Thank you very much for your help!!!
Sascha

Respuestas (2)

Alan Weiss
Alan Weiss el 24 de Oct. de 2012
It is possible that your objective function does not change when the parameters change by a small amount. This can cause premature convergence. See the suggestions in Optimizing a Simulation or ODE.
You could also try the suggestions in Final Point Equals Initial Point.
Alan Weiss
MATLAB mathematical toolbox documentation
  1 comentario
Sascha
Sascha el 24 de Oct. de 2012
Editada: Sascha el 24 de Oct. de 2012
Hey,
thank you for that answer. For the two-parameter-setup that realy worked (changing the finite differnces size). But still as soon as I give more free parameters to the solver, the first-order-optimality does not come under 1e0. As I am no mathematician I do not completely get, what that means to my optimization problem (I know that is the total derivation of the lagrange function, but that´s about it). As long, as I leave the nukmber of input parameters at two, the first-order-optimality decreases down to values like 1e-6.
Sascha
Edit: Also the solver sometimes end in regions where the constraints are (quite strongly) violated

Alan Weiss
Alan Weiss el 25 de Oct. de 2012
Without more details, I don't know what to say. Perhaps you could use the fmincon interior-point algorithm, if you aren't already doing so. Or try the sqp algorithm.
Also, for this type of problem, the first order optimality measure might not ever get close to zero, because the objective function might not be smooth.
Ending up in an infeasible region is annoying, but unavoidable for some problems. Try starting the solver from various points.
Good luck,
Alan Weiss
MATLAB mathematical toolbox documentation

La pregunta está cerrada.

Community Treasure Hunt

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

Start Hunting!

Translated by