Strategies to Parallelize ILP Systems

  • Nuno A. Fonseca
  • Fernando Silva
  • Rui Camacho
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3625)


It is well known by Inductive Logic Programming (ILP) practioners that ILP systems usually take a long time to find valuable models (theories). The problem is specially critical for large datasets, preventing ILP systems to scale up to larger applications. One approach to reduce the execution time has been the parallelization of ILP systems. In this paper we overview the state-of-the-art on parallel ILP implementations and present work on the evaluation of some major parallelization strategies for ILP. Conclusions about the applicability of each strategy are presented.


Parallelism Scaling-up 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Srinivasan, A., Muggleton, S., King, R.D., Sternberg, M.J.E.: Mutagenesis: Ilp experiments in a non-determinate biological domain. In: Wrobel, S. (ed.) Proceedings of the 4th International Workshop on Inductive Logic Programming. GMD-Studien, vol. 237, pp. 217–232 (1994)Google Scholar
  2. 2.
    Dolsak, B., Bratko, I., Jezernik, A.: Application of machine learning in finite element computation. In: Machine Learning, Data Mining and Knowledge Discovery: Methods and Applications. John Wiley and Sons, Chichester (1997)Google Scholar
  3. 3.
    Muggleton, S., King, R.D., Sternberg, M.J.E.: Predicting protein secondary structure using inductive logic programming. Protein Engineering 5, 647–657 (1992)CrossRefGoogle Scholar
  4. 4.
    Srinivasan, A., King, R.D., Muggleton, S., Sternberg, M.J.E.: Carcinogenesis predictions using ILP. In: Džeroski, S., Lavrač, N. (eds.) ILP 1997. LNCS, vol. 1297, pp. 273–287. Springer, Heidelberg (1997)Google Scholar
  5. 5.
    Tang, L.R., Mooney, R.J., Melville, P.: Scaling up ilp to large examples: Results on link discovery for counter-terrorism. In: Proceedings of the KDD 2003 Workshop on Multi-Relational Data Mining (MRDM 2003), pp. 107–121 (2003)Google Scholar
  6. 6.
    Železný, F., Srinivasan, A., Page, D.: Lattice-search runtime distributions may be heavy-tailed. In: Matwin, S., Sammut, C. (eds.) ILP 2002. LNCS (LNAI), vol. 2583, pp. 333–345. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  7. 7.
    Srinivasan, A.: A study of two probabilistic methods for searching large spaces with ilp. Technical Report PRG-TR-16-00, Oxford University Computing Laboratory (2000)Google Scholar
  8. 8.
    Camacho, R.: Improving the efficiency of ilp systems using an incremental language level search. In: Annual Machine Learning Conference of Belgium and the Netherlands (2002)Google Scholar
  9. 9.
    Srinivasan, A., King, R.D., Bain, M.E.: An empirical study of the use of relevance information in inductive logic programming. JMLR (2003)Google Scholar
  10. 10.
    Fonseca, N., Costa, V.S., Camacho, R., Silva, F.: On avoiding redundancy in Inductive Logic Programming. In: Camacho, R., King, R., Srinivasan, A. (eds.) ILP 2004. LNCS (LNAI), vol. 3194, pp. 132–146. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  11. 11.
    Blockeel, H., Dehaspe, L., Demoen, B., Janssens, G., Ramon, J., Vandecasteele, H.: Improving the efficiency of Inductive Logic Programming through the use of query packs. Journal of Artificial Intelligence Research 16, 135–166 (2002)zbMATHGoogle Scholar
  12. 12.
    Costa, V.S., Srinivasan, A., Camacho, R., Blockeel, H., Van Laer, W.: Query transformations for improving the efficiency of ilp systems. JMLR (2002)Google Scholar
  13. 13.
    De Raedt, L.: A perspective on inductive logic programming. In: The logic programming paradigm - a 25 year perspective, pp. 335–346. Springer, Heidelberg (1999)Google Scholar
  14. 14.
    Page, D.: ILP: Just do it. In: Cussens, J., Frisch, A.M. (eds.) ILP 2000. LNCS (LNAI), vol. 1866, pp. 3–18. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  15. 15.
    Page, D., Srinivasan, A.: Ilp: a short look back and a longer look forward. J. Mach. Learn. Res. 4, 415–430 (2003)CrossRefGoogle Scholar
  16. 16.
    Grama, A., Gupta, A., Karypis, G., Kumar, V.: Introduction to Parallel Computing, 2nd edn. Addison-Wesley, Reading (2003)Google Scholar
  17. 17.
    Fürnkranz, J.: Separate-and-conquer rule learning. Artificial Intelligence Review 13(1), 3–54 (1999)zbMATHCrossRefGoogle Scholar
  18. 18.
    Muggleton, S.: Inverse entailment and Progol. New Generation Computing, Special issue on Inductive Logic Programming 13(3-4), 245–286 (1995)Google Scholar
  19. 19.
    Quinlan, J.R., Cameron-Jones, R.M.: FOIL: A midterm report. In: Brazdil, P.B. (ed.) ECML 1993. LNCS, vol. 667, pp. 3–20. Springer, Heidelberg (1993)Google Scholar
  20. 20.
    Srinivasan, A.: Aleph manual (2003)Google Scholar
  21. 21.
    Ohwada, H., Mizoguchi, F.: Parallel execution for speeding up inductive logic programming systems. In: Arikawa, S., Furukawa, K. (eds.) DS 1999. LNCS (LNAI), vol. 1721, pp. 277–286. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  22. 22.
    Matsui, T., Inuzuka, N., Seki, H., Itoh, H.: Comparison of three parallel implementations of an induction algorithm. In: 8th Int. Parallel Computing Workshop, Singapore, pp. 181–188 (1998)Google Scholar
  23. 23.
    Ohwada, H., Nishiyama, H., Mizoguchi, F.: Concurrent execution of optimal hypothesis search for inverse entailment. In: Cussens, J., Frisch, A.M. (eds.) ILP 2000. LNCS (LNAI), vol. 1866, pp. 165–173. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  24. 24.
    Wielemaker, J.: Native preemptive threads in swi-prolog. In: ICLP, pp. 331–345 (2003)Google Scholar
  25. 25.
    Wang, Y., Skillicorn, D.: Parallel inductive logic for data mining. In: Workshop on Distributed and Parallel Knowledge Discovery, KDD 2000, Boston. ACM Press, New York (2000)Google Scholar
  26. 26.
    Graham, J., Page, C.D., Kamal, A.: Accelerating the drug design process through parallel inductive logic programming data mining. In: Proceeding of the Computational Systems Bioinformatics (CSB 2003). IEEE, Los Alamitos (2003)Google Scholar
  27. 27.
    Dehaspe, L., De Raedt, L.: Parallel inductive logic programming. In: Proceedings of the MLnet Familiarization Workshop on Statistics, Machine Learning and Knowledge Discovery in Databases (1995)Google Scholar
  28. 28.
    Michalski, R.S.: Pattern recognition as rule-guided inductive inference. In: Proceedings of IEEE Transactions on Pattern Analysis and Machine Intelligence, pp. 349–361 (1980)Google Scholar
  29. 29.
    Smith, R.G.: The contract net protocol: High-level communication and control in a distributed problem solver. IEEE Trans. Computers 29(12), 1104–1113 (1980)CrossRefGoogle Scholar
  30. 30.
    Muggleton, S., Firth, J.: Relational rule induction with cprogol4.4: A tutorial introduction. In: Dzeroski, S., Lavrac, N. (eds.) Relational Data Mining, pp. 160–188. Springer, Heidelberg (2001)Google Scholar
  31. 31.
    Pvm:parallel virtual machine,
  32. 32.
    Konstantopoulos, S.K.: A data-parallel version of aleph. In: Proceedings of the Workshop on Parallel and Distributed Computing for Machine Learning, co-located with ECML/PKDD 2003, Dubrovnik, Croatia (September 2003)Google Scholar
  33. 33.
    Gropp, W., Lusk, E., Doss, N., Skjellum, A.: A high-performance, portable implementation of the MPI message passing interface standard. Parallel Computing 22(6), 789–828 (1996)zbMATHCrossRefGoogle Scholar
  34. 34.
    Message Passing Interface Forum. MPI: A message-passing interface standard. Technical Report UT-CS-94-230 (1994)Google Scholar
  35. 35.
    Clare, A., King, R.D.: Data mining the yeast genome in a lazy functional language. In: Dahl, V., Wadler, P. (eds.) PADL 2003. LNCS, vol. 2562, pp. 19–36. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  36. 36.
    Fonseca, N., Silva, F., Camacho, R., Costa, V.S.: Induction with April - A preliminary report. Technical Report DCC-2003-02, DCC-FC & LIACC, Universidade do Porto (2003)Google Scholar
  37. 37.
    Squyres, J.M., Lumsdaine, A.: A Component Architecture for LAM/MPI. In: Dongarra, J., Laforenza, D., Orlando, S. (eds.) EuroPVM/MPI 2003. LNCS, vol. 2840, pp. 379–387. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  38. 38.
    Prati, R.C., Flach, P.: Roccer: an algorithm for rule learning based on roc analysis. In: Nineteenth International Joint Conference on Artificial Intelligence, IJCAI 2005 (2005)Google Scholar
  39. 39.
    Muggleton, S., Feng, C.: Efficient induction in logic programs. In: Muggleton, S. (ed.) Inductive Logic Programming, pp. 281–298. Academic Press, London (1992)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Nuno A. Fonseca
    • 1
  • Fernando Silva
    • 1
  • Rui Camacho
    • 2
  1. 1.DCC-FC & LIACCUniversidade do PortoPortoPortugal
  2. 2.Faculdade de Engenharia & LIACCUniversidade do PortoPortoPortugal

Personalised recommendations