Invertible Collection System for Large User Selections

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems lack a method to effectively manage large numbers of user selections within applications, particularly in tracking selected and unselected items, especially in scenarios with numerous options like a web page with checkboxes.

Innovation Solution

The implementation of an invertible collection system that allows users to select or deselect items, where an empty inverted collection represents all items within a context, enabling efficient tracking of selections and deselections by managing memory usage effectively.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all items are tracked in a collection, then complete selection information is maintained, but memory consumption increases significantly with large numbers of items

Engineering Contradiction:
Improveselection tracking accuracyVSAvoidmemory consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent inverts the traditional collection approach by tracking only deselected items instead of all selected items. When Select All is clicked, the collection becomes inverted and stores only the subset of items that were deselected, rather than storing all selected items. This inversion dramatically reduces memory consumption when most items are selected.

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The patent changes the parameter being tracked from 'selected items' to 'deselected items'. By flipping which state is tracked (selected vs. deselected), the system adapts its memory usage to match the actual user behavior pattern where typically only a small subset of items differ from the default state.

Inventive Principle:
Principle #35Parameter changes

2Ease of operation

If individual checkboxes are used for each item, then precise selection control is provided, but user interaction becomes cumbersome with large numbers of items

Engineering Contradiction:
Improveselection efficiencyVSAvoidinterface elements
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent implements a Select All button that serves multiple functions: it can select all items when none are selected, deselect all items when all are selected, and toggle the inversion state of the collection. This multi-functional control element replaces the need for users to manually interact with each individual checkbox.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces an inverted collection concept where the Select All button's behavior is inverted based on the current state. When the collection is inverted, Select All deselects items instead of selecting them, providing intuitive behavior that adapts to the current selection state without requiring additional controls.

Inventive Principle:
Principle #13The other way round (Inversion)

3Loss of information

If selection state is stored for all items, then complete selection data is preserved, but processing overhead increases with large datasets

Engineering Contradiction:
Improveselection data completenessVSAvoidprocessing efficiency
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

The patent extracts only the necessary information from the full selection state by storing only the differing subset of items in the inverted collection. Instead of processing and storing data for all 100,000 items, the system processes and stores only the small subset that differs from the default state, dramatically improving processing efficiency.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes which parameter is stored and processed: instead of maintaining a boolean state for every item, the system stores only the indices of items that differ from the default state, reducing the amount of data that needs to be processed and stored while preserving all necessary selection information.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10156964B2Managing large user selections in an application
Publication Date: 2018.12.18 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10156964B2 patent drawing
  • US10156964B2 patent drawing
  • US10156964B2 patent drawing

AI summary

The present invention provides a system and methods for managing large user selections in an application. An invertible collection software module solves the problem of managing a large number of user selections within an application. When not inverted, the invertible collection tracks what a user has selected. When inverted, the invertible collection tracks what a user has not selected thus saving memory. One method may comprise defining a specific context having a set of items available for user selection, representing, by an empty inverted invertible collection, the selection of all items within the specific context, tracking one or more items a user has deselected within the specific context depending upon whether the collection is inverted or not inverted and tracking one or more items a user has deselected.