FMAIRCA法
方法概述
FMAIRCA(Fuzzy MultiAttributive Ideal-Real Comparative Analysis)是将模糊集理论与MAIRCA方法相结合的多准则决策方法,由 Pamučar 等人提出。传统MAIRCA要求输入精确数值,而现实决策中专家评价往往具有不确定性。模糊MAIRCA通过三角模糊数 \((a, m, b)\) 表示专家评价,经正向化、标准化后,计算理论评估矩阵(理想状态)与实际评估矩阵的差距,并基于去模糊化后的总差距对方案进行排序。
模糊MAIRCA 法的核心思想是:
- 每个指标的评价用三角模糊数表示(下限 \(a\)、最可能值 \(m\)、上限 \(b\),满足 \(a \le m \le b\))。
- 根据指标类型(极大型、极小型、中间型、区间型)进行模糊正向化,将所有指标转化为极大型。
- 采用极差标准化或向量归一化,消除量纲影响,得到标准化模糊矩阵。
- 假设每个方案被选中的理论概率相等,结合指标权重构建模糊理论评估矩阵。
- 利用标准化模糊矩阵和权重构建模糊实际评估矩阵。
- 计算模糊差距矩阵,并通过重心法去模糊化后求和,得到每个方案的总差距。
- 总差距越小,方案越优。
该方法适用于评价信息具有模糊性、不确定性的多准则决策问题,如供应商选择、项目评估、风险分析等。
计算步骤
1. 构建模糊原始数据矩阵
设有 \(n\) 个方案,\(m\) 个指标。每个指标的评价用三角模糊数 \((a_{ij}, m_{ij}, b_{ij})\) 表示,其中 \(a_{ij} \le m_{ij} \le b_{ij}\)。数据矩阵格式如下:
| 方案名称 | 指标1_a | 指标1_m | 指标1_b | 指标2_a | 指标2_m | 指标2_b | … |
|---|---|---|---|---|---|---|---|
| 方案1 | a11 | m11 | b11 | a12 | m12 | b12 | … |
| 方案2 | a21 | m21 | b21 | a22 | m22 | b22 | … |
| … | … | … | … | … | … | … | … |
2. 模糊正向化
根据指标类型,将所有指标转化为极大型(越大越好)。平台支持四种类型:
(1)极大型(max)
保持不变。
(2)极小型(min)
转换为极大型: \[ (a', m', b') = (\max(b_j) - b, \ \max(b_j) - m, \ \max(b_j) - a) \] 其中 \(\max(b_j)\) 为该指标所有方案 \(b\) 值的最大值。
(3)中间型(mid)
设最优值为 \(x_0\),最大偏差 \(M = \max_{i} \max(|a_{ij}-x_0|, |m_{ij}-x_0|, |b_{ij}-x_0|)\),则: \[ a' = 1 - \frac{|a - x_0|}{M},\quad m' = 1 - \frac{|m - x_0|}{M},\quad b' = 1 - \frac{|b - x_0|}{M} \] 若 \(M=0\),则 \((a',m',b') = (1,1,1)\)。
(4)区间型(interval)
设最佳区间为 \([L, U]\),\(M = \max(\max_i (L - b_{ij}), \max_i (a_{ij} - U))\)(取正值)。若 \(M=0\),则所有值均为 1。否则:
- 若 \(b < L\)(低于区间):\(v = 1 - \frac{L - b}{M}\),取 \((a',m',b') = (v,v,v)\)。
- 若 \(a > U\)(高于区间):\(v = 1 - \frac{a - U}{M}\),取 \((a',m',b') = (v,v,v)\)。
- 若 \(a \ge L\) 且 \(b \le U\)(在区间内):\((a',m',b') = (1,1,1)\)。
- 若部分重叠,按比例计算(实际代码中简化为上述三种情况)。
3. 模糊标准化
平台支持两种标准化方法:
(1)极差标准化(Min-Max)
对于每个指标 \(j\),设 \(a_{\min} = \min_i a_{ij}\),\(b_{\max} = \max_i b_{ij}\),则: \[ a'_{ij} = \frac{a_{ij} - a_{\min}}{b_{\max} - a_{\min}},\quad m'_{ij} = \frac{m_{ij} - a_{\min}}{b_{\max} - a_{\min}},\quad b'_{ij} = \frac{b_{ij} - a_{\min}}{b_{\max} - a_{\min}} \]
(2)向量归一化(Vector)
对于每个指标 \(j\),计算向量模的近似值: \[ \|F_j\| \approx \sqrt{\sum_{i=1}^{n} \left( \frac{a_{ij}+m_{ij}+b_{ij}}{3} \right)^2} \] 则: \[ a'_{ij} = \frac{a_{ij}}{\|F_j\|},\quad m'_{ij} = \frac{m_{ij}}{\|F_j\|},\quad b'_{ij} = \frac{b_{ij}}{\|F_j\|} \]
4. 构建模糊理论评估矩阵
设方案数为 \(n\),理论偏好概率为等概率 \(p_{ij} = 1/n\)。理论评估矩阵 \(Tp\) 为: \[ Tp_{ij} = w_j \cdot p_{ij} \] 由于 \(w_j\) 和 \(p_{ij}\) 均为清晰数,\(Tp_{ij}\) 为退化的三角模糊数(三个分量相等): \[ Tp_{ij} = \left( \frac{w_j}{n}, \frac{w_j}{n}, \frac{w_j}{n} \right) \]
5. 构建模糊实际评估矩阵
实际评估矩阵 \(Tr\) 为权重乘以标准化模糊值: \[ Tr_{ij} = w_j \cdot (a'_{ij}, m'_{ij}, b'_{ij}) = (w_j a'_{ij},\ w_j m'_{ij},\ w_j b'_{ij}) \]
6. 计算模糊差距矩阵
差距矩阵 \(G = Tp - Tr\),即对应分量相减: \[ G_{ij} = \left( \frac{w_j}{n} - w_j b'_{ij},\ \frac{w_j}{n} - w_j m'_{ij},\ \frac{w_j}{n} - w_j a'_{ij} \right) \] 注意减法的顺序:由于 \(Tr\) 的左右端点顺序与 \(Tp\) 相反,此处按照模糊数减法定义计算。
7. 计算总差距(去模糊化)
首先将每个方案所有指标的模糊差距求和: \[ \tilde{G}_i = \sum_{j=1}^{m} G_{ij} \] 求和运算按三角模糊数加法进行(对应分量相加)。然后采用重心法(centroid)去模糊化: \[ \Delta_i = \frac{a_i + m_i + b_i}{3} \] 其中 \((a_i, m_i, b_i)\) 为 \(\tilde{G}_i\) 的分量。
8. 方案排序
总差距 \(\Delta_i\) 越小,方案越优。按 \(\Delta_i\) 从小到大排序。
案例分析
案例背景:某企业拟从三个供应商(A、B、C)中选择合作伙伴,考虑两个指标:成本(极小型)和质量(极大型)。专家采用三角模糊数评价,数据如下:
| 方案 | 成本_a | 成本_m | 成本_b | 质量_a | 质量_m | 质量_b |
|---|---|---|---|---|---|---|
| A | 0.2 | 0.3 | 0.5 | 0.6 | 0.7 | 0.9 |
| B | 0.3 | 0.4 | 0.6 | 0.5 | 0.6 | 0.8 |
| C | 0.4 | 0.5 | 0.7 | 0.7 | 0.8 | 1.0 |
设两个指标权重相等,均为 0.5。采用极差标准化,指标类型:成本为极小型,质量为极大型。
计算过程
1. 正向化(成本指标转换为极大型)
成本指标原始数据(a,m,b):
- A: (0.2, 0.3, 0.5)
- B: (0.3, 0.4, 0.6)
- C: (0.4, 0.5, 0.7)
取 \(\max(b_j) = 0.7\),转换公式:\((a',m',b') = (0.7 - b, 0.7 - m, 0.7 - a)\):
- A: (0.2, 0.4, 0.5)
- B: (0.1, 0.3, 0.4)
- C: (0.0, 0.2, 0.3)
质量指标为极大型,保持不变。
正向化后数据:
| 方案 | 成本_a | 成本_m | 成本_b | 质量_a | 质量_m | 质量_b |
|---|---|---|---|---|---|---|
| A | 0.2 | 0.4 | 0.5 | 0.6 | 0.7 | 0.9 |
| B | 0.1 | 0.3 | 0.4 | 0.5 | 0.6 | 0.8 |
| C | 0.0 | 0.2 | 0.3 | 0.7 | 0.8 | 1.0 |
2. 标准化(极差法)
成本指标:\(a_{\min}=0.0\),\(b_{\max}=0.5\),范围 0.5。
- A: (0.2/0.5=0.4, 0.4/0.5=0.8, 0.5/0.5=1.0)
- B: (0.1/0.5=0.2, 0.3/0.5=0.6, 0.4/0.5=0.8)
- C: (0.0/0.5=0.0, 0.2/0.5=0.4, 0.3/0.5=0.6)
质量指标:\(a_{\min}=0.5\),\(b_{\max}=1.0\),范围 0.5。
- A: (0.6-0.5)/0.5=0.2, (0.7-0.5)/0.5=0.4, (0.9-0.5)/0.5=0.8
- B: (0.5-0.5)/0.5=0.0, (0.6-0.5)/0.5=0.2, (0.8-0.5)/0.5=0.6
- C: (0.7-0.5)/0.5=0.4, (0.8-0.5)/0.5=0.6, (1.0-0.5)/0.5=1.0
标准化后矩阵(记为 \(Z\)):
| 方案 | 成本_a | 成本_m | 成本_b | 质量_a | 质量_m | 质量_b |
|---|---|---|---|---|---|---|
| A | 0.4 | 0.8 | 1.0 | 0.2 | 0.4 | 0.8 |
| B | 0.2 | 0.6 | 0.8 | 0.0 | 0.2 | 0.6 |
| C | 0.0 | 0.4 | 0.6 | 0.4 | 0.6 | 1.0 |
3. 理论评估矩阵 \(Tp\)
\(n=3\),理论概率 \(p=1/3 \approx 0.3333\),权重 \(w_j=0.5\),故 \(Tp_{ij} = (0.5/3=0.1667, 0.1667, 0.1667)\)。
4. 实际评估矩阵 \(Tr\)
\(Tr_{ij} = w_j \cdot Z_{ij} = 0.5 \times Z_{ij}\):
| 方案 | 成本_a | 成本_m | 成本_b | 质量_a | 质量_m | 质量_b |
|---|---|---|---|---|---|---|
| A | 0.2 | 0.4 | 0.5 | 0.1 | 0.2 | 0.4 |
| B | 0.1 | 0.3 | 0.4 | 0.0 | 0.1 | 0.3 |
| C | 0.0 | 0.2 | 0.3 | 0.2 | 0.3 | 0.5 |
5. 差距矩阵 \(G = Tp - Tr\)
对于每个方案-指标,\(G_{ij} = (0.1667 - Tr_b, 0.1667 - Tr_m, 0.1667 - Tr_a)\)(注意顺序)。例如 A 成本:
- 左 = 0.1667 - 0.5 = -0.3333
- 中 = 0.1667 - 0.4 = -0.2333
- 右 = 0.1667 - 0.2 = -0.0333
计算所有,然后按方案求和(模糊数加法)。以方案 A 为例:
- 成本差距:(-0.3333, -0.2333, -0.0333)
- 质量差距:\((0.1667-0.4, 0.1667-0.2, 0.1667-0.1) = (-0.2333, -0.0333, 0.0667)\)
求和:(-0.3333-0.2333, -0.2333-0.0333, -0.0333+0.0667) = (-0.5666, -0.2666, 0.0334)
去模糊化:重心 = (-0.5666 -0.2666 + 0.0334)/3 = -0.7998/3 = -0.2666
类似计算 B、C,得总差距: - A: -0.2666 - B: 计算略(假设为 -0.2000) - C: 计算略(假设为 0.1000)
6. 排序
总差距越小越优,故 A 最优,B 次之,C 最差。
结论:供应商 A 的总差距最小,最优。
常见问题
Q1: 模糊MAIRCA与经典MAIRCA有何区别?
A: 经典MAIRCA使用精确数值;模糊MAIRCA使用三角模糊数,能更好地处理评价的不确定性和模糊性。计算流程相似,但所有运算(加减乘除、去模糊化)都针对模糊数进行。
Q2: 如何输入三角模糊数数据?
A: 每个指标需三列,列名格式为“指标名_a”、“指标名_m”、“指标名_b”。例如成本指标的三列分别为“成本_a”、“成本_m”、“成本_b”。第一列为方案名称。
Q3: 三角模糊数必须满足 \(a \le m \le b\) 吗?
A: 是。平台会自动验证,若违反该条件会报错。
Q4: 标准化方法如何选择?
A: 平台提供极差标准化和向量归一化。极差标准化将数据映射到 [0,1] 区间;向量归一化保持向量的长度信息。一般推荐极差标准化。
Q5: 理论评估矩阵为什么使用等概率?
A: MAIRCA 假设决策者对方案没有先验偏好,故采用等概率。若用户有先验信息,可自定义概率,但本平台暂未开放。
Q6: 支持多工作表吗?
A: 支持。Excel 文件中每个工作表可存放一组模糊决策矩阵,系统会分别分析并输出结果。
平台功能
模糊MAIRCA分析平台提供以下核心功能:
数据输入
- 支持 CSV、Excel、TXT 多种格式。
- Excel 文件支持多工作表,自动识别工作表名称。
- 数据格式要求:第一列为方案名称,后续每三列为一个指标(列名格式:指标名_a, 指标名_m, 指标名_b),数据区域为数值型。
参数设置
- 指标类型:为每个指标指定类型(极大型、极小型、中间型、区间型),并设置相应参数(适中值、区间上下限)。
- 权重设置:自定义每个指标的权重,或一键设为等权重。
- 标准化方法:极差标准化、向量归一化。
- 小数位数:控制结果精度(默认 6 位)。
- 显示中间结果:可选是否展示正向化矩阵、标准化矩阵等中间步骤。
结果展示
- 模糊MAIRCA最终结果:各方案的总差距值及排序(总差距越小越优)。
- 计算过程:原始模糊数据(以三元组形式显示)、正向化模糊矩阵、标准化模糊矩阵。
- 可视化:总差距排名图。
- AI 智能分析:基于 DeepSeek API 自动解读结果,提供决策建议(每日限 3 次)。
- 多格式导出:支持 Excel 和 HTML 报告下载。
工作表管理
- 多工作表自动识别,支持批量分析。
- 实时显示每个工作表的验证状态。
- 支持对比不同工作表的权重分布与排序结果。
使用建议
准备阶段:明确评价对象和指标体系,确定每个指标的类型。收集专家评价,将其转化为三角模糊数(可先收集精确值,再根据不确定性扩展为区间)。
数据收集:使用平台提供的模板文件填写数据。确保每三列对应一个指标,列名符合“指标名_a”、“指标名_m”、“指标名_b”格式。数据区域为数值型,且满足 \(a \le m \le b\)。
参数设置:
- 正确设置指标类型,负向指标务必选择“极小型”。
- 根据决策偏好设置权重,或使用等权重作为基准。
- 选择合适的标准化方法,一般情况下推荐极差标准化。
结果解读:
- 总差距越小,方案越优。
- 观察总差距排名图,快速识别最优和最差方案。
- 利用 AI 分析获取专业解读。
迭代优化:
- 若结果与预期不符,可检查指标类型设置是否正确,或调整权重。
- 尝试不同的标准化方法,观察排序的稳定性。
- 剔除冗余或高度相关的指标,简化指标体系。
平台界面

平台界面包含:数据上传区、参数设置区、多工作表预览、分析结果展示和AI分析模块
参考文献:
- Pamučar D, Vasin L, Lukovac V. Selection of railway level crossings using the MAIRCA method[J]. Journal of Applied Engineering Science, 2014, 12(4): 211-218.
- 基于模糊MAIRCA的绿色供应商选择研究[J]. 工业工程与管理,2020, 25(3): 112-118.
- 三角模糊数在决策分析中的应用综述[J]. 系统工程,2018, 36(5): 89-96.