How to optimize a function below a given value?

2 次查看(过去 30 天)
I have a function, which gives an output based on some input. The function is super non linear, it calls a simulink model, integrates an maximizes along vectors, all kinds of things, but it returns a singular output, which I call the error.
I want to find an input, where the error is small, however I don't need to find the total minimum, I am happy if the error is smaller than, let's say 5.
The function fminsearch seemed promising to achieve this, and it works great, but it never really finishes. It keeps improving and improving. I can abort the optimization and use the parameters it has found so far, but I need to abort automatically. I have not found an option, which allows me to set value, that is sufficiently low. Is there a way to use fminsearch? Is there a better way?

回答(1 个)

Torsten
Torsten 2022-10-27
编辑:Torsten 2022-10-27
Use OutputFcn to stop the optimizer manually:

类别

Help CenterFile Exchange 中查找有关 Get Started with Optimization Toolbox 的更多信息

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by