유전 알고리즘을 이용한 다중프로세서 시스템에서의 선형 스케쥴링 알고리즘 구현

An Implementation of the Linear Scheduling Algorithm in Multiprocessor Systems using Genetic Algorithms

  • 발행 : 2000.02.15

초록

본 논문에서는 유전 알고리즘을 이용하여 다중프로세서 시스템을 위한 선형 스케쥴링 알고리즘을 제안하였다. 일반적으로 유전 알고리즘은 초기세대를 임의로 생성하기 때문에, 문제에 적합하지 않은 개체들의 영향으로 긴 천이시간과 느린 수렴속도를 갖는다. 제안된 알고리즘은 프로세서간의 통신비용을 고려하며, 초기세대를 생성할 때 현재 노드를 기준으로 직접 후임노드만을 동일 프로세서에 할당함으로써 선형 스케쥴링을 하게 되고, 교배연산과 변이연산에서도 기준 노드의 직접 전임노드나 직접 후임노드의 결합을 변화시킴으로써 선형성을 유지하게 된다. 선형 스케쥴링은 비선형에 비해 프로그램의 병렬성을 최대한 활용할 수 있을 뿐 아니라, 코오스 그레인(coarse grain) 방향성 비순환 그래프(directed acyclic graph: DAG)에서 항상 우수한 스케쥴ㄹㅇ 결과를 생성한다. 본 논문의 목적은 유전 알고리즘의 실시간 사용 가능성에 중점을 두었으며, 시뮬레이션 결과 제안된 알고리즘은 대부분의 DAG에서 50세대 내의 빠른 수렴속도를 나타내었다.

In this paper, we present a linear scheduling method for homogeneous multiprocessor systems using genetic algorithms. In general, genetic algorithms randomly generate initial strings, which leads to long operation time and slow convergence due to an inappropriate initialization. The proposed algorithm considers communication costs among processors and generates initial strings such that successive nodes are grouped into the same cluster. In the crossover and mutation operations, the algorithm maintains linearity in scheduling by associating a node with its immediate successor or predecessor. Linear scheduling can fully utilize the inherent parallelism of a given program and has been proven to be superior to nonlinear scheduling on a coarse grain DAG (directed acyclic graph). This paper emphasizes the usability of the genetic algorithm for real-time applications. Simulation results show that the proposed algorithm rapidly converges within 50 generations in most DAGs.

키워드

참고문헌

  1. K. Hwang, Computer Architecture and Parallel Processing, McGraw-Hill, 1984
  2. H. El-Rewini, H. H. Ali, and T. Lewis, 'Task scheduling in multiprocessing systems,' IEEEComputer, pp. 27-37, Dec. 1995 https://doi.org/10.1109/2.476197
  3. A. Gerasoulis and T. Yang, 'On the granularity and clustering of directed acyclic task graphs,' IEEE Trans. Parallel Distrib. Syst., vol. 4, no. 6, pp. 686-701, June 1993 https://doi.org/10.1109/71.242154
  4. H. Stone, High-Performance Computer Architectures, Addison-Wesley Company, 1987
  5. H. Kasahara and S. Narita, 'Practical multiprocessing scheduling algorithm for efficient parallel processing,' IEEE Trans. Comput., vol. C-33, no. 11, pp. 1023- 1029, Nov. 1984 https://doi.org/10.1109/TC.1984.1676376
  6. H. Kasahara and S. Narita, 'Parallel processing of robot-arm control computation on a multimicroprocessor system,' IEEE J. Robotics Automation, vol. RA-1, no. 2, pp. 104-113, June 1985
  7. C. L. Chen, C. S. G. Lee, and E. S. H. Hou, 'Efficient scheduling algorithm for robot inverse dynamics computation on a multiprocessor system,' IEEE Trans. Syst., Man, Cybernetics, vol. 18, pp 729-743, Dec. 1988 https://doi.org/10.1109/21.21600
  8. B. Hellstrom and L. Kanal, 'Asymmetric mean-field neural networks for multiprocessor scheduling,' Neural Networks, vol. 5. pp. 671-686, 1992 https://doi.org/10.1016/S0893-6080(05)80044-9
  9. N. Ono and T. Tsugawa, 'A genetic algorithm for the genetic crew scheduling problem,' International Conference on Artificial Neural Nets and Genetic Algorithms, Springer-Verlag Wien New York, pp. 270-274, 1998
  10. J. Jozefowska, R. Rozycki, and J. Weglarz, 'AGMT genetic algorithm for some discrete-continuous scheduling problem,' International Conference on Artificial Neural Nets and Genetic Algorithms, Springer-Verlag Wien New York, pp. 273-276, 1995
  11. E. Ramat, G. Venturini, C. Lente, and M. Slimane, 'Solving the multiple resource constrained project scheduling,' Proceedings of the Seventh International Conference on Genetic Algorithms, pp. 489-496, Jul. 1997
  12. E. S. H. Hou, N. Ansari, and H. Ren, 'A genetic algorithm for multiprocessor scheduling,' IEEE Trans. Parallel Distrib. Syst., vol. 5, no. 2, pp. 113-120, Feb. 1994 https://doi.org/10.1109/71.265940
  13. B. Soucek and The IRIS Group, Dynamic, Genetic, and Chaotic Programming: The Six Generation, John Wiley & Sons, Inc., pp. 339-352, 1992
  14. P. -C. Wang and W. Korfhage, 'Process scheduling using genetic algorithms,' Proceedings of the Seventh IEEE Symposium on Parallel and Distributed Processing, pp. 638-641, Oct. 1995 https://doi.org/10.1109/SPDP.1995.530742
  15. R. C. Correa, A. Ferreira, and P. Rebreyend, 'Integrating list heuristics into genetic algorithms for multiprocessor scheduling,' Proceedings of the Eighth IEEE Symposium on Parallel and Distributed Processing, pp. 462-469, Oct. 1996 https://doi.org/10.1109/SPDP.1996.570369
  16. M. Schwehm and T. Walter, 'Mapping and scheduling by genetic algorithms,' Parallel Processing: CONPAR 94 - VAPP VI, Springer-Verlag, pp. 832-841, Sep. 1994
  17. M. R. Garey and D. S. Johnson, Computers And Intractability: A Guide to the Theory of NP-Completeness, W. H. FREEMAN, 1979
  18. D. E. Goldberg, Genetic Algorithms in Search, Optimization, and Machine Learning, Addison-Wesley Publishing Company, 1989
  19. L. Davis, Handbook Of Genetic Algorithms, Van Nostrand Reinhold, 1991