Skip to main content
Log in

Parallel branch-and-bound search in Parlog

  • Published:
International Journal of Parallel Programming Aims and scope Submit manuscript

Abstract

The concurrent logic languages, of which Parlog is one, have been promoted as a new generation of software languages specifically designed for parallel programming. This paper investigates their application to a search problem commonly used as an illustration of artificial intelligence techniques, the 8-puzzle. It notes that programs written in the concurrent logic languages which do not pay attention to the parallelism can fall into two possible traps: either there is little real parallelism in them due to data dependencies, or there is too much parallelism and any practical architecture will be overwhelmed. A solution which controls the parallelism using user-defined priorities is proposed. This solution has the advantage of being architecture-independent.

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

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

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. N. J. Nilsson,Problem Solving Methods in Artificial Intelligence. McGraw Hill (1971).

  2. K. L. Clark and S. Gregory, PARLOG: Parallel Programming in Logic,ACM Trans. on Programming Languages and Systems 8(1):1–49 (1986).

    Google Scholar 

  3. C. Mierowsky, S. aaylor, J. Levy and M. Safra,The Design and Implementation of Flat Concurrent Prolog. Technical Report CS85-09, Department of Applied Mathematics, Weizmann Institute of Science, Israel (1985).

    Google Scholar 

  4. G. A. Ringwood, Parlog-86 and the Dining Logicians,Comm. ACM 31(1):10–25 (1988).

    Google Scholar 

  5. I. Foster and S. Taylor,Strand: New Concepts in Parallel Programming, Prentice-Hall (1990).

  6. M. Codish and E. Shapiro, Compiling OR-parallelism into AND-parallelism,New Generation Computing 5(1):45–61 (1987).

    Google Scholar 

  7. A. D. Burt and G. A. Ringwood,The Binding Conflict Problem in Concurrent Logic, Technical Report, Department of Computing, Imperial College, London (1988).

    Google Scholar 

  8. E. Shapiro, Systolic Programming: A Paradigm for Parallel Processing,Proc. Int'l. Conf. of Fifth Generation Computer Systems, Tokyo, pp. 458–471 (1984).

  9. E. Tick and N. Ichiyoshi, Programming Techniques for Efficiently Exploiting Parallelism in Logic Programming Languages,2nd ACM Symp. on Princ. and Pract. of Parallel Programming. SIGPLAN Notices 25(3):31–39 (1990).

    Google Scholar 

  10. R. A. Kowalski, Algorithm=logic+control.Comm. ACM 22(7):424–436 (1979).

    Google Scholar 

  11. H. E. Bal, Heuristic Search in Parlog using Replicated Worker Style Parallelism,Future Generation Computer Systems 6(4):303–315 (1991).

    Google Scholar 

  12. M. Huntbach,Parlog as a Language for Artificial Intelligence, Technical Report, Parlog Group, Department of Computing, Imperial College, London, UK (1988).

    Google Scholar 

  13. M. Huntbach, Speculative Computation and Priorities in Concurrent Logic Languages,3rd UK Ann. Conf. on Logic Programming, Springer-Verlag Workshops in Computing series, (eds), G. A. Wiggins, C. Mellish and T. Duncan, pp. 23–35 (1991).

  14. K. Ueda and T. Chikayama, Design of the Kernel Language for the Parallel Inference Machine,Computer Journal 33(6):494–500 (1990).

    Google Scholar 

  15. F. W. Burton, Speculative Computation, Parallelism and Functional Programming,IEEE Trans. on Computers C-34(12):1190–1193 (1985).

    Google Scholar 

  16. V. J. Rayward-Smith, G. P. McKeown and F. W. Burton, The General Problem Solving Algorithm and Its Implementation,New Generation Computing 6(1):41–66 (1988).

    Google Scholar 

  17. F. W. Burton and M. M. Huntbach, Virtual Tree Machines,IEEE Trans. Computers,C-33(3):278–281 (1984).

    Google Scholar 

  18. M. M. Huntbach and F. W. Burton, Alpha-beta Search on Virtual Tree Machines,Information Sciences 44:3–17 (1988).

    Google Scholar 

  19. P. Szeredi, Solving optimization problems in the Aurora Or-parallel Prolog System,ICLP'91 Pre-Conference Workshop on Parallel Execution of Logic Programs, (eds.), A. Beaumont and G. Gupta,Springer LNCS 569:39–53 (1991).

  20. V. A. Saletore,Machine Independent Parallel Execution of Speculative Computations, Ph.D. Thesis, University of Illinois at Urbana-Champaign (1990).

  21. E. Shapiro and A. Takeuchi, Object Oriented Programming in Concurrent Prolog,New Generation Computing 1(1):25–48 (1983).

    Google Scholar 

  22. M. Huntbach,Combinatorial Search in Parlog using Speculative Computation, Technical Report, Parlog Group, Department of Computing, Imperial College, London, UK (1989).

    Google Scholar 

  23. T. A. Marsland and M. Campbell, Parallel Search of Strongly Ordered Game Trees.Computing Surveys 14(4):533–551 (1982).

    Google Scholar 

  24. T-H. Lai and S. Sahni, Anomalies in Parallel Branch-and-Bound Algorithms,Comm. ACM 27(6):594–602 (1984).

    Google Scholar 

  25. D. L. McBurney and M. R. Sleep, Transputer-Based Experiments with the ZAPP Architecture,Parallel Architectures and Languages Europe '87 (PARLE 87), Springer LNCS 258:242–259 (1987).

    Google Scholar 

  26. W. G. Wilson, Concurrent Alpha-beta, A Study in Concurrent Logic Programming,IEEE Symp. on Logic Programming, San Francisco, pp. 360–367 (1987).

  27. M. Huntbach, Meta-interpreters and Partial Evaluation in Parlog,Formal Aspects of Computing 1:193–211 (1989).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Huntbach, M. Parallel branch-and-bound search in Parlog. Int J Parallel Prog 20, 299–314 (1991). https://doi.org/10.1007/BF01408020

Download citation

  • Received:

  • Revised:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01408020

Key Words

Navigation