US20060290697A1 - System for arranging a plurality of relational nodes into graphical layout form - Google Patents

System for arranging a plurality of relational nodes into graphical layout form Download PDF

Info

Publication number
US20060290697A1
US20060290697A1 US11/166,975 US16697505A US2006290697A1 US 20060290697 A1 US20060290697 A1 US 20060290697A1 US 16697505 A US16697505 A US 16697505A US 2006290697 A1 US2006290697 A1 US 2006290697A1
Authority
US
United States
Prior art keywords
nodes
cluster
clusters
determining
boundary
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US11/166,975
Inventor
Brendan Madden
Karlis Freivalds
Uli Foessmeier
Francois Bertault
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tom Sawyer Software
Original Assignee
Tom Sawyer Software
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tom Sawyer Software filed Critical Tom Sawyer Software
Priority to US11/166,975 priority Critical patent/US20060290697A1/en
Assigned to TOM SAWYER SOFTWARE reassignment TOM SAWYER SOFTWARE ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MADDEN, BRENDAN P., BERTAULT, FRANCOIS, FREIVALDS, KARLIS, FOESSMEIER, ULI
Priority to EP06785423A priority patent/EP1899919A4/en
Priority to PCT/US2006/024456 priority patent/WO2007002380A2/en
Publication of US20060290697A1 publication Critical patent/US20060290697A1/en
Priority to US13/278,047 priority patent/US8542234B2/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/206Drawing of charts or graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies

Definitions

  • the invention is directed to a system for arranging a plurality of relational nodes into graphical layout form.
  • Grouping nodes into graphical layout form is useful for providing an organizational view of the nodes in order to aid in conceptualizing relationships between the nodes.
  • the nodes themselves can represent members of a structure, such as a computer network, or of an organization, such as a group of individuals whose behavior and role in the organization is being modeled, for example for law enforcement purposes.
  • the nodes can also represent steps or sub-steps of a process, such as a manufacturing process or an information processing procedure.
  • the system in accordance with the invention includes a method for generating a graphical layout for a plurality of nodes based on the presence of predetermined inter-nodal relationships.
  • the method includes grouping nodes into one or more clusters, each containing one or more nodes, based on the inter-nodal relationships, and determining inter-cluster relationships from the inter-nodal relationships, determining a spatial layout of the clusters. Further, for at least a first cluster containing multiple nodes, the method includes determining a boundary prescribing a region in which the first cluster is contained, classifying the nodes in the first cluster into either internal or boundary nodes, projecting the boundary nodes to the boundary of the cluster, and determining a spatial layout of the internal nodes.
  • connection edges representing the inter-nodal relationships can be routed in order to avoid overlaps.
  • the system is applicable to groups of nodes comprising multiple clusters. Groups or subgroups of clusters can be treated as “clusters of clusters,” with the system of the invention being applied collectively to these clusters of clusters.
  • FIG. 1A is an arbitrary arrangement of nodes at the onset of the process in accordance with the invention.
  • FIG. 1B is an arrangement diagramming the performance of cluster positioning Step 3 ;
  • FIG. 1C is an arrangement diagramming the performance of initial positioning of nodes inside the cluster area Step 4 ;
  • FIG. 1D is an arrangement diagramming the result of final positioning Step 6 ;
  • FIG. 2 is a flow diagram of a process in accordance with the invention.
  • FIGS. 3A-3D are schematic diagrams of a non-incremental approach in accordance with the invention.
  • the system for arranging nodes into a prescribed graphical layout form in accordance with the invention will be described herein using as an illustrative and non-limiting example, the hypothetical of a group of twelve individual suspects (that is, nodes) being observed by law enforcement officials who are seeking to assess the suspects' role in a criminal organization.
  • the relationships between the nodes upon which the arrangement is based in this example will be observed telephone calls between the suspects.
  • FIG. 2 is a general overview of a process for arranging the nodes in graphical layout form in accordance with the invention.
  • the first step (Step 1 ) is a partitioning step, wherein nodes are partitioned, or grouped, into a set of clusters based on their relationships to one another—that is, based on inter-nodal relationships.
  • the partitioning step preferably uses a nondifferentiable optimization approach to ratio-cut partitioning as described in K. Freivalds, “A Nondifferentiable Optimization Approach To Ratio-Cut Partitioning,” Univ. of Norway, Institute of Mathematics and Computer Science, Riga, Lithuania.
  • Step 1 thus consists of algorithms which partition the nodes into one or more clusters based on their relationships to one another, and is achieved using algorithms that seek to balance the aim of generating equally-populated clusters, with that of using as few connections between the clusters as possible. Applicable algorithms for this approach are described in the aforementioned Freivalds reference, incorporated herein by reference in its entirety. It will be appreciated that other algorithms are also possible for Step 1 .
  • Cluster C 1 corresponds to the nodes A, C, D, F, G, J, K, L and cluster C 2 corresponds to the nodes B, E, H, I.
  • the single inter-cluster connection reflects the relationship between nodes G and B.
  • Step 1 is followed by cluster graph creation Step 2 in FIG. 2 .
  • Cluster graph creation Step 2 entails determining the size of each cluster in the graphical representation, based on the number of nodes it contains as finally determined in Step 1 .
  • partitioning Step 1 operates as an interplay, or balance, of optimization steps. The results of this optimization may or may not achieve equally-sized (or populated) clusters.
  • the conditions for the cluster graph creation Step 2 are such that two clusters are connected by a connection edge if there exist two nodes, one in each cluster, which were connected in the original graph ( FIG. 1A ).
  • Cluster size determination is based on the number of nodes contained in each cluster. Cluster size is proportional to this number. Each cluster is initially taken to be square in shape.
  • the length of the sides of the square is: radius* ⁇ square root over (2) ⁇ +spacing*2 where radius is roughly the sum of all sizes of nodes in a cluster (1 ⁇ 2*sum node i in cluster (height(i)+width(i))), and where spacing is the maximum node size (2*max node i in cluster (height(i)+width(i))).
  • radius is roughly the sum of all sizes of nodes in a cluster (1 ⁇ 2*sum node i in cluster (height(i)+width(i))), and where spacing is the maximum node size (2*max node i in cluster (height(i)+width(i))).
  • clusters C 1 and C 2 will have different sizes, with cluster C 1 being the larger of the two, since cluster C 1 is associated with eight nodes (suspects A, C, D, F, G, J, K, L), while cluster C 2 is associated with four (suspects B, E, H, and I).
  • Step 2 is followed by cluster positioning Step 3 , in which a spatial layout of the clusters is determined.
  • Cluster positioning Step 3 is implemented using known algorithms such as spring-directed or force-directed algorithms, which are analogues of physical systems in which the nodes are characterized as representative of bodies that repel each other, for example through magnetic forces, while the edges connecting the nodes are characterized as elastic tethers (rubber bands) that pull them together.
  • the algorithm first positions the bodies (nodes) randomly and then iteratively moves them in the direction of the sum of the forces acting on them, and continues until the movement becomes sufficiently small such that equilibrium is approached. Force-directed methods are well-known in the art, and other methods can be used for this purpose.
  • Cluster positioning Step 3 provides a balanced, uncluttered look to the graphical layout, with non-overlapping clusters.
  • the result of cluster positioning Step 3 is illustrated in FIG. 1B .
  • Cluster positioning can also be performed as a recursive call to Steps 1 - 6 explained below, wherein the clusters are viewed as “clusters of clusters” and treated accordingly, with the clusters being constrained within boundaries and classified as boundary or internal clusters, and arranged accordingly.
  • Step 4 determines an initial positioning of nodes inside the cluster area.
  • a region is created for each cluster, the region defining the position on the plane within which each cluster lies.
  • the region (R) is circular, as shown in FIG. 1C .
  • a force-directed or other algorithm taking into account the entire set of edges connecting nodes is then applied to adjust the placement of the nodes while respecting the boundary restrictions imposed by the regional determination of Step 4 . The adjustment results in fewer edge crossing and reduces overlaps between clusters and inter-cluster edges.
  • node classification takes place.
  • the nodes of each cluster are classified as either internal (I) or boundary (B) nodes. This is accomplished by projecting nodes onto the boundary (circle) of the region determined in Step 4 , starting with the nodes that are further away from the center of the boundary, and considering only the nodes that can be projected without overlapping with other boundary nodes already projected onto the boundary.
  • nodes that are incident (that is, related or connected) to one single other node are classified as boundary (B) nodes.
  • the remaining nodes are classified as internal (I) nodes.
  • Nodes of the cluster are sorted according to their distance to the cluster circle. This is defined as the distance of the node's center to the closest point on the circle.
  • An iteration through nodes of the cluster is performed, starting with the node closest to the cluster circle. For each node, it is checked whether, when moved to the closest point on the cluster circle, it would intersect with another node handled earlier in the loop. If not, the new node gets moved to that location on the cluster circle and becomes a boundary node. If yes, the node stays at its position inside the cluster and becomes an internal node. After all nodes are classified, each node with degree one is classified as a boundary node and moved to the closest point on the cluster circle, ignoring overlaps with other nodes in this case.
  • Step 6 the boundary (B) nodes of each cluster are projected, or moved (if not already performed in Step 5 ), outward to the cluster boundary.
  • the boundary nodes are separated from one another so as to be spread uniformly on the boundary. Their new boundary positions are then fixed, and a further force- or spring-directed or other algorithm is performed on the internal nodes in the cluster in order to better distribute the nodes in the cluster.
  • the result of projection Step 6 is illustrated in FIG. 1D .
  • An optional step may be performed to route connection edges between nodes to avoid overlap.
  • Steps 1 - 6 the system of the invention is described as implementing distinct Steps 1 - 6 .
  • steps may in fact over-lap, be greater or less than six in number, and may each constitute one or more sub-steps. Further, the order of the steps may be different from that set forth above by way of example only.
  • an incremental approach which allows changes to a layout without drastically altering its appearance can be taken.
  • Such an incremental approach accommodates a user's comfort with an existing layout, whose appearance is not dramatically changed despite changes to the nodes and/or relationships.
  • Such changes include adding new nodes or relationships, deleting existing nodes or relationships, and changing an existing layout (for example, by moving nodes to a different place).
  • the nondifferentiable optimization approach to ratio-cut partitioning in Step 1 is instead replaced by cluster determination based on existing node positions, so that nodes that are close together are placed into the same cluster, and nodes that are far apart are placed in different clusters.
  • force-directed algorithms are used in the layout of the cluster graph, these are applied at existing node positions, rather than to randomized node positions.
  • the force-directed algorithms are applied in the classification of nodes (Internal vs. Boundary)
  • the algorithms are initiated with the existing node positions rather than randomized node positions. If recursive calling is used, the recursive call is applied to the incremental version of the (circular) layout.
  • FIG. 3A shows an existing layout structure.
  • the addition of another relationship, indicated by the thicker line connecting the two clusters in FIG. 3B would, using the non-incremental approach, result in the layout depicted in FIG. 3C .
  • the incremental approach would yield the spatially similar layout of FIG. 3D , making the relatively minor change much more easily conceptualized.
  • the incremental clustering method is based on an algorithm that detects clusters from a circular-like drawing.
  • a circular drawing some nodes of a cluster are placed on a circle, some are placed inside a circle. Also, the user may place nodes close together to indicate that they should form a cluster.
  • the algorithm detects groups of nodes, where inside a group nodes are close together and the distance between groups is relatively large.
  • Proximity graphs can be used to determine groups of nodes that are close together. Each connected component of a proximity graph defines a group of nodes.
  • the sphere-of-influence graph is a graph on V with an edge between points p and q if and only if the circles Cp and Cq intersect in at least two places.
  • the pruned sphere-of-influence graph has an edge between points p and q when the distance between the circles Cp and Cq is smaller than some threshold.
  • the distance between two circles is defined as the distance between the centers minus the sum of the two circles' radii.
  • the threshold is selected proportional to the sum of the circle radii.
  • d(p,q) the distance between points p and q.
  • An edge (p,q) belongs to the Gabriel graph if d ( p,q ) ⁇ min(sqrt( d 2 ( p,s )+ d 2 ( q,s )) for each node s).
  • the pruned Gabriel graph has the same edges as the Gabriel graph except for edges that are longer than some threshold.
  • the threshold is chosen to be proportional to the average edge length in the Gabriel graph.
  • d(p,q) the distance between points p and q.
  • An edge (p,q) belongs to the relative neighborhood graph if d ( p,q ) ⁇ max( d ( p,s ), d ( q,s )) for each node s not equal to p or q).
  • the pruned relative neighborhood graph has the same edges as the relative neighborhood graph except for edges that are longer than some threshold.
  • the threshold is chosen to be proportional to the average edge length in the relative neighborhood graph.

Abstract

A system for arranging a plurality of nodes into graphical layout form partitions the nodes into a set of clusters from which a cluster graph is created. The cluster partitioning is based on the inter-nodal relationships, and cluster size depends on the number of nodes associated with each cluster. The clusters are laid out to avoid overlap, and cluster boundaries, within which nodes in a cluster are constrained, are generated. Nodes of each cluster as classified as either internal or boundary nodes, with boundary nodes being projected outward towards the boundary of the cluster. As an optional step, connection edges between nodes are routed to avoid overlap.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • (Not applicable)
  • BACKGROUND OF THE INVENTION
  • 1. Field of the Invention
  • The invention is directed to a system for arranging a plurality of relational nodes into graphical layout form.
  • 2. Description of the Related Art
  • Grouping nodes into graphical layout form is useful for providing an organizational view of the nodes in order to aid in conceptualizing relationships between the nodes. The nodes themselves can represent members of a structure, such as a computer network, or of an organization, such as a group of individuals whose behavior and role in the organization is being modeled, for example for law enforcement purposes. The nodes can also represent steps or sub-steps of a process, such as a manufacturing process or an information processing procedure.
  • BRIEF SUMMARY OF THE INVENTION
  • The system in accordance with the invention includes a method for generating a graphical layout for a plurality of nodes based on the presence of predetermined inter-nodal relationships. The method includes grouping nodes into one or more clusters, each containing one or more nodes, based on the inter-nodal relationships, and determining inter-cluster relationships from the inter-nodal relationships, determining a spatial layout of the clusters. Further, for at least a first cluster containing multiple nodes, the method includes determining a boundary prescribing a region in which the first cluster is contained, classifying the nodes in the first cluster into either internal or boundary nodes, projecting the boundary nodes to the boundary of the cluster, and determining a spatial layout of the internal nodes. Optionally, the connection edges representing the inter-nodal relationships can be routed in order to avoid overlaps. The system is applicable to groups of nodes comprising multiple clusters. Groups or subgroups of clusters can be treated as “clusters of clusters,” with the system of the invention being applied collectively to these clusters of clusters.
  • BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
  • Many advantages of the present invention will be apparent to those skilled in the art with a reading of this specification in conjunction with the attached drawings, wherein like reference numerals are applied to like elements, and wherein:
  • FIG. 1A is an arbitrary arrangement of nodes at the onset of the process in accordance with the invention;
  • FIG. 1B is an arrangement diagramming the performance of cluster positioning Step 3;
  • FIG. 1C is an arrangement diagramming the performance of initial positioning of nodes inside the cluster area Step 4;
  • FIG. 1D is an arrangement diagramming the result of final positioning Step 6;
  • FIG. 2 is a flow diagram of a process in accordance with the invention; and
  • FIGS. 3A-3D are schematic diagrams of a non-incremental approach in accordance with the invention.
  • DETAILED DESCRIPTION OF THE INVENTION
  • The system for arranging nodes into a prescribed graphical layout form in accordance with the invention will be described herein using as an illustrative and non-limiting example, the hypothetical of a group of twelve individual suspects (that is, nodes) being observed by law enforcement officials who are seeking to assess the suspects' role in a criminal organization. The relationships between the nodes upon which the arrangement is based in this example will be observed telephone calls between the suspects.
  • The following starting conditions, illustrated graphically, in no particular arrangement in FIG. 1A, are used:
  • Number of Suspects (Nodes):
      • 12
  • Identities of Suspects:
      • A, B, C, D, E, F, G, H, I, J, K, L
  • Observed Relationships (Each Relationship is Represented as a Set Whose Elements Are the Pair of Individuals Between Which a Telephone Call Occurred):
      • (B,I), (E,B), (E,I), (F,A), (F,C), (F,D), (F,G), (F,J), (F,L), (G,B), (G,D), (H,B), (H,E), (I,H), (J,A), (J,C), (K,G), (L,D)
  • FIG. 2 is a general overview of a process for arranging the nodes in graphical layout form in accordance with the invention. The first step (Step 1) is a partitioning step, wherein nodes are partitioned, or grouped, into a set of clusters based on their relationships to one another—that is, based on inter-nodal relationships. The partitioning step preferably uses a nondifferentiable optimization approach to ratio-cut partitioning as described in K. Freivalds, “A Nondifferentiable Optimization Approach To Ratio-Cut Partitioning,” Univ. of Latvia, Institute of Mathematics and Computer Science, Riga, Latvia. This approach takes the inter-nodal connections into account, and relies on a dual-optimization process, with one optimization goal being to achieve cluster size parity—that is, generate clusters that are as close to one another in size as possible, with size being determined by the number of nodes constituting each cluster. The other optimization goal is inter-cluster connectivity minimization—that is, minimizing the number of connections between the different clusters. Step 1 thus consists of algorithms which partition the nodes into one or more clusters based on their relationships to one another, and is achieved using algorithms that seek to balance the aim of generating equally-populated clusters, with that of using as few connections between the clusters as possible. Applicable algorithms for this approach are described in the aforementioned Freivalds reference, incorporated herein by reference in its entirety. It will be appreciated that other algorithms are also possible for Step 1.
  • Applying partitioning Step 1 to the arbitrary arrangement of FIG. 1A alters that arrangement such that it can be represented by a pair of clusters C1 and C2 optimally accounting for the relationships (telephone calls) between the nodes (suspects). Cluster C1 corresponds to the nodes A, C, D, F, G, J, K, L and cluster C2 corresponds to the nodes B, E, H, I. The single inter-cluster connection reflects the relationship between nodes G and B.
  • Step 1 is followed by cluster graph creation Step 2 in FIG. 2. Cluster graph creation Step 2 entails determining the size of each cluster in the graphical representation, based on the number of nodes it contains as finally determined in Step 1. As explained above, partitioning Step 1 operates as an interplay, or balance, of optimization steps. The results of this optimization may or may not achieve equally-sized (or populated) clusters. The conditions for the cluster graph creation Step 2 are such that two clusters are connected by a connection edge if there exist two nodes, one in each cluster, which were connected in the original graph (FIG. 1A). Cluster size determination is based on the number of nodes contained in each cluster. Cluster size is proportional to this number. Each cluster is initially taken to be square in shape. The length of the sides of the square is:
    radius*√{square root over (2)}+spacing*2
    where radius is roughly the sum of all sizes of nodes in a cluster (½*sumnode i in cluster(height(i)+width(i))), and where spacing is the maximum node size (2*maxnode i in cluster(height(i)+width(i))). It will be appreciated that the formula for radius is actually more complicated than that used above for the sake of simplicity of explanation, but that it can be readily ascertained by those of ordinary skill in the art. Also, other formulas can be used without changing the nature of the invention.
  • In this example, clusters C1 and C2 will have different sizes, with cluster C1 being the larger of the two, since cluster C1 is associated with eight nodes (suspects A, C, D, F, G, J, K, L), while cluster C2 is associated with four (suspects B, E, H, and I).
  • As seen in FIG. 2, Step 2 is followed by cluster positioning Step 3, in which a spatial layout of the clusters is determined. Cluster positioning Step 3 is implemented using known algorithms such as spring-directed or force-directed algorithms, which are analogues of physical systems in which the nodes are characterized as representative of bodies that repel each other, for example through magnetic forces, while the edges connecting the nodes are characterized as elastic tethers (rubber bands) that pull them together. The algorithm first positions the bodies (nodes) randomly and then iteratively moves them in the direction of the sum of the forces acting on them, and continues until the movement becomes sufficiently small such that equilibrium is approached. Force-directed methods are well-known in the art, and other methods can be used for this purpose. Cluster positioning Step 3 provides a balanced, uncluttered look to the graphical layout, with non-overlapping clusters. The result of cluster positioning Step 3 is illustrated in FIG. 1B. Cluster positioning can also be performed as a recursive call to Steps 1-6 explained below, wherein the clusters are viewed as “clusters of clusters” and treated accordingly, with the clusters being constrained within boundaries and classified as boundary or internal clusters, and arranged accordingly.
  • Step 4 determines an initial positioning of nodes inside the cluster area. In Step 4, a region is created for each cluster, the region defining the position on the plane within which each cluster lies. In the preferred embodiment, the region (R) is circular, as shown in FIG. 1C. A force-directed or other algorithm taking into account the entire set of edges connecting nodes is then applied to adjust the placement of the nodes while respecting the boundary restrictions imposed by the regional determination of Step 4. The adjustment results in fewer edge crossing and reduces overlaps between clusters and inter-cluster edges.
  • In Step 5, node classification takes place. The nodes of each cluster are classified as either internal (I) or boundary (B) nodes. This is accomplished by projecting nodes onto the boundary (circle) of the region determined in Step 4, starting with the nodes that are further away from the center of the boundary, and considering only the nodes that can be projected without overlapping with other boundary nodes already projected onto the boundary. In addition, nodes that are incident (that is, related or connected) to one single other node are classified as boundary (B) nodes. The remaining nodes are classified as internal (I) nodes.
  • An assumption is made that all nodes of the cluster are located inside an area bounded by the circle, referred to as the “cluster circle.” Nodes of the cluster are sorted according to their distance to the cluster circle. This is defined as the distance of the node's center to the closest point on the circle. An iteration through nodes of the cluster is performed, starting with the node closest to the cluster circle. For each node, it is checked whether, when moved to the closest point on the cluster circle, it would intersect with another node handled earlier in the loop. If not, the new node gets moved to that location on the cluster circle and becomes a boundary node. If yes, the node stays at its position inside the cluster and becomes an internal node. After all nodes are classified, each node with degree one is classified as a boundary node and moved to the closest point on the cluster circle, ignoring overlaps with other nodes in this case.
  • Finally, in Step 6, the boundary (B) nodes of each cluster are projected, or moved (if not already performed in Step 5), outward to the cluster boundary. The boundary nodes are separated from one another so as to be spread uniformly on the boundary. Their new boundary positions are then fixed, and a further force- or spring-directed or other algorithm is performed on the internal nodes in the cluster in order to better distribute the nodes in the cluster. The result of projection Step 6 is illustrated in FIG. 1D.
  • An optional step may be performed to route connection edges between nodes to avoid overlap.
  • The above procedures facilitate the conceptualization of the relationships of the nodes to one another. Thus, returning to the law enforcement example introduced above, it can be seen from FIG. 1D that there are effectively two groups of suspects, corresponding to clusters C1 and C2. In the C1 group, suspect F appears to be the “ring-leader,” as suspect F has the most telephone calls to other suspects in the group. The two groups are almost autonomous, with phone calls between suspect B and suspect G being the exclusive link between them.
  • It will be appreciated that for convenience and ease of conceptualization the system of the invention is described as implementing distinct Steps 1-6. However, it should be noted that these steps may in fact over-lap, be greater or less than six in number, and may each constitute one or more sub-steps. Further, the order of the steps may be different from that set forth above by way of example only.
  • As an alternative to the above approach, characterized as being non-incremental in nature, an incremental approach which allows changes to a layout without drastically altering its appearance can be taken. Such an incremental approach accommodates a user's comfort with an existing layout, whose appearance is not dramatically changed despite changes to the nodes and/or relationships. Such changes include adding new nodes or relationships, deleting existing nodes or relationships, and changing an existing layout (for example, by moving nodes to a different place).
  • In the incremental approach, the nondifferentiable optimization approach to ratio-cut partitioning in Step 1 is instead replaced by cluster determination based on existing node positions, so that nodes that are close together are placed into the same cluster, and nodes that are far apart are placed in different clusters. Further, when force-directed algorithms are used in the layout of the cluster graph, these are applied at existing node positions, rather than to randomized node positions. When the force-directed algorithms are applied in the classification of nodes (Internal vs. Boundary), the algorithms are initiated with the existing node positions rather than randomized node positions. If recursive calling is used, the recursive call is applied to the incremental version of the (circular) layout.
  • To illustrate the non-incremental approach, reference is first made to FIGS. 3A-3D. FIG. 3A shows an existing layout structure. The addition of another relationship, indicated by the thicker line connecting the two clusters in FIG. 3B, would, using the non-incremental approach, result in the layout depicted in FIG. 3C. By comparison, the incremental approach would yield the spatially similar layout of FIG. 3D, making the relatively minor change much more easily conceptualized.
  • The incremental clustering method is based on an algorithm that detects clusters from a circular-like drawing. In a circular drawing some nodes of a cluster are placed on a circle, some are placed inside a circle. Also, the user may place nodes close together to indicate that they should form a cluster.
  • The algorithm detects groups of nodes, where inside a group nodes are close together and the distance between groups is relatively large. Proximity graphs can be used to determine groups of nodes that are close together. Each connected component of a proximity graph defines a group of nodes. For a definition and discussion of proximity graphs, reference is made to J. W. Jaromczyk and Godfried T. Toussaint, “Relative Neighborhood Graphs And Their Relatives,” In Proc. IEEE, pages 1502-1517, 1992.
  • Some proximity graphs are defined in the following:
  • Let V={p1, . . . pn} be a set of n points in the plane. For each point p let Rp be the closest distance to any other point in the set, and let Cp be a circle of radius Rp centered atp.
  • Sphere-of-Influence Graph
  • The sphere-of-influence graph is a graph on V with an edge between points p and q if and only if the circles Cp and Cq intersect in at least two places.
  • Pruned Sphere-of-Influence Graph
  • The pruned sphere-of-influence graph has an edge between points p and q when the distance between the circles Cp and Cq is smaller than some threshold. The distance between two circles is defined as the distance between the centers minus the sum of the two circles' radii. The threshold is selected proportional to the sum of the circle radii.
  • Gabriel Graph
  • Denote d(p,q) the distance between points p and q. An edge (p,q) belongs to the Gabriel graph if
    d(p,q)≦min(sqrt(d 2(p,s)+d 2(q,s)) for each node s).
  • Pruned Gabriel Graph
  • The pruned Gabriel graph has the same edges as the Gabriel graph except for edges that are longer than some threshold. The threshold is chosen to be proportional to the average edge length in the Gabriel graph.
  • Relative Neighborhood Graph
  • Denote d(p,q) the distance between points p and q. An edge (p,q) belongs to the relative neighborhood graph if
    d(p,q)≦max(d(p,s),d(q,s)) for each node s not equal to p or q).
  • Pruned Relative Neighborhood Graph
  • The pruned relative neighborhood graph has the same edges as the relative neighborhood graph except for edges that are longer than some threshold. The threshold is chosen to be proportional to the average edge length in the relative neighborhood graph.
  • The above are exemplary modes of carrying out the invention and are not intended to be limiting. It will be apparent to those of ordinary skill in the art that modifications thereto can be made without departure from the spirit and scope of the invention as set forth in the following claims.

Claims (10)

1. A method for generating a graphical layout for a plurality of nodes based on the presence of predetermined inter-nodal relationships between the nodes, the method comprising:
grouping nodes into one or more clusters, each containing one or more nodes, based on the inter-nodal relationships;
determining inter-cluster relationships from the inter-nodal relationships;
determining a spatial layout of the clusters; and
for each cluster containing multiple nodes,
determining a boundary for the cluster;
classifying the nodes in the cluster as either internal or boundary nodes;
projecting the boundary nodes to the boundary of the cluster; and
determining a spatial layout of the internal nodes.
2. The method of claim 1, wherein said grouping comprises:
balancing a cluster size parity optimization operation with a cluster connectivity minimization operation,
wherein said cluster size parity optimization operation comprises attempting to achieve clusters whose sizes are as close to one another as possible, and wherein said connectivity minimization operation comprises attempting to minimize the number of connections between clusters, each connection representing an inter-nodal relationship
3. The method of claim 1, wherein determining a spatial layout of the clusters comprises using a spring-directed algorithm.
4. The method of claim 1, wherein determining a spatial layout of the clusters comprises using a force-directed algorithm.
5. The method of claim 1, wherein determining a spatial layout of the internal nodes comprises using a spring-directed algorithm.
6. The method of claim 1, wherein determining a spatial layout of the internal nodes comprises using a force-directed algorithm.
7. The method of claim 1, wherein the boundary is circular.
8. The method of claim 1, further comprising providing non-overlapping connection edges between nodes.
9. The method of claim 1, wherein determining a spatial layout of the clusters, classifying the nodes in the cluster as either internal or boundary nodes, and determining a spatial layout of the internal nodes are performed using existing node positions.
10. The method of claim 9, wherein a calculation of previously existing groups is performed using a proximity graph.
US11/166,975 2005-06-24 2005-06-24 System for arranging a plurality of relational nodes into graphical layout form Abandoned US20060290697A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US11/166,975 US20060290697A1 (en) 2005-06-24 2005-06-24 System for arranging a plurality of relational nodes into graphical layout form
EP06785423A EP1899919A4 (en) 2005-06-24 2006-06-22 System for arranging a plurality of relational nodes into graphical layout form
PCT/US2006/024456 WO2007002380A2 (en) 2005-06-24 2006-06-22 System for arranging a plurality of relational nodes into graphical layout form
US13/278,047 US8542234B2 (en) 2005-06-24 2011-10-20 System for arranging a plurality of relational nodes into graphical layout form

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/166,975 US20060290697A1 (en) 2005-06-24 2005-06-24 System for arranging a plurality of relational nodes into graphical layout form

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/278,047 Continuation US8542234B2 (en) 2005-06-24 2011-10-20 System for arranging a plurality of relational nodes into graphical layout form

Publications (1)

Publication Number Publication Date
US20060290697A1 true US20060290697A1 (en) 2006-12-28

Family

ID=37566768

Family Applications (2)

Application Number Title Priority Date Filing Date
US11/166,975 Abandoned US20060290697A1 (en) 2005-06-24 2005-06-24 System for arranging a plurality of relational nodes into graphical layout form
US13/278,047 Active 2025-07-13 US8542234B2 (en) 2005-06-24 2011-10-20 System for arranging a plurality of relational nodes into graphical layout form

Family Applications After (1)

Application Number Title Priority Date Filing Date
US13/278,047 Active 2025-07-13 US8542234B2 (en) 2005-06-24 2011-10-20 System for arranging a plurality of relational nodes into graphical layout form

Country Status (3)

Country Link
US (2) US20060290697A1 (en)
EP (1) EP1899919A4 (en)
WO (1) WO2007002380A2 (en)

Cited By (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070103468A1 (en) * 2005-11-08 2007-05-10 Microsoft Corporation Smart shape insert
US20080094399A1 (en) * 2006-10-20 2008-04-24 Ulrich Karl Heinkel Method and apparatus for displaying graphical representations of graph layouts
US20080147660A1 (en) * 2005-03-31 2008-06-19 Alexander Jarczyk Method for Arranging Object Data in Electronic Maps
US20090100333A1 (en) * 2007-10-16 2009-04-16 Jun Xiao Visualizing circular graphic objects
US20090125620A1 (en) * 2007-11-13 2009-05-14 John Gregory Klincewicz Assigning telecommunications nodes to community of interest clusters
US20090216780A1 (en) * 2008-02-25 2009-08-27 Microsoft Corporation Efficient method for clustering nodes
US20100149186A1 (en) * 2008-12-11 2010-06-17 Gansner Emden R Methods, Systems, and Products for Graphing Data
US20100313157A1 (en) * 2009-02-10 2010-12-09 Ayasdi, Inc. Systems and Methods for Visualization of Data Analysis
US20100309206A1 (en) * 2009-06-04 2010-12-09 Microsoft Corporation Graph scalability
US20110181595A1 (en) * 2010-01-22 2011-07-28 Microsoft Corporation Visualizing a Layered Graph Using Edge Bundling
WO2011126491A1 (en) * 2010-04-09 2011-10-13 Hewlett-Packard Development Company, L.P. Project clustering and relationship visualization
CN102279874A (en) * 2010-06-14 2011-12-14 微软公司 Fast edge routing for interactive diagramming
US20120272168A1 (en) * 2011-04-20 2012-10-25 Panafold Methods, apparatus, and systems for visually representing a relative relevance of content elements to an attractor
WO2013097026A1 (en) * 2011-12-28 2013-07-04 Chrapko Evan V Systems and methods for visualizing social graphs
JP2013242622A (en) * 2012-05-17 2013-12-05 Nippon Telegr & Teleph Corp <Ntt> Graph data visualization apparatus, method and program
US20140098101A1 (en) * 2012-10-10 2014-04-10 International Business Machines Corporation Node cluster relationships in a graph database
US8788497B2 (en) 2008-09-15 2014-07-22 Microsoft Corporation Automated criterion-based grouping and presenting
US8856946B2 (en) 2013-01-31 2014-10-07 International Business Machines Corporation Security filter for context-based data gravity wells
US8898165B2 (en) 2012-07-02 2014-11-25 International Business Machines Corporation Identification of null sets in a context-based electronic document search
US8903813B2 (en) 2012-07-02 2014-12-02 International Business Machines Corporation Context-based electronic document search using a synthetic event
US8914413B2 (en) 2013-01-02 2014-12-16 International Business Machines Corporation Context-based data gravity wells
US8931109B2 (en) 2012-11-19 2015-01-06 International Business Machines Corporation Context-based security screening for accessing data
US8959119B2 (en) 2012-08-27 2015-02-17 International Business Machines Corporation Context-based graph-relational intersect derived database
US8983981B2 (en) 2013-01-02 2015-03-17 International Business Machines Corporation Conformed dimensional and context-based data gravity wells
US20150135048A1 (en) * 2011-04-20 2015-05-14 Panafold Methods, apparatus, and systems for visually representing a relative relevance of content elements to an attractor
US9053102B2 (en) 2013-01-31 2015-06-09 International Business Machines Corporation Generation of synthetic context frameworks for dimensionally constrained hierarchical synthetic context-based objects
US9069752B2 (en) 2013-01-31 2015-06-30 International Business Machines Corporation Measuring and displaying facets in context-based conformed dimensional data gravity wells
US9069838B2 (en) 2012-09-11 2015-06-30 International Business Machines Corporation Dimensionally constrained synthetic context objects database
US9195608B2 (en) 2013-05-17 2015-11-24 International Business Machines Corporation Stored data analysis
US9223846B2 (en) 2012-09-18 2015-12-29 International Business Machines Corporation Context-based navigation through a database
US9229932B2 (en) 2013-01-02 2016-01-05 International Business Machines Corporation Conformed dimensional data gravity wells
US9251237B2 (en) 2012-09-11 2016-02-02 International Business Machines Corporation User-specific synthetic context object matching
US9262499B2 (en) 2012-08-08 2016-02-16 International Business Machines Corporation Context-based graphical database
US9264329B2 (en) 2010-03-05 2016-02-16 Evan V Chrapko Calculating trust scores based on social graph statistics
US9292506B2 (en) 2013-02-28 2016-03-22 International Business Machines Corporation Dynamic generation of demonstrative aids for a meeting
US9348794B2 (en) 2013-05-17 2016-05-24 International Business Machines Corporation Population of context-based data gravity wells
US9418457B1 (en) * 2015-06-05 2016-08-16 International Business Machines Corporation Force-directed graphs
US9438619B1 (en) 2016-02-29 2016-09-06 Leo M. Chan Crowdsourcing of trustworthiness indicators
US9443334B2 (en) 2011-05-05 2016-09-13 Microsoft Technology Licensing, Llc Routing edges with ordered bundles
US9460200B2 (en) 2012-07-02 2016-10-04 International Business Machines Corporation Activity recommendation based on a context-based electronic files search
US9578043B2 (en) 2015-03-20 2017-02-21 Ashif Mawji Calculating a trust score
US9619580B2 (en) 2012-09-11 2017-04-11 International Business Machines Corporation Generation of synthetic context objects
WO2017074417A1 (en) * 2015-10-30 2017-05-04 Hewlett Packard Enterprise Development Lp Constrained permutation-based graph generation
US9679254B1 (en) 2016-02-29 2017-06-13 Www.Trustscience.Com Inc. Extrapolating trends in trust scores
US9721296B1 (en) 2016-03-24 2017-08-01 Www.Trustscience.Com Inc. Learning an entity's trust model and risk tolerance to calculate a risk score
US9740709B1 (en) 2016-02-17 2017-08-22 Www.Trustscience.Com Inc. Searching for entities based on trust score and geography
US9740753B2 (en) 2008-12-18 2017-08-22 International Business Machines Corporation Using spheres-of-influence to characterize network relationships
US9836183B1 (en) * 2016-09-14 2017-12-05 Quid, Inc. Summarized network graph for semantic similarity graphs of large corpora
US9922134B2 (en) 2010-04-30 2018-03-20 Www.Trustscience.Com Inc. Assessing and scoring people, businesses, places, things, and brands
CN108052085A (en) * 2017-12-28 2018-05-18 成都数成科技有限公司 A kind of method of industry control instruction Transfer path analysis
US10062193B2 (en) * 2014-06-12 2018-08-28 Oracle International Corporation Attribute based map marker clustering
US10127618B2 (en) 2009-09-30 2018-11-13 Www.Trustscience.Com Inc. Determining connectivity within a community
US10152526B2 (en) 2013-04-11 2018-12-11 International Business Machines Corporation Generation of synthetic context objects using bounded context objects
US10180969B2 (en) 2017-03-22 2019-01-15 Www.Trustscience.Com Inc. Entity resolution and identity management in big, noisy, and/or unstructured data
US10187277B2 (en) 2009-10-23 2019-01-22 Www.Trustscience.Com Inc. Scoring using distributed database with encrypted communications for credit-granting and identification verification
CN109977273A (en) * 2019-03-28 2019-07-05 杭州安恒信息技术股份有限公司 A kind of topology drawing generating method, device, equipment and readable storage medium storing program for executing
US10565749B1 (en) * 2016-06-10 2020-02-18 Invincea, Inc. Methods and apparatus for efficiently processing a graph data structure
JP2020052674A (en) * 2018-09-26 2020-04-02 株式会社日立製作所 Process state analyzer and process state display method
US10623299B2 (en) * 2018-04-28 2020-04-14 Hewlett Packard Enterprise Development Lp Reduced topologies
US10713304B2 (en) * 2016-01-26 2020-07-14 International Business Machines Corporation Entity arrangement by shape input
US11968105B2 (en) 2022-04-14 2024-04-23 Www.Trustscience.Com Inc. Systems and methods for social graph data analytics to determine connectivity within a community

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101820357B (en) * 2010-02-11 2012-10-10 哈尔滨工业大学 Network security incident visualization system
US8937618B2 (en) * 2012-05-03 2015-01-20 Sap Portals Israel Ltd Graphical representations of corporate networks
US9665270B2 (en) 2013-06-28 2017-05-30 Sap Se Layout algorithm for entity relation model diagram
US9928624B2 (en) 2014-10-14 2018-03-27 International Business Machines Corporation Visualization of relationships and strengths between data nodes
CN105515813B (en) * 2014-10-15 2020-08-04 南京中兴软件有限责任公司 Method and device for visualizing flow in SDN network
US11475318B2 (en) 2019-05-29 2022-10-18 Kyndryl, Inc. Automated resolution of over and under-specification in a knowledge graph

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5450535A (en) * 1993-09-24 1995-09-12 At&T Corp. Graphs employing clusters
US5808615A (en) * 1996-05-01 1998-09-15 Electronic Data Systems Corporation Process and system for mapping the relationship of the content of a collection of documents
US6453246B1 (en) * 1996-11-04 2002-09-17 3-Dimensional Pharmaceuticals, Inc. System, method, and computer program product for representing proximity data in a multi-dimensional space
US6470383B1 (en) * 1996-10-15 2002-10-22 Mercury Interactive Corporation System and methods for generating and displaying web site usage data
US6801200B1 (en) * 1998-10-19 2004-10-05 Microsoft Corporation Layout of data structures based on relationships between the data structures

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5276789A (en) 1990-05-14 1994-01-04 Hewlett-Packard Co. Graphic display of network topology
US5596703A (en) * 1993-10-22 1997-01-21 Lucent Technologies Inc. Graphical display of relationships
US6091424A (en) * 1996-11-01 2000-07-18 Tom Sawyer Software Labeling graphical features of drawings
US6122283A (en) 1996-11-01 2000-09-19 Motorola Inc. Method for obtaining a lossless compressed aggregation of a communication network
US6437804B1 (en) * 1997-10-23 2002-08-20 Aprisma Management Technologies, Inc Method for automatic partitioning of node-weighted, edge-constrained graphs
US6742003B2 (en) * 2001-04-30 2004-05-25 Microsoft Corporation Apparatus and accompanying methods for visualizing clusters of data and hierarchical cluster classifications
US7373612B2 (en) * 2002-10-21 2008-05-13 Battelle Memorial Institute Multidimensional structured data visualization method and apparatus, text visualization method and apparatus, method and apparatus for visualizing and graphically navigating the world wide web, method and apparatus for visualizing hierarchies

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5450535A (en) * 1993-09-24 1995-09-12 At&T Corp. Graphs employing clusters
US5808615A (en) * 1996-05-01 1998-09-15 Electronic Data Systems Corporation Process and system for mapping the relationship of the content of a collection of documents
US6470383B1 (en) * 1996-10-15 2002-10-22 Mercury Interactive Corporation System and methods for generating and displaying web site usage data
US6453246B1 (en) * 1996-11-04 2002-09-17 3-Dimensional Pharmaceuticals, Inc. System, method, and computer program product for representing proximity data in a multi-dimensional space
US6801200B1 (en) * 1998-10-19 2004-10-05 Microsoft Corporation Layout of data structures based on relationships between the data structures

Cited By (111)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080147660A1 (en) * 2005-03-31 2008-06-19 Alexander Jarczyk Method for Arranging Object Data in Electronic Maps
US7423646B2 (en) * 2005-11-08 2008-09-09 Microsoft Corporation Smart shape insert
US20070103468A1 (en) * 2005-11-08 2007-05-10 Microsoft Corporation Smart shape insert
US20080094399A1 (en) * 2006-10-20 2008-04-24 Ulrich Karl Heinkel Method and apparatus for displaying graphical representations of graph layouts
US8902231B2 (en) * 2006-10-20 2014-12-02 Alcatel Lucent Method and apparatus for displaying graphical representations of graph layouts
US20090100333A1 (en) * 2007-10-16 2009-04-16 Jun Xiao Visualizing circular graphic objects
US8914491B2 (en) 2007-11-13 2014-12-16 At&T Intellectual Property, I, L.P. Assigning telecommunications nodes to community of interest clusters
US20090125620A1 (en) * 2007-11-13 2009-05-14 John Gregory Klincewicz Assigning telecommunications nodes to community of interest clusters
US8495201B2 (en) 2007-11-13 2013-07-23 At&T Intellectual Property I, L.P. Assigning telecommunications nodes to community of interest clusters
US8275866B2 (en) * 2007-11-13 2012-09-25 At&T Intellectual Property I, L.P. Assigning telecommunications nodes to community of interest clusters
US20090216780A1 (en) * 2008-02-25 2009-08-27 Microsoft Corporation Efficient method for clustering nodes
US20100332564A1 (en) * 2008-02-25 2010-12-30 Microsoft Corporation Efficient Method for Clustering Nodes
US20100325110A1 (en) * 2008-02-25 2010-12-23 Microsoft Corporation Efficient Method for Clustering Nodes
US8150853B2 (en) 2008-02-25 2012-04-03 Microsoft Corporation Efficient method for clustering nodes
US7818322B2 (en) 2008-02-25 2010-10-19 Microsoft Corporation Efficient method for clustering nodes
US8788497B2 (en) 2008-09-15 2014-07-22 Microsoft Corporation Automated criterion-based grouping and presenting
US20100149186A1 (en) * 2008-12-11 2010-06-17 Gansner Emden R Methods, Systems, and Products for Graphing Data
US8654126B2 (en) 2008-12-11 2014-02-18 At&T Intellectual Property I, L.P. Methods, systems, and products for graphing data to reduce overlap
US9740753B2 (en) 2008-12-18 2017-08-22 International Business Machines Corporation Using spheres-of-influence to characterize network relationships
US8972899B2 (en) * 2009-02-10 2015-03-03 Ayasdi, Inc. Systems and methods for visualization of data analysis
US11868376B2 (en) 2009-02-10 2024-01-09 Symphonyai Sensa Llc Systems and methods for visualization of data analysis
US20100313157A1 (en) * 2009-02-10 2010-12-09 Ayasdi, Inc. Systems and Methods for Visualization of Data Analysis
US11263244B2 (en) 2009-02-10 2022-03-01 Ayasdi Ai Llc Systems and methods for visualization of data analysis
US10650031B2 (en) 2009-02-10 2020-05-12 Ayasdi Ai Llc Systems and methods for visualization of data analysis
US8497863B2 (en) * 2009-06-04 2013-07-30 Microsoft Corporation Graph scalability
US20100309206A1 (en) * 2009-06-04 2010-12-09 Microsoft Corporation Graph scalability
US10127618B2 (en) 2009-09-30 2018-11-13 Www.Trustscience.Com Inc. Determining connectivity within a community
US11323347B2 (en) 2009-09-30 2022-05-03 Www.Trustscience.Com Inc. Systems and methods for social graph data analytics to determine connectivity within a community
US10812354B2 (en) 2009-10-23 2020-10-20 Www.Trustscience.Com Inc. Parallel computational framework and application server for determining path connectivity
US10348586B2 (en) 2009-10-23 2019-07-09 Www.Trustscience.Com Inc. Parallel computatonal framework and application server for determining path connectivity
US11665072B2 (en) 2009-10-23 2023-05-30 Www.Trustscience.Com Inc. Parallel computational framework and application server for determining path connectivity
US10187277B2 (en) 2009-10-23 2019-01-22 Www.Trustscience.Com Inc. Scoring using distributed database with encrypted communications for credit-granting and identification verification
US20110181595A1 (en) * 2010-01-22 2011-07-28 Microsoft Corporation Visualizing a Layered Graph Using Edge Bundling
US8933937B2 (en) 2010-01-22 2015-01-13 Microsoft Corporation Visualizing a layered graph using edge bundling
US11546223B2 (en) 2010-03-05 2023-01-03 Www.Trustscience.Com Inc. Systems and methods for conducting more reliable assessments with connectivity statistics
US10887177B2 (en) 2010-03-05 2021-01-05 Www.Trustscience.Com Inc. Calculating trust scores based on social graph statistics
US10079732B2 (en) 2010-03-05 2018-09-18 Www.Trustscience.Com Inc. Calculating trust scores based on social graph statistics
US9264329B2 (en) 2010-03-05 2016-02-16 Evan V Chrapko Calculating trust scores based on social graph statistics
WO2011126491A1 (en) * 2010-04-09 2011-10-13 Hewlett-Packard Development Company, L.P. Project clustering and relationship visualization
US20130030851A1 (en) * 2010-04-09 2013-01-31 Maher Rahmouni Project clustering and relationship visualization
CN102822828A (en) * 2010-04-09 2012-12-12 惠普发展公司,有限责任合伙企业 Project clustering and relationship visualization
US9922134B2 (en) 2010-04-30 2018-03-20 Www.Trustscience.Com Inc. Assessing and scoring people, businesses, places, things, and brands
US8543944B2 (en) * 2010-06-14 2013-09-24 Microsoft Corporation Fast edge routing for interactive diagramming
CN102279874A (en) * 2010-06-14 2011-12-14 微软公司 Fast edge routing for interactive diagramming
US20110307838A1 (en) * 2010-06-14 2011-12-15 Microsoft Corporation Fast edge routing for interactive diagramming
US20150135048A1 (en) * 2011-04-20 2015-05-14 Panafold Methods, apparatus, and systems for visually representing a relative relevance of content elements to an attractor
US20120272168A1 (en) * 2011-04-20 2012-10-25 Panafold Methods, apparatus, and systems for visually representing a relative relevance of content elements to an attractor
US9443334B2 (en) 2011-05-05 2016-09-13 Microsoft Technology Licensing, Llc Routing edges with ordered bundles
US10311106B2 (en) 2011-12-28 2019-06-04 Www.Trustscience.Com Inc. Social graph visualization and user interface
WO2013097026A1 (en) * 2011-12-28 2013-07-04 Chrapko Evan V Systems and methods for visualizing social graphs
JP2013242622A (en) * 2012-05-17 2013-12-05 Nippon Telegr & Teleph Corp <Ntt> Graph data visualization apparatus, method and program
US8903813B2 (en) 2012-07-02 2014-12-02 International Business Machines Corporation Context-based electronic document search using a synthetic event
US9460200B2 (en) 2012-07-02 2016-10-04 International Business Machines Corporation Activity recommendation based on a context-based electronic files search
US8898165B2 (en) 2012-07-02 2014-11-25 International Business Machines Corporation Identification of null sets in a context-based electronic document search
US9262499B2 (en) 2012-08-08 2016-02-16 International Business Machines Corporation Context-based graphical database
US8959119B2 (en) 2012-08-27 2015-02-17 International Business Machines Corporation Context-based graph-relational intersect derived database
US9251237B2 (en) 2012-09-11 2016-02-02 International Business Machines Corporation User-specific synthetic context object matching
US9619580B2 (en) 2012-09-11 2017-04-11 International Business Machines Corporation Generation of synthetic context objects
US9286358B2 (en) 2012-09-11 2016-03-15 International Business Machines Corporation Dimensionally constrained synthetic context objects database
US9069838B2 (en) 2012-09-11 2015-06-30 International Business Machines Corporation Dimensionally constrained synthetic context objects database
US9223846B2 (en) 2012-09-18 2015-12-29 International Business Machines Corporation Context-based navigation through a database
US20140098101A1 (en) * 2012-10-10 2014-04-10 International Business Machines Corporation Node cluster relationships in a graph database
US9741138B2 (en) * 2012-10-10 2017-08-22 International Business Machines Corporation Node cluster relationships in a graph database
US9811683B2 (en) 2012-11-19 2017-11-07 International Business Machines Corporation Context-based security screening for accessing data
US8931109B2 (en) 2012-11-19 2015-01-06 International Business Machines Corporation Context-based security screening for accessing data
US9477844B2 (en) 2012-11-19 2016-10-25 International Business Machines Corporation Context-based security screening for accessing data
US9229932B2 (en) 2013-01-02 2016-01-05 International Business Machines Corporation Conformed dimensional data gravity wells
US8914413B2 (en) 2013-01-02 2014-12-16 International Business Machines Corporation Context-based data gravity wells
US8983981B2 (en) 2013-01-02 2015-03-17 International Business Machines Corporation Conformed dimensional and context-based data gravity wells
US9251246B2 (en) 2013-01-02 2016-02-02 International Business Machines Corporation Conformed dimensional and context-based data gravity wells
US10127303B2 (en) 2013-01-31 2018-11-13 International Business Machines Corporation Measuring and displaying facets in context-based conformed dimensional data gravity wells
US9607048B2 (en) 2013-01-31 2017-03-28 International Business Machines Corporation Generation of synthetic context frameworks for dimensionally constrained hierarchical synthetic context-based objects
US8856946B2 (en) 2013-01-31 2014-10-07 International Business Machines Corporation Security filter for context-based data gravity wells
US9053102B2 (en) 2013-01-31 2015-06-09 International Business Machines Corporation Generation of synthetic context frameworks for dimensionally constrained hierarchical synthetic context-based objects
US9069752B2 (en) 2013-01-31 2015-06-30 International Business Machines Corporation Measuring and displaying facets in context-based conformed dimensional data gravity wells
US9449073B2 (en) 2013-01-31 2016-09-20 International Business Machines Corporation Measuring and displaying facets in context-based conformed dimensional data gravity wells
US9619468B2 (en) 2013-01-31 2017-04-11 International Business Machines Coporation Generation of synthetic context frameworks for dimensionally constrained hierarchical synthetic context-based objects
US9292506B2 (en) 2013-02-28 2016-03-22 International Business Machines Corporation Dynamic generation of demonstrative aids for a meeting
US11151154B2 (en) 2013-04-11 2021-10-19 International Business Machines Corporation Generation of synthetic context objects using bounded context objects
US10152526B2 (en) 2013-04-11 2018-12-11 International Business Machines Corporation Generation of synthetic context objects using bounded context objects
US10521434B2 (en) 2013-05-17 2019-12-31 International Business Machines Corporation Population of context-based data gravity wells
US9195608B2 (en) 2013-05-17 2015-11-24 International Business Machines Corporation Stored data analysis
US9348794B2 (en) 2013-05-17 2016-05-24 International Business Machines Corporation Population of context-based data gravity wells
US10062193B2 (en) * 2014-06-12 2018-08-28 Oracle International Corporation Attribute based map marker clustering
US11900479B2 (en) 2015-03-20 2024-02-13 Www.Trustscience.Com Inc. Calculating a trust score
US9578043B2 (en) 2015-03-20 2017-02-21 Ashif Mawji Calculating a trust score
US10380703B2 (en) 2015-03-20 2019-08-13 Www.Trustscience.Com Inc. Calculating a trust score
US9547925B2 (en) 2015-06-05 2017-01-17 International Business Machines Corporation Force-directed graphs
US10269152B2 (en) 2015-06-05 2019-04-23 International Business Machines Corporation Force-directed graphs
US9418457B1 (en) * 2015-06-05 2016-08-16 International Business Machines Corporation Force-directed graphs
WO2017074417A1 (en) * 2015-10-30 2017-05-04 Hewlett Packard Enterprise Development Lp Constrained permutation-based graph generation
US10713304B2 (en) * 2016-01-26 2020-07-14 International Business Machines Corporation Entity arrangement by shape input
US9740709B1 (en) 2016-02-17 2017-08-22 Www.Trustscience.Com Inc. Searching for entities based on trust score and geography
US11386129B2 (en) 2016-02-17 2022-07-12 Www.Trustscience.Com Inc. Searching for entities based on trust score and geography
US9438619B1 (en) 2016-02-29 2016-09-06 Leo M. Chan Crowdsourcing of trustworthiness indicators
US9679254B1 (en) 2016-02-29 2017-06-13 Www.Trustscience.Com Inc. Extrapolating trends in trust scores
US9584540B1 (en) 2016-02-29 2017-02-28 Leo M. Chan Crowdsourcing of trustworthiness indicators
US11341145B2 (en) 2016-02-29 2022-05-24 Www.Trustscience.Com Inc. Extrapolating trends in trust scores
US10055466B2 (en) 2016-02-29 2018-08-21 Www.Trustscience.Com Inc. Extrapolating trends in trust scores
US11640569B2 (en) 2016-03-24 2023-05-02 Www.Trustscience.Com Inc. Learning an entity's trust model and risk tolerance to calculate its risk-taking score
US10121115B2 (en) 2016-03-24 2018-11-06 Www.Trustscience.Com Inc. Learning an entity's trust model and risk tolerance to calculate its risk-taking score
US9721296B1 (en) 2016-03-24 2017-08-01 Www.Trustscience.Com Inc. Learning an entity's trust model and risk tolerance to calculate a risk score
US10565749B1 (en) * 2016-06-10 2020-02-18 Invincea, Inc. Methods and apparatus for efficiently processing a graph data structure
US9836183B1 (en) * 2016-09-14 2017-12-05 Quid, Inc. Summarized network graph for semantic similarity graphs of large corpora
US10180969B2 (en) 2017-03-22 2019-01-15 Www.Trustscience.Com Inc. Entity resolution and identity management in big, noisy, and/or unstructured data
CN108052085A (en) * 2017-12-28 2018-05-18 成都数成科技有限公司 A kind of method of industry control instruction Transfer path analysis
US10623299B2 (en) * 2018-04-28 2020-04-14 Hewlett Packard Enterprise Development Lp Reduced topologies
JP7034874B2 (en) 2018-09-26 2022-03-14 株式会社日立製作所 Process state analysis device and process state display method
JP2020052674A (en) * 2018-09-26 2020-04-02 株式会社日立製作所 Process state analyzer and process state display method
CN109977273A (en) * 2019-03-28 2019-07-05 杭州安恒信息技术股份有限公司 A kind of topology drawing generating method, device, equipment and readable storage medium storing program for executing
US11968105B2 (en) 2022-04-14 2024-04-23 Www.Trustscience.Com Inc. Systems and methods for social graph data analytics to determine connectivity within a community

Also Published As

Publication number Publication date
WO2007002380A2 (en) 2007-01-04
US8542234B2 (en) 2013-09-24
EP1899919A2 (en) 2008-03-19
EP1899919A4 (en) 2011-05-25
WO2007002380A3 (en) 2007-08-23
US20120268467A1 (en) 2012-10-25

Similar Documents

Publication Publication Date Title
US8542234B2 (en) System for arranging a plurality of relational nodes into graphical layout form
Huang et al. Large scale real-time ridesharing with service guarantee on road networks
Wang et al. Evacuation planning based on the contraflow technique with consideration of evacuation priorities and traffic setup time
Li et al. Optimization of process plans using a constraint-based tabu search approach
Church Location modelling and GIS
Mahdavi et al. CLASS: An algorithm for cellular manufacturing system and layout design using sequence data
US20030005030A1 (en) Reconfigurable autonomous device networks
Liberatore et al. A comparison of local search methods for the multicriteria police districting problem on graph
Corah et al. Distributed submodular maximization on partition matroids for planning on large sensor networks
CN107111653A (en) The query optimization that Installed System Memory suitable for parallel database system is loaded
JP2010262646A (en) Method and apparatus of animation planning for dynamic graph
Saravanan et al. Different approaches for the loop layout problems: a review
Bachmaier A radial adaptation of the sugiyama framework for visualizing hierarchical information
Chen et al. Optimal path planning with spatial-temporal mobility modeling for individual-based emergency guiding
Afyouni et al. Context-aware modelling of continuous location-dependent queries in indoor environments
JP2017107385A (en) Task assignment device, method, and program
Chae et al. A simulated annealing algorithm based on a closed loop layout for facility layout design in flexible manufacturing systems
US20070126739A1 (en) Vector-based geometric polygon schema
Wen et al. A multi-objective optimization method for emergency medical resources allocation
de Berg et al. Kinetic convex hulls, Delaunay triangulations and connectivity structures in the black-box model
CN101576880A (en) Database query optimization method based on extremum optimization
Li et al. Balancing ambulance crew workloads via a tiered dispatch policy
Valeev et al. Infrastructure object management in the conditions of critical situations based on situational models
Eppstein et al. Tracking moving objects with few handovers
Sindhu Exploring Parallel Efficiency and Synergy for Max-P Region Problem Using Python

Legal Events

Date Code Title Description
AS Assignment

Owner name: TOM SAWYER SOFTWARE, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MADDEN, BRENDAN P.;FREIVALDS, KARLIS;FOESSMEIER, ULI;AND OTHERS;REEL/FRAME:016736/0451;SIGNING DATES FROM 20041015 TO 20041024

STCB Information on status: application discontinuation

Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION