On Mon, May 17, 2010 at 08:43:20AM +0100, Gary wrote:
> I haven't rerun the script as it takes some time to complete, but I
> have attached the raw data from which I generated the spreadsheet.

The last parameter is computed to be 0, which violates the lower bound
of 1e-30. Constraints (and bounds) are accounted for by leasqr with a
"projection algorithm" --- if a constraint is active and remains
active over the next step, the next parameters are computed to be at
the "border" of the constraint (e.g. exactly at the bound). This
computation was remarkably accurate in my own tests, but I think one
has to live with some inaccuracy. I'd guess that such inaccuracy is
the reason for the above violation.

The lower bound should be just increased to a "reasonable" value where
small violations can be tolerated. I'm not sure at the moment how
parameter scale affects this problem, but would guess that one should
either increase the lower bound according to the scale of the
respective parameter, or scale the parameters (by applying a factor to
them in the model function) so that their order of magnitude gets
similar.

Further notes:

The initial parameters 14, 15, and 16 are outside the lower bound;
leasqr will initially set them to the lower bound with a warning (and
then start optimization).

You have set niter = 2, which makes it pretty hopeless to achieve
convergence. Accordingly, kvg == 0 had been returned, which means that
no convergance had been achieved.

Totally unrelated hint: It makes life easier if the response to a mail
is typed _below_ the text you respond to (avoid "top posting"). Don't
take me wrong for criticizing that :-) , it's better to keep to this
practice.

Olaf

------------------------------------------------------------------------------

_______________________________________________
Octave-dev mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/octave-dev

Reply via email to