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.
Similar content being viewed by others
References
Allen, J.F. (1983). Maintaining knowledge about temporal intervals. Communication of the ACM, 26 (11), 832–843.
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 .
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.
Barrett, C., Deters, M., Moura, L., Oliveras, A., Stump, A. (2013). 6 years of SMT-COMP. Journal of Automated Reasoning, 50, 243–277.
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.
Barrett, C.W., Sebastiani, R., Seshia, S.A., Tinelli, C. (2009). Satisfiability modulo theories. In Handbook of satisfiability (pp. 825–885). IOS Press.
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.
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.
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.
Cimatti, A., Micheli, A., Roveri, M. (2012). Solving temporal problems using smt: strong controllability. In CP (pp. 248–264).
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.
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.
Davis, M., Logemann, G., Loveland, D.W. (1962). A machine program for theorem-proving. Communications of ACM, 5 (7), 394–397.
Dechter, R., Meiri, I., Pearl, J. (1991). Temporal constraint networks. Artificial Intelligence, 49 (1-3), 61–95.
Dutertre, B., & de Moura, L. (2006). The Yices SMT solver. Tool paper at, http://yices.csl.sri.com/tool-paper.pdf.
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.
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.
Godefroid, P., Levin, M.Y., Molnar, D.A. (2008). Automated whitebox fuzz testing. In Network and distributed system security symposium - NDSS. The Internet Society.
Hunsberger, L. (2010). A fast incremental algorithm for managing the execution of dynamically controllable temporal networks. In TIME.
Keßler, C.W. (1996). Parallel fourier-motzkin elimination. In Euro-par (Vol. II, pp. 66–71).
Kleene, S. (1967). Mathematical logic. Wiley.
Loos, R., & Weispfenning, V. (1993). Applying linear quantifier elimination. Computer Journal, 36 (5), 450–462.
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.
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.
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.
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.
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.
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.
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.
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.
Ranise, S., & Loria, T.C. (2006). The smt-lib standard: Version 1.2. Tech. rep.
Schrijver, A. (1998). Theory of linear and integer programming. Wiley.
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.
Tsamardinos, I., & Pollack, M.E. (2003). Efficient solution techniques for disjunctive temporal reasoning problems. Artificial Intelligence, 151 (1–2), 43–89.
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.
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.
Wilde, D.K. (1993). A library for doing polyhedral operations. Tech. rep.
Author information
Authors and Affiliations
Corresponding author
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
About this article
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
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10601-014-9167-5