Fall 2017 CS Course Listings
This file contains the Fall 2017 course listings for the Department of Computer Science and Engineering.
- COMP5112: Parallel Programming
- COMP5211: Advanced Artificial Intelligence
- COMP5331: Knowledge Discovery in Databases
- COMP5411: Advanced Computer Graphics
- COMP5621: Computer Networks
- COMP5631: Cryptography and Security
- COMP5711: Introduction to Advanced Algorithmic Techniques
- COMP6311E: Blockchain and Cryptocurrency Technologies
- Timetable
Course code: COMP5112
Course title: Parallel Programming
Instructor: Dr. Qiong Luo
Room: 3511
Telephone: 2358-6995
Email:
WWW Page:
Area in which course can be counted: ST
Course description:
Introduction to parallel computer architectures; principles of parallel algorithm design; shared-memory programming models; message passing programming models used for cluster computing; data-parallel programming models
for GPUs; case studies of parallel algorithms, systems, and applications; hands-on experience with writing parallel programs for tasks of interest.
Exclusion(s): COMP 6111B, COMP 6511A, COMP 6611A
Background: COMP 3511 AND COMP 3711/COMP 3711H
Course objective:
Students will attain the following on completion of the course:
* knowledge of parallel computer architectures;
* understanding of principles of parallel algorithm design;
* knowledge of shared-memory and
distributed-memory programming models;
* hands-on experience writing parallel programs of a task of interest.
Course outline/content (by major topics):
Introduction to parallel computer architectures;
principles of parallel algorithm design;
shared-memory programming models;
message passing programming models used for cluster computing;
data-parallel programming models for GPUs;
case studies of parallel algorithms, systems, and applications.
Textbooks:
Reference books/materials:
* Introduction to Parallel Computing, Second Edition. Ananth Grama, George Karypis, Vipin Kumar, Anshul Gupta. Addison-Wesley, 2003, ISBN: 0201648652.
* Programming Massively Parallel Processors: A Hands-on
Approach. Second Edition. David B. Kirk and Wen-mei W. Hwu. Elsevier 2012. ISBN: 978-0124159921.
Grading scheme:
project 50%, final exam 50%
Course code: COMP5211
Course title: Advanced Artificial Intelligence
Instructor: Prof. Fangzhen Lin
Room: 3557
Telephone: 2358-6975
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: COMP5331
Course title: Knowledge Discovery in Databases
Instructor: Dr. Raymond Wong
Room: 3541
Telephone: 2358-6982
Email:
WWW Page:
http://cse.hkust.edu.hk/~raywong/
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: COMP 271
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:
ntroduction 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: COMP5421
Course title: Advanced Computer Graphics
Instructor: Prof. Chiew-Lan Tai and Dr. Pedro Sander
Room: 3515, 3504
Telephone: 2358-7020; 2358-6983
Email: ,
WWW Page: http://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(s): CSIT 5400
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: Dr. Brahim Bensaou
Room: 3537
Telephone: 2358 7014
Email:
WWW Page: http://cse.hkust.edu.hk/~csbb
Area in which course can be counted: NT
Course description:
TPrinciples, 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: COMP 4622
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:
A collection of papers from journals, conference proceedings, and website need to be read.
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: 2533
Telephone: 2358-7021
Email:
WWW Page: http://cse.hkust.edu.hk/faculty/cding/
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: Dr. Ke Yi
Room: 3547
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: COMP6311E
Course title: Blockchain and Cryptocurrency Technologies
Instructor: Dr. Dimitris Papadopoulos
Room: 2537
Email:
Area in which course can be counted: ST
Course description:
The course will provide an introduction to blockchains, a tool that promises to revolutionize monetary transactions. We will start by analyzing the Bitcoin decentralized cryptocurrency that is the most popular existing
blockchain application. We will examine in detail how Bitcoin transactions are created, how Bitcoins are mined, and what are the security guarantees of the protocol. Then we will look into other applications of blockchains, including smart contract
execution, distributed storage, and alternative cryptocurrencies, by reviewing recent research literature. Students will need to study and present in-class a recent paper on the topic
Course objective:
Students should become familiar with the revolutionizing notion of blockchains and their applications, study the latest results in the literature, and learn the necessary cryptographic tools in order to engineer secure
software that interacts with the Bitcoin network.
Course outline/content (by major topics):
Overview of Bitcoin, Bitcoin Mechanics, Other cryptocurrencies, Anonymity and De-anonymization in cryptocurrencies, MicroPayments, Smart Contracts, Distributed Storage, Alternative Consensus
Textbooks:
Bitcoin and Cryptocurrency Technologies, Narayanan, Bonneau, Felten, Miller, Goldfeder, Clark, Princeton University Press 2016 (optional reference only)
Background:
No formal prerequisite. Good coding skills in C/C++,Java, Python, or another language are necessary for programming assignments. Background in cryptography (COMP 5631/COMP 2711) and security (COMP 4631) will be helpful but not
necessary.
Grading scheme:
Final Project 40%
Paper presentation: 30%
Class Participation: 10%
Assignments: 20%
Minimum CGA required for UG students: Permission of the instructor
Please visit Class Schedule & Quota (Fall 2017) for the timetable and quota.
Last modified by Xuanwu YUE on 2017-08-22.