System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及数据处理,尤其涉及数据处理方法、装置、计算设备集群、介质及程序产品。
技术介绍
1、数学规划是一种将复杂的实际问题建模成数学问题的技术,可以广泛应用在解决实际问题的业务中,采用不同的数学算法可以建立对应数学问题的数学模型,通过将用于解决数学规划问题的数学模型表达式转换为计算设备可以处理的求解文件,实现通过数学规划求解器求解数学规划模型的最优解。
2、当前,用户可以将根据实际问题构建的数学模型表达式输入计算设备中,计算设备需要生成数学模型表达式中目标函数的表达式以及各个约束条件的表达式各自转化为求解文件中的部分内容,并生成完整的求解文件,以完成对数学规划模型的构建。在数学模型表达式中约束条件复杂且数据量较大的情况下,通过依次生成各部分求解文件的过程可能会耗费较长的时间,从而导致数学规划模型构建的效率较差。
技术实现思路
1、本申请实施例提供了一种数据处理方法、装置、计算设备集群、介质及程序产品,提高了数学规划模型构建的效率。
2、第一方面,本申请提供了一种数据处理方法,应用于数学规划求解器,数学规划求解器部署在计算设备上,计算设备具有多个线程,该方法包括:获取数学模型表达式和实例数据文件,数学模型表达式中包括至少一个子表达式,子表达式为目标函数或约束条件,子表达式包括变量以及系数,实例数据文件包括实例数据,实例数据用于指示数学模型表达式的各个子表达式中系数的值;将数学模型表达式和实例数据转换为原始数据块,原始数据块是用于指示数学模型表达式的各个子表达
3、可以理解的是,计算设备通过获取数学模型表达式和实例数据文件可以将数学模型表达式和实例数据转化为原始数据块,按照相似度阈值可以将原始数据块切分为多个子数据块,其中,多个子数据块的数据特征之间可以保证符合相似度阈值,将切分得到的多个子数据块可以分配给多个线程并行处理,从而生成求解文件,完成对数学模型的构建过程,求解文件可以用于对多个子数据块对应的子表达式进行求解运算,从而得到数学模型表达式的求解结果。由于切分后的各个子数据块的稀疏度或均匀值之间的相似程度符合相似度阈值,所以在将各个子数据块分配给多个线程进行并行处理时,在保证了多线程并行生成求解文件的基础上,还进一步保证了分配给每个线程处理的工作量较为均匀,从而提高了数学规划模型的求解文件生成效率,进而提高了数学规划模型构建的效率。
4、在一种可能的实现方式中,将数学模型表达式和实例数据转换为原始数据块,包括:将数学模型表达式转换成数学模型表达式树的形式;确定数学模型表达式树包括至少一个第一结构,以确定数学模型表达式带有嵌套结构,第一结构用于指示嵌套结构对应的数学模型表达式的结构;对数学模型表达式进行表达式展开处理,得到展开后的模型表达式;将实例数据代入展开后的数学模型表达式,得到数学模型表达式的原始数据块。
5、可以理解的是,计算设备可以将数学模型表达式转换成数学模型表达式树的形式,在通过判断数学模型表达式树种是否包含第一结构,确定数学模型表达式中是否存在嵌套结构,在确定数学模型表达式中包括嵌套结构的情况下对该表达式进行展开处理,得到展开后的模型表达式,通过将实例数据代入展开后的数学模型表达式中可以得到原始数据块,从而使得计算设备可以准确的判断数学模型表达式中是否存在嵌套结构,从而解决在存在嵌套结构的情况下,对表达式进行展开处理,便于后续将原始数据块进行拆分。
6、在一种可能的实现方式中,对数学模型表达式进行表达式展开处理,包括:将数学模型表达式树中的第一结构按照指定规则进行变换,得到变换后的模型表达式树,变换后的模型表达式树是展开后的数学模型表达式的对应的模型表达式树;其中,指定规则是将第一结构替换为第二结构,第二结构用于指示嵌套结构的展开结构对应的数学模型表达式的结构。
7、可以理解的是,通过指定规则可以将第一结构替换为第二结构,从而将模型表达式树进行结构变换,变换后的模型表达式树对应的模型表达式为展开后的模型表达式,通过上述的变换计算设备可以准确快速的将模型表达式中的嵌套结构进行展开处理,从而保证后续可以成功实现对原始数据块的切分。
8、在一种可能的实现方式中,数据特征包括稀疏度,方法还包括:确定相似度阈值,相似度阈值用于指示多个子数据块的稀疏度之间的相似程度;将原始数据块切分为多个子数据块,包括:按照相似度阈值,将原始数据块均分为多个子数据块,多个子数据块的稀疏度之间的相似程度符合相似度阈值。
9、可以理解的是,在数据特征包括稀疏度的情况下,计算设备可以确定用于指示多个子数据块的稀疏度之间的相似程度的相似度阈值,然后按照相似度阈值将原始数据块切分为多个子数据块,使得切分后的多个子数据块各自的稀疏度可以较为相似,从而保证后续分配给多个线程处理时每个线程的运算量较为平衡,从而保证计算设备的运算负载平衡。
10、在一种可能的实现方式中,确定相似度阈值,包括:将数据特征输入最优阈值选择模型,获取由最优阈值选择模型输出的相似度阈值;或,接收用户输入的所述相似度阈值。
11、可以理解的是,在一种情况下,计算设备可以将数据特征输入最优阈值选择模型,获取由最优阈值选择模型输出的相似度阈值,或者在另一种情况下,计算设备可以将接收用户输入的相似度阈值确定为相似度阈值,从而得到合适的相似度阈值,以满足多个线程处理的子数据块的运算量较为均衡。
12、在一种可能的实现方式中,最优阈值选择模型是通过样本数据块的数据特征以及相似度阈值标签进行训练的神经网络模型,样本数据块的数据特征包括样本数据块的稀疏度,相似度阈值标签是样本数据块被人为标注的相似度阈值。
13、可以理解的是,最优阈值选择模型可以是预先进行模型训练完成的神经网络模型,从而保证得到的相似度阈值可以按照数据特征进行自适应,以满足后续多个线程处理的子数据块的运算量较为均衡。
14、在一种可能的实现方式中,将原始数据块切分为多个子数据块,包括:根据线程数,将原始数据块切分为多个子数据块。
15、可以理解的是,由于需要将切分后的子数据块分配给多个线程,所以需要按照计算设备中的线程数将原始数据块切分为多个子数据块,以保证多个子数据块后续在分配给各个线程处理时各个线程的运算量较为均衡,从而提高模型构建的效率。
16、在一种可能的实现方式中,将原始数据块切分为多个子数据块,包括:将原始数据块转换成稀疏矩阵格式coo,得到格式转换后的原始数据块;将格式转换后的原始数据块切分为多个子数据块。
17、可以理解的是,在将原始数据块进行切分时首先可以将原始数本文档来自技高网...
【技术保护点】
1.一种数据处理方法,其特征在于,应用于数学规划求解器,所述数学规划求解器部署在计算设备上,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述将所述数学模型表达式和所述实例数据转换为原始数据块,包括:
3.根据权利要求2所述的方法,其特征在于,所述对所述数学模型表达式进行表达式展开处理,包括:
4.根据权利要求1至3任一项所述的方法,其特征在于,所述数据特征包括稀疏度,所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,所述确定所述相似度阈值,包括:
6.根据权利要求5所述的方法,其特征在于,所述最优阈值选择模型是通过样本数据块的数据特征以及相似度阈值标签进行训练的神经网络模型,所述样本数据块的数据特征包括所述样本数据块的稀疏度,所述相似度阈值标签是所述样本数据块被人为标注的相似度阈值。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述将所述原始数据块切分为多个子数据块,包括:
8.根据权利要求1至7任一项所述的方法,其特征在于,所述将所述多个子数据块分配给多个线程进行
9.根据权利要求1至8任一项所述的方法,其特征在于,所述数据特征包括稀疏度、非零元素比例、非零元素数目、零元素数目、矩阵方差、word-embedding的映射值中的一者。
10.根据权利要求1至9任一项所述的方法,其特征在于,所述数学模型表达式用于求解工厂排产问题、供需模拟问题、能源调度问题中的一者,所述实例数据为工厂排产问题、供需模拟问题、能源调度问题中一者的实例数据,所述求解结果用于指导解决工厂排产问题、供需模拟问题、能源调度问题中的一者。
11.一种数据处理装置,其特征在于,应用于数学规划求解器,所述数学规划求解器部署在计算设备上,所述计算设备具有多个线程,所述装置包括:
12.根据权利要求11所述的装置,其特征在于,所述处理模块,还用于将所述数学模型表达式转换成数学模型表达式树的形式;确定所述数学模型表达式树包括至少一个第一结构,以确定所述数学模型表达式带有嵌套结构,所述第一结构用于指示所述嵌套结构对应的数学模型表达式的结构;对所述数学模型表达式进行表达式展开处理,得到展开后的模型表达式;将所述实例数据代入所述展开后的数学模型表达式,得到所述数学模型表达式的原始数据块。
13.根据权利要求12所述的装置,其特征在于,所述处理模块,还用于将所述数学模型表达式树中的所述第一结构按照指定规则进行变换,得到变换后的模型表达式树,所述变换后的模型表达式树是所述展开后的数学模型表达式的对应的模型表达式树;其中,所述指定规则是将所述第一结构替换为第二结构,所述第二结构用于指示所述嵌套结构的展开结构对应的数学模型表达式的结构。
14.根据权利要求11至13任一项所述的装置,其特征在于,所述数据特征包括稀疏度,所述装置还包括:
15.根据权利要求14所述的装置,其特征在于,所述确定模块,还用于将所述数据特征输入最优阈值选择模型,获取由所述最优阈值选择模型输出的所述相似度阈值;或,接收用户输入的所述相似度阈值。
16.根据权利要求15所述的装置,其特征在于,所述最优阈值选择模型是通过样本数据块的数据特征以及相似度阈值标签进行训练的神经网络模型,所述样本数据块的数据特征包括所述样本数据块的稀疏度,所述相似度阈值标签是所述样本数据块被人为标注的相似度阈值。
17.根据权利要求11至16任一项所述的装置,其特征在于,所述处理模块,还用于将所述原始数据块转换成稀疏矩阵格式COO,得到格式转换后的原始数据块;将所述格式转换后的原始数据块切分为所述多个子数据块。
18.根据权利要求11至17任一项所述的装置,其特征在于,所述生成模块,还用于将所述多个子数据块分配给所述多个线程进行并行处理,生成子约束块,所述子约束块用于指示所述子数据块与所述数学模型表达式中为约束条件的子表达式的映射关系以及所述子数据块和/或所述数字模型表达式中为目标函数的子表达式的映射关系;将所述子约束块进行拼接,以生成所述求解文件。
19.根据权利要求11至18任一项所述的装置,其特征在于,所述数据特征包括稀疏度、非零元素比例、非零元素数目、零元素数目、矩阵方差、word-embedding的映射值中的一者。
20.根据权利要求11至19任一项所述的装置,其特征在于,所述数学模型表达式用于求解工厂排产问题、供需模拟问题、能源调度问题中的一者,所述实例数据为工厂排产问题、供需模拟问题、能源调度问题中一者的实例数据,所述求解结果...
【技术特征摘要】
1.一种数据处理方法,其特征在于,应用于数学规划求解器,所述数学规划求解器部署在计算设备上,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述将所述数学模型表达式和所述实例数据转换为原始数据块,包括:
3.根据权利要求2所述的方法,其特征在于,所述对所述数学模型表达式进行表达式展开处理,包括:
4.根据权利要求1至3任一项所述的方法,其特征在于,所述数据特征包括稀疏度,所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,所述确定所述相似度阈值,包括:
6.根据权利要求5所述的方法,其特征在于,所述最优阈值选择模型是通过样本数据块的数据特征以及相似度阈值标签进行训练的神经网络模型,所述样本数据块的数据特征包括所述样本数据块的稀疏度,所述相似度阈值标签是所述样本数据块被人为标注的相似度阈值。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述将所述原始数据块切分为多个子数据块,包括:
8.根据权利要求1至7任一项所述的方法,其特征在于,所述将所述多个子数据块分配给多个线程进行并行处理,以生成求解文件,包括:
9.根据权利要求1至8任一项所述的方法,其特征在于,所述数据特征包括稀疏度、非零元素比例、非零元素数目、零元素数目、矩阵方差、word-embedding的映射值中的一者。
10.根据权利要求1至9任一项所述的方法,其特征在于,所述数学模型表达式用于求解工厂排产问题、供需模拟问题、能源调度问题中的一者,所述实例数据为工厂排产问题、供需模拟问题、能源调度问题中一者的实例数据,所述求解结果用于指导解决工厂排产问题、供需模拟问题、能源调度问题中的一者。
11.一种数据处理装置,其特征在于,应用于数学规划求解器,所述数学规划求解器部署在计算设备上,所述计算设备具有多个线程,所述装置包括:
12.根据权利要求11所述的装置,其特征在于,所述处理模块,还用于将所述数学模型表达式转换成数学模型表达式树的形式;确定所述数学模型表达式树包括至少一个第一结构,以确定所述数学模型表达式带有嵌套结构,所述第一结构用于指示所述嵌套结构对应的数学模型表达式的结构;对所述数学模型表达式进行表达式展开处理,得到展开后的模型表达式;将所述实例数据代入所述展开后的数学模型表达式,得到所述数学模型表达式的原始数据块。
13.根据权利要求12所述的装置,其特征在于,所述处理模块,还用于将所述数学模型表达式树中的所述第一结构按照指定规则进行变换,得到变换后的模型表达式树,所述变换后的模型表达式树是所述展开后的数学模型表达式的对应的模型表达式树;其中,所述指定规则是将所述第一...
【专利技术属性】
技术研发人员:康清灿,付小津,欧帮雄,韩雄威,赵成,
申请(专利权)人:华为云计算技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。