Robotics, B.S.

Bachelor of Science in Robotics

Overview

Students in the B.S. program in Robotics are expected to acquire the following skills upon graduation:

  • Understand how to use robotics to solve real-world problems, using techniques that include the integration of hardware and software components; designing, modeling, and controlling complex systems; reasoning about sensor data and actuator commands; and using these capabilities for decision making, action selection, and interaction with humans.
  • Master the core concepts of computer science, with emphasis on programming, computing systems, and algorithm design.
  • Master the mathematical fundamentals of robotics, including calculus, differential equations, representations of spatial relationships, linear algebra, signal processing, optimization methods, and probability theory.
  • Master algorithmic concepts for robotics, including sensing and perception algorithms to model and extract information from real-world data; robotic manipulation algorithms to solve multi- axis motion control problems; planning algorithms that find successful paths and trajectories in the presence of obstacles and constraints; and the use of low-level control algorithms to abstract away complex dynamics.
  • Acquire a broad knowledge of commonly used robotics components and tools, including various sensors, actuators, mechanical components, and software tools such as CAD, ROS, and Matlab; and understand how these components can be integrated into systems to enable effective and safe operation.
  • Gain hands-on knowledge of prototyping design, fabrication, and testing skills for all aspects of robotics systems, including mechanical, electrical, communication, and computing systems.
  • Develop the ability to form, manage, and work effectively in interdisciplinary teams using systems thinking, including using block diagrams to decompose complex systems into functional subsystems; working with potential stakeholders to define system requirements; identifying required skillsets to implement subsystems components and creating a suitable team; and assigning and managing task execution and systems integration.
  • Understand the ethical and societal implications of robotics and artificial intelligence and be able to critically evaluate the impact of these technologies on society.
  • Develop effective communication and presentation skills, including the ability to communicate complex technical concepts to a broad range of audiences.

B.S. in Robotics Curriculum

Computer Science Core

Computer Science Core (all of the following): Units
07-128First Year Seminar3
15-122Principles of Imperative Computation12
15-213Introduction to Computer Systems12
15-251Great Ideas in Theoretical Computer Science12

Robotics core 

Choose one of the following: Units
16-280Intelligent Robot Systems12
16-281General Robotics
(formerly 16-311)
12
All of the Following
16-220Robot Building Practices12
16-299Introduction to Feedback Control Systems12
16-384Robot Kinematics and Dynamics12
16-385Computer Vision12
16-450Robotics Systems Engineering
To be taken during senior fall
12
16-474Robotics Capstone
To be taken during senior spring
12
Recommended but not required:
16-180Concepts of Robotics5

Ethics Course

One of the following courses: Units
16-161Artificial Intelligence and Humanity12
16-735Ethics and Robotics12

Mathematics

All of the following Mathematics courses:
15-151Mathematical Foundations for Computer Science
(if not offered, substitute 21-127)
12
16-211Foundational Mathematics of Robotics12
21-120Differential and Integral Calculus10
21-122Integration and Approximation10
21-241Matrices and Linear Transformations11
Plus one of the following Probability courses:
15-259Probability and Computing12
21-325Probability9
21-425Probability and Martingales9
36-218Probability Theory for Computer Scientists9
36-225Introduction to Probability Theory9

Robotics Electives

Three general robotics electivesunits
16-3xx and 16-4xx are pre-approved. Students may count up to 12 units of either 16-597 Undergraduate Reading and Research or 99-270 Summer Undergraduate Research Apprenticeship towards the major requirements. Graduate-level Robotics courses and electives outside the Robotics Institute may be used to fulfill elective requirements with prior approval from the RI Undergraduate Program Director.27-36

School of Computer Science Electives

One general computer science electiveunits
These electives can be from any SCS department (Computer Science15-, Computational Biology02-, Human-Computer Interaction05-, Machine Learning10-, Language Technologies11-, Robotics16-, or Software & Societal Systems17-). They must be 200-level or above and at least 9 units each, with the following exceptions: 9-12
ADDITIONS: 1) students who take two of the major-intro mini-courses (02-180, 05-180, 07-180, or 16-180) during their first year may combine these two mini-courses together to count as one SCS elective; 2) 15-195 and 15-295 can be combined to count as one SCS elective; 3) 07-400 and 07-599 are countable as SCS electives.
DELETIONS: 1) the following courses do NOT count as SCS electives: 02-201, 02-223, 02-250, 02-261, 05-200, 11-423, 15-351, 16-211, 16-223, 16-224, 16-397, 16-480, 17-200, 17-333, 17-416, 17-562; 2) some IDeATe courses and some SCS undergraduate and graduate courses might not be allowed based on course content. Always consult with a CS undergraduate advisor before registration to determine eligibility for this requirement.

Science and Engineering

All candidates for a B.S. degree in the School of Computer Science must complete a minimum of 36 units offered by the Mellon College of Science and/or the College of Engineering (CIT). This includes at least four courses in science and engineering, 9 units or more for each course, where at least one course must have a laboratory component and at least two courses must be from the same department. One of these science classes may be 33-121 or 33-141 as a prerequisite. Consult with your SCS undergraduate advisor for possible use of any mini course for this requirement which needs to be reviewed by your advisor and the SCS Associate Dean for Undergraduate Programs. 

Requirements for this component of the degree are listed under the SCS main page under General Education Requirements.

Humanities and Arts

All candidates for the bachelor's degree in Robotics must complete a minimum of 63 units offered by the College of Humanities & Social Sciences and/or the College of Fine Arts. Some courses from the Tepper School of Business also qualify for this requirement. These courses offer students breadth in their education and perspectives and provide students with a better appreciation of social, artistic, cultural, political and economic issues that can influence their effectiveness as computer scientists upon graduation.

Requirements for this component of the degree are listed under the SCS main page under General Education Requirements.

Computing @ Carnegie Mellon (1 course)

The following course is required of all students to familiarize them with the campus computing environment:

99-101Core@CMU3

Free Electives

A free elective is any Carnegie Mellon course. However, a maximum of nine (9) units of Physical Education and/or Military Science (ROTC) and/or Student-Led (StuCo) courses may be used toward fulfilling graduation requirements.

Double Counting

In general, courses taken in satisfaction of the minor or additional major may also count toward any general education category in the Robotics major (i.e. courses outside of those listed in the Mathematics, Computer Science Core and Robotics Core requirements). Double counting toward Mathematics, Computer Science Core or Robotics Core courses in the Robotics major is strictly limited and depends on the chosen minor (or additional major). In general, students may double count at most five of the above listed requirements toward all other declared additional majors and minors. Additional majors and minors have their own double counting rules as well. Consult with an undergraduate advisor and an advisor from the department of the minor (or additional major) for specific restrictions on double counting.

Undergraduate Research Thesis

Robotics majors may use the SCS Honors Research Thesis as part of their degree. The SCS Honors Undergraduate Research Thesis (07-599) typically starts in the fall semester of the senior year, and spans the entire senior year. Students receive a total of 36 units of academic credit for the thesis work, 18 units per semester. Up to 18 units can be counted toward SCS elective requirements (9 per semester for 2 semesters maximum).  Students interested in research may also consider using 07-300 Research and Innovation in Computer Science in their junior year since this course will introduce students to various research projects going on in the School of Computer Science that may lead to a senior thesis. This course leads to a subsequent practicum that allows students to complete a small-scale research study or experiment and present a research poster. Students who use the practicum to start their senior thesis can use these units toward the required 36 units.

For more information about the SCS Honors Research Thesis, refer to the SCS Honors Research Thesis section for learning objectives, application requirements and expected outcomes.

Summary of Degree Requirements

AreaCoursesUnits
Robotics (core and electives)11125
Computer Science (core and SCS elective)651
Mathematics667
Ethics112
Science / Engineering436
Humanities / Arts763
Computing @ CMU13
First Year Seminar13
Total Units: 26360

Sample Course Sequence

The sample given below is for a student who already has credit for introductory programming and one semester of calculus. Students with credit for two semesters of calculus may start with a more advanced math class (e.g. 21-241) in their first year. Students with no credit for introductory programming and/or one semester of calculus will take 15-112 and/or 21-120 in their first semester and shift a few courses to later semesters after consulting with their academic advisor; these students should still be able to complete their degree in four years. It is recommended that students keep their academic load lighter for their Senior Fall semester to account for offsite job interviews or for their Senior Spring semester to account for visits to graduate schools.

First-Year
FallSpring
07-128 First Year Seminar15-213 Introduction to Computer Systems
15-122 Principles of Imperative Computation16-180 Concepts of Robotics
15-151 Mathematical Foundations for Computer Science16-211 Foundational Mathematics of Robotics
21-122 Integration and Approximation21-241 Matrices and Linear Transformations
99-101 Core@CMUXX-XXX Humanities / Arts Course
XX-XXX First Year Writing Requirement
Second-Year
FallSpring
16-280 Intelligent Robot Systems15-251 Great Ideas in Theoretical Computer Science
21-120 Differential and Integral Calculus16-299 Introduction to Feedback Control Systems
XX-XXX Probability Course16-385 Computer Vision
Science/ Engineering Course (or Physics Prerequisite)XX-XXX Humanities / Arts Course
Third-Year
FallSpring
16-220 Robot Building PracticesXX-XXX Robotics Elective
16-384 Robot Kinematics and DynamicsXX-XXX Robotics Elective
XX-XXX Humanities / Arts CourseXX-XXX Humanities / Arts Elective
XX-XXX Science/ Engineering CourseXX-XXX Humanities / Arts Elective
XX-XXX Free ElectiveXX-XXX Free Elective
Fourth-Year
FallSpring
16-450 Robotics Systems Engineering16-474 Robotics Capstone
XX-XXX Ethics CourseXX-XXX SCS Elective
XX-XXX Science / Engineering CourseXX-XXX Science / Engineering Course
XX-XXX Robotics ElectiveXX-XXX Humanities / Arts Elective
Minimum number of units required for the degree:360

 

*The flexibility in the curriculum allows many different schedules, of which the above is only one possibility. Some elective courses are offered only once per year (Fall or Spring). Constrained electives (probability, logic/languages, software systems, artificial intelligence and domains) may be taken in any order and in any semester if prerequisites are met and seats are available. Constrained electives are shown in the specific semesters in the schedule above as an example only. Students should consult with their academic advisor to determine the best elective options depending on course availability, their academic interests and their career goals. 

Back to top