# US 2026/0288910 A1 · Cyclic pattern detection and prediction execution

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2026/0288910 A1
- Document ID: US20260288910A1
- Status: Published application
- Kind: A1
- Application number: 19/694,138
- Filed: 2026-06-01
- Published: 2026-09-24
- Earliest claimed: 2022-12-15
- Assignees: Sap SE
- Applicants: Sap SE
- Inventors: Nai Minh Quach
- Web page: https://patentgrep.com/patent/US20260288910A1

## CPC

- G06F 18/26: Discovering frequent patterns
- G06F 16/215: Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
- G06F 16/2272: {Management thereof}
- G06F 16/2365: {Ensuring data consistency and integrity}
- G06F 16/24568: {Data stream processing; Continuous queries}
- G06F 16/2477: {Temporal data queries}
- G06F 18/10: Pre-processing; Data cleansing
- G06F 18/214: Generating training patterns; Bootstrap methods, e.g. bagging or boosting
- G06F 18/2321: using statistics or function optimisation, e.g. modelling of probability density functions
- G06N 5/022: Knowledge engineering; Knowledge acquisition
- G06N 20/00: Machine learning
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS

## Abstract

The present disclosure relates to computer-implemented methods, software, and systems for identifying cyclic patterns in data observations collected as time series with irregular time spacing between each other. Distribution of the time occurrences associated with the data observations is analyzed to identify a cyclic pattern. A list of time gaps between each of the data observations is defined. Time gaps are defined according to a common time measure. The time gaps of the list of time gaps are evaluated using two reader operators that separately browse through the list of time gaps. A cyclic pattern is identified in the list of time gaps based on the iteratively evaluating. The identifying comprises identifying (i) a length of cycle within the cycle patterns and (ii) an index element of a time gap of the list of time gaps.

## Claims

### Claim 1

(canceled)

### Claim 2

A computer-implemented method, the method comprising:
obtaining data observations associated with a monitored process executed on a platform system to identify availability of service resources at the platform system, wherein the data observations are irregularly spaced in time;
defining a list of time gaps, each time gap being defined as a difference between two data observations according to a common time measure;
identifying, based on evaluating the list of time gaps, a cyclic pattern in a time distribution of the data observations, identifying comprising:
identifying that a first time gap in the list of time gaps that is associated with a first set of subsequent time gaps of the list of time gaps matches a second time gap in the list of time gaps that is associated with a second set of subsequent time gaps, wherein the first time gap is associated with a first data observation at a first position i in the time distribution of the data observation, and wherein the second time gap is associated with a second data observation at a second position j in the time distribution of the data observation;
identifying a length λ of a cycle as a number of time gaps in the first set of subsequent time gaps;
identifying an index element of a time gap of the list of time gaps as a start element of the cycle to correspond to a lowest index element of either a first index element corresponding to the first time gap or a second index element corresponding to the second time gap in the list of time gaps; and
identifying the cyclic pattern based on determining that the first position i and the second position j fulfill a rule defining that j=i+k λ, wherein k is a positive integer;
obtaining predicted future data observations for a future horizon based on executing a prediction model according to the cyclic pattern;
generating an instruction including an adjustment to an execution of a system monitoring process for the future horizon according to the predicted future data observations; and
providing the instruction to the platform system.

### Claim 3 (depends on 2)

The computer-implemented method of claim 2, wherein the first time gap in the list of time gaps is identified as matching the second time gap in the list of time gaps based on determining that the first set of subsequent time gaps is equivalent to the second set of subsequent time gaps.

### Claim 4 (depends on 2)

The computer-implemented method of claim 2, wherein the data observations are obtained from the system monitoring process executed in relation to monitoring resource consumption at the platform system.

### Claim 5 (depends on 2)

The computer-implemented method of claim 2, wherein the data observations are obtained as output from an execution of a process flow at the platform system.

### Claim 6 (depends on 2)

The computer-implemented method of claim 2, wherein obtaining the predicted future data observations comprises:
executing the prediction model according to the cyclic pattern as applied on the future horizon.

### Claim 7 (depends on 2)

The computer-implemented method of claim 2, wherein identifying the cyclic pattern in the time distribution of the data observations comprises:
iteratively evaluating time gaps of the list of time gaps using two reader operators that separately browse through the list of time gaps, wherein each of the two reader operators starts from a respective position in the data observations, wherein each reader operator identifies, for each evaluated time gap of the evaluated time gaps, subsequent set of time gaps after each evaluated time gap of the evaluated time gaps, the subsequent set of time gaps being defined according to a predefined set size, and wherein the iteratively evaluating is performed until a respective set of subsequent time gaps of the list of time gaps identified by the two reader operators is the same.

### Claim 8 (depends on 7)

The computer-implemented method of claim 7, wherein iterative evaluating of time gaps comprises using a respective moving pointer for each of the two reader operators to iterate through the list of time gaps, wherein a first iterative step associated with a first moving pointer of a first reader operator is twice as slow as a second iterative step associated with a second moving pointer of a second reader operator.

### Claim 9 (depends on 7)

The computer-implemented method of claim 7, wherein identifying the cyclic pattern comprises:
identifying a first time gap in the list of time gaps that is iterated using a first reader operator that is associated with a first set of subsequent time gaps of the list of time gaps that matches a second time gap in the list of time gaps that is iterated using a second reader operator that is associated with a second set of subsequent time gaps, wherein the first set of subsequent time gaps is equivalent to the second set of subsequent time gaps, and wherein the first time gap is different than the second time gap.

### Claim 10 (depends on 7)

The computer-implemented method of claim 7, wherein a first moving pointer associated with a first reader operator browses over each time gaps of the list of time gaps, wherein a second moving pointer associated with a second reader operator browses over every other time gap of the list of time gaps, wherein the first reader operator and the second reader operator terminate browsing when an evaluation occurs of two time gap instances associated with equivalent sets of subsequent time gaps within the list of time gaps.

### Claim 11 (depends on 2)

The computer-implemented method of claim 2, the method comprising:
generating a time series for distributing future data observations based on an initial time instance for the time series and the identified cyclic pattern.

### Claim 12 (depends on 2)

The computer-implemented method of claim 2, wherein the common time measure is a unit of time selected from the group consisting of a day, a week, a month, a quarter, and a year.

### Claim 13

A computer system comprising:
one or more processors; and
one or more computer-readable memories coupled to the one or more processors and having instructions stored thereon that are executable by the one or more processors to perform operations comprising:
obtaining data observations associated with a monitored process executed on a platform system to identify availability of service resources at the platform system, wherein the data observations are irregularly spaced in time;
defining a list of time gaps, each time gap being defined as a difference between two data observations according to a common time measure;
identifying, based on evaluating the list of time gaps, a cyclic pattern in a time distribution of the data observations, identifying comprising:
identifying that a first time gap in the list of time gaps that is associated with a first set of subsequent time gaps of the list of time gaps matches a second time gap in the list of time gaps that is associated with a second set of subsequent time gaps, wherein the first time gap is associated with a first data observation at a first position i in the time distribution of the data observation, and wherein the second time gap is associated with a second data observation at a second position j in the time distribution of the data observation;
identifying a length λ of a cycle as a number of time gaps in the first set of subsequent time gaps;
identifying an index element of a time gap of the list of time gaps as a start element of the cycle to correspond to a lowest index element of either a first index element corresponding to the first time gap or a second index element corresponding to the second time gap in the list of time gaps; and
identifying the cyclic pattern based on determining that the first position i and the second position j fulfill a rule defining that j=i+k λ, wherein k is a positive integer;
obtaining predicted future data observations for a future horizon based on executing a prediction model according to the cyclic pattern;
generating an instruction including an adjustment to an execution of a system monitoring process for the future horizon according to the predicted future data observations; and
providing the instruction to the platform system.

### Claim 14 (depends on 13)

The computer system of claim 13, wherein the first time gap in the list of time gaps is identified as matching the second time gap in the list of time gaps based on determining that the first set of subsequent time gaps is equivalent to the second set of subsequent time gaps.

### Claim 15 (depends on 13)

The computer system of claim 13, wherein the data observations are obtained from the system monitoring process executed in relation to monitoring resource consumption at the platform system.

### Claim 16 (depends on 13)

The computer system of claim 13, wherein the data observations are obtained as output from an execution of a process flow at the platform system.

### Claim 17 (depends on 13)

The computer system of claim 13, wherein obtaining the predicted future data observations comprises:
executing the prediction model according to the cyclic pattern as applied on the future horizon.

### Claim 18 (depends on 13)

The computer system of claim 13, wherein identifying the cyclic pattern in the time distribution of the data observations comprises:
iteratively evaluating time gaps of the list of time gaps using two reader operators that separately browse through the list of time gaps, wherein each of the two reader operators starts from a respective position in the data observations, wherein each reader operator identifies, for each evaluated time gap of the evaluated time gaps, subsequent set of time gaps after each evaluated time gap of the evaluated time gaps, the subsequent set of time gaps being defined according to a predefined set size, and wherein the iteratively evaluating is performed until a respective set of subsequent time gaps of the list of time gaps identified by the two reader operators is the same.

### Claim 19 (depends on 18)

The computer system of claim 18, wherein iterative evaluating of time gaps comprises using a respective moving pointer for each of the two reader operators to iterate through the list of time gaps, wherein a first iterative step associated with a first moving pointer of a first reader operator is twice as slow as a second iterative step associated with a second moving pointer of a second reader operator.

### Claim 20 (depends on 18)

The computer system of claim 18, wherein identifying the cyclic pattern comprises:
identifying a first time gap in the list of time gaps that is iterated using a first reader operator that is associated with a first set of subsequent time gaps of the list of time gaps that matches a second time gap in the list of time gaps that is iterated using a second reader operator that is associated with a second set of subsequent time gaps, wherein the first set of subsequent time gaps is equivalent to the second set of subsequent time gaps, and wherein the first time gap is different than the second time gap.

### Claim 21

A non-transitory, computer-readable medium coupled to one or more processors and having instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations comprising:
obtaining data observations associated with a monitored process executed on a platform system to identify availability of service resources at the platform system, wherein the data observations are irregularly spaced in time;
defining a list of time gaps, each time gap being defined as a difference between two data observations according to a common time measure;
identifying, based on evaluating the list of time gaps, a cyclic pattern in a time distribution of the data observations, identifying comprising:
identifying that a first time gap in the list of time gaps that is associated with a first set of subsequent time gaps of the list of time gaps matches a second time gap in the list of time gaps that is associated with a second set of subsequent time gaps, wherein the first time gap is associated with a first data observation at a first position i in the time distribution of the data observation, and wherein the second time gap is associated with a second data observation at a second position j in the time distribution of the data observation;
identifying a length λ of a cycle as a number of time gaps in the first set of subsequent time gaps;
identifying an index element of a time gap of the list of time gaps as a start element of the cycle to correspond to a lowest index element of either a first index element corresponding to the first time gap or a second index element corresponding to the second time gap in the list of time gaps; and
identifying the cyclic pattern based on determining that the first position i and the second position j fulfill a rule defining that j=i+k λ, wherein k is a positive integer;
obtaining predicted future data observations for a future horizon based on executing a prediction model according to the cyclic pattern;
generating an instruction including an adjustment to an execution of a system monitoring process for the future horizon according to the predicted future data observations; and
providing the instruction to the platform system.
