【研究意义】线性比式和优化问题在运输计划,政府规划及经济投资等领域有着重要的作用[1].考虑如下线性比式和问题:
$\left( P \right):\left\{ \begin{array}{l} minf\left( x \right) = \sum\limits_{i = 1}^p {} \frac{{c_i^ \top x + {\alpha _i}}}{{d_i^ \top x + {\gamma _i}}}\\ s.t.Ax \le b,\\ x \in {X^0} = \left\{ {x \in {\rm{ }}R_ + ^n:{l^0} \le x \le {u^0}} \right\}, \end{array} \right.$ |
其中A∈Rm×n,b∈Rm,ci,di∈Rn,αi,γi∈R,di┬x+γi>0,且γi≠0,i=1,2,…,p,可行域D={x∈X0|Ax≤b}非空. 题(P)的目标函数既非拟凸也非拟凹,在理论和计算方面具有很大的挑战性,因此对问题(P)的求解方法的研究既有理论意义又有实用价值.【前人研究进展】近年来问题(P)已引起许多研究者的关注[1-5],目前人们针对线性比式和问题的研究大多都要求目标函数的分子分母在可行域内非负.【本研究切入点】本文考虑的问题模型仅要求di┬x+γi>0,且γi≠0.【拟解决的关键问题】采用新的分支定界技术,从理论上证明了算法的收敛性,且用数值算例验证算法是可行的.
1 预备知识为了求解问题(P),引入p个向量
yi=
$\left( {\tilde P} \right)\left\{ \begin{array}{l} min\sum\limits_{i = 1}^p {} {\left( {{c_i} - \frac{{{\alpha _i}}}{{{d_i}{\gamma _i}}}} \right)^ \top }{y_i} + \frac{{{\alpha _i}}}{{{\gamma _i}}}\\ s.t.Ax \le {\rm{ }}b,\\ {y_i} = \frac{x}{{d_i^ \top x + {\gamma _i}}},i = 1,2, \ldots ,p,\\ x \in {X^0} = [{l^0},{u^0}]. \end{array} \right.$ |
命题1 若(x*,y*)是(
由问题(P)和问题(
令X=[l,u]表示初始盒子X0,或者由算法产生的X0的子盒子.下面考虑如何在子盒子X上求解问题(
$Q\left( X \right):\left\{ \begin{array}{l} ming\left( y \right) = \sum\limits_{i = 1}^p {} \xi _i^ \top {y_i} + {\tau _i}\\ s.t.(A + \frac{{bd_i^ \top }}{{{\gamma _i}}}){y_i} \le \frac{b}{{{\gamma _i}}},i \in I,\\ - (\frac{{ld_i^ \top }}{{{\gamma _i}}} + I){y_i} \le - \frac{l}{{{\gamma _i}}},i \in I,\\ (\frac{{ud_i^ \top }}{{{\gamma _i}}} + I){y_i} \le \frac{u}{{{\gamma _i}}},i \in I,\\ \frac{l}{{{s_i}}} \le {y_i} \le \frac{u}{{{t_i}}},i \in I, \end{array} \right.$ |
其中,si=
命题2 (i) 若x*是问题P(X)的最优解,则问题Q(X)有最优解
(ii) 若
证明 (i)令yi*=
(ii)显然每个
由上述命题可知,若求得问题Q(X)的最优值
g(
采用分支定界方法求解问题
令N={1,2,…,n},ρj=min{uj-ωj,ωj-lj},j∈N,q∈arg max{ρj|j∈N}.这样X就被分割成两个子盒子X1=[l′,u]和X2=[l,u′],其中,
$\begin{array}{*{20}{l}} {l' = \left( {{l_1}, \ldots ,{l_{q - 1}},{\omega _q},{l_{q{\rm{ }} + 1}}, \ldots ,{l_n}} \right),}\\ {u' = \left( {{u_1}, \ldots ,{u_{q - 1}},{\omega _q},{u_{q{\rm{ }} + 1}}, \ldots ,{u_n}} \right).} \end{array}$ |
令X1=X0,用上述分割方法将盒子X1分割成X11和X21,在这两个子盒子上分别求解问题Q(Xr1),r=1,2,其较小最优值所对应的盒子定义为X2,再对此盒子进行分割.该过程依次进行下去就会得到一系列子盒子Xrk,k=1,2,…,r=1,2.
通过求解问题Q(Xrk),可逐步改进原问题(P)的最优值的上下界,最终确定(P)的全局最优解.假定在算法的第k次迭代,Ek表示由活动节点(可能存在全局最优解的盒子)构成的集合.对每个节点
步骤1 给定参数∈≥0,迭代次数k=1,活动节点Ek={Xk},上界UBk=∞.
求解问题Q(Xk)得最优解和最优值分别为yk和LB(Xk)=g(yk).令
$x_i^k = \frac{{{\gamma _i}y_i^k}}{{1 - d_i^ \top y_i^k}},i = 1,2, \ldots ,p.$ |
若x1k=…=xpk,算法终止,xik,f(xik)(∀i∈I)分别是原问题(P)的最优解和最优值,否则,执行步骤2.
步骤2 令ωk=
步骤3 用ω分法将盒子Xk分成两部分X1k和X2k,令Ek=Ek \{Xk}.
步骤4 对于任意r∈{1,2},若Xrk≠Ø,求得问题Q(Xrk)的最优解yrk,令 LB(Xrk)=g(yrk).
若LB(Xrk)≤UBk,令Ek=Ek∪Xrk,
xr ik=
步骤5 令Ek+1=Ek∪{
由上述算法可知,在迭代过程中至少会产生一个嵌套的盒子序列,不妨仍记为{Xk},那么每个盒子的上下界及分割点ωk 所产生的序列{lk},{ωk},{uk}满足如下条件:
${l^k} \le {l^{k + 1}} \le {\omega ^{k + 1}} \le {u^{k + 1}} \le {u^k},k = 1,2, \cdots .$ | (1) |
其中[l1,u1]=[l0,u0],ωqkk∈{lqkk+1,uqkk+1}.
引理1 (i) 序列{lk},{uk}满足:
证明 (i) 由(1)式知,对任意j∈N,序列{ljk},{ujk}单调有界,所以k趋于无穷大时它们分别收敛于lj,uj,且满足lj1≤lj≤uj≤uj1,由j的任意性可证(i).
(ii) 序列{ωk}∈[l1,u1],则该序列至少存在一个聚点w,设{ωks}是收敛于w的一个子列.对于无穷大的s,存在t∈N使得qks=t,且ωtks∈{ltks+1,utks+1},故
$\omega _t^{{k_s}} \to {{\bar \omega }_t} \in \left\{ {{{\bar l}_t},{{\bar u}_t}} \right\}.$ |
而由ρj及q的定义知,
min{utks-ωtks,ωtks-ltks}≥ min{ujks-ωjks,ωjks-ljks},j∈N.
显然,s→+∞时上述不等式左边趋于0,故右边也趋于0,即ω是盒子[l,u]的拐点.(iii)由(ii)知,wj∈{lj,uj},j∈N.而对任意的i∈I,xijks∈[ljks,ujks],有
$\omega _j^{{k_s}} - l_j^{{k_s}} = \frac{1}{p}\sum\limits_{i = 1}^p {} (x_{ij}^{{k_s}} - {\rm{ }}l_j^{{k_s}}) \ge \frac{1}{p}(x_{ij}^{{k_s}} - l_j^{{k_s}}) \ge 0.$ |
则ωj=lj时,
同理,ωj=uj时,
定理1 (i)参数∈=0,则算法有限步终止于问题(P)的最优解xk,或者产生一个无穷序列{xk},其任一聚点都是问题(P)的最优解.(ii)若∈>0,则算法有限步终止,并得到问题(P)的一个近似解xk,且满足
$\begin{array}{l} U{B_k} = \sum\limits_{i = 1}^p {} \frac{{{\rm{ }}c_i^ \top {x^k} + {\alpha _i}}}{{d_i^ \top {x^k} + {\gamma _i}}} \le \sum\limits_{i = 1}^p {} \frac{{c_i^ \top x + {\alpha _i}}}{{d_i^ \top x + {\gamma _i}}} + \in ,\\ \forall x \in D. \end{array}$ |
证明 (i)若算法经过k次迭代终止,结论显然成立;否则,由算法可知,
$LB({X^k}) < U{B_k} \le \frac{{\sum\limits_{i = 1}^p {} c_i^ \top {\omega ^k} + {\alpha _i}}}{{d_i^ \top {\omega ^k} + {\gamma _i}}}.$ | (2) |
因为序列{UBk}单调递减且有下界,故存在极限
$\begin{array}{l} LB\left( {{X^{{k_s}}}} \right) = g\left( {{y^{{k_s}}}} \right){\rm{ }} = \sum\limits_{i = 1}^p {} {\rm{ }}\frac{{c_i^ \top x_i^{{k_s}} + {\alpha _i}}}{{d_i^ \top x_i^{{k_s}} + {\gamma _i}}} \to \\ \sum\limits_{i = 1}^p {} \frac{{{\rm{ }}c_i^ \top + {\alpha _i}}}{{d_i^ \top \bar \omega + {\gamma _i}}}. \end{array}$ |
又因为
$\sum\limits_{i = 1}^p {} \frac{{c_i^ \top x' + {\alpha _i}}}{{d_i^ \top x' + {\gamma _i}}} < \overline {UB} $ | (3) |
对于任意s,在第ks次迭代可行解x′属于某个盒子
$LB\left( {{X^{{k_s}}}} \right) \le LB\left( {\hat X} \right) \le \sum\limits_{i = 1}^p {} \frac{{c_i^ \top x' + {\alpha _i}}}{{d_i^ \top x' + {\gamma _i}}},$ |
则有
$\overline {UB} \le \sum\limits_{i = 1}^p {} \frac{{c_i^ \top x' + {\alpha _i}}}{{d_i^ \top x' + {\gamma _i}}}$ |
这与(3)式矛盾,故假设不成立.即有
$\overline {UB} \le \sum\limits_{i = 1}^p {} \frac{{c_i^ \top x + {\alpha _i}}}{{d_i^ \top x + {\gamma _i}}},\forall x \in D.$ |
因为D是紧集,故序列{xk}的任意聚点x∈D.设{xkt}是收敛于x的子列,则
$\mathop {\lim }\limits_{s \to + \infty } U{B_{{k_t}}} = \mathop {\lim }\limits_{s \to + \infty } \sum\limits_{i = 1}^p {} \frac{{{\rm{ }}c_i^ \top {x^{{k_t}}} + {\alpha _i}}}{{d_i^ \top {x^{{k_t}}} + {\gamma _i}}} \le \sum\limits_{i = 1}^p {} \frac{{c_i^ \top \bar x + {\alpha _i}}}{{d_i^ \top \bar x + {\gamma _i}}},$ |
即
$\overline {UB} = \sum\limits_{i = 1}^p {} \frac{{c_i^ \top \bar x + {\alpha _i}}}{{d_i^ \top \bar x + {\gamma _i}}}$ |
那么对∀x∈D,有
$\sum\limits_{i = 1}^p {} \frac{{c_i^ \top \bar x + {\alpha _i}}}{{d_i^ \top \bar x + {\gamma _i}}} \le \sum\limits_{i = 1}^p {} \frac{{c_i^ \top x + {\alpha _i}}}{{d_i^ \top x + {\gamma _i}}}.$ |
所以,x是(P)的最优解.
(ii) 由(i)可知,
$U{B_k} - LB({X^k}) \le \in ,$ |
所以,对任意x∈D,有
$U{B_k} - \sum\limits_{i = 1}^p {} \frac{{c_i^ \top x + {\alpha _i}}}{{d_i^ \top x + {\gamma _i}}} \le U{B_k} - LB\left( {{X^k}} \right) \le \in $ |
即有UBk≤
为验证算法的可行性,在AMD A8 CPU(主频 1.9 GHz)4 GB 内存的微机上用Matlab(2012b)进行数值计算.
例1[2]
$\begin{array}{l} \begin{array}{*{20}{l}} {max\frac{{{a_1}\left( x \right)}}{{{b_1}\left( x \right)}} + \frac{{{a_2}\left( x \right)}}{{{b_2}\left( x \right)}} + \frac{{{a_3}\left( x \right)}}{{{b_3}\left( x \right)}} + \frac{{{a_4}\left( x \right)}}{{{b_4}\left( x \right)}}}\\ {s.t.2{x_1} + {x_2} + 5{x_3} \le 10,} \end{array}\\ {x_1} + 6{x_2} + 3{x_3} \le 10,\\ 5{x_1} + 9{x_2} + 2{x_3} \le 10,\\ 9{x_1} + 7{x_2} + 3{x_3} \le 10,\\ {x_1},{x_2},{x_3} \ge 0. \end{array}$ |
其中,a1(x)=4x1+3x2+3x3+50,a2(x)=3x1+4x2+50,a3(x)=x1+2x2+5x3+50,a4(x)=x1+2x2+4x3+50, b1(x)=3x2+3x3+50,b2(x)=4x1+4x2+5x3+50,b3(x)=x1+5x2+5x3+50,b4(x)=5x2+4x3+50.
取∈=1e-9,得计算结果:运行时间0.8120 s,最优值为4.0907,最优解为(1.1111,0.0000,0.0000),迭代次数为29.
例2[1]
$\begin{array}{*{20}{l}} {max\frac{{{a_1}\left( x \right)}}{{{b_1}\left( x \right)}} - \frac{{{a_2}\left( x \right)}}{{{b_2}\left( x \right)}} - \frac{{{a_3}\left( x \right)}}{{{b_3}\left( x \right)}} - \frac{{{a_4}\left( x \right)}}{{{b_4}\left( x \right)}}}\\ \begin{array}{l} s.t.6{x_1} + 3{x_2} + 3{x_3} \le 10,\\ 10{x_1} + 3{x_2} + 8{x_3} \le 10,\\ {x_1},{x_2},{x_3} \ge 0. \end{array} \end{array}$ |
其中,a1(x)=3x1+4x2+50,a2(x)=3x1+5x2+3x3+50,a3(x)=x1+2x2+4x3+50,a4(x)=4x1+3x2+3x3+50, b1(x)=3x1+5x2+4x3+50,b2(x)=5x1+5x2+4x3+50,b3(x)=5x2+4x3+50,b4(x)=3x2+3x3+50.
取∈=1e-6,得计算:运行时间0.8580 s,最优值为-1.9,最优解为(0.0000,3.3333,0.0000),迭代次数为32.
数据结果表明,本文算法是可行的.
4 结论本文提出一种新的分支定界算法求解线性比式和问题(P),先把问题(P)转换成等价问题,再利线性松弛技术建立(
[1] |
SHEN P P, WANG C F. Global optimization for sum of linear ratios problem with coefficients[J]. Applied Mathematics and Computation, 2006, 176(1): 219-229. DOI:10.1016/j.amc.2005.09.047 |
[2] |
JIAO H W, LIU S Y. A practicable branch and bound algorithm for sum of linear ratios problem[J]. European Journal of Operational Research, 2015, 243(3): 723-730. DOI:10.1016/j.ejor.2015.01.039 |
[3] |
CARLSSON J G, SHI J M. A linear relaxation algorithm for solving the sum-of-linear-ratios problem with lower dimension[J]. Operations Research Letters, 2013, 41(4): 381-389. DOI:10.1016/j.orl.2013.04.005 |
[4] |
张永红, 汪春峰. 求线性比式和问题全局解的一个新方法[J]. 应用数学学报, 2012, 35(1): 42-48. ZHANG Y H, WANG C F. A new global algorithm for sum of linear ratios problem[J]. Acta Mathematicae Applicatae Sinica, 2012, 35(1): 42-48. |
[5] |
WANG C F, SHEN P P. A global optimization algorith-m for linear fractional programming[J]. Applied Mathematics and Computation, 2008, 204(1): 281-287. DOI:10.1016/j.amc.2008.06.045 |
[6] |
KUNO T, MASAKI T. A practical but rigorous approa-ch to sum-of-ratios optimization in geometric applications[J]. Computational Optimization and Applications, 2013, 54(1): 93-109. DOI:10.1007/s10589-012-9488-5 |