Skip to main content Accesibility Help

An efficient diagnosis algorithm for inconsistent constraint sets

  • A. Felfernig (a1), M. Schubert (a1) and C. Zehentner (a1)

Constraint sets can become inconsistent in different contexts. For example, during a configuration session the set of customer requirements can become inconsistent with the configuration knowledge base. Another example is the engineering phase of a configuration knowledge base where the underlying constraints can become inconsistent with a set of test cases. In such situations we are in the need of techniques that support the identification of minimal sets of faulty constraints that have to be deleted in order to restore consistency. In this paper we introduce a divide and conquer-based diagnosis algorithm (FastDiag) that identifies minimal sets of faulty constraints in an overconstrained problem. This algorithm is specifically applicable in scenarios where the efficient identification of leading (preferred) diagnoses is crucial. We compare the performance of FastDiag with the conflict-directed calculation of hitting sets and present an in-depth performance analysis that shows the advantages of our approach.

Corresponding author
Reprint requests to: A. Felfernig, Institute for Software Technology, Graz University of Technology, Inffeldgasse 16b, A-8010 Graz, Austria. E-mail:
Hide All
Ardissono, L., Felfernig, A., Friedrich, G., Jannach, D., Petrone, G., Schaefer, R., & Zanker, M. (2003). A framework for the development of personalized, distributed web-based configuration systems. AI Magazine 24(3), 93108.
Belanger, F. (2005). A conjoint analysis of online consumer satisfaction. Journal of Electronic Commerce Research 6, 95111.
Castillo, L., Borrajo, D., & Salido, M. (2005). Planning, Scheduling and Constraint Satisfaction: From Theory to Practice. Amsterdam: IOS Press.
Chen, Z., & Suen, C. (2003). Measuring the complexity of rule-based expert systems. Expert Systems with Applications 7(4), 467481.
DeKleer, J. (1990). Using crude probability estimates to guide diagnosis. AI Journal 45(3), 381391.
DeKleer, J., Mackworth, A., & Reiter, R. (1992). Characterizing diagnoses and systems. AI Journal 56(2–3), 197222.
DeKleer, J., & Williams, B. (1987). Diagnosing multiple faults. AI Journal 32(1), 97130.
Feldman, A., Provan, G., & Gemund, A. (2008). Computing minimal diagnoses by greedy stochastic search. Proc. 23rd AAAI Conf. Artificial Intelligence (AAAI’08), pp. 911–918, Chicago.
Felfernig, A., Friedrich, G., Isak, K., Shchekotykhin, K., Teppan, E., & Jannach, D. (2007). Automated debugging of recommender user interface descriptions. Journal of Applied Intelligence 31(1), 114.
Felfernig, A., Friedrich, G., Jannach, D., & Stumptner, M. (2004). Consistency-based diagnosis of configuration knowledge bases. AI Journal 152(2), 213234.
Felfernig, A., Friedrich, G., Schubert, M., Mandl, M., Mairitsch, M., & Teppan, E. (2009). Plausible repairs for inconsistent requirements. Proc. 21st Int. Joint Conf. Artificial Intelligence (IJCAI’09), pp. 791–796, Pasadena, CA.
Felfernig, A., Friedrich, G., Teppan, E., & Isak, K. (2008). Intelligent debugging and repair of utility constraint sets in knowledge-based recommender applications. Proc. 13th ACM Int. Conf. Intelligent User Interfaces (IUI’08), pp. 218–226, Canary Islands, Spain.
Fijany, A., & Vatan, F. (2004). New approaches for efficient solutions of hitting set problems. Proc. Int. Symp. Information and Communication Technologies, pp. 1–10, Cancun, Mexico.
Fleischanderl, G., Friedrich, G., Haselboeck, A., Schreiner, H., & Stumptner, M. (1998). Configuring large systems using generative constraint satisfaction. IEEE Intelligent Systems 13(4), 5968.
Friedrich, G., & Shchekotykhin, K. (2005). A general diagnosis method for ontologies. Proc. 4th Int. Semantic Web Conference (ISWC’05), LNCS, Vol. 3729, pp. 232246. New York: Springer.
Fröhlich, P., Nejdl, W., & Schroeder, M. (1994). A formal semantics for preferences and strategies in model-based diagnosis. Proc. 5th Int. Workshop on Principles of Diagnosis (DX-94), pp. 106–113.
Jannach, D., & Liegl, J. (2006). Conflict-directed relaxation of constraints in content-based recommender systems. Proc. IEA/AIE 2006, pp. 819829, Annency, France.
Junker, U. (2004). QuickXplain: preferred explanations and relaxations for over-constrained problems. Proc. 19th National Conf. Artificial Intelligence (AAAI’04), pp. 167–172, San Jose, CA.
Lin, L., & Jiang, Y. (2002). Computing minimal hitting sets with genetic algorithms. Algorithmica 32(1), 95106.
Lin, L., & Jiang, Y. (2003). The computation of hitting sets: review and new algorithm. Information Processing Letters 86, 177–184.
Marques-Silva, J., & Sakallah, K. (1996). Grasp: a new search algorithm for satisfiability. Proc. Int. Conf. Computer-Aided Design, pp. 220–227, Santa Clara, CA.
Mittal, S., & Frayman, F. (1989). Towards a generic model of configuration tasks. Proc. 11th Int. Joint Conf. Artificial Intelligence (IJCAI’89), pp. 1395–1401, Detroit, MI.
O'Sullivan, B., Papdopoulos, A., Faltings, B., & Pu, P. (2007). Representative explanations for over-constrained problems. Proc. 22nd National Conf. Artificial Intelligence (AAAI’07), pp. 323–328, Vancouver, Canada.
Reiter, R. (1987). A theory of diagnosis from first principles. AI Journal 23(1), 5795.
Siddiqi, S., & Huang, J. (2007). Hierarchical diagnosis of multiple faults. Proc. 20th Int. Joint Conf. Artificial Intelligence (IJCAI’07), pp. 581–586, Hyderabad, India.
Sinz, C., & Haag, A. (2007). Configuration. IEEE Intelligent Systems 22(1), 7890.
Tsang, E. (1993). Foundations of Constraint Satisfaction. New York: Academic.
Winterfeldt, D., & Edwards, W. (1986). Decision Analysis and Behavioral Research. New York: Cambridge University Press.
Wotawa, F. (2001). A variant of Reiter's hitting-set algorithm. Information Processing Letters 79, 4551.
Recommend this journal

Email your librarian or administrator to recommend adding this journal to your organisation's collection.

  • ISSN: 0890-0604
  • EISSN: 1469-1760
  • URL: /core/journals/ai-edam
Please enter your name
Please enter a valid email address
Who would you like to send this to? *



Full text views

Total number of HTML views: 0
Total number of PDF views: 0 *
Loading metrics...

Abstract views

Total abstract views: 0 *
Loading metrics...

* Views captured on Cambridge Core between <date>. This data will be updated every 24 hours.

Usage data cannot currently be displayed