回溯法采用的搜索策略_【论文】基于顾问引导搜索的虚拟网络映射算法

2e30e06c8553de2f3cacc9ed62d0a019.gif

8e04ce62d811f849faedeb4546e11eb4.gif

戳上面的蓝字关注我们哦!

基于顾问引导搜索的虚拟网络映射算法

刘文覃, 庄雷, 和孟佯, 田帅魁, 宋玉, 王国卿

郑州大学信息工程学院,河南 郑州 450001

摘要:

针对虚拟网络映射问题,提出了一种基于顾问引导搜索的虚拟网络映射算法。综合考虑节点CPU、节点度、邻接带宽资源,结合元启发式顾问引导搜索算法进行虚拟网络映射。实验结果表明,与EAJTA-VNE算法和ANT-VNE 算法相比,所提 CGS-VNE 算法在虚拟网络请求资源需求较低、资源需求中等、资源需求较高等环境下均有较高的请求接受率和收益成本比,缩短了映射时间。

关键词: 虚拟网络 ; 映射算法 ; 顾问引导搜索 ; 元启发式 ; 网络拓扑

引用格式:

刘文覃, 庄雷, 等.基于顾问引导搜索的虚拟网络映射算法[J]. 物联网学报, 2020, 4(2):113-121.

LIU W T, ZHUANG L, et al.Virtual network embedding algorithm based on consultant guided search[J]. Chinese Journal on Internet of Things, 2020, 4(2): 113-121.

1 引言

随着网络业务的不断增多以及网络规模的逐渐扩大,现有的网络已经僵化。为了解决此问题,部分学者提出了网络虚拟化的概念。网络虚拟化是网络领域的一项重要技术,在网络虚拟化环境中,多个服务提供商(SP,service provider)以虚拟网络请求的方式,租用基础设施提供商(InP,infrastructure provider)构建的物理网络,向用户提供网络服务。InP 负责部署和管理底层网络,通过优化虚拟网络映射方案使得自身利益最大化,即在占用最小底层网络资源的同时,接受更多的虚拟网络请求,以减少运营成本,而虚拟网络映射就是其面临的核心问题。 目前,已有部分学者对虚拟网络映射问题进行了相关研究。虚拟网络映射可分为一阶段和两阶段映射。文献提出了一种基于拓扑的映射算法,利用广度优先搜索及回溯法对虚拟节点与链路进行交替映射。文献先对节点CPU与邻接带宽之和进行求积作为重要度,再将重要度较大的虚拟节点映射到重要度较大的物理节点,最后采用最短路径算法映射链路。文献考虑节点容量、节点位置、链路带宽和链路传播时延,结合电磁场库仑定律和引力场牛顿定律对节点排序,采用贪婪式算法进行节点映射。文献基于节点度和聚类系数信息,采用了节点重要性度量技术为底层节点进行排序,并利用广度优先搜索算法映射虚拟节点,从而提高虚拟网络映射成功率。文献提出了一种候选辅助集合映射算法,其核心思想是在映射前构造候选底层节点子集和候选底层路径子集,采用整数线性规划的方法约简子集得到最优映射方案。文献提出了一种约束管理映射算法,根据虚拟网络映射候选解的约束对候选解的适应度进行分级,并利用信息驱动元启发式算法搜索到更好区域,进行虚拟网络映射。文献基于原对偶法的思想,结合完全多项式提出了近似路径映射算法,使用动态规划方法避免枚举全部路径集,生成满足跳数约束的路径,解决了具有跳数约束的虚拟链路映射问题。文献将资源需求较大的虚拟节点映射到已映射的物理节点的邻接位置,链路映射采用最短路径算法。文献在节点映射阶段,利用节点资源度与中心度的乘积定义节点重要性,将节点重要性最大的虚拟节点作为根节点,利用广度优先搜索算法将其他节点距离根节点的跳数划分为不同的候选节点集,利用贪心算法依次进行节点映射。在链路映射阶段,考虑不同链路之间的竞争,先映射带宽需求大的虚拟链路,再映射带宽需求小的虚拟链路。文献提出了一种环境拓扑联合感知的虚拟网络映射算法,对经典TOPSIS(technique for order preference by similarity to an ideal solution)算法进行改进,并应用到重要度节点排序上。将重要度最大节点作为根节点,利用广度优先搜索算法将剩余节点划分为不同集合,最后应用贪婪式算法映射所有节点。文献提出了一种基于适应度的动态虚拟网络映射算法,该算法允许虚拟网络在映射期间改变结构和资源需求。通过计算整个虚拟网络的局部最优和全局最优适应度以映射虚拟节点,考虑每个物理路径的传播时延和资源可用性以映射虚拟链路。 上述方法从不同角度考虑网络资源、拓扑信息对虚拟网络进行映射,但存在以下缺点:1) 回溯法在资源不足的环境下,会增加回溯次数,映射实现复杂;2) 为了节省成本,对链路跳数进行限制,该类算法不能充分利用底层网络资源;3) 综合考虑节点CPU、带宽资源、拓扑因素对节点进行排序,实质是矩阵的运算,时间复杂度较高,映射时间过长。针对以上问题,本文提出了一种基于顾问引导搜索(CGS,consultant guided search)的虚拟网络映射算法(CGS-VNE,a virtual network embedding algorithm based on consultant guided search)。CGS算法是由Serban提出的一种新颖的群体智能算法,CGS算法基于群体中的个体信息直接交换,其灵感来自真实世界中人类在做决策时会向顾问咨询,通过顾问的建议调整自身的决策。本文将 CGS 算法引入虚拟网络映射,将网络节点CPU、节点度、邻接带宽资源作为映射策略,结合元启发式 CGS 算法进行映射。以群体智能结合网络信息实现智能映射,最后根据资源约束的不同,分场景来验证该算法的映射效果。

2 建模与评价

2.1 网络模型

1) 虚拟网络 用加权无向图 cdece403aeb6fe5a6bdfe106c589b1ed.png
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
•Alpha-Beta剪枝(Alpha-Beta pruning) 对于一般的最大最小搜索,即使每一步只有很少的下搜索的位置也会增长非常快;在大多数的中局棋形中,每步平均有十个位置可以下棋,于是假设搜索九步(程序术语称为搜索深度为九),就要搜索十亿个位置(十的九次方),极大地限制了电脑的棋力。于是采用了一个方,叫“alpha-beta剪枝”,它大为减少了检测的数目,提高电脑搜索的速度。各种各样的这种算法用于所有的强力Othello程序。(同样用于其他棋类游戏,如国际象棋和跳棋)。为了搜索九步,一个好的程序只用搜索十万到一百万个位置,而不是没用前的十亿次。 •估值 这是一个程序中最重要的部分,如果这个模块太弱,则就算算法再好也没有用。我将要叙述三种不同的估值函数范例。我相信,大多数的Othello程序都可以归结于此。 棋格表:这种算法的意思是,不同的棋格有不同的值,角的值大而角旁边的格子值要小。忽视对称的话,棋盘上有10个不同的位置,每个格子根据三种可能性赋值:黑棋、白棋和空。更有经验的逼近是在游戏的不同阶段对格子赋予不同的值。例如,角在开局阶段和中局开始阶段比终局阶段更重要。采用这种算法的程序总是很弱(我这样认为),但另一方面,它很容易实现,于是许多程序开始采用这种逼近。 基于行动力的估值:这种更久远的接近有很强的全局观,而不像棋格表那样局部化。观察表明,许多人类玩者努力获得最大的行动力(可下棋的数目)和潜在行动力(临近对手棋子的空格,见技巧篇)。如果代码有效率的话,可以很快发现,它们提高棋力很多。 基于模版的估值 :正如上面提及的,许多中等力量的程序经常合并一些边角判断的知识,最大行动力和潜在行动力是全局特性,但是他们可以被切割成局部配置,再加在一起。棋子最少化也是如此。这导致了以下的概括:在估值函数中仅用局部配置(模版),这通常用单独计算每一行、一列、斜边和角落判断,再加在一起来实现。 估值合并:一般程序的估值基于许多的参数,如行动力、潜在行动力、余裕手、边角判断、稳定子。但是怎么样将他们合并起来得到一个估值呢?一般采用线性合并。设a1,a2,a3,a4为参数,则估值s:=n1*a1+n2*a2+n3*a3+n4*a4。其中n1,n2,n3,n4为常数,术语叫“权重”(weight),它决定了参数的重要性,它们取决于统计值。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值