Old Well

Department of Computer Science
College of Arts and Sciences
The University of North Carolina at Chapel Hill

COMP590-072: Robotics

COMP 590-072
Robotics: An Introduction

Instructor: Ming C. Lin


  • Course Overview
  • Lectures and Approximate Schedule
  • Assignments and Projects
  • Geometric Algorithms & Software Available on the Web
  • Additional Reference Materials
  • Conferences in Related Areas
  • Line



    Robotics is the study of robot design, programming, and control. Typically a robot is refered to as an agent that can be programmed to perform a variety of tasks -- both with and without human intervention. A robot is often manifested and realized by mechanical and electrical components to carry out its actions in the physical world. Robots frequently receive input from noisy sensors, consider geometric and mechanical constraints, and operate in the physical world through imprecise actuators. The design and analysis of robot algorithms and computational elements, therefore, raises a unique combination of questions in computational and differential geometry, algorithm design, control theory, mechanics, computer science, and system engineering.

    In this course, we will give an overview on fundamental components of robotic systems, including the sensing and actuation, control and modeling of motion and perception, dynamics and kinematics, motion planning and manipulation of robots. Students will learn about implementation of basic simulation programs that produce interesting results and verify its correctness. The goal of this class is to get students an appreciation of computational methods and engineering issues for modeling robots. We will discuss various considerations and tradeoffs used in designing various methodologies (e.g. time, space, robustness, and generality). This will include data structures, algorithms, computational methods, simulation techniques, runtime complexity, system implementation and integration, in the context of multi-disciplinary design. The lectures will also cover some applications of robotics to the following areas:

  • Computer Animation
  • Virtual Environments
  • Haptic Rendering & Interfaces
  • Medical Training & Robot Assisted Operations
  • Design Automation and Rapid Manufacturing
  • Bio-informatics and Computational Chemistry
  • Sensor Networks & Distributed Robotic Systems
  • Furthermore, scientists have discovered that designs in the natural world can be successfully exploited to create engineered artifacts. Over the last several years, robotists have come up with several new robot designs that are based on biological entities. These new designs offer significant benefits over the traditional robot designs. Thus, a central part of the course will also cover the fundamentals and applications of biologically inspired robots. If time allows, we will also examine recent development on modular and reconfigurable robots, as well as simultaneous localization and mapping (SLAM).




    Here is a list of TENTATIVE lecture topics (subject to changes). Schedule and information on each topic (e.g. readings, web pointers) will be added during the semester before each class.

  • Overview (Thur, Aug 24, 2008)
  • Introduction to Sensing & Computer Vision (Tues, Aug 29, 2008)
  • Introduction to Actuation & Kinematics (Thur, Aug 31, 2008)
  • Rigid Body Dynamics (Tues, Sept 5, 2008)
  • Articulated Body Dynamics (I) (Thur, Sept 7, 2008)
  • Articulated Body Dynamics (II) (Tues, Sept 12, 2008)
  • Overview of Bioinspired Robotics (Thur, Sept 14, 2008)
  • Design of Multi-Disciplinary Robot Systems (Tues, Sept 19, 2008)
  • Geometric & Spatial Reasoning (Thur, Sept 21, 2008)
  • Course Project Proposal (Tues, Sept 26, 2008)
  • Collision Detection: Rigid Objects (Thur, Sept 28, 2008)
  • Collision Detection: Articulated Bodies (Tues, Oct 3, 2008)
  • Collision Detection: Deformable Models (Thur, Oct 5, 2008)
  • Introduction to Motion Planning (Tues, Oct 10, 2008)
  • Motion Planning: Dynamic Environments (Thur, Oct 12, 2008)
  • Motion Planning: Deformable Robots (Tues, Oct 17, 2008)
  • FALL BREAK (Oct 19-22, 2008)
  • Planning for Multiple Agents (Tues, Oct 24, 2008)
  • Control Techniques (Thur, Oct 26, 2008)
  • Fundamentals of Optimization (Tues, Oct 31, 2008)
  • Mid-term Project Demonstration (Thur, Nov 2, 2008)
  • Knowledge Representations (Tues, Nov 7, 2008)
  • Ontologies, Taxonomies & Formal Specifications (Thur, Nov 9, 2008)
  • Applications: Introduction to Haptics (Tues, Nov 14, 2008)
  • Applications: 6-DOF Haptic Rendering (Thur, Nov 16, 2008)
  • Applications: TBD (Tues, Nov 21, 2008)
  • THANKSGIVING (Nov 23, 2008)
  • Applications: TBD (Tues, Nov 28, 2008)
  • Special Topics: Modular & Reconfigurable Robots?? (Thur, Nov 30, 2008)
  • Special Topics: SLAM??? (Tues, Dec 5, 2008)
  • Line


    Line The class grade of each student is determined by
  • Lab Assignments (60%)
  • Class Presentation (15%)
  • Final Project (25%)
  • Line


    Line Here are just some possible locations to find geometric software/libraries and algorithmic toolkits you may need:
  • Internet Finite Element Resources
  • A comprehensive collection of geometric software
  • CGAL: Computational Geometry Algorithms Library (in C++)
  • LEDA: Library of Efficient Datatypes and Algorithms (in C++)
  • The Stony Brook Algorithm Repository: Implementation in C, C++, Pascal and Fortran
  • CMU's Computer Vision Homepage
  • Finite element mesh generation and More
  • Machine learning resources
  • Line



    Some Reference Books in Robotics:

  • Planning Algorithms, by Steven LaValle. Cambridge University Press, 2008.
  • Probablistic Robotics, by S. Thrun, W. Burgard, and D. Fox. MIT Press, 2005.
  • Principles of Robot Motion: Theory, Algorithms, and Implementation, by H. Choset, K. Lynch, S. Hutchinson, G. Kantor, W. Burgard, L. Kavraki, and S. Thrun. MIT Press, 2005.
  • Introduction to Robotics: Mechanics and Control, by J.J. Craig. Prentice Hall, 3rd edition, 2003,
  • Robot Motion Planning, by Jean-Claude Latombe. Kluwer Academic Publishers, 1991.
  • Robot Manipulators: Mathematics, Programming, and Control, by Richard Paul. MIT Press, 1981.
  • Amphibionics: Build Your Own Biologically Inspired Reptilian Robot, by Karl Williams. McGraw-Hill/TAB Electronics, 2003.
  • Robot Building for Beginners, by David Cook. APress, 2002.
  • Biomimetic Sensor Technology, by Kiyoshi Toko. Cambridge University Press, 2000.
  • Other Reference Books in Mechanics:

  • Concepts and Applications of Finite Element Analysis, by R. D. Cook, D. S. Malkus and M. E. Plesha, John Wiley & Sons, 1989.
  • Finite Element Procedures, by K.-J. Bathe, Prentice Hall, 1996.
  • First Course in Continuum Mechanics, by Y.C. Fung, Prentice Hall, 1993.
  • Other Reference Books in Numerical Methods:

  • Numerical Recipes, by Press, Flanner, Teukolsky and Vetterling, Cambridge University Press.
  • Handbook of Numerical Analysis, edited by Ciarlet and Lions, Vol. I - VI, North-Holland, 1994.
  • Other Reference Books in Geometry:

  • Computational Geometry (Algorithms and Applications), by de Berg, van Kreveld, Overmars and Schwarzkofp, Springer-Verlag, 1997.
  • Computational Geometry In C (Second Edition), by O'Rourke, Cambridge University Press, 1998.
  • Handbook on Discrete and Computational Geometry, by Goodman and O'Rourke (eds), CRC Press LLC, 1997.
  • Applied Computational Geometry: Toward Geometric Engineering, by Lin and Manocha (eds), Springer-Verlag, 1996.
  • Algorithms in Combinatorial Geometry, by Edelsbrunner, Springer-Verlag, 1987.
  • Computational Geometry (An Introduction), by Preparata and Shamos, Springer-Verlag, 1985.
  • Other Related Reference Books in Computer Animation:

  • Making Them Move: Mechanics, Control and Animation of Articulated Figures, by Badler, Barsky and Zelter, Morgan Kaufmann Publishers, 1991.
  • Line

    For more information, contact Ming C. Lin, lin@cs.unc.edu.

    Copyright 2008. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the author.

    This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author's copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder.