In this work, we present an introduction to automatic differentiation,
its use in optimization software, and some new potential usages. We
focus on the potential of this technique in
optimization. We do not dive deeply in the intricacies of automatic
differentiation, but put forward its key ideas. We sketch a survey, as
of today, of automatic differentiation software, but warn the reader
that the situation with respect to software evolves rapidly. In the
last part of the paper, we present some potential future usage of
automatic differentiation, assuming an ideal tool is available, which
will become true in some unspecified future.