ML Capability Selection and Graph-Based Application Generation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Generating applications from a set of capabilities is computationally expensive and requires significant storage resources, making it intractable for large enterprises with numerous custom software applications, leading to integration and operational inefficiencies.
Innovation Solution
A generative machine learning model is used to identify a subset of capabilities based on user input, generate applications through graphing functions, and reduce computational and storage costs by pre-allocating inputs, with semantic search to select capabilities.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If all possible applications are generated from a set of capabilities, then application coverage and functionality are improved, but computational cost and storage requirements become intractable
Solution Approach 1:
The patent segments the application generation process into two distinct stages: (1) capability selection using a generative machine learning model to identify relevant capabilities from a large set, and (2) application composition using a graphing function to assemble selected capabilities into valid applications. This segmentation avoids the computationally intractable task of generating all possible applications while maintaining comprehensive coverage through intelligent selection.
Solution Approach 2:
The patent introduces a generative machine learning model as an intermediary component between the set of capabilities and the final applications. This model acts as a mediator that processes capability descriptions and user requirements to select the most relevant capabilities, thereby reducing the search space without sacrificing application coverage or functionality.
2Adaptability or versatility
If all possible applications are generated from capabilities, then functional completeness is improved, but data storage resources become insufficient
Solution Approach 1:
The patent divides the application representation into two parts: (1) a compact set of selected capabilities with their metadata, and (2) a graph structure describing relationships between capabilities. This segmentation allows the system to store only the essential information needed to reconstruct applications, dramatically reducing storage requirements while maintaining functional completeness.
Solution Approach 2:
Instead of storing complete application implementations, the patent stores representations of capabilities and their relationships. The actual application logic is reconstructed on-demand by composing the selected capabilities according to the graph structure, eliminating the need for persistent storage of full applications.
3Adaptability or versatility
If capabilities are composed into applications without pre-allocation, then application flexibility is improved, but the graphing function complexity increases
Solution Approach 1:
The patent applies preliminary action by having the generative machine learning model pre-allocate and select capabilities along with their expected inputs and outputs before the graphing function processes them. This pre-selection reduces the graphing function's complexity by working with a curated subset of capabilities rather than processing all possible combinations.
Data Source
AI summary
Systems and methods are provided that include obtaining a user input; obtaining, from a database, data indicative of a plurality of capabilities; identifying, via a machine learning model, a subset of the plurality of capabilities based on the user input; determining a graph representing dependencies regarding the subset of the plurality of capabilities; and generating an application based on an output of the machine learning model and the graph, wherein the application includes the subset of the plurality of capabilities. This results in improved generation and execution of applications composed of multiple capabilities, which can include database table generation, new role creation, and the creation of approval flows. Use of large language models or other generative machine learning models allows the application generation process to be improved, reducing compute and storage requirements and reducing the degree to which user input is required for generation and execution of such applications.


