Hi,

I have been using R for close to two years now and have grown quite
comfortable with the language. I am presently trying to implement an
optimization routine in R (Newton Rhapson). I have some R functions that
calculate the gradient and hessian (pre requisite matrices) fairly
efficiently. Now, I have to call this function iteratively until some
convergance criterion is reached. I think the standard method of doing this
in most programming languages is a while loop. However, I know R can get
pretty slow when you use loops. In order to make this efficient, I want to
transfer this part of my code to a more efficient programming language like
c++ or c. However, I have been trying to learn this all day without any
luck. I found a package called Rcpp that makes this easier. However, it
seems some functional knowledge of writing R packages is a pre requisite. I
tried to follow the standard manual for doing this, but could not find a
simple example to get me started. I know I am supposed to make a cpp file
and put it some where before it can be called from R, but I'm confused as to
how this can be done.

My requirement is to start with a parameter vector, update it according to
the gradient and hessian, check if the parameter satisfies some convergance
criterion and continue doing this until it does. Is there a way to
efficiently do this through an R function (replicate?). The problem is that
the number of iterations is not fixed. If there is no function in R, is
there a way I can quickly use Rcpp or some thing to have this last part of
my code in a C or C++ program which repeatedly calls my R functions for
updating the parameters?

-- 
Thanks in advance,
Rohit
Mob: 91 9819926213

        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to