Academic Projects

  • Database Implementation using MiniBASE - Supervisor: Prof. Boaxin Li

Implemented a binary SVM using Quadratic Program.Replaced Database algorithms with new techniques using MiniBASE in JAVA. First phase was to check LIFO, FIFO and LRU-K page replacement policies for the buffer management. LRU-K means replacing the least recently used page in last K references. Second phase was to create a Cartesian Join using Nested loop algorithm, IEJoin and IESelfJoin (Paper). Third phase was to implement cartesian join for multiple predicates using different selectivity techniques.

  • Binary SVM extended to Multiclass Classification - Supervisor: Prof. Boaxin Li

Implemented a binary SVM using Quadratic Program. Extended the Binary SVM to Multiclass cases using One-vs-all, One-vs-one (final classification using polling). Used a technique called error correction using coding matrices in which classes were grouped. Finally, Euclid distance was used for the classification.

  • Line Search Methods for Unconstrained Optimization - Supervisor: Prof. Hans D. Mittlemann

Implemented linear and non-linear (FR, PR, PR+ variants) conjugate gradient methods. Implemented BFGS and memoryless BFGS (applied it to 903 by 903 sized problem) Quasi Newton methods.

  • Learning & Decision Making in Artificial Intelligence - Supervisor: Prof. Subbarao Khambampati

Implemented Policy and Value iteration for a 4 cross 3 Robot environment. Implemented Q Learning for the same robot environment, that is without learning the model. Used Java Implementation of LDA on longer articles and twitter text corpus where each tweet was taken to be a separate document to analyse how the document size affects topic distribution.

  • Synchronization & Multithreading in Multiprocessor - Supervisor: Prof. Partha Dasgupta

Implemented synchronization of a Multi-threaded process using semaphores, and thread control blocks defined in ucontext library. Applied the synchronization on ”Producer Consumer” and ”Readers Writers” problems. Implemented a message passing system using multithreaded servers and clients.

  • MusicTutor - Intelligent tutor system - Supervisor: Prof. Kurt VanLehn

Designed a Music Tutor system to teach written form of music. Divided the course structure into Knowledge components. Created readable lectures followed by tests and hints for each question.

  • Smart Switcher app - Supervisor: Prof. Ayan Banerjee

Designed and developed a context aware Android app, which looks at user location and behavior to decide when to switch the mobile phone to silent mode.

  • Mobile graph monitoring app - Supervisor: Prof. Ayan Banerjee

Designed and developed an Android app, to render graph for a user and store its location data in a mobile SQLite database.

  • Software Engineering

Created a Library Management System in Java, and now working on creating an Air Gourmet System as well as Transport Management System in JSP.

  • Artificial Intelligence

Implemented algorithms for Neural Networks, Genetic Algorithms, Particle Swarm Optimization and Ant colony optimization as well as algorithms for graph search techniques in game playing.

  • Optimization Algorithms

Implemented the optimization Algorithms for Simplex algorithm with dual simplex and integer solution variants, Assignment Problem, Transportation Problem,Traveling Salesperson Problem using branch and bound method, Project Management using PERT/CPM.

  • Implementation of Network Protocols

Implemented data link layer, routing, and flow control protocols in Java.

  • Operating System

Implemented Process Scheduling algorithms and Memory Management algorithms.

  • Verilog

Verilog implementation and simulation of 32 bit carry look ahead adder, Moore and Mealy Machine for string matchingand JK, RS, D filp-flops.