AMOR

 

Automatic Differentiation for a Structural Optimization Solver 

Shaun Forth, Mohamed Tadjouddine & Andy Keane

Presented at  
EUCCO2004: European Conference on Computational Optimization, Special Session on Automatic Differentiation and Large-Scale Optimization, March 29-31 2004, Technical University of Dresden, Germany.


Abstract 
In recent work, Keane and co-workers have investigated design optimisation of a multi-element boom used to insulate a sensitive instrument from vibrations occuring within a satellite. The boom is modelled numerically using a Green's function (receptance theory) approach with time-periodic boundary conditions at the end attached to the satellite. Solution of the discretised system requires about 10 CPU minutes and yields the magnitude and phase of the transmitted vibrations at the instrument end of the boom. The aim of the optimisation is to modify the structure of the boom to minimise the transmitted vibrations. A genetic algorithm was employed and, after several weeks running on a workstation cluster, a significant reduction in transmitted energy across a range of frequencies was obtained. It is proposed to improve convergence of the genetic algorithm by using a meta-Lamarckian strategy in which a subset of the current genetic algorithm population will be optimised using steepest descents requiring a gradient calculation. In this talk we describe the use of reverse or adjoint mode automatic differentiation via the source transformation tool ADIFOR 3.0 to effect an order of magnitude reduction in the time required for gradient calculation in the above problem. We describe the code preparation required to eliminate non-standard features and render the overall function evaluation differentiable. The CPU time of the original calculation is domination by the solve via an LAPACK routine of the linear complex-coefficient Green's system. Simply employing ADIFOR to differentiate the LAPACK routine results in massive taping of intermediate variables and large file-space requirements. By employing a hand-coding of the LAPACK routine's adjoint these requirements are dramatically decreased, reducing the time for the gradient calculation from over 48 hours to a few minutes.

Download
PDF:
saf_eucco04.pdf

AMOR home