4 ms·
I teach a class on the subject: https://www.youtube.com/playlist?list=PLdkTDauaUnQpzuOCZyUUZc0lxf4-PXNR5 https://www.youtube.com/playlist?list=PLdkTDauaUnQpzuOC
by jpfr 5y ago
I teach a class on the subject: https://www.youtube.com/playlist?list=PLdkTDauaUnQpzuOCZyUUZc0lxf4-PXNR5 https://www.youtube.com/playlist?list=PLdkTDauaUnQpzuOCZyUUZ...
Understanding optimization at this level and being able to formulate your own problems in one of the canonical forms gives you super powers.
You don’t even have to build your own solvers. The commercial/open source ones are typically good enough.
- stochtastic 5y agoThese lectures look fantastic — thank you for making and sharing them! I've been looking for a good foundational treatment of optimization to digest over the holidays.
- phkahler 5y ago>> You don’t even have to build your own solvers. The commercial/open source ones are typically good enough. But as a maintainer of solvespace (Open Source CAD software with geometric/algebraic constraint system) I am left wondering if this can be applied to our constraint solver, which I didn't write. It solves systems of algebraic constraints using some form of Newtons method, partial derivatives, jacobian... All stuff I'm familiar with, but not in great detail. Figuring out how best (and weather) to apply this might be a major digression ;-)
- jpfr 5y agoAfter following the course, you should be able to grok the solver code in /src/system.cpp. That looks fairly standard. The interesting part (to me, as that is not my specialty) lies in the translation of the 3D constraints (including rotation, etc.) into a single objective function for solving Newton-style.
- phkahler 5y ago>> The interesting part (to me, as that is not my specialty) lies in the translation of the 3D constraints (including rotation, etc.) into a single objective function for solving Newton-style. That's funny - I like the geometry stuff and have a good grasp of how to create useful constraint equations. I just don't know too much about the code for solving systems of those equations ;-)
- gugagore 5y agoThere are probably many ways to formulate the same geometric constraint. For example, what parameterization of rotations do you use? I think the choice has implications for how easy it is to solve the equations.
- phkahler 5y ago>> For example, what parameterization of rotations do you use? For orientation we use quaternions. For other things it's an axis-angle representation. For the equal angle constraint I'm not sure how that's implemented. There was a recent addition of length-ratio between lines and arcs. That implementation was surprising to me.
- CharlesHorsey 5y agoAre the exercises that go with the lectures available? Thank you!