  The methodology of funnel control was introduced in the early 2000s, and it
has developed since then in many respects achieving a level of mathematical
maturity balanced by practical applications. Its fundamental tenet is the
attainment of prescribed transient and asymptotic behaviour for continuous-time
controlled dynamical processes encompassing linear and nonlinear systems
described by functional differential equations, differential-algebraic systems,
and partial differential equations. Considered are classes of systems specified
by structural properties - such as relative degree and stable internal dynamics
- of the systems only, the precise systems' data are in general unknown; the
latter reflects the property that in general any model of a dynamical process
is not precise.
  Prespecified are: a funnel shaped through the choice of a smooth function and
freely chosen by the designer, a fairly large class of smooth reference
signals, and a system class satisfying certain structural properties. The aim
is to design, based on the structural assumptions and the input and output
information only, a single `simple' control strategy -- called the funnel
controller -- so that its application to any system of the given class and to
any reference signal results in feasibility of the funnel control objective:
that is solutions of the closed-loop system do not exhibit blow-up in finite
time, all variables are bounded, and -- most importantly -- the evolution of
the error between the system's output and the reference signal remains within
the prespecified funnel.
  In the Introduction, we describe the genesis of funnel control. After that,
we investigate diverse system classes amenable to funnel control. Funnel
control is shown for systems with arbitrary relative degree and systems
described by partial differential equations. Finally, we discuss input
constraints and applications.
