Fall 2016 CS Course Listings
This file contains the Fall 2016 course listings for the Department of Computer Science and Engineering.
- COMP5111: Fundamentals of Software Analysis
- COMP5211: Advanced Artificial Intelligence
- COMP5212: Machine Learning
- COMP5331: Knowledge Discovery in Databases
- COMP5411: Advanced Computer Graphics
- COMP5621: Computer Networks
- COMP5631: Cryptography and Security
- COMP6211A: Topics in Text Mining and Knowledge Graph Construction, Inference, and Applications
COMP6613B: Hot Topics in Privacy Enhancing Technologies(Cancelled)- COMP6611B: Topics on Cloud Computing and Data Analytics Systems
- Timetable
Course code: COMP5111
Course title: Fundamentals of Software Analysis
Instructor: Shing-Chi Cheung
Room: 3547
Telephone: Shing-Chi Cheung
Email:
WWW Page:
Area in which course can be counted: ST
Course description: See course catalog.
Course objective:
The goal of this course is to introduce how various analysis techniques can be used to manage the quality of a software application. Students will acquire fundamental knowledge of program abstraction, features, verification, testing, refactoring, concurrency, reliability, aspect orientation, and fault analysis. The course will also discuss how to carry out the empirical experimentation for program analysis. Wherever applicable, concepts will be complemented by tools developed in academia and industry. This enables students to understand the maturity and limitations of various analysis techniques.
Course outline/content (by major topics):
Program Analysis, Testing, Fault Localization, Design Patterns, Concurrency, Empirical Experimentation
Textbooks:
Reference books/materials:
* Conferences: Proceedings of ICSE, FSE, PLDI, OOPSLA, ISSTA and ASE.
* Journals: ACM TOSEM & IEEE TSE.
* Software Engineering, Ivan Marsic, Rutgers University, 2012.(Download here)
* Introduction to Software Testing, Paul Ammann and Jeff Offutt, Cambridge University Press, 2008.
* Software Testing and Analysis: Process, Principles and Techniques, Mauro Pezze and Michal Young, John Wiley and Sons, 2007.
* Head First Java, Kathy Sierra and Bert Bates, O'Reilly Media, Inc.
* Head First Design Patterns, Eric Freeman, Elisabeth Robson, Bert Bates, Kathy Sierra, O'Reilly Media, Inc.
* Design Patterns, Enrich Gamma, et al, Addison-Wesley, 1995.
Grading scheme:
Class Participation | 5% |
Assignments | 40% |
Reading Report, Presentation & Participation | 15% |
Final Exam | 40% |
Available for final year UG students to enroll: Yes
Minimum CGA required for UG students: Permission of the instructor
Course code: COMP5211
Course title: Advanced Artificial Intelligence
Instructor: Fangzhen Lin
Room: 3557
Telephone: 2358-6775
Email:
WWW Page: http://cse.hkust.edu.hk/~flin/
Area in which course can be counted: AI
Course description:
This advanced AI course will cover the main concepts and techniques in AI. The major topics will be: problem solving, knowledge and reasoning, planning, uncertain knowledge and reasoning, learning, and robotics.
Course objective:
Students are expected to gain deep understanding of key concepts and techniques in AI, including heuristic search strategies for single agent problem solving as well as multi-agent strategic planning such as in game playing, knowledge representation and reasoning using both logic and probabilities, machine learning, and integrated agent design.
Course outline/content (by major topics):
1.Introduction.
2. Problem-solving.
3. Knowledge and Reasoning.
4. Planning.
5. Uncertain knowledge and reasoning.
6. Learning.
7. Communicating, perceiving, and acting.
Textbooks:
Stuart Russell and Peter Norvig. Artificial Intelligence: A Modern Approach Prentice Hall, 2003.
Reference books/materials:
Grading scheme:
Available for final year UG students to enroll: Yes
Minimum CGA required for UG students: Permission of the instructor
Course code: COMP5212
Course title: Machine Learning
Instructor: Dit-Yan Yeung
Room: 3541
Telephone: 2358-6977
Email:
WWW Page: http://home.cse.ust.hk/~dyyeung/
Area in which course can be counted: AI
Course description:
Machine learning is the science of making computer artifacts improve their performance without requiring humans to program their behavior explicitly. Machine learning has accomplished successes in a wide variety of challenging applications, ranging from computational molecular biology to computer vision to social web analysis. This course is a postgraduate-level introductory course in machine learning with emphasis put on the computational and mathematical principles underlying the most common machine learning problems and methods. It is not only suitable for students pursuing or planning to pursue research in machine learning or other related areas that focus on model and algorithm development, but is also suitable for students who want to apply principled machine learning techniques competently to their application-oriented research areas.
Background:
Computer science: object-oriented programming and data structures, design and analysis of algorithms
Mathematics: multivariable calculus, linear algebra and matrix analysis, probability and statistics
Course objective:
By the end of this course, students are expected to demonstrate competence in the following:
* Ability to take a real-world application and formulate the learning problems involved in it by identifying the major learning-related issues;
* Ability to choose and apply the most common methods available for each of the major learning problem types;
* Ability to compare different machine learning methods according to common performance criteria;
* Ability to design and conduct empirical studies in such a way that the experiment results can be interpreted in accordance with disciplined scientific and statistical principles.
Course outline/content (by major topics):
Bayesian decision theory
Parameter estimation for generative models
Linear and logistic regression
Feedforward neural networks
Support vector machines
Model assessment and selection
Deep learning models
Recurrent neural networks
Clustering and mixture models
Nearest neighbor classifiers
Decision trees
Dimensionality reduction
Ensemble learning
Matrix factorization
Probabilistic graphical models
Topic models
Hidden Markov models
State space models
Reinforcement learning
Reference books/materials:
* Kevin P. Murphy (2012). Machine Learning: A Probabilistic Perspective. MIT Press.
* Ethem Alpaydin (2014). Introduction to Machine Learning. Third Edition. MIT Press.
* Christopher M. Bishop (2006). Pattern Recognition and Machine Learning. Springer.
* Trevor Hastie, Robert Tibshirani, and Jerome Friedman (2009). The Elements of Statistical Learning. Second Edition. Springer.
* Other assigned reading materials
Grading scheme:
Problem sets (25%)
Programming projects (25%)
Final exam (50%)
Available for final year UG students to enroll: No.
Minimum CGA required for UG students: N/A
Course code: COMP5331
Course title: Knowledge Discovery in Databases
Instructor: Lei Chen
Room: 3509
Telephone: 2358-6980
Email:
WWW Page: http://cse.hkust.edu.hk/~leichen/
Area in which course can be counted: DB or AI
Course description:
Data mining has emerged as a major frontier field of study in recent years. Aimed at extracting useful and interesting patterns and knowledge from large data repositories such as databases and the Web, the field of data mining integrates techniques from database, statistics and artificial intelligence. This course will provide a broad overview of the field, preparing the students with the ability to conduct research in the field.
Background: COMP271
Course objective:
To learn the techniques used in data mining research. To help the students get ready for research.
Course outline/content (by major topics):
1. Association
2. Clustering
3. Classification
4. Data Warehouse
5. Data Mining over Data Streams
6. Web Databases
7. Multi-criteria Decision Making
Textbooks:
Data Mining: Concepts and Techniques. Jiawei Han, Micheline Kamber and Jian Pei. Morgan Kaufmann Publishers (3rd edition).
Reference books/materials:
Introduction to Data Mining. Pang-Ning Tan, Michael Steinbach, Vipin Kumar Boston. Pearson Addison Wesley (2006).
Grading scheme:
Assignment 30%
Project 30%
Final Exam 40%
Available for final year UG students to enroll: Yes but with approval
Minimum CGA required for UG students: None
Course code: COMP5411
Course title: Advanced Computer Graphics
Instructor: Chiew-Lan Tai and Pedro Sander
Room: 3515; 3525
Telephone: 2358-7020; 2358-6983
Email: ,
WWW Page: https://course.cse.ust.hk/comp5411/
Area in which course can be counted: VG
Course description:
Computer Graphics studies the principles of generating and displaying 3D images on the computer display. This course consists of two parts. The first part covers advanced topics in modeling and processing geometric shapes, and the second part covers topics on geometry rendering, lighting, and shading, using latest generation graphics hardware.
Exclusion: CSIT5400
Background: COMP3711, Linear Algebra, Calculus
Course outline/content (by major topics):
* Basics of Computer Graphics
* Bezier and B-spline curves and surfaces
* Space-based and surface-based deformation
* Mesh simplification
* Mesh smoothing
* Graphics Processing Unit (GPU)
* Programmable Rendering Pipeline (Vertex, Geometry, and Pixel shaders)
* Surface lighting and shading
* Real-time shadow algorithms
* Global illumination
* Future trends on GPU computing
Textbooks:
Dave Shreiner. OpenGL Programming Guide. Seventh Edition. Adisson Wesley. (optional reference book)
Reference books/materials:
Grading scheme:
Part 1 (Geometry) : Written Homework(20%), Programming Assignment (20%), Exam (60%)
Part 2 (Rendering) : Programming assignments (40%), Exam (60%)
Available for final year UG students to enroll: Yes
Minimum CGA required for UG students: Permission of the instructor
Course code: COMP5621
Course title: Computer Networks
Instructor: Qian Zhang
Room: 3533
Telephone: 2358-8766
Email:
WWW Page:
Area in which course can be counted: NT
Course description:
Principles, design and implementation of computer communication networks; network architecture and protocols, OSI reference model and TCP/IP networking architecture; Internet applications and requirements; transport protocols, TCP and UDP; network layer protocols, IP, routing, multicasting and broadcasting; local area networks; data link and physical layer issues; wireless and mobile networking, multimedia networking.
Exclusion: COMP4622
Course objective:
Upon completion of this course you will have an in depth knowledge about the foundations of current Internet applications, serviced and architecture and will learn about some of the challenges that are defining the future trends in the design of new services and protocols for the Internet.
Course outline/content (by major topics):
Textbooks:
*James Kurose and Keith Ross, Computer Networking: A Top Down Approach, (6th Ed.), Pearson, 2009.
*A collection of papers and articles provided as a reading list.
Reference books/materials:
Grading scheme:
Homework, paper presentation, and Final Exam.
Available for final year UG students to enroll: Yes
Minimum CGA required for UG students: Instructor Permission required
Course code: COMP5631
Course title: Cryptography and Security
Instructor: Prof. Cunsheng Ding
Room: 3518
Telephone: 2358-7021
Email:
WWW Page: http://cse.hkust.edu.hk/faculty/cding/COMP581/
Area in which course can be counted: Software and Applications
Course description:
This course gives an in depth coverage of the theory and applications of cryptography, and system security. In the part about cryptography, basic tools for building security systems are introduced. The system security part includes electronic mail security, IP security, Web security, VPNs, and firewalls.
Course objective:
After completion of this course, students will display a breadth of knowledge of both the principles and practice of cryptography and systems security, and master basic tools for building security systems.
Course outline/content (by major topics):
History of cryptography, classical ciphers, design and analysis of block ciphers and stream ciphers, public-key cryptography, hash functions, digital signature, group signature, proxy signature, user and data authentication, data integrity, nonrepudiation, Key management, public key infrastructure, cryptographic protocols, email security, web security, network security, VPNs, distributed systems security
Textbooks:
No textbook, but lecture slides will be posted online.
Reference books/materials:
W. Stallings, Cryptography Theory and Network Security, Fourth/Fifth Edition, Pearson Education.
Grading scheme:
Assignments, course project, midterm and final examination.
Available for final year UG students to enroll: Yes
Minimum CGA required for UG students: A-
Course code: COMP5711
Course title: Introduction to Advanced Algorithmic Techniques
Instructor: Ke Yi
Room: 3552
Telephone: 2358-8770
Email:
WWW Page: http://cse.hkust.edu.hk/~yike/
Area in which course can be counted: TH
Course description:
This is an introductory graduate course in algorithmic techniques.
Background: COMP3711, Discrete Mathematics, Probability
Course objective:
To equip students with a broad knowledge of general techniques for designing and analyzing algorithms.
Course outline/content (by major topics):
Fixed-parameter algorithms
Approximation algorithms
Local search
Amortized analysis
Randomized algorithms
Streaming algorithms
External-memory algorithms
Parallel and distributed algorithms
Textbooks:
* Algorithm Design. Jon Kleinberg and Eva Tardos, Addison Wesley, 2005.
Reference books/materials:
* Introduction to Algorithms (3rd Edition). T. Cormen, C. Leiserson, R. Rivest, C. Stein. McGraw Hill and MIT Press.
* Randomized Algorithms. Rajeev Motwani, Prabhakar Raghavan, Cambridge University Press, 1995.
Grading scheme:
Assignments: 10%
Midterm exam: 30%
Final exam: 60%
Available for final year UG students to enroll: Yes
Minimum CGA required for UG students: A- and Permission of the instructor.
Course code: COMP6211A
Course title: Topics in Text Mining and Knowledge Graph Construction, Inference, and Applications
Instructor: Yangqiu Song
Room: 3508 (lift 25/26)
Telephone: 6987
Email:
WWW Page:
Course description:
This course focuses on introducing basic and advanced machine learning algorithms for text mining and knowledge graph construction and inference. Knowledge graph is an important concept in AI, and has become popular for many applications, such as information retrieval, natural language understanding, etc. In this course, we will study the current development and critical challenges of knowledge graph construction, inference, and applications. The course will include student presentations, discussions, and a course project.
Course Goals:
The goals of this course are, at the completion of the course and the activities that are part of the course, the successful student should:
* Have an understanding of the general and specific methodologies of text processing and mining.
* Have an understanding of the general and specific technologies of knowledge construction, inference, and application.
* Have an understanding of the general principles for developing text mining and knowledge graph applications in several domains.
Course Prerequisites:
Computer science: object-oriented programming and data structures, design and analysis of algorithms; Mathematics: multivariable calculus, linear algebra and matrix analysis, probability and statistics.
Reference books:
* Mining Text Data. Charu C. Aggarwal and ChengXiang Zhai, Springer, 2012
* Speech and Language Processing, 2nd edition, Daniel Jurafsky and James H. Martin, Pearson Education, 2000.
* Introduction to Information Retrieval. Christopher D. Manning, Prabhakar Raghavan, and Hinrich Schuetze, Cambridge * ersity Press, 2008.
* Statistical Language Models for Information Retrieval. ChengXiang Zhai, Morgan & Claypool Publishers, 2008.
* Foundations of Statistical Natural Language Processing. C. Manning and H. Schutze, MIT Press, 1999.
* Mining the Web: Analysis of Hypertext and Semi Structured Data (The Morgan Kaufmann Series in Data Management Systems). Soumen Chakrabarti, Morgan Kaufmann, 2002.
* Web Data Mining: Exploring Hyperlinks, Contents and Usage Data. Bing Liu, Springer, 2006.
Course Topics:
Generally, this course will include the topics listed below. The actual topics covered may evolve somewhat over the semester based on the need to elaborate or focus on specific issues and subtopics.
* Overview of course, course syllabus and requirements;
* History and background of text mining and knowledge graph;
* Text representation: bag-of-words, topic models, word embedding;
* Information extraction: sequence labeling, structural output learning;
* Constraint modeling: generative/discriminative models, semi-supervised learning, * erior regularization;
* Knowledge graph construction: systems and algorithms;
* Knowledge graph inference: statistical relational learning, entity disambiguation;
* Entity linking and semantic parsing;
* Applications: information retrieval, question answering;
* etc.
Performance Evaluation:
In general, the earned grade in the course will be based on the calculated total points according to the following schedule:
Activity or Task | Max Point Value |
---|---|
Weekly reading notes | 20% |
Paper presentations | 30% |
Mid-term project proposal | 10% |
Project report | 20% |
Final project presentation | 10% |
Total | 100% |
Course code: COMP6611B
Course title: Topics on Cloud Computing and Data Analytics Systems
Instructor: Dr. Wei Wang
Room: 3520
Telephone: 2358-6972
Email:
WWW Page: https://cse.hkust.edu.hk/~weiwa/teaching.html
Area in which course can be counted: Networking and Systems
Course description:
Cloud computing realizes the long-held ambition of big data processing. By pooling a huge number of commodity servers into a large cluster, cloud computing allows big data applications, such as web search and social networks, to scale out to thousands of nodes, accommodating their ever-growing computing demands in spite of the stalling processor speed. Building computer systems at such a large scale poses a number of challenges on system design, implementation, and management.
In this course, we will examine advanced research topics in Cloud systems, data processing frameworks, and networking. Example topics include the architecture of Cloud datacenters and networks, state-of-the-art data processing frameworks, Cloud workload characteristics, resource management and scheduling, and the storage systems. The course will be paper reading-based coupled with open-ended course projects.
The course is available for final-year UG students with system and networking background who wish to pursue further research in the area of Cloud and data analytics systems.
Course objective:
The purpose of this course is to study the critical technologies and their future trend in Cloud systems and data analytics frameworks. We will survey various system design problems, discuss their technical challenges, and present state-of-the-art research results. We will also examine the design philosophy, the generality of the technique, and the potential limitations of existing solutions.
The course will be in a form of seminar, where students are given papers to read before attending the class. Students are expected to learn:
* How to read a research paper in a critical way;
* How to write a critical analysis of the research described in a paper;
* How to articulate intuitions and insights into a research paper;
* How to extract the key ideas and distill complex problems into their essence.
Course outline/content (by major topics):
* Overview of Cloud Computing and Datacenter Architecture
* Data Analytics Frameworks
* Storage Systems
* Workload Characteristics
* Cluster Management Systems
* Resource Management and Scheduler Design
* Datacenter Networking: Architecture, Traffic Characteristics, and Flow Management
Textbooks:
This course does not have a required textbook. Instead, all the course materials come from seminal, noteworthy, or representative papers published in the recent top conferences. The reading list will be posted online.
Reference books/materials:
Reading list posted online
Grading scheme:
* Class participation: 10%
* Paper summary and critic review: 20%
* Paper presentation and discussion: 25%
* Course project: 45%
Available for final year UG students to enroll: Yes
Minimum CGA required for UG students: A-
Please visit Class Schedule & Quota (Fall 2016) for the timetable and quota.
Last modified by Bo Liu on 2016-08-23.