Window Grouping via Semantic and Temporal Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing task management systems rely heavily on explicit user input to determine which windows and objects are associated with specific tasks, lacking effective mechanisms for automatic detection and recognition, which increases user burden and inefficiency.

Innovation Solution

A framework that captures and analyzes window information, using both semantic and temporal data to automatically group windows into tasks, employing models like Probabilistic Latent Semantic Indexing (PLSI) for semantic clustering and temporal modeling to identify task-related windows, thereby reducing user input and improving task management efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If explicit user input is used to determine window-task associations, then task assignment accuracy is improved, but user burden and effort increase

Engineering Contradiction:
Improvetask assignment accuracyVSAvoiduser burden
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The system performs automatic task detection and window grouping without requiring explicit user input. The system monitors window events, analyzes temporal patterns, and autonomously assigns windows to tasks, allowing the system to serve itself rather than requiring continuous user direction.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces manual user input mechanisms with automated computational analysis. Instead of users explicitly assigning windows to tasks, the system uses event logging, temporal pattern recognition, and probabilistic models to automatically determine window-task associations.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Ease of operation

If automatic task detection is implemented, then user effort is reduced, but system complexity increases

Engineering Contradiction:
Improveuser effortVSAvoidsystem complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The system divides the automatic task detection process into distinct modular components: event logging module, temporal pattern analysis module, and window grouping module. Each component handles a specific aspect of the detection process, making the overall complex system manageable through segmentation of functions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an event log as an intermediary data structure that captures window events and temporal information. This intermediary serves as a buffer between raw window events and the complex analysis required for task detection, simplifying the processing pipeline by standardizing input data.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Extent of automation

If temporal information analysis is used for window grouping, then automatic task recognition is improved, but computational requirements increase

Engineering Contradiction:
Improveautomatic task recognitionVSAvoidcomputational requirements
Core Design Contradiction:
Extent of automationVSUse of energy by moving object

Solution Approach 1:

The system analyzes temporal patterns at appropriate granularities rather than processing every possible temporal detail. It focuses on capturing essential switching patterns and duration information needed for task recognition, avoiding unnecessary computational overhead from excessive analysis of minor temporal variations.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9442622B2Window grouping
Publication Date: 2016.09.13 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9442622B2 patent drawing
  • US9442622B2 patent drawing
  • US9442622B2 patent drawing

AI summary

A framework is provided for obtaining window information. The window information can be applied to different assignment models to assign windows to different groups. A group may correspond to a task being performed by a user. The window information can be semantic or temporal information captured as window events and properties of windows whose events are captured. Temporal information can be information about switches between windows. Semantic information can be window titles. Temporal information, semantic information, or both, can be used to assign windows to groups.