FEATURED · 精选文章

TOPSIS多指标决策法:从原理到Python实战,解决复杂选择难题

发布时间 / 2026/8/21 14:42:33
来源 / 创域科博编辑部
栏目 / 资讯中心
TOPSIS多指标决策法:从原理到Python实战,解决复杂选择难题 1. 从“选谁最好”到“谁离理想最近”Topsis法的核心思想我们做决策时常常会遇到一个头疼的问题面对一堆各有优劣的选项到底该选哪个比如公司要采购一批设备有A、B、C三家供应商有的价格便宜但性能一般有的性能顶尖但售后堪忧有的各方面均衡但品牌知名度低。怎么比拍脑袋加权平均很多时候加权平均算出来的“总分”并不能真实反映选项之间的优劣关系因为它掩盖了选项在各个维度上的极端表现。这时Topsis法Technique for Order Preference by Similarity to Ideal Solution优劣解距离法就派上用场了。我第一次接触这个方法是在一个供应链优化的项目里当时我们需要从十几个潜在的物流服务商中筛选出最优的3家。单纯看价格或者时效排名都不科学必须综合考虑成本、时效、稳定性、信息化水平等七八个指标。Topsis就像一把尺子它不直接给选项打分而是先描绘出一个“梦中情郎”正理想解和一个“避之不及”负理想解然后衡量每个现实中的选项离“梦中情郎”有多近离“避之不及”有多远。最后谁离理想最近、离糟糕最远谁就是综合来看最好的那个。这个方法的核心魅力在于其直观的几何意义和清晰的决策逻辑。它不要求你的数据必须符合某种特定的统计分布对指标的数量也没有苛刻限制只要你能把各个选项在不同指标上的表现量化出来它就能给你一个相对优劣的排序。正因为这种灵活性和实用性Topsis法在工程技术、经济管理、医疗决策等众多需要多指标综合评价的领域被广泛应用。接下来我们就一步步拆解看这把“尺子”到底是怎么工作的。2. Topsis法的四步操作流程从原始数据到排序结果理解思想后最关键的是落地。Topsis法的实施可以清晰地分为四个步骤数据预处理、确定权重、计算距离、得出排序。每一步都有需要注意的细节和容易踩坑的地方。2.1 第一步数据预处理——统一“度量衡”我们收集到的原始数据往往五花八门。有的指标是效益型越大越好如利润率、满意度有的是成本型越小越好如故障率、成本有的数值范围差异巨大如销售额以亿计客户投诉数以个计。直接把这些数据扔进公式计算距离相当于用米尺量身高用公斤秤称长度结果毫无意义。因此第一步必须进行数据的规范化归一化消除量纲和类型的影响。最常用也是Topsis原始论文推荐的方法是向量归一化。对于决策矩阵中的每一个元素 \( x_{ij} \)表示第i个方案在第j个指标上的值其规范化公式为\[ z_{ij} \frac{x_{ij}}{\sqrt{\sum_{i1}^{m} x_{ij}^2}} \]其中\( m \) 是方案的数量。这个公式的本质是将每个指标下的所有数据都投影到一个“单位球”上每个数据变成了一个方向向量其长度为1。这样做的好处是严格消除了量纲并且保持了数据间的相对大小关系。注意这里有一个关键点公式本身没有区分效益型和成本型。它只是对原始数值进行缩放。成本型指标的“越小越好”特性需要在后续构造理想解时通过定义“正理想解”和“负理想解”来体现而不是在归一化阶段通过取倒数等方式强行转换。这是很多初学者容易混淆的地方。保持归一化方法的一致性能让后续计算逻辑更清晰。2.2 第二步指标权重确定——给不同声音“分配话筒”指标权重决定了每个评价维度在最终决策中的话语权大小。权重分配是否合理直接决定了评价结果的导向。Topsis法本身不产生权重它需要你从外部输入一套权重向量 \( w (w_1, w_2, ..., w_n) \)其中 \( \sum_{j1}^{n} w_j 1 \)。确定权重的方法主要有两大类主观赋权法如德尔菲法专家打分、层次分析法AHP。这类方法依赖决策者或领域专家的经验和判断能反映决策者的偏好但主观性强不同专家可能给出差异较大的结果。客观赋权法如熵权法、CRITIC法、离差最大化法。这类方法完全基于数据本身的离散程度或信息量来计算权重。指标数据差异越大所包含的信息越多其权重也越大。在实际项目中我通常采用“主客观结合”的方式。例如先用熵权法计算出一套客观权重再邀请项目相关方业务、技术、财务根据战略重要性对客观权重进行微调形成一个兼顾数据事实与业务诉求的最终权重。切忌拍脑袋定权重尤其是当某些指标存在强相关性时随意赋权可能导致评价结果严重失真。2.3 第三步计算加权规范化矩阵与理想解得到规范化矩阵 \( Z \) 和权重向量 \( w \) 后我们需要构造加权规范化矩阵 \( V \) \[ v_{ij} w_j \times z_{ij} \] 这个矩阵 \( V \) 才是我们真正用来衡量距离的“坐标系”它既消除了量纲又体现了各指标的重要性差异。接下来定义正理想解 \( A^ \) 和负理想解 \( A^- \)。注意这里的“理想”是基于加权规范化矩阵 \( V \) 来定义的正理想解 \( A^ \)由每个指标在所有方案中最好的值构成。对于效益型指标取最大值对于成本型指标取最小值。 \[ A^ (v_1^, v_2^, ..., v_n^) (\max v_{i1}, \max v_{i2}, ..., \max v_{in}) \quad \text{(效益型)} \] \[ A^ (v_1^, v_2^, ..., v_n^) (\min v_{i1}, \min v_{i2}, ..., \min v_{in}) \quad \text{(成本型)} \]负理想解 \( A^- \)由每个指标在所有方案中最差的值构成。对于效益型指标取最小值对于成本型指标取最大值。 \[ A^- (v_1^-, v_2^-, ..., v_n^-) (\min v_{i1}, \min v_{i2}, ..., \min v_{in}) \quad \text{(效益型)} \] \[ A^- (v_1^-, v_2^-, ..., v_n^-) (\max v_{i1}, \max v_{i2}, ..., \max v_{in}) \quad \text{(成本型)} \]这里有一个极其重要的实操细节务必在加权规范化矩阵 \( V \) 的基础上寻找正负理想解而不是在原始数据或仅规范化后的数据上找。因为权重改变了指标的尺度在加权后的空间里定义“最优”和“最劣”才是符合逻辑的。我见过不少代码实现和教程忽略了这一步直接对 \( Z \) 矩阵找理想解这相当于默认所有指标权重相等当权重差异较大时会得到错误的结果。2.4 第四步计算贴近度与排序现在每个方案 \( i \) 都可以看作n维空间中的一个点 \( V_i (v_{i1}, v_{i2}, ..., v_{in}) \)。我们计算它到正理想解 \( A^ \) 和负理想解 \( A^- \) 的欧氏距离 \[ D_i^ \sqrt{\sum_{j1}^{n} (v_{ij} - v_j^)^2} \] \[ D_i^- \sqrt{\sum_{j1}^{n} (v_{ij} - v_j^-)^2} \]\( D_i^ \) 越小说明该方案离理想状态越近\( D_i^- \) 越大说明该方案离最差状态越远。为了综合这两个距离Topsis法定义了“相对贴近度” \( C_i \) \[ C_i \frac{D_i^-}{D_i^ D_i^-} \]\( C_i \) 的取值范围在0到1之间。\( C_i 1 \) 表示该方案就是正理想解完美\( C_i 0 \) 表示该方案就是负理想解最差。最终我们根据 \( C_i \) 值从大到小对所有方案进行排序\( C_i \) 值越大方案综合表现越优。3. 权重确定的核心方法熵权法原理与实战在Topsis的诸多环节中权重的确定往往是争议最大、也最影响结果的一环。上面提到了熵权法作为一种客观赋权法因其逻辑清晰、完全基于数据在实践中被广泛使用。这里我们深入剖析一下它的原理和实现细节。熵源于热力学在信息论中由香农引入用来度量系统的无序程度或信息的不确定性。在评价体系中我们可以把一个指标看作一个信息源。如果某个指标下所有方案的数据值都差不多离散程度小那么这个指标提供的信息量就少在区分方案优劣上的作用就小理应赋予较低的权重反之如果某个指标的数据差异很大离散程度大说明这个指标能有效地区分不同方案提供的信息量大应赋予较高的权重。熵权法正是基于这一思想。计算步骤如下数据归一化针对熵权法的特殊处理由于熵的计算涉及对数需要避免零值和负值。通常采用比重变换法。对于效益型指标 \[ p_{ij} \frac{x_{ij} - \min(x_j)}{\max(x_j) - \min(x_j)} \] 对于成本型指标 \[ p_{ij} \frac{\max(x_j) - x_{ij}}{\max(x_j) - \min(x_j)} \] 这里得到的是 \( p_{ij} \in [0, 1] \)。然后进行平移处理避免 \( p_{ij}0 \) 导致对数无意义 \[ p_{ij} p_{ij} 0.0001 \quad \text{(或一个极小的正数)} \] 最后计算第j个指标下第i个方案的比重 \[ r_{ij} \frac{p_{ij}}{\sum_{i1}^{m} p_{ij}} \] 这样保证了 \( \sum_{i1}^{m} r_{ij} 1 \)。计算第j项指标的熵值 \( e_j \) \[ e_j -k \sum_{i1}^{m} r_{ij} \ln(r_{ij}) \] 其中\( k 1 / \ln(m) 0 \)确保 \( e_j \in [0, 1] \)。计算差异系数 \( g_j \) \[ g_j 1 - e_j \] \( g_j \) 越大表示指标j提供的信息量越大越重要。确定权重 \( w_j \) \[ w_j \frac{g_j}{\sum_{j1}^{n} g_j} \]实战心得与避坑指南数据平移量加一个极小的数如1e-6即可加得太大如0.1会扭曲原始数据的分布影响权重计算的准确性。指标相关性熵权法的一个潜在问题是它可能给多个高度相关的指标都赋予高权重。例如评价员工绩效时“代码行数”和“提交次数”可能高度相关它们都会因为离散度大而获得高权重这相当于变相放大了“产出数量”这个维度的作用。因此在使用熵权法前最好先做一下指标间的相关性分析如皮尔逊相关系数如果存在强相关如相关系数0.8应考虑合并或剔除其中一个指标。结合主观调整纯客观的熵权法有时会得出与业务常识相悖的权重。比如在供应商评价中“合规性”指标可能所有供应商都达标数据离散度极小熵权法会给出接近0的权重。但从风险控制角度看这个指标一票否决极其重要。这时就需要决策者根据经验对熵权法得出的权重进行修正通常可以采用加权平均的方式结合主观权重。4. 一个完整的数值算例手把手演算理论说得再多不如一个例子来得实在。假设我们要评价三家供应商S1, S2, S3考虑四个指标价格成本型越低越好、交货准时率效益型越高越好、质量合格率效益型越高越好、售后服务评分效益型1-10分。原始数据如下表供应商价格万元准时率%合格率%服务评分S110095988S212099959S38090997步骤1构建决策矩阵并归一化决策矩阵 \( X \) \[ X \begin{bmatrix} 100 95 98 8 \\ 120 99 95 9 \\ 80 90 99 7 \end{bmatrix} \] 使用向量归一化公式计算。以第一列价格为例分母 sqrt(100^2 120^2 80^2) sqrt(10000144006400)sqrt(30800)175.5。所以S1的归一化值 z11 100 / 175.5 ≈ 0.570。同理计算所有值得到规范化矩阵 \( Z \) \[ Z \approx \begin{bmatrix} 0.570 0.548 0.577 0.555 \\ 0.684 0.571 0.559 0.625 \\ 0.456 0.519 0.583 0.486 \end{bmatrix} \]步骤2确定权重本例使用熵权法过程略假设已计算出权重假设通过熵权法计算得到权重向量为\( w (0.3, 0.2, 0.3, 0.2) \)。价格和合格率被认为更重要。步骤3构造加权规范化矩阵 \( V \)\( V Z \times diag(w) \)即每列乘以对应权重。 \[ V \approx \begin{bmatrix} 0.171 0.110 0.173 0.111 \\ 0.205 0.114 0.168 0.125 \\ 0.137 0.104 0.175 0.097 \end{bmatrix} \]步骤4确定正负理想解价格是成本型取最小值min(0.171, 0.205, 0.137) 0.137准时率是效益型取最大值max(0.110, 0.114, 0.104) 0.114合格率是效益型取最大值max(0.173, 0.168, 0.175) 0.175服务评分是效益型取最大值max(0.111, 0.125, 0.097) 0.125 因此正理想解 \( A^ (0.137, 0.114, 0.175, 0.125) \)价格是成本型取最大值max(0.171, 0.205, 0.137) 0.205准时率是效益型取最小值min(0.110, 0.114, 0.104) 0.104合格率是效益型取最小值min(0.173, 0.168, 0.175) 0.168服务评分是效益型取最小值min(0.111, 0.125, 0.097) 0.097 因此负理想解 \( A^- (0.205, 0.104, 0.168, 0.097) \)步骤5计算距离与贴近度以供应商S1为例 \( D_1^ \sqrt{(0.171-0.137)^2(0.110-0.114)^2(0.173-0.175)^2(0.111-0.125)^2} \approx \sqrt{0.0011560.0000160.0000040.000196} \sqrt{0.001372} \approx 0.0370 \) \( D_1^- \sqrt{(0.171-0.205)^2(0.110-0.104)^2(0.173-0.168)^2(0.111-0.097)^2} \approx \sqrt{0.0011560.0000360.0000250.000196} \sqrt{0.001413} \approx 0.0376 \) \( C_1 \frac{0.0376}{0.03700.0376} \approx \frac{0.0376}{0.0746} \approx 0.504 \)同理计算S2和S3 S2: \( D_2^ \approx 0.0685, D_2^- \approx 0.0082, C_2 \approx 0.107 \) S3: \( D_3^ \approx 0.0281, D_3^- \approx 0.0685, C_3 \approx 0.709 \)步骤6排序贴近度排序S3 (0.709) S1 (0.504) S2 (0.107) 因此综合来看供应商S3最优其次是S1最后是S2。这个结果符合直觉吗S3价格最低、合格率最高虽然准时率和服务稍弱但在我们设定的权重下价格和合格率权重高它脱颖而出。S2价格最高虽然准时率和服务好但代价太大故排名最后。5. 编程实现与代码解析Python示例手动计算只适用于教学和小样本。实际应用中我们肯定用代码来实现。下面是一个完整的Python实现包含了向量归一化、熵权法计算权重和Topsis综合评价。import numpy as np import pandas as pd def topsis(data, weightsNone, impactsNone): TOPSIS综合评价方法 Parameters: ----------- data : ndarray or DataFrame 决策矩阵行是方案列是指标。 weights : list or ndarray, optional 指标权重向量。如果为None则使用熵权法计算。 impacts : list of str, optional 指标影响方向表示效益型-表示成本型。如果为None默认所有指标为效益型()。 Returns: -------- result : DataFrame 包含各方案到正负理想解的距离(D, D-)、相对贴近度(C)和排序的结果。 # 转换为numpy数组 X np.array(data, dtypefloat) m, n X.shape # m个方案n个指标 # 处理impacts参数 if impacts is None: impacts [] * n impacts np.array(impacts) # 1. 向量归一化 norm_X X / np.sqrt((X ** 2).sum(axis0)) # 2. 确定权重 if weights is None: # 使用熵权法计算权重 # 数据平移归一化用于熵权计算 min_vals X.min(axis0) max_vals X.max(axis0) range_vals max_vals - min_vals range_vals[range_vals 0] 1e-6 # 防止除零 norm_for_entropy (X - min_vals) / range_vals # 默认按效益型处理 # 对于成本型指标需要取反 for j in range(n): if impacts[j] -: norm_for_entropy[:, j] 1 - norm_for_entropy[:, j] norm_for_entropy 1e-6 # 平移避免log(0) # 计算比重 p norm_for_entropy / norm_for_entropy.sum(axis0) # 计算熵值 k 1 / np.log(m) e -k * (p * np.log(p)).sum(axis0) # 计算差异系数和权重 d 1 - e weights d / d.sum() else: weights np.array(weights) if abs(weights.sum() - 1.0) 1e-6: weights weights / weights.sum() # 归一化权重 # 3. 计算加权规范化矩阵 weighted_norm norm_X * weights # 4. 确定正负理想解 ideal_best np.zeros(n) ideal_worst np.zeros(n) for j in range(n): col weighted_norm[:, j] if impacts[j] : # 效益型 ideal_best[j] col.max() ideal_worst[j] col.min() else: # 成本型 ideal_best[j] col.min() ideal_worst[j] col.max() # 5. 计算距离 dist_best np.sqrt(((weighted_norm - ideal_best) ** 2).sum(axis1)) dist_worst np.sqrt(((weighted_norm - ideal_worst) ** 2).sum(axis1)) # 6. 计算相对贴近度 C dist_worst / (dist_best dist_worst) # 7. 排序 rank (-C).argsort().argsort() 1 # 降序排列C越大越好 # 整理结果 result_df pd.DataFrame({ 方案: [f方案{i1} for i in range(m)], D: dist_best, D-: dist_worst, C: C, 排序: rank }) result_df result_df.sort_values(排序) return result_df, weights # 使用示例以第4节的供应商数据为例 if __name__ __main__: # 原始数据 data_matrix np.array([ [100, 95, 98, 8], [120, 99, 95, 9], [80, 90, 99, 7] ]) # 指标类型价格成本型-准时率效益型合格率效益型服务评分效益型 impacts [-, , , ] # 使用熵权法自动计算权重 result, calc_weights topsis(data_matrix, impactsimpacts) print(熵权法计算出的权重, calc_weights) print(\nTOPSIS评价结果) print(result)代码关键点解析与避坑归一化分离代码中做了两次归一化。norm_X是用于Topsis主体计算的向量归一化矩阵。norm_for_entropy是专门为熵权法计算准备的数据采用了最小-最大归一化并进行了一致化处理将成本型指标转换为效益型。这是两个不同的过程切勿混淆。熵权法的数据平移norm_for_entropy 1e-6这行代码至关重要。不加平移当某个指标下所有方案数值完全相同时p矩阵中会出现0np.log(0)会导致计算错误。加一个极小的数可以避免这个问题且对权重分配影响微乎其微。理想解的计算在确定ideal_best和ideal_worst时循环内判断impacts并在加权规范化矩阵weighted_norm上取最大最小值。这是正确的做法。排序技巧(-C).argsort().argsort() 1这行代码可能有点绕。(-C).argsort()得到的是C值从大到小排列时原始索引的位置。再对这个结果做一次.argsort()就得到了每个原始索引的排名0-based最后1得到1-based的排名。运行这段代码你会得到与我们手动计算一致的结果验证了整个流程的正确性。在实际项目中你可以将数据保存在Excel或CSV文件中用pandas.read_csv读取然后调用这个topsis函数快速得到评价结果。6. 进阶讨论Topsis法的局限性与改进思路没有一种方法是完美的Topsis法也不例外。了解它的局限性能帮助我们在合适的场景下使用它并在必要时进行改进。1. 对极端值敏感由于使用欧氏距离如果某个指标存在极端大或极端小的值即使经过归一化也可能对距离计算产生不成比例的影响从而扭曲最终排序。例如在评价城市时如果将“GDP”和“公园绿地面积”放在一起GDP的数值量级万亿远大于绿地面积平方公里即使归一化其绝对差异在距离计算中仍可能占主导。改进思路可以考虑使用曼哈顿距离城市街区距离替代欧氏距离公式为 \( D_i^ \sum_{j1}^{n} |v_{ij} - v_j^| \)。曼哈顿距离对极端值的敏感度低于欧氏距离。或者在数据预处理阶段对存在极端值的指标采用更稳健的归一化方法如小数定标规范化。2. 权重依赖性强正如前文反复强调的权重对结果影响巨大。无论是主观赋权还是客观赋权都存在一定的不确定性。主观赋权可能带入个人偏见客观赋权如熵权法可能受数据分布和指标相关性的影响。改进思路组合赋权将主客观赋权法结合例如用AHP法得到主观权重 \( w_s \)用熵权法得到客观权重 \( w_o \)然后通过线性组合 \( w \alpha w_s (1-\alpha) w_o \) 得到综合权重其中 \( \alpha \) 反映对主观经验的偏好程度。敏感性分析对权重进行微调例如上下浮动10%观察排序结果是否稳定。如果排名轻易改变说明这个评价体系很脆弱需要重新审视指标选取或权重设定。3. 无法处理指标间的交互作用Topsis法默认指标之间是相互独立的它简单地将各维度距离平方和开根号。但在现实中指标间可能存在协同或拮抗作用。例如在评价手机时“电池容量”和“屏幕刷新率”是相关的高刷新率会耗电更快。单独看两个指标都好的手机实际续航体验可能不如一个电池容量中等但刷新率优化的手机。Topsis法无法捕捉这种交互效应。改进思路对于存在明显非线性交互作用的评价问题Topsis可能不是最佳选择。可以考虑使用基于效用理论的多属性决策方法或者更复杂的模型如神经网络、决策树等它们能够学习指标间的复杂关系。4. “理想解”可能不切实际正理想解是由所有指标的最优值拼凑出来的这个“理想点”在现实中可能根本不存在例如又最便宜、质量最好、交货最快。用这个现实中不存在的点作为基准有时会让评价结果显得“脱离实际”。改进思路可以考虑使用“灰色关联分析”与Topsis结合。灰色关联分析关注的是方案与理想方案在曲线形状上的相似度对绝对数值不那么敏感有时能提供更贴近实际认知的评价。在我经手的一个研发团队绩效评估项目中就曾遇到过Topsis排名与管理者直观感受不符的情况。后来分析发现是因为“代码质量”通过静态扫描缺陷数衡量成本型和“单元测试覆盖率”效益型这两个指标高度负相关——为了追求高覆盖率有时会写一些无意义的测试用例反而引入了冗余代码。单纯用熵权Topsis会给这两个相关性很强的指标都赋予不低的权重放大了“测试活动”这个单一维度的贡献。后来我们引入了CRITIC法一种同时考虑指标对比强度和冲突性的客观赋权法来计算权重并合并了相关指标最终得到的排序结果更符合团队管理的实际情况。7. 常见问题与实战排坑指南根据我多次应用Topsis法的经验以下是一些高频出现的“坑”和对应的解决方案。问题1归一化后所有数据都挤在0附近计算出的距离差异很小导致贴近度C区分度不高。原因与排查这通常发生在原始数据中某个指标的数值量级远大于其他指标时。即使经过向量归一化该指标在加权后可能仍然主导了距离计算。检查你的加权规范化矩阵 \( V \)看是否某一列的数值范围最大值-最小值远大于其他列。解决方案首先回顾权重设置是否合理是否无意中给了量级大的指标过高的权重。其次可以考虑在Topsis之前先对原始数据进行标准化Z-score标准化\( z (x - \mu) / \sigma \)消除量级差异然后再进行向量归一化。或者尝试使用其他距离公式如曼哈顿距离。问题2增加或减少一个评价方案其他方案的排序发生了剧烈变化。原因与排查这说明你的评价体系稳定性不足。根本原因在于正负理想解的定义依赖于当前方案集。新方案的加入可能改变了每个指标的最大值和最小值从而重构了理想解导致所有方案的距离重算。解决方案这是Topsis方法固有的特性。在关键决策中敏感性分析至关重要。你可以尝试使用留一法交叉验证依次剔除一个方案用剩下的方案构建评价体系看被剔除方案的排名是否稳定。设定外部基准不以内部分方案的最优最劣作为理想解而是根据行业标准、历史数据或专家意见预先设定一个固定的“理想值”和“不可接受值”作为 \( A^ \) 和 \( A^- \)。这样评价体系就不会随方案集的变化而波动。问题3熵权法计算出的某个重要指标权重为0或接近0。原因与排查这是因为该指标在所有方案上的数据完全一致或离散程度极低熵值接近1差异系数接近0。从信息论角度看它确实没提供什么区分信息。解决方案不要盲目相信客观权重。需要结合业务逻辑判断如果该指标确实是关键约束项如“安全合规性”必须全部达标那么即使数据无差异也应赋予一个较高的主观权重如一票否决权或者将其作为筛选条件在Topsis评价前就过滤掉不达标的方案。如果该指标确实不重要权重为0也合理。问题4如何向非技术背景的决策者解释Topsis的结果实战技巧不要一上来就讲公式和矩阵。用比喻和图表比喻“我们就像在给每个选项画肖像。正理想解是‘完美画像’负理想解是‘糟糕画像’。Topsis就是测量每个真实选项和这两张画像的相似度谁更像完美的、更不像糟糕的谁就胜出。”图表对于2-3个核心指标可以画散点图。将正负理想解和各个方案标在图上用欧氏距离画圈一目了然。对于更多指标可以绘制雷达图将每个方案和正理想解画在一起方案轮廓越接近理想解轮廓说明表现越好。雷达图能非常直观地展示一个方案在各个维度上的长板和短板。最后记住Topsis是一个相对评价方法它告诉你在一组给定方案中谁相对更好但不能告诉你这个“更好”的方案是否绝对达到了可接受的标准。它输出的排序是有效的但贴近度 \( C_i \) 的绝对值大小没有绝对意义比如不能说C0.8的方案就是“优秀”。它最适合用于方案筛选、排序和比较而不是方案的绝对评分。在实际决策中我通常会将Topsis排序结果作为重要输入再结合定性分析、专家讨论和实际约束如预算上限做出最终的综合判断。
RELATED — 相关阅读

相关资讯

LATEST — 最新资讯

最新发布

TODAY — 本日精选

新闻

WEEKLY — 本周精选

新闻

MONTHLY — 本月精选

新闻