COMP2101 Introduction to Computer Science
4 Credit Hours
Prerequisite: (FPCS0101, FPEL0560) or (FPCS0102, FPEL0560) or (FPCS0101, FPEL0600) or (FPCS0102, FPEL0600) or (FPCS0101, FPEL0601) or (FPCS0102, FPEL0601) or (FPCS0101, FPEL0602) or (FPCS0102, FPEL0602).
This course introduces some fundamental topics in computer science. This includes numbering systems, data representation, problem solving and algorithm design. Furthermore, the course includes the study and practice of basic programing concepts such as data types, variables, arrays, selection, repetition, data files and functions.
COMP2202 Fundamentals of Object Oriented Programming
3 Credit Hours
This course introduces the concepts of object-oriented programming (OOP) and object-oriented-design (OOD). The course addresses the following topics: Abstract Data Types (ADTs), Classes, Objects, Inheritance, Polymorphism, Exceptions, and Memory Allocation. On Completion of this course students should be familiar with OOP principles and be able to implement them using an object oriented programming language.
COMP3203 Introduction to Data Structures and Algorithms
3 Credit Hours
This course introduces the basic data structures, and algorithms for processing data. It emphasizes how to specify, use, and implement Abstract Data Types (ADT). The course also covers algorithm complexity analysis techniques. Topics covered include ADTs (e.g. lists, stacks, queues, trees, hash tables), and basic sorting, and searching algorithms.
COMP3205 Introduction to Database Systems
3 Credit Hours
This course introduces fundamental concepts of database systems, namely structural and functional architectures, data modeling, entity-relationship model, relational model, normalization, database query languages (relational algebra, relational calculus, SQL), physical data storage (file structures and organizations, and indexing), and an introduction to the functionality of database management systems such as transaction management.
COMP3401 Introduction to Software Engineering
4 Credit Hours
This is an introductory course to the field of software engineering. It presents the basic principles and concepts of software engineering giving a firm foundation for further course work in the field and computers in general. It gives broad coverage of the most important terminology and concepts in software engineering. Upon completing this course, students will be able to do basic modeling and design, particularly using UML. They will also have a basic understanding of requirements, software architecture, and testing.
COMP3503 Introduction to Computer Systems
3 Credit Hours
The course illustrates how programmers can employ their system knowledge to enhance program development. Topics encompass data and machine-level representation, processor architecture, program optimization, memory management, linking, process control, virtual memory, system-level I/O, network programming, and multithreading with synchronization.
Comp3601 Bioinformatics Algorithms
3 Credit Hours
This course introduces key bioinformatics concepts and their related computational techniques. A hands-on approach is adopted to discuss the underlying algorithms currently used to analyze biological data. Major topics covered include Gene and Protein Alignments, Sequence Assembly, Gene Prediction, Structure prediction, Molecular Evolution and Gene Expressions.
Comp4445 Summer Training
0 Credit Hours
The student is expected to undertake a department approved practical training on an IT-related topic in a government or private institution in Oman. The training will take place during the normal summer teaching period. A training supervisor from the institution should be assigned. The student is expected to submit a report and the supervisor is expected to submit a statement of student performance.
Comp4509 Introduction to Computer Security
3 Credit Hours
This course provides an introduction to security and privacy issues in various aspects of computing, including programs, operating systems, networks, databases, and Internet applications. It examines causes of security and privacy breaches, and gives methods to help prevent them.
CSAI2600 Programming Fundamentals for Artificial Intelligence
3 Credit Hours
This course offers a comprehensive introduction to the programming concepts essential for ML and AI at large. Students will learn data types and data manipulation, as well as the fundamental algorithms crucial for implementing ML and AI systems. Through hands-on practice, students will develop proficiency in coding for AI applications, preparing them for advanced studies in the field.
CSAI3100 Introduction to artificial intelligence
3 Credit Hours
The course presents and discusses concepts and algorithms at the foundation of artificial intelligence. The course covers the theory of knowledge representation, systematic and informed search algorithms, constraint-satisfaction problems, adversarial search, classification, optimization, logic and rule-based systems, and the basics of machine learning and modern artificial intelligence.
CSAI3101 Introduction to Machine Learning
3 Credit Hours
This course provides a broad introduction to Machine Learning. It addresses the theoretical background of learning and equips students with the practical knowledge to apply Machine Learning techniques. Concepts and techniques related to supervised learning, unsupervised learning, and reinforcement learning are discussed and practiced using an adequate programming environment.
CSAI3105 Information retrieval and text analytics
3 Credit Hours
The course covers search engine theory, design, implementation and evaluation. Topics include statistical text characteristics, information representation, lexical retrieval models, exact- and best-match retrieval and recent neural retrieval. Algorithms and models including pageRank, LSI, LDA, BM25, and vector space models. The software component includes implementing and evaluating search engines.
CSAI4101 Deep Learning
3 Credit Hours
This course explores diverse Deep-Learning methodologies for constructing representations from raw data via multi-layered neural networks. Topics encompass foundational neural networks, convolutional and recurrent structures, deep unsupervised learning, reinforcement learning, and their practical applications across a spectrum of Artificial Intelligence domains.
CSAI4102 Mobile Robotics Programming
3 Credit Hours
This course provides the basic concepts and algorithms required to develop mobile robots that move in effective, safe, and predictable ways in complex environments. The course covers the basics of mobile robot controls, kinematic theory, navigation, localization, planning, and mapping.
CSAI4103 Introduction to Natural Language Processing
3 Credit Hours
This course is an introduction to the field of Natural Language Processing (NLP). Topics covered include tokenization, language modeling, tagging and parsing including common algorithms for probabilistic modeling. The course discusses NLP applications such as sentiment analysis, and named entity recognition. Students will learn to apply machine learning for NLP tasks using open-source libraries.
CSAI4104 Introduction to Computer Vision
3 Credit Hours
This course focuses on designing and implementing programs for image and video understanding tasks. It covers digital image processing basics like acquisition, enhancement, restoration, edge detection, and segmentation. Students learn techniques for interpreting image/video content for inspection, detection, tracking, and recognition, with hands-on practice in a specialized environment.
CSAI4105 Digital Entrepreneurship
3 Credit Hours
This course covers the essentials of launching and managing a digital business. Topics include digital business models, the digital entrepreneurship ecosystem, and the stakeholders’ roles. It also addresses advanced technologies, social and sustainable development, and factors driving the success of digital startups. Students will be able to evaluate business plans and analyze startup case studies.
CSAI4106 Competitive Programming in Artificial Intelligence
3 Credit Hours
This course explores advanced concepts and methodologies essential for competitive AI environments. Through hands-on experiences, students will deepen their understanding of crucial AI principles, including dynamic programming, graph algorithms, search algorithms, string manipulation algorithms, and computational geometry, empowering them to develop innovative and efficient AI solutions.
CSAI4107 Industry Micro-credentials in AI
3 Credit Hours
This course offers a comprehensive exploration of Artificial Intelligence within various industries, providing students with the knowledge and skills required to leverage AI technologies effectively. Tailored towards professionals seeking to enhance their expertise in AI applications specific to the Industry, this course covers fundamental concepts, practical implementations, and industry-specific case studies.
CSAI4200 Ethics in Artificial Intelligence
2 Credit Hours
This course discusses different aspects of AI ethics, including algorithmic ethics, robotic ethics, digital ethics, professional and user experience ethics. It discusses the roles, pertinent ethical codes, and the responsibilities and rights of the involved professionals and users. It explores the societal, legal, economic, and environmental frameworks surrounding ethical dilemmas, drawing insights from real-life case studies.
CSAI5100 Nature Inspired Algorithms
3 Credit Hours
This course covers modern algorithms that are inspired by nature such as evolutionary algorithms to address computationally complex and challenging problems in optimization. Students will be exposed to methods such as genetic algorithms, differential evolution, neural networks, clonal selection, and swarm intelligence based algorithms, and then apply them to solve real-life problems.
CSAI5101 Deep Learning Methods for Natural Language Processing
3 Credit Hours
In this course, students will be exposed to methods of Deep Learning for NLP, allowing for the creation of models for NLP tasks such as language translation, understanding, and generation. Topics covered include: LLMs, distributed representations of linguistic entities via embedding, long-span deep sequence modeling of natural language including RNNs, LSTM, GRUs, Self-attention and Transformers.
CSAI5102 Advanced Topics in Computer Vision
3 Credit Hours
This course aims at building the foundation concepts for modern computer vision. It discusses major Deep Learning models for Computer Vision tasks such as CNN, RNN, LSTM, and ViT. It also presents the foundations of Generative and Autoregressive models and 3D Deep Learning architectures. Evaluation of the performance of the models is conducted using deep learning programming environments.
CSAI5106 Automatic Speech Recognition
3 Credit Hours
This course discusses main formalisms, models and algorithms necessary for developing ASR applications. Topics covered include anatomy of Speech, Signal Representation, Phonetics and Phonology, Signal Processing and Feature Extraction, Transformation, Hidden Markov Modeling, Language Modeling, Neural Networks such as TDNN, LSTM, and RNN and other recent ML techniques used in speech recognition.
CSAI5107 New Trends in Artificial Intelligence
3 Credit Hours
This course explores recent advancements in Artificial Intelligence (AI), with a focus on emerging trends and innovations. Students will critically analyze the latest AI algorithms and models, and evaluate their implementation.
CSAI5108 Virtual, Augmented and Mixed Reality
3 Credit Hours
This course introduces concepts and practical applications related to utilization of virtual, augmented and mixed reality technology in various domains. Topics include spatial computing, 3D modeling, interaction design, and user experience principles. Students will learn about real-world case studies and hands-on projects, gaining practical skills in creating immersive experiences.
CSAI5109 Computational Question answering
3 Credit Hours
The course covers paradigms and algorithmic approaches to question answering (QA) including information retrieval-based QA and knowledge-based QA and presents document and passage retrieval and methods for answer extraction: feature-based, N-gram tiling, and neural answer extraction. The practical includes adopting QA modules to improve performance on benchmark datasets using established metrics.
CSAI5110 Natural Language Processing for Healthcare
3 Credit Hours
This course discusses Natural Language Processing (NLP) applications for healthcare. Students will learn about common medical ontologies and knowledge databases and other important resources for applying NLP to medical text. NLP applications such as patient outcome prediction, medical question answering, medical text summarization, and medical literature understanding will be discussed.
CSAI5111 Generative Artificial Intelligence Models
3 Credit Hours
This course discusses techniques for creating AI models capable of generating new data instances, images, text, and other content. Topics include generative adversarial networks (GANs), variational auto-encoders (VAEs), and other advanced generative models. It covers theory, design, implementation, and practical applications including image synthesis, natural language generation, and creative AI.
CSAI5112 machine translation
3 Credit Hours
This course discusses the main approaches and algorithms for developing machine translation systems. Topics covered include designing MT models, creating parallel training data, learning parameters, search algorithms used in MT, and evaluation metrics to assess the quality of MT output. The course also briefly covers related tasks such as dialog response generation and sequence transduction.
CSAI5113 Medical Image Analysis
3 Credit Hours
This course equips students with theoretical knowledge and practical abilities in medical image processing and analysis. It covers medical image processing and analysis, teaching denoizing, registering, visualizing, segmenting, and understanding 2D, 3D, and 4D images. It introduces classical techniques and Deep Learning architectures, practiced using SimpleITK, MONAI, TensorFlow, and PyTorch.
CSAI5114 Pattern Recognition for Biometrics
3 Credit Hours
This course discusses biometric fundamentals, theory, and hands-on experience for designing multi-level security applications. Addressed topics include an introduction to biometrics, identification, and recognition based on face, iris, fingerprint, speaker, and other biometrics. Ethical issues and concerns related to deploying biometric applications, and future trends will also be discussed.
CSAI5115 Reinforcement Learning
3 Credit Hours
This course introduces reinforcement learning (RL) which is a strategy of learning through feedback from interaction with the environment. Covered topics include algorithms like Markov Decision Processes, value and policy iteration, Q-learning, Deep Q Networks (DQN), and Policy Gradient methods. RL algorithms will be explored in various contexts including computer vision, language, and gaming.
CSAI5200 Artificial Intelligence for Cyber Security
3 Credit Hours
This course explores the integration of Artificial Intelligence into cybersecurity practices. It utilizes machine learning models including outlier detection, clustering, classification, and regression, to defend data and systems from cybersecurity threats. Topics include financial crime investigation, malware detection, phishing prevention, ransomware mitigation, and network intrusion detection.
CSAI5201 Big Data and Cloud Computing
3 Credit Hours
This course introduces the main concepts and techniques for Big Data and Cloud. It discusses Big Data concepts, database systems such as NoSQL, and Big Data Processing on the Hadoop platform. It discusses the main Cloud Computing enabling technologies and architectures, public cloud infrastructure, Distributed programming models such as MapReduce and deploying Big Data applications on cloud.
CSAI5202 knowledge representation and reasoning
3 Credit Hours
This course presents and discusses principles and practices of knowledge representation (KR) including types of logic suitable for KR, and inference and reasoning in these systems. The course presents ontologies, common sense knowledge, symbolic reasoning, semantic web technologies, classical and modern KR schemes, their computational properties, and algorithms for different types of reasoning.
CSAI5901 Graduation Project in Artificial Intelligence I
2 Credit Hours
This graduation project course allows students to apply their knowledge and skills in artificial intelligence to solve real-world problems. It emphasizes teamwork, user interaction, and soft skills. It requires a structured progress report and oral presentations, including an abstract, introduction, literature review, design solution, anticipated outcomes, conclusions, and references.
CSAI5902 Graduation Project in Artificial Intelligence II
3 Credit Hours
This course is a continuation of the Graduation Project I. It provides students opportunities to strengthen skills essential for developing extensive real-world AI applications. These skills include teamwork, user interaction, solution development, and full-scale software construction. In addition, it involves evaluations of the final product including both implementation and presentation of the entire project.