CUDA 기반 병렬 인공 원생동물 최적화기, 계산 속도의 혁신
초록
본 논문은 메타휴리스틱 알고리즘인 인공 원생동물 최적화기(APO)의 계산 속도 문제를 해결하기 위해 CUDA를 활용한 GPU 기반 병렬 버전(cuAPO)을 제안합니다. CEC2022 벤치마크 함수와 이미지 스레시홀딩 실험을 통해 기존 순차 버전 대비 최대 6.7배의 성능 향상을 입증하였습니다.
상세 분석
이 논문의 기술적 핵심은 메타휴리스틱 알고리즘의 고질적인 문제인 계산 부하를 GPU의 대규모 병렬 처리 능력으로 해결한 점에 있습니다. 인공 원생동물 최적화기(APO)는 원생동물의 생존 전략(휴면, 생식, 자가영양/타가영양 섭식)을 모방한 탐색-활용 균형 알고리즘으로, 기존 연구에서 32개의 최신 알고리즘을 능가하는 성능을 입증받았습니다. 그러나 개체군 내 모든 개체(원생동물)의 위치를 반복적으로 평가 및 갱신해야 하므로 문제 차원과 개체군 크기가 증가할수록 계산 시간이 급격히 늘어나는 한계가 있었습니다.
cuAPO는 이러한 병목 현상을 해결하기 위해 APO 알고리즘의 핵심 연산 단위를 GPU 스레드에 매핑합니다. 구체적으로, 각 CUDA 스레드가 개체군 내 한 개체(원생동물)의 전체 갱신 과정(휴면, 생식, 섭식 행동 선택 및 새 위치 계산)을 담당하도록 설계되었습니다. 이는 개체 간 독립적인 연산이 많은 메타휴리스틱 알고리즘의 특성과 GPU의 SIMD(Single Instruction, Multiple Data) 아키텍처가 매우 잘 부합하는 사례입니다. 논문에서는 스레드당 500개의 스레드를 가진 블록을 사용하고, 전체 블록 수는 개체군 크기에 따라 동적으로 결정되는 커널 설정을 보여줍니다.
성능 평가 결과가 매우 인상적입니다. 1000차원의 고차원 공간에서 CEC2022 벤치마크 함수(Bent Cigar, HGBat 등)에 대해 테스트한 결과, 개체군 크기가 10,000에 달하는 대규모 문제에서도 평균 3~6배 이상의 지속적인 속도 향상을 보였습니다. 특히 벤트 시가 함수에서 개체군 크기 2,000일 때 6.61배, HGBat 함수에서 6.72배의 최고 속도 향상을 기록했습니다. 이는 GPU의 수천 개의 코어가 개체별 계산을 동시에 처리함으로써 얻은 명확한 성과입니다. 또한 이미지 스레시홀딩이라는 실제 응용 문제에서도 유의미한 속도 개선을 확인하여 실용성을 입증했습니다. 이 연구는 계산 집약적인 최신 메타휴리스틱 알고리즘의 실시간 적용 가능성을 크게 높였다는 점에서 중요한 의미를 가집니다.
댓글 및 학술 토론
Loading comments...
의견 남기기