B.Eng. in Biomedical Engineering — CUHK Engineering Major Requirements (2026–27)

Admission code: BMEGN · 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
CourseTitleTerm 1Term 2Enrolment information
ENGG 1110Problem 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 1002Problem 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 1120Linear Algebra for Engineers
Not for students who have taken ENGG1410 or ESTR1004 or ESTR1005 or MATH1030 or MATH1038.
ESTR 1005Linear Algebra for Engineers
Not for students who have taken ENGG1120 or ENGG1410 or ESTR1004 or MATH1030 or MATH1038.
ENGG 1125Single Variable Calculus for Engineers
Not for students who have taken ESTR1007 or MATH1510.
ESTR 1007Single Variable Calculus for Engineers
Not for students who have taken ENGG1125 or MATH1510.

2.Foundation Courses12 units

(a)6 units of Physics Courses6 units

ENGG1310/ESTR1003, PHYS1110[b]

Show 3 courses
CourseTitleTerm 1Term 2Enrolment information
ENGG 1310Engineering Physics: Electromagnetics, Optics and Modern Physics
Not for students who have taken ENGG2520, ESTR2006 or ESTR1003.
ESTR 1003Engineering Physics: Electromagnetics, Optics and Modern Physics
Not for students who have taken ENGG1310 or ENGG2520 or ESTR2006.
PHYS 1110Engineering Physics: Mechanics and Thermodynamics

(b)3 units of Science Course3 units

CHEM1280, 1380[c], LSCI1001, 1002[d]

Show 4 courses
CourseTitleTerm 1Term 2Enrolment information
CHEM 1280Introduction to Organic Chemistry and Biomolecules
Not for students who have taken CHEM2200.
CHEM 1380Basic Chemistry for Engineers
LSCI 1001Basic Concepts in Biological Sciences
Not for students who have taken LSCI1002 or 1003.
LSCI 1002Introduction to Biological Sciences
-.

(c)

ENGG1130/ESTR1006[e]

Show 2 courses
CourseTitleTerm 1Term 2Enrolment information
ENGG 1130Multivariable 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 1006Multivariable 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.

3.Required Courses42 units

(a)36 units

BMEG2001/ESTR2201, BMEG2012/ESTR2602, BMEG2210/ESTR2204, BMEG2218, BMEG2300/ESTR2601, BMEG2410, 2603, BMEG3111/ESTR3603, BMEG3320, BMEG3430/ESTR3208, BMEG4010/ESTR4601, SBMS1431, 1432, 1440, STAT3210

Show 22 courses
CourseTitleTerm 1Term 2Enrolment information
BMEG 2001 [1]Introduction to Biomedical Engineering
Not for students who have taken BMEG1130 or BMEG2000 or BMEG2130 or ESTR2200 or ESTR2201.
ESTR 2201 [1]Introduction to Biomedical Engineering
Not for students who have taken BMEG1130, BMEG2000, BMEG2001, BMEG2130 or ESTR2200.
BMEG 2012 [2]Biomedical Engineering Laboratory
Not for students who have taken BMEG1130 or BMEG2010 or BMEG2011 or BMEG2130 or ESTR2202 or ESTR2203 or ESTR2602.
ESTR 2602 [2]Biomedical Engineering Laboratory
Not for students who have taken BMEG1130 or BMEG2010 or BMEG2011 or BMEG2012 or BMEG2130 or ESTR2202 or ESTR2203.
BMEG 2210Orthopaedic Biomechanics and Musculoskeletal Injury
Not for students who have taken ESTR2204 or MAEG2020.
ESTR 2204Orthopaedic Biomechanics and Musculoskeletal Injury
Not for students who have taken BMEG2210 or MAEG2020.
BMEG 2218 [2]Ethical Practice in Bionic Human
Not for students who have taken BMEG1217 or UGEB1217.
BMEG 2300Circuits and Signals for Biomedical Engineering
Not for students who have taken ELEG2202 or ENGG2030 or ESTR2206 or ESTR2601.
ESTR 2601Circuits and Signals for Biomedical Engineering
Not for students who have taken ELEG2202 or ENGG2030 or ESTR2206 or BMEG2300.
BMEG 2410Complex Analysis and Differential Equations
Not for students who have taken ENGG2420 or 2460 or ESTR2000 or 2010.
BMEG 2603 [2]Hospital Experience and Engineering Practicum
Not for students who have taken ENGG2602 or BMEG2602.
BMEG 3111 [2]Medical Instrumentation and Design
Not for students who have taken BMEG3101 or ELEG3101 or ESTR3210 or ESTR3601 or ESTR3603.
ESTR 3603 [2]Medical Instrumentation and Design
Not for students who have taken BMEG3101 or BMEG3111 or ELEG3101 or ESTR3210 or ESTR3601.
BMEG 3320Biomedical Imaging
Prerequisite: BMEG2300 or ENGG2030 or with the consent of the instructor.
BMEG 3430Biomaterials and Tissue Engineering
Not for students who have taken ESTR3208.
ESTR 3208Biomaterials and Tissue Engineering
Not for students who have taken BMEG3430.
BMEG 4010Global Medical Device Regulatory Affairs
Not for students who have taken BMEG5850 or ESTR4601.
ESTR 4601Global Medical Device Regulatory Affairs
Not for students who have taken BMEG5850 or BMEG4010.
SBMS 1431 [2]Human Anatomy and Physiology I
SBMS 1432 [2]Human Anatomy and Physiology II
SBMS 1440 [2]Cell and Molecular Biology in Biomedical Engineering
STAT 3210Statistical Techniques in Life Sciences
Not for students who have taken STAT3004.

(b)Research Component Courses[f]6 units

BMEG4998, 4999

Show 2 courses
CourseTitleTerm 1Term 2Enrolment information
BMEG 4998Final Year Project I
BMEG 4999Final Year Project II
Pre-requisite: BMEG4998.

4.Elective Courses12 units

BMEG3102, 3103, BMEG3105/ESTR3605, BMEG3130, BMEG3140/ESTR3604, BMEG3210/ESTR3212, BMEG3330/ESTR3602, BMEG3420, 3440, 3910, 3920, 4220, BMEG4320/ESTR4200, BMEG4410/ESTR4203, BMEG4450/ESTR4202, BMEG4510/ESTR4204, BMEG4520, BMEG4530/ESTR4214, BMEG5530, 5610, CMBI4101, 4102, 4103, ELEG3201/ESTR3200, MAEG5080, MBTE4320, CSCI courses[g]

Show 36 courses
CourseTitleTerm 1Term 2Enrolment information
BMEG 3102Bioinformatics
Not for students who have taken ELEG4120 or CSCI3220 or ESTR3110.
BMEG 3103Big Data in HealthCare
BMEG 3105Data Analytics for Personalized Genomics and Precision Medicine
Not for students who have taken ESTR3605.
ESTR 3605Data Analytics for Personalized Genomics and Precision Medicine
Not for students who have taken BMEG3105.
BMEG 3130Tele-medicine and Mobile Healthcare
BMEG 3140Molecular and Cellular Engineering Laboratory
Not for students who have taken ESTR3604.
ESTR 3604Molecular and Cellular Engineering Laboratory
Not for students who have taken BMEG3140.
BMEG 3210Biofluids
Not for students who have taken MAEG3030 or ESTR3212.
ESTR 3212Biofluids
Not for students who have taken MAEG3030 or BMEG3210.
BMEG 3330Neuroengineering
Not for students who have taken ESTR3602.
ESTR 3602Neuroengineering
Not for students who have taken BMEG3330.
BMEG 3420Medical Robotics
BMEG 3440Global Engineering Medical Innovation
BMEG 3910Undergraduate Research in Biomedical Engineering
Not for students who have taken ENGG3920.
BMEG 3920Cross-Cultural Biomedical Collaboration for Global Health Challenges
BMEG 4220Wearable Biomedical Devices and Personalized Healthcare
BMEG 4320AI & Imaging for Biomedical Engineering
Not for students who have taken ESTR4200.Prerequisite: BMEG3320 or with the consent of the instructor.
ESTR 4200AI & Imaging for Biomedical Engineering
Not for students who have taken BMEG4320.Pre-requisite: BMEG3320 or with the consent of the course instructor.
BMEG 4410BioMEMS
Not for students who have taken ESTR4203.
ESTR 4203BioMEMS
Not for students who have taken BMEG4410.
BMEG 4450Bionanotechnology
Not for students who have taken BMEG5760 or ESTR4202.
ESTR 4202Bionanotechnology
Not for students who have taken BMEG4450.
BMEG 4510Biomolecular Engineering
Not for students who have taken ESTR4204.Pre-requisite: SBMS1440 or with the consent of the course instructor.
ESTR 4204Biomolecular Engineering
Not for students who have taken BMEG4510.Pre-requisite: SBMS1440 or with the consent of the course instructor.
BMEG 4520Cardiovascular Engineering
BMEG 4530Musculoskeletal Tissue Engineering
Prerequisite: BMEG3430 or with the consent of the instructor.Not for students who have taken BMEG5880 or ESTR4214.
ESTR 4214Musculoskeletal Tissue Engineering
Not for students who have taken BMEG4530 or BMEG5880.Pre-requisite: BMEG3430 or with the consent of the instructor.
BMEG 5530Tissue Engineering
For students in MSc Biomedical Engineering; or For students in MSc Biochemistry & Biomedical Science; or For students in MPhil-PhD Biomedical Engineering.
BMEG 5610Research Methods in Biomedical Engineering
For students in MPhil-PhD Biomedical Engineering; or For students in MSc Biomedical Engineering; or For students in BEng Biomedical Engineering.
CMBI 4101 [1]Cancer Cell Biology
Pre-requisite: BIOL2120.
CMBI 4102 [1]Stem Cell Biology
Pre-requisite: BIOL2120.
CMBI 4103 [1]Neuronal Cell Biology
Pre-requisite: BIOL2120.
ELEG 3201Microelectronic Devices and Circuits
Not for students who have taken ESTR3200;Prerequisite: ELEG2202 or BMEG2300 or with the consent of the instructor.
ESTR 3200Microelectronic Devices and Circuits
Not for students who have taken ELEG3201.Pre-requisite: ELEG2202 or BMEG2300 or with the consent of the instructor.
MAEG 5080Smart Materials and Structures
For students in MPhil-PhD Mechanical and Automation Engineering; or For students in MSc Mechanical and Automation Engineering; or For students in UG Mechanical and Automation Engineering;Not for students who have taken MAEG5760.
MBTE 4320Genetic Engineering

CSCI Coursesmax. 3 units

Students may take a maximum of 3 units of CSCI courses at 1000 or above level.

Show 78 courses
CourseTitleTerm 1Term 2Enrolment information
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 1120Introduction 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 1130Introduction 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 1510Computer 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 1520Computer 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 1530Computer 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 1540Fundamental 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 1550Computer 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 1580Visual 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 2100Data 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 2510Computer 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 2520Data 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 2720Building 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 2730Introduction 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 2740Competitive Programming
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CSCI 2750Data Mining and Information Processing
Prerequisite: (ENGG1110 or ESTR1002) and (ENGG1120 or ESTR1005) Not for students who have taken CSCI3230 or ESTR3108 or CSCI3320.
CSCI 3100Software 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 3120Compiler Construction
CSCI 3130Formal Languages and Automata Theory
Pre-requisite: CSCI2110 or ENGG2440 or ESTR2004 or MIEG2440.
CSCI 3150Introduction 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 3160Design 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 3170Introduction to Database Systems
Prerequisite: CSCI2100 or 2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived.
CSCI 3180Principles 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 3190Introduction 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 3220Algorithms for Bioinformatics
Not for students who have taken BMEG3102 or ESTR3110.
CSCI 3230Fundamentals 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 3260Principles 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 3280Introduction to Multimedia Systems
CSCI 3290Computational Imaging and Vision
Prerequisite: CSCI2100 or ESTR2102.
CSCI 3310Mobile Computing and Applications Development
Pre-requisite: CSCI2100 or 2520 or ESTR2102.Not for students who have taken IERG3842.
CSCI 3320Fundamentals 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 3330Fundamentals of Applied Computer Vision
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CSCI 3340Scientific 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 3350Introduction to Quantum Computing
Prerequisite: (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018).
CSCI 3360Introduction to Computational Complexity
Prerequisite: ENGG2760 or ESTR2018 or ESTR2308 or IERG2470.
CSCI 4120Principles of Computer Game Software
1. Prerequisite: CSCI2100 or 2520 or ESTR2102;2. Prerequisite/Corequisite: CSCI3260 or 3550.
CSCI 4130Introduction to Cyber Security
Not for students who have taken ESTR4306 or IEMS5710 or IERG4130.
CSCI 4140Open-source Software Project Development
Prerequisite: CSCI2100 or 2520 or ESTR2102.
CSCI 4160Distributed and Parallel Computing
Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104.
CSCI 4180Introduction to Cloud Computing and Storage
Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106.
CSCI 4190Introduction to Social Networks
Pre-requisite: CSCI2100 or 2520 or ESTR2102.
CSCI 4200Operating System Engineering
Pre-requisite: CSCI3150 or ESTR3102.
CSCI 4230Computational 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 4240Advanced Algorithms: Randomization and Approximation
Pre-requisite: (ENGG2760 or ESTR2018) and (ENGG1120 or ESTR1005) Co-requisite: CSCI3160.
CSCI 4430Data Communication and Computer Networks
1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310.
CSCI 4998Final Year Project I
CSCI 4999Final Year Project II
Pre-requisite: CSCI4998.
CSCI 5010Practical 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 5030Machine 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 5120Advanced 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 5150Machine 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 5210Advanced 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 5350Advanced 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 5370Quantum 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 5390Advanced 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 5440Theory 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 5540Machine 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 5550Advanced 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 5600Advanced 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 5610Advanced Data Structures
For students in MSc Computer Science or Mphil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering.
CSCI 5630Advanced 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 5640Natural 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 5650Graph 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 5660Advanced 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 5670Computational 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 5680Advanced 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 5690Automated 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 5700Advanced 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 8003Thesis 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.

Streams18 units

Students may choose not to specialize in any stream or to specialize in one of the three streams and complete a minimum of 12 units of courses, at most one elective at 2000 or below level, plus BMEG4998 and 4999[f], prescribed by the stream.

Medical Instrumentation and Biosensors18 units

(a)Elective Courses12 units

BMEG3103, 3130, BMEG3210/ESTR3212, BMEG3330/ESTR3602, BMEG3420, 3440, 4220, BMEG4410/ESTR4203, BMEG4450/ESTR4202, BMEG4520, ELEG3201/ESTR3200, CSCI courses[g]

Show 16 courses
CourseTitleTerm 1Term 2Enrolment information
BMEG 3103Big Data in HealthCare
BMEG 3130Tele-medicine and Mobile Healthcare
BMEG 3210Biofluids
Not for students who have taken MAEG3030 or ESTR3212.
ESTR 3212Biofluids
Not for students who have taken MAEG3030 or BMEG3210.
BMEG 3330Neuroengineering
Not for students who have taken ESTR3602.
ESTR 3602Neuroengineering
Not for students who have taken BMEG3330.
BMEG 3420Medical Robotics
BMEG 3440Global Engineering Medical Innovation
BMEG 4220Wearable Biomedical Devices and Personalized Healthcare
BMEG 4410BioMEMS
Not for students who have taken ESTR4203.
ESTR 4203BioMEMS
Not for students who have taken BMEG4410.
BMEG 4450Bionanotechnology
Not for students who have taken BMEG5760 or ESTR4202.
ESTR 4202Bionanotechnology
Not for students who have taken BMEG4450.
BMEG 4520Cardiovascular Engineering
ELEG 3201Microelectronic Devices and Circuits
Not for students who have taken ESTR3200;Prerequisite: ELEG2202 or BMEG2300 or with the consent of the instructor.
ESTR 3200Microelectronic Devices and Circuits
Not for students who have taken ELEG3201.Pre-requisite: ELEG2202 or BMEG2300 or with the consent of the instructor.

CSCI Coursesmax. 3 units

Students may take a maximum of 3 units of CSCI courses at 1000 or above level.

Show 78 courses
CourseTitleTerm 1Term 2Enrolment information
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 1120Introduction 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 1130Introduction 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 1510Computer 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 1520Computer 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 1530Computer 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 1540Fundamental 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 1550Computer 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 1580Visual 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 2100Data 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 2510Computer 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 2520Data 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 2720Building 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 2730Introduction 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 2740Competitive Programming
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CSCI 2750Data Mining and Information Processing
Prerequisite: (ENGG1110 or ESTR1002) and (ENGG1120 or ESTR1005) Not for students who have taken CSCI3230 or ESTR3108 or CSCI3320.
CSCI 3100Software 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 3120Compiler Construction
CSCI 3130Formal Languages and Automata Theory
Pre-requisite: CSCI2110 or ENGG2440 or ESTR2004 or MIEG2440.
CSCI 3150Introduction 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 3160Design 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 3170Introduction to Database Systems
Prerequisite: CSCI2100 or 2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived.
CSCI 3180Principles 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 3190Introduction 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 3220Algorithms for Bioinformatics
Not for students who have taken BMEG3102 or ESTR3110.
CSCI 3230Fundamentals 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 3260Principles 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 3280Introduction to Multimedia Systems
CSCI 3290Computational Imaging and Vision
Prerequisite: CSCI2100 or ESTR2102.
CSCI 3310Mobile Computing and Applications Development
Pre-requisite: CSCI2100 or 2520 or ESTR2102.Not for students who have taken IERG3842.
CSCI 3320Fundamentals 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 3330Fundamentals of Applied Computer Vision
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CSCI 3340Scientific 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 3350Introduction to Quantum Computing
Prerequisite: (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018).
CSCI 3360Introduction to Computational Complexity
Prerequisite: ENGG2760 or ESTR2018 or ESTR2308 or IERG2470.
CSCI 4120Principles of Computer Game Software
1. Prerequisite: CSCI2100 or 2520 or ESTR2102;2. Prerequisite/Corequisite: CSCI3260 or 3550.
CSCI 4130Introduction to Cyber Security
Not for students who have taken ESTR4306 or IEMS5710 or IERG4130.
CSCI 4140Open-source Software Project Development
Prerequisite: CSCI2100 or 2520 or ESTR2102.
CSCI 4160Distributed and Parallel Computing
Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104.
CSCI 4180Introduction to Cloud Computing and Storage
Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106.
CSCI 4190Introduction to Social Networks
Pre-requisite: CSCI2100 or 2520 or ESTR2102.
CSCI 4200Operating System Engineering
Pre-requisite: CSCI3150 or ESTR3102.
CSCI 4230Computational 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 4240Advanced Algorithms: Randomization and Approximation
Pre-requisite: (ENGG2760 or ESTR2018) and (ENGG1120 or ESTR1005) Co-requisite: CSCI3160.
CSCI 4430Data Communication and Computer Networks
1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310.
CSCI 4998Final Year Project I
CSCI 4999Final Year Project II
Pre-requisite: CSCI4998.
CSCI 5010Practical 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 5030Machine 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 5120Advanced 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 5150Machine 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 5210Advanced 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 5350Advanced 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 5370Quantum 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 5390Advanced 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 5440Theory 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 5540Machine 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 5550Advanced 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 5600Advanced 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 5610Advanced Data Structures
For students in MSc Computer Science or Mphil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering.
CSCI 5630Advanced 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 5640Natural 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 5650Graph 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 5660Advanced 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 5670Computational 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 5680Advanced 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 5690Automated 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 5700Advanced 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 8003Thesis 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)

BMEG4998 and 4999[f] in an approved topic relevant to the Stream

Show 2 courses
CourseTitleTerm 1Term 2Enrolment information
BMEG 4998Final Year Project I
BMEG 4999Final Year Project II
Pre-requisite: BMEG4998.

Biomedical Imaging, Informatics and Modeling18 units

(a)Elective Courses12 units

BMEG3102, 3103, BMEG3105/ESTR3605, BMEG3440, 4220, BMEG4320/ESTR4200, BMEG4520, CSCI courses[g]

Show 9 courses
CourseTitleTerm 1Term 2Enrolment information
BMEG 3102Bioinformatics
Not for students who have taken ELEG4120 or CSCI3220 or ESTR3110.
BMEG 3103Big Data in HealthCare
BMEG 3105Data Analytics for Personalized Genomics and Precision Medicine
Not for students who have taken ESTR3605.
ESTR 3605Data Analytics for Personalized Genomics and Precision Medicine
Not for students who have taken BMEG3105.
BMEG 3440Global Engineering Medical Innovation
BMEG 4220Wearable Biomedical Devices and Personalized Healthcare
BMEG 4320AI & Imaging for Biomedical Engineering
Not for students who have taken ESTR4200.Prerequisite: BMEG3320 or with the consent of the instructor.
ESTR 4200AI & Imaging for Biomedical Engineering
Not for students who have taken BMEG4320.Pre-requisite: BMEG3320 or with the consent of the course instructor.
BMEG 4520Cardiovascular Engineering

CSCI Coursesmax. 3 units

Students may take a maximum of 3 units of CSCI courses at 1000 or above level.

Show 78 courses
CourseTitleTerm 1Term 2Enrolment information
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 1120Introduction 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 1130Introduction 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 1510Computer 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 1520Computer 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 1530Computer 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 1540Fundamental 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 1550Computer 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 1580Visual 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 2100Data 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 2510Computer 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 2520Data 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 2720Building 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 2730Introduction 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 2740Competitive Programming
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CSCI 2750Data Mining and Information Processing
Prerequisite: (ENGG1110 or ESTR1002) and (ENGG1120 or ESTR1005) Not for students who have taken CSCI3230 or ESTR3108 or CSCI3320.
CSCI 3100Software 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 3120Compiler Construction
CSCI 3130Formal Languages and Automata Theory
Pre-requisite: CSCI2110 or ENGG2440 or ESTR2004 or MIEG2440.
CSCI 3150Introduction 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 3160Design 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 3170Introduction to Database Systems
Prerequisite: CSCI2100 or 2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived.
CSCI 3180Principles 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 3190Introduction 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 3220Algorithms for Bioinformatics
Not for students who have taken BMEG3102 or ESTR3110.
CSCI 3230Fundamentals 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 3260Principles 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 3280Introduction to Multimedia Systems
CSCI 3290Computational Imaging and Vision
Prerequisite: CSCI2100 or ESTR2102.
CSCI 3310Mobile Computing and Applications Development
Pre-requisite: CSCI2100 or 2520 or ESTR2102.Not for students who have taken IERG3842.
CSCI 3320Fundamentals 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 3330Fundamentals of Applied Computer Vision
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CSCI 3340Scientific 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 3350Introduction to Quantum Computing
Prerequisite: (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018).
CSCI 3360Introduction to Computational Complexity
Prerequisite: ENGG2760 or ESTR2018 or ESTR2308 or IERG2470.
CSCI 4120Principles of Computer Game Software
1. Prerequisite: CSCI2100 or 2520 or ESTR2102;2. Prerequisite/Corequisite: CSCI3260 or 3550.
CSCI 4130Introduction to Cyber Security
Not for students who have taken ESTR4306 or IEMS5710 or IERG4130.
CSCI 4140Open-source Software Project Development
Prerequisite: CSCI2100 or 2520 or ESTR2102.
CSCI 4160Distributed and Parallel Computing
Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104.
CSCI 4180Introduction to Cloud Computing and Storage
Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106.
CSCI 4190Introduction to Social Networks
Pre-requisite: CSCI2100 or 2520 or ESTR2102.
CSCI 4200Operating System Engineering
Pre-requisite: CSCI3150 or ESTR3102.
CSCI 4230Computational 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 4240Advanced Algorithms: Randomization and Approximation
Pre-requisite: (ENGG2760 or ESTR2018) and (ENGG1120 or ESTR1005) Co-requisite: CSCI3160.
CSCI 4430Data Communication and Computer Networks
1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310.
CSCI 4998Final Year Project I
CSCI 4999Final Year Project II
Pre-requisite: CSCI4998.
CSCI 5010Practical 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 5030Machine 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 5120Advanced 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 5150Machine 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 5210Advanced 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 5350Advanced 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 5370Quantum 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 5390Advanced 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 5440Theory 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 5540Machine 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 5550Advanced 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 5600Advanced 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 5610Advanced Data Structures
For students in MSc Computer Science or Mphil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering.
CSCI 5630Advanced 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 5640Natural 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 5650Graph 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 5660Advanced 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 5670Computational 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 5680Advanced 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 5690Automated 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 5700Advanced 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 8003Thesis 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)

BMEG4998 and 4999[f] in an approved topic relevant to the Stream

Show 2 courses
CourseTitleTerm 1Term 2Enrolment information
BMEG 4998Final Year Project I
BMEG 4999Final Year Project II
Pre-requisite: BMEG4998.

Molecular, Cell and Tissue Engineering18 units

(a)Elective Courses12 units

BMEG3105/ESTR3605, BMEG3140/ESTR3604, BMEG3210/ESTR3212, BMEG3440, BMEG4410/ESTR4203, BMEG4450/ESTR4202, BMEG4510/ESTR4204, BMEG4520, BMEG4530/ESTR4214, MBTE4320, CSCI courses[g]

Show 17 courses
CourseTitleTerm 1Term 2Enrolment information
BMEG 3105Data Analytics for Personalized Genomics and Precision Medicine
Not for students who have taken ESTR3605.
ESTR 3605Data Analytics for Personalized Genomics and Precision Medicine
Not for students who have taken BMEG3105.
BMEG 3140Molecular and Cellular Engineering Laboratory
Not for students who have taken ESTR3604.
ESTR 3604Molecular and Cellular Engineering Laboratory
Not for students who have taken BMEG3140.
BMEG 3210Biofluids
Not for students who have taken MAEG3030 or ESTR3212.
ESTR 3212Biofluids
Not for students who have taken MAEG3030 or BMEG3210.
BMEG 3440Global Engineering Medical Innovation
BMEG 4410BioMEMS
Not for students who have taken ESTR4203.
ESTR 4203BioMEMS
Not for students who have taken BMEG4410.
BMEG 4450Bionanotechnology
Not for students who have taken BMEG5760 or ESTR4202.
ESTR 4202Bionanotechnology
Not for students who have taken BMEG4450.
BMEG 4510Biomolecular Engineering
Not for students who have taken ESTR4204.Pre-requisite: SBMS1440 or with the consent of the course instructor.
ESTR 4204Biomolecular Engineering
Not for students who have taken BMEG4510.Pre-requisite: SBMS1440 or with the consent of the course instructor.
BMEG 4520Cardiovascular Engineering
BMEG 4530Musculoskeletal Tissue Engineering
Prerequisite: BMEG3430 or with the consent of the instructor.Not for students who have taken BMEG5880 or ESTR4214.
ESTR 4214Musculoskeletal Tissue Engineering
Not for students who have taken BMEG4530 or BMEG5880.Pre-requisite: BMEG3430 or with the consent of the instructor.
MBTE 4320Genetic Engineering

CSCI Coursesmax. 3 units

Students may take a maximum of 3 units of CSCI courses at 1000 or above level.

Show 78 courses
CourseTitleTerm 1Term 2Enrolment information
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 1120Introduction 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 1130Introduction 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 1510Computer 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 1520Computer 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 1530Computer 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 1540Fundamental 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 1550Computer 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 1580Visual 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 2100Data 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 2510Computer 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 2520Data 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 2720Building 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 2730Introduction 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 2740Competitive Programming
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CSCI 2750Data Mining and Information Processing
Prerequisite: (ENGG1110 or ESTR1002) and (ENGG1120 or ESTR1005) Not for students who have taken CSCI3230 or ESTR3108 or CSCI3320.
CSCI 3100Software 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 3120Compiler Construction
CSCI 3130Formal Languages and Automata Theory
Pre-requisite: CSCI2110 or ENGG2440 or ESTR2004 or MIEG2440.
CSCI 3150Introduction 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 3160Design 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 3170Introduction to Database Systems
Prerequisite: CSCI2100 or 2520 or ESTR2102.For 2nd-year entrants, the prerequisite will be waived.
CSCI 3180Principles 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 3190Introduction 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 3220Algorithms for Bioinformatics
Not for students who have taken BMEG3102 or ESTR3110.
CSCI 3230Fundamentals 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 3260Principles 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 3280Introduction to Multimedia Systems
CSCI 3290Computational Imaging and Vision
Prerequisite: CSCI2100 or ESTR2102.
CSCI 3310Mobile Computing and Applications Development
Pre-requisite: CSCI2100 or 2520 or ESTR2102.Not for students who have taken IERG3842.
CSCI 3320Fundamentals 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 3330Fundamentals of Applied Computer Vision
Prerequisite: CSCI2100 or CSCI2520 or ESTR2102.
CSCI 3340Scientific 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 3350Introduction to Quantum Computing
Prerequisite: (ENGG1120 or ESTR1005) AND (ENGG2760 or ESTR2018).
CSCI 3360Introduction to Computational Complexity
Prerequisite: ENGG2760 or ESTR2018 or ESTR2308 or IERG2470.
CSCI 4120Principles of Computer Game Software
1. Prerequisite: CSCI2100 or 2520 or ESTR2102;2. Prerequisite/Corequisite: CSCI3260 or 3550.
CSCI 4130Introduction to Cyber Security
Not for students who have taken ESTR4306 or IEMS5710 or IERG4130.
CSCI 4140Open-source Software Project Development
Prerequisite: CSCI2100 or 2520 or ESTR2102.
CSCI 4160Distributed and Parallel Computing
Prerequisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4104.
CSCI 4180Introduction to Cloud Computing and Storage
Co-requisite: CSCI3150 or ESTR3102.Not for students who have taken ESTR4106.
CSCI 4190Introduction to Social Networks
Pre-requisite: CSCI2100 or 2520 or ESTR2102.
CSCI 4200Operating System Engineering
Pre-requisite: CSCI3150 or ESTR3102.
CSCI 4230Computational 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 4240Advanced Algorithms: Randomization and Approximation
Pre-requisite: (ENGG2760 or ESTR2018) and (ENGG1120 or ESTR1005) Co-requisite: CSCI3160.
CSCI 4430Data Communication and Computer Networks
1. Prerequisite: CENG3150 or CSCI3150 or ESTR3102.2. Not for students who have taken ESTR3310 or ESTR4120 or IERG3310.
CSCI 4998Final Year Project I
CSCI 4999Final Year Project II
Pre-requisite: CSCI4998.
CSCI 5010Practical 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 5030Machine 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 5120Advanced 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 5150Machine 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 5210Advanced 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 5350Advanced 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 5370Quantum 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 5390Advanced 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 5440Theory 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 5540Machine 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 5550Advanced 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 5600Advanced 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 5610Advanced Data Structures
For students in MSc Computer Science or Mphil - PhD Computer Science & Engineering or UG Computer Science or UG Computer Engineering.
CSCI 5630Advanced 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 5640Natural 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 5650Graph 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 5660Advanced 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 5670Computational 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 5680Advanced 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 5690Automated 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 5700Advanced 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 8003Thesis 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)

BMEG4998 and 4999[f] in an approved topic relevant to the Stream

Show 2 courses
CourseTitleTerm 1Term 2Enrolment information
BMEG 4998Final Year Project I
BMEG 4999Final Year Project II
Pre-requisite: BMEG4998.

Explanatory Notes

1.CMBI4101, 4102, 4103, MAEG5080, MBTE4320, STAT3210, BMEG/CSCI/ELEG/ENGG courses at 2000 and above level as included in the Major Programme Requirement, ESTR2104, 2300, 4300, ESTR4998/4999 and ESTR courses of which the reciprocal departmental courses are BMEG or ELEG courses will be included in the calculation of Major GPA for honours classification, excluding courses in Faculty Package and Foundation courses.
2.Results of the graduation project as prescribed by BMEG4999/ESTR4999 will be included in the calculation for honours classification.
3.Students satisfying all the requirements of a stream (except the ELITE Stream, which will be officially recorded on the academic transcript) will be given a certifying letter. For details, please refer to the Programme for information.
[a]i) JUPAS admittees without HKDSE Mathematics Extended Modules I or II are required to take ENGG1040 before they can take ENGG1125.ii) JUPAS admittees with the following HKDSE results do not need to take ENGG1040 and therefore will not be invited for the Mathematics Placement Test: - Level 5** in Mathematics Extended Module I; or - Level 5* or above in Mathematics Extended Module II.iii) Non-JUPAS admittees with the following public examination results do not need to take ENGG1040 and therefore will not be invited for the Mathematics Placement Test: - Grade 6 or above in IB Mathematics Analysis and Approaches (HL); or - Grade 7 in IB Mathematics Applications and Interpretation (HL); or - Grade A* in GCE-AL Further Mathematics.iv) Other admittees except those specified above, are required to attend a Mathematics Placement Test. Students who fail or are absent from the Placement Test will be required to take ENGG1040 before they can take ENGG1125.
[b]i) ii) iii) Students who have attained Level 4 or above in HKDSE Mathematics (Compulsory Part) AND Level 4 or above in Physics or Level 5 or above in Combined Science with Physics Component shall take PHYS1110. Students with HKDSE results but did not attain the academic levels as stated in (i) shall take PHYS1003 in advance. PHYS1003 will be counted as a free elective but cannot be used to fulfill the Foundation course requirements. Students without HKDSE results shall sit for the placement test arranged by the Department of Physics. Students who pass the placement test shall take PHYS1110. Students who fail or are absent from the placement test shall take PHYS1003 in advance. PHYS1003 will be counted as a free elective but cannot be used to fulfill the Foundation course requirements.
[c]Students are strongly advised to take any one course from CHEM1280 or 1380 if they have not attained Level 3 or above in HKDSE Chemistry, or other equivalent qualifications.[d] [e] Students are strongly advised to take either LSCI1001 or 1002 if they have not attained Level 3 or above in HKDSE Biology, or other equivalent qualifications. LSCI1001 is only for students who have not taken science courses with Biology component in HKDSE. Students who fail ENGG1125 in Term 1 will have to retake the course in Term 2. The pre-assigned ENGG1130 in Term 2, will therefore be dropped.
[f]Students who have declared to specialize in the ELITE Stream will be required to complete 6 units of ESTR4998 and 4999 to substitute for BMEG4998 and 4999.
[g]Students are allowed to take a maximum of 3 units of CSCI course(s) at 1000 or above level.
[h]Details of the entrance and coursework requirements, and declaration procedures for the ELITE Stream can be found at the ELITE website (www.erg.cuhk.edu.hk/erg/elite). Non-ELITE Engineering students may be allowed to take ESTR courses. Students are required to seek approval from their respective Major Programmes for using ESTR courses taken to fulfill the Major Programme Requirement. Details are available at the ELITE website.
[i]Students can use up to 9 units of courses taken to fulfill the requirements of items 1 to 4 above to fulfill the elective requirements of the ELITE Stream. Item 3(b) Research Component Courses will not be included in these 9 units. A full list of ESTR courses is available at the ELITE website.
[j]Students can use AIST/BMEG/CENG/CSCI/EEEN/ELEG/ENGG/IERG/MAEG/ SEEM research postgraduate courses at 5000 level to substitute for ESTR courses at 3000 or 4000 level, subject to the approval of the Stream Director and the Associate Dean (Education).
[k]The requirement of at least 3 units of Engineering courses at 5000 level is a requirement for the ELITE Stream only. It should not be interpreted as a requirement of the Major Programme.