๐Ÿ‡จ๐Ÿ‡ฆ Nonlinear State Space Model

Robotics / Control Theory

To work with nonlinear equations in a ๐Ÿ‡บ๐Ÿ‡ธ State Space Model, we can make small linear approximations around the nominal input trajectory.

First, we represent a nonlinear SSM as

In vector format, we can compactly write this as

where , , and are stacks of the individual variables. Note that in the linear case, we have and .

To make linear approximations, we must find equilibrium points. These are the only points where the approximation is linear since by definition of equilibrium,

Computing equilibrium points consists of simply solving the above equation, and to find the output at equilibrium, we can plug it into

Next, we calculate the โ„๏ธ Gradient > Vector Gradients, called Jacobian, for ๐ŸŽค Taylor Expansion around the equilibrium. This is

where is the equilibrium point, and are deviation variables. Since the equilibrium values are constants, this also means . Note that the linearization here only works at equilibrium because if , then it would introduce nonlinear terms.

We can make the same approximation for the second equation,

and also output deviation

Putting everything together, we have

Note that this also works for nominal trajectories, where we have instead of . The key difference is that plugging in to the Jacobian makes our approximations time-varying, .

Content by William Liang, written in Obsidian.
Thank you to all the educators who made these notes possible.