  Oceanic tides have the potential to yield a vast amount of renewable energy.
Tidal stream generators are one of the key technologies for extracting and
harnessing this potential. In order to extract an economically useful amount of
power, hundreds of tidal turbines must typically be deployed in an array. This
naturally leads to the question of how these turbines should be configured to
extract the maximum possible power: the positioning and the individual tuning
of the turbines could significantly influence the extracted power, and hence is
of major economic interest. However, manual optimisation is difficult due to
legal site constraints, nonlinear interactions of the turbine wakes, and the
cubic dependence of the power on the flow speed. The novel contribution of this
paper is the formulation of this problem as an optimisation problem constrained
by a physical model, which is then solved using an efficient gradient-based
optimisation algorithm. In each optimisation iteration, a two-dimensional
finite element shallow water model predicts the flow and the performance of the
current array configuration. The gradient of the power extracted with respect
to the turbine positions and their tuning parameters is then computed in a
fraction of the time taken for a flow solution by solving the associated
adjoint equations. These equations propagate causality backwards through the
computation, from the power extracted back to the turbine positions and the
tuning parameters. This yields the gradient at a cost almost independent of the
number of turbines, which is crucial for any practical application. The utility
of the approach is demonstrated by optimising turbine arrays in four idealised
scenarios and a more realistic case with up to 256 turbines in the Inner Sound
of the Pentland Firth, Scotland.
