Skip to main content
QUICK REVIEW

[논문 리뷰] A Case Study: Using Genetic Algorithm for Job Scheduling Problem

Burak Tağtekin, Mahiye Uluyağmur Öztürk|arXiv (Cornell University)|2021. 06. 09.
Distributed and Parallel Computing Systems참고 문헌 20인용 수 5
한 줄 요약

이 논문은 DevOps CI/CD 파이프라인에서 작업 우선순위 목록과 머신 할당을 자동으로 생성하기 위해 유전 알고리즘(GA) 기반 접근법을 제안하며, 제작 기간(makespan)과 머신 사용량을 모두 최소화한다. 작업 우선순위와 자원 요구사항을 고유한 염색체 표현 방식으로 인코딩하고 가중치가 부여된 적합도 함수를 사용함으로써, 수동 스케줄링 대비 20% 향상된 빌드 효율성을 달성한다.

ABSTRACT

Nowadays, DevOps pipelines of huge projects are getting more and more complex. Each job in the pipeline might need different requirements including specific hardware specifications and dependencies. To achieve minimal makespan, developers always apply as much machines as possible. Consequently, others may be stalled for waiting resource released. Minimizing the makespan of each job using a few resource is a challenging problem. In this study, it is aimed to 1) automatically determine the priority of jobs to reduce the waiting time in the line, 2) automatically allocate the machine resource to each job. In this work, the problem is formulated as a multi-objective optimization problem. We use GA algorithm to automatically determine job priorities and resource demand for minimizing individual makespan and resource usage. Finally, the experimental results show that our proposed priority list generation algorithm is more effective than current priority list producing method in the aspects of makespan and allocated machine count.

연구 동기 및 목표

  • 복잡한 DevOps 파이프라인에서 작업 우선순위 목록을 자동으로 생성하여 대기 시간과 자원 경쟁을 줄이기 위해.
  • 제작 기간과 사용된 머신 수를 최소화하여 다중 목표 최적화 문제를 해결하기 위해.
  • 작업 우선순위와 머신 전용 요구사항(유형 및 수량)을 모두 인코딩하는 새로운 염색체 표현 방식을 개발하기 위해.
  • 빠른 사전 확인 알고리즘을 도입하여 GA의 확장성과 성능을 향상시키기 위해.
  • 작업 순서를 유지하고 중복을 방지하기 위해 다른 부모로부터 유전자를 채워서 간격을 메우는 순서 기반 교배 방법을 사용하여 교배 효율을 향상시키기 위해.

제안 방법

  • 고유한 염색체 표현 방식이 각 작업의 작업 우선순위 순서와 머신 할당 세부 정보(머신 유형 및 수량)를 인코딩한다.
  • 가중치가 부여된 적합도 함수가 인구 집단 내 최대 실행 시간에 의해 가중된 실행 시간과 최대 머신 수에 의해 가중된 머신 수를 결합하여 해를 평가한다.
  • 적합도 함수는 종속성 제약 조건을 포함하여, 작업이 모든 종속 항목이 완료된 후에만 스케줄링되도록 보장한다.
  • 빠르고 반복적인 우선순위 목록 검증 알고리즘(알고리즘 3)이 가장 높은 종속 전조 작업 뒤에 작업을 배치함으로써 사전 차단(deadlock)을 방지한다.
  • 후손을 생성하기 위해 순서 기반 교배 방법을 사용하며, 작업 순서를 유지하고 중복을 방지하기 위해 다른 부모의 유전자로 간격을 메운다.
  • 알고리즘은 세 가지 시나리오에서 테스트되었다: 기준 실행 시간과의 비교 분석, 일관성 평가, GA 실행 시간을 포함한 총 해결 시간 측정.

실험 결과

연구 질문

  • RQ1유전 알고리즘이 DevOps 작업 스케줄링 파이프라인에서 제작 기간과 머신 수를 동시에 효과적으로 최소화할 수 있는가?
  • RQ2제안된 자동화된 우선순위 목록 생성 방식은 수동 스케줄링 대비 실행 시간과 자원 효율성 측면에서 어떻게 비교되는가?
  • RQ3작업 순서와 머신 할당을 결합한 새로운 염색체 표현 방식이 해 품질과 수렴 속도에 어떤 영향을 미치는가?
  • RQ4빠르고 사전 차단이 없는 우선순위 목록 검증 알고리즘이 대규모 스케줄링 문제에서 계산 오버헤드를 크게 줄일 수 있는가?
  • RQ5순서 기반 교배의 사용이 작업 스케줄링에서 GA의 효율성과 확장성에 얼마나 기여하는가?

주요 결과

  • 제안된 GA 기반 우선순위 목록 생성 방식은 실제 CI/CD 파이프라인에서 수동 스케줄링 대비 평균 제작 기간을 약 20% 감소시켰다.
  • 알고리즘은 다수의 실행에서 일관되게 근사 최적의 결과를 도출하여 높은 신뢰성과 낮은 성능 변동성을 보였다.
  • 두 번째 우선순위 목록 검증 알고리즘(알고리즘 3)은 첫 번째 버전 대비 약 30배 빠르게 작동하여 더 큰 다양성과 더 큰 인구 집단을 가능하게 했다.
  • GA 계산 시간을 포함한 총 해결 시간(제작 기간 + GA 실행 시간)이 기준 수동 방법보다 짧게 유지되었으며, 이는 GA의 계산 오버헤드가 여전히 수용 가능하다는 것을 의미한다.
  • 대규모 작업 목록(400개 이상의 작업)에서 순서 기반 교배의 사용은 PMX 대비 교배 작업에 소요되는 시간을 크게 줄였다.
  • 염색체 표현 방식은 작업 종속성과 머신 전용 요구사항을 성공적으로 인코딩하여 다중 목표 최적화를 효과적으로 수행할 수 있었다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.