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