The Masters in Computer Science program offers students a high level of choice in their course of study. Students may focus on one area of computer science, or take courses across the breadth of the field. The degree may be completed through coursework only, or through coursework together with a research project culminating in a research paper. (Please note that our MS program is completely unrelated to the Masters of Medical Informatics program offered by the UR Medical School and RIT.)
Students must complete a minimum of 30 credits. This must include at least five regular 400-level courses, which are 4 credits each. The remaining credits can come from courses at the 200 level or higher. A student may discover he or she needs to take one or more elementary 100-level courses in order to be prepared to take the 200 or higher level courses. In such cases, the 100-level courses do not count toward the 30 credit requirement. Such 100-level courses are referred to as "bridging courses", and may be appropriate when a student has an undergraduate degree in a subject distant from computer science. Tuition must be paid for necessary bridging courses as well as the courses that count toward the MS degree.
Students must maintain a GPA of 3.0 by the end of their second semester and throughout the rest of their time in the program, and must obtain a least a 2.0 in each course that counts toward the 30 credit hours.
For students with an undergraduate degree in computer science or a closely related field, the requirements can usually be completed over the course of three semesters. We welcome applications from students who did not major in computer science but whose undergraduate work demonstrates a strong aptitude for the subject.
This program is for students who intend to complete their studies at the University of Rochester with an MS degree. It is not a prerequisite for application to our PhD program. Candidates should not apply to both the MS and PhD programs.
Applications are accepted on a rolling basis. Students should apply by February 15 to ensure that they receive a decision by April 15 for Fall admission. Applications will be accepted after this date but will be considered on a space-available basis. Tuition discounts are available for qualified students. Apply to Masters program using the UR Graduate Online Admissions Application.
Programming Languages and Computer Systems
CS 455 Advanced Programming Systems
CS 456 Operating Systems
CS 457 Computer Networks
CS 458 Parallel and Distributed Systems
CS 484 Advanced Algorithms
CS 572 Seminar in Programing Languages
CS 573 Advanced Programming Languages and Software Design
CS 495 Independent Research
Programming Languages and Computer Systems (non-CS undergraduate degree)
CS 173 Computation and Formal Systems
CS 252 Computer Organization
CS 254 Programming Language Design & Implementation
CS 282 Design and Analysis of Efficient Algorithms
ECE 401 Computer Architecture
CS 455 Advanced Programming Systems
CS 456 Operating Systems
CS 457 Computer Networks
CS 458 Parallel and Distributed Systems
CS 495 Independent Research
Algorithms and Complexity
CS 484 Advanced Algorithms
CS 486 Computational Complexity
CS 487 Advanced Modes of Computation
CS 444 Logical Foundations of Artificial Intelligence
CS 446 Machine Learning
CS 574 Seminar in Theory of Computation
CS 577 Optimization and Machine Learning
CS 495 Independent Research
Computer Architecture
CS 484 Advanced Algorithms
CS 453 High Performance Microprocessor Design
CS 455 Advanced Programming Systems
CS 458 Parallel and Distributed Systems
ECE 465 Performance Issues in VLSI/IC Design
CS 573 Collaborative Software Engr
CS 573 Advanced Topics in Memory Systems
CS 495 Independent Research
Artificial Intelligence and Machine Learning
CS 444 Logical Foundations of Artificial Intelligence
CS 446 Machine Learning
ECE 450 Information Theory
CS 448 Statistical Speech and Langauge Processing
CS 449 Computer Vision
CS 484 Advanced Algorithms
CS 577 Optimization and Machine Learning
CS 495 Independent Research
Artificial Intelligence and Machine Learning (non-CS undergraduate degree)
CS 173 Computation and Formal Systems
CS 242 Artificial Intelligence
CS 282 Algorithms
CS 412 Human Computer Interaction
CS 444 Logical Foundations of Artificial Intelligence
CS 446 Machine Learning
CS 447 Natural Language Processing
CS 449 Computer Vision
CS 495 Independent Research
Natural Language Processing
CS 444 Logical Foundations of Artificial Intelligence
CS 446 Machine Learning
CS 447 Natural Language Processing
CS 448 Statistical Speech and Langauge Processing
CS 460 Dialog Systems
CS 484 Advanced Algorithms
Lin 461 Phrase Structure Grammars
CS 495 Independent Research