Challenge: Automatic differentiation in D

Steve Teale steve.teale at britseyeview.com
Tue May 12 10:48:33 PDT 2009


Bill Baxter Wrote:

> If I had the time I'd love to play around with automatic differentiation in D.
> http://en.wikipedia.org/wiki/Automatic_differentiation
> 
> I played around with it a bit in C++ before, using the operator
> overloading approach, but didn't go much beyond basic polynomials with
> it.
> The page above offers something of a challenge for a potential D implementation:
> """
> Operator overloading for forward accumulation is easy to implement,
> and also possible for reverse accumulation. However, current compilers
> lag behind in optimizing the code when compared to forward
> accumulation.
> """
> 
> I wonder if the fancy compile-time machinery offered by D could enable
> a more efficient implementation?
> 
> Ultimately I'd be interested in using AD for implementing physics-y
> things where complicated derivatives end up being necessary all the
> time.
> Here's a paper where they made use of a simple AD implementation for
> doing thin shell simulations:
> http://www.cs.columbia.edu/cg/pdfs/10_ds.pdf
> You can also find their C++ AD code on the caltech site somewhere.
> 
> Just throwing this out there, because occasionally there are folks
> looking for little self-contained projects to undertake.  And because
> I think AD is nifty.
> 
> --bb

Bill,

D4 maybe. In the present mood I think you are spitting in the wind!

Steve



More information about the Digitalmars-d mailing list