数据处理设备、方法和系统与流程

文档序号:11829656阅读:194来源:国知局
数据处理设备、方法和系统与流程
本发明涉及优化问题,具体涉及针对非凸的优化问题的凸化方法。
背景技术
:01二次规划问题(BQP)是常见的优化问题之一,应用于很多领域,如通信、供水系统优化等。通常将来自这些实际应用、工程等的数据进行转换,以建立对优化问题进行描述的模型。BQP问题是一个NP难问题,并且有非凸的特点。换言之,在多项式时间内不可能对BQP问题进行求解,除非P=NP。对于非凸问题的全局优化,很多方法都是需要给出最优解的下界,而且计算代价要较小。求解下界的标准方法都是基于凸化,即将问题重构成一个凸问题。凸化的主要思想是将BQP问题的目标函数重构为一个二次凸函数,使得这两个函数在x∈R的空间中有相同的目标值。于是,BQP问题就可以等价于在R空间上,最小化这个重构的目标函数。全局优化BQP问题的一个典型方法是分支定界策略,而凸化的目的在于为分支定界法提供更好的连续松弛边界。技术实现要素:根据本公开实施例,提供了一种数据处理设备、方法和系统,能够改进连续松弛边界。根据示例实施例,提供了一种数据处理设备,包括建模单元,利用来自应用的数据建立模型,所述模型包括对应用相关的优化问题进行描述的目标函数以及约束;松弛单元,对所述目标函数进行松弛以将约束吸收到所述目标函数中,得到松弛函数;凸化单元,基于松弛函数进行凸化,得到重构的目标函数;以及求解单元,对重构的目标函数进行求解;其中凸化单元通过最大化松弛函数的均值,来进行凸化。根据另一示例实施例,提供了一种数据处理方法,包括以下步骤:利用来自应用的数据建立模型,所述模型包括对应用相关的优化问题进行描述的目标函数以及约束;对所述目标函数进行松弛以将约束吸收到所述目标函数中,得到松弛函数;基于松弛函数进行凸化,得到重构的目标函数;以及对重构的目标函数进行求解;其中,通过最大化松弛函数的均值来进行凸化。根据再一示例实施例,提供了一种数据处理系统,包括:输入设备,输入来自应用的数据;处理器,利用输入的数据建立模型,所述模型包括对应用相关的优化问题进行描述的目标函数以及约束,对所述目标函数进行松弛以将约束吸收到所述目标函数中,得到松弛函数,基于松弛函数进行凸化,得到重构的目标函数,以及对重构的目标函数进行求解;输出设备,输出处理器产生的数据;其中,处理器通过最大化松弛函数的均值,来进行凸化。当一些变量被约束到固定值的分支过程时,根据本公开的示例实施例对于提供更严格的连续松弛边界有更大的潜力。附图说明通过下面结合附图说明本发明的优选实施例,将使本发明的上述及其它目的、特征和优点更加清楚,其中:图1示出了根据本公开示例实施例的数据处理设备的示意框图;图2示出了根据本公开示例实施例的数据处理设备中的凸化单元的示意框图;图3示出了根据本公开示例实施例的数据处理方法的示意流程图;图4示出了根据本公开示例实施例的数据处理系统的示意框图;图5示出了优化问题的现有求解方法的示意流程图;以及图6示出了BQP问题在通讯领域中应用的示意图。具体实施方式以下参照附图,对本公开的示例实施例进行详细描述,本公开不限于下述示例实施例。为了清楚描述本发明的基本思想,附图中仅示出了与本公开的技术方案密切相关的部件、功能或步骤,并且以下描述中省略了对已知技术、功能、部件或步骤的具体描述。本公开的示例实施例具体描述了针对带约束的01二次规划问题的求解方法,但本公开的基本构思不限于此,而是可以应用于多种其他优化问题的求解。图5示出了优化问题的现有求解方法500的示意流程图。如图5所示,在步骤S502获得BQP问题及其约束,构造目标函数,例如可以表达为F(x),在步骤S504通过拉格朗日乘子对目标函数F(x)进行拉格朗日松弛,以将其中造成问题难以求解的约束吸收到目标函数中,使问题更加容易求解,例如,基于拉格朗日函数L(x,λ)进行松弛。在步骤S506,定义拉格朗日对偶问题,在步骤S508,通过内点法求解对偶问题,获得最优解λ*,这是为了发现凸化的目标函数在0≤x≤1连续松弛区间最严格的下边界。在步骤S510,使用所获得的最优解λ*,将BQP问题的目标函数进行重构,得到重构的目标函数,例如表达为f(x)=L(x,λ*)。最后,在步骤S512,使用分支定界法对重构的包含有凸化的目标函数的问题进行求解。下面给出上述求解方法的一个示例。BQP问题在通讯领域中有着重要的应用。考虑如下包括n个发射天线和m个接收天线的MIMO系统:设s∈{0,1}n是待发射信号,出于传输效率等原因,发射端发送信号Hs到接收端,其中H是接收端已知的m*n维的信道矩阵。然而由于信道噪声的影响,接收端实际接收信号为r=Hs+g,其中g是均值为0的m维高斯噪声。接下来,接收端通过求解以下的01最小二乘(BLS)问题,将得到的最优解x作为原始信号s的近似:min||Hx-r||22]]>s.t.x∈{0,1}n其中||·||2表示向量的2-范数,而BLS问题便是一类特殊的BQP问题:minxτHτHx-2rτHx+rτrs.t.x∈{0,1}n下面以具体数值来进一步说明。以一个简单的10维问题为例,BQP问题可以描述为如下函数F(x):min12xTQx+cTx]]>s.t.x∈{0,1}10其中,Q=81700-7-18-2470017-58-210-361800-200-21-560315-212910000-3521-45280-125-7-36321-8103-6223-181815-45050-33-409-240-21283-3350015070290-6-40941370-21-1201541-32000025239037066]]>c=(43,16,-13,77,-21,-64,27,25,-34,61)T对于任意x∈{0,1}10以及λ∈R10,存在其中n=10,λ代表了拉格朗日乘子。因此,BQP问题等价于在{0,1}10求最小的F(x)+Σi=1nλi(xi2-xi).]]>得到拉格朗日方程表示如下:L(x,λ)=F(x)+Σi=1nλi(xi2-xi)=12xT[Q+2diag(λ)]x+(c-λ)Tx]]>可以选择合适的λ,使得L(x,λ)对于x变量来说是一个凸函数。随后,BQP问题可以松弛成如下的连续松弛问题:P(λ)=minL(x,λ)s.t.0≤x≤1P(λ)的最优解就是BQP问题的下边界。可以定义拉格朗日对偶问题为:maxP(λ)(1)s.t.Q+2diag(λ)≥0该对偶问题可以通过半定规划方法进行求解,。接着通过内点法对上述(1)进行求解,可以得到λ的最优解:λ*=(41.1,88.9,76.7,68.8,132.3,-1.7,4.3,86.4,64.2,91.2)T用L(x,λ*)将目标函数进行重构。随后可以通过分支定界法对重构目标函数进行求解,并且使用下边界对各个分支进行估计。在第一步中,获得下边界为-227.73。此时,左分支中x6=0,下边界为-218.60;右分支x6=1,下边界为-227.68。由于右边的子节点出现了更小的下边界,因此在此节点进一步的分支中将x7=0,x7=1作为子节点,他们分别获得-226.64和-215.26的下边界值。随后,在将这个左节点(含有x6=1以及x7=0约束)继续进行分支,令x4=0及x4=1。重复上述分支过程,直至第八次迭代后,可以获得BQP问题的最优解:x*=(0,1,1,0,1,1,0,0,1,0)T此时的目标函数值为-224.5,问题求解完毕。对于分支定界策略求解优化问题,下边界的估计是非常重要的。上述现有的求解方法,特别是其中采用的凸化方法,不能对每一个子集都提供较好的边界。如果对每个分支都重新计算边界,那么相比求解凸二次规划问题,会造成产生更高的计算成本,特别是对于那些有大量分支的问题。需要一种新的方法来改进连续松弛边界。上述现有方法是在x∈[0,1]n空间最大化拉格朗日函数的最小值,这只是对于最坏的情况进行了考虑,导致无法为每一个子集提供较好的边界。根据本公开的基本构思,在x∈[0,1]n空间中,利用最大化拉格朗日函数的均值来进行凸化重构。相比于现有方法,本公开的示例实施例的可以对所有的x∈[0,1]n提供更好的边界值。图1示出了根据本公开示例实施例的数据处理设备的示意框图。如图1所示,数据处理设备10包括建模单元102、松弛单元104、凸化单元106和求解单元108。建模单元102利用来自应用的数据建立模型,所述模型包括对应用相关的优化问题进行描述的目标函数以及约束。本文中以带约束的01二次规划问题作为优化问题的典型示例。例如在投资组合问题中,有一系列备选投资项目可供选择,每个项目的选择与否可以用01变量表示,数据描述了每个项目的预期收益及投资成本,约束是选择适当的项目进行投资使得总投资成本受到限制、最小收益得到保障等,目标是投资项目的预期风险最小。松弛单元104对目标函数进行松弛以将约束吸收到目标函数中,得到松弛函数。例如,松弛单元104可以利用拉格朗日方程进行松弛。凸化单元106可以基于松弛函数进行凸化,得到重构的目标函数。求解单元108对重构的目标函数进行求解,例如,通过分支定界法对重构目标函数进行求解。根据示例实施例,凸化单元106通过最大化松弛函数的均值,来进行凸化。图2示出了根据本公开示例实施例的数据处理设备中的凸化单元106的示意框图。如图2所示,凸化单元106包括积分器202、第一重构器204、计算器206和第二重构器208。积分器202基于松弛函数进行积分,得到对松弛函数的均值进行描述的积分函数,例如,在利用拉格朗日方程进行松弛的情况下,通过积分来描述拉格朗日函数在0≤x≤1空间中的均值。第一重构器204利用得到的积分函数定义凸化问题,所述凸化问题包括使该积分函数最大化。计算器206计算凸化问题的最优解,例如通过内点法获得最优解,使得在0≤x≤1空间中最大化拉格朗日方程的均值。第二重构器208利用计算的最优解来重构目标函数。下面结合具体应用示例来进一步阐释本公开的示例实施例。例如,对于工程、生产、交通等领域方面的某些应用,可以建模为10维的带约束的01二次规划问题,如下F(x)所示:min12xTQx+cTx]]>s.t.Ax-b≤0x∈{0,1}10以投资组合问题为例,其中x表示10个投资项目的选择与否,若选择第i个项目,则xi=1,否则xi=0。线性约束可以用来限制所有项目的投资成本不超过现有资金总量。设ai表示第i个项目的投资成本,t表示所拥有的总资本,则该约束可转化为标准的线性约束形式。此外,约束还可以保证平均收益不低于预期收益。设mi表示第i个项目的预期收益,s是项目投资的预期总收益,则同样可以转化为标准的线性约束形式。目标函数中Q代表不同投资项目之间收益的协方差矩阵,可以反映不同投资项目之 间收益的相关关系及投资风险,因此该问题可以保证资金、收益等限制下投资风险的最小化问题。以具体数值说明求解过程,例如Q=81700-7-18-2470017-58-210-361800-200-21-560315-212910000-3521-45280-125-7-36321-8103-6223-181815-45050-33-409-240-21283-3350015070290-6-40941370-21-1201541-32000025239037066]]>c=(43,16,-13,77,-21,-64,27,25,-34,61)TA=10020000000010000100]]>b=(3,2)T对于任意x∈{0,1}10以及λ,μ∈R10,存在以及其中λ,μ代表了拉格朗日乘子。因此,BQP问题等价于在{0,1}10空间求最小的F(x)+Σi=110λi(xi2-xi)+Σp=12μp(bp-apxp)]]>采用拉格朗日方程进行松弛,则拉格朗日方程可以有如下表示:L(x,λ,μ)=F(x)+Σi=110λi(xi2-xi)+Σp=12μp(bp-apxp)]]>可以选择合适的λ,μ,使得L(x,λ,μ)对于x变量来说是一个凸函数。通过积分来描述L(x,λ,μ)在0≤x≤1空间中的均值,可以有如下的表示:G(λ,μ)=∫0≤x≤1L(x,λ,μ)dx可以容易地证明:G(λ,μ)=-16eTλ+12(b-AeT)Tμ+const]]>其中const=∫0≤x≤1F(x)dx与λ,μ无关。于是,凸化重构问题可以有如下的描述:max-16eTλ+12(b-AeT)Tμs.t.Q+2diag(λ)≥0μ≥0---(2)]]>通过内点法对上述凸化问题(2)进行求解,可以得到λ,μ的最优解λ#,μ#:λ#=(17.9,67.9,53.7,50.9,58.9,32.5,-2.6,46.0,39.7,-1.4)T,μ#=(0,0)T上述λ#,μ#,使得在0≤x≤1空间中最大化拉格朗日方程L(x,λ#,μ#)的均值。用L(x,λ#,μ#)将目标函数进行重构。随后可以通过分支定界法对重构目标函数的问题进行求解。在第一步中,获得下边界为-236.03。此时,左分支中x6=0,下边界为-218.5;右分支x6=1,下边界为-224.95。由于右边的子节点出现了更小的下边界,因此在此节点进一步的分支中将x7=0,x7=1作为子节点,他们分别获得-224.5和-209.04的下边界。此时,左边子节点的解就是原BQP问题的最优解,目标函数值为-224.5,问题求解完毕。与前述现有方法的示例进行比对,可以看出,传统方法基于最坏下界最大的思想对原问题进行凸化,也就是使得第一步得到的下界最大化,而随着分支定界过程的进行,部分变量的值已经确定,此时松弛函数不见得能够得到较大的下界。根据本公开实施例的方法是基于平均下界最大化的思想,使得松弛后的目标函数在整个区间的取值尽 可能地大,从而得到的下界也会得到相应的整体上的提升。基于这种思想,根据本公开实施例的方法能够一致地改进连续松弛的下界。以上结合图1和2描述了根据本公开示例实施例的数据处理设备。下面参照图3,图3示出了根据本公开示例实施例的数据处理方法的示意流程图。该数据处理方法300可以包括步骤S302,利用来自应用的数据建立模型,所述模型包括对应用相关的优化问题进行描述的目标函数以及约束,例如,该优化问题可以是带约束的01二次规划问题。在步骤S304,对目标函数进行松弛以将约束吸收到所述目标函数中,得到松弛函数。这里,可以利用拉格朗日函数作为松弛函数进行松弛。在步骤S306,基于松弛函数进行凸化,得到重构的目标函数,这里,通过最大化松弛函数的均值来进行凸化。在一个示例实施例中,步骤S306可以包括:基于松弛函数进行积分,得到对松弛函数的均值进行描述的积分函数;利用积分函数定义凸化问题,所述凸化问题包括使积分函数最大化;计算凸化问题的最优解;以及利用计算的最优解来重构目标函数。例如,在凸化步骤中,可以利用积分函数来描述拉格朗日函数在0≤x≤1空间中的均值,以及通过内点法获得最优解,使得在0≤x≤1空间中最大化拉格朗日方程的均值。接着,在步骤308,对重构的目标函数进行求解,例如使用分支定界法对重构的目标函数的进行求解。上述数据处理设备和方法可以采用多种形式来实现,例如利用计算机、计算机系统、例如乘法器、加法器、积分器等多种集成电路、例如中央处理单元等处理器、存储器等实现。根据本公开示例实施例,还提出了一种数据处理系统,如图4所示。该数据处理系统40包括输入设备402、处理器404和输出设备406。作为示例,该数据处理系统可以利用计算机来实现。例如,输入设备402可以包括键盘、鼠标、触摸屏等用户接口设备,或者可以包括图像用户界面,便于进行人机交互。处理器404可以包括中央处理单元(CPU)或者专用的数据处理电路等。输出设备406可以包括例如显示器、打印机、存储器等。输入设备402可以接收或输入来自应用的数据。处理器404可以实现上述数据处理设备的功能,包括:利用输入的数据建立模型,所述模型包括对应用相关的优化问题进行描述的目标函数以及约束,对所述目标函数进行松弛以将约束吸收到所述目标函数中,得到松弛函数,基于松弛函数进行凸化,得到重构的目标函数,以及对重构的目标函数进行求解。这里,处理器404通过最大化松弛函数的均值,来进行凸化。输出设备106可以输出处理器产生的数据,作为优化问题的最优解,来控制、调整或优化相关应用。以上的详细描述通过使用示意图、流程图和/或示例,已经阐述了根据本发明实施例的核电软件开发自动化系统和方法的实施例。在这种示意图、流程图和/或示例包含一个或多个功能和/或操作的情况下,本领域技术人员应理解,这种示意图、流程图或示例中的每一功能和/或操作可以通过各种结构、硬件、软件、固件或实质上它们的任意组合来单独和/或共同实现。本领域技术人员应认识到,这里所公开的实施例的一些方面在整体上或部分地可以等同地实现在集成电路中,实现为在一台或多台计算机上运行的一个或多个计算机程序(例如,实现为在一台或多台计算机系统上运行的一个或多个程序),实现为固件,或者实质上实现为上述方式的任意组合,并且本领域技术人员根据本公开,将具备设计电路和/或写入软件和/或固件代码的能力。此外,本领域技术人员将认识到,本公开所述主题的机制能够作为多种形式的程序产品进行分发,并且无论实际用来执行分发的信号承载介质的具体类型如何,本公开所述主题的示例性实施例均适用。信号承载介质的示例包括但不限于:可记录型介质,如软盘、硬盘驱动器、紧致盘(CD)、数字通用盘(DVD)、数字磁带、计算机存储器等;以及传输型介质,如数字和/或模拟通信介质(例如,光纤光缆、波导、有线通信链路、无线通信链路等)。在以上的描述中,仅以示例的方式,示出了本发明的优选实施例,但并不意味着本发明局限于上述步骤和单元结构。在可能的情形下,可以根据需要对步骤和单元进行调整、取舍和组合。此外,某些步骤 和单元并非实施本发明的总体发明思想所必需的元素。因此,本发明所必需的技术特征仅受限于能够实现本发明的总体发明思想的最低要求,而不受以上具体实例的限制。至此已经结合优选实施例对本发明进行了描述。应该理解,本领域技术人员在不脱离本发明的精神和范围的情况下,可以进行各种其它的改变、替换和添加。因此,本发明的范围不局限于上述特定实施例,而应由所附权利要求所限定。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1