Combining Stochastic Constraint Optimization and Probabilistic Programming

From Knowledge Compilation to Constraint Solving
  • Anna L. D. Latour
  • Behrouz Babaki
  • Anton Dries
  • Angelika Kimmig
  • Guy Van den Broeck
  • Siegfried Nijssen
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10416)


We show that a number of problems in Artificial Intelligence can be seen as Stochastic Constraint Optimization Problems (SCOPs): problems that have both a stochastic and a constraint optimization component. We argue that these problems can be modeled in a new language, SC-ProbLog, that combines a generic Probabilistic Logic Programming (PLP) language, ProbLog, with stochastic constraint optimization. We propose a toolchain for effectively solving these SC-ProbLog programs, which consists of two stages. In the first stage, decision diagrams are compiled for the underlying distributions. These diagrams are converted into models that are solved using Mixed Integer Programming or Constraint Programming solvers in the second stage. We show that, to yield linear constraints, decision diagrams need to be compiled in a specific form. We introduce a new method for compiling small Sentential Decision Diagrams in this form. We evaluate the effectiveness of several variations of this toolchain on test cases in viral marketing and bioinformatics.



We thank Luc De Raedt for his support, for his advice and for the numerous other ways in which he contributed to this work. This research was supported by the Netherlands Organisation for Scientific Research (NWO) and NSF grant #IIS-1657613.


  1. 1.
    Babaki, B., Guns, T., De Raedt, L.: Stochastic constraint programming with and-or branch-and-bound. In: Proceedings of the Twenty-Sixth International Joint Conference on Artificial Intelligence (2017, to appear). doi: 10.24963/ijcai.2017/76
  2. 2.
    Babaki, B., Guns, T., Nijssen, S., De Raedt, L.: Constraint-based querying for Bayesian network exploration. In: Fromont, E., De Bie, T., van Leeuwen, M. (eds.) IDA 2015. LNCS, vol. 9385, pp. 13–24. Springer, Cham (2015). doi: 10.1007/978-3-319-24465-5_2 CrossRefGoogle Scholar
  3. 3.
    Ben-Ari, M.: Mathematical Logic for Computer Science, 3rd edn. Springer Publishing Company, Incorported, Heidelberg (2012). doi: 10.1007/978-1-4471-4129-7 CrossRefzbMATHGoogle Scholar
  4. 4.
    Bistarelli, S., Rossi, F.: Semiring-based soft constraints. In: Degano, P., De Nicola, R., Meseguer, J. (eds.) Concurrency, Graphs and Models. LNCS, vol. 5065, pp. 155–173. Springer, Heidelberg (2008). doi: 10.1007/978-3-540-68679-8_11 CrossRefGoogle Scholar
  5. 5.
    Bollig, B., Wegener, I.: Improving the variable ordering of OBDDs is NP-complete. IEEE Trans. Comput. 45(9), 993–1002 (1996). doi: 10.1109/12.537122 CrossRefzbMATHGoogle Scholar
  6. 6.
    Bova, S.: SDDs are exponentially more succinct than OBDDs. In: Proceedings of the Thirtieth AAAI Conference on Artificial Intelligence, AAAI 2016, pp. 929–935. AAAI Press (2016)Google Scholar
  7. 7.
    Bryant, R.E.: Graph-based algorithms for Boolean function manipulation. IEEE Trans. Comput. 35(8), 677–691 (1986). doi: 10.1109/TC.1986.1676819 CrossRefzbMATHGoogle Scholar
  8. 8.
    Charnes, A., Cooper, W.W.: Chance-constrainted programming. Manag. Sci. 6, 73–79 (1959)CrossRefzbMATHGoogle Scholar
  9. 9.
    Chavira, M., Darwiche, A.: On probabilistic inference by weighted model counting. Artif. Intell. 172(6–7), 772–799 (2008). doi: 10.1016/j.artint.2007.11.002 MathSciNetCrossRefzbMATHGoogle Scholar
  10. 10.
    Choi, A., Darwiche, A.: Dynamic minimization of sentential decision diagrams. In: Proceedings of the Twenty-Seventh AAAI Conference on Artificial Intelligence, AAAI 2013, pp. 187–194. AAAI Press (2013)Google Scholar
  11. 11.
    Darwiche, A.: On the tractable counting of theory models and its application to truth maintenance and belief revision. J. Appl. Non-Class. Log. 11(1–2), 11–34 (2001). doi: 10.3166/jancl.11.11-34 MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Darwiche, A.: SDD: a new canonical representation of propositional knowledge bases. In: Proceedings of the Twenty-Second International Joint Conference on Artificial Intelligence, IJCAI 2011, vol. 2, pp. 819–826. AAAI Press (2011). doi: 10.5591/978-1-57735-516-8/IJCAI11-143
  13. 13.
    De Raedt, L., Kersting, K., Kimmig, A., Revoredo, K., Toivonen, H.: Compressing probabilistic Prolog programs. Mach. Learn. 70(2), 151–168 (2008). doi: 10.1007/s10994-007-5030-x CrossRefzbMATHGoogle Scholar
  14. 14.
    De Raedt, L., Kimmig, A., Toivonen, H.: ProbLog: a probabilistic Prolog and its application in link discovery. In: Proceedings of the 20th International Joint Conference on Artifical Intelligence, IJCAI 2007, pp. 2468–2473. Morgan Kaufmann Publishers Inc., San Francisco (2007)Google Scholar
  15. 15.
    Fierens, D., Van den Broeck, G., Renkens, J., Shterionov, D., Gutmann, B., Thon, I., Janssens, G., De Raedt, L.: Inference and learning in probabilistic logic programs using weighted Boolean formulas. Theory Pract. Log. Program. 15(03), 358–401 (2015). doi: 10.1017/S1471068414000076 MathSciNetCrossRefGoogle Scholar
  16. 16.
    Kempe, D., Kleinberg, J., Tardos, É.: Maximizing the spread of influence through a social network. In: Proceedings of the Ninth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, KDD 2003, pp. 137–146. ACM, New York (2003). doi: 10.1145/956750.956769
  17. 17.
    Lombardi, M., Milano, M.: Allocation and scheduling of conditional task graphs. Artif. Intell. 174(7–8), 500–529 (2010). doi: 10.1016/j.artint.2010.02.004 MathSciNetCrossRefzbMATHGoogle Scholar
  18. 18.
    Mateescu, R., Dechter, R.: Mixed deterministic and probabilistic networks. Ann. Math. Artif. Intell. 54(1–3), 3–51 (2008). doi: 10.1007/s10472-009-9132-y MathSciNetCrossRefzbMATHGoogle Scholar
  19. 19.
    McKinnon, K.I.M., Williams, H.P.: Constructing integer programming models by the predicate calculus. Ann. Oper. Res. 21(1), 227–245 (1989). doi: 10.1007/BF02022101 CrossRefzbMATHGoogle Scholar
  20. 20.
    Newman, M.E.J.: The structure of scientific collaboration networks. Proc. Natl. Acad. Sci. 98(2), 404–409 (2001). doi: 10.1073/pnas.021544898 MathSciNetCrossRefzbMATHGoogle Scholar
  21. 21.
    Ourfali, O., Shlomi, T., Ideker, T., Ruppin, E., Sharan, R.: SPINE: a framework for signaling-regulatory pathway inference from cause-effect experiments. Bioinformatics 23(13), i359–i366 (2007). doi: 10.1093/bioinformatics/btm170 CrossRefGoogle Scholar
  22. 22.
    Pipatsrisawat, K., Darwiche, A.: New compilation languages based on structured decomposability. In: Proceedings of the 23rd National Conference on Artificial Intelligence, AAAI 2008, vol. 1, pp. 517–522. AAAI Press (2008)Google Scholar
  23. 23.
    Riedel, S.: Improving the accuracy and efficiency of MAP inference for Markov logic. In: Proceedings of the 24th Conference in Uncertainty in Artificial Intelligence, UAI 2008, Helsinki, Finland, 9–12 July 2008, pp. 468–475 (2008)Google Scholar
  24. 24.
    Roth, D.: On the hardness of approximate reasoning. Artif. Intell. 82(1–2), 273–302 (1996). doi: 10.1016/0004-3702(94)00092-1 MathSciNetCrossRefGoogle Scholar
  25. 25.
    Tarim, S.A., Hnich, B., Prestwich, S.D., Rossi, R.: Finding reliable solutions: event-driven probabilistic constraint programming. Ann. OR 171(1), 77–99 (2009). doi: 10.1007/s10479-008-0382-6 MathSciNetCrossRefzbMATHGoogle Scholar
  26. 26.
    Van den Broeck, G., Thon, I., van Otterlo, M., De Raedt, L.: DTPROBLOG: a decision-theoretic probabilistic Prolog. In: Proceedings of the Twenty-Fourth AAAI Conference on Artificial Intelligence, AAAI 2010, pp. 1217–1222. AAAI Press (2010)Google Scholar
  27. 27.
    Walsh, T.: Stochastic constraint programming. In: Proceedings of the 15th European Conference on Artificial Intelligence, ECAI 2002, Lyon, France, July 2002, pp. 111–115 (2002)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Anna L. D. Latour
    • 1
  • Behrouz Babaki
    • 2
  • Anton Dries
    • 2
  • Angelika Kimmig
    • 2
  • Guy Van den Broeck
    • 3
  • Siegfried Nijssen
    • 4
  1. 1.LIACSLeiden UniversityLeidenThe Netherlands
  2. 2.Department of Computer ScienceKU LeuvenLeuvenBelgium
  3. 3.Computer Science DepartmentUCLALos AngelesUSA
  4. 4.ICTEAMUniversité Catholique de LouvainLouvain-la-NeuveBelgium

Personalised recommendations