Dynamic Solver Selection for Linear Programming Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current sourcing event optimization methods are inefficient due to the use of single solvers for all scenarios, which can lead to increased processing time and complexity, and do not effectively handle outlier bids, resulting in suboptimal solutions.
Innovation Solution
A system that identifies and removes outlier bids, generates linear programming models based on defined scenarios and values, performs complexity analysis to select appropriate solvers, and uses different solvers for complex and non-complex models, optimizing sourcing events by leveraging the strengths of various solvers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a single solver is used for all linear programming models, then the system structure is simple, but the processing time increases and efficiency decreases
Solution Approach 1:
The patent segments the solver selection process by dividing linear programming models into complex and non-complex categories based on complexity analysis. Different solvers are assigned to different segments: a first solver handles complex models while a second solver handles non-complex models. This segmentation resolves the contradiction by improving processing efficiency through specialized solver selection while maintaining manageable system complexity through automated classification.
Solution Approach 2:
The patent implements a dynamic solver selection mechanism that automatically adjusts solver choice based on real-time complexity analysis of each linear programming model. The system dynamically evaluates model characteristics and selects the appropriate solver, transforming a static single-solver approach into a dynamic multi-solver system. This resolves the contradiction by adapting solver selection to specific model requirements, improving efficiency without requiring manual configuration complexity.
2Reliability
If complexity analysis is performed on each linear programming model, then the most appropriate solver can be selected, but the overall processing complexity increases
Solution Approach 1:
The patent applies preliminary complexity analysis to each linear programming model before solver selection. By performing this analysis in advance, the system determines the appropriate solver category (complex or non-complex) beforehand, ensuring reliable solver matching. This preliminary action resolves the contradiction by establishing accurate solver selection criteria without adding significant processing complexity, as the analysis is automated and integrated into the workflow.
Solution Approach 2:
The system performs self-service complexity analysis by automatically evaluating each linear programming model's characteristics and determining its own complexity category. This automated self-assessment eliminates the need for external manual analysis, maintaining high solver selection accuracy while minimizing added complexity. The model essentially serves itself by providing the necessary information for appropriate solver selection through its own structural properties.
3Measurement precision
If outlier bids are removed from the data set, then the optimization accuracy improves, but the data processing time increases
Solution Approach 1:
The patent extracts and removes outlier bids from the data set before generating linear programming models. By identifying and taking out these abnormal data points, the system improves optimization accuracy by ensuring that outlier values do not distort the results. This extraction process resolves the contradiction by enhancing measurement precision while minimizing time loss, as the outlier detection is performed efficiently using statistical methods on the bid data.
Data Source
AI summary
Some embodiments provide a program. The program receives from a client device a sourcing request specifying a plurality of variables comprising set of sources, a set of items, and a set of quantities associated with the items. The program further receives a set of offers from the set of sources. Each offer in the set of offers specifies an item in set of items, a price associated with the item, and a quantity associated with the item. The program also receives a selection of a set of defined scenarios for the sourcing event and the set of offers. The program further generates a set of linear programming models based on the set of defined scenarios the sourcing and the set of offers. The program also instructs solvers to solve the liner programming models.


