Home Robotics C++ Physics II AP Physics B Electronics AP Java Astronomy Independent Study Summer Session Contests  About
                                                       

Courses at Carnegie Mellon

 

Note: Some additional considerations in choosing a college for Computer Science courses (my opinion)
 
  Where are the Computer Science offerings placed in the hierarchy?
     Is it at least a separate department? It is not at UNM.
     At Carnegie Mellon the courses are beyond department level, they have a school of
     Computer Science.
  How much government or other reasearch money do they receive?
  How current are the courses?
     Are they still offering C and Pascal and not Java and C++?
  How many of the components of the discipline do they offer?
 

Introduction

Manipulation

Vision 1

Machine Learning

Modeling

Neural Networks

Research

Feedback

Control 1

Vision 2

Perception

Sensing-Sensors 1

AI

Databases

Sensors 2

Manipulation

Field Robotics

Mechatronics

MEMS

MR Design

MR Programming 1

MR Programming 2

Humanoids

Autonomous Opns

Control 2

Introduction

 

The following (abbreviated and edited) comments were extracted from Carnegie Mellon's catalog as posted on the Internet.

 

Carnegie Mellon has a school of computer science. It is divided into the following components. In addition to providing instruction, their researchers are active in developing operating systems, programming languages, wearable computers, networks, and robotics.
 
The School of Computer Science hosts seven departments, centers, and institutes as summarized below:
 
  The Center for Automated Learning and Discovery (CALD) pursues basic science in automated learning methods, including data mining, statistical methodology, and knowledge discovery.
  The Computer Science Department (CSD), the oldest degree-granting unit in SCS, provides a solid foundation in the practical and theoretical aspects of building and maintaining systems as well as the tools needed to adapt easily to changing technologies.
  The Entertainment Technology Center (ETC) is based on the principle of having technologists and fine artists work together to create new processes, tools, and visions for storytelling and entertainment.
  The Human-Computer Interaction Institute (HCII), the largest and most diverse group of HCI researchers anywhere in the world, is devoted to the design, implementation, and evaluation of interactive computer-based technology.
  The Institute for Software Research, International (ISRI) creates innovative solutions to the problems of practical, large-scale, and high-quality software-intensive systems.
  The Language Technologies Institute (LTI) draws on Carnegie Mellon's longstanding accomplishments in the natural language processing of written and spoken language and information management.
  The Robotics Institute (RI), founded in 1979 to conduct basic and applied research in robotics technologies relevant to industrial and societal tasks, and it is recognized worldwide as one of the premier organizations of its kind.
 
Robotics Courses Offered.
 
Below is a partial list of courses for which the Robotics Program currently grants credit toward the core and specialized qualifiers.
 
The Robotics Program offers all courses with a "16-" prefix. Other departments offering courses accepted by the Robotics Program are Computer Science (CS), Electrical and Computer Engineering (ECE), Mechanical Engineering (MechE), Statistics (Stat), Psychology (Psych), the Graduate School of Industrial Administration (GSIA), and the Institute for Complex Engineered Systems (ICES).
 
15-384: Robotic Manipulation (CS)

Foundations and principles of robotic manipulation. Topics include computational models of objects and motion, the mechanics of robotic manipulators, the structure of manipulator control systems, planning and programming of robot actions.
 
15-385: Computer Vision (CS)

Basic concepts in machine vision, including sensing and perception, 2D image analysis, pattern classification, physics-based vision, stereo and motion, and solid model recognition.
 
15-781: Machine Learning (CS)

Machine Learning is concerned with computer programs that automatically improve their performance through experience. This course covers the theory and practice of machine learning from a variety of perspectives. We cover topics such as learning decision trees, neural network learning, statistical learning methods, genetic algorithms, Bayesian learning methods, explanation-based learning, and reinforcement learning. The course covers theoretical concepts such as inductive bias, the PAC and Mistake-bound learning frameworks, minimum description length principle, and Occam's Razor. Programming assignments include hands-on experiments with various learning algorithms. Typical assignments include neural network learning for face recognition, and decision tree learning from databases of credit records.
 
15-869: Image-Based Modeling and Rendering (CS)

This course will teach how to acquire, represent, and render scenes from digitized photographs. Toward this end, several image-based approaches will be presented, with an emphasis on how to use these techniques to build practical systems. This hands-on emphasis will be reflected in the programming assignments, in which students will have the opportunity to acquire their own images of indoor and outdoor scenes and develop the image analysis and synthesis tools needed to render and view the scenes interactively on the computer. This course will be appropriate for graduate students and advanced undergraduates.
 
15-882: Introduction to Artificial Neural Networks (CS)

A survey of neural net architectures and applications, with an in-depth look at problems in pattern recognition and in knowledge representation.
 
16-199A: Building the Future

The goal of this project course is to teach undergraduates (especially freshmen and sophomores) how to build such things as robots and intelligent environments, and how to get involved in research. In the process we will develop our abilities to predict how technology will affect the future.
 
16-299: Introduction to Feedback Control Systems

This course is designed as a first course in feedback control and systems for computer science majors. Course topics will include systems, dynamic response, feedback control, time and frequency domain analysis, Laplace transforms, state-space design, digital control, and robotic control. Laboratory work will include implementation of controllers for force feedback robotic devices. Priorities will be given to those with robotics minor.
 
16-711: Kinematics, Dynamic Systems and Control

Basic concepts and tools for the analysis, design, and control of robotic mechanisms. Topics covered include foundations of kinematics, kinematics of robotic mechanisms, review of basic systems theory, control of dynamical systems. Advanced topics will vary from year-to-year, including motion planning and collision avoidance, adaptive control, and hybrid control.
 
16-720: Computer Vision

This course deals with the science and engineering of computer vision, that is, the analysis of patterns in visual images of the world with the goal of reconstructing and understanding the objects and processes in the world that are producing them. The emphasis is on physical, mathematical, and information processing aspects of vision.
 
Topics covered include image formation and representation, camera geometry and calibration, multi-scale analysis, segmentation, contour and region analysis, energy-based techniques, reconstruction of based on stereo, shading and motion, 3-D surface representation and projection, and analysis and recognition of objects and scenes using statistical and model-based techniques. The material is based on a recent graduate-level textbook augmented with research papers, as appropriate. The course involves considerable Matlab programming exercises.
 
16-721: Advanced Perception

Advanced issues in robot perception on a rotating basis including sensor design and calibration, model-based and physics-based perception, parallel computing for perception, speech and other non-vision
sensors, and perception system design. This class has a major project component in Robotics research labs.
 
16-722: Sensing and Sensors

The principles and practices of quantitative perception (sensing) illustrated by the devices and algorithms (sensors) that implement them. Learn to critically examine the sensing requirements of proposed applications of robotics to real problems, to specify the required sensor characteristics, to analyze whether these specifications can be realized even in principle, to compare what can be realized in principle to what can actually be purchased, to understand the engineering factors that account for the discrepancies, and to design transducing, digitizing, and computing systems that come tolerably close to realizing the actual capabilities of available sensors.
 
To the extent that time and interest permit, in addition to the sensing requirements of robot function (manipulation, mobility) per se, illustrative applications will also be drawn from the domain of observations that robots are employed to make (e.g., noninvasively locating buried objects or skeletal features, or nondestructively characterizing natural or manufactured materials), and the domain of infrastructures that robotic applications depend on (e.g., broadcast communication and navigation signals).
 
16-731: Fundamentals of AIfor Robotics (also CS 15-780)

Graduate-level introduction to Artificial Intelligence tailored toward the algorithms and applications of robotics, manufacturing, and engineering disciplines. Strong focus on modern numerical approaches to AI and robotics, including Bayes nets, classical decision-theoretical problems such as scheduling, and optimal and learning control of Markov systems. Motion planning and spatial reasoning, neural nets, qualitative reasoning, and fuzzy logic are covered in detail.
 

16-732: Computational Statistics of Multidimenstional Scientific Databases


The course will provide a unified view of the statistical approaches in a number of different fields like image processing, natural language, information retrieval, code theory, computational biology, diagnosis and decision systems, data mining. It will present what it means to construct and to use a statistical model emphasizing the specific computational problems posed by the multidimensionality of the data and the size of the data sets.
 
The course will include direct investigation in a new area that has grown at the boundary of three different CMU schools (Astrophysics, Statistics and Computer Science) in the past 18 months as a result of the instructors' research collaboration called "Computational AstroStatistics": the development and implementation of new, statistically-robust, and computationally highly efficient tools to support large sky astronomical surveys.
 
16-735: Sensor-Based Robotic Motion Planning

Sensor based robotic motion planning incorporates sensor information, reflecting the current state of the environment, into a robot's planning process, as opposed to classical motion planning, which assumes the robot has full knowledge of the world prior to the planning event.
 
6-741: Mechanics of Manipulation

Kinematics, statics, and dynamics of robotic manipulator's interaction with a task, focusing on intelligent use of kinematic constraint, gravity, and frictional forces. Automatic planning based on mechanics. Application examples drawn from manufacturing and other domains.
 
16-762: Topics in Field Robotics

This course investigates topics that are critical in the development of large-scale robotics systems. Such systems include, for example, mobile robots operating in natural, unstructured environments, or automated equipment operating in unstructured environments. Three broad classes of topics will be investigated. Sensing strategies will be presented, including laser range finders, radars, thermal, multispectral and IR
sensing. The discussion will focus on "non-traditional" sensors needed for large-scale systems; conventional sensors such as sonars will not be discussed.
 
Techniques for using sensor data for classification of natural terrain will be discussed. Localization and mapping, in particular state estimation and SLAM techniques will be discussed in detail. Finally, planning techniques will be discussed, with an emphasis on navigation over large areas will be presented. The course assumes basic knowledge of mobile robots and sensors, as covered in 16-761 or 16-862. The classes will combine lectures and seminar-style paper presentations.
 
16-778: Mechatronic Design

Mechatronics is the synergistic integration of mechanism, electronics, and computer control to achieve a functional system. Because of the emphasis upon integration, this course will center around laboratory projects in which small teams of students will configure, design, and implement several mechatronic devices or systems. Lectures will complement the laboratory experience with comparative surveys, operational principles, and integrated design issues associated with the spectrum of mechanism, electronics, and control components.
 
Fourier transforms, the Nyquist sampling theorem, differential equations, numerical methods, calculus of variations, differential geometry, and related topics.
 
16-830: Planning, Execution and Learning (also CS 15-887)

This course will explore both classical and modern approaches to planning. Issues to be discussed include: how to represent actions and world state, how to search for plans efficiently, how to deal with uncertainty in actions and the world state, how to represent time, and how to dynamically combine planning and execution.

 

Specific planning techniques to be covered include: means-ends analysis, linear and non-linear planning, GraphPlan, SatPlan, hierarchical planning, conditional planning, probabilistic planning using Markov models (MDPs and POMDPs), integration of planning, perception and execution, execution monitoring and replanning, planning and learning, and robot (geometric) planning. There are no explicit prerequisites, but a basic knowledge of AI is assumed.
 
16-859: MicroElectroMechanical Systems (MEMS) (also ECE 18-819)

The promise of better performance, lower cost, and miniaturization of sensor and actuator systems has motivated growth in the area of MicroElectroMechanical Systems (MEMS): silicon-based integrated microsystems. MEMS technology has broad applications such as inertial navigation, data storage, biochemical analysis, micromanipulation, optical
displays, and microfluidic jet systems. This course is an introduction to MEMS, intended for first and second-year graduate students in ECE and Robotics who desire the engineering background necessary for research in MEMS at Carnegie Mellon.
 
16-861: Mobile Robot Design

Mobile Robot Design is a unique course offering in that it allows students to design and build a prototype robot. Prior developments include Skyworker, Dante and lunar rover concepts.
The development of a mobile robot requires diverse technical skills and experience. Students will become an integral part of a team of Robotics Institute peers developing a new robot. Through team meetings, guest speakers and system development, students will be exposed to the interrelated effects of electronics, software and mechanisms on the design process. Participants will move a conceptual design from paper to implementation in a fast paced, and multidisciplinary environment.
 
Students will be provided an opportunity to test their ability to apply theoretically sound approaches within the constraints of a real design.
Students with interests in artificial intelligence, navigation, path planning, simulation, machine vision, sensor fusion, control, mechanism design and power systems, are encouraged to enroll. Individuals will gain an understanding of the complexities of integrating systems within a robot, and approaches that mitigate the difficulties, in a learn-through-doing environment.
 
16-862 / 16-362: Introduction to Mobile Robot Programming

This course is a complete, hands-on introduction to Mobile Robot Programming. Using six Nomad Scout robots and portable computers, we will survey topics ranging from low-level control and obstacle avoidance, including PID control, to high-level navigation, planning, robot-robot communication and cooperation.
 
16-863 / 16-363: Advanced Mobile Robot Programming

Advanced Mobile Robot Programming is an advanced research and development course for graduates of 16362 and 16862. In this class, teams of students conduct research and prototype working robot architectures that are research-quality. The best robot systems are generally demonstrated at the National Conference on Artificial Intelligence.
 
16-864: Humanoids

This seminar will discuss both virtual and robotic humanoids. We will try to identify what we know about humans that can help us program humanoids, and what we know about humanoids that will help us understand ourselves. Readings will be drawn from a wide range of fields.
 
16-869: Autonomous Multirobot Systems (also CS 15-889)

Multiple redundant robots provide more reliable solutions to real-world tasks than a single agent because the overall system is less sensitive to failure. Reliability is not the only benefit multirobot systems offer; multirobot teams can provide significant performance advantages as well. In order to realize increased performance however, the system designer must address a number of new challenges presented by the multirobot domain.
 
24-779: Human Systems & Control

This course covers the mechanisms of human motor systems and control, using arm movements as an example. The course starts with the anatomy of muscles, sensors, spinal cords, and brains; then functional analyses of these system components will follow. After system analysis, all components are integrated to study feedback control dynamics.
 
Using physiological studies such as psychophysical and lesion experiments, this course covers classical and modern theories of how the nervous system may control movements. Advanced topics include adaptation, representation, coordinate systems, cognitive involvement, and rehabilitation techniques for motor-impaired patients. A project / presentation is required to take the course for 12 units. Prerequisites: 21-241, 21-260, 24-451, or permission of the instructor.