Autonomous Data Structure Selection via ML and Bloom Filters

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The selection of data structures in code development is often error-prone and inefficient, leading to sub-optimal performance metrics such as increased program execution duration, wasted computing resources, and security vulnerabilities, particularly in applications with evolving inputs and heterogeneous systems.

Innovation Solution

A system that autonomously selects data structures using a machine learning approach with three phases: learning how to learn, learning an ML model, and determining the best-fit data structures based on performance metrics, employing a statistically distributed dataset and Bloom filters to reduce computational overhead and eliminate discretionary errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If programmers manually select data structures during code development, then they can make informed decisions based on knowledge, but the process becomes error-prone and inefficient leading to sub-optimal performance

Engineering Contradiction:
Improvedata structure selection accuracyVSAvoidcode development efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The system enables self-service by allowing the data structure selection process to autonomously determine the optimal data structure based on performance metrics, eliminating the need for manual programmer intervention and reducing errors while maintaining efficiency

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces the mechanical manual selection process with an automated machine learning-based system that analyzes performance metrics and autonomously selects data structures, improving both accuracy and efficiency simultaneously

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

2Ease of manufacture

If traditional data structure selection methods are used, then development is straightforward, but program execution duration increases and computing resources are wasted

Engineering Contradiction:
Improvedevelopment simplicityVSAvoidprogram execution duration
Core Design Contradiction:
Ease of manufactureVSDuration of action of moving object

Solution Approach 1:

The system performs preliminary action by selecting the optimal data structure during the code development phase based on performance metrics analysis, preventing sub-optimal selections that would lead to increased execution duration and resource wastage

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback mechanisms that analyze performance metrics from executed code and use this information to improve future data structure selections, continuously reducing execution duration and resource consumption while maintaining development simplicity

Inventive Principle:
Principle #23Feedback

3Measurement precision

If comprehensive data structure evaluation is performed, then selection accuracy improves, but computational overhead increases

Engineering Contradiction:
Improveselection accuracyVSAvoidcomputational overhead
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The system applies partial action by evaluating only the most relevant data structures based on performance metrics rather than exhaustively analyzing all possible data structures, achieving high selection accuracy while minimizing computational overhead

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent changes parameters by using performance metrics as the basis for evaluation rather than traditional comprehensive analysis, allowing the system to achieve accurate selections with reduced computational resources by focusing on key performance indicators

Inventive Principle:
Principle #35Parameter changes

4Ease of operation

If manual data structure selection is used, then programmers have control, but security vulnerabilities and erroneous selections increase

Engineering Contradiction:
Improveprogrammer controlVSAvoidselection reliability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system transitions control to self-service by enabling the automated system to make data structure selections based on performance metrics, eliminating programmer errors and security vulnerabilities while maintaining the ability to review and approve selections

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11694077B2Methods, systems, and articles of manufacture to autonomously select data structures
Publication Date: 2023.07.04 INTEL CORP
  • US11694077B2 patent drawing
  • US11694077B2 patent drawing
  • US11694077B2 patent drawing

AI summary

Methods, systems, and articles of manufacture to autonomously select data structures are disclosed. An example apparatus includes an ordinal assigner to assign training code operations to respective first ordered values, and assign candidate data structure types to respective second ordered values, a filter generator to, for a first instruction of the training code operations, generate a Bloom filter bit vector pattern based on (a) one of the first ordered values, (b) one of the second ordered values corresponding to a first one of the candidate data structure types, and (c) a size of the first instruction, a label generator to generate a first model training input feature vector based on the Bloom filter bit vector pattern, data corresponding to the first instruction, and a performance metric of the first one of the candidate data structure types, and a neural network manager to train the data structure selection model with the first model training input feature vector.