DEMATEL-ISM构建飞行员安全能力结构模型:从因果关系到层级递阶
一个让我憋了很久的疑问飞行员的“安全能力”到底是什么技术好、起落多、考试全过都不等于安全能力强。真正把这个问题想清楚是我在重新梳理课题模型时才有的感觉——答案藏在因素之间的“关系”里。这个课题从文献调研到模型稳定前后做了大半年核心成果就是一套用DEMATEL-ISM法搭起来的民航飞行员综合安全能力结构模型。说白了不追求给飞行员直接打分而是回答一个更底层的问题飞行员的安全能力由哪些因素构成因素之间谁影响谁、谁在底层、谁在表层。熟悉安全管理或做人为因素研究的朋友以及航空公司安监、训练口线的同事都能从这套思路里找到能直接落地的管理切入点。1. 为什么偏偏是DEMATEL和ISM的组合——方法选择的底层逻辑1.1 传统评价法的问题因素不是并列的前几年跟人聊飞行员安全能力评价很多人第一反应是“建指标体系、算权重、打分”。AHP层次分析法、模糊综合评价、熵权法都是这么干的。这些方法有个共同前提把各个因素当成并列关系算权重然后加权求和。但飞行安全领域的人为因素模型早就告诉我们事情没那么简单。比如情景意识差往往不是孤立出现的。它可能由疲劳引起也可能因为注意力分配不合理还可能跟安全意识淡薄有关。反过来情景意识差又会导致决策错误进而引发操纵失误。因素之间是真正的因果关系网络有直接作用、间接传递、甚至循环反馈。你把它压扁成“并列指标”相当于把一张网折成一根绳子信息损失太多。我当时做因素重要性分析时也试过单纯问卷统计结果只能看出“哪些因素重要”看不出“它们怎么互相影响”。而安全管理恰恰需要知道后者——因为你不可能同时发力改所有因素得先找到源头从源头下手。这就是我开始认真考虑系统结构模型的直接原因。1.2 DEMATEL管因果网络ISM管层级骨架DEMATEL决策试验与评价实验法和ISM解释结构模型法单拎出来都不算新方法但组合起来正好补上对方的缺口。DEMATEL的核心输出是把专家对各因素之间影响强度的判断转化成一个综合影响矩阵。它能告诉你两件事一是每个因素“影响别人”和“被别人影响”的程度二是哪些因素是“原因型”哪些是“结果型”。打个比方它像画一张朋友圈关系图能看出谁是意见领袖、谁是被带动的人。ISM则更进一步它把因素之间的影响路径整理成一个有向递阶结构——谁在底层、谁在中间、谁在表层。这相当于把关系图里那些绕来绕去的线捋直呈现出“根源因素通过哪些中间因素最终体现在哪些表面因素”的完整链条。单独用DEMATEL你能看到因果但画不出层级单独用ISM你能分层但输入矩阵的构造很依赖主观判断。两者配套正好承担“识别关系”和“建立结构”两个任务逻辑闭环。我后来跟同行讨论时经常说DEMATEL负责把关系摸清楚ISM负责把结构摆正少一个都不完整。1.3 两个方法串起来的接口这两个方法串联其实非常自然。DEMATEL最后会产出一个综合影响矩阵TT里面每个元素代表一个因素对另一个因素的综合影响强度。ISM需要的是一个邻接矩阵——因素之间有没有影响关系、方向如何。中间的转换办法很简单设定一个阈值λT矩阵里大于等于λ的元素记为1小于λ的记为0这个0-1矩阵就是ISM的邻接矩阵。接口只有这一个但恰恰是这个接口最容易出问题。λ定大了关系断太多模型变成孤岛λ定小了全都有关系分层分不出来。这个坑我放到第4章专门讲这里先记住一句话DEMATEL-ISM组合的成败一半在数据一半在阈值。2. 飞行员综合安全能力要素库从文献、访谈到17个关键因素2.1 理论框架KSA加飞行运行特点做结构模型第一步不是算而是把“要素”找全。找不全后面算得再漂亮也没用。我当时搭建要素库用的是“KSA扩展框架”。KSA是经典的胜任力理论知识Knowledge、技能Skill、态度Attitude。但直接套用会漏掉飞行员这个职业非常特殊的两类东西一是生理状态二是机组成员之间的协作。于是我在KSA基础上加入了“生理与心理状态”和“团队与自我管理”两个维度。对照民航业常用的人因分析框架比如SHEL模型软件-硬件-环境-人和HFACS人因分析与分类系统重点提取与“人的安全表现”直接相关的因素。文献来源覆盖了国内外人为因素期刊、中国民航的飞行员训练体系相关研究、以及CRM机组资源管理的资料。这一步的目的是确保要素不脱离理论根基也不脱离实际运行场景。后来跟教员访谈时他们提得最多的“注意力分配”“决策压力”等问题果然都落在我预留的维度里。2.2 两轮德尔菲怎么筛出17项要素库初稿我列出了27项太碎了必须筛。筛选用的是德尔菲法实际操作分两轮第一轮把27项因素做成问卷发给专家组打分。专家构成比较关键我当时一共找了21位机长教员6人、民航院校教授4人、航空公司安监部门4人、航医3人、心理测评专家2人、训练主管2人。选人标准是至少10年相关经验保证覆盖运行、管理、医学、心理学不同视角避免单一视角把某类因素捧得过高。筛选标准定为两条重要性评分均值不低于4.05点量表变异系数不高于0.25。变异系数反映专家意见分歧度超过0.25说明大家对这条因素的理解差异太大要么定义模糊要么确实不是关键因素。第一轮筛完剩22项同时把个别表述模糊的因素重新界定后发回第二轮。两轮之后专家协调系数Kendalls W约为0.42p值小于0.01说明专家意见开始收敛最终保留17项。2.3 最终纳入模型的要素清单17项要素分为五个类别清楚列出来给后面用编号要素名称类别简要定义F1安全意识水平安全态度意识对运行环境中风险状态的警觉与敏感程度F2安全态度与价值观安全态度意识对安全与效率冲突时的价值取向F3安全责任心安全态度意识对自身决策和行为后果承担责任的意愿F4飞行理论知识知识与技能航空原理、系统知识、法规程序等基础储备F5操纵技能水平知识与技能对飞机的操控能力杆舵量与配平的精细化程度F6程序执行能力知识与技能按标准操作程序执行各阶段任务的能力F7应急处置能力知识与技能面对非正常状态时的判断与处置能力F8生理状态管理生理与心理对疲劳、生物节律、身体不适的自我管理F9心理素质与抗压能力生理与心理在高压、突发情境下的情绪稳定水平F10情景意识能力认知与决策对飞机状态、环境信息与未来趋势的感知理解F11信息获取与加工能力认知与决策对仪表、通讯、气象等信息的接收与处理效率F12决策与判断能力认知与决策在不确定条件下做出合理选择的能力F13注意力分配能力认知与决策在多个任务源之间灵活调配注意资源的能力F14机组资源管理能力团队与自我管理整合机组人员的知识、资源和分工协作的能力F15沟通协调能力团队与自我管理与机组成员、管制、地面人员的信息沟通质量F16自我监控与反思能力团队与自我管理对自我状态、操作偏差的察觉与事后复盘能力F17持续学习能力团队与自我管理对新知识、新程序、新机型的吸收转化能力这个清单你自己做可以增删但有一件事必须坚持每个因素的定义必须能被飞行运行场景具体解释而不是学术黑话。比如“信息获取与加工”听起来务虚落到实际操作就是“你有没有漏听一句指令、有没有看错一个仪表”这样专家打分时才有共同的参照系。3. DEMATEL计算全流程从直接影响矩阵到因果图3.1 专家打分矩阵怎么建DEMATEL的输入是直接影响矩阵A。17个因素就得建一个17×17的矩阵行因素对列因素的影响强度。打分规则用0到4的整数0代表无影响、1弱影响、2中等影响、3强影响、4极强影响。对角线因素与自身比较统一填0。这里有个容易出错的地方专家填的是“因素i对因素j的直接影响”而不是“两个因素的相关性”。相关性是对称的影响是有方向的。你做问卷时必须反复提醒专家这个区别否则收回来的矩阵往往对称得离谱后面计算就会失真。21位专家各自打分后我取平均值合成一个最终的直接矩阵A。多人打分直接平均的粗暴处理在学术上有争议所以更稳妥的做法是先做一致性检验。我当时算了Kendall协调系数确认专家意见没有明显两极分化才开始合成。如果一致性太差需要安排专家背对背讨论后重新打硬着头皮平均只会把噪声带进模型。3.2 规范化与综合影响矩阵的推算逻辑直接影响矩阵A不能直接用要先规范化成X。规范化的标准做法是找出矩阵A的所有行和与所有列和取其中的最大值作为缩放因子sX A / s其中s max(行和最大值, 列和最大值)为什么选行和最大值而不是列和常规实践里行和更稳妥因为规范化后每行之和不超过1能保证后面矩阵级数收敛。你可以理解成把影响强度统一压缩到0到1之间让“间接影响”按照比例逐级衰减不会越算越爆炸。综合影响矩阵T的计算公式是T X X² X³ … X(I − X)⁻¹这个级数的直观含义很重要X是一次直接影响X²是“A影响B、B影响C”这种两步传递的间接影响X³是三步传递把所有步数的效应加起来就是“综合影响”。实际计算用矩阵求逆就行Excel里用MMULT和MINVERSE组合能算Python里直接numpy.linalg.inv代码很简短。我当时用Python验证过和Excel算出来的结果完全一致。3.3 中心度、原因度读什么综合影响矩阵T算出来后对每一行求和得到影响度D对每一列求和得到被影响度CD表示这个因素对所有其他因素的综合影响总量D大说明它在系统里是“施动方”。C表示所有其他因素对这个因素的综合影响总量C大说明它是“受动方”。M D C叫中心度表示这个因素在全系统中的参与程度数值越大越“枢纽”。R D − C叫原因度。R大于0是原因因素偏向驱动型R小于0是结果因素偏向输出型。原因度这个概念是整个模型最有管理价值的部分。原因因素是“因”你撬动它能带动一串结果因素结果因素是“果”你直接改它往往事倍功半——除非它是可以单独训练的技能动作。3.4 计算结果里最有意思的三个信号我把我这批示例数据整理成了下表方便看规律不同课题数据会不同关键是读法编号影响度D被影响度C中心度M原因度RF1 安全意识水平1.3820.9142.2960.468F2 安全态度与价值观1.2070.8872.0940.320F3 安全责任心1.1060.7921.8980.314F4 飞行理论知识1.0210.9631.9840.058F5 操纵技能水平0.9121.4212.333-0.509F6 程序执行能力0.8911.2962.187-0.405F7 应急处置能力0.8761.4472.323-0.571F8 生理状态管理0.9380.9021.8400.036F9 心理素质与抗压能力0.9541.1022.056-0.148F10 情景意识能力1.1241.2872.411-0.163F11 信息获取与加工能力1.0541.1082.162-0.054F12 决策与判断能力1.1961.2422.438-0.046F13 注意力分配能力0.9871.0342.021-0.047F14 机组资源管理能力0.9781.0262.004-0.048F15 沟通协调能力0.9071.0141.921-0.107F16 自我监控与反思能力1.1480.7931.9410.355F17 持续学习能力1.0110.6571.6680.354三个信号值得展开第一中心度最高的几个因素集中在认知与决策系统——决策判断2.438、情景意识2.411这说明中间层的认知能力是全网络的交通枢纽。你改进它可以从中间向两端扩散你不改进它上游再强的安全意愿也会打折扣。第二原因度最正的五个因素全部来自“安全态度意识”和“自我管理”安全意识、自我监控、持续学习、安全态度、安全责任心。这是典型的“冰山底部”因素平时藏在水下看不见但整个系统由它们驱动。第三原因度最负的是操纵技能-0.509、应急处置-0.571、程序执行-0.405。它们不是不重要中心度都很高但它们是结果变量——上游的情景意识、决策能力、注意力分配出了问题最后才会暴露在操纵层面。这解释了一个行业里常见现象技术考核年年合格事故还是出在非技术能力的缺陷上。4. 衔接的关键一步阈值λ怎么定才能让ISM分层有意义4.1 阈值定错了模型就废了DEMATEL算出来的综合影响矩阵T几乎填满了所有格子——任何两个因素之间多多少少都有影响。如果全部搬到ISM里邻接矩阵会密到看不出结构每个因素都指向所有因素分层根本没意义。所以必须把弱影响过滤掉只保留“真正重要”的影响关系这个过滤操作就是设阈值λ。有一句内部判断口诀我常跟朋友说λ是结构的“分辨率”。调得太低画面全是噪点调得太高关键细节被抹掉。我第一次跑ISM时按经验随手取了T矩阵的均值当λ结果分层只有3层中间层一口气挂进去8个因素等于没分层。后来我把λ调高到均值加一倍标准差分层明显清晰但同时又出现了两个孤立因素怎么解释都牵强。阈值不是查表查出来的是要靠试算来定的。4.2 三种常用取法目前文献里常用的是三类取法各有适用条件第一种是取综合影响矩阵T的全体元素均值λ μ。这个值最保守保留的关系最多适合因素间影响本就稀疏的数据。如果T矩阵密度已经很高用它当阈值基本等于没过滤。第二种是取均值加标准差λ μ σ。这个值过滤力度更强适合T矩阵元素整体偏大、分布均匀的数据。我用下来的经验是这个取法的分层效果大多数情况比纯均值好但要是σ特别大可能把一些有用的弱联系切掉。第三种是结合灵敏度分析在μ到μ1.5σ的区间内试算多个阈值比较每种阈值下模型的可解释性和分层有效性。这也是我推荐的做法。虽然工作量大一点但能避开“拍脑袋定阈值”的质疑答辩和审稿时也站得住脚。这里有一个经验值可以参考阈值选完后邻接矩阵的密度非零元素占比最好控制在15%到35%之间。低于10%模型碎高于40%模型糊都不用看别的指标先在这个区间里找。4.3 我用敏感性分析选λ的过程我这批数据的T矩阵均值μ约0.082标准差σ约0.041最大值约0.327。我取了三个候选值λ0.082即μ邻接矩阵密度约51%ISM只能分出3层中间层臃肿很多跨度很大的因素被强行拉平到同一层解释起来非常别扭。λ0.123即μσ密度约23%ISM分出6个原始层级经过逻辑合并后变成4层要素归位符合飞行运行实际这个就是最终选中的。λ0.164即μ2σ密度只有约9%关系断裂明显出现3个孤立点模型解释性反而更差。最终取λ≈0.12。这里的技巧是把每一层的因素名单拿出来逐个看问一句“这个因素放在这一层运行逻辑上讲不讲得通”。如果某个因素明明应该很底层却因为阈值太大被孤立出来那说明λ偏高了如果所有因素像一个班里的学生都挤在同一排说明λ偏低了。模型是给管理用的数学上再正确解释不通就没价值。5. ISM分层从可达矩阵到四层递阶结构模型5.1 可达矩阵怎么算ISM的起点是邻接矩阵先在T矩阵上施加阈值得到0-1邻接矩阵A。然后加单位阵I得到B A I这里的意图是把“自己影响自己”也纳入路径计算——如果你不能通过自己这个中转站很多回路路径就算不出来。接下来对B做布尔幂运算反复乘以自己直到某一步的乘积矩阵与前一步完全相同即M^k M^(k1)这个稳定下来的矩阵就是可达矩阵M。可达矩阵里第i行第j列为1表示因素i通过零步、一步或多步链式传递最终能影响到因素j。这个过程Excel能算但17×17矩阵迭代几十次会很痛苦建议直接用Python或MATLAB跑循环一个脚本就够。5.2 层级提取的标准算法层级提取的逻辑一句话能概括逐层把“到达不了任何新节点”的因素抽出来。对每个因素定义两个集合可达集R(nᵢ)从因素i出发能够到达的所有因素的集合包括自身。先行集A(nᵢ)所有能到达因素i的因素集合包括自身。判定规则是如果R(nᵢ) R(nᵢ) ∩ A(nᵢ)说明这个因素能到达的每个因素都能反过来到达它它没有任何“单向向下的输出链”因此属于当前最高层。把满足条件的所有因素从矩阵中剔除再对剩余矩阵重复上面的操作就能依次得到第1层、第2层、第3层……这里最容易绕晕的是ISM一层一层提取的是“表层”最后剩下的是根源层。很多人刚上手会以为先找到的是“底层”其实恰好相反。表层因素是最先被剥离的根源底层反而是最后剩下的。5.3 四层结构模型的解读我这批示例数据经过层级提取合并后的递阶结构是四层第1层表层直接因素F5操纵技能水平、F6程序执行能力、F7应急处置能力第2层中层能力表现F9心理素质与抗压能力、F10情景意识能力、F11信息获取与加工能力、F12决策与判断能力、F13注意力分配能力、F14机组资源管理能力、F15沟通协调能力第3层中层支撑因素F8生理状态管理第4层深层根源因素F1安全意识水平、F2安全态度与价值观、F3安全责任心、F4飞行理论知识、F16自我监控与反思能力、F17持续学习能力注意第2层里有一个强连通现象F11信息获取与加工、F13注意力分配之间构成双向回路谁也无法完全脱离对方单独存在。这在实际运行里很合理——你注意力分配不好信息就抓不全信息抓不全注意资源又不知道该往哪放。ISM允许这种回路存在遇到强连通子集应该按一个整体来解读而不是硬拆。从整体看这套结构的核心逻辑是深层根源因素态度、价值观、责任心、自我监控通过中层因素情景意识、决策、注意分配传导最终体现为表层技能表现操纵、程序、应急处置。我拿到这个结果之后脑子里原本模糊的很多问题一下子有了线索为什么抓纪律、抓态度这么重要因为你抓的态度处在第4层它能顺着链条辐射到所有表层因素。6. 模型拿到管理现场怎么用6.1 表层因素别只靠增加训练时数表层因素操纵技能、程序执行、应急处置最容易被看见所以传统安全管理的做法是这类事件多了就加训练量、加检查频次。模型给出的提示恰恰相反——表层因素是结果变量光盯着结果变量练相当于给锅盖上盖子却不去关火。我并不是说模拟机训练不重要。操纵技能的自动化程度直接决定认知资源能不能释放给更高层级的判断和决策所以必须练。但结合模型看技能训练只能解决“会不会”的问题解决不了“想没想到、判断对不对、状态稳不稳”。真正有效的做法是用FOQA监控数据倒推把表层事件归类到中层和深层因素上——比如某类超限事件反复出现根因究竟在注意分配、情景意识还是更底层的安全意识找到归属再决定训练重点。不做这层归因训练就是盲人摸象。6.2 中层因素靠选拔和状态监测第2层和第3层是我个人认为投入产出比最高的一层。情景意识、决策能力、注意分配、心理素质这些因素有很强的可测性和可训练性而且受深层因素影响直接状态波动也大。从选拔端可以在招飞和晋级评估里加入心理胜任力测评维度重点看抗压、注意资源调配、风险倾向。从运行端疲劳和情绪的管理不能只靠规章限时还得靠航医监测和班组层面的互查。举个例子如果第3层的生理状态管理F8不稳定第2层的情景意识和注意分配立刻跟着掉最后第1层的程序执行就出问题。这条链条在模型中是一环扣一环的任何一环断了都传导到表面。训练端更有意思。知道了注意力分配与信息加工是强连通回路你在设计CRM训练或模拟机科目时就不该把它们拆成两个孤立模块单练而要设计成“在有限注意力资源下完成多信息源加工”的综合场景。这种基于结构关系的训练设计是模型给的独特红利。6.3 深层因素才是战略杠杆点模型底层集中了六个因素安全意识、安全态度、安全责任心、理论知识、自我监控、持续学习。其中除了理论知识偏“硬知识储备”其余五个全属于文化、价值观、习惯养成层面。这类因素的特征是改进周期长、效果不直接可见但只要变了整个系统的传导效率会整体抬升。深层因素的改善靠什么不是贴标语、开安全大会而是靠长期的组织行为。我总结成四条运行数据驱动的事件反馈机制让飞行员从真实事件中复盘而不是空对空讲道理公正文化飞行员上报风险不担心被处罚安全意识才会真实生长学习和复盘制度化飞行后讲评、特别事件分析常态化自我监控和持续学习才能落地管理层自己的行为示范管理者如果只重运行正点率而轻安全投入态度层就会传递出矛盾信号。深层因素不满意中层和表层练得再勤也是“用新瓶子装老酒”。反过来深层因素一旦有起色中层和表层会跟着自动改善——这是这个递阶结构最值钱的管理逻辑。6.4 一次复训方案的调整体会我曾经参与过一家公司年度复训方案的讨论。原方案的问题很典型训练时数大面积压在操纵动作和处置程序上认知决策和情景意识环节不足安全态度环节几乎只有一堂讲座。我把结构模型的层级逻辑讲给训练主管听表层技能需要保底训练但中层认知决策能力才是把训练效果转化为安全绩效的传导层深层态度如果只有灌输没有机制讲座结束就归零。方案做了一轮调整大约3成学时被重定向到基于模拟机的非正常状态决策训练和基于真实案例的复盘工作坊。一个考核周期过去虽然单靠一个周期不能说因果成立但有两个变化非常明显一是训练满意度和风险上报数量往积极方向走二是监管事件分类里与“决策不当”相关的暴露情况没有再出现反弹。这个结果让我更确信一件事模型的价值不在于学术自嗨而在于它能告诉你资源该往哪里放。做完整个课题我最深的体会是安全能力并不是单项技能的总和而是态度、认知、行为彼此耦合的分层结构。表层因素是最终的安全表现中层因素是信息处理和协作的能力深层因素是价值观和动机。管理上按层施策先抓深层和杠杆层再谈表层考核指标效果会完全不一样。后续这套模型还可以往两个方向扩展一是积累更多运行数据后用贝叶斯网络做动态推理给每个飞行员做个性化的能力画像二是接入QAR超限事件数据把模型从专家主观判断逐步校准到客观运行数据上。如果你正在做类似的课题最值得花时间的两个点一是专家问卷的设计质量二是阈值λ的敏感性分析这两步打磨好了模型就稳了一大半。