Skip to main content

Graduate Programs

Graduate Courses

Courses currently being offered:

Fall >
Spring >

Check the course schedules/descriptions available via the Registrar's Office for the official schedules for the widest range of terms for which such information is available.


Below you will find a list of all graduate courses that have been offered.

NOTE: Not all of these courses are offered in any given year.

CSC 400 PROBLEM SEMINAR

An introduction to the technical, social, economic, and political aspects of graduate education in computer science at Rochester. Class meetings consist primarily of group discussions and presentations that focus on a broad range of topics, and are intended to improve the critical analysis, technical writing, presentation, and problem-solving skills of students. Both class discussions and written assignments are drawn from material presented in other first-year graduate courses offered within the department. The course also offers a forum for individual department faculty members to discuss their research interests and recent results. Satisfactory performance is required of all first-year graduate students.

Last Offered: Fall 2017

CSC 410 WEB PROGRAMMING

The World Wide Web was born around 1990, so it is not much older than most of you. In this course, we will follow the growth of the Web from its toddler years, to early childhood, to its turbulent pre-teen and teenage years, and finally as it begins to mature as a young adult. Along this journey, you will learn influential Web technologies such as HTTP, HTML, JavaScript, CSS, the LAMP stack, XML, JSON, Ajax, WebSockets, and modern MVC frameworks. Even though you will be doing a lot of programming in this course, its purpose is not to teach you to become an expert in any particular language or framework. Web technologies change at a blistering pace, so specifics quickly get outdated. However, once you take this course and understand the fundamentals, you will be able to easily pick up new technologies on the fly.

Last Offered: Fall 2017

CSC 412 HUMAN COMPUTER INTERACTION

This course will explore the design, implementation, and evaluation of user interfaces. Students will study the theoretical methods for interface design and evaluation, including requirements gathering, usability heuristics, user interface inspections, usability studies, information visualization, and prototyping. Case studies of interface successes and failures will augment theory with practical experiences. Students will apply this methodology to assignments in the design, implementation, and evaluation cycle. Students taking this course at the graduate level will have additional readings and assignments.

Last Offered: Fall 2017

CSC 432 AUTONOMOUS MOBILE ROBOTS

No description

Last Offered: Spring 2018

CSC 440 DATA MINING

Fundamental concepts and techniques of data mining, including data attributes, data visualization, data pre-processing, mining frequent patterns, association and correlation, classification methods, and cluster analysis. Advanced topics include outlier detection, stream mining, and social media data mining. CSC 440, a graduate-level course, requires additional readings and a course project.

Last Offered: Spring 2018

CSC 443 TOPICS COMPUTATIONAL NEURO

This course is cross-listed with BCS 547. Please refer to that course description.

Last Offered: Fall 2017

CSC 444 LOGICAL FOUNDATIONS OF A.I.

The logical foundations of AI including first-order logic, reasoning, knowledge representation, planning, and probabilistic inference.

Last Offered: Fall 2017

CSC 446 MACHINE LEARNING

This course presents the mathematical foundations of AI, including probability, decision theory and machine learning.

Last Offered: Spring 2018

CSC 447 NATURAL LANGUAGE PROCESSING

See CSC 247 for description. Cross-listed course.

Last Offered: Fall 2016

CSC 448 STATISTICAL SPEECH & LANGUAGE PROCESSING

An introduction to statistical natural language processing and automatic speech recognition techniques. This course presents the theory and practice behind the recently developed language processing technologies that enable applications such as speech-driven dictation systems, document search engines (e.g., finding web pages) and automatic machine translation. Students taking this course at the 400 level will be required to complete additional readings and/or assignments.

Last Offered: Fall 2017

CSC 449 MACHINE VISION

Introduction to computer vision, including camera models, basic image processing, pattern and object recognition, and elements of human vision. Specific topics include geometric issues, statistical models, Hough transforms, color theory, texture, and optic flow. CSC 449, a graduate-level course, requires additional readings and assignments.

Last Offered: Spring 2018

CSC 450 DATA SCI FOR LINGUISTICS

See LIN250 for course description.

Last Offered: Spring 2018

CSC 451 ADVNCD COMPUTER ARCHITECTURE

This course is cross-listed with ECE201. Please refer to that course description.

Last Offered: Fall 2017

CSC 452 MULTIPROCESSOR ARCH

Please refer to ECE204

Last Offered: Spring 2018

CSC 453 DYNAMIC LANG. & SOFT. DEV.

This course explores unique aspects of dynamically-typed programming languages, which are now pervasive in domains such as scientific research, Web application development, gaming, and user interface design. The lessons you will learn here complement those in traditional compilers and programming languages courses, which focus mainly on statically-typed languages. We will use the Python language as a case study. In the first half of this course, we will study the internals of the Python interpreter, which is implemented in C. In the second half, we will build analysis and debugging tools for Python, potentially extending open-source tools with large user bases.

Last Offered: Fall 2017

CSC 454 PROGRAMMING LANGUAGE DESIGN & IMPLEMENTATION

Design and implementation of programming languages, with an emphasis on imperative languages and on implementation tradeoffs. In-depth examination of "how programming languages work." Topics include fundamental language concepts (names, values, types, abstraction, control flow); compilation and interpretation (syntactic and semantic analysis, code generation and optimization); major language paradigms (imperative, object-oriented, functional, logic-based, concurrent). Course projects include assignments in several different languages, with an emphasis on compilation issues.

Last Offered: Fall 2017

CSC 455 SOFTWARE PERFORMANCE AND CORRECTNESS

Programming is the automation of information processing. Program analysis and transformation is the automation of programming itself---how much a program can understand and improve other programs. Because of the diversity and complexity of computer hardware, programmers increasingly depend on automation in compilers and other tools to deliver efficient and reliable software. This course combines fundamental principles and (hands-on) practical applications. Specific topics include data flow and dependence theories; static and dynamic program transformation including parallelization; memory and cache management; type checking and program verification; and performance analysis and modeling. The knowledge and practice will help students to become experts in software performance and correctness. Students taking the graduate level will have additional course requirements and a more difficult project.

Last Offered: Spring 2018

CSC 456 OPERATING SYSTEMS

Principles of operating system design, explored within the practical context of traditional, embedded, distributed, and real-time operating systems. Topics include device management, process management, scheduling, synchronization principles, memory management and virtual memory, file management and remote files, protection and security, fault tolerance, networks, and distributed computing. CSC 456, a graduate-level course, requires additional readings and assignments.

Last Offered: Fall 2017

CSC 457 COMPUTER NETWORKS

Introduction to computer networks and computer communication: Architecture and Protocols:. Design of protocols for error recovery, reliable delivery, routing and congestion control. Store-and-forward networks, satellite networks, local area networks and locally distributed systems. Case studies of networks, protocols and protocol families. Emphasis on software design issues in computer communication.

Last Offered: Fall 2017

CSC 458 PARALLEL & DIST. SYSTEMS

Principles of parallel and distributed systems, and the associated implementation and performance issues. Topics covered will include programming interfaces to parallel and distributed computing, interprocess communication, synchronization, and consistency models, fault tolerance and reliability, distributed process management, distributed file systems, multiprocessor architectures, parallel program optimization, and parallelizing compilers. Students taking this course at the 400 level will be required to complete additional readings and/or assignments.

Last Offered: Spring 2018

CSC 459 BIG DATA COMPUTER SYSTEMS

Please refer to CSC259 course description.

CSC 460 DIALOG SYSTEMS

Please refer to CSC260 for course description.

Last Offered: Spring 2014

CSC 461 DATABASE SYSTEMS

This course presents the fundamental concepts of database design and use. It provides a study of data models, data description languages, and query facilities including relational algebra and SQL, data normalization, transactions and their properties, physical data organization and indexing, security issues and object databases. It also looks at the new trends in databases. The knowledge of the above topics will be applied in the design and implementation of a database application using a target database management system as part of a semester-long group project.

Last Offered: Spring 2018

CSC 462 COMP INTRO TO STATISTICS

Please refer to DSC262 course description.

Last Offered: Fall 2017

CSC 463 COMP MODELS OF MUSIC

Please refer to CSC263 course description.

Last Offered: Spring 2014

CSC 464 COMPUTER AUDITION

Please refer to ECE 477 for course description.

Last Offered: Fall 2017

CSC 465 INTERMED STATISTICAL METHODS

This course is a continuation of DSC/CSC262, covering intermediate statistical methodology and related computational methods, with an emphasis on the R statistical computing environment.

Last Offered: Spring 2018

CSC 466 INTRO TO PARALLEL COMP GPUS

Please refer to ECE 206 for course description.

Last Offered: Fall 2017

CSC 467 ADV GPU PROJECT DEV

Please refer to ECE 277 for course description.

Last Offered: Spring 2016

CSC 481 CRYPTOGRAPHY

Please refer to CSC281 for course description.

Last Offered: Spring 2017

CSC 483 TOPICS IN CRYPTOGRAPHY

Please refer to CSC283 for course description.

Last Offered: Spring 2013

CSC 484 ADVANCED ALGORITHIMS

Advanced study of design and analysis of algorithms. Topics typically include: growth of functions; recurrences; probabilistic analysis and randomized algorithms; maximum flow; sorting networks; expander graphs; matrix operations; linear programming; discrete Fourier transform; number-theoretic algorithms; string matching; computational geometry; NP-completeness; approximation algorithms. Students taking this course at the 400 level may be required to complete additional tests, readings or assignments.

Last Offered: Spring 2018

CSC 485 ALGORITHMS & ELECTIONS

Please refer to CSC285 for course description.

Last Offered: Spring 2015

CSC 486 COMPUTATIONAL COMPLEXITY

The difference between computable and uncomputable problems and between feasible and infeasible problems. Regarding the latter, what properties of a problem make it computationally simple? What properties of a problem may preclude its having efficient algorithms? How computationally hard are problems? Complete sets and low information content; P=NP?; unambiguous computation and one-way functions; reductions relating the complexity of problems; complexity classes and hierarchies.

Last Offered: Fall 2017

CSC 487 ALGORITHMS AND ELECTIONS

Please refer to CSC285 for course description.

Last Offered: Fall 2012

CSC 490 SUPERVISED TEACHING

No description

Last Offered: Spring 2018

CSC 491 INDEPENDENT STUDY

No description

Last Offered: Spring 2018

CSC 494 MASTERS INTERNSHIP

No description

Last Offered: Spring 2018

CSC 495 MS Research in CSC

No description

Last Offered: Spring 2018

CSC 499 PRIN OF ASSISTIVE TECHNOLOGY

No description

CSC 512 COMPUTATION MTHDS IN COG SCI

Please refer to BCS512 for course description.

Last Offered: Spring 2018

CSC 513 COGNITV PROCESSING ON BLKBRD

Please refer to BCS 532 for course description.

Last Offered: Fall 2014

CSC 530 DATA-ENABLED RESEARCH

No description

Last Offered: Fall 2017

CSC 531 PRACTICUM DATA-ENABLED

No description

Last Offered: Spring 2018

CSC 571 LANG PARSING & COMPLXTY

No description

Last Offered: Fall 2012

CSC 572 COMP. SECURITY FOUNDATIONS

No description

Last Offered: Spring 2016

CSC 573 Seminar in Programming Systems

This is a seminar course with varying topics in the area of programming systems. May not be taught every year.

Last Offered: Fall 2017

CSC 574 COMP INTRO TO STATISTICS

No description

Last Offered: Spring 2014

CSC 575 Seminar in Human Computer Interaction

This is a seminar course on varying topics related to Human Computer Interaction. This course may not be offered every year.

Last Offered: Fall 2017

CSC 576 ADVANCED MACHINE LEARNING & OPTIMIZATION

No description

Last Offered: Fall 2017

CSC 577 ADV. TOP. IN COMP VISION

No description

Last Offered: Fall 2017

CSC 578 DEEP LRNING & GRAPH. MODELS

No description

Last Offered: Spring 2017

CSC 579 CACHE MEMORY

No description

Last Offered: Spring 2015

CSC 591 INDEPENDENT STUDY

No description

Last Offered: Spring 2018

CSC 594 INTERNSHIP

No description

Last Offered: Spring 2018

CSC 595 PHD RESEARCH IN CSC

No description

Last Offered: Spring 2018

CSC 595A PHD RESEARCH IN ABSENTIA

No description

Last Offered: Spring 2018

CSC 595B PHD RSRCH IN ABSENTIA ABROAD

No description

Last Offered: Spring 2018

CSC 597 COMPUTER SCIENCE COLLOQUIUM

No description

Last Offered: Fall 2017

CSC 890 SUMMER IN RESIDENCE - MA

No description

Last Offered: Summer 2011

CSC 895 CONT OF MASTER'S ENROLLMENT

No description

Last Offered: Spring 2018

CSC 897 MASTERS DISSERTATION

No description

Last Offered: Spring 2018

CSC 897A MASTERS DISSRTTN IN ABSENTIA

No description

Last Offered: Spring 2018

CSC 899 MASTER'S DISSERTATION

No description

Last Offered: Spring 2018

CSC 985 LEAVE OF ABSENCE

No description

Last Offered: Spring 2018

CSC 986V FULL TIME VISITING STUDENT

No description

Last Offered: Spring 2018

CSC 990 SUMMER IN RESIDENCE

No description

Last Offered: Summer 2017

CSC 995 CONT OF DOCTORAL ENROLLMENT

No description

Last Offered: Spring 2018

CSC 997 DOCTORAL DISSERTATION

No description

Last Offered: Spring 2018

CSC 997A DOCT DISSERTATN IN ABSENTIA

No description

Last Offered: Spring 2018

CSC 999 DOCTORAL DISSERTATION

No description

Last Offered: Spring 2018

CSC 999A DOCT DISSERTATN IN ABSENTIA

No description

Last Offered: Spring 2018

CSC 999B IN-ABSENTIA ABROAD

No description

Last Offered: Spring 2011