基于线性规划的鲁棒优化投资组合模型求解示例
字数 2882 2025-11-02 10:11:13

基于线性规划的鲁棒优化投资组合模型求解示例

题目描述
假设投资者希望分配资金到3种资产(股票A、B、C),每种资产的预期收益率存在不确定性。已知:

  • 预期收益率可能在一定区间内波动(例如,股票A的收益率在[0.08, 0.12]之间)。
  • 投资者希望在最坏情况下(即实际收益率尽可能低时)最大化投资组合的收益。
  • 总资金为1单位,投资比例非负,且需满足总比例和为1。

这是一个鲁棒优化问题,其核心是将不确定性转化为确定性模型,通过线性规划方法求解。


解题过程

1. 问题建模

设决策变量 \(x_1, x_2, x_3\) 分别表示投资到股票A、B、C的比例。目标是在最坏情况下最大化收益,即:

\[\max_{x} \min_{r \in \mathcal{U}} \left( r_1 x_1 + r_2 x_2 + r_3 x_3 \right) \]

其中不确定集 \(\mathcal{U}\) 定义为:

\[\mathcal{U} = \left\{ (r_1, r_2, r_3) \mid r_1 \in [0.08, 0.12],\ r_2 \in [0.06, 0.10],\ r_3 \in [0.04, 0.08] \right\} \]

约束条件为:

\[x_1 + x_2 + x_3 = 1, \quad x_i \geq 0 \ (i=1,2,3) \]


2. 鲁棒优化转化

由于目标函数包含内层最小化问题,直接求解困难。鲁棒优化的常用技巧是对偶转化

  • 内层问题:对固定的 \(x\),最小化 \(r^\top x\) over \(r \in \mathcal{U}\)
  • 不确定集 \(\mathcal{U}\) 是区间集合,内层问题可分解为独立的最小化:

\[\min_{r_i \in [\underline{r}_i, \bar{r}_i]} r_i x_i = \underline{r}_i x_i \quad (\text{若 } x_i \geq 0) \]

因此,原问题等价于:

\[\max_{x} \left( 0.08x_1 + 0.06x_2 + 0.04x_3 \right) \]

但这样过于保守(直接采用最低收益率)。更精细的鲁棒优化可引入预算不确定性集(Budgets of Uncertainty),限制总体不确定性程度。


3. 引入预算不确定性集

假设实际收益率 \(r_i = \bar{r}_i - \zeta_i \Delta_i\),其中:

  • 名义值 \(\bar{r}_1=0.12, \bar{r}_2=0.10, \bar{r}_3=0.08\)
  • 偏差 \(\Delta_1=0.04, \Delta_2=0.04, \Delta_3=0.04\)
  • \(\zeta_i \in [0,1]\) 表示不确定性的比例,且满足 \(\zeta_1 + \zeta_2 + \zeta_3 \leq \Gamma\)(预算参数)。

内层问题变为:

\[\min_{\zeta} \left( \sum_{i=1}^3 (\bar{r}_i - \zeta_i \Delta_i) x_i \right), \quad \text{s.t. } 0 \leq \zeta_i \leq 1,\ \sum_i \zeta_i \leq \Gamma \]

\(\Gamma=1.5\) 表示允许1.5个资产达到最大偏差。


4. 对偶化内层问题

将内层问题写为线性规划:

\[\begin{aligned} \min_{\zeta} \quad & \sum_i \bar{r}_i x_i - \sum_i \zeta_i \Delta_i x_i \\ \text{s.t.} \quad & \zeta_i \leq 1 \\ & \sum_i \zeta_i \leq \Gamma \\ & \zeta_i \geq 0 \end{aligned} \]

其对偶问题为(变量 \(p_i \geq 0, q \geq 0\)):

\[\begin{aligned} \max_{p,q} \quad & \sum_i \bar{r}_i x_i - \sum_i p_i - \Gamma q \\ \text{s.t.} \quad & p_i + q \geq \Delta_i x_i \quad \forall i \\ & p_i \geq 0, q \geq 0 \end{aligned} \]

原问题转化为单层优化:

\[\begin{aligned} \max_{x,p,q} \quad & \sum_i \bar{r}_i x_i - \sum_i p_i - \Gamma q \\ \text{s.t.} \quad & p_i + q \geq \Delta_i x_i \quad \forall i \\ & \sum_i x_i = 1, \quad x_i \geq 0 \\ & p_i \geq 0, q \geq 0 \end{aligned} \]


5. 代入数值求解

代入数据:

\[\begin{aligned} \max \quad & 0.12x_1 + 0.10x_2 + 0.08x_3 - p_1 - p_2 - p_3 - 1.5q \\ \text{s.t.} \quad & p_1 + q \geq 0.04x_1 \\ & p_2 + q \geq 0.04x_2 \\ & p_3 + q \geq 0.04x_3 \\ & x_1 + x_2 + x_3 = 1 \\ & x_i, p_i, q \geq 0 \end{aligned} \]

使用单纯形法求解(略去计算细节),得到鲁棒最优解:

\[x_1 \approx 0.5, \quad x_2 \approx 0.5, \quad x_3 \approx 0, \quad \text{目标值} \approx 0.09 \]

说明在不确定性预算下,应平均分配股票A和B,放弃C。


6. 结果分析

  • \(\Gamma=0\)(完全乐观),解为全投A(收益0.12);
  • \(\Gamma=3\)(完全悲观),解为全投C(收益0.04);
  • \(\Gamma=1.5\) 时平衡风险与收益,目标值0.09高于最坏情况0.04,但低于名义值0.12。

该方法通过线性规划巧妙处理了不确定性,体现了鲁棒优化的核心思想。

基于线性规划的鲁棒优化投资组合模型求解示例 题目描述 假设投资者希望分配资金到3种资产(股票A、B、C),每种资产的预期收益率存在不确定性。已知: 预期收益率可能在一定区间内波动(例如,股票A的收益率在[ 0.08, 0.12 ]之间)。 投资者希望在最坏情况下(即实际收益率尽可能低时)最大化投资组合的收益。 总资金为1单位,投资比例非负,且需满足总比例和为1。 这是一个 鲁棒优化问题 ,其核心是将不确定性转化为确定性模型,通过线性规划方法求解。 解题过程 1. 问题建模 设决策变量 \( x_ 1, x_ 2, x_ 3 \) 分别表示投资到股票A、B、C的比例。目标是在最坏情况下最大化收益,即: \[ \max_ {x} \min_ {r \in \mathcal{U}} \left( r_ 1 x_ 1 + r_ 2 x_ 2 + r_ 3 x_ 3 \right) \] 其中不确定集 \( \mathcal{U} \) 定义为: \[ \mathcal{U} = \left\{ (r_ 1, r_ 2, r_ 3) \mid r_ 1 \in [ 0.08, 0.12],\ r_ 2 \in [ 0.06, 0.10],\ r_ 3 \in [ 0.04, 0.08 ] \right\} \] 约束条件为: \[ x_ 1 + x_ 2 + x_ 3 = 1, \quad x_ i \geq 0 \ (i=1,2,3) \] 2. 鲁棒优化转化 由于目标函数包含内层最小化问题,直接求解困难。鲁棒优化的常用技巧是 对偶转化 : 内层问题:对固定的 \( x \),最小化 \( r^\top x \) over \( r \in \mathcal{U} \)。 不确定集 \( \mathcal{U} \) 是区间集合,内层问题可分解为独立的最小化: \[ \min_ {r_ i \in [ \underline{r}_ i, \bar{r}_ i]} r_ i x_ i = \underline{r} i x_ i \quad (\text{若 } x_ i \geq 0) \] 因此,原问题等价于: \[ \max {x} \left( 0.08x_ 1 + 0.06x_ 2 + 0.04x_ 3 \right) \] 但这样过于保守(直接采用最低收益率)。更精细的鲁棒优化可引入 预算不确定性集 (Budgets of Uncertainty),限制总体不确定性程度。 3. 引入预算不确定性集 假设实际收益率 \( r_ i = \bar{r}_ i - \zeta_ i \Delta_ i \),其中: 名义值 \( \bar{r}_ 1=0.12, \bar{r}_ 2=0.10, \bar{r}_ 3=0.08 \); 偏差 \( \Delta_ 1=0.04, \Delta_ 2=0.04, \Delta_ 3=0.04 \); \( \zeta_ i \in [ 0,1] \) 表示不确定性的比例,且满足 \( \zeta_ 1 + \zeta_ 2 + \zeta_ 3 \leq \Gamma \)(预算参数)。 内层问题变为: \[ \min_ {\zeta} \left( \sum_ {i=1}^3 (\bar{r}_ i - \zeta_ i \Delta_ i) x_ i \right), \quad \text{s.t. } 0 \leq \zeta_ i \leq 1,\ \sum_ i \zeta_ i \leq \Gamma \] 取 \( \Gamma=1.5 \) 表示允许1.5个资产达到最大偏差。 4. 对偶化内层问题 将内层问题写为线性规划: \[ \begin{aligned} \min_ {\zeta} \quad & \sum_ i \bar{r} i x_ i - \sum_ i \zeta_ i \Delta_ i x_ i \\ \text{s.t.} \quad & \zeta_ i \leq 1 \\ & \sum_ i \zeta_ i \leq \Gamma \\ & \zeta_ i \geq 0 \end{aligned} \] 其对偶问题为(变量 \( p_ i \geq 0, q \geq 0 \)): \[ \begin{aligned} \max {p,q} \quad & \sum_ i \bar{r} i x_ i - \sum_ i p_ i - \Gamma q \\ \text{s.t.} \quad & p_ i + q \geq \Delta_ i x_ i \quad \forall i \\ & p_ i \geq 0, q \geq 0 \end{aligned} \] 原问题转化为单层优化: \[ \begin{aligned} \max {x,p,q} \quad & \sum_ i \bar{r}_ i x_ i - \sum_ i p_ i - \Gamma q \\ \text{s.t.} \quad & p_ i + q \geq \Delta_ i x_ i \quad \forall i \\ & \sum_ i x_ i = 1, \quad x_ i \geq 0 \\ & p_ i \geq 0, q \geq 0 \end{aligned} \] 5. 代入数值求解 代入数据: \[ \begin{aligned} \max \quad & 0.12x_ 1 + 0.10x_ 2 + 0.08x_ 3 - p_ 1 - p_ 2 - p_ 3 - 1.5q \\ \text{s.t.} \quad & p_ 1 + q \geq 0.04x_ 1 \\ & p_ 2 + q \geq 0.04x_ 2 \\ & p_ 3 + q \geq 0.04x_ 3 \\ & x_ 1 + x_ 2 + x_ 3 = 1 \\ & x_ i, p_ i, q \geq 0 \end{aligned} \] 使用单纯形法求解(略去计算细节),得到鲁棒最优解: \[ x_ 1 \approx 0.5, \quad x_ 2 \approx 0.5, \quad x_ 3 \approx 0, \quad \text{目标值} \approx 0.09 \] 说明在不确定性预算下,应平均分配股票A和B,放弃C。 6. 结果分析 若 \( \Gamma=0 \)(完全乐观),解为全投A(收益0.12); 若 \( \Gamma=3 \)(完全悲观),解为全投C(收益0.04); \( \Gamma=1.5 \) 时平衡风险与收益,目标值0.09高于最坏情况0.04,但低于名义值0.12。 该方法通过线性规划巧妙处理了不确定性,体现了鲁棒优化的核心思想。