Postgraduate Courses
IOTA
Internet of Things
- IOTA 5001Social and Web Computing[3 Credit(s)]DescriptionThis course will introduce students to the fundamentals of Social and Web Computing, as well as providing detailed coverage of recent research in this space. It will consist of two major parts. First, students will learn about fundamental social computing theories, alongside computational methodologies that can be used to understand human interactions online. Second, students will be exposed to a range of recent applied research that has employed these methodologies. There will be an empirical focus in the course, and students will be exposed to a range of measurement research capturing how social and web systems work in-the-wild. Students will learn about social network analysis and relevant APIs, alongside related aspects of the Web, user privacy and online advertisement.
- IOTA 5002Data-driven Modeling: Learning from Sensor Data[3 Credit(s)]BackgroundBasic knowledge of linear algebra, numerical analysis, signal processing, and machine learning is encouraged.DescriptionData-driven modeling is revolutionizing the modeling and predicting of complex systems. This cross-disciplinary course will introduce methodologies for integrating time-series analysis, machine learning, engineering mathematics, and mathematical physics, into data-driven methods for inferring and building models from data. At the end of the course, students are expected to understand the principles and methods of extracting patterns and models from data and making effective predictions, and to have hands-on implementations with Python/Matlab. In-class lab demonstrations will also be provided.
- IOTA 5003Wireless Connectivity for Mobile Autonomous Things[3 Credit(s)]Co-list withINTR 5220Exclusion(s)INTR 5220DescriptionThis course aims to develop students’ fundamental understanding of the application scenarios, challenges, and solutions of wireless connectivity in various systems involving autonomous things, and under possible mobility. Topics covered include fundamentals of digital communications, future wireless connectivity requirements, and various solutions to the unique challenges such as dynamic propagation environment, scalability, complexity, and heterogeneity.
- IOTA 5004Introduction to Scientific Machine Learning for Science and Engineering Applications[3 Credit(s)]BackgroundBasic knowledge of linear algebra, numerical analysis, engineering, and machine learning is encouraged.DescriptionScientific Machine Learning (SciML) = Scientific Computing + Machine Learning. Machine Learning and deep learning techniques have emerged to revolutionize conventional methods of scientific computing and discovery (such as modeling, solving differential equations, parameter estimation, equation discovery, etc.), crafting a new generation of machine learning methods for complex applications across science and engineering. This course will introduce this newly emerged paradigm and research trend, including topics of physics-informed neural networks (PINN), neural operators, governing equation discovery, and differentiable physics, etc. The course is designed as a project-oriented one, bridging practice and theory, aiming for real-world problems. At the end of the course, students are expected to understand the principles and methods of SciML, and to have hands-on implementations with Python.
- IOTA 5005Introduction to Energy Harvesting Technology[3 Credit(s)]Previous Course Code(s)IOTA 6910CBackgroundFundamentals of dynamics and vibration; basic knowledge of numerical analysis and circuit analysis.DescriptionThe distributed power supply for millions and billions of remote & off-grid electronics (such as wireless IOT node sensors) is challenging. Harvesting sustainable energy from the ambient environment provides the possibility of designing battery-free devices. This course will introduce the vibration energy harvesting technology developed in the past two decades to students. As the fundamentals, commonly used energy transduction mechanisms will be first introduced to the students. The students will also learn various modeling methods, including lumped parameter modeling, equivalent circuit modeling, and finite element modeling.
- IOTA 5006Distributed Systems: Concepts and Applications[3 Credit(s)]DescriptionThis course teaches the design and implementation of efficient, scalable, and fault-tolerant distributed systems. Topics include models for distributed communication and computing, synchronization, and consensus algorithms. The course will also cover relevant applications, including platforms for distributed Machine Learning such as Ray, and large-scale data and stream processing systems such as Apache Flink and Google Dataflow.
- IOTA 5007Introduction to Data Processing in Array-structured Systems[3 Credit(s)]DescriptionThis course provides a comprehensive overview of array processing techniques and their applications in various fields, including wireless communications, radio astronomy, biomedical imaging, and audio and speech signal processing. Students will explore topics such as wave propagation, data modeling, matrix decomposition, adaptive filtering, beamforming, direction finding, microphone and radar array processing, factor analysis, and biomedical array processing. The course emphasizes the interdisciplinary nature of array processing and its relevance in the context of IoT, preparing students to be equipped with the knowledge and skills necessary to analyze and process data from array-structured systems, contributing to advancements in array processing across diverse domains.
- IOTA 5008Assistive Technology Design based on Computational Media and Arts[3 Credit(s)]Co-list withCMAA 5018Exclusion(s)CMAA 5018DescriptionThis course teaches students the design and evaluation of novel smart assistive technologies for people with disabilities (e.g., blind, deaf, motor-impaired) and the aging population. Students will learn user-centered methods to identify true user needs and design smart assistive technologies that leverage immersive media (e.g., VR/AR/MR) or AIoT (e.g., AI, mobile and wearable sensing). Moreover, students will also learn how to evaluate the performance and user experience of such assistive technologies.
- IOTA 5009AR/VR/MR/XR: Concepts, Theory, and Techniques[3 Credit(s)]Co-list withCMAA 5017Exclusion(s)CMAA 5017DescriptionThis course introduces students to the concepts, theories, and interaction techniques in AR/VR/MR/XR. It covers both the fundamental concepts and design theories and the state-of-the-art interaction techniques in the field. In addition, students will work independently or in teams to design, develop, and evaluate AR/VR/MR/XR applications. In sum, by the end of the class, students will have a solid grasp of the fundamental concepts and theories and hands-on experience in AR/VR/MR/XR.
- IOTA 5010Stochastic Process in Engineering Systems[3 Credit(s)]Previous Course Code(s)IOTA 6910FDescriptionThis course introduces stochastic processes, focusing on their application in Electrical Engineering, Computer Science, and other related Engineering fields. Stochastic processes are vital for modeling systems affected by uncertainty, which is crucial in areas such as communications, signal processing, control systems. Students will explore mathematical foundations, including probability models, random variables, and statistical inference. Topics such as random vectors, Gaussian processes, and continuous-time random processes will be covered, providing essential tools for analyzing complex data. A key emphasis will be on applications in radar systems, demonstrating how stochastic models improve signal processing and system design. Additionally, students will learn how these concepts apply to IoT, where managing uncertainty in large data sets is critical for enhancing performance and reliability. By bridging multiple engineering disciplines, this course prepares students to tackle real-world challenges, equipping them with skills necessary for innovative solutions in an increasingly data-driven landscape.
- IOTA 5101Fog/Edge/Cloud Computing for IoT[3 Credit(s)]BackgroundBackgrounds in communication and networking, computer systems, and distributed architectures are preferredDescriptionThis course introduces students to the latest research on fog computing, mobile edge computing, and cloud computing. How IoT applications can benefit from the computation and caching resources provided at different parts of the Internet will be discussed and the tradeoff among different options will be analyzed. Challenges in deploying IoT applications will be discussed and proposed solutions will be explored.
- IOTA 5102Fundamentals of Localization Technologies[3 Credit(s)]BackgroundBackgrounds in digital signal processing and statistical signal processingDescriptionThis course introduces students to the fundamentals and latest research on localization technologies, including GPS, indoor positioning based on ultra-wideband communications, and simultaneous localization and communications in 5G/6G, et al. Apart from electromagnetic waves, localization based on acoustic signals will also be introduced. The course will provide students with the fundamental knowledge required to understand, analyze and develop localization technologies.
- IOTA 5103Emerging Wireless Technologies for IoT[3 Credit(s)]BackgroundGeneral knowledge of linear algebra, probabilities, and basic concepts in machine learning (ML) are essential, while exposure to communications, networking, and signal processing as well as experiences in ML implementations are desirable.DescriptionWith the proliferation of IoT devices and applications, successful delivery of latency-critical and energy-constrained services pose new challenges for the next-generation wireless communications. In this course, basic knowledge of wireless communications will first be introduced, and optimization/AI assisted techniques to combat these challenges will also be briefly covered, following introduction to the state-of-the-art beyond-5G (B5G) technologies, in which we will investigate sustainable, scalable and AI endogenous wireless solutions for IoT.
- IOTA 5104Fundamentals of Discrete-Time Signal Processing[3 Credit(s)]BackgroundStudents should understand the basics of calculus, probability and linear algebra.DescriptionThis course introduces students to the fundamentals of discrete-time signal processing, for both linear time invariant (LTI) and non-LTI systems. For LTI systems, the topics include the sampling theorem, Fourier transform, convolution, and spectrum analysis, which lays the foundation for OFDM in wireless communications. Advanced topics will also be covered for time-variant systems, such as Heisenberg transform, Wigner distribution and Fractional Fourier transform, and their applications in radar, sonar and the OTFS modulation in wireless communications.
- IOTA 5105Fundamentals of Wireless Communications[3 Credit(s)]BackgroundStudents are expected to have a general background in EE-related subjects with good knowledge of probability theory and linear algebra, and preferably with some basic understanding of digital signal processing.DescriptionThis course lays theoretical foundation for students with general EE background to pursue research advances involving wireless communication-based systems, e.g., 4G/5G mobile communication, IoT and WLAN. In this course, concepts of wireless channels, its modelling as well as channel capacity for point-to-point/multi-user/MMO communications will be systematically introduced. Along with understanding of these theories, the principles and state-of-the-art technologies to combat fading and interference including general diversity techniques, OFDM, and multiple access schemes will be conveyed. Finally, a few advanced topics for 5G-and beyond (B5G) communication system design will be briefly introduced, such as massive MIMO and reconfigurable intelligent surface (RIS).
- IOTA 5106Introduction to Communication Networks[3 Credit(s)]BackgroundGeneral knowledge of linear algebra and probability.DescriptionThis course introduces students to different types of communication networks, with a focus on Internet technologies. Topics covered include error control, flow control, medium access control, routing, congestion control, packet scheduling, queueing theory, and network optimization. The course will provide students with the fundamental knowledge required to understand, analyze, and optimize the performance of communication networks. It is suitable for students who do not have an existing background in communication networks.
- IOTA 5107Advanced Networked Systems for AI and Multimedia Systems[3 Credit(s)]BackgroundInternet networkingDescriptionThis course focuses on relevant current research topics in Networked Systems such as Networking for AI, Multimedia Communication, Data-Center Networks, Software-Defined Networking, Dataplane Programmability, Information-Centric Networking, Quantum Internet Communication, Privacy Preserving Communication, Constrained (IoT) Networks. This course will provide a structured introduction to the state-of-the-art and recent research in the field of networked systems. It will further introduce students to recent development efforts in the academic community as well as in Internet standardization.
- IOTA 5108Incremental Learning and Adaptive Signal Processing[3 Credit(s)]Co-list withINTR 5320Exclusion(s)INTR 5320DescriptionThis course aims to develop students’ fundamental understanding of the theory and application of incremental learning and adaptive signal processing. Topics covered in this course include Wiener filter, least mean squares (LMS), recursive least squares (RLS), the Kalman filter, classification, parameter learning, neural network and deep learning.
- IOTA 5109Wireless Sensor and Actuator Networks Toward Swarm Intelligence[3 Credit(s)]DescriptionThis course teaches the basic concepts of wireless sensor and actuator networks (WSANs), and how swarm intelligence is applied over WSAN. The course content includes the typical architecture of the hardware WSAN devices, the general communication mechanism and examples of applications using WSANs to realize swarm intelligence.
- IOTA 5201Reinforcement Learning for Intelligent Decision Making[3 Credit(s)]BackgroundGeneral knowledge of machine learning and deep learning.DescriptionThis course offers a comprehensive introduction to Reinforcement Learning (RL), building a foundation from core concepts like Markov Decision Processes (MDPs) and dynamic programming to advanced algorithms such as policy gradients and actor-critic methods (PPO, DDPG). It progresses to modern topics including Multi-Agent Reinforcement Learning (MARL), making it ideal for students across engineering and science disciplines looking to apply RL in their research.
- IOTA 5202Efficient Machine Learning for Resource Constrained Environments[3 Credit(s)]Co-list withAIAA 5202Exclusion(s)AIAA 5202BackgroundGeneral knowledge of artificial intelligence, deep learning.DescriptionThis course explores cutting-edge techniques for creating efficient machine-learning models to address the growing demand for real-time decision-making and localized processing across diverse application fields, including IoT/robotics/smart manufacturing systems and beyond. Key topics include model compression, pruning, quantization, neural architecture search, knowledge distillation, on-device fine-tuning, transfer learning, application-specific acceleration techniques, etc. Through hands-on projects, students will learn to optimize and adapt deep learning models for resource-constrained devices while maintaining accuracy and performance.
- IOTA 5203Sensor Fusion and Cooperative Intelligence for Networked Robotics[3 Credit(s)]Previous Course Code(s)IOTA 6910EBackgroundIntroductory programming and data-analysis experience is recommendedDescriptionNetworked robots are increasingly used in exploration, logistics, inspection, and autonomous systems, where teams of robots must perceive their environment, share information, and make coordinated decisions. This course introduces the fundamental principles behind how such robots combine data from multiple sensors, and from one another, to build reliable perception and cooperative intelligence. Students will learn essential concepts in probabilistic sensor fusion, core filtering techniques, and modern machine-learning-based fusion approaches, and explore how these methods enable tasks such as distributed localization, collaborative mapping, and coordinated autonomy. The course provides practical skills for developing intelligent multi-robot systems and offers a strong foundation for research or advanced work in AI, robotics, and autonomous systems.
- IOTA 5204Distributed and Federated Machine Learning[3 Credit(s)]Previous Course Code(s)IOTA 6910KDescriptionThis course examines the theory, systems, and applications of machine learning in distributed, edge, and federated environments. Students will learn foundational methods in machine learning as well as the relevant statistics and mathematics. They will explore the architectures and communication patterns of distributed training, and study the challenges unique to federated settings, such as privacy, heterogeneity, and resource constraints. Emphasis is placed on practical systems and real-world use-cases, culminating in a project where students design and implement a distributed or federated learning solution.
- IOTA 5401Sensing Security and Privacy in IoT and AI Systems[3 Credit(s)]Previous Course Code(s)IOTA 6910JDescriptionThis course will teach students advanced methods to measure, model, and protect the security and privacy of sensing technologies and their users in the age of AI and IoT, with an emphasis on the hardware-software interface in embedded systems and the physics of sensing and computation. Application domains of security analysis include smartphone and AR/VR devices, smart home IoT, autonomous driving, healthcare and medical devices, AI-based controls and Deepfakes, etc. Group projects will have students build voice assistant systems from scratch and explore various offensive and defensive security techniques.
- IOTA 5501Convex and Nonconvex Optimization I[3 Credit(s)]BackgroundGood knowledge of calculus and linear algebra, and exposure to probability. Exposure to communications, signal processing, automatic control, and machine learning is helpful but not required. Capable of reading and dissecting scientific papers.DescriptionThis course covers fundamental theory, algorithms, and applications for convex and nonconvex optimization, including: 1) Theory: convex sets, convex functions, optimization problems and optimality conditions, convex optimization problems, geometric programming, duality, Lagrange multiplier theory; 2) Algorithms: disciplined convex programming, numerical linear algebra, unconstrained minimization, minimization over a convex set, equality constrained minimization, inequality constrained minimization; 3) Applications: approximation (regression), statistical estimation, geometric problems, classification, etc.
- IOTA 5502Convex and Nonconvex Optimization II[3 Credit(s)]BackgroundGood knowledge of calculus, linear algebra, and fundamental optimization theory and algorithms, and exposure to probability. Exposure to communications, signal processing, automatic control, and machine learning is helpful but not required. Capable of reading and dissecting scientific papers.DescriptionThis course covers advanced theory, algorithms, and applications for convex and nonconvex optimization, including: subgradient methods, localization methods, decomposition methods, proximal methods, alternating direction methods of multipliers, conjugate direction methods, successive approximation methods, convex-cardinality problems, low-rank optimization problems, neural networks, semidefinite programming and relaxation, robust optimization, discrete optimization, stochastic optimization, etc.
- IOTA 5503Cybersecurity and Privacy[3 Credit(s)]Previous Course Code(s)IOTA 6910ADescriptionThis course covers fundamental aspects of cybersecurity and privacy. The course will equip students with the ability to understand and analyze security technologies. This course will then explain how these technologies are used and deployed in practical real-world environments, before exploring how recent attacks have discovered new vulnerabilities. The course will emphasize the value of empirical observations and give students insight into how these vulnerabilities can be measured in-the-wild. This course is ideal for students who are interested in understanding cybersecurity risks in a broad range of technologies.
- IOTA 5504Approximate Computing - Introduction to Numerical Analysis[3 Credit(s)]BackgroundFundamentals of calculus, linear algebra, differential equations, and programming (Matlab).DescriptionThis course is an introduction to the algorithms that use numerical approximation (as opposed to symbolic manipulations) for the problems of mathematical analysis. The course will help students develop a basic understanding of numerical algorithms and the skills to implement algorithms to solve mathematical problems on the computer.
- IOTA 5505Statistical Inference for Machine Learning and Signal Processing[3 Credit(s)]BackgroundBasic knowledge of calculus and linear algebra, and any undergraduate first course in probability and statistics (for non-mathematical majors).DescriptionThis course introduces the fundamentals and advanced topics of statistics that cover multivariate distribution along with dimension-reduction techniques, concentration inequalities, performance metrics for statistical learning, and applications in statistical signal processing, including estimation theory and methods, detection theory and methods, and selected advanced algorithms such as Markov Chain Monte Carlo (MCMC) and expectation maximization (EM), etc.
- IOTA 5507Information Theory and Its Applications in Machine Learning[3 Credit(s)]Previous Course Code(s)IOTA 6910IExclusion(s)AIAA 5075BackgroundFamiliarity with linear algebra, basic knowledge in probability theory, and some experience with Python or Matlab are expected.DescriptionThis course explores how much information can be compressed, transmitted, extracted and learned from data and what the fundamental limits of these processes are by introducing the fundamentals of information theory and its modern applications in machine learning and statistics. We begin with classical foundations--entropy, divergences, compression, coding, and data-processing inequalities--and extend them to modern topics in inference, hypothesis testing, and learning. Applications such as generalization bounds and statistical estimation illustrate how information theory characterizes performance limits and guides system design. By the end, students will gain both the tools and intuition to apply these methods to contemporary problems in data and learning. They will also develop a new and unified perspective that connects theory with practice across diverse fields, such as AI, data science, and computational modeling.
- IOTA 6101Internet of Things Seminar I[0 Credit(s)]DescriptionA series of regular seminars presented by postgraduate students, faculty, and guest speakers on IoT-related research problems currently under investigation. Students are expected to attend regularly. Graded P or F.
- IOTA 6102Internet of Things Seminar II[1 Credit(s)]DescriptionA series of regular seminars presented by postgraduate students, faculty, and guest speakers on IoT-related research problems currently under investigation. Students are expected to attend regularly. Continuation of IOTA 6101. Graded P or F.
- IOTA 6900Independent Study[1-3 Credit(s)]DescriptionAn independent research project carried out under the supervision of a faculty member on an Internet of Things topic.
- IOTA 6910Special Topics in Internet of Things[3 Credit(s)]DescriptionAdvanced topics in Internet of Things(IoT): IoT in finance; IoT in manufacturing; IoT in healthcare; IoT in security and privacy; IoT in digital society; ethical issues in IoT and digital society ethics; modeling and optimization for IoT; signal processing for IoT. The course may be repeated for credit if different topics are studied.
- IOTA 6990MPhil Thesis Research[0 Credit(s)]DescriptionMaster's thesis research supervised by co-advisors from different disciplines. A successful defense of the thesis leads to the grade Pass. No course credit is assigned.
- IOTA 7990Doctoral Thesis Research[0 Credit(s)]DescriptionOriginal and independent doctoral thesis research supervised by co-advisors from different disciplines. A successful defense of the thesis leads to the grade Pass. No course credit is assigned.











