Courses Taught
CS670: Reinforcement Learning
This is a graduate level elective that introduces students to the basics of the reinforcement learning paradigm. The focus of the course is more on the pragmatic rather than on the technical details. The bulk of the credit is earned through programming assignments. The course is typically offered in the Aug-Dec semester.Previously offered: August 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011; Jan 2005.
CS672: Data Mining
This is a popular graduate elective, that gives an overview of both Data warehousing and Data Mining. I teach this jointly with Prof. P. Sreenivasa Kumar. This course is typically offered in the Jan-May semester. Previosuly offered: Jan 2006, 2007, 2008, 2009, 2010, 2011.CS673: Probabilistic Reasoning in AI
This is a self-study elective course that I also offer as a contact course for research scholars on demand. I put together a program of weekly reading and written assignments, and a final presentation. The topics covered are a mixture of Bayesian networks, graphical models, approximate inferencing, sequential decision making and reasoning under uncertainty. Recently, this course has come to focus more on approximate inferencing in graphical models, and their applications. Previosuly offered: Aug 2005, 2006; Jan 2008, 2009, 2010, 2011.CS637: Natural Language Processing
This course gives an introduction to statistical approaches to natural language processing. I teach this jointly with Dr. Sutanu Chakraborti. We offered this course in Aug-Dec 2009 for the first time.Previosuly offered: Aug 2009, 2010, 2011.
CS6012: Social Network Analsysis
Analyzing patterns of interactions among/within communities has been in the domain of sociologists for long. With the mind numbing growth of digitally recorded interactions, via e-mail, web 2.0, even citations, etc., both the amount of readily accessible data and powerful tools to process them have seen a quantum leap. The objective of the course is to serve as an introduction to the various sources of network data, the different kinds of networks that one can construct from them, the various properties of these networks that people study-motivate this from a sociological point of view, the computation of these properties-from a graph algorithm point of view, look at growth models of network and methods to study the evolution of such networks. The course will have a heavy graph algorithm bias, and will also require some linear algebra and probability theory concepts. I intend to run this course as a part seminar course. Previosuly offered: Jan 2011.CS350/351: Introduction to Operating Systems
This is an undergraduate core course. It was earlier taught as a combined course, but in the recent semesters has a separate lab section. The course is designed to be a hands-on introduction, with the students learning as much in the laboratory as they do in the classroom.Previosuly offered: August 2004, 2005, 2006, 2007, 2008, 2011.
CS130: Introduction to Computer Science and Engineering
This is the first course on comptuer science for the CS majors. The purpose of the course is to introduce students to the various aspects of CS and E, and try and get them excited about the subject. I taught it for the first time in Aug-Dec 2009. I am on the look out for innovative ideas to motivate the students: could be lecure ideas, lab exercises, etc.Previosuly offered: Aug 2009, 2010.
Currently Teaching
- CS6012: Social Network Analysis
- CS6730: Probabilistic Reasoning in AI
- Course Management System