摘要

Users are willing to execute bag-of-task applications consisting of multiple tasks on clouds, since cloud resources are delivered in a pay-as-you-go manner. Given multiple bag-of-task applications to be executed with user-specified quality-of-service demands, a cloud provider has to outsource some tasks to public clouds when its private cloud has insufficient resources to afford all applications' tasks. The key issue is how to schedule tasks on hybrid clouds (environments consisting of a private cloud and multiple public clouds) for maximizing the cloud provider's profit while meeting the quality-of-service demands. To solve this problem, we propose an efficient particle swarm optimization algorithm (EPSO) and three hybrid ones (HEPSO1-HEPSO3), in which task sequences are considered as solutions. A mapping operator (BBMO) is developed to map particles to solutions and a quick task dispatching method containing an acceleration method is designed to calculate solutions' objectives. Experimental results show that EPSO not only outperforms an existing PSO (the best algorithm for solving a problem that is a special case of ours) significantly but also achieves a 11.48x speedup. The HEPSO1 to HEPSO3 outperform EPSO. The BBMO outperforms the well-known ranked-order value rule and achieves a 5.47x speedup. The acceleration method in quick task dispatching brings a 2.69x speedup.