CN110728040A - 一种改善McCormick凸包络松弛严格性的方法 - Google Patents
一种改善McCormick凸包络松弛严格性的方法 Download PDFInfo
- Publication number
- CN110728040A CN110728040A CN201910923656.3A CN201910923656A CN110728040A CN 110728040 A CN110728040 A CN 110728040A CN 201910923656 A CN201910923656 A CN 201910923656A CN 110728040 A CN110728040 A CN 110728040A
- Authority
- CN
- China
- Prior art keywords
- bilinear
- variable
- variables
- algorithm
- convex
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Operations Research (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种改善McCormick凸包络松弛严格性的方法,设定OBBT和SBT算法的终止条件;对于含有多线性项的非凸优化问题,输入多线性项中各变量的初始上、下限,对于无法预先获取的变量上、下限,按照保守原则给定预设值;根据各变量的初始上、下限构建McCormick包络,进而将非凸优化问题转化为凸优化问题;基于步骤3的凸优化问题,执行OBBT算法,获取各变量的有效上下限并输出;将OBBT算法的输出结果作为SBT算法的输入,执行SBT算法;输出SBT算法的结果,得到松弛后的最优解。本发明所提方法能够处理变量上下限无法预先获取或变量取值范围较大的多线性项,并在较短时间内得到较严格的松弛解。
Description
技术领域
本发明属于凸优化领域,具体涉及一种改善McCormick凸包络松弛严格性的方法。
背景技术
McCormick凸包络松弛常用于处理双线性项和多线性项带来的非凸特性,采用线性凸包络代替原始非凸项,将原问题转化为凸优化问题,能够显著改善原非凸问题的求解效率。该方法已被应用于处理电力系统潮流模型和天然气系统能量流模型中的双线性项,并取得了显著的效果。凸包络松弛的严格性与所对应双(多)线性项变量的取值范围强相关,即变量的取值范围越大,相对应的凸包络松弛的严格性越难以满足,难以确保所得解的全局最优性甚至可行性。为了改善凸包络松弛的严格性,进而获取更严格的松弛解,国内外学者提出了若干方法,例如分段凸包络松弛法(piecewise convex envelope)、顺序收紧边界法(sequential bound tightening,SBT)等。上述方法中,分段凸包络松弛法需要额外引入大量整数变量,这将大大增加求解负担,降低求解效率,难以应用于实际工程中的大规模系统。顺序收紧边界法目前仅被应用于电力系统和天然气系统,两系统中相关变量的上下限均可以预先指定或预估。但是对于变量上下限无法预先获取的双(多)线性项,顺序收紧边界法只能保守地从一个较大范围开始逐步收紧,这将导致更低的松弛严格性和更多的迭代次数。
发明内容
发明目的:本发明所要解决的技术问题是针对现有技术存在的不足而提供一种改善McCormick凸包络松弛严格性的方法,使其能够处理变量上下限无法预先获取或变量取值范围较大的双(多)线性项,并在较短时间内得到较严格的松弛解。
技术方案:本发明提供以下技术方案:一种改善McCormick凸包络松弛严格性的方法,包括以下步骤:
1)设定OBBT和SBT算法的终止条件;
2)对于含有多线性项的非凸优化问题,输入多线性项中各变量的初始上、下限,对于无法预先获取的变量上、下限,按照保守原则给定预设值;
3)根据各变量的初始上、下限构建McCormick包络,进而将非凸优化问题转化为凸优化问题;
4)基于步骤3的凸优化问题,执行OBBT算法直至满足终止条件,获取各变量的有效上、下限并输出;
5)将OBBT算法的输出结果即各变量的有效上下限的值作为SBT算法的输入,执行SBT算法,直至满足SBT算法的终止条件;
6)输出SBT算法的结果,得到松弛后的最优解。
进一步地,所述步骤1)中,给定的优化问题P形式如下:
P:min Fobj (1)
s.t.凸约束集合Ccvx (2)
非凸约束集合Cnoncvx (3)
双线性项中变量的上限集合Abilinear,其余变量的上限集合Aothers (4)
双线性项中变量的下限集合Bbilinear,其余变量的下限集合Bothers (5)
定义集合X表示所有变量构成的集合,定义Xbilinear表示双线性项中的变量构成的集合,定义Xothers表示其他变量构成的集合;
式中,Fobj表示优化问题的目标函数,为含有双线性项的非凸函数;Ccvx表示所有凸约束的集合,包括线性约束和凸的高次约束;Cnoncvx表示非凸约束集合,仅考虑含有双线性项的约束;集合A、B表示所有变量的上、下限集合,其中Abilinear、Bbilinear分别表示双线性项中变量的上、下限集合;Aothers、Bothers分别表示其余变量的上、下限集合。
进一步地,所述步骤3)中,双线性项的McCormick包络构造如下:
对于给定的双线性项变量xy,其中一个变量x∈[xmin,xmax],另一个变量y∈[ymin,ymax],xmin、ymin分别表示变量x、y的下限,xmax、ymax分别表示变量x、y的上限;该双线性项变量的McCormick包络由下式构成:
进一步地,所述步骤4)中,OBBT算法的具体流程如下:
Step42:初始化,设定循环次数指示变量z=1;输入双线性项变量的初始上、下限集合A(1) bilinear、B(1) bilinear;
Step43:对于每一个双线性项中的变量xi∈Xbilinear,分别求解优化问题Pl(xi)和Pu(xi)以获取各变量的下限和上限,作为第z次迭代后的上、下限
Step 44:与上一次迭代结果比较,采用本次迭代与上一次迭代中较大值和较小值替代原上限值和下限值,进而得到第z次迭代后的变量上限集合A(z) bilinear和下限集合B(z) bilinear;
Step 45:若且||B(z) bilinear-B(z-1) bilinear||∞<ε时,或z>Z*时,算法终止,输出A(z) bilinear和B(z) bilinear;否则,令z=z+1,回到Step 43;其中,A(z -1) bilinear和B(z-1) bilinear分别表示第z-1次迭代后的变量上限集合和下限集合。
进一步地,其中,优化问题Pl(xi)和Pu(xi)定义如下:
Pl(xi),Pu(xi):min±xi (6)
s.t.Fobj≤u (7)
凸约束集合Ccvx
松弛后集合Crelax
上述优化问题中,优化问题Pl(x)、Pu(x)所对应的目标函数分别为xi、-xi;参数u是通过求解优化问题P所得到的目标函数值。由于对双线性项中变量的处理是独立的,因此上述优化问题可以通过并行计算来提高整体效率。
进一步地,所述步骤5)中,SBT算法的具体流程如下:
Step 52:初始化,设定循环次数指示变量z=1;输入双线性项变量的初始上、下限集合A(1) bilinear、B(1) bilinear;
Step 53:求解第z次迭代过程中的优化问题Prelax,将所得解即双线性项的变量值集合Vbilinear作为临时参数;
Step 54:利用临时参数构建双线性项变量的上下限,变量上限集合A(z) bilinear为(1+εz)Vbilinear,变量下限集合B(z) bilinear为(1-εz)Vbilinear;令z=z+1;
Step 55:若对于所有双线性项的变量,均有|Vi|<η或z>Z*,算法终止,输出;否则,回到Step 53。
其中,第z次迭代过程中的优化问题Prelax形式如下:
Prelax:min Fobj (9)
s.t.凸约束集合Ccvx (10)
松弛后的约束集合Crelax (11)
双线性项中变量的上限集合A(z) bilinear,其余变量的上限集合Aothers (12)
双线性项中变量下限集合B(z) bilinear,其余变量的下限集合Bothers (13)
有益效果:与现有技术相比,本发明提供了一种改善McCormick凸包络松弛严格性的方法。相对于现有技术而言,本方法能够处理变量上下限无法预先获取或变量取值范围较大的双(多)线性项,并在较短时间内得到较严格的松弛解。算例测试结果证实了所提方法的有效性。
附图说明
图1表示本发明所述一种改善McCormick凸包络松弛严格性方法的流程图;
图2表示对双线性项xy进行McCormick凸包络松弛的示意图;
图3表示双线性项中某一变量的上下限在各次迭代中的变化。
具体实施方式
下面结合附图和具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等同形式的修改均落于本申请所附权利要求所限定的范围。
本发明提供以下技术方案:一种改善McCormick凸包络松弛严格性的方法,在计算机中按以下步骤实现:
1)对于给定的优化问题,输入双(多)线性项中变量的上下限;
2)构建相应的McCormick包络;
3)设定OBBT和SBT算法的终止条件;
4)执行OBBT算法,获取各变量的有效上下限(valid bounds)并输出;
5)将OBBT算法的输出结果作为SBT算法的输入,执行SBT算法;
6)输出松弛后的最优解;
作为优化,所述步骤1)中,给定的优化问题P形式如下:
P:min Fobj
(1)
s.t.凸约束集合Ccvx (2)
非凸约束集合Cnoncvx (3)
变量上限集合Abilinear,Aothers (4)
变量下限集合Bbilinear,Bothers (5)
定义集合X表示所有变量构成的集合,定义Xbilinear表示双线性项中的变量构成的集合(假设共有I个双线性项,因此该集合有I个元素),定义Xothers表示其他变量构成的集合。式中,Fobj表示优化问题的目标函数,这里假设为含有双线性项的非凸函数。Ccvx表示所有凸约束的集合,包括线性约束和凸的高次约束;Cnoncvx表示非凸约束集合,这里仅考虑含有双线性项的约束。集合A/B表示所有变量的上/下限集合,其中Abilinear/Bbilinear表示双线性项中变量的上/下限集合,若相关变量未给定上下限,则取为-∞/+∞;Aothers/Bothers表示其余变量的上/下限集合。
所述步骤2)中,双线性项的McCormick包络构造如下:
对于给定的双线性项xy,其中x∈[xmin,xmax],y∈[ymin,ymax],其McCormick包络由下式构成:
所述步骤4)中,OBBT算法的具体流程如下:
Step 2:初始化,设定循环次数指示变量z=1;输入双线性项变量的初始上/下限集合A(1) bilinear/B(1) bilinear;
Step 5:若且||B(z) bilinear-B(z-1) bilinear||∞<ε或z>Z,算法终止,输出A(z) bilinear和B(z) bilinear;否则,回到Step 3。
其中,优化问题Pl(xi)和Pu(xi)定义如下:
Pl(xi),Pu(xi):min±xi (6)
s.t.Fobj≤u (7)
凸约束集合Ccvx
松弛后集合Crelax
上述优化问题中,优化问题Pl(x)/Pu(x)所对应的目标函数为xi/-xi;参数u是通过在线下求解优化问题P所得到的目标函数值,该值通常只是原问题P的可行解。线下求解是指提前或并行在另一个计算机上求解,将所得结果作为参数输入至在线求解过程中。
由于对双线性项中变量的处理是独立的,因此上述优化问题可以通过并行计算来提高整体效率。
所述步骤5)中,SBT算法的具体流程如下:
Step 2:初始化,设定循环次数指示变量z=1;输入双线性项变量的初始上/下限集合A(1) bilinear/B(1) bilinear;
Step 3:求解优化问题Prelax,将所得解(即双线性项的变量值集合Vbilinear)作为临时参数;
Step 4:利用临时参数构建双线性项变量的上下限,即A(z) bilinear←(1+εz)Vbilinear,B(z) bilinear←(1-εz)Vbilinear;令z=z+1;
Step 5:若对于所有i∈I,均有|Vi|<η或z>Z,算法终止,输出;否则,回到Step 3。
其中,|Vi|表示第i个双线性项xiyi的误差度量机制,计算如下:
下面通过一个算例来说明本发明所述改善McCormick凸包络松弛严格性方法的优越性。本发明以电力-交通网多时段协同优化调度模型为测试算例,原始数学模型为非凸NLP模型,包含168个双线性项和256个相关变量,变量上限未指定且难以估计,其余约束均为凸约束。现采用本文所提方法获取各变量的有效边界,并基于所得边界得到近似严格的McCormick凸包络松弛解。
图3展示了双线性项中某一变量的上下限在各次迭代中的变化,可见OBBT算法得到了该变量的有效边界,SBT算法进一步收紧边界,提高了McCormick包络松弛的严格性。表1给出了松弛前后的目标函数值比较,可见松弛后(MISOCP模型)所得的目标函数值与松弛前十分接近(误差小于1%)。表2给出了某一双线性项在各次迭代中的误差度量值变化,可见经过5次迭代后,误差度量值已经小于1%(0.2%),说明辅助变量的值与原始双线性项xy的值十分接近。
表1松弛前后的目标函数值比较
表2某一双线性项在各次迭代中的误差度量值变化
结合上述结果,可见本发明所提方法能够处理变量上下限无法预先获取或变量取值范围较大的双(多)线性项,并在较短时间内得到较严格的松弛解。
Claims (7)
1.一种改善McCormick凸包络松弛严格性的方法,其特征在于,包括以下步骤:
1)设定OBBT和SBT算法的终止条件;
2)对于含有多线性项的非凸优化问题,输入多线性项中各变量的初始上、下限,对于无法预先获取的变量上、下限,按照保守原则给定预设值;
3)根据各变量的初始上、下限构建McCormick包络,进而将非凸优化问题转化为凸优化问题;
4)基于步骤3的凸优化问题,执行OBBT算法直至满足终止条件,获取各变量的有效上、下限并输出;
5)将OBBT算法的输出结果即各变量的有效上下限的值作为SBT算法的输入,执行SBT算法,直至满足SBT算法的终止条件;
6)输出SBT算法的结果,得到松弛后的最优解。
2.根据权利要求1所述的一种改善McCormick凸包络松弛严格性的方法,其特征在于:所述步骤1)中,给定的优化问题P形式如下:
P:min Fobj (1)
s.t.凸约束集合Ccvx (2)
非凸约束集合Cnoncvx (3)
双线性项中变量的上限集合Abilinear,其余变量的上限集合Aothers(4)
双线性项中变量的下限集合Bbilinear,其余变量的下限集合Bothers(5)
定义集合X表示所有变量构成的集合,定义Xbilinear表示双线性项中的变量构成的集合,定义Xothers表示其他变量构成的集合;
式中,Fobj表示优化问题的目标函数,为含有双线性项的非凸函数;Ccvx表示所有凸约束的集合,包括线性约束和凸的高次约束;Cnoncvx表示非凸约束集合,仅考虑含有双线性项的约束;集合A、B表示所有变量的上、下限集合,其中Abilinear、Bbilinear分别表示双线性项中变量的上、下限集合;Aothers、Bothers分别表示其余变量的上、下限集合。
4.根据权利要求1所述的一种改善McCormick凸包络松弛严格性的方法,其特征在于:所述步骤4)中,OBBT算法的具体流程如下:
Step42:初始化,设定循环次数指示变量z=1;输入双线性项变量的初始上、下限集合A(1) bilinear、B(1) bilinear;
Step44:与上一次迭代结果比较,采用本次迭代与上一次迭代中较大值和较小值替代原上限值和下限值,进而得到第z次迭代后的变量上限集合A(z) bilinear和下限集合B(z) bilinear;
6.根据权利要求4所述的一种改善McCormick凸包络松弛严格性的方法,其特征在于:所述步骤5)中,SBT算法的具体流程如下:
Step52:初始化,设定循环次数指示变量z=1;输入双线性项变量的初始上、下限集合A(1) bilinear、B(1) bilinear;
Step53:求解第z次迭代过程中的优化问题Prelax,将所得解即双线性项的变量值集合Vbilinear作为临时参数;
Step54:利用临时参数构建双线性项变量的上下限,变量上限集合A(z) bilinear为(1+εz)Vbilinear,变量下限集合B(z) bilinear为(1-εz)Vbilinear;令z=z+1;
Step55:若对于所有双线性项的变量,均有|Vi|<η或z>Z*,算法终止,输出;否则,回到Step53。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910923656.3A CN110728040A (zh) | 2019-09-27 | 2019-09-27 | 一种改善McCormick凸包络松弛严格性的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910923656.3A CN110728040A (zh) | 2019-09-27 | 2019-09-27 | 一种改善McCormick凸包络松弛严格性的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110728040A true CN110728040A (zh) | 2020-01-24 |
Family
ID=69218483
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910923656.3A Pending CN110728040A (zh) | 2019-09-27 | 2019-09-27 | 一种改善McCormick凸包络松弛严格性的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110728040A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113780629A (zh) * | 2021-08-16 | 2021-12-10 | 西安交通大学 | 梯级水电调度模型优化方法、装置、电子设备及存储介质 |
-
2019
- 2019-09-27 CN CN201910923656.3A patent/CN110728040A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113780629A (zh) * | 2021-08-16 | 2021-12-10 | 西安交通大学 | 梯级水电调度模型优化方法、装置、电子设备及存储介质 |
CN113780629B (zh) * | 2021-08-16 | 2024-04-12 | 西安交通大学 | 梯级水电调度模型优化方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Jiang et al. | A reduced-space interior point method for transient stability constrained optimal power flow | |
CN109993361B (zh) | 一种基于pmu的配电网运行趋势预测方法 | |
Huang et al. | Exploiting fractional accumulation and background value optimization in multivariate interval grey prediction model and its application | |
CN111159638A (zh) | 基于近似低秩矩阵补全的配电网负荷缺失数据恢复方法 | |
CN110829506B (zh) | 线性松弛和比例权重的多目标有功优化调度方法和系统 | |
CN107482633B (zh) | 一种适用于辐射状配电网的非迭代区间潮流算法 | |
CN111428201A (zh) | 基于经验模态分解和前馈神经网络对时序数据的预测方法 | |
CN110556847A (zh) | 含光伏配电网中储能系统规划运行联合优化方法及系统 | |
CN115034675A (zh) | 一种基于全纯函数嵌入的电力系统直流最优潮流评估方法 | |
Montoya et al. | Triangular matrix formulation for power flow analysis in radial DC resistive grids with CPLs | |
CN105449667B (zh) | 一种发输电系统可靠性预测方法 | |
Cordero et al. | Efficient three-step iterative methods with sixth order convergence for nonlinear equations | |
CN111626476B (zh) | 一种风电场风力发电量预测方法 | |
CN110728040A (zh) | 一种改善McCormick凸包络松弛严格性的方法 | |
CN110676852B (zh) | 考虑潮流特征的改进极限学习机快速概率潮流计算方法 | |
CN107846022B (zh) | 基于ilutp预处理并行迭代法的大规模配电网潮流分析方法 | |
Saric et al. | A robust algorithm for Volt/Var control | |
CN101478160B (zh) | 高效处理复杂电力控制设备的电力系统潮流优化方法 | |
Zhang et al. | Two-stage distributionally robust optimal power flow with flexible loads | |
CN110048428B (zh) | 基于概率守恒原理的电力系统概率潮流计算方法 | |
CN101478159B (zh) | 一种暂态稳定约束电力系统潮流优化方法 | |
CN103093079A (zh) | 基于仿射算术的辐射型配电网不确定潮流分析方法 | |
Frezzatto et al. | H2 and H∞ fuzzy filters with memory for Takagi–Sugeno discrete-time systems | |
Dusuel et al. | Finite-size scaling exponents in the interacting boson model | |
CN109888788B (zh) | 一种电力系统最优潮流的求解方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200124 |