“I have known Rahil for 6 years and worked collectively for 4 years. He is a smart technical manager with high energy levels; which means he likes to be in the middle of action at all times. He is a domain expert on hypergraph partitioning and combinatorial optimizations. He has been responsible for delivering multiple critical projects for Protium Prototyping Platform and is a critical member of the team. He has built a world class partitioning team in a few years. It has been an absolute pleasure working with him.”
About
At the forefront of Compiler backend development at Cadence Design Systems, my leadership…
Experience
Education
-
University of Iowa
-
Activities and Societies: Algorithms Reading Group, University of Iowa
Thesis Title : Shared & Distributed Memory Parallel Algorithms to Solve Big Data Problems in Biological, Social Networks & Spatial Domain Applications
dblp link : http://dblp.uni-trier.de/pers/hd/s/Sharma:Rahil
Research :
Parallel algorithms for scientific computing for massive datasets, mathematical proofs for approximate, computational geometric and graph algorithms, heuristics for NP hard problems and other real world problems
Teaching :
Algorithms (22C:031), Object…Thesis Title : Shared & Distributed Memory Parallel Algorithms to Solve Big Data Problems in Biological, Social Networks & Spatial Domain Applications
dblp link : http://dblp.uni-trier.de/pers/hd/s/Sharma:Rahil
Research :
Parallel algorithms for scientific computing for massive datasets, mathematical proofs for approximate, computational geometric and graph algorithms, heuristics for NP hard problems and other real world problems
Teaching :
Algorithms (22C:031), Object Oriented Software Development (22C:022), Distributed Systems and Algorithms (22C:166), Computer Organization (22C:060), Networks and its Applications (22C:118) -
-
Activities and Societies: Algorithms Reading Group, University of Iowa
Algorithms; Computational Geometry; Approximation Algorithms; Graph Algorithms
-
-
Volunteer Experience
-
Served as panelist: “Considering & Applying to Graduate Schools as an International Student”
University of Iowa
- 1 year 1 month
Education
-
Reviewer
Journal of Big Data, SpringerOpen
- 3 years 3 months
Science and Technology
Publications
-
A Community Detection Algorithm for Massive Social Networks using Hybrid Architecture
Big Data Research, Elsevier
Detecting communities is of great importance in social networks where systems are often represented as graphs. With the advent of web-based social networks like Twitter, Facebook, LinkedIn, etc. community detection became even more difficult due to the massive network size, which can reach up to hundreds of millions of vertices and edges. In this paper, we present a novel hybrid (shared + distributed memory) parallel algorithm to efficiently detect high quality communities in massive social…
Detecting communities is of great importance in social networks where systems are often represented as graphs. With the advent of web-based social networks like Twitter, Facebook, LinkedIn, etc. community detection became even more difficult due to the massive network size, which can reach up to hundreds of millions of vertices and edges. In this paper, we present a novel hybrid (shared + distributed memory) parallel algorithm to efficiently detect high quality communities in massive social networks. For our simulations, we use synthetic graphs ranging from 100K to 16M vertices to show the scalability and quality performance of our algorithm. We also use two massive real world networks: (a) section of Twitter-2010 network having ≈ 41M vertices and ≈ 1.4B edges (b) UK-2007 (.uk web domain) having ≈ 105M vertices and ≈ 3.3B edges. Simulation results on a MPI setup with 8 compute nodes having 16 cores each shows that, upto ≈ 6X speedup is achieved for synthetic graphs in detecting communities without compromising the quality of the results.
Other authorsSee publication -
High Quality Multi-core Multi-level Community Detection Algorithm
Int. J. Computational Science and Engineering
Journal paper :
One of the most relevant and widely studied structural properties of networks
is their community structure or clustering. Detecting communities is of great importance in
various disciplines where systems are often represented as graphs. Different community detection
algorithms have been introduced in the past few years, which look at the problem from different
perspectives. Most of these algorithms, however, have expensive computational time that makes
them…Journal paper :
One of the most relevant and widely studied structural properties of networks
is their community structure or clustering. Detecting communities is of great importance in
various disciplines where systems are often represented as graphs. Different community detection
algorithms have been introduced in the past few years, which look at the problem from different
perspectives. Most of these algorithms, however, have expensive computational time that makes
them impractical to use for large graphs found in the real world. In this paper, we propose a
multi-core multi-level (MCML) community detection algorithm based on the topology of the graph.
Applying MCML algorithm on two benchmark datasets for different strength requirements results
in detection of accurate communities. We also apply MCML on Facebook Forum dataset to find
users with similar interests and Amazon dataset.We show the scalability of MCML on large datasets
with 16 Xeon Phi cores.Other authorsSee publication -
Shared and distributed memory parallel algorithms to solve big data problems in biological, social network and spatial domain application
The University of Iowa, ProQuest Dissertations Publishing, 2016. 10196300.
-
Parallel Landscape Driven Data Reduction & Spatial Interpolation Algorithm for Big LiDAR Data
ISPRS Journal of Geo-Information
Journal paper :
Airborne Light Detection and Ranging (LiDAR) topographic data provide highly accurate digital terrain information, which is used widely in applications like creating flood insurance rate maps, forest and tree studies, coastal change mapping, soil and landscape classification, 3D urban modeling, river bank management, agricultural crop studies, etc. In this paper, we focus mainly on the use of LiDAR data in terrain modeling/ Digital Elevation Model(DEM) generation…Journal paper :
Airborne Light Detection and Ranging (LiDAR) topographic data provide highly accurate digital terrain information, which is used widely in applications like creating flood insurance rate maps, forest and tree studies, coastal change mapping, soil and landscape classification, 3D urban modeling, river bank management, agricultural crop studies, etc. In this paper, we focus mainly on the use of LiDAR data in terrain modeling/ Digital Elevation Model(DEM) generation. Technological advancements in building LiDAR sensors has enabled highly accurate and highly dense LiDAR point-clouds, which have made possible high resolution modeling of terrain surfaces. However, high density data results in massive data volumes, which pose computing issues when disseminating, processing, and storing data. We describe a novel technique based on the slope-map of the terrain, to reduce the data without sacrificing its accuracy. To the best of our knowledge this is the first ever landscape driven data reduction algorithm. We also perform an empirical study which shows that, there is no significant loss in accuracy for the DEM generated from a 52% reduced LiDAR dataset generated by our algorithm, compared to the DEM generated from an original complete LiDAR dataset. For accuracy of our statistical analysis, we perform Root Mean Square Error (RMSE) comparing all the grid points of original DEM to the DEM generated by reduced data, instead of comparing few random control points. Besides, our multi-core data reduction algorithm is highly scalable. We perform a scalability test using 1,2,4,8,16 CPU cores. We also describe a modified parallel Inverse Distance Weighted (IDW) spatial interpolation method, and show that the DEMs it generates is time-efficient, and has better accuracy than the one’s generated by traditional IDW method.
Other authorsSee publication -
Identification and Prediction of Functional Protein Modules using a Bi-level Community Detection Algorithm
Int. J. Bioinformatics Research and Applications
Journal paper :
Identifying functional modules is believed to reveal most cellular pro-
cesses. There have been many computational approaches to investigate
the underlying biological structures. We shall use community detec-
tion algorithm which we present in a bi-level algorithmic framework to
accurately identify protein complexes in less computational time. We
call this algorithm bi-level label propagation algorithm (BLLP). Using
this algorithm, we extract 123…Journal paper :
Identifying functional modules is believed to reveal most cellular pro-
cesses. There have been many computational approaches to investigate
the underlying biological structures. We shall use community detec-
tion algorithm which we present in a bi-level algorithmic framework to
accurately identify protein complexes in less computational time. We
call this algorithm bi-level label propagation algorithm (BLLP). Using
this algorithm, we extract 123 communities from a protein-protein inter-
action (PPI) network involving 2361 proteins and 7182 interactions in
Saccharomyces cerevisiae i.e.Yeast. Based on these communities found,
we make accurate prediction of functional modules for 57 uncharacter-
ized proteins in our dataset. We also perform a comparative study by
applying various well known community detection algorithms on the
PPI yeast network. We conclude that, BLLP algorithm extracts more
accurate community structures from PPI yeast networks in less compu-
tational time.Other authorsSee publication -
Real-time On-board Analytics for Decision Making
MTIC, John Deere
Accepted poster presentation :
Currently, not many on-board analytics available for real-time machine productivity and work-site solutions. We develop compression and parallel processing algorithms for solving work-site problems exploiting on-board multi-core architecture. Accurate topographic data, obstacle detection, etc. are some potential applications.
-
Scalable Community Detection for Large Data
27th Annual Meeting of Iowa Academy of Science
Accepted abstract and oral presentation:
The modern science of networks has brought significant advances to study of networks. One of
the most relevant and widely studied structural properties of networks is their community structure or clustering. Detecting communities is of great importance in sociology, biology and computer science, disciplines where systems are often represented as network. We are designing algorithms that focuses on the methodology for detecting community…Accepted abstract and oral presentation:
The modern science of networks has brought significant advances to study of networks. One of
the most relevant and widely studied structural properties of networks is their community structure or clustering. Detecting communities is of great importance in sociology, biology and computer science, disciplines where systems are often represented as network. We are designing algorithms that focuses on the methodology for detecting community structures in weighted large scale networks such as the users’ relationship on social networks like Facebook, Twitter, etc. Most social networks are very large and tackling this volume of graph-structured data requires parallel tools. Using C++ libraries for graphs we incorporate parallel multicore directives to achieve scalable algorithms, which will be applicable for huge data-sets. It involves pre-processing the given graph to compute the topological features, then use label-propagation technique to find communities, followed by post processing to improve the quality of the result. We perform a comparative study using various bench mark data-sets. We observe that our algorithm gives better modularity clusters and running time, as compared to previous well known algorithms. We perform all our simulations on the University of Iowa’s Neon cluster using high-memory node with 24 cores.Other authors -
Parallel Algorithms for Clustering in Big Data-sets
SIAM Central States Section Conference
-
Hard Capacitated Set Cover and Geometric Set Cover
Arxiv
The first part of this work describes the following result that, logarithmic approximation factor for hard capacitated set cover can be achieved from Wolsey’s work, using a simpler and more intuitive analysis. We further show in our work, that O(log n) approximation factor can be achieved for the same problem by applying analysis of general set cover to analyze Wolsey’s algorithm. This work is based on the key observation that we make in Lemma 3.
The second part of this work describes the…The first part of this work describes the following result that, logarithmic approximation factor for hard capacitated set cover can be achieved from Wolsey’s work, using a simpler and more intuitive analysis. We further show in our work, that O(log n) approximation factor can be achieved for the same problem by applying analysis of general set cover to analyze Wolsey’s algorithm. This work is based on the key observation that we make in Lemma 3.
The second part of this work describes the geometric hitting set problem, where X is a ground set of points in a plane and S is a set of axis parallel rectangles. It is shown that epsilon-nets of size O((1/epsilon) log log (1/epsilon)) can be computed in polynomial time. Applying Bronnimann and Goodrich result gives the hitting set of size O(log log OPT) for this problem.
Courses
-
Advance Graph Algorithms
22C:295
-
Analysis of Algorithm and Design
22C:231
-
Basic Analysis and Introduction to Proofs
22M:105
-
Big Data
22C:196
-
Computational Epidemiology : Topic in Computer Science 2
22C:196:001
-
Computational Geometry
22C:196:003
-
Computer Graphics
22C:151
-
Distributed Systems and Algorithms
22C:166
-
Fundamentals of Software Engineering
22C:180
-
Graph Algorithms and Combinatorial Optimization
055:133
-
High Performance Parallel Computing
22C:166
-
Limits of Computation
22C:131
-
Linear Programming
06K:286
-
Peer to Peer and Social Networking Algorithm
22C:196:004
-
Randomized Algorithms
22C:196:005
-
Research Seminar-1
22C:299
Projects
-
Real-time Spatial-data Processing (John Deere)
Real-time processing of large data produced by Velodyne LiDAR sensor in a parallel, using multi-core architectures. It involves real-time data reduction, spatial interpolation, and Delaunay triangulation of the reduced data.
-
Parallel Implementation of Label Propagation Algorithm for Community Detection
Detection of community structure is computationally very difficult and challenging problem to solve. We implement modified label propagation algorithm while exploiting the multi-core architecture. We used Multi-threading with Java and conducted test for speed-ups using various datasets mentioned in the slides. (Code Sample: https://github.com/rrsharma/Code-Sample)
Other creators -
-
Distributed Jacobi and Red-Black Gauss Seidel Poisson Solvers
Jacobi and Red-Black Gauss Seidel Poisson Solvers using Message Passing Interface (MPI)
-
Distributed Simpson's Integration Rule
Implemented Simpson's Integration Rule using Message Passing Interface (MPI).
(https://github.com/rrsharma/MPI-C-Jacobi-and-Red-Black-Gauss-Seidel-Poisson-Solvers) -
Linear Programming: Modified Simplex Method
We designed and implemented a modification to the simplex method for solving linear programs (LP). The variation that our code handles is the case when the LP is in standard form, and each of the variables have a finite upper bound (other than being non-negative as well). The naive way to solve it would be to incorporate each upper bound into an inequality constraint, and then solve it using the original Simplex method. However, that would increase the size of the basis matrix from 'm' to 'm +…
We designed and implemented a modification to the simplex method for solving linear programs (LP). The variation that our code handles is the case when the LP is in standard form, and each of the variables have a finite upper bound (other than being non-negative as well). The naive way to solve it would be to incorporate each upper bound into an inequality constraint, and then solve it using the original Simplex method. However, that would increase the size of the basis matrix from 'm' to 'm + n', which would adversely impact the time required to invert the basis matrix during each iteration. For this reason, the "advanced" strategy that we implement involves partitioning the non-basic matrix N into Nl and Nu (corresponding to whether the non-basic variable is either 0 or at its upper bound), and modify the method used to choose the entering and the leaving variable to incorporate this modification. The resultant algorithm is twice as fast as the naive strategy.
-
Fast algorithm to find maximum weight consistent digitally convex region
We parallelized existing algorithms to find convex regions from X-rays and CT-scans.
Used sophisticated data structures like tree-sort, hash-maps, etc.
Optimized the original algorithm to improve the running time by more than 20%
-
Fast Community Detection
Used kd-tree data structure to improve the asymptotic running time of Community Detection Algorithm using Greedy Randomized Adaptive Search Procedure (GRASP)
Honors & Awards
-
Graduate College Post-Comprehensive Research Fellowship
The University of Iowa Graduate College
The award recognizes students with distinguished academic achievement during their graduate training. These achievements include outstanding academic performance in coursework, as well as scholarly research activities. This award program provides an opportunity for advanced doctoral students to benefit from protected and supported time to pursue their scholarly research activities towards dissertation. (https://www.cs.uiowa.edu/resources/news/phd-candidates-award-recipients)
-
Innovation Medal
John Deere - Moline Technology Innovation Center
I received an `Innovation Medal' at John Deere during the `Knowledge Based Solution Innovation Day'. (Not very many people get this, so I am proud of it. It motivates me to do more innovative work in the future.)
Check out the medal, its really cool :
http://homepage.cs.uiowa.edu/~rrsharma/Publications.html
-
University of Iowa, Computer Science 2015-16 Scholarship
University of Iowa, Computer Science Department
*Scholarship is comprised of an award letter and prize of $2,000:*
Awarded on the basis of excellence in academic and professional achievement during graduate standing (MCS & Ph.D.) -
John Deere : Big Data Academic Grant
John Deere
Dr. Suely Oliveira (PI) and I (Co-PI/Technical Coordinator), received a grant of $40,704 from John Deere for the academic year 2015-2016, for "Developing Algorithms to Process Big Spatial Data".
This grant will pay for my tuition and salary as a Research Assistant at the University of Iowa for Fall-2015 and Spring-2016.
Languages
-
English
Native or bilingual proficiency
-
Hindi
Native or bilingual proficiency
Recommendations received
8 people have recommended Rahil
Join now to viewOther similar profiles
Explore collaborative articles
We’re unlocking community knowledge in a new way. Experts add insights directly into each article, started with the help of AI.
Explore MoreOthers named Rahil Sharma in United States
-
Rahil Sharma
Associate Technical Product Manager @ UnitedHealth Group | UC Berkeley MIDS
-
Rahil sharma
Student at Indiana Wesleyan University
-
RAHIL SHARMA
--
-
Rahil Sharma
Intern at LabCorp
4 others named Rahil Sharma in United States are on LinkedIn
See others named Rahil Sharma