大数据平台调度系统资源分配优化方法和装置
文献发布时间:2024-01-17 01:14:25
技术领域
本发明涉及大数据处理技术领域,尤其涉及一种大数据平台调度系统资源分配优化方法和装置。
背景技术
目前的大数据平台调度系统对系统资源分配的优化方法,还无法解决高复杂度、高维、高非线性的资源分配优化问题,其存在的资源分配优化问题难点如下:
1、大数据平台仅为各租户提供算子及算力服务,对于各租户在平台上运行作业的特点及特征缺乏了解,因此很难将调度资源分配问题抽象为数学模型。
2、大数据平台租户众多,因此其资源分配问题属于高维约束优化问题,相对复杂,一般代理模型难以精确建模,导致无法优化或优化结果不佳。
目前优化调度系统的方法大多独立使用进化算法(入粒子群算法)优化调度模型,而基于种群进化的进化算法在种群迭代进化中会需要大量的真实目标函数计算(即调度系统通过按指定参数实际运行得到结果,大概需要100倍问题维度次真实计算),大数据平台中如果将一个租户看成一个问题维度,那对于租户众多的平台来说,这会导致海量的成本浪费并往往是无法接受的。
发明内容
有鉴于此,本发明提供一种大数据平台调度系统资源分配优化方法和装置,以解决上述至少一个问题。
根据本发明的第一方面,提供一种大数据平台调度系统资源分配优化方法,所述方法包括:将总作业运行时间最小化作为大数据平台调度系统资源分配的优化目标,待优化参数为所述大数据平台中各租户的资源配额,问题维度数为租户个数D,约束为各租户配额的总和小于大数据平台调度系统总资源量;利用资源方法在变量空间中生成全局模型数据集,使用RBNN训练该全局模型数据集获得全局RBNN模型;利用L-SHADE对所述全局RBNN模型进行全局迭代优化得到最后一代种群个体;根据最后一代种群个体采用填充准则获得局部模型数据集,并使用RBNN训练该局部模型数据集获得局部RBNN模型;利用L-SHADE对所述局部RBNN模型进行局部迭代优化得到优化结果,将所述优化结果作为大数据平台调度系统各租户资源分配的策略。
优选的,本发明实施例的上述方法中利用L-SHADE对所述全局RBNN模型进行全局迭代优化得到最后一代种群个体包括:利用L-SHADE对所述全局RBNN模型进行种群更新迭代;判断种群代数是否为问题维度数的整数倍;响应于所述种群代数是问题维度数的整数倍,根据适应度值在当前种群中选择最佳个体,计算全部种群中个体与所述最佳个体间的欧拉距离,剔除距离最远的预设数量的个体,并基于剩余个体使用RBNN重新训练全局RBNN模型;响应于所述种群代数不是问题维度数的整数倍,则保持全局RBNN模型不变,继续利用L-SHADE对所述全局RBNN模型进行种群更新迭代。
优选的,本发明实施例的上述方法中根据最后一代种群个体采用填充准则获得局部模型数据集,并使用RBNN训练该局部模型数据集获得局部RBNN模型包括:选取全局迭代优化后最后一代种群个体中适应度值由高到低排序中前x个个体,同时选取全局迭代优化过程中产生的最后y代中各代最优秀的个体,来组成局部模型数据集,使用RBNN训练该局部模型数据集获得局部RBNN模型。
优选的,本发明实施例的上述方法中选取最后一代种群个体中适应度值由高到低排序中前x个个体时,x取值为D/2;选取最后y代中各代最优秀的个体时,y取值为D/2;组成的局部模型数据集的大小为D。
优选的,本发明实施例的上述方法中选取全局迭代优化后最后一代种群个体中适应度值由高到低排序中前x个个体,同时选取全局迭代优化过程中产生的最后y代中各代最优秀的个体,来组成局部模型数据集包括:选取全局迭代优化后最后一代种群个体中适应度值由高到低排序中前x个个体,同时选取全局迭代优化过程中产生的最后y代中各代最优秀的个体;计算这些个体中各维元素的方差和均值;基于所述方差和均值根据高斯模型生成由D个新个体组成的局部模型数据集。
根据本发明的第二方面,还提供一种大数据平台调度系统资源分配优化装置,所述装置包括:模型设定单元,用于将总作业运行时间最小化作为大数据平台调度系统资源分配的优化目标,待优化参数为所述大数据平台中各租户的资源配额,问题维度数为租户个数D,约束为各租户配额的总和小于大数据平台调度系统总资源量;全局模型训练单元,用于利用资源方法在变量空间中生成全局模型数据集,使用RBNN训练该全局模型数据集获得全局RBNN模型;全局优化单元,用于利用L-SHADE对所述全局RBNN模型进行全局迭代优化得到最后一代种群个体;局部模型训练单元,用于根据最后一代种群个体采用填充准则获得局部模型数据集,并使用RBNN训练该局部模型数据集获得局部RBNN模型;局部优化单元,用于利用L-SHADE对所述局部RBNN模型进行局部迭代优化得到优化结果,将所述优化结果作为大数据平台调度系统各租户资源分配的策略。
优选的,本发明实施例的上述装置中全局优化单元包括:更新迭代模块,用于利用L-SHADE对所述全局RBNN模型进行种群更新迭代,以及当判断单元判断种群代数不是问题维度数的整数倍时,继续利用L-SHADE对所述全局RBNN模型进行种群更新迭代;判断模块,用于判断种群代数是否为问题维度数的整数倍;模型进化模块,用于响应于所述种群代数是问题维度数的整数倍,根据适应度值在当前种群中选择最佳个体,计算全部种群中个体与所述最佳个体间的欧拉距离,剔除距离最远的预设数量的个体,并基于剩余个体使用RBNN重新训练全局RBNN模型。
优选的,本发明实施例的上述装置中局部模型训练单元具体用于:选取全局迭代优化后最后一代种群个体中适应度值由高到低排序中前x个个体,同时选取全局迭代优化过程中产生的最后y代中各代最优秀的个体,来组成局部模型数据集,使用RBNN训练该局部模型数据集获得局部RBNN模型。
优选的,本发明实施例的上述装置中选取最后一代种群个体中适应度值由高到低排序中前x个个体时,x取值为D/2;选取最后y代中各代最优秀的个体时,y取值为D/2;组成的局部模型数据集的大小为D。
优选的,本发明实施例的上述装置中局部模型训练单元选取全局迭代优化后最后一代种群个体中适应度值由高到低排序中前x个个体,同时选取全局迭代优化过程中产生的最后y代中各代最优秀的个体,来组成局部模型数据集包括:选取全局迭代优化后最后一代种群个体中适应度值由高到低排序中前x个个体,同时选取全局迭代优化过程中产生的最后y代中各代最优秀的个体;计算这些个体中各维元素的方差和均值;基于所述方差和均值根据高斯模型生成由D个新个体组成的局部模型数据集。
根据本发明的第三方面,提供一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,处理器执行所述计算机程序时实现上述方法的步骤。
根据本发明的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
根据本发明的第五方面,提供一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现上述方法的步骤。
由上述技术方案可知,本发明在大数据平台调度系统资源分配中,将总作业运行时间最小化作为大数据平台调度系统资源分配的优化目标,待优化参数为所述大数据平台中各租户的资源配额,问题维度数为租户个数D,约束为各租户配额的总和小于大数据平台调度系统总资源量,采用进化算法及神经网络深度学习技术,从而具有以较低成本处理高维优化问题的效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本申请实施例提供的一种大数据平台调度系统资源分配优化方法的流程示意图;
图2是本申请另一实施例提供的一种大数据平台调度系统资源分配优化方法的流程示意图;
图3是本申请实施例提供的利用填充策略组成局部模型数据集的流程示意图;
图4是本申请实施例提供的大数据平台调度系统资源分配优化方法的原理图;
图5是本申请实施例提供的一种大数据平台调度系统资源分配优化装置的结构示意图;
图6是本申请实施例提供的全局优化单元的结构示意图;
图7是本申请实施例提供的电子设备的系统构成示意框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
如图1所示为本申请实施例提供的一种大数据平台调度系统资源分配优化方法的流程示意图,该方法包括:
步骤S101:将总作业运行时间最小化作为大数据平台调度系统资源分配的优化目标,待优化参数为所述大数据平台中各租户的资源配额,问题维度数为租户个数D,约束为各租户配额的总和小于大数据平台调度系统总资源量。
步骤S102:利用资源方法在变量空间中生成全局模型数据集,使用解径向基函数神经网络(Radial Basis Neural Network,RBNN)训练该全局模型数据集获得全局RBNN模型。
在本实施例中,资源方法是指一种抽样方法,比如可以采用拉丁超立方抽样(Latin hypercube sampling,LHS)的方法在变量空间中生成全局模型数据集,拉丁超立方抽样是一种从多元参数分布中近似随机抽样的方法,属于分层抽样技术。分层抽样是统计学的一从统计总体(又称为“母体”)抽取样本方法,将抽样单位按某种特征或某种规则划分为不同的层,然后从不同的层中独立、随机地抽取样本。从而保证样本的结构与总体的结构比较相近,并提高估计的精度。因此利用拉丁超立方抽样可以实现仅用少量的真实样本点就能衍生出大量需要的准备的数据量。
优选的,该全局模型数据集的大小可以设置为10倍的问题维数,即大小设置为10D,由此,可以根据由少量真实样本点组成的全局数据集训练全局RBNN模型,由于真实样本点需要实际运行,因此计算代价较高,而本申请拟合实际问题所得到的全局RBNN模型,其计算适应度值的时候相对廉价,可以此取代昂贵的真实目标函数在进化过程中评价种群中个体的适应度值。
步骤S103:利用L-SHADE对所述全局RBNN模型进行全局迭代优化得到最后一代种群个体。
在本实施例中,对于全局RBNN模型的优化采用了L-SHADE算法,该算法已被证明在复杂优化问题中较传统进化算法更高效、更准确、适应问题维度更高,因此在解决高维的大数据平台调度系统资源分配优化问题中,具有更好地优化效果。
步骤S104:根据最后一代种群个体采用填充准则获得局部模型数据集,并使用RBNN训练该局部模型数据集获得局部RBNN模型。
步骤S105:利用L-SHADE对所述局部RBNN模型进行局部迭代优化得到优化结果,将所述优化结果作为大数据平台调度系统各租户资源分配的策略。
本申请通过将大数据平台调度系统各租户资源分配策略抽象为RBNN模型,并对该模型利用L-SHADE算法分别进行全局优化和局部优化,从而得到最优的资源分配策略,相比于现有技术本申请实现起来成本更低,效果更优。
如图2所示为本申请另一实施例提供的一种大数据平台调度系统资源分配优化方法的流程示意图,该方法包括如下步骤:
步骤S201:将总作业运行时间最小化作为大数据平台调度系统资源分配的优化目标,待优化参数为所述大数据平台中各租户的资源配额,问题维度数为租户个数D,约束为各租户配额的总和小于大数据平台调度系统总资源量。
步骤S202:利用资源方法在变量空间中生成全局模型数据集,使用RBNN训练该全局模型数据集获得全局RBNN模型。
步骤S203:利用L-SHADE对所述全局RBNN模型进行种群更新迭代。
步骤S204:判断种群代数是否为问题维度数的整数倍,若是则进入步骤S205,若否,则保持全局RBNN模型不变并返回步骤S203。
步骤S205:根据适应度值在当前种群中选择最佳个体,计算全部种群中个体与所述最佳个体间的欧拉距离。
步骤S206:剔除距离最远的预设数量的个体,并基于剩余个体使用RBNN重新训练全局RBNN模型,然后更新该全局RBNN模型。
在本实施例中,通过步骤S205计算出全部种群中个体与最佳个体间的欧拉距离后,可以将这些个体根据欧拉距离进行排序,比如按由远及近的顺序进行排序,然后剔除距离最远的预设数量的个体,比如在所有个体中剔除距离最远的10%的个体。这部分个体可以被认为是价值较低的个体,对于模型的训练帮助不大,这里10%的设定值可以根据需要或实验进行设置,通常以找到一平衡点为准,因为剔除太多可能会产生信息损失,剔除太少则可能降低优化收敛速度。
步骤S207:判断迭代优化是否完成,若未完成,则返回步骤S203,若完成,则进入步骤S208。
步骤S208:选取全局迭代优化后最后一代种群个体中适应度值由高到低排序中前x个个体,同时选取全局迭代优化过程中产生的最后y代中各代最优秀的个体,来组成局部模型数据集。在本实施例中,通过收集其他代中部分个体,可以避免过拟合及局部数据集变量范围过小。
优选的,在本实施例中上述x的取值较优的可以为D/2;选取最后y代中各代最优秀的个体时,y的取值较优的可以为D/2;组成的局部模型数据集的大小为D。
进一步优选的,如图3所示,以x及y取D/2为例,本步骤可以进一步包括如下子步骤:
步骤S2081:选取全局迭代优化后最后一代种群个体中的D/2个最优秀的个体,同时选取全局迭代优化过程中产生的最后D/2代中各代最优秀的个体。
步骤S2082:计算这些个体中各维元素的方差和均值。
步骤S2083:基于所述方差和均值根据高斯模型生成由D个新个体组成的局部模型数据集。
步骤S209:使用RBNN训练该局部模型数据集获得局部RBNN模型。
步骤S210:利用L-SHADE对所述局部RBNN模型进行局部迭代优化得到优化结果,将所述优化结果作为大数据平台调度系统各租户资源分配的策略。
本步骤中“利用L-SHADE对所述局部RBNN模型进行局部迭代优化得到优化结果”具体来说可以参见前述步骤S203-步骤S207,在此就再继续赘述了。通过对局部RBNN模型进行迭代优化后,得到的优化结果即为大数据平台调度系统各租户资源分配的最优策略。
如图4所示为上述大数据平台调度系统资源分配优化方法的原理图,由图4可见本申请分为两个阶段,第一个阶段是全局优化阶段,第二个阶段是局部优化阶段,两个阶段都采用了L-SHADE算法作为迭代优化算法,首先利用拉丁超立方采样获取全局数据集,然后利用该全局数据集训练得到全局RBNN模型,该全局RBNN模型可以输出大数据平台调度系统资源分配的策略,该全局RBNN模型可采用离线模型更新策略,即优化过程中不断移除低价值样本点,使用剩余样本点不断更新全局代理模型的策略;然后利用L-SHADE算法对该全局RBNN模型进行迭代优化,得到最后一代种群个体;接着利用填充策略补齐局部数据集,并利用该局部数据集训练局部RBNN模型;最后再利用L-SHADE算法对该局部RBNN模型行迭代优化得到最优解,该最优解即为大数据平台调度系统各租户资源分配的最优策略。
如图5所示为本申请实施例提供的一种大数据平台调度系统资源分配优化装置的结构示意图,该装置包括:模型设定单元510、全局模型训练单元520、全局优化单元530、局部模型训练单元540和局部优化单元550,它们之间依次相连。
模型设定单元510用于将总作业运行时间最小化作为大数据平台调度系统资源分配的优化目标,待优化参数为所述大数据平台中各租户的资源配额,问题维度数为租户个数D,约束为各租户配额的总和小于大数据平台调度系统总资源量。
全局模型训练单元520用于利用资源方法在变量空间中生成全局模型数据集,使用RBNN训练该全局模型数据集获得全局RBNN模型。
全局优化单元530用于利用L-SHADE对所述全局RBNN模型进行全局迭代优化得到最后一代种群个体。
局部模型训练单元540用于根据最后一代种群个体采用填充准则获得局部模型数据集,并使用RBNN训练该局部模型数据集获得局部RBNN模型。
局部优化单元550用于利用L-SHADE对所述局部RBNN模型进行局部迭代优化得到优化结果,将所述优化结果作为大数据平台调度系统各租户资源分配的策略。
优选的,如图6所示,上述全局优化单元530进一步可包括:
更新迭代模块531用于利用L-SHADE对所述全局RBNN模型进行种群更新迭代,以及当判断单元判断种群代数不是问题维度数的整数倍时,继续利用L-SHADE对所述全局RBNN模型进行种群更新迭代;
判断模块532用于判断种群代数是否为问题维度数的整数倍;
模型进化模块533用于响应于所述种群代数是问题维度数的整数倍,根据适应度值在当前种群中选择最佳个体,计算全部种群中个体与所述最佳个体间的欧拉距离,剔除距离最远的预设数量的个体,并基于剩余个体使用RBNN重新训练全局RBNN模型。
优选的,上述局部模型训练单元540具体可以用于:选取全局迭代优化后最后一代种群个体中适应度值由高到低排序中前x个个体,同时选取全局迭代优化过程中产生的最后y代中各代最优秀的个体,来组成局部模型数据集,使用RBNN训练该局部模型数据集获得局部RBNN模型。
优选的,上述局部模型训练单元540选取最后一代种群个体中适应度值由高到低排序中前x个个体时,x取值为D/2;选取最后y代中各代最优秀的个体时,y取值为D/2;组成的局部模型数据集的大小为D。
优选的,上述局部模型训练单元540选取全局迭代优化后最后一代种群个体中适应度值由高到低排序中前x个个体,同时选取全局迭代优化过程中产生的最后y代中各代最优秀的个体,来组成局部模型数据集包括:选取全局迭代优化后最后一代种群个体中适应度值由高到低排序中前x个个体,同时选取全局迭代优化过程中产生的最后y代中各代最优秀的个体;计算这些个体中各维元素的方差和均值;基于所述方差和均值根据高斯模型生成由D个新个体组成的局部模型数据集。
本申请通过将大数据平台调度系统各租户资源分配策略抽象为RBNN模型,并对该模型利用L-SHADE算法分别进行全局优化和局部优化,从而得到最优的资源分配策略,相比于现有技术本申请实现起来成本更低,效果更优。
本发明实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行所述程序时实现上述方法。
本发明实施例还提供一种计算机程序产品,包括计算机程序/指令,计算机程序/指令被处理器执行时实现上述方法的步骤。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有执行上述方法的计算机程序。
如图7所示,该电子设备600还可以包括:通信模块110、输入单元120、音频处理器130、显示器160、电源170。值得注意的是,电子设备600也并不是必须要包括图7中所示的所有部件;此外,电子设备600还可以包括图7中没有示出的部件,可以参考现有技术。
如图7所示,中央处理器100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器100接收输入并控制电子设备600的各个部件的操作。
其中,存储器140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器100可执行该存储器140存储的该程序,以实现信息存储或处理等。
输入单元120向中央处理器100提供输入。该输入单元120例如为按键或触摸输入装置。电源170用于向电子设备600提供电力。显示器160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器140还可以是某种其它类型的装置。存储器140包括缓冲存储器141(有时被称为缓冲器)。存储器140可以包括应用/功能存储部142,该应用/功能存储部142用于存储应用程序和功能程序或用于通过中央处理器100执行电子设备600的操作的流程。
存储器140还可以包括数据存储部143,该数据存储部143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器140的驱动程序存储部144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块110即为经由天线111发送和接收信号的发送机/接收机110。通信模块(发送机/接收机)110耦合到中央处理器100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)110还经由音频处理器130耦合到扬声器131和麦克风132,以经由扬声器131提供音频输出,并接收来自麦克风132的音频输入,从而实现通常的电信功能。音频处理器130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器130还耦合到中央处理器100,从而使得可以通过麦克风132能够在本机上录音,且使得可以通过扬声器131来播放本机上存储的声音。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
- 移动换电装置的调度方法、系统、调度服务器和设备
- 一种智能调度系统的资源分配全局优化方法
- 在未许可频谱中用于调度的PUSCH传输的资源分配的系统、方法和装置