Results 1  10
of
47
Feature diagrams and logics: there and back again
 in SPLC, 2007
"... Feature modeling is a notation and an approach for modeling commonality and variability in product families. In their basic form, feature models contain mandatory/optional features, feature groups, and implies and excludes relationships. It is known that such feature models can be translated into pr ..."
Abstract

Cited by 71 (4 self)
 Add to MetaCart
(Show Context)
Feature modeling is a notation and an approach for modeling commonality and variability in product families. In their basic form, feature models contain mandatory/optional features, feature groups, and implies and excludes relationships. It is known that such feature models can be translated into propositional formulas, which enables the analysis and configuration using existing logicbased tools. In this paper, we consider the opposite translation problem, that is, the extraction of feature models from propositional formulas. We give an automatic and efficient procedure for computing a feature model from a formula. As a side effect we characterize a class of logical formulas equivalent to feature models and identify logical structures corresponding to their syntactic elements. While many different feature models can be extracted from a single formula, the computed model strives to expose graphically the maximum of the original logical structure while minimizing redundancies in the representation. The presented work furthers our understanding of the semantics of feature modeling and its relation to logics, opening avenues for new applications in reverse engineering and refactoring of feature models.
Satbased analysis of feature models is easy
 In 13th International Conference on Software Product Lines (SPLC 2009
, 2009
"... Feature models are a popular variability modeling notation used in product line engineering. Automated analyses of feature models, such as consistency checking and interactive or offline product selection, often rely on translating models to propositional logic and using satisfiability (SAT) solvers ..."
Abstract

Cited by 67 (11 self)
 Add to MetaCart
(Show Context)
Feature models are a popular variability modeling notation used in product line engineering. Automated analyses of feature models, such as consistency checking and interactive or offline product selection, often rely on translating models to propositional logic and using satisfiability (SAT) solvers. Efficiency of individual satisfiabilitybased analyses has been reported previously. We generalize and quantify these studies with a series of independent experiments. We show that previously reported efficiency is not incidental. Unlike with the general SAT instances, which fall into easy and hard classes, the instances induced by feature modeling are easy throughout the spectrum of realistic models. In particular, the phenomenon of phase transition is not observed for realistic feature models. Our main practical conclusion is a general encouragement for researchers to continued development of SATbased methods to further exploit this efficiency in future. 1
Sample spaces and feature models: There and back again
 in SPLC ’08
"... We present probabilistic feature models (PFMs) and illustrate their use by discussing modeling, mining and interactive configuration. PFMs are formalized as a set of formulas in a certain probabilistic logic. Such formulas can express both hard and soft constraints and have a well defined semantics ..."
Abstract

Cited by 26 (6 self)
 Add to MetaCart
(Show Context)
We present probabilistic feature models (PFMs) and illustrate their use by discussing modeling, mining and interactive configuration. PFMs are formalized as a set of formulas in a certain probabilistic logic. Such formulas can express both hard and soft constraints and have a well defined semantics by denoting a set of joint probability distributions over features. We show how PFMs can be mined from a given set of feature configurations using data mining techniques. Finally, we demonstrate how PFMs can be used in configuration in order to provide automated support for choice propagation based on both hard and soft constraints. We believe that these results constitute solid foundations for the construction of reverse engineering tools for software product lines and configurators using soft constraints. 1
Generating range fixes for software configuration
 in ICSE. IEEE, 2012
"... Abstract—To prevent illformed configurations, highly configurable software often allows defining constraints over the available options. As these constraints can be complex, fixing a configuration that violates one or more constraints can be challenging. Although several fixgeneration approaches e ..."
Abstract

Cited by 22 (12 self)
 Add to MetaCart
(Show Context)
Abstract—To prevent illformed configurations, highly configurable software often allows defining constraints over the available options. As these constraints can be complex, fixing a configuration that violates one or more constraints can be challenging. Although several fixgeneration approaches exist, their applicability is limited because (1) they typically generate only one fix, failing to cover the solution that the user wants; and (2) they do not fully support nonBoolean constraints, which contain arithmetic, inequality, and string operators. This paper proposes a novel concept, range fix, for software configuration. A range fix specifies the options to change and the ranges of values for these options. We also design an algorithm that automatically generates range fixes for a violated constraint. We have evaluated our approach with three different strategies for handling constraint interactions, on data from five open source projects. Our evaluation shows that, even with the most complex strategy, our approach generates complete fix lists that are mostly short and concise, in a fraction of a second. I.
Comparing Two Implementations of a Complete and BacktrackFree Interactive Configurator
 In: CP’04 CSPIA Workshop
, 2004
"... A product configurator should be complete and backtrack free in the sense that the user can choose freely between any valid configuration and will be prevented from making choices that no valid configuration satisfies. In this paper, we experimentally evaluate a symbolic and searchbased impleme ..."
Abstract

Cited by 22 (11 self)
 Add to MetaCart
(Show Context)
A product configurator should be complete and backtrack free in the sense that the user can choose freely between any valid configuration and will be prevented from making choices that no valid configuration satisfies. In this paper, we experimentally evaluate a symbolic and searchbased implementation of an interactive product configuration algorithm with these properties. Our results show that the symbolic approach often has several orders of magnitude faster response time than the searchbased approach due to the precompilation of a symbolic representation of the solution space. Moreover, the di#erence between the average and worst response time for the symbolic approach is typically within a factor of two, whereas it for the searchbased approach may be more than two orders of magnitude.
Partition Search for Nonbinary Constraint Satisfaction
 Information Sciences
, 2007
"... Previous algorithms for unrestricted constraint satisfaction use reduction search, which inferentially removes values from domains in order to prune the backtrack search tree. This paper introduces partition search, which uses an efficient join mechanism instead of removing values from domains. Anal ..."
Abstract

Cited by 18 (0 self)
 Add to MetaCart
(Show Context)
Previous algorithms for unrestricted constraint satisfaction use reduction search, which inferentially removes values from domains in order to prune the backtrack search tree. This paper introduces partition search, which uses an efficient join mechanism instead of removing values from domains. Analytical prediction of quantitative performance of partition search appears to be intractable and evaluation therefore has to be by experimental comparison with reduction search algorithms that represent the state of the art. Instead of working only with available reduction search algorithms, this paper introduces enhancements such as semijoin reduction preprocessing using Bloom filtering.
CLab: A C++ library for fast backtrackfree interactive product configuration.
, 2007
"... ..."
(Show Context)
Integrating CSP Decomposition Techniques and BDDs for Compiling Configuration Problems
 In Proceedings of the CPAIOR. Springer LNCS
, 2005
"... In this project we present, the treeofBDDs approach, a decomposition scheme for compiling configuration problems. We also present efficient techniques for generating minimum explanations in the BDDbased configuration schemes. Given a BDD representing the solutions of a CSP, an efficient technique ..."
Abstract

Cited by 16 (1 self)
 Add to MetaCart
(Show Context)
In this project we present, the treeofBDDs approach, a decomposition scheme for compiling configuration problems. We also present efficient techniques for generating minimum explanations in the BDDbased configuration schemes. Given a BDD representing the solutions of a CSP, an efficient technique for detecting full interchangeable values is given. Experimental results show that the techniques presented here drastically reduces the time and space requirements for interactive configurators.
Postoptimality analysis for integer programming using binary decision diagrams
 Carnegie Mellon University
, 2006
"... We show how binary decision diagrams (BDDs) can be used to solve and obtain postoptimality analysis for linear and nonlinear integer programming problems with binary or general integer variables. A given constraint set corresponds to a unique reduced BDD that provides a potentially compact represent ..."
Abstract

Cited by 14 (8 self)
 Add to MetaCart
(Show Context)
We show how binary decision diagrams (BDDs) can be used to solve and obtain postoptimality analysis for linear and nonlinear integer programming problems with binary or general integer variables. A given constraint set corresponds to a unique reduced BDD that provides a potentially compact representation of all feasible or nearoptimal solutions. The BDD can be queried in real time for indepth postoptimality reasoning. The approach is equally effective for linear and nonlinear problems. There are currently no other methods for obtaining such an analysis, short of repeatedly resolving the problem. We illustrate the analysis on capital budgeting, network reliability, and portfolio design problems. 1
A BDDbased polytime algorithm for costbounded interactive configuration
 in AAAI’06: Proceedings of the TwentyFirst AAAI Conference on Artificial Intelligence
, 2006
"... Interactive configurators are decision support systems assisting users in selecting values for parameters that respect given constraints. The underlying knowledge can be conveniently formulated as a Constraint Satisfaction Problem where the constraints are propositional formulas. The problem of in ..."
Abstract

Cited by 11 (6 self)
 Add to MetaCart
(Show Context)
Interactive configurators are decision support systems assisting users in selecting values for parameters that respect given constraints. The underlying knowledge can be conveniently formulated as a Constraint Satisfaction Problem where the constraints are propositional formulas. The problem of interactive configuration was originally inspired by the product configuration problem with the emergence of the masscustomization paradigm in product manufacturing, but has also been applied to other tasks requiring user interaction, such as specifying services or setting up complex equipment. The userfriendly requirements of complete, backtrackfree and realtime interaction makes the problem computationally challenging. Therefore, it is beneficial to compile the configuration constraints into a tractable representation such as Binary Decision Diagrams (BDD) (Bryant 1986) to support efficient user interaction. The compilation deals with the NPhardness such that the online interaction is in polynomial time in the size of the BDD. In this paper we address the problem of extending configurators so that a user can interactively limit configuration choices based on a maximum cost (such as price or weight of a product) of any valid configuration, in a complete, backtrackfree and realtime manner. The current BDD compilation approach is not adequate for this purpose, since adding the total cost information to the constraints description can dramatically increase the size of the compiled BDD. We show how to extend this compilation approach to solve the problem while keeping the polynomial time guarantees.