FPGA Implementation of a Multi-Population PBIL Algorithm

João Paulo Coelho, Tatiana M. Pinho, José Boaventura-Cunha

2015

Abstract

Evolutionary-based algorithms play an important role in finding solutions to many problems that are not solved by classical methods, and particularly so for those cases where solutions lie within extreme non-convex multidimensional spaces. The intrinsic parallel structure of evolutionary algorithms are amenable to the simultaneous testing of multiple solutions; this has proved essential to the circumvention of local optima, and such robustness comes with high computational overhead, though custom digital processor use may reduce this cost. This paper presents a new implementation of an old, and almost forgotten, evolutionary algorithm: the population-based incremental learning method. We show that the structure of this algorithm is well suited to implementation within programmable logic, as compared with contemporary genetic algorithms. Further, the inherent concurrency of our FPGA implementation facilitates the integration and testing of micro-populations.

References

  1. Altera (2008). Cyclone ii device handbook (volume i). Technical report, Altera Corporation.
  2. Baluja, S. (1994). Population-based incremental learning. Technical report, Carnegie Mellon University.
  3. Branke, J., Kaussler, T., Smidt, C., and Schmeck, H. (2000). A multi-population approach to dynamic optimization problems. In Evolutionary Design and Manufacture. Springer London.
  4. Budura, G., Botoca, C., and Miclau, N. (2006). Competitive learning algorithm for data clustering. Electron Energetics, 19(2):261-269.
  5. Duda, R., Hart, P., and Stork, D. (2001). Pattern classification. John Wiley & Sons.
  6. Fernando, P., Katkoori, S., Keymeulen, D., Zebulum, R., and Stoica, A. (2010). Customizable fpga ip core implementation of a general-purpose genetic algorithm engine. Evolutionary Computation, IEEE Transactions on, 14:133-14.
  7. Folly, K. (2013). Parallel pbil applied to power system controller design. Journal of Artificial Intelligence and Soft Computing Research, Vol. 3, No. 3:215-223.
  8. Folly, K. A. and Venayagamoorthy, G. K. (2009). Effect of learning rate on the performance of the population based incremental learning algorithm. In Proceedings of International Joint Conference on Neural Networks.
  9. Garibay, O., Garibay, I., and Wu, A. (2003). The modular genetic algorithm: Exploiting regularities in the problem space. In Computer and Information Sciences - ISCIS 2003. Springer Berlin Heidelberg.
  10. Gonzalez, C., Lozano, J., and Larranaga, P. (2001). The convergence behavior of the pbil algorithm: A preliminary approach. In Artificial Neural Nets and Genetic Algorithms. Springer Vienna.
  11. Hauschild, M. and Pelikan, M. (2011). An introduction and survey of estimation of distribution algorithms. Swarm and Evolutionary Computation, 1:111 - 128.
  12. Larranaga, P. and Lozano, J., editors (2002). Estimation of distribution algorithms: A new tool for Evolutionary Computation. Kluwer, Boston.
  13. Martin, P. (2002). An analysis of random number generators for a hardware implementation of genetic programming using ffpga and handel-c. Technical report, University of Essex.
  14. Meysenburg, M. M. and Foster, J. A. (1999). Random generator quality and gp performance. In Proceedings of the Genetic Evolutionary Computation Conference.
  15. Narayanan, S. (2005). Hardware implementation of Genetic Algorithm modules for intelligent systems. PhD thesis, University of Cincinnati.
  16. Nguyen, T. T., Yang, S., and Branke, J. (2012). Evolutionary dynamic optimization: A survey of the state of the art. Swarm and Evolutionary Computation, 6:1-24.
  17. Pelikan, M., Goldberg, D., and Lobo, F. (2002). A survey of optimization by building and using probabilistic models. Computational Optimization and Applications, 21:5-20.
  18. Rumelhart, D. and Zipser, D. (1986). Feature discovery by competitive learning. MIT Press.
  19. Scott, S., Samal, A., and Seth, S. (1995). Hga: A hardwarebased genetic algorithm. In Third International ACM Symposium on Field-Programmable Gate Arrays.
  20. Servais, M., de Jager, G., and Greene, J. R. (1997). Function optimisation using multiple-base population based incremental learning. In in Proceedings of the Eighth Annual South African Workshop on Pattern Recognition.
  21. Siarry, P., Pétrowski, A., and Bessaou, M. (2002). A multipopulation genetic algorithm aimed at multimodal optimization. Adv. Eng. Softw., 33:207-213.
  22. Spina, M. L. (2010). Parallel genetic algorithm engine on a FPGA. PhD thesis, University of South Florida.
  23. Tang, W. and Yip, L. (2004). Hardware implementation of genetic algorithms using fpga. In Proceedings of the 47th MWCAS.
  24. Tommiska, M. and Vuori, J. (1996). Implementation of genetic algorithms with programmable logic devices. In Proceedings of 2NWGA.
  25. Yang, S., Jin, Y., and Ong, Y., editors (2007). Evolutionary Computation in Dynamic and Uncertain Environments. Springer-Verlag.
  26. Yang, S. and Yao, X. (2003). Dual population-based incremental learning for problem optimization in dynamic environments. In 7th Asia Pacific Symposium on Intelligent and Evolutionary Systems.
Download


Paper Citation


in Harvard Style

Coelho J., Pinho T. and Boaventura-Cunha J. (2015). FPGA Implementation of a Multi-Population PBIL Algorithm . In Proceedings of the 7th International Joint Conference on Computational Intelligence - Volume 1: ECTA, ISBN 978-989-758-157-1, pages 279-286. DOI: 10.5220/0005610402790286


in Bibtex Style

@conference{ecta15,
author={João Paulo Coelho and Tatiana M. Pinho and José Boaventura-Cunha},
title={FPGA Implementation of a Multi-Population PBIL Algorithm},
booktitle={Proceedings of the 7th International Joint Conference on Computational Intelligence - Volume 1: ECTA,},
year={2015},
pages={279-286},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0005610402790286},
isbn={978-989-758-157-1},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 7th International Joint Conference on Computational Intelligence - Volume 1: ECTA,
TI - FPGA Implementation of a Multi-Population PBIL Algorithm
SN - 978-989-758-157-1
AU - Coelho J.
AU - Pinho T.
AU - Boaventura-Cunha J.
PY - 2015
SP - 279
EP - 286
DO - 10.5220/0005610402790286