掌桥专利:专业的专利平台
掌桥专利
首页

一种割集并行计算方法及系统

文献发布时间:2024-04-18 19:58:21


一种割集并行计算方法及系统

技术领域

本发明涉及计算模型技术领域,尤其涉及一种割集并行计算方法及系统。

背景技术

割集,也叫做截集或截止集,它是导致顶上事件发生的基本事件的集合,也就是说事故树中一组基本事件的发生,能够造成顶上事件发生,这组基本事件就叫割集,引起顶上事件发生的基本事件的最低限度的集合叫最小割集。

很多时候,通过割集算法来进行线性数据分析和预测,具有良好的效果,但是对于计算设备的要求非常高,即使采用最顶尖的计算机来进行割集计算,也需要耗费大量的时间和成本,进而造成割集计算的效率低、成本高。

发明内容

为了解决上述技术问题,本发明公开了一种割集并行计算方法及系统,用于在提高割集计算效率的同时,降低割集计算的成本。

为了实现上述目的,本发明公开了一种割集并行计算方法,包括:

对获取的原始问题数据进行数据类型解析,确定所述原始问题数据对应的割集属性,并根据所述割集属性匹配对应的割集算法;

根据所述原始问题数据,通过预设的并行计算模型构建方法构建所述原始问题数据对应的计算模型;

通过预设的分解方法将所述原始问题数据分解成若干个子问题数据;

将所述若干个子问题数据分别分配到不同的计算节点,根据预设的并行计算环境及所述计算模型,通过所述割集算法控制所述不同的计算节点中每一个计算节点同时进行割集计算,获得所述若干个子问题数据中每一个子问题数据的计算结果;

合并所述若干个子问题数据中每一个子问题数据的计算结果,获得所述原始问题数据对应的割集计算结果。

本发明公开了一种割集并行计算方法,包括首先对获取的问题数据进行数据类型的分析,以使根据所述分析的结果选择合适的割集算法进行割集的计算,保证割集计算结果的准确性,接着在确定所述割集算法后,通过预设的分解方法将所述问题数据分割成若干个子问题数据,以使减少单独进行割集计算时的数据量,提高割集计算的效率,在获得所述分解后的若干个子问题数据后,将所述若干个子问题数据分别分配到不同的子节点中,利用预设的并行计算环境及计算模型,所述不同的子节点中各个子节点同时进行并行计算,因所述数据的分解导致所述子节点进行割集计算式的数据量变小,因此对计算的硬件成本要求降低,进而降低了割集计算的成本,进一步的,因多个子节点进行并行计算且每个子节点处理的数据量变小,可提高割集计算的效率,在所述每一个子节点计算结束后,通过预设的排列方式合并所述不同的子节点中每一个子节点的计算结果,进而获得原始问题数据的割集计算结果,降低割集计算的时间和成本,提高割集计算的效率。

作为优选例子,在所述对获取的原始问题数据进行数据类型解析,确定所述原始问题数据对应的割集属性,并根据所述割集属性匹配对应的割集算法,包括:

对获取的原始问题数据进行数据类型分析,获取所述原始问题数据对应的割集属性;所述割集属性包括问题数据背景及问题数据分析目的;

根据所述割集属性及预设的割集准则,从预设的割集算法数据库中匹配与所述割集属性对应的割集算法。

本发明通过对获取的原始问题数据进行数据类型的分析,以使获取问题背景分析目的,便于根据所述问题背景及分析目的匹配到合适的割集算法,进而根据合适的割集算法进行割集计算,提高割集计算的准确度。

作为优选例子,在所述通过预设的并行计算模型构建方法构建所述述原始问题数据对应的计算模型,包括:

获取所述原始问题数据中的变量并确定所述变量的数量和内容;

当所述变量为一对一的独立变量时对所述原始问题数据的变量进行线性分析,当所述变量为多个变量时,对所述原始问题数据的变量进行层级分解,采用立体化分析,获取所述原始问题数据中每一组变量之间的关系;

根据所述原始问题数据中某一变量随另一变量发生改变的过程确定所述原始问题数据对应的变量变化规律;

根据所述变量变化规律制作对应的图表;所述图表包括数据罗列图和变化曲线图,且所述图表包含变量两两之间的独立图表和所有变量的整体图表;

将所述图表导入至计算框架进行计算,通过所述计算框架对所述图表进行分析,获取所述原始问题数据对应的计算模型。

本发明设计所述计算模型,以使设计一种并行计算模型,利用计算资源并加速求解过程,在分布式计算框架下进行后续的并行计算,在有限的计算资源下,提高割集计算的效率及降低计算成本。

作为优选例子,在所述通过预设的分解方法将所述原始问题数据分解成若干个子问题数据,包括:

根据所述割集算法的原理,对所述原始问题数据进行节点划分,获取所述原始问题数据对应的数据图;

通过预设的图分割方法遍历所述数据图对应的若干个顶点,并在遍历过程中将访问的每一条边标记为已访问;

根据已访问的边对所述数据图进行分割,判断分割后的图是否为多个不相连的子图;

若分割后的图为多个不相连的子图,则保存当前的边为一个割集;

对所述数据图进行迭代分割,获得所述数据图对应的若干个割集,并从所述若干个割集中选取边数最小的割集;

根据所述最小的割集对所述原始问题数据进行分解,获得若干个子问题数据。

本发明通过节点划分及图分割方法将所述原始问题数据分解成较小的若干个子问题数据,进而降低割集计算时需要处理的数据量,提高割集计算的效率,同时由于割集计算的数据量处理的减少,对计算设备的硬件要求也降低,进而降低了割集计算的成本。

作为优选例子,在所述将所述若干个子问题数据分别分配到不同的计算节点,包括:

根据所述若干个子问题数据中每一个子问题数据对应的路径先后顺序对所述每一个子问题数据进行编号,获得所述每一个子问题数据分别对应的子集编号;

根据所述子集编号,匹配所述不同的计算节点中每一个计算节点对应的节点编号,将所述若干个子问题数据分别分配到不同的计算节点。

本发明通过多个计算节点分别接收对应的子问题数据,以使一个计算节点处理一个子问题数据,利用分布式计算环境提高割集计算的效率。

作为优选例子,在所述合并所述若干个子问题数据中每一个子问题数据的计算结果,获得所述原始问题数据对应的割集计算结果,包括:

通过逻辑树表达方式对所述每一个子问题数据的计算结果分别进行排列,获得所述每一个子问题数据的计算结果对应的逻辑树;

将所述若干个子问题数据中每一个子问题数据的计算结果对应的逻辑树进行逻辑树图层叠加,根据所述逻辑树图层叠加的非重合部分对所述割集计算结果进行合理性分析。

本发明通过将每一个子问题数据的计算结果以逻辑树的形式排列,这样当多个逻辑数叠加后,可直接利用逻辑树叠加过程中的不重合部分对所述计算结果进行合理性分析,提高割集计算的精准度。

另一方面,本发明还公开了一种割集并行计算系统,所述系统包括类型解析模块、模型构建模块、数据分解模块、并行计算模块及割集合并模块;

所述类型解析模块用于对获取的原始问题数据进行数据类型解析,确定所述原始问题数据对应的割集属性,并根据所述割集属性匹配对应的割集算法;

所述模型构建模块用于根据所述原始问题数据,通过预设的并行计算模型构建方法构建所述原始问题数据对应的计算模型;

所述数据分解模块用于通过预设的分解方法将所述原始问题数据分解成若干个子问题数据;

所述并行计算模块用于将所述若干个子问题数据分别分配到不同的计算节点,根据预设的并行计算环境及所述计算模型,通过所述割集算法控制所述不同的计算节点中每一个计算节点同时进行割集计算,获得所述若干个子问题数据中每一个子问题数据的计算结果;

所述割集合并模块用于合并所述若干个子问题数据中每一个子问题数据的计算结果,获得所述原始问题数据对应的割集计算结果。

本发明公开了一种割集并行计算系统,包括首先对获取的问题数据进行数据类型的分析,以使根据所述分析的结果选择合适的割集算法进行割集的计算,保证割集计算结果的准确性,接着在确定所述割集算法后,通过预设的分解方法将所述问题数据分割成若干个子问题数据,以使减少单独进行割集计算时的数据量,提高割集计算的效率,在获得所述分解后的若干个子问题数据后,将所述若干个子问题数据分别分配到不同的子节点中,利用预设的并行计算环境及计算模型,所述不同的子节点中各个子节点同时进行并行计算,因所述数据的分解导致所述子节点进行割集计算式的数据量变小,因此对计算的硬件成本要求降低,进而降低了割集计算的成本,进一步的,因多个子节点进行并行计算且每个子节点处理的数据量变小,可提高割集计算的效率,在所述每一个子节点计算结束后,通过预设的排列方式合并所述不同的子节点中每一个子节点的计算结果,进而获得原始问题数据的割集计算结果,降低割集计算的时间和成本,提高割集计算的效率。

作为优选例子,所述类型解析模块包括数据解析单元及算法匹配单元;

所述数据解析单元用于对获取的原始问题数据进行数据类型分析,获取所述原始问题数据对应的割集属性;所述割集属性包括问题数据背景及问题数据分析目的;

所述算法匹配单元用于根据所述割集属性及预设的割集准则,从预设的割集算法数据库中匹配与所述割集属性对应的割集算法。

本发明通过对获取的原始问题数据进行数据类型的分析,以使获取问题背景分析目的,便于根据所述问题背景及分析目的匹配到合适的割集算法,进而根据合适的割集算法进行割集计算,提高割集计算的准确度。

作为优选例子,所述数据分解模块包括节点划分单元及图分割单元;

所述节点划分单元用于根据所述割集算法的原理,对所述原始问题数据进行节点划分,获取所述原始问题数据对应的数据图;

所述图分割单元用于通过预设的图分割方法遍历所述数据图对应的若干个顶点,并在遍历过程中将访问的每一条边标记为已访问;根据已访问的边对所述数据图进行分割,判断分割后的图是否为多个不相连的子图;若分割后的图为多个不相连的子图,则保存当前的边为一个割集;对所述数据图进行迭代分割,获得所述数据图对应的若干个割集,并从所述若干个割集中选取边数最小的割集;根据所述最小的割集对所述原始问题数据进行分解,获得若干个子问题数据。

本发明通过节点划分及图分割方法将所述原始问题数据分解成较小的若干个子问题数据,进而降低割集计算时需要处理的数据量,提高割集计算的效率,同时由于割集计算的数据量处理的减少,对计算设备的硬件要求也降低,进而降低了割集计算的成本。

作为优选例子,所述并行计算模块包括编码单元及分配单元;

所述编码单元用于根据所述若干个子问题数据中每一个子问题数据对应的路径先后顺序对所述每一个子问题数据进行编号,获得所述每一个子问题数据分别对应的子集编号;

所述分配单元用于根据所述子集编号,匹配所述不同的计算节点中每一个计算节点对应的节点编号,将所述若干个子问题数据分别分配到不同的计算节点。

本发明通过多个计算节点分别接收对应的子问题数据,以使一个计算节点处理一个子问题数据,利用分布式计算环境提高割集计算的效率。

附图说明

图1:为本发明实施例提供的一种割集并行计算方法的流程示意图;

图2:为本发明实施例提供的一种割集并行计算系统的结构示意图;

图3:为本发明又一实施例提供的一种割集并行计算方法的流程示意图;

图4:为本发明又一实施例提供的一种分布式计算框架的硬件架构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例一

本发明实施例提供了一种割集并行计算方法,所述计算方法的具体实施流程可参照图1,主要包括步骤101至步骤105,所述步骤为:

步骤101:对获取的原始问题数据进行数据类型解析,确定所述原始问题数据对应的割集属性,并根据所述割集属性匹配对应的割集算法。

在本实施例中,该步骤主要包括:对获取的原始问题数据进行数据类型分析,获取所述原始问题数据对应的割集属性;所述割集属性包括问题数据背景及问题数据分析目的;根据所述割集属性及预设的割集准则,从预设的割集算法数据库中匹配与所述割集属性对应的割集算法。

在本实施例中,该步骤通过对获取的原始问题数据进行数据类型的分析,以使获取问题背景分析目的,便于根据所述问题背景及分析目的匹配到合适的割集算法,进而根据合适的割集算法进行割集计算,提高割集计算的准确度。

步骤102:根据所述原始问题数据,通过预设的并行计算模型构建方法构建所述原始问题数据对应的计算模型。

在本实施例中,该步骤主要包括:获取所述原始问题数据中的变量并确定所述变量的数量和内容;当所述变量为一对一的独立变量时对所述原始问题数据的变量进行线性分析,当所述变量为多个变量时,对所述原始问题数据的变量进行层级分解,采用立体化分析,获取所述原始问题数据中每一组变量之间的关系;根据所述原始问题数据中某一变量随另一变量发生改变的过程确定所述原始问题数据对应的变量变化规律;根据所述变量变化规律制作对应的图表;所述图表包括数据罗列图和变化曲线图,且所述图表包含变量两两之间的独立图表和所有变量的整体图表;将所述图表导入至计算框架进行计算,通过所述计算框架对所述图表进行分析,获取所述原始问题数据对应的计算模型。

在本实施例中,该步骤设计所述计算模型,以使设计一种并行计算模型,利用计算资源并加速求解过程,在分布式计算框架下进行后续的并行计算,在有限的计算资源下,提高割集计算的效率及降低计算成本。

步骤103:通过预设的分解方法将所述原始问题数据分解成若干个子问题数据。

在本实施例中,该步骤主要包括:根据所述割集算法的原理,对所述原始问题数据进行节点划分,获取所述原始问题数据对应的数据图;通过预设的图分割方法遍历所述数据图对应的若干个顶点,并在遍历过程中将访问的每一条边标记为已访问;根据已访问的边对所述数据图进行分割,判断分割后的图是否为多个不相连的子图;若分割后的图为多个不相连的子图,则保存当前的边为一个割集;对所述数据图进行迭代分割,获得所述数据图对应的若干个割集,并从所述若干个割集中选取边数最小的割集;根据所述最小的割集对所述原始问题数据进行分解,获得若干个子问题数据。

在本实施例中,该步骤通过节点划分及图分割方法将所述原始问题数据分解成较小的若干个子问题数据,进而降低割集计算时需要处理的数据量,提高割集计算的效率,同时由于割集计算的数据量处理的减少,对计算设备的硬件要求也降低,进而降低了割集计算的成本。

步骤104:将所述若干个子问题数据分别分配到不同的计算节点,根据预设的并行计算环境及所述计算模型,通过所述割集算法控制所述不同的计算节点中每一个计算节点同时进行割集计算,获得所述若干个子问题数据中每一个子问题数据的计算结果。

在本实施例中,该步骤主要包括:根据所述若干个子问题数据中每一个子问题数据对应的路径先后顺序对所述每一个子问题数据进行编号,获得所述每一个子问题数据分别对应的子集编号;根据所述子集编号,匹配所述不同的计算节点中每一个计算节点对应的节点编号,将所述若干个子问题数据分别分配到不同的计算节点。

在本实施例中,该步骤通过多个计算节点分别接收对应的子问题数据,以使一个计算节点处理一个子问题数据,利用分布式计算环境提高割集计算的效率。

步骤105:合并所述若干个子问题数据中每一个子问题数据的计算结果,获得所述原始问题数据对应的割集计算结果。

在本实施例中,该步骤主要包括:通过逻辑树表达方式对所述每一个子问题数据的计算结果分别进行排列,获得所述每一个子问题数据的计算结果对应的逻辑树;将所述若干个子问题数据中每一个子问题数据的计算结果对应的逻辑树进行逻辑树图层叠加,根据所述逻辑树图层叠加的非重合部分对所述割集计算结果进行合理性分析。

在本实施例中,该步骤通过将每一个子问题数据的计算结果以逻辑树的形式排列,这样当多个逻辑数叠加后,可直接利用逻辑树叠加过程中的不重合部分对所述计算结果进行合理性分析,提高割集计算的精准度。

另一方面,本发明实施例还公开了一种割集并行计算系统,所述计算系统的具体结构组成可参照图2,所述系统主要包括类型解析模块201、模型构建模块202、数据分解模块203、并行计算模块204及割集合并模块205。

所述类型解析模块201用于对获取的原始问题数据进行数据类型解析,确定所述原始问题数据对应的割集属性,并根据所述割集属性匹配对应的割集算法。

所述模型构建模块202用于根据所述原始问题数据,通过预设的并行计算模型构建方法构建所述原始问题数据对应的计算模型。

所述数据分解模块203用于通过预设的分解方法将所述原始问题数据分解成若干个子问题数据。

所述并行计算模块204用于将所述若干个子问题数据分别分配到不同的计算节点,根据预设的并行计算环境及所述计算模型,通过所述割集算法控制所述不同的计算节点中每一个计算节点同时进行割集计算,获得所述若干个子问题数据中每一个子问题数据的计算结果。

所述割集合并模块205用于合并所述若干个子问题数据中每一个子问题数据的计算结果,获得所述原始问题数据对应的割集计算结果。

在本实施例中,所述类型解析模块201包括数据解析单元及算法匹配单元。

所述数据解析单元用于对获取的原始问题数据进行数据类型分析,获取所述原始问题数据对应的割集属性;所述割集属性包括问题数据背景及问题数据分析目的。

所述算法匹配单元用于根据所述割集属性及预设的割集准则,从预设的割集算法数据库中匹配与所述割集属性对应的割集算法。

在本实施例中,所述数据分解模块203包括节点划分单元及图分割单元。

所述节点划分单元用于根据所述割集算法的原理,对所述原始问题数据进行节点划分,获取所述原始问题数据对应的数据图。

所述图分割单元用于通过预设的图分割方法遍历所述数据图对应的若干个顶点,并在遍历过程中将访问的每一条边标记为已访问;根据已访问的边对所述数据图进行分割,判断分割后的图是否为多个不相连的子图;若分割后的图为多个不相连的子图,则保存当前的边为一个割集;对所述数据图进行迭代分割,获得所述数据图对应的若干个割集,并从所述若干个割集中选取边数最小的割集;根据所述最小的割集对所述原始问题数据进行分解,获得若干个子问题数据。

在本实施例中,所述并行计算模块204包括编码单元及分配单元。

所述编码单元用于根据所述若干个子问题数据中每一个子问题数据对应的路径先后顺序对所述每一个子问题数据进行编号,获得所述每一个子问题数据分别对应的子集编号。

所述分配单元用于根据所述子集编号,匹配所述不同的计算节点中每一个计算节点对应的节点编号,将所述若干个子问题数据分别分配到不同的计算节点。

除上述方法及系统外,本发明实施例还公开了一种计算机可读存储介质及一种电子设备,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例提供的一种割集并行计算方法。

所述电子设备包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信,存储器用于存放计算机程序;处理器用于执行存储器上所存放的程序时,实现本发明实施例提供的一种割集并行计算方法。

本实施例公开的一种割集并行计算方法及系统,包括首先对获取的问题数据进行数据类型的分析,以使根据所述分析的结果选择合适的割集算法进行割集的计算,保证割集计算结果的准确性,接着在确定所述割集算法后,通过预设的分解方法将所述问题数据分割成若干个子问题数据,以使减少单独进行割集计算时的数据量,提高割集计算的效率,在获得所述分解后的若干个子问题数据后,将所述若干个子问题数据分别分配到不同的子节点中,利用预设的并行计算环境及计算模型,所述不同的子节点中各个子节点同时进行并行计算,因所述数据的分解导致所述子节点进行割集计算式的数据量变小,因此对计算的硬件成本要求降低,进而降低了割集计算的成本,进一步的,因多个子节点进行并行计算且每个子节点处理的数据量变小,可提高割集计算的效率,在所述每一个子节点计算结束后,通过预设的排列方式合并所述不同的子节点中每一个子节点的计算结果,进而获得原始问题数据的割集计算结果,降低割集计算的时间和成本,提高割集计算的效率。

实施例二

本发明实施例提供了另一种割集并行计算方法,所述计算方法的具体实施流程可参照图3,如图3所示,包括步骤301至步骤306,所述步骤包括:

步骤301:对获取的原始问题数据进行数据类型分析,确定所述原始问题数据对应的割集属性。

在本实施例中,该步骤包括:对获取的原始问题数据进行数据类型解析,确定所述原始问题数据对应的割集属性,所述割集属性包括问题数据背景及问题数据分析目的。

具体的,在本实施例中提供的一种可实现方式中,首先确定问题的背景和想要实现的目标,通过对数据类型进行解析,明确是用于大规模数据集或图形问题,然后根据数据类型来确定想要达到的分析结果,在该过程中,用户输入想要解决的问题类型,所述问题类型包含数学问题、路径问题、逻辑问题和算法问题。

步骤302:根据所述割集属性,匹配对应的割集算法。

在本实施例中,该步骤包括:根据所述割集属性及预设的割集准则,从预设的割集算法数据库中匹配与所述割集属性对应的割集算法。

具体的,根据对数据类型进行解析获得的割集属性既提出的问题背景和想要达到的分析结果来匹配合适的割集算法,可选的,所述割集算法中的割集是导致顶上事件发生的基本事件的集合,而引起顶上事件发生的基本事件的最低限度的集合叫最小集,而最小割集求解方法包括行列法、结构法和布尔代数化简法,利用基本的割集算法来明确割集过程和路径,在匹配合适的割集算法过程中,在针对路径问题时采用行列法进行求解,在应对逻辑问题时采用结构法进行最小割集求解,在应对数学问题和算法问题时采用布尔代数化简法进行最小割集求解,

进一步的,在选择所述割集算法时,需要遵循预设的割集准则,所述割集准则可包括最小割集准则、规范割集准则、比例割集准则、平均割集准则、最小最大割集准则及多路规范割集准则,在进行割集算法的匹配过程中,须遵循以上准则中的一个或多个。

步骤303:根据预设的并行计算模型构建方法构建与所述原始问题数据对应的计算模型。

在本实施例中,该步骤包括:根据所述原始问题数据,通过预设的并行计算模型构建方法构建所述原始问题数据对应的计算模型。

具体的,在本实施例中,在匹配到合适的割集算法后,通过设计一种并行计算模型,以利用计算资源并加速求解过程,通过选择使用多台计算机或者利用分布式计算框架,该过程可采用但不仅限于Apache Hadoop或Spark来构建并行计算环境。

具体的,所述计算模型的构建过程包括:

S1:进行获取变量:包括确定变量的数量和内容;

S2:分析变量关系:在只有一对一的独立变量时只需要进行线性分析,而两个以上的变量进行分析时,需要进行层级分解,采用立体化分析,明确每一组变量之间的关系,

S3、确定变量变化规律:通过分析各个变量之间的关系,然后根据某一变量随另一变量而发生改变过程中,根据两者变化过程来明确变化规律;

S4、制作图表:根据变量之间的变化规律来制作相应的图表,其中包含数据罗列图和变化曲线图,并且图表包含两两之间的独立图表和所有变量的整体图表;

S5、导入数据:将图表数据导入至计算框架进行计算;

S6、生成模型:通过计算框架对数据进行分析,从而生成相应的计算模型;

S7、在获得所述计算模型后,还可通过导入数据来进行模型验证,确定模型可行性。

步骤304:根据所述割集算法的原理,将获取的原始问题数据分割成若干个子问题数据。

在本实施例中,该步骤主要包括:根据所述割集算法的原理,对所述原始问题数据进行节点划分,获取所述原始问题数据对应的数据图;再利用图分割方法对所述数据图进行分割,获得若干个子问题数据。

具体的,在本实施例中,根据割集算法的原理,将大规模问题分解为若干个子问题,在分解过程中,通过图分割方法、节点划分来完成问题的分解,具体的过程包括通过将图中的每条边都标记为未被访问,从图中选择一个顶点作为起始点,进行深度优先搜索或广度优先搜索来遍历图的所有顶点,在每次访问到一条边时,将该边标记为已访问,对于每条已访问的边,检查是否去掉该边后,图被分成了两个或多个不相连的子图。如果是,则该边属于一个割集,将所有的割集保存下来,并记录它们的边数,从所有记录的割集中选取边数最少的割集作为最小割集,从而实现对问题的划分。

步骤305:将分解后获得的若干个子问题数据分别分配到不同的计算节点,并利用预设的并行计算环境及所述计算模型,控制所述不同的计算节点中的每一个计算节点根据所述割集算法进行同时计算,获得计算结果。

在本实施例中,该步骤主要包括:根据所述若干个子问题数据中每一个子问题数据对应的路径先后顺序对所述每一个子问题数据进行编号,获得所述每一个子问题数据分别对应的子集编号;根据所述子集编号,匹配所述不同的计算节点中每一个计算节点对应的节点编号,将所述若干个子问题数据分别分配到不同的计算节点。

具体的,在本实施例中,将分解后的问题分配给不同的计算节点,并利用并行计算环境进行求解,各个计算节点可以同时进行计算,加快求解的速度,具体的,所述并行计算环境基于多个计算设备或分布式计算框架构建,在实际应用中,参照图4为本发明实施例提供的一种分布式计算框架的硬件架构图,参照图4,所述分布式计算框架的硬件架构包含CPU和GPU两部分,其中CPU由控制单元、算术逻辑单元、乱序控制单元、分支预测器、数据缓存部件组成;用于快速地处理各种通用计算任务并最小化延迟,而GPU由多个流多处理器的处理器集群组成,每个流多处理器都关联一个控制单元和L1Cache,支持上百个指令流的并行执行。

在进行计算节点分配时,首先对于各个计算节点进行预编号,编号的需要即为其进行分配计算时的优先位,同时在进行问题子集划分时,会根据路径的先后对各个子集进行编号,从而使得子集编号与计算节点编号对应,从而实现的自动分配,同时所述不同的计算节点进行并行计算的过程通过分布式计算框架实现,同时每一个计算节点的计算结果以逻辑树表达方式进行排列。

步骤306:合并所述每一个计算节点获取的计算结果,获得所述原始问题数据对应的割集计算结果。

在本实施中,该步骤包括:将所述若干个子问题数据中每一个子问题数据的计算结果对应的逻辑树进行逻辑树图层叠加,根据所述逻辑树图层叠加的非重合部分对所述割集计算结果进行合理性分析。

具体的,在本实施例中,在各个计算节点完成计算后,将子问题的结果合并起来,得到原始问题的解,可行的,在合并所述计算结果的过程中,通过将所述每一个计算结果对应的逻辑树进行图层叠加,根据图层叠加过程中的非重合部分对所述计算结果进行合理性校验,具体的,所述合理性校验的实验方式包括根据所述非重合部分计算偏差值的项目数量和数值差距,根据所述偏差值的项目数量和数值差距来进行判断所述计算结果是否存在计算错误。

在对所述计算结果进行合理性校验过后,合并所述计算结果的方法可根据所述分布式计算环境或所述计算节点通信情况选择合适的合并方法,具体的,所述合并方法包括:等待通信:即在每个计算节点完成计算后,将结果发送给主节点。主节点等待所有计算节点的结果到达后,再进行合并操作。这种方法适用于计算节点之间可以直接通信的情况,或归约操作:即在每个计算节点完成计算后,将结果进行归约操作,归约操作是指将多个结果合并为一个结果的操作,例如求和、求最大值、求平均值等,最后,将归约后的结果发送给主节点。这种方法适用于可以通过归约操作将多个结果合并为一个结果的情况,又或分布式文件系统:将每个计算节点的结果写入分布式文件系统中的不同文件或目录,并在主节点上读取并合并这些结果。这种方法适用于计算节点之间无法直接通信或结果较大的情况,还包括数据库操作:即将每个计算节点的结果存储在数据库中的不同表或记录中,并在主节点上查询并合并这些结果。这种方法适用于需要持久化存储结果或进行复杂查询的情况。

在实际应用中,选择合适的结果合并方法需要考虑计算节点之间的通信开销、结果的大小和复杂度,以及数据的一致性和可靠性等因素,有时候,还可以结合分布式计算框架、消息传递接口或数据库技术来实现结果的合并。

更为具体的,在获得所述割集计算结果后,还可通过进行多次实验测试,并根据性能评估对所述割集并行计算方法进行优化和调整,通过尝试不同的图分割方法、并行计算策略或参数配置来进行多次测试,所述优化调整过程需要通过调整图分割方法、并行计算策略和参数配置,该过程采用数列自动填充方式进行自动生成交叉合集,然后通过不同的合集进行逐一测试,最终确定最优解。

本实施例提供的一种割集并行计算方法,首先通过确定问题的背景和想要实现的目标,然后根据所提出的问题背景和想要达到的分析结果来选择合适的割集算法,其次通过设计一种并行计算模型,以利用计算资源并加速求解过程,通过选择使用多台计算机或者利用分布式计算框架来构建并行计算环境,然后将所提出的问题根据割集算法的原理,将大规模问题分解为若干个子问题,通过图分割方法、节点划分或者其他合适的方法来完成问题的分解,然后将分解后的问题分配给不同的计算节点,并利用并行计算环境进行求解,各个计算节点可以同时进行计算,加快求解的速度,紧接着在各个计算节点完成计算后,将子问题的结果合并起来,得到原始问题的解,最终通过进行多次实验测试,并根据性能评估对割集并行方法进行优化和调整,通过尝试不同的图分割方法、并行计算策略或参数配置,以确定最优解。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步的详细说明,应当理解,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围。特别指出,对于本领域技术人员来说,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 一种电机转矩优化有限集预测控制并行计算方法
  • 一种电机转矩优化有限集预测控制并行计算方法
技术分类

06120116484050