Final Report Summary - ABOUTFLOW (Adjoint-based optimisation of industrial and unsteady flows)
The About Flow project has made significant progress with adjoint methods for numerical shape and topology optimisation with application to industrial problems. The advances are demonstrated on a number of industrial testcases defined by the industrial project partners. Details of the activities can be found at http://aboutflow.sems.qmul.ac.uk/
At the outset, a number of testcases were defined for benchmarking of numerical optimisation in turbo-machinery, vehicle aerodynamics and internal cooling; areas that are not covered by the well-known aeronautics benchmarks run by the AIAA. A first round of benchmarking has occurred at the NOED2016 conference organised in July 2017 by the project, the benchmarking on the turbo-machinery case has seen two further rounds since then.
A major focus of the About Flow project was to progress with OpenFOAM, the leading open-source code in incompressible flow optimisation which follows a hand-derived continuous adjoint approach. Significant progress in robustness was achieved in the project through use of fully coupled methods and adaptive treatment of the highly unstable ATC term of the adjoint equations developed by project partner Engys. These developments allow applications of the method to very large industrial cases. Improvements in gradient accuracy was achieved by a reformation of the standard surface sensitivity computation as a field integral developed at partner NTUA. Adoption of robust volume spline mesh deformation methods helped to extend the magnitude of the design deformation that the current methods can handle, as demonstrated by partner VW.
Significant improvements were achieved with efficiency and robustness of discrete adjoint methods based on automatic differentiation software tools (AD). Their successful application to a wide range of practically relevant test cases helped to validate expected behaviour or even to gain novel insight into the underlying application. Contributions to methodology and implementation include check-pointing techniques, embedded symbolically differentiated (non)linear solver components, reverse accumulation for attractive fixed-point iterations in steady simulations, refined activity analysis, and support for adjoint message passing. All ESRs developed an impressive range of conceptual and technical capabilities which are expected to set the stage for a successful continuation of their careers.
Refined activity analysis in TAPENADE developed by INRIA and QMUL results in custom versions of adjoint routines for different activity patterns; the main advantages are a very much simplified and much more robust build process, faster runtime at the expense of slight increase in code size. Experiments on stability of AD under floating-point effects explored a hitherto unknown source of problems in stability and accuracy. While a solution to the issue goes beyond the scope of About Flow, the research resulted in a number of smaller test problems that allow to focus further joint research in this direction. One outcome is an algorithm for correcting gradient errors in the typical application case where linear solves are not differentiated and not fully converged. Including the correction allows to correctly accumulate the derivatives in this case, resulting in significant computational savings as otherwise all system solves would need to be done to machine precision.
Fixed-point formulations for discrete adjoints have been developed at QMUL for the widely-used pressure correction method for incompressible flow. This enables an efficient use of these solvers in efficient one-shot optimisation as the fixed-point form allows a hot-start from a previous approximate solution. Standard application of AD tools would require the adjoint solution to be accumulated from zero, the advantages of the approach are currently being benchmarked in the widely-used open-source adjoint code OpenFOAM. Major progress has been made at INRIA in automatically deriving fixed-point AD code for standardised fixed-point loops of the primal. This may significantly reduce the manual coding effort in producing adjoint code in fixed-point form. Major progress has also been made with defining a methodology for efficient treatment of MPI message passing in the case of check-pointing. This strategy will be implemented in Tapenade in the future.
Work at RWTH on discrete adjoint OpenFOAM has resulted in significant progress toward industrial usability of the code: the memory footprint and runtimes have been reduced by application of symbolic differentiation of linear solver, and reverse accumulation, extensive validation has been conducted. The code has been demonstrated successfully on large industrial cases.
Inexpensive adaptation sensors for mesh adaptation have been developed at QMUL, paving the way for future application in unsteady application. Novel shared-memory parallelisation strategies have been developed that employ the symmetric sparsity patterns of typical CFD codes and lend themselves to very clean adjoint codes with minimal impact of the parallelisation on the application of AD.
The unsteady adjoint in-house code "puma" of NTUA has been GPU-enabled. Runs on the nGPU platforms at NTUA have been performed and very good speed-up has been achieved. Higher-order time-stepping techniques have been implemented at QMUL to minimise the number of timesteps that need storing. Compression techniques based on multi-grid coarsening have been implemented at QMUL to reduce check-point size and to regularise adjoint unstable growth due to chaotic behaviour.
The in-house adjoint solver at Rolls Royce has been extended to unsteady flows by implementing a discrete model of the sliding plane coupling between blade rows. This has been successfully demonstrated on rotor-stator computations of industrial geometries. The continuous adjoint OpenFoam solver has been extended at VW for application to highly unsteady DES flows: to limit the storage cost of check-points the adjoint solution is linearised around a time-averaged flow solution. While one cannot expect accurate non-linear gradients, the resulting sensitivities show much better match with perturbed DES solutions, compared to the RANS solutions typically used for purely steady adjoints.
The final WP constitutes the glue that connects the other parts of the Aboutflow project to industrial process chains. Due the inherent variety and number of inter-component connection the objective list is very disparate as well and as such lacks a single technical focus. The achievements of WP6 are therefore best viewed as a collection of specialised apps rather than a single monolithic function.
Work at QMUL demonstrated the effectiveness of a direct interface between the optimisation software and CAD geometry descriptors. CAD geometry is the industry standard for complex product design. The direct coupling was able to substantially accelerate the optimisation process, but some shortcomings were also highlighted that will be addressed in future projects.
The efforts at Engys focus on a flexible method for representing a deforming surface in the context of a fixed background grid. The flexibility the new approach delivers allows the adjoint method to reliably generate optimal designs with only the basic packaging space as input. In addition, a method for exporting the new designs was provided. These functions now form the basis of HELYX-Adjoint, an optimisation product produced by the host company, Engys.
VW's efforts focussed on the systematic integration of Abou Flow tools and methods into the VW industrial process. The most prominent outcome of the work is the capacity to automatically reduce the noise generated by VW side mirrors.
Finally, the demonstration of a full unsteady adjoint computation of turbo-machinery rotor-stator interaction with dynamic mesh movement at industrial scale constitutes a mile-stone in the development of robust adjoint methods suitable for industrial use.
The research in the About Flow project resulted in a step change in robustness and efficiency of adjoint solvers. The wide variety of industrial cases that were tackled demonstrates the maturity and applicability of the methodology. While more adjoint solver development is needed, the shortcomings of the adjoint solvers are no longer the bottlenecks for their adoption into industrial workflows.
At the outset, a number of testcases were defined for benchmarking of numerical optimisation in turbo-machinery, vehicle aerodynamics and internal cooling; areas that are not covered by the well-known aeronautics benchmarks run by the AIAA. A first round of benchmarking has occurred at the NOED2016 conference organised in July 2017 by the project, the benchmarking on the turbo-machinery case has seen two further rounds since then.
A major focus of the About Flow project was to progress with OpenFOAM, the leading open-source code in incompressible flow optimisation which follows a hand-derived continuous adjoint approach. Significant progress in robustness was achieved in the project through use of fully coupled methods and adaptive treatment of the highly unstable ATC term of the adjoint equations developed by project partner Engys. These developments allow applications of the method to very large industrial cases. Improvements in gradient accuracy was achieved by a reformation of the standard surface sensitivity computation as a field integral developed at partner NTUA. Adoption of robust volume spline mesh deformation methods helped to extend the magnitude of the design deformation that the current methods can handle, as demonstrated by partner VW.
Significant improvements were achieved with efficiency and robustness of discrete adjoint methods based on automatic differentiation software tools (AD). Their successful application to a wide range of practically relevant test cases helped to validate expected behaviour or even to gain novel insight into the underlying application. Contributions to methodology and implementation include check-pointing techniques, embedded symbolically differentiated (non)linear solver components, reverse accumulation for attractive fixed-point iterations in steady simulations, refined activity analysis, and support for adjoint message passing. All ESRs developed an impressive range of conceptual and technical capabilities which are expected to set the stage for a successful continuation of their careers.
Refined activity analysis in TAPENADE developed by INRIA and QMUL results in custom versions of adjoint routines for different activity patterns; the main advantages are a very much simplified and much more robust build process, faster runtime at the expense of slight increase in code size. Experiments on stability of AD under floating-point effects explored a hitherto unknown source of problems in stability and accuracy. While a solution to the issue goes beyond the scope of About Flow, the research resulted in a number of smaller test problems that allow to focus further joint research in this direction. One outcome is an algorithm for correcting gradient errors in the typical application case where linear solves are not differentiated and not fully converged. Including the correction allows to correctly accumulate the derivatives in this case, resulting in significant computational savings as otherwise all system solves would need to be done to machine precision.
Fixed-point formulations for discrete adjoints have been developed at QMUL for the widely-used pressure correction method for incompressible flow. This enables an efficient use of these solvers in efficient one-shot optimisation as the fixed-point form allows a hot-start from a previous approximate solution. Standard application of AD tools would require the adjoint solution to be accumulated from zero, the advantages of the approach are currently being benchmarked in the widely-used open-source adjoint code OpenFOAM. Major progress has been made at INRIA in automatically deriving fixed-point AD code for standardised fixed-point loops of the primal. This may significantly reduce the manual coding effort in producing adjoint code in fixed-point form. Major progress has also been made with defining a methodology for efficient treatment of MPI message passing in the case of check-pointing. This strategy will be implemented in Tapenade in the future.
Work at RWTH on discrete adjoint OpenFOAM has resulted in significant progress toward industrial usability of the code: the memory footprint and runtimes have been reduced by application of symbolic differentiation of linear solver, and reverse accumulation, extensive validation has been conducted. The code has been demonstrated successfully on large industrial cases.
Inexpensive adaptation sensors for mesh adaptation have been developed at QMUL, paving the way for future application in unsteady application. Novel shared-memory parallelisation strategies have been developed that employ the symmetric sparsity patterns of typical CFD codes and lend themselves to very clean adjoint codes with minimal impact of the parallelisation on the application of AD.
The unsteady adjoint in-house code "puma" of NTUA has been GPU-enabled. Runs on the nGPU platforms at NTUA have been performed and very good speed-up has been achieved. Higher-order time-stepping techniques have been implemented at QMUL to minimise the number of timesteps that need storing. Compression techniques based on multi-grid coarsening have been implemented at QMUL to reduce check-point size and to regularise adjoint unstable growth due to chaotic behaviour.
The in-house adjoint solver at Rolls Royce has been extended to unsteady flows by implementing a discrete model of the sliding plane coupling between blade rows. This has been successfully demonstrated on rotor-stator computations of industrial geometries. The continuous adjoint OpenFoam solver has been extended at VW for application to highly unsteady DES flows: to limit the storage cost of check-points the adjoint solution is linearised around a time-averaged flow solution. While one cannot expect accurate non-linear gradients, the resulting sensitivities show much better match with perturbed DES solutions, compared to the RANS solutions typically used for purely steady adjoints.
The final WP constitutes the glue that connects the other parts of the Aboutflow project to industrial process chains. Due the inherent variety and number of inter-component connection the objective list is very disparate as well and as such lacks a single technical focus. The achievements of WP6 are therefore best viewed as a collection of specialised apps rather than a single monolithic function.
Work at QMUL demonstrated the effectiveness of a direct interface between the optimisation software and CAD geometry descriptors. CAD geometry is the industry standard for complex product design. The direct coupling was able to substantially accelerate the optimisation process, but some shortcomings were also highlighted that will be addressed in future projects.
The efforts at Engys focus on a flexible method for representing a deforming surface in the context of a fixed background grid. The flexibility the new approach delivers allows the adjoint method to reliably generate optimal designs with only the basic packaging space as input. In addition, a method for exporting the new designs was provided. These functions now form the basis of HELYX-Adjoint, an optimisation product produced by the host company, Engys.
VW's efforts focussed on the systematic integration of Abou Flow tools and methods into the VW industrial process. The most prominent outcome of the work is the capacity to automatically reduce the noise generated by VW side mirrors.
Finally, the demonstration of a full unsteady adjoint computation of turbo-machinery rotor-stator interaction with dynamic mesh movement at industrial scale constitutes a mile-stone in the development of robust adjoint methods suitable for industrial use.
The research in the About Flow project resulted in a step change in robustness and efficiency of adjoint solvers. The wide variety of industrial cases that were tackled demonstrates the maturity and applicability of the methodology. While more adjoint solver development is needed, the shortcomings of the adjoint solvers are no longer the bottlenecks for their adoption into industrial workflows.