2021年MathorCup数学建模C题海底数据中心的散热优化设计解题全过程文档及程序

2021年第十一届MathorCup高校数学建模

C题 海底数据中心的散热优化设计

原题再现

  据统计,全球数据中心每年消耗的电量,占全球总电量的 2%左右,而其中能源消耗的成本占整个 IT 行业的 30%-50%,特别是电子器件散热所需消耗的能量占比极大。
  目前,国内大数据中心主要建设在内陆地区,预计 2020 年大数据中心年经济体量超过 3000 亿元。但大数据中心建设在陆地上需要占用大量土地,冷却时需要消耗大量的电能和冷却水资源,并花费大量建设成本。由于沿海发达省市数据中心增长迅猛,类似的资源矛盾尤为突出。
  “海底数据中心项目(Project UDC)”是将服务器等互联网设施安装在带有先进冷却功能的海底密闭的压力容器中,用海底复合缆供电,并将数据回传至互联网;海底数据中心通过与海水进行热交换,利用巨量流动海水对互联网设施进行散热,有效节约了能源。海底数据中心对岸上土地占用极少,没有冷却塔,无需淡水消耗,既可以包容海洋牧场、渔业网箱等生态类活动,又可与海上风电、海上石油平台等工业类活动互相服务。将数据中心部署在沿海城市的附近水域可以极大地缩短数据与用户的距离,不仅无需占用陆上资源,还能节约能源消耗,是完全绿色可持续发展的大数据中心解决方案。
  据悉,2015 年 8 月,微软首次在美国西部加利福尼亚州一处海域对一个水下数据中心的原型机进行了测试。研究人员在位于美国西北部华盛顿州的微软总部办公室对其进行操控,为期 3 个月的测试取得了超出预期的成功。该水下数据中心原型机装配了传感器,可以感知压力,湿度等状况,帮助研究人员更好地了解其在水下环境的运行情况。2018 年微软 Project Natick 项目在苏格兰海岸线附近的水域中实验性地部署了一个水下的数据中心。这是数据中心首次部署在海底,这个数据中心被设计成集装箱样式,然后被悬放在海平面 117 英尺处,之后海底数据中心通过铺设的海底电缆与陆上操作中心相连。海底数据中心以城市工业用电为主,海上风能、太阳能、潮汐能等可再生能源为辅,具有低成本、低时延、高可靠性和高安全性的特点。据微软团队测算,海底数据中心的故障率是陆地的 1/8。
在这里插入图片描述
  2021 年 1 月 10 日,由北京海兰信数据科技股份有限公司联合中国船舶集团广船国际有限公司打造的全国首个海底数据舱在珠海高栏港揭幕,标志着我国大数据中心走进了海洋时代。对于海底数据中心,如何在有限的体积内存放更多的服务器且保证服务器工作过程中向海水中正常快速的散热是一项非常有挑战性的问题。现在各位参赛队员将参与到海底数据中心的优化设计,解决如下问题,并给微软,谷歌,华为等公司的海底数据中心的外壳散热提供设计方案。
  问题 1:固体在液体中的冷却的方式主要是对流传热,对流传热可分为自然对流和强制对流。假定数据中心集装箱的尺寸为直径 1m,长 12m的圆柱形,悬空放置(圆柱形轴线与海平面平行)在中国南海温度为 20 摄氏度的海域深度,其中单个 1U 服务器的产热为 500W(正常工作温度不能超过 80 摄氏度),1U 服务器机箱的高度为 44.45 毫米,宽度为 482.6 毫米,长度为 525 毫米,请评估单个集装箱外壳中最多可以放多少个服务器(仅考虑服务器的散热需求)。
  问题 2:假定集装箱外壳最大尺寸不超过 1m×1m×12m,结合第一问的分析,如何设计集装箱外壳的结构(如在圆柱体,长方体等上考虑翅片结构),可以实现最大化的散热效果,即存放更多的服务器。
  问题 3:较深的海水具有较低的温度,能取得更好的散热效果,同时增大的压力会对集装箱外壳的耐压能力提出更高的要求;值得注意的是海水本身是一种强的腐蚀介质,直接与海水接触的各种金属结构物都不可避免地受到海水的腐蚀。请在问题 2 的基础上进一步选择合适的材料和海底深度进行优化设计,进一步提高散热效果,并尽可能降低成本,提高使用年限。
  问题 4:潮汐和季节会改变局部水位和温度,并带来暂时性的海水流动,可能对数据中心的散热带来一定影响。请考虑潮汐和季节变化等因素对海底数据中心集装箱散热效果的影响。
  问题 5:竞赛组委会希望大家可以根据自己的分析结果写一封建议信给相关公司的海底数据中心散热设计部门。

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

  本文从热力学理论和场理论出发,建立了三维传热模型,并使用计算机数值模拟得到温度场的分布。并在此基础上讨论了影响散热效果的各种因素。进一步对不同问题中服务器个数进行了优化。
  对问题一,首先结合 热传导定律和能量守恒方程推导出温度分布需满足的微分方程,并结合边界条件与场的唯一性定理,建立了三维传热模型。其次,采用有限差分法将圆柱体进行划分,并选取 迭代法,求解出服务器分布给定时的最高温度。接下来,我们引入“模块化”思想简化问题,对服务器的放置进行了优化,最后得到结论:在仅考虑服务器的散热需求下,最多可在圆柱体外壳内摆放449个服务器,有效空间利用率为 73.7%。
  对问题二,对可以解释的传热面积进行定量分析;对于难以使用机理分析解释的湍流问题,参照文献结论进行定性分析。构建单目标优化模型,得到以下优化原则:
  Ⅰ.尽可能充分利用外壳表面积加装翅片;
  Ⅱ.安装翅片尽量不要占用外壳内部的体积;
  Ⅲ.在允许体积范围内让翅片尽可能高;
  Ⅳ.翅片的厚度、翅片间的间隙应视具体情况取一个较小值;
  Ⅴ.可以在翅片上制作凸起以增大传热表面积。
  假设翅片的加装使得外壳的散热效果达到了理想状态,即外壳温度等于海水温度时,得到的优化结果是 493 个机箱,有效空间利用率为 81.0%。
  对问题三,为找出最优的数据中心外壳材料,首先对附件给出的材料进行初筛,剔除一些明显不合适与水下场景的材料。然后,构建综合评价决策模型,采用 解法在成本、耐压性能、抗腐蚀性能三个指标上对剩余材料给出综合评分,最终求得综合性能最优的材料型号为 ,其具有令人满意的成本和使用年限。在问题 2 的基础上采用该材料,使用模块化摆放策略得到的最优解为 549 个,将有效空间利用率进一步提升至 90.1%。
  对问题四,季节和洋流对散热的影响具体表现在水温的长期和短期变化,以及水流的定向流动。将长期和短期变化分开考虑,得到不同的结论和建议,其中研究水温短期变化对散热的影响采用了复频域分析法。并分析了潮汐导致海水定向流动对散热的影响。综合以上分析得出结论:水温整体水平的变化会影响散热条件,水温升高散热条件变差,反之变好,水温的快速变化对外壳材料提出新的要求;而洋流的流动会使得数据中心表面温度分布不均,出现局部高温,使散热条件变差。
  对问题五,按照要求给华为公司的有关部门写了一封建议信,综合了以上问题中得出的结论,对实际的工程建设具有一定的指导意义。
  最后,对模型进行误差分析及稳定度与灵敏度检验,证明了简化假设和模型建立的合理性。

模型假设:

  基于部分研究支撑及对次要问题的简化,我们做出如下假设:
  (1)集装箱外壳与海水之间的传热方式为对流传热、集装箱外壳与内部的传热方式为热传导。
  (2)无洋流情况下,集装箱所在区域附近的海水温度可认为是均匀分布的。
  (3)集装箱外壳材料均匀且具有各向同性。
  (4)集装箱内部由空气传热,空气具有各向同性。
  (5)不计空气受热膨胀对集装箱内部空气热力学参数的影响。
  (6)每个机箱持续发热且功率相等,均为 500 。

问题分析:

  问题一:本题给出了集装箱、服务器的尺寸,以及服务器的产热和耐热性能。要求对允许的最大服务器数量进行评估。解题重点在于建立能够模拟集装箱内部温度分布情况的模型,并求解出内部的最高温度。此后基于得到的结果,构建优化模型以达到优化服务器数目的目的。拟采用机理分析法建立关于温度的微分方程,再使用计算机进行模拟求解。并构建优化模型得到最大服务器数目。
  问题二:在第一题的基础上,本题要求加装散热翅片,优化散热以达到存放更多服务器的目的,因此需要考虑翅片结构对于外壳散热的影响。本题难点在于翅片的加装会导致外壳附近产生湍流,而湍流是难以使用机理分析法进行精确建模的。解决方法是通过分析相关文献得出定性分析,对于可以定量考虑的部分因素(如表面积等)进行定量分析。由此得到翅片设计的优化方案,进一步得出散热情况达到理想时最大服务器数目。
  问题三:,本题要求在第二题的基础上考虑材料的选取和海水温度的变化对散热的影响。其重点在于厘清海水深度、温度、海水压强、腐蚀度等变量和材料各项理化性质之间的关系。解决方法是结合附录中的材料种类,采用综合评价模型对离散的材料性质进行评估,选取综合性能最优良的材料,并以此为基础继续优化服务器数量
  问题四:本题要求结合新的影响因素(潮汐和季节变化),考虑潮汐和季节变化会产生水温、水流变化对散热效果的影响。问题难点在于所引入的影响因素是前面建模未考虑到的,需要对模型进行修正,或建立新的模型分析散热效果
  问题五:本题要求给互联网的有关部门写一封建议信,综合考虑对之前问题分析所得出的结论,并给出有实际应用价值的建议。

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

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

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

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

The actual procedure is shown in the screenshot

a=0:pi/40:2*pi;
r=0.5
x=r*cos(a);
y=r*sin(a);
plot(x,y,'-');
hold on
axis equal
ax=-0.2625;
ay=-0.2413;
l=0.525;
w=0.4826;
m=[ax,ax+l,ax+l,ax,ax];
n=[ay,ay,ay+w,ay+w,ay];
plot(m,n);
hold on
for i=1:3
 ax=-0.39585+(i-1)*0.04445;
 ay=-0.2413;
 l=0.04445;
 w=0.4826;
 m=[ax,ax+l,ax+l,ax,ax];
 n=[ay,ay,ay+w,ay+w,ay];
 plot(m,n);
 hold on
end
for i=1:3
 ax=0.2625+(i-1)*0.04445;
 ay=-0.2413;
 l=0.04445;
 w=0.4826;
 m=[ax,ax+l,ax+l,ax,ax];
 n=[ay,ay,ay+w,ay+w,ay];
 plot(m,n);
 hold on
end
for i=1:4
 ax=-0.2625
 ay=0.2413+(i-1)*0.04445;
 l=0.525;
w=0.04445;
 m=[ax,ax+l,ax+l,ax,ax];
 n=[ay,ay,ay+w,ay+w,ay];
 plot(m,n);
 hold on
end
for i=1:4
 ax=-0.2625
 ay=-0.4191+(i-1)*0.04445;
 l=0.525;
 w=0.04445;
 m=[ax,ax+l,ax+l,ax,ax];
 n=[ay,ay,ay+w,ay+w,ay];
 plot(m,n);
 hold on
end
a=0:pi/40:2*pi;
r=0.5
x=r*cos(a);
y=r*sin(a);
plot(x,y,'-');
hold on
axis equal
for i=1:19
 ax=-0.2413;
 ay=-0.422275+0.04445*(i-1);
 l=0.4826;
 w=0.04445;
 m=[ax,ax+l,ax+l,ax,ax];
 n=[ay,ay,ay+w,ay+w,ay];
 plot(m,n)
 hold on
end
for i=1:4
 ax=-0.4191+(i-1)*0.04445;
 ay=-0.2413;
 l=0.04445;
 w=0.4826;
 m=[ax,ax+l,ax+l,ax,ax];
 n=[ay,ay,ay+w,ay+w,ay];
 plot(m,n);
 hold on
end
for i=1:4
 ax=0.2413+(i-1)*0.04445;
 ay=-0.2413;
 l=0.04445;
 w=0.4826;
m=[ax,ax+l,ax+l,ax,ax];
 n=[ay,ay,ay+w,ay+w,ay];
 plot(m,n);
 hold on
end
全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 以下是一个简单的 Python 数据分析程序示例: ```python import pandas as pd import numpy as np # 读取数据 data = pd.read_csv('data.csv') # 数据清洗 data = data.dropna() # 数据分析 mean = np.mean(data['value']) median = np.median(data['value']) mode = data['value'].mode()[0] # 输出结果 print('Mean:', mean) print('Median:', median) print('Mode:', mode) ``` 这个程序使用了 Pandas 和 NumPy 库,读取了一个 CSV 文件,对数据进行了清洗,并计算了数据的均值、中位数和众数。你可以根据自己的需求修改这个程序来完成更加复杂的数据分析任务。 ### 回答2: 数据分析是现代社会中一项非常重要的技术,可帮助企业和个人从大量数据中提取有用的信息和洞察,用于业务决策和问解决。 Python是一种功能强大且易于学习的编程语言,逐渐成为数据分析领域的首选工具。通过使用Python进行数据分析,我们可以借助各种库和工具来导入、清洗、处理和可视化数据,以及进行统计分析和机器学习。 对于一个数据分析的Python程序,一般会包含以下几个关键步骤: 1. 数据收集:从不同的来源(如数据库、API、文件)中收集原始数据,比如销售数据、用户行为数据等。 2. 数据清洗:对收集到的数据进行预处理,包括处理缺失值、异常值和重复值,以及数据类型转换等。清洗后的数据更加可靠和准确。 3. 数据探索:通过统计分析和可视化工具(如Matplotlib、Seaborn)来探索数据的特征和潜在关系,例如数据分布、相关性等。 4. 特征工程:根据领域知识和数据理解,对数据进行特征工程,选择和构造适合建模的特征,以提高模型的性能。 5. 建模与算法选择:根据问的性质,选择合适的算法和模型进行建模,如线性回归、决策树、随机森林等。可以使用Python的机器学习库(如Scikit-learn)来实现模型。 6. 模型评估与调优:通过交叉验证和其他评估指标来评估模型的性能,并根据需要进行参数调优和模型改进。 7. 结果呈现:最后,将数据分析的结果以可视化的方式展示出来,以便更好地理解和传达分析的结论和发现。可以使用Python的可视化库(如Matplotlib、Plotly)来创建各种图表和图形。 通过以上步骤,数据分析的Python程序可以帮助我们从复杂的数据中挖掘出有价值的信息,为业务决策提供支持。同时,Python作为一门简洁而强大的语言,使得我们可以更高效地开发和维护数据分析的代码,提高工作效率和质量。 ### 回答3: 数据分析是根据所给出的数据,运用统计学和数学方法,通过计算机处理和分析,找出其中的规律、趋势和关联,并从中提取有用的信息和洞察。Python语言是一种流行的编程语言,也是进行数据分析的一种常用工具。 在进行数据分析时,Python提供了丰富的库和模块,如NumPy、pandas、Matplotlib,以及SciPy等,可以方便地处理和分析数据。首先,可以使用NumPy库来进行数值计算,包括数组处理、线性代数和统计等方面,使数据操作更为高效和便捷。其次,pandas库提供了数据结构和数据分析工具,如Series和DataFrame,使数据的读取、清洗、处理和转换更加灵活和方便。还可以使用Matplotlib库进行数据可视化,生成直方图、散点图等图形,以便更直观地展示和解释数据。此外,SciPy库还提供了许多科学计算和统计分析的功能,如插值、优化和概率分布等,能够满足更为复杂的数据分析需求。 对于数据分析的具体步骤,可以先了解和熟悉所处理的数据,包括数据的类型、结构和特征。然后,可以使用Python进行数据的读取和清洗,去除缺失值、异常值和重复值等,以保证数据的准确性和一致性。接下来,可以通过统计学方法进行数据探索,计算数据的中心趋势、分布特征和相关性等,以发现数据的规律和趋势。最后,可以根据数据分析的结果,进一步提取有用的信息和洞察,以便进行决策和优化。 总之,数据分析的python程序可以利用Python语言中的相关库和模块,完成数据的处理、分析和可视化等任务。同时,还需要了解数据的特点和需求,运用统计学和数学方法,挖掘数据中的有用信息和洞察,为决策和优化提供支持。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值