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

article/2025/7/19 1:39:44

文章目录

  • 一、算法介绍
    • 1. 加权算术平均算子(WAA)
    • 2. 属性值归一化处理
  • 二、适用问题
  • 三、算法总结
    • 1. 步骤
  • 四、应用场景举例(企业评估)
    • 1. 建模构建决策矩阵
    • 2. 属性值归一化
    • 3. 对各个属性构造成对比较矩阵计算属性权重(层次分析法)
    • 4. 计算每个公司的WAA
  • 五、MATLAB代码
  • 六、实际案例
  • 七、论文案例片段(待完善)

多属性决策模型主要针对数学建模问题中的一些小的子问题进行求解,如果想直接使用请跳转至——
视频回顾

一、算法介绍

  多属性决策是现代决策科学的一个重要组成部分,它的理论和方法在工程设计、经济、管理和军事等诸多领域中有着广泛的应用,如:投资决策、项目评估、维修服务、武器系统性能评定、工厂选址、投标招标、产业部门发展排序和经济效益综合评价等.
  多属性决策的实质是利用已有的决策信息通过一定的方式对一组(有限个)备选方案进行排序或择优.它主要由两部分组成:
 (1)获取决策信息.决策信息一般包括两个方面的内容:属性权重和属性值。
 (2)通过一定的方式对决策信息进行集结并对方案进行排序和择优。信息集结方法有很多,本节只用加权算术平均(WAA)算子,就相当于计算加权平均数。

1. 加权算术平均算子(WAA)

在这里插入图片描述
在这里插入图片描述

2. 属性值归一化处理

在这里插入图片描述

  • 效益型
    在这里插入图片描述
  • 成本型
    在这里插入图片描述
  • 固定型、偏离型
    在这里插入图片描述
  • 区间型、偏离区间型
    在这里插入图片描述

二、适用问题

  • 面临多种方案时,根据多个属性及一定的标准选择某一种方案:
  • 例如:
  1. 银行根据多个属性对公司进行评估

三、算法总结

1. 步骤

  1. 建模构建决策矩阵
  2. 属性值归一化
  3. 对各个属性构造成对比较矩阵计算属性权重
  4. 计算每个公司的WAA

四、应用场景举例(企业评估)

在这里插入图片描述

1. 建模构建决策矩阵

划分各类属性指标的类型,并构建决策矩阵

2. 属性值归一化

根据属性指标类型,代入公式,进行归一化处理
在这里插入图片描述

3. 对各个属性构造成对比较矩阵计算属性权重(层次分析法)

可以参考层次分析法进行属性权重计算
在这里插入图片描述
在这里插入图片描述

4. 计算每个公司的WAA

在这里插入图片描述
在这里插入图片描述

五、MATLAB代码

代码是层次分析法的

disp('请输入判断矩阵A(n阶)');
A=input('A=');
[n,n]=size(A);
x=ones(n,100);
y=ones(n,100);
m=zeros(1,100);
m(1)=max(x(:,1));
y(:,1)=x(:,1);
x(:,2)=A*y(:,1);
m(2)=max(x(:,2));
y(:,2)=x(:,2)/m(2);
p=0.0001;i=2;k=abs(m(2)-m(1));
while  k>pi=i+1;x(:,i)=A*y(:,i-1);m(i)=max(x(:,i));y(:,i)=x(:,i)/m(i);k=abs(m(i)-m(i-1));
end
a=sum(y(:,i));
w=y(:,i)/a;
t=m(i);
disp(w);%以下是一致性检验
CI=(t-n)/(n-1);RI=[0 0 0.52 0.89 1.12 1.26 1.36 1.41 1.46 1.49 1.52 1.54 1.56 1.58 1.59];
CR=CI/RI(n);
if CR<0.10disp('此矩阵的一致性可以接受!');disp('CI=');disp(CI);disp('CR=');disp(CR);
end

六、实际案例

[1 3 3 3 3;1/3 1 1 1 1;
1/3 1 1 1 1;
1/3 1 1 1 1;
1/3 1 1 1 1;]

七、论文案例片段(待完善)


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

相关文章

多属性决策分析

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

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

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

离散模型——多属性决策

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

【C语言】my_strcmp字符串比较

1.思想&#xff1a;①.比较两个字符串涉及对两个字符串对应的字符逐个进行比较&#xff0c;直到发现不匹配为止&#xff0c;返回比较结果。 ②.strcmp函数实际上是对字符的ASCII码进行比较&#xff0c;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()–…

C语言中字符串之间的比较【char*】/【string】

在C/C语言中表示字符串的方式有两种&#xff1a; 1、char* a 2、string b 对于这两种方式各自之间比较又是怎么处理的呢&#xff1f; 我们知道&#xff0c;数值直接进行比较&#xff0c;直接用>、<、来判断。而对于一串字符这样比较对不对呢&#xff1f; 1、对于cha…

C语言中字符串比较

在 单片机串口实现字符串命令解析 这篇文章中分析了在串口通信中如何去解析字符串命令&#xff0c;这篇文章就来讨论下字符串比较的方法都有哪些&#xff1f; 说起比较运算&#xff0c;肯定第一时间想到了C语言中关于比较的相关运算符 “>、<、&#xff01;、>、<、…

【C语言】正确比较两个字符串

目录 两种常见的错误比较方法 &#xff08;1&#xff09;为什么两个字符串不能直接用大于小于号比较&#xff1f; &#xff08;2&#xff09;为什么不能用数组名直接比较 字符串比较大小的实质 两种比较字符串两种方法 &#xff08;1&#xff09;难的方法 &#xff08;2&…

课程设计:Java编写的基于KNN算法的手写数字识别软件

0x00 概述 本软件是使用Java语言编写的PC端图形界面程序&#xff0c;也支持命令行形式运行 主要功能为识别用户在软件内绘板上手写的数字 同时也支持使用给定的训练集批量识别符合本软件定义格式的手写数字&#xff08;该功能仅支持命令行形式使用&#xff09; 0x01 设计逻…

手写数字识别问题(5)——完结

经过接近15周的艰苦努力&#xff0c;毕业设计&#xff08;基于MATLAB的手写数字识别系统&#xff09;已经完结。 设计过程中遇到的部分问题可查阅博客&#xff1a; 手写数字识别问题&#xff08;1&#xff09;——关于MNIST数据集手写数字识别问题&#xff08;2&#xff09;—…

常用的OCR文字识别软件有哪些

随着大家办公需求的增加&#xff0c;办公软件如雨后春笋般纷纷面世&#xff0c;旨在提高大家的工作效率&#xff0c;OCR文字识别软件便是不可缺少的办公软件之一。那么&#xff0c;有哪些专业又好用的OCR文字识别软件呢&#xff1f;小编来为大家推荐几款&#xff0c;以供参考。…

安卓实现扫一扫识别数字

本文已授权微信公众号&#xff1a;鸿洋&#xff08;hongyangAndroid&#xff09;原创首发。 公司业务需求&#xff0c;需要做手机号码的识别。所以有了此篇文章&#xff0c;现在就将实现过程分享给大家。 1.准备工作 首先实现识别数字等字符&#xff0c;我们要知道需要采用OC…

ABBYY FineReader15最新版图片文字识别转换软件

在日常生活中&#xff0c;我们会遇到需要将各种文字、图片、扫描图片等转换为文字的情况。想要轻松解决这些问题&#xff0c;需要使用到OCR文字识别。但对于许多新手来说&#xff0c;OCR文字识别是陌生的。今天小编就给大家介绍一下&#xff0c;OCR文字识别怎么使用&#xff0c…