1501511 |
Advanced Programming |
3 |
Prerequisite: Basic programming course
This course aims to familiarize students with advanced methods in programming using Python, including object-oriented programming, parallel programming, data structures, algorithms, and applications of Python programming to AI and Data Science. The course covers the following major modules: (I) Object-Oriented Programming, (II) Data Structures and Algorithms, (III) Parallel Programming, (IV) Applications and Computing Tools: Features, Libraries, agents and controllers, and Regular Expressions applied to NLP tasks. |
1501530 |
Advanced Artificial Intelligence |
3 |
Prerequisite: Graduate standing
This course covers fundamental and advanced concepts and techniques in the field of artificial intelligence. The main topic list includes intelligent agents, uninformed and informed search, adversarial search, constraint satisfaction problem, and uncertain knowledge and reasoning, which covers Bayesian Networks, and Decision Networks. In addition, advanced topics will include machine learning, reinforcement learning, natural language processing (or vision/robotics), and deep learning. |
1501531 |
Machine Learning |
3 |
Prerequisite: (1440211-Linear Algebra + 1501215-Data Structures) or equivalent
This course provides a broad introduction to machine learning. Main topics include Regression, classification, and clustering. Detailed subjects are simple and multiple, Ridge, kernel feature, feature selection & Lasso; Linear classifiers & logistic regression; decision trees and ensemble learning, support vector machines, and artificial neural networks. Besides, best practices in machine learning such as overfitting/regularization and bias/variance theory shall be covered. Students will learn how to identify and implement appropriate machine learning algorithms for a variety of problems. |
1501533 |
Evolutionary Computing |
3 |
Prerequisite: 1501530 Advanced Artificial Intelligence
This course introduces the main concepts, techniques and applications in the field of evolutionary computing. Topics covered include, components of Evolutionary Algorithms, Genetic Algorithms, Evolution Strategies, Genetic Programming and Learning Classifier Systems, constraint handling, multi-objective cases, Nonstationary and Noisy Function Optimisation, Coevolutionary Systems, Interactive Evolutionary Algorithms, Theory of evolutionary computing, Hybridisation with Other Techniques: Memetic Algorithms, and Ant colony optimization. |
1501535 |
Computer Vision & Image Processing |
3 |
Prerequisite: 1501511 Advanced Programming
Introduction to the basic and advanced concepts and techniques in computer vision and image processing. After completing this course, the students will be able to apply a variety of computer techniques for the design of efficient algorithms for real-world applications, such as optical character recognition, face detection and recognition, motion estimation, human tracking, and gesture recognition. The topics covered include image filters, edge detection, feature extraction, object detection, object recognition, tracking and motion analysis, gesture recognition, image formation and camera models, and stereo vision. The course will cover the deep learning concepts with introduction to various architectures and their applications. |
1501565 |
Data Mining |
3 |
Prerequisite: Introduction to Database Management Systems (1501263), or 1501567 or equivalent.
Data mining has become one of the most interesting and rapidly growing fields. Data mining techniques are used to uncover hidden information, such as patterns, in databases and perform predictions. The data to be mined may be complex data including multimedia, spatial, and temporal. Topic include data processing, association rules, clustering, and classification. This course is designed to provide graduate students with a solid understanding of data mining concepts and tools. |
1501566 |
Foundations of Data Science |
3 |
Prerequisite: Introduction to Database Management Systems (1501263) or 1501567 or equivalent, and Introduction to Probability and Statistics (1440281)
Data science is an interdisciplinary field that provides tools to extract insights from data in various forms, either structured or unstructured. Data science course provides the theories, strategies, and tools to understand and apply the following topics: data preparation, data cleaning & integration, data analysis, classification, clustering, text analysis, and visualization. |
1501572 |
Computational Geometry |
3 |
Prerequisite: 1501371: Algorithm Analysis & Design or 1501511 Advanced Programming
The preliminary topic list includes: finding the convex hulls, art gallery problems, computing Voronoi diagrams, line segment intersection, linear programming, point location, randomized algorithms, and computing a delauney triangulation. In addition, we will learn about the following data structures: k-d trees, range trees, interval trees, segment trees, and quadtrees. |
1501590 |
Research Methodology |
3 |
Prerequisite: 1501215-Data Structures or equivalent, and Graduate Standing
This course introduces graduate students to the practice of research. The course preliminary introduces students to concepts of research methods in data science, data resources, data collection, and literature review. The course ensure that students learn how to select a research topic, devise research questions, and plan the research. Additionally, the students will gain practical knowledge on technical writing, such as writing a thesis proposal, a survey paper, and technical review of research papers. Students will also gain the skills, and practice, of technical presentations of scientific research papers and proposal. Lab sessions will be conducted to train students on a Latex editor for writing technical reports. |
1501630 |
Natural Language Processing |
3 |
Prerequisite: 1501530 Advanced AI
This course provides a broad coverage of the field of Natural Language Processing (NLP) throughout the study of the models, methods, and algorithms of NLP for common NLP problems. Topics include Regular Expressions, N-gram Language Models, Naive Bayes, Sentiment Classification; Lexicon for Sentiments, Vector Semantics and Embeddings, Neural Networks and NL Models, Part-of-Speech Tagging; Sequence Processing, Encoder-Decoder Models, Constituency Grammers and Parsing, Part of Speech Tagging, Machine Translation, Question Answering, Sentiment Analysis, and Text Summarization. |
1501631 |
Directed Studies |
3 |
Prerequisite: Graduate Standing
This course helps the student in exploring specific areas of interest or enables him/her to develop in-depth research in a field of interest. The topic should be related to the area of interest in which the student is planning to prepare his/her thesis. The course intends to complete the knowledge of the student while allowing him/her to develop his/her critical thinking and analysis. The registration in this course and its topic should be approved in advance by the student's potential thesis supervisor and the program coordinator. |
1501635 |
Computational Robotics |
3 |
Prerequisite: 1501371: Algorithm Analysis & Design or 1501511: Advanced Programming
The course provides an overall coverage of computational and algorithmic aspects of robotics with an emphasis on the motion planning problem. The preliminary topics include position & orientation in 2D and 3D, time and motion, robot forward kinematics, inverse kinematics, mobile robot vehicles, reactive navigation, map-based navigation, recent navigation algorithms, localization, localization: EKF and Monte-Carlo, probabilistic roadmaps and motion planning; pursuit-evasion algorithm, and Recent Advancements in the Field. |
1501636 |
Applications of Deep Learning Networks |
3 |
Prerequisite: 1501531 Machine Learning
This course provides a coverage of several application areas in AI that use Deep Learning (DL) networks. Topics include Python preliminaries, Keras and TensorFlow, handling big data, Regularization and Dropout, Convolution Neural Networks (CNN), time series analysis with Long Short-Term Memory (LSTM), Generative Adversarial Networks (GANs), Transfer learning, Reinforcement Learning, Applications in computer vision, applications in NLP, and evolving other deep Neural Networks such as Transformers. |
1501638 |
Topics in Machine Learning |
3 |
Prerequisite: 1501531 Machine Learning
This advanced graduate course explores in depth several important topics in machine learning. The contents will vary depending on the topic. |
1501638 |
Topics in Artificial Intelligence |
3 |
Prerequisite: 1501530 Advanced Artificial Intelligence
This advanced graduate course explores in depth several important topics in artificial intelligence. The contents will vary depending on the topic. |
1501641 |
Applied Human Computer Interaction |
3 |
Prerequisite: Graduate standing
This course is aimed to introduce students to fundamentals of HCI together with its application in novel UI design and development using state-of-the-art interaction mechanisms. The course covers the concepts, methods, and techniques in planning, designing, prototyping, and evaluating user interfaces for interactive systems. Topics include design principles, usability principles and engineering, solving user-centered problems, device interaction, and graphical user interface design (2D and 3D interfaces). For the application, the course introduces development concepts for controller-based UI design for desktop, mobile, and virtual reality. In addition, the course also introduces the design and development of controller-free natural user interface design and development for aforementioned systems. |
1501668 |
Big data & Data Analytics |
3 |
Prerequisite: : Introduction to Database Management Systems (1501263) or 1501567 or equivalent
Big data is becoming one of the most important technology that enables organizations to store, manage, and manipulate vast amounts of data efficiently to gain business insights. Big data course provides the fundamentals, technologies, and tools to understand and apply the following the Big Data analytics. Topics cstuovered are: Big Data types, technologies, analytical tools, numerical, textual, image and stream analysis, and applications of spatial data and remote sensing. |
1501692 |
Thesis in Artificial Intelligence |
9 |
Prerequisite: : Completion of 12 credit hours
A comprehensive research project carried out individually under the supervision of one or more faculty members. The work involves original research leading to the solution of a research problem, and should be publishable in the form of a research paper. The thesis has to be defended in front of an examination committee to achieve the pass grade. |