2023年五一杯数学建模C题双碳目标下低碳建筑研究求解全过程论文及程序

news/2024/10/16 20:28:23 标签: 数学建模, 五一杯数学建模, 数据分析

2023年五一杯数学建模

C题 双碳目标下低碳建筑研究

原题再现:

  “双碳”即碳达峰与碳中和的简称,我国力争2030年前实现碳达峰,2060年前实现碳中和。“双碳”战略倡导绿色、环保、低碳的生活方式。我国加快降低碳排放步伐,大力推进绿色低碳科技创新,以提高产业和经济的全球竞争力。
  低碳建筑是指在建筑材料与设备制造、施工建造和建筑物使用的整个生命周期内,减少化石能源的使用,提高能效,降低二氧化碳排放量。
请查找相关资料,解决以下问题:
  问题1:现在有一间长4米、宽3米、高3米的单层平顶单体建筑,墙体为砖混结构,厚度30厘米(热导系数 ),屋顶钢筋混凝土浇筑,厚度30厘米(热导系数 ),门窗总面积5平方(热导系数 ),地面为混凝土 (热导系数 )。该建筑物所处地理位置一年(按365天计算)的月平均温度(单位:摄氏度)见下表。
在这里插入图片描述
  假设该建筑物内温度需要一直保持在18-26度,在温度不适宜的时候要通过电来调节温度,消耗一度电相当于0.28千克碳排放。请计算该建筑物通过空调(假设空调制热性能系数COP为3.5,制冷性能系数EER为2.7)调节温度的年碳排放量。(尽量使用本题所给条件计算碳排放,不考虑其他损耗)
  问题2:在居住建筑的整个生命周期 (建造、运行、拆除)中,影响碳排放的因素有很多,如建筑设计标准、气候、建材生产运输、地区差异、建造拆除能耗、装修风格、使用能耗、建筑类型等。请查找、分析资料,建立数学模型,找出与上述因素相关度大且易于量化的指标,基于这些指标对居住建筑整个生命周期的碳排放进行综合评价。
  问题3:在问题2的基础上,分别考虑建筑生命周期三个阶段的碳排放问题,查找相关资料,建立数学模型,对2021年江苏省13个地级市的居住建筑碳排放进行综合评价,并对所建评价模型的有效性进行验证。
  问题4:准确的碳排放预测能够为制定减排政策、优化低碳建筑设计提供重要的参考依据。建立碳排放预测模型,基于江苏省建筑全过程碳排放的历史数据,对2023年江苏省建筑全过程的碳排放量进行预测。
  问题5:请结合前面的讨论给出江苏省建筑碳减排的政策建议。

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

  研究双碳背景下住宅建筑全生命周期碳排放,运用相关分析和主成分分析方法,建立灰色预测模型,旨在促进中国到2030年实现碳峰值,到2060年实现炭中和,促进低碳科技创新,提高人民生活水平。
  针对问题1:本课题研究了通过空调调节建筑物室内温度所产生的碳排放,基于导热系数与面积、厚度、温差的关系,建立了热传导数学模型,计算了不同月份建筑物的热流,得出空调年耗电量为1324.71kW,由于每千瓦的耗电量产生0.28kg的碳,通过空调调温的建筑物年碳排放量为370.9192kg。
  针对问题2:本课题综合评价了影响住宅建筑全生命周期碳排放的因素。施工阶段选择的指标包括降水量、气温、建筑能耗、建筑面积、建筑材料中的生铁和水泥用量、运营阶段的水耗、电耗和天然气耗、拆迁阶段的建筑垃圾。通过相关性分析,确定这10个指标的相关性大于0.3,表明所选指标与住宅建筑生命周期碳排放量具有一定的相关性。然后利用主成分分析方法,得到了10个指标的综合得分,其中建筑面积对住宅建筑碳排放的影响最大,得分为0.136。
  针对第三个问题,在第二个问题的基础上,对江苏省13个地级市的住宅建筑碳排放进行了综合评价。第二个问题是找到12个与碳排放相关的指标,使用Matlab对其进行主成分分析,绘制相关热力学图,并得到综合得分排名:南京碳排放量最多,宿迁最少。找到12个与碳排放相关的指标,使用Matlab对其进行主成分分析,绘制相关热力学图,得到综合得分排序为:南京、苏州、南通、无锡、常州、扬州、徐州、台州、盐城、淮安、连云港、镇江、宿迁,表明南京碳排放量最多,宿迁最少。
  对于问题4:基于江苏省建设全过程碳排放的历史数据,本课题对2023年的碳排放进行了预测。基于江苏省2015-2022年全建设过程碳排放的历史数据,利用灰色预测中的GM(1,1)模型,预测2023年江苏省全建设过程的碳排放量为155.76万吨。
  针对问题5:在分析前四个问题的基础上,从材料、施工、运营、拆迁指标、区域差异和碳排放发展趋势等方面提出了江苏省碳减排的建议,如适当增加墙体厚度、控制建筑面积和提高绿化率、减少建筑垃圾排放、平衡各区域经济发展。

模型假设:

  结合本题的实际,为确保模型求解的准确性和合理性,本文排除一些因素的干扰,提出以下几点假设:
  1.假设计算相关建筑的能耗,门窗面积对其无影响;
  2.假设计算建筑物热损失时不存在极端因素;
  3.在计算调节能耗时,假设空调调节不高于18度或低于26度。

问题分析:

  问题1分析
  问题1需要研究通过空调温度计算建筑物的年碳排放量。首先,由于空调有制冷和制热两种模式,不需要打开空调,十二个月分为三个部分。第一部分是:11月至4月,空调需要开启暖风;第二部分是6月至8月。空调需要开启冷风;第三部分是5月、9月和10月,不需要打开空调。如果高于26度,则需要调整到26度;对于低于18度的情况,需要打结到18度。地面、墙壁和屋顶的厚度为30cm,门窗面积太小。通过建筑物与外界换热功率与导热系数、接触面积、厚度和温差、建筑物传热热流、热流比和热(冷)性能系数的关系,可以计算出空调器的工作功率、空调器的电耗和年碳排放量。

  问题2分析
  问题2需要分析一些指标,以全面评估住宅建筑在其整个生命周期中的碳排放量。建筑物的整个生命周期包括三个阶段:建造、运营和拆除。本文寻找了2018年至2021年中国住宅建筑的年度碳排放量,并选取了10个指标,其中包括建设、运营和拆迁三个阶段的重要影响因素。首先,利用相关性分析来判断碳排放量与这六个指标之间是否存在相关性。然后利用主成分分析方法对数据进行降维,给出不同主成分对应贡献率的权重,最后得出各指标对碳排放的重要性。

  问题3分析
  问题3需要根据对问题2中获得的相关结果的分析,并考虑建筑生命周期三个阶段的相关排放,于2021年对江苏省13个地级市的住宅建筑的碳排放进行综合评估。寻找建筑生命周期三个阶段的相关指标,对相关指标采用主成分分析方法,使用Matlab制作相关热图,观察相关性,并对指标进行降维处理,最终确定主成分,通过贡献率对主成分赋权,得出13个地级市住宅建筑碳排放综合得分,并对其进行评价。

  问题4分析
  问题4要求基于江苏省建设全过程碳排放的历史数据,开展江苏省2023年建设全过程二氧化碳排放预测研究。查阅相关文献,找出江苏省历年住宅建筑碳排放量,利用灰色预测中的GM(1,1)模型对历年住宅建筑物碳排放量进行预测,得到2023年江苏省建筑全过程碳排放量。

  问题5分析
  在前面讨论的基础上,本课题提出了江苏省建筑碳减排的建议。为了实现我国双碳目标下的低碳建筑,应从多方面提出建议。通过问题1、问题2、问题3和问题4,可以分别得出材料对碳排放的影响、不同指标对碳排放量的影响、区域差异对碳排放总量的影响以及历年碳排放的发展趋势。

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

在这里插入图片描述

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

程序代码:

部分程序如下:
import numpy as np
import matplotlib.pyplot as plt
# 定义居住建筑碳排放模型
def building_carbon_emission_model(weight_coeff, index_values):
    return np.dot(weight_coeff, index_values)
# 设置模拟次数
n_simulations = 10000
# 设置权重系数概率分布范围(示例)
weight_coeff_dist = np.array([[0.2, 0.4],[0.3, 0.5],[0.1, 0.3],[0.2, 0.4]])
# 设置指标取值概率分布范围
index_values_dist = np.array([[10, 50],[20, 100],[5, 25],[10, 50]])
# 初始化存储模型输出的数组
model_outputs = np.zeros(n_simulations)
# 进行蒙特卡洛模拟
for i in range(n_simulations):
    # 对权重系数进行随机抽样
    weight_coeff_sample = np.random.uniform(weight_coeff_dist[:, 0], weight_coeff_dist[:, 1] 
    # 对指标取值进行随机抽样
    index_values_sample = np.random.uniform(index_values_dist[:, 0], index_values_dist[:, 1])
    # 计算模型输出
    model_outputs[i] = building_carbon_emission_model(weight_coeff_sample, index_values_sample)
# 分析模型输出
mean_output = np.mean(model_outputs)
std_output = np.std(model_outputs)
confidence_interval = np.percentile(model_outputs, [2.5, 97.5])
print(f"Mean: {mean_output}")
print(f"Standard Deviation: {std_output}")
print(f"95% Confidence Interval: {confidence_interval}")
# 绘制模型输出的直方图
plt.hist(model_outputs, bins=50)
plt.xlabel("Carbon Emission")
plt.ylabel("Frequency")
plt.show()
from statsmodels.graphics.tsaplots import plot_acf, plot_pacf
from statsmodels.tsa.arima.model import ARIMA
from sklearn.metrics import mean_squared_error
import itertools
 # ACF和PACF图
plot_acf(df['log_emission_diff'])
plt.title('ACF')
plot_pacf(df['log_emission_diff'])
plt.title('PACF')
# 确定参数范围
p_range = range(0, 3)
d_range = range(0, 2)
q_range = range(0, 3)# 计算所有参数组合的AIC
best_aic = float('inf')
best_order = None
for p, d, q in itertools.product(p_range, d_range, q_range):
    if p == 0 and d == 0 and q == 0:
        continue
    try:
        model = ARIMA(df['log_emission'], order=(p, d, q))
        results = model.fit()
        if results.aic < best_aic:
            best_aic = results.aic
            best_order = (p, d, q)
    except:
        continue
print(f'Best ARIMA parameters: {best_order}, AIC: {best_aic}')
clear; clc
year = 2015:1:2022; %年份
x0 = [102.3 108.7 115.2 121.6 128.1 134.5 140.96 147.41] ;%原始数据序列
n = length(x0); 
year = year' ;
x0 = x0' ;
 
%画出时序图,观察是否是以年份为度量的非负数据
figure(1) ;
plot(year, x0, 'o-') ;
grid on ;
set(gca,'xtick',year(1:1:end)) ; %设置x轴的间隔为1
xlabel('年份');  ylabel('碳排放量');
 
%GM模型适用于数据较短的非负序列,所以要进行非负检验
ERROR = 0;  % 建立一个错误指标,一旦出错就指定为1
% 判断是否有负数元素,当然数据量要4~10期才考虑使用GM
if sum(x0<0) > 0  
    disp('原始数据有负值,不能使用GM')
    ERROR = 1;
end
 
%进行准指数规律检验和进行级比检验
if ERROR == 0   
    disp('------------------------------------------------------------')
    disp('准指数规律检验')
    x1 = cumsum(x0);   % 一次累加
    rho = x0(2:end) ./ x1(1:end-1) ;   % 计算光滑度rho(k) = x0(k)/x1(k-1)
    
    % 画出光滑度的图形,并画上0.5的直线,表示临界值
    figure(2)

plot(year(2:end),rho,'o-',[year(2),year(end)],[0.5,0.5],'-'); grid on;
    text(year(end-1)+0.2,0.55,'临界线')   % 在坐标(year(end-1)+0.2,0.55)上添加文本
    set(gca,'xtick',year(2:1:end))  % 设置x轴横坐标的间隔为1
    xlabel('年份');  ylabel('原始数据的光滑度');  % 给坐标轴加上标签
    
 
    disp(strcat('指标1:光滑比小于0.5的数据占比为',num2str(100*sum(rho<0.5)/(n-1)),'%'))
    disp(strcat('指标2:除去前两个时期外,光滑比小于0.5的数据占比为',num2str(100*sum(rho(3:end)<0.5)/(n-3)),'%'))
    disp('参考标准:指标1一般要大于60%, 指标2要大于90%,你认为本例数据可以通过检验吗?')
    
    flag = 1 ;
    end
    for k = 2 : n
    lamda(k) = x0(k-1) / x0(k) ;
    if (lamda(k) < exp(-2 / (n+1)) || lamda(k) > exp(2 / (n+1)))
        disp('不通过级比检验!!!') ;
        flag = 0 ;
    end
    end
    if flag == 1
        disp('通过级比检验!!!') ;
    end
全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

http://www.niftyadmin.cn/n/5708489.html

相关文章

关于通信协议中PDCP的相关知识

PDCP (Packet Data Convergence Protocol) 概述 PDCP&#xff08;Packet Data Convergence Protocol&#xff0c;分组数据汇聚协议&#xff09;是LTE&#xff08;Long Term Evolution&#xff0c;长期演进&#xff09;和5G NR&#xff08;New Radio&#xff0c;新空口&#xf…

MongoDB中排序、索引和聚合的详细说明

以下是关于MongoDB中排序、索引和聚合的详细说明&#xff1a; 排序&#xff08;Sort&#xff09; 基本语法 使用db.collection.find().sort({field: direction})方法对查询结果进行排序。其中field是要排序的字段&#xff0c;direction可以是1&#xff08;表示升序&#xff0…

LabVIEW提高开发效率技巧----事件触发模式

事件触发模式在LabVIEW开发中是一种常见且有效的编程方法&#xff0c;适用于需要动态响应外部或内部信号的场景。通过事件结构&#xff08;Event Structure&#xff09;和用户自定义事件&#xff08;User Events&#xff09;&#xff0c;开发者可以设计出高效的事件驱动程序&am…

怎么测试租用的美国服务器是不是超负荷?

美国服务器负荷是指主机在单位时间内处理的请求数量或任务量&#xff0c;当负荷超过其承受能力时&#xff0c;就可能会导致系统响应变慢、性能下降甚至崩溃&#xff0c;因此对美国服务器进行负荷测试是确保其稳定性和性能的重要手段。 一、常见的服务器负荷指标 1、CPU使用率&a…

数据源对接,这个工具能满足你

在数字化时代&#xff0c;数据已成为企业决策和业务优化的关键。而数据源对接则是获取高质量、全面数据的重要途径。数据源对接能够将各种来源的数据进行标准化处理&#xff0c;统一接入并进行整合分析&#xff0c;为企业提供更加准确、可靠的数据支持。其重要性不言而喻。 一…

从零开始搭建:基于在线教育系统源码的线上网校开发详解

本文将通过详细的技术分析&#xff0c;帮助你了解如何基于在线教育系统源码搭建线上网校&#xff0c;从而帮助你更好地构建稳定且高效的线上教育平台。 一、为什么选择在线教育系统源码&#xff1f; 在搭建线上网校时&#xff0c;使用成熟的在线教育系统源码是一个快速且高效…

TypeScript新手学习教程--接口

TypeScript 也支持接口&#xff0c;跟Java类似&#xff0c;这对于学习过java&#xff0c;c#&#xff0c;php语言的人更容易上手&#xff0c;虽然类似&#xff0c;但是也有不同&#xff0c;下面开始学习。 1、 接口声明 TypeScript的核心原则之一是对值所具有的结构进行类型检…

基于matlab的滤波器设计

一&#xff0e;滤波器的简述 在MATLAB环境下IIR数字滤波器和FIR数字滤波器的设计方 法即实现方法&#xff0c;并进行图形用户界面设计&#xff0c;以显示所介绍迷你滤波器的设计特性。 在无线脉冲响应&#xff08;IIR&#xff09;数字滤波器设计中&#xff0c;先进行模拟滤波器…