CN108108815A - 基于改进遗传算法的虚拟网络映射方法及装置 - Google Patents
基于改进遗传算法的虚拟网络映射方法及装置 Download PDFInfo
- Publication number
- CN108108815A CN108108815A CN201711329693.9A CN201711329693A CN108108815A CN 108108815 A CN108108815 A CN 108108815A CN 201711329693 A CN201711329693 A CN 201711329693A CN 108108815 A CN108108815 A CN 108108815A
- Authority
- CN
- China
- Prior art keywords
- virtual network
- chromosome
- mrow
- virtual
- mapping
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Genetics & Genomics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Physiology (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于改进遗传算法的虚拟网络映射方法及装置,其中方法包括:将每个虚拟网络节点映射方案编码为一个染色体,以获得编码后的多个染色体;对多个染色体的每个染色体进行交叉、变异、可行性检查和选择操作;将虚拟链路消耗的带宽资源作为模型的适应度函数;根据适应度函数得到虚拟网络请求中所有的虚拟链路映射方案,并检查所有的虚拟链路映射方案的可行性,以实现虚拟网络映射。该方法可以通过改进的变异操作来进一步提高虚拟节点映射方案的质量,有效缩短种群初始化过程时间,加快迭代的收敛速度,提高物理网络资源的利用率。
Description
技术领域
本发明涉及遗传算法技术领域,特别涉及一种基于改进遗传算法的虚拟网络映射方法及装置。
背景技术
目前的遗传算法主要采用如图1所示的流程来求解相关问题。第一步,对算法的参数进行初始化,包括初始种群大小、交叉概率、变异概率等;第二步,对种群进行初始化操作,一般采用某种方法生成若干种解决方案;第三步,对种群中的粒子两两进行交叉操作,产生适应度更高的粒子;第四步,对种群中的粒子进行变异操作,产生适应度更高的粒子;第五步,看看产生的粒子是否满足指定的精度要求,如果是,则结束程序,否则判断是否达到迭代最大次数,如果是,则结束程序,否则根据适应度函数选择一定数量的粒子作为新的种群,重新开始下一次的迭代操作。这里是把每个虚拟网络请求的节点映射方案看作一个粒子。把虚拟网络请求的链路带宽消耗作为适应度函数,通过遗传算法的交叉、变异、选择等操作,逐步进化高质量的虚拟网络节点映射方案。
然而,现有遗传算法主要缺点在于:种群初始化操作过于耗时,并且迭代收敛时间过长,需要大量的计算求解时间,以及没有在每次迭代之后,进行优化操作,导致每次迭代产生的粒子质量不高,增加了迭代的次数和迭代的时间。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的一个目的在于提出一种基于改进遗传算法的虚拟网络映射方法,该方法可以有效缩短种群初始化过程时间,加快迭代的收敛速度,提高物理网络资源的利用率。
本发明的另一个目的在于提出一种基于改进遗传算法的虚拟网络映射装置。
为达到上述目的,本发明一方面实施例提出了一种基于改进遗传算法的虚拟网络映射方法,包括以下步骤:将每个虚拟网络节点映射方案编码为一个染色体,以获得编码后的多个染色体;对所述多个染色体的每个染色体进行交叉、变异、可行性检查和选择操作;将虚拟链路消耗的带宽资源作为模型的适应度函数;根据所述适应度函数得到虚拟网络请求中所有的虚拟链路映射方案,并检查所述所有的虚拟链路映射方案的可行性,以实现虚拟网络映射。
本发明实施例的基于改进遗传算法的虚拟网络映射方法,可以通过改进的变异操作来进一步提高虚拟节点映射方案的质量,通过提出的一种新型的种群初始化操作来平衡虚拟节点映射方案质量和求解时间,在每次迭代之后加入优化操作来进一步减少算法的迭代收敛时间,从而可以有效缩短种群初始化过程时间,加快迭代的收敛速度,提高物理网络资源的利用率。
另外,根据本发明上述实施例的基于改进遗传算法的虚拟网络映射方法还可以具有以下附加的技术特征:
进一步地,在本发明的一个实施例中,所述将每个虚拟网络节点映射方案编码为一个染色体,具体包括:根据一个包含n个虚拟节点的虚拟网络请求编码得到一个n维的向量染色体,n为整数,其中,所述染色体的维度由虚拟网络请求中虚拟节点的个数得到,所述染色体的数值代表虚拟节点映射到的物理网络节点的编号。
进一步地,在本发明的一个实施例中,所述对所述多个染色体的每个染色体进行交叉、变异、可行性检查和选择,进一步包括:在获得所述多个染色体编码后,确定种群初始化的数目,以初始化一个种群作为问题的初始解;将父代样本两两分组,以进行部分映射交叉,并消除冲突的数字编号;任意选取两个点,并互换数值编号,生成新群体;验证任意染色体是否是可行解;将适应度排满足预设条件的个体选择出来,以作为父代群体。
进一步地,在本发明的一个实施例中,所述适应度函数为:
其中,f(X)为适应度函数,X为一个合法的染色体,BW为带宽需求,v代表虚拟网络,lv代表具体的一条虚拟链路,hops代表跳数,Lv代表虚拟链路集合。
进一步地,在本发明的一个实施例中,所述根据所述适应度函数得到虚拟网络请求中所有的虚拟链路映射方案,进一步包括:检查节点的计算容量约束条件;根据最短路径算法求得所述虚拟网络请求中所有的虚拟链路映射方案;检查所述所有的虚拟链路映射方案的可行性;如果可行,则所述适应度函数表示虚拟网络映射方案的开销;如果不可行,则所述是应付函数的值设置为预设值。
为达到上述目的,本发明另一方面实施例提出了一种基于改进遗传算法的虚拟网络映射装置,包括:获取模块,用于将每个虚拟网络节点映射方案编码为一个染色体,以获得编码后的多个染色体;检测模块,用于对所述多个染色体的每个染色体进行交叉、变异、可行性检查和选择操作;适应度函数模块,用于将虚拟链路消耗的带宽资源作为模型;处理模块,用于根据所述适应度函数模块得到虚拟网络请求中所有的虚拟链路映射方案,并检查所述所有的虚拟链路映射方案的可行性,以实现虚拟网络映射。
本发明实施例的基于改进遗传算法的虚拟网络映射装置,可以通过改进的变异操作来进一步提高虚拟节点映射方案的质量,通过提出的一种新型的种群初始化操作来平衡虚拟节点映射方案质量和求解时间,在每次迭代之后加入优化操作来进一步减少算法的迭代收敛时间,从而可以有效缩短种群初始化过程时间,加快迭代的收敛速度,提高物理网络资源的利用率。
另外,根据本发明上述实施例的基于改进遗传算法的虚拟网络映射装置还可以具有以下附加的技术特征:
进一步地,在本发明的一个实施例中,所述获取模块还用于根据一个包含n个虚拟节点的虚拟网络请求编码得到一个n维的向量染色体,n为整数,其中,所述染色体的维度由虚拟网络请求中虚拟节点的个数得到,所述染色体的数值代表虚拟节点映射到的物理网络节点的编号。
进一步地,在本发明的一个实施例中,所述检测模模块包括:初始化模块,用于在获得所述多个染色体编码后,确定种群初始化的数目,以初始化一个种群作为问题的初始解;分组模块,用于将父代样本两两分组,以进行部分映射交叉,并消除冲突的数字编号;生成模块,用于任意选取两个点,并互换数值编号,生成新群体;验证模块,用于验证任意染色体是否是可行解;选择模块,用于将适应度排满足预设条件的个体选择出来,以作为父代群体。
进一步地,在本发明的一个实施例中,所述适应度函数为:
其中,f(X)为适应度函数,X为一个合法的染色体,BW为带宽需求,v代表虚拟网络,lv代表具体的一条虚拟链路,hops代表跳数,Lv代表虚拟链路集合。
进一步地,在本发明的一个实施例中,所述处理模块还用于检查节点的计算容量约束条件,且根据最短路径算法求得所述虚拟网络请求中所有的虚拟链路映射方案,并检查所述所有的虚拟链路映射方案的可行性,以及如果可行,则所述适应度函数表示虚拟网络映射方案的开销,如果不可行,则所述是应付函数的值设置为预设值。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为传统的遗传算法的流程图;
图2为根据本发明一个实施例的基于改进遗传算法的虚拟网络映射方法的流程图;
图3为根据本发明一个实施例的一个虚拟网络请求的节点映射方案的染色体的示意图;
图4为根据本发明一个实施例的交叉操作示意图;
图5为根据本发明一个实施例的交叉操作冲突消除后的示意图;
图6为根据本发明一个实施例的变异操作过程示意图;
图7为根据本发明一个实施例的底层物理网络的平均收益;
图8为根据本发明一个实施例的底层网络的长期平均虚拟网络请求接收率;
图9为根据本发明一个实施例的基于改进遗传算法的虚拟网络映射装置的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
在介绍基于改进遗传算法的虚拟网络映射方法及装置之前,先简单介绍一下虚拟网络映射算法和传统遗传算法。
随着科学和技术的发展,在已有的网络体系架构之上部署新的协议和应用的需求越来越迫切。然而,当前的互联网的体系架构无法满足各种终端用户的各种各样的需求,网络架构呈现僵化现象。网络虚拟化技术的出现,使得在已有网络体系架构之上开展各种应用创新或部署新的协议成为可能。通过在同一底层物理网络之上,切分不同的网络切片,每类网络切片之间流量互相隔离。通过网络虚拟化技术,可以把物理设施中的各种计算、网络和存储资源虚拟化,按需提供给用户。
虚拟网络映射算法主要研究如何在满足节点和链路的约束条件下,能够为各种虚拟网络请求提供物理网络资源,同时更为有效地利用物理网络资源,提高物理网络资源利用率。一般的虚拟网络映射算法分为节点映射过程和链路映射过程两个阶段。节点映射过程主要是把虚拟请求中的节点,在满足节点CPU计算资源约束的条件下,映射到物理网络节点上。链路映射阶段主要任务是把虚拟网络请求中的虚拟链路,在满足链路带宽需求的条件下,映射到一个非循环的物理路径上。
遗传算法是根据大自然的进化规律“优胜劣汰”的方式,通过选择、交叉、变异等操作,不断提高求解方案质量的一种方法。传统的基于遗传算法的虚拟网络映射算法的过程如下:
(1)染色体编码:把每个虚拟网络请求VNR(Virtual Network Request,虚拟网络请求)中的节点映射方案编码为一个染色体,即一个粒子。
(2)种群初始化:重复利用经典的贪婪式启发算法生成多个虚拟节点映射方案,作为基于遗传算法的虚拟网络映射算法的种群。
(3)交叉操作:采用两个粒子交叉操作,用于提高粒子的质量。
(4)变异操作:通过对种群中的粒子进行变异操作,用于提高粒子的质量。
(5)选择操作:在重新生成的种群的所有粒子中,根据适应度函数,优先选出前K个粒子作为新的种群。
正是基于上述原因,本发明实施例提出了一种基于改进遗传算法的虚拟网络映射方法及装置。
下面参照附图描述根据本发明实施例提出的基于改进遗传算法的虚拟网络映射方法及装置,首先将参照附图描述根据本发明实施例提出的基于改进遗传算法的虚拟网络映射方法。
图2是本发明一个实施例的基于改进遗传算法的虚拟网络映射方法的流程图。
如图2所示,该基于改进遗传算法的虚拟网络映射方法包括以下步骤:
在步骤S201中,将每个虚拟网络节点映射方案编码为一个染色体,以获得编码后的多个染色体。
也就是说,本发明实施例利用遗传算法来解决虚拟网络映射问题,首先需要将虚拟网络节点映射方案编码为一个染色体,以便获取编码后的多个染色体。
可选地,在本发明的一个实施例中,将每个虚拟网络节点映射方案编码为一个染色体,具体包括:根据一个包含n个虚拟节点的虚拟网络请求编码得到一个n维的向量染色体,n为整数,其中,染色体的维度由虚拟网络请求中虚拟节点的个数得到,染色体的数值代表虚拟节点映射到的物理网络节点的编号。
可以理解的是,对于一个包含n个虚拟节点的虚拟网络请求而言,染色体编码为一个n维的向量,向量的每一维度值都为整数,例如:图3表示一个虚拟网络请求的节点映射方案的染色体编码。
其中,染色体的维度由虚拟网络请求中虚拟节点的个数所决定,染色体里面的具体数值代表某个虚拟节点映射到的物理网络节点的编号。
在步骤S202中,对多个染色体的每个染色体进行交叉、变异、可行性检查和选择操作。
可以理解的是,本发明实施例可以对编码的染色体进行的操作包括:交叉、变异和可行性检查和选择操作。
进一步地,在本发明的一个实施例中,对多个染色体的每个染色体进行交叉、变异、可行性检查和选择,进一步包括:在获得多个染色体编码后,确定种群初始化的数目,以初始化一个种群作为问题的初始解;将父代样本两两分组,以进行部分映射交叉,并消除冲突的数字编号;任意选取两个点,并互换数值编号,生成新群体;验证任意染色体是否是可行解;将适应度排满足预设条件的个体选择出来,以作为父代群体。
具体而言,下面对遗传算法中用到的概念进行定义。
定义1:种群初始化。在完成染色体编码后,需要初始化一个种群作为问题的初始解,首先必须确定种群初始化的数目。初始化种群的数目通常根据经验获取,视具体的虚拟网络请求中的虚拟节点个数而确定,取值范围一般在50-200之间。
定义2:交叉操作。交叉操作采用部分映射交叉,首先将父代样本两两分组,每组重复下面的过程:
①如图4所示,产生[1,6]区间的随机整数r1和r2,确定两个位置,对两个位置中间数据进行交叉操作,如r1=2,r2=4。
②如图5所示,交叉操作完成后,同一个染色体中可能包含相同的数值编号,不重复的数字编号保留,有冲突的数字编号(带*的位置)采用部分映射的方法进行消除,即利用中间段的对应关系进行映射。
定义3:如图6所示,变异操作。变异操作是指随机选取两个点,互换其数值编号。例如:产生两个[1,6]之间的随机数,r1=2,r2=4。
定义3:可行性检查。通过交叉和变异操作获得的新的群体中的某些染色体可能会存在不满足节点的计算资源约束或在链路映射过程中不满足带宽约束条件的情况,即存在某些个体不是可行解的情况。本发明实施例可以采用可行性检查操作,用来验证某个染色体是否是可行解。
其中,可行性检查主要检查两个方面的内容:一是映射到的物理节点的计算容量需求是否满足虚拟节点的计算容量需求;二是检查在物理节点确定的情况下,计算出的最短路径带宽是否满足虚拟链路的带宽需求。
定义4:选择操作。将适应度排在前N的个体选择出来作为父代群体,用于“繁衍”下一代群体。
在步骤S203中,将虚拟链路消耗的带宽资源作为模型的适应度函数。
可选地,在本发明的一个实施例中,适应度函数为:
其中,f(X)为适应度函数,X为一个合法的染色体,BW为带宽需求,v代表虚拟网络,lv代表具体的一条虚拟链路,hops代表跳数,Lv代表虚拟链路集合。
具体而言,每个染色体由虚拟网络中的虚拟节点映射方案经过编码获得,因此对染色体进行解码便可得到原始问题的候选解。适应度函数用于评价一个节点映射方案候选解的优劣程度,为染色体的选择提供科学依据。
进一步地,一个合法的染色体编码,即确定了一个虚拟网络的节点映射方案。对于每个虚拟网络请求的映射方案而言,节点的计算资源消耗是确定的,不同的是虚拟链路消耗的带宽资源,每条虚拟链路映射的物理路径的跳数不同,导致带宽资源消耗不同。本发明实施例可以将虚拟链路消耗的带宽资源作为模型的适应度函数:
在步骤S204中,根据适应度函数得到虚拟网络请求中所有的虚拟链路映射方案,并检查所有的虚拟链路映射方案的可行性,以实现虚拟网络映射。
具体地,VNE(Virtual Network Embedding,虚拟网络映射)-GA(GeneticAlgorithm,遗传算法)算法将适应度函数记为f(X),其中X代表一个合法的染色体,其值代表一个具体的虚拟节点映射方案,并通过适应度函数检查虚拟链路映射方案的可行性,以便可以实现虚拟网络映。
进一步地,在本发明的一个实施例中,根据适应度函数得到虚拟网络请求中所有的虚拟链路映射方案,进一步包括:检查节点的计算容量约束条件;根据最短路径算法求得虚拟网络请求中所有的虚拟链路映射方案;检查所有的虚拟链路映射方案的可行性;如果可行,则适应度函数表示虚拟网络映射方案的开销;如果不可行,则是应付函数的值设置为预设值。
具体而言,适应度函数的计算过程首先检查节点的计算容量约束条件,然后按照最短路径算法求得虚拟网络请求中所有的虚拟链路映射方案,以检查虚拟链路映射方案的可行性,如果该映射方案可行,则f(X)表示该虚拟网络映射方案的开销;如果该映射方案不可行,则f(X)的值设置为+∞;VNE-GA算法的具体实现过程表1所示。其中,表1为VNE-GA算法的具体实现过程表。
表1
在本发明的一个具体实施例中,采用GT-ITM工具生成虚拟网络和物理网络拓扑结构。物理网络包括100个顶点和570条链路,物理顶点的CPU资源和可用带宽资源在区间[50,100]均匀分布。虚拟网络请求达到服从泊松分布,每100个时间单元平均4个虚拟网络请求达到。虚拟网络请求的平均生存时间服从指数分布,平均生存时间为300个时间单元。虚拟网络请求的节点个数在区间[2,20]均匀分布,虚拟节点之间连接概率为0.5。虚拟节点的CPU资源在区间[0,50]均匀分布,带宽资源在区间[0,50]均匀分布。实验运行50000个时间单元,2500个虚拟网络请求,初始种群数目设置为8,最大迭代次数MG设置为20。交叉概率Pc设置为0.5,变异概率Pm设置为0.01。
通过比较各种算法的底层网络平均收益和虚拟网络请求的接收率来验证该算法的有效性。这里比较了两种著名的算法D-ViNE-SP和D-ViNE-LB,并如图7所示,在底层网络的长期平均收益上,通过改进的遗传算法能够从整体上提高网络长期平均收益,从整体趋势上看,本发明实施例的的算法优于D-ViNE-LB,D-ViNE-LB算法优于D-ViNE-SP算法。算法采用了改进的变异操作能够减少相邻的虚拟节点映射到的物理节点之间的跳数,进而能够减少不必要的物理带宽资源的消耗,因此能够从整体上提高底层网络的长期平均收益。
另外,如图8所示,本发明实施例提出的算法和两种著名算法在底层网络的长期平均虚拟网络请求接收率指标上进行比较,从而可以得到本发明实施例的算法在整体趋势上优于其余两种算法。分析其原因,由于采用的改进的变异策略,从整体上提高了带宽资源的利用率,节省了大量的物理网络带宽资源,能够为后来的虚拟网络请求提供更好的服务,因此,能够从整体上提高虚拟网络请求的接收率。另一方面,由于在每次迭代之后采用优化算法操作,能够进一步提高虚拟网络映射方案的质量。从整体上提高物理网络资源的利用率。
根据本发明实施例提出的基于改进遗传算法的虚拟网络映射方法,可以通过改进的变异操作来进一步提高虚拟节点映射方案的质量,通过提出的一种新型的种群初始化操作来平衡虚拟节点映射方案质量和求解时间,在每次迭代之后加入优化操作来进一步减少算法的迭代收敛时间,从而可以有效缩短种群初始化过程时间,加快迭代的收敛速度,提高物理网络资源的利用率。
其次参照附图描述根据本发明实施例提出的基于改进遗传算法的虚拟网络映射装置。
图9是本发明一个实施例的基于改进遗传算法的虚拟网络映射装置的结构示意图。
如图9所示,该基于改进遗传算法的虚拟网络映射装置10包括:获取模块100、检测模块200、适应度函数模块300和处理模块400。
其中,获取模块100用于将每个虚拟网络节点映射方案编码为一个染色体,以获得编码后的多个染色体。检测模块200用于对多个染色体的每个染色体进行交叉、变异、可行性检查和选择操作。适应度函数模块300用于将虚拟链路消耗的带宽资源作为模型。处理模块400用于根据适应度函数模块300得到虚拟网络请求中所有的虚拟链路映射方案,并检查所有的虚拟链路映射方案的可行性,以实现虚拟网络映射。本发明实施例的装置可以通过改进的变异操作来进一步提高虚拟节点映射方案的质量,有效缩短种群初始化过程时间,加快迭代的收敛速度,提高物理网络资源的利用率。
进一步地,在本发明的一个实施例中,获取模块100还用于根据一个包含n个虚拟节点的虚拟网络请求编码得到一个n维的向量染色体,n为整数,其中,染色体的维度由虚拟网络请求中虚拟节点的个数得到,染色体的数值代表虚拟节点映射到的物理网络节点的编号。
进一步地,在本发明的一个实施例中,检测模模块200包括:初始化模块、分组模块、生成模块、验证模块和选择模块。
其中,初始化模块用于在获得多个染色体编码后,确定种群初始化的数目,以初始化一个种群作为问题的初始解。分组模块用于将父代样本两两分组,以进行部分映射交叉,并消除冲突的数字编号。生成模块用于任意选取两个点,并互换数值编号,生成新群体。验证模块用于验证任意染色体是否是可行解。选择模块用于将适应度排满足预设条件的个体选择出来,以作为父代群体。
进一步地,在本发明的一个实施例中,适应度函数为:
其中,f(X)为适应度函数,X为一个合法的染色体,BW为带宽需求,v代表虚拟网络,lv代表具体的一条虚拟链路,hops代表跳数,Lv代表虚拟链路集合。
进一步地,在本发明的一个实施例中,处理模块400还用于检查节点的计算容量约束条件,且根据最短路径算法求得虚拟网络请求中所有的虚拟链路映射方案,并检查所有的虚拟链路映射方案的可行性,以及如果可行,则适应度函数表示虚拟网络映射方案的开销,如果不可行,则是应付函数的值设置为预设值。
需要说明的是,前述对基于改进遗传算法的虚拟网络映射方法实施例的解释说明也适用于该实施例的基于改进遗传算法的虚拟网络映射装置,此处不再赘述。
根据本发明实施例提出的基于改进遗传算法的虚拟网络映射装置,通过可以通过改进的变异操作来进一步提高虚拟节点映射方案的质量,通过提出的一种新型的种群初始化操作来平衡虚拟节点映射方案质量和求解时间,在每次迭代之后加入优化操作来进一步减少算法的迭代收敛时间,从而可以有效缩短种群初始化过程时间,加快迭代的收敛速度,提高物理网络资源的利用率。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种基于改进遗传算法的虚拟网络映射方法,其特征在于,包括以下步骤:
将每个虚拟网络节点映射方案编码为一个染色体,以获得编码后的多个染色体;
对所述多个染色体的每个染色体进行交叉、变异、可行性检查和选择操作;
将虚拟链路消耗的带宽资源作为模型的适应度函数;以及
根据所述适应度函数得到虚拟网络请求中所有的虚拟链路映射方案,并检查所述所有的虚拟链路映射方案的可行性,以实现虚拟网络映射。
2.根据权利要求1所述的基于改进遗传算法的虚拟网络映射方法,其特征在于,所述将每个虚拟网络节点映射方案编码为一个染色体,具体包括:
根据一个包含n个虚拟节点的虚拟网络请求编码得到一个n维的向量染色体,n为整数,其中,所述染色体的维度由虚拟网络请求中虚拟节点的个数得到,所述染色体的数值代表虚拟节点映射到的物理网络节点的编号。
3.根据权利要求1所述的基于改进遗传算法的虚拟网络映射方法,其特征在于,所述对所述多个染色体的每个染色体进行交叉、变异、可行性检查和选择,进一步包括:
在获得所述多个染色体编码后,确定种群初始化的数目,以初始化一个种群作为问题的初始解;
将父代样本两两分组,以进行部分映射交叉,并消除冲突的数字编号;
任意选取两个点,并互换数值编号,生成新群体;
验证任意染色体是否是可行解;以及
将适应度排满足预设条件的个体选择出来,以作为父代群体。
4.根据权利要求1所述的基于改进遗传算法的虚拟网络映射方法,其特征在于,所述适应度函数为:
<mrow>
<mtable>
<mtr>
<mtd>
<mrow>
<mi>M</mi>
<mi>i</mi>
<mi>n</mi>
<mi>i</mi>
<mi>m</mi>
<mi>i</mi>
<mi>z</mi>
<mi>e</mi>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>f</mi>
<mrow>
<mo>(</mo>
<mi>X</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<munder>
<mo>&Sigma;</mo>
<mrow>
<msub>
<mi>l</mi>
<mi>v</mi>
</msub>
<mo>&Element;</mo>
<msub>
<mi>L</mi>
<mi>v</mi>
</msub>
</mrow>
</munder>
<mi>B</mi>
<mi>W</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>l</mi>
<mi>v</mi>
</msub>
<mo>)</mo>
</mrow>
<mi>h</mi>
<mi>o</mi>
<mi>p</mi>
<mi>s</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>l</mi>
<mi>v</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
</mtable>
<mo>,</mo>
</mrow>
其中,f(X)为适应度函数,X为一个合法的染色体,BW为带宽需求,v代表虚拟网络,lv代表具体的一条虚拟链路,hops代表跳数,Lv代表虚拟链路集合。
5.根据权利要求1所述的基于改进遗传算法的虚拟网络映射方法,其特征在于,所述根据所述适应度函数得到虚拟网络请求中所有的虚拟链路映射方案,进一步包括:
检查节点的计算容量约束条件;
根据最短路径算法求得所述虚拟网络请求中所有的虚拟链路映射方案;
检查所述所有的虚拟链路映射方案的可行性;
如果可行,则所述适应度函数表示虚拟网络映射方案的开销;以及
如果不可行,则所述是应付函数的值设置为预设值。
6.一种基于改进遗传算法的虚拟网络映射装置,其特征在于,包括:
获取模块,用于将每个虚拟网络节点映射方案编码为一个染色体,以获得编码后的多个染色体;
检测模块,用于对所述多个染色体的每个染色体进行交叉、变异、可行性检查和选择操作;
适应度函数模块,用于将虚拟链路消耗的带宽资源作为模型;以及
处理模块,用于根据所述适应度函数模块得到虚拟网络请求中所有的虚拟链路映射方案,并检查所述所有的虚拟链路映射方案的可行性,以实现虚拟网络映射。
7.根据权利要求6所述的基于改进遗传算法的虚拟网络映射装置,其特征在于,所述获取模块还用于根据一个包含n个虚拟节点的虚拟网络请求编码得到一个n维的向量染色体,n为整数,其中,所述染色体的维度由虚拟网络请求中虚拟节点的个数得到,所述染色体的数值代表虚拟节点映射到的物理网络节点的编号。
8.根据权利要求6所述的基于改进遗传算法的虚拟网络映射装置,其特征在于,所述检测模模块包括:
初始化模块,用于在获得所述多个染色体编码后,确定种群初始化的数目,以初始化一个种群作为问题的初始解;
分组模块,用于将父代样本两两分组,以进行部分映射交叉,并消除冲突的数字编号;
生成模块,用于任意选取两个点,并互换数值编号,生成新群体;
验证模块,用于验证任意染色体是否是可行解;以及
选择模块,用于将适应度排满足预设条件的个体选择出来,以作为父代群体。
9.根据权利要求6所述的基于改进遗传算法的虚拟网络映射装置,其特征在于,所述适应度函数为:
<mrow>
<mtable>
<mtr>
<mtd>
<mrow>
<mi>M</mi>
<mi>i</mi>
<mi>n</mi>
<mi>i</mi>
<mi>m</mi>
<mi>i</mi>
<mi>z</mi>
<mi>e</mi>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>f</mi>
<mrow>
<mo>(</mo>
<mi>X</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<munder>
<mo>&Sigma;</mo>
<mrow>
<msub>
<mi>l</mi>
<mi>v</mi>
</msub>
<mo>&Element;</mo>
<msub>
<mi>L</mi>
<mi>v</mi>
</msub>
</mrow>
</munder>
<mi>B</mi>
<mi>W</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>l</mi>
<mi>v</mi>
</msub>
<mo>)</mo>
</mrow>
<mi>h</mi>
<mi>o</mi>
<mi>p</mi>
<mi>s</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>l</mi>
<mi>v</mi>
</msub>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
</mtable>
<mo>,</mo>
</mrow>
其中,f(X)为适应度函数,X为一个合法的染色体,BW为带宽需求,v代表虚拟网络,lv代表具体的一条虚拟链路,hops代表跳数,Lv代表虚拟链路集合。
10.根据权利要求6所述的基于改进遗传算法的虚拟网络映射装置,其特征在于,所述处理模块还用于检查节点的计算容量约束条件,且根据最短路径算法求得所述虚拟网络请求中所有的虚拟链路映射方案,并检查所述所有的虚拟链路映射方案的可行性,以及如果可行,则所述适应度函数表示虚拟网络映射方案的开销,如果不可行,则所述是应付函数的值设置为预设值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711329693.9A CN108108815A (zh) | 2017-12-13 | 2017-12-13 | 基于改进遗传算法的虚拟网络映射方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711329693.9A CN108108815A (zh) | 2017-12-13 | 2017-12-13 | 基于改进遗传算法的虚拟网络映射方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108108815A true CN108108815A (zh) | 2018-06-01 |
Family
ID=62216732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711329693.9A Pending CN108108815A (zh) | 2017-12-13 | 2017-12-13 | 基于改进遗传算法的虚拟网络映射方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108108815A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109714263A (zh) * | 2019-01-18 | 2019-05-03 | 北京邮电大学 | 一种在卫星通信网络中的路径选择方法及装置 |
CN110459258A (zh) * | 2019-07-15 | 2019-11-15 | 天津大学 | 基于多目标聚类遗传算法的多存储器内建自测试的方法 |
CN110458291A (zh) * | 2019-08-09 | 2019-11-15 | 成都理工大学 | 一种基于遗传算法的最佳共识节点选择方法 |
CN112585585A (zh) * | 2018-07-30 | 2021-03-30 | 瑞典爱立信有限公司 | 基于可扩展遗传算法的虚拟化系统的虚拟网络功能的联合放置和链接 |
CN112990608A (zh) * | 2021-04-25 | 2021-06-18 | 广东电网有限责任公司江门供电局 | 一种适用于电力设施全覆盖的5g优化建设方法 |
CN113535381A (zh) * | 2021-06-08 | 2021-10-22 | 广西综合交通大数据研究院 | 基于改进遗传算法的服务功能链映射方法、装置及设备 |
CN113726462A (zh) * | 2021-07-30 | 2021-11-30 | 浪潮电子信息产业股份有限公司 | 一种PCIe虚拟信道选择方法、装置、系统及介质 |
CN114518937A (zh) * | 2022-01-27 | 2022-05-20 | 广州鼎甲计算机科技有限公司 | 一种虚拟机备份调度方法、系统、装置及存储介质 |
CN114785689A (zh) * | 2021-01-22 | 2022-07-22 | 广州汽车集团股份有限公司 | 一种5g切片虚拟网络映射方法、系统及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104348695A (zh) * | 2014-10-31 | 2015-02-11 | 北京邮电大学 | 一种基于人工免疫系统的虚拟网络映射方法及其系统 |
CN106487707A (zh) * | 2016-09-29 | 2017-03-08 | 北京邮电大学 | 一种电力通信虚拟容错网络映射方法及装置 |
US20170237627A1 (en) * | 2014-07-30 | 2017-08-17 | International Business Machines Corporation | Mapping relationships among virtual elements across a system |
CN107135135A (zh) * | 2017-05-02 | 2017-09-05 | 北京邮电大学 | 一种基于底层节点排序的虚拟网络映射方法及装置 |
-
2017
- 2017-12-13 CN CN201711329693.9A patent/CN108108815A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170237627A1 (en) * | 2014-07-30 | 2017-08-17 | International Business Machines Corporation | Mapping relationships among virtual elements across a system |
CN104348695A (zh) * | 2014-10-31 | 2015-02-11 | 北京邮电大学 | 一种基于人工免疫系统的虚拟网络映射方法及其系统 |
CN106487707A (zh) * | 2016-09-29 | 2017-03-08 | 北京邮电大学 | 一种电力通信虚拟容错网络映射方法及装置 |
CN107135135A (zh) * | 2017-05-02 | 2017-09-05 | 北京邮电大学 | 一种基于底层节点排序的虚拟网络映射方法及装置 |
Non-Patent Citations (2)
Title |
---|
PEIYING ZHANG等: "Virtual network embedding based on modified genetic algorithm", 《PEER-TO-PEER NETWORKING AND APPLICATIONS》 * |
肖霭玲等: "基于知识描述和遗传算法的跨域虚拟网络映射", 《软件学报》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112585585A (zh) * | 2018-07-30 | 2021-03-30 | 瑞典爱立信有限公司 | 基于可扩展遗传算法的虚拟化系统的虚拟网络功能的联合放置和链接 |
US11934856B2 (en) | 2018-07-30 | 2024-03-19 | Telefonaktiebolaget Lm Ericsson (Publ) | Joint placement and chaining of virtual network functions for virtualized systems based on a scalable genetic algorithm |
CN109714263A (zh) * | 2019-01-18 | 2019-05-03 | 北京邮电大学 | 一种在卫星通信网络中的路径选择方法及装置 |
CN110459258A (zh) * | 2019-07-15 | 2019-11-15 | 天津大学 | 基于多目标聚类遗传算法的多存储器内建自测试的方法 |
CN110459258B (zh) * | 2019-07-15 | 2021-03-12 | 天津大学 | 基于多目标聚类遗传算法的多存储器内建自测试的方法 |
CN110458291A (zh) * | 2019-08-09 | 2019-11-15 | 成都理工大学 | 一种基于遗传算法的最佳共识节点选择方法 |
CN114785689A (zh) * | 2021-01-22 | 2022-07-22 | 广州汽车集团股份有限公司 | 一种5g切片虚拟网络映射方法、系统及存储介质 |
CN112990608A (zh) * | 2021-04-25 | 2021-06-18 | 广东电网有限责任公司江门供电局 | 一种适用于电力设施全覆盖的5g优化建设方法 |
CN113535381A (zh) * | 2021-06-08 | 2021-10-22 | 广西综合交通大数据研究院 | 基于改进遗传算法的服务功能链映射方法、装置及设备 |
CN113535381B (zh) * | 2021-06-08 | 2023-09-08 | 广西综合交通大数据研究院 | 基于改进遗传算法的服务功能链映射方法、装置及设备 |
CN113726462A (zh) * | 2021-07-30 | 2021-11-30 | 浪潮电子信息产业股份有限公司 | 一种PCIe虚拟信道选择方法、装置、系统及介质 |
CN114518937A (zh) * | 2022-01-27 | 2022-05-20 | 广州鼎甲计算机科技有限公司 | 一种虚拟机备份调度方法、系统、装置及存储介质 |
CN114518937B (zh) * | 2022-01-27 | 2022-11-04 | 广州鼎甲计算机科技有限公司 | 一种虚拟机备份调度方法、系统、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108108815A (zh) | 基于改进遗传算法的虚拟网络映射方法及装置 | |
Monsef et al. | Comparison of evolutionary multi objective optimization algorithms in optimum design of water distribution network | |
CN105704255B (zh) | 一种基于遗传算法的服务器负载均衡方法 | |
Park | A hybrid genetic algorithm for the vehicle scheduling problem with due times and time deadlines | |
Legillon et al. | Cobra: A cooperative coevolutionary algorithm for bi-level optimization | |
Ronald | Robust encodings in genetic algorithms: A survey of encoding issues | |
CN111832101B (zh) | 一种水泥强度预测模型的构建方法及水泥强度预测方法 | |
CN106484512B (zh) | 计算单元的调度方法 | |
CN106227599A (zh) | 一种云计算系统中资源调度的方法及系统 | |
CN109388565A (zh) | 基于生成式对抗网络的软件系统性能优化方法 | |
Lijuan et al. | Genetic algorithms and its application in software test data generation | |
CN115238899A (zh) | 面向超导量子计算机的量子程序并行处理方法及操作系统 | |
CN109347657A (zh) | Sdn模式下支撑科技业务的虚拟数据域构建方法 | |
Aslani et al. | Constrained mean‐variance mapping optimization for truss optimization problems | |
Gao et al. | QoE/QoS driven simulated annealing-based genetic algorithm for Web services selection | |
CN114995964A (zh) | 一种组合服务重构方法、装置、设备和计算机可读介质 | |
CN112990776B (zh) | 一种配网设备健康度评价方法 | |
CN117170848B (zh) | 一种资源调度方法及装置 | |
CN109063837A (zh) | 基于复杂网络结构熵的遗传算法信息流网络属性分析方法 | |
CN107180286A (zh) | 基于改进型花粉算法的制造服务供应链优化方法及系统 | |
CN111047040A (zh) | 基于IFPA算法的Web服务组合方法 | |
CN113285832B (zh) | 基于nsga-ii的电力多模态网络资源优化分配方法 | |
CN108711074A (zh) | 业务分类方法、装置、服务器及可读存储介质 | |
CN107451943A (zh) | 城市更新改造的选址方法 | |
Sarker et al. | Population size, search space and quality of solution: An experimental study |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180601 |