Students are expected to complete 148 units within the curriculum structure below:

Major Required Courses

Students are required to take the following 18 Major Required Courses (54 units)

COMP1023
Foundations of C Programming
3Units

Pre-requisite(s): None

Course Description:
This course provides students with basic knowledge of computer-oriented problem solving methodologies, algorithm development, structured programming concepts and design techniques, and implementation tools that facilitate debugging and testing. In particular, structured programming skills will be illustrated with a contemporary programming language.

COMP2003
Data Structures and Algorithms
3Units

Pre-requisite(s):
COMP1013 STRUCTURED PROGRAMMING, or
GCIT1013 FOUNDATIONS OF C PROGRAMMING, or
COMP1023 FOUNDATIONS OF C PROGRAMMING, or
COMP2013 OBJECT-ORIENTED PROGRAMMING, or
STAT2043 STRUCTURED PROGRAMMING (FOR STAT STUDENTS), or
COMP3153 C++ PROGRAMMING LANGUAGE

Course Description:
This course develops students' knowledge of data structures and their associated algorithms. It introduces the concepts and techniques of structuring and operating on Abstract Data Types in problem solving. Common sorting, searching and graph algorithms will be discussed, and their complexity studied.

COMP2013
Object-Oriented Programming
3Units

Pre-requisite(s): None

Course Description:
This course introduces object-oriented programming concepts, principles, and techniques, including classes, objects, inheritance, and polymorphism. All these concepts are illustrated using a contemporary object-oriented programming language. Upon completion, students should be able to use an object-oriented language to develop complex programmes.

COMP3013
Database Management Systems
3Units

Pre-requisite(s):
COMP1013 STRUCTURED PROGRAMMING, or
GCIT1013 FOUNDATIONS OF C PROGRAMMING, or
COMP1023 FOUNDATIONS OF C PROGRAMMING, or
STAT2043 STRUCTURED PROGRAMMING (FOR STAT STUDENTS), or
COMP3153C++PROGRAMMING LANGUAGE

Course Description:
This course introduces how to represent the data in a database for a given application and how to manage and use a database management system. Topics include: conceptual modelling of a database, relational data model, relational algebra, database language SQL, relation database design, and emerging XML data models. In addition, hands-on DBMS experience is included.

COMP3023
Design and Analysis of Algorithms
3Units

Pre-requisite(s):
COMP2003 DATA STRUCTURES AND ALGORITHMS, or
COMP3143 DATA STRUCTURE (FOR FM STUDENTS)

Course Description:
This course builds on the study of the analysis and implementation of algorithms and data structures (COMP2003). The goal is to introduce a number of important algorithms that are interesting both from a practical and theoretical point of view. Algorithm design paradigms such as divide-and-conquer and dynamic programming will be discussed, and algorithms for sorting, searching, and graph problems, etc. will be developed.

COMP4163
Neural Networks and Deep Learning
3Units

Pre-requisite(s):
COMP3013 DATABASE MANAGEMENT SYSTEMS

Course Description:
This course presents the principles and applications of Neural Network and Deep Learning, which is a branch of Artificial Intelligence. This course focuses on the use ofdeep neural network and big data, the applications of which arechanging the way we live in our modern world. Students will learn about fundamental concepts as well as state-of-the-art tools and techniques.

DS1023
Advanced Mathematics for Data Science
3Units

Pre-requisite(s): 
(MATH1123 Calculus for Science and Engineering or MATH1073 Calculus I or MATH1103 Calculus), and
(MTH1003 Linear Algebra or MATH 1053 Linear Algebra I or MATH1173 Linear Algebra)

Course Description:
This is an advanced mathematics course for data science students. It aims to teach students advanced concepts and methods of various subjects in mathematics. It is a fundamental course to support students' further study in many subjects in data science such as advanced statistics, regression analysis, optimizations and numerical computations. This course also aims to train and improve students' mathematical thinking skills.

DS2043
Data Processing Workshop I
3Units

Pre-requisite(s): None

Course Description: 
This workshop aims to lead students to learn basic data processing pipeline using python. It will help students understand the concepts of applying data processing to solve problems. Students will learn how to deal with the whole life cycle of data processing including data acquisition, data cleaning, data storage, data analysis and data visualization. Hands on practices will be emphasized on this course.

DS3043
Data Processing Workshop II
3Units

Pre-requisite(s): None 

Course Description:
This workshop aims to help students have some practices in working on big data processing. The course will also give a brief introduction of Linux, network and internet, cloud computing, NoSQL database, Hadoop platform and how to use Hadoop and NoSQL to do big data analytics. The students are expected to have a clear understanding of Hadoop and its application after this course.

DS4004
Final Year Project I (DS)
3Units

Pre-requisite(s): None 

Course Description:
This course will enable students to demonstrate an integrated understanding of Data Science principles and techniques and gain practical experience of developing and applying enabling technologies. Students will undertake an individual project under the supervision of a faculty member and gain the practical experience of applying computer systems principles and techniques acquired from the course to the solution of real-life problems. The project demands careful planning and creative application of underlying theories and enabling technologies. A thesis and an oral presentation are required upon successful completion of the project.

DS4023
Machine Learning
3Units

Pre-requisite(s):
COMP1013 STRUCTURED PROGRAMMING, or
GCIT1013 FOUNDATIONS OF C PROGRAMMING, or
COMP1023 FOUNDATIONS OF C PROGRAMMING, or
STAT2043 STRUCTURED PROGRAMMING (FOR STAT STUDENTS), or
COMP2013 OBJECT ORIENTED PROGRAMMING, or
COMP3153 C++ PROGRAMMING LANGUAGE

Course Description:
The course will provide an introduction to Machine Learning and its core models and algorithms. The aim of the course is to give the student the basic ideas and intuition behind modern machine learning methods as well as a bit more formal understanding of how, why, and when they work.

MATH1003
Linear Algebra
3Units

Pre-requisite(s): None

Course Description:
This course introduces the basic techniques in matrix algebra, which is the foundation for more advanced mathematics and statistics subjects. Major emphasis will be on the system of linear equations, linearly independence, and eigenvalue problems in finite dimensional vector spaces. Basic ideas and techniques on calculus will be introduced.

MATH1123
Calculus For Science and Engineering
3Units

Pre-requisite(s): None

Course Description:
Calculus for Science and Engineering introduces the differential and integral calculus for univariate functions. It emphasizes the basic ideas and concepts on limits, derivatives, antiderivatives, definite integral, simple differential equations and corresponding applications in natural science and engineering. It provides the foundations for more advanced quantitative courses for science and engineering student.

MATH2003
Discrete Structures
3Units

Pre-requisite(s): None

Course Description:
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.

OR4023
Optimization
3Units

Pre-requisite(s):
MATH1053 Linear Algebra I or MATH1003 Linear Algebra, and
MATH1073 Calculus I or MATH1123 Calculus For Science and Engineering

Course Description:
This course introduces the fundamental theory and techniques for both unconstrained and constrained optimization. There will be an overview of the existing numerical software packages. Finally some interdisciplinary techniques and applications related to optimization will be discussed.


STAT2003
Advanced Statistics
3Units

Pre-requisite(s):
MATH1073 CALCULUS I, or
MATH1123 CALCULUS FOR SCIENCE AND ENGINEERING

Course Description:
This course introduces the basic probability theory and theoretical statistics (probability distributions, estimation and hypothesis test criteria, etc.) so that the students can understand the foundations of general statistical practices and are also well prepared for the advanced subjects like regression analysis, multivariate analysis, and time series forecasting.

STAT2013
Regression Analysis
3Units

Pre-requisite(s):
MATH1053 LINEAR ALGEBRA I & MATH1063 LINEAR ALGEBRA II, or
MATH1003 LINEAR ALGEBRA

Course Description:
This course introduces the theory of regression analysis and techniques in data analysis. It will emphasise on recent developments in the regression analysis such as statistical diagnostics and nonlinear regression; and to motivate students to analyse multivariate data with the help of statistical packages such as MATLAB, R or SPSS.

STAT4073
Data Mining
3Units

Pre-requisite(s):
MATH1083 CALCULUS II and MATH1063 LINEAR ALGEBRA II, or
COMP1023 FOUNDATIONS of C PROGRAMMING, or
COMP2013 OBJECT-ORIENTED PROGRAMMING

Course Description:
In this information age much data are collected, but less often analysed. This course covers methods for gleaning useful information for large data sets. These methods may be used to help improve product marketing, increase operational efficiency and discover new knowledge.

Major Elective Courses

Students are required to select 5 courses (15 units) from the list below. However, they are encouraged to choose more major elective courses as free electives based on their interests and plans for future development.

COMP1003
Computer Organisation
3Units

Pre-requisite(s): None

Course Description:
An introduction to the building blocks and organisation of modern digital computers. The course answers the question: How does a computer work? Topics include: historical development of computing and the von Neumann model; data representation in computer systems; Boolean algebra, digital logic and its application to understanding Central Processing Unit (CPU) organisation; combinational and sequential circuits; Finite State Machine (FSM); Instruction Set Architecture (ISA); Assembly Language Programming; other basic modules, such as cache memory, virtual memory, and input/output techniques.

COMP3003
Data Communications and Networking
3Units

Pre-requisite(s):
COMP1003 COMPUTER ORGANISATION

Course Description:
Students will learn the principles of data communications, computer networks and network programming. Topics include: Network hardware and software, Network topologies and categories, Reference models and standards, Physical layer: signal analysis, bandwidth and data rate, transmission media, encoding, transmission, Data link layer, Network layer, Ethernet, Fast Ethernet, Gigabit Ethernet, Wi-Fi, TCP/IP, Socket programming, Client and Server software.

COMP3033
Operating Systems
3Units

Pre-requisite(s):
COMP1013 STRUCTURED PROGRAMMING, or
GCIT1013 FOUNDATIONS OF C PROGRAMMING, or
COMP1023 FOUNDATIONS OF C PROGRAMMING, or
COMP2013 OBJECT-ORIENTED PROGRAMMING, or
STAT2043 STRUCTURED PROGRAMMING (FOR STAT STUDENTS), or
COMP3153 C++ PROGRAMMING LANGUAGE

Course Description:
Introduces the fundamentals of operating system design and implementation. Topics include an overview of the components of an operating system, mutual exclusion and synchronisation, deadlocks and starvation, implementation of processes and threads, resource scheduling algorithms, memory management, and file systems.

COMP3063
Software Engineering
3Units

Pre-requisite(s):
COMP2013 OBJECT-ORIENTED PROGRAMMING

Course Description:
This course discusses the principles and practical aspects of software development. It studies the methodology of software development as well as the organisation, planning and management of the development process so that students will appreciate the difficulties involved in a large system development project and the importance of a disciplined approach to the problem.

COMP3073
Introduction to Robotics
3Units

Pre-requisite(s):
COMP1013 STRUCTURED PROGRAMMING, or
GCIT1013 FOUNDATIONS OF C PROGRAMMING, or
COMP1023 FOUNDATIONS OF C PROGRAMMING, or
COMP2003 DATA STRUCTURES AND ALGORITHMS

Course Description:
This course aims to introduce students to the concepts involved with autonomous robotic systems. The objective of this course is to use a hands-on approach to introduce the basic concepts in robotics, focusing on mobile robots.

COMP3083
Numerical Computation
3Units

Pre-requisite(s):
MATH1003 LINEAR ALGEBRA

Course Description:
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.

COMP3103
Design Patterns
3Units

Pre-requisite(s):
COMP2013 OBJECT-ORIENTED PROGRAMMING

Course Description:
This course introduces popular design patterns that can be used in software development.

COMP3123
Software Testing
3Units

Pre-requisite(s):
COMP3063 SOFTWARE ENGINEERING

Course Description:
This course teaches students different kinds of testing strategies and how to develop or evaluate tools to automate software testing.

COMP3163
Mobile Application Development
3Units

Pre-requisite(s):
COMP2013 OBJECT-ORIENTED PROGRAMMING

Course Description:
This course is designed to introduce and familiarise participants with programming in the Android environment. Students will learn skills for creating and deploying Android applications, with particular emphasis on software engineering topics including software architecture, software process, usability, and deployment. Hands on experience in the form of exercises are included throughout the course to reinforce material that has been presented in lecture form.

COMP3173
Compiler Construction
3Units

Pre-requisite(s):
COMP1013 STRUCTURED PROGRAMMING, or
GCIT1013 FOUNDATIONS OF C PROGRAMMING, or
COMP1023 FOUNDATIONS OF C PROGRAMMING, or
COMP2013 OBJECT-ORIENTED PROGRAMMINGor
STAT2043 STRUCTURED PROGRAMMING (FOR STAT STUDENTS), or
COMP3153 C++ PROGRAMMING LANGUAGE

Course Description:
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.

COMP3183
Financial Computing
3Units

Pre-requisite(s):
COMP1013 STRUCTURED PROGRAMMING, or
GCIT1013 FOUNDATIONS OF C PROGRAMMING, or
COMP1023 FOUNDATIONS OF C PROGRAMMING, or
COMP2013 OBJECT-ORIENTED PROGRAMMING

Course Description:
This course aims to introduce students to the principles of computational finance and financial data analysis. The objective of this course is to explore various relations between computer science and finance.

COMP4003
Theory of Computation
3Units

Pre-requisite(s):
MATH2003 DISCRETE STRUCTURES

Course Description:
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.

COMP4023
Computer and Network Security
3Units

Pre-requisite(s): None

Course Description:
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.

COMP4033
Computer Graphics
3Units

Pre-requisite(s):
COMP2003 DATA STRUCTURE AND ALGORITHMS, and
MATH1003 LINEAR ALGEBRA

Course Description:
This course introduces graphics hardware architectures and systems, 2D geometric primitives, geometric Transformations, 3D graphics, 3D object representations, rendering and implementation algorithms, curves and surfaces, animation, etc.

COMP4053
Database System Implementation
3Units

Pre-requisite(s):
COMP3013 DATABASE MANAGEMENT SYSTEMS, or
DS2003 FUNDAMENTALS OF DATABASE SYSTEMS

Course Description:
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.

COMP4063
Digital Media Computing
3Units

Pre-requisite(s):
COMP1013 STRUCTURED PROGRAMMING, or
GCIT1013 FOUNDATIONS OF C PROGRAMMING, or
COMP1023 FOUNDATIONS OF C PROGRAMMING, or
COMP2013 OBJECT-ORIENTED PROGRAMMING

Course Description:
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.

COMP4073
Distributed Computing Systems
3Units

Pre-requisite(s): None

Course Description:
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.

COMP4093
Internet and the World Wide Web
3Units

Pre-requisite(s):
COMP3003 DATA COMMUNICATIONS AND NETWORKING

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

COMP4113
Computer Vision and Pattern Recognition
3Units

Pre-requisite(s):
COMP2003 DATA STRUCTURES AND ALGORITHMS, and
MATH1003 LINEAR ALGEBRA

Course Description:
This course covers basic concepts in computer vision and pattern recognition. Topics include image sensing and camera perception, 2D image analysis such as filters, edge detection and Hough transform, pattern classification, physics-based vision, stereo and motion, and solid model recognition. It concludes with current trends and challenges in computer vision and pattern recognition.

COMP4123
Information Retrieval and Search Engine
3Units

Pre-requisite(s):
COMP2003 DATA STRUCTURES AND ALGORITHMS

Course Description:
This course introduces the basic principles of information retrieval and search engines. Advanced models and techniques in information processing and retrieval will be covered.

COMP4143
Introduction to Web Intelligence
3Units

Pre-requisite(s): None

Course Description:
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.

COMP4153
Quantum Finance and Intelligent Financial Trading Systems
3Units

Pre-requisite(s):
COMP1013 STRUCTURED PROGRAMMING, or
GCIT1013 FOUNDATIONS OF C PROGRAMMING, or
AI1013 OBJECT-ORIENTED PROGRAMMING, or
COMP1023 FOUNDATIONS OF C PROGRAMMING, or
COMP2013 OBJECT-ORIENTED PROGRAMMING, or
COMP3153 C++ PROGRAMMING LANGUAGE, or
STAT2043 STRUCTURED PROGRAMMING (FOR STAT STUDENTS)

Course Description:
With the exponential growth of program trading in worldwide financial industry, Quantum Finance and its underlying technologies including quantum field theory and chaos theory become one of the hottest topics in the Fintech community. Many worldwide financial institutions and fund houses have the needs to recruit computer professionals with basic knowledge on quantum finance to develop intelligent financial systems. The objective of this course is to teach students the basic knowledge of quantum finance and its underlying theories and technologies including quantum field theory, chaos theory and chaotic neural networks and how to apply these technologies to finance industry to develop intelligent financial prediction and trading systems.

COMP4173
Digital Image Processing
3Units

Pre-requisite(s):
MATH1003 LINEAR ALGEBRA, or
MATH1053 LINEAR ALGEBRA I

Course Description:
This course provides fundamentals of digital images processing including basic image operations in both spatial and frequency domains, image restoration, morphological image processing, image segmentation and applications, human visual system and colour image processing.

DS2033
Linux System Management and Programming
3Units

Pre-requisite(s): None 

Course Description:
This course provides students with basic knowledge of Linux Operating Systems, allowing them to familiar with common shell commands, especially commands related to Linux system management techniques, such as add/remove users, install/uninstall application programs, monitor system status, kill processes, manage file systems, and more. Also, some basic C programming will be covered, such as how to use gcc/g++, and make commands to compile and run C/C++ programs, also allow them to familiar with docker tool.

DS3023
Digital Logic Design
3Units

Pre-requisite(s): None

Course Description:
This course introduces students to the basic concepts of digital systems, including analysis and design. Both combinational and sequential logic will be covered. Students will gain experience with several levels of digital systems, from simple logic circuits to programmable logic devices and hardware description language.

DS3033
Technical Communication
3Units

Pre-requisite(s): None 

Course Description:
The aim of this course is to equip students with some of the most demanded soft skills in current and technical business world. It aims to cultivate well-rounded students with good personal characters, effective communication skills, team work sprits and global-outlook. It aims to train the students with persuasive technical communication skills, build credibility, as well as to provide some learnable principles of interpersonal skills. It aims to train well-rounded students with entrepreneurship for the fast developing world through liberal arts education.

DS3053
Requirements Engineering for Data Science Projects
3Units

Pre-requisite(s): None

Course Description:
The aim of this course is to let students experience a complete requirements elicitation process for a Data Science (DS) project. We will learn the Volere Requirement Process, including methods to identify the correct business problem, and to derive & design innovative solutions. We will also learn how to communicate requirements properly using natural language and various modeling techniques such as Unified Modeling Language (UML) and Goal-Oriented Modeling Frameworks.


DS4005
Final Year Project II (DS)
3Units

Pre-requisite(s):
DS4004 FINAL YEAR PROJECT I (DS)

Course Description:
Students will undertake an individual project under the supervision of a faculty member and gain the practical experience of applying computer systems principles and techniques acquired from the course to the solution of real-life problems. The project demands careful planning and creative application of underlying theories and enabling technologies. A thesis and an oral presentation are required upon successful completion of the project. This course is the extension of the course COMP3100-Final year project I. Only those students who are competent in the FYP I will be eligible to take this course.

DS4033
Text Mining and Analytics
3Units

Pre-requisite(s): None

Course Description:
This course introduces the basic concepts, principles, and major techniques in text mining. It apprehends the value of text mining in a broad spectrum of areas, including business intelligence, information acquisition, social behaviour analysis and decision making. It will enable students to discover interesting patterns, extract useful knowledge, and support decision making, with statistical approaches applied to text data.

DS4053
Introduction to Bioinformatics
3Units

Pre-requisite(s): None

Course Description:
The course is designed to introduce the most important and basic concepts, methods, and tools used in Bioinformatics which includes an introduction to Bioinformatics, experience with select bioinformatics tools and databases currently utilized in the life sciences.

DS4063
Social Computing
3Units

Pre-requisite(s):
COMP1013 STRUCTURED PROGRAMMING, or
GCIT1013 FOUNDATIONS OF C PROGRAMMING, or
COMP1023 FOUNDATIONS OF C PROGRAMMING, or
COMP2013 OBJECT-ORIENTED PROGRAMMING, and
STAT2003 ADVANCED STATISTICS

Course Description:
The aim of this course is to introduce the latest development of social computing, emphasize social computing techniques which include crowdsoursing online, social network analysis and social platforms and motivate students to analyse data containing social interactions。

DS4073
Introduction to Data Visualisation
3Units

Pre-requisite(s): None 

Course Description:
The aim of this course is to teach students how to create visualisations that effectively communicate the meaning behind data to an observer through visual perception. We will learn how a computer displays information using computer graphics, and how the human perceives that information visually. We will also study the forms of data, including quantitative and non-quantitative data, and how they are properly mapped to the elements of a visualisation to be perceived well by the observer. We will briefly overview some design elements for effective visualisation. The course will also cover with the integration of visualisation into database and data-mining systems to provide support for decision making, and the effective construction of a visualisation dashboard

DS4083
Big Data Analytics
3Units

Pre-requisite(s):
COMP2003 DATA STRUCTURE AND ALGORITHMS, and
DS2013 DATA PROCESSING WORKSHOP I or DS2043 DATA PROCESSING WORKSHOP I

Course Description:
The course is to introduce the latest development of big data analytics and concepts of mining massive datasets. It emphasizes big data analytical techniques which include Finding Similar Items, Mining Data Streams, Link Analysis, Frequent Itemsets, Association rules, Clustering over Massive Datasets, Advertising on the Web, Recommender Systems, Mining Social-Network Graphs, Dimensionality Reduction, and can motivate students to apply big data analytics in addressing problems in real world applications.

DS4093
Introduction to Recommender System
3Units

Pre-requisite(s):
DS2013 DATA PROCESSING WORKSHOP I or DS2043 DATA PROCESSING WORKSHOP I, and
MATH1003 LINEAR ALGEBRA, and
DS4023 MACHINE LEARNING

Course Description:
This course provides an overview of basic methods to developing state-of-the-art recommender systems. It introduces current algorithms for generating personalized recommendations. It discusses how to measure the effectiveness of recommender systems and illustrates the methods with practical case studies. It also covers emerging topics such as deep learning. It provides basic and state-of-the art technology to build real-world recommender systems. It equips students with some necessary skills for industry or for further study.

MATH1163
Advanced Calculus
3Units

Pre-requisite(s):
MATH1123 CALCULUS FOR SCIENCE AND ENGINEERING, or
MATH1073 CALCULUS I, or
MATH1103 CALCULUS

Course Description:
This course introduces the differential and integral calculus for multivariate functions. Advanced Calculus provides the basics of analytic geometry for lines and planes, curvatures for vector functions, partial derivatives, multiple integrals, Infinite sequences and series, and second order differential equations.  Advanced Calculus severs the foundations for many advanced courses and is usually a compulsory courses for most Programmes in top graduate schools.

STAT3003
Survey Sampling
3Units

Pre-requisite(s):
GCNU1003 SPEAKING OF STATISTICS, or
GCNU1043 INTRODUCTION TO PROBABILITY AND STATISTICS, or
GCNU1053 STATISTICS FOR SOCIAL SCIENCE, or
GCNU1063 BUSINESS STATISTICS, or
GFQR1001 A JOURNEY WITH DATA, or
GFQR1013 HANDS ON DATA ANALYTICS FOR EVERYONE, or
GFQR1023 DATA ANALYTICS FOR BUSINESS, or
GFQR1033 STATISTICS IN OUR DAILY LIFE

Course Description:
Sample survey is a popular means for gauging opinions and views of a target population. It is widely used in many areas including behavioural sciences, biomedical sciences, social research, marketing research, financial and business services, public opinions on government policies, etc. However, improperly conducted surveys or inappropriate analyses of the results could lead to seriously wrong conclusions. This course equips students with a sound understanding of survey operations, sampling methods, questionnaire design and analysis of results.

STAT3033
Bayesian Statistics
3Units

Pre-requisite(s):
STAT2003 ADVANCED STATISTICS

Course Description:
This course will present the relevant theory, methodology and computational techniques of modern Bayesian inference and modelling. The main emphasis of the course will be on how to use the Bayesian thinking, modelling and computation to analyse data with complex structure.

STAT3073
Statistical Computing
3Units

Pre-requisite(s):
MATH1083 CALCULUS II or MATH1123 CALCULUS FOR SCIENCE AND ENGINEERING, and
COMP1023 FOUNDATIONS OF C PROGRAMMING

Course Description:
Computational data analysis is an essential part of modern statistics. Competent statisticians must not just be able to run existing programs, but to understand the principles on which they work. They must also be able to read, modify, and write code, so that they can assemble the computational tools needed to solve their data analysis problems. The aim of this course is to expand students' statistical toolbox through numerical and simulation methods. Additionally, the course will teach students how to approach statistical problems from a computational perspective. They will learn how to set up and run stochastic simulations, how to fit basic statistical models and assess the results, and how to work with and filter large data sets.

STAT4003
Experimental Design
3Units

Pre-requisite(s):
STAT2013 REGRESSION ANALYSIS

Course Description:
This course stresses the theory and applications of experimental designs. Various kinds of experimental designs such as factorial design, uniform design and design of computer experiments will be introduced. Statistical analysis and model identification are taught by using a number of real-life examples.

STAT4013
Multivariate Analysis
3Units

Pre-requisite(s):
MATH1053 LINEAR ALGEBRA I and MATH1063 LINEAR ALGEBRA II, or
MATH1003 LINEAR ALGEBRA

Course Description:
This course provides an understanding of classical multivariate analysis and modern techniques in data mining which are useful for analysing both designed experiments and observational studies. Real data in social, life, and natural sciences are analysed using statistical packages such as R or MATLAB.

STAT4043
Categorical Data Analysis
3Units

Pre-requisite(s):
STAT2013 REGRESSION ANALYSIS

Course Description:
To equip students with statistical methods for analysing categorical data arisen from qualitative response variables which cannot be handled by methods dealing with quantitative response, such as regression and ANOVA. Some computing software, such as SAS, S-PLUS, R or MATLAB, will be used to implement the methods. The learning outcome will be the ability to formulate suitable statistical models for qualitative response variables and to analyse such data with computer software.

STAT4063
Time Series Analysis
3Units

Pre-requisite(s):
STAT2013 REGRESSION ANALYSIS

Course Description:
This course provides students with sophisticated statistical techniques and models for analysing time series data. Using statistical packages, such as R and MATLAB, as computational aid, students will learn to use the models for analysis and forecasting where the distributions of arrival-times and withdrawal-times are unknown and not parametrically modelled. This statistical topic has achieved great prominence in the theoretical statistical literature because it is a particularly good arena for the introduction of techniques of estimating and testing finite-dimensional parameter values – such as a treatment-effectiveness parameter in clinical studies – in the presence of infinite-dimensional unknown parameters. Such problems are referred to as semi-parametric.

University Core Courses

All students should complete 37 units of University Core courses to fulfil the graduation requirements.

General Education Programme

All students should complete 18 units of General Education (GE) Courses to fulfil the graduation requirements.

Free Elective Courses

The 24 units of Free Electives could be used by students to (a) spend a semester abroad; (b) take a minor or (c) take more courses offered by the teaching units.

Notes

The curriculum is particularly relevant for the 2022 cohort students. Other students please refer to https://ar.uic.edu.cn/current_students/student_handbook/programme_handbook.htm