Teaching Courses

CS623: Multimedia Surveillance Systems, Semester I, 2023-24

Instructor

Objective of the course is to give an overview of is to give an overview of statistical and machine learning based ANOMALY DETECTION techniques used for automatic surveillance using multimedia data. The course is designed to provide hands-on experience of the techniques with real-world data.

CS550: Research Methodologies in Computer Science, Semester II, 2021-22

Instructor

It is a discussion oriented course. Every week we choose one topic and discuss various approaches related to that topic. The topics are mostly related to different components of a research paper, such as paper layout, paper writiting, flow, literature review, gap analysis, experiment design, result analysis, paper presentation, etc.

CS546: Introduction to Agriculture Cyber Physical Systems, Semester II, 2021-22

Instructor

This year's course offering will be mostly data analysis and modelling oriented. It will mainly cover basic agriculture data analysis techniques, AI/ML for object detection recognition in agriculture data, segmentation of farm/crop/leaf images, predictive models, crop-yield prediction, finding anomaly in agriculture data, time-series data analysis, remote sensing, hardware platforms/boards, proximal sensing communication technologies for agriculture CPS.

CS507: Multimedia Systems, Semester I, 2021-22

Instructor

This course lays the foundation for students to build multimedia systems. Multimedia systems involve automated analysis and fusion of multiple types of data such as text, images, video, audio, and various sensors. The course covers state-of-the-art tools and techniques for multimedia content processing, compression, fusion, summarization, search and retrieval applicable to different areas such as social media, homeland surveillance and privacy. The objective of this course is to prepare students to develop systems using multi-source information commonly and readily available in the form of Big Data in Internet of Things and Smart Cities paradigms.

CS546: Introduction to Agriculture Cyber Physical Systems, Semester II, 2020-21

Instructor

The main objective of this course is to introduce the cyber physical system applications in the field of agriculture, including sensing, analysis, and control with the following contents. Introduction to crop life cycle, precision agriculture, and CPS, Proximal sensing, Proximal sensing applications, No-contact proximal sensing and applications, Remote sensing and applications, Communication technologies, Global Navigation Satellite System, Agriculture robots, Autonomous vehicles, Robot applications in sowing and harvesting, AI/ML for pest identification, AI/ML for weed identification, Agriculture information system - applications, Case studies.

GE103: Introduction to Computing and Data Structures, Semester II, 2020-21

Instructor

Introduction to computers programming; variable declaration, operators, assignments; if-then-else, while, do-while, for loop; arrays of basic data types; function calls, call by value, call by reference, recursion; pointers, multidimensional arrays, strings and text processing; structures, pointers to structures, file i/p and o/p; computer architecture, machine language and compilers, program verification, brief overview of other programming languages, object-oriented programming, etc.

CS623: Multimedia Surveillance Systems, Semester II, 2019-20

Instructor

Objective of the course is to give an overview of is to give an overview of statistical and machine learning techniques used for automatic surveillance with multimedia data. This course is designed to provide hands-on experience of the techniques with real-world data.

CS507: Multimedia Systems, Semester I, 2019-20

Instructor

This course lays the foundation for students to build multimedia systems. Multimedia systems involve automated analysis and fusion of multiple types of data such as text, images, video, audio, social networks, and various sensors. The course covers state-of-the-art tools and techniques for multimedia content processing, compression, networking, fusion, summarization, search and retrieval applicable to different areas such as social media, homeland surveillance and privacy. The objective of this course is to prepare students to develop systems using multi-source information commonly and readily available in the form of Big Data in Internet of Things and Smart Cities paradigms.

GE103: Introduction to Computing and Data Structures, Semester II, 2018-19

Instructor

Introduction to computers programming; variable declaration, operators, assignments; if-then-else, while, do-while, for loop; arrays of basic data types; function calls, call by value, call by reference, recursion; pointers, multidimensional arrays, strings and text processing; structures, pointers to structures, file i/p and o/p; computer architecture, machine language and compilers, program verification, brief overview of other programming languages, object-oriented programming, etc.

CSL201: Data Structures, Semester I, 2018-19

Instructor

Revision of notions of time and space complexity, and trade-offs in the design of data structures. Introduction to object-oriented programming through stacks, queues and linked lists. Dictionaries; skip-lists, hashing, analysis of collision resolution techniques. Trees, traversals, binary search trees. Balanced BSTs, tries, priority queues and binary heaps. Object oriented implementation and building libraries. Applications to discrete event simulation. Sorting: merge, quick, radix, selection and heap sort, Graphs: Breadth first search and connected components. Depth first search in directed and undirected graphs. Union-find data structure and applications. Directed acyclic graphs; topological sort.

CSL607: Multimedia Systems, Semester II, 2017-18

Instructor

This course lays the foundation for students to build multimedia systems. Multimedia systems involve automated analysis and fusion of multiple types of data such as text, images, video, audio, social networks, and various sensors. The course covers state-of-the-art tools and techniques for multimedia content processing, compression, networking, fusion, summarization, search and retrieval applicable to different areas such as social media, homeland surveillance and privacy. The objective of this course is to prepare students to develop systems using multi-source information commonly and readily available in the form of Big Data in Internet of Things and Smart Cities paradigms.

CSP203: Software Systems Laboratory, Semester II, 2017-18

Instructor

Programming exercises and projects using software tools. IDEs, spreadsheets, configuration management, make, version control, documentation tools, literate programming (noweb); scientific document type-setting software (LaTeX), XML, scripting languages and tools (Perl, awk, etc.). Botting systems, and installation and compression tools. Archiving and creation of libraries. Security and encryption software. Application software development tools. Simulation tools, Sockets and RPCs, Pthreads. Numerical packages. Using query languages and data bases. Validation, testing and verification tools and techniques.

CSL201: Data Structures, Semester I, 2017-18

Instructor

Revision of notions of time and space complexity, and trade-offs in the design of data structures. Introduction to object-oriented programming through stacks, queues and linked lists. Dictionaries; skip-lists, hashing, analysis of collision resolution techniques. Trees, traversals, binary search trees. Balanced BSTs, tries, priority queues and binary heaps. Object oriented implementation and building libraries. Applications to discrete event simulation. Sorting: merge, quick, radix, selection and heap sort, Graphs: Breadth first search and connected components. Depth first search in directed and undirected graphs. Union-find data structure and applications. Directed acyclic graphs; topological sort.

CSL607: Multimedia Systems, Semester II, 2016-17

Instructor

This course lays the foundation for students to build multimedia systems. Multimedia systems involve automated analysis and fusion of multiple types of data such as text, images, video, audio, social networks, and various sensors. The course covers state-of-the-art tools and techniques for multimedia content processing, compression, networking, fusion, summarization, search and retrieval applicable to different areas such as social media, homeland surveillance and privacy. The objective of this course is to prepare students to develop systems using multi-source information commonly and readily available in the form of Big Data in Internet of Things and Smart Cities paradigms.

CSP203: Software Systems Laboratory, Semester II, 2016-17

Instructor

Programming exercises and projects using software tools. IDEs, spreadsheets, configuration management, make, version control, documentation tools, literate programming (noweb); scientific document type-setting software (LaTeX), XML, scripting languages and tools (Perl, awk, etc.). Botting systems, and installation and compression tools. Archiving and creation of libraries. Security and encryption software. Application software development tools. Simulation tools, Sockets and RPCs, Pthreads. Numerical packages. Using query languages and data bases. Validation, testing and verification tools and techniques.

CSL201: Data Structures, Semester I, 2016-17

Instructor

Revision of notions of time and space complexity, and trade-offs in the design of data structures. Introduction to object-oriented programming through stacks, queues and linked lists. Dictionaries; skip-lists, hashing, analysis of collision resolution techniques. Trees, traversals, binary search trees. Balanced BSTs, tries, priority queues and binary heaps. Object oriented implementation and building libraries. Applications to discrete event simulation. Sorting: merge, quick, radix, selection and heap sort, Graphs: Breadth first search and connected components. Depth first search in directed and undirected graphs. Union-find data structure and applications. Directed acyclic graphs; topological sort.

CS2106 (NUS): Operating Systems, Spring 2009

Teaching Assistant

Topics include kernel architecture, system calls, interrupts, models of processes, process abstraction and services, scheduling, review of physical memory and memory management hardware, kernel memory management, virtual memory and paging, caches, working set, deadlock, mutual exclusion, synchronization mechanisms, data and metadata in file systems, directories and structure, file system abstraction and operations..

CS3220 (NUS): Computer Architecture, Fall 2010

Teaching Assistant

Topics include Execution control and microprogramming, I/O interfaces, Cache, Virtual memory, Instruction pipelining, Superscaler processors, Interconnections, Multiprocessor systems, Vector processors, Cache coherence, Parallel programming, Stack, functional programming and dataflow architectures, Various Processor examples, weekly tutorials and consultation.

Others

Informal QE tuition to junior PhDs

ALgorithms, Networking, Databases, Programing Languages, Artificial Intelligence

Download CV

>