Combining Neural Networks and Symbolic Regression for Analytical Lyapunov Function Discovery
Jie Feng, Haohan Zou, Yuanyuan Shi
TL;DR
CoNSAL introduces a two-loop framework that learns a neural Lyapunov function and then distills it into an analytical form via symbolic regression, enabling rigorous stability certification for nonlinear dynamics. The outer loop uses root-based counterexample generation around $V(x)$ and $L_fV(x)$ to iteratively refine candidates, terminating when a valid analytical Lyapunov function is obtained. A compositional extension enables scalable certification for networked systems by combining local and pairwise Lyapunov components. Compared with SMT-based verification, CoNSAL achieves competitive or superior success rates with faster counterexample generation and yields interpretable, globally or locally valid Lyapunov functions. The approach is demonstrated on a spectrum of systems up to 6-D and is supported by public code, highlighting practical impact for safety-critical nonlinear control.
Abstract
We propose CoNSAL (Combining Neural networks and Symbolic regression for Analytical Lyapunov function) to construct analytical Lyapunov functions for nonlinear dynamic systems. This framework contains a neural Lyapunov function and a symbolic regression component, where symbolic regression is applied to distill the neural network to precise analytical forms. Our approach utilizes symbolic regression not only as a tool for translation but also as a means to uncover counterexamples. This procedure terminates when no counterexamples are found in the analytical formulation. Compared with previous results, CoNSAL directly produces an analytical form of the Lyapunov function with improved interpretability in both the learning process and the final results. We apply CoNSAL to 2-D inverted pendulum, path following, Van Der Pol Oscillator, 3-D trig dynamics, 4-D rotating wheel pendulum, 6-D 3-bus power system, and demonstrate that our algorithm successfully finds their valid Lyapunov functions. Code examples are available at https://github.com/HaohanZou/CoNSAL.
