Hi Arni (and others),<div><br></div><div>My dissertation work involves use (and extension) of models of the same ilk (sometimes exactly the same) as those described by Nancy Gove and John Skalski in their 2002 article.  I began with R, and moved to my own home-brewed C/C++ programs for the sake of of speed when fitting models and real and simulated data.  In addition, we found that the estimated standard errors (based on the inverse hessian output from optim()) were very sensitive to tolerance criteria--often changing orders of magnitude.</div>
<div><br></div><div>I have recently made the move to ADMB to make use of the capabilities for mixed effect models.  One of my current tasks involves simulating data (in R), fitting models in ADMB via the shell() command in R, and importing .rep files into R for processing results of multiple simulations.  In this respect, I too describe my working environment as "R with ADMB," and understand the relative benefits of this setup.  For these specific types of models, I've found ADMB to be irreplaceable.  Similarly, I could not easily summarize simulation results without R; both are vital components to the work I'm doing.</div>
<div><br></div><div>With respect to your benchmarking suggestion:  I have many implementations of models for real and simulated data in both R and ADMB (past and current iterations of my work on the models described above), and may be able to complete some of this work alongside my own work, although I don't yet claim that either my R or ADMB implementations are completely optimized for speed.</div>
<div><br></div><div><br></div><div>Chris</div><div><br></div><div><br></div><div><br></div><div>-----------------------------<br>Chris Gast</div><div>University of Washington</div><div>Quantitative Ecology and Resource Management<br>
<a href="mailto:cmgast@gmail.com">cmgast@gmail.com</a><br>
<br><br><div class="gmail_quote">On Wed, Jun 16, 2010 at 11:39 AM, Arni Magnusson <span dir="ltr"><<a href="mailto:arnima@hafro.is">arnima@hafro.is</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
As far as I can tell, Gove et al. (2002) might be a good example for benchmarking the optimization performance of R vs. ADMB. It would be great if expert R users/developers could tweak Beni's model so that the performance comparison is valid.<br>

<br>
The main purpose is not to see which is faster or more reliable, but to quantify how much performance is gained by moving from R to ADMB.<br>
<br>
I have just typed and uploaded an excerpt from an old but thorough benchmark, where ADMB outperformed Gauss, Matlab, and S-Plus (<a href="http://admb-project.org/community/benchmarks/optimization" target="_blank">http://admb-project.org/community/benchmarks/optimization</a>). The benchmark was performed in 1997 and an update would be very valuable, as software and hardware have improved since then.<br>

<br>
R is an interpreted language that can do just about anything. ADMB is a compiled language (thin layer on top of C++) that does optimization and nothing else. I don't think it is a realistic goal for R to match the optimizing performance of ADMB. I use R for most of my work, but crunch numbers with ADMB when computational speed and flexibility become an issue.<br>

<br>
As an analogy, data frames in R are great, along with functions like aggregate(), apply(), merge(), and xtabs(). But when the tables are too large and too many, it's time to delegate the problem to a relational database.<br>

<br>
In the case of model X, which is already implemented in R, it may take half an hour or half a month to convert it to ADMB, and the payoff depends on how often the model needs to be run. In the case of model Y, which is not yet implemented, some users may be quicker to implement it in R than in ADMB, so again it would be good to have an idea about the relative performance gain. Model Z may not run at all in R, due to its size and complexity.<br>

<br>
Although I started this email with "R vs. ADMB", my daily working environment is better described as "R and ADMB". I'm a regular contributor to both R (4 packages and a couple of functions in the base packages) and ADMB (dev core team). Others have contributed R packages to interface with ADMB (<a href="http://admb-project.org/community/admb-meeting-march-29-31/InterfacingADMBwithR.pdf/at_download/file" target="_blank">http://admb-project.org/community/admb-meeting-march-29-31/InterfacingADMBwithR.pdf/at_download/file</a>), but for many the interface is just reading and writing text files.<br>

<br>
I fully appreciate the comfort and efficiency of the R working environment, and the benefits of performing most tasks inside the same environment. But the R community has no need to be on the defense against ADMB, any more than against relational databases. If you work with computationally intensive models, I encourage you to try out ADMB (<a href="http://admb-project.org" target="_blank">admb-project.org</a>, free software) and hopefully end up contributing ideas and/or code.<br>

<br>
Best regards,<br>
<br>
Arni<br>
<br>
<br>
P.S. Phew. Future emails mentioning ADMB on r-help can be more brief and to the point, citing this message for details.<br>
<br>
<br>
Windows ADMB-IDE installer<br>
<a href="http://code.google.com/p/admb-project/downloads/list?q=ide*exe" target="_blank">http://code.google.com/p/admb-project/downloads/list?q=ide*exe</a><br>
<br>
Windows, Linux, and Mac OS standalone<br>
<a href="http://code.google.com/p/admb-project/downloads/list?q=windows" target="_blank">http://code.google.com/p/admb-project/downloads/list?q=windows</a><br>
<a href="http://code.google.com/p/admb-project/downloads/list?q=linux" target="_blank">http://code.google.com/p/admb-project/downloads/list?q=linux</a><br>
<a href="http://code.google.com/p/admb-project/downloads/list?q=macos" target="_blank">http://code.google.com/p/admb-project/downloads/list?q=macos</a><br>
<br>
ADMB modes for various editors, including Emacs and Vim<br>
<a href="http://admb-project.org/community/editing-tools" target="_blank">http://admb-project.org/community/editing-tools</a><br>
_______________________________________________<br>
Users mailing list<br>
<a href="mailto:Users@admb-project.org" target="_blank">Users@admb-project.org</a><br>
<a href="http://lists.admb-project.org/mailman/listinfo/users" target="_blank">http://lists.admb-project.org/mailman/listinfo/users</a><br>
</blockquote></div><br></div>