[Rd] Numerical optimisation and "non-feasible" regions
pburns at pburns.seanet.com
Thu Aug 7 12:42:15 CEST 2008
If the positive definiteness of the covariance
is the only issue, then you could base a penalty on:
eps - smallest.eigen.value
if the smallest eigen value is smaller than eps.
patrick at burns-stat.com
+44 (0)20 8525 0696
(home of S Poetry and "A Guide for the Unwilling S User")
Mathieu Ribatet wrote:
> Thanks Ben for your tips.
> I'm not sure it'll be so easy to do (as the non-feasible regions
> depend on the model parameters), but I'm sure it's worth giving a try.
> Thanks !!!
> Ben Bolker a écrit :
>> Mathieu Ribatet <mathieu.ribatet <at> epfl.ch> writes:
>>> Dear list,
>>> I'm currently writing a C code to compute the (composite) likelihood -
>>> well this is done but not really robust. The C code is wrapped in an R
>>> one which call the optimizer routine - optim or nlm. However, the
>>> fitting procedure is far from being robust as the parameter space
>>> depends on the parameter - I have a covariance matrix that should be a
>>> valid one for example.
>> One reasonably straightforward hack to deal with this is
>> to add a penalty that is (e.g.) a quadratic function of the
>> distance from the feasible region, if that is reasonably
>> straightforward to compute -- that way your function will
>> get gently pushed back toward the feasible region.
>> Ben Bolker
>> R-devel at r-project.org mailing list
More information about the R-devel