IP Library Granted Patent US 12,561,591
Granted Patent B2
US 12,561,591 · App. 18/414,211 · Granted Feb 24, 2026

Classification and transformation of sequential event data

Inventors: William Enerson Harvey (San Francisco, CA); Thomas Janos Atwood (Venice, CA); Marc-Henri Gires (New York, NY)
Assignee: P44, LLC
G06N7/01G06F9/542G06F16/258G06F16/285G06N20/00G06Q10/047
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,561,591
App. No.
18/414,211
Granted
Feb 24, 2026
Kind
B2
Abstract

A method and system are provided that apply a combination of machine learning and graph techniques to classify and transform sequential event data. In some embodiments, the method and system are applied to generate raw data in the shipping industry to automatically classify a sequence of status codes extracted from EDI data files corresponding to a series of physical events experienced by a shipping container into a sequence of meaningful milestones to provide improved visibility regarding the actual status of the shipping container. The method and system can be applied to classify and transform sequential event data for use in the shipping industry and in other applications.

Claims (78)

1 . A computer-implemented method of classifying indicators, the method comprising:

accessing, by at least one processor, a sequence of indicators;

detecting, by the at least one processor, at least one duplicate indicator in the sequence of indicators;

removing, by the at least one processor, the at least one duplicate indicator from the sequence of indicators to reduce a computational complexity, the removing resulting in a deduplicated sequence of indicators;

selecting, by the at least one processor, a first indicator in the deduplicated sequence of indicators;

assigning, by the at least one processor, a label to the first indicator;

referencing, by the at least one processor, a milestone graph defining a valid ordered sequence of transitions to milestones and associated constraints;

generating, by the at least one processor, a current search space graph comprising a set of valid paths through a set of milestones in response to the milestone graph and the deduplicated sequence of indicators;

selecting, by the at least one processor, a node on the search space graph in response to the label that was assigned;

defining, by the at least one processor, a state for the node that was selected;

determining, by the at least one processor, that an end of the deduplicated sequence of indicators has been reached; and

returning, by the at least one processor, a classification result comprising a predicted sequence of milestones corresponding to the deduplicated sequence of indicators, to improve an efficiency in finding an optimal solution in a tractable manner.

2 . The computer-implemented method of claim 1 , further comprising:

prior to determining that the end of the sequence of indicators has been reached, determining that the end of the sequence of indicators has not been reached.

3 . The computer-implemented method of claim 2 , further comprising:

after determining that the end of the sequence of indicators has not been reached, selecting a next indicator in the sequence of indicators;

selecting a transition to a next node on the search space graph; and

assigning an additional label to the next indicator in response to the transition that was selected.

4 . The computer-implemented of claim 3 , further comprising:

repeating the selecting the next indicator, the selecting the transition, and the assigning the additional label until the end of the sequence of indicators has been reached.

5 . The computer-implemented method of claim 3 , wherein selecting the transition to the next node on the search space graph comprises:

selecting the transition to the next node on the search space graph in response to satisfying a set of constraints on an edge defining the transition.

6 . The computer-implemented method of claim 1 , wherein selecting the transition to the next node on the search space graph comprises:

selecting the transition to the next node on the search space graph based on a cost function.

7 . The computer-implemented method of claim 1 , further comprising:

forming the sequence of indicators.

8 . A system for classifying indicators, the system comprising:

a memory storing a set of computer-executable instructions; and

at least one processor interfacing with the memory and configured to execute the set of computer-executable instructions to cause the at least one processor to:

access a sequence of indicators,

detect at least one duplicate indicator in the sequence of indicators,

remove the at least one duplicate indicator from the sequence of indicators to reduce a computational complexity, the removing resulting in a deduplicated sequence of indicators,

select a first indicator in the deduplicated sequence of indicators,

assign a label to the first indicator,

reference a milestone graph defining a valid ordered sequence of transitions to milestones and associated constraints,

generate a current search space graph comprising a set of valid paths through a set of milestones in response to the milestone graph and the deduplicated sequence of indicators,

select a node on the search space graph in response to the label that was assigned,

define a state for the node that was selected,

determine that an end of the deduplicated sequence of indicators has been reached, and

return a classification result comprising a predicted sequence of milestones corresponding to the deduplicated sequence of indicators, to improve an efficiency in finding an optimal solution in a tractable manner.

9 . The system of claim 8 , wherein the at least one processor is configured to execute the set of computer-executable instructions to further cause the at least one processor to:

prior to determining that the end of the sequence of indicators has been reached, determine that the end of the sequence of indicators has not been reached.

10 . The system of claim 9 , wherein the at least one processor is configured to execute the set of computer-executable instructions to further cause the at least one processor to:

after determining that the end of the sequence of indicators has not been reached, select a next indicator in the sequence of indicators,

select a transition to a next node on the search space graph, and

assign an additional label to the next indicator in response to the transition that was selected.

11 . The system of claim 10 , wherein the at least one processor is configured to execute the set of computer-executable instructions to further cause the at least one processor to:

repeat the selecting the next indicator, the selecting the transition, and the assigning the additional label until the end of the sequence of indicators has been reached.

12 . The system of claim 8 , wherein to select the transition to the next node on the search space graph, the at least one processor is configured to:

select the transition to the next node on the search space graph in response to satisfying a set of constraints on an edge defining the transition.

13 . The system of claim 8 , wherein to select the transition to the next node on the search space graph, the at least one processor is configured to:

select the transition to the next node on the search space graph based on a cost function.

14 . The system of claim 8 , wherein the at least one processor is configured to execute the set of computer-executable instructions to further cause the at least one processor to:

form the sequence of indicators.

15 . A non-transitory computer readable medium storing a set of computer instructions executable by at least one processor, the set of computer instructions comprising:

instructions for accessing a sequence of indicators;

instructions for detecting at least one duplicate indicator in the sequence of indicators;

instructions for removing the at least one duplicate indicator from the sequence of indicators to reduce a computational complexity, the removing resulting in a deduplicated sequence of indicators;

instructions for selecting a first indicator in the deduplicated sequence of indicators;

instructions for assigning a label to the first indicator;

instructions for referencing a milestone graph defining a valid ordered sequence of transitions to milestones and associated constraints;

instructions for generating a current search space graph comprising a set of valid paths through a set of milestones in response to the milestone graph and the deduplicated sequence of indicators;

instructions for selecting a node on the search space graph in response to the label that was assigned;

instructions for defining a state for the node that was selected;

instructions for determining that an end of the deduplicated sequence of indicators has been reached; and

instructions for returning a classification result comprising a predicted sequence of milestones corresponding to the deduplicated sequence of indicators, to improve an efficiency in finding an optimal solution in a tractable manner.

16 . The non-transitory computer readable medium of claim 15 , wherein set of computer instructions further comprise:

instructions for, prior to determining that the end of the sequence of indicators has been reached, determining that the end of the sequence of indicators has not been reached.

17 . The non-transitory computer readable medium of claim 16 , wherein set of computer instructions further comprise:

instructions for, after determining that the end of the sequence of indicators has not been reached, selecting a next indicator in the sequence of indicators;

instructions for selecting a transition to a next node on the search space graph; and

instructions for assigning an additional label to the next indicator in response to the transition that was selected.

18 . The non-transitory computer readable medium of claim 17 , wherein set of computer instructions further comprise:

instructions for repeating the selecting the next indicator, the selecting the transition, and the assigning the additional label until the end of the sequence of indicators has been reached.

19 . The non-transitory computer readable medium of claim 17 , wherein the instructions for selecting the transition to the next node on the search space graph comprise:

instructions for selecting the transition to the next node on the search space graph in response to satisfying a set of constraints on an edge defining the transition.

20 . The non-transitory computer readable medium of claim 15 , wherein the instructions for selecting the transition to the next node on the search space graph comprise:

instructions for selecting the transition to the next node on the search space graph based on a cost function.

Assignments (5)
SECURITY INTEREST Recorded Jul 16, 2026
From: PROJECT44, LLC
To: SIXTH STREET SPECIALTY LENDING, INC., AS AGENT
Reel/Frame 075293/0078 →
CORRECTIVE ASSIGNMENT TO CORRECT THE THIRD INVENTOR'S NAME PREVIOUSLY RECORDED AT REEL: 66242 FRAME: 387. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT . Recorded Mar 5, 2024
From: HARVEY, WILLIAM ENERSON; ATWOOD, THOMAS JANOS; GIRES, MARC-HENRI
To: CLEARMETAL INC.
Reel/Frame 066739/0267 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 25, 2024
From: HARVEY, WILLIAM ENERSON; ATWOOD, THOMAS JANOS; GIRES, MARC-HENRI PAUL
To: CLEARMETAL INC.
Reel/Frame 066242/0387 →
MERGER Recorded Jan 25, 2024
From: CLEARMETAL INC.
To: PROJECT44 LLC
Reel/Frame 066242/0908 →
CHANGE OF NAME Recorded Jan 25, 2024
From: PROJECT44 LLC
To: P44, LLC
Reel/Frame 066242/0968 →
Continuity (3)
Continuation 17955817 · Sep 29, 2022
Continuation 15965540 · Apr 27, 2018
Related Publication 20240232668A1 · Jul 11, 2024
References Cited (31)
US 6421809B1 · Wuytack · 2002 [cited by examiner]
US 20030130855A1 · Babu · 2003 [cited by examiner]
US 20030169042A1 · Feinberg · 2003 [cited by examiner]
US 20060291485A1 · Thubert et al. · 2006 [cited by applicant]
US 20070118601A1 · Pacheco · 2007 [cited by examiner]
US 20080154873A1 · Redlich · 2008 [cited by examiner]
US 20080201724A1 · Endrikhovski · 2008 [cited by examiner]
US 20080209436A1 · Agha et al. · 2008 [cited by applicant]
US 20080235216A1 · Ruttenberg · 2008 [cited by examiner]
US 20100058112A1 · Kim · 2010 [cited by examiner]
US 20110134925A1 · Safrai · 2011 [cited by examiner]
US 20110280907A1 · Mchardy et al. · 2011 [cited by applicant]
US 20120084004A1 · Alexandre et al. · 2012 [cited by applicant]
US 20120216176A1 · Gaikwad et al. · 2012 [cited by applicant]
US 20140047402A1 · Terayama · 2014 [cited by examiner]
US 20140201126A1 · Zadeh et al. · 2014 [cited by applicant]
US 20140279793A1 · Wohlstadter · 2014 [cited by applicant]
US 20140372433A1 · Dougherty · 2014 [cited by applicant]
US 20150120555A1 · Jung et al. · 2015 [cited by applicant]
US 20150180891A1 · Seward et al. · 2015 [cited by applicant]
US 20150269242A1 · Dey · 2015 [cited by examiner]
US 20170024983A1 · Reeves · 2017 [cited by examiner]
US 20170086729A1 · Bruno · 2017 [cited by applicant]
US 20170235848A1 · Van Dusen et al. · 2017 [cited by applicant]
US 20170359743A1 · Szilagyi et al. · 2017 [cited by applicant]
US 20170372214A1 · Peng · 2017 [cited by examiner]
US 20180039565A1 · Rajagopalan et al. · 2018 [cited by applicant]
US 20180309636A1 · Strom et al. · 2018 [cited by applicant]
US 20180349401A1 · Ikawa et al. · 2018 [cited by applicant]
US 20190158340A1 · Zhang et al. · 2019 [cited by applicant]
Huiyi Hu, Graph Based Models for Unsupervised High Dimensional Data Clustering and Network Analysis, University of California, Los Angeles, A dissertation submitted in partial satisfaction of the requirements for the de… [cited by applicant]