II. FRACTIONAL PROGRAMMING
FP是一类涉及分数项(或比率)的优化问题。本节回顾了处理单比率问题的FP的经典技术,然后介绍了一种能够处理多比率问题的新的二次变换技术。
A. Classic Techniques
我们首先考虑单比率FP问题。给定一个非空约束集 X ⊆ R d \mathcal {X}\subseteq \mathbb {R}^d X⊆Rd,一个非负函数 A ( x ) A(\mathbf {x}) A(x): R d → R + \mathbb {R}^d\rightarrow \mathbb {R}_+ Rd→R+,一个正函数 B ( x ) B(\mathbf {x}) B(x): R d → R + + \mathbb {R}^d\rightarrow \mathbb {R}_{++} Rd→R++,其中 d ∈ N d\in \mathbb {N} d∈N,定义一个单比(最大化)FP问题为
maximize x A ( x ) B ( x ) subject to x ∈ X . \begin{align} \underset{\mathbf {x}}{\text{maximize}} \quad \ & \frac{A(\mathbf {x})}{B(\mathbf {x})} \tag{1a}\\ \text{subject to} \quad \ & \mathbf {x} \in \mathcal {X}. \tag{1b} \end{align} xmaximize subject to B(x)A(x)x∈X.(1a)(1b)
上面的单比FP问题一般不是凸的。
处理FP的传统方法是将问题重新格式化为分子和分母解耦的形式,从而使 A ( x ) A(\mathbf {x}) A(x) 凹函数, B ( x ) B(\mathbf {x}) B(x) 是凸函数, X \mathcal X X 是标准形式表示的凸集的情况——称为 concave-convex FP 问题。下面介绍的两种经典技术就属于这种类型的方法。
- Charnes-Cooper Transform
这种经典的FP技术是由早期的作品[20],[21]提出的。它引入了两个新的变量
z
=
1
B
(
x
)
\begin{equation} z = \frac{1}{B(\mathbf {x})} \tag{2} \end{equation}
z=B(x)1(2)
和
q
=
x
B
(
x
)
,
\begin{equation} \mathbf {q} = \frac{\mathbf {x}}{B(\mathbf {x})}, \tag{3} \end{equation}
q=B(x)x,(3)
然后将单比率问题(1)重新表述为
maximize z , q z A ( q z ) subject to z B ( q z ) ≤ 1 z ∈ Z q ∈ Q \begin{align} \underset{z,\,\mathbf {q}}{\text{maximize}} \quad \ \quad \ & z A\left(\frac{\mathbf {q}}{z}\right) \tag{4a}\\ \text{subject to} \quad \ \quad \ & z B\left(\frac{\mathbf {q}}{z}\right)\leq 1 \tag{4b}\\ \quad \ \quad \ & z \in \mathcal {Z} \tag{4c}\\ \quad \ \quad \ & \mathbf {q} \in \mathcal {Q} \tag{4d} \end{align} z,qmaximize subject to zA(zq)zB(zq)≤1z∈Zq∈Q(4a)(4b)(4c)(4d)
式中, Z \mathcal {Z} Z 和 Q \mathcal {Q} Q 分别为 z z z 和 q \mathbf {q} q 根据式(2)和式(3)的取值范围, x ∈ X \mathbf x\in \mathcal X x∈X。在解决了上述问题后,原始解 x \mathbf x x 可以通过(2)或(3)恢复。这种变换首先由Charnes和Cooper针对仿射情况提出[20],然后由Schaible[21]扩展到一般的凹凸情况。
注意,这种技术通过将 B ( x ) B(\mathbf {x}) B(x) 移动到约束(4b),同时在目标中保留 A ( x ) A(\mathbf {x}) A(x),从而解耦了分母和分子。如果问题是一个凹凸FP,则重构式(4)是一个可以有效求解的凸问题。注意,在Charnes-Cooper变换中:(i)引入了附加约束;(ii) Z \mathcal {Z} Z 和 Q \mathcal {Q} Q 需要表征,这可能不容易做到。我们还注意到,尽管该技术在单比情况下工作得很好(实际上收敛于凹凸单比FP问题的全局最优解),但它不能轻易扩展到多比情况,例如,sum-of-ratios problem问题。
- Dinkelbach’s Transform:
这种经典的技术,首次在[22]中提出,将单比率问题(1)重新表述为
maximize
x
A
(
x
)
−
y
B
(
x
)
subject to
x
∈
X
\begin{align} \underset{\mathbf {x}}{\text{maximize}} \quad \ & A(\mathbf {x})-yB(\mathbf {x}) \tag{5a}\\ \text{subject to} \quad \ & \mathbf {x}\in \mathcal {X} \tag{5b} \end{align}
xmaximize subject to A(x)−yB(x)x∈X(5a)(5b)
使用一个新的辅助变量 y y y 进行迭代更新
y [ t + 1 ] = A ( x [ t ] ) B ( x [ t ] ) \begin{equation} y[t+1] = \frac{A(\mathbf {x}[t])}{B(\mathbf {x}[t])} \tag{6} \end{equation} y[t+1]=B(x[t])A(x[t])(6)
其中 t t t 是迭代索引。根据(6)交替更新 y y y 并在(5)中求解 x \mathbf {x} x,可以证明收敛性是保证的,因为每次迭代后 y y y 都是非递减的。特别地,当单比问题(1)是一个凹凸FP时,在(5)中对固定 y y y 优化 x x x 是一个凸问题;整体迭代算法实际上收敛于(1)的全局最优解。与Charnes-Cooper变换相比,Dinkelbach变换具有不引入额外约束的优势。
B. Proposed Quadratic Transform
FP的经典变换对单比问题很有效,但不能很容易地推广到多比FP问题。这是因为尽管这些经典变换具有原FP和变换后的问题具有相同最优解的性质,但变换后的问题的目标函数的最优值不一定与原FP目标函数值相同。因此,当涉及多个比率时,人们无法将变换单独应用于每个比率。
本文提出了一种新的变换,该变换以Dinkelbach变换为启发,但增加了目标函数值必须保持不变的约束条件。它之所以被命名为二次变换(quadratic transform),是因为它涉及二次项。
首先,在(1)式中对原FP目标函数进行重新变换时,我们表述了期望的变换后的目标函数必须具备的性质:
-
C1:(解耦)新目标的形式为 g ( x , y ) = f ( A ( x ) ) q 1 ( y ) + h ( B ( x ) ) q 2 ( y ) g(\mathbf {x},y)=f(A(\mathbf {x}))q_1(y) + h(B(\mathbf {x}))q_2(y) g(x,y)=f(A(x))q1(y)+h(B(x))q2(y),其中 y y y 是辅助变量。
-
C2:(等价解)变量 x ⋆ \mathbf {x}^\star x⋆ 使 A ( x ) / B ( x ) A(\mathbf {x})/B(\mathbf {x}) A(x)/B(x) 最大化当且仅当 x ⋆ \mathbf {x}^\star x⋆ 与一些 y y y 一起使 g ( x , y ) g(\mathbf {x},y) g(x,y) 最大化。
-
C3:(等价目标)令 y ⋆ = arg max y g ( x , y ) y^\star =\arg \max _y g(\mathbf x,y) y⋆=argmaxyg(x,y) 对于某个 x \mathbf x x,那么对于这个 x \mathbf x x, g ( x , y ⋆ ) = A ( x ) / B ( x ) g(\mathbf {x},y^ \star)=A(\mathbf {x})/B(\mathbf {x}) g(x,y⋆)=A(x)/B(x)。
-
C4:(凹性)对于固定的 x \mathbf x x,函数 g ( x , y ) g(\mathbf {x},y) g(x,y) 对 y y y 是凹的,即 ∂ 2 g / ∂ y 2 ≤ 0 \partial ^2 g/\partial y^2\leq 0 ∂2g/∂y2≤0。
以上四种条件都是自然启发的。C1和C2遵循经典FP变换的思想,通过 y y y 解耦 A ( x ) A(\mathbf {x}) A(x) 和 A ( x ) A(\mathbf {x}) A(x) 的优化;C3与原始问题作了更强的等价性,其动机是期望应用于多比率问题;C4允许对固定 x \mathbf {x} x 的进行 y y y 凸优化。请注意,C3意味着C2,但反之则不然。实际上,Dinkelbach变换满足C1、C2和C4,但不满足C3。(具体来说,在最优情况下,根据(6),Dinkelbach变换 y ⋆ = A ( x ) / B ( x ) y^\star =A({\mathbf {x}})/B(\mathbf {x}) y⋆=A(x)/B(x),因此其 g ( x , y ⋆ ) = 0 g(\mathbf {x},y^\star)=0 g(x,y⋆)=0。)
本文提出了FP问题的一种新的二次变换,它满足所有这些条件C1-C4,其定理表示如下。
定理1(二次变换):二次变换
g ( x , y ) = 2 y A ( x ) − y 2 B ( x ) \begin{equation} g(\mathbf x, y) = 2 y\sqrt{ A(\mathbf x)} -y^2 B(\mathbf x) \tag{7} \end{equation} g(x,y)=2yA(x)−y2B(x)(7)
满足条件C1-C4。更进一步,如果C4被强化为要求
∂
2
g
/
∂
y
2
\partial ^2 g/\partial y^2
∂2g/∂y2 独立于y,那么任何满足C1-C4的
g
(
x
,
y
)
g(\mathbf x,y)
g(x,y) 必须是这样的形式
g
(
x
,
y
)
=
2
(
t
1
y
+
t
2
)
A
(
x
)
−
(
t
1
y
+
t
2
)
2
B
(
x
)
\begin{equation} g(\mathbf x, y) = 2 (t_1 y + t_2) \sqrt{ A(\mathbf x)} - (t_1 y + t_2)^2 B(\mathbf x) \tag{8} \end{equation}
g(x,y)=2(t1y+t2)A(x)−(t1y+t2)2B(x)(8)
对于某些 t 1 ≠ 0 t_1 \ne 0 t1=0 和某些 t 2 ∈ R t_2\in \mathbb {R} t2∈R。因此,所提出的二次变换在 y y y 上的仿射变换是不失一般性的。