论文部分内容阅读
并行与分布式处理一直是当前科技研究、发展与应用的热点领域,是天气预报、核爆炸模拟、电子碰撞模拟、风洞雷诺数值计算以及金融服务等科学计算与数据服务处理领域的重要解决手段。资源共享与管理是并行分布式系统的核心和关键技术之一,任务调度对于资源的有效利用起到非常关键的作用,是几十年来学术界研究的重点之一。调度是一个NP难问题,目前的很多启发式方法在寻优能力等方面仍存在缺陷。随着人工智能的发展和成熟,其中一个重要分支一一计算智能理论得到广泛的应用。应用计算智能已解决了环境、经济、管理等领域的诸多复杂问题,该方法模拟人类和生物智能行为的计算方法,为搜索、分类等提供了新的求解方式。本文将部分经典的计算智能方法引入到并行与分布式系统的调度策略设计中,以期突破传统方法在自适应、组合优化等方面的局限性,本文的主要研究工作如下:(1)针对并行分布式系统中的多用户网络应用,将任务和资源动态性质转化为随机分布,基于排队论将调度问题定义为一个非线性规划问题。但是该方法只能用于特定分布,缺乏适应性。因此引入机器学习方法到调度中,将调度定义为马尔可夫决策过程,提出了一种能适应任务到达和资源性能动态性的调度算法。相比于第一种方法,此方法通过学习能够主动适应分布式系统中存在的不确定性,从而提高调度性能。提出的算法具有较好的鲁棒性,其较强的适应能力使得调度之后任务的平均响应时间较小。(2)上述集中式调度方法适用于小规模的并行分布式系统,在大规模系统中,分布式调度更为普遍,根据资源特性建立了一个分层的多角色的任务调度框架。在分布式调度中,调度器不仅需要适应任务到达的随机性和系统负载的动态性,而且还需要适应其他调度器分配策略的影响。对于其中的合作型调度问题,基于任务流之间存在相互关系将其定义为马尔可夫决策过程,并且基于强化学习提出了相应的调度算法,使得调度器能够主动学习任务到达和执行的相关知识,以及适应相邻调度器分配策略。对于自利型调度问题,建立了一个非合作博弈模型,并提出了纳什均衡联合调度策略的分布式学习算法,该算法在任务的期望响应时间和公平性方面均有较好的性能。(3)上述两个算法的调度模型中没有考虑数据本地化对调度的影响,而网格中数据密集型应用在计算时需要频繁地访问存储资源,计算和存储资源调度的协同成为调度的关键。针对网格中数据密集型应用,提出了融合计算和存储资源的调度模型。该模型将传统的调度器分为三层,且在每一层扮演不同的角色:在第一层中,为一个总的调度器,它负责收集信息。第二层和第三层中各包含了多个小的调度单元,使得应用程序的调度能够并行执行。在此调度模型基础上,提出了并行的遗传算法和并行的禁忌搜索算法用于解决分布式系统中任务调度和存储资源选择问题,从而达到减小应用完成总时间的目的。(4)资源的异构性是调度模型中另一个不可忽视的元素,现有并行分布式系统中资源具有不同的可用性是一个重要的特点,在这种情况下,如何提升系统的可用性,满足更多应用的可用性需求是调度面临的新问题。针对可用性需求,提出了 makespan(调度长度)和可用性双目标优化问题。首先,建立了系统的任务完成时间和可用性的形式化模型,将调度定义为一个整数规划问题;然后在计算资源和任务可用性已知前提下,基于蚁群算法提出了一个满足应用可用性需求的最小化makespan的任务调度算法。最后,针对上述算法得到的调度方案,给出了makespan和可用性双目标下任务迁移条件和优化方法,此优化操作在不增加调度长度的前提下,增加系统可用性。在可用性异构的分布式系统中,该算法针对任务完成时间和系统可用性双目标性能优化方面是有效的。