Computer Science MS


Graduate Admissions Counselor

Trevor Barrett
585-475-5532, tbbges@rit.edu


Department Contact

Hans-Peter Bischof, Ph.D.
585-475-2995, hpb@cs.rit.edu


Admission Deadlines & Requirements

Program Available Online? No
Application Deadline Rolling
Admit Term Fall/Spring
Entrance Exam GRE required for individuals with degrees from international universities
Other
English Language Exams:
TOEFL (Internet) 88
IELTS 6.5
PTE Academic 61

 

Priority deadline - COMPLETE applications that are received by this date are given priority consideration for admission and financial aid (if applicable). Applications received after the priority deadline will be considered on a space-available basis.

Rolling - There is no specific deadline for applications; applications will be accepted and reviewed throughout the year until the program reaches capacity.

Program overview

The MS in computer science is designed for students who have an undergraduate degree (or minor) in computer science, as well as those who have a strong background in a field in which computers are applied, such as engineering, science, or business.

The degree is offered on a full- or part-time basis. Courses are generally offered in the afternoons and evenings to accommodate part-time students. Full-time students take three or four courses per semester and may be able to complete the course work in three semesters. Full-time students who are required to take additional bridge courses may be able to complete the course work in four semesters. Part-time students take one or two courses per semester and may be able to complete the course work in four to five semesters. The time required to complete a master's project is one semester, but can vary according to the student and the scope of the topic. Two semesters is typical.

Plan of study

The program consists of 30 credit hours of course work, which includes one core course, three courses in a cluster, four electives, and a thesis or project. For those choosing to complete a project in place of a thesis, students complete one additional elective.

Clusters

Students select three cluster courses from the following areas:

Computer graphics and visualization

The computer graphics and visualization cluster provides the technical foundations for graduate studies in computer graphics and image understanding. Areas for further study include graphics programming, rendering and image synthesis, computer animation and virtual reality, image processing and analysis, and data visualization.

Data manangement

The data management cluster studies the foundational data management and knowledge discovery challenges prevalent in design, analysis, and organization of data. The courses cover general database issues including database design, database theory, data management, and data mining.

Distributed systems

This area studies systems formed from multiple cooperating computers, including the analysis, design, and implementation of distributed systems, distributed middleware, and computer networking protocols, including security.

Intelligent systems

Intelligent systems encompasses the study of algorithms and architectures that enable effective decision making in complex environments. Courses cover computer vision, robotics, virtual theater, sensor networks, data mining, document recognition, and the theoretical foundations of decision-making (e.g. Markov chains and the properties of voting protocols).

Languages and tools

The languages and tools cluster combines language design and implementation together with architecture and the use of software development tools. Students specializing in this cluster gain a broad understanding of theoretical and applied knowledge.

Security

The security cluster spans topics from networking to cryptography to secure databases. By choosing different domains in which to study security students gain a broad understanding of both theoretical and applied knowledge.

Theory

The theory cluster studies the fundamentals of computation, which includes complexity theory to determine the inherent limits of computation, communication, and cryptography and the design and analysis of algorithms to obtain optimal solutions within those limits.

Electives

Electives provide breadth of experience in computer science and applications areas. Students who wish to include courses from departments outside of computer science need prior approval from the graduate program director. Refer to the course descriptions in the departments of computer science, engineering, mathematical sciences, and imaging science for possible elective courses.

Master's thesis/project

Students may choose the thesis or project option as the capstone to the program. Students who choose the project option must register for the Project course (CSCI-788). Students participate in required in-class presentations that are critiqued. A summary project report and public presentation of the student's project (in poster form) occurs at the end of the semester.

Curriculum

Computer science (thesis option), MS degree, typical course sequence

Course Sem. Cr. Hrs.
CSCI-665 Foundations of Algorithms 3
  Cluster Courses 9
  Elective Courses 12
CSCI-790 Thesis 6
Total Semester Credit Hours 30

Computer science (project option), MS degree, typical course sequence

Course Sem. Cr. Hrs.
CSCI-665 Foundations of Algorithms 3
  Cluster Courses 9
  Elective Courses 15
CSCI-788 Project/Colloquium 3
Total Semester Credit Hours 30
Clusters
Computer graphics and visualization
Course
CSCI-610 Foundations of Computer Graphics*
CSCI-711 Global Illumination
CSCI-712 Computer Animation: Algorithms and Techniques
CSCI-713 Applied Perception in Graphics and Visualization
CSCI-714 Scientific Visualization
CSCI-715 Applications in Virtual Reality
CSCI-716 Computational Geometry
CSCI-719 Topics in Computer Vision

* Required course.

Data manangement
Course
CSCI-620 Introduction to Big Data*
CSCI-621 Database System Implementation
CSCI-622 Secure Data Management
CSCI-720 Big Data Analytics
CSCI-721 Data Cleaning and Preparation
CSCI-729 Topics in Data Management

* Required course.

Distributed systems
Course
CSCI-651 Foundations of Computer Networks*
CSCI-652 Distributed Systems
CSCI-654 Foundations of Parallel Computing
CSCI-662 Foundations of Cryptography
CSCI-759 Topics in Systems
CSCI-762 Advanced Cryptography

* Required course.

Intelligent systems
Course
CSCI-630 Foundations of Intelligent Systems*
CSCI-631 Foundations of Computer Vision
CSCI-632 Mobile Robot Computing
CSCI-633 Biologically Inspired Intelligent Systems
CSCI-731 Advanced Computer Vision
CSCI-732 Image Understanding
CSCI-735 Foundations of Intelligent Security Systems
CSCI-736 Neural Networks and Machine Learning
CSCI-737 Pattern Recognition
CSCI-739 Topics in Intelligent Systems

* Required course.

Languages and tools
Course
CSCI-641 Advanced Programming Skills
CSCI-740 Programming Language Theory
CSCI-742 Compiler Construction*
CSCI-746 Software Development Tools
CSCI-749 Topics in Language and Tools

* Required course.

Security
Course
CSCI-622 Secure Data Management
CSCI-642 Secure Coding
CSCI-651 Foundations of Computer Networks*
CSCI-662 Foundations of Cryptography
CSCI-729 Topics in Data Management
CSCI-734 Foundations of Security Measurement and Evaluation
CSCI-735 Foundations of Intelligent Security Systems
CSCI-739 Topics in Intelligent Systems
CSCI-759 Topics in Systems
CSCI-762 Advanced Cryptography
CSCI-769 Topics in Theory

* Required course.

Theory
Course
CSCI-662 Foundations of Cryptography  
CSCI-664 Computational Complexity
CSCI-716 Computational Geometry
CSCI-740 Programming Language Theory
CSCI-749 Topics in Language and Tools
CSCI-761 Topics in Advanced Algorithms
CSCI-762 Advanced Cryptography
CSCI-769 Topics in Theory

 

Admission requirements

To be considered for admission to the MS in computer science, candidates must fulfill the following requirements:

  • Complete a graduate application. 
  • Hold a baccalaureate degree (or equivalent) from an accredited university or college. 
  • Submit official transcripts (in English) of all previously completed undergraduate and graduate course work.
  • Have a minimum cumulative GPA of 3.0 (or equivalent). 
  • Submit scores from the GRE.
  • International applicants whose native language is not English must submit scores from the TOEFL, IELTS, or PTE. A minimum TOEFL score of 88 (internet-based) is required. A minimum IELTS score of 6.5 is required. The English language test score requirement is waived for native speakers of English or for those submitting transcripts from degrees earned at American institutions.

Prerequisites

Applicants must satisfy prerequisite requirements in mathematics (differential and integral calculus, probability and statistics, discrete mathematics, and computer science theory) and computing (experience with a modern high-level language [e.g., C++, Java], data structures, software design methodology, introductory computer architecture, operating systems, and programming language concepts).

Additional information

Bridge courses

If an applicant lacks any prerequisites, bridge courses may be recommended to provide students with the required knowledge and skills needed for the program. If any bridge courses are indicated in a student's plan of study, the student may be admitted to the program on the condition that they successfully complete the recommended bridge courses with a grade of B (3.0) or better (courses with lower grades must be repeated). Generally, formal acceptance into the program is deferred until the applicant has made significant progress in this additional course work. Bridge program courses are not counted as part of the 30 credit hours required for the master's degree. During orientation, bridge exams are conducted. These exams are the equivalent to the finals of the bridge courses. Bridge courses will be waived if the exams are passed.

Faculty

Faculty members in the department are actively engaged in research in the areas of artificial intelligence, computer networking, pattern recognition, computer vision, graphics, visualization, data management, theory, and distributed computing systems. There are many opportunities for graduate students to participate in these activities toward thesis or project work and independent study.

Facilities

The computer science department provides extensive facilities that represent current technology, including:

  • a graduate lab with more than 15 Mac’s and a graduate library;
  • specialized labs in graphics, computer vision, pattern recognition, security, database, and robotics; and
  • six general purpose computing labs with more than 100 workstations running Linux, Windows, and OS X; plus campus-wide wireless access. 

Maximum time limit

University policy requires that graduate programs be completed within seven years of the student's initial registration for courses in the program. Bridge courses are excluded.


Career Outcomes

The RIT Office of Career Services and Cooperative Education website provides information pertaining to student skills and capabilities, salary data, career information, job outcomes, and contact information for the Career Services Coordinator by program.


Related Links


Program(s) You Might Also Consider