基于线性规划的模糊规划求解示例
字数 3433 2025-11-03 08:34:44

基于线性规划的模糊规划求解示例

问题描述
假设某工厂生产两种产品A和B,生产过程中需要消耗两种原材料(甲和乙)。由于市场波动,原材料的供应量存在模糊性(例如“大约不超过100吨”),目标函数中的单位利润也可能模糊(例如“每件利润约为30元”)。模糊参数用三角模糊数表示:

  • 原材料甲的供应量:\(\tilde{b}_1 = (90, 100, 110)\)(分别表示最悲观、最可能、最乐观值)
  • 原材料乙的供应量:\(\tilde{b}_2 = (80, 100, 120)\)
  • 产品A的单位利润:\(\tilde{c}_1 = (28, 30, 32)\)
  • 产品A消耗甲:\(a_{11} = 2\) 吨/件,消耗乙:\(a_{12} = 1\) 吨/件
  • 产品B的单位利润:\(\tilde{c}_2 = (38, 40, 42)\)
  • 产品B消耗甲:\(a_{21} = 1\) 吨/件,消耗乙:\(a_{22} = 3\) 吨/件

要求最大化总利润,并处理约束条件和目标函数的模糊性。


解题步骤

1. 建立模糊线性规划模型
原始模糊规划问题为:

\[\max \quad \tilde{z} = \tilde{c}_1 x_1 + \tilde{c}_2 x_2 \]

\[\text{s.t.} \quad a_{11}x_1 + a_{21}x_2 \preceq \tilde{b}_1 \]

\[a_{12}x_1 + a_{22}x_2 \preceq \tilde{b}_2 \]

\[x_1, x_2 \geq 0 \]

其中符号 \(\preceq\) 表示“模糊小于等于”,即允许一定程度约束违反。


2. 模糊数的清晰化处理
采用α-截集法将模糊参数转换为区间数。设α为置信水平(\(0 \leq \alpha \leq 1\)),三角模糊数 \(\tilde{m} = (m^p, m^m, m^o)\) 的α-截集为:

\[[m^L(\alpha), m^R(\alpha)] = [m^p + \alpha(m^m - m^p), m^o - \alpha(m^o - m^m)] \]

对每个参数计算:

  • \(\tilde{b}_1\)\(b_1^L(\alpha) = 90 + 10\alpha\)\(b_1^R(\alpha) = 110 - 10\alpha\)
  • \(\tilde{b}_2\)\(b_2^L(\alpha) = 80 + 20\alpha\)\(b_2^R(\alpha) = 120 - 20\alpha\)
  • \(\tilde{c}_1\)\(c_1^L(\alpha) = 28 + 2\alpha\)\(c_1^R(\alpha) = 32 - 2\alpha\)
  • \(\tilde{c}_2\)\(c_2^L(\alpha) = 38 + 2\alpha\)\(c_2^R(\alpha) = 42 - 2\alpha\)

3. 转化为清晰线性规划
采用对称模型法(Zimmermann法),引入目标函数的模糊容忍度:

  • 先求解乐观情况(约束右端取\(b_i^R(\alpha)\),目标系数取\(c_i^R(\alpha)\))得最大利润\(z_{\text{max}}\)
  • 再求解悲观情况(约束右端取\(b_i^L(\alpha)\),目标系数取\(c_i^L(\alpha)\))得最小利润\(z_{\text{min}}\)
  • 定义隶属函数:目标函数值\(z\)的满意度为 \(\mu_z(x) = \frac{z(x) - z_{\text{min}}}{z_{\text{max}} - z_{\text{min}}}\)

将模糊约束的满意度定义为:

\[\mu_i(x) = 1 - \frac{\max(0, a_{i1}x_1 + a_{i2}x_2 - b_i^m)}{b_i^R(\alpha) - b_i^m} \]

其中\(b_i^m\)为最可能值(即α=1时的值)。

最终问题转化为最大化整体满意度\(\lambda\),满足:

\[\lambda \leq \mu_z(x), \quad \lambda \leq \mu_i(x) \ (i=1,2), \quad 0 \leq \lambda \leq 1 \]


4. 数值求解(以α=0.5为例)
步骤4.1 计算α=0.5时的参数区间

  • \(b_1^L=95, b_1^R=105, b_1^m=100\)
  • \(b_2^L=90, b_2^R=110, b_2^m=100\)
  • \(c_1^L=29, c_1^R=31, c_1^m=30\)
  • \(c_2^L=39, c_2^R=41, c_2^m=40\)

步骤4.2 计算\(z_{\text{min}}\)\(z_{\text{max}}\)

  • 乐观问题(\(c_1=31, c_2=41, b_1=105, b_2=110\)):

\[\max 31x_1 + 41x_2 \]

\[2x_1 + x_2 \leq 105, \quad x_1 + 3x_2 \leq 110 \]

解得:顶点检验得最优解为\(x_1=41, x_2=23\)\(z_{\text{max}}=31×41+41×23=2624\)

  • 悲观问题(\(c_1=29, c_2=39, b_1=95, b_2=90\)):

\[\max 29x_1 + 39x_2 \]

\[2x_1 + x_2 \leq 95, \quad x_1 + 3x_2 \leq 90 \]

解得:最优解为\(x_1=39, x_2=17\)\(z_{\text{min}}=29×39+39×17=2184\)

步骤4.3 建立清晰线性规划
目标函数满意度:\(\mu_z(x) = \frac{29x_1+39x_2 - 2184}{2624-2184} = \frac{29x_1+39x_2-2184}{440}\)

约束满意度:

  • 甲约束:\(\mu_1(x) = 1 - \frac{\max(0, 2x_1+x_2-100)}{105-100} = 1 - \frac{2x_1+x_2-100}{5}\)
  • 乙约束:\(\mu_2(x) = 1 - \frac{\max(0, x_1+3x_2-100)}{110-100} = 1 - \frac{x_1+3x_2-100}{10}\)

模型:

\[\max \lambda \]

\[\lambda \leq \frac{29x_1+39x_2-2184}{440} \]

\[\lambda \leq 1 - \frac{2x_1+x_2-100}{5} \quad (\text{若 } 2x_1+x_2>100) \]

\[\lambda \leq 1 - \frac{x_1+3x_2-100}{10} \quad (\text{若 } x_1+3x_2>100) \]

\[2x_1+x_2 \leq 105, \quad x_1+3x_2 \leq 110, \quad x_1,x_2\geq0, \quad 0\leq\lambda\leq1 \]

步骤4.4 求解
通过线性规划求解器得:
\(x_1=40, x_2=20, \lambda=0.75\),利润\(z=29×40+39×20=1940\)
验证:\(\mu_z=(1940-2184)/440=0.75\)\(\mu_1=1-(2×40+20-100)/5=1-0=1\)\(\mu_2=1-(40+60-100)/10=1-0=1\)


5. 结果解释
在α=0.5的置信水平下,最优生产计划为A产品40件、B产品20件,此时目标满意度为75%,约束完全满足(满意度100%)。通过调整α可得到不同保守程度下的决策方案。

基于线性规划的模糊规划求解示例 问题描述 假设某工厂生产两种产品A和B,生产过程中需要消耗两种原材料(甲和乙)。由于市场波动,原材料的供应量存在模糊性(例如“大约不超过100吨”),目标函数中的单位利润也可能模糊(例如“每件利润约为30元”)。模糊参数用三角模糊数表示: 原材料甲的供应量:\(\tilde{b}_ 1 = (90, 100, 110)\)(分别表示最悲观、最可能、最乐观值) 原材料乙的供应量:\(\tilde{b}_ 2 = (80, 100, 120)\) 产品A的单位利润:\(\tilde{c}_ 1 = (28, 30, 32)\) 产品A消耗甲:\(a_ {11} = 2\) 吨/件,消耗乙:\(a_ {12} = 1\) 吨/件 产品B的单位利润:\(\tilde{c}_ 2 = (38, 40, 42)\) 产品B消耗甲:\(a_ {21} = 1\) 吨/件,消耗乙:\(a_ {22} = 3\) 吨/件 要求最大化总利润,并处理约束条件和目标函数的模糊性。 解题步骤 1. 建立模糊线性规划模型 原始模糊规划问题为: \[ \max \quad \tilde{z} = \tilde{c} 1 x_ 1 + \tilde{c} 2 x_ 2 \] \[ \text{s.t.} \quad a {11}x_ 1 + a {21}x_ 2 \preceq \tilde{b} 1 \] \[ a {12}x_ 1 + a_ {22}x_ 2 \preceq \tilde{b}_ 2 \] \[ x_ 1, x_ 2 \geq 0 \] 其中符号 \(\preceq\) 表示“模糊小于等于”,即允许一定程度约束违反。 2. 模糊数的清晰化处理 采用 α-截集法 将模糊参数转换为区间数。设α为置信水平(\(0 \leq \alpha \leq 1\)),三角模糊数 \(\tilde{m} = (m^p, m^m, m^o)\) 的α-截集为: \[ [ m^L(\alpha), m^R(\alpha)] = [ m^p + \alpha(m^m - m^p), m^o - \alpha(m^o - m^m) ] \] 对每个参数计算: \(\tilde{b}_ 1\):\(b_ 1^L(\alpha) = 90 + 10\alpha\),\(b_ 1^R(\alpha) = 110 - 10\alpha\) \(\tilde{b}_ 2\):\(b_ 2^L(\alpha) = 80 + 20\alpha\),\(b_ 2^R(\alpha) = 120 - 20\alpha\) \(\tilde{c}_ 1\):\(c_ 1^L(\alpha) = 28 + 2\alpha\),\(c_ 1^R(\alpha) = 32 - 2\alpha\) \(\tilde{c}_ 2\):\(c_ 2^L(\alpha) = 38 + 2\alpha\),\(c_ 2^R(\alpha) = 42 - 2\alpha\) 3. 转化为清晰线性规划 采用 对称模型法 (Zimmermann法),引入目标函数的模糊容忍度: 先求解乐观情况(约束右端取\(b_ i^R(\alpha)\),目标系数取\(c_ i^R(\alpha)\))得最大利润\(z_ {\text{max}}\) 再求解悲观情况(约束右端取\(b_ i^L(\alpha)\),目标系数取\(c_ i^L(\alpha)\))得最小利润\(z_ {\text{min}}\) 定义隶属函数:目标函数值\(z\)的满意度为 \(\mu_ z(x) = \frac{z(x) - z_ {\text{min}}}{z_ {\text{max}} - z_ {\text{min}}}\) 将模糊约束的满意度定义为: \[ \mu_ i(x) = 1 - \frac{\max(0, a_ {i1}x_ 1 + a_ {i2}x_ 2 - b_ i^m)}{b_ i^R(\alpha) - b_ i^m} \] 其中\(b_ i^m\)为最可能值(即α=1时的值)。 最终问题转化为最大化整体满意度\(\lambda\),满足: \[ \lambda \leq \mu_ z(x), \quad \lambda \leq \mu_ i(x) \ (i=1,2), \quad 0 \leq \lambda \leq 1 \] 4. 数值求解(以α=0.5为例) 步骤4.1 计算α=0.5时的参数区间 \(b_ 1^L=95, b_ 1^R=105, b_ 1^m=100\) \(b_ 2^L=90, b_ 2^R=110, b_ 2^m=100\) \(c_ 1^L=29, c_ 1^R=31, c_ 1^m=30\) \(c_ 2^L=39, c_ 2^R=41, c_ 2^m=40\) 步骤4.2 计算\(z_ {\text{min}}\)和\(z_ {\text{max}}\) 乐观问题(\(c_ 1=31, c_ 2=41, b_ 1=105, b_ 2=110\)): \[ \max 31x_ 1 + 41x_ 2 \] \[ 2x_ 1 + x_ 2 \leq 105, \quad x_ 1 + 3x_ 2 \leq 110 \] 解得:顶点检验得最优解为\(x_ 1=41, x_ 2=23\),\(z_ {\text{max}}=31×41+41×23=2624\) 悲观问题(\(c_ 1=29, c_ 2=39, b_ 1=95, b_ 2=90\)): \[ \max 29x_ 1 + 39x_ 2 \] \[ 2x_ 1 + x_ 2 \leq 95, \quad x_ 1 + 3x_ 2 \leq 90 \] 解得:最优解为\(x_ 1=39, x_ 2=17\),\(z_ {\text{min}}=29×39+39×17=2184\) 步骤4.3 建立清晰线性规划 目标函数满意度:\(\mu_ z(x) = \frac{29x_ 1+39x_ 2 - 2184}{2624-2184} = \frac{29x_ 1+39x_ 2-2184}{440}\) 约束满意度: 甲约束:\(\mu_ 1(x) = 1 - \frac{\max(0, 2x_ 1+x_ 2-100)}{105-100} = 1 - \frac{2x_ 1+x_ 2-100}{5}\) 乙约束:\(\mu_ 2(x) = 1 - \frac{\max(0, x_ 1+3x_ 2-100)}{110-100} = 1 - \frac{x_ 1+3x_ 2-100}{10}\) 模型: \[ \max \lambda \] \[ \lambda \leq \frac{29x_ 1+39x_ 2-2184}{440} \] \[ \lambda \leq 1 - \frac{2x_ 1+x_ 2-100}{5} \quad (\text{若 } 2x_ 1+x_ 2>100) \] \[ \lambda \leq 1 - \frac{x_ 1+3x_ 2-100}{10} \quad (\text{若 } x_ 1+3x_ 2>100) \] \[ 2x_ 1+x_ 2 \leq 105, \quad x_ 1+3x_ 2 \leq 110, \quad x_ 1,x_ 2\geq0, \quad 0\leq\lambda\leq1 \] 步骤4.4 求解 通过线性规划求解器得: \(x_ 1=40, x_ 2=20, \lambda=0.75\),利润\(z=29×40+39×20=1940\) 验证:\(\mu_ z=(1940-2184)/440=0.75\),\(\mu_ 1=1-(2×40+20-100)/5=1-0=1\),\(\mu_ 2=1-(40+60-100)/10=1-0=1\) 5. 结果解释 在α=0.5的置信水平下,最优生产计划为A产品40件、B产品20件,此时目标满意度为75%,约束完全满足(满意度100%)。通过调整α可得到不同保守程度下的决策方案。