I’m in first year of my Ph.D. in Computer Science at UCSC. Currently, passionate about designing, building and deploying consistent and fault tolerant middleware for enhancing efficiency and reliability of distributed systems.
Exploring consistency models and fault-tolerant algorithms required for distributed database. systems. Researching on middleware that enables current benign systems to adopt byzantine-fault-tolerant protocols.
Worked on Planning Networks project with UC-Berkley which includes use of Deep Learning networks to solve Sokoban and TSP.Explored the field of Active Perception using partially-observable Markov Decision Processes (POMDPs).
End-to-End development and deployment of platform-independent APIs followed by integration testing with frontend. Discussion, design and implementation of team-specific requirements for improvising current backend framework. Performance Testing of Cache Services in real-time environment on servers using Visual VM and JMX. Load Balancing of servers and monitoring client-server request threads for Cache Service optimizations.
Designed and deployed platform-independent cache services for efficient processing and fast retrieval of data from database in the real-time client-server environment which helped in the smooth transition to Amazon Cloud.
Developed batch & real-time scrubbers to modify data in NoSQL database like Aerospike by modeling complex data structures which improved websites response time by 20%
Created and implemented the framework from scratch by pushing real-time database failed events to HBase via Apache Kafka for further reprocessing of events using Apache Storm topologies which reduced stale data issues on the website
Implemented a smart video surveillance system for determining the optimal course of actions taken by the camera for monitoring intruder’s movement in real-time settings. Used YOLO for capturing intruder’s location and direction. POMDP is then integrated to solve the decision-making problem of tracking the intruder by moving the camera in intruder’s direction.
Implemented an end-to-end framework for 3D object reconstruction and grasp pose detection. Used 3D-R2N2 neural network which takes object images from arbitrary viewpoints and outputs a reconstruction, which is visualized in RVIZ using Point Cloud Library (PCL). Grasp Pose Detection (GPD) framework is then integrated to predict grasp candidates and classify them as good or bad grasp.
Implemented 2-Dimensional Principle Component Analysis(2DPCA) for Face Recognition, tested the algorithm on ORL face dataset and compared the results with normal PCA technique
Feature extraction and classification based on feature sets are two major components of steganalysis process. The high dimension of feature sets used for steganalysis makes classification a complex and time-consuming process. This paper proposes a novel feature selection algorithm (FS-SDS) for steganalysis. FS-SDS is a wrapper-type feature selection algorithm which selects reduced feature set using Stochastic Diffusion Search. The Stochastic Diffusion Search is a generic population-based search method, which has been adopted successfully in this work for steganalytic feature selection. The experiments are conducted with steganograms of the common JPEG steganography techniques. To show the usefulness and effectiveness of FS-SDS, experiments were conducted on two different feature sets used for steganalysis. The experimental results show that the proposed feature selection not only effectively reduces the dimensionality of the features, but also improves the detection accuracy of the steganalysis process.Link to Paper
Eric Brewer introduced the idea that there is a fundamental trade-off between consistency, availability, and partition tolerance. The paper reviews the CAP Theorem and situates it within the broader context of distributed computing theory.
The CAP theorem asserts that any networked shared-data system can have only two of three desirable properties. However, by explicitly handling partitions, designers can optimize consistency and availability, thereby achieving some tradeoff of all three.
A concurrent object is a data object shared by concurrent processes. This paper defines linearizability, compares it to other correctness conditions, presents and demonstrates a method for proving the correctness of implementations, and shows how to reason about concurrent objects, given they are linearizable.
The abstraction of a shared memory is of growing importance in distributed computing systems. Enforcing traditional consistency guarantees leads to latencies that prevent scaling to large systems. This paper defines causal memory, an abstraction that ensures that processes in a system agree on the relative ordering of operations that are causally related.