Required Courses
All students must take the following three courses.
-
CS 6310/ME 6220 Introduction to Robotics (3,F).
Steve Mascaro, instructor for Fall 2007.
Prereq: CS 1000, MATH 2250, PHYCS 2220.
-
The mechanics of robots, comprising kinematics, dynamics,
and trajectories. Planar, spherical, and spatial
transformations and displacements. Representing orientation:
Euler angles, angle-axis, and quaternions. Velocity and
acceleration: the Jacobian and screw theory. Inverse
kinematics: solvability and singularities. Trajectory
planning: joint interpolation and Cartesian
trajectories. Statics of serial chain mechanisms. Inertial
parameters, Newton-Euler equations, D'Alembert's
principle. Recursive forward and inverse dynamics.
- ME 6960 (Section 4) Introduction to Robot Control (3,S).
Mark Minor, instructor.
Prereq: CS 6310/ME 6220.
- Control of manipulation and mobile robots is studied.
Topics include control system fundamentals, sensors and
actuators, joint level control, centralized control, and
operational space control. Projects provide hands on
experience controlling a serial link manipulator.
-
CS 6370 Geometric Computation for Motion Planning (3,F).
David Johnson, instructor. Prereq: CS 1020, MATH 2250.
- Geometric computation is the study of practical algorithms
for solving queries about geometric properties of computer
models and relationships between computer models. Robot
motion planning uses these algorithms to formulate safe
motion through a modeled environment. In addition,
algorithms for geometric computation are used in computer
animation, simulation, computer-aided design, haptics, and
virtual reality. Topics to be covered in this course are
spatial subdivision and model hierarchies, model
intersection, distance queries and distance fields, medial
axis computations, configuration space, and motion
planning. The course will rely on lectures, readings, and
projects to provide understanding of current practices in
the field.
Restricted Electives
M.S. students must take one course from each of the following three
areas. Ph.D. students are required to take a fourth course from this
list.
- Perception.
- CS 6320
Computer Vision (3, S of odd years). Tom Henderson, instructor.
Prereq: CS 3510, MATH 2210, MATH 2270.
-
Basic pattern-recognition and image-analysis techniques,
low-level representation, intrinsic images, ``shape from''
methods, segmentation, texture and motion analysis, and
representation of 2-D and 3-D shape.
- CS 6640
Image Processing for Graphics and Vision (3,S). Ross Whitaker,
instructor. Prereq: Programming, data structures, linear
algebra, calculus.
-
This is an introductory course in processing grey-scale and color
images --- taught at the senior/grad level. This course will
cover both mathematical funadmentals and implementation. It will
introduce students to the basic principles of processing digital
signals and how those principles apply to images. These
fundamentals will include sampling theory, transforms, and
filtering. The course will also cover a series of basic
image-processing problems including enhancement, reconstruction,
segmentation, feature detection, and compression. Assignments
will include several projects with software implementations and
analysis of real data.
(The current course number CS 7966 is temporary.)
- Cognition.
- CS 6300
Artificial Intelligence (3,S). William Thompson instructor.
Prereq: CS 3510.
-
Introduction to the field of artificial intelligence, including
heuristic programming, problem-solving, search, theorem proving,
question answering, machine learning, pattern recognition, game
playing, robotics, computer vision.
- CS 6350
Machine Learning (3,S). Hal Daume, instructor. Prereq: CS
3510. CS 5300/6300 recommended.
-
Techniques for developing computer systems that can acquire new
knowledge automatically or adapt their behavior over time. Topics
include concept learning, decision trees, evaluation functions,
clustering methods, explanation-based learning, language
learning, cognitive learning architectures, connectionist
methods, reinforcement learning, genetic algorithms, hybrid
methods, and discovery.
- CS 6380
Multiagent Systems (3, not currently scheduled). Tom Henderson,
instructor. Prereq: Knowledge of programming, data structures,
processes, language syntax, Matlab or C.
- Covers fundamental notions of (1) software agents,
including: autonomy, communication, persistence, and
intelligence; and (2) multiagent systems, including:
communication standards, cooperation, competition and
coordination. Methods will be applied to a practical application
(usually in Matlab or C).
- Action.
-
ME5960/6960 Advanced Mechatronics (3, S of odd years). Will
Provancher, instructor. Prereq: undergraduate mechatronics or
embedded systems course; course in basic electrical circuits; and
course in C programming (or permission from instructor).
- This course gives students an experience in integrating
electromechanical systems by utilizing a commodity
microcontroller. Students will review basic electronics, and then
focus more directly on the basics of microcontrollers, learning
to interface a PIC microcontroller with a broad variety of
peripheral devices including motor drivers, LCDs, shift
registers, DAC and encoder chips among others. The course will
also emphasize the basics of serial communication, including
wireless serial communication. The course will culminate with a
biocentric themed group term project. Students will leave the
course with a broad set of skills necessary to build custom
embedded systems through the use of a microcontroller and
off-the-shelf components.
- CS 6360
Virtual Reality (3, S of even years). David Johnson, instructor.
Prereq: CS 6310/ME 6220.
-
Human interfaces: visual, auditory, haptic, and locomotory
displays; position tracking and mapping. Computer hardware and
software for the generation of virtual environments. Networking
and communications. Telerobotics: remote manipulators and
vehicles, low-level control, supervisory control, and real-time
architectures. Applications: manufacturing, medicine, hazardous
environments, and training.
- ME 7200 Nonlinear Controls (3, S of even years).
Instructor: Mark Minor. Prerep: ME 6210 or 5210 and ME
Graduate status.
- The modeling, analysis, and control of nonlinear systems are
discussed.
- CS 7310/ME 7230 Advanced Manipulation and Locomotion (3, S of
odd years) Instructor: Mark Minor. Prereq: CS 6310/ME
6220.
- This course will examine grasping, rolling, and sliding
manipulation from two perspectives; (1) manipulating the
pose of an object with an end-effector via grasping,
rolling, and sliding manipulation, and, (2) manipulating the
trajectory of a mobile robot via the rolling and sliding
contact of wheels, feet, or curved exoskeletons and the
ground.
- CS
7320/ME 7960 (section 7) System Identification for
Robotics (3, S of even years). John Hollerbach, instructor.
Prereq: CS 6310/ME 6220.
-
Modeling and identification of the mechanical properties of
robots and their environments. Review of probability and
statistics. Parametric versus nonparametric estimation. Linear
least squares parameter estimation, total least squares, and
Kalman filters. Nonlinear estimation and extended Kalman
filters. State estimation. Specific identification methods for
kinematic calibration, inertial parameter estimation, and joint
friction modeling.
(The current numbers CS 7961 and ME 7960 Section 7 are temporary.)
-
CS 7939/ME 7960-001 Seminar in Robotics (1,FS).
John Hollerbach, coordinator. Prereq: none.
-
The Robotics Seminar is intended for all robotics students, and for
students wishing to learn more about robotics and robotics research at
Utah. It is a chance for the Utah robotics community to get together
on a weekly basis. The course will feature overviews of research
projects by the robotics faculty, technical presentations by robotics
graduate students, and discussions of recent trends and important
results elsewhere. Students enrolled for this 1-credit course will be
expected to choose a topic or paper in robotics, and write and present
a critique.
|