Undergraduate Minor in Robotics
Unlock the world of robotics through the Robotics Minor and Concentration, designed for Carnegie Mellon’s undergraduates to delve into the core principles and practical applications of robotics. This immersive journey blends theoretical exploration with hands-on learning, commencing with a foundational introductory course.
In-depth studies continue with essential courses in control systems and robotic manipulation, offering a comprehensive understanding. The Minor is accessible to current Carnegie Mellon undergraduates from any major outside the School of Computer Science, while the Concentration is exclusively available to School of Computer Science undergraduates. Aspiring participants are encouraged to apply once their primary major is declared.
Admission to the Minor / Concentration Program
Admission to the Undergraduate Minor in Robotics or the Undergraduate Concentration in Robotics Program is limited to current students at Carnegie Mellon with declared Primary Majors. Students interested in signing up for the program should fill out the application form after their Major has been declared and added to SIO.
Students from any college outside of the School of Computer Science, can pursue the Minor in Robotics. The nature of the courses required for the Minor makes it ideal for students already pursuing an undergraduate degree in engineering through the College of Engineering. The Concentration in Robotics is only an option for the undergraduate students studying computer science through the School of Computer Science.
Curriculum Requirements – Minor in Robotics
Prerequisite
Successful candidates for the Robotics Minor will have prerequisite knowledge of C language, basic programming skills, and familiarity with basic algorithms. Students can gain this knowledge by taking 15-122 Principles of Imperative Computation
The curriculum for the Robotics Minor is outlined below:
Requirements | Choose 5 courses total, one in each requirement (two for electives): |
---|---|
Overview | 16-280 General Robotic Systems (if not offered substitute (16-311) |
Controls | 06-464 Chemical Engineering Process Control 16-299 Introduction to Feedback Control Systems (Computer Science) 16-xxx Upper-level RI course with instructor and Program Director’s permission 18-370 Fundamentals of Control 24-451 Feedback Control Systems 24-773 Multivariable Linear Control |
Mechanisms & Manipulation | 16-384 Robot Kinematics and Dynamics OR 15-462 Computer Graphics AND 33-141 Physics I for Engineering Students |
Robot Building Practices | 16-220 Intro to Robotic Building Practices 16-362 Mobile Robot Algorithms Laboratory 16-423 Designing Computer Vision Apps 18-349 Introduction to Embedded Systems 18-578 Mechatronic Design 18-500 ECE Design Experience 24-671 Electromechanical Systems Design |
Electives | 10-301 Introduction to Machine Learning (Undergrad) 10-315 Introduction to Machine Learning (SCS Majors) 11-344Machine Learning in Practice 15-281 Artificial Intelligence: Representation and Problem Solving 15-424 Logical Foundations of Cyber-Physical Systems 15-462 Computer Graphics 15-463 Computational Photography 15-482 Autonomous Agents 15-491 Special Topic: CMRoboBits: AI and Robots for Daily-Life Problems 16-264 Humanoids 16-350 Planning Techniques for Robotics 16-362 Mobile Robot Algorithms Laboratory 16-385 Computer Vision 16-421 Vision Sensors 16-423 Designing Computer Vision Apps 16-467 Human Robot Interaction 16-597 Undergraduate Reading and Research Var. 16-745 Optimal Control and Reinforcement Learning 16-761Mobile Robots 18-349 Introduction to Embedded Systems 18-500 ECE Design Experience 18-578 Mechatronic Design 24-671 Electromechanical Systems Design 24-677 Modern Control Theory 24-771 Linear Systems 85-370 Perception 85-395 Applications of Cognitive Science 85-412 Cognitive Modeling 85-419 Introduction to Parallel Distributed Processing 85-426 Learning in Humans and Machines |
Graduate level Robotics courses may be used to meet the elective requirement with permission from the Program Director. Graduate level Mechanical Engineering and Electrical and Computer Engineering courses that are relevant to robotics may be used to meet the elective requirement with permission from the Program Director.
Students may count up to 12 units of 16-597 Undergraduate Reading and Research towards the minor requirements.
Double-Counting Restriction
Courses being used to satisfy the requirements for the Robotics Minor may not be counted towards another minor. Students are permitted to double count a maximum of two courses from their Major (excluding General Education requirements) towards the Minor in Robotics. Free electives are not subject to the double counting policy.
Curriculum Requirements – Minor in Robotics
The curriculum for the Robotics Minor is outlined below:
Requirements | Choose 5 courses total, one in each requirement (two for electives): |
---|---|
Overview / Introductory | 16-311 Introduction to Robotics |
Controls* | 06-464 Chemical Engineering Process Control 16-299 Introduction to Feedback Control Systems 18-370 Fundamentals of Control 24-451 Feedback Control Systems 24-773 Special Topics: Multi-variable Linear Control 18-474 Embedded Controls 18-475 Autonomous Control Systems 18-771 Linear Systems 18-776 Nonlinear Control |
Kinematics* | 16-384 Kinematics and Dynamics |
Two Electives | See list of approved electives through the Undergraduate Catalog. Details are outlined below in “Elective” section. |
*Appropriate upper-level courses may be substituted with Undergraduate Program Director’s approval.
Prerequisites
Choose one course from each category:
Calculus | 21-259 Calculus in Three-Dimensions 21-254 Linear Algebra and Vector Calculus for Engineers |
Basic Math | 21-240 Matrix Algebra with Applications 21-241 Matrix Algebra 21-260 Differential Equations 18-202 Mathematical Foundations of Electrical Engineering 24-311 Numerical Methods |
Programming in C | Knowledge of the C programming language which could be obtained from: 15-122 Principles of Imperative Computation (recommended for novice C users) 16-311 Introduction to Robotics (recommended for students that have some familiarity with C) 24-280 Special Topics: C++ Programming for Engineers (recommended for novice C users) |
Electives
Students may count up to 12 units of 16-597 Undergraduate Reading and Research towards the degree requirements. A student can also take additional courses from the core; e.g., a student who takes 16-385 as a core can take 16-421 as an elective.
Graduate level Robotics courses may be used to meet the elective requirement with permission from the Program Director. Graduate level Mechanical Engineering and Electrical and Computer Engineering courses that are relevant to robotics may be used to meet the elective requirement with permission from the Program Director.
QPA Requirement
A 2.5 QPA in the Minor curriculum is required for graduation. Courses that are taken Pass/Fail or audited cannot be counted for the Minor.
Double Counting Restriction
Courses being used to satisfy the requirements for the Robotics Minor may not be counted towards another minor. Students are permitted to double count a maximum of two courses from their Major (excluding General Education requirements) towards the Minor in Robotics. Free electives are not subject to the double counting policy.