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

Major Required Courses

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

AI1003
Python Programming
3Units

Pre-requisite(s): None 

Course Description:
This course provides students with basic knowledge of Python Programming language, based on which computer-oriented problem modelling and solving skills can be developed. Students will learn about basic concepts of computer Programming and how to write elegant Python Programmes. Specific topics will include data types, control flows, data structures, functions, and the mechanics of running, testing, and debugging. After learning this course, students will be able to solve problems, explore real-world Programming development challenges, and create small yet practical python applications.

AI1013
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 concepts are illustrated via a contemporary object-oriented Programming language.

AI1023
Database Management Systems
3Units

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

Course Description:
This course provides 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 model. In addition, hands-on DBMS experience is included.

AI1033
Introduction to Computer Systems
3Units

Pre-requisite(s): None 

Course Description:
This course introduces students to the most fundamental concepts in computer hardware and software. It aims to facilitate students to learn how modern electronic computers work. In order to understand how computers work we gradually examine a series of layers from bottom up, each one built on the layer beneath. We start with looking at how data can be represented in binary and how computers can be modelled as hypothetical models such as universal Turing machines, then see how we can make machines which can transform that data using simple digital circuits, which are made of a collections of logic gates. Once we can control those circuits with instructions, we have the basis for Programming languages. The course extends further to cover the basics of operating systems.

AI2003
Data Structures and Algorithm Analysis
3Units

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

Course Description:
This course aims to develop the students' knowledge in data structures and the associated algorithms. This course introduces the concepts and techniques of structuring and operating on abstract data types, commonly used algorithms, classic techniques to design algorithms, and efficiency of algorithms.

AI2013
Introduction to Artificial Intelligence
3Units

Pre-requisite(s):
AI1003 PYTHON PROGRAMMING

Course Description:
This course is designed for students seeking a broad understanding of Artificial Intelligence. This introductory course provides a broad overview of modern artificial intelligence. The students will learn how machines can engage in problem solving, reasoning, learning, and interaction. The students will design, test and implement algorithms. The students will also gain an appreciation of this dynamic field.

AI2023
Artificial Intelligence Workshop
3Units

Pre-requisite(s):
AI1003 PYTHON PROGRAMMING

Course Description:
The aim of the course is to introduce the world of industrial robotic arms and automated manufacturing. The course will serve as practical training how to work with and prepare the physical robots for their missions. An architectural assembly will be proposed, simulated, and prototyped using various Programming languages.

AI2033
Probability and Statistics
3Units

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

Course Description:
The focus of this course is the basic knowledge of the rigorous frame of the probability theory and the objective is to introduce the mathematical foundation of many basic statistical concepts and methods to the students.

AI2043
Operating Systems
3Units

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

Course Description:
This course aims to provide the fundamentals and major concepts of design and principles for operating systems. Topics include an overview of the basic components of an operating system, mutual exclusion and synchronisation, deadlocks and starvation, implementation of processes and threads, resources scheduling algorithms, memory management, and file systems.

AI3003
Neural Networks and Deep Learning
3Units

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

Course Description:
This course teaches students the basic concepts and theories in deep learning, some state-of-the-art algorithm, codes and tools in a variety of computer languages, and teaches students how to apply deep learning to real world problems.

AI3013
Machine Learning
3Units

Pre-requisite(s):
AI1003 PYTHON PROGRAMMING, or
COMP1013 STRUCTURED PROGRAMMING, or
GCIT1013 FOUNDATIONS OF C PROGRAMMING, or
STAT2043 STRUCTURED PROGRAMMING (FOR STAT STUDENTS), or
AI1013 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.

AI3023
Machine Learning Workshop
3Units

Pre-requisite(s):
AI1003 PYTHON PROGRAMMING

Course Description:
The aim of the course is to introduce a cloud-based service for creating and managing machine learning solutions. It’s designed to help students to leverage their existing data processing and model development skills & frameworks.

AI4003
Optimization for Machine Learning
3Units

Pre-requisite(s):
MATH1053 LINEAR ALGEBRA I or MATH1003 LINEAR ALGEBRA, and
MATH1103 CALCULUS or MATH1073 CALCULUS I or MATH1123 CALCULUS FOR SCIENCE AND ENGINEERING

Course Description:
This course is an undergraduate-level course in introduction to optimization for machine learning. The course will provide fundamental knowledge and modern approaches in optimization which are required for beginners in machine learning applications. Introduction to convex optimization models, rate of convergence, gradient descent, the Newton Method, coordinate descent, the Penalty-Based and Primal-Dual Methods will be discussed in the course.

AI4004
Final Year Project I (AI)
3Units

Pre-requisite(s): None

Course Description: 
This course aims to enable students to demonstrate an integrated understanding of AI algorithms systems principles and techniques through solving real-life problems; gain practical experience of developing and applying enabling technologies, and acquire independent prob

# If students select a specific concentration, they must complete the final year's project for the specific concentration, i.e., students from AI in Business and Finance Concentration are required to complete a project using AI to solve a problem in Business and Finance, students from AI in Multimedia Concentration are required to complete a project using AI to solve a problem in Multimedia.


AI4005
Final Year Project II (AI)
3Units

Pre-requisite(s):
AI4004 FINAL YEAR PROJECT I

Course Description:
This course aims to enable students to demonstrate an integrated understanding of AI algorithms systems principles and techniques through solving real-life problems; gain practical experience of developing and applying enabling technologies, and acquire independent problem solving skills as well as oral and written communication skills.

# If students select a specific concentration, they must complete the final year's project for the specific concentration, i.e., students from AI in Business and Finance Concentration are required to complete a project using AI to solve a problem in Business and Finance, students from AI in Multimedia Concentration are required to complete a project using AI to solve a problem in Multimedia.

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.


Major Elective Courses

Students are required to take 7 courses (21 units) from the following course lists (the availability of major elective courses offered each semester is subject to faculty availability and minor adjustment):


1) Common Elective courses

AI2053
Introduction to Cognitive Science
3Units

Pre-requisite(s):
None 

Course Description:
The course aims to present a multidisciplinary forum and expose students to contemporary understanding on how mental processes such as visual perceptions, memories, attentions, languages and thoughts are implemented in our living brain, paving the way for their future creative work and research in the field of artificial intelligence.


AI2073
Perception
3Units

Pre-requisite(s):
None 

Course Description:
This course aims to illustrate lawful relations between perceptual experiences and the physical world and to develop models of the processes and mechanisms that produce these connections. We will discuss fundamental problems in perception and learn how the latest technology allows us to measure the brain's responses to various sensory stimuli, and how conscious effort and experience can affect these responses.

AI3033
Introduction to Robotics
3Units

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

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.


AI3043
Bayesian Networks
3Units

Pre-requisite(s):
AI2033 PROBABILITY AND STATISTICS, and
AI2003 DATA STRUCTURES AND ALGORITHM ANALYSIS or COMP2003 DATA STRUCTURES AND ALGORITHMS

Course Description:
Bayesian networks, also called belief networks or Bayes nets, are probabilistic graphical models for representing knowledge about an uncertain domain. This course aims to facilitate the students to develop the knowledge and skills necessary to effectively design, implement and apply Bayesian networks to solve real problems. The course will cover (a) Bayesian networks representations; (b) exact and approximate inference methods; (c) estimation of both the parameters and structure of graphical models. Students entering the class should have good Programming skills and knowledge of algorithms. Undergraduate-level knowledge of probability and statistics is required.

AI3053
Intelligent Agent Technology
3Units

Pre-requisite(s): None 

Course Description:
The focus of this course is to provide the basic concept and knowledge of Intelligent Agent Technology (IAT) and how such cutting-edge technology can be applied and adopted in our daily life and works. It teaches students the basic concept and theories of Intelligent Agent Technology (IAT); the core AI enabling technologies for the support of IAT; the major intelligent agents and mobile agent applications; and the design and development of intelligent agent and mobile agent applications with the adoption of Java Agent Development Environment (JADE).

AI3063
Neuroscience in Artificial Intelligence
3Units

Pre-requisite(s): None 

Course Description:
The primary objective of this course is to exposes the students to the neural processes, biological substrates and cognitive functions of the human brain, as well as up-to-date neural methods in the neuroscience including brain imaging, electrical measurement and stimulation of the brain, and eye-tracking techniques. The course will also introduce computational algorithms to examine and/or simulate simple neurocognition. Students will develop an advanced understanding of the biological bases of neural network, paving the way for their future creative work and research in the field of artificial intelligence.

AI3073
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.

AI3083
Artificial Intelligence Project
3Units

Pre-requisite(s): None 

Course Description:
The artificial intelligence project allows students to create a usable/public software system with technology in artificial intelligence that can be used to show their professional skills to potential employers. Students engage in an independent problem-solving activity under the supervision of a faculty member or with an industrial partner. The project demands careful planning and creative application of underlying theories and enabling technologies in artificial intelligence. A report, a software/hardware system and an oral presentation are required for successful completion of the project. The projects are drawn from real-world problems and are conducted with industry, government, and/or academic partners.

* Students can take only one of these ME courses, i.e., the “AI3083 Artificial Intelligence Project” and “AI4043 Artificial Intelligence Internship” courses, which could also be double counted as GE Capstone courses. These courses allow students to gain more practical experience by participating in the research projects of UIC staff or that of our industrial partners. Students will need to identify a teacher who is willing to serve as their project supervisor before registering for the course.

AI4013
Knowledge Graph Engineering
3Units

Pre-requisite(s): None 

Course Description:
The focus of this course will be on basic semantic technologies including the principles of knowledge representation and symbolic AI. This includes information encoding via RDF triples, knowledge representation via ontologies with OWL, efficiently querying knowledge graphs via SPARQL, latent representation of knowledge in vector space, as well as knowledge graph applications in innovative AI systems such as semantic and exploratory search engines.

AI4023
Deep Reinforcement Learning
3Units

Pre-requisite(s):
AI3013 MACHINE LEARNING

Course Description:
The course will provide an introduction to reinforcement learning and its core models and algorithms. Reinforcement learning is a computational approach to learning whereby an agent tries to maximize the total amount of reward it receives while interacting with a complex and uncertain environment. The aim of the course is to give the student the basic ideas and intuition behind modern reinforcement learning methods as well as a bit more formal understanding of how, why, and when they work. Recent progress for deep reinforcement learning and its applications will be discussed

AI4033
Large-Scale Distributed Multi-Agent Systems
3Units

Pre-requisite(s):
AI3053 INTELLIGENT AGENT TECHNOLOGY

Course Description:
This course teaches students the concept and theories of Large-Scale Multi-Agent Systems (LSMAS); the core technologies for the support of LSMAS; the state-of-art LSMAS applications; and the design and development of LSMAS with the adoption of Java Agent Development Environment (JADE) / JaCaMo.

AI4043
Artificial Intelligence Internship
3Units

Pre-requisite(s): None 

Course Description:
This course will enable students in Artificial Intelligence Programme to develop competencies expected of professionals working in business, government or the broader community. Students will be assigned to work in a designated AI-related organization such as governmental department, public institution, non-governmental organization, academic and/or research institution, consultancy company, commercial laboratory, or any other organization/company which has implemented AI technology and management. During the intern period, students are expected to apply their professional knowledge gained in the College into a real situation; in addition, students are expected to develop their professional working attitude, ethics, communication skill, team working tactic, and any other specific skills at the host organization in real situation.

* Students can take only one of these ME courses, i.e., the “AI3083 Artificial Intelligence Project” and “AI4043 Artificial Intelligence Internship” courses, which could also be double counted as GE Capstone courses. These courses allow students to gain more practical experience by participating in the research projects of UIC staff or that of our industrial partners. Students will need to identify a teacher who is willing to serve as their project supervisor before registering for the course.

COMP3263
Intelligent Internet of Things
3Units

Pre-requisite(s): None 

Course Description:
This course introduces various challenges and opportunities in the Intelligent Internet of things. We discuss topics such as perception and recognitions, RFID and NFC, wireless sensor networks, storage of IoTs, security/privacy of IoTs, and applications. Concepts and state-of-art progress on crowdsensing, passive sensing, and sensor-cloud are also covered.


COMP3273
5G Networks and Mobile Computing
3Units

Pre-requisite(s): None 

Course Description:
This course introduces various challenges and opportunities in 5G Networks and mobile computing. We discuss topics such as wireless communication, 5G Networks, network protocols and standards, ad-hoc networks, location awareness, sensing, application development. Concepts and state-of-art progress in edge computing are also covered as part of the computational model.

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.

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.


MATH1153
Applied Linear Algebra and Linear Dynamics
3Units

Pre-requisite(s):
MTH1003 LINEAR ALGEBRA or MTH1053 LINEAR ALGEBRA I, and
MATH 1063 LINEAR ALGEBRA II

Course Description:
Applied Linear Algebra and Dynamics aims to provide some advanced topics and tools related to linear algebra. The course will equipped students with advantages for subsequent courses on data analysis and AI. It consists of orthogonal polynomials, least squares approximation, discrete Fourier analysis and fast Fourier transform, wavelet, positive definite matrices, singular value decomposition, minimum principles, and linear dynamics. It provides solid foundation for compression, optimization theory, principle component analysis, model based data analysis, Markov process and control.


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.

MATH3153
Advanced Probability
3Units

Pre-requisite(s):
MATH1003 LINEAR ALGEBRA or MATH1053 LINEAR ALGEBRA I, and
MATH1073 CALCULUS I or MATH1103 CALCULUS or MATH1123 CALCULUS FOR SCIENCE AND ENGINEERING

Course Description:
This course introduces basic concepts and techniques of measuring theoretic probability. It introduces some some basic stochastic processes, martingales and their applications, and familiarises students with random variable and various probability distributions from the perspective of measuring theoretic probability theory.


PHYS2003
Principles of Physics
3Units

Pre-requisite(s): None 

Course Description:
This course teaches the basic principles of physics to explain the properties of heat, light, electricity, magnetism, and quantum mechanics of atoms and then apply the principles to study the functions of electronics, analytical instruments, environmental monitoring instruments, solar panel, etc. In addition, the impacts of important physical phenomena such as air movement, light scattering by particulate matter, global warming, solar radiation, radioactivity, etc. on the formation of environmental risks and pollutions will be analysed. The basic principles of physics taught in this course can be applied not only to Environmental Science, but also to other sciences and everyday life.

2) Concentration Elective Courses for AI in Business and Finance Concentration

AI2063
Game Theory
3Units

Pre-requisite(s): None 

Course Description:
This course is a survey of the introductory concepts and techniques of game-theoretic analysis and their applications. It offers a non-technical exposure to game theory with a special emphasis on examples and applications drawn from science, economics, political and other fields in social sciences. As such, the course focuses on the identification and analysis of archetypal strategic situations frequently encountered in real-life experiences.

AI3093
Decision Theory
3Units

Pre-requisite(s):
AI2033 PROBABILITY AND STATISTICS

Course Description:
Decision theory studies the logic and the mathematical properties of decision making under uncertainty. Statistical decision theory focuses on the investigation of decision making when uncertainty can be reduced by information acquired through experimentation. This course is a survey of the introductory concepts and techniques of decision theory and their applications from a statistical perspective. The objective is to introduce many basic concepts and methods of decision making to the students.

AI3103
Regression Analysis
3Units

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

Course Description:
This course is designed to introduce theory of regression analysis and techniques which have been used in data analysis; to emphasise recent developments in the regression analysis such as statistical diagnostics and nonlinear regression, and motivate students to analyse multivariate data with the help of statistical packages such as MATLAB, R or SPSS.

AI4053
Fintech
3Units

Pre-requisite(s): None 

Course Description:
This course teaches students the basic theory of Fintech and its underlying technologies including: Basic Cryptography, Cryptocurrency, Blockchain Technology, Digital Ledgers, Robo Advisor, etc. It also teaches students the usage of contemporary Fintech development tools, real-time intelligent financial system development tools, and software packages, and how to apply Fintech and related technologies to develop intelligent financial and banking systems.


AI4063
Pattern Recognition
3Units

Pre-requisite(s):
MATH 1003 LINEAR ALGEBRA, and
AI2033 PROBABILITY AND STATISTICS

Course Description:
This course aims to equip students with knowledge and skills to design machines or classifiers than can extract features and recognize patterns - understanding the basic science, arts, algorithms, and technologies of pattern recognition. The course focuses on mapping various real world problems into pattern recognition frameworks, studying statistical pattern recognition approaches, and experimenting with real world problems to appreciate the methodologies of pattern analytics.

COMP4043
Data Mining and Knowledge Discovery
3Units

Pre-requisite(s):
AI1023 DATABASE MANAGEMENT SYSTEMS, or
COMP3013 DATABASE MANAGEMENT SYSTEMS, or
EBIS3003 DATABASE MANAGEMENT

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


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
COMP2013 OBJECT-ORIENTED PROGRAMMING, or
STAT2043 STRUCTURED PROGRAMMING (FOR STAT STUDENTS), or
COMP3153 C++ PROGRAMMING LANGUAGE

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.

STAT4013
Multivariate Analysis
3Units

Pre-requisite(s):
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.

3) Concentration Elective Courses for AI in Multimedia Concentration

AI3113
Speech Processing and Recognition
3Units

Pre-requisite(s):
MATH1003 LINEAR ALGEBRA, and
AI2033 PROBABILITY AND STATISTICS

Course Description:
This course introduces fundamentals of speech processing in both time domain and frequency domain, speech production and mechanics, characteristic parameters of speech, vector quantization techniques, hidden Markov models, and neural networks applied to speech coding, speech synthesis, statistical speech recognition, and speech enhancement.

AI3123
Digital Image Processing
3Units

Pre-requisite(s):
MATH 1003 LINEAR ALGEBRA, and
AI2033 PROBABILITY AND STATISTICS

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.

AI3133
Natural Language Processing
3Units

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

Course Description:
This course introduces ways to represent and interpret human languages such as English and Chinese. We discuss applications based on speech data including translation, summarisation, information extraction, question answering and so on. Concepts in machine learning and linguistics are also covered as part of the computational model.

AI3143
Computer Vision
3Units

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

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. Students will learn the essential mathematical foundation and algorithms of computer vision, and the methods of implementing these algorithms. Students will also gain practical experience on these topics by using Matlab or Python.

AI3153
Human-Computer Interaction
3Units

Pre-requisite(s): None 

Course Description:
In this course, students are introduced to the fundamental theories and concepts of human-computer interaction (HCI). Students will gain theoretical knowledge of and practical experience in the fundamental aspects of human perception, cognition, and learning as relates to the design, implementation, and evaluation of interfaces. In addition to lectures, students will work on individual and team assignments to design, implement, and evaluate various interactive systems and user interfaces based on knowledge culled from class material and additional research.

AI4063
Pattern Recognition
3Units

Pre-requisite(s):
MATH 1003 LINEAR ALGEBRA, and
AI2033 PROBABILITY AND STATISTICS

Course Description:
This course aims to equip students with knowledge and skills to design machines or classifiers than can extract features and recognize patterns - understanding the basic science, arts, algorithms, and technologies of pattern recognition. The course focuses on mapping various real world problems into pattern recognition frameworks, studying statistical pattern recognition approaches, and experimenting with real world problems to appreciate the methodologies of pattern analytics.

AI4083
Multimedia Mining and Analytics
3Units

Pre-requisite(s):
MATH 1003 LINEAR ALGEBRA, and
AI2033 PROBABILITY AND STATISTICS, and
AI3123 DIGITAL IMAGE PROCESSING

Course Description:
This course will introduce concepts and tasks of multimedia data mining, algorithms, modelling, search evaluation, and applications of multimedia data mining and analytics in our daily life including web context extraction, content based image search for cloth recommendation, video feature mining, video retrieval, multimodal fusion, sentiment analysis and mining popular routes from social media, in-house multimedia mining, biometric multimedia data processing, detection of demographics and identity in speech and writing, etc.

AI4093
Design and Implementation of Intelligent Vision System
3Units

Pre-requisite(s):
AI3143 COMPUTER VISION, and
AI4063 PATTERN RECOGNITION

Course Description:
This course covers concepts in design and implementation of intelligent vision systems. Topics include hardware and software structure of intelligent vision systems, principles of intelligent vision systems. By exploring the current popular vision systems, such as distributed surveillance video systems, self-driving vision systems, industrial vision inspection systems, robot arm vision systems, students will learn the essential theories and practices of intelligent vision systems. This course will also conclude with current trends and challenges in design the intelligent vision systems.

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 18 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