There is currently no generally-applicable way to find
Lyapunov functions for stable nonlinear systems in a reasonable amount
of time. However, genetic programming is exciting, new possibility.
Genetic programming is a variation of genetic algorithms where the
objective space is a space of heirarchial tree structures. The tree
structures, among other things, can represnt represent almost any
mathematical expression. I have implemented a genetic programming
algorithm, in Mathematica, which searches for a Lyapunov function of a
given system, where the tree structures represent potential Lyapunov
functions. The implementation evaluates the ``Lyapunovness'' of the
functions by testing the Lyapunov conditions (
and
) at many random points. The implementation was successful
somewhat in finding Lypunov functions for simple, two-dimensional
systems.