0
$\begingroup$

I have been watching Russ Tedrake's videos on robotics, which are wonderful. But I am confused by one thing.

So he talks about the application of LQR control and its ability to efficiently stabilize the dynamics of a robot around some operating point or fixed point. My question is, how well does this LQR idea extend to more complicated systems like a full robot?

So the basic idea of LQR in say robotics, is that you have a nonlinear system of ODEs that define the dynamics of the robot. Then you have to find the fixed points of the nonlinear system, and these fixed points become the operating point for the controller. Next you linearize the system around the fixed point, computer the A, B, C, D matrices, tune the Q, and R matrices, and you are on your way. Of course there is more effort than that, but
that part is relatively consistent.

My question is, how do you find the fixed points of high dimensional systems of nonlinear ODEs? So for a single pendulum or double pendulum we can analytically solve for the fixed points with not too much trouble. But for a full robot which may have 10 or 20 actuators, the ODE system is going to be really big. In that case, we cannot really solve for the the fixed points analytically any more.

So if I have a large system, then how would I find the fixed points or operating points numerically, in order to put those into LQR? Numerically finding fixed points--from what I
remember was often done with say bracketing search or such. So the user picks some ranges for each dimension in the phase space, and then the algorithm will narrow down towards where the function crosses the zero vector. BUT, I am not sure how well such bracketing search works in 20 or 40 or 80 dimensions?

So if we cannot find the fixed points, then we really can't use LQR for say a full robot right? So I am trying to figure out where my logic is in error or something.

$\endgroup$

2 Answers 2

1
$\begingroup$

Please only ask one question at a time and make sure it's answerable. We prefer practical, answerable questions, so questions which ask for a subjective recommendation on a method (for how to build something, how to accomplish something, what something is capable of, etc.) are off-topic. Please take a look at [ask] & [about] for more information on how stack exchange works.

I'll answer your question as best I can, but without a better scoped question it's going to be hard to get a more helpful answer.

My question is, how well does this LQR idea extend to more complicated systems like a full robot?

I don't think that this is commonly done because of the issues you've raised.

My question is, how do you find the fixed points of high dimensional systems of nonlinear ODEs?

You've summarized the potential approaches relatively clearly. You can solve it analytically, or produce a numerical approximation technique. With the higher dimensionality any techniques will be hard. Depending on your system configuration there may be simplifications that can help different approaches. But there's not going to be a one size fits all solution.

$\endgroup$
0
$\begingroup$

That's correct, LQR is just optimal feedback controller and these only track fixed points.

$\endgroup$
2
  • $\begingroup$ thank for that. But I was wondering about finding the fixed points when I have a system that has a bit state space. So if I have like 10 actuators or 20 actuators, that means I have a pretty high dimensional state space. So to find the fixed points, I have to find the place where this large system is equal to the zero vector. I can't solve that analytically, so I would have to solve it numerically right. Do you know how I would find the fixed points of such a large system? $\endgroup$
    – krishnab
    Commented Mar 17 at 7:05
  • $\begingroup$ I mean even if I am doing Lyapunov control, I still need to find fixed points around which I can find a Lyapunov function. For small systems I can analytically solve for the fixed points, but how do I do that for a big system of ODEs. I could pepper the state space with random initializations and use Newton's method to try to find the zeros for each initialization. But if I tried that, I would run into curse of dimensionality issues because the space is so big. $\endgroup$
    – krishnab
    Commented Mar 17 at 7:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.