Course List

MATH2003 Discrete Structures


This course addresses a variety of fundamental topics in computer science, including propositional and predicate logic, proof technique, set theory, combinatorics, graph theory, and Boolean algebra.

Check Details
MATH1073 Calculus I

微积分 I

This course introduces the basic ideas and techniques in single variable calculus with mathematical rigour to prepare students for more advanced mathematical and statistical subjects.

Check Details
COMP3083 Numerical Computation


This course aims to introduce students to the concepts involved with numerical calculations on computing devices. The objective of this course is to discuss and analyse mathematical principles and algorithms used to solve a variety of problems that arise in disciplines such as the natural and social sciences, and engineering.

Check Details
COMP3173 Compiler Construction


This course introduces the concepts that underline most of the programming languages students are likely to encounter, and illustrates those concepts with examples from various languages. Topics include syntax and semantic analysis, bindings, type systems, programming paradigms, control abstraction and flow.

Check Details
COMP3193 Cloud Computing


This course introduces an overview of the field of Cloud Computing, its enabling technologies, main building blocks of cloud computing systems and its application. This course will cover the topics of cloud infrastructures, virtualization, software defined networks and storage, cloud storage, and programming models. Also, hands-on experience through projects utilizing cloud infrastructures (provided by campus datacentres or public cloud services) will be provided.

Check Details
COMP4003 Theory of Computation


This course aims to introduce the fundamental concepts in theoretical computer science. Topics include deterministic and non-deterministic finite automata, regular languages, context-free languages, Turing machines, Church’s thesis, the halting problem, computability, and complexity. Also, the formal relationships between machines, languages and grammars are addressed.

Check Details
COMP4023 Computer and Network Security


This course introduces the fundamental concepts and techniques in computer and network security. Topics include basic encryption techniques, cryptographic algorithms, authentication and digital signature, public key infrastructure, access control, security models, as well as their applications to, for example, IP security, Web security, and trusted operating systems. In addition, it discusses other system and programming related security issues, including non-malicious errors, computer viruses, and intrusion detection.

Check Details
COMP4043 Data Mining and Knowledge Discovery


This course provides an overview of the concepts and techniques in knowledge discovery and data mining. The students are expected to have some ideas about some basic knowledge discovery and data mining techniques, including classification, clustering, data association and data warehouse.

Check Details
COMP4053 Database System Implementation


This course provides students with an in-depth knowledge of relational database management systems (DBMS). Topics include data storage, index structures, query evaluation, transaction processing, concurrency control, and crash recovery. In addition, advanced topics such as distributed databases and data warehouses will also be covered.

Check Details
COMP4063 Digital Media Computing


This course introduces the basic properties of different types of digital media in the multimedia systems, namely audio, image, and video. As data compression is the most important enabling technology, making modern multimedia systems possible, data compression algorithms and the international standards of these digital media will be discussed.

Check Details
COMP4073 Distributed Computing Systems


This course introduces the needs, key concepts, and techniques underlying the design and engineering of distributed computing systems. The discussions will focus on communications, synchronisation and concurrency control, process management, distributed file services, and case studies. Also included will be an introduction to clustering computing and parallel algorithms.

Check Details
COMP4083 E-technology Architectures, Tools and Applications


This course develops students’ knowledge in emerging e-technologies, including related architectures, tools, and applications. In particular, it introduces the Web from three different aspects: (1) Web as distributed databases; (2) Web as distributed computing platforms; and (3) Web as social networks. It discusses the use of e-technologies in different application domains, including e-business, e-learning, etc.

Check Details
COMP4093 Internet and the World Wide Web


Students will learn the principles of the Internet and the World Wide Web, and study some applications and current topics

Check Details
COMP4103 Artificial Intelligence and Machine Learning


This course presents the principles and fundamental techniques of artificial intelligence, particularly in the field of machine learning. Students not only learn the fundamentals and state-of-the-art techniques, but also acquire some practical insights into the current development of this field

Check Details
COMP4143 Introduction to Web Intelligence


This course introduces the fundamental concepts and practical applications of contemporary Artificial Intelligence (e.g., incorporating knowledge discovery and data mining, intelligent agents, and social network intelligence) and advanced Information Technology (e.g., involving wireless networks, ubiquitous devices, social networks, and data/knowledge grids) in the context of Web-empowered systems, environments, and activities. In addition, it discusses the techniques and issues central to the development of Web Intelligence (WI) computing systems.

Check Details