Computer Engineering

Technical Electives

For CEG AY2016/17 intake and prior

Students can opt to exclusively focus in one of the concentrations of Communications & Networking, Embedded Computing, Large-Scale Computing, Intelligent Systems, Interactive Digital Media and System-on-a-Chip Design by taking the electives in these concentrations.

The modules in each concentration are categorised as Breadth or Depth modules. A breadth module enables students to achieve a broad understanding of concepts in the particular concentration. Students may read breadth electives to achieve exposure to various facets of CEG. A depth module is a higher level module that provides greater depth and coverage in the particular concentration.

The rules are as follows:

AY2014/15 - AY2016/17 intakes: To achieve depth, CEG students need to read a minimum of two depth electives. All technical electives must add up to at least 12 MCs. Students are encouraged to take more technical electives (and count them towards fulfilling UEM).

These modules may come from any of the concentrations. While there is no necessity, students may opt to focus in a particular concentration. To do so, a student should read all three technical electives from the same concentration. Students will have to ensure that they have read the prerequisite module(s) of the depth modules. This may have an impact on the selection of breadth modules.

As an additional note, other 3000/4000 modules hosted by CS or ECE may be used to fulfill CEG Technical Elective (TE) requirements. Generally, a level 3000 module will count as CEG TE Breadth, while a level 4000 will count as CEG TE Depth.

To view a brief description of a module, please click on the links below. Alternatively, you can use the search engine at the NUS Bulletin page.

Communications & Networking

Breadth

CS2010 Data Structures & Algorithms II
CS2107 Introduction to Information Security
CS3103 Computer Networks Practice
CS3230 Design & Analysis of Algorithms
CS3235 Computer Security
EE3131C Communication Systems

Depth

CS4222 Wireless Networking
CS4226 Internet Architecture
CS4236 Cryptography Theory & Practice
CS4238 Computer Security Practice
EE4210 Network Protocols and Applications
EE5135 Digital Communications

Embedded Computing

Breadth

CS2010 Data Structures & Algorithms II
CS2107 Introduction to Information Security
CS2108 Introduction to Media Computing
CS3103 Computer Networks Practice
CS3211 Parallel and Concurrent Programming
CS3218 Multimodal Processing in Mobile Platforms
CS3230 Design & Analysis of Algorithms
CS3235 Computer Security

Depth

CS4222 Wireless Networking
CS4223 Multi-Core Architectures
CS4238 Computer Security Practice
EE4210 Network Protocols and Applications
EE4218 Embedded Hardware System Design
EE4415 Integrated Digital Design
EE4704 Introduction to Computer Vision and Image Processing
EE5903 Real-time Systems

Large-Scale Computing

Breadth

CS2010 Data Structures & Algorithms II
CS2102 Database Systems
CS2107 Introduction to Information Security
CS3210 Parallel Computing
CS3211 Parallel and Concurrent Programming
CS3230 Design & Analysis of Algorithms
CS3235 Computer Security

Depth

CS3223 Database Systems Implementation
CS4211 Formal methods for Software Engineering
CS4221 Database Applications Design and Tuning
CS4223 Multi-Core Architectures
CS4224 Distributed Databases
CS4231 Parallel & Distributed Algorithms
EE4210 Network Protocols and Applications
EE4218 Embedded Hardware System Design

Intelligent Systems

Breadth

CS2010 Data Structures & Algorithms II
CS3240 Interaction Design
CS3243 Introduction to Artificial Intelligence
CS3244 Machine Learning
EE3331C Feedback Control Systems
EE3731C Signal Processing Methods

Depth

CS4243 Computer Vision and Pattern Recognition
CS4244 Knowledge-Based Systems
CS4246 AI Planning and Decision Making
CS4248 Natural Language Processing
EE4212 Computer Vision
EE4305 Introduction to Fuzzy/Neural Systems
EE4307 Control Systems Design & Simulation
EE4308 Advances in Intelligent Systems and Robotics
EE4704 Introduction to Computer Vision and Image Processing
EE5101 Linear Systems
EE5907 Pattern Recognition

Interactive Digital Media

Breadth

CS2108 Introduction to Media Computing
CS3240 Interaction Design
CS3241 Computer Graphics
CS3242 3D Modeling and Animation
CS3247 Game Development
CS3249 User Interface Development
EE3731C Signal Processing Methods

Depth

CS4240 Interaction Design for Virtual and Augmented Reality
CS4243 Computer Vision and Pattern Recognition
CS4247 Graphics Rendering Techniques
CS4249 Phenomena and Theories of Human-Computer Interaction
CS4347 Sound and Music Computing
CS4351 Real-Time Graphics
EE4212 Computer Vision
EE4604 Biological Perception in Digital Media
EE4704 Introduction to Computer Vision and Image Processing
EE5907 Pattern Recognition

System-On-A-Chip Design

Breadth EE3408C Integrated Analog Design

Depth

CS4223 Multi-Core Architectures
EE4218 Embedded Hardware System Design
EE4407 Analog Electronics
EE4415 Integrated Digital Design
EE4505 Power Semiconductors Devices & ICs
EE5903 Real-time Systems


The following level 2000 modules may count as CEG TE Breadth: EE2011, EE2025, IE2110 and IE2130.

For the master-list of CEG Technical Electives with detailed information, please refer to:
http://www.ceg.nus.edu.sg/students/third_year.html (under ‘Academic Information/Useful Links’).