0% found this document useful (0 votes)
2 views

Computer Science

The Department of Computer Science at the American University of Beirut offers both Bachelor of Science (BS) and Master of Science (MS) degrees, emphasizing a blend of theoretical and practical knowledge in computing. The MS program provides three options for completion: a thesis, a project, or coursework, with a focus on various advanced topics in computer science. The department is committed to research and scholarly activities, engaging students in significant areas such as machine learning, networking, and software engineering.

Uploaded by

Info Plus
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

Computer Science

The Department of Computer Science at the American University of Beirut offers both Bachelor of Science (BS) and Master of Science (MS) degrees, emphasizing a blend of theoretical and practical knowledge in computing. The MS program provides three options for completion: a thesis, a project, or coursework, with a focus on various advanced topics in computer science. The department is committed to research and scholarly activities, engaging students in significant areas such as machine learning, networking, and software engineering.

Uploaded by

Info Plus
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

168 Department of Computer Science

Department of Computer Science


Chairperson: Safa, Haidar H.
Professors: El-Hajj, Wassim; Safa, Haidar H.; Turkiyyah, George M.
Abu Salem, Fatima K.; Elbassuoni, Shady; Khabbaz,
Associate Professors:
Maurice
Assistant Professors: El Hajj, Izzat; Mouawad, Amer; Nassar, Mohamed
Senior Lecturer: Jureidini, Wadi’ N.
Lecturers: Bdeir, Mahmoud; Raheel, Saeed
Instructors: Aoude, Loa; Sidani-Bohsali, Hayat

The Department of Computer Science offers a program leading to the degree of Master
of Science (MS) in Computer Science. For more information about the department, visit
https://website.aub.edu.lb/fas/cs/Pages/index.aspx.

Mission Statement
The department of Computer Science at the American University of Beirut prepares
students for advanced studies and professional careers in the dynamically changing
world of computing and information technology. Our programs combine the theoretical
foundations of computing with the practical knowledge of software development vital
to industry, to provide broad and integrated curriculums.
The department offers a Bachelor of Science (BS) degree in computer science, designed
to be completed typically in three years. It also offers a Master of Science (MS) program
designed to provide advanced and specialized education in computing, offered in
formats that meet the needs of both working professionals and full-time students.
The department has vigorous research programs in theoretical computer science
networking and security, machine learning and data science, high-performance
computing, data mining and information retrieval, and software engineering. Our faculty
members are committed to contributing to the advancement of the field of computing
through scholarly activities, in which our students play a vital role.

MS in Computer Science
In addition to the university requirements for graduate study in the Faculty of Arts and
Sciences, students must complete: (1) 21 credits and a thesis (thesis option), (2) 27
credits and a project (project option), or (3) 30 credits of course work (course-based
option). For all options, the student must take 3 credits from each of the following 3
categories (9 credits in total): theory, systems, and applications. The remaining credits
(12 for the thesis option, 18 for the project option, and 21 for the course-based option)
are normally CMPS courses numbered 300 and above to be taken in coordination with
the student’s advisor. For more information about the program, visit https://website.
aub.edu.lb/fas/cs/Pages/index.aspx.

Graduate Catalogue 2022–23


Department of Computer Science 169

Course Descriptions
CMPS 314 Design and Analysis of Algorithms 3.0; 3 cr.
A course that studies advanced data structures and algorithms, with an emphasis on the
design of algorithms. Topics include advanced graph and search algorithms, dynamic
programming, amortized analysis, parallelism, greedy and approximate algorithms,
string and pattern matching, computational geometry and an introduction to the class
of NP-complete problems. This course was previously numbered CMPS 356. Annually.

CMPS 323 Parallel Computing 3.0; 3 cr.


A course that discusses the design, analysis and implementation of algorithms for
parallel computers. Topics include selection, merging, sorting, searching, matrix
computations, numerical problems and fast fourier transforms. Students develop
skills in designing parallel algorithms and analyzing their asymptotic running time
and memory requirements, and develop medium-sized parallel codes using modern
languages and libraries. This course was previously numbered CMPS 373. Annually.

CMPS 332 Compiler Construction 3.0; 3 cr.


Graduate students may be required to do extra reading, a term paper and/or an additional
project.Same as CMPS 232. This course was previously numbered CMPS 374. Annually.

CMPS 342 Advanced Computer Networks 3.0; 3 cr.


This course enhances students’ knowledge about up-to-date networking topics and
improves their research skills in the field. It reviews the major protocols of TCP/IP stack
then introduces modern Internet routing, IP multicasting, quality of service, Internet
telephony, IPv6, MPLS, etc. The course also covers the architectures of wireless local
area networks (IEEE 802.11), mobile IP networks, Mobile Ad hoc Networks (MANETS),
GSM and its evolution to UMTS then LTE, Internet of Things and Wireless Sensor
Networks. Although the course is a lecture-based course, discussions are always
encouraged. To prepare you to conduct independent research, the course contains
a term research project in which students working in small groups select a related
research topic to survey, identify existing problems, and try to propose solutions. This
course was previously numbered CMPS 384. Annually.

CMPS 345 Distributed Systems 3.0; 3 cr.


A distributed system consists of a set of nodes located at networked computers and
communicate only by passing messages. This course provides techniques to abstract,
design and implement efficient, scalable and fault-tolerant distributed systems.
Topics include, but are not limited to, inter-process communication, distributed
synchronization and consensus (e.g., paxos, blockchain), fault-tolerance, distributed
file systems (e.g., HDFS), and Hadoop ecosystem. This course was previously numbered
CMPS 375. Annually.

CMPS 350 Discrete Models for Differential Equations 3.1; 3 cr.


A detailed study of methods and tools used in deriving discrete algebraic systems of
equations for ordinary and partial differential equations: finite difference and finite
element discretization procedures; generation and decomposition of sparse matrices,
finite-precision arithmetic, ill-conditioning and pre-conditioning, Scalar, vector and
parallelized versions of the algorithms. The course includes tutorial “immersion”
sessions in which students become acquainted with state-of-the-art scientific software

Graduate Catalogue 2022–23


170 Department of Computer Science

tools on standard computational platforms. Prerequisites: Linear algebra and the


equivalent of MATH/CMPS 251 (which can be taken concurrently) or upon consent of the
instructor. Same as MATH 350. Occasionally.

CMPS 351 Optimization and Nonlinear Problems 3.1; 3 cr.


A study of practical methods for formulating and solving numerical optimization
problems that arise in science, engineering and business applications. Newton’s method
for nonlinear equations and unconstrained optimization. Simplex and interior-point
methods for linear programming. Equality and inequality-constrained optimization.
Sequential quadratic programming. Emphasis is on algorithmic description and
analysis. The course includes an implementation component where students develop
software and use state-of-the-art numerical libraries. Same as MATH 351. Annually.

CMPS 354 The Finite Element Method 3.0; 3 cr.


A course that presents the theoretical foundations of the finite element method and
some of its applications to partial differential equations. Topics include Sobolev
spaces, existence and uniqueness of weak solutions and the Lax-Milgram lemma,
regularity of weak solutions and a priori estimates, the Galerkin method, piecewise
polynomial approximations, approximating solutions of boundary value problems for
elliptic equations, and initial value problems for parabolic and hyperbolic equations.
Occasionally.

CMPS 358 Introduction to Symbolic Computing 3.0; 3 cr.


Introductory topics in computer algebra and algorithmic number theory that include
fast multiplication of polynomials and integers, fast fourier transforms, primality
testing and integers factorization. Applications to cryptography and pseudo-random
number generation. Linear algebra and polynomial factorization over finite fields.
Applications to error-correcting codes. Introduction to Grobner bases. Same as
MATH 358. Occasionally.

CMPS 359 Special Topics in Computational Science 3.0; 3 cr.


A course on selected topics in computational science, which change according to the
interests of visiting faculty, instructors and students. Selected topics cover state-of-the-
art tools and applications in computational science. Prerequisite: Consent of instructor.
Same as MATH 360. This course was previously numbered CMPS 360. Occasionally.

CMPS 364 Advanced Machine Learning 3.0; 3 cr.


This course focuses on Deep Learning and its applications. Deep Learning has
revolutionized the field of Machine Learning and has turned Artificial Intelligence from
a research endeavor into an actual reality. In this course, students will learn about the
fundamentals of Deep learning, and how to build Deep Learning models for various real-
world applications, particularly in Computer Vision and Natural Language Processing.
This course was previously numbered CMPS 392. Annually.

CMPS 365 Information Retrieval and Web Search 3.0; 3 cr.


This course introduces graduate-level students to the basics of information retrieval,
and the models and algorithms underlying modern search engines. Topics covered
include: crawling; indexing; Boolean and vector space retrieval models; probabilistic
information retrieval models; language models; top-k query processing; evaluation
of information retrieval systems; relevance feedback; link analysis; latent semantic
analysis; and information extraction. This course was previously numbered CMPS 391
Occasionally.

Graduate Catalogue 2022–23


Department of Computer Science 171

CMPS 371 Advanced Software Engineering 3.0; 3 cr.


A course on state-of-the-art software engineering for large distributed and concurrent
systems. Fundamental principles and concepts for specifying, designing, analyzing,
implementing and testing such systems. Concurrent object oriented paradigms. Design
patterns. Use of tools. Documentation using both formal and informal descriptions.
Students will develop at least one large software system as part of the course. This
course was previously numbered CMPS 363. Annually.

CMPS 385 Advanced Computer Graphics 3.0; 3 cr.


A course that presents the basic concepts of 3D computer graphics. Topics include 3D
object representations and manipulations, 3D transformation and viewing, hidden-
surface and hidden-line removal, shading models, rendering, texture mapping, ray-
tracing and animation techniques. Occasionally.

CMPS 386 Computer-Aided Geometric Design 3.0; 3 cr.


Graduate students taking the course are assigned extra work in the form of outside
reading, a term paper and/or an additional project. Same as CMPS 286. Occasionally.

CMPS 388 Computer Animation 3.0; 3 cr.


A course that introduces the basic techniques and algorithms in computer animation.
Topics include: history and applications of computer animation, modeling, interpolation,
key framing, morphing, deformation, forward and inverse kinematics, particle systems
and rigid body dynamics. Occasionally.

CMPS 395A/B Comprehensive Exam 0 cr.


Prerequisite: Consent of advisor.

CMPS 396 Special Topics in Computer Science 1 - 3 cr.


A course in which topics may vary each term and are expected to be in areas of active
research. Students may register for this course twice (or more) on condition that course
content differs.Prerequisite: Consent of instructor. Annually.

CMPS 397 Computer Science Tutorial 1 - 3 cr.

CMPS 398 MS Project 3 cr.

CMPS 399 MS Thesis 9 cr.

Graduate Catalogue 2022–23

You might also like