Constrained and Unconstrained Hardware-Software Partitioning using Particle Swarm Optimization Technique

In this paper the authors investigate the application of the particle swarm optimization (PSO) technique for solving the hardware/software partitioning problem. The PSO is attractive for the hardware/software partitioning problem as it offers reasonable coverage of the design space together with O(n) main loop's execution time, where n is the number of proposed solutions that will evolve to provide the final solution. The authors carried out several tests on a hypothetical, relatively-large hardware/software partitioning problem using the PSO algorithm as well as the genetic algorithm (GA), which is another evolutionary technique. The authors found that PSO outperforms GA in the cost function and the execution time. For the case of unconstrained design problem, the authors tested several hybrid combinations of PSO and GA algorithm; including PSO then GA, GA then PSO, GA followed by GA, and finally PSO followed by PSO. We found that a PSO followed by GA algorithm gives small or no improvement at all, while a GA then PSO algorithm gives the same results as the PSO alone. The PSO algorithm followed by another PSO round gave the best result as it allows another round of domain exploration. The second PSO round assign new randomized velocities to the particles, while keeping best particle positions obtained in the first round. The paper proposes to name this successive PSO algorithm as the re-excited PSO algorithm

[1]  Edward A. Lee,et al.  A global criticality/local phase driven algorithm for the constrained hardware/software partitioning problem , 1994, CODES.

[2]  Russell C. Eberhart,et al.  A new optimizer using particle swarm theory , 1995, MHS'95. Proceedings of the Sixth International Symposium on Micro Machine and Human Science.

[3]  Masaharu Imai,et al.  A hardware/software partitioning algorithm for designing pipelined ASIPs with least gate counts , 1996, DAC '96.

[4]  Jan Madsen,et al.  PACE: a dynamic programming algorithm for hardware/software partitioning , 1996, Proceedings of 4th International Workshop on Hardware/Software Co-Design. Codes/CASHE '96.

[5]  Anne Elisabeth Haxthausen,et al.  LYCOS: the Lyngby Co-Synthesis System , 1997, Des. Autom. Embed. Syst..

[6]  Petru Eles,et al.  System Level Hardware/Software Partitioning Based on Simulated Annealing and Tabu Search , 1997, Des. Autom. Embed. Syst..

[7]  Russell C. Eberhart,et al.  Comparison between Genetic Algorithms and Particle Swarm Optimization , 1998, Evolutionary Programming.

[8]  Russell C. Eberhart,et al.  Parameter Selection in Particle Swarm Optimization , 1998, Evolutionary Programming.

[9]  Niraj K. Jha,et al.  MOGAC: a multiobjective genetic algorithm for hardware-software cosynthesis of distributed embedded systems , 1998, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[10]  Ahmed Amine Jerraya,et al.  Hardware, software and mechanical cosimulation for automotive applications , 1998, Proceedings. Ninth International Workshop on Rapid System Prototyping (Cat. No.98TB100237).

[11]  R. Eberhart,et al.  Empirical study of particle swarm optimization , 1999, Proceedings of the 1999 Congress on Evolutionary Computation-CEC99 (Cat. No. 99TH8406).

[12]  David B. Fogel,et al.  Evolution-ary Computation 1: Basic Algorithms and Operators , 2000 .

[13]  Patrick Schaumont,et al.  A Hardware-Software Partitioning and Scheduling Algorithm for Dynamically Reconfigurable Embedded Systems , 2000 .

[14]  Ranga Vemuri,et al.  MAGELLAN: multiway hardware-software partitioning and scheduling for latency minimization of hierarchical control-dataflow task graphs , 2001, Ninth International Symposium on Hardware/Software Codesign. CODES 2001 (IEEE Cat. No.01TH8571).

[15]  Yuhui Shi,et al.  Particle swarm optimization: developments, applications and resources , 2001, Proceedings of the 2001 Congress on Evolutionary Computation (IEEE Cat. No.01TH8546).

[16]  Jörg Henkel,et al.  An approach to automated hardware/software partitioning using a flexible granularity that is driven by high-level estimation techniques , 2001, IEEE Trans. Very Large Scale Integr. Syst..

[17]  J. R. Armstrong,et al.  2 Model and Synthesis Directed Task Assignment for Systems On A Chip , 2002 .

[18]  Frans van den Bergh,et al.  An analysis of particle swarm optimizers , 2002 .

[19]  Frank Vahid Partitioning sequential programs for CAD using a three-step approach , 2002, TODE.

[20]  Mikkel T. Jensen,et al.  Reducing the run-time complexity of multiobjective EAs: The NSGA-II and other algorithms , 2003, IEEE Trans. Evol. Comput..

[21]  Pradeep Adhipathi,et al.  Model based approach to Hardware/ Software Partitioning of SOC Designs , 2003 .

[22]  MATTHEW L. SETTLES A HYBRID GA/PSO TO EVOLVE ARTIFICIAL RECURRENT NEURAL NETWORKS , 2003 .

[23]  Yongling Zheng,et al.  On the convergence analysis and parameter selection in particle swarm optimization , 2003, Proceedings of the 2003 International Conference on Machine Learning and Cybernetics (IEEE Cat. No.03EX693).

[24]  Juan Carlos López,et al.  On the hardware-software partitioning problem: System modeling and partitioning techniques , 2003, TODE.

[25]  Zoltán Ádám Mann Partitioning algorithms for hardware/software co-design , 2004 .

[26]  Duane C. Hanselman,et al.  Mastering MATLAB , 2004 .

[27]  Raghuveer M. Rao,et al.  Darwinian Particle Swarm Optimization , 2005, IICAI.

[28]  Chang Wook Ahn,et al.  On the practical genetic algorithms , 2005, GECCO '05.

[29]  Una-May O'Reilly,et al.  Genetic Programming Theory and Practice II , 2005 .

[30]  Frank Vahid,et al.  Hardware/software partitioning of software binaries: a case study of H.264 decode , 2005, 2005 Third IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS'05).

[31]  S. Harris,et al.  Beginning algorithms , 2006 .

[32]  Johan Bollen,et al.  Simulating Network Influence Algorithms Using Particle-Swarms: PageRank and PageRank-Priors , 2006, ArXiv.

[33]  Roberto Battiti,et al.  The gregarious particle swarm optimizer (G-PSO) , 2006, GECCO '06.

[34]  Wouter A. Serdijn,et al.  Power-Aware Architecting: for data-dominated applications , 2007 .

[35]  Riccardo Poli,et al.  Particle swarm optimization , 1995, Swarm Intelligence.

[36]  Aaas News,et al.  Book Reviews , 1893, Buffalo Medical and Surgical Journal.