[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Help-gsl] Nonlinear Solver With Bounds
From: |
Barrett C. Foat |
Subject: |
Re: [Help-gsl] Nonlinear Solver With Bounds |
Date: |
Sat, 15 Sep 2007 08:43:52 -0500 |
User-agent: |
KMail/1.9.3 |
I do not believe that such extra functions will impair the convergence
properties as long as there is a good minimum in the range of possible
values. I have had functions that would not converge unless I constrained
the values to be positive.
It will affect the covariance matrix, since the matrix is generated for the
minimized values of the auxiliary functions and not the parameters in your
real model. I would have to do a bit of scribbling equations to figure out
how they would be affected. I am not an expert on the LM algorithm (yet),
just power user.
Barrett
On Friday 14 September 2007 14:36, Eskandar Ensafi wrote:
> Dear Barrett,
>
> Thank you for the tip. I thoght about doing something
> similar, but I was worried that it would impact the
> convergence properties of the algorithm and alter the
> parameter correlation matrix. Perhaps this is not an
> issue after all -- is it?
>
> Thanks again,
>
> Eskandar
>
> --- "Barrett C. Foat" <address@hidden> wrote:
> > Hi Eskandar,
> >
> > You can impose constraints on model parameters by
> > defining auxiliary
> > functions. For example if you want a parameter b to
> > always be positive,
> > you add it to the function as c^2 and then after the
> > algorithm converges
> > on a value (positive or negative) for c, you just
> > square it to get your
> > final value of b. Likewise, you can impose any
> > arbitrary range using sin
> > or cos. For example if you want values of b only
> > between 0 and 1, you can
> > represent it by (0.5 * (cos(c) + 1)). No matter what
> > value c takes during
> > the minimization, b = (0.5 * (cos(c) + 1)) is always
> > between, 0 and 1
> > inclusive.
> >
> > Sorry, I'm not familiar with the PORT library.
> >
> > Barrett Foat
> >
> > On Thursday 13 September 2007 17:04, Eskandar Ensafi
> >
> > wrote:
> > > Hi,
> > >
> > > I would like to use the functions defined in
> > > "gsl_multifit_nlin.h" to solve nonlinear
> >
> > least-squares
> >
> > > and general nonlinear minimization problems.
> >
> > However,
> >
> > > I do not see a way to impose constraints (simple
> > > bounds) on the model parameters (independent
> > > variables). This is particularly important in
> > > problems where one or more model parameters must
> > > always be positive, or if a weight parameter must
> > > always be between 0 and 1. How can this problem
> >
> > be
> >
> > > addressed in the current version of GSL?
> > >
> > > Also, for those of you familiar with the PORT
> >
> > Library
> >
> > > <http://www.bell-labs.com/project/PORT>, how does
> > > GSL's nonlinear solver compare to the PORT
> >
> > versions in
> >
> > > terms of robustness? I am specifically referring
> >
> > to
> >
> > > the PORT routines DN2FB and DN2GB, which were
> >
> > based on
> >
> > > NL2SOL, an adaptive nonlinear least-squares
> >
> > algorithm
> >
> > > (ACM TOMS Algorithm 573).
> > >
> > > Thanks!
> > >
> > > Eskandar
>
> ________________________________________________________________________
>
> > >____________ Need a vacation? Get great deals
> > > to amazing places on Yahoo! Travel.
> > > http://travel.yahoo.com/
> > >
> > >
> > > _______________________________________________
> > > Help-gsl mailing list
> > > address@hidden
> > > http://lists.gnu.org/mailman/listinfo/help-gsl
> >
> > _______________________________________________
> > Help-gsl mailing list
> > address@hidden
> > http://lists.gnu.org/mailman/listinfo/help-gsl
>
> ________________________________________________________________________
>____________ Got a little couch potato?
> Check out fun summer activities for kids.
> http://search.yahoo.com/search?fr=oni_on_mail&p=summer+activities+for+ki
>ds&cs=bz
>
>
> _______________________________________________
> Help-gsl mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/help-gsl