IP Library Granted Patent US 12,222,986
Granted Patent B2
US 12,222,986 · App. 18/121,149 · Granted Feb 11, 2025

Systems and methods for in-situ graph-based data processing

Inventor: Steven Schilders (Columbus, IN)
Assignees: Infosys Ltd.; InvertIT Inc.
G06F16/9024G06F16/252G06T11/206G06T2200/24G06T2210/36
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,222,986
App. No.
18/121,149
Granted
Feb 11, 2025
Kind
B2
Abstract

A system comprises an executable graph-based model. The executable graph-based model comprises a first overlay node. The first overlay node comprises processing logic that is operable to interact with one or more associated nodes of the executable graph-based model. Further, the executable graph-based model comprises a first node that has the first overlay node associated therewith. The system further comprises a processing unit configured to receive a first stimulus associated with the first overlay node and, in response to the first stimulus being received, cause execution of said processing logic of the first overlay node. Execution of said processing logic of the first overlay node is based on the first node.

Claims (50)

1. A system for dynamic generation of executable graph-based models, the system comprising processing circuitry and a memory unit operatively coupled to the processing circuitry and having instructions stored thereon that, based on execution by the processing circuitry, cause the processing circuitry to:

obtain a graph-based model comprising a plurality of nodes including a set of edge nodes and a set of role nodes, wherein:

each edge node connects two or more nodes, of the plurality of nodes, via a corresponding plurality of roles, and

each role corresponds to a role node of the set of role nodes, and is indicative of a relationship between a corresponding edge node and a node, of the plurality of nodes, connected to the corresponding edge node;

obtain a first overlay node comprising processing logic operable to interact with at least one node of an associated graph-based model;

determine an association between a first node of the graph-based model and the first overlay node; and

generate an executable graph-based model, wherein the executable graph-based model includes a first executable node comprising a composition of the first node of the graph-based model and the first overlay node based on the association between the first node of the graph-based model and the first overlay node.

2. The system of claim 1 , wherein the instructions based on the execution by the processing circuitry, further cause the processing circuitry to:

receive a first stimulus associated with the first overlay node; and

in response to the first stimulus being received, cause execution of said processing logic of the first executable node.

3. The system of claim 2 , wherein the first stimulus comprises a first context such that execution of said processing logic of the first executable node is based on the first context.

4. The system of claim 2 , wherein the first node comprises a state, and wherein the state is shared by the first node and a second node of the graph-based model.

5. The system of claim 2 , wherein the first node comprises a state, and wherein execution of said processing logic of the first executable node causes a change in the state of the first node.

6. The system of claim 5 , wherein the state of the first node comprises a first attribute, and wherein execution of said processing logic of the first executable node causes a value of the first attribute to be set.

7. The system of claim 5 , wherein the state of the first node comprises a first attribute, and wherein execution of said processing logic of the first executable node causes a value of the first attribute to be output.

8. The system of claim 5 , wherein the state of the first node comprises a first attribute, and wherein execution of said processing logic of the first executable node causes a second attribute to be generated for the state of the first node.

9. The system of claim 8 , wherein execution of said processing logic of the first executable node causes a value for the second attribute to be set.

10. The system of claim 2 , wherein execution of said processing logic of the first executable node causes a second stimulus associated with a second overlay node to be fired.

11. The system of claim 10 , wherein the instructions based on the execution by the processing circuitry, further cause the processing circuitry to:

receive the second stimulus associated with the second overlay node; and

in response to the second stimulus being received, cause execution of processing logic associated with the second overlay node.

12. The system of claim 2 , wherein the instructions based on the execution by the processing circuitry, further cause the processing circuitry to:

in response to the first stimulus being received, cause execution of processing logic of a second executable node in the executable graph-based model, wherein the second executable node comprises a composition of a second node of the graph-based model and the first overlay node.

13. The system of claim 1 , wherein the first node is derived from a second node and a third node.

14. The system of claim 1 , wherein the first node comprises a unique identifier, one or more attributes each having corresponding attribute values, a version, a name, a namespace, and associated metadata.

15. The system of claim 1 , wherein the association between the first node of the graph-based model and the first overlay node is determined based on a predetermined configuration.

16. The system of claim 1 , wherein each node is associated with a node type, wherein the plurality of nodes further include a set of data nodes, and wherein the node type of the first node is a data node type.

17. The system of claim 1 , wherein each node is associated with a node type, wherein the plurality of nodes further include a set of value nodes, and wherein the node type of the first node is a value node type.

18. The system of claim 1 , wherein each node is associated with a node type, and wherein the first overlay node is a node associated with an overlay node type.

19. The system of claim 1 , wherein each node is associated with a node type, the first overlay node defines the node type of the first node.

20. The system of claim 1 , wherein the first node comprises a composition of a second node of the graph-based model and a second overlay node.

21. The system of claim 20 , wherein each node is associated with a node type, and wherein execution of the first executable node causes execution of said processing logic of the first overlay node and said processing logic of the second overlay node.

22. The system of claim 21 , wherein execution of said processing logic of the second overlay node is dependent upon execution of said processing logic of the first overlay node.

23. The system of claim 21 , wherein execution of said processing logic of the first overlay node is dependent upon execution of said processing logic of the second overlay node.

24. The system of claim 1 , wherein each node is associated with a node type, and wherein the node type of the first node is an edge node type such that the first node is a first edge node of the set of edge nodes.

25. The system of claim 24 , wherein each role in the corresponding plurality of roles defines a relationship between the first edge node and a respective node of the plurality of nodes connected by the first edge node.

26. A method for dynamic generation of executable graph-based models, the method comprising:

obtaining, by processing circuitry, a graph-based model comprising a plurality of nodes including a set of edge nodes and a set of role nodes, wherein:

each edge node connects two or more nodes, of the plurality of nodes, via a corresponding plurality of roles, and

each role corresponds to a role node of the set of role nodes, and is indicative of a relationship between a corresponding edge node and a node, of the plurality of nodes, connected to the corresponding edge node;

obtaining, by the processing circuitry, a first overlay node comprising processing logic operable to interact with at least one node of an associated graph-based model;

determining, by the processing circuitry, an association between a first node of the graph-based model and the first overlay node; and

generating, by the processing circuitry, an executable graph-based model, wherein the executable graph-based model includes a first executable node comprising a composition of the first node of the graph-based model and the first overlay node based on the association between the first node of the graph-based model and the first overlay node.

27. A non-transitory computer-readable medium storing instructions which, based on execution by processing circuitry, cause the processing circuitry to:

obtain a graph-based model comprising-one or more a plurality of nodes including a set of edge nodes and a set of role nodes, wherein:

each edge node connects two or more nodes, of the plurality of nodes, via a corresponding plurality of roles, and

each role corresponds to a role node of the set of role nodes, and is indicative of a relationship between a corresponding edge node and a node, of the plurality of nodes, connected to the corresponding edge node;

obtain a first overlay node comprising processing logic operable to interact with at least one node of an associated graph-based model;

determine an association between a first node of the graph-based model and the first overlay node; and

generate an executable graph-based model, wherein the executable graph-based model includes a first executable node comprising a composition of the first node of the graph-based model and the first overlay node based on the association between the first node of the graph-based model and the first overlay node.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2023
From: SCHILDERS, STEVEN
To: INFOSYS LIMITED; INVERTIT
Reel/Frame 063173/0634 →
Continuity (2)
Provisional Application 63442682 · Feb 1, 2023
Related Publication 20240256602A1 · Aug 1, 2024
References Cited (21)
US 9799131B1 · Demiralp · 2017 [cited by examiner]
US 10095370B2 · Murasato · 2018 [cited by examiner]
US 11048483B2 · Dunn · 2021 [cited by examiner]
US 20070283352A1 · Degenhardt · 2007 [cited by examiner]
US 20130117280A1 · Donaldson · 2013 [cited by examiner]
US 20130311242A1 · Duftler · 2013 [cited by examiner]
US 20140059518A1 · Sierk · 2014 [cited by examiner]
US 20140096108A1 · Austin · 2014 [cited by examiner]
US 20150169297A1 · Kodosky · 2015 [cited by examiner]
US 20150277727A1 · Jemiolo · 2015 [cited by examiner]
US 20190258662A1 · Bator · 2019 [cited by examiner]
US 20190354348A1 · Stanfill · 2019 [cited by examiner]
US 20200042887A1 · Marcé · 2020 [cited by examiner]
US 20200089524A1 · Nelson · 2020 [cited by examiner]
US 20210056077A1 · Sapru · 2021 [cited by examiner]
US 20220360544A1 · Mingels · 2022 [cited by examiner]
US 20230023655A1 · Hui et al. · 2023 [cited by applicant]
US 20230041130A1 · Capalija · 2023 [cited by examiner]
WO 2018111699A1 · 2018 [cited by applicant]
Europe Patent Application No. 23165125.8, Extended European Search Report, dated Dec. 11, 2023. [cited by applicant]
Bulatov: “Fitting larger networks into memory”; dated Jan. 14, 2018, URL:https://medium.com/tensorflow/fittinglarger-networks-into- memory-583e3c758ff9 [retrieved on Nov. 24, 2023]. [cited by applicant]
Cited By (5)
US 12,561,373 US 12,572,597 US 12,596,749 US 12,602,434 US 12,645,647