非线性规划中的精确罚函数法基础题
字数 1319 2025-10-28 20:05:13

非线性规划中的精确罚函数法基础题

题目描述:
考虑非线性规划问题:
minimize f(x) = x₁² + x₂²
subject to g(x) = x₁ + x₂ - 1 = 0
使用精确罚函数法求解该问题,其中罚函数形式为 P(x) = f(x) + μ|g(x)|,μ为罚参数。

解题过程:

  1. 问题分析
    我们有一个简单的二次目标函数和线性等式约束。精确罚函数法的特点是当罚参数μ足够大时,罚函数的最优解就是原约束问题的最优解。

  2. 构造精确罚函数
    精确罚函数为:P(x) = x₁² + x₂² + μ|x₁ + x₂ - 1|

  3. 分区域讨论
    由于含有绝对值项,我们需要分两个区域讨论:

区域1:x₁ + x₂ - 1 ≥ 0
此时罚函数为:P₁(x) = x₁² + x₂² + μ(x₁ + x₂ - 1)

区域2:x₁ + x₂ - 1 < 0
此时罚函数为:P₂(x) = x₁² + x₂² - μ(x₁ + x₂ - 1)

  1. 分别求解两个区域的无约束极小值

在区域1中:
∂P₁/∂x₁ = 2x₁ + μ = 0 ⇒ x₁ = -μ/2
∂P₁/∂x₂ = 2x₂ + μ = 0 ⇒ x₂ = -μ/2
代入约束条件检验:-μ/2 - μ/2 - 1 = -μ - 1 < 0(因为μ>0)
这与区域1的假设x₁+x₂-1≥0矛盾,所以区域1无解。

在区域2中:
∂P₂/∂x₁ = 2x₁ - μ = 0 ⇒ x₁ = μ/2
∂P₂/∂x₂ = 2x₂ - μ = 0 ⇒ x₂ = μ/2
代入约束条件检验:μ/2 + μ/2 - 1 = μ - 1
当μ ≥ 1时,满足区域2假设;当μ < 1时,不满足区域2假设。

  1. 边界点分析
    在边界x₁+x₂-1=0上,我们需要单独考虑。将约束代入目标函数:
    x₂ = 1 - x₁
    f(x) = x₁² + (1-x₁)² = 2x₁² - 2x₁ + 1
    df/dx₁ = 4x₁ - 2 = 0 ⇒ x₁ = 0.5, x₂ = 0.5
    此时f(x) = 0.5

  2. 结果分析
    当μ ≥ 1时,罚函数在区域2的极小点为(μ/2, μ/2),函数值为P = μ²/2 - μ(μ-1) = -μ²/2 + μ
    当μ → +∞时,该点趋近于边界,但函数值趋近于-∞,这不是我们期望的结果。

  3. 修正分析
    重新检查区域2的极值点:当μ ≥ 1时,点(μ/2, μ/2)不在区域2内(因为μ-1≥0,不满足x₁+x₂-1<0),所以区域2内无驻点。

  4. 正确解法
    由于两个区域内部都无极小值点,极小值必然出现在边界x₁+x₂=1上。用拉格朗日乘子法求解原问题:
    L(x,λ) = x₁² + x₂² + λ(x₁+x₂-1)
    ∂L/∂x₁ = 2x₁ + λ = 0
    ∂L/∂x₂ = 2x₂ + λ = 0
    x₁+x₂ = 1
    解得:x₁ = x₂ = 0.5, λ = -1

对于精确罚函数法,当μ > |λ| = 1时,罚函数的最小点就是原问题的最优解(0.5, 0.5)。

  1. 验证
    当μ > 1时,精确罚函数在(0.5, 0.5)处取得最小值0.5,这正是原问题的最优解。
非线性规划中的精确罚函数法基础题 题目描述: 考虑非线性规划问题: minimize f(x) = x₁² + x₂² subject to g(x) = x₁ + x₂ - 1 = 0 使用精确罚函数法求解该问题,其中罚函数形式为 P(x) = f(x) + μ|g(x)|,μ为罚参数。 解题过程: 问题分析 我们有一个简单的二次目标函数和线性等式约束。精确罚函数法的特点是当罚参数μ足够大时,罚函数的最优解就是原约束问题的最优解。 构造精确罚函数 精确罚函数为:P(x) = x₁² + x₂² + μ|x₁ + x₂ - 1| 分区域讨论 由于含有绝对值项,我们需要分两个区域讨论: 区域1:x₁ + x₂ - 1 ≥ 0 此时罚函数为:P₁(x) = x₁² + x₂² + μ(x₁ + x₂ - 1) 区域2:x₁ + x₂ - 1 < 0 此时罚函数为:P₂(x) = x₁² + x₂² - μ(x₁ + x₂ - 1) 分别求解两个区域的无约束极小值 在区域1中: ∂P₁/∂x₁ = 2x₁ + μ = 0 ⇒ x₁ = -μ/2 ∂P₁/∂x₂ = 2x₂ + μ = 0 ⇒ x₂ = -μ/2 代入约束条件检验:-μ/2 - μ/2 - 1 = -μ - 1 < 0(因为μ>0) 这与区域1的假设x₁+x₂-1≥0矛盾,所以区域1无解。 在区域2中: ∂P₂/∂x₁ = 2x₁ - μ = 0 ⇒ x₁ = μ/2 ∂P₂/∂x₂ = 2x₂ - μ = 0 ⇒ x₂ = μ/2 代入约束条件检验:μ/2 + μ/2 - 1 = μ - 1 当μ ≥ 1时,满足区域2假设;当μ < 1时,不满足区域2假设。 边界点分析 在边界x₁+x₂-1=0上,我们需要单独考虑。将约束代入目标函数: x₂ = 1 - x₁ f(x) = x₁² + (1-x₁)² = 2x₁² - 2x₁ + 1 df/dx₁ = 4x₁ - 2 = 0 ⇒ x₁ = 0.5, x₂ = 0.5 此时f(x) = 0.5 结果分析 当μ ≥ 1时,罚函数在区域2的极小点为(μ/2, μ/2),函数值为P = μ²/2 - μ(μ-1) = -μ²/2 + μ 当μ → +∞时,该点趋近于边界,但函数值趋近于-∞,这不是我们期望的结果。 修正分析 重新检查区域2的极值点:当μ ≥ 1时,点(μ/2, μ/2)不在区域2内(因为μ-1≥0,不满足x₁+x₂-1 <0),所以区域2内无驻点。 正确解法 由于两个区域内部都无极小值点,极小值必然出现在边界x₁+x₂=1上。用拉格朗日乘子法求解原问题: L(x,λ) = x₁² + x₂² + λ(x₁+x₂-1) ∂L/∂x₁ = 2x₁ + λ = 0 ∂L/∂x₂ = 2x₂ + λ = 0 x₁+x₂ = 1 解得:x₁ = x₂ = 0.5, λ = -1 对于精确罚函数法,当μ > |λ| = 1时,罚函数的最小点就是原问题的最优解(0.5, 0.5)。 验证 当μ > 1时,精确罚函数在(0.5, 0.5)处取得最小值0.5,这正是原问题的最优解。