Computer Science (CS)

Aims and Scope

The Computer Science (CS) program educates students to become world-class researchers and thought leaders in the field of computer science. The program is designed to prepare students for a career in academia, industrial research, or advanced positions in industry. Two degrees programs are offered: the M.Sc. degree (with either a thesis or a non-thesis option) and the Ph.D. degree. Students who are interested in a research career are encouraged to apply directly to the Ph.D. program. Students without a master’s degree can enroll in the M.Sc./Ph.D. program and may complete an M.Sc. degree on the way to their Ph.D.

Students who complete the Ph.D. degree will have demonstrated original research that is published in world-class prestigious conferences, journals and other research forums. This degree is appropriate for those who want to pursue a career in research either in academia or industry. Students who complete the M.Sc. degree by taking courses and writing a thesis will have demonstrated ability to perform directed research and complete a research project. This degree is appropriate for students who wish to pursue a Ph.D. degree later.

Students who complete the M.Sc. degree by taking only courses will have demonstrated strong performance in graduate-level courses that prepares students for careers of advanced research and development in industry.

The scope of research in the computer science program at KAUST includes the following areas:

•   Artificial Intelligence and Machine Learning

•   Computational Biosciences

•   Computing Systems and Databases

•   High Performance Computing

•   Theoretical Computer Science

•   Visual Computing

•   Cybersecurity and Dependability

Program Contacts

Ivan Viola, Program Chair
Aida Mizouni-Hoteit, Senior Graduate Education Specialist

More information can be found on the Computer Science website here

Definitions

To describe the course requirements, we use the following terms:

A 200-level course has a course number in the closed interval [200 – 299].

A 300-level course has a course number in the closed interval [300 – 399].

The course prefix is the abbreviation at the beginning of a course number specifies the program offering the course. A CS course is a Computer Science course with CS prefix. A CEMSE course is a course with a CS, AMCS, ECE, or STAT prefix. A BESE/CEMSE/PSE course is a course offered by any of the three divisions.

The term regular course excludes special courses such as:

•   CS 295 Internship, CS 297 Master Thesis Research, CS 299 Directed Research, or similar courses in other programs

•   CS 397 Doctoral Dissertation Research, CS 398 Graduate Seminar, CS 399 Doctoral Directed Research, or similar courses in other programs

•   Courses that CS students cannot take for credit, such as 201 Introduction to Programming with Python, CS 204 Data Structures and Algorithms, CS 205 Systems Programming, CS 207  Programming Methodology and Abstractions.

•   Courses with a ESL, IED, WE prefix

Note that courses such as CS 294 Contemporary Topics and CS 394 Contemporary Topics are included in the definition of a regular course.

Requirements for All CS Students

All students must fulfill the following requirements in addition to the specific program requirements listed below:

•   A minimum GPA of 3.0 must be achieved to graduate.

•   Each course taken requires a minimum of a B- for course credit.

•   Register and receive a satisfactory grade for CS 398 Graduate Seminar (non-credit) in the first two semesters.

•   Completion of one Winter Enrichment Program (WEP).

Any course choice needs to be approved by the academic advisor. The academic advisor should check that courses have appropriate difficulty and fits the educational mission of the CS program. Most importantly, taking courses offered outside of the CS program, especially outside the CEMSE division, requires justification. Students should take such courses mainly to support interdisciplinary research.