1998年,美国海军水面战中心首次提出“全舰计算环境”(Total Ship Computing Environment,TSCE)的概念。TSCE是支持开放式体系结构的美军新一代水面舰艇系统集成技术
[1],由基础设施和各种领域应用组成,将舰艇各类运算操作、基础数据等集成计算,对所有计算资源统一调度管理。随着科学技术的进步,传统的信息化武器装备在设计上难以满足作战能力的需求,需要对舰艇信息装备系统架构进行重新设计,借鉴TSCE技术,探索新一代舰艇一体化信息系统集成技术——公共计算环境(Common Computing Environment,CCE)。公共计算环境是基于虚拟机技术和云计算技术的新一代舰艇信息系统集成技术,能有效将舰艇电子信息设备硬件、机架、服务器和通信媒介等整合到公共网络核心中,实现基础设施的虚拟化管理,并创建一个统一的计算环境。公共计算环境的结构特征主要有以下几点:1)资源集中部署,统一管理;2)全舰采用统一的结构框架;3)具有较强的可裁剪、可扩展能力
[2]。
公共计算环境是一种云环境,虚拟机技术和云计算技术的应用提高了计算资源的利用率,其中,任务调度中的完成时间和负载均衡对公共计算环境的整体性能有重要影响。任务分配中,优化完成时间,可以提升公共计算环境中任务的处理效率。优化负载均衡,将任务从利用率高的资源中分配给利用率低的资源,确保没有单个资源被淹没或未被充分利用,以达到较高的吞吐率和较好的资源利用率
[3]。
云资源具有动态性、多样性和复杂性,这些资源的管理是一项复杂的工作。多虚拟机系统上的任务调度问题是NP完全问题,因此,许多研究人员提出了启发式和元启发式算法来解决这个问题,其中,启发式算法包含聚类算法、调度算法以及其他算法等
[4]。在众多启发式算法和元启发式算法中,本文选择了蚁群优化算法(Ant Colony Optimization,ACO)求解云环境中的任务调度问题。蚁群优化算法是解决NP完全问题的有效方法,如旅行商问题、图着色问题、车辆路径问题、调度问题等
[5⇓-7]。蚁群优化算法从蚁群寻找食物的自然行为中获得灵感,并利用蚂蚁生活中的搜索范围、所处环境、觅食、移动、避障以及散播信息素等规律来找出最优解
[8]。本文使用改进的蚁群优化算法,在可用资源集上调度独立任务,并结合非支配遗传算法(Non-dominated Sorting Genetic Algorithms-Ⅱ,NSGA-Ⅱ)中的非支配排序思想进行多目标优化,实现负载均衡,减少最大完成时间。