Skip to main content
Log in

Solving strong controllability of temporal problems with uncertainty using SMT

  • Published:
Constraints Aims and scope Submit manuscript

Abstract

Temporal Problems (TPs) represent constraints over the timing of activities, as arising in many applications such as scheduling and temporal planning. A TP with uncertainty (TPU) is characterized by activities with uncontrollable duration. Different classes of TPU are possible, depending on the Boolean structure of the constraints: we have simple (STPU), constraint satisfaction (TCSPU), and disjunctive (DTPU) temporal problems with uncertainty. In this paper we tackle the problem of strong controllability, i.e. finding an assignment to all the controllable time points, such that the constraints are fulfilled under any possible assignment of uncontrollable time points. Our approach casts the problem in the framework of Satisfiability Modulo Theory (SMT), where the uncertainty of durations can be modeled by means of universal quantifiers. The use of quantifier elimination techniques leads to quantifier-free encodings, which are in turn solved with efficient SMT solvers. We obtain the first practical and comprehensive solution for strong controllability. We provide a family of efficient encodings, that are able to exploit the specific structure of the problem. The approach has been implemented, and experimentally evaluated over a large set of benchmarks. The results clearly demonstrate that the proposed approach is feasible, and outperforms the best state-of-the-art competitors, when available.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Allen, J.F. (1983). Maintaining knowledge about temporal intervals. Communication of the ACM, 26 (11), 832–843.

    Article  MATH  Google Scholar 

  2. Armando, A., Castellini, C., Giunchiglia, E. (1999). SAT-based procedures for temporal reasoning. In S. Biundo, & M. Fox (Eds.) European conference on planning - ECP, LNCS,1809 (pp. 97–108). Springer .

  3. Bagnara, R., Hill, P.M., Zaffanella, E. (2008). The parma polyhedra library: toward a complete set of numerical abstractions for the analysis and verification of hardware and software systems. Science of Computer Programming, 72 (1–2), 3–21.

    Article  MathSciNet  Google Scholar 

  4. Barrett, C., Deters, M., Moura, L., Oliveras, A., Stump, A. (2013). 6 years of SMT-COMP. Journal of Automated Reasoning, 50, 243–277.

    Article  Google Scholar 

  5. Barrett, C., Stump, A., Tinelli, C., Boehme, S., Cok, D., Deharbe, D., Dutertre, B., Fontaine, P., Ganesh, V., Griggio, A., Grundy, J., Jackson, P., Oliveras, A., Krsti, S., Moskal, M., Moura, L.D., Sebastiani, R., Cok, T.D., Hoenicke, J. (2010). The smt-lib standard: Version 2.0. tech. rep.

  6. Barrett, C.W., Sebastiani, R., Seshia, S.A., Tinelli, C. (2009). Satisfiability modulo theories. In Handbook of satisfiability (pp. 825–885). IOS Press.

  7. Bruttomesso, R., Cimatti, A., Franzén, A., Griggio, A., Sebastiani, R. (2008). The MathSAT 4 SMT solver. In A. Gupta & S. Malik (Eds.) Computer aided verification - CAV, LNCS (Vol. 5123, pp. 299–303). Springer.

  8. Bruttomesso, R., Pek, E., Sharygina, N., Tsitovich, A. (2010). The openSMT solver. In J. Esparza & R. Majumdar (Eds.) Tools and algorithms for the construction and analysis of systems - TACAS, LNCS (Vol. 6015, pp. 150–153). Springer.

  9. Cimatti, A., Griggio, A., Schaafsma, B.J., Sebastiani, R. (2013). The mathSAT5 SMT solver. In Tools and algorithms for the construction and analysis of systems - TACAS.

  10. Cimatti, A., Micheli, A., Roveri, M. (2012). Solving temporal problems using smt: strong controllability. In CP (pp. 248–264).

  11. Cimatti, A., Micheli, A., Roveri, M. (2012). Solving temporal problems using SMT: weak controllability. In J. Hoffmann & B. Selman (Eds.), American association for artificial intelligence - AAAI: AAAI Press.

  12. Cotton, S., & Maler, O. (2006). Fast and flexible difference constraint propagation for dpll(t). In A. Biere & C. P. Gomes (Eds.), Theory and applications of satisfiability testing - SAT, LNCS (Vol .4121 pp. 170–183). Springer.

  13. Davis, M., Logemann, G., Loveland, D.W. (1962). A machine program for theorem-proving. Communications of ACM, 5 (7), 394–397.

    Article  MATH  MathSciNet  Google Scholar 

  14. Dechter, R., Meiri, I., Pearl, J. (1991). Temporal constraint networks. Artificial Intelligence, 49 (1-3), 61–95.

    Article  MATH  MathSciNet  Google Scholar 

  15. Dutertre, B., & de Moura, L. (2006). The Yices SMT solver. Tool paper at, http://yices.csl.sri.com/tool-paper.pdf.

  16. Dutertre, B., & de Moura, L.M. (2006). A fast linear-arithmetic solver for DPLL(T). In T. Ball & R. B. Jones (Eds.), Computer aided verification - CAV, LNCS (Vol.4144, pp. 81–94). Springer.

  17. Franzén, A., Cimatti, A., Nadel, A., Sebastiani, R., Shalev, J. (2010). Applying SMT in symbolic execution of microcode. In R. Bloem & R. Sharygina (Eds.), Formal methods in computer-aided design - FMCAD, (pp. 121–128). IEEE.

  18. Godefroid, P., Levin, M.Y., Molnar, D.A. (2008). Automated whitebox fuzz testing. In Network and distributed system security symposium - NDSS. The Internet Society.

  19. Hunsberger, L. (2010). A fast incremental algorithm for managing the execution of dynamically controllable temporal networks. In TIME.

  20. Keßler, C.W. (1996). Parallel fourier-motzkin elimination. In Euro-par (Vol. II, pp. 66–71).

  21. Kleene, S. (1967). Mathematical logic. Wiley.

  22. Loos, R., & Weispfenning, V. (1993). Applying linear quantifier elimination. Computer Journal, 36 (5), 450–462.

    Article  MATH  MathSciNet  Google Scholar 

  23. Monniaux, D. (2008). A quantifier elimination algorithm for linear real arithmetic. In I. Cervesato, H. Veith, A. Voronkov (Eds.), Logic for programming, artificial intelligence, and reasoning - LPAR, LNCS (Vol.5330 pp. 243–257). Springer.

  24. Morris, P.H., Muscettola, N., Vidal, T. (2001). Dynamic control of plans with temporal uncertainty. In B. Nebel (Ed.), International joint conference on artificial intelligence - IJCAI (pp. 494–502): Morgan Kaufmann.

  25. Moskewicz, M.W., Madigan, C.F., Zhao, Y., Zhang, L., Malik, S. (2001). Chaff: Engineering an efficient SAT solver. In Design automation conference - DAC (pp. 530–535). New York: ACM Press.

    Google Scholar 

  26. de Moura, L.M., & Bjørner, N. (2008). Z3: an afficient SMT solver. In C. R. Ramakrishnan & J. Rehof (Eds.), Tools and algorithms for the construction and analysis of systems - TACAS, LNCS (Vol. 4963, pp. 337–340). Springer.

  27. Muscettola, N., Nayak, P.P., Pell, B., Williams, B.C. (1998). Remote agent: to boldly go where no ai system has gone before. Artificial Intelligence, 103 (1-2), 5–47.

    Article  MATH  Google Scholar 

  28. Niemelä, I. (2009). Integrating answer set programming and satisfiability modulo theories. In E. Erdem, F. Lin, T. Schaub (Eds.), Logic programming and nonmonotonic reasoning, 10th international conference - LPNMR, LNCS (Vol. 5753, p. 3). Springer.

  29. Peintner, B., Venable, K.B., Yorke-Smith, N. (2007). Strong controllability of disjunctive temporal problems with uncertainty. In C. Bessiere (Ed.), Principles and practice of constraint programming - CP, LNCS (Vol. 4741, pp. 856–863). Springer.

  30. Planken, L, de Weerdt, M., van der Krogt, R. (2012). Computing all-pairs shortest paths by leveraging low treewidth. Journal of Artificial Intelligence Research (JAIR), 43, 353–388.

    MATH  MathSciNet  Google Scholar 

  31. Ranise, S., & Loria, T.C. (2006). The smt-lib standard: Version 1.2. Tech. rep.

  32. Schrijver, A. (1998). Theory of linear and integer programming. Wiley.

  33. de la Tour, T. (1990). Minimizing the number of clauses by renaming. In M. Stickel (Ed.), Conference on automated deduction - CADE, LNCS (Vol. 449, pp. 558–572). Springer.

  34. Tsamardinos, I., & Pollack, M.E. (2003). Efficient solution techniques for disjunctive temporal reasoning problems. Artificial Intelligence, 151 (1–2), 43–89.

    Article  MATH  MathSciNet  Google Scholar 

  35. Venable, K.B., Volpato, M., Peintner, B., Yorke-Smith, N. (2010). Weak and dynamic controllability of temporal problems with disjunctions and uncertainty. In Workshop on constraint satisfaction techniques for planning & scheduling.

  36. Vidal, T., & Fargier, H. (1999). Handling contingency in temporal constraint networks: from consistency to controllabilities. Journal of Experimental Theoretical Artificial Intelligence, 11 (1), 23–45.

    Article  MATH  Google Scholar 

  37. Wilde, D.K. (1993). A library for doing polyhedral operations. Tech. rep.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Andrea Micheli.

Additional information

This is an extended version of the paper [10] presented at the 18th International Conference on Principles and Practice of Constraint Programming (CP 2012) in Quebec City, Canada.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Cimatti, A., Micheli, A. & Roveri, M. Solving strong controllability of temporal problems with uncertainty using SMT. Constraints 20, 1–29 (2015). https://doi.org/10.1007/s10601-014-9167-5

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10601-014-9167-5

Keywords

Navigation