본 발명에 따른 태스크 할당 방법은 복수의 태스크를 투영하여 태스크 벡터(B)를 생성하는 단계; 각각 적어도 하나의 워커를 포함하는 W개의 클러스터에 대응하여 W개의 클러스터 벡터(D1, ... , DW)를 생성하는 단계; 상기 W개의 클러스터 벡터(D1, ... , DW)를 결합하여 사전 행렬(Dictionary matrix)(D)를 생성하는 단계; 상기 태스크 벡터(B)와 상기 사전 행렬(D)에 대하여 스파스 최적화(Sparse Optimization)를 이용하여 스파스 코드(c)를 산출하는 단계; 상기 사전 행렬(D)과 상기 스파스 코드(c)에 기초하여, 상기 W개의 클러스터 중에서 J개의 클러스터를 선택하는 단계; 및 상기 복수의 태스크 각각에 상기 J개의 클러스터에 포함되는 워커들을 할당하는 단계를 포함한다.