Graph-based modeling apparatus and techniques
First Claim
1. An apparatus comprising:
- a computation module operable to perform subset computations for a graph-based model, the graph-based model comprising model nodes that represent components of a modeled system, operational dependencies between model nodes, and model edges that interconnect the nodes and represent relationships between the components in the modeled system, the subset computations comprising computing subsets of the model nodes that can impact operational dependencies between other model nodes, each computed subset comprising a subset of the model nodes that, if the model nodes of the subset are removed from the graph-based model, would separate other model nodes, between which there is an operational dependency, into different disconnected sub-graphs of the graph-based model; and
a control module operatively coupled to the computation module and operable to determine whether, due to a change to the graph-based model that results in a changed graph-based model, a partial subset computation to compute one or more subsets for only one or more particular operational dependencies between model nodes in the changed graph-based model should be performed, and to cause the computation module to perform the partial subset computation based on the determination, the one or more particular operational dependencies comprising fewer than all operational dependencies in the changed graph-based model,at least one of the computation module and the control module being implemented using hardware,wherein the control module is further operable to determine whether no subset computation or a full subset computation should be performed to compute subsets for all operational dependencies between model nodes in the changed graph-based model due to the change to the graph-based model, and, based on the determination, to cause the computation module to perform the full subset computation, the partial subset computation, or no subset computation,wherein the control module is operable to determine whether the full, the partial, or no subset computation should be performed by determining that the full subset computation is to be performed where the change comprises adding to the graph-based model a model node that is not a leaf model node or adding to the graph-based model a model edge between model nodes;
determining that the partial subset computation is to be performed where the change comprises deleting from the graph-based model a model node that is not a leaf model node, adding to or deleting from the graph-based model an operational dependency between model nodes, or deleting from the graph-based model a model edge between model nodes; and
determining that no subset computation is to be performed where the change comprises adding to or deleting from the graph-based model a leaf model node having no operational dependencies with other model nodes.
9 Assignments
0 Petitions
Accused Products
Abstract
Graph-based modeling apparatus and techniques are disclosed. Based on a model including model nodes that represent components of a modeled system, operational dependencies between model nodes, and model edges that interconnect the nodes and represent relationships between the components in the modeled system, subset computations are performed to compute subsets of the model nodes that can impact operational dependencies between other model nodes. When the model changes, a determination is made as to whether an incremental subset computation should be performed for one or more particular operational dependencies between model nodes in the changed model, and if so, an incremental subset computation is performed. Otherwise, a full subset computation or no subset computation might be performed. In this manner, model changes are considered on a case-by-case basis to determine an extent, if any, to which subsets should be re-computed.
14 Citations
15 Claims
-
1. An apparatus comprising:
-
a computation module operable to perform subset computations for a graph-based model, the graph-based model comprising model nodes that represent components of a modeled system, operational dependencies between model nodes, and model edges that interconnect the nodes and represent relationships between the components in the modeled system, the subset computations comprising computing subsets of the model nodes that can impact operational dependencies between other model nodes, each computed subset comprising a subset of the model nodes that, if the model nodes of the subset are removed from the graph-based model, would separate other model nodes, between which there is an operational dependency, into different disconnected sub-graphs of the graph-based model; and a control module operatively coupled to the computation module and operable to determine whether, due to a change to the graph-based model that results in a changed graph-based model, a partial subset computation to compute one or more subsets for only one or more particular operational dependencies between model nodes in the changed graph-based model should be performed, and to cause the computation module to perform the partial subset computation based on the determination, the one or more particular operational dependencies comprising fewer than all operational dependencies in the changed graph-based model, at least one of the computation module and the control module being implemented using hardware, wherein the control module is further operable to determine whether no subset computation or a full subset computation should be performed to compute subsets for all operational dependencies between model nodes in the changed graph-based model due to the change to the graph-based model, and, based on the determination, to cause the computation module to perform the full subset computation, the partial subset computation, or no subset computation, wherein the control module is operable to determine whether the full, the partial, or no subset computation should be performed by determining that the full subset computation is to be performed where the change comprises adding to the graph-based model a model node that is not a leaf model node or adding to the graph-based model a model edge between model nodes;
determining that the partial subset computation is to be performed where the change comprises deleting from the graph-based model a model node that is not a leaf model node, adding to or deleting from the graph-based model an operational dependency between model nodes, or deleting from the graph-based model a model edge between model nodes; and
determining that no subset computation is to be performed where the change comprises adding to or deleting from the graph-based model a leaf model node having no operational dependencies with other model nodes. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method comprising:
-
a computation module performing subset computations for a graph-based model, the graph-based model comprising model nodes that represent components of a modeled system, operational dependencies between model nodes, and model edges that interconnect the nodes and represent relationships between the components in the modeled system, the subset computations comprising computing subsets of the model nodes that can impact operational dependencies between other model nodes, each computed subset comprising a subset of the model nodes that, if the model nodes of the subset are removed from the graph-based model, would separate other model nodes, between which there is an operational dependency, into different disconnected sub-graphs of the graph-based model; a control module, operatively coupled to the computation module, determining whether, due to a change to the graph-based model that results in a changed graph-based model, a partial subset computation to compute one or more subsets for only one or more particular operational dependencies between model nodes in the changed graph-based model should be performed; and the computation module performing the partial subset computation based on the determination, the one or more particular operational dependencies comprising fewer than all operational dependencies in the changed graph-based model, at least one of the computation module and the control module being implemented using hardware, the method further comprising; determining whether no subset computation or a full subset computation should be performed for all operational dependencies between model nodes in the changed graph-based model due to the change to the graph-based model; and performing the full subset computation, the partial subset computation, or no subset computation, based on the determination, wherein determining whether the partial subset computation should be performed comprises determining that the partial subset computation is to be performed where the change comprises deleting from the graph-based model a model node that is not a leaf model node, adding to or deleting from the graph-based model an operational dependency between model nodes, or deleting from the graph-based model a model edge between model nodes, and wherein determining whether no subset computation or the full subset computation should be performed comprises determining that the full subset computation is to be performed where the change comprises adding to the graph-based model a model node that is not a leaf model node or adding to the graph-based model a model edge between model nodes, and determining that no subset computation is to be performed where the change comprises adding to or deleting from the graph-based model a leaf model node haying no operational dependencies with other model nodes. - View Dependent Claims (11, 12, 13, 14, 15)
-
Specification