基于机器学习和统计模型检验的工作流最优配置寻优方法技术

技术编号:12571777 阅读:81 留言:0更新日期:2015-12-23 13:21
本发明专利技术公开了一种基于机器学习和统计模型检验的工作流最优配置寻优方法,包括以下步骤:可行RAI生成,获取工作流配置的所有可能组合实例,并经用户需求筛选得到所有符合要求的解;可行RAI的特征化,提取资源分配实例的特征以获取特征向量,并使用统计模型检验工具获取执行成功率;RAI预测,使用机器学习方法对选定的测试集进行训练得到回归函数,对测试集中的数据进行预测并对预测结果排序;预测结果验证,将预测结果反馈至统计模型检验工具,获得成功率的实际仿真值,并最终得到近似最优解。本发明专利技术在较短的时间内获得成功率高度可靠的工作流资源分配实例,提高用户体验。

【技术实现步骤摘要】

本专利技术涉及一种工作流建模方法,尤其涉及一种,通过监督学习和统计模型检验的应用,预测工作流分配实例的实际执行成功率,并给出大于指定阈值的一组配置。
技术介绍
工作流(Workflow)是指通过计算机,使业务流程整体或部分自动化。工作流管理联盟(WfMC)将工作流定义“商业流程的整体或部分自动化,期间文档、信息或任务将根据一系列程序化规则,在各个环节依次进行”。通过工作流,企业可更加高效地实现经营目的。机器学习指通过经验数据重新组织自身知识结构,使自身性能得到改进。近年来,机器学习已被成功应用于多个领域,如数据挖掘、信息过滤以及预测建模等。由于机器学习方法的自我性能改进能力,及对未知解的预测能力,其已被逐渐应用到云计算资源分配和管理工作中。监督学习是从标记的训练数据推断功能的机器学习任务,它可以用来解决分类和回归问题,其通过对部分已标注样本进行训练和学习,来预测未标注样本的目标值。模型检验(Model Checking)是形式化领域中一种非常重要的方法,在计算机软硬件及控制系统的验证中得到了广泛的应用。基于仿真的统计模型检验(StatisticalModel Checking, SMC)更加节省资源和时间,可以被视作在测试和形式化验证间的一种权衡。利用统计模型检验方法对复杂的大型系统进行验证,能有效地避免状态空间爆炸等问题。UPPAAL-SMC在UPPAAL的基础上进行了随机性和统计模型检验方面的扩展,是一个基于统计模型检验的工具。在资源偏差存在的情形下,传统的工作流寻优方法有以下的不足之处:为了在资源存在偏差的情况下获得近似最优的资源分配实例RAI (Resource Allocat1nInstance),需要对大量的RAI进行比较,整个寻优过程会有较长的耗时,从而导致需求反馈周期较长、用户体验下降。因此,提出更为有效的寻优方法能更好地节约时间、提高用户体验。
技术实现思路
本专利技术的目的是提供一种,系统地对资源分配策略进行优化。该方法使用统计模型检验技术,通过对系统随机仿真过程进行监测,并通过统计方法得到系统运行的成功率。同时利用机器学习中的监督学习方法,仅需要对少量的实例进行评估,可极大地降低寻优过程的总耗时。本专利技术的目的是这样实现的: 一种,包括以下步骤: a)可行RAI生成 使用深度优先遍历算法获取工作流配置的所有可能组合实例,并经指定的用户需求筛选得到所有符合要求的解; b)可行RAI的特征化 提取资源分配实例的特征,获取每一个资源分配实例对应的特征向量,并使用统计模型检验工具获取其对应的目标值,即执行成功率; c)RAI预测 使用机器学习中主流的监督学习方法,对选定的测试集进行训练得到回归函数,对测试集中的数据进行预测,并对预测结果进行排序; d)预测结果验证 将预测结果反馈至统计模型检验工具,获得成功率的实际仿真值,并最终返回仿真结果大于阈值的解即近似最优解;其中: 所述RAI是一个部署好具体配置的工作流任务,不同的RAI具有不同的执行时间、执行价格和执行误差。所述资源分配实例的特征,是根据用户需求和工作流执行的关键性能指标,提取的可区分和唯一标识一个工作流资源分配实例的参数集合;具体选取的特征为实例中每个服务节点的单位价格cost、实例中每个服务节点的执行时间分布、不考虑偏差时实例的整体价格以及实例的总体期望执行时间。所述成功率的实际仿真值,是通过统计模型检验工具对工作流实例进行建模,并将用户需求用时态逻辑表述,经仿真得到的值。本专利技术的有益效果是,可以高效地获得工作流资源分配实例的最优解,通过机器学习方法的应用,对成功率未知的实例进行预测。此外在建模和实例特征化过程中考虑了误差因素,并在获得预测结果后再次验证,因此可确保验证结果的可靠性。【附图说明】 图1为本专利技术的流程图; 图2为本专利技术【具体实施方式】流程图。【具体实施方式】下面结合附图及具体实施例,对本专利技术作进一步的详细说明。实施本专利技术的过程、条件、试验方法等,除以下专门提及的内容之外,均为本领域的普遍知识和公知常识,本专利技术没有特别限制内容。参阅图1,本专利技术包括:可行RAI生成、可行RAI的特征化、RAI预测及预测结果验证步骤。下面详述各个步骤。如图2所示,所有生成的资源分配实例(RAI)将经过用户的需求筛选从而得到可行实例,用户需求即用户提出的整体价格和时间限制。每个工作流节点可能存在多个虚拟机供选择,单个工作流的资源分配实例数量为Ii1 X n2 X…X nk个。在计算出每个RAI的整体价格和时间后将其与用户提出的需求限制进行比较筛选,即可得到所有的可行RAI。得到所有的可行RAI后,需要对这些RAI进行特征化处理,得到RAI的特征向量,用于进行机器学习。特征的合理提取是保证预测正确性的关键步骤之一。特征提取应当根据重要性、独立性和多样性的原则进行。具体的,对于一个对资源分配实例,本专利技术选取以下四种特征: 1.实例中每个服务节点的单位价格cost; 2.实例中每个服务节点的执行时间分布,即期望时间U(Vl,RAI(Vl))和平均差VAR(VijRAKv1)); 3.不考虑偏差时,实例的整体价格; 4.实例的总体期望执行时间; 上述特征相互独立并且能唯一代表一个实例,同时这些特征的数值也决定了一个RAI的性能,提取出的特征向量是在不确定环境中验证工作的最关键因素。假设工作流中有k个服务,则其特征向量将有3 X k+2个特征。每个被实例化的虚拟机配置会被编码成一个特征向量。由于特征化后的特征向量的数量仍然十分庞大,直接使用统计模型检验的方法获取这些特征向量的成功率将消耗大量的计算资源与时间,效率过低。本专利技术采用机器学习的思想对特征向量进行处理,大大提高了工作流配置的寻优效率。所有的特征向量将被分成两个集合:训练集和测试集。其中,训练集用于训练回归函数,而测试集则作为回归函数的输入,生成预测结果。本专利技术中采用监督学习方法执行基于预测的RAI寻优。训练集中的实例将采用统计模型检验(SMC)的方法,使用UPPAAL-SMC对系统进行大量的随机模拟运行,生成各个资源分配实例的成功率。训练集中的特征向量和对应的成功率将作为监督学习算法的输入,用于训练得到回归函数。训练获得的回归函数将作用于测试集,预测测试集中各个特征向量的成功率,这些成功率数据即为回归函数对于测试集的预测结果。预测完成后根据测试集中预测得到的成功率进行排序,所有RAI按降序排列。在对按序排列的实例集进行筛选,去除掉成功率数值异常(如超过100%)的实例后,即得到了期望的有序实例集。最后,本专利技术再次使用UPPAAL-SMC迭代地验证该降序序列。在迭代过程中,如果一个实例的成功率验证值(SR)大于T,则将该实例作为近似最优解给出。否则提示实例集中无实例可以满足给定的QoS (服务质量)阈值。同时对于训练集中的实例,同样将实例的成功率与T进行比较,若SR>T则作为近似最优解给出。至此,所有寻优步骤完成,所有的近似最优解被获取到。本专利技术能够在较短的时间内获得成功率高度可靠的工作流资源分配实例,提高用户体验。【主权项】1.,其特征在于,该方法包括以下步骤: a)可行RAI生成 使用深度优先遍历算法获取工作流配置的所有可能组本文档来自技高网
...

【技术保护点】
基于机器学习和统计模型检验的工作流最优配置寻优方法,其特征在于,该方法包括以下步骤:a)可行RAI生成使用深度优先遍历算法获取工作流配置的所有可能组合实例,并经指定的用户需求筛选得到所有符合要求的解;b)可行RAI的特征化提取资源分配实例的特征,获取每一个资源分配实例对应的特征向量,并使用统计模型检验工具获取其对应的目标值,即执行成功率;c)RAI预测使用机器学习中主流的监督学习方法,对选定的测试集进行训练得到回归函数,对测试集中的数据进行预测,并对预测结果进行排序;预测结果验证将预测结果反馈至统计模型检验工具,获得成功率的实际仿真值,并最终返回仿真结果大于阈值的解即近似最优解;其中:所述RAI是一个部署好具体配置的工作流任务,不同的RAI具有不同的执行时间、执行价格和执行误差。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈铭松顾璠黄赛杰
申请(专利权)人:华东师范大学
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1