package com.estate.expert.admin.component.fuzzy; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; /** * 模糊层次分析法(FAHP)评估请求参数 * *
该类封装了向模糊评估API发送请求所需的所有参数,用于进行模糊层次分析法评估。 * 模糊层次分析法是一种结合模糊数学和层次分析法的决策方法,适用于处理不确定性和主观判断。
* *主要用途:
*表示参与评估的因素数量,必须与index数组长度、membership_data矩阵行数、 * compare_matrix_data矩阵维度保持一致。
* *示例:如果评估"文明施工"、"高处作业"、"施工用电"、"作业脚手架"、"物料提升机与施工升降机" * 这5个因素,则n=5。
*/ @Builder.Default int n = 5; /** * 每个因素的名字数组 * *包含所有参与评估的因素名称,数组长度必须等于n。 * 这些因素名称将用于标识评估结果中各个因素的权重和风险等级。
* *格式示例:["文明施工", "高处作业", "施工用电", "作业脚手架", "物料提升机与施工升降机"]
* *常见因素类型:
*表示每个因素在各个风险等级上的隶属度,用于模糊数学计算。 * 矩阵的每一行对应一个因素,每一列对应一个风险等级。
* *风险等级说明(5个等级):
*示例:{{0.6917f, 0.2917f, 0.0166f, 0.0f, 0.0f}} * 表示该因素在可忽略风险上的隶属度为0.6917,在低风险上的隶属度为0.2917, * 在中等风险上的隶属度为0.0166,在高风险和不可接受风险上的隶属度为0。
* *约束条件:每行所有元素之和应等于1.0(隶属度归一化)
*/ float[][] membership_data; /** * 两两比较矩阵,维度为 n×n * *表示因素之间的相对重要性比较,用于层次分析法计算权重。 * 矩阵中元素a[i][j]表示第i个因素相对于第j个因素的重要性比值。
* *比较标度说明:
*矩阵特性:
*参与评估的专家人数,用于多专家决策的权重计算。 * 当num_experts > 1时,系统会对多个专家的判断进行综合处理。
* *使用场景:
*