Evolutionary Art Using the Fly Algorithm

  • Zainab Ali Abbood
  • Othman Amlal
  • Franck P. Vidal
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10199)


This study is about Evolutionary art such as digital mosaics. The most common techniques to generate a digital mosaic effect heavily rely on Centroidal Voronoi diagrams. Our method generates artistic images as an optimisation problem without the introduction of any a priori knowledge or constraint other than the input image. We adapt a cooperative co-evolution strategy based on the Parisian evolution approach, the Fly algorithm, to produce artistic visual effects from an input image (e.g. a photograph). The primary usage of the Fly algorithm is in computer vision, especially stereo-vision in robotics. It has also been used in image reconstruction for tomography. Until now the individuals correspond to simplistic primitives: Infinitely small 3-D points. In this paper, the individuals have a much more complex representation and represent tiles in a mosaic. They have their own position, size, colour, and rotation angle. We take advantage of graphics processing units (GPUs) to generate the images using the modern OpenGL Shading Language. Different types of tiles are implemented, some with transparency, to generate different visual effects, such as digital mosaic and spray paint. A user study has been conducted to evaluate some of our results. We also compare results with those obtained with GIMP, an open-source software for image manipulation.


Digital mosaic Evolutionary art Fly algorithm Parisian evolution Cooperative co-evolution 



This work was partially supported by the European Commission, Grant no. 321968 (, and the Iraqi Ministry of Higher Education and Scientific Research (MOHESR).


  1. 1.
    Isenberg, T.: A survey of illustrative visualization techniques for diffusion-weighted MRI tractography. In: Hotz, I., Schultz, T. (eds.) Visualization and Processing of Higher Order Descriptors for Multi-valued Data, pp. 235–256. Springer, Cham (2015)CrossRefGoogle Scholar
  2. 2.
    Devinck, F., Spillmann, L.: The watercolor effect: spacing constraints. Vis. Res. 49(24), 2911–2917 (2009)CrossRefGoogle Scholar
  3. 3.
    Li, Z., Qin, S., Jin, X., Yu, Z., Lin, J.: Skeleton-enhanced line drawings for 3D models. Graph Models 76(6), 620–632 (2014)CrossRefGoogle Scholar
  4. 4.
    Chu, N.S.H., Tai, C.L.: Real-time painting with an expressive virtual Chinese brush. IEEE Comput. Graph 24(5), 76–85 (2004)CrossRefGoogle Scholar
  5. 5.
    Kaplan, M., Cohen, E.: Computer generated celtic design. In: Proceedings of the 14th Eurographics Workshop on Rendering, vol. 44, pp. 9–19 (2003)Google Scholar
  6. 6.
    Elber, G., Wolberg, G.: Rendering traditional mosaics. Visual Comput. 19(1), 67–78 (2003)CrossRefGoogle Scholar
  7. 7.
    Battiato, S., Blasi, G.D., Farinella, G.M., Gallo, G.: Digital mosaic frameworks - an overview. Comput. Graph Forum 26(4), 794–812 (2007)Google Scholar
  8. 8.
    Faustino, G.M., De Figueiredo, L.H.: Simple adaptive mosaic effects. In: Brazilian Symposium of Computer Graphic and Image Processing, pp. 315–322 (2005)Google Scholar
  9. 9.
    Louchet, J.: Stereo analysis using individual evolution strategy. In: Proceedings of the International Conference on Pattern Recognition, ICPR 2000, vol. 1, pp. 908–911 (2000)Google Scholar
  10. 10.
    Haeberli, P.: Paint by numbers: abstract image representations. SIGGRAPH Comput. Graph. 24(4), 207–214 (1990)CrossRefGoogle Scholar
  11. 11.
    Hoff III., K.E., Keyser, J., Lin, M., Manocha, D., Culver, T.: Fast computation of generalized Voronoi diagrams using graphics hardware. In: Proceedings of SIGGRAPH 1999, pp. 277–286 (1999)Google Scholar
  12. 12.
    Hausner, A.: Simulating decorative mosaics. In: Proceedings of SIGGRAPH 2001, pp. 573–580 (2001)Google Scholar
  13. 13.
    Lai, Y.K., Hu, S.M., Martin, R.R.: Surface mosaics. Visual Comput. 22(9), 604–611 (2006)CrossRefGoogle Scholar
  14. 14.
    Lu, L., Sun, F., Pan, H., Wang, W.: Global optimization of centroidal voronoi tessellation with monte carlo approach. IEEE T Vis. Comput. Gr. 18(11), 1880–1890 (2012)CrossRefGoogle Scholar
  15. 15.
    Hu, W., Chen, Z., Pan, H., Yu, Y., Grinspun, E., Wang, W.: Surface mosaic synthesis with irregular tiles. IEEE Trans. Vis. Comput. Gr. 22(3), 1302–1313 (2016)CrossRefGoogle Scholar
  16. 16.
    Nguyen, A., Yosinski, J., Clune, J.: Deep neural networks are easily fooled: high confidence predictions for unrecognizable images. In: IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 427–436 (2015)Google Scholar
  17. 17.
    Collomosse, J.: Evolutionary search for the artistic rendering of photographs. In: Romero, J., Machado, P. (eds.) The Art of Artificial Evolution: A Handbook on Evolutionary Art and Music, pp. 39–62. Springer, Heidelberg (2007)Google Scholar
  18. 18.
    Karp, R.M.: Reducibility among combinatorial problems. In: Miller, R.E., Thatcher, J.W., Bohlinger, J.D. (eds.) Complexity of Computer Computations, pp. 85–103. Springer, New York (1972)CrossRefGoogle Scholar
  19. 19.
    Mesejo, P., Ibáñez, O., Fernández-Blanco, E., Pazos, A., Porto-Pazos, A.B., Cedrón, F.: Artificial neuron-glia networks learning approach based on cooperative coevolution. Int. J. Neural Syst. 25(4), 1550012 (2015)CrossRefGoogle Scholar
  20. 20.
    Boumaza, A.M., Louchet, J.: Dynamic flies: using real-time parisian evolution in robotics. In: Boers, E.J.W. (ed.) EvoWorkshops 2001. LNCS, vol. 2037, pp. 288–297. Springer, Heidelberg (2001). doi: 10.1007/3-540-45365-2_30CrossRefGoogle Scholar
  21. 21.
    Louchet, J., Guyon, M., Lesot, M.J., Boumaza, A.: Dynamic flies: a new pattern recognition tool applied to stereo sequence processing. Pattern Recogn. Lett. 23(1–3), 335–345 (2002)CrossRefzbMATHGoogle Scholar
  22. 22.
    Louchet, J., Sapin, E.: Flies open a door to SLAM. In: Applications of Evolutionary Computation: EvoApplicatons 2009, pp. 385–394 (2010)Google Scholar
  23. 23.
    Kaufmann, B., Louchet, J., Lutton, E.: Hand posture recognition using real-time artificial evolution. In: Applications of Evolutionary Computation: EvoApplicatons 2010, pp. 251–260 (2010)Google Scholar
  24. 24.
    Vidal, F.P., Louchet, J., Rocchisani, J.M., Lutton, É.: New genetic operators in the fly algorithm: application to medical PET image reconstruction. In: Applicationsof Evolutionary Computation: EvoApplicatons 2010, pp. 292–301 (2010)Google Scholar
  25. 25.
    Lutz, K.: Boost.Compute (2016). Accessed 26 Oct 2016
  26. 26.
    Gaster, B., Howes, L., Kaeli, D.R., Mistry, P., Schaa, D.: Heterogeneous Computing with OpenCL. 1edn. Morgan Kaufmann, USA (2011)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Zainab Ali Abbood
    • 1
  • Othman Amlal
    • 1
  • Franck P. Vidal
    • 1
  1. 1.School of Computer ScienceBangor UniversityBangorUK

Personalised recommendations