Journal of Intelligent Information Systems

, Volume 49, Issue 1, pp 87–118 | Cite as

Constraint-based and SAT-based diagnosis of automotive configuration problems

  • Rouven Walter
  • Alexander Felfernig
  • Wolfgang Küchlin


We compare the concepts and computation of optimized diagnoses in the context of Boolean constraint based knowledge systems of automotive configuration, namely the preferred minimal diagnosis and the minimum weighted diagnosis. In order to restore the consistency of an over-constrained system w.r.t. a strict total order of the user requirements, the preferred minimal diagnosis tries to keep the most preferred user requirements and can be computed, for example, by the FASTDIAG algorithm. In contrast, partial weighted MinUNSAT solvers aim to find a set of unsatisfied clauses with the minimum sum of weights, such that the diagnosis is of minimum weight. It turns out that both concepts have similarities, i.e., both deliver an optimal minimal correction subset. We show use cases from automotive configuration where optimized diagnoses are desired. We point out theoretical commonalities and prove the reducibility of both concepts to each other, i.e., both problems are FPNP-complete, which was an open question. In addition to exact algorithms we present greedy algorithms. We evaluate the performance of exact and greedy algorithms on problem instances based on real automotive configuration data from three different German car manufacturers, and we compare the time and quality tradeoff.


Diagnosis Preferences Optimization Constraints SAT Automotive Configuration 


  1. Ansótegui, C., Bonet, M.L., & Levy, J. (2009). Solving (weighted) partial MaxSAT through satisfiability testing, In Kullmann, O. (Ed.) SAT 2009, LNCS, vol. 5584, pp. 427–440. Springer Berlin Heidelberg.Google Scholar
  2. Ansótegui, C., & Gabàs, J. (2013). Solving (weighted) partial MaxSAT with ILP, In Gomes, C.P., & Sellmann, M. (Eds.) CPAIOR 2013, LNCS, vol. 7874, pp. 403–409. Springer.Google Scholar
  3. Argelich, J., Lynce, I., & Marques-Silva, J. (2009). On solving boolean multilevel optimization problems, In Boutilier, C. (Ed.) IJCAI 2009, pp. 393–398.Google Scholar
  4. Argelich, J., & Manyà, F. (2006). Exact Max-SAT solvers for over-constrained problems. J Heuristics, 12(4–5), 375–392.CrossRefzbMATHGoogle Scholar
  5. Audemard, G., Lagniez, J., & Simon, L. (2013). Improving glucose for incremental SAT solving with assumptions: Application to MUS extraction, In Järvisalo, M., & Gelder, A.V. (Eds.) SAT 2013, LNCS, vol. 7962, pp. 309–317. Springer.Google Scholar
  6. Benavides, D., Segura, S., & Ruiz-Cortés, A. (2010). Automated analysis of feature models 20 years later: A literature review. Information Systems, 35(6), 615–636.CrossRefGoogle Scholar
  7. Biere, A. (2008). PicoSAT essentials. JSAT, 4(2–4), 75–97.zbMATHGoogle Scholar
  8. Chen, Z., & Toda, S. (1995). The complexity of selecting maximal solutions. Inform. Comput, 119(2), 231–239.MathSciNetCrossRefzbMATHGoogle Scholar
  9. Cook, S.A. (1971). The complexity of theorem-proving procedures, In Harrison, M.A., Banerji, R.B., & Ullman, J.D. (Eds.) STOC, pp. 151–158. ACM.Google Scholar
  10. Eén, N., & Sörensson, N. (2004). An extensible SAT-solver, In Giunchiglia, E., & Tacchella, A. (Eds.) SAT 2003, LNCS, vol. 2919, pp. 502–518. Springer Berlin Heidelberg.Google Scholar
  11. Eén, N., & Sörensson, N. (2006). Translating pseudo-boolean constraints into SAT. JSAT, 2, 1–26.zbMATHGoogle Scholar
  12. Felfernig, A., Schubert, M., & Zehentner, C. (2012). An efficient diagnosis algorithm for inconsistent constraint sets. AIEDAM, 26(1), 53–62.CrossRefGoogle Scholar
  13. Franco, J., & Martin, J. (2009). A history of satisfiability, In Biere, A., Heule, M., van Maaren, H., & Walsh, T. (Eds.) Handproceedings of Satisfiability, FAIA, vol. 185, chap. 1, pp. 3–74. IOS Press.Google Scholar
  14. Fu, Z., & Malik, S. (2006). On solving the partial MAX-SAT problem, In Biere, A., & Gomes, C.P. (Eds.) SAT 2006, LNCS, vol. 4121, pp. 252–265. Springer.Google Scholar
  15. Gottlob, G., & Fermüller, C.G. (1993). Removing redundancy from a clause. Artif. Intell, 61(2), 263–289.MathSciNetCrossRefzbMATHGoogle Scholar
  16. Heras, F., Morgado, A., & Marques-Silva, J. (2011). Core-guided binary search algorithms for maximum satisfiability. In Burgard, W., & Roth, D. (Eds.) AAAI, pp. 36–41. AAAI Press.Google Scholar
  17. Heras, F., Morgado, A., & Marques-Silva, J. (2012). An empirical study of encodings for group MaxSAT. In Kosseim, L., & Inkpen, D. (Eds.) Canadian Conf. on AI, LNCS, vol. 7310, pp. 85–96. Springer.Google Scholar
  18. Heras, F., Morgado, A., & Marques-Silva, J. (2012). Lower bounds and upper bounds for MaxSAT. In Hamadi, Y., & Schoenauer, M. (Eds.) LION 6, LNCS, vol. 7219, pp. 402–407. Springer Berlin Heidelberg.Google Scholar
  19. Jenner, B., & Torán, J. (1995). Computing functions with parallel queries to NP. Theoretical Computer Science, 141(1–2), 175–193.MathSciNetCrossRefzbMATHGoogle Scholar
  20. Junker, U. (2004). QUICKXPLAIN: Preferred explanations and relaxations for over-constrained problems, In AAAI, pp. 167–172. AAAI Press / The MIT Press.Google Scholar
  21. Krentel, M.W. (1988). The complexity of optimization problems. J. Comput. System Sci, 36(3), 490–509.MathSciNetCrossRefzbMATHGoogle Scholar
  22. Küchlin, W., & Sinz, C. (2000). Proving consistency assertions for automotive product data management. J. Automat. Reason, 24(1–2), 145–163.CrossRefzbMATHGoogle Scholar
  23. Kügel, A. (2012). Improved exact solver for the weighted MAX-SAT problem, In Berre, D.L. (Ed.) POS-10. Pragmatics of SAT, EasyChair Proceedings in Computing, vol. 8, pp. 15–27. EasyChair.Google Scholar
  24. Le Berre, D., & Parrain, A. (2010). The Sat4j library, release 2.2. JSAT, 7(2–3), 59–6.Google Scholar
  25. Li, C.M., & Manyà, F. (2009). MaxSAT, hard and soft constraints, In Biere, A., Heule, M., van Maaren, H., & Walsh, T. (Eds.) Handproceedings of Satisfiability, FAIA, vol. 185, chap. 19, pp. 613–631. IOS Press.Google Scholar
  26. Liffiton, M.H., & Sakallah, K.A. (2008). Algorithms for computing minimal unsatisfiable subsets of constraints. J. Autom. Reasoning, 40(1), 1–33.MathSciNetCrossRefzbMATHGoogle Scholar
  27. Marques-Silva, J., Heras, F., Janota, M., Previti, A., & Belov, A. (2013). On computing minimal correction subsets, In Rossi, F. (Ed.) IJCAI, pp. 615–622, IJCAI/AAAI.Google Scholar
  28. Marques-Silva, J., & Previti, A. (2014). On computing preferred MUSes and MCSes, In Sinz, C., & Egly, U. (Eds.) SAT 2014, LNCS, vol. 8561, pp. 58–74. Springer.Google Scholar
  29. Martins, R., Manquinho, V.M., & Lynce, I. (2014). Open-WBO: A modular MaxSAT solver, In Sinz, C., & Egly, U. (Eds.) SAT 2014, LNCS, vol. 8561, pp. 438–445. Springer Int. Publishing.Google Scholar
  30. Mencía, C., & Marques-Silva, J. (2014). Efficient relaxations of over-constrained CSPs, In ICTAI 2014, pp. 725–732. IEEE.Google Scholar
  31. Morgado, A., Heras, F., Liffiton, M.H., Planes, J., & Marques-Silva, J. (2013). Iterative and core-guided MaxSAT solving: A survey and assessment. Constraints, 18 (4), 478–534.MathSciNetCrossRefzbMATHGoogle Scholar
  32. Narodytska, N., & Bacchus, F. (2014). Maximum satisfiability using core-guided maxsat resolution, In Brodley, C.E., & Stone, P. (Eds.) AAAI, pp. 2717–2723. AAAI Press.Google Scholar
  33. O’Callaghan, B., O’Sullivan, B., & Freuder, E.C. (2005). Generating corrective explanations for interactive constraint satisfaction, In van Beek, P. (Ed.) CP 2005, LNCS, vol. 3709, pp. 445–459. Springer.Google Scholar
  34. Papadimitriou, C.M. (1994). Computational complexity. Addison-Wesley. Massachusetts: Reading.Google Scholar
  35. Plaisted, D.A., & Greenbaum, S. (1986). A structure-preserving clause form translation. J. Symbolic Comput, 2(3), 293–304.MathSciNetCrossRefzbMATHGoogle Scholar
  36. Schrijver, A. (1998). Theory of linear and integer programming: Wiley-Interscience.Google Scholar
  37. Selman, A.L. (1994). A taxonomy of complexity classes of functions. J. Comput. Syst. Sci, 48(2), 357–381.MathSciNetCrossRefzbMATHGoogle Scholar
  38. Sinz, C. (2005). Towards an optimal CNF encoding of boolean cardinality constraints, In van Beek, P. (Ed.) CP 2005, LNCS, vol. 3709, pp. 827–831. Springer.Google Scholar
  39. Sinz, C., Kaiser, A., & Küchlin, W. (2003). Formal methods for the validation of automotive product configuration data. AIEDAM, 17(1), 75–97.CrossRefGoogle Scholar
  40. Tseitin, G.S. (1970). On the complexity of derivations in the propositional calculus. Studies in Constructive Mathematics and Mathematical Logic Part II, 115–125.Google Scholar
  41. Walter, R., Felfernig, A., & Küchlin, W. (2015). Inverse QuickXPlain vs. MaxSAT — a comparison in theory and practice. In Tiihonen, J., Falkner, A., & Axling, T. (Eds.) Proc. of the 17th Int. Config. Workshop, pp. 97–104. Vienna, Austria.Google Scholar
  42. Walter, R., & Küchlin, W. (2014). ReMax – a MaxSAT aided product configurator, In Felfernig, A., Forza, C., & Haag, A. (Eds.) Proc. of the 16th Int. Config. Workshop, pp. 59–66. Novi Sad, Serbia.Google Scholar
  43. Walter, R., Zengler, C., & Küchlin, W. (2013). Applications of MaxSAT in automotive configuration, In Aldanondo, M., & Falkner, A. (Eds.) Proc. of the 15th Int. Config. Workshop, pp. 21–28. Vienna, Austria.Google Scholar
  44. Warners, J.P. (1998). A linear-time transformation of linear inequalities into conjunctive normal form. Information Processing Letters, 68(2), 63–69.MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer Science+Business Media New York 2016

Authors and Affiliations

  1. 1.Symbolic Computation Group, WSI InformaticsEberhard-Karls-UniversitätTübingenGermany
  2. 2.Institute for Software TechnologyGraz University of TechnologyGrazAustria

Personalised recommendations