# US 12,223,442 B2 · Contextual situation analysis

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

- Number: US 12,223,442 B2
- Document ID: US12223442B2
- Status: Granted
- Kind: B2
- Application number: 18/070,338
- Filed: 2022-11-28
- Published: 2023-03-23
- Granted: 2025-02-11
- Earliest claimed: 2017-04-24
- Assignees: Google Inc.
- Applicants: Google LLC
- Inventors: Thomas Fischbacher
- Web page: https://patentgrep.com/patent/US12223442B2

## CPC

- G06N 5/01: Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
- G06N 5/045: Explanation of inference; Explainable artificial intelligence [XAI]; Interpretable artificial intelligence
- G06F 8/10: Requirements analysis; Specification techniques
- G06F 8/41: Compilation
- G06F 16/9027: {Trees}
- G06N 5/047: Pattern matching networks; Rete networks
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A first context update indicative of a present state associated with an application is received. A first contextual situation, among a plurality of contextual situations associated with a plurality of conditions, that corresponds to the first context update is identified. Identifying the first contextual situation includes implementing a decision tree to minimize a number of the plurality of conditions to be evaluated, identifying the first contextual situation using the decision tree, and determining one or more actions to be performed corresponding with the first contextual situation.

## Claims

### Claim 1

A method comprising:
receiving, by a processing device, a first context update identifying a present state associated with an application;
identifying a first contextual situation, among a plurality of contextual situations associated with a plurality of conditions, that corresponds to the first context update, wherein identifying the first contextual situation comprises:
implementing a decision tree to minimize a number of the plurality of conditions to be evaluated,
comparing parameters of a plurality of features associated with the first context update with conditions of the plurality of conditions that are associated with the decision tree, and
identifying the first contextual situation based on a satisfaction of one or more of the plurality of conditions corresponding to the decision tree; and
determining one or more actions to be performed corresponding with the first contextual situation.

### Claim 2 (depends on 1)

The method of claim 1, wherein the application is part of an online gaming system.

### Claim 3 (depends on 1)

The method of claim 1, wherein the application is part of an autonomous vehicle system.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
causing playback of a first media item of a playlist of media items to accompany the first contextual situation identified for the application.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
receiving a second context update indicative of a new state associated with the application;
identifying a second contextual situation, among the plurality of contextual situations associated with the plurality of conditions, that corresponds to the second context update; and
determining one or more other actions to be performed with the second contextual situation.

### Claim 6 (depends on 5)

The method of claim 5, further comprising:
causing playback of a second media item of a playlist of media items to accompany the second contextual situation identified for the application.

### Claim 7 (depends on 1)

The method of claim 1, wherein identifying the first contextual situation, among the plurality of contextual situations associated with the plurality of conditions, that corresponds to the first context update comprises:
applying a data set associated with the first context update to a callable function that implements the decision tree, wherein the plurality of conditions are associated with a plurality of nodes of the decision tree.

### Claim 8 (depends on 7)

The method of claim 7, wherein identifying the first contextual situation, among the plurality of contextual situations associated with the plurality of conditions, that corresponds to the first context update further comprises:
keeping a record of conditions of the plurality of conditions that have outcomes that are explicitly and implicitly determined from evaluated nodes of the plurality of nodes of the decision tree.

### Claim 9 (depends on 7)

The method of claim 7, wherein identifying the first contextual situation, among the plurality of contextual situations associated with the plurality of conditions, that corresponds to the first context update further comprises:
determining an initial condition of the plurality of conditions to evaluate by determining a root node of the plurality of nodes of the decision tree, wherein the root node indicates a feature and a condition associated with the feature; and
evaluating the initial condition identified by the root node in view of the data set of the first context update.

### Claim 10 (depends on 9)

The method of claim 9, wherein identifying the first contextual situation, among the plurality of contextual situations associated with the plurality of conditions, that corresponds to the first context update further comprises:
responsive to the evaluation of the initial condition, evaluating a subsequent node of the decision tree where a number of the plurality of conditions that have outcomes that are implied by the evaluation of the initial condition are eliminated from subsequent evaluation.

### Claim 11

A system, comprising:
a memory; and
processing device, coupled to the memory, to perform operations comprising:
receiving a first context update identifying a present state associated with an application;
identifying a first contextual situation, among a plurality of contextual situations associated with a plurality of conditions, that corresponds to the first context update, wherein identifying the first contextual situation comprises:
implementing a decision tree to minimize a number of the plurality of conditions to be evaluated,
comparing parameters of a plurality of features associated with the first context update with conditions of the plurality of conditions that are associated with the decision tree, and
identifying the first contextual situation based on a satisfaction of one or more of the plurality of conditions corresponding to the decision tree; and
determining one or more actions to be performed corresponding with the first contextual situation.

### Claim 12 (depends on 11)

The system of claim 11, the operations further comprising:
causing playback of a first media item of a playlist of media items to accompany the first contextual situation identified for the application.

### Claim 13 (depends on 11)

The system of claim 11, the operations further comprising:
receiving a second context update indicative of a new state associated with the application;
identifying a second contextual situation, among the plurality of contextual situations associated with the plurality of conditions, that corresponds to the second context update; and
determining one or more other actions to be performed with the second contextual situation.

### Claim 14 (depends on 13)

The system of claim 13, the operations further comprising:
causing playback of a second media item of a playlist of media items to accompany the second contextual situation identified for the application.

### Claim 15 (depends on 11)

The system of claim 11, wherein identifying the first contextual situation, among the plurality of contextual situations associated with the plurality of conditions, that corresponds to the first context update comprises:
applying a data set associated with the first context update to a callable function that implements the decision tree, wherein the plurality of conditions are associated with a plurality of nodes of the decision tree.

### Claim 16 (depends on 15)

The system of claim 15, wherein identifying the first contextual situation, among the plurality of contextual situations associated with the plurality of conditions, that corresponds to the first context update further comprises:
keeping a record of conditions of the plurality of conditions that have outcomes that are explicitly and implicitly determined from evaluated nodes of the plurality of nodes of the decision tree.

### Claim 17 (depends on 15)

The system of claim 15, wherein identifying the first contextual situation, among the plurality of contextual situations associated with the plurality of conditions, that corresponds to the first context update further comprises:
determining an initial condition of the plurality of conditions to evaluate by determining a root node of the plurality of nodes of the decision tree, wherein the root node indicates a feature and a condition associated with the feature; and
evaluating the initial condition identified by the root node in view of the data set of the first context update.

### Claim 18 (depends on 17)

The system of claim 17, wherein identifying the first contextual situation, among the plurality of contextual situations associated with the plurality of conditions, that corresponds to the first context update further comprises:
responsive to the evaluation of the initial condition, evaluating a subsequent node of the decision tree where a number of the plurality of conditions that have outcomes that are implied by the evaluation of the initial condition are eliminated from subsequent evaluation.

### Claim 19

A non-transitory computer-readable medium comprising instructions that, responsive to execution by a processing device, cause the processing device to perform operations comprising:
receiving a first context update identifying a present state associated with an application;
identifying a first contextual situation, among a plurality of contextual situations associated with a plurality of conditions, that corresponds to the first context update, wherein identifying the first contextual situation comprises:
implementing a decision tree to minimize a number of the plurality of conditions to be evaluated,
comparing parameters of a plurality of features associated with the first context update with conditions of the plurality of conditions that are associated with the decision tree, and
identifying the first contextual situation based on a satisfaction of one or more of the plurality of conditions corresponding to the decision tree; and
determining one or more actions to be performed corresponding with the first contextual situation.

### Claim 20 (depends on 19)

The non-transitory computer-readable medium of claim 19, the operations further comprising:
causing playback of a first media item of a playlist of media items to accompany the first contextual situation identified for the application.
