Syllabus: CS 5970-002: Mobile Manipulation (Spring 2012)
Mobile Manipulators are robotic systems that are capable of
navigating through and interacting with unstructured environments in
order to perform a wide range of tasks. Designing control systems for
this domain is a non-trivial process, due in part to the complexities
of constructing and manipulating flexible and extensible
representations of the environment, motor action and task. In this
seminar course, we will study the representation, learning,
planning and control techniques that are currently driving this field
- Meeting time: Tu/Th 1:30-2:45
- Location: CEC 123
- Prerequisites: permission of the instructor. Students need to
have a solid background in a language such as C or C++ (or an
ability to learn quickly) and mathematics (linear algebra, calculus,
probability and statistics). Useful background includes: artificial
intelligence, machine learning, robotics, control systems, and/or
- Reading Materials: we are drawing from online sources for our reading.
- We will be doing all of our robot simulation and control
work within the Robot
Operating System (ROS). This package is available for
free, but works primarily under the Ubuntu distribution of
linux. You are responsible for making sure that you have
adequate access to ROS (note that it is installed on the
linux machines in the DEH cluster).
Other key materials:
Course web page:
- We will also be making heavy use of Desire to Learn
- Instructor: Dr. Andrew H. Fagg
Course Goals and Topics
By the end of this course, you should be able to:
- read and present technical materials in the areas of machine learning and robotics;
- employ techniques for planning (and replanning) courses of action to achieve a goal;
- design, implement and debug control systems for integrated sensory processing and control; and
- work in collaborative teams.
This is a very hands-on class: every student will
be involved in the design, implementation, and programming for the
project work. Note that this component of the class will
involve a non-trivial amount of time; students should plan their
Topics will include:
- Grounding conceptual knowledge in sensorimotor interaction.
- Constructing generalizable, task-oriented representations of the
robot, environment and task.
- Planning under uncertainty and with incomplete information.
- Human-robot interaction for learning and cooperative task execution.
- Integrated planning and execution of whole body movements.
- Grasp/manipulation planning and execution.
- Attendance: This is a very discussion-oriented course.
While keeping up with the readings is an important step to
take, it is not a substitute for attending class.
- Class Web Page: Most of the material that you will need
can be found on the class web page located at:
- Desire to Learn: This class will also use D2L, located at:
Login with your 4+4 (typically the first four letters of
your last name followed by the last four digits of your student
number), using your standard OU password. If you have difficulty
logging in, call 325-HELP. This software provides a number of useful
features, including a list of assignments and announcements, an
electronic mailing list, newsgroups, and a grade book.
I will update the main web site and the D2L page several
times a week. When I update the site in any significant way, I will
post an announcement on D2L telling you what has been added
and where it is located. You are responsible for things posted on the
site within 48 hours of the post.
- Class Email Alias: Urgent announcements will be sent
through email. It is your responsibility to:
- Have your university supplied email account properly forwarded to the location where you
- Make sure that your email address in D2L is correct, and forwards email to the place
where you read it. I'll send out a test message during the first week of class. If you do not
receive this message, it is your responsibility to get the problem resolved immediately.
- Have your email program set up properly so that replying to your email will work correctly the
first time. You can send email to yourself and reply to yourself to test this. I will not make any
attempt to get bounced email messages delivered.
If you need assistance in accomplishing any of these tasks, contact 325-HELP.
- Final Examination: The final exam period is Friday, May
11th from 1:30 to 3:30. We will use this time for final
demonstrations and presentations.
- Newsgroups and Email: The newsgroup on D2L should
be the primary method of communication (outside of class). This
allows everyone in the class to benefit from the answer to your
question, and provides students with more timely answers since I and
the rest of the students will read your message and can respond. Matters of
personal interest should be directed to email instead of to the
newsgroup, e.g. informing me of an extended personal illness. Posting
guidelines for the newsgroup
are available on D2L.
- Proper Academic Conduct:
For each of the paper readings, everyone will be turning in a half page
summary of each research paper. This writing is to be your own.
For the project work, everyone is expected to make a nontrivial
personal contribution. This contribution can include the design and
development of different components of the robot control system, a
detailed presentation or document that explains the proper use
of complicated external components, the
development of a useful "world" that the robots can manipulate,
or the nontrivial assembly of existing components to solve a
larger problem. Project work will be done in groups of 2-3.
However, we will be sharing components across groups and we will
be drawing components from the net. When you adopt a component from
outside of your group, you must properly document its
Handing in written summaries that are not your own or
claiming code to be yours when it is not is considered cheating
and will result in the submission of a academic misconduct
The complaint will be submitted to
the OU Academic Integrity Office. Details of the procedures are
available at the
OU Integrity Website.
Note that the programs and the written summaries will be checked by
software designed to improper copying. This software
is extremely effective and has withstood repeated reviews by the campus judicial processes.
- Incompletes: The grade of "I" is intended for the
rare circumstance when a student who has been successful in a
class has an unexpected event occur shortly before the end of
the class. I will not consider giving a student a grade of
"I" unless the following three
conditions have been met.
It is within two weeks of the end of the semester.
The student has a grade of C or better in the class.
The reason that the student cannot complete the class is properly
documented and compelling.
Accommodation of Disabilities: The University of Oklahoma is committed to providing
reasonable accommodation for all students with disabilities. Students with disabilities who
require accommodations in this course are requested to speak with the professor as early in the
semester as possible. Students with disabilities must be registered with the Office of Disability
Services prior to receiving accommodations in this course. The Office of Disability Services is
located in Goddard Health Center, Suite 166, phone 405/325-3852 or TDD only 405/325-4173.
- Classroom Conduct: Because cell phones and laptops can
distract substantially from the classroom experience, students
are asked not to use either during class (except in cases in
which the laptop is required as part of a classroom exercise).
Disruptions of class will also not be
permitted. Examples of disruptive behavior include:
In the case of disruptive behavior, I may ask that you leave the classroom and may charge you
with a violation of the Student Code of Responsibilities and Conduct.
Allowing a cell phone or pager to repeatedly beep audibly.
- Playing music or computer games during class in such a way that they are visible or audible to other class members.
- Exhibiting erratic or irrational behavior.
- Behavior that distracts the class from the subject matter
- Making physical or verbal threats to a faculty member,
teaching assistant, or class member.
- Refusal to comply with faculty direction.
Grades will be computed according to the following distribution:
- In-class participation: 16%
- Paper presentation: 5%
- Twelve written summaries: 24%
- Project work: 55%
All students are expected to actively participate in class
discussions. Come to class with questions, ideas and demonstrations.
Each student will be responsible for presenting
and leading the subsequent discussion for one week's worth of research
papers (this will be either one or two papers). We will settle on the
list of papers and the assignments in the first week of class.
Guidelines for these presentations will be available before the first
A one half page summary of each research paper is due at the beginning
of class on the day that we are discussing the paper. These summaries
must be handed in using D2L. Late or missing summaries will be logged
as a zero grade.
these summaries will be distributed before the first one is due.
The primary unit of project work is a group of 2-3 people. However,
individuals may work on components on their own. Furthermore,
components may be borrowed from other groups in the class or from
existing repositories. Project components are turned in using our
mobile manipulation subversion tree. They may be turned in any time
prior to the final class presentation (but don't wait).
The rules for assessing project grades are as follows:
- A total of 100 individual project points is equivalent to full
project credit for the class (55% of your grade). You will
accumulate project points over the course of the semester.
- A project component is worth a maximum of 30 points. A
component of this size is approximately equal to one person
working for 3 solid weeks (about 18 hours).
- Smaller components will be common and will be worth less than
the 30 points.
- 50% of the component points are earned through the
implementation; 50% are earned through high-level and
function-level documentation (the latter must make use of doxygen).
- Component values are negotiated. Before the component is
complete, you may get an assessment of approximate value.
However, final value is assessed at the time of grading.
- Significant modifications to an already graded component may be
considered as a separate component for grading purposes. In
particular, this will be considered if the modifications are in
response to requests from other groups.
- Project component points are split between the class members
who work on it. Generally, the split will be equal, but the
instructor is open to other splits.
- You may officially release your component to the entire class.
If another group uses your component for one of their graded
components, then you may receive up to 10% of their grade (this
10% is not subtracted from the other group). This
"trickle-down" is limited: if one group repeatedly uses your
component for several of their components, then the return will
- Individuals can offer a bounty for the implementation or
modification of a shared component. The agreement must be sent
in email to the instructor and include the number of project
points that you are putting up, the requested functionality and the
expected timeline. Upon completion of the request, the agreed
upon project points will be transferred. The instructor
reserves the right to mediate in any disagreements.
- In order to initiate the grading process, a component must be
presented/demoed in class.
General Grade Issues
- Grade questions: If you have a question about grading
(including assessment of points), you may address these during
office hours or email. Note that if you are asking me to
reconsider a grade, then I will likely re-examine the entire
project. You have one week from the point that you receive
feedback to address grading questions.
- Desire to Learn Grade Summary: D2L has a grade book
that is used to store the raw data that is used to calculate your
course grade. It is the responsibility of each student in this class
to check their grades on D2L after each project. If an error is
found, please bring it to my attention.
Many of the materials created for this course are the intellectual
property of Andrew H. Fagg.
This includes, but is not limited to, the
syllabus, lectures and course notes. Except to the extent not protected
by copyright law,
any sale of such materials
requires the permission of the instructor.
This page is online at http://www.cs.ou.edu/~fagg/classes/mobile_manipulation_2012/syllabus.html
Andrew H. Fagg
Last modified: Tue Jan 17 11:57:49 2012