matlab实现决策矩阵规范化(多属性决策)

article/2025/7/19 0:25:15

matlab实现决策矩阵规范化(多属性决策)

一般来说,不同的决策变量量纲也不同,规范化可以消除量纲对最终结果的影响,使不同变量具有可比性。

假设决策矩阵为 A = ( a i j ) m × n A=({a_{ij}})_{m×n} A=(aij)m×n, 规范化矩阵为 R = ( r i j ) m × n R=({r_{ij}})_{m×n} R=(rij)m×n, 对于效益性指标和成本型指标可以按下列公式转化。

首先, 对于同一属性,找出所有方案中这一指标值的最大值 a m a x a_{max} amax和最小值 a m i n a_{min} amin

对于效益性指标(越大越好)

对于效益性指标,按照下列公式进行规范化处理:
r i j = ( a i j − a m i n ) / ( a m a x − a m i n ) r_{ij}=(a_{ij}-a_{min})/(a_{max}-a_{min}) rij=(aijamin)/(amaxamin)

对于成本型指标(越小越好):

对于成本型指标,按照下列公式进行规范化处理:
r i j = ( a m a x − a i j ) / ( a m a x − a m i n ) r_{ij}=(a_{max}-a_{ij})/(a_{max}-a_{min}) rij=(amaxaij)/(amaxamin)

matlab 实现

如下图所示,P1、P2、P3、P4表示四个不同的方案,Q1~Q8为8个不同的指标,假设8个指标均为效益性矩阵。
P1、P2、P3、P4为四个不同的方案,Q1~Q8为8个不同的指标
则决策矩阵可表示为:

A=[46.5 56.0 42.7 29.8 35.6 27.6 23.4 41.5;36.8 51.0 46.5 45.6 49.5 70.4 35.4 35.7;62.1 48.7 52.6 46.8 42.9 54.7 42.9 26.4;50.0 33.5 29.8 26.7 18.6 57.1 38.2 52.6];

对于属性 Q 1 Q_1 Q1,四个方案中的最大值 a m a x , 1 = 62.1 a_{max ,1}=62.1 amax,1=62.1,最小值为 a m i n , 1 = 36.8 a_{min,1}=36.8 amin,1=36.8,则对于规范化矩阵
r 11 = ( a 11 − a m i n , 1 ) / ( a m a x , 1 − a m i n , 1 ) = 0.3834 r_{11}=(a_{11}-a_{min,1})/(a_{max,1}-a_{min,1})=0.3834 r11=(a11amin,1)/(amax,1amin,1)=0.3834
以此类推。

matlab代码如下:

A=[46.5 56.0 42.7 29.8 35.6 27.6 23.4 41.5;36.8 51.0 46.5 45.6 49.5 70.4 35.4 35.7;62.1 48.7 52.6 46.8 42.9 54.7 42.9 26.4;50.0 33.5 29.8 26.7 18.6 57.1 38.2 52.6];
min_a=min(A);%求每一列的最小值
max_a=max(A);
deta_a=max_a-min_a;
for i=1:size(A,1)for j=1:size(A,2)B(i,j)=(A(i,j)-min_a(j))/deta_a(j);end
end

对于其他类型的指标如区间型等,可参考https://blog.csdn.net/weixin_40108753/article/details/81222072
https://www.cnblogs.com/Qling/p/9295414.html


http://chatgpt.dhexx.cn/article/yUEw249x.shtml

相关文章

数学模型-多属性决策

数学模型-多属性决策 多属性决策是现代决策科学的一个重要组成部分,它 的理论和方法在工程设计、经济、管理和军事等诸多领域 中有着广泛的应用,如:投资决策、项目评估、维修服务、 武器系统性能评定、工厂选址、投标 招标、产业 部门发展 排序和经济效益综合评价等.多…

多属性决策模型详解(matlab)

多属性决策简介 多属性决策是现代决策科学的一个重要组成部分,它的理论和方法在工程设计、经济、管理和军事等诸多领域中有着广泛的应用,如:投资决策、项目评估、维修服务、武器系统性能评定、工厂选址、投标招标、产业部门发展排序和经济效…

数模(02)---多属性决策模型

matlab---多属性决策模型 加权算术平均算子属性值的归一化处理多属性决策模型举例 多属性决策的实质是利用已有的决策信息通过一定的方式对一组(有限个)备选方案进行排序或择优。它主要由2部分组成: 获取决策信息。 决策信息一般包括两…

Matlab:数模02-多属性决策模型

文章目录: 加权算术平均算子属性化的归一化处理多属性决策模型实例 加权算术平均算子 属性化的归一化处理 多属性决策模型实例 首先我们要判断u1~u5的属性值都对应着什么。一般而言,我们的属性值要么是效益型,要么是成本型。我们作…

多属性决策模型-matlab实现

多属性决策模型-matlab实现 属性集合决策矩阵评价指标类型的一致化处理决策矩阵标准化 属性权重信息熵法动态加权函数的设定1.分段变幂函数2.偏大型正态分布函数3.S型分布函数 综合方法简单加权和法(首选)加权积法接近理想解的偏好排序法 方案选取代码实现归一化函数综合方法函…

多属性决策(MCDM)

多属性决策(MCDM) 指的是利用已有的决策信息通过移动的方式对一组(有限个)备选方案进行排序或者择优。 属性:备选方案的特征、品质或性能参数 包括属性权重和属性值 对决策信息进行集结: 加权算术平均算子(WAA)加权几何平均算…

多属性决策

多属性决策(有限方案多目标决策),实现较好的数据预处理 由决策变量选择对应的决策形式 离散型 进行分析评价的目的是对方案进行排序 连续型 从非劣解集中获取偏好解 数据预处理 遵循非量纲化、归一化属性值的定性等级 最好、很好、好、较…

【数学建模】多属性决策模型(评价与决策)

文章目录 一、算法介绍1. 加权算术平均算子(WAA)2. 属性值归一化处理 二、适用问题三、算法总结1. 步骤 四、应用场景举例(企业评估)1. 建模构建决策矩阵2. 属性值归一化3. 对各个属性构造成对比较矩阵计算属性权重(层…

多属性决策分析

【 1. 多属性决策分析简介 】 实质: 利用已有的决策信息通过一定的方式对一组(有限个)备选方案进行排序或择优。组成: (l) 获取决策信息。决策信息一般包括两个方面的内容:属性权重和属性值(属性值主要有三种形式:实数、区间数和…

机器学习(MACHINE LEARNING)多属性决策模型

文章目录 1 多属性决策概念2 加权算术平均算子3 属性值归一化处理4 例子 1 多属性决策概念 首先,什么是多属性决策呢,它指的是利用已有的决策信息通过移动的方式对一组(有限个)备选方案进行排序或者择优。它的主要组成部分有如下…

离散模型——多属性决策

数学模型 7.1 P233 目录 多属性决策 定义: 第一步:确定决策矩阵并标准化 1)确定决策矩阵: 2)决策矩阵标准化: 第二步:确定属性权重 第三步:综合方法 1)将决策矩阵…

【C语言】my_strcmp字符串比较

1.思想:①.比较两个字符串涉及对两个字符串对应的字符逐个进行比较,直到发现不匹配为止,返回比较结果。 ②.strcmp函数实际上是对字符的ASCII码进行比较,strcmp函数最多比较到其中一个字符串遇到\0为止。 2.函数原型如下&#xf…

C/C++编程笔记:C语言字符串比较函数,超详细,值得收藏!

void *memset(void *dest, int c, size_t count); 将dest前面count个字符置为字符c. 返回dest的值. void *memmove(void *dest, const void *src, size_t count); 从src复制count字节的字符到dest. 如果src和dest出现重叠, 函数会自动处理. 返回dest的值. void *memcpy(voi…

【c语言】字符串比较 | API仿真

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; 给大家跳段街舞感谢支持&#xff01;ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ …

C/C++中比较字符串的方法

一、strcmp函数 适用对象 char*类型字符串 函数介绍 strcmp函数是cstring库中的函数&#xff0c;包含在string.h头文件中 用法 strcmp的两个参数都是char*类型&#xff0c;将要比较的字符串传入即可&#xff0c;根据返回值得到比较结果 举例 二、compare()函数 适用对象…

【c语言】字符串比较

独立实现标准字符串库的strcmp函数&#xff0c;即字符串比较函数&#xff0c;从键盘输入两个字符串&#xff0c;按字典序比较大小&#xff0c;前者大于后者输出1&#xff0c;前者小于后者输出-1&#xff0c;两者相等输出0。 样例输入: apple one 样例输出: -1 样例输入: hello…

C语言 - 比较字符串大小

程序源码 #include <stdio.h> int mStrcpy(char *s, char *s1, int len); int main() {char str[2][20];int i, j;printf("请输入2个字符串&#xff01;\n");for(i0; i<2; i)gets(str[i]);printf("字符串大小比较结果&#xff1a;%d\n", mStrcpy…

c语言比较两个字符串是否相等strcmp

c语言提供了几个标准库函数&#xff0c;可以比较两个字符串是否相同。以下是用strcmp()函数比较字符串的一个例子&#xff1a; #include <stdio.h> #include <string.h> int main(void) {char str_1[] "abc"; char str_2[] "abc";char str_3…

(c语言)比较三个字符串的大小

问题描述&#xff1a; 比较三个字符串的大小&#xff0c;并且按从小到大的顺序输出。 程序分析&#xff1a; 1.在写这个程序的时候&#xff0c;主要是写了一个swap函数&#xff0c;调用了标准库函数中的strcmp来实现的。 2.在写swap这个函数的时候将函数参数设置为两个二级…

c语言怎么进行字符串比较,c语言怎么进行字符串比较

比较方法:1、bcmp(),比较字符串的前n个字节是否相等;2、strcmp(),区分大小写的比较字符串;3、stricmp(),不区分大小写的比较字符串;4、strncmp()或strnicmp(),区分大小写的比较字符串的前n个字符。 本教程操作环境:windows7系统、c99版本、Dell G3电脑。 使用bcmp()–…