耦合协调度分析系统
本文档用于论文写作,公式与 Couplingdesktop 当前实现一致(系统内标准化与赋权 → 系统得分 → 系统对耦合度/协调度 → 等级判定)。
耦合协调度分析法
本文档用于论文写作,公式与 Coupling_desktop 当前实现一致(系统内标准化与赋权 → 系统得分 → 系统对耦合度/协调度 → 等级判定)。
1. 方法概述
设共有 \(n\) 个评价对象、\(S\) 个系统。第 \(s\) 个系统有 \(m_s\) 个指标,原始数据写作
$$ X^{(s)}=(x_{ij}^{(s)})_{n\times m_s},\quad i=1,\ldots,n,\ j=1,\ldots,m_s \tag{1} $$
其中每个系统数据表第一列为对象标识(地区/年份等),其余列为指标。
2. 指标标准化(同向化)
对每个系统独立标准化。记第 \(s\) 系统第 \(j\) 指标样本最小值与最大值为 \(x_{j,\min}^{(s)}\)、\(x_{j,\max}^{(s)}\)。
2.1 正向指标
$$ z_{ij}^{(s)}=\frac{x_{ij}^{(s)}-x_{j,\min}^{(s)}}{x_{j,\max}^{(s)}-x_{j,\min}^{(s)}} \tag{2} $$
2.2 负向指标
$$ z_{ij}^{(s)}=\frac{x_{j,\max}^{(s)}-x_{ij}^{(s)}}{x_{j,\max}^{(s)}-x_{j,\min}^{(s)}} \tag{3} $$
2.3 适度指标
若第 \(j\) 指标目标值为 \(t_j^{(s)}\),则
$$ z_{ij}^{(s)}=1-\frac{\left|x_{ij}^{(s)}-t_j^{(s)}\right|}{\max\!\left(\left|x_{j,\max}^{(s)}-t_j^{(s)}\right|,\left|x_{j,\min}^{(s)}-t_j^{(s)}\right|\right)} \tag{4} $$
若某指标为常数列(\(x_{j,\max}^{(s)}=x_{j,\min}^{(s)}\)),实现中该列标准化值置为 0。
3. 系统内指标权重
对每个系统分别计算 \(w_j^{(s)}\),满足
$$ \sum_{j=1}^{m_s}w_j^{(s)}=1,\quad w_j^{(s)}\ge 0 \tag{5} $$
3.1 方差法(默认)
$$ \sigma_j^{2(s)}=\operatorname{Var}\!\left(z_{1j}^{(s)},\ldots,z_{nj}^{(s)}\right) \tag{6} $$
$$ w_j^{(s)}=\frac{\sigma_j^{2(s)}}{\sum_{k=1}^{m_s}\sigma_k^{2(s)}} \tag{7} $$
3.2 熵权法
为增强稳健性,先平移为非负矩阵:
$$ y_{ij}^{(s)}=z_{ij}^{(s)}-\min_i z_{ij}^{(s)}+\varepsilon,\quad \varepsilon>0 \tag{8} $$
$$ p_{ij}^{(s)}=\frac{y_{ij}^{(s)}}{\sum_{i=1}^{n}y_{ij}^{(s)}} \tag{9} $$
$$ e_j^{(s)}=-\frac{1}{\ln n}\sum_{i=1}^{n}p_{ij}^{(s)}\ln p_{ij}^{(s)} \tag{10} $$
$$ d_j^{(s)}=1-e_j^{(s)},\qquad w_j^{(s)}=\frac{d_j^{(s)}}{\sum_{k=1}^{m_s}d_k^{(s)}} \tag{11} $$
当分母为 0 或数值异常时,实现回退为等权 \(1/m_s\)。
3.3 自定义权重
给定 \(\tilde w_j^{(s)}\ge0\) 后归一化:
$$ w_j^{(s)}=\frac{\tilde w_j^{(s)}}{\sum_{k=1}^{m_s}\tilde w_k^{(s)}} \tag{12} $$
4. 系统综合得分
第 \(s\) 系统中第 \(i\) 个对象的综合得分为
$$ U_i^{(s)}=\sum_{j=1}^{m_s}w_j^{(s)}z_{ij}^{(s)} \tag{13} $$
5. 系统对耦合度与协调度
对任意系统对 \((a,b),a<b\),逐对象计算:
5.1 耦合度
$$ C_i^{(a,b)}= \begin{cases} \dfrac{2\sqrt{U_i^{(a)}U_i^{(b)}}}{U_i^{(a)}+U_i^{(b)}}, & U_i^{(a)}+U_i^{(b)}>0\\[6pt] 0, & U_i^{(a)}+U_i^{(b)}=0 \end{cases} \tag{14} $$
5.2 协调指数
若系统间权重为 \(W_s\)(可由用户输入),则系统对内部归一化后:
$$ \alpha_{ab}=\frac{W_a}{W_a+W_b},\qquad \beta_{ab}=\frac{W_b}{W_a+W_b} \tag{15} $$
$$ T_i^{(a,b)}=\alpha_{ab}U_i^{(a)}+\beta_{ab}U_i^{(b)} \tag{16} $$
若 \(W_a+W_b\le 0\) 或未提供系统间权重,实现采用等权:
$$ T_i^{(a,b)}=\frac{U_i^{(a)}+U_i^{(b)}}{2} \tag{17} $$
5.3 耦合协调度
$$ D_i^{(a,b)}=\sqrt{C_i^{(a,b)}\,T_i^{(a,b)}} \tag{18} $$
6. 协调等级划分(与系统实现一致)
按照 \(D\in[0,1]\) 分级:
$$ \text{Level}(D)= \begin{cases} \text{极度失调}, & 0\le D<0.1\\ \text{严重失调}, & 0.1\le D<0.2\\ \text{中度失调}, & 0.2\le D<0.3\\ \text{轻度失调}, & 0.3\le D<0.4\\ \text{濒临失调}, & 0.4\le D<0.5\\ \text{勉强协调}, & 0.5\le D<0.6\\ \text{初级协调}, & 0.6\le D<0.7\\ \text{中级协调}, & 0.7\le D<0.8\\ \text{良好协调}, & 0.8\le D<0.9\\ \text{优质协调}, & 0.9\le D\le 1 \end{cases} \tag{19} $$
7. 论文结果表述建议
建议至少报告以下结果:
- 各系统指标权重 \(w_j^{(s)}\) 与赋权方法(方差法/熵权法/自定义);
- 系统得分 \(U_i^{(s)}\);
- 系统对的 \(C_i^{(a,b)}\)、\(T_i^{(a,b)}\)、\(D_i^{(a,b)}\) 与等级;
- 若使用系统间权重,给出 \(W_s\) 及其归一化说明(式(15));
- 可视化(得分对比图、协调度热力图、等级分布图)与主要结论。
以上公式可直接用于论文“研究方法”与“实证结果”章节,计算明细可放附录以增强可复现性。
8. 论文可直接引用模板(精简版)
本文采用耦合协调度模型评估多系统协同发展水平。首先对各系统指标进行同向化标准化处理(式(2)–式(4)),并采用方差法/熵权法确定系统内指标权重(式(6)–式(12)),据此计算系统综合得分(式(13))。随后对任意系统对计算耦合度 \(C\)(式(14))、协调指数 \(T\)(式(16) 或式(17))及耦合协调度 \(D\)(式(18)),并依据式(19)完成协调等级划分。最终形成“权重—得分—耦合协调度—等级”的完整评价结果,用于横向比较与政策解释。
9. 论文可直接引用模板(扩展版)
为定量刻画系统间协同关系,本文构建耦合协调度评价框架。设评价对象为 \(n\) 个、系统数为 \(S\),先在系统内部对原始指标矩阵进行正向化标准化,分别处理正向、负向与适度指标,消除量纲差异与方向差异。再依据方差法、熵权法或专家自定义权重,计算系统内部指标权重并形成对象综合得分。进一步地,对系统对 \((a,b)\) 计算耦合度 \(C\)、协调指数 \(T\) 与耦合协调度 \(D\),其中 \(T\) 在存在系统间权重时按系统对归一化权重计算。最后依据分级区间判定协调等级,实现对各对象协同状态的比较分析。该方法具有计算流程清晰、结果可解释性强、易于复现等优点,适用于区域发展、生态经济、产业协同等多指标综合评价场景。
10. 输出结果
当前项目中的耦合协调度实现位于 具体的算法/Coupling_desktop。按 coupling_calculator.py 的真实导出逻辑,程序每次运行后会生成独立结果目录 耦合协调度分析结果_<时间戳>/,其中主结果文件通常为 耦合协调度分析结果.xlsx。Excel 常见工作表包括:
- 主结果工作表(由
ExcelHandler.save_results_to_excel生成) 耦合度C协调指数T协调等级系统间权重(若有)方法说明
此外,若开启系统内结果单独导出,还会为每个系统分别生成 系统1_*.xlsx、系统2_*.xlsx 等子结果文件,其中通常包含 原始数据、标准化数据、权重、得分、指标类型、参考值 等工作表。图像方面,代码会生成至少 system_scores_comparison.png、coordination_heatmap.png、coordination_level_distribution.png 等可视化结果。
11. 实现说明与注意事项
这套耦合协调度实现并不只是按一个固定公式输出单一 \(D\) 值,而是加入了系统内赋权、系统间权重和明细表导出,主要要点如下:
- 系统内指标可以按指标类型标准化,也可以在异常时回退到 Min-Max 标准化。
- 系统内权重支持
variance、entropy与custom三种方式;系统间权重则单独作为 \(T\) 的构造参数传入。 - 对任意系统对 \((a,b)\),代码会同时输出耦合度 \(C\)、协调指数 \(T\)、耦合协调度 \(D\) 与协调等级,而不是只输出最终等级。
- 当系统间权重缺失或和不合法时,代码会对系统对内部采用等权处理。
- 协调等级分为 10 档,从
极度失调到优质协调,且等级阈值已在代码中固定写明,论文写作时应与系统实现保持一致。
因此,这个模块更贴切的说法是“带系统内赋权、系统间权重和等级明细导出的耦合协调度分析系统”。
12. 论文写作建议
建议正文按“系统内权重 -> 系统综合得分 -> 系统对 \(C/T/D\) -> 协调等级”这一顺序展开,并在附录中给出 耦合度C、协调指数T 与 协调等级 明细表。若采用系统间权重,还应单独说明其来源与归一化方式。
13. 单篇终审补充
13.1 图题与表题对齐建议
系统1原始数据表可写为:表X 系统1原始指标数据表。系统2原始数据表可写为:表X 系统2原始指标数据表。耦合协调度结果表可写为:表X 耦合协调度综合结果表。评价等级说明表可写为:表X 耦合协调等级划分说明表。系统1标准化数据表可写为:表X 系统1标准化结果表。系统2标准化数据表可写为:表X 系统2标准化结果表。耦合度C表可写为:表X 系统对耦合度 \(C\) 结果表。协调指数T表可写为:表X 系统对协调指数 \(T\) 结果表。协调等级表可写为:表X 系统对耦合协调等级表。系统间权重表可写为:表X 系统间权重设置表。方法说明表可写为:表X 耦合协调度方法说明表。system_scores_comparison.png建议写为:图X 各系统综合得分对比图。coordination_heatmap.png建议写为:图X 耦合协调度热力图。coordination_level_distribution.png建议写为:图X 协调等级分布图。
13.2 终审说明
- 当前最适合写入终审说明的代表性目录可采用
具体的算法/Coupling_desktop/results/耦合协调度分析结果_20260329_160122。这一目录同时包含主结果、两个系统内结果、repro_inputs/、repro_outputs/和复现脚本,结构最完整。 - 主结果工作簿
耦合协调度分析结果.xlsx的真实工作表为系统1原始数据/系统2原始数据/耦合协调度结果/评价等级说明/系统1标准化数据/系统2标准化数据/耦合度C/协调指数T/协调等级/系统间权重/方法说明。论文中的表题应按这组真实中文 sheet 名落地,而不是泛化成“主结果工作表”。 - 两个系统内结果文件分别为
系统1_方差法结果.xlsx与系统2_方差法结果.xlsx,其真实工作表均为原始数据/标准化数据/权重/得分/指标类型。如果正文要解释系统内赋权过程,应优先引用这两本子结果簿,而不是只看主结果簿。 - 当前真实图文件稳定为
system_scores_comparison.png、coordination_heatmap.png、coordination_level_distribution.png。它们直接位于结果目录根部,同时repro_outputs/里还会再生成同名副本,因此论文引用时建议统一采用主目录根部文件,避免重复路径带来的图号混乱。 - 当前复现脚本为
repro_template_20260329_160122.py,脚本明确采用FILE1 = 'repro_inputs/coupling_system1_sample.xlsx'与FILE2 = 'repro_inputs/coupling_system2_sample.xlsx'。这篇文档可以把repro_inputs/...作为标准复现输入路径直接写入方法附录。
13.3 全量强化补充
- 当前应锁定的主结果目录是
具体的算法/Coupling_desktop/results/耦合协调度分析结果_20260329_160122。主结果工作簿是具体的算法/Coupling_desktop/results/耦合协调度分析结果_20260329_160122/耦合协调度分析结果.xlsx。 - 主结果工作簿当前实际工作表为
系统1原始数据、系统2原始数据、耦合协调度结果、评价等级说明、系统1标准化数据、系统2标准化数据、耦合度C、协调指数T、协调等级、系统间权重、方法说明。这一本才是正文中报告系统对 \(C/T/D\) 和等级的主证据。 - 当前结果目录根部的三张主图为
具体的算法/Coupling_desktop/results/耦合协调度分析结果_20260329_160122/system_scores_comparison.png、coordination_heatmap.png、coordination_level_distribution.png。由于repro_outputs/下还会递归生成多套同名图片,图题引用时应明确绑定首层根目录文件。 - 两本系统内子结果簿分别是
具体的算法/Coupling_desktop/results/耦合协调度分析结果_20260329_160122/系统1_方差法结果.xlsx与具体的算法/Coupling_desktop/results/耦合协调度分析结果_20260329_160122/系统2_方差法结果.xlsx。需要修正旧文的一处泛化说法:当前磁盘上系统 1 子结果簿的工作表为原始数据、标准化数据、权重、得分、指标类型,而系统 2 子结果簿额外多出一张Charts_Index。因此不能简单说两本子结果簿完全同构。 - 当前复现脚本为
具体的算法/Coupling_desktop/results/耦合协调度分析结果_20260329_160122/repro_template_20260329_160122.py,脚本内真实输入口径为FILE1 = 'repro_inputs/coupling_system1_sample.xlsx'与FILE2 = 'repro_inputs/coupling_system2_sample.xlsx';对应输入副本位于首层repro_inputs/目录下。 - 当前目录下存在多层复现再生产物,例如
具体的算法/Coupling_desktop/results/耦合协调度分析结果_20260329_160122/repro_outputs/耦合协调度分析结果_20260329_162732/、162851/、163122/。这些目录都包含新的主工作簿、系统子结果簿和三张图。写文档时必须明确:160122是首层主结果,162732/162851/163122是重复执行 repro 后的多轮再生产物。
14. 软件实现核查补充(2026-07)
14.1 当前软件实现口径
本软件当前对应的源码目录为 具体的算法/Coupling_desktop,核心类为 core/coupling_calculator.py 中的 CouplingCalculator。当前主窗口保留的是“文件上传/加载示例”的标准流程:授权通过后进入 InputWidget,上传至少两个系统的数据,设置指标方向、系统内权重方法和系统间权重,然后执行耦合协调度分析。
源码中仍保留 ui/direct_score_widget.py 这种“使用已有得分”的历史组件,但 ui/main_window.py 当前主流程已移除该入口。面向用户说明时,不应把“已有得分粘贴输入”写成当前主界面可见流程,除非后续版本重新接入。
14.2 输入数据和界面参数
数据文件支持 Excel/CSV。每个系统的数据表要求第 1 列为评价对象名称,后续列为该系统的数值型指标。当前样例文件位于:
uploads/coupling_system1_sample.xlsxuploads/coupling_system1_sample.csvuploads/coupling_system2_sample.xlsxuploads/coupling_system2_sample.csv
界面流程包括:系统数量设置、系统数据上传、检查评价对象一致性、加载示例数据、下一步、指标方向和权重设置、开始分析。系统数量范围为 2 到 10。程序会要求至少两个系统有数据,并检查各系统评价对象是否一致。
指标方向支持 正向指标、负向指标、适度指标。适度指标可填写参考值;若未提供参考值,标准化器会按内部默认规则处理。系统内权重方法包括 方差法、熵权法、自定义权重。系统间权重支持 平均权重 和 自定义权重,用于协调指数 T 中的系统对归一化加权。
14.3 输出结果和图表解释
程序会在 results/耦合协调度分析结果_YYYYMMDD_HHMMSS/ 下生成独立结果目录,主结果文件通常为 耦合协调度分析结果.xlsx。主结果用于报告各对象、各系统对的 耦合度C、协调指数T、协调度D 和 协调等级。
当前主结果工作簿通常包括:耦合协调度结果、评价等级说明、各系统原始数据和标准化数据、耦合度C、协调指数T、协调等级、系统间权重、方法说明 等工作表。程序还会为每个系统额外导出 系统1_方差法结果.xlsx、系统2_熵权法结果.xlsx 或类似命名的系统内结果文件,文件名随系统内权重方法变化,常见 sheet 包括 原始数据、标准化数据、权重、得分、指标类型、参考值。
图表通常直接位于结果目录根部:
system_scores_comparison.png:各系统综合得分对比;coordination_heatmap.png:对象与系统对的协调度热力图;coordination_level_distribution.png:协调等级分布。
解释结果时,应先看 协调度D 和 协调等级,再回看 耦合度C 与 协调指数T。C 高只能说明两个系统得分相近或匹配度高,不必然说明发展水平高;D = sqrt(C*T) 同时受耦合关系和综合发展指数影响。
14.4 复现和源码对应关系
结果页提供结果展示和复现代码导出。复现脚本由 ui/results_widget.py 生成,会把系统输入复制到 repro_inputs/,并支持 --data 系统名=路径、--data-dir、--out-dir 等参数形式。历史结果目录中可能存在多轮 repro_outputs/ 再生产物;写报告时应区分首层人工运行结果和复现脚本再次运行产生的结果。
源码对应关系如下:
main.py:环境检查、软件插件路径、日志、授权通过后进入主界面、Matplotlib 字体配置。core/coupling_calculator.py:系统数据读取、标准化、方差法/熵权法/自定义权重、系统得分、耦合度、协调指数、协调度、等级、Excel 和图表导出。core/standardizer.py、core/coupling_standardizer.py:正向、负向、适度指标的标准化处理。ui/input_widget.py:当前主流程的数据上传、示例数据、对象一致性检查、指标方向、系统内权重、系统间权重和开始分析。ui/results_widget.py:结果展示、打开结果、导出复现代码。utils/excel_handler.py:主结果 Excel 的工作表组织和写入。utils/result_manager.py:结果目录和文件管理辅助。
14.5 适用边界和常见误读
耦合协调度适合比较多个系统之间的发展匹配程度,但不是因果检验。D 值的高低依赖指标体系、指标方向、系统内权重和系统间权重;不同权重方案下的结论可能发生变化。
不要把 耦合度C 单独解释为“发展好”。当两个系统都处于低得分但数值接近时,C 可能较高;此时需要结合 T 和 D 才能判断协调发展水平。若不同对象的 D 值接近,应报告为同一等级或相近水平,不宜过度放大名次差异。