Fmincon unexpected behavior at end of optimization

1 visualizzazione (ultimi 30 giorni)
Jorrit
Jorrit il 17 Lug 2011
Risposto: Matt J il 12 Ott 2017
[Question is modified, new problem]
Below the summary of the optimization:
First-order Norm of
Iter F-count f(x) Feasibility optimality step
0 31 1.000000e+000 2.861e-002 2.953e-001
1 64 1.014641e+000 2.436e-002 2.828e-001 2.128e-001
2 102 9.694119e-001 2.687e-002 2.337e-001 3.434e-001
3 134 8.288362e-001 6.156e-002 2.035e+000 1.497e+000
4 166 7.100228e-001 1.584e-002 4.751e+000 1.069e+000
No feasible solution found.
fmincon stopped because the size of the current step is less than
the selected value of the step size tolerance but constraints were not
satisfied to within the default value of the constraint tolerance.
<stopping criteria details>
When I load the data created at the fourth iteration, it seems like all constraints have been met. They are all negative. Then there is another strange thing: After the fourth iteration, the objective function is called onces more, with ridiculous values. It creates an objective value which is very large and the constraints are violated heavily. What is causing this last function call? This last function call is probably also causing the 'no feasible solution found' message, right?
I'm using fmincon, with an interior-point algorithm, with the following options:
optimset('Display','iter','MaxIter',1000,'OutputFcn',outputfunction,'AlwaysHonorConstraints','bounds','Algorithm','interior-point','DiffMinChange',0.05,'DiffMaxChange',10.0,'PlotFcns',@optimplotfval,'TolX',1e-20);
  3 Commenti
Jorrit
Jorrit il 18 Lug 2011
That is going to be difficult. It is a very complex function. I'm describing an aircraft with 31 parameters, for which I'm trying to maximize the range. Constraints are things like runway length, stall speed, stability derivatives. A single function evaluation takes 30 seconds, because there is an aerodynamic solver included as well. I have approximately 100 m-files, which are called by the optimizer.
I hope you can give me give tips, without having the actual function. Maybe the description helps a bit.
Andrew Newell
Andrew Newell il 18 Lug 2011
Oh, hello again. I had forgotten that I had already tried to help you with the aircraft problem.

Accedi per commentare.

Risposte (1)

Matt J
Matt J il 12 Ott 2017
I suspect that non-smoothness in the objective/constraints is the culprit.

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by