 |
| Core Courses |
Credits |
 |
| CS
521 |
Data Structures and Algorithms I |
3.0 |
|
 |
| CS
522 |
Data Structures and Algorithms II
|
3.0 |
|
 |
| CS
525 |
Theory of Computation |
3.0 |
|
 |
| CS
550 |
Programming Languages |
3.0 |
|
 |
| CS
543 |
Operating Systems |
3.0 |
|
 |
| CS
544 |
Computer Networks |
3.0 |
|
 |
 |
| Computer Science Breadth
Requirement |
|
 |
Students select three intermediate
courses, from at least two areas, from the following list:
Note: Some special topics courses (CS 680) may also count towards the
breadth requirement. Contact the Graduate Advisor for more information. |
 |
| Algorithms and Theory |
|
 |
| CS
621 |
Approximation Algorithms |
3.0 |
|
 |
| CS
623 |
Computational Geometry |
3.0 |
|
 |
 |
| Artificial Intelligence and Robotics |
|
 |
| CS
510 |
Artificial Intelligence |
3.0 |
|
 |
| CS
511 |
Robot
Building Lab |
3.0 |
|
 |
| CS
610 |
Advanced Artificial
Intelligence |
3.0 |
|
 |
| CS
612 |
Knowledge
Based Agents |
3.0 |
|
 |
| CS
613 |
Machine Learning |
3.0 |
|
 |
| CS
615 |
Intelligent Time-Critical Systems |
3.0 |
|
 |
 |
| Computer Architecture |
|
 |
| ECEC
621 |
Applied Computer Architecture I (High-performance Computer Architecture)
|
3.0 |
|
 |
| ECEC
622 |
Applied Computer Architecture II (Parallel Computer Architecture) |
3.0 |
|
 |
 |
 |
| Computer Vision |
|
 |
| CS
580 |
Introduction to Computer Vision
|
3.0 |
|
 |
 |
| Human Computer Interaction and Computer Graphics |
|
 |
| CS
536 |
Computer Graphics
|
3.0 |
|
 |
| CS
530 |
Developing User Interfaces |
3.0 |
|
 |
| CS
637 |
Interactive Computer Graphics |
3.0 |
|
 |
 |
| Numeric and Symbolic Computation |
|
 |
| CS
567 |
Applied Symbolic
Computation |
3.0 |
|
 |
| CS
668 |
Computer Algebra
I
|
3.0 |
|
 |
 |
Programming Languages and Compilers
|
|
 |
| CS
551 |
Compiler Construction I |
3.0 |
|
 |
| CS 552 |
Compiler Construction II |
3.0 |
|
 |
 |
Software Engineering
|
|
 |
| CS
575 |
Software Design |
3.0 |
|
 |
| CS
576 |
Dependable Software Systems |
3.0 |
|
 |
Systems
|
|
 |
| CS
643 |
Advanced Operating Systems |
3.0 |
|
 |
| ECEC
632 |
Computer
Network Design II |
3.0 |
|
 |
| CS
500 |
Database Theory |
3.0 |
|
 |
 |
| Computer Science Depth
Requirement |
|
 |
Depth requirement courses should build on
basic material obtained from the breadth requirement courses, from
the
research articles, and include a research project. Some special
topics courses (CS680) or advanced seminars (e.g. CS 729) may also
count towards the depth requirement. Contact the Graduate Advisor
for further information about particular courses.
Students select one advanced
course from the following: |
 |
 |
| CS
676 |
Parallel Processing |
3.0 |
|
 |
| CS
645 |
Cryptography and Network
Security |
3.0 |
|
 |
| CS
669 |
Computer
Algebra II |
3.0 |
|
 |
| CS
662 |
Numerical Analysis II |
3.0 |
|
 |
| CS
675 |
Reverse Software Engineering
|
3.0 |
|
 |
| CS
636 |
Advanced Computer Graphics
|
3.0 |
|
 |
| CS
630 |
Cognitive Systems
|
3.0 |
|
 |
| ECEC
623 |
Applied
Computer Architecture III (Advanced Parallel Computer Architecture) |
3.0 |
|
 |
| ECEC
633 |
Computer Network Design III (Advanced Topics in Computer
Networks) |
3.0 |
|
 |
Thesis Option
Usually students
pursuing a Master's Thesis will first do 3 research credits (CS 897
or CS 997) to obtain background knowledge required by the thesis topic.
It is the responsibility of the student to find a thesis supervisor. |
 |
| |
|
 |
| CS
898 |
Master's Thesis |
6.0 |
|
 |
 |
Non-thesis Option
The non-thesis
option requires two additional courses from either intermediate level
or advanced level courses listed above. |
 |
Three additional graduate level
courses are required:
These courses may come from either intermediate or advanced courses.
In addition, courses may be taken outside the department, may include
CS 897 (Independent Study), CS 997 (Research in Computer Science),
and precore Computer Science courses
listed in requirement (0). Any course not explicitly listed above,
including independent study and
research courses, must be approved by the Graduate Advisor.
Other courses, such as special
topics, the department offers may qualify for meeting intermediate
or advanced requirements. Students must check with the department
to see if this is the case. Any course offered by other departments
not listed here must be approved by the Graduate Advisor, or they
will not count towards the degree. |