Due Wednesday 2/15 11:59 PM Eastern.
YouTube link: https://youtu.be/V7i0tQlBLlE
NOTE: You should not use any while loops in this homework. All of these concepts can and should be implemented with for loops for multiple reasons. Using while loops for things like Newton's method and linesearches is more difficult for both you and the TA's to debug.
Fill out project proposal form: https://forms.gle/1XwkwVyVWirtZdF68
In this homework we are going to explore topics in dynamics and optimization. Here is an overview of the problems:
-
Implement 3 explicit and 3 implicit integrators to simulate a double pendulum and examine the differences in accuracy. The goal of this problem is to start thinking about integrators as modular, and demonstrate the difference between explicit and implicit integrators.
-
Write a well structured implementation of Newton's method with a backtracking linesearch. You will use this function to solve a simple constrained optimization problem, then you will use it to solve for the motor torques and configuration for a quadruped to balance on one leg.
-
Implement a Quadratic Program (QP) solver using the Augmented Lagrangian method. This solver will then be used in a clever way to simulate a falling brick as it makes contact with the floor.
-
Fill out project proposal form: https://forms.gle/1XwkwVyVWirtZdF68
Use any method you like to export your jupyter notebook as a PDF (with all the cell outputs shown), and submit on gradescope. Here are some methods for creating this PDF: https://mljar.com/blog/jupyter-notebook-pdf/.