Scalable Parallel Interval Propagation for Sparse Constraint Satisfaction Problems

  • Evgueni Petrov
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7162)


Multi-core processors have been broadly available to the public in the last five years. Parallelism has become a common design feature for computational intensive algorithms. In this paper we present a parallel implementation of an algorithm called interval constraint propagation for solution of constraint satisfaction problems over real numbers. Unlike existing implementations of this algorithm, our implementation scales well to many CPU cores with shared memory for sparse constraint satisfaction problems. We present scalability data for a quad-core processor on a number of benchmarks for non-linear constraint solvers.


Shared Memory Parallel Implementation Constraint Satisfaction Problem Constraint Propagation Language Extension 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    van Beek, P., Walsh, T.: Principles of Constraint Programming and Constraint Processing: A Review. AI Magazine 25(4) (2004)Google Scholar
  2. 2.
    Rolf, C.C., Kuchcinski, K.: Parallel Consistency in Constraint Programming. In: Proc. Int. Conf. on Parallel and Distributed Processing Techniques and Applications (PDPTA), pp. 638–644. CSREA Press (2009)Google Scholar
  3. 3.
  4. 4.
    The Open Group and IEEE. POSIX Threads // IEEE Standard 1003.1. – The Open Group and IEEE (2004)Google Scholar
  5. 5.
    Richter, J., Nasarre, C.: Windows (R) via C/C++, 5th edn. Microsoft Press (2007) ISBN 9780735624245Google Scholar
  6. 6.
    Reinders, J.: Intel Threading Building Blocks, p. 336. O’Reilly Print (2007) ISBN 9780596514808Google Scholar
  7. 7.
    The OpenMP API specification for parallel programming,
  8. 8.
    Blumofe, R.D., Joerg, C.F., Kuszmaul, B.C., Leiserson, C.E., Randall, K.H., Zhou, Y.: Cilk: An Efficient Multithreaded Runtime System. In: Proc. 5th ACM SIGPLAN Symp. on Principles and Practice of Parallel Programming (PPoPP), pp. 207–216 (1995)Google Scholar
  9. 9.
    Davis, E.: Constraint propagation with interval labels. J. Artificial Intelligence 32(3) (1987)Google Scholar
  10. 10.
    Granvilliers, L., Hains, G.: A conservative scheme for parallel interval narrowing. J. Inf. Process. Lett. 74(3-4), 141–146 (2000)MathSciNetCrossRefGoogle Scholar
  11. 11.
    Beelitz, T., Bischof, C.H., Lang, B., Althoff, K.S.: Result-Verifying Solution of Nonlinear Systems in the Analysis of Chemical Processes. In: Alt, R., Frommer, A., Kearfott, R.B., Luther, W. (eds.) Dagstuhl Seminar 2003. LNCS, vol. 2991, pp. 198–205. Springer, Heidelberg (2004) ISBN 3540212604CrossRefGoogle Scholar
  12. 12.
    Kasif, S.: On the parallel complexity of discrete relaxation in constraint satisfaction networks. J. Artif. Intel. 45(3), 99–118 (1990)MathSciNetGoogle Scholar
  13. 13.
    Bordeaux, L., Hamadi, Y., Samulowitz, H.: Experiments with Massively Parallel Constraint Solving. In: Proc. Int. Joint Conf. on Artif. Intel., pp. 443–448 (2009)Google Scholar
  14. 14.
    Kalinnik, N., Schubert, T., Ábrahám, E., Wimmer, R., Becker, B.: Picoso - A Parallel Interval Constraint Solver. In: Proc. Int. Conf. on Parallel and Distributed Processing Techniques and Applications (PDPTA), pp. 473–479. CSREA Press (2009)Google Scholar
  15. 15.
    Rohn, J., Kreinovich, V.: Computing exact componentwise bounds on solutions of linear systems with interval data is NP-hard. SIAM J. Matr. Anal. Appl. 16, 415–420 (1995)MathSciNetzbMATHCrossRefGoogle Scholar
  16. 16.
    Cann, D.: Retire Fortran?: a debate rekindled. Communications of the ACM 35(8) (1992)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Evgueni Petrov
    • 1
  1. 1.IntelRussia

Personalised recommendations