Katharine,
Thank you for the pointer, and thanks to Josh Ulrich and William Dunlap for 
good suggestions.
(Also thanks to Dirk Eddelbuettel for shaming me into modifying the code.)
William's fnTracer wrapper technique doesn't require rebuilding the package, so 
it's easier in some ways,
especially for users who cannot build packages for some reason.
(https://stat.ethz.ch/pipermail/r-help/2013-May/353237.html)

However, I decided to make a change preserving the previous behavior,
and letting negative trace value indicate abbreviated trace output.

## When trace < 0 just print the iteration and value
$ diff ~/DEoptim/src/de4_0.c  ~/DEoptim/src/de4_0.c.ORIG 
527,530d526
<     } else if ( trace < 0 ) {
<       if( (i_iter % (-trace)) == 0 ) {
<         Rprintf("Iteration: %d bestvalit: %f\n", i_iter, t_bestC);
<       }

## Allow trace < 0
diff ~/DEoptim/R/DEoptim.R ~/DEoptim/R/DEoptim.R.ORIG 
28,31c28,31
< #  if ( trace < 0 ) {
< #    warning("'trace' cannot be negative; set to 'TRUE'")
< #    trace <- TRUE
< #  }
---
>   if ( trace < 0 ) {
>     warning("'trace' cannot be negative; set to 'TRUE'")
>     trace <- TRUE
>   }

Feel free to ignore or incorporate this change.

Thanks to all the DEoptim developers and researchers.
This package is really great!
-- David

From: Katharine Mullen [mailto:mullenk...@gmail.com] 
Sent: Thursday, May 09, 2013 2:01 PM
To: David Reiner
Cc: r-help@r-project.org
Subject: Re: Can DEoptim trace output be customized?

Dear David, 

The package doesn't have an option to customize the output of the trace.

However, you can create a custom version of the package that doesn't print the
parameters.  Get the package source code, uncompress it, and find the file
de4_0.c in the src/ directory.  Then comment out the calls to Rprintf that
print the parameter values, to read:

        Rprintf("Iteration: %d bestvalit: %f bestmemit:", i_iter, t_bestC);
        // for (j = 0; j < i_D; j++)
        //  Rprintf("%12.6f", gt_bestP[j]); 
        Rprintf("\n");

Then re-build and re-install the package (instructions are at
http://cran.r-project.org/doc/manuals/r-release/R-exts.html#Checking-and-building-packages).

On Thu, May 9, 2013 at 11:27 AM, David Reiner <david.rei...@xrtrading.com> 
wrote:
I'm running DEoptim - it works great!
(A HUGE THANK YOU to David Ardia, Katharine Mullen, Brian Peterson, and Joshua 
Ulrich, and  Kris Boudt!!!).
Sometimes I set trace to a number so I can see a few intermediate points in the 
optimization.
However, I have a large number of variables and would like to omit the 
bestmemit, which hides what I'm more interested in: bestvalit.

Is there a way to customize the output of trace so it omits the best member?

Thanks,
David L. Reiner


This e-mail and any materials attached hereto, including, without limitation, 
all content hereof and thereof (collectively, "XR Content") are confidential 
and proprietary to XR Trading, LLC ("XR") and/or its affiliates, and are 
protected by intellectual property laws.  Without the prior written consent of 
XR, the XR Content may not (i) be disclosed to any third party or (ii) be 
reproduced or otherwise used by anyone other than current employees of XR or 
its affiliates, on behalf of XR or its affiliates.

THE XR CONTENT IS PROVIDED AS IS, WITHOUT REPRESENTATIONS OR WARRANTIES OF ANY 
KIND.  TO THE MAXIMUM EXTENT PERMISSIBLE UNDER APPLICABLE LAW, XR HEREBY 
DISCLAIMS ANY AND ALL WARRANTIES, EXPRESS AND IMPLIED, RELATING TO THE XR 
CONTENT, AND NEITHER XR NOR ANY OF ITS AFFILIATES SHALL IN ANY EVENT BE LIABLE 
FOR ANY DAMAGES OF ANY NATURE WHATSOEVER, INCLUDING, BUT NOT LIMITED TO, 
DIRECT, INDIRECT, CONSEQUENTIAL, SPECIAL AND PUNITIVE DAMAGES, LOSS OF PROFITS 
AND TRADING LOSSES, RESULTING FROM ANY PERSON'S USE OR RELIANCE UPON, OR 
INABILITY TO USE, ANY XR CONTENT, EVEN IF XR IS ADVISED OF THE POSSIBILITY OF 
SUCH DAMAGES OR IF SUCH DAMAGES WERE FORESEEABLE.

______________________________________________
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