Template Constraint Expressions for Configuration Models
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current frameworks for constraint-based systems, such as Gecode, parse and process configuration rule definitions independently for each matching instance, leading to inefficiencies in processing and updating rules, especially when the same rule is applied multiple times with different variables, and do not allow for the creation of durable object dependency expressions that can be translated across different constraint-solver spaces.
Innovation Solution
The introduction of template constraint expressions, which use placeholder identifiers instead of concrete variables, allowing for the creation of a durable representation of object dependency expressions that can be copied and instantiated for multiple object instances, enabling a single translation step for multiple usages and separating translation from processing, thereby reducing the time complexity from O(NumberOfMatchings*TimeForMatching) to O(TimeForParsing+NumberOfMatchings*TimeForMatching).
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If configuration rules are parsed and instantiated independently for each matching instance, then the system can process specific instances, but the translation time complexity increases to O(NumberOfMatchings*TimeForMatching)
Solution Approach 1:
The patent creates template constraint expressions in advance that capture the structure of configuration rules with placeholder identifiers. These templates are generated once during model definition and stored for reuse, eliminating the need to re-parse the same rule structure multiple times for different instances. This preliminary creation of reusable templates directly reduces translation time complexity.
Solution Approach 2:
The patent enables copying of template constraint expressions to generate specific constraint expressions for different instances. Instead of re-translating the same rule definition for each matching instance, the system copies the pre-parsed template and substitutes placeholder identifiers with actual variable names, significantly reducing redundant translation operations.
2Adaptability or versatility
If the same configuration rule is applied multiple times with different variables, then the rule can handle diverse cases, but the parsing and processing effort increases proportionally
Solution Approach 1:
The patent makes configuration rules universal by introducing placeholder identifiers that represent variable elements. A single template constraint expression with placeholders can match and adapt to multiple different instances by substituting different variable names, allowing one rule definition to serve multiple purposes without requiring separate parsed versions for each case.
Solution Approach 2:
The patent introduces template constraint expressions as an intermediary layer between the original configuration rule definitions and the instance-specific constraint expressions. This intermediate representation with placeholder identifiers acts as a mediator that simplifies the translation process, allowing systematic substitution rather than direct complex processing for each instance.
3Reliability
If configuration rules are translated for each matching instance, then specific constraints can be enforced, but the time complexity increases from O(TimeForParsing+NumberOfMatchings*TimeForMatching) to O(NumberOfMatchings*TimeForMatching)
Solution Approach 1:
The patent performs preliminary parsing of configuration rules to create template constraint expressions that capture the essential structure and constraints. This upfront parsing separates the translation work from the instance-specific processing, allowing the same template to be reused across multiple matchings without repeating the parsing operation, thus reducing overall translation time while maintaining constraint accuracy.
Solution Approach 2:
The patent copies validated template constraint expressions for each matching instance rather than re-translating the original rules. This copying approach preserves the accuracy of constraint evaluation while eliminating redundant translation operations, as the copied templates have already been validated during their initial creation.
Data Source
AI summary
Technologies are provided for creating and using template constraint expressions in constraint-based systems. Template constraint expressions can be created that can be used to define multiple usages of a same constraint rule in a configuration model. Using the template constraint expression, the constraint rule can be translated once and used multiple times as different instances of the rule are activated. Updates to the rule can be made to the template constraint expression and applied to all of the related instances. Constraint expressions can be created based on the template constraint expression. Multiple object instances in a configuration model can be identified that satisfy matching criteria of the template constraint expression. Variables of the matching object instances can be mapped to variable placeholders in the template constraint expression to create constraint expressions. A constraint solver can be used to evaluate the constraint expressions.


