Optimization of $\mu$0 Algorithm for BDD Minimization Problem

  • 이민나 (한국외국어대학교 정보산업공과대학 컴퓨터공학과) ;
  • 조상영 (한국외국어대학교 정보산업공과대학 컴퓨터공학과)
  • Published : 2002.02.01

Abstract

BDD have become widely used for various CAD applications because Boolean functions can be represented uniquely and compactly by using BDD. The size of the BDD representation for a function is very sensitive to the choice of orderings on the input variable. Therefore, it is very important to find a good variable ordering which minimize the size of the BDD. Since finding an optimal ordering is NP-complete, several heuristic algorithms have been proposed to find good variable orderings. In this paper, we propose a variable ordering algorithm, Faster-${\mu}$0, based on the ${\mu}$0(microcanonical optimization). In the Faster-${\mu}$0 algorithm, the initialization phase is replaced with a shifting phase to produce better solutions in a fast local search. We find values for algorithm parameters experimentally and the proposed algorithm has been experimented on well known benchmark circuits and shows superior performance compared to various existing algorithms.

BDD는 부울 함수를 간결하고 유일하게 나타낼 수 있기 때문에 다양한 컴퓨터 지원 설계 분야에 널리 활용되고 있다. BDD 크기는 변수 순서에 따라 매우 민감하게 변하므로, BDD의 크기를 최소화할 수 있는 변수 순서를 구하는 것은 매우 중요한 문제이다. 그러나 최적의 변수 순서를 찾는 것은 NP-complete 문제이므로, 근사 최적 변수 순서(near--optimal variable ordering)를 결정하기 위한 여러 가지 휴리스틱 알고리즘이 제안되었다. 본 논문에서는 최근에 제안된 μ0 (Microcanonical Optimization) 알고리즘에 기반하여 BDD 최소화 문제에 더욱 적합하도록 보완한 Faster-μ0 알고리즘을 제안한다. Faster-μ0 알고리즘은 빠르고 더 나은 해를 찾기 위한 국부 탐색 방법으로 임의의 해를 반복적으로 생성하는 초기화 단계 대신에 시프팅 알고리즘을 실행하는 시프팅 단계로 대체한다. 제안된 알고리즘의 튜닝을 위하여 실험적으로 알고리즘 파라메타를 구하였으며 제안된 알고리즘은 많은 벤치마크 회로에 대하여 실험되었으며 기존의 μ0 알고리즘 보다 빠르고 좋은 성능을 보인다.

Keywords

References

  1. S. B. Akers, 'Binary Decision Diagrams,' IEEE Transaction on Computers, vol. C-27, No. 6, pp. 509-516, August 1978 https://doi.org/10.1109/TC.1978.1675141
  2. Randal E. Bryant 'Symbolic Manipulation of Boolean Functions Using a Graphical Representation,' 22nd Design Automation Conference, pp. 688-694, June 1985 https://doi.org/10.1145/317825.317964
  3. Randal E. Bryant, 'Graph-Based Algorithms for Boolean Function Manipulation,' IEEE Transaction on Computers, vol. C-35, pp. 667-691, August 1986 https://doi.org/10.1109/TC.1986.1676819
  4. Randal E. Bryant, 'Symbolic Boolean Manipulation with Ordered Binary Decision Diagrams,' ACM Computing Surveys, vol. 24, no. 3, September 1992 https://doi.org/10.1145/136035.136043
  5. Randal E. Bryant, 'Binary Decision Diagrams and Beyond : Enabling Technologies for Formal Verification,' International Conference on Computer Aided Design, pp. 236-243, November 1995 https://doi.org/10.1109/ICCAD.1995.480018
  6. Rolf Drechsler, Bernd Becker, 'Binary Decision Diagrams : Theory and Implementation,' Kluwer Academic Publishers, 1998
  7. S.J. Fredman, K.J. Supowit, 'Finding the Optimal Variable Ordering for Binary Decision Diagrams,' IEEE Transaction on Computers, vol. C-39, no. 5, pp. 710-713, May 1990 https://doi.org/10.1109/12.53586
  8. Richard Rudell, 'Dynamic Variable Ordering of Ordered Binary Decision Diagrams,' International Conference on Computer-Aided Design, pp. 43-47, November 1993 https://doi.org/10.1109/ICCAD.1993.580029
  9. Rolf Drechsler, Bernd Beckern, Nicole Gockel, 'A Genetic Algorithm for Variable Ordering of OBDDs,' International Workshop on Logic Synthesis, pp. 5C:5.55-5.64, 1995
  10. Rolf Drechsler, Nicole Gockel, 'Simulation Based Minimization of large OBDDs,' Preprint at the Institute of Computer Science, Albert-Ludwigs-University Freiburg im Breisgau, germany, January 1997
  11. Rolf Drechsler, Nicole Gockel, 'Minimization of BDDs by Evolutionary Algorithms,' International Workshop on Logic Synthesis(IWLS'97), Lake Tahoe, 1997
  12. B. Bolling, M. Lobbing, I. Wegener, 'Simulated Annealing to improve variable orderings for OBDDs,' International Workshop on Logic Synthesis, pp. 5b:5.1-5.10, 1995
  13. M. Creutz, 'Microcanonical Monte Carlo simulation,' Phys, Rev, Lett, vol. 50, pp. 1411-1413, 1983 https://doi.org/10.1103/PhysRevLett.50.1411
  14. A. Linhares, J. A. Torreao, 'Microcanonical optimization applied to the traveling salesman problem,' Int. J. Modern Phys. C, vol. 9, pp. 133-146, 1998 https://doi.org/10.1142/S012918319800011X
  15. Alexandre Linhares, Horacio H. Yanasse, Jose R. A. Torreao, 'Linear Gate Assignment : A Fast Statistical Mechanics Approach,' IEEE Transaction on Computer-Aided Design of Integrated circuits and system, vol. 18, no. 12. December 1999 https://doi.org/10.1109/43.811324
  16. S.C S. Porto, A. M. Barrose, J.R.A. Torreao, 'A Parallel Microcanonical Optimization Algorithm for the Task Scheduling Problem,' Technical Report, Applied Computing & Automation Universidado Federal Fluminense, September 1999
  17. Fabio Somenzi, 'CUDD : CU Decision Diagram Package Release 2.3.0,' University of Colorado, April 12, 1997
  18. Saeyang Yang, 'Logic Synthesis and Optimization Benchmarks User Guide Version 3.0,' Distributed as part of the IWLS91 benchmark distribution, January 15, 1991
  19. 이민나, 조상영, 'Microcanonical Optimization을 이용한 BDD의 최소화 기법,' 한국정보처리학회, 제8-A권, 제1호, 48-55, 2001년 3월