Perception, Planning, and Control
© Russ Tedrake, 2020-2024
Last modified .
How to cite these notes, use annotations, and give feedback.
Note: These are working notes used for a course being taught at MIT. They will be updated throughout the Fall 2024 semester.
Previous Chapter | Table of contents | Next Chapter |
In particular, while the C++ API documentation is excellent, the autogenerated python docs are still a work in progress. I currently recommend using the C++ documentation to find what you need, then checking the Python documentation only if you need to understand how the class or method is spelled in pydrake.
There are also a number of tutorials in
I will provide nearly all examples and exercises in the form of a Jupyter Notebook so that we can leverage the fantastic and relatively recent availability of (free) cloud resources.
We'll use Deepnote as the primary platform for the course. After following any of the links from the chapters, you should:
You can enabled more powerful solvers for
MathematicalProgram
if you have a license (most are free for
academics). Please see
for instructions.
As you get more advanced, you will likely want to run (and extend) these examples on your own machine. On platforms/configurations that Drake supports (the latest two releases of Mac and Ubuntu using the system default python versions). The simplest installation is via pip
; I would typically recommend using a virtual environment:
python3 -m venv venv
source venv/bin/activate
pip3 install manipulation --extra-index-url https://drake-packages-csail-mit-edu.ezproxy.canberra.edu.au/whl/nightly/
PYTHONPATH
.
If you want to download all of the notebooks at once, you can git
clone
the course notes
repository. You'll likely want to start from the repository's root directory.
Then launch your notebook with:
jupyter notebook
The examples for each chapter that has them will be in a .ipynb file
right alongside the chapter's html file, and the notebook exercises are
all located in the exercises
subdirectories.
If you have trouble with
Previous Chapter | Table of contents | Next Chapter |