Graph-Based Error Identification in Submitted Code Solutions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In educational settings, manually reviewing submitted solutions for errors is inefficient due to the difficulty in comparing them to pre-existing error-free solutions using conventional code comparison tools.

Innovation Solution

A method that generates graph representations of submitted and error-free solutions, selects a similar error-free solution using Graph Edit Distance, and identifies differences to map errors in the submitted solution, utilizing a graphical user interface for explanation and scoring, with optional AI classification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If manual review of submitted solutions is performed, then error identification can be achieved, but review efficiency and productivity are reduced

Engineering Contradiction:
Improveerror identification accuracyVSAvoidreview efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent replaces the manual mechanical review process with an automated computational system that uses graph representations and Graph Edit Distance algorithms to compare submitted solutions against error-free reference solutions, thereby maintaining error identification accuracy while dramatically improving review productivity

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent introduces graph representations as an intermediary layer between the submitted code and the comparison process. By converting code into graph structures (such as Abstract Syntax Trees or Control Flow Graphs), the system enables automated structural comparison that preserves the precision of manual review while eliminating the time-consuming nature of manual inspection

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If conventional code comparison tools are used to compare submitted solutions with error-free solutions, then structure comparison can be performed, but the ability to handle multiple valid solutions is insufficient

Engineering Contradiction:
Improvehandling multiple valid solutionsVSAvoidcomparison accuracy
Core Design Contradiction:
Adaptability or versatilityVSMeasurement precision

Solution Approach 1:

The patent creates a universal comparison framework based on graph representations that can handle multiple valid solutions. By representing code structure in a format that captures essential relationships (nodes and edges), the system can compare any submitted solution against any error-free reference solution, making the comparison tool versatile across different correct implementations while maintaining precision through structured graph matching

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Productivity

If automated error identification is implemented, then review productivity is improved, but the complexity of the review system increases

Engineering Contradiction:
Improveautomated review efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the automated review system into distinct modular components: a graph generation module that converts code to graph representations, a comparison module that calculates Graph Edit Distance, and a feedback module that presents results. This segmentation enables automated review productivity while managing system complexity through modular design, where each component has a specific function and can be independently developed or modified

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20240395165A1Method and system for identification and classification of errors in a submitted solution
Publication Date: 2024.11.28 SIT PROGRAMMING SCHOOL AG
  • US20240395165A1 patent drawing
  • US20240395165A1 patent drawing

AI summary

Methods and systems for identification and classification of errors in a submitted solution. A method includes generating a graph representation of the plurality of pre-selected error-free solutions and the submitted solution. Graph representation of an error-free solution from the plurality of pre-selected error-free solutions is selected with the minimal distance from the graph representation of the submitted solution. The graph representation of the submitted solution is compared to that of the selected error-free solution. The difference between the graph representations is then identified. The differences are then mapped to the submitted solution and the selected error-free solution. Using a graphical user interface, the difference between the submitted solution and the selected error-free solution are displayed as an explanation of an error in the submitted solution.