2017年五一杯数学建模C题宜居城市问题值解题全过程文档及程序

2017年五一杯数学建模

C题 宜居城市问题

原题再现

  城市宜居性是当前城市科学研究领域的热点议题之一,也是政府和城市居民密切关注的焦点。建设宜居城市已成为现阶段我国城市发展的重要目标,对提升城市居民生活质量、完善城市功能和提高城市运行效率具有重要意义。
  我国宜居城市的排名每年都是热门话题,不同机构对宜居城市的排名结果也不尽相同。2016 年,中科院发布了《中国宜居城市研究报告》,在被调查的 40 个城市中,排名前十的城市分别为:青岛、昆明、三亚、大连、威海、苏州、珠海、厦门、深圳、重庆。而美世人力资源咨询公司(William Mercer)公布的 2016 年全球宜居城市排行中大陆前十名分别为上海、北京、广州、成都、南京和深圳(并列)、西安、重庆、青岛、沈阳、吉林。宜居城市评价指标体系不同,宜居城市排名结果也会发生变化。一座宜居的城市不仅应具备物质丰足、生活便利等条件,而且应注重人们的切身感受。人们选择留在某个城市,不单是为了生存,更是寄托了自己的梦想与希望。对很多人来说,衡量是否宜居或许就是八个字:衣食住行、安居乐业。
  请你查阅相关资料和数据,结合数据特点,回答下列问题:
  1、 通过查阅资料,筛选评价宜居城市的主要指标,并阐述这些指标的合理性。根据所筛选的主要指标,建立评价宜居城市的数学模型。
  2、 利用你构建的评价宜居城市的数学模型,对淮海经济区内的 8 个城市(宿迁、连云港、宿州、商丘、济宁、枣庄、徐州、淮北)进行合理性研究,给出宜居城市排名。
  3、 以问题 2 为例,定量分析你所建立的模型中,哪些评价指标的变化会对宜居城市排名产生显著的影响。
  4、 一些不确定性的因素(如突发自然灾害、房价大幅波动、宏观政策的重大调整等)会对宜居城市的某些指标产生重大影响。建立基于某些不确定性因素的评价宜居城市的数学模型,并重新讨论问题 2。
  5、 根据上述定量分析的结果,请有针对性地给出进一步提高徐州市宜居水平的政策建议。

整体求解过程概述(摘要)

  本文建立了宜居城市指标的筛选模型,评价模型,指标对评价敏感度模型,以及不稳定因素下的宜居城市评价模型。总体上,查阅资料得到了十八个评价指标,经过筛选后留下八个指标,接着就四省八地各统计局,地震局等相关部门给出的数据,对淮海经济区的八个城市进行了宜居城市评价,并给出了排名。通过指标对评价敏感度的分析,我们得出三个会对评价产生显著影响的指标,在此基础上,我们选择一种不稳定因素并计算其概率,将其和敏感度结合,代入评价模型,得到一个基于不稳定因素的评价模型。
  对于问题一和问题二,结合政治,经济,社会,环境,以及参考国家政策查阅得到指标体系,构建层次分析法中的判断矩阵,然后将权重大的几个提取出来,作为主要指标,接着利用神经网络做评价,先将指标结合已有的宜居城市评价打分机制建立标准体系,然后进行网络训练与仿真。再将淮海等地的数据代入就得到了宜居城市排名。
  对于问题三,通过利润敏感度分析法,分别设置较大变化和较小变化两类四种量变来求指标对于评价分数的敏感度。敏感度大的指标变化将导致评价分数显著变化从而使得宜居城市排名也发生显著变化。
  对于问题四,不确定因素多种多样,我们简化模型,认为不确定因素发生的概率都是一样的。于是我们通过查阅旱涝资料,利用泊松分布计算不确定因素发生的概率。因为较难建立不确定因素到底对指标产生如何的影响,我们假设不确定因素都将对指标产生负面的印象,降低指标,从而影响对宜居城市的评价。
  对于问题五,将前几问得到的结论结合徐州的评价情况。我们可以说徐州在敏感度不大的方面做得较好,同时在敏感度较大的几个指标上徐州应该做得更好,本文根据前面的问题针对性地为徐州政府提出了若干改进意见。

模型假设:

  1 假设选择的指标相互间影响不显著
  2 假设数据准确无误;
  3 假设不确定因素发生的概率都一样;
  4 假设不确定因素将使描述宜居城市的指标下降;
  5 假设每三十年发生的旱涝灾害数量符号泊松分布;
  6 假设发生了不稳定因素后八个城市都收到影响。

问题分析:

  问题一和问题二
  问题一要求我们查阅资料,得到评价宜居城市的指标,并以具备合理性的原则来筛选出若干主要指标,并根据主要指标建立一个评价宜居城市的模型。我们首先查找了官方的非行政性文件《宜居城市科学评价指标体系》[3]了解到宜居城市在政治,经济,社会,环境等方面定义。接着在《中国主要城市宜居性发展的地域差异研究》[4]中得到一些参考性指标。在这些参考指标中,有一些数据是较难得到的,我们结合第二问给出的四省八地,先后查阅了《江苏省统计年鉴》、《安徽省统计年鉴》、《河南省统计年鉴》、《山东省统计年鉴》等相关资料,检索并确定了得到了若干个可用于描述宜居城市的指标,如附录表 1。接下来通过合理的权重计算,提取出权重较大的几个指标,并判断其是否具有作为主要指标的合理性。我们再用筛选出的主要指标建议一个评价模型。
  问题二要求我们用评价模型合理性研究淮海经济区八地的宜居问题,并给出排名。我们只需将上一问得到的数据代入建立的评价模型中,将结果排名即可。
  问题三
  问题三要求以第二问为基础,定量分析评价模型中哪些评价指标变化会对宜居城市排名产生较大影响。由于我们上面已经筛选出主要指标,只需要控制变量,改变一个指标,其他指标不变,观察结果的变化就能反映出哪些评价指标对结果有较大影响。同时由于有八个城市,考虑建立一个小的检验模型,检验不同城市同一指标变化,结果的上下波动是否合理。
  问题四
  问题四给出条件,一些不确定因素的剧烈变动将使得宜居城市的某些指标产生重大影响,要求我们建立基于这些不确定性因素的评价模型,并重新讨论问题2。我们考虑先得到这些不稳定因素发生的概率,然后将敏感度转化为一个影响因素,通过概率、影响因素,再将其输入问题一中的评价模型,就得到在不确定因素下的评价模型。
  问题五
  问题五是对以上四个问题的总结,其要求我们针对性地给出提高徐州宜居水平的政策建议。由问题三可得到哪些指标对结果影响较大,这些指标应是徐州应当继续提高的,而由问题四可到到哪些指标的剧烈变化会对宜居评价产生较大影响,主要从这两方面去给出建议即可。

模型的建立与求解整体论文缩略图

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

全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

程序代码:(代码和文档not free)

C0 = ones(5);
C0(2,1) = 1;
C0(3,1) = 1;
C0(4,1) = 1;
C0(5,1) = 1;
for i = 1:1:5
for j = 2:1:5
if C0(i,1)>=C0(j,1)>=1
C0(i,j)=C0(i,1)-C0(j,1)+1;
else if C0(j,1)>C0(i,1)>=1
C0(i,j)=1/(C0(j,1)-C0(i,1)+1);
else if C0(i,1)>=1&&C0(j,1)<1
C0(i,j)=C0(i,1)+1/C0(j,1)-1;
else if C0(i,1)<1&&C0(j,1)>=1
C0(i,j)=1/(C0(j,1)+1/C0(i,1)-1);
else if C0(j,1)<=C0(i,1)<1
C0(i,j)=1/C0(j,1)-1/C0(i,1)-1;
else C0(i,j)=1/(1/C0(i,1)-1/C0(j,1)+1);
end
end
end
end
end
end
end
C1 = ones(4);
C1(2,1) = 1/9;
C1(3,1) = 1/9;
C1(4,1) = 1;
for i = 1:1:4
for j = 2:1:4
if C1(i,1)>=C1(j,1)>=1
C1(i,j)=C1(i,1)-C1(j,1)+1;
else if C1(j,1)>C1(i,1)>=1
C1(i,j)=1/(C1(j,1)-C1(i,1)+1);
else if C1(i,1)>=1&&C1(j,1)<1
C1(i,j)=C1(i,1)+1/C1(j,1)-1;
else if C1(i,1)<1&&C1(j,1)>=1
C1(i,j)=1/(C1(j,1)+1/C1(i,1)-1);
else if C1(j,1)<=C1(i,1)<1
C1(i,j)=1/C1(j,1)-1/C1(i,1)-1;
else C1(i,j)=1/(1/C1(i,1)-1/C1(j,1)+1);
end
end
end
end
end
end
end
C2 = ones(4);
C2(2,1) = 1/7;
C2(3,1) = 1/9;
C2(4,1) = 1;
for i = 1:1:4
for j = 2:1:4
if C2(i,1)>=C2(j,1)>=1
C2(i,j)=C2(i,1)-C2(j,1)+1;
else if C2(j,1)>C2(i,1)>=1
C2(i,j)=1/(C2(j,1)-C2(i,1)+1);
else if C2(i,1)>=1&&C2(j,1)<1
C2(i,j)=C2(i,1)+1/C2(j,1)-1;
else if C2(i,1)<1&&C2(j,1)>=1
C2(i,j)=1/(C2(j,1)+1/C2(i,1)-1);
else if C2(j,1)<=C2(i,1)<1
C2(i,j)=1/C2(j,1)-1/C2(i,1)-1;
else C2(i,j)=1/(1/C2(i,1)-1/C2(j,1)+1);
end
end
end
end
end
end
end
C4 = ones(3);
C4(2,1) = 7;
C4(3,1) = 9;
for i = 1:1:3
for j = 2:1:3
if C4(i,1)>=C4(j,1)>=1
C4(i,j)=C4(i,1)-C4(j,1)+1;
else if C4(j,1)>C4(i,1)>=1
C4(i,j)=1/(C4(j,1)-C4(i,1)+1);
else if C4(i,1)>=1&&C4(j,1)<1
C4(i,j)=C4(i,1)+1/C4(j,1)-1;
else if C4(i,1)<1&&C4(j,1)>=1
C4(i,j)=1/(C4(j,1)+1/C4(i,1)-1);
else if C4(j,1)<=C4(i,1)<1
C4(i,j)=1/C4(j,1)-1/C4(i,1)-1;
else C4(i,j)=1/(1/C4(i,1)-1/C4(j,1)+1);
end
end
end
end
end
end
end
A=C0;
[n,n]=size(A);
[V,D]=eig(A);
tempNum=D(1,1);
pos=1;
for h=1:n
if D(h,h)>tempNum
tempNum=D(h,h);
pos=h;
end
end
w=abs(V(:,pos));
w=w/sum(w);
t=D(pos,pos);
disp('准则层特征向量 w=');disp(w);disp('准则层最大特征根 t=');disp(t);
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 1.60 1.61 
CR=CI/RI(n);
if CR<0.10
disp('此矩阵的一致性可以接受!');
disp('CI=');disp(CI);
disp('CR=');disp(CR);
else disp('此矩阵的一致性验证失败,请重新进行评分!');
end
for i=1:n
G=eval([‘C’,num2str(i)]);
[m,m]=size(G);
[V,D]=eig(G);
tempNum=D(1,1);
pos=1;
for h=1:m
if D(h,h)>tempNum
tempNum=D(h,h);
pos=h;
end
end
eval( ['W',num2str(i),'=abs(V(:,pos))/sum(abs(V(:,pos)))']);
eval( ['T',num2str(i),'=D(pos,pos)']);
temp=D(pos,pos);
CI=(temp-m)/(m-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 1.60 1.61 1.615 1.62 1.63];
CR=CI/RI(m);
if CR<0.10
disp('此矩阵的一致性可以接受!');
else disp('此矩阵的一致性验证失败,请重新进行评分并在 clear 后重新
运行程序!');return;
end
eval( ['B',num2str(i),'=G']);
end
全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/190558.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2009年iMac装64位windows7及win10

2009年iMac装64位windows7及win10 Boot Camp没有“创建 Windows7 或更高版本的安装磁盘”选项 安装完Mac OS系统后&#xff0c;要制作Windows7安装U盘时才发现&#xff0c;Boot Camp没有“创建 Windows7 或更高版本的安装磁盘”选项&#xff0c;搜索到文章&#xff1a;修改Boo…

C语言——深入理解指针(2)

目录 1. 数组名 2. 指针访问数组 3. 一维数组的传参&#xff08;本质&#xff09; 4. 冒泡排序 5. 二级指针 6. 指针数组&#xff08;指针的数组&#xff09; 7. 指针数组模拟二维数组 1. 数组名 在之前的代码中我们使用指针访问过数组的内容。 int arr[10] {1,2,3,4…

xxljob学习笔记01(小滴课堂)

分布式调度xxl-job源码部署和数据库建立&#xff1a; 在idea中打开安装包&#xff1a; 创建数据库&#xff1a; 建表&#xff1a; 在项目里&#xff1a; 在navicat里运行语句即可&#xff1a; 修改数据库地址和用户名&#xff0c;密码&#xff1a; 配置令牌&#xff0c;不然谁…

Linux环境下自动化创建大量的账号

参考《鸟哥的Linux私房菜基础篇第四版》13.7.2节微调而成&#xff1a; 下面脚本的目的是为服务器的管理员自动化创建大量的账号&#xff0c;节省生命。 #!/bin/bash # This shell script will create amount of Linux login accounts for you. # 1. check the "accounta…

探索计算机视觉:深度学习与图像识别的融合

探索计算机视觉&#xff1a;深度学习与图像识别的融合 摘 要&#xff1a; 本文将探讨计算机视觉领域中的深度学习技术&#xff0c;并重点关注图像识别方面的应用。我们将介绍卷积神经网络&#xff08;CNN&#xff09;的原理、常用的图像数据集以及图像识别的实际应用场景&…

python环境搭建-yolo代码跑通-呕心沥血制作(告别报错no module named torch)

安装软件 安装过的可以查看有没有添加环境变量 好的! 我们发车! 如果你想方便快捷的跑通大型项目,那么必须安装以下两个软件: 1.pycharm2.anaconda对应作用: pycharm:专门用来跑通python项目的软件,相当于一个编辑器,可以debug调试,可以接受远程链接调试!anaconda:专…

【JavaEE初阶】浅谈进程

✏️✏️✏️今天正式进入JavaEE初阶的学习&#xff0c;给大家分享一下关于进程的一些基础知识。了解这部分内容&#xff0c;只是为后续多线程编程打好基础&#xff0c;因此进程部分的知识&#xff0c;不需要了解更加细节的内容。 清风的CSDN博客 &#x1f61b;&#x1f61b;&a…

Android之高级UI

系统ViewGroup原理解析 常见的布局容器: FrameLayout, LinearLayout,RelativeLayoout,GridLayout 后起之秀&#xff1a;ConstraintLayout,CoordinateLayout Linearlayout Overrideprotected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {if (mOrientation …

OpenGL 自学总结

前言&#xff1a; 本人是工作后才接触到的OpenGL&#xff0c;大学找工作的时候其实比较着急&#xff0c;就想着尽快有个着落。工作后才发现自己的兴趣点。同时也能感觉到自己当前的工作有一点温水煮青蛙的意思&#xff0c;很担心自己往后能力跟不上年龄的增长。因此想在工作之余…

【C++】类型转换 ② ( C++ 静态类型转换 static_cast | C 语言隐式转换弊端 | 代码示例 )

文章目录 一、静态类型转换 static_cast1、C 静态类型转换 static_cast2、C 语言隐式转换弊端3、代码示例 在之前写过一篇 C 类型转换的博客 【C 语言】类型转换 ( 转换操作符 | const_cast | static_cast | dynamic_cast | reinterpret_cast | 字符串转换 ) , 简单介绍了 C 类…

Linux系统的文件权限

Linux系统权限的相关概念与理解 (xshell下进行演示) 文章目录&#xff1a; 1:linux系统下两种用户 超级用户(root)与普通用户(非root)的理解root与非root用户之间切换的指令非root用户之间进行切换的指令操作 2:linux文件权限管理 文件访问者的介绍文件的类型与文件的访问权…

openpnp - 自动换刀设置 - 使用克隆功能降低风险

文章目录 openpnp - 自动换刀设置 - 使用克隆功能降低风险概述笔记需要注意的地方将一个做好的吸嘴作为这排其他吸嘴的模板END openpnp - 自动换刀设置 - 使用克隆功能降低风险 概述 自动换刀设置时, 很危险, 动不动就撞刀. 如履薄冰啊:( 看到openpnp在自动换刀时, 有个克隆功…

【Vue】记事本

上一篇&#xff1a;Vue的指令 https://blog.csdn.net/m0_67930426/article/details/134599378?spm1001.2014.3001.5501 本篇所需指令&#xff1a; v- for v-model v-on v-show 目录 删除功能 添加功能 统计功能 清空功能 v-show 删除功能 <!DOCTYPE html> …

系列十九、Spring实例化bean的方式

一、概述 所谓实例化bean&#xff0c;大白话讲就是Spring如何把这一个个的普通的Java对象创建为Spring bean的。 二、方式 Spring中实例化bean常用的有以下四种&#xff0c;即&#xff1a; ① 构造器方式&#xff1b; ② 静态工厂方式&#xff1b; ③ 实例工厂方式&#xff1b;…

SQL JOIN 子句:合并多个表中相关行的完整指南

SQL JOIN JOIN子句用于基于它们之间的相关列合并来自两个或更多表的行。 让我们看一下“Orders”表的一部分选择&#xff1a; OrderIDCustomerIDOrderDate1030821996-09-1810309371996-09-1910310771996-09-20 然后&#xff0c;看一下“Customers”表的一部分选择&#xff…

帮管客CRM 文件上传漏洞复现

0x01 产品简介 帮管客CRM是一款集客户档案、销售记录、业务往来等功能于一体的客户管理系统。帮管客CRM客户管理系统&#xff0c;客户管理&#xff0c;从未如此简单&#xff0c;一个平台满足企业全方位的销售跟进、智能化服务管理、高效的沟通协同、图表化数据分析帮管客颠覆传…

cuda magma 构建 使用cmake构建的步骤记录

这不是群论代数软件&#xff0c;而是cuda 矩阵计算软件 1. 生成其他精度的源代码 1.1 复制编辑 make.inc cp make.inc-examples/make.inc.openblas ./make.inc 并修改其中的定义&#xff1a; OPENBLASDIR ? /opt/OpenBLAS 这需要实现安装openblas到此处。文件夹解构&…

JAVA小游戏简易版王者荣耀

第一步是创建项目 项目名自拟 第二部创建个包名 来规范class 然后是创建类 GameFrame 运行类 package com.sxt; import java.awt.Graphics; import java.awt.Image; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener;…

虹科分享 | AR世界揭秘:从二维码的起源到数据识别与位姿技术的奇妙融合!

引言&#xff1a;探索AR的神奇世界&#xff0c;我们将从二维码的诞生谈起。在这个科技的海洋中&#xff0c;二维码是如何帮助AR实现数据获取与位姿识别的呢&#xff1f;让我们一起揭开这层神秘的面纱&#xff01; 一、二维码的由来 二维码是将数据存储在图形中的技术&#xff…

王者荣耀,,,,,

第一步是创建项目 项目名自拟 第二部创建个包名 来规范class 然后是创建类 GameFrame 运行类 package com.sxt; import java.awt.Graphics; import java.awt.Image; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener;…