IP Library › Granted Patent US 12,093,245
Granted Patent B2
US 12,093,245 · App. 16/852,312 · Granted Sep 17, 2024

Temporal directed cycle detection and pruning in transaction graphs

Inventors: Guangnan Ye (Yorktown Heights, NY); Toyotaro Suzumura (New York, NY); Keith Coleman Houck (Rye, NY); Kumar Bhaskaran (Englewood Cliffs, NJ)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06F16/2379G06F16/9024G06N20/00G06Q20/4016
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,093,245
App. No.
16/852,312
Filed
Apr 17, 2020
Granted
Sep 17, 2024
Kind
B2
Art Unit
2164
USPC
707/703
Abstract

A method for improving computing efficiency of a computing device for temporal directed cycle detection in a transaction graph includes preparing the transaction graph based on a plurality of transactions, the transaction graph including nodes indicating transaction origination points and transaction destination points, and edges indicating interactions between the nodes. Irrelevant nodes in the transaction graph are identified and pruned to provide a pruned, preprocessed transaction graph which can be partitioning into sections, where each section includes selected nodes that are linked to other linked nodes therein. Each of the sections having non-cyclic nodes can be trimmed prior to performing cycle detection on the resulting pruned transaction graph. Postprocessing pruning can be performed to further reduce the number of detected cycles that may be of interest to a particular application, such as in anti-money laundering.

Claims (55)

1. A computing device comprising:

a processor;

a temporal directed cycle detection and pruning engine configured to improving computing efficiency when detecting unauthorized computerized transactions by performing acts comprising:

identifying irrelevant nodes in a transaction graph based on a plurality of transactions, the transaction graph including nodes indicating transaction origination points and transaction destination points, and edges indicating interactions between the nodes;

pruning the irrelevant nodes of the transaction graph including nodes involved in an interaction below a first threshold as well as nodes identified as a super node related to an account having a number of incoming or outgoing transactions that is above a second threshold;

partitioning the pruned transaction graph into sections, where each section includes selected nodes that are linked to other linked nodes therein;

detecting, by the processor, strong connected components for each of the sections;

performing, by the processor, parallel detection of a temporal directed cycle in each strongly connected component to reduce the computing time and resources for cycle detection;

trimming each of the sections having non-cyclic nodes;

detecting cycles of detected cycle nodes for each of the sections;

identifying a geo-location of each of the detected cycle nodes;

pruning selected nodes of the detected cycle nodes upon determining that the selected nodes are associated with a single entity, the selected nodes are separated by a predetermined minimum distance, and the selected nodes are associated with interactions performed within a predetermined maximum time separation; and

displaying unauthorized transactions on a display, based on the detecting cycles of detected cycle nodes and the pruning.

2. The computing device of claim 1 , further comprising applying a time component to each interaction, the time component providing a relative time for each of the interactions between the nodes of the transaction graph.

3. The computing device of claim 2 , wherein the edges forming each detected cycle are in temporal sequential order.

4. The computing device of claim 1 , further comprising:

identifying select nodes of the detected cycle nodes associated with known customer attributes; and

pruning the select nodes of the detected cycle nodes from the detected cycles.

5. The computing device of claim 1 , further comprising using machine learning to cause the computing device to identify learned nodes either for pruning from the transaction graph or for flagging as a suspect transaction known to form a transaction cycle.

6. A computer implemented method of improving computing efficiency when detecting unauthorized computerized transactions, comprising:

identifying irrelevant nodes in a transaction graph, the transaction graph based on a plurality of transactions, the transaction graph including nodes indicating transaction origination points and transaction destination points, and edges indicating interactions between the nodes;

pruning the irrelevant nodes of the transaction graph including nodes involved in an interaction below a first threshold as well as nodes identified as a super node related to an account having a number of incoming or outgoing transactions that is above a second threshold;

partitioning the pruned transaction graph into sections, where each section includes selected nodes that are linked to other linked nodes therein;

detecting strong connected components for each of the sections;

performing computerized parallel detection of a temporal directed cycle in each strongly connected component to reduce the computing time and resources for cycle detection;

detecting cycles of detected cycle nodes in the pruned transaction graph;

identifying a first set of select ones of the detected cycle nodes associated with known customer attributes;

pruning the first set of select ones of the detected cycle nodes from the detected cycles;

identifying a geo-location of each of the detected cycle nodes;

pruning a second set of selected nodes of the detected cycle nodes upon determining that the second set of selected nodes are associated with a single entity, the second set of selected nodes are separated by a predetermined minimum distance, and the second set of selected nodes are associated with interactions performed within a predetermined maximum time separation; and

displaying unauthorized transactions on a display, based on the detecting cycles of detected cycle nodes and the pruning.

7. The method of claim 6 , further comprising applying a time component to each interaction, the time component providing a relative time for each of the interactions between the nodes of the transaction graph.

8. The method of claim 7 , wherein the edges forming each detected cycle are in temporal sequential order.

9. The method of claim 6 , further comprising:

partitioning the pruned transaction graph into sections, where each section includes selected nodes that are linked to other linked nodes therein; and

trimming each of the sections having non-cyclic nodes.

10. The method of claim 6 , wherein the processor configures the computing device to perform acts further comprising using machine learning to cause the computing device to identify learned nodes either for pruning from the transaction graph or for flagging as a suspect transaction known to form a transaction cycle.

11. A non-transitory computer readable storage medium tangibly embodying a computer readable program code having computer readable instructions that, when executed, causes a computer device to carry out a method of improving computing efficiency when detecting unauthorized computerized transactions, the method comprising:

identifying irrelevant nodes in a transaction graph, the transaction graph based on a plurality of transactions, the transaction graph including nodes indicating transaction origination points and transaction destination points, and edges indicating interactions between the nodes;

pruning the irrelevant nodes of the transaction graph;

partitioning the pruned transaction graph into sections, where each section includes selected nodes that are linked to other linked nodes therein;

detecting, by the computer device, strong connected components for each of the sections;

performing, by the computing device, parallel detection of a temporal directed cycle in each strongly connected component to reduce the computing time and resources for cycle detection;

trimming each of the sections having non-cyclic nodes;

detecting cycles of detected cycle nodes for each of the sections,

wherein an irrelevant node is a node that is involved in an interaction below a first threshold as well as identified as super node related to an account having a number of incoming or outgoing transactions that is above a second threshold

identifying a first set of select ones of the detected cycle nodes associated with known customer attributes;

pruning the first set of select ones of the detected cycle nodes from the detected cycles;

identifying a geo-location of each of the detected cycle nodes;

pruning a second set of selected nodes of the detected cycle nodes upon determining that the second set of selected nodes are associated with a single entity, the second set of selected nodes are separated by a predetermined minimum distance, and the second set of selected nodes are associated with interactions performed within a predetermined maximum time separation; and

displaying unauthorized transactions on a display, based on the detecting cycles of detected cycle nodes and the pruning.

12. The non-transitory computer readable storage medium of claim 11 , wherein the execution of the code by the processor further configures the computing device to perform acts further comprising applying a time component to each interaction, the time component providing a relative time for each of the interactions between the nodes of the transaction graph.

13. The non-transitory computer readable storage medium of claim 11 , wherein the execution of the code by the processor further configures the computing device to perform acts further comprising

pruning the first set of select ones of the detected cycle nodes from the detected cycles.

14. The non-transitory computer readable storage medium of claim 11 , wherein the execution of the code by the processor further configures the computing device to perform acts further comprising using machine learning to cause the computing device to identify learned nodes either for pruning from the transaction graph or for flagging as a suspect transaction known to form a transaction cycle.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 17, 2020
From: YE, GUANGNAN; SUZUMURA, TOYOTARO; HOUCK, KEITH COLEMAN; BHASKARAN, KUMAR
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 052433/0666 →
Continuity (1)
Related Publication 20210326332A1 · Oct 21, 2021
Cited By (1)
US 12,393,903