MRSD Program Curriculum

Home/Curriculum
Curriculum 2017-06-23T11:16:45+00:00

Students in the Master of Science – Robotic Systems Development (MRSD) Program at Carnegie Mellon must complete 162 units of coursework as dictated by the curriculum to be eligible for graduation. The MRSD curriculum includes three semesters of coursework and an optional summer internship, resulting in a 16-month program. The suggested sequence of courses is outlined below. Detailed course descriptions can be accessed through the Schedule of Classes. Examples of projects developed by previous teams of students for the MRSD Project Course and Robot Autonomy can be found here.

1st Semester – 1st Fall Term:
Required Course: 16-642 – Manipulation, Mobility & Control
Required Course: 16-650 – Systems Engineering and Management for Robotics
Project Course: 16-681 – MRSD Project I
Business Seminar: 16-697 – Introduction to Robotics Business
One Technical Elective

2nd Semester – Spring Term:
Required Course: 16-662 – Robot Autonomy
Required Course: 16-720 – Introduction to Computer Vision
Project Course: 16-682 – MRSD Project II
Business Seminar: 16-698 – Advanced Topics in Robotics Business
One Technical Elective

Summer Term:
16-991 – Internship

3rd Semester – 2nd Fall Term:
Three Technical Electives
One – two Business Elective(s)

The matrix of courses, deliverables (exams, presentations, demonstrations, etc.) for the Fall 2015 incoming class are outlined in the figure below.

THE TABLE BELOW REFLECTS THE CURRICULUM for the Fall 2015 Entering Class

MRSD_Curriculum_Class of 2017

  • Business Elective(s)

Students are required to complete a total of 12 units of Business Electives to be eligible for graduation. Students are not permitted to take Business Electives during the first semester. Business Electives are to be chosen from the Tepper School of Business or the Heinz College. Business Electives are selected from a pre-approved list that is distributed to students each semester by the MRSD Program Office. Many of the courses offered by Tepper and Heinz are “mini” courses. Mini courses are 6 units and last one-half of a semester. Students will need to complete either one 12-unit course or two 6-unit mini courses to meet the Business Elective requirement.

  • Technical Electives

Students must complete a total of 57-60 total units of approved Technical Electives to be eligible for graduation. Students who obtain and successfully complete a MRSD-relevant summer internship will earn 3 units that will be counted towards the Technical Elective requirement. This allows flexibility to complete one 9-unit Technical Elective. Students who do not obtain a MRSD-relevant summer internship will meet the Technical Elective requirement through 60 units (e.g., five 12-unit courses) of formal coursework. Students are permitted to take up to 12 units of advanced undergraduate-level (i.e. xx-300/xx-400) elective coursework.

  • Students must enroll for a minimum of 4 Technical Electives offered by the School of Computer Science (SCS).
    • 2 of the SCS Technical Electives must be Robotics Institute Courses (16-xxx)
    • The 2 remaining SCS Technical Electives must be pre-approved courses from any SCS Department (02-xxx, 05-xxx, 08-xxx, 10-xxx, 11-xxx, 15-xxx, 16-xxx, 17-xxx)
  • A maximum of 1 Technical Elective may be a pre-approved course from the College of Engineering (06-xxx, 12-xxx, 18-xxx, 19-xxx, 24-xxx, 27-xxx, 39-xxx, 42-xxx).

The technical electives listed below are pre-approved for the MRSD Program and do not require permission from the MRSD Program Office. If you find an MRSD-relevant course that is not included on this list please send the course name, number and description to the MRSD Program Manager for review and approval. Also include your reasoning for requesting that specific course.

  • Pre-approved Technical Electives:
    • 05-831 – Human Factors
    • 05-833 – Gadgets, Sensors and Activity Recognition in HCI
    • 05-834 – Applied Machine Learning
    • 05-891 – Designing Human Centered Software
    • 10-601 – Machine Learning
    • 10-703 – Deep Reinforcement Learning & Control
    • 10-704 – Information Processing and Learning
    • 10-725 – Convex Optimization
    • 10-707 – Topics in Deep Learning
    • 11-755/18-797 – Machine Learning for Signal Processing
    • 11-611 – Natural Language Processing
    • 11-642 – Search Engines
    • 11-663 – Applied Machine Learning
    • 15-351/650 – Algorithms and Advanced Data Structures
    • 15-415/615 – Database Applications
    • 15-451/651 – Algorithm Design and Analysis
    • 15-619 – Cloud Computing
    • 15-624 – Foundations of Cyber-Physical Systems
    • 15-640 – Distributed Systems
    • 15-663 – Computational Photography
    • 15-780 – Artificial Intelligence
    • 15-821 – Mobile and Pervasive Computing
    • 15-887 – Planning Execution and Learning
    • 15-889E – Advanced Topics in Artificial Intelligence
    • 16-423/623 – Designing Computer Vision Apps
    • 16-467 – Human Robot Interaction
    • 16-711 – Kinematics, Dynamic Systems and Control
    • 16-722 – Sensing and Sensors
    • 16-725/42-735 – Methods in Medical Image Analysis
    • 16-741 – Mechanics of Manipulation
    • 16-745 – Dynamic Optimization
    • 16-761 – Mobile Robots
    • 16-782 – Planning and Decision-making in Robotics
    • 16-811 – Mathematical Fundamentals for Robotics
    • 16-822 – Geometry-based Methods in Vision
    • 16-823 – Physics-based Methods in Vision (Appearance Modeling)
    • 16-824 – Visual Learning and Recognition
    • 16-831 – Statistical Techniques in Robotics
    • 16-833 – Robot Localization and Mapping
    • 16-843 – Manipulation Algorithms
    • 16-861 – Mobile Robot Development (approved only for 3rd semester)
    • 16-867 – Principles of Human Robot Interaction
    • 16-868 – Biomechanics & Motor Control
    • 16-899 – Actuation and Sensing Mechanisms
    • 17-630 – Data Structures and Algorithms for Engineers
    • 17-653 – Managing Software Development
    • 17-655 – Architectures for Software Systems
    • 18-660 – Numerical Methods for Engineering Design and Optimization
    • 18-640 – Foundations of Computer Architecture
    • 18-642 – Introduction to Software Engineering
    • 18-648 – Real-Time Embedded Systems
    • 18-649 – Distributed Embedded Systems
    • 18-667 – Design of Integrated Embedded Systems
    • 18-698 – Neural Signal Processing
    • 18-745 – Rapid Prototyping of Computer Systems
    • 18-777 – Complex Large-Scale Dynamic Systems
    • 24-614 – Microelectromechanical Systems
    • 24-651 – Special Topics in Material Selection for Mechanical Engineers
    • 24-671 – Special Topics – Practical Control and Automation
    • 24-672 – Special Topics in DIY Design and Fabrication
    • 24-673 – Soft Robots: Mechanics, Design and Modeling
    • 24-674 – Design of Biomechatronic Systems for Humans
    • 24-677 – Special Topics: Aerial Robotics
    • 24-683 – Design for Manufacture and the Environment
    • 24-776/18-776 – Non-Linear Controls
    • 24-787 – Artificial Intelligence and Machine Learning for Engineering Design
    • 39-648 – Rapid Design and Prototyping of Computer Science
    • 51-763 – Industrial Design Fundamentals

     

  • 16-991 – Internship

Students are encouraged to carry out a 3-month summer internship between the 2nd and 3rd semester.

Students choosing to complete a MRSD-relevant summer internship will be registered for 3 units of 16-991 “Internship”. The 3 units are counted towards the Technical Elective requirement and will factor into the 162 unit total required for graduation (thus allowing students who complete an internship the flexibility to take a 9-unit Technical Elective). Internships are expected to fall within the summer term as outlined by the University Academic Calendar. Interns will be required to submit a final end-of-internship report documenting the work that they carried out as part of their internship. The MRSD Program Director will review the reports and assign a Pass/Fail grade at the end of the summer term.