[R] Supply linear constrain to optimizer

Haifeng (Kevin) Xie H.F.Xie at westminster.ac.uk
Fri Sep 14 05:36:54 CEST 2001

Dear R and S users,

I've been working on fitting finite mixture of negative exponential
distributions using maximum likelihood based on the example given in MASS.
So far I had much success in fitting two components. The problem started
when I tried to extend the procedure to fit three components.
More specifically,

likelihood = sum( ln(c1*exp(-x/lambda1)/lambda1 +
c2*exp(-x/lambda2)/lambda2 + (1-c1-c2)*exp(-x/lambda3)/lambda3) )

I've used optimizers such as ms and nlminb (SPLUS 5.0 for UNIX), and
provided parameters constrains (0 <= c1, c2 <= 1) to nlminb via lower and
upper. But these constrains provide no protection for (1-c1-c2) being
between interval [0,1], which resulted in generating NAs in the likelihood
function during iteration. 

I've been looking at various documentations, but didn't see anywhere
mentioning setting linear constrain, in this case, c1 + c2 <= 1.

Any suggestion and pointers will be greatly apprepciated. 

Kevin Xie
Research Student
Cavendish School of Computer Science
University of Westminster
London, UK

r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch

More information about the R-help mailing list