Error while using lsqnonlin

28 次查看(过去 30 天)
Khalid
Khalid 2015-10-11
I am using the Matlab function lsqnonlin for estimating a vector of several values. Before calling lsqnonlin, I am making a rough estimation of the 4 parameters, and afterwards the lsqnonlin is being initialized using these four parameters. The following error stops the execution:
Error using snls (line 48)
Objective function is returning undefined values at initial point. lsqnonlin cannot continue.
Error in lsqncommon (line 150)
[xC,FVAL,LAMBDA,JACOB,EXITFLAG,OUTPUT,msgData]=...
Error in lsqnonlin (line 237)
[xCurrent,Resnorm,FVAL,EXITFLAG,OUTPUT,LAMBDA,JACOB] = ...
Error in Untitled_2015 (line 53)
[x,resnorm,residual,exitflag,output,lambda,J]=lsqnonlin('myfunscwarz',thetan);
Looking forward for your suggestions !!

回答(1 个)

Matt J
Matt J 2015-10-11
编辑:Matt J 2015-10-11
I suggest you check the value of your objective function ('myfunscwarz') at the initial point and see if the error message is accurate.
  1 个评论
John D'Errico
John D'Errico 2015-10-11
编辑:John D'Errico 2015-10-11
You say the initial values are "rough". But does your objective function even return a valid result at that point? This is a check you should make on any optimization, BEFORE you start it out.
Think of an optimizer as a poor soul that you place somewhere on the surface of the earth, then tasked with finding the deepest valley by walking downhill. If you place him in the middle of an active volcano, he may die before he ever starts searching. This is generally a bad idea. (At least give him scuba gear though, since it may get wet in that deep valley.)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Direct Search 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by