B.Sc. in Computer Science — CUHK Engineering Major Requirements (2026–27)
Admission code: CSCIN · 75 units · For students admitted in 2026–27
Students are required to complete a minimum of 75 units of courses as follows:
1.Faculty Package9 units
ENGG1110/ESTR1002, ENGG1111, ENGG1120/ESTR1005, ENGG1125/ESTR1007[a]
Show 7 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| ENGG 1110 | Problem Solving By Programming | Not for students who have taken CSCI1020 or 1030 or 1110 or 1120 or 1130 or 1510 or 1520 or 1530 or 1540 or ESTR1002 or 1100 or 1102. | ||
| ESTR 1002 | Problem Solving By Programming | Not for students who have taken CSCI1020, CSCI1030, CSCI1110, CSCI1120, CSCI1130, CSCI1510, CSCI1520, CSCI1530, CSCI1540, ENGG1110, ESTR1100 or ESTR1102. | ||
| ENGG 1111 [0] | AI Literacy Workshop | Co-requisite: ENGG1110. | ||
| ENGG 1120 | Linear Algebra for Engineers | Not for students who have taken ENGG1410 or ESTR1004 or ESTR1005 or MATH1030 or MATH1038. | ||
| ESTR 1005 | Linear Algebra for Engineers | Not for students who have taken ENGG1120 or ENGG1410 or ESTR1004 or MATH1030 or MATH1038. | ||
| ENGG 1125 | Single Variable Calculus for Engineers | Not for students who have taken ESTR1007 or MATH1510. | ||
| ESTR 1007 | Single Variable Calculus for Engineers | Not for students who have taken ENGG1125 or MATH1510. |
2.Foundation Courses16 units
(a)Any one course from the following3 units
Chemistry Courses: CHEM1380
Life Science Courses: LSCI1001, 1003
Physics Courses[b]: ENGG1310/ESTR1003, PHYS1003, 1110
Show 7 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| CHEM 1380 | Basic Chemistry for Engineers | |||
| LSCI 1001 | Basic Concepts in Biological Sciences | Not for students who have taken LSCI1002 or 1003. | ||
| LSCI 1003 | Life Sciences for Engineers | Not for students who have taken LSCI1001. | ||
| ENGG 1310 | Engineering Physics: Electromagnetics, Optics and Modern Physics | Not for students who have taken ENGG2520, ESTR2006 or ESTR1003. | ||
| ESTR 1003 | Engineering Physics: Electromagnetics, Optics and Modern Physics | Not for students who have taken ENGG1310 or ENGG2520 or ESTR2006. | ||
| PHYS 1003 | General Physics for Engineers | |||
| PHYS 1110 | Engineering Physics: Mechanics and Thermodynamics |
(b)3 units
CSCI1130/ESTR1102
Show 2 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| CSCI 1130 | Introduction to Computing Using Java | Not for students who have taken AIST1110 or CSCI1030 or CSCI1120 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or ESTR1100 or ESTR1102. | ||
| ESTR 1102 | Introduction to Computing Using Java | Not for students who have taken AIST1110 or ESTR1100 or CSCI1030, CSCI1120, CSCI1130, CSCI1510, CSCI1520, CSCI1530, CSCI1540, CSCI1550. |
(c)10 units
ENGG1130/ESTR1006[c], ENGG2440/ESTR2004, ENGG2760/ESTR2018, ENGG2780/ESTR2020
Show 8 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| ENGG 1130 | Multivariable Calculus for Engineers | Pre-requisite(s): ENGG1125 or ESTR1007 or MATH1510.Not for students who have taken ENGG1410 or ESTR1004 or 1006 or MATH2010 or 2018 or 2020 or 2028. | ||
| ESTR 1006 | Multivariable Calculus for Engineers | Pre-requisite(s): ENGG1125 or ESTR1007 or MATH1510.Not for students who have taken ENGG1130 or ENGG1410 or ESTR1004 or MATH2010 or MATH2018 or MATH2020 or MATH2028. | ||
| ENGG 2440 | Discrete Mathematics for Engineers | Not for students who have taken CSCI2110 or ENGG2460 or ESTR2004 or ESTR2010 or ESTR2362 or MIEG2440. | ||
| ESTR 2004 | Discrete Mathematics for Engineers | Not for students who have taken CSCI2110 or ENGG2440 or ENGG2460 or ESTR2010 or ESTR2362 or MIEG2440. | ||
| ENGG 2760 [2] | Probability for Engineers | Not for students who have taken ENGG2430 or 2450 or 2470 or ESTR2002 or 2005 or 2012 or 2018 or 2308 or 2362 or IERG2470 or MIEG2440. | ||
| ESTR 2018 [2] | Probability for Engineers | Not for students who have taken ENGG2430 or ENGG2450 or ENGG2470 or ENGG2760 or ESTR2002 or ESTR2005 or ESTR2012 or ESTR2308 or ESTR2362 or IERG2470 or MIEG2440. | ||
| ENGG 2780 [2] | Statistics for Engineers | Not for students who have taken ENGG2430 or ENGG2450 or ESTR2002 or ESTR2005 or 2020.Co-requisite(s): ENGG2760 or ESTR2018 or 2308 or IERG2470. | ||
| ESTR 2020 [2] | Statistics for Engineers | Not for students who have taken ENGG2430 or ENGG2450 or ENGG2780 or ESTR2002 or ESTR2005.Co-requisite(s): ENGG2760 or ESTR2018 or ESTR2308 or IERG2470. |
3.Required Courses33 units
(a)27 units
CENG3420, CSCI2100/ESTR2102, CSCI3100, 3130, CSCI3150/ESTR3102, CSCI3160/ESTR3104, CSCI3180/ESTR3106, CSCI3250, 3251, ENGG2020/ESTR2104
Show 15 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| CENG 3420 | Computer Organization and Design | Not for students who have taken CSCI3420.Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 2100 | Data Structures | Not for students who have taken ESTR2102 or CSCI2520;Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or ESTR1102 or ESTR2306 or IERG2080.For senior-year entrants, the prerequisite will be waived. | ||
| ESTR 2102 | Data Structures | Not for students who have taken CSCI2100 or CSC2520.Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or ESTR1102 or ESTR2306 or IERG2080.For senior-year entrants, the pre-requisite will be waived. | ||
| CSCI 3100 | Software Engineering | Not for students who have taken ENGG3820 or ESTR3308 or IERG3080;Pre-requisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or 1102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3130 | Formal Languages and Automata Theory | Pre-requisite: CSCI2110 or ENGG2440 or ESTR2004 or MIEG2440. | ||
| CSCI 3150 | Introduction to Operating Systems | Prerequisite: ESTR2102 or CSCI2100 or 2520.For senior-year entrants, the prerequisite will be waived.Co-requisite: AIST3020 or CSCI2510 or CENG3420 or IERG3060 or equivalent.Not for students who have taken ESTR3102. | ||
| ESTR 3102 | Introduction to Operating Systems | Not for students who have taken CSCI3150.Pre-requisite: CSCI2100 or CSCI2520 or ESTR2102.For senior-year entrants, the pre-requisite will be waived.Co-requisite: AIST3020 or CSCI2510 or CENG3420 or IERG3060 or equivalent. | ||
| CSCI 3160 | Design and Analysis of Algorithms | Not for students who have taken ESTR3104 or CSCI3190;Pre-requisites: (CSCI2100 or CSCI2520 or ESTR2102) AND (CSCI2110 or ENGG2440 or ESTR2004 or ESTR2362 or MIEG2440). | ||
| ESTR 3104 | Design and Analysis of Algorithms | Not for students who have taken CSCI3160 or CSCI3190.Pre-requisite: CSCI2100 or CSCI2520 or ESTR2102, AND CSCI2110 or ENGG2440 or ESTR2004. | ||
| CSCI 3180 | Principles of Programming Languages | Not for students who have taken ESTR3106.Prerequisite: CSCI2100 or 2520 or ESTR2102.For senior-year entrants, the prerequisite will be waived. | ||
| ESTR 3106 | Principles of Programming Languages | Not for students who have taken CSCI3180.Pre-requisite: CSCI2100 or CSCI2520 or ESTR2102.For senior-year entrants, the pre-requisite will be waived. | ||
| CSCI 3250 [2] | Computers and Society | Not for students who have taken ENGG2601. | ||
| CSCI 3251 [1] | Engineering Practicum | Not for students who have taken ENGG2602. | ||
| ENGG 2020 | Digital Logic and Systems | Not for students who have taken ELEG2120 or ESTR2104. | ||
| ESTR 2104 | Digital Logic and Systems | Not for students who have taken ELEG2120 or ENGG2020. |
(b)Research Component Courses[d]6 units
CSCI4998, 4999
Show 2 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| CSCI 4998 | Final Year Project I | |||
| CSCI 4999 | Final Year Project II | Pre-requisite: CSCI4998. |
4.Choose any ONE from the following seven options17 units
(a)General Computer Science17 units
Elective Courses17 units
Choose 17 units from AIST4010/ESTR4140, BMEG3102 or CSCI3220/ESTR3110, CSCI3230/ESTR3108, CSCI4160/ESTR4104, CSCI4180/ESTR4106, CSCI4430/ESTR4120, ENGG1820, (ENGG3802 and 3803), IERG4300/ESTR4300, STAT2005, 2006 and the AIST/CENG/CSCI courses of which at least 12 units must be from courses at 3000 or above level
Show 20 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| AIST 4010 | Foundation of Applied Deep Learning | Not for students who have taken ESTR4140.Prerequisite: CSCI3230 or CSCI3320 or ESTR3108. | ||
| ESTR 4140 | Foundation of Applied Deep Learning | Pre-requisite: CSCI3230 or CSCI3320 or ESTR3108.Not for students who have taken AIST4010. | ||
| BMEG 3102 | Bioinformatics | Not for students who have taken ELEG4120 or CSCI3220 or ESTR3110. | ||
| CSCI 3220 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or ESTR3110. | ||
| ESTR 3110 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or CSCI3220. | ||
| CSCI 3230 | Fundamentals of Artificial Intelligence | Not for students who have taken ESTR3108.Prerequisite: CSCI2100 or 2520 or ESTR2102 or equivalent. | ||
| ESTR 3108 | Fundamentals of Artificial Intelligence | Not for students who have taken CSCI3230.Pre-requisite: CSCI2100 or CSCI2520 or ESTR2102 or equivalent. | ||
| CSCI 4160 | Distributed and Parallel Computing | Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104. | ||
| ESTR 4104 | Distributed and Parallel Computing | Not for students who have taken CSCI4160.Pre-requisite: CSCI3150 or ESTR3102. | ||
| CSCI 4180 | Introduction to Cloud Computing and Storage | Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106. | ||
| ESTR 4106 | Introduction to Cloud Computing and Storage | Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken CSCI4180. | ||
| CSCI 4430 | Data Communication and Computer Networks | 1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310. | ||
| ESTR 4120 | Data Communication and Computer Networks | Not for students who have taken IERG3310 or CSCI4430 or ESTR3310.Pre-requisite: CSCI3150 or CENG3150 or ESTR3102. | ||
| ENGG 1820 [1] | Engineering Internship | |||
| ENGG 3802 [1] | Introduction to Engineering Entrepreneurship | |||
| ENGG 3803 [2] | Engineering Entrepreneurship Development Project | Pre-requisite: ENGG3802 with Grade B+ or above or with consent of instructor. | ||
| IERG 4300 | Web-scale Information Analytics | Not for students who have taken CSCI5510 or ENGG4030 or ESTR4300. | ||
| ESTR 4300 | Web-scale Information Analytics | Not for students who have taken CSCI5510 or ENGG4030 or IERG4300. | ||
| STAT 2005 | Programming Languages for Statistics | |||
| STAT 2006 | Basic Concepts in Statistics and Probability II | Pre-requisite: STAT2001 or ENGG2760 or ESTR2018 or consent of instructor. |
AIST/CENG/CSCI Courses
Show 113 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| AIST 1000 [1] | Introduction to Artificial Intelligence and Machine Learning | |||
| AIST 1110 | Introduction to Computing using Python | Pre-requisite: ENGG1110 or ESTR1002.Not for students who have taken CSCI1040 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or CSCI2040 or ESTR1100 or ESTR1102 or IERG1080. | ||
| AIST 2010 | Introduction to Computer Music: From Analysis to Algorithmic Music | Prerequisite: AIST1110 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or ENGG1110 or ESTR1002 or ESTR1100 or ESTR1102. | ||
| AIST 2601 [2] | Technology, Society and Engineering Practice | Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602. | ||
| AIST 2602 [1] | Engineering Practicum | Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602. | ||
| AIST 3010 [2] | Numerical Optimization | Pre-requisite: ENGG1120/ESTR1005 or ENGG1130/ESTR1006 or MATH1510.Not for students who have taken AIST3030 or ESTR3112 or ESTR3114. | ||
| AIST 3020 | Introduction to Computer Systems | Not for students who have taken CSCI3150 or ESTR3102.Prerequisite: (ENGG1110 or ESTR1002) AND (ENGG2440 or ESTR2004). | ||
| AIST 3030 | Numerical Optimization | Pre-requisite: ENGG1120 or ENGG1130 or ESTR1005 or ESTR1006 or MATH1510.Not for students who have taken AIST3010 or ESTR3112 or ESTR3114. | ||
| AIST 3110 | Music Information Retrieval | Pre-requisite/Co-requisite: AIST2010 or CSCI3280. | ||
| AIST 3120 | Introduction to Natural Language Processing | Prerequisite: (AIST1110 or CSCI1040 or CSCI1550 or CSCI2040) AND (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| AIST 3510 | Human-computer Interaction | Not for students who have taken SEEM3510. | ||
| AIST 4010 | Foundation of Applied Deep Learning | Not for students who have taken ESTR4140.Prerequisite: CSCI3230 or CSCI3320 or ESTR3108. | ||
| AIST 4020 | Agentic AI and LLM Serving | Prerequisite: AIST3020 or CSCI3150 or ESTR3102. | ||
| AIST 4030 | Structured Data Modeling and Graph Neural Network | Prerequisite: AIST3120 or CSCI3230 or ESTR3108 or CSCI3320. | ||
| AIST 4040 | Mathematical Foundations of Deep Learning | Prerequisite: (ENGG1120/ESTR1005 or ENGG1125/ESTR1007 or ENGG1130/ESTR1006 or ENGG2760/ESTR2018 or ENGG2780/ESTR2020) AND (AIST3030/ESTR3112). | ||
| AIST 4050 | Embodied Intelligence: Algorithms and Applications | Prerequisite: AIST1000. | ||
| AIST 4060 [2] | AI-Native Software Engineering | Prerequisite: AIST3020 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or CSCI3180 or ESTR1100 or ESTR1102 or ESTR3106.Not for students who have taken IERG3844. | ||
| AIST 4998 | Final Year Project I | |||
| AIST 4999 | Final Year Project II | Prerequisite: AIST4998. | ||
| AIST 5020 | Trustworthy Artificial Intelligence | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| AIST 5030 | Generative Artificial Intelligence | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science and Engineering;Not for students who have taken SEEM5030. | ||
| AIST 5040 | PhysAI and GenAI for Natural Science | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| AIST 5050 | Optimization for Large Language Models | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CENG 2010 [1] | Digital Logic Design Laboratory | Prerequisite: ENGG2020 or ESTR2104. | ||
| CENG 2030 | Fundamentals of Embedded Systems | Pre-requisite: ENGG1110 or ESTR1002. | ||
| CENG 2400 | Embedded System Design | Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.Not for students who have taken ESTR2100. | ||
| CENG 3420 | Computer Organization and Design | Not for students who have taken CSCI3420.Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.For 2nd-year entrants, the prerequisite will be waived. | ||
| CENG 3430 | Rapid Prototyping of Digital Systems | Prerequisite: CSCI2510 or ENGG2020 or ENGG2120 or ESTR2104 or its equivalent For senior-year entrants, the prerequisite will be waived.Not for students who have taken ESTR3100. | ||
| CENG 4120 | Computer-aided Design for Very Large Scale Integrated Circuits | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CENG 4480 | Embedded System Development and Applications | Not for students who have taken CENG3480 in 2008-09 and before;Prerequisite: CENG2400 or ESTR2100.For 2nd-year entrants, the prerequisite will be waived. | ||
| CENG 4998 | Final Year Project I | |||
| CENG 4999 | Final Year Project II | Prerequisite: CENG4998. | ||
| CENG 5030 | Energy Efficient Computing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CENG 5270 | EDA for Physical Design of Digital Systems | For students in MSc Computer Science; or MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering;(CENGU & CENGN). | ||
| CENG 5280 | Quantum Computer Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CSCI 1020 [1] | Hands-on Introduction to C++ | Not for students who have taken CSCI1120 or 1520 or 1540 or ESTR1100. | ||
| CSCI 1030 [1] | Hands-on Introduction to Java | Not for students who have taken CSCI1130 or 1530 or ESTR1102. | ||
| CSCI 1120 | Introduction to Computing Using C++ | Not for students who have taken AIST1110 or CSCI1020 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or ESTR1100 or ESTR1102. | ||
| CSCI 1130 | Introduction to Computing Using Java | Not for students who have taken AIST1110 or CSCI1030 or CSCI1120 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or ESTR1100 or ESTR1102. | ||
| CSCI 1510 | Computer Principles and C Programming | Not for students who have taken AIST1110 or CSCI1120 or CSCI1130 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or ENGG1110 or ESTR1002 or ESTR1100 or ESTR1102. | ||
| CSCI 1520 | Computer Principles and C++ Programming | Not for students who have taken AIST1110 or CSCI1020 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1530 or CSCI1540 or CSCI1550 or ENGG1110 or ESTR1002 or ESTR1100 or ESTR1102. | ||
| CSCI 1530 | Computer Principles and Java Programming | Not for students who have taken AIST1110 or CSCI1030 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1540 or CSCI1550 or ENGG1110 or ESTR1002 or ESTR1100 or ESTR1102. | ||
| CSCI 1540 | Fundamental Computing with C++ | Not for students who have taken AIST1110 or CSCI1020 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1550 or ESTR1100 or ESTR1102. | ||
| CSCI 1550 | Computer Principles and Python Programming | Not for students who have taken ENGG1110 or ENGG1120 or ENGG1130 or CSCI1040 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI2040 or AIST1110 or IERG1080.Not for students of Faculty of Engineering. | ||
| CSCI 1580 | Visual Programming | Not for students who have taken ENGG1100 or ENGG1110 or ENGG2600 or 2601 or ESTR1000 or 1002 or 2008. | ||
| CSCI 2040 [2] | Introduction to Python | Pre-requisite: ENGG1110 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or ESTR1002.Not for students who have taken CSCI1040 or CSCI1550 or CSCI3230 or CSCI3320 or AIST1110 or IERG1080. | ||
| CSCI 2100 | Data Structures | Not for students who have taken ESTR2102 or CSCI2520;Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or ESTR1102 or ESTR2306 or IERG2080.For senior-year entrants, the prerequisite will be waived. | ||
| CSCI 2510 | Computer Organization | Not for students who have taken CENG2400 or ELEG3230 or ENGG2020 or ESTR2100 or ESTR2104.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2520 | Data Structures and Applications | Not for students who have taken CSCI2100 or ESTR2102.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2720 | Building Web Applications | Not for students who have taken ESTR2106 or IERG3840.Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2730 | Introduction to Blockchain Technologies and Applications | Not for students who have taken IERG4360 or ESTR4326.Prerequisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102. | ||
| CSCI 2740 | Competitive Programming | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CSCI 2750 | Data Mining and Information Processing | Prerequisite: (ENGG1110 or ESTR1002) and (ENGG1120 or ESTR1005) Not for students who have taken CSCI3230 or ESTR3108 or CSCI3320. | ||
| CSCI 3100 | Software Engineering | Not for students who have taken ENGG3820 or ESTR3308 or IERG3080;Pre-requisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or 1102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3120 | Compiler Construction | |||
| CSCI 3130 | Formal Languages and Automata Theory | Pre-requisite: CSCI2110 or ENGG2440 or ESTR2004 or MIEG2440. | ||
| CSCI 3150 | Introduction to Operating Systems | Prerequisite: ESTR2102 or CSCI2100 or 2520.For senior-year entrants, the prerequisite will be waived.Co-requisite: AIST3020 or CSCI2510 or CENG3420 or IERG3060 or equivalent.Not for students who have taken ESTR3102. | ||
| CSCI 3160 | Design and Analysis of Algorithms | Not for students who have taken ESTR3104 or CSCI3190;Pre-requisites: (CSCI2100 or CSCI2520 or ESTR2102) AND (CSCI2110 or ENGG2440 or ESTR2004 or ESTR2362 or MIEG2440). | ||
| CSCI 3170 | Introduction to Database Systems | Prerequisite: CSCI2100 or 2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3180 | Principles of Programming Languages | Not for students who have taken ESTR3106.Prerequisite: CSCI2100 or 2520 or ESTR2102.For senior-year entrants, the prerequisite will be waived. | ||
| CSCI 3190 | Introduction to Discrete Mathematics and Algorithms | Not for students who have taken CSCI3160 or ENGG2440 or ESTR2004 or 3104.Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3220 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or ESTR3110. | ||
| CSCI 3230 | Fundamentals of Artificial Intelligence | Not for students who have taken ESTR3108.Prerequisite: CSCI2100 or 2520 or ESTR2102 or equivalent. | ||
| CSCI 3250 [2] | Computers and Society | Not for students who have taken ENGG2601. | ||
| CSCI 3251 [1] | Engineering Practicum | Not for students who have taken ENGG2602. | ||
| CSCI 3260 | Principles of Computer Graphics | Prerequisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 3270 [2] | Advanced Programming Laboratory | 1. Prerequisite: CSCI2100 or ESTR2102;2. Corequisite: CSCI3160 or ESTR3104. | ||
| CSCI 3280 | Introduction to Multimedia Systems | |||
| CSCI 3290 | Computational Imaging and Vision | Prerequisite: CSCI2100 or ESTR2102. | ||
| CSCI 3310 | Mobile Computing and Applications Development | Pre-requisite: CSCI2100 or 2520 or ESTR2102.Not for students who have taken IERG3842. | ||
| CSCI 3320 | Fundamentals of Machine Learning | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440 or STAT2001. | ||
| CSCI 3330 | Fundamentals of Applied Computer Vision | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CSCI 3340 | Scientific Computing | Prerequisite: (ENGG1120 or ESTR1005 or MATH1030 or MATH1038 or MATH1550) AND (ENGG1130 or ESTR1006 or MATH1010 or MATH1020 or MATH1018 or MATH1510 or MATH1520). | ||
| CSCI 3350 | Introduction to Quantum Computing | Prerequisite: (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| CSCI 3360 | Introduction to Computational Complexity | Prerequisite: ENGG2760 or ESTR2018 or ESTR2308 or IERG2470. | ||
| CSCI 4120 | Principles of Computer Game Software | 1. Prerequisite: CSCI2100 or 2520 or ESTR2102;2. Prerequisite/Corequisite: CSCI3260 or 3550. | ||
| CSCI 4130 | Introduction to Cyber Security | Not for students who have taken ESTR4306 or IEMS5710 or IERG4130. | ||
| CSCI 4140 | Open-source Software Project Development | Prerequisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4160 | Distributed and Parallel Computing | Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104. | ||
| CSCI 4180 | Introduction to Cloud Computing and Storage | Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106. | ||
| CSCI 4190 | Introduction to Social Networks | Pre-requisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4200 | Operating System Engineering | Pre-requisite: CSCI3150 or ESTR3102. | ||
| CSCI 4230 | Computational Learning Theory | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440. | ||
| CSCI 4240 | Advanced Algorithms: Randomization and Approximation | Pre-requisite: (ENGG2760 or ESTR2018) and (ENGG1120 or ESTR1005) Co-requisite: CSCI3160. | ||
| CSCI 4430 | Data Communication and Computer Networks | 1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310. | ||
| CSCI 4998 | Final Year Project I | |||
| CSCI 4999 | Final Year Project II | Pre-requisite: CSCI4998. | ||
| CSCI 5010 | Practical Computational Geometry Algorithms | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5030 | Machine Learning Theory | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN);Not for students who have taken AIMS5704. | ||
| CSCI 5120 | Advanced Topics in Database Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: CMSC5705 and SEEM5010. | ||
| CSCI 5150 | Machine Learning Algorithms and Applications | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: FTEC5580. | ||
| CSCI 5210 | Advanced Computer Graphics and Visualization | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5350 | Advanced Topics in Game Theory | For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5728. | ||
| CSCI 5370 | Quantum Computing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5390 | Advanced GPU Programming | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5440 | Theory of Cryptography | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5540 | Machine Learning Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5550 | Advanced File and Storage Systems | For undergraduate students in Computer Science (CSCIU and CSCIN) or Computer Engineering (CENGU and CENGN); or For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5600 | Advanced Topics in Distributed Systems | For students in MSc Computer Science or MPhil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5735. | ||
| CSCI 5610 | Advanced Data Structures | For students in MSc Computer Science or Mphil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering. | ||
| CSCI 5630 | Advanced Topics in Graph Mining | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5640 | Natural Language Processing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5650 | Graph Neural Networks | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5660 | Advanced Topics of AI for Life Sciences | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5670 | Computational Imaging Systems and Algorithms | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering;Not for students who have taken IERG5670. | ||
| CSCI 5680 | Advanced Topics in Flash Memory Technology | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5690 | Automated Reasoning about Software Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5700 | Advanced Topics in Software Testing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CSCI 6500 [1] | Seminars for M.Phil. Studies | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 7600 [1] | Seminars for Ph.D. Studies | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8003 | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8006 [6] | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8012 [12] | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. |
(b)Stream 1: Intelligence Science17 units
Required Courses
CSCI3230/ESTR3108
Show 2 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| CSCI 3230 | Fundamentals of Artificial Intelligence | Not for students who have taken ESTR3108.Prerequisite: CSCI2100 or 2520 or ESTR2102 or equivalent. | ||
| ESTR 3108 | Fundamentals of Artificial Intelligence | Not for students who have taken CSCI3230.Pre-requisite: CSCI2100 or CSCI2520 or ESTR2102 or equivalent. |
Elective Courses9 units
Choose at least 9 units from the following9 units
AIST3120, AIST3510/SEEM3510, AIST4010/ESTR4140, AIST4020, 4030, 4040, 4050, 4060, 5040, 5050, BMEG3102 or CSCI3220/ESTR3110, CSCI3320, 4190, 4230, 5030, 5150, CSCI5180/ENGG5103, CSCI5280/ENGG5104, CSCI5350, 5390, 5540, 5640, 5660, 5690, ENGG5781, IERG3320, IERG4300/ESTR4300
Show 34 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| AIST 3120 | Introduction to Natural Language Processing | Prerequisite: (AIST1110 or CSCI1040 or CSCI1550 or CSCI2040) AND (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| AIST 3510 | Human-computer Interaction | Not for students who have taken SEEM3510. | ||
| SEEM 3510 | Human-computer Interaction | Not for students who have taken AIST3510. | ||
| AIST 4010 | Foundation of Applied Deep Learning | Not for students who have taken ESTR4140.Prerequisite: CSCI3230 or CSCI3320 or ESTR3108. | ||
| ESTR 4140 | Foundation of Applied Deep Learning | Pre-requisite: CSCI3230 or CSCI3320 or ESTR3108.Not for students who have taken AIST4010. | ||
| AIST 4020 | Agentic AI and LLM Serving | Prerequisite: AIST3020 or CSCI3150 or ESTR3102. | ||
| AIST 4030 | Structured Data Modeling and Graph Neural Network | Prerequisite: AIST3120 or CSCI3230 or ESTR3108 or CSCI3320. | ||
| AIST 4040 | Mathematical Foundations of Deep Learning | Prerequisite: (ENGG1120/ESTR1005 or ENGG1125/ESTR1007 or ENGG1130/ESTR1006 or ENGG2760/ESTR2018 or ENGG2780/ESTR2020) AND (AIST3030/ESTR3112). | ||
| AIST 4050 | Embodied Intelligence: Algorithms and Applications | Prerequisite: AIST1000. | ||
| AIST 4060 [2] | AI-Native Software Engineering | Prerequisite: AIST3020 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or CSCI3180 or ESTR1100 or ESTR1102 or ESTR3106.Not for students who have taken IERG3844. | ||
| AIST 5040 | PhysAI and GenAI for Natural Science | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| AIST 5050 | Optimization for Large Language Models | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| BMEG 3102 | Bioinformatics | Not for students who have taken ELEG4120 or CSCI3220 or ESTR3110. | ||
| CSCI 3220 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or ESTR3110. | ||
| ESTR 3110 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or CSCI3220. | ||
| CSCI 3320 | Fundamentals of Machine Learning | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440 or STAT2001. | ||
| CSCI 4190 | Introduction to Social Networks | Pre-requisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4230 | Computational Learning Theory | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440. | ||
| CSCI 5030 | Machine Learning Theory | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN);Not for students who have taken AIMS5704. | ||
| CSCI 5150 | Machine Learning Algorithms and Applications | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: FTEC5580. | ||
| CSCI 5180 | (not found in course_info) | |||
| ENGG 5103 | Techniques for Data Mining | For students in MSc Computer Science or MPhil-PhD programmes under Faculty of Engineering or UG Computer Science or UG Computer Engineering;Not for students who have taken CMSC5724 or CSCI5180. | ||
| CSCI 5280 | (not found in course_info) | |||
| ENGG 5104 | Image Processing and Computer Vision | For students in MSc Computer Science or MPhil-PhD programmes under Faculty of Engineering or UG Computer Science or UG Computer Engineering;Not for students who have taken CMSC5711 or CSCI5280. | ||
| CSCI 5350 | Advanced Topics in Game Theory | For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5728. | ||
| CSCI 5390 | Advanced GPU Programming | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5540 | Machine Learning Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5640 | Natural Language Processing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5660 | Advanced Topics of AI for Life Sciences | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5690 | Automated Reasoning about Software Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| ENGG 5781 | Matrix Analysis and Computations | For MPhil-PhD Engineering Students. | ||
| IERG 3320 | Social Media and Human Information Interaction | Prerequisite: IERG2051 or MIEG2051 or ENGG2030 or ESTR2302 or ESTR2360 or ESTR2206.Not for students who have taken ESTR3306. | ||
| IERG 4300 | Web-scale Information Analytics | Not for students who have taken CSCI5510 or ENGG4030 or ESTR4300. | ||
| ESTR 4300 | Web-scale Information Analytics | Not for students who have taken CSCI5510 or ENGG4030 or IERG4300. | ||
Remaining units can be chosen from the following
AIST/CENG/CSCI courses at 2000 or above level, ENGG1820, (ENGG3802 and 3803), STAT2005, 2006
Show 106 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| AIST 2010 | Introduction to Computer Music: From Analysis to Algorithmic Music | Prerequisite: AIST1110 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or ENGG1110 or ESTR1002 or ESTR1100 or ESTR1102. | ||
| AIST 2601 [2] | Technology, Society and Engineering Practice | Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602. | ||
| AIST 2602 [1] | Engineering Practicum | Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602. | ||
| AIST 3010 [2] | Numerical Optimization | Pre-requisite: ENGG1120/ESTR1005 or ENGG1130/ESTR1006 or MATH1510.Not for students who have taken AIST3030 or ESTR3112 or ESTR3114. | ||
| AIST 3020 | Introduction to Computer Systems | Not for students who have taken CSCI3150 or ESTR3102.Prerequisite: (ENGG1110 or ESTR1002) AND (ENGG2440 or ESTR2004). | ||
| AIST 3030 | Numerical Optimization | Pre-requisite: ENGG1120 or ENGG1130 or ESTR1005 or ESTR1006 or MATH1510.Not for students who have taken AIST3010 or ESTR3112 or ESTR3114. | ||
| AIST 3110 | Music Information Retrieval | Pre-requisite/Co-requisite: AIST2010 or CSCI3280. | ||
| AIST 3120 | Introduction to Natural Language Processing | Prerequisite: (AIST1110 or CSCI1040 or CSCI1550 or CSCI2040) AND (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| AIST 3510 | Human-computer Interaction | Not for students who have taken SEEM3510. | ||
| AIST 4010 | Foundation of Applied Deep Learning | Not for students who have taken ESTR4140.Prerequisite: CSCI3230 or CSCI3320 or ESTR3108. | ||
| AIST 4020 | Agentic AI and LLM Serving | Prerequisite: AIST3020 or CSCI3150 or ESTR3102. | ||
| AIST 4030 | Structured Data Modeling and Graph Neural Network | Prerequisite: AIST3120 or CSCI3230 or ESTR3108 or CSCI3320. | ||
| AIST 4040 | Mathematical Foundations of Deep Learning | Prerequisite: (ENGG1120/ESTR1005 or ENGG1125/ESTR1007 or ENGG1130/ESTR1006 or ENGG2760/ESTR2018 or ENGG2780/ESTR2020) AND (AIST3030/ESTR3112). | ||
| AIST 4050 | Embodied Intelligence: Algorithms and Applications | Prerequisite: AIST1000. | ||
| AIST 4060 [2] | AI-Native Software Engineering | Prerequisite: AIST3020 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or CSCI3180 or ESTR1100 or ESTR1102 or ESTR3106.Not for students who have taken IERG3844. | ||
| AIST 4998 | Final Year Project I | |||
| AIST 4999 | Final Year Project II | Prerequisite: AIST4998. | ||
| AIST 5020 | Trustworthy Artificial Intelligence | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| AIST 5030 | Generative Artificial Intelligence | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science and Engineering;Not for students who have taken SEEM5030. | ||
| AIST 5040 | PhysAI and GenAI for Natural Science | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| AIST 5050 | Optimization for Large Language Models | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CENG 2010 [1] | Digital Logic Design Laboratory | Prerequisite: ENGG2020 or ESTR2104. | ||
| CENG 2030 | Fundamentals of Embedded Systems | Pre-requisite: ENGG1110 or ESTR1002. | ||
| CENG 2400 | Embedded System Design | Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.Not for students who have taken ESTR2100. | ||
| CENG 3420 | Computer Organization and Design | Not for students who have taken CSCI3420.Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.For 2nd-year entrants, the prerequisite will be waived. | ||
| CENG 3430 | Rapid Prototyping of Digital Systems | Prerequisite: CSCI2510 or ENGG2020 or ENGG2120 or ESTR2104 or its equivalent For senior-year entrants, the prerequisite will be waived.Not for students who have taken ESTR3100. | ||
| CENG 4120 | Computer-aided Design for Very Large Scale Integrated Circuits | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CENG 4480 | Embedded System Development and Applications | Not for students who have taken CENG3480 in 2008-09 and before;Prerequisite: CENG2400 or ESTR2100.For 2nd-year entrants, the prerequisite will be waived. | ||
| CENG 4998 | Final Year Project I | |||
| CENG 4999 | Final Year Project II | Prerequisite: CENG4998. | ||
| CENG 5030 | Energy Efficient Computing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CENG 5270 | EDA for Physical Design of Digital Systems | For students in MSc Computer Science; or MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering;(CENGU & CENGN). | ||
| CENG 5280 | Quantum Computer Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CSCI 2040 [2] | Introduction to Python | Pre-requisite: ENGG1110 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or ESTR1002.Not for students who have taken CSCI1040 or CSCI1550 or CSCI3230 or CSCI3320 or AIST1110 or IERG1080. | ||
| CSCI 2100 | Data Structures | Not for students who have taken ESTR2102 or CSCI2520;Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or ESTR1102 or ESTR2306 or IERG2080.For senior-year entrants, the prerequisite will be waived. | ||
| CSCI 2510 | Computer Organization | Not for students who have taken CENG2400 or ELEG3230 or ENGG2020 or ESTR2100 or ESTR2104.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2520 | Data Structures and Applications | Not for students who have taken CSCI2100 or ESTR2102.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2720 | Building Web Applications | Not for students who have taken ESTR2106 or IERG3840.Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2730 | Introduction to Blockchain Technologies and Applications | Not for students who have taken IERG4360 or ESTR4326.Prerequisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102. | ||
| CSCI 2740 | Competitive Programming | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CSCI 2750 | Data Mining and Information Processing | Prerequisite: (ENGG1110 or ESTR1002) and (ENGG1120 or ESTR1005) Not for students who have taken CSCI3230 or ESTR3108 or CSCI3320. | ||
| CSCI 3100 | Software Engineering | Not for students who have taken ENGG3820 or ESTR3308 or IERG3080;Pre-requisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or 1102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3120 | Compiler Construction | |||
| CSCI 3130 | Formal Languages and Automata Theory | Pre-requisite: CSCI2110 or ENGG2440 or ESTR2004 or MIEG2440. | ||
| CSCI 3150 | Introduction to Operating Systems | Prerequisite: ESTR2102 or CSCI2100 or 2520.For senior-year entrants, the prerequisite will be waived.Co-requisite: AIST3020 or CSCI2510 or CENG3420 or IERG3060 or equivalent.Not for students who have taken ESTR3102. | ||
| CSCI 3160 | Design and Analysis of Algorithms | Not for students who have taken ESTR3104 or CSCI3190;Pre-requisites: (CSCI2100 or CSCI2520 or ESTR2102) AND (CSCI2110 or ENGG2440 or ESTR2004 or ESTR2362 or MIEG2440). | ||
| CSCI 3170 | Introduction to Database Systems | Prerequisite: CSCI2100 or 2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3180 | Principles of Programming Languages | Not for students who have taken ESTR3106.Prerequisite: CSCI2100 or 2520 or ESTR2102.For senior-year entrants, the prerequisite will be waived. | ||
| CSCI 3190 | Introduction to Discrete Mathematics and Algorithms | Not for students who have taken CSCI3160 or ENGG2440 or ESTR2004 or 3104.Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3220 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or ESTR3110. | ||
| CSCI 3230 | Fundamentals of Artificial Intelligence | Not for students who have taken ESTR3108.Prerequisite: CSCI2100 or 2520 or ESTR2102 or equivalent. | ||
| CSCI 3250 [2] | Computers and Society | Not for students who have taken ENGG2601. | ||
| CSCI 3251 [1] | Engineering Practicum | Not for students who have taken ENGG2602. | ||
| CSCI 3260 | Principles of Computer Graphics | Prerequisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 3270 [2] | Advanced Programming Laboratory | 1. Prerequisite: CSCI2100 or ESTR2102;2. Corequisite: CSCI3160 or ESTR3104. | ||
| CSCI 3280 | Introduction to Multimedia Systems | |||
| CSCI 3290 | Computational Imaging and Vision | Prerequisite: CSCI2100 or ESTR2102. | ||
| CSCI 3310 | Mobile Computing and Applications Development | Pre-requisite: CSCI2100 or 2520 or ESTR2102.Not for students who have taken IERG3842. | ||
| CSCI 3320 | Fundamentals of Machine Learning | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440 or STAT2001. | ||
| CSCI 3330 | Fundamentals of Applied Computer Vision | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CSCI 3340 | Scientific Computing | Prerequisite: (ENGG1120 or ESTR1005 or MATH1030 or MATH1038 or MATH1550) AND (ENGG1130 or ESTR1006 or MATH1010 or MATH1020 or MATH1018 or MATH1510 or MATH1520). | ||
| CSCI 3350 | Introduction to Quantum Computing | Prerequisite: (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| CSCI 3360 | Introduction to Computational Complexity | Prerequisite: ENGG2760 or ESTR2018 or ESTR2308 or IERG2470. | ||
| CSCI 4120 | Principles of Computer Game Software | 1. Prerequisite: CSCI2100 or 2520 or ESTR2102;2. Prerequisite/Corequisite: CSCI3260 or 3550. | ||
| CSCI 4130 | Introduction to Cyber Security | Not for students who have taken ESTR4306 or IEMS5710 or IERG4130. | ||
| CSCI 4140 | Open-source Software Project Development | Prerequisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4160 | Distributed and Parallel Computing | Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104. | ||
| CSCI 4180 | Introduction to Cloud Computing and Storage | Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106. | ||
| CSCI 4190 | Introduction to Social Networks | Pre-requisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4200 | Operating System Engineering | Pre-requisite: CSCI3150 or ESTR3102. | ||
| CSCI 4230 | Computational Learning Theory | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440. | ||
| CSCI 4240 | Advanced Algorithms: Randomization and Approximation | Pre-requisite: (ENGG2760 or ESTR2018) and (ENGG1120 or ESTR1005) Co-requisite: CSCI3160. | ||
| CSCI 4430 | Data Communication and Computer Networks | 1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310. | ||
| CSCI 4998 | Final Year Project I | |||
| CSCI 4999 | Final Year Project II | Pre-requisite: CSCI4998. | ||
| CSCI 5010 | Practical Computational Geometry Algorithms | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5030 | Machine Learning Theory | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN);Not for students who have taken AIMS5704. | ||
| CSCI 5120 | Advanced Topics in Database Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: CMSC5705 and SEEM5010. | ||
| CSCI 5150 | Machine Learning Algorithms and Applications | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: FTEC5580. | ||
| CSCI 5210 | Advanced Computer Graphics and Visualization | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5350 | Advanced Topics in Game Theory | For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5728. | ||
| CSCI 5370 | Quantum Computing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5390 | Advanced GPU Programming | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5440 | Theory of Cryptography | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5540 | Machine Learning Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5550 | Advanced File and Storage Systems | For undergraduate students in Computer Science (CSCIU and CSCIN) or Computer Engineering (CENGU and CENGN); or For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5600 | Advanced Topics in Distributed Systems | For students in MSc Computer Science or MPhil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5735. | ||
| CSCI 5610 | Advanced Data Structures | For students in MSc Computer Science or Mphil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering. | ||
| CSCI 5630 | Advanced Topics in Graph Mining | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5640 | Natural Language Processing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5650 | Graph Neural Networks | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5660 | Advanced Topics of AI for Life Sciences | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5670 | Computational Imaging Systems and Algorithms | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering;Not for students who have taken IERG5670. | ||
| CSCI 5680 | Advanced Topics in Flash Memory Technology | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5690 | Automated Reasoning about Software Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5700 | Advanced Topics in Software Testing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CSCI 6500 [1] | Seminars for M.Phil. Studies | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 7600 [1] | Seminars for Ph.D. Studies | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8003 | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8006 [6] | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8012 [12] | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| ENGG 1820 [1] | Engineering Internship | |||
| ENGG 3802 [1] | Introduction to Engineering Entrepreneurship | |||
| ENGG 3803 [2] | Engineering Entrepreneurship Development Project | Pre-requisite: ENGG3802 with Grade B+ or above or with consent of instructor. | ||
| STAT 2005 | Programming Languages for Statistics | |||
| STAT 2006 | Basic Concepts in Statistics and Probability II | Pre-requisite: STAT2001 or ENGG2760 or ESTR2018 or consent of instructor. |
(c)Stream 2: Database and Information Systems17 units
Required Courses
CSCI3170
Show 1 course
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| CSCI 3170 | Introduction to Database Systems | Prerequisite: CSCI2100 or 2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived. |
Elective Courses9 units
Choose at least 9 units from the following9 units
AIST4030, BMEG3102 or CSCI3220/ESTR3110, CSCI3230/ESTR3108, CSCI3320, 4140, CSCI4160/ESTR4104, CSCI4180/ESTR4106, CSCI4190, CSCI4430/ESTR4120, CSCI5010, 5120, CSCI5180/ENGG5103, CSCI5470/ENGG5105, CSCI5550, 5630, 5650, 5660, ENGG5781, IERG4300/ESTR4300, IERG4330, SEEM3490, 4630
Show 31 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| AIST 4030 | Structured Data Modeling and Graph Neural Network | Prerequisite: AIST3120 or CSCI3230 or ESTR3108 or CSCI3320. | ||
| BMEG 3102 | Bioinformatics | Not for students who have taken ELEG4120 or CSCI3220 or ESTR3110. | ||
| CSCI 3220 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or ESTR3110. | ||
| ESTR 3110 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or CSCI3220. | ||
| CSCI 3230 | Fundamentals of Artificial Intelligence | Not for students who have taken ESTR3108.Prerequisite: CSCI2100 or 2520 or ESTR2102 or equivalent. | ||
| ESTR 3108 | Fundamentals of Artificial Intelligence | Not for students who have taken CSCI3230.Pre-requisite: CSCI2100 or CSCI2520 or ESTR2102 or equivalent. | ||
| CSCI 3320 | Fundamentals of Machine Learning | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440 or STAT2001. | ||
| CSCI 4140 | Open-source Software Project Development | Prerequisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4160 | Distributed and Parallel Computing | Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104. | ||
| ESTR 4104 | Distributed and Parallel Computing | Not for students who have taken CSCI4160.Pre-requisite: CSCI3150 or ESTR3102. | ||
| CSCI 4180 | Introduction to Cloud Computing and Storage | Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106. | ||
| ESTR 4106 | Introduction to Cloud Computing and Storage | Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken CSCI4180. | ||
| CSCI 4190 | Introduction to Social Networks | Pre-requisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4430 | Data Communication and Computer Networks | 1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310. | ||
| ESTR 4120 | Data Communication and Computer Networks | Not for students who have taken IERG3310 or CSCI4430 or ESTR3310.Pre-requisite: CSCI3150 or CENG3150 or ESTR3102. | ||
| CSCI 5010 | Practical Computational Geometry Algorithms | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5120 | Advanced Topics in Database Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: CMSC5705 and SEEM5010. | ||
| CSCI 5180 | (not found in course_info) | |||
| ENGG 5103 | Techniques for Data Mining | For students in MSc Computer Science or MPhil-PhD programmes under Faculty of Engineering or UG Computer Science or UG Computer Engineering;Not for students who have taken CMSC5724 or CSCI5180. | ||
| CSCI 5470 | (not found in course_info) | |||
| ENGG 5105 | Computer and Network Security | For students in MSc Computer Science or MPhil-PhD programmes under Faculty of Engineering or UG Computer Science or UG Computer Engineering;Not for students who have taken CMSC5726 or CSCI5470. | ||
| CSCI 5550 | Advanced File and Storage Systems | For undergraduate students in Computer Science (CSCIU and CSCIN) or Computer Engineering (CENGU and CENGN); or For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5630 | Advanced Topics in Graph Mining | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5650 | Graph Neural Networks | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5660 | Advanced Topics of AI for Life Sciences | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| ENGG 5781 | Matrix Analysis and Computations | For MPhil-PhD Engineering Students. | ||
| IERG 4300 | Web-scale Information Analytics | Not for students who have taken CSCI5510 or ENGG4030 or ESTR4300. | ||
| ESTR 4300 | Web-scale Information Analytics | Not for students who have taken CSCI5510 or ENGG4030 or IERG4300. | ||
| IERG 4330 | Programming Big Data Systems | Pre/Co-requisite: ENGG4030 or ESTR4300 or IERG4300.Not for students who have taken ESTR4316 or IEMS5730. | ||
| SEEM 3490 | Information Systems Management | |||
| SEEM 4630 | E-Commerce Data Mining | |||
Remaining units can be chosen from the following
AIST/CENG/CSCI courses at 2000 or above level, ENGG1820, (ENGG3802 and 3803), STAT2005, 2006
Show 106 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| AIST 2010 | Introduction to Computer Music: From Analysis to Algorithmic Music | Prerequisite: AIST1110 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or ENGG1110 or ESTR1002 or ESTR1100 or ESTR1102. | ||
| AIST 2601 [2] | Technology, Society and Engineering Practice | Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602. | ||
| AIST 2602 [1] | Engineering Practicum | Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602. | ||
| AIST 3010 [2] | Numerical Optimization | Pre-requisite: ENGG1120/ESTR1005 or ENGG1130/ESTR1006 or MATH1510.Not for students who have taken AIST3030 or ESTR3112 or ESTR3114. | ||
| AIST 3020 | Introduction to Computer Systems | Not for students who have taken CSCI3150 or ESTR3102.Prerequisite: (ENGG1110 or ESTR1002) AND (ENGG2440 or ESTR2004). | ||
| AIST 3030 | Numerical Optimization | Pre-requisite: ENGG1120 or ENGG1130 or ESTR1005 or ESTR1006 or MATH1510.Not for students who have taken AIST3010 or ESTR3112 or ESTR3114. | ||
| AIST 3110 | Music Information Retrieval | Pre-requisite/Co-requisite: AIST2010 or CSCI3280. | ||
| AIST 3120 | Introduction to Natural Language Processing | Prerequisite: (AIST1110 or CSCI1040 or CSCI1550 or CSCI2040) AND (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| AIST 3510 | Human-computer Interaction | Not for students who have taken SEEM3510. | ||
| AIST 4010 | Foundation of Applied Deep Learning | Not for students who have taken ESTR4140.Prerequisite: CSCI3230 or CSCI3320 or ESTR3108. | ||
| AIST 4020 | Agentic AI and LLM Serving | Prerequisite: AIST3020 or CSCI3150 or ESTR3102. | ||
| AIST 4030 | Structured Data Modeling and Graph Neural Network | Prerequisite: AIST3120 or CSCI3230 or ESTR3108 or CSCI3320. | ||
| AIST 4040 | Mathematical Foundations of Deep Learning | Prerequisite: (ENGG1120/ESTR1005 or ENGG1125/ESTR1007 or ENGG1130/ESTR1006 or ENGG2760/ESTR2018 or ENGG2780/ESTR2020) AND (AIST3030/ESTR3112). | ||
| AIST 4050 | Embodied Intelligence: Algorithms and Applications | Prerequisite: AIST1000. | ||
| AIST 4060 [2] | AI-Native Software Engineering | Prerequisite: AIST3020 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or CSCI3180 or ESTR1100 or ESTR1102 or ESTR3106.Not for students who have taken IERG3844. | ||
| AIST 4998 | Final Year Project I | |||
| AIST 4999 | Final Year Project II | Prerequisite: AIST4998. | ||
| AIST 5020 | Trustworthy Artificial Intelligence | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| AIST 5030 | Generative Artificial Intelligence | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science and Engineering;Not for students who have taken SEEM5030. | ||
| AIST 5040 | PhysAI and GenAI for Natural Science | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| AIST 5050 | Optimization for Large Language Models | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CENG 2010 [1] | Digital Logic Design Laboratory | Prerequisite: ENGG2020 or ESTR2104. | ||
| CENG 2030 | Fundamentals of Embedded Systems | Pre-requisite: ENGG1110 or ESTR1002. | ||
| CENG 2400 | Embedded System Design | Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.Not for students who have taken ESTR2100. | ||
| CENG 3420 | Computer Organization and Design | Not for students who have taken CSCI3420.Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.For 2nd-year entrants, the prerequisite will be waived. | ||
| CENG 3430 | Rapid Prototyping of Digital Systems | Prerequisite: CSCI2510 or ENGG2020 or ENGG2120 or ESTR2104 or its equivalent For senior-year entrants, the prerequisite will be waived.Not for students who have taken ESTR3100. | ||
| CENG 4120 | Computer-aided Design for Very Large Scale Integrated Circuits | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CENG 4480 | Embedded System Development and Applications | Not for students who have taken CENG3480 in 2008-09 and before;Prerequisite: CENG2400 or ESTR2100.For 2nd-year entrants, the prerequisite will be waived. | ||
| CENG 4998 | Final Year Project I | |||
| CENG 4999 | Final Year Project II | Prerequisite: CENG4998. | ||
| CENG 5030 | Energy Efficient Computing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CENG 5270 | EDA for Physical Design of Digital Systems | For students in MSc Computer Science; or MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering;(CENGU & CENGN). | ||
| CENG 5280 | Quantum Computer Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CSCI 2040 [2] | Introduction to Python | Pre-requisite: ENGG1110 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or ESTR1002.Not for students who have taken CSCI1040 or CSCI1550 or CSCI3230 or CSCI3320 or AIST1110 or IERG1080. | ||
| CSCI 2100 | Data Structures | Not for students who have taken ESTR2102 or CSCI2520;Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or ESTR1102 or ESTR2306 or IERG2080.For senior-year entrants, the prerequisite will be waived. | ||
| CSCI 2510 | Computer Organization | Not for students who have taken CENG2400 or ELEG3230 or ENGG2020 or ESTR2100 or ESTR2104.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2520 | Data Structures and Applications | Not for students who have taken CSCI2100 or ESTR2102.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2720 | Building Web Applications | Not for students who have taken ESTR2106 or IERG3840.Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2730 | Introduction to Blockchain Technologies and Applications | Not for students who have taken IERG4360 or ESTR4326.Prerequisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102. | ||
| CSCI 2740 | Competitive Programming | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CSCI 2750 | Data Mining and Information Processing | Prerequisite: (ENGG1110 or ESTR1002) and (ENGG1120 or ESTR1005) Not for students who have taken CSCI3230 or ESTR3108 or CSCI3320. | ||
| CSCI 3100 | Software Engineering | Not for students who have taken ENGG3820 or ESTR3308 or IERG3080;Pre-requisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or 1102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3120 | Compiler Construction | |||
| CSCI 3130 | Formal Languages and Automata Theory | Pre-requisite: CSCI2110 or ENGG2440 or ESTR2004 or MIEG2440. | ||
| CSCI 3150 | Introduction to Operating Systems | Prerequisite: ESTR2102 or CSCI2100 or 2520.For senior-year entrants, the prerequisite will be waived.Co-requisite: AIST3020 or CSCI2510 or CENG3420 or IERG3060 or equivalent.Not for students who have taken ESTR3102. | ||
| CSCI 3160 | Design and Analysis of Algorithms | Not for students who have taken ESTR3104 or CSCI3190;Pre-requisites: (CSCI2100 or CSCI2520 or ESTR2102) AND (CSCI2110 or ENGG2440 or ESTR2004 or ESTR2362 or MIEG2440). | ||
| CSCI 3170 | Introduction to Database Systems | Prerequisite: CSCI2100 or 2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3180 | Principles of Programming Languages | Not for students who have taken ESTR3106.Prerequisite: CSCI2100 or 2520 or ESTR2102.For senior-year entrants, the prerequisite will be waived. | ||
| CSCI 3190 | Introduction to Discrete Mathematics and Algorithms | Not for students who have taken CSCI3160 or ENGG2440 or ESTR2004 or 3104.Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3220 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or ESTR3110. | ||
| CSCI 3230 | Fundamentals of Artificial Intelligence | Not for students who have taken ESTR3108.Prerequisite: CSCI2100 or 2520 or ESTR2102 or equivalent. | ||
| CSCI 3250 [2] | Computers and Society | Not for students who have taken ENGG2601. | ||
| CSCI 3251 [1] | Engineering Practicum | Not for students who have taken ENGG2602. | ||
| CSCI 3260 | Principles of Computer Graphics | Prerequisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 3270 [2] | Advanced Programming Laboratory | 1. Prerequisite: CSCI2100 or ESTR2102;2. Corequisite: CSCI3160 or ESTR3104. | ||
| CSCI 3280 | Introduction to Multimedia Systems | |||
| CSCI 3290 | Computational Imaging and Vision | Prerequisite: CSCI2100 or ESTR2102. | ||
| CSCI 3310 | Mobile Computing and Applications Development | Pre-requisite: CSCI2100 or 2520 or ESTR2102.Not for students who have taken IERG3842. | ||
| CSCI 3320 | Fundamentals of Machine Learning | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440 or STAT2001. | ||
| CSCI 3330 | Fundamentals of Applied Computer Vision | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CSCI 3340 | Scientific Computing | Prerequisite: (ENGG1120 or ESTR1005 or MATH1030 or MATH1038 or MATH1550) AND (ENGG1130 or ESTR1006 or MATH1010 or MATH1020 or MATH1018 or MATH1510 or MATH1520). | ||
| CSCI 3350 | Introduction to Quantum Computing | Prerequisite: (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| CSCI 3360 | Introduction to Computational Complexity | Prerequisite: ENGG2760 or ESTR2018 or ESTR2308 or IERG2470. | ||
| CSCI 4120 | Principles of Computer Game Software | 1. Prerequisite: CSCI2100 or 2520 or ESTR2102;2. Prerequisite/Corequisite: CSCI3260 or 3550. | ||
| CSCI 4130 | Introduction to Cyber Security | Not for students who have taken ESTR4306 or IEMS5710 or IERG4130. | ||
| CSCI 4140 | Open-source Software Project Development | Prerequisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4160 | Distributed and Parallel Computing | Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104. | ||
| CSCI 4180 | Introduction to Cloud Computing and Storage | Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106. | ||
| CSCI 4190 | Introduction to Social Networks | Pre-requisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4200 | Operating System Engineering | Pre-requisite: CSCI3150 or ESTR3102. | ||
| CSCI 4230 | Computational Learning Theory | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440. | ||
| CSCI 4240 | Advanced Algorithms: Randomization and Approximation | Pre-requisite: (ENGG2760 or ESTR2018) and (ENGG1120 or ESTR1005) Co-requisite: CSCI3160. | ||
| CSCI 4430 | Data Communication and Computer Networks | 1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310. | ||
| CSCI 4998 | Final Year Project I | |||
| CSCI 4999 | Final Year Project II | Pre-requisite: CSCI4998. | ||
| CSCI 5010 | Practical Computational Geometry Algorithms | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5030 | Machine Learning Theory | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN);Not for students who have taken AIMS5704. | ||
| CSCI 5120 | Advanced Topics in Database Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: CMSC5705 and SEEM5010. | ||
| CSCI 5150 | Machine Learning Algorithms and Applications | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: FTEC5580. | ||
| CSCI 5210 | Advanced Computer Graphics and Visualization | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5350 | Advanced Topics in Game Theory | For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5728. | ||
| CSCI 5370 | Quantum Computing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5390 | Advanced GPU Programming | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5440 | Theory of Cryptography | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5540 | Machine Learning Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5550 | Advanced File and Storage Systems | For undergraduate students in Computer Science (CSCIU and CSCIN) or Computer Engineering (CENGU and CENGN); or For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5600 | Advanced Topics in Distributed Systems | For students in MSc Computer Science or MPhil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5735. | ||
| CSCI 5610 | Advanced Data Structures | For students in MSc Computer Science or Mphil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering. | ||
| CSCI 5630 | Advanced Topics in Graph Mining | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5640 | Natural Language Processing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5650 | Graph Neural Networks | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5660 | Advanced Topics of AI for Life Sciences | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5670 | Computational Imaging Systems and Algorithms | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering;Not for students who have taken IERG5670. | ||
| CSCI 5680 | Advanced Topics in Flash Memory Technology | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5690 | Automated Reasoning about Software Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5700 | Advanced Topics in Software Testing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CSCI 6500 [1] | Seminars for M.Phil. Studies | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 7600 [1] | Seminars for Ph.D. Studies | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8003 | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8006 [6] | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8012 [12] | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| ENGG 1820 [1] | Engineering Internship | |||
| ENGG 3802 [1] | Introduction to Engineering Entrepreneurship | |||
| ENGG 3803 [2] | Engineering Entrepreneurship Development Project | Pre-requisite: ENGG3802 with Grade B+ or above or with consent of instructor. | ||
| STAT 2005 | Programming Languages for Statistics | |||
| STAT 2006 | Basic Concepts in Statistics and Probability II | Pre-requisite: STAT2001 or ENGG2760 or ESTR2018 or consent of instructor. |
(d)Stream 3: Rich Media17 units
Required Courses
CSCI3260
Show 1 course
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| CSCI 3260 | Principles of Computer Graphics | Prerequisite: CSCI2100 or 2520 or ESTR2102. |
Elective Courses9 units
Choose at least 9 units from the following9 units
AIST2010, 3110, 3120, AIST3510/SEEM3510, CSCI3230/ESTR3108, CSCI3280, 3290, 3330, 4120, CSCI4160/ESTR4104, CSCI4430/ESTR4120, CSCI5210, CSCI5280/ENGG5104, CSCI5390, 5640
Show 20 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| AIST 2010 | Introduction to Computer Music: From Analysis to Algorithmic Music | Prerequisite: AIST1110 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or ENGG1110 or ESTR1002 or ESTR1100 or ESTR1102. | ||
| AIST 3110 | Music Information Retrieval | Pre-requisite/Co-requisite: AIST2010 or CSCI3280. | ||
| AIST 3120 | Introduction to Natural Language Processing | Prerequisite: (AIST1110 or CSCI1040 or CSCI1550 or CSCI2040) AND (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| AIST 3510 | Human-computer Interaction | Not for students who have taken SEEM3510. | ||
| SEEM 3510 | Human-computer Interaction | Not for students who have taken AIST3510. | ||
| CSCI 3230 | Fundamentals of Artificial Intelligence | Not for students who have taken ESTR3108.Prerequisite: CSCI2100 or 2520 or ESTR2102 or equivalent. | ||
| ESTR 3108 | Fundamentals of Artificial Intelligence | Not for students who have taken CSCI3230.Pre-requisite: CSCI2100 or CSCI2520 or ESTR2102 or equivalent. | ||
| CSCI 3280 | Introduction to Multimedia Systems | |||
| CSCI 3290 | Computational Imaging and Vision | Prerequisite: CSCI2100 or ESTR2102. | ||
| CSCI 3330 | Fundamentals of Applied Computer Vision | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CSCI 4120 | Principles of Computer Game Software | 1. Prerequisite: CSCI2100 or 2520 or ESTR2102;2. Prerequisite/Corequisite: CSCI3260 or 3550. | ||
| CSCI 4160 | Distributed and Parallel Computing | Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104. | ||
| ESTR 4104 | Distributed and Parallel Computing | Not for students who have taken CSCI4160.Pre-requisite: CSCI3150 or ESTR3102. | ||
| CSCI 4430 | Data Communication and Computer Networks | 1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310. | ||
| ESTR 4120 | Data Communication and Computer Networks | Not for students who have taken IERG3310 or CSCI4430 or ESTR3310.Pre-requisite: CSCI3150 or CENG3150 or ESTR3102. | ||
| CSCI 5210 | Advanced Computer Graphics and Visualization | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5280 | (not found in course_info) | |||
| ENGG 5104 | Image Processing and Computer Vision | For students in MSc Computer Science or MPhil-PhD programmes under Faculty of Engineering or UG Computer Science or UG Computer Engineering;Not for students who have taken CMSC5711 or CSCI5280. | ||
| CSCI 5390 | Advanced GPU Programming | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5640 | Natural Language Processing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
Remaining units can be chosen from the following
AIST/CENG/CSCI courses at 2000 or above level, ENGG1820, (ENGG3802 and 3803), IERG4300/ESTR4300, STAT2005, 2006
Show 108 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| AIST 2010 | Introduction to Computer Music: From Analysis to Algorithmic Music | Prerequisite: AIST1110 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or ENGG1110 or ESTR1002 or ESTR1100 or ESTR1102. | ||
| AIST 2601 [2] | Technology, Society and Engineering Practice | Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602. | ||
| AIST 2602 [1] | Engineering Practicum | Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602. | ||
| AIST 3010 [2] | Numerical Optimization | Pre-requisite: ENGG1120/ESTR1005 or ENGG1130/ESTR1006 or MATH1510.Not for students who have taken AIST3030 or ESTR3112 or ESTR3114. | ||
| AIST 3020 | Introduction to Computer Systems | Not for students who have taken CSCI3150 or ESTR3102.Prerequisite: (ENGG1110 or ESTR1002) AND (ENGG2440 or ESTR2004). | ||
| AIST 3030 | Numerical Optimization | Pre-requisite: ENGG1120 or ENGG1130 or ESTR1005 or ESTR1006 or MATH1510.Not for students who have taken AIST3010 or ESTR3112 or ESTR3114. | ||
| AIST 3110 | Music Information Retrieval | Pre-requisite/Co-requisite: AIST2010 or CSCI3280. | ||
| AIST 3120 | Introduction to Natural Language Processing | Prerequisite: (AIST1110 or CSCI1040 or CSCI1550 or CSCI2040) AND (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| AIST 3510 | Human-computer Interaction | Not for students who have taken SEEM3510. | ||
| AIST 4010 | Foundation of Applied Deep Learning | Not for students who have taken ESTR4140.Prerequisite: CSCI3230 or CSCI3320 or ESTR3108. | ||
| AIST 4020 | Agentic AI and LLM Serving | Prerequisite: AIST3020 or CSCI3150 or ESTR3102. | ||
| AIST 4030 | Structured Data Modeling and Graph Neural Network | Prerequisite: AIST3120 or CSCI3230 or ESTR3108 or CSCI3320. | ||
| AIST 4040 | Mathematical Foundations of Deep Learning | Prerequisite: (ENGG1120/ESTR1005 or ENGG1125/ESTR1007 or ENGG1130/ESTR1006 or ENGG2760/ESTR2018 or ENGG2780/ESTR2020) AND (AIST3030/ESTR3112). | ||
| AIST 4050 | Embodied Intelligence: Algorithms and Applications | Prerequisite: AIST1000. | ||
| AIST 4060 [2] | AI-Native Software Engineering | Prerequisite: AIST3020 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or CSCI3180 or ESTR1100 or ESTR1102 or ESTR3106.Not for students who have taken IERG3844. | ||
| AIST 4998 | Final Year Project I | |||
| AIST 4999 | Final Year Project II | Prerequisite: AIST4998. | ||
| AIST 5020 | Trustworthy Artificial Intelligence | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| AIST 5030 | Generative Artificial Intelligence | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science and Engineering;Not for students who have taken SEEM5030. | ||
| AIST 5040 | PhysAI and GenAI for Natural Science | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| AIST 5050 | Optimization for Large Language Models | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CENG 2010 [1] | Digital Logic Design Laboratory | Prerequisite: ENGG2020 or ESTR2104. | ||
| CENG 2030 | Fundamentals of Embedded Systems | Pre-requisite: ENGG1110 or ESTR1002. | ||
| CENG 2400 | Embedded System Design | Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.Not for students who have taken ESTR2100. | ||
| CENG 3420 | Computer Organization and Design | Not for students who have taken CSCI3420.Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.For 2nd-year entrants, the prerequisite will be waived. | ||
| CENG 3430 | Rapid Prototyping of Digital Systems | Prerequisite: CSCI2510 or ENGG2020 or ENGG2120 or ESTR2104 or its equivalent For senior-year entrants, the prerequisite will be waived.Not for students who have taken ESTR3100. | ||
| CENG 4120 | Computer-aided Design for Very Large Scale Integrated Circuits | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CENG 4480 | Embedded System Development and Applications | Not for students who have taken CENG3480 in 2008-09 and before;Prerequisite: CENG2400 or ESTR2100.For 2nd-year entrants, the prerequisite will be waived. | ||
| CENG 4998 | Final Year Project I | |||
| CENG 4999 | Final Year Project II | Prerequisite: CENG4998. | ||
| CENG 5030 | Energy Efficient Computing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CENG 5270 | EDA for Physical Design of Digital Systems | For students in MSc Computer Science; or MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering;(CENGU & CENGN). | ||
| CENG 5280 | Quantum Computer Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CSCI 2040 [2] | Introduction to Python | Pre-requisite: ENGG1110 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or ESTR1002.Not for students who have taken CSCI1040 or CSCI1550 or CSCI3230 or CSCI3320 or AIST1110 or IERG1080. | ||
| CSCI 2100 | Data Structures | Not for students who have taken ESTR2102 or CSCI2520;Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or ESTR1102 or ESTR2306 or IERG2080.For senior-year entrants, the prerequisite will be waived. | ||
| CSCI 2510 | Computer Organization | Not for students who have taken CENG2400 or ELEG3230 or ENGG2020 or ESTR2100 or ESTR2104.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2520 | Data Structures and Applications | Not for students who have taken CSCI2100 or ESTR2102.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2720 | Building Web Applications | Not for students who have taken ESTR2106 or IERG3840.Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2730 | Introduction to Blockchain Technologies and Applications | Not for students who have taken IERG4360 or ESTR4326.Prerequisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102. | ||
| CSCI 2740 | Competitive Programming | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CSCI 2750 | Data Mining and Information Processing | Prerequisite: (ENGG1110 or ESTR1002) and (ENGG1120 or ESTR1005) Not for students who have taken CSCI3230 or ESTR3108 or CSCI3320. | ||
| CSCI 3100 | Software Engineering | Not for students who have taken ENGG3820 or ESTR3308 or IERG3080;Pre-requisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or 1102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3120 | Compiler Construction | |||
| CSCI 3130 | Formal Languages and Automata Theory | Pre-requisite: CSCI2110 or ENGG2440 or ESTR2004 or MIEG2440. | ||
| CSCI 3150 | Introduction to Operating Systems | Prerequisite: ESTR2102 or CSCI2100 or 2520.For senior-year entrants, the prerequisite will be waived.Co-requisite: AIST3020 or CSCI2510 or CENG3420 or IERG3060 or equivalent.Not for students who have taken ESTR3102. | ||
| CSCI 3160 | Design and Analysis of Algorithms | Not for students who have taken ESTR3104 or CSCI3190;Pre-requisites: (CSCI2100 or CSCI2520 or ESTR2102) AND (CSCI2110 or ENGG2440 or ESTR2004 or ESTR2362 or MIEG2440). | ||
| CSCI 3170 | Introduction to Database Systems | Prerequisite: CSCI2100 or 2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3180 | Principles of Programming Languages | Not for students who have taken ESTR3106.Prerequisite: CSCI2100 or 2520 or ESTR2102.For senior-year entrants, the prerequisite will be waived. | ||
| CSCI 3190 | Introduction to Discrete Mathematics and Algorithms | Not for students who have taken CSCI3160 or ENGG2440 or ESTR2004 or 3104.Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3220 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or ESTR3110. | ||
| CSCI 3230 | Fundamentals of Artificial Intelligence | Not for students who have taken ESTR3108.Prerequisite: CSCI2100 or 2520 or ESTR2102 or equivalent. | ||
| CSCI 3250 [2] | Computers and Society | Not for students who have taken ENGG2601. | ||
| CSCI 3251 [1] | Engineering Practicum | Not for students who have taken ENGG2602. | ||
| CSCI 3260 | Principles of Computer Graphics | Prerequisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 3270 [2] | Advanced Programming Laboratory | 1. Prerequisite: CSCI2100 or ESTR2102;2. Corequisite: CSCI3160 or ESTR3104. | ||
| CSCI 3280 | Introduction to Multimedia Systems | |||
| CSCI 3290 | Computational Imaging and Vision | Prerequisite: CSCI2100 or ESTR2102. | ||
| CSCI 3310 | Mobile Computing and Applications Development | Pre-requisite: CSCI2100 or 2520 or ESTR2102.Not for students who have taken IERG3842. | ||
| CSCI 3320 | Fundamentals of Machine Learning | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440 or STAT2001. | ||
| CSCI 3330 | Fundamentals of Applied Computer Vision | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CSCI 3340 | Scientific Computing | Prerequisite: (ENGG1120 or ESTR1005 or MATH1030 or MATH1038 or MATH1550) AND (ENGG1130 or ESTR1006 or MATH1010 or MATH1020 or MATH1018 or MATH1510 or MATH1520). | ||
| CSCI 3350 | Introduction to Quantum Computing | Prerequisite: (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| CSCI 3360 | Introduction to Computational Complexity | Prerequisite: ENGG2760 or ESTR2018 or ESTR2308 or IERG2470. | ||
| CSCI 4120 | Principles of Computer Game Software | 1. Prerequisite: CSCI2100 or 2520 or ESTR2102;2. Prerequisite/Corequisite: CSCI3260 or 3550. | ||
| CSCI 4130 | Introduction to Cyber Security | Not for students who have taken ESTR4306 or IEMS5710 or IERG4130. | ||
| CSCI 4140 | Open-source Software Project Development | Prerequisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4160 | Distributed and Parallel Computing | Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104. | ||
| CSCI 4180 | Introduction to Cloud Computing and Storage | Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106. | ||
| CSCI 4190 | Introduction to Social Networks | Pre-requisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4200 | Operating System Engineering | Pre-requisite: CSCI3150 or ESTR3102. | ||
| CSCI 4230 | Computational Learning Theory | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440. | ||
| CSCI 4240 | Advanced Algorithms: Randomization and Approximation | Pre-requisite: (ENGG2760 or ESTR2018) and (ENGG1120 or ESTR1005) Co-requisite: CSCI3160. | ||
| CSCI 4430 | Data Communication and Computer Networks | 1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310. | ||
| CSCI 4998 | Final Year Project I | |||
| CSCI 4999 | Final Year Project II | Pre-requisite: CSCI4998. | ||
| CSCI 5010 | Practical Computational Geometry Algorithms | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5030 | Machine Learning Theory | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN);Not for students who have taken AIMS5704. | ||
| CSCI 5120 | Advanced Topics in Database Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: CMSC5705 and SEEM5010. | ||
| CSCI 5150 | Machine Learning Algorithms and Applications | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: FTEC5580. | ||
| CSCI 5210 | Advanced Computer Graphics and Visualization | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5350 | Advanced Topics in Game Theory | For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5728. | ||
| CSCI 5370 | Quantum Computing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5390 | Advanced GPU Programming | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5440 | Theory of Cryptography | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5540 | Machine Learning Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5550 | Advanced File and Storage Systems | For undergraduate students in Computer Science (CSCIU and CSCIN) or Computer Engineering (CENGU and CENGN); or For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5600 | Advanced Topics in Distributed Systems | For students in MSc Computer Science or MPhil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5735. | ||
| CSCI 5610 | Advanced Data Structures | For students in MSc Computer Science or Mphil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering. | ||
| CSCI 5630 | Advanced Topics in Graph Mining | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5640 | Natural Language Processing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5650 | Graph Neural Networks | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5660 | Advanced Topics of AI for Life Sciences | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5670 | Computational Imaging Systems and Algorithms | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering;Not for students who have taken IERG5670. | ||
| CSCI 5680 | Advanced Topics in Flash Memory Technology | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5690 | Automated Reasoning about Software Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5700 | Advanced Topics in Software Testing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CSCI 6500 [1] | Seminars for M.Phil. Studies | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 7600 [1] | Seminars for Ph.D. Studies | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8003 | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8006 [6] | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8012 [12] | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| ENGG 1820 [1] | Engineering Internship | |||
| ENGG 3802 [1] | Introduction to Engineering Entrepreneurship | |||
| ENGG 3803 [2] | Engineering Entrepreneurship Development Project | Pre-requisite: ENGG3802 with Grade B+ or above or with consent of instructor. | ||
| ESTR 4300 | Web-scale Information Analytics | Not for students who have taken CSCI5510 or ENGG4030 or IERG4300. | ||
| IERG 4300 | Web-scale Information Analytics | Not for students who have taken CSCI5510 or ENGG4030 or ESTR4300. | ||
| STAT 2005 | Programming Languages for Statistics | |||
| STAT 2006 | Basic Concepts in Statistics and Probability II | Pre-requisite: STAT2001 or ENGG2760 or ESTR2018 or consent of instructor. |
(e)Stream 4: Distributed Systems, Networks and Security17 units
Required Courses
CSCI4180/ESTR4106
Show 2 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| CSCI 4180 | Introduction to Cloud Computing and Storage | Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106. | ||
| ESTR 4106 | Introduction to Cloud Computing and Storage | Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken CSCI4180. |
Elective Courses9 units
Choose at least 9 units from the following9 units
AIST4020, 4060, CSCI3120, 3310, CSCI4130/IERG4130/ESTR4306, CSCI4140, CSCI4160/ESTR4104, CSCI4190, 4200, CSCI4430/ESTR4120, CSCI5390, CSCI5470/ENGG5105, CSCI5540, 5550, 5600, 5630, 5650, 5680, 5700, IERG4210, IERG4300/ESTR4300, IERG4350
Show 28 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| AIST 4020 | Agentic AI and LLM Serving | Prerequisite: AIST3020 or CSCI3150 or ESTR3102. | ||
| AIST 4060 [2] | AI-Native Software Engineering | Prerequisite: AIST3020 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or CSCI3180 or ESTR1100 or ESTR1102 or ESTR3106.Not for students who have taken IERG3844. | ||
| CSCI 3120 | Compiler Construction | |||
| CSCI 3310 | Mobile Computing and Applications Development | Pre-requisite: CSCI2100 or 2520 or ESTR2102.Not for students who have taken IERG3842. | ||
| CSCI 4130 | Introduction to Cyber Security | Not for students who have taken ESTR4306 or IEMS5710 or IERG4130. | ||
| IERG 4130 | Introduction to Cyber Security | Not for students who have taken CSCI4130 or ESTR4306 or IEMS5710. | ||
| ESTR 4306 | Introduction to Cyber Security | Not for students who have taken IERG4130 or IEMS5710 or CSCI4130. | ||
| CSCI 4140 | Open-source Software Project Development | Prerequisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4160 | Distributed and Parallel Computing | Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104. | ||
| ESTR 4104 | Distributed and Parallel Computing | Not for students who have taken CSCI4160.Pre-requisite: CSCI3150 or ESTR3102. | ||
| CSCI 4190 | Introduction to Social Networks | Pre-requisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4200 | Operating System Engineering | Pre-requisite: CSCI3150 or ESTR3102. | ||
| CSCI 4430 | Data Communication and Computer Networks | 1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310. | ||
| ESTR 4120 | Data Communication and Computer Networks | Not for students who have taken IERG3310 or CSCI4430 or ESTR3310.Pre-requisite: CSCI3150 or CENG3150 or ESTR3102. | ||
| CSCI 5390 | Advanced GPU Programming | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5470 | (not found in course_info) | |||
| ENGG 5105 | Computer and Network Security | For students in MSc Computer Science or MPhil-PhD programmes under Faculty of Engineering or UG Computer Science or UG Computer Engineering;Not for students who have taken CMSC5726 or CSCI5470. | ||
| CSCI 5540 | Machine Learning Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5550 | Advanced File and Storage Systems | For undergraduate students in Computer Science (CSCIU and CSCIN) or Computer Engineering (CENGU and CENGN); or For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5600 | Advanced Topics in Distributed Systems | For students in MSc Computer Science or MPhil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5735. | ||
| CSCI 5630 | Advanced Topics in Graph Mining | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5650 | Graph Neural Networks | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5680 | Advanced Topics in Flash Memory Technology | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5700 | Advanced Topics in Software Testing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| IERG 4210 | Web Programming and Security | Not for students who have taken IEMS5718. | ||
| IERG 4300 | Web-scale Information Analytics | Not for students who have taken CSCI5510 or ENGG4030 or ESTR4300. | ||
| ESTR 4300 | Web-scale Information Analytics | Not for students who have taken CSCI5510 or ENGG4030 or IERG4300. | ||
| IERG 4350 | Cloud Computing Security | |||
Remaining units can be chosen from the following
AIST/CENG/CSCI courses at 2000 or above level, ENGG1820 (ENGG3802 and 3803), STAT2005, 2006
Show 106 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| AIST 2010 | Introduction to Computer Music: From Analysis to Algorithmic Music | Prerequisite: AIST1110 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or ENGG1110 or ESTR1002 or ESTR1100 or ESTR1102. | ||
| AIST 2601 [2] | Technology, Society and Engineering Practice | Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602. | ||
| AIST 2602 [1] | Engineering Practicum | Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602. | ||
| AIST 3010 [2] | Numerical Optimization | Pre-requisite: ENGG1120/ESTR1005 or ENGG1130/ESTR1006 or MATH1510.Not for students who have taken AIST3030 or ESTR3112 or ESTR3114. | ||
| AIST 3020 | Introduction to Computer Systems | Not for students who have taken CSCI3150 or ESTR3102.Prerequisite: (ENGG1110 or ESTR1002) AND (ENGG2440 or ESTR2004). | ||
| AIST 3030 | Numerical Optimization | Pre-requisite: ENGG1120 or ENGG1130 or ESTR1005 or ESTR1006 or MATH1510.Not for students who have taken AIST3010 or ESTR3112 or ESTR3114. | ||
| AIST 3110 | Music Information Retrieval | Pre-requisite/Co-requisite: AIST2010 or CSCI3280. | ||
| AIST 3120 | Introduction to Natural Language Processing | Prerequisite: (AIST1110 or CSCI1040 or CSCI1550 or CSCI2040) AND (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| AIST 3510 | Human-computer Interaction | Not for students who have taken SEEM3510. | ||
| AIST 4010 | Foundation of Applied Deep Learning | Not for students who have taken ESTR4140.Prerequisite: CSCI3230 or CSCI3320 or ESTR3108. | ||
| AIST 4020 | Agentic AI and LLM Serving | Prerequisite: AIST3020 or CSCI3150 or ESTR3102. | ||
| AIST 4030 | Structured Data Modeling and Graph Neural Network | Prerequisite: AIST3120 or CSCI3230 or ESTR3108 or CSCI3320. | ||
| AIST 4040 | Mathematical Foundations of Deep Learning | Prerequisite: (ENGG1120/ESTR1005 or ENGG1125/ESTR1007 or ENGG1130/ESTR1006 or ENGG2760/ESTR2018 or ENGG2780/ESTR2020) AND (AIST3030/ESTR3112). | ||
| AIST 4050 | Embodied Intelligence: Algorithms and Applications | Prerequisite: AIST1000. | ||
| AIST 4060 [2] | AI-Native Software Engineering | Prerequisite: AIST3020 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or CSCI3180 or ESTR1100 or ESTR1102 or ESTR3106.Not for students who have taken IERG3844. | ||
| AIST 4998 | Final Year Project I | |||
| AIST 4999 | Final Year Project II | Prerequisite: AIST4998. | ||
| AIST 5020 | Trustworthy Artificial Intelligence | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| AIST 5030 | Generative Artificial Intelligence | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science and Engineering;Not for students who have taken SEEM5030. | ||
| AIST 5040 | PhysAI and GenAI for Natural Science | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| AIST 5050 | Optimization for Large Language Models | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CENG 2010 [1] | Digital Logic Design Laboratory | Prerequisite: ENGG2020 or ESTR2104. | ||
| CENG 2030 | Fundamentals of Embedded Systems | Pre-requisite: ENGG1110 or ESTR1002. | ||
| CENG 2400 | Embedded System Design | Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.Not for students who have taken ESTR2100. | ||
| CENG 3420 | Computer Organization and Design | Not for students who have taken CSCI3420.Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.For 2nd-year entrants, the prerequisite will be waived. | ||
| CENG 3430 | Rapid Prototyping of Digital Systems | Prerequisite: CSCI2510 or ENGG2020 or ENGG2120 or ESTR2104 or its equivalent For senior-year entrants, the prerequisite will be waived.Not for students who have taken ESTR3100. | ||
| CENG 4120 | Computer-aided Design for Very Large Scale Integrated Circuits | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CENG 4480 | Embedded System Development and Applications | Not for students who have taken CENG3480 in 2008-09 and before;Prerequisite: CENG2400 or ESTR2100.For 2nd-year entrants, the prerequisite will be waived. | ||
| CENG 4998 | Final Year Project I | |||
| CENG 4999 | Final Year Project II | Prerequisite: CENG4998. | ||
| CENG 5030 | Energy Efficient Computing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CENG 5270 | EDA for Physical Design of Digital Systems | For students in MSc Computer Science; or MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering;(CENGU & CENGN). | ||
| CENG 5280 | Quantum Computer Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CSCI 2040 [2] | Introduction to Python | Pre-requisite: ENGG1110 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or ESTR1002.Not for students who have taken CSCI1040 or CSCI1550 or CSCI3230 or CSCI3320 or AIST1110 or IERG1080. | ||
| CSCI 2100 | Data Structures | Not for students who have taken ESTR2102 or CSCI2520;Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or ESTR1102 or ESTR2306 or IERG2080.For senior-year entrants, the prerequisite will be waived. | ||
| CSCI 2510 | Computer Organization | Not for students who have taken CENG2400 or ELEG3230 or ENGG2020 or ESTR2100 or ESTR2104.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2520 | Data Structures and Applications | Not for students who have taken CSCI2100 or ESTR2102.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2720 | Building Web Applications | Not for students who have taken ESTR2106 or IERG3840.Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2730 | Introduction to Blockchain Technologies and Applications | Not for students who have taken IERG4360 or ESTR4326.Prerequisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102. | ||
| CSCI 2740 | Competitive Programming | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CSCI 2750 | Data Mining and Information Processing | Prerequisite: (ENGG1110 or ESTR1002) and (ENGG1120 or ESTR1005) Not for students who have taken CSCI3230 or ESTR3108 or CSCI3320. | ||
| CSCI 3100 | Software Engineering | Not for students who have taken ENGG3820 or ESTR3308 or IERG3080;Pre-requisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or 1102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3120 | Compiler Construction | |||
| CSCI 3130 | Formal Languages and Automata Theory | Pre-requisite: CSCI2110 or ENGG2440 or ESTR2004 or MIEG2440. | ||
| CSCI 3150 | Introduction to Operating Systems | Prerequisite: ESTR2102 or CSCI2100 or 2520.For senior-year entrants, the prerequisite will be waived.Co-requisite: AIST3020 or CSCI2510 or CENG3420 or IERG3060 or equivalent.Not for students who have taken ESTR3102. | ||
| CSCI 3160 | Design and Analysis of Algorithms | Not for students who have taken ESTR3104 or CSCI3190;Pre-requisites: (CSCI2100 or CSCI2520 or ESTR2102) AND (CSCI2110 or ENGG2440 or ESTR2004 or ESTR2362 or MIEG2440). | ||
| CSCI 3170 | Introduction to Database Systems | Prerequisite: CSCI2100 or 2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3180 | Principles of Programming Languages | Not for students who have taken ESTR3106.Prerequisite: CSCI2100 or 2520 or ESTR2102.For senior-year entrants, the prerequisite will be waived. | ||
| CSCI 3190 | Introduction to Discrete Mathematics and Algorithms | Not for students who have taken CSCI3160 or ENGG2440 or ESTR2004 or 3104.Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3220 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or ESTR3110. | ||
| CSCI 3230 | Fundamentals of Artificial Intelligence | Not for students who have taken ESTR3108.Prerequisite: CSCI2100 or 2520 or ESTR2102 or equivalent. | ||
| CSCI 3250 [2] | Computers and Society | Not for students who have taken ENGG2601. | ||
| CSCI 3251 [1] | Engineering Practicum | Not for students who have taken ENGG2602. | ||
| CSCI 3260 | Principles of Computer Graphics | Prerequisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 3270 [2] | Advanced Programming Laboratory | 1. Prerequisite: CSCI2100 or ESTR2102;2. Corequisite: CSCI3160 or ESTR3104. | ||
| CSCI 3280 | Introduction to Multimedia Systems | |||
| CSCI 3290 | Computational Imaging and Vision | Prerequisite: CSCI2100 or ESTR2102. | ||
| CSCI 3310 | Mobile Computing and Applications Development | Pre-requisite: CSCI2100 or 2520 or ESTR2102.Not for students who have taken IERG3842. | ||
| CSCI 3320 | Fundamentals of Machine Learning | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440 or STAT2001. | ||
| CSCI 3330 | Fundamentals of Applied Computer Vision | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CSCI 3340 | Scientific Computing | Prerequisite: (ENGG1120 or ESTR1005 or MATH1030 or MATH1038 or MATH1550) AND (ENGG1130 or ESTR1006 or MATH1010 or MATH1020 or MATH1018 or MATH1510 or MATH1520). | ||
| CSCI 3350 | Introduction to Quantum Computing | Prerequisite: (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| CSCI 3360 | Introduction to Computational Complexity | Prerequisite: ENGG2760 or ESTR2018 or ESTR2308 or IERG2470. | ||
| CSCI 4120 | Principles of Computer Game Software | 1. Prerequisite: CSCI2100 or 2520 or ESTR2102;2. Prerequisite/Corequisite: CSCI3260 or 3550. | ||
| CSCI 4130 | Introduction to Cyber Security | Not for students who have taken ESTR4306 or IEMS5710 or IERG4130. | ||
| CSCI 4140 | Open-source Software Project Development | Prerequisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4160 | Distributed and Parallel Computing | Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104. | ||
| CSCI 4180 | Introduction to Cloud Computing and Storage | Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106. | ||
| CSCI 4190 | Introduction to Social Networks | Pre-requisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4200 | Operating System Engineering | Pre-requisite: CSCI3150 or ESTR3102. | ||
| CSCI 4230 | Computational Learning Theory | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440. | ||
| CSCI 4240 | Advanced Algorithms: Randomization and Approximation | Pre-requisite: (ENGG2760 or ESTR2018) and (ENGG1120 or ESTR1005) Co-requisite: CSCI3160. | ||
| CSCI 4430 | Data Communication and Computer Networks | 1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310. | ||
| CSCI 4998 | Final Year Project I | |||
| CSCI 4999 | Final Year Project II | Pre-requisite: CSCI4998. | ||
| CSCI 5010 | Practical Computational Geometry Algorithms | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5030 | Machine Learning Theory | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN);Not for students who have taken AIMS5704. | ||
| CSCI 5120 | Advanced Topics in Database Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: CMSC5705 and SEEM5010. | ||
| CSCI 5150 | Machine Learning Algorithms and Applications | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: FTEC5580. | ||
| CSCI 5210 | Advanced Computer Graphics and Visualization | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5350 | Advanced Topics in Game Theory | For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5728. | ||
| CSCI 5370 | Quantum Computing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5390 | Advanced GPU Programming | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5440 | Theory of Cryptography | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5540 | Machine Learning Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5550 | Advanced File and Storage Systems | For undergraduate students in Computer Science (CSCIU and CSCIN) or Computer Engineering (CENGU and CENGN); or For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5600 | Advanced Topics in Distributed Systems | For students in MSc Computer Science or MPhil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5735. | ||
| CSCI 5610 | Advanced Data Structures | For students in MSc Computer Science or Mphil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering. | ||
| CSCI 5630 | Advanced Topics in Graph Mining | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5640 | Natural Language Processing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5650 | Graph Neural Networks | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5660 | Advanced Topics of AI for Life Sciences | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5670 | Computational Imaging Systems and Algorithms | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering;Not for students who have taken IERG5670. | ||
| CSCI 5680 | Advanced Topics in Flash Memory Technology | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5690 | Automated Reasoning about Software Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5700 | Advanced Topics in Software Testing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CSCI 6500 [1] | Seminars for M.Phil. Studies | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 7600 [1] | Seminars for Ph.D. Studies | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8003 | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8006 [6] | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8012 [12] | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| ENGG 1820 [1] | Engineering Internship | |||
| ENGG 3802 [1] | Introduction to Engineering Entrepreneurship | |||
| ENGG 3803 [2] | Engineering Entrepreneurship Development Project | Pre-requisite: ENGG3802 with Grade B+ or above or with consent of instructor. | ||
| STAT 2005 | Programming Languages for Statistics | |||
| STAT 2006 | Basic Concepts in Statistics and Probability II | Pre-requisite: STAT2001 or ENGG2760 or ESTR2018 or consent of instructor. |
(f)Stream 5: Theoretical Computer Science17 units
Elective Courses12 units
Choose at least 12 units from the following12 units
AIST4040, 4050, 5040, 5050, BMEG3102 or CSCI3220/ESTR3110, CENG5280, CSCI3120, 3350, 3360, 4230, 4240, 5010, 5350, 5370, 5440, 5660, 5690, IERG3300/ESTR3304, IERG4150/ESTR4322, MATH4230
Show 24 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| AIST 4040 | Mathematical Foundations of Deep Learning | Prerequisite: (ENGG1120/ESTR1005 or ENGG1125/ESTR1007 or ENGG1130/ESTR1006 or ENGG2760/ESTR2018 or ENGG2780/ESTR2020) AND (AIST3030/ESTR3112). | ||
| AIST 4050 | Embodied Intelligence: Algorithms and Applications | Prerequisite: AIST1000. | ||
| AIST 5040 | PhysAI and GenAI for Natural Science | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| AIST 5050 | Optimization for Large Language Models | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| BMEG 3102 | Bioinformatics | Not for students who have taken ELEG4120 or CSCI3220 or ESTR3110. | ||
| CSCI 3220 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or ESTR3110. | ||
| ESTR 3110 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or CSCI3220. | ||
| CENG 5280 | Quantum Computer Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CSCI 3120 | Compiler Construction | |||
| CSCI 3350 | Introduction to Quantum Computing | Prerequisite: (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| CSCI 3360 | Introduction to Computational Complexity | Prerequisite: ENGG2760 or ESTR2018 or ESTR2308 or IERG2470. | ||
| CSCI 4230 | Computational Learning Theory | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440. | ||
| CSCI 4240 | Advanced Algorithms: Randomization and Approximation | Pre-requisite: (ENGG2760 or ESTR2018) and (ENGG1120 or ESTR1005) Co-requisite: CSCI3160. | ||
| CSCI 5010 | Practical Computational Geometry Algorithms | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5350 | Advanced Topics in Game Theory | For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5728. | ||
| CSCI 5370 | Quantum Computing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5440 | Theory of Cryptography | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5660 | Advanced Topics of AI for Life Sciences | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5690 | Automated Reasoning about Software Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| IERG 3300 | Introduction to Stochastic Processes | Pre-requisite: IERG2470 or MIEG2440 or ENGG2430 or 2450 or 2460 or 2470 or ESTR2002 or 2005 or 2010 or 2012 or 2018 or 2308 or 2362.Not for students who have taken ESTR3304 or IERG4140 or IERG5300 or ENGG5302 or MATH4240. | ||
| ESTR 3304 | Introduction to Stochastic Processes | Pre-requisite: IERG2470 or MIEG2440 or ENGG2430 or ENGG2450 or ENGG2460 or ENGG2470 or ESTR2002 or ESTR2005 or ESTR2010 or ESTR2012 or ESTR2018 or ESTR2308 or ESTR2362.Not for students who have taken IERG3300, IERG4140, IERG5300 or ENGG5302 or MATH4240. | ||
| IERG 4150 | Introduction to Cryptography | Not for students who have taken ESTR4322. | ||
| ESTR 4322 | Introduction to Cryptography | Not for students who have taken IERG4150. | ||
| MATH 4230 | Optimization Theory |
Remaining units can be chosen from the following
AIST/CENG/CSCI courses at 2000 or above level, ENGG1820, (ENGG3802 and 3803), IERG4300/ESTR4300, STAT2006
Show 107 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| AIST 2010 | Introduction to Computer Music: From Analysis to Algorithmic Music | Prerequisite: AIST1110 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or ENGG1110 or ESTR1002 or ESTR1100 or ESTR1102. | ||
| AIST 2601 [2] | Technology, Society and Engineering Practice | Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602. | ||
| AIST 2602 [1] | Engineering Practicum | Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602. | ||
| AIST 3010 [2] | Numerical Optimization | Pre-requisite: ENGG1120/ESTR1005 or ENGG1130/ESTR1006 or MATH1510.Not for students who have taken AIST3030 or ESTR3112 or ESTR3114. | ||
| AIST 3020 | Introduction to Computer Systems | Not for students who have taken CSCI3150 or ESTR3102.Prerequisite: (ENGG1110 or ESTR1002) AND (ENGG2440 or ESTR2004). | ||
| AIST 3030 | Numerical Optimization | Pre-requisite: ENGG1120 or ENGG1130 or ESTR1005 or ESTR1006 or MATH1510.Not for students who have taken AIST3010 or ESTR3112 or ESTR3114. | ||
| AIST 3110 | Music Information Retrieval | Pre-requisite/Co-requisite: AIST2010 or CSCI3280. | ||
| AIST 3120 | Introduction to Natural Language Processing | Prerequisite: (AIST1110 or CSCI1040 or CSCI1550 or CSCI2040) AND (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| AIST 3510 | Human-computer Interaction | Not for students who have taken SEEM3510. | ||
| AIST 4010 | Foundation of Applied Deep Learning | Not for students who have taken ESTR4140.Prerequisite: CSCI3230 or CSCI3320 or ESTR3108. | ||
| AIST 4020 | Agentic AI and LLM Serving | Prerequisite: AIST3020 or CSCI3150 or ESTR3102. | ||
| AIST 4030 | Structured Data Modeling and Graph Neural Network | Prerequisite: AIST3120 or CSCI3230 or ESTR3108 or CSCI3320. | ||
| AIST 4040 | Mathematical Foundations of Deep Learning | Prerequisite: (ENGG1120/ESTR1005 or ENGG1125/ESTR1007 or ENGG1130/ESTR1006 or ENGG2760/ESTR2018 or ENGG2780/ESTR2020) AND (AIST3030/ESTR3112). | ||
| AIST 4050 | Embodied Intelligence: Algorithms and Applications | Prerequisite: AIST1000. | ||
| AIST 4060 [2] | AI-Native Software Engineering | Prerequisite: AIST3020 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or CSCI3180 or ESTR1100 or ESTR1102 or ESTR3106.Not for students who have taken IERG3844. | ||
| AIST 4998 | Final Year Project I | |||
| AIST 4999 | Final Year Project II | Prerequisite: AIST4998. | ||
| AIST 5020 | Trustworthy Artificial Intelligence | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| AIST 5030 | Generative Artificial Intelligence | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science and Engineering;Not for students who have taken SEEM5030. | ||
| AIST 5040 | PhysAI and GenAI for Natural Science | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| AIST 5050 | Optimization for Large Language Models | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CENG 2010 [1] | Digital Logic Design Laboratory | Prerequisite: ENGG2020 or ESTR2104. | ||
| CENG 2030 | Fundamentals of Embedded Systems | Pre-requisite: ENGG1110 or ESTR1002. | ||
| CENG 2400 | Embedded System Design | Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.Not for students who have taken ESTR2100. | ||
| CENG 3420 | Computer Organization and Design | Not for students who have taken CSCI3420.Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.For 2nd-year entrants, the prerequisite will be waived. | ||
| CENG 3430 | Rapid Prototyping of Digital Systems | Prerequisite: CSCI2510 or ENGG2020 or ENGG2120 or ESTR2104 or its equivalent For senior-year entrants, the prerequisite will be waived.Not for students who have taken ESTR3100. | ||
| CENG 4120 | Computer-aided Design for Very Large Scale Integrated Circuits | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CENG 4480 | Embedded System Development and Applications | Not for students who have taken CENG3480 in 2008-09 and before;Prerequisite: CENG2400 or ESTR2100.For 2nd-year entrants, the prerequisite will be waived. | ||
| CENG 4998 | Final Year Project I | |||
| CENG 4999 | Final Year Project II | Prerequisite: CENG4998. | ||
| CENG 5030 | Energy Efficient Computing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CENG 5270 | EDA for Physical Design of Digital Systems | For students in MSc Computer Science; or MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering;(CENGU & CENGN). | ||
| CENG 5280 | Quantum Computer Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CSCI 2040 [2] | Introduction to Python | Pre-requisite: ENGG1110 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or ESTR1002.Not for students who have taken CSCI1040 or CSCI1550 or CSCI3230 or CSCI3320 or AIST1110 or IERG1080. | ||
| CSCI 2100 | Data Structures | Not for students who have taken ESTR2102 or CSCI2520;Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or ESTR1102 or ESTR2306 or IERG2080.For senior-year entrants, the prerequisite will be waived. | ||
| CSCI 2510 | Computer Organization | Not for students who have taken CENG2400 or ELEG3230 or ENGG2020 or ESTR2100 or ESTR2104.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2520 | Data Structures and Applications | Not for students who have taken CSCI2100 or ESTR2102.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2720 | Building Web Applications | Not for students who have taken ESTR2106 or IERG3840.Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2730 | Introduction to Blockchain Technologies and Applications | Not for students who have taken IERG4360 or ESTR4326.Prerequisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102. | ||
| CSCI 2740 | Competitive Programming | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CSCI 2750 | Data Mining and Information Processing | Prerequisite: (ENGG1110 or ESTR1002) and (ENGG1120 or ESTR1005) Not for students who have taken CSCI3230 or ESTR3108 or CSCI3320. | ||
| CSCI 3100 | Software Engineering | Not for students who have taken ENGG3820 or ESTR3308 or IERG3080;Pre-requisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or 1102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3120 | Compiler Construction | |||
| CSCI 3130 | Formal Languages and Automata Theory | Pre-requisite: CSCI2110 or ENGG2440 or ESTR2004 or MIEG2440. | ||
| CSCI 3150 | Introduction to Operating Systems | Prerequisite: ESTR2102 or CSCI2100 or 2520.For senior-year entrants, the prerequisite will be waived.Co-requisite: AIST3020 or CSCI2510 or CENG3420 or IERG3060 or equivalent.Not for students who have taken ESTR3102. | ||
| CSCI 3160 | Design and Analysis of Algorithms | Not for students who have taken ESTR3104 or CSCI3190;Pre-requisites: (CSCI2100 or CSCI2520 or ESTR2102) AND (CSCI2110 or ENGG2440 or ESTR2004 or ESTR2362 or MIEG2440). | ||
| CSCI 3170 | Introduction to Database Systems | Prerequisite: CSCI2100 or 2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3180 | Principles of Programming Languages | Not for students who have taken ESTR3106.Prerequisite: CSCI2100 or 2520 or ESTR2102.For senior-year entrants, the prerequisite will be waived. | ||
| CSCI 3190 | Introduction to Discrete Mathematics and Algorithms | Not for students who have taken CSCI3160 or ENGG2440 or ESTR2004 or 3104.Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3220 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or ESTR3110. | ||
| CSCI 3230 | Fundamentals of Artificial Intelligence | Not for students who have taken ESTR3108.Prerequisite: CSCI2100 or 2520 or ESTR2102 or equivalent. | ||
| CSCI 3250 [2] | Computers and Society | Not for students who have taken ENGG2601. | ||
| CSCI 3251 [1] | Engineering Practicum | Not for students who have taken ENGG2602. | ||
| CSCI 3260 | Principles of Computer Graphics | Prerequisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 3270 [2] | Advanced Programming Laboratory | 1. Prerequisite: CSCI2100 or ESTR2102;2. Corequisite: CSCI3160 or ESTR3104. | ||
| CSCI 3280 | Introduction to Multimedia Systems | |||
| CSCI 3290 | Computational Imaging and Vision | Prerequisite: CSCI2100 or ESTR2102. | ||
| CSCI 3310 | Mobile Computing and Applications Development | Pre-requisite: CSCI2100 or 2520 or ESTR2102.Not for students who have taken IERG3842. | ||
| CSCI 3320 | Fundamentals of Machine Learning | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440 or STAT2001. | ||
| CSCI 3330 | Fundamentals of Applied Computer Vision | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CSCI 3340 | Scientific Computing | Prerequisite: (ENGG1120 or ESTR1005 or MATH1030 or MATH1038 or MATH1550) AND (ENGG1130 or ESTR1006 or MATH1010 or MATH1020 or MATH1018 or MATH1510 or MATH1520). | ||
| CSCI 3350 | Introduction to Quantum Computing | Prerequisite: (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| CSCI 3360 | Introduction to Computational Complexity | Prerequisite: ENGG2760 or ESTR2018 or ESTR2308 or IERG2470. | ||
| CSCI 4120 | Principles of Computer Game Software | 1. Prerequisite: CSCI2100 or 2520 or ESTR2102;2. Prerequisite/Corequisite: CSCI3260 or 3550. | ||
| CSCI 4130 | Introduction to Cyber Security | Not for students who have taken ESTR4306 or IEMS5710 or IERG4130. | ||
| CSCI 4140 | Open-source Software Project Development | Prerequisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4160 | Distributed and Parallel Computing | Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104. | ||
| CSCI 4180 | Introduction to Cloud Computing and Storage | Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106. | ||
| CSCI 4190 | Introduction to Social Networks | Pre-requisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4200 | Operating System Engineering | Pre-requisite: CSCI3150 or ESTR3102. | ||
| CSCI 4230 | Computational Learning Theory | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440. | ||
| CSCI 4240 | Advanced Algorithms: Randomization and Approximation | Pre-requisite: (ENGG2760 or ESTR2018) and (ENGG1120 or ESTR1005) Co-requisite: CSCI3160. | ||
| CSCI 4430 | Data Communication and Computer Networks | 1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310. | ||
| CSCI 4998 | Final Year Project I | |||
| CSCI 4999 | Final Year Project II | Pre-requisite: CSCI4998. | ||
| CSCI 5010 | Practical Computational Geometry Algorithms | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5030 | Machine Learning Theory | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN);Not for students who have taken AIMS5704. | ||
| CSCI 5120 | Advanced Topics in Database Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: CMSC5705 and SEEM5010. | ||
| CSCI 5150 | Machine Learning Algorithms and Applications | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: FTEC5580. | ||
| CSCI 5210 | Advanced Computer Graphics and Visualization | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5350 | Advanced Topics in Game Theory | For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5728. | ||
| CSCI 5370 | Quantum Computing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5390 | Advanced GPU Programming | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5440 | Theory of Cryptography | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5540 | Machine Learning Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5550 | Advanced File and Storage Systems | For undergraduate students in Computer Science (CSCIU and CSCIN) or Computer Engineering (CENGU and CENGN); or For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5600 | Advanced Topics in Distributed Systems | For students in MSc Computer Science or MPhil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5735. | ||
| CSCI 5610 | Advanced Data Structures | For students in MSc Computer Science or Mphil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering. | ||
| CSCI 5630 | Advanced Topics in Graph Mining | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5640 | Natural Language Processing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5650 | Graph Neural Networks | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5660 | Advanced Topics of AI for Life Sciences | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5670 | Computational Imaging Systems and Algorithms | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering;Not for students who have taken IERG5670. | ||
| CSCI 5680 | Advanced Topics in Flash Memory Technology | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5690 | Automated Reasoning about Software Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5700 | Advanced Topics in Software Testing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CSCI 6500 [1] | Seminars for M.Phil. Studies | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 7600 [1] | Seminars for Ph.D. Studies | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8003 | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8006 [6] | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8012 [12] | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| ENGG 1820 [1] | Engineering Internship | |||
| ENGG 3802 [1] | Introduction to Engineering Entrepreneurship | |||
| ENGG 3803 [2] | Engineering Entrepreneurship Development Project | Pre-requisite: ENGG3802 with Grade B+ or above or with consent of instructor. | ||
| ESTR 4300 | Web-scale Information Analytics | Not for students who have taken CSCI5510 or ENGG4030 or IERG4300. | ||
| IERG 4300 | Web-scale Information Analytics | Not for students who have taken CSCI5510 or ENGG4030 or ESTR4300. | ||
| STAT 2006 | Basic Concepts in Statistics and Probability II | Pre-requisite: STAT2001 or ENGG2760 or ESTR2018 or consent of instructor. |
(g)Stream 6: Data Analytics17 units
Required Courses
CSCI3320
Show 1 course
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| CSCI 3320 | Fundamentals of Machine Learning | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440 or STAT2001. |
Elective Course 16 units
Choose at least 6 units from the following6 units
AIST3120, AIST4010/ESTR4140, AIST4030, 4050, BMEG3102 or CSCI3220/ESTR3110, CSCI3170, 3340, CSCI4180/ESTR4106, CSCI4190, 4230, 5030, 5120, 5150, CSCI5180/ENGG5103, CSCI5540, 5550, 5630, 5640, 5650, 5660, IERG4230, IERG4330/ESTR4316
Show 28 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| AIST 3120 | Introduction to Natural Language Processing | Prerequisite: (AIST1110 or CSCI1040 or CSCI1550 or CSCI2040) AND (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| AIST 4010 | Foundation of Applied Deep Learning | Not for students who have taken ESTR4140.Prerequisite: CSCI3230 or CSCI3320 or ESTR3108. | ||
| ESTR 4140 | Foundation of Applied Deep Learning | Pre-requisite: CSCI3230 or CSCI3320 or ESTR3108.Not for students who have taken AIST4010. | ||
| AIST 4030 | Structured Data Modeling and Graph Neural Network | Prerequisite: AIST3120 or CSCI3230 or ESTR3108 or CSCI3320. | ||
| AIST 4050 | Embodied Intelligence: Algorithms and Applications | Prerequisite: AIST1000. | ||
| BMEG 3102 | Bioinformatics | Not for students who have taken ELEG4120 or CSCI3220 or ESTR3110. | ||
| CSCI 3220 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or ESTR3110. | ||
| ESTR 3110 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or CSCI3220. | ||
| CSCI 3170 | Introduction to Database Systems | Prerequisite: CSCI2100 or 2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3340 | Scientific Computing | Prerequisite: (ENGG1120 or ESTR1005 or MATH1030 or MATH1038 or MATH1550) AND (ENGG1130 or ESTR1006 or MATH1010 or MATH1020 or MATH1018 or MATH1510 or MATH1520). | ||
| CSCI 4180 | Introduction to Cloud Computing and Storage | Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106. | ||
| ESTR 4106 | Introduction to Cloud Computing and Storage | Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken CSCI4180. | ||
| CSCI 4190 | Introduction to Social Networks | Pre-requisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4230 | Computational Learning Theory | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440. | ||
| CSCI 5030 | Machine Learning Theory | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN);Not for students who have taken AIMS5704. | ||
| CSCI 5120 | Advanced Topics in Database Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: CMSC5705 and SEEM5010. | ||
| CSCI 5150 | Machine Learning Algorithms and Applications | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: FTEC5580. | ||
| CSCI 5180 | (not found in course_info) | |||
| ENGG 5103 | Techniques for Data Mining | For students in MSc Computer Science or MPhil-PhD programmes under Faculty of Engineering or UG Computer Science or UG Computer Engineering;Not for students who have taken CMSC5724 or CSCI5180. | ||
| CSCI 5540 | Machine Learning Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5550 | Advanced File and Storage Systems | For undergraduate students in Computer Science (CSCIU and CSCIN) or Computer Engineering (CENGU and CENGN); or For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5630 | Advanced Topics in Graph Mining | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5640 | Natural Language Processing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5650 | Graph Neural Networks | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5660 | Advanced Topics of AI for Life Sciences | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| IERG 4230 | Introduction to Internet of Things | |||
| IERG 4330 | Programming Big Data Systems | Pre/Co-requisite: ENGG4030 or ESTR4300 or IERG4300.Not for students who have taken ESTR4316 or IEMS5730. | ||
| ESTR 4316 | Programming Big Data Systems | Not for students who have taken IERG4330 or IEMS5730.Co-/Pre-requisite(s): ENGG4030 or ESTR4300 or IERG4300. | ||
Elective Course 23 units
Choose at least 3 units from the following3 units
RMSC4002, STAT3210, 4002, 4003, 4006
Show 5 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| RMSC 4002 | Financial Data Analytics with Machine Learning | Prerequisite:RMSC2001, STAT2001 and STAT2006, or consent of instructor. | ||
| STAT 3210 | Statistical Techniques in Life Sciences | Not for students who have taken STAT3004. | ||
| STAT 4002 | Applied Multivariate Analysis | |||
| STAT 4003 | Statistical Inference | |||
| STAT 4006 | Categorical Data Analysis |
Remaining units can be chosen from the following
AIST/CENG/CSCI courses at 2000 or above level, ENGG1820, (ENGG3802 and 3803), IERG4300/ESTR4300, STAT2005, 2006
Show 108 courses
| Course | Title | Term 1 | Term 2 | Enrolment information |
|---|---|---|---|---|
| AIST 2010 | Introduction to Computer Music: From Analysis to Algorithmic Music | Prerequisite: AIST1110 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or ENGG1110 or ESTR1002 or ESTR1100 or ESTR1102. | ||
| AIST 2601 [2] | Technology, Society and Engineering Practice | Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602. | ||
| AIST 2602 [1] | Engineering Practicum | Not for students who have taken CSCI3250 or CSCI3251 or ENGG2601 or ENGG2602. | ||
| AIST 3010 [2] | Numerical Optimization | Pre-requisite: ENGG1120/ESTR1005 or ENGG1130/ESTR1006 or MATH1510.Not for students who have taken AIST3030 or ESTR3112 or ESTR3114. | ||
| AIST 3020 | Introduction to Computer Systems | Not for students who have taken CSCI3150 or ESTR3102.Prerequisite: (ENGG1110 or ESTR1002) AND (ENGG2440 or ESTR2004). | ||
| AIST 3030 | Numerical Optimization | Pre-requisite: ENGG1120 or ENGG1130 or ESTR1005 or ESTR1006 or MATH1510.Not for students who have taken AIST3010 or ESTR3112 or ESTR3114. | ||
| AIST 3110 | Music Information Retrieval | Pre-requisite/Co-requisite: AIST2010 or CSCI3280. | ||
| AIST 3120 | Introduction to Natural Language Processing | Prerequisite: (AIST1110 or CSCI1040 or CSCI1550 or CSCI2040) AND (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| AIST 3510 | Human-computer Interaction | Not for students who have taken SEEM3510. | ||
| AIST 4010 | Foundation of Applied Deep Learning | Not for students who have taken ESTR4140.Prerequisite: CSCI3230 or CSCI3320 or ESTR3108. | ||
| AIST 4020 | Agentic AI and LLM Serving | Prerequisite: AIST3020 or CSCI3150 or ESTR3102. | ||
| AIST 4030 | Structured Data Modeling and Graph Neural Network | Prerequisite: AIST3120 or CSCI3230 or ESTR3108 or CSCI3320. | ||
| AIST 4040 | Mathematical Foundations of Deep Learning | Prerequisite: (ENGG1120/ESTR1005 or ENGG1125/ESTR1007 or ENGG1130/ESTR1006 or ENGG2760/ESTR2018 or ENGG2780/ESTR2020) AND (AIST3030/ESTR3112). | ||
| AIST 4050 | Embodied Intelligence: Algorithms and Applications | Prerequisite: AIST1000. | ||
| AIST 4060 [2] | AI-Native Software Engineering | Prerequisite: AIST3020 or CSCI1120 or CSCI1130 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or CSCI1550 or CSCI3180 or ESTR1100 or ESTR1102 or ESTR3106.Not for students who have taken IERG3844. | ||
| AIST 4998 | Final Year Project I | |||
| AIST 4999 | Final Year Project II | Prerequisite: AIST4998. | ||
| AIST 5020 | Trustworthy Artificial Intelligence | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| AIST 5030 | Generative Artificial Intelligence | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science and Engineering;Not for students who have taken SEEM5030. | ||
| AIST 5040 | PhysAI and GenAI for Natural Science | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| AIST 5050 | Optimization for Large Language Models | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CENG 2010 [1] | Digital Logic Design Laboratory | Prerequisite: ENGG2020 or ESTR2104. | ||
| CENG 2030 | Fundamentals of Embedded Systems | Pre-requisite: ENGG1110 or ESTR1002. | ||
| CENG 2400 | Embedded System Design | Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.Not for students who have taken ESTR2100. | ||
| CENG 3420 | Computer Organization and Design | Not for students who have taken CSCI3420.Prerequisite: ENGG2020 or ENGG2120 or ESTR2104.For 2nd-year entrants, the prerequisite will be waived. | ||
| CENG 3430 | Rapid Prototyping of Digital Systems | Prerequisite: CSCI2510 or ENGG2020 or ENGG2120 or ESTR2104 or its equivalent For senior-year entrants, the prerequisite will be waived.Not for students who have taken ESTR3100. | ||
| CENG 4120 | Computer-aided Design for Very Large Scale Integrated Circuits | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CENG 4480 | Embedded System Development and Applications | Not for students who have taken CENG3480 in 2008-09 and before;Prerequisite: CENG2400 or ESTR2100.For 2nd-year entrants, the prerequisite will be waived. | ||
| CENG 4998 | Final Year Project I | |||
| CENG 4999 | Final Year Project II | Prerequisite: CENG4998. | ||
| CENG 5030 | Energy Efficient Computing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CENG 5270 | EDA for Physical Design of Digital Systems | For students in MSc Computer Science; or MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering;(CENGU & CENGN). | ||
| CENG 5280 | Quantum Computer Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CSCI 2040 [2] | Introduction to Python | Pre-requisite: ENGG1110 or CSCI1510 or CSCI1520 or CSCI1530 or CSCI1540 or ESTR1002.Not for students who have taken CSCI1040 or CSCI1550 or CSCI3230 or CSCI3320 or AIST1110 or IERG1080. | ||
| CSCI 2100 | Data Structures | Not for students who have taken ESTR2102 or CSCI2520;Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or ESTR1102 or ESTR2306 or IERG2080.For senior-year entrants, the prerequisite will be waived. | ||
| CSCI 2510 | Computer Organization | Not for students who have taken CENG2400 or ELEG3230 or ENGG2020 or ESTR2100 or ESTR2104.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2520 | Data Structures and Applications | Not for students who have taken CSCI2100 or ESTR2102.Prerequisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2720 | Building Web Applications | Not for students who have taken ESTR2106 or IERG3840.Pre-requisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102 or MATH2221 or PHYS2061. | ||
| CSCI 2730 | Introduction to Blockchain Technologies and Applications | Not for students who have taken IERG4360 or ESTR4326.Prerequisite: AIST1110 or CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ENGG1110 or ESTR1002 or 1100 or 1102. | ||
| CSCI 2740 | Competitive Programming | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CSCI 2750 | Data Mining and Information Processing | Prerequisite: (ENGG1110 or ESTR1002) and (ENGG1120 or ESTR1005) Not for students who have taken CSCI3230 or ESTR3108 or CSCI3320. | ||
| CSCI 3100 | Software Engineering | Not for students who have taken ENGG3820 or ESTR3308 or IERG3080;Pre-requisite: CSCI1120 or 1130 or 1510 or 1520 or 1530 or 1540 or 1550 or ESTR1100 or 1102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3120 | Compiler Construction | |||
| CSCI 3130 | Formal Languages and Automata Theory | Pre-requisite: CSCI2110 or ENGG2440 or ESTR2004 or MIEG2440. | ||
| CSCI 3150 | Introduction to Operating Systems | Prerequisite: ESTR2102 or CSCI2100 or 2520.For senior-year entrants, the prerequisite will be waived.Co-requisite: AIST3020 or CSCI2510 or CENG3420 or IERG3060 or equivalent.Not for students who have taken ESTR3102. | ||
| CSCI 3160 | Design and Analysis of Algorithms | Not for students who have taken ESTR3104 or CSCI3190;Pre-requisites: (CSCI2100 or CSCI2520 or ESTR2102) AND (CSCI2110 or ENGG2440 or ESTR2004 or ESTR2362 or MIEG2440). | ||
| CSCI 3170 | Introduction to Database Systems | Prerequisite: CSCI2100 or 2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3180 | Principles of Programming Languages | Not for students who have taken ESTR3106.Prerequisite: CSCI2100 or 2520 or ESTR2102.For senior-year entrants, the prerequisite will be waived. | ||
| CSCI 3190 | Introduction to Discrete Mathematics and Algorithms | Not for students who have taken CSCI3160 or ENGG2440 or ESTR2004 or 3104.Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived. | ||
| CSCI 3220 | Algorithms for Bioinformatics | Not for students who have taken BMEG3102 or ESTR3110. | ||
| CSCI 3230 | Fundamentals of Artificial Intelligence | Not for students who have taken ESTR3108.Prerequisite: CSCI2100 or 2520 or ESTR2102 or equivalent. | ||
| CSCI 3250 [2] | Computers and Society | Not for students who have taken ENGG2601. | ||
| CSCI 3251 [1] | Engineering Practicum | Not for students who have taken ENGG2602. | ||
| CSCI 3260 | Principles of Computer Graphics | Prerequisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 3270 [2] | Advanced Programming Laboratory | 1. Prerequisite: CSCI2100 or ESTR2102;2. Corequisite: CSCI3160 or ESTR3104. | ||
| CSCI 3280 | Introduction to Multimedia Systems | |||
| CSCI 3290 | Computational Imaging and Vision | Prerequisite: CSCI2100 or ESTR2102. | ||
| CSCI 3310 | Mobile Computing and Applications Development | Pre-requisite: CSCI2100 or 2520 or ESTR2102.Not for students who have taken IERG3842. | ||
| CSCI 3320 | Fundamentals of Machine Learning | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440 or STAT2001. | ||
| CSCI 3330 | Fundamentals of Applied Computer Vision | Prerequisite: CSCI2100 or CSCI2520 or ESTR2102. | ||
| CSCI 3340 | Scientific Computing | Prerequisite: (ENGG1120 or ESTR1005 or MATH1030 or MATH1038 or MATH1550) AND (ENGG1130 or ESTR1006 or MATH1010 or MATH1020 or MATH1018 or MATH1510 or MATH1520). | ||
| CSCI 3350 | Introduction to Quantum Computing | Prerequisite: (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018). | ||
| CSCI 3360 | Introduction to Computational Complexity | Prerequisite: ENGG2760 or ESTR2018 or ESTR2308 or IERG2470. | ||
| CSCI 4120 | Principles of Computer Game Software | 1. Prerequisite: CSCI2100 or 2520 or ESTR2102;2. Prerequisite/Corequisite: CSCI3260 or 3550. | ||
| CSCI 4130 | Introduction to Cyber Security | Not for students who have taken ESTR4306 or IEMS5710 or IERG4130. | ||
| CSCI 4140 | Open-source Software Project Development | Prerequisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4160 | Distributed and Parallel Computing | Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104. | ||
| CSCI 4180 | Introduction to Cloud Computing and Storage | Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106. | ||
| CSCI 4190 | Introduction to Social Networks | Pre-requisite: CSCI2100 or 2520 or ESTR2102. | ||
| CSCI 4200 | Operating System Engineering | Pre-requisite: CSCI3150 or ESTR3102. | ||
| CSCI 4230 | Computational Learning Theory | Prerequisite: ENGG2430 or 2450 or 2760 or 2780 or ESTR2002 or 2005 or 2018 or 2020 or 2308 or 2362 or IERG2470 or MIEG2440. | ||
| CSCI 4240 | Advanced Algorithms: Randomization and Approximation | Pre-requisite: (ENGG2760 or ESTR2018) and (ENGG1120 or ESTR1005) Co-requisite: CSCI3160. | ||
| CSCI 4430 | Data Communication and Computer Networks | 1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310. | ||
| CSCI 4998 | Final Year Project I | |||
| CSCI 4999 | Final Year Project II | Pre-requisite: CSCI4998. | ||
| CSCI 5010 | Practical Computational Geometry Algorithms | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5030 | Machine Learning Theory | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN);Not for students who have taken AIMS5704. | ||
| CSCI 5120 | Advanced Topics in Database Systems | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: CMSC5705 and SEEM5010. | ||
| CSCI 5150 | Machine Learning Algorithms and Applications | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering;Exclusion: FTEC5580. | ||
| CSCI 5210 | Advanced Computer Graphics and Visualization | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5350 | Advanced Topics in Game Theory | For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5728. | ||
| CSCI 5370 | Quantum Computing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5390 | Advanced GPU Programming | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG Computer Science; or For students in UG Computer Engineering. | ||
| CSCI 5440 | Theory of Cryptography | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5540 | Machine Learning Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5550 | Advanced File and Storage Systems | For undergraduate students in Computer Science (CSCIU and CSCIN) or Computer Engineering (CENGU and CENGN); or For students in MSc Computer Science or MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5600 | Advanced Topics in Distributed Systems | For students in MSc Computer Science or MPhil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering;Exclusion: CMSC5735. | ||
| CSCI 5610 | Advanced Data Structures | For students in MSc Computer Science or Mphil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering. | ||
| CSCI 5630 | Advanced Topics in Graph Mining | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5640 | Natural Language Processing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5650 | Graph Neural Networks | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For undergraduate students in Computer Science (CSCIU & CSCIN) or Computer Engineering (CENGU & CENGN). | ||
| CSCI 5660 | Advanced Topics of AI for Life Sciences | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5670 | Computational Imaging Systems and Algorithms | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering;Not for students who have taken IERG5670. | ||
| CSCI 5680 | Advanced Topics in Flash Memory Technology | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5690 | Automated Reasoning about Software Systems | For undergraduate students in Computer Science (CSCIN) or Computer Engineering (CENGN) or Artificial Intelligence – Systems & Technologies (AISTN); or For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 5700 | Advanced Topics in Software Testing | For students in MSc Computer Science; or For students in MPhil-PhD Computer Science & Engineering; or For students in UG AISTN or CDASN or CENGN or CSCIN. | ||
| CSCI 6500 [1] | Seminars for M.Phil. Studies | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 7600 [1] | Seminars for Ph.D. Studies | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8003 | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8006 [6] | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| CSCI 8012 [12] | Thesis Research | For students in MPhil-PhD Computer Science & Engineering. | ||
| ENGG 1820 [1] | Engineering Internship | |||
| ENGG 3802 [1] | Introduction to Engineering Entrepreneurship | |||
| ENGG 3803 [2] | Engineering Entrepreneurship Development Project | Pre-requisite: ENGG3802 with Grade B+ or above or with consent of instructor. | ||
| ESTR 4300 | Web-scale Information Analytics | Not for students who have taken CSCI5510 or ENGG4030 or IERG4300. | ||
| IERG 4300 | Web-scale Information Analytics | Not for students who have taken CSCI5510 or ENGG4030 or ESTR4300. | ||
| STAT 2005 | Programming Languages for Statistics | |||
| STAT 2006 | Basic Concepts in Statistics and Probability II | Pre-requisite: STAT2001 or ENGG2760 or ESTR2018 or consent of instructor. |