Teaching

Experience

Courses

CSE 1108: Introduction to Computer System Conducted in Fall 2022
Syllabus: Types of Computers; Basic principles of analog and digital computation; Brief history of digital computers; Importance of computers & their impact on Society; Application areas. Number systems, conversion of one system to another, complementation of numbers and arithmetic operations, ASCII code representation of data. Bits, Bytes, Words and memory capacity measurement. Generations of digital computer hardware and software; Types of digital computers; Functional units of a typical digital computer; I/O devices & peripherals: Printers, Monitors, Mouse, Joysticks, VDU, Modems, Optical & magnetic document readers. Main memory systems: types of ROMs and RAMs. Backing memory systems: Moveable devices and hard disks, CDROMs and Flash memory devices. Processing units and bus systems. Types of software: Systems software and application software. Operating systems: Objectives and functions, introduction to DOS, Windows and Unix. Computer Security: Objectives, various security issues. Introduction to Internet and World Wide Web. Experiments based on DOS, Windows, Unix, Word processing and Spreadsheet packages.
CSE 1206: Object-Oriented Programming Lab Conducted in Fall 2021 | Spring 2022
Syllabus: Laboratory works based on Principles of Object-Oriented Programming (OOP); Concepts and Techniques of OOP: Classes and Objects, Methods, Constructors and destructors, Encapsulation and object reference, Polymorphism, Array of objects; Class hierarchy: Creating class hierarchy, Member access and inheritance, Overloading and overriding; OOP facilities for extensive and robust program design.
CSE 1287: Computer Programming Conducted in Spring 2021
Syllabus: Introduction to the Digital Computer; Introduction to Programming Variables, Assignment; Expressions; Input/Output; Conditionals and Branching; Iteration; Functions; Recursion; Arrays; Introduction to Pointers; Structures; Introduction to Data-Procedure Encapsulation; Dynamic allocation; Linked structures; Introduction to Data Structure, Stacks and Queues; Search Trees; Time and space requirements. (A programming language like C/C++ may be used as a basis language. The same language must be used for the laboratory.)
CSE 1288: Computer Programming Lab Conducted in Spring 2021
Syllabus: Laboratory works based on CSE 1287.
CSE 2208: Algorithms Lab Conducted in Fall 2020 | Fall 2021
Syllabus: Laboratory works based on Algorithmic Complexity Analysis; Methods for the design of efficient algorithms: Divide and Conquer, Greedy method, Dynamic programming, Backtracking, Branch and Bound, Polynomial evaluation, Lower bound theory, Intractable problems.
CSE 4214: Pattern Recognition Lab Conducted in Fall 2020 | Spring 2021
Syllabus: Introduction: Object similarity measures, feature selection and pattern discovery in data; Types of object classification and machine learning. Object recognition and learning methods: Regression analysis; Bayesian classifiers and probabilistic decision models; Neural networks and deep learning algorithms; Decision trees and random forests; Support vector machines; Sequential pattern recognition; Reinforcement learning; Cluster analysis. Applications of pattern recognition and machine learning methods.
CSE 4237: Soft Computing Conducted in Fall 2021 | Spring 2022 | Fall 2022
Syllabus: Aims and constituents of soft computing. Fuzzy sets and logic: Concepts and properties of fuzzy sets; Mathematical & logical implications of fuzzy sets; Fuzzy relations; Applications of fuzzy sets in information processing, decision making and control systems. Artificial neural networks: Underlying ideas and concepts of artificial neural networks; Feed-Forward, Recurrent and other types of artificial neural networks. Probabilistic reasoning: Bayesian inference models and Bayesian networks; Dempster – Shafer theory; Probabilistic decision support systems. Genetic algorithms: Underlying principles and fundamental operators of genetic algorithms; Searching based on genetic algorithms; Genetic algorithm based optimization, learning and control. Introduction to various neuro-fuzzy-probabilistic- genetic combined approaches to computing applications.
CSE 4238: Soft Computing Lab Conducted in Spring 2022
Syllabus: Laboratory works based on CSE 4237.
CSE 2214: Assembly Language Programming Conducted in Spring 2020
Syllabus: System Architecture for Assembly language; Assembly programming basics; Assembly instruction types and their formats: Arithmetic, Logical, Transfer control and conditional processing, String processing, Input/Output; Interrupts; Procedures; Interfacing using Assembly language.