Human resource allocation or recommendation based on multi-factor criteria in on-demand and batch scenarios