本发明属于无线通信,尤其涉及一种基于机器学习的端到端网络切片资源分配方法。
背景技术:
1、随着5g技术的发展以及多样化业务的不断涌现,对现有的通信网络提出了多种多样的服务质量需求。5g作为数字经济时代的关键使能技术和基础设施,服务的对象已经从单纯的移动通信扩展为无处不在的连接和场景应用。因此,为了能够利用现有的通信网络更好的满足用户的差异化需求,网络切片技术应运而生。端到端网络切片资源分配问题通常分为两个部分:接入网(ran)无线频谱资源的分配以及核心网的vnf映射。接入网侧主要负责将无线频谱资源块(rb)分配给切片中的用户。核心网侧主要负责将切片的vnf映射到底层物理网络中的通用服务器。网络切片资源分配问题通常建模为一个非线性整数规划数学模型。由于涉及的约束众多且复杂,很难使用传统的优化算法进行求解。近些年来,随着人工智能技术的不断涌现,许多学者提出采用强化学习的方法进行求解,但是其求解的时间复杂度较高,通常仅适合规模较小的问题。
技术实现思路
1、本发明目的在于提供一种基于机器学习的端到端网络切片资源分配方法,,将机器学习中的随机森林算法与强化学习ippo算法相融合以解决网络切片中的资源分配技术问题。
2、为解决上述技术问题,本发明的具体技术方案如下:
3、一种基于机器学习的端到端网络切片资源分配方法,包括如下步骤:
4、步骤1、首先根据网络切片数学模型搭建对应的仿真环境,以及初始化端到端网络切片接入网和核心网参数;接入网负责将rb分配给切片中的用户,rb指的是无线频谱资源块,而核心网负责将网络切片的vnf映射到满足模型约束的通用服务器上,vnf指的是虚拟网络功能;
5、步骤2、分析网络切片数学模型的特点,通过接入网侧给定的无线频谱资源rb分配方案计算得出接入网侧和核心网侧的associated tuple中的各个元素,用于判断对应的分配方案能否在核心网侧成功部署,其中associated tuple指的是关联元组;
6、步骤3、用dfs+pruning算法判断给定的associated tuple是否在核心网侧存在满足各项约束的部署方式;其中dfs+pruning算法指的是深度优先搜索+剪枝算法;核心网侧约束包括:服务器的虚拟机vm数量约束、服务器计算资源约束、链路带宽约束以及链路时延约束;
7、步骤4、随机生成多组associated tuple数据集,用dfs+pruning算法得到对应的标签,然后用随机森林算法训练一个二分类器用于快速判断给定的associated tuple是否能在核心网完成vnf映射;
8、步骤5、在接入网侧,先将网络切片数学模型优化问题转化为一个马尔可夫决策过程mdp:其中表示状态空间,表示动作空间,表示奖励函数;
9、步骤6、采用强化学习ippo算法训练智能体,用于决策满足各项约束并且使得利润最大的无线频谱资源rb分配方案,ippo算法指的是独立的近端策略优化算法。
10、进一步的,步骤2包括如下步骤:
11、步骤2.1、首先根据接入网给定的rb资源分配方案利用香农公式计算得出切片s中用户u的速率其中是一个01整数变量,表示将第k个rb分配给切片s中用户u,表示不将第k个rb分配给切片s中用户u,w表示一个rb的带宽,pd表示下行传输功率,gs,u表示用户与基站之间的信道增益,σ2表示高斯白噪声的功率,之后计算得出每个切片的总速率作为associated tuple中的一部分元素;
12、步骤2.2、然后使用二分法求出切片s满足核心网约束的最大可允许时延作为associated tuple中的另一部分元素,其中m表示核心网的时延,表示切片s的用户集合,表示切片s中用户u的个性化时延需求,表示切片s中用户u的接入网时延,表示切片s的最低用户满意度阈值;
13、步骤2.3、设置一共有s个切片,因此associated tuple表示为:
14、进一步的,步骤3包括如下步骤:
15、步骤3.1、切片s的服务功能链sfc表示为:其中ts表示切片s的sfc中包含的vnf总数,表示切片s的sfc中第j个vnf所属类型,根据步骤2得到的associated tuple,用公式计算出切片s中相邻vnf之间所需要的链路带宽资源,其中表示切片s中第j个vnf与第j+1个vnf之间所需要的链路带宽资源,表示类型为的vnf的传输速率转换率,用公式计算出切片中所有的vnf所需要的服务器计算资源,其中表示切片s中第j个vnf所需的计算资源,α表示传输速率与所需计算资源之间的相关系数;
16、步骤3.2、将网络切片核心网的vnf映射问题转化为一个树模型,树中每个节点的子节点数等于服务器节点数,树的深度对应所有切片的vnf总数,树的根节点代表分配方案的起始标记,树的根节点到树的叶子结点之间的路径对应于一种vnf映射方案;
17、步骤3.3、然后用dfs算法遍历步骤3.2构造的树模型,找到满足核心网各项约束的一种映射方案;
18、步骤3.4、从树的根节点开始向下搜索,遍历所有的路径,一条路径即对应于一种vnf映射方案,路径中的每个节点代表是否将当前的vnf部署到对应的服务器中,若满足约束,就沿当前节点继续向下搜索,否则进行回溯;直到遍历至树的叶子节点,表示所有切片的vnf均成功部署,找到了一种满足核心网各项约束的vnf部署方案;
19、步骤3.5、为了降低搜索的时间复杂度,加入剪枝的策略;剪枝策略1:按照每个vnf顺利部署的难度从难到易搜索;剪枝策略2:如果当前节点不满足某个约束,直接回溯,不必搜索出完整的部署方案后统一进行判断。
20、进一步的,步骤4包括如下步骤:
21、步骤4.1、首先随机生成多组associated tuple,然后用步骤3的dfs+pruning算法生成对应associated tuple的标签(0/1),标签为1表示当前associated tuple在核心网成功完成vnf映射,标签为0表示当前associated tuple不能在核心网完成vnf映射,所有associated tuple以及对应的标签构成训练集d;
22、步骤4.2、采用随机森林rf算法,利用步骤4.1得到的训练集d训练一个二分类器;
23、步骤4.3、首先通过bootstrap sampling产生每个决策树的训练集之后用机器学习决策树算法独立训练每个基学习器;
24、步骤4.4、最终通过投票法结合所有基学习器决策树的输出,从而得到随机森林的分类结果。
25、进一步的,步骤5包括如下步骤:
26、步骤5.1、首先为每个切片设定一个智能体,分别编号为:{1,2…,s,…,s};
27、步骤5.2、状态空间的设定:对于编号为s的智能体,其状态空间定义为:其中表示切片s的用户集合,gs表示切片s中用户与基站的信道增益集合,表示切片s中用户的个性化需求集合,ns表示切片s中用户分配的无线频谱资源rb数集合;因此总的状态空间表示为:
28、步骤5.3、动作空间的设定:对于编号为s的智能体,其动作空间定义为:其中k表示资源池中的无线频谱资源rb总数,表示切片s的用户集合;上述行动空间本质上表示无线频谱资源rb分配的具体方案集合,也表示为行向量形式:其中,如果表示将rb资源k分配给切片s中的用户u;每个智能体负责决策其对应的切片内的无线频谱资源rb分配方案,因此总的动作空间表示为所有切片的笛卡尔积:
29、步骤5.4、奖励函数的设定:将给定的rb分配方案按照步骤2转化为associatedtuple,之后将其输入步骤4训练好的随机森林分类器中,判断其是否满足核心网的各项约束;如果给定的rb分配方案满足各项约束,那么奖励函数设置为当前分配方案获得的效益,否则得到一个负的奖励。
30、进一步的,步骤6包括如下步骤:
31、步骤6.1、首先初始化ippo算法中各个智能体的策略网络参数以及价值网络参数
32、步骤6.2、每个智能体观测当前环境状态,并根据当前策略从动作空间中选择一个动作as;
33、步骤6.3、所有智能体的动作构成一个联合动作:a={a1,a2,...,as};
34、步骤6.4、联合动作作用于当前状态,并将当前的状态从s更新为s′,同时得到即时奖励
35、步骤6.5、之后,奖励将作为反馈给予所有的智能体,更新其策略神经网络参数以及价值神经网络参数;
36、步骤6.6、不断重复步骤6.2-步骤6.5,直到获得的奖励收敛,代表找到了最优的rb资源分配方案。
37、本发明的一种基于机器学习的端到端网络切片资源分配方法,具有以下优点:强化学习算法作为整个算法的核心环节,根据接收到的奖励反馈不断学习更好的rb资源分配方案。而随机森林算法作为辅助环节,帮助强化学习快速判断其给定的分配方案是否满足核心网的各项约束。两者相辅相成,将原来端到端联合优化的问题在不影响最优解的前提下,转化为在接入网侧和核心网侧单独优化。从而大大降低了计算时间复杂度,提高了资源分配的效率。