Welcome to the Graph-Oriented AppLications Research Lab in CS@RIT. Our research focuses on graphs and their applications: from integrating knowledge graphs and graph databases to program comprehension or from finding subgraphs efficiently to predicting new edges.
08/2024 |
Two new grants Thanks to the NSF for supporting our research! Check out our CORE project and our FMiTF project. |
03/2024 |
Two papers in TheWebConf We had two papers accepted in The Web Conference: A Method for Assessing Inference Patterns Captured by Embedding Models in Knowledge Graphs and Using Model Calibration to Evaluate Link Prediction in Knowledge Graphs. We analyze inference patterns in knowledge graph embedding models and how calibration can be used to evaluate link prediction in knowledge graphs. Check out our publicly-available implementations here and here. |
01/2024 |
New paper in JSS A new paper was accepted in the Journal of Systems and Software: Flexible control flow graph alignment for delivering data-driven feedback to novice programming learners. We propose a flexible, graph-based comparison of student programs and adapt a program repair technique to provide feedback to novice learners. Check out our publicly-available implementation. |
08/2023 |
New paper in CIKM A new paper was accepted in the ACM International Conference on Information and Knowledge Management: A Model-Agnostic Method to Interpret Link Prediction Evaluation of Knowledge Graph Embeddings. We propose a new method to interpret predictions as a whole made by knowledge graph embeeding models that is agnostic to the underlying implementation of the model. Check out our publicly-available implementation. |
08/2022 |
Three papers in ITS We had three papers accepted in the International Conference on Intelligent Tutoring Systems: Improving Program Matching to Automatically Repair Introductory Programs, Flexible Program Alignment to Deliver Data-Driven Feedback to Novice Programmers and Customizing Feedback for Introductory Programming Courses Using Semantic Clusters. We improve the flexibility of program repairs using graph-based matching to provide feedback to novice programmers. Check out our publicly-available implementation. |
01/2021 |
New paper in TheWebConf A new paper was accepted in The Web Conference: Revisiting the Evaluation Protocol of Knowledge Graph Completion Methods for Link Prediction. We revisit the evaluation protocol of knowledge graph completion algorithms, including splits, accuracy metrics and model selection. Check out our publicly-available implementation. |
12/2020 |
New paper in SIGCSE A new poster was accepted in the ACM Technical Symposium on Computer Science Education: Learning to Recognize Semantically Similar Program Statements in Introductory Programming Assignments. |
07/2020 |
New paper in CIKM A new paper was accepted in the ACM International Conference on Information and Knowledge Management: The Impact of Negative Triple Generation Strategies and Anomalies on Knowledge Graph Completion. We analyze how different strategies to generate negative triples impact the accuracy of knowledge graph completion algorithms. Check out our publicly-available implementation. |
11/2019 |
New papers in SAC Two new papers were accepted in the ACM/SIGAPP Symposium on Applied Computing: Towards summarizing program statements in source code search. We detect program statements that are relevant to search for source code. Selecting suitable configurations for automated link discovery. We help link discovery techniques reduce the search space of possible configurations. Check out our publicly-available implementation. |
08/2019 |
New paper in KCAP A new paper was accepted in the ACM International Conference on Knowledge Capture: Generating Rules to Filter Candidate Triples for their Correctness Checking by Knowledge Graph Completion Techniques. We filter triples that are not likely to be added as new knowledge in knowledge graphs. Check out our publicly-available implementation. |
08/2019 |
New paper in CIKM A new paper was accepted in the ACM International Conference on Information and Knowledge Management: Clustering Recurrent and Semantically Cohesive Program Statements in Introductory Programming Assignments. We cluster program statements of interest using structural graph clustering for programming assignments. Check out our publicly-available implementation. |
06/2019 |
New award We got the best resource paper award at ESWC'19! Check out the announcement. |
05/2019 |
New grant Thanks to the NSF for supporting our research! Check out our project. |
03/2019 |
New paper in ESWC A new paper was accepted in the Extended Semantic Web Conference: AYNEC: All You Need for Evaluating Completion Techniques in Knowledge Graphs. A Python framework to deal with knowledge graph completion. Check out our publicly-available implementation. |
11/2018 |
Atendding FSE'18 We attended FSE'18 in Orlando, FL to present our paper: Towards a framework for generating program dependence graphs from source code. |
08/2018 |
New paper in SWAN@FSE A new paper was accepted in the ACM SIGSOFT International Workshop on Software Analytics: Towards a framework for generating program dependence graphs from source code. We devised a framework to build program dependence graphs directly from Java source code. Check out our publicly-available implementation. |
07/2018 |
Thesis defense Wilberto Z. Nunez successfully defended his MS thesis entitled Improvements on ORCA for Fast Computation of Graphlet Degree Vectors in any Graphlet Order. Big congrats! |
07/2018 |
ICFP Programming Contest We participated in the organization of the ICFP Programming Constest. Matthew Fluet, congrats! Check some cool videos from participants: Nanovisu, Skobochka, Bot the Nanobot in the Race to the Bottom. |
07/2018 |
New paper in WWWJ A new paper was accepted in the World Wide Web journal: Deep Web crawling: a survey. It presents a survey of techniques for perform crawling to extract data from the Deep Web. |
09/2017 |
Atendding FSE'17 We attended FSE'17 in Paderborn, Germany to present our paper: ARCC: Assistant for Repetitive Code Comprehension. |
07/2017 |
New paper in FSE A new paper was accepted in the ACM SIGSOFT Symposium on the Foundations of Software Engineering: ARCC: Assistant for Repetitive Code Comprehension. We used subgraph pattern matching against program dependence graphs to assist in program comprehension. Watch our screencast. |
05/2017 |
New prototype We have created a new prototype to deliver personalized feedback. |
04/2017 |
Atendding ICDE'17 We attended ICDE'17 in San Diego, USA to present our paper: Automated Personalized Feedback in Introductory Java Programming MOOCs. Carlos R. Rivero was the chair of the Social networks session. |
03/2017 |
Seminar by Victor J. Marin Victor J. Marin delivered a seminar at RIT on providing personalized feedback using subgraph pattern matching in programming MOOCs. |
01/2017 |
New paper in ICDE A new paper was accepted in the IEEE International Conference on Data Engineering: Automated Personalized Feedback in Introductory Java Programming MOOCs. We developed a new framework to provide personalized feedback in introductory programming courses. |
09/2016 |
Seminars by Carlos R. Rivero Carlos R. Rivero delivered two seminars at RIT. He presented his work on providing personalized feedback using subgraph pattern matching in introductory programming courses. These talks were held in the context of the GCCIS PhD Colloquium Series and the Theory Canal: The Rochester Theory Seminar. |
07/2016 |
New paper in KAIS A new paper was accepted in the Knowledge and Information Systems journal: Efficient and scalable labeled subgraph matching using SGMatch. It presents a new exact subgraph matching technique based on graphlets and minimum hub covers. |
07/2016 |
Atendding Summer School Andrea Cimmino attended the Second ScaDS Summer School on Big Data in Leipzig (Picture). He learned about Big Data Storage/NoSQL, Distributed Data Processing (HPC/MapReduce/Streaming/Spark/Flink), Graph Analytics/Management and Big Data Integration. |
05/2016 |
Seminar by Andrea Cimmino Andrea Cimmino delivered a seminar at RIT entitled: Using context to improve integration in the Web of Data. He presented an overview of his PhD dissertation on improving link discovery using context information in the Web of Data. |
04/2016 |
Atendding WWW'16 We attended WWW'16 in Montreal, Canada to present our paper: Improving Link Specifications using Context-Aware Information. |
02/2016 |
New paper in LDOW (WWW workshops) A new paper was accepted in the Workshop on Linked Data on the Web (LDOW) co-located with the International World Wide Web Conference (WWW): Improving Link Specifications using Context-Aware Information. We developed a new framework to model data collected from a crowd-sensing platform using semantic-web technologies. |
01/2016 |
New paper in CoMoRea (PerCom workshops) A new paper was accepted in the Workshop on Context and Activity Modeling and Recognition (CoMoRea)co-located with the IEEE International Conference on Pervasive Computing and Communication (PerCom): PLOMaR: An ontology framework for context modeling and reasoning on crowd-sensing platform. It presents a new approach to improve link discovery in the Web of Data by exploiting context information. |
Even though knowledge graphs have proven very useful for several tasks, they are marked by incompleteness. Completion algorithms aim to extend knowledge graphs by predicting missing (subject, predicate, object) triples, usually by training a model to discern between correct (positive) and incorrect (negative) triples. However, under the open-world assumption in which a missing triple is not negative but unknown, negative triple generation is challenging. We aim to thoroughly evaluate knowledge graph completion.
Many software-related activities require comprehending programs that other programmers wrote. In the majority of such scenarios, program comprehension is a manual process since current approaches cannot adequately handle program variability and, in particular, interleaved tasks, i.e., sets of non-contiguous program statements with specific semantic purposes. We apply recent advances in graph databases to programs modeled as system dependence graphs. We rely on
subgraph patterns to model tasks and subgraph matching to compute pattern occurrences.
Additional info: System Dependence Graph builder, ARCC.
Subgraph matching is a very hard problem and it has many important applications in graph databases to retrieve data represented as graphs, such as biological networks, chemical compounds, geographic maps, social networks and more. There exist several algorithms that exploit different heuristics and indexing structures to perform subgraph matching efficiently in practice. In general, it is not clear how these algorithms compare in terms of performance and/or accuracy. We aim to build a framework on top of Neo4j to fairly compare side by side current and future subgraph matching algorithms. This framework will allow to build intelligent query engines able to estimate, given a subgraph query and a data graphs, which algorithm will have the best performance.
We are in the third floor of the Golisano College of Computing and Information Sciences. If you visit us, you need to get a temporary parking permit at the Welcome Center. The closest lots are J and S.
Graph-Oriented AppLications Research Lab
Computer Science Department
Rochester Institute of Technology
Rochester, NY 14623