Continuum robots differ fundamentally from traditional robots, as they are jointless structures. Their appearance is evocative of animals and organs such as trunks, tongues, worms, and snakes. Composed of flexible, elastic, or soft materials, continuum robots can perform complex bending motions and appear with curvilinear shapes. Continuum robots have a high potential to navigate and operate in confined spaces currently unreachable to standard robots, as their diameter to length ratio can be as low as 1:300. Typical applications are in minimally invasive surgery or in maintenance, repair and operation. This introductory course covers the fundamentals of continuum robot design, modelling, planning, and control. Students will code their own continuum robot simulator.

Learn more about CSC476H5S.

An introductory course to robotics for computer scientists laying the foundations for advanced robotics courses. Students learn to:

  • Identify a robot’s design and analyze its kinematic structure
  • Understand and analyze performance parameters of robots
  • Use the DH-convention to establish the forward kinematics of a serial robot
  • Establish and implement the forward and velocity kinematics using the product of exponentials formula for serial robots
  • Derive the inverse kinematics for a serial robot
  • Compute and implement robot motion
  • Describe concepts of robot control
  • Understand concept of kinematic redundancy and its implications on robot motion
  • Utilize robot simulation software (Gazebo)


Students will learn learn important data structures and abstract data types useful for both organizing programs and making them faster; and to reason about the efficiency of algorithms. The course covers:

  • Algorithm analysis: worst-case, average-case, and amortized complexity
  • Standard abstract data types, such as graphs, dictionaries, priority queues, and disjoint sets
  • A variety of data structures for implementing these abstract data types, such as balanced search trees, hashing, heaps and disjoint forests
  • Design, implementation and comparison of data structures. Introduction to lower bounds.

Learn more about CSC263H5S.

Students will learn basic methodologies, tools, and concepts to build a foundation for advanced topics in robotics (CSC476, CSC477, CSC2621). Concepts covered in the course are robot components and designs; rigid body motions; forward, velocity and inverse kinematics; trajectory generation and motion planning.