  For many linear and nonlinear systems that arise from the discretization of
partial differential equations the construction of an efficient multigrid
solver is a challenging task. Here we present a novel approach for the
optimization of geometric multigrid methods that is based on evolutionary
computation, a generic program optimization technique inspired by the principle
of natural evolution. A multigrid solver is represented as a tree of
mathematical expressions which we generate based on a tailored grammar. The
quality of each solver is evaluated in terms of convergence and compute
performance using automated local Fourier analysis (LFA) and roofline
performance modeling, respectively. Based on these objectives a multi-objective
optimization is performed using strongly typed genetic programming with a
non-dominated sorting based selection. To evaluate the model-based prediction
and to target concrete applications, scalable implementations of an evolved
solver can be automatically generated with the ExaStencils framework. We
demonstrate our approach by constructing multigrid solvers for the steady-state
heat equation with constant and variable coefficients that consistently perform
better than common V- and W-cycles.
