MATLAB Answers

Kenta Yoshida

Nonlinear fit with constraints in R2012b

Asked by Kenta Yoshida
on 12 Jan 2013
Accepted Answer by Matt J


Is it possible to get parameter estimation variances after constrained optimization?

I am now using lsqnonlin function to optimize 7 parameters with 14 target values, using 'trust-region-reflective' algorithm.

I referred to the following threads, but they seems like mentioning on unconstrained optimizations.

Thanks in advance


Matt J
on 12 Jan 2013

The threads you've referenced refer to parameter estimation variances, not parameter estimation errors. To calculate errors, you need to know their true values. I'll assume you really mean the former.

Kenta Yoshida
on 12 Jan 2013

Thanks Matt, I corrected my question. As you guessed, what I wanted to refer to was parameter estimation variances.


No products are associated with this question.

1 Answer

Answer by Matt J
on 12 Jan 2013
 Accepted answer

If none of the constraints are active at your solution, you can estimate the variances in the unconstrained way.

Otherwise, since it's a pretty small problem, why not just estimate the parameter variance by running Monte Carlo simulations?


Kenta Yoshida
on 13 Jan 2013

I meant that the residuals are in R^14, and the parameters are continuous values.

Matt J
on 13 Jan 2013

Anyway, what I was picturing for the simulations was that you assume the parameter estimates given by lsqnonlin are the true values. Then simulate the system measurements with as realistic measurement noise as you can. Then rerun lsqnonlin on these measurements. Do that repeatedly until you have enough data to approximate the variance well.

Kenta Yoshida
on 14 Jan 2013

Thanks a lot again. I will perform that kind of calculation based on the optimized parameter values.

Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi test

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!