Skip to main content

Advertisement

Log in

Advancing genetic algorithm approaches to field programmable gate array placement with enhanced recombination operators

  • Research Paper
  • Published:
Evolutionary Intelligence Aims and scope Submit manuscript

Abstract

Since their inception, field programmable gate arrays have seen an enormous growth in usage because they can dramatically reduce design and manufacturing costs. However, the time required for placement (a key step in the design) is dominating the compilation process. In this paper, we take some initial theoretical steps towards developing an efficient genetic algorithm for solving the placement problem by developing suitable recombination operators for performing placement. According to Holland, when the genetic algorithm recombines two parent genotypes, the differences between them define a genotypic subspace, and any offspring produced should be confined to this subspace. Those recombination operators that violate this principle can direct a search away from the region containing the parent genotypes and this is contrary to the intended task for recombination. This is often detrimental to search performance. This paper contributes the development of an intuitive visualization technique that can be used to easily detect violations of the previous principle. The efficacy of the proposed methodology is demonstrated and it is demonstrated that many standard recombination operators violate this principle. The methodology is then used to guide the development of novel operators that exhibit substantial (and statistically significant) improvements in performance over standard recombination operators.

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.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16

Similar content being viewed by others

References

  1. Jamieson P, Gharibian F, Shannon L (2013) Supergenes in a genetic algorithm for heterogeneous FPGA placement. In: IEEE congress on evolutionary computation, pp 253–260

  2. Collier R, Fobel C, Grewal G, Wineberg M (2012) Depictions of genotypic space for evaluating the suitability of different recombination operators. In: Proceedings of the 14th genetic and evolutionary computation conference, pp 609–616

  3. Goldberg D (1989) Genetic algorithms in search, optimization, and machine learning. Addison-Wesley Publishing Inc., Reading, MA

    MATH  Google Scholar 

  4. Holland J (1992) Adaptation in natural and artificial systems. MIT Press, Cambridge

    Google Scholar 

  5. Surry P, Radcliffe N (1996) Formal algorithms + formal representations = search strategies. In: Proceedings of the 4th international conference on parallel problem solving from nature, pp 366–375

  6. Radcliffe N (1994) The algebra of genetic algorithms. Ann Math Artif Intell 10:339–384

    Article  MATH  MathSciNet  Google Scholar 

  7. Radcliffe N (1991) Equivalence class analysis of genetic algorithms. Complex Syst 5:183–205

    MATH  MathSciNet  Google Scholar 

  8. Liepins G, Vose M (1990) Representational issues in genetic optimization. J Exp Theor Artif Intell 2(2):101–115

    Article  Google Scholar 

  9. Rothlauf F (2002) Representations for genetic and evolutionary algorithms. Physica-Verlag, Heidelberg

  10. Moraglio A, Poli R (2004) Topological interpretation of crossover. In: Proceedings of the 6th genetic and evolutionary computation conference, pp 1377–1388

  11. Moraglio A, Poli R (2011) Geometric crossover for the permutation representation. Intell Artif 5:49–63

    Google Scholar 

  12. Schaffer J, Eschelman L (1991) On crossover as an evolutionarily viable strategy. In: Proceedings of the 4th international conference on genetic algorithms, pp 61–68

  13. Shakookar K, Mazumder P (1991) VLSI cell placement techniques. ACM Commut Surv 23(2):143–220

    Article  Google Scholar 

  14. Xu M, Grewal G, Areibi S, Obimbo C, Banerji D (2009) Near-linear wirelength estimation for FPGA placement. Can J Electr Comput Eng 34(3):125–132

    Article  Google Scholar 

  15. Caldwell A, Kahng A, Markov I (2000) Can recursive bisection alone produce routable placements? In: Proceedings of the 37th annual design automation conference, pp 477–482

  16. Dunlop A, Kernighan B (1985) A procedure for placement of standard-cell VLSI circuits. IEEE Trans Comput Aided Des Integr Circuits Syst 4(1):92–98

    Article  Google Scholar 

  17. Caldwell A, Kahng A, Markov I (1999) Optimal partitioners and end-case placers for standard-cell layout. In: Proceedings of the 1999 international symposium on physical design, pp 90–96

  18. Khatkhate A, Li C, Agnihorti A, Yildiz M, Ono S, Koh C, Madden P (2004) Recursive bisection based mixed block placement. In: International symposium on physical design, pp 84–89

  19. Swartz W, Sechen C (1995) Timing-driven placement for large standard cell circuits. In: Design automation conference, pp 211–215

  20. Kahng A, Wang Q (2005) Implementation and extensibility of an analytic placer. IEEE Trans Comput Aided Des Integr Circuits Syst 24(5):734–747

    Article  Google Scholar 

  21. Sigl G, Doll K, Johannes F (1991) Analytical placement: a linear or a quadratic objective function? In: Proceedings of the 28th ACM/IEEE design automation conference, pp 427–432

  22. Kahng A, Reda S, Wang Q (2005) Architecture and details of a high quality, large scale analytical placer. In: Proceedings of the 2005 IEEE/ACM international conference on computer-aided design, pp 891–898

  23. Chan T, Cong J, Sze K (2005) Multilevel generalized force-directed method for circuit placement. In: Proceedings of the 2005 international symposium on physical design, pp 185–192

  24. Chan P, Schlag M (2003) Parallel placement for field-programmable gate arrays. In: Proceedings of the ACM/SIGDA eleventh international symposium on field programmable gate arrays, pp 43–50

  25. Xu M, Grewal G, Areibi S (2011) StarPlace: a new analytic placement method for FPGA placement. Integr VLSI J 44:192–204

    Article  Google Scholar 

  26. Betz V, Rose J (2007) VPR: a new packing, placement and routing tool for FPGA research. Field Program Log Appl 1304:213–222

    Article  Google Scholar 

  27. Areibi S, Grewal G, Banerji D, Du P (2007) Hierarchical FPGA placement. Can J Electr Comput Eng 32(1):53–64

    Article  Google Scholar 

  28. Areibi S, Bao X, Grewal G, Banerji D, Du P (2008) Meta-heuristic based techniques for FPGA placement: a study. ACTA Int J Comput 16(1):13–33

    Google Scholar 

  29. Marquardt A, Betz V, Rose J (2000) Timing-driven placement for FPGAs. In: Proceedings of the 2000 ACM/SIGDA eight international symposium on field programmable gate arrays, pp 203–213

  30. Venkatraman R, Patnaik LM (2000) An evolutionary approach to timing driven FPGA placement. In: Proceedings of the 10 Great Lakes symposium on VLSI, pp 81–85

  31. Cohoon J, Paris W (1987) Genetic placement. IEEE Trans Comput Aided Des Integr Circuits Syst 6:956–964

    Article  Google Scholar 

  32. Yang M, Almaini A, Wang P (2006) FPGA placement optimization by two-step unified genetic algorithm and simulated annealing algorithm. J Electron 23(4):632–636

    Google Scholar 

  33. Fernández F, Sánchez-Pérez J, Tomassini M (2001) Placing and routing circuits on FPGAs by means of parallel and distributed genetic programming. In: Proceedings of the 4th international conference on evolvable systems, pp 204–215

  34. Borra S, Muthukaruppan A, Suresh S, Kamakoti V (2007) A novel approach to the placement and routing problems for field programmable gate arrays. Appl Soft Comput 7(1):455–470

    Article  Google Scholar 

  35. Rubio-Solar M, Vega-Rodríguez M, Sánchez-Pérez J, Gómez-Iglesias A, Cárdenas-Montes M (2008) A FPGA optimization tool based on a multi-island genetic algorithm distributed over grid environments. In: IEEE computer society, pp 65–72

  36. Hidalgo J, Lanchares J, Hermida R (2000) Partitioning and placement for multi-FPGA systems using genetic algorithms. In: Proceedings of the 26th Euromicro conference, pp 204–211

  37. Borra S, Muthukaruppan A, Suresh S, Kamakoti V (2003) A parallel genetic approach to the placement problem for field programmable gate arrays. In: IEEE computer society, pp 1841–1848

  38. Baruch Z, Creţ O, Giurgiu H (1999) Genetic algorithm for FPGA placement. In: Proceedings of the 12th international conference on control systems and computer science, vol 2, pp 121–126

  39. Yang M, Almaini A, Wang L, Wang P (2005) An evolutionary approach for symmetrical field programmable gate array placement. Res Microelectron Electron 1:169–172

    Google Scholar 

  40. Areibi S, Bao X, Grewal G, Banerji D (2006) A comparison of heuristics for FPGA placement. In: ACTA international journal of computers and applications

  41. Grefenstette J, Gopal R, Rosmaita B, Gucht D (1985) Genetic algorithms for the traveling salesman problem. In: Proceedings of the 1st international conference on genetic algorithms, pp 160–168

  42. Jamieson P (2010) Revisiting genetic algorithms for the FPGA placement problem. In: Proceedings of the international conference of genetic and evolutionary methods, pp 16–22

  43. Buckland M (2002) AI techniques for game programming, 1st edn. Course Technology PTR, Cincinnati

  44. Krawiec K, Pawlak T (2013) Locally geometric semantic crossover: a study on the roles of semantics and homology in recombination operators. Genet Program Evol Mach 14(1):31–63

    Article  Google Scholar 

  45. Moraglio A, Krawiec K, Johnson C (2012) Geometric semantic genetic programming. In: Proceedings of the 12th international conference on parallel problem solving from nature, pp 21–31

  46. Yang S (1991) Logic synthesis and optimization benchmarks user guide version 3.0. MCNC

  47. Xie H, Zhang M (2009) Balancing parent offspring selection in genetic programming. In: AI 2009: advances in artificial intelligence, lecture notes in computer science, vol 5866, pp 454–464

Download references

Acknowledgments

The material is based on work supported by the natural sciences and engineering research council of Canada.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Robert Collier.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Collier, R., Fobel, C., Pattison, R. et al. Advancing genetic algorithm approaches to field programmable gate array placement with enhanced recombination operators. Evol. Intel. 7, 183–200 (2014). https://doi.org/10.1007/s12065-014-0114-6

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s12065-014-0114-6

Keywords

Navigation