【线性化】绝对值项的线性化
今天优化里面又碰到绝对值了。无论是目标函数里头的绝对值还是约束条件里头的绝对值,处理起来都一样:把绝对值项换成非绝对值项(好像有点废话)。
假设有绝对值项如下,其中 Rjj∈SL{R_j}{\rm{ }} \ \ \ \ j \in {S_L}Rj j∈SL 是自变量。
Os=1N∑j∈SL∣Rj−∑j∈SLRjN∣{O_s} = {1 \over N}\sum\limits_{j \in {S_L}} {\left| {{R_j} - {{\sum\limits_{j \in {S_L}} {{R_j}} } \over N}} \right|} Os=N1j∈SL∑∣∣∣∣∣∣∣Rj−Nj∈SL∑Rj∣∣∣∣∣∣∣
则Os{O_s}Os可用如下四个式子进行替换:
Os=1N∑j∈SLUj{O_s} = {1 \over N}\sum\limits_{j \in {S_L}} {{U_j}} Os=N1j∈SL∑Uj
Rj−∑j∈SLRjN≤Uj≤Rj−∑j∈SLRjN+Mδj(1){R_j} - {{\sum\limits_{j \in {S_L}} {{R_j}} } \over N} \le {U_j} \le {R_j} - {{\sum\limits_{j \in {S_L}} {{R_j}} } \over N} + M{\delta _j} \tag{1} Rj−Nj∈SL∑Rj≤Uj≤Rj−Nj∈SL∑Rj+Mδj(1)
∑j∈SLRjN−Rj≤Uj≤∑j∈SLRjN−Rj+Mεj(2){{\sum\limits_{j \in {S_L}} {{R_j}} } \over N} - {R_j} \le {U_j} \le {{\sum\limits_{j \in {S_L}} {{R_j}} } \over N} - {R_j} + M{\varepsilon _j} \tag{2} Nj∈SL∑Rj−Rj≤Uj≤Nj∈SL∑Rj−Rj+Mεj(2)
δj+εj=1(3){\delta _j} + {\varepsilon _j} = 1 \tag{3}δj+εj=1(3)
式中:MMM为一个极大数,δj{\delta _j}δj 和 εj{\varepsilon _j}εj 均为0-1变量。
观察一下,其实就是用 Uj{U_j}Uj 替换了 ∣Rj−∑j∈SLRjN∣\left| {{R_j} - {{\sum\limits_{j \in {S_L}} {{R_j}} } \over N}} \right|∣∣∣∣∣Rj−Nj∈SL∑Rj∣∣∣∣∣。
下面稍加分析。
首先明确一点:绝对值 ∣m−n∣\left| {m - n} \right|∣m−n∣ 其实就是取 m−nm-nm−n 和 n−mn-mn−m 二者中的较大值。
看式(1)和式(2)的左半边,已经确保了 Uj{U_j}Uj 能 大于等于 Rj−∑j∈SLRjN{R_j} - {{\sum\limits_{j \in {S_L}} {{R_j}} } \over N}Rj−Nj∈SL∑Rj 和 ∑j∈SLRjN−Rj{{\sum\limits_{j \in {S_L}} {{R_j}} } \over N} - {R_j}Nj∈SL∑Rj−Rj中的较大值。下面再需要让这个大于等于能够取等。这就是式(1)和式(2)的右半边的作用。
由于有0-1变量和大M的作用,再加上左半边已经确保 Uj{U_j}Uj 能大于较大值,右半边的最终效果则是 Uj{U_j}Uj 会小于等于二者中 Rj−∑j∈SLRjN{R_j} - {{\sum\limits_{j \in {S_L}} {{R_j}} } \over N}Rj−Nj∈SL∑Rj 和 ∑j∈SLRjN−Rj{{\sum\limits_{j \in {S_L}} {{R_j}} } \over N} - {R_j}Nj∈SL∑Rj−Rj中的较大值。
此处 δj+εj=1{\delta _j} + {\varepsilon _j} = 1δj+εj=1的作用就是确保式(1)和式(2)右半边两个式子只有一个能起作用,也就是0-1变量取0的那个式子,取1的那个式子由于大M的存在会被松弛,因为等价于小于等于一个极大数。
大于等于较大值,小于等于较大值,综合效果就是等于较大值。
总结
由于上述线性化是直接把绝对值项用非绝对值项+一些不含绝对值的约束替换掉,所以无论绝对值项出现在目标函数中还是约束条件中都是可以顺利操作的。
但是如果约束条件是 ∣x−m∣≤n\left| {x - m} \right| \le n∣x−m∣≤n 这种,直接把绝对值拆开就可以了,但如果是 ∑i=1N∣xi−m∣≤n\sum\limits_{i = 1}^N {\left| {{x_i} - m} \right|} \le ni=1∑N∣xi−m∣≤n 这种稍微不那么一般的形式,貌似就只能通过上述这种稍微繁琐一些的操作来进行线性化了。
另外这种线性化的操作应该不是唯一的,上面给出的只是我自己看到的并且觉得比较好理解的一种。
参考文献
孙田, 邹鹏, 杨知方, 等. 动态无功优化的多阶段求解方法[J]. 电网技术, 2016, 40(06): 1804–1810.
【线性化】绝对值项的线性化相关推荐
- 优化 | 线性化:含绝对值的线性化
优化 | 线性化:含绝对值的线性化 非线性整数规划模型 Gurobi求解代码 绝对值的线性化技巧 利用上面的技巧进行线性化 总结 作者:刘兴禄, 清华大学 清华-伯克利深圳学院,博士在读 欢迎关注我们 ...
- 扩展、统计线性化和无迹RTS平滑器
扩展.统计线性化和无迹RTS平滑器 扩展RTS平滑器(ERTSS) 扩展RTS平滑器 统计线性化RTS平滑器(SLRTSS) SLTRSS 无迹RTS平滑器(URTSS) 叠加型URTSS: 非叠加型 ...
- 用于射频功率放大器线性化的多查找表数字预失真
文章原名为:<Multi Look-Up Table DigitalPredistortion for RF PowerAmplifier Linearization>的博士论文 自适应数 ...
- 数学模型tricks | 大M法线性化注意事项
数学模型tricks | 大M法线性化注意事项 文章目录 数学模型tricks | 大M法线性化注意事项 问题 错误根源 总结 1.综上 2.大M的用法详细介绍 3.大M取值太小引发的错误 4.Gur ...
- 连续非线性系统线性化理论
连续非线性系统线性化理论 在工程领域的被控对象常常是非线性的动力系统.对非线性控制系统 x ˙ = f ( x , t ) \dot{x}=f(x,t) x˙=f(x,t)的稳定性分析,常常需要将非线 ...
- 反馈线性化类有哪些最新发表的毕业论文呢?
一.总体简介 反馈线性化的相关文献在1992年到2020年内共计627篇,主要集中在自动化技术.计算机技术.电工技术.航天(宇宙航行) 等领域,其中期刊论文521篇.会议论文69篇.专利文献37篇: ...
- Matlab线性化操作linmod
参考:Matlab线性化函数linmod matlab线性化 1.Simulink模型 2.配平 3.linmod线性化
- 【色彩管理】色彩管理之线性化
00. 目录 文章目录 00. 目录 01. 概述 02. 线性化测试图 03. 线性化扫描 04. 曲线图参考 05. 附录 01. 概述 02. 线性化测试图 03. 线性化扫描 1.打印校准图前 ...
- 【Scala】特质与特质的线性化
特质 Scala里相当于Java接口的是Trait(特征).实际上它比接口还功能强大.与接口不同的是,它还可以定义属性和方法的实现.Scala中特征被用于服务于单一目的功能模块的模块化中.通过混合这种 ...
- LINGO使用指南(转载)
LINGO是用来求解线性和非线性优化问题的简易工具.LINGO内置了一种建立最优化模型的语言,可以简便地表达大规模问题,利用LINGO高效的求解器可快速求解并分析结果. §1 LINGO快速入门 当 ...
最新文章
- java logback 使用_Java | Logback的使用配置
- mysql数据库的触发器_Mysql数据库触发器
- GitHub 近 100,000 程序员“起义”:向“996”开炮!
- 腾讯云上午突发故障 称运营商光缆中断所致
- 《Excel最强功能-数据透视表》 网课笔记
- Ubuntu10.04下安装Ns2的一系列错误及解决方案
- 政府公务办公安全保密邮件系统建设
- vue防抖和节流是什么_前端节流和防抖的区别
- [Liferay6.2]Liferay Dynamic Query API示例
- 格力手机色界G0245D-Root-最简指南
- timesten配置使用客户端连接timesten服务器
- 计算机字体管理软件,字体管理软件有哪些?字体管理软件推荐
- 四大汽车总线:LIN、CAN、FlexRay、MOST简述
- (二十七)张量表示定理 —— Cauchy 基本表示定理
- python实现运动模糊图像_OpenCV+Python实现图像运动模糊和高斯模糊!它是编程界的PS!...
- 解决阿里云ESC启动kube-proxy服务时出现错误 亲测有效
- 解决:Mac “微信”意外退出
- 高性能计算(HPC)
- http状态返回代码 1xx(临时响应)
- python数据评估