Abstract
In automotive industry, validation and maintenance of product configuration data is a complex task. Both orders from the customers and new product line designs from the R&D department are subject to a set of configuration rules to be satisfied. In this work, non-monotonic computational logic, answer set programming in particular, is applied to industrial-scale automotive product configuration problems. This methodology provides basic validation of the product configuration documentation and validation of single product orders, where Reiter style diagnosis provides minimal changes needed to correct an invalid order or a product configuration rule set. In addition, a method for discovering groups of product configuration variables that are strongly related can be obtained by small modification of the basic logic program, and by the usage of cautious and brave reasoning methods. As a result, options that are used in every, or respectively in no configuration, can easily be identified, as well as groups of options that are always used together or not at all. Finally it is possible to single out mandatory and obsolete options, relative to a preselected set of included or excluded options. Experimental results on an industrial dataset show applicability, example results, and computational feasibility with computation times on the order of seconds using a state-of-the-art answer set solver on standard PC hardware.
Similar content being viewed by others
Notes
As the benchmark is consistent, the result is empty.
References
Aho, A. V., & Ullman, J. D. (1979). Universality of data retrieval languages. In Proceedings of the 6th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, (pp. 110–119). ACM.
Aldanondo, M., Hadj-Hamou, K., Moynard, G., & Lamothe, J. (2003). Mass customization and configuration: Requirement analysis and constraint based modeling propositions. Integrated Computer-Aided Engineering, 10(2), 177–189.
Amilhastre, J., Fargier, H., & Marquis, P. (2002). Consistency restoration and explanations in dynamic CSPs-application to configuration. Artificial Intelligence, 135(1), 199–234.
Andersen, H. R., Hadzic, T., & Pisinger, D. (2010). Interactive cost configuration over decision diagrams. Journal of Artificial Intelligence Research, 37(1), 99–140.
Arlt, V., Günter, A., Hollmann, O., Wagner, T., & Hotz, L. (1999). EngCon - Engineering and Configuration. In Workshop on Configuration at AAAI
Aschinger, M., Drescher, C., Friedrich, G., Gottlob, G., Jeavons, P., Ryabokon, A., & Thorstensen, E. (2011). Optimization methods for the partner units problem. In: International Conference on AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems, (pp. 4–19). Springer.
Aschinger, M., Drescher, C., Gottlob, G., & Vollmer, H. (2014). LoCo-A logic for configuration problems. ACM Transactions on Computational Logic (TOCL), 15(3), 20.
Bachant, J., & McDermott, J. (1984). R1 revisited: Four years in the trenches. AI magazine, 5(3), 21.
Balduccini, M. (2011). Industrial-size scheduling with ASP+CP. In International conference on logic programming and nonmonotonic reasoning, (pp. 284–296). Springer.
Balduccini, M., & Gelfond, M. (2003). Diagnostic reasoning with A-Prolog. Theory and Practice of Logic Programming, 3(4), 425–461.
Baral, C. (2004). Knowledge Representation, Reasoning, and Declarative Problem Solving. Cambridge: Cambridge University Press.
Blochinger, W., Sinz, C., & Küchlin, W. (2001). Parallel consistency checking of automotive product data. In Proceedings of the international parallel computing conference, (pp. 50–57).
BMBF: Zukunftsbild Industrie 4.0. (2013). In Broschüre (pp. 99999-1679). Bonn: Bundesministerium für Bildung und Forschung (BMBF). Retrieved May 15, 2017 from https://www.bmbf.de/pub/Zukunftsbild_Industrie_4.0.pdf
Brewka, G., Delgrande, J., Romero, J., & Schaub, T. (2015) Asprin: Customizing answer set preferences without a headache. In AAAI Conference on artificial intelligence, (pp. 1467–1474).
Brewka, G., Eiter, T., & Truszczyński, M. (2011). Answer set programming at a glance. Communications of the ACM, 54(12), 92–103.
Calimeri, F., Faber, W., Gebser, M., Ianni, G., Kaminski, R., Krennwallner, T., Leone, N., Ricca, F., & Schaub, T. (2012). ASP-Core-2: Input language format (p 15). ASP Standardization Working Group, Tech. Rep. Retrieved May 15, 2017 from https://www.mat.unical.it/aspcomp2013/files/ASP-CORE-2.00.pdf
Davis, S. M. (1987). Future perfect. MA: Addison-Wesley Reading.
Du, X., Jiao, J., & Tseng, M. M. (2001). Architecture of product family:Fundamentals and methodology. Concurrent Engineering, 9(4), 309–325.
Eiter, T., Faber, W., Leone, N., & Pfeifer, G. (1999). The diagnosis frontend of the dlv system. AI Communications, 12(1–2), 99–111.
Eiter, T., Fink, M., Ianni, G., Krennwallner, T., Redl, C., & Schüller, P. (2016). A model building framework for answer set programming with external computations. Theory and Practice of Logic Programming, 16(04), 418–464. doi:10.1017/S1471068415000113.
Eiter, T., Fink, M., Schüller, P., & Weinzierl, A. (2014). Finding explanations of inconsistency in multi-context systems. Artificial Intelligence, 216, 233–274.
Erdem, E., Aker, E., & Patoglu, V. (2012). Answer set programming for collaborative housekeeping robotics: Representation, reasoning, and execution. Intelligent Service Robotics, 5(4), 275–291.
Erdem, E., Gelfond, M., & Leone, N. (2016). Applications of asp. AI Magazine, 37(3), 53–68. AAAI Press.
Erdem, E., Haspalamutgil, K., Patoglu, V., & Uras, T. (2012). Causality-based planning and diagnostic reasoning for cognitive factories. In IEEE Conference on emerging technologies and factory automation
Erdem, E., Patoglu, V., Saribatur, Z. G., Schüller, P., & Uras, T. (2013). Finding optimal plans for multiple teams of robots through a mediator: A logic-based approach. Theory and Practice of Logic Programming, 13(4–5), 831–846.
Felfernig, A., Friedrich, G., & Jannach, D. (2001). Conceptual modeling for configuration of mass-customizable products. Artificial Intelligence in Engineering, 15(2), 165–176.
Felfernig, A., Friedrich, G. E., Jannach, D., & Stumptner, M. (2000). Exploiting structural abstractions for consistency based diagnosis of large configurator knowledge bases. In Proceedings international configuration workshop at ECAI, (pp. 23–28)
Friedrich, G., Ryabokon, A., Falkner, A. A., Haselböck, A., Schenner, G., & Schreiner, H. (2011). (Re)configuration using Answer Set Programming. In Second workshop on logics for component configuration (LoCoCo 2011), (pp. 26–35)
Gebser, M., Kaminski, R., Kaufmann, B., Ostrowski, M., Schaub, T., & Wanko, P. (2016). Theory Solving made easy with Clingo 5. In International conference on logic programming: technical communications. Schloss Dagstuhl–Leibniz-Zentrum für Informatik. doi:10.4230/OASIcs.ICLP.2016.2
Gebser, M., Kaminski, R., Kaufmann, B., Romero, J., & Schaub, T. (2015). Progress in clasp series 3. In Logic programming and nonmonotonic reasoning, (pp. 368–383). Springer.
Gebser, M., Kaminski, R., Kaufmann, B., & Schaub, T. (2012). Answer set solving in practice. Morgan and Claypool Publishers.
Gebser, M., Kaminski, R., König, A., & Schaub, T. (2011). Advances in gringo series 3. In Logic programming and nonmonotonic reasoning, (pp. 345–351). Springer.
Gebser, M., Kaufmann, B., Neumann, A., & Schaub, T. (2007). Clasp: A conflict-driven answer set solver. In Logic programming and nonmonotonic reasoning, (pp. 260–265). Springer.
Gebser, M., Maratea, M., & Ricca, F. (2016). What’s hot in the Answer Set Programming Competition. In AAAI conference on artificial intelligence
Gebser, M., Pührer, J., Schaub, T., & Tompits, H. (2008). A meta-programming technique for debugging answer-set programs. In AAAI, (pp. 448–453).
Gelfond, M., & Kahl, Y. (2014). Knowledge representation, reasoning, and the design of intelligent agents: The answer-set programming approach. Cambridge: Cambridge University Press.
Gelfond, M., & Lifschitz, V. (1988). The stable model semantics for logic programming. In: International conference and symposium on logic programming (ICLP/SLP), (pp. 1070–1080)
Gelfond, M., & Lifschitz, V. (1991). Classical negation in logic programs and deductive databases. New Generation Computing, 9, 365–385.
Gomes, C. P., Kautz, H., Sabharwal, A., & Selman, B. (2008). Satisfiability solvers. Handbook of knowledge. Representation, 3, 89–134.
Günter, A., & Kühn, C. (1999) Knowledge-based configuration-survey and future directions. In German conference on knowledge-based systems, (pp. 47–66). Springer.
Haag, A. (1998). Sales configuration in business processes. IEEE Intelligent Systems and their Applications, 13(4), 78–85.
Hadzic, T., Subbarayan, S., Jensen, R. M., Andersen, H. R., Møller, J., & Hulgaard, H. (2004). Fast backtrack-free product configuration using a precompiled solution space representation. In PETO conference, (pp. 131–138)
Havur, G., Ozbilgin, G., Erdem, E., & Patoglu, V. (2014). Geometric rearrangement of multiple movable objects on cluttered surfaces: A hybrid reasoning approach. In IEEE international conference on robotics and automation (ICRA), (pp. 445–452). IEEE.
Heinrich, M., & Jungst, E. (1991). A resource-based paradigm for the configuring of technical systems from modular components. In IEEE conference on artificial intelligence applications, (pp. 257–264). IEEE.
Hotz, L., Felfernig, A., Günter, A., & Tiihonen, J. (2014). A short history of configuration technologies. Knowledge-based Configuration–From Research to Business Cases (pp. 9–19). Newnes.
Janhunen, T., Liu, G., & Niemelä, I. (2011). Tight integration of non-ground answer set programming and satisfiability modulo theories. Proceedings of GTTV, 11, 1–13.
Jensen, R. M. (2004). CLab: A C++ library for fast backtrack-free interactive product configuration. In Principles and practice of constraint programming–CP 2004, (pp. 816–816). Springer.
Junker, U., & Mailharro, D. (2003). The logic of ilog (j) configurator: Combining constraint programming with a description logic. In Workshop on configuration at IJCAI, (pp. 13–20).
Klein, R. (1991) Model representation and taxonomic reasoning in configuration problem solving. In Fachtagung für Künstliche intelligenz (GWAI-91), (pp. 182–194). Springer.
Klein, R., Buchheit, M., & Nutt, W. (1994). Configuration as model construction: The constructive problem solving approach. In Artificial intelligence in design, (pp. 201–218). Springer.
Küchlin, W., & Sinz, C. (2000). Proving consistency assertions for automotive product data management. Journal of Automated Reasoning, 24(1–2), 145–163.
Kusiak, A., Smith, M. R., & Song, Z. (2007). Planning product configurations based on sales data. IEEE Transactions on Systems, Man, and Cybernetics, Part C, 37(4), 602–609.
Lee, E. A. (2008). Cyber physical systems: Design challenges. In IEEE international symposium on object and component-oriented real-time distributed computing (ISORC), (pp. 363–369)
Lee, J., & Meng, Y. (2013). Answer set programming modulo theories and reasoning about continuous changes. In Proceedings international joint conference on artificial intelligence (IJCAI), (pp. 990–996).
Leone, N., & Ricca, F. (2015). Answer set programming: a tour from the basics to advanced development tools and industrial applications. In Reasoning web international summer school, (pp. 308–326). Springer.
Lifschitz, V. (2008). What is answer set programming? AAAI, 8, 1594–1597.
Lin, F., & Zhao, Y. (2004). ASSAT: Computing answer sets of a logic program by SAT solvers. Artificial Intelligence, 157(1), 115–137.
Mailharro, D. (1998). A classification and constraint-based framework for configuration. Artificial Intelligence for Engineering Design, Analysis and Manufacturing, 12(4), 383–397.
Marcus, S., Stout, J., & McDermott, J. (1987). Vt: An expert elevator designer that uses knowledge-based backtracking. AI magazine, 8(4), 41.
McDermott, J. (1982). R1: A rule-based configurer of computer systems. Artificial Intelligence, 19(1), 39–88.
Mileo, A., & Nickles, M. (2013). Probabilistic inductive answer set programming by model sampling and counting. In International workshop on learning and nonmonotonic reasoning (LNMR), (pp. 5–16).
Mittal, S., & Falkenhainer, B. (1990). Dynamic constraint satisfaction. In Proceedings eighth national conference on artificial intelligence, (pp. 25–32).
Mittal, S., & Frayman, F. (1989). Towards a generic model of configuration tasks. In Proceedings international joint conference on artificial intelligence (IJCAI), (pp. 1395–1401).
Møller, J., Andersen, H. R., & Hulgaard, H. (2001). Product configuration over the internet. In Proceedings of the 6th INFORMS
Myllärniemi, V., Asikainen, T., Männistö, T., & Soininen, T. (2005). Kumbang configurator – a configuration tool for software product families. In Proceedings international joint conference on artificial intelligence (IJCAI), (pp. 51–56).
Najmann, O., & Stein, B. (1992). A theoretical framework for configuration. In International conference on industrial, engineering and other applications of applied intelligent systems, (pp. 441–450). Springer.
Nogueira, M., Balduccini, M., Gelfond, M., Watson, R., & Barry, M. (2001). An a-prolog decision support system for the space shuttle. In International symposium on practical aspects of declarative languages, (pp. 169–183). Springer.
Orsvärn, K., & Axling, T. (1999). The tacton view of configuration tasks and engines. In Workshop on configuration at national conference on artificial intelligence (AAAI)
Ostrowski, M., & Schaub, T. (2012). ASP modulo CSP: The clingcon system. Theory and Practice of Logic Programming, 12(4–5), 485–503.
Pargamin, B. (2002). Vehicle sales configuration: the cluster tree approach. In Configuration workshop at ECAI at ECAI, (pp. 35–40).
Pargamin, B. (2003). Extending cluster tree compilation with non-boolean variables in product configuration: A tractable approach to preference-based configuration. In Proceedings international joint conference on artificial intelligence (IJCAI)
Rajkumar, R. R., Lee, I., Sha, L., & Stankovic, J. (2010). Cyber-physical systems. In Design automation conference (DAC), (pp. 731–736).
Reiter, R. (1987). A theory of diagnosis from first principles. Artificial Intelligence, 32(1), 57–95.
Ricca, F., Grasso, G., Alviano, M., Manna, M., Lio, V., Iiritano, S., et al. (2012). Team-building with answer set programming in the gioia-tauro seaport. Theory and Practice of Logic Programming, 12(03), 361–381.
Russel, S., & Norvig, P. (2009). Artificial Intelligence: A Modern Approach (3rd ed.). Prentice Hall.
Sabin, D., & Weigel, R. (1998). Product configuration frameworks—a survey. IEEE Intelligent Systems, 13(4), 42–49.
Schreiber, A. T., Terpstra, P., Magni, P., & Van Velzen, M. (1994). Analysing and implementing VT using COMMON-KADS. In Proceedings workshop on knowledge acquisition for knowledge-based systems, (pp. 44–1).
Simons, P., Niemelä, I., & Soininen, T. (2002). Extending and implementing the stable model semantics. Artificial Intelligence, 138(1), 181–234.
Sinz, C., Blochinger, W., & Küchlin, W. (2001). PaSAT - Parallel SAT-checking with lemma exchange: Implementation and applications. Electronic Notes in Discrete Mathematics, 9, 205–216.
Sinz, C., Kaiser, A., & Küchlin, W. (2001). Detection of inconsistencies in complex product configuration data using extended propositional SAT-checking. In FLAIRS conference, (pp. 645–649).
Sinz, C., Kaiser, A., & Küchlin, W. (2003). Formal methods for the validation of automotive product configuration data. Artificial Intelligence for Engineering Design, Analysis and Manufacturing, 17(1), 75–97.
Snavely, G. L., & Papalambros, P. Y. (1993). Abstraction as a configuration design methodology. Advances in Design Automation, 1, 1993.
Soininen, T., & Niemelä, I. (1998). Developing a declarative rule language for applications in product configuration. In Practical aspects of declarative languages, (pp. 305–319). Springer.
Soininen, T., Niemelä, I., Tiihonen, J., & Sulonen, R. (2001). Representing configuration knowledge with weight constraint rules. In Proceedings of the AAAI Spring 2001 Symposium on Answer Set Programming (pp. 195–201). AAAI Press.
Soloway, E., Bachant, J., & Jensen, K. (1987). Assessing the maintainability of XCON-in-RIME: Coping with problems of a very large rule base. In Proceedings international conference on artificial intelligence, (pp. 824–829). Morgan Kaufman.
Song, Z., & Kusiak, A. (2009). Optimising product configurations with a data-mining approach. International Journal of Production Research, 47(7), 1733–1751.
Stumptner, M. (1997). An overview of knowledge-based configuration. AI Communications, 10(2), 111–125.
Subbarayan, S. (Ed.) (2004). CLib: configuration benchmarks library. Retrieved May 15, 2017 from https://www.itu.dk/research/cla/externals/clib/
Syrjänen, T. (2006). Debugging inconsistent answer set programs. Proc. NMR, 6, 77–83.
Tiihonen, J., & Anderson, A. (2014). VariSales. Knowledge-based configuration-from research to business cases (pp. 377–388). Newnes.
Tiihonen, J., Heiskala, M., Anderson, A., & Soininen, T. (2013). WeCoTin-A practical logic-based sales configurator. AI Communications, 26(1), 99–131.
Tiihonen, J., Soininen, T., Niemelä, I., & Sulonen, R. (2003). A practical tool for mass-customising configurable products. In Proceedings international conference on engineering design, (pp. 1290–1299).
Tong, C., & Sriram, D. (1992). Artificial Intelligence in Engineering Design, Volume 1: Design Representation and Models of Routine Design. San Diego, CA: Academic Press.
Tseitin, G. S. (1968). On the complexity of proof in prepositional calculus. Zapiski Nauchnykh Seminarov POMI, 8, 234–259.
Tseng, H. E., Chang, C. C., & Chang, S. H. (2005). Applying case-based reasoning for product configuration in mass customization environments. Expert Systems with Applications, 29(4), 913–925.
Walter, R., Felfernig, A. & Küchlin, W. (2016). J Intell Inf Syst. doi:10.1007/s10844-016-0422-7.
Walter, R., & Küchlin, W. (2014). ReMax – A MaxSAT aided Product (Re-)Configurator. In International configuration workshop, (p. 59).
Walter, R., Zengler, C., & Küchlin, W. (2013). Applications of MaxSAT in Automotive Configuration. Configuration Workshop, 1(2), 21. 15th International.
Xie, H., Henderson, P., & Kernahan, M. (2005). Modelling and solving engineering product configuration problems by constraint satisfaction. International Journal of Production Research, 43(20), 4455–4469.
Yu, B., & Skovgaard, H. J. (1998). A configuration tool to increase product competitiveness. IEEE Intelligent Systems, 13(4), 34–41.
Zhang, S., Sridharan, M., & Wyatt, J. L. (2015). Mixed logical inference and probabilistic planning for robots in unreliable worlds. IEEE Transactions on Robotics, 31(3), 699–713.
Author information
Authors and Affiliations
Corresponding author
Additional information
E. Gençay was supported by a TUBITAK-2218 Fellowship for Postdoctoral Researchers and by the Turkish-German University Scientific Research Projects Commission under Grant No. 2015BM0014. P. Schüller has received funding from the European Unions Horizon 2020 research and innovation programme under Grant Agreement No. 678867 and by The Scientific and Technological Research Council of Turkey (TUBITAK) under Grant 114E777.
Rights and permissions
About this article
Cite this article
Gençay, E., Schüller, P. & Erdem, E. Applications of non-monotonic reasoning to automotive product configuration using answer set programming. J Intell Manuf 30, 1407–1422 (2019). https://doi.org/10.1007/s10845-017-1333-3
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10845-017-1333-3