Skip to main content
Log in

Extending FuzzyCLIPS for parallelizing data-dependent fuzzy expert systems

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

FuzzyCLIPS is a rule-based programming language and it is very suitable for developing fuzzy expert systems. However, it usually requires much longer execution time than algorithmic languages such as C and Java. To address this problem, we propose a parallel version of FuzzyCLIPS to parallelize the execution of a fuzzy expert system with data dependence on a cluster system. We have designed some extended parallel syntax following the original FuzzyCLIPS style. To simplify the programming model of parallel FuzzyCLIPS, we hide, as much as possible, the tasks of parallel processing from programmers and implement them in the inference engine by using MPI, the de facto standard for parallel programming for cluster systems. Furthermore, a load balancing function has been implemented in the inference engine to adapt to the heterogeneity of computing nodes. It will intelligently allocate different amounts of workload to different computing nodes according to the results of dynamic performance monitoring. The programmer only needs to invoke the function in the program for better load balancing. To verify our design and evaluate the performance, we have implemented a human resource website. Experimental results show that the proposed parallel FuzzyCLIPS can garner a superlinear speedup and provide a more reasonable response time.

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.

Similar content being viewed by others

References

  1. Giarratano JC, Riley GD (2005) Expert systems: principles and programming. Thomson Course Technology

  2. CLIPS (2010) http://www.ghg.net/clips/WhatIsCLIPS.html

  3. FuzzyCLIPS (2010) http://www.iit.nrc.ca/IR_public/fuzzy/fuzzyClips/fuzzyCLIPSIndex.html

  4. Wilkinson B, Allen M (2005) Parallel programming: techniques and applications using networked workstations and parallel computers, 2nd edn. Prentice Hall, New York

    Google Scholar 

  5. Message Passing Interface Standard (2010) http://www-unix.mcs.anl.gov/mpi/

  6. Reyes-Garcia CA, Corona E (2003) Implementing fuzzy expert system for intelligent buildings. In: Proceedings of the 2003 ACM symposium on applied computing, pp 9–13

    Chapter  Google Scholar 

  7. Morris A, Steele A (2002) FuzzyCLIPS and neuro-fuzzy term rewriting for power network control. In: Proceedings of 2002 annual meeting of the North American fuzzy information processing society, pp 566–571

    Google Scholar 

  8. Myers L, Pohl K (1994) Using PVM to host clips in distributed environments. In: Proceedings of CLIPS’94, pp 177–186

    Google Scholar 

  9. Gagne D, Garant A (1994) DAI-CLIPS: distributed, asynchronous, interacting CLIPS. In: Proceedings of CLIPS’94, pp 297–306

    Google Scholar 

  10. Hall L, Bennett BH, Tello I (1994) PCLIPS: parallel CLIPS. In: Proceedings of CLIPS’94, pp 307–314

    Google Scholar 

  11. Petcu Dana (2005) Parallel Jess. In: Proceedings of the 4th international symposium on parallel and distributed computing, pp 307–316

    Google Scholar 

  12. Wu C-C, Lai L-F, Chang Y-S (2008) A study of designing a grid-enabled expert system language. J Chin Inst Eng 32(7):1165–1179

    Article  Google Scholar 

  13. Wu C-C, Lai L-F, Chang Y-S (2009) Towards automatic load balancing for programming parallel fuzzy expert systems in heterogeneous clusters. J Internet Technol 10(2):179–186

    Google Scholar 

  14. Wu C-C, Lai L-F, Ke JY, Jhan S-S, Chang Y-S (2010) Designing a parallel fuzzy expert system programming model with adaptive load balancing capability for cloud computing. J Comput 21(1):38–48

    Google Scholar 

  15. Siler W, Buckley JJ (2004) Fuzzy expert systems and fuzzy reasoning. Wiley-Interscience, New York

    Book  Google Scholar 

  16. Network Weather Service (2010) http://nws.cs.ucsb.edu/ewiki/

  17. Wu C-C, Lai L-F, Yang CT, Chiu P-H (2009) Using hybrid MPI and OpenMP programming to optimize communications in parallel loop self-scheduling schemes for multicore PC clusters. J Supercomput. doi:10.1007/s11227-009-0271-z

    Google Scholar 

  18. NAS Parallel Benchmark Suites (2010) http://www.nas.nasa.gov/Resources/Software/npb.html

  19. Kaufmann A, Gupta MM (1985) Introduction to fuzzy arithmetic: theory and applications. Van Nostrand Reinhold, New York

    MATH  Google Scholar 

  20. Ngai EWT, Wat FKT (2005) Fuzzy decision support system for risk analysis in commerce development. Decis Support Syst 40(2):235–255

    Article  Google Scholar 

  21. Chen CT (2000) Extension of the TOPSIS for group decision-making under fuzzy environment. Fuzzy Sets Syst 114:1–9

    Article  MATH  Google Scholar 

  22. Hwang CL, Yoon K (1981) Multiple attribute decision making: methods and applications. Springer, Berlin Heidelberg

    MATH  Google Scholar 

  23. Arabnia HR, Smith JW (1993) A reconfigurable interconnection network for imaging operations and its implementation using a multi-stage switching box. In: Proceedings of the 7th annual international high performance computing conference, pp 349–357

    Google Scholar 

  24. Arabnia HR, Oliver MA (1987) A transputer network for the arbitrary rotation of digitised images. Comput J 30(5):425–433

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Chao-Chin Wu.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Wu, CC., Lai, LF. & Chang, YS. Extending FuzzyCLIPS for parallelizing data-dependent fuzzy expert systems. J Supercomput 59, 1379–1395 (2012). https://doi.org/10.1007/s11227-010-0542-8

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-010-0542-8

Keywords

Navigation