Live data from Hacker News

Robotics 501: Mathematics for Robotics

github.com

41–50 of 64 posts

Re: Robotics 501: Mathematics for Robotics

#41
post #6

Honest question (am a prof. of Maths for engineering at a Spanish Univ. and am wondering about this a lot): What is the point of explaining, say the QR factorization or iterative methods like Gauss-Jordan to engineers ? I think of them as the method of integration of rational functions (the complete method, not the basic cases): totally useless today ... I understand, for example, the Jordan decomposition theorem in…

Deep understanding of the mathematics behind a given problem space can help you later in the applications. So maybe they'll never have to actually implement Gauss Jordan (and they shouldn't), but the core ideas of normalization and reduction are very important to any sort of numerical methods and come up again and again. As a somewhat related example, our engineering college required a calculus based probability cour…

> Deep understanding of the mathematics behind a given problem space can help you later in the applications.

The commenter isn't against that - he makes this clear in other comments.

He's arguing that Gauss Jordan doesn't give deep understanding.

Re: Robotics 501: Mathematics for Robotics

#42
post #18
post #6

Honest question (am a prof. of Maths for engineering at a Spanish Univ. and am wondering about this a lot): What is the point of explaining, say the QR factorization or iterative methods like Gauss-Jordan to engineers ? I think of them as the method of integration of rational functions (the complete method, not the basic cases): totally useless today ... I understand, for example, the Jordan decomposition theorem in…

It sort of depends upon the course. This particular syllabus looks like a really standard linear algebra course (I have no idea what is robotics-specific about it), and so of course Gauss-Jordan would show up there. More generally, though, I think there are two main reasons to put algorithms like Gauss-Jordan in the engineering curriculum. 1. While it would be nice to treat linear algebra solvers as a perfect black b…

I really agree with your comments; especially number 1. Often I can't use some black box implementation of an solver (or other algorithm for that matter) without some modifications. Numerical stability is a big one but also just performance. Sometimes the mathematically correct way of doing something is not always the best in practice. Short cuts and approximations can provide huge benefits. It is difficult to make those modifications without understanding the inner workings of the original method.

Re: Robotics 501: Mathematics for Robotics

#44
post #6

Honest question (am a prof. of Maths for engineering at a Spanish Univ. and am wondering about this a lot): What is the point of explaining, say the QR factorization or iterative methods like Gauss-Jordan to engineers ? I think of them as the method of integration of rational functions (the complete method, not the basic cases): totally useless today ... I understand, for example, the Jordan decomposition theorem in…

*Replying to the answers received as of 17:02 20220127 GMT+1.* Thanks A HUGE LOT to all and sundry for taking the time. I am the first one to understand that theory is the only way to really grasp a problem (this is why differential equations and calculus and linear algebra are key in the education of an Engineer). This is something I guess all of you agree on (as a matter of fact, I am a pure mathematician by educat…

Even as a pure maths student, I've rarely found it useful to have to carry out complicated computations in exam settings. Integrations methods I can even understand up to a point as it is useful for pattern matching – but I had to actually carry out the simplex method on paper in one exam, and worse, I had to memorise several variants of it with different pivoting strategies. Of course, I barely remember how that algorithm works by now.

I guess one reason why such computations are asked for in exams, though, is because it gives people something concrete to study so that if they prepare well, they can score some points. If you only have "applied knowledge" exams, they get harder. And somehow, society wants to perpetuate the notion that you can achieve anything if you put in enough effort (no matter whether that effort is actually valuable).

In an ideal world, we could instead maybe give students a high level description of the algorithm, have them carry it out explicitly on extremely simple input just to see it once, and then maybe ask them to implement the algorithm in a computer program. Sadly, at least for pure maths students, the coding skills are typically low even when there are explicit CS requirements, don't know what it's like for engineering students.

Re: Robotics 501: Mathematics for Robotics

#45
post #6

Honest question (am a prof. of Maths for engineering at a Spanish Univ. and am wondering about this a lot): What is the point of explaining, say the QR factorization or iterative methods like Gauss-Jordan to engineers ? I think of them as the method of integration of rational functions (the complete method, not the basic cases): totally useless today ... I understand, for example, the Jordan decomposition theorem in…

Well, I'm currently in my masters in electrical engineering in Germany and we are taught the same stuff. We even have a mandatory course about basic numerical algorithms. What exactly I can do with that I don't know

I'm not even in electrical engineering but in Industrial engineering and I still had to take numerical algorithms course this semester. Also had to do the iterations by hand for the exam.

Re: Robotics 501: Mathematics for Robotics

#46

Earlier quoted context omitted.

The most mathematically-relevant stuff I remember was inverse kinematics and using numerical approximation to really cut down on computation when switching between coordinate spaces. This gets more important as the degrees of freedom increase. For instance, you'd like to know that when a state-space matrix is not full rank, you lose some control. In practical terms, a robot arm can usually move in any arbitrary Carte…

Yes, of course, but those are not specific algorithms (except possibly the Gauss reduction method which deserves a special treatment because it is not "just a method of computing" but "a way of understanding" by itself).

Can you explain the difference between GJ as "the Gauss reduction method"? Because I haven't seen these terms used before in a way that makes a difference between them.

Re: Robotics 501: Mathematics for Robotics

#47
post #6

Honest question (am a prof. of Maths for engineering at a Spanish Univ. and am wondering about this a lot): What is the point of explaining, say the QR factorization or iterative methods like Gauss-Jordan to engineers ? I think of them as the method of integration of rational functions (the complete method, not the basic cases): totally useless today ... I understand, for example, the Jordan decomposition theorem in…

To expand on some of the other replies: maybe not QR and Gauss-Jordan directly, but understanding linear maps and subspaces is relevant in kinematics, especially kinematic chains like robot arms / manipulators.

You can formulate a task in terms of some nonlinear function mapping the robot's joint positions to a desired "task space" and set a reference point or trajectory in that space (e.g. keep a tool perpendicular to a surface while following a line on that surface).

Approaches for solving these tasks usually look at the Jacobian (inverse) of the task-function and use iterative methods to find a trajectory in joint-space that solves the task, either making a plan offline or as part of the control algorithm in real time.

The singular value decomposition of that Jacobian has a couple of applications like

- find the pseudoinverse for the solution

- use the condition number to detect (proximity to) singularities

- find a Tikhonov-regularized solution to avoid singularities (aka. "singularity robust inverse" or "damped least squares")

- find a projection into the null space of the Jacobian or that of a lower-rank approximation and solve lower priority tasks in that space

- use the range of the Jacobian to measure "manipulability" or agility in task space, e.g. as a secondary optimization objective

Re: Robotics 501: Mathematics for Robotics

#48
post #2

This may be a fine course, but there seems to be nothing specific to robotics here. Not even control theory.

This is a class in the Robotics program at University of Michigan, which has a long and deep history in control theory and related topics. The detail you're missing is that the control theory classes are for both Robotics students and general EE's, ME's, Aerospace Engineers, etc, so they're not going to get combined with this. The thing this lets people avoid is the EE linear systems theory class, which broadly cover…

No post body was provided.

Re: Robotics 501: Mathematics for Robotics

#49
post #6

Honest question (am a prof. of Maths for engineering at a Spanish Univ. and am wondering about this a lot): What is the point of explaining, say the QR factorization or iterative methods like Gauss-Jordan to engineers ? I think of them as the method of integration of rational functions (the complete method, not the basic cases): totally useless today ... I understand, for example, the Jordan decomposition theorem in…

> What is the point of explaining, say the QR factorization (...) engineers?

As a personal data point, I'm a mathematician that regularly teaches the QR and SVD factorizations to engineers. Not because I find them interesting, but because they need it for their daily jobs and they ask me to.

More precisely, they are engineers working in the geometrical modelling of satellite sensors, doing "computer vision" from satellite images. The QR and SVD factorizations of 3 and 4-dimensional matrices are essential tools for the bundle adjustment steps, to represent the position and orientation of each satellite and the transformations between them. A crucial idea (for them) is that A=QR is a unique decomposition of A which is also continuous (the coefficients of Q and R depend smoothly on the coefficients of A). On the contrary, the SVD decomposition is neither unique nor continuous. Since the SVD provides an easier-to-use decomposition, you want to use it whenever possible, but being careful to never assume continuity nor uniqueness; if you need these properties then you pick the QR.

Re: Robotics 501: Mathematics for Robotics

#50
post #18

Earlier quoted context omitted.

It sort of depends upon the course. This particular syllabus looks like a really standard linear algebra course (I have no idea what is robotics-specific about it), and so of course Gauss-Jordan would show up there. More generally, though, I think there are two main reasons to put algorithms like Gauss-Jordan in the engineering curriculum. 1. While it would be nice to treat linear algebra solvers as a perfect black b…

I really agree with your comments; especially number 1. Often I can't use some black box implementation of an solver (or other algorithm for that matter) without some modifications. Numerical stability is a big one but also just performance. Sometimes the mathematically correct way of doing something is not always the best in practice. Short cuts and approximations can provide huge benefits. It is difficult to make t…

One example is that GJ stops being generally efficient in arbitrary precision settings. Many people will never have to deal with this, but if you are doing cryptography, it matters.

For example, while you can use GJ to calculate the determinant of a matrix, this can easily become exponential, and for integer matrices (or generally for matrices over division rings), there is an alternative method (the Bareiss algorithm) that is actually efficient.

Post reply on HN