本技术涉及数据处理,尤其涉及混合整数线性规划模型求解方法及相关设备。
背景技术:
1、混合整数线性规划模型是一种广泛应用于多个工业领域的数学优化模型,但由于混合整数线性规划模型的求解难度过高,很难在短时间内迅速求解出来,因此如何高效求解混合整数线性规划模型是很有必要研究的。
2、在相关技术中,针对于混合整数线性规划模型的求解,通常是利用启发式算法对混合整数线性规划模型,但由于启发式算法在处理混合整数线性规划模型时,需要在cpu处理单元上对线性规划求解器进行反复调用,且由于cpu处理单元的处理速度受限,使得通过启发式算法对混合整数线性规划模型的求解速率也受到了限制。
技术实现思路
1、本技术实施例的提供了一种混合整数线性规划模型求解方法及相关设备,能够提高混合整数线性规划模型的求解速率。
2、为实现上述目的,本技术实施例的第一方面提出了一种混合整数线性规划模型求解方法,所述方法包括:
3、将cpu处理单元的混合整数线性规划模型拷贝至gpu处理单元,并在所述gpu处理单元将所述混合整数线性规划模型进行整数松弛,得到迭代线性规划模型;
4、在所述gpu处理单元中对目标规划模型进行对偶迭代求解,生成可行解,将所述可行解映射为整数解,在所述可行解和所述整数解不相等时,基于所述整数解和所述可行解之间的距离范数得到所述目标规划模型对应的更新模型,将所述更新模型作为所述目标规划模型进行迭代,直至所述可行解和所述整数解相等,得到目标可行解,所述目标规划模型的初始值为所述迭代线性规划模型;
5、利用所述gpu处理单元将目标可行解发送至所述cpu处理单元,利用所述cpu处理单元基于所述目标可行解得到所述混合整数线性规划模型的求解结果。
6、在一些实施例,所述将cpu处理单元的混合整数线性规划模型拷贝至所述gpu处理单元,包括:
7、将所述cpu处理单元中所述混合整数线性规划模型对应的可分页内存拷贝至固定内存;
8、通过dma机制,将所述混合整数线性规划模型从所述固定内存传输至所述gpu处理单元的显存单元。
9、在一些实施例,所述将cpu处理单元的混合整数线性规划模型拷贝至所述gpu处理单元,包括:
10、获取所述混合整数线性规划模型的多个参数策略;
11、从多个所述参数策略中逐一选取目标参数策略,并基于上一个所述目标参数策略的目标可行解,得到当前的所述目标参数策略的初始可行解;
12、将所述初始可行解、所述目标参数策略以及所述混合整数线性规划模型,从所述cpu处理单元拷贝至所述gpu处理单元进行处理。
13、在一些实施例,所述在所述gpu处理单元将所述混合整数线性规划模型进行整数松弛,得到迭代线性规划模型,包括:
14、基于所述初始可行解和所述目标参数策略更新所述混合整数线性规划模型,得到更新混合整数线性规划模型;
15、将所述更新混合整数线性规划模型进行整数松弛,得到所述迭代线性规划模型。
16、在一些实施例,所述迭代线性规划模型包括原始变量和对偶变量,所述对目标规划模型进行对偶迭代求解,生成可行解,包括:
17、获取步长因子参数和原始权重参数,基于所述步长因子参数、所述原始权重参数、所述原始变量和所述对偶变量进行步长迭代,生成目标步长;
18、获取原始变量更新函数和对偶变量更新函数,基于所述目标步长和所述原始变量更新函数更新所述原始变量,基于所述目标步长和所述对偶变量更新函数更新所述对偶变量,利用更新后的所述原始变量和所述对偶变量更新所述目标步长得到更新目标步长,并将更新目标步长作为所述目标步长对所述原始变量和所述对偶变量进行迭代,直至更新后的所述原始变量满足第一精度条件;
19、将更新后的所述原始变量作为所述可行解。
20、在一些实施例,所述目标步长包括目标原始步长和目标对偶步长,所述基于所述步长因子参数、所述原始权重参数、所述原始变量和所述对偶变量进行步长迭代,生成目标步长,包括:
21、基于所述步长因子参数、所述原始权重参数、所述原始变量和所述对偶变量进行步长更新,所述步长更新的步骤包括:
22、基于所述原始变量的二范数、所述对偶变量的二范数和所述原始权重参数生成原始权重范数函数;
23、基于当前的所述步长迭代的所述原始权重参数和上一个所述步长迭代的所述原始权重参数的差值、所述原始权重范数函数、所述原始变量的迭代差值、所述对偶变量的迭代差值以及所述步长因子参数,生成步长权重约束;
24、基于所述步长权重约束生成目标步长因子和目标原始权重,基于所述目标步长因子和所述目标原始权重的比值生成原始步长,基于所述目标步长因子和所述目标原始权重的乘积生成对偶步长;
25、重复执行多次所述步长更新的步骤,以更新多次所述原始步长和所述对偶步长,并将更新后的所述原始步长作为所述目标原始步长,以及将更新后的所述对偶步长作为所述目标对偶步长。
26、在一些实施例,所述迭代线性规划模型包括第一约束参数、第二约束参数和第三约束参数,所述获取原始变量更新函数和对偶变量更新函数,包括:
27、基于所述第一约束参数与所述第二约束参数和所述对偶变量的乘积的差值,并乘以所述目标原始步长,得到原始参考值,并基于所述原始变量和所述原始参考值的差值的映射关系得到所述原始变量更新函数;
28、基于更新后的所述原始变量和所述原始变量的差值,得到原始变量更新差值;
29、基于所述第三约束参数与所述第二约束参数和所述原始变量更新差值的乘积的差值,并乘以所述目标对偶步长,得到对偶参考值,并基于所述原始变量和所述原始参考值的累加值的映射关系得到所述对偶变量更新函数。
30、在一些实施例中,所述迭代线性规划模型包括初始目标函数,所述初始目标函数包括第一约束参数,所述基于所述整数解和所述可行解之间的距离范数得到所述目标规划模型对应的更新模型,包括:
31、累加所有所述距离范数,得到累加范数;
32、基于所述累加范数和所述第一约束参数的凸组合,得到更新目标函数,并基于所述更新目标函数更新所述目标规划模型中的所述初始目标函数,得到所述更新模型。
33、在一些实施例中,所述将所述更新模型作为所述目标规划模型进行迭代,直至所述可行解和所述整数解相等,得到目标可行解,包括:
34、对所述目标规划模型进行迭代,直至所述可行解和所述整数解相等;
35、获取所述可行解和所述整数解之间的偏差向量,从所述偏差向量中选取预设调整数量的向量元素进行随机调整,得到调整偏差向量;
36、基于所述预设调整数量生成调整数值区间,并基于所述调整数值区间生成调整数值,根据所述调整偏差向量的向量元素顺序,从所述调整偏差向量中选取与所述调整数值匹配数量的向量元素进行调整,并根据更新后的调整偏差向量生成更新整数解;
37、利用所述更新整数解,对所述目标规划模型进行迭代,直至迭代次数达到预设对偶迭代次数,将所述可行解作为所述目标可行解。
38、为实现上述目的,本技术实施例的第二方面提出了一种处理设备的混合整数线性规划模型求解装置,所述装置包括:
39、拷贝松弛模块,用于将cpu处理单元的混合整数线性规划模型拷贝至gpu处理单元,并在所述gpu处理单元将所述混合整数线性规划模型进行整数松弛,得到迭代线性规划模型;
40、数据处理模块,用于在所述gpu处理单元中对目标规划模型进行对偶迭代求解,生成可行解,将所述可行解映射为整数解,在所述可行解和所述整数解不相等时,基于所述整数解和所述可行解之间的距离范数得到所述目标规划模型对应的更新模型,将所述更新模型作为所述目标规划模型进行迭代,直至所述可行解和所述整数解相等,得到目标可行解,所述目标规划模型的初始值为所述迭代线性规划模型;
41、结果输出模块,用于利用所述gpu处理单元将目标可行解发送至所述cpu处理单元,利用所述cpu处理单元基于所述目标可行解得到所述混合整数线性规划模型的求解结果。
42、为实现上述目的,本技术实施例的第三方面提出了一种电子设备,包括存储器、cpu处理单元和gpu处理单元,所述存储器存储有计算机程序,所述cpu处理单元和所述gpu处理单元执行所述计算机程序时实现上述第一方面所述的混合整数线性规划模型求解方法。
43、为实现上述目的,本技术实施例的第四方面提出了一种存储介质,所述存储介质为计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的混合整数线性规划模型求解方法。
44、本技术实施例提出的混合整数线性规划模型求解方法及相关设备,方法包括:首先,将cpu处理单元的混合整数线性规划模型拷贝至gpu处理单元,并在gpu处理单元将混合整数线性规划模型进行整数松弛,得到迭代线性规划模型;然后,在gpu处理单元中对目标规划模型进行对偶迭代求解,生成可行解,将可行解映射为整数解,在可行解和整数解不相等时,基于整数解和可行解之间的距离范数得到目标规划模型对应的更新模型,将更新模型作为目标规划模型进行迭代,直至可行解和整数解相等,得到目标可行解,目标规划模型的初始值为迭代线性规划模型;最后,利用gpu处理单元将目标可行解发送至cpu处理单元,利用cpu处理单元基于目标可行解得到混合整数线性规划模型的求解结果。本技术实施例利用gpu处理单元对由混合整数线性规划模型松弛后的迭代线性规划模型进行对偶迭代求解,以克服混合整数线性规划模型无法直接在gpu处理单元上直接求解的情况,然后利用gpu处理单元的高数据处理性能,有效地提高求解混合整数线性规划模型的速率,并在迭代过程中,基于整数解和可行解之间的距离范数更新迭代线性规划模型,从而使得松弛后的迭代线性规划模型可以接近混合整数线性规划模型,以维持基于迭代线性规划模型所求解得到的混合整数线性规划模型的求解结果的精准度,进而在保证混合整数线性规划模型的求解结果的高精准度的情况下,有效地提高混合整数线性规划模型的求解速率。
45、本技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本技术而了解。本技术的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。