Docstoc

基于无向图理论的计算机网络k-划分优化遗传算法

Document Sample
基于无向图理论的计算机网络k-划分优化遗传算法 Powered By Docstoc
					                 管理科学与系统科学研究新进展
       ——第 6 届全国青年管理科学与系统科学学术会议论文集      2001 年·大连



基于无向图理论的计算机网络 k-划分优化遗传算法

                      黄新力 严广乐
                 (上海理工大学管理学院, 200093)


       摘要   本文分析了网络多划分优化问题的实质,提出运用无向图多划分理论
       对该问题加以研究,并结合问题本身的特点,设计了一种改进型遗传算法。
       该算法从适应度函数设计、遗传操作算子以及参数选取等方面对经典遗传算
       法进行了改进。实际研究结果表明该算法实现了计算机网络自动划分优化的
       目的,且算法性能优于经典遗传算法。
       关键词 遗传算法 无向图 k-划分 网络划分优化


1 引言
  在计算机网络的设计与管理中,为了改善网络性能,同时便于对网络实施控制管理,采
取的有效手段之一是将整个大的网络划分为多个较小的、相对独立的子网(该问题被称为“网
络 k-划分优化”问题,这里 k 指划分的子网数)。网络 k-划分优化问题,属于组合优化的范
畴,即根据输入的数据信息和网络基本拓扑模型,寻找可能的最佳网络配置,这是一个 NP
完全问题。对于该问题的研究,由于其计算复杂度随网络规模和需划分的子网数 k 的增大而
急剧增加,传统的启发式搜索方法已无能为力。近年来,遗传算法已被引入到该问题的求解
中来。遗传算法作为一种全局优化搜索算法,由于其本身所具有的全局收敛性和隐含的并行
性,加之其简单易用、鲁棒性强,能够轻易地获得问题的全局最优解,且问题越复杂,它相
对于其他算法的优越性越明显,故十分适合解决这类问题。但应用经典遗传算法求解网络的
k-划分优化问题时,其求解时间很长,且求得最优解的成功率很低。因而,有必要针对该具
体应用问题的特点,对经典的遗传算法加以改进。
  本文针对所研究的问题——网络 k-划分优化问题的实质进行理论分析,应用无向图多
划分优化理论加以研究,并结合网络 k-划分优化问题的具体特征,设计了一种改进遗传算
法,用于自动实现大规模网络的 k 划分优化。在该算法中,我们通过改进适应度函数、遗传
操作算子以及参数选取,既充分利用了遗传算法的全局搜索能力,又增强了遗传算法的局部
搜索能力,使算法在求解网络的 k-划分优化问题中具有较快的收敛速度和较高的成功率。


2 问题描述

2.1 网络 k-划分的原则
  a)   子网间的通信流量应尽可能小,即将彼此之间通信量较少的网络节点分配到不同的
子网中,以减少通过网络互连设备的开销;
  b)   子网内的通信流量应尽可能大,即将彼此之间通信量较大或通信频繁的网络节点分

                          35
                               管理科学与系统科学研究新进展
        ——第 6 届全国青年管理科学与系统科学学术会议论文集                                        2001 年·大连

配到同一个子网中,以提高子网的资源利用率、增强子网内聚力;
   c)   各子网的流量应尽量趋于平衡,从而保证网络负载均衡,以防止因新增网络设备而
导致子网性能急剧下降。


2.2 网络流量分布模型
   网络划分的一个重要依据是网络中任意一对站点间的通信量,因此可采用如下网络流量
分布矩阵来描述网络中的流量分布状况。假设网络中有 n 个节点,于是网络流量分布矩阵的
表达式可如下给出:

               w11           w12        w13  w1n 
              w              w22        w23  w2 n  wij  0, i  j
             21                                                      ( i, j  1,2,, n ) (1)
                                                 wij  w ji , i  j
                                                   
               wn1           wn 2       wn 3  wnn 
这里,元素 wij 代表第 i 站点与第 j 站点间链路的总流量,因此 wij=wji 成立。

   通过流量分布矩阵,可计算出网络的总流量  和每个服务器的输入/输出总流量  i :

              n 1      n
              wij                                                                  (2)
              i 1 j  i 1


                 n
          i   wij                                                                   (3)
                 j i


   通过对上述网络 k-划分问题的划分原则和网络流量分布模型的分析可知,该问题的实
质是研究无向图的多划分问题,即对于一无向图,将其顶点集划分为互不相交的 k 个子集,
求使这些子集间联系最少的一种划分。故可应用无向图多划分优化理论对此问题加以研究。


3 无向图多划分优化理论
   无向图多划分优化理论可概述为:

   定义    对于一无向图 G  (V , E , w) ,其中顶点集合 V  {v1 , v2 ,  , vn } ,边的集合

E  V  V ,用 w : E  R 定义边的权值。现将图 G 划分为 k 个顶点子集 P1, P2 ,  Pk ,且

P1  P2    Pk   ,称 P1, P2 ,  Pk 为图 G 的一个 k-划分,要求划分以后

          min(     w(v , v ))
               1i  j n
                                i    j                                                 (4)



                                                    36
                                           管理科学与系统科学研究新进展
         ——第 6 届全国青年管理科学与系统科学学术会议论文集                                                                2001 年·大连


其中 vi  Ps , v j  Pt ,                    s, t  {1,2,  , k } , 且 s  t 。

     因为图中所有边的权值是一个常量,求属于不同划分的顶点之间的边的权值之和的最小
                                     (4)
值问题,实际上也就是求同一划分内各顶点之间的边的权值之和的最大值问题。因此,
式和下式是等价的:
           max(     w(v , v ))
                 1i  j n
                                   i       j                                                                      (5)


其中 vi  Ps , v j  Pt ,                    s, t  {1,2,  , k } , 且 s  t 。


4 算法设计

4.1 经典遗传算法的不足
     ⑴、图的 k-划分问题划分后所得到的任一子集都不能为空,至少必须包含一个顶点。
经典遗传操作(尤其是交叉操作)不能保证满足这一约束条件,因此需要对其进行修正。
     ⑵、网络的 k-划分问题属于约束优化问题,经典遗传算法在产生非法解时丢弃,当合
法解产生概率较低时,该方法将浪费大量 CPU 时间。因此需要针对问题的约束条件构造算
子和编码,保证只产生合法解,同时收敛速度较快。


4.2 对经典遗传算法改进
4.2.1 编码表示
     编码表示方案的选取很大程度上依赖于问题的性质及遗传算子的设计。本文采取可直接
在解的表现型上进行遗传操作的自然数编码方式。设网络有 n 个节点,根据需要欲划分为 k
个子网,则染色体(即问题的一个解)可如下表示:

           x  ( g1 , g 2 ,  , g n ) ,                     其中 g i  {0,1,2,  , k  1} , i  {1,2, , n}

例如,对具有 30 个站点的网络,划分为 3 个子网的某种网络划分编码如图 1 所示:

       染色体 si:           1                     1        0             2          0        2        …         1        0
       网    络: 节点 1                    节点 2            节点 3          节点 4       节点 5    节点 6       …      节点 29    节点 30
                                                       图 1 基因型编码示意图
4.2.2 适应度函数定义
     根据图的 k-划分定义及划分原则,如下定义适应度函数 f(x):
           f ( x)  o( x)  r  o( x)  u
                        w(v , v )  r   w(v , v )  u
                      1i  j n
                                       i           j
                                                        1i  j n
                                                                      i     j          其中 g i , g j  {0,1,2,  , k  1}
                      gi  g j                          gi  g j



                                                                      37
                                  管理科学与系统科学研究新进展
                ——第 6 届全国青年管理科学与系统科学学术会议论文集                              2001 年·大连

其中 o(x)就是式(5)中的目标函数,即上面第二个等号后面的第一项; 为惩罚系数,
                                   r      0<r<1,
它根据个体 x 违反约束条件的程度而定,r 越大,约束条件要求越严格,否则约束条件比较
宽松。u 为解 x 是否为合法解的判定系数,可定义为:
                           0,     x 为合法解时
                    u=
                           1, 其他
4.2.3 选择操作
         为了保持适中的选择压力,本文采用转盘式选择策略,先计算出个体的相对适应值

    fi
             ,记为 Pi , i  {1,2, , n} 。然后,基于 Pi 进行选择操作。
f       i


4.2.4 改进的杂交操作
         为了避免过多地破坏有用的模式(Schema),本文采用两个交叉点位置相距较小的两点
杂交算子,另外,为避免产生空划分解,在杂交操作之后还引入空划分检查校正操作,如图
2 所示:

父体 A: 0 0 0 1 0 1 0 3 0 2 0 2               000102020102          000103020102
                                 两点交叉                      检查校正
父体 B: 0 0 0 3 0 2 0 2 0 1 0 3               000301030203          000301030203

                                           图 2 改进的杂交操作示意图


4.2.5 变异操作
         变异操作可以使搜索遍及整个个体空间。从网络 k-划分角度看,变异操作使网络节点
在各划分中进行重新分配,以维持种群的多样性,防止出现早熟现象,本算法中的变异操作
不是以经典的小概率发生,而是以大概率(1.00)发生,采取连续多次进行对等基因位对换
操作来实现变异。同时鉴于变异幅度过大可能会破坏最优解,故对换次数较少。


4.3 算法描述
         上述求解网络 k-划分优化问题的改进遗传算法描述如下:
{
         随机产生初始化种群 X(0)={x1(0),x2(0),…,xn (0)};                          //n:种群规模
         t=0;                                                  //t:演化代数,初值 t =0
         根据适应度函数定义,计算 X(0)中每个个体的适应度值 f(xi);
         while(fmax(x(t))- fmin(x(t))>ε)               // fmax(x(t))- fmin(x(t))>ε为停机准则
         {
                计算种群 X(t)中各个体的适应度值比例,确定选择概率 pi;
                for(k=1;k≤n;k=k+2)
                {
                    根据选择概率 pi 和转盘式选择策略在 X(t)中选择两个个体 xa,xb;

                                                  38
                                管理科学与系统科学研究新进展
        ——第 6 届全国青年管理科学与系统科学学术会议论文集                           2001 年·大连

              以概率 pm 对个体 xa,xb 执行变异操作,得到两个新个体 xam,xbm;
              rdm=random[0,1];
              if(rdm≤pc)                                    // p c 为杂交概率
              {
                     对个体 xam,xbm 执行杂交操作,得到两个新个体 xamc,xbmc;
                     对个体 xamc,xbmc 执行空划分检查校正操作,得到两个新个体 x1,x2;
              }
              else
              {
                     x1= xam;
                     x2= xbm;
              }
              将 x1,x2 插入到新种群 X(t+1)中;
         }
         计算 X(t+1)中个体的适应度值,并用 X(t)中适应度值最大的个体 xmax(t)替换 X(t+1)
         中适应度值最小的个体 xmin(t+1);
         t=t+1;
    }
    输出 X(t);
}


5   算法收敛性分析
        [2]
    定理 :在选择算子前保留当前最好解的 SGA 能以概率收敛到全局最优解。
    本文设计的算法属于种群非重叠、遗传操作重叠结构的 SGA(Simple Genetic
Algorithm),并在选择操作前保留当前最好解,依据定理,该算法以概率收敛到全局最优解。


6 实验研究
    本实验对一个具有 30 个节点的网络进行 3 个子网的划分优化。运用上述改进的遗传算
法,经过多次试验与统计分析,兼顾运算速度与网络划分配置解的优化,算法中选取种群大
小 n=100,交叉概率 pc=0.95,变异概率 pm=1.00,停机准则参数  =0.01,问题的约束条件为
∣SubNet0∣=∣SubNet1∣=∣SubNet2∣=10,其中 SubNetk 为第 k 个子网中网络节点的数目,
                                           SubNetk 10
k=0,1,2。对第 k 个划分,惩罚系数 rk  1  (1 / 3)                   ,当且仅当 SubNetk=10 时,

u=0,否则 u=1。
    表 1 将该改进遗传算法与经典遗传算法划分结果进行比较,可以看出前者的子网内流量
总体较后者有所提高,且流量在 3 个子网中的分配更为均衡;而子网间流量低于后者,且子
网间流量小于网络总流量的 1/10,这表明网络通信流量基本上都在子网内部流动,子网负载

                                      39
                   管理科学与系统科学研究新进展
      ——第 6 届全国青年管理科学与系统科学学术会议论文集                      2001 年·大连

比较均衡,满足 2.1 节中的网络划分原则,证明该改进算法是有效的,且性能优于经典遗传
算法。



                        表 1 实际网络划分结果对比
      网络划分算法            改进的网络 k-划分遗传算法                 经典遗传算法
   各子网内流量(%)              29.27~35.66~26.28           27.45~39.29~21.76
    子网间流量(%)                    8.79                        11.50


  表 2 考察有无空划分检查校正操作对算法性能的影响,实验结果表明引入检查校正操作
后虽然算法收敛时间有所增加,但成功率有明显的增加,算法性能得以改进。

               表 2 有无空划分检查校正操作对算法性能的影响结果比较
                         有空划分检查校正操作                  无空划分检查校正操作
   求解平均时间(ms)                   8765                        6637
      成功率(%)                    94.1                        81.6


                                 结果表明随着 pm 的增大,
  表 3 考察了变异概率 pm 分别取不同的值时对算法性能的影响,
算法收敛于局部最优的可能性明显减小,采用 1.00 的变异概率将使算法性能达到最佳。

             表 3 变异概率 pm 分别取不同的值时对算法性能的影响结果比较
 变异概率 pm         1.00           0.60          0.30                  0.01
求解平均时间(ms)       8765           5334          3627                  2294
 成功率(%)          94.1           83.6          78.2                  61.1


  上述实验结果表明,本文设计的用于网络 k-划分优化问题的改进遗传算法是正确的和
高效的。


7 结论与讨论
  本文利用无向图的多划分理论研究网络的 k-划分问题,并在此基础上针对该问题的特点
和经典遗传算法在解决该类问题上的不足,通过对适应度函数设计、遗传操作、参数选取等
方面加以改进,设计了一种改进的遗传算法,并通过在一个具体网络 k-划分优化问题中的
成功应用,克服了经典遗传算法的缺陷,提高了算法的性能,证明了该改进算法的合理性和
有效性。此外,如何引入更有效的遗传操作,如何确定适应性更高的惩罚函数以及如何使算
法适用于更宽松灵活的约束条件是今后有待进一步研究的问题。


参考文献
1 陈国良, 王煦法, 庄镇泉等. 遗传算法及应用. 人民邮电出版社,1996

                                 40
                                 管理科学与系统科学研究新进展
           ——第 6 届全国青年管理科学与系统科学学术会议论文集                                                 2001 年·大连

2 潘正君, 康立山, 陈毓屏. 演化计算.北京: 清华大学出版社,1998
3 Songerwala M. Efficient solutions to the network division problem. [thesis].the Curtin University of Technology,
  1994
4 LaszewskiV.Gregor. Intelligent structural operators for the k-way graph partitioning problem. ICGA’97.Morgan
  Kaufman,1991


       Design a Genetic Algorithm for Optimizing k-Way Networks
       Partitioning Problem Based on Directionless Graph Theory

                                       Huang Xinli          Yan Guangle
    (School of Management,Univ. of Shanghai for Sci. & Tech.,Shanghai 200093,China)


Abstract      The Optimization of k-way networks partitioning is a problem of combination
Optimization,and the classical genetic algorithms (SGA) can not solve the problem efficiently. In
this Paper,the theory of multi-way graph partitioning is applied to analyze the problem,and an
improved genetic algorithm is presented based on the characteristics of the problem. The
algorithm is improved in the following three aspects: the definition of fitness function,the genetic
operators and the parameters selection. Some experimental results in an application example have
verified the validity and efficiency of the algorithm.
Keywords         Genetic algorithm              Directionless          graph             k-Way     partitioning
Optimization of networks partitioning




                                                       41

				
DOCUMENT INFO
Shared By:
Categories:
Stats:
views:29
posted:11/29/2012
language:Unknown
pages:7
Description: mab paper ,including economic management accounting ans also
201212 29 201212 29
About download professional profile