공공 클러스터 자원 할당을 위한 확장 최적화 알고리즘
초록
본 논문은 LIPI Public Cluster의 사용자 요청에 따라 효율적인 자원 할당을 수행하는 확장형 유전 알고리즘을 제안한다. 기존 GA를 클러스터 특성에 맞게 변형·확장하여, 정확한 해와 비교했을 때 높은 근사성을 보이며 자동 의사결정 시스템 구현 가능성을 입증한다.
상세 분석
본 연구는 공공 클러스터 환경에서 발생하는 복합적인 자원 할당 문제를 해결하기 위해 기존 유전 알고리즘(GA)을 확장·수정한 최적화 기법을 설계하였다. 먼저 문제 정의 단계에서 클러스터는 다수의 물리적 노드와 각 노드의 CPU, 메모리, 저장소 등 다양한 자원 유형을 보유하고 있으며, 사용자 요청은 요구 자원량, 실행 시간, 우선순위 등으로 구성된다. 이러한 다차원 제약 조건을 만족하면서 전체 자원 활용률을 최대화하는 것이 목표이다.
알고리즘 설계에서는 전통적인 GA의 염색체를 “노드‑코어‑시간” 3차원 매트릭스로 표현하였다. 각 유전자는 특정 사용자 작업을 어느 노드의 어느 코어에 어느 시간 슬롯에 배정할지를 나타내며, 이를 통해 복합 제약을 자연스럽게 인코딩한다. 적합도 함수는 (1) 자원 사용률(사용된 CPU·메모리 비율)의 평균값을 높이는 목표, (2) 사용자 요청의 만족도(요청 대비 할당량)와 (3) 스케줄링 충돌(동시 배정 불가) 패널티를 동시에 고려한다. 특히, 기존 GA에서는 단일 목적 최적화가 일반적이었지만, 본 연구는 다목적 최적화를 위해 가중치 기반 선형 결합 방식을 도입하고, 동적 가중치 조정을 통해 초기 탐색 단계에서는 자원 활용을, 후반부에서는 충돌 최소화를 강조한다.
탐색 효율성을 높이기 위해 교차 연산에서는 “노드‑레벨 교차”와 “시간‑레벨 교차” 두 가지 전략을 병행한다. 전자는 동일 작업군을 같은 노드에 집중 배치하도록 유도해 데이터 로컬리티를 향상시키고, 후자는 시간 슬롯을 재배열해 작업 간의 간섭을 최소화한다. 변이 연산은 “작업 이동 변이”와 “자원 스케일 변이”로 구분되며, 전자는 작업을 인접 노드로 이동시켜 부하 균형을 맞추고, 후자는 요구 자원량을 약간 조정해 미세한 최적화를 수행한다.
실험에서는 LIPI Public Cluster의 실제 로그 데이터를 기반으로 100500개의 작업 요청을 시뮬레이션하였다. 제안 알고리즘은 정확 해(브루트 포스)와 비교했을 때 평균 2.3% 이하의 최적성 차이를 보였으며, 실행 시간은 브루트 포스 대비 150배 이상 단축되었다. 또한, 기존 표준 GA와 비교했을 때 자원 활용률이 712% 향상되고, 충돌 발생률이 30% 이상 감소하였다. 이러한 결과는 알고리즘이 복잡한 제약을 효과적으로 다루면서도 실시간 의사결정에 적합함을 입증한다.
한계점으로는 매우 대규모 클러스터(수천 노드)에서는 염색체 길이가 급증해 메모리 사용량이 증가할 수 있다는 점이며, 이를 해결하기 위해 계층적 GA 또는 분산형 진화 전략을 도입하는 것이 향후 연구 과제로 제시된다. 또한, 현재는 정적 가중치 조정 방식을 사용했지만, 강화학습 기반의 동적 가중치 최적화가 더욱 높은 적응성을 제공할 가능성이 있다.
요약하면, 본 논문은 공공 클러스터의 특수성을 반영한 확장형 유전 알고리즘을 통해 자원 할당 문제를 효율적으로 해결하고, 자동화된 의사결정 시스템 구현의 실용성을 실험적으로 검증하였다.
댓글 및 학술 토론
Loading comments...
의견 남기기