System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及一种基于混合预测模型的微服务集群负载预测方法,属于时间序列预测。
技术介绍
1、微服务架构具有独立部署、易维护、易扩展的优点。随着应用规模的不断扩大,微服务架构的使用变得越来越广泛,因此如何能更好地掌握微服务集群的运行特点和规律,成为了一个关键课题。kubernetes是现在主流的微服务架构平台,具有弹性伸缩、自我修复、负载均衡、服务发现、存储编排等强大的功能,极大的解放了运维人员的生产力,让开发人员可以专注于业务功能的实现。但是kubernetes提供的伸缩和调度功能等在流量变化复杂的情形下可能无法实现最佳响应,会导致用户请求响应时间变长、集群负载均衡度降低,从而影响集群的服务质量。
2、针对这个问题,使用时序预测领域的技术对集群负载进行预测可以提前感知流量变化,在流量高峰时可以主动进行伸缩等操作,从而提升了集群的响应能力和负载均衡度。
技术实现思路
1、针对上述问题,本专利技术提供了一种基于混合预测模型的微服务集群负载预测方法。
2、技术方案
3、一种基于混合预测模型的微服务集群负载预测方法,包括以下步骤:
4、s1、对微服务集群的负载历史数据序列进行数据预处理,得到处理后的负载数据;
5、s2、使用info算法对vmd算法的两个关键参数imf分量个数k和惩罚因子α进行优化,确定最优参数[k,α],得到优化后的vmd算法;
6、s3、将步骤s1处理后的负载数据输入优化后的vmd算法中,通过分解
7、s4、使用sabo算法对bilstm的隐藏层节点数、初始学习率和l2正则化系数三个参数进行优化,得到优化后的bilstm神经网络;
8、s5、将步骤s3得到的k个imf分量输入优化后的bilstm神经网络,经过训练,输出k组预测值,将k组预测值进行叠加得到最终的预测结果。
9、进一步地,步骤s1中,所述预处理包括处理缺失值、异常值、错误数据清洗和数据转换;
10、所述负载历史数据序列中不一定严格按照时间戳顺序进行排列,需要进行顺序调整;在处理缺失值时,使用上下两个时刻的负载值的平均值进行填充;负载数据的合理取值范围是[0,1],剔除异常值,同样用平均值填充。
11、进一步地,步骤s2中,对vmd算法的参数imf分量个数k和惩罚因子α进行优化时,将最小包络熵作为适应度函数,用来评价[k,α]选取的合理性。
12、在步骤s2所使用的向量加权平均算法(weighted mean ofvectors algorithm,info)是一种新型元启发式优化算法,使用三个核心步骤更新向量的位置:更新规则、向量合并和局部搜索。据研究,在48个数学测试函数和5个工程测试案例中,info算法性能较gwo、pso、gsa和sca等优化算法更好;在工程问题中该算法可以收敛到全局最优解的0.99%。
13、进一步地,步骤s3中,使用vmd分解算法对负载序列进行分解,可以有效去除原始序列中的噪声成分,得到更干净的负载序列,同时也可以通过分析每个imf分量的频率和振幅特征,提取出负载序列的特征信息。vmd采用的是非递归求解,还可自主设置imf的个数k,自适应更新各imf的最优中心频率和带宽。
14、从原理上看,vmd实际上是将分解过程转化为了优化过程,可看作对变分问题的构造和求解。
15、变分问题构造如下式:
16、
17、式中,{uk}={u1,...,uk}表示的是分解得到的k个子模态;{ωk}={ω1,...,ωk}表示的是各分量的中心频率;δ(t)是狄拉克函数;*为卷积符号。
18、变分问题求解如下式:
19、
20、式中,α是二次惩罚因子,λ(t)是拉格朗日乘法算子,将约束性变分问题变为非约束性变分问题。
21、进一步地,步骤s4中,sabo算法(subtraction-average-basedoptimizer,减法平均的优化算法),是一种基于数学行为的智能优化算法,该算法具有寻优能力强,收敛速度快等特点。
22、使用sabo算法时,首先在寻优空间里随机初始化种群:
23、xi,j=lbj+rand(ubj-*lbj)
24、式中,xi,j为生成的个体,ubj和lbj分别为种群范围的上下边界,rand为0-1之间的随机数;
25、定义一个特殊运算-v,称为从搜索代理a减去搜索代理b的v-减法如下式:
26、
27、式中,v是来自集合{1,2}的向量,f(a)和f(b)为相应个体a的适应度值;
28、然后更新搜索代理x,如下式:
29、
30、式中,是第i个搜索代理x的新位置,n为个体的总数,为维数为m的向量,其中各分量的值在区间[0,1]内呈正态分布;
31、如果新位置适应度值提高,则接受新位置,否则保持不变。
32、进一步地,步骤s5中,将步骤s3中得到的k个imf分量输入经sabo算法优化后的bilstm神经网络,输出k组预测值,将k组预测值累加得到最终的预测结果。
33、bilstm神经网络的基础是lstm神经网络。lstm较rnn运算过程解耦了,每一个门都有独立的一组(u,w,b),能很好的控制信息的流入和流出。bilstm由两个独立的lstm组成,分别负责从两个方向(正向和逆向)对输入序列进行处理,在处理长序列和长期依赖关系时拥有更好的性能。
34、本专利技术的有益效果:
35、本专利技术提供了一种基于混合预测模型的微服务集群负载预测方法。首先对微服务集群的负载历史数据序列进行预处理,包括处理缺失值、异常值、错误数据清洗和数据转换,主要是将原始序列中不吻合时间戳顺序的数据去除,使用上下两个时刻数据的平均值进行填充;然后使用info算法对vmd分解算法的两个关键参数分量个数k和惩罚因子α进行优化,得到最佳的参数组合;再将数据预处理后的负载数据序列输入vmd分解算法得到k个分量,通过vmd分解可以有效去除原始序列中的噪声成分,得到更干净的负载序列,同时也可以通过分析每个imf分量的频率和振幅特征,提取出负载序列的特征信息;之后再使用sabo算法对bilstm的隐藏层节点数、初始学习率和l2正则化系数三个参数进行优化,提高bilstm神经网络的预测精度;最后将k个imf分量输入bilstm网络,对得到的k个输出做累加得到最终的预测结果。通过使用阿里开源的cluster-trace-v2018数据集进行验证,本专利技术所提算法的预测精度较主流算法的预测精度有一定程度的提升,对掌握微服务集群运行规律,提高对突发流量的主动响应能力有较显著作用。
本文档来自技高网...【技术保护点】
1.一种基于混合预测模型的微服务集群负载预测方法,其特征在于,包括以下步骤:
2.如权利要求1所述基于混合预测模型的微服务集群负载预测方法,其特征在于,步骤S1中,所述预处理包括处理缺失值、异常值、错误数据清洗和数据转换;
3.如权利要求1所述基于混合预测模型的微服务集群负载预测方法,其特征在于,步骤S2中,对VMD算法的参数IMF分量个数K和惩罚因子α进行优化时,将最小包络熵作为适应度函数,用来评价[K,α]选取的合理性。
4.如权利要求1所述基于混合预测模型的微服务集群负载预测方法,其特征在于,步骤S3中,分解时,VMD采用的是非递归求解,还可设置IMF的个数K,自适应更新各IMF的最优中心频率和带宽;通过分析每个IMF分量的频率和振幅特征,提取出负载数据序列的特征信息。
5.如权利要求1所述基于混合预测模型的微服务集群负载预测方法,其特征在于,步骤S4中,使用SABO算法时,首先在寻优空间里随机初始化种群:
【技术特征摘要】
1.一种基于混合预测模型的微服务集群负载预测方法,其特征在于,包括以下步骤:
2.如权利要求1所述基于混合预测模型的微服务集群负载预测方法,其特征在于,步骤s1中,所述预处理包括处理缺失值、异常值、错误数据清洗和数据转换;
3.如权利要求1所述基于混合预测模型的微服务集群负载预测方法,其特征在于,步骤s2中,对vmd算法的参数imf分量个数k和惩罚因子α进行优化时,将最小包络熵作为适应度函数,用来评价[k,α...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。