Projects
A listing of some of the projects I completed during the course of my professional career, graduate and undergraduate studies, and high school
CS-6515 Graduate Algoithms
Dr. Eric Vigoda (Ph.D. UC Berkeley), Dr. Gerandy Brito (Ph.D. UW)
Summer 2023
CS-7641 Machine Learning
Dr. Charles Isbell (Ph.D. MIT), Dr. Michael Littman (Ph.D. Brown)
Spring 2023 (Expected)
Supervised Learning
- Implemented of Decision Trees (pruned), Neural Networks, Boosting, Support Vector Machines, and K-nearest neighbours
- Training the aforementioned algorithms on two large datasets in order to analyse how they perform in testing and validation phases
- Performed hyperparamter tuning to achieve optimal accuracy
- Learning curves generated in order to compare their performance
Randomized Optimization
- The aim of this assignment is to get acquainted with localized random search algorithms, namely, Randomized Hill Climbing (RHC), Simulated Annealing (SA), Genetic Algorithms (GA), and Mutual Information Maximizing Input Clustering (MIMIC). I solved fives problems of mathematical and discrete nature (that can be solved using randomized optimization techniques) with the aforementioned algorithms (randomized optimization techniques for choice of a better phrase) in order to find the maximum fitness function
- Problems solved and analysed:
- Four-Peaks
- N-Queens
- Knapsack
- One-Max
- Max-K-Color
Unsupervised Learning and Dimensionality Reduction
- The aim of this assignment is to acquaint oneself with a couple of unsupervised learning and dimensionality reduction techniques on two large datasets of our choice (with multiple features so that we have enough features to select/reduce)
- Implemented K-Means Clustering and Expectation Maximization as clustering algorithms for unsupervised learning
- Implemented PCA (Principal Component Analysis), ICA (Independent Component Analysis), Randomized Projects, and Feature Variance Thresholding as dimensionality reducation algorithms
- Analysed the performance of combinations of the aforementioned clustering and dimensionality techniques on the chosen datasets and performed hyperparameter tuning in order to yield accurate modeling results
Markov Decision Processes
- Explored various reinforcement learning techniques an agent can use to make decisions.
- An analysis of two interesting Markov Decision Processes (MDPs) is conducted using two planning algorithms, namely, value iteration and policy iteration, along with one reinforcement learning algorithm, namely, Q-Learning.
- The MDPs are selected carefully to be able to draw conclusions as to which algorithm suits what type of problem best (non-grid world, grid world, number of states, etc.).
- Chosen MDPs:
- Frozen Lake 4x4
- Frozen Lake 16x16
- Taxi
- Experiments conducted using Gymnasium (a maintained fork of OpenAI's Gym library)
CS-6601 Artificial Intelligence
Dr. Thad Starner (Ph.D. MIT)
Summer 2022
CS-6263/ECE-8813 Introduction to Cyber-Physical Systems Security
Dr. Raheem A Beyah (Ph.D. Georgia Tech), Dr. David Joyner (Ph.D. Georgia Tech)
Fall 2021
CS-6210 Advanced Operating Systems
Dr. Umakishore Ramachandran (Ph.D. University of Wisconsin, Madison)
Fall 2021
CS-6200 Graduate Introduction to Operating Systems
Dr. Ada Gavrilovska (Ph.D. Georgia Tech)
Summer 2021
CS-6250 Computer Networks
Dr. Maria Konte (Ph.D. Georgia Tech)
Spring 2021
CS-6290 High Performance Computer Architecture
Dr. Milos Prvulovic (Ph.D. UIUC)
Fall 2020
SESC (Super ESCalar) Simulator
- Benchmarks: splash2 suite (Stanford Parallel Applications for Shared-Memory), lu decomposition, raytrace, fmm
- Profiling MIPS compatible binaries and tweaking CPU and cache configuration parameters in order to achieve optimal branch prediction accuracy and execution times in out-of-order processors
- Implemented a new cache policy (Next-to-LRU) in the SESC simulator
- Implemented new profiling counters for read/write cache misses (compulsory, conflict, capacity, replacement, coherence) in the SECS simulator
- Modified cache policy (Random, LRU, Next-to-LRU), cache size, associativity (4-way set associative, direct mapped), latency
- Modified branch predictors (Not-taken, Hybrid)
- Conclusions drawn by comparing compulsory, conflict, and capacity read/write misses in 4-way set-associative and direct-mapped caches
- In multi-core processors, conclusions drawn by comparing compulsory, replacement, and coherence read/write misses after tweaking number of threads in CPU configurations
CS-6023 Introduction to Information Security
Dr. Mustaque Ahamad (Ph.D. SUNY Stony Brook), Dr. Wenke Lee (Ph.D. Columbia)
Fall 2020
CS-6291 Embedded Software Optimization (also referred to as Embedded System Optimization)
Dr. Santosh Pande (Ph.D. NC State)
Summer 2020
Enterprise Network Messaging System
(circa 2017)
An FPGA based approach to deep packet inspection for the purpose of application aware routing in content delivery networks
(circa 2014)
Multi-threaded client-server communication protocol
(circa 2012)
Compiler Design
(circa 2013)
Speaker Recognition
(circa 2013)
Feature Recognition and Tracking in real-time video feed
(circa 2013)
Search Algorithms
(circa 2012)
Remote Circuit Control and Actuation
(circa 2013)
Stock Exchange Trend Logging and Analysis
(circa 2013)
Assembler
(circa 2013)
DC Motor Position Control using PID Algorithm
(circa 2014)
2D Drawing Application
(circa 2012)
Power Supply
(circa 2012)
Frequency Meter
(circa 2013)
Text Editor with Encryption
(circa 2009)
Some other projects I undertook during the course of my undergraduate studies
(circa 2010 - 2014)