协同度分析系统
协同度分析系统面向多指标复合场景下的系统协调性评估,旨在构建一套可解释、可比较、可复现的量化评价框架。系统通过对正向、负向与适中指标进行同向化处理与隶属度映射,统一不同量纲与不同偏好方向的数据表达,并在此基础上形成系统整体协同水平与对象间差异的综合判别结果。
协同度分析法
协同度分析系统面向多指标复合场景下的系统协调性评估,旨在构建一套可解释、可比较、可复现的量化评价框架。系统通过对正向、负向与适中指标进行同向化处理与隶属度映射,统一不同量纲与不同偏好方向的数据表达,并在此基础上形成系统整体协同水平与对象间差异的综合判别结果。
从应用价值看,该方法可用于识别协同演化中的关键约束指标与主导权重结构,揭示不同评价对象在协同状态上的结构性差异,并支持双系统耦合情形下的合成协同度测度。相关结果可直接服务于政策评估、资源配置优化与治理方案比选等决策过程。
1. 方法概述
协同度分析用于刻画系统(或子系统)在多指标约束下的有序状态与协调水平。设共有 \(n\) 个评价对象、\(m\) 个评价指标,原始数据矩阵为
$$ X=(x_{ij})_{n\times m},\quad i=1,2,\ldots,n,\ j=1,2,\ldots,m \tag{1} $$
其中 \(x_{ij}\) 表示第 \(i\) 个对象在第 \(j\) 个指标上的观测值。
2. 指标同向化与隶属度构造
为统一“值越大越优”的偏好,将指标映射为有序度(隶属度)\(\mu_{ij}\in[0,1]\)。记第 \(j\) 指标样本最小值、最大值分别为 \(x_j^{\min},x_j^{\max}\)。
2.1 正向指标
$$ \mu_{ij}=\frac{x_{ij}-x_j^{\min}}{x_j^{\max}-x_j^{\min}} \tag{2} $$
2.2 负向指标
$$ \mu_{ij}=\frac{x_j^{\max}-x_{ij}}{x_j^{\max}-x_j^{\min}} \tag{3} $$
2.3 适中(适度)指标
若第 \(j\) 个指标目标值为 \(t_j\),则
$$ \mu_{ij}=1-\frac{|x_{ij}-t_j|}{\max\left\{|x_j^{\max}-t_j|,|t_j-x_j^{\min}|\right\}} \tag{4} $$
由此得到隶属度矩阵
$$ M=(\mu_{ij})_{n\times m} \tag{5} $$
3. 权重确定
3.1 自定义权重
若采用主观赋权,权重向量 \(w=(w_1,\ldots,w_m)\) 满足
$$ \sum_{j=1}^{m}w_j=1,\quad w_j\ge 0 \tag{6} $$
3.2 熵权法赋权
先计算指标比重
$$ p_{ij}=\frac{\mu_{ij}}{\sum_{i=1}^{n}\mu_{ij}} \tag{7} $$
信息熵为
$$ e_j=-\frac{1}{\ln n}\sum_{i=1}^{n}p_{ij}\ln(p_{ij}+\varepsilon) \tag{8} $$
其中 \(\varepsilon\) 为极小正数(防止 \(\ln 0\))。差异系数与权重分别为
$$ g_j=1-e_j \tag{9} $$
$$ w_j=\frac{g_j}{\sum_{j=1}^{m}g_j} \tag{10} $$
4. 单系统协同度(系统整体口径)
先计算第 \(i\) 个对象的子系统有序度
$$ CC_i=\sum_{j=1}^{m}w_j\mu_{ij} \tag{11} $$
再求系统协同能力(均值)
$$ \overline{CC}=\frac{1}{n}\sum_{i=1}^{n}CC_i \tag{12} $$
极差系数定义为
$$ DD=\frac{\max\limits_{i,j}\mu_{ij}-\min\limits_{i,j}\mu_{ij}}{\overline{CC}} \tag{13} $$
系统整体协同度为
$$ CA_{\text{sys}}=\frac{\overline{CC}}{DD} \tag{14} $$
常用等级划分为
$$ \text{Level}(CA_{\text{sys}})= \begin{cases} \text{高效协同}, & CA_{\text{sys}}\ge 1.0\\ \text{一般协同}, & 0.8\le CA_{\text{sys}}<1.0\\ \text{弱协同}, & 0.6\le CA_{\text{sys}}<0.8\\ \text{不协同}, & CA_{\text{sys}}<0.6 \end{cases} \tag{15} $$
5. 逐对象协同表现(排序口径)
为对各评价对象进行横向比较,可计算对象级极差项
$$ DD_i=\sqrt{\sum_{j=1}^{m}w_j(1-\mu_{ij})^2} \tag{16} $$
对应对象级协同度
$$ CA_i=CC_i\bigl(1-DD_i\bigr) \tag{17} $$
按 \(CA_i\) 由大到小排序,得到对象排名
$$ \text{Rank}_i=\operatorname{rank}_{\downarrow}(CA_i) \tag{18} $$
6. 双系统合成协同度
设系统1与系统2分别得到 \(CC_i^{(1)},DD_i^{(1)}\) 与 \(CC_i^{(2)},DD_i^{(2)}\)。记系统间权重 \(W_1,W_2\) 满足
$$ W_1+W_2=1,\quad W_1,W_2\ge 0 \tag{19} $$
构造混合有序度与混合极差项
$$ CC_i^{\text{mix}}=W_1CC_i^{(1)}+W_2CC_i^{(2)} \tag{20} $$
$$ DD_i^{\text{mix}}=W_1DD_i^{(1)}+W_2DD_i^{(2)} \tag{21} $$
6.1 乘积型合成
$$ CA_i^{\text{total}}=CC_i^{\text{mix}}\bigl(1-DD_i^{\text{mix}}\bigr) \tag{22} $$
6.2 加权折中型合成
引入折中系数 \(\alpha\in[0,1]\),可写为
$$ CA_i^{\text{total}}=\alpha\,CC_i^{\text{mix}}+(1-\alpha)\bigl(1-DD_i^{\text{mix}}\bigr) \tag{23} $$
最终按 \(CA_i^{\text{total}}\) 由大到小排序。
7. 论文写作建议(可直接套用)
- 给出指标体系、指标类型(正向/负向/适中)与目标值 \(t_j\);
- 给出权重来源(自定义或熵权法),并报告权重表;
- 报告单系统结果(\(CC_i\)、\(DD\)、\(CA_{\text{sys}}\)、等级);
- 若为双系统研究,报告 \(W_1,W_2\)、合成方式(式(22)或式(23))及最终排名;
- 图表建议包含:权重分布图、有序度分布图、协同等级图与雷达图。
上述结构可直接用于“方法”与“结果分析”章节,正文保留核心公式,计算明细可置于附录以增强可复现性。
8. 输出结果
当前项目中的协同度模块位于 具体的算法/xietongdu。根据 xietongdu_calculator.py 的真实实现,单系统分析时会在输出目录下生成 results_<时间戳>/ 子目录,并写出 协同度分析结果_<时间戳>.xlsx。Excel 常见工作表包括:
原始数据标准化矩阵指标权重熵权法计算结果(若使用熵权法)有序度计算结果子系统总体有序度极差系数计算协同度-系统整体协同度-逐对象隶属度μ计算说明
图像通常保存在同级 plots/ 目录下,常见文件包括 weights_distribution.png、ordered_degrees_distribution.png、coordination_level.png、ordered_degrees_radar.png。若进行双系统合成,还会生成 协同度_双系统合成结果_<时间戳>.xlsx,其中包含 系统1_隶属度μ、系统2_隶属度μ、系统1_CCDDCA、系统2_CCDDCA、合成结果 与 参数说明 等工作表。
9. 实现说明与注意事项
这套协同度实现与教材里的最简公式版相比,有几处必须如实写明:
- 指标类型支持
正向指标 / 负向指标 / 适度指标(适中指标),其中适度指标必须配合标准值使用,否则无法按“贴近最优值”逻辑计算。 - 标准化同时支持
min-max与z-score两种路径,但若使用z-score,代码仍会再映射回 \([0,1]\) 区间,以便后续隶属度和熵权法计算稳定。 - 权重既支持熵权法,也支持自定义权重;若采用熵权法,Excel 会额外输出
熵权法计算结果工作表。 - 当前实现不只保留系统整体协同度,还额外输出逐对象的 \(CC\)、\(DD\)、\(CA\)、等级与排名,因此可以同时支持“系统总体结论”和“对象横向比较”两种写法。
- 双系统场景下支持乘积型和加权折中型两种合成模式,并显式保存 \(\alpha\)、\(W_1\)、\(W_2\) 等参数说明。
因此,这个模块更准确的定位是“支持单系统与双系统合成、带逐对象排名输出的协同度评价系统”。
10. 单篇终审补充
10.1 图题与表题对齐建议
熵权法计算结果表可写为:表X 协同度模型熵权计算结果表。原始数据表可写为:表X 协同度模型原始数据表。标准化矩阵表可写为:表X 协同度模型标准化矩阵表。指标权重表可写为:表X 协同度模型指标权重表。有序度计算结果表可写为:表X 协同度模型有序度计算结果表。子系统总体有序度表可写为:表X 子系统总体有序度结果表。极差系数计算表可写为:表X 协同度模型极差系数计算表。协同度-系统整体表可写为:表X 协同度模型系统整体协同度表。协同度-逐对象表可写为:表X 协同度模型逐对象协同度表。隶属度μ表可写为:表X 协同度模型隶属度结果表。合成结果表可写为:表X 双系统协同度合成结果表。参数说明表可写为:表X 双系统协同度参数说明表。weights_distribution.png建议写为:图X 指标权重分布图。ordered_degrees_distribution.png建议写为:图X 有序度分布图。coordination_level.png建议写为:图X 协同等级分布图。ordered_degrees_radar.png建议写为:图X 有序度雷达图。
10.2 终审说明
- 当前可直接作为终审证据的代表性结果目录可采用
具体的算法/xietongdu/results/results_20260329_163930。这一目录同时保留了双系统主结果、两个单系统结果、repro_inputs/与repro_outputs/,证据链完整。 - 单系统真实结果簿分别为
协同度_系统1_结果_20260329_163930.xlsx与协同度_系统2_结果_20260329_163931.xlsx,其真实工作表一致,均为熵权法计算结果/原始数据/标准化矩阵/指标权重/有序度计算结果/子系统总体有序度/极差系数计算/协同度-系统整体/协同度-逐对象/隶属度μ/计算说明。 - 双系统真实结果簿为
协同度_双系统合成结果_20260329_163932.xlsx,真实工作表为系统1_隶属度μ/系统1_CCDDCA/系统2_隶属度μ/系统2_CCDDCA/合成结果/参数说明。论文若讨论双系统合成,不应只引用单系统工作表。 - 当前真实图文件位于两套
results_时间戳/plots/子目录下,稳定图名为weights_distribution.png、ordered_degrees_distribution.png、coordination_level.png、ordered_degrees_radar.png。由于系统1和系统2都会各自产生一套同名图片,论文引用时应明确“对应系统1结果目录”或“对应系统2结果目录”,避免把两套图混为同一证据。 - 当前复现脚本为
repro_template_20260329_163932.py,其中明确使用DATA_FILE_SYS1 = 'repro_inputs/xietongdu_sys1_20260329_163932.xlsx'与DATA_FILE_SYS2 = 'repro_inputs/xietongdu_sys2_20260329_163932.xlsx'。这篇文档可以把repro_inputs/...作为标准复现口径直接写入附录。
10.3 全量强化补充
- 当前建议锁定的主证据目录为
具体的算法/xietongdu/results/results_20260329_163930。这一目录不是“单一工作簿结果”,而是同一次双系统分析打包出的复合结果目录,里面同时包含两份单系统结果簿、一份双系统合成结果簿、一套复现输入和一份复现脚本。 - 单系统 1 的主结果簿是
具体的算法/xietongdu/results/results_20260329_163930/协同度_系统1_结果_20260329_163930.xlsx,单系统 2 的主结果簿是具体的算法/xietongdu/results/results_20260329_163930/协同度_系统2_结果_20260329_163931.xlsx。两者当前实际工作表完全一致,均为熵权法计算结果、原始数据、标准化矩阵、指标权重、有序度计算结果、子系统总体有序度、极差系数计算、协同度-系统整体、协同度-逐对象、隶属度μ、计算说明。 - 双系统合成主结果簿是
具体的算法/xietongdu/results/results_20260329_163930/协同度_双系统合成结果_20260329_163932.xlsx,当前实际工作表为系统1_隶属度μ、系统1_CCDDCA、系统2_隶属度μ、系统2_CCDDCA、合成结果、参数说明。因此论文若要讨论最终双系统排序或总协同度,应优先引用这一本,而不是把两份单系统结果簿拼接后自行解释。 - 当前真实图文件并不在结果根目录,而是在两套内层目录中分别保存:系统 1 图位于
具体的算法/xietongdu/results/results_20260329_163930/results_20260329_163930/plots/,系统 2 图位于具体的算法/xietongdu/results/results_20260329_163930/results_20260329_163931/plots/。两边都存在weights_distribution.png、ordered_degrees_distribution.png、coordination_level.png、ordered_degrees_radar.png,所以正文若引用图片,必须把“系统1/系统2”的路径前缀写出来,不能只写图名。 - 当前复现链路是标准
repro_inputs/...口径。脚本具体的算法/xietongdu/results/results_20260329_163930/repro_template_20260329_163932.py内部明确写入DATA_FILE_SYS1 = 'repro_inputs/xietongdu_sys1_20260329_163932.xlsx'和DATA_FILE_SYS2 = 'repro_inputs/xietongdu_sys2_20260329_163932.xlsx';对应输入副本实际位于具体的算法/xietongdu/results/results_20260329_163930/repro_inputs/。 - 结果目录里还存在一份复现再生产物
具体的算法/xietongdu/results/results_20260329_163930/repro_outputs/协同度_双系统合成结果_20260329_163934.xlsx。写文档时应把它表述为“由复现脚本重新生成的输出”,不能把它和首层主结果簿协同度_双系统合成结果_20260329_163932.xlsx混写成同一次人工分析结果。
11. 软件实现核查补充(2026-07)
11.1 当前软件实现口径
本软件当前对应的源码目录为 具体的算法/xietongdu,核心计算类为 core/xietongdu_calculator.py 中的 XietongduCalculator。软件主流程是“双系统协同度分析”:分别上传系统 1 和系统 2 的指标数据,按两个系统各自的指标方向、权重方法和系统间权重计算单系统结果,再生成双系统合成结果。
需要特别区分两类口径:
- 单系统完整报告会保留系统整体协同度
CA_sys = mean(CC) / DD、逐对象CC/DD/CA/等级/排名、隶属度和权重明细。 - 双系统合成结果以两个系统逐对象的
CC、DD为基础,按系统间权重混合后计算CA_total,并按CA_total排名。
因此,若用户研究的是两个系统的综合协同状态,应优先解释 协同度_双系统合成结果_*.xlsx 中的 合成结果,不要只用某一个单系统报告代替最终结论。
11.2 输入数据和界面参数
数据上传页支持 Excel/CSV。当前样例文件位于:
uploads/samples/xietongdu_system1_sample.xlsxuploads/samples/xietongdu_system1_sample.csvuploads/samples/xietongdu_system2_sample.xlsxuploads/samples/xietongdu_system2_sample.csv
每个系统数据表默认第 1 列为评价对象名称,后续列为数值型指标。系统 1 和系统 2 需要样本数量一致,且评价对象顺序一致;界面在确认上传时会检查两套对象名称是否对齐。
当前可见流程包括:选择系统1文件、加载系统1示例、选择系统2文件、加载系统2示例、数据预览、确认,随后进入指标设置和方法设置。指标设置页按“系统1/系统2”分页,每个指标可选择 正向指标、负向指标、适中指标;适中指标会要求填写标准值。方法设置页中,标准化方式在界面说明中固定为 Min-Max,两个系统的权重方法分别支持 熵权法 和 自定义权重。协同度合成方式支持:
- 乘积型:
CA = CC · (1-DD); - 加权和型:
CA = α·CC + (1-α)·(1-DD),界面可设置α; - 系统间权重:
W1、W2,界面提供平均分配和归一化。
文档前文保留的 z-score 说明属于理论和历史兼容补充;当前主界面方法页明确提示标准化固定为 Min-Max,因此面向用户说明时应以当前界面为准。
11.3 输出结果和图表解释
一次双系统分析完成后,程序会在 results/results_YYYYMMDD_HHMMSS/ 下保存本次运行产物。当前结果页提供 打开结果目录、打开结果文件、导出复现代码、重置并返回首页 和 退出程序。
双系统流程通常包含三类 Excel:
协同度_系统1_结果_*.xlsx:系统 1 的单系统完整报告;协同度_系统2_结果_*.xlsx:系统 2 的单系统完整报告;协同度_双系统合成结果_*.xlsx:双系统合成主结果,也是“打开结果文件”的优先目标。
单系统完整报告常见工作表包括 熵权法计算结果、原始数据、标准化矩阵、指标权重、有序度计算结果、子系统总体有序度、极差系数计算、协同度-系统整体、协同度-逐对象、隶属度μ、计算说明。双系统合成主结果的工作表包括 系统1_隶属度μ、系统1_CCDDCA、系统2_隶属度μ、系统2_CCDDCA、合成结果、参数说明。
图表由单系统报告生成,常见文件在内层 plots/ 目录中,包括 weights_distribution.png、ordered_degrees_distribution.png、coordination_level.png、ordered_degrees_radar.png。如果系统 1 和系统 2 都导出了单系统报告,会各有一套同名图,引用时必须写清楚对应系统。
11.4 复现和源码对应关系
当前结果页的复现代码由 ui/results_widget.py 生成。导出时会把输入数据复制或落盘到结果目录下的 repro_inputs/,脚本中使用 DATA_FILE_SYS1、DATA_FILE_SYS2 等相对路径,并支持通过环境变量覆盖输入文件位置。复现脚本主要复跑核心算法和合成结果;单系统完整报告在脚本中作为可取消注释的附加输出存在,是否生成以本次脚本内容为准。
源码对应关系如下:
main.py:程序入口、软件插件路径、授权通过后进入主窗口、应用图标和字体设置。core/xietongdu_calculator.py:数据读取、隶属度构造、熵权法、自定义权重、单系统和双系统协同度计算、Excel 与图表导出。ui/upload_widget.py:系统 1/系统 2 文件选择、示例数据、对象一致性检查、数据预览。ui/indicators_widget.py:两个系统的指标选择、正向/负向/适中类型和适中目标值设置。ui/methods_widget.py:两个系统权重方法、合成方式、α、W1/W2设置。ui/results_widget.py:执行计算、保存结果、打开结果、导出复现代码。ui/weight_editor.py:自定义权重编辑与归一化。utils/result_manager.py、utils/excel_handler.py:结果和 Excel 辅助处理。
11.5 适用边界和常见误读
协同度结果适合用于多指标评价对象之间的相对比较,不适合解释为绝对因果关系。权重方法、指标方向、适中目标值、系统间权重和合成方式都会影响最终排序;正式报告中应同时披露这些设置。
CA 越大表示在当前指标体系和参数设置下协同表现越好,但不代表所有指标都同时最优。若 CC 较高但 DD 也较高,说明平均有序水平较好但指标偏离或短板仍明显;若 合成结果 中两个对象的 CA_total 接近,应避免过度强调名次差异。