论文部分内容阅读
随着网络技术的迅速发展和广泛应用,使得网上信息交换量急剧增长,客户对应用系统性能、安全方面的要求也越来越高,传统的系统硬件升级方法已无法满足应用需求。当使用多台服务器来分担负载的时候,可以将相同的一种服务使用多台的服务器来提供,也可以让不同的服务器用在不同的方面。但由于网络访问的突发性,使得很难确定哪些页面造成的负载太大,因此对于大负载的网络,根本的解决办法还需要应用网络负载平衡技术。 本文根据网络负载平衡的基本目的,将遗传算法和模拟退火算法有机的结合起来,形成了一种适合网络负载平衡的新算法。该算法改善了传统遗传算法的性能,加快了算法的收敛速度,增强了算法的全局收敛性,提高了网络资源的利用率,加强了网络负载平衡的能力。本文主要的研究工作如下: 1、根据网络负载平衡的基本思想,设计数字串的编码方式,使编码方式适合实际网络地需要,更简单、直观,在对个体进行评估时也无需解码过程。同时为了避免违反优先约束问题,还提出了对该数字串编码的修补方法。 2、分析了传统遗传算法的不足,并依据网络负载平衡的根本目的:缩短作业的响应时间和提高资源的利用率,改进了传统遗传算法的适应度函数,及其选择、交叉、变异等算子。在适应度函数的设计中引入模拟退火算法,加入退火温度,使得在温度高时(遗传算法的前期),适应度相近的个体产生的后代概率相近;而当温度不断下降后,使适应度函数的作用加强,使适应度相近的个体适应度差异放大,从而使得优秀的个体优势更明显。 3、放弃了传统遗传算法的轮盘赌选择法,采用了选择概率随适应度值成比例的选择方法,并加入最优保存法,使适应度好的个体尽量保存到了下一代群体中,有效的加快了算法的收敛速度。 4、借鉴Srinivas等人提出的交叉概率P_c和变异概率P_m随适应度函数值自动改变的方法,建立P_c和P_m,使适应度函数值小的个体,具有较大的交叉概率和变异概率,有利于加快算法收敛速度。当陷入局部极值时,适应度函数值较大的个体对应的P_c、P_m也将增大,有利于避免“早熟”问题。