Hi Olexiy,

In my field we often encounter a similar problem when estimating
attitude since a quaternion is only a valid rotation when it is
normalized. We often escape this issue by estimating a "small"
adjustment to an apriori guess. (For the details see [1].)  For this
technique to work the cost function must be smooth and the apriori guess
must be "close enough" to the true value. Both of these assumptions are
also required to apply a non-linear least squares optimizer. Perhaps you
can apply a similar technique to your problem. (It seems that your 'A'
parameter is orientation in 3D space.)

If there is a need for an extra steps, I would prefer to make those
explicit rather than depending on side effects of cost function evaluation.

Best Regards,
Evan

[1] Crassidis, John L., and John L. Junkins. /Optimal Estimation of
Dynamic Systems/. Boca Raton, FL: CRC, 2012.

On 09/04/2014 05:37 AM, Olexiy Movchan wrote:
> Hello,
>
> I created the math issue https://issues.apache.org/jira/browse/MATH-1144.
>
> In version 2.0, LevenbergMarquardtOptimizer passed point to evaluator by 
> reference. So our software could modify it on every step of algorithm.
> In version 3.3, point is copied and then passed to evaluator, so it can't be 
> updated by evaluator.
>
> We use LevenbergMarquardtOptimizer for 3d surface fitting (cylinders, cones, 
> tori) by sampled points. And surface parameters should be renormalized on 
> every step of algorithm. Please see this article:
>                 http://nvlpubs.nist.gov/nistpubs/jres/103/6/j36sha.pdf
>
> Also please read the description of MATH-1144 jira issue.
>
> Can you modify optimizer or evaluator interface to allow in/out parameters 
> there?
>
> Thanks,
> Olexiy Movchan
>
>

Reply via email to