High-level synthesis with multi-objective genetic algorithm: A comparative encoding analysis

The high-level synthesis process involves three interdependent and NP-complete optimization problems: (i) the operation scheduling, (ii) the resource allocation, and (iii) the controller synthesis. Evolutionary algorithms have been effectively applied to high level synthesis in presence conflicting design objectives for finding good tradeoffs in the design space. However, so far the design space exploration has been performed using single-objective evolutionary algorithms with an ad hoc fitness function to achieve the desired tradeoff between the objectives. Recently we proposed a framework based on multi-objective genetic algorithms to perform a fully automated design space exploration. In this paper we focus on the choice of the solution representations that can be used to perform the design space exploration with multi-objective genetic algorithms. In particular we consider two specific representations and compare them on a set of benchmark problems. Our results suggest that they have different biases on the search space that make them more effective in different problems and design subspaces. Accordingly, we present a preliminary investigation on a new representation that exploits the advantages of both of them.

[1]  Kalyanmoy Deb,et al.  A fast and elitist multiobjective genetic algorithm: NSGA-II , 2002, IEEE Trans. Evol. Comput..

[2]  Gianluca Palermo,et al.  Fitness inheritance in evolutionary and multi-objective high-level synthesis , 2007, 2007 IEEE Congress on Evolutionary Computation.

[3]  Aloysio Pedroza,et al.  Optimized datapath design by evolutionary computation , 2003, The 3rd IEEE International Workshop on System-on-Chip for Real-Time Applications, 2003. Proceedings..

[4]  Pierre G. Paulin,et al.  Force-Directed Scheduling in Automatic Data Path Synthesis , 1987, 24th ACM/IEEE Design Automation Conference.

[5]  Srinivas Katkoori,et al.  A genetic algorithm for the design space exploration of datapaths during high-level synthesis , 2006, IEEE Transactions on Evolutionary Computation.

[6]  Gianluca Palermo,et al.  An Evolutionary Approach to Area-Time Optimization of FPGA designs , 2007, 2007 International Conference on Embedded Computer Systems: Architectures, Modeling and Simulation.

[7]  Jürgen Teich,et al.  An evolutionary approach to system-level synthesis , 1997, CODES.

[8]  Kalyanmoy Deb,et al.  A Fast Elitist Non-dominated Sorting Genetic Algorithm for Multi-objective Optimisation: NSGA-II , 2000, PPSN.

[9]  Raul Camposano,et al.  Path-based scheduling for synthesis , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[10]  Lothar Thiele,et al.  Comparison of Multiobjective Evolutionary Algorithms: Empirical Results , 2000, Evolutionary Computation.

[11]  Giovanni De Micheli,et al.  Synthesis and Optimization of Digital Circuits , 1994 .

[12]  Minjoong Rim,et al.  Optimal allocation and binding in high-level synthesis , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

[13]  Chittaranjan A. Mandal,et al.  GABIND: a GA approach to allocation and binding for the high-level synthesis of data paths , 2000, IEEE Trans. Very Large Scale Integr. Syst..

[14]  Gary William Grewal,et al.  An evolutionary approach to behavioural-level synthesis , 2003, The 2003 Congress on Evolutionary Computation, 2003. CEC '03..

[15]  Marc Parizeau,et al.  Open BEAGLE: A New Versatile C++ Framework for Evolutionary Computation , 2002, GECCO Late Breaking Papers.

[16]  Chittaranjan A. Mandal,et al.  Design space exploration for data path synthesis , 1997, Proceedings Tenth International Conference on VLSI Design.

[17]  Jason Cong,et al.  Register binding and port assignment for multiplexer optimization , 2004, ASP-DAC 2004: Asia and South Pacific Design Automation Conference 2004 (IEEE Cat. No.04EX753).

[18]  Nikil D. Dutt,et al.  SPARK: a high-level synthesis framework for applying parallelizing compiler transformations , 2003, 16th International Conference on VLSI Design, 2003. Proceedings..

[19]  David E. Goldberg,et al.  Genetic Algorithms in Search Optimization and Machine Learning , 1988 .

[20]  Maurizio Palesi,et al.  Multi-objective design space exploration using genetic algorithms , 2002, Proceedings of the Tenth International Symposium on Hardware/Software Codesign. CODES 2002 (IEEE Cat. No.02TH8627).