Skip to main content
Log in

Logic programming for combinatorial problems

  • Published:
Artificial Intelligence Review Aims and scope Submit manuscript

Abstract

Combinatorial problems appear in many areas in science, engineering, biomedicine, business, and operations research. This article presents a new intelligent computing approach for solving combinatorial problems, involving permutations and combinations, by incorporating logic programming. An overview of applied combinatorial problems in various domains is given. Such computationally hard and popular combinatorial problems as the traveling salesman problem are discussed to illustrate the usefulness of the logic programming approach. Detailed discussions of implementation of combinatorial problems with time complexity analyses are presented in Prolog, the standard language of logic programming. These programs can be easily integrated into other systems to implement logic programming in combinatorics.

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.

Institutional subscriptions

Similar content being viewed by others

References

  • Akl SG (1989) The design and analysis of parallel algorithms, Chap. 6. Prentice-Hall, Englewood Cliffs

    Google Scholar 

  • Balas E, Yu CS (1986) Finding a maximum clique in an arbitrary graph. SIAM J Comput 15(4): 1054–1068

    Article  MATH  MathSciNet  Google Scholar 

  • Bhatia D, Haralambides J (2000) Resource requirements and layouts for field programmable interconnection chips. IEEE Trans Very Large Scale Integr (VLSI) Syst 8(3): 346–355

    Article  Google Scholar 

  • Borujeni SE (2000) Speech encryption based on fast Fourier transform permutation. In: Proceedings of the 7th IEEE international conference on electronics, circuits and systems (ICECS 2000). IEEE, Jounieh, pp 290–293

  • Bratko I (2001) Prolog programming for artificial intelligence, vol 3. Addison-Wesley, Wokingham

    Google Scholar 

  • Chiang DY, Brown PO, Eisen MB (2001) Visualizing associations between genome sequences and gene expression data using genome-mean expression profiles. Bioinformatics 17(S1): 49–55

    Google Scholar 

  • Combinatorial pattern matching. In: Proceedings of annual symposiums. Lecture Notes in Computer Science. (1992–2009). Springer, Berlin

  • Doerge RW, Churchill GA (1996) Permutation tests for multiple loci affecting a quantitative character. Genetics 142: 285–294

    Google Scholar 

  • Garey MR, Johnson DS (1979) Computers and intractability: a guide to the theory of NP-completeness. W. H. Freeman, San Francisco

    MATH  Google Scholar 

  • Horaud R, Skordas T (1989) Stereo correspondence through feature grouping and maximal cliques. IEEE Trans Pattern Anal Mach Intell 11(11): 1168–1180

    Article  Google Scholar 

  • Jung S, Moon B-R (2002) Toward minimal restriction of genetic encoding and crossovers for the two-dimensional Euclidean TSP. IEEE Trans Evol Comput 6(6): 557–565

    Article  Google Scholar 

  • Kapralski A (1993) New methods for generation of permutations, combinations, and other combinatorial objects in parallel. J Parallel Distrib Comput 17(4): 315–326

    Article  MATH  MathSciNet  Google Scholar 

  • Kaufman C, Perlman R, Speciner M (2003) Network security: private communication in a public world, vol 2. Prentice Hall, Upper Saddle River

    Google Scholar 

  • Kumar Verma A, Tamhankar MT (1997) Reliability-based optimal task-allocation in distributed-database management systems. IEEE Trans Reliab 46(4): 452–459

    Article  Google Scholar 

  • Lecky JE, Murphy OJ, Absher RG (1989) Graph theoretic algorithms for the PLA folding problem. IEEE Trans Comput-Aided Des 8(9): 1014–1021

    Article  Google Scholar 

  • Liu CL (1968) Introduction to combinatorial mathematics, computer science series, Chap. 1. McGraw-Hill, New York

    Google Scholar 

  • Massini A (2003) All-to-all personalized communication on multistage interconnection networks. Discret Appl Math 128(2–3): 435–446

    Article  MATH  MathSciNet  Google Scholar 

  • Matsumoto N,Yashiki S (1999) Simple approach to TSP by permutation of six cities and deletion of crossover. In: IEEE pacific rim conference on communications, computers and signal processing. IEEE, Victoria, pp 377–380

  • Muggleton S (1999) Scientific knowledge discovery using inductive logic programming. Commun ACM 42(11): 42–46

    Article  Google Scholar 

  • Munakata T (1992) Notes on implementing sets in prolog. Commun ACM 35(3): 112–120

    Article  MathSciNet  Google Scholar 

  • Munakata T (1998) Notes on implementing fuzzy sets in prolog. Fuzzy Sets Syst 98(3): 311–317

    Article  Google Scholar 

  • Munakata T (1998) Fundamentals of the new artificial intelligence: beyond traditional paradigms. Springer, New York

    MATH  Google Scholar 

  • Mycielski J (ed) et al (1997) Structure in logic and computer science. Springer, Berlin

    Google Scholar 

  • Nandi S, Kar BK, Chaudhuri PP (1994) Theory and applications of cellular automata in cryptography. IEEE Trans Comp 43(12): 1346–1357

    Article  Google Scholar 

  • Ogawa H (1986) Labeled point pattern matching by delaunay triangulation and maximal cliques. Pattern Recognit 19(1): 35–40

    Article  Google Scholar 

  • Roberts FS (1984) Applied combinatorics. Prentice-Hall, Englewood Cliffs

    MATH  Google Scholar 

  • Siepel AC (2003) An algorithm to enumerate sorting reversals for signed permutations. J Comput Biol 10(3–4): 575–597

    Article  Google Scholar 

  • Stallings W (2003) Cryptography and network security: principles and practice. Prentice Hall, Upper Saddle River

    Google Scholar 

  • Takefuji Y (1992) Neural network parallel computing. Kluwer, Boston

    MATH  Google Scholar 

  • Tanenbaum AS (1999) Structured computer organization. 4. Prentice Hall, Upper Saddle River

    Google Scholar 

  • Valdes-Perez RE (1999) Discovery techniques for scientific apps. Commun ACM 42(11): 37–41

    Article  Google Scholar 

  • Van Le T (1993) Techniques of prolog programming with implementation of logical negation and quantified goals, 38. Wiley, New York

    Google Scholar 

  • WASP (Working group on Answer Set Programming) (2005) WASP-Showcase: knowledge-based planning. http://www.kr.tuwien.ac.at/projects/WASP/planning.html

  • Yang Y, Wang J (2004) Routing permutations on optical baseline networks with node-disjoint paths. In: Tzeng FN (ed) Proceedings of 10th international conference on parallel and distributed systems (ICPADS 2004). IEEE, Newport Beach, pp 65–72

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Toshinori Munakata.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Munakata, T., Barták, R. Logic programming for combinatorial problems. Artif Intell Rev 33, 135–150 (2010). https://doi.org/10.1007/s10462-009-9150-5

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10462-009-9150-5

Keywords

Navigation