Motion and Manipulation 2019/2020

Teacher: Frank van der Stappen
office: Buys Ballotgebouw 4.22


November 21: Final grades are now available in Osiris. Send an email if you want to know your grade for the written test or want to make an appointment to see your work.


Motion and manipulation are key issues in the field of robotics and automation, but they also play a major role in virtual environments and games. We will study models and planning problems for tasks that involve motion or manipulation. The course will provide a solid basis in kinematics, which studies the motion of a body without taking into account its mass or the forces acting on it. We will consider representations of rotations, orientations, and rigid transformations. Our study of manipulation concentrates on forward and inverse kinematics for articulated structures such as arms, models for grasp analysis based on velocities and forces, and on simple non-prehensile forms of manipulation such as pushing. In addition we will focus on the fundamentals of control and sensing, configuration spaces, and collision detection.


Parts of Chapters 1, 2, 3, 4, 5, 6, 13, and 15 of the book Theory of Applied Robotics by Reza N. Jazar (which can be read online at Utrecht University), parts of Chapters 2, 3, 4, 5, and 7 of the book Mechanics of Robotic Manipulation by Matthew T. Mason, parts of Chapters 1 and 2 from the no longer available book Fundamentals of Robotics: Analysis and Control by Robert J. Schilling, and parts of Chapters 3 and 4 from the book Collision Detection in Interactive 3D Environments by Gino van den Bergen. These chapters are supplemented by slides and class-room notes. Copies of the relevant pages of the book by Schilling are available for reference, and copies of the relevant pages of the book by Van den Bergen are also available for reference

Exam form

The final grade depends on a written test (60 %), a practical research exercise about inverse kinematics (20 %), and two homework exercises about calculus and linear algebra (10%) and configuration spaces (10%).

Written test

The test covers all material treated in class plus all designated chapters from the aforementioned books. A concise formula sheet will be provided at the test. The grade for the written test should be at least 5.0 to pass the entire course. An example of a written test can be found here, along with the supplementary figure for exercise 4. And here is another example.

Practical research exercise

The practical research exercise considers forward and inverse kinematics for a human finger. You are free to choose any of the fingers. The exercise can be carried out in pairs. Send an email to the teacher to register; make sure the message lists the team members and the finger you have selected. A short report (of ideally 3000-5000 words) should be written about the modeling steps, your research questions, and the experimental findings. The grade for the practical exercise should be at least 5.0 to pass the entire course. The deadline for handing in the report (on paper) is Friday October 25 at 13:15. After the deadline you will have a short meeting with Maarten Löffler to discuss and demo your solution. Be sure to bring your own laptop to this meeting. Your team can sign up for a meeting here.

Homework exercises

The first individual homework exercise concerns essential calculus and linear algebra (for the Game and Media Technology master program). The exercise will be distributed on Friday September 13. The deadline for handing in your handwritten solutions is Wednesday September 18 at 15:15.

The second individual homework exercise considers relevant notions in configuration space. The exercise will be distributed on Wednesday October 16. The deadline for handing in the solutions is Wednesday October 23 at 15:15.

Course schedule

The schedule below shows the tentative dates and times.

Date Time Material Slides (pdf)
Fri Sep 6 13:15-15:00 introduction and organization::
no textbook material
introductory slides
Wed Sep 11 15:15-17:00 robotics esstentials:
no textbook material
calculus: linear algebra:
no textbook material
robotics slides
calculus slides
Fri Sep 13 13:15-15:00 calculus: functions:
no textbook material
geometric modeling:
J: Section 1.1, 1.2, 1.3 + notes on modeling
geometric modeling slides
Wed Sep 18 15:15-17:00 rotation kinematics:
S: Section 2.1, 2.2, 2.3;
J: Section 2.1, 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, 2.8, 2.9
kinematics slides: rotations
Fri Sep 20 13:15-15:00 orientation kinematics:
J: Section 3.1, 3.2, 3.3, 3,4
kinematics slides: orientations
Wed Sep 25 15:15-17:00 rigid transformations:
S: Section 2.4;
J: Section 4.1, 4.2, 4.3, 4.4
kinematics slides: rigid transformations
Fri Sep 27 13:15-15:00 forward kinematics:
S: Section 2.5, 2.6, 2.7, 2.8;
J: Section 5.1, 5.2, 5.3
forward kinematics slides
forward kinematics slides: example arm
forward kinematics slides: branches and cycles
Wed Oct 2 15:15-17:00 inverse kinematics:
J: Section 6.1
inverse kinematics slides
Fri Oct 4 13:15-15:00 inverse kinematics:
J: Section 6.2, 6.3
(see inverse kinematics slides above)
Wed Oct 9 no lecture - -
Fri Oct 11 13:15-15:00 trajectory generation:
J: Section 13.1, 13.2, 13.3, 13.4
control and sensing:
J: Section 15.1, 15.3, 15.4
trajectory generation slides
control slides
Wed Oct 16 15:15-17:00 configuration spaces and obstacles:
no textbook material
configuration space slides
Fri Oct 18 13:15-15:00 collision detection: narrow phase:
B: Section 3.3, 4.1, 4.2, 4.3
collision detection: broad phase:
no textbook material
collision detection slides
Wed Oct 23 15:15-17:00 form closure grasps and caging:
M: Sections 2.1, 2.2, 2.3, 2.4, 2.6, 5.6
form closure and caging slides
Fri Oct 25 13:15-15:00 force closure grasps:
J: Sections 4.8, 4.9;
M: Sections 3.2, 3.3, 5.1, 5.2, 5.3, 5,7
force closure slides
Wed Oct 30 15:15-17:00 non-prehensile manipulation:
M: Section 7.4
manipulation slides
Fri Nov 1 13:15-15:00 solutions to example exam

J = Theory of Applied Robotics by Reza N. Jazar,
M = Mechanics of Robotic Manipulation by Matthew T. Mason,
S = Fundamentals of Robotics: Analysis and Control by Robert J. Schilling,
B = Collision Detection in Interactive 3D Environments by Gino van den Bergen.,