To
begin with, let me start by explaining the theoretical side of designing a robotics
system that’s bounded by a set of variables. The process is based on trajectory
optimization and randomized motion planning. Theoretically, we should be able
to solve any complex systems using that process. However, in reality complex
systems don’t behave as nicely and trajectory optimization doesn’t work as it's
hoped.
Complex
systems are the ones that involve limited control authority and non-linear, making
them tough to discretize well. So, simple dynamic programming methods such as
evaluating variables with a couple of equations and proofs fail to deal with
the robustness of a system. It also can’t deal with the large discretization
errors that are difficult to bound.
What’s the alternative?
The
alternative starts from our experience with robust control on motion planning. For
instance, fighter jets managed to manipulate linear systems for great results
in stability. Furthermore, the lecturer argues that we could benefit from that
experience, and build on it to deal with multidimensional systems.
Many
approaches try to address multidimensional systems. Main approach, and the one
the lecturer argues for, is based on lyapunov function.
Lyapunov function based approach
Lyapunov
functions behave as better methods for calculating functions with complex
uncertainties. Instead of trying to tackle complex systems with just
differential equations. Since, lyapunov functions are based on the generalization
of energy and finding a positive scalar function to relate the variables to. To
illustrate all of that, let's think of a really simple machine,
the pendulum. We can't just usea physical equation for the
motion because it won’t be able to account for the uncertainty nicely. So, we could use lyapunov function to picture the graph of the
pendulum’s motion. Then we look for the fixed points and the
recurring patterns for a more accurate local analysis.
What
made lyapunov functions more appealing approach nowadays is how simple it has become
to find one using bilinear optimization.
The Lyapunov-function approach in practice
Lyapunov
functions are not alternative for mathematical equations in our system. The
whole idea behind lyapunov functions is to make the equations simpler to
understand, and to reduce the effect of the uncertainty. Furthermore, lyapunov
function approach is applied in practice using funnels with calculated values
for the differentiating variables, and with motion the properties of the
funnels are edited accordingly.
The
lyapunov approach still requires a lot of planning and is still difficult to
implement for runtime constraints. That being said, the lyapunov approach was
able to combine the combinatorial complexity from motion planning to the
dynamic complexity from lyapunov, which eased dealing with complex real-life
systems, and enabled practical feedback design.
Lastly,
Lyapunov approach also paved the way for many new ideas to be tried out such as
rational polynomial approximation and many more to come.