2021年MathorCup高校数学建模挑战赛b题:三维团簇的能量预测(三等)

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
注册配置 MSE Nacos/ZooKeeper,118元/月
函数计算FC,每月15万CU 3个月
简介: 2021年MathorCup高校数学建模挑战赛b题:三维团簇的能量预测(三等)

摘要

团簇可以分为金属团簇和非金属团簇,由于金属团簇具有良好的催化性能,因此备受关注。但由于团簇的势能面过于复杂,同时有时候还需要考虑相对论效应等,所以搜索团簇的全局最优结构显得尤为困难。其中,传统的理论计算方法研究效率较低且非常耗时。因此,需要对这种方法加以改进,例如:考虑全局优化算法,结合机器学习等方法,训练团簇结构和能量的关系,从而预测新型团簇的全局最优结构,有利于发现新型团簇材料的结构和性能。本文根据团簇数据样本,通过机器学习和优化算法以及软件编程,对其数据进行处理和预测搜索,完成了以下几方面的问题:

针对问题一,首先,通过Python编程读取xyz文件将其整合,并求出原始数据平均值对缺失的155号数据进行填充。通过金团簇Au20的原子坐标、原子数目和团簇能量来预测金团簇能量,利用库伦矩阵和特征值提取转换成向量以满足机器学习算法,然后利用K近邻回归模型、随机森林回归模型、LightGBM回归模型算法对金团簇能量进行预测,通过MSE评价指标选取最优算法为LightGBM回归模型。最后利用粒子群优化算法与其结合搜索和预测出金团簇Au20的全局最优结构的能量为-1558.381512。

针对问题二,首先,根据金团簇Au20的结构,通过Monte Carlo方法和L-J势函数模拟生成异构体Au32的结构,重新训练LightGBM回归模型,然后利用基于LightGBM回归的粒子群优化算法预测出全局最优结构的能量为 -2484.139072。通过分析团簇的对称性以及平均键合能、一级解离能和二级解离能确定结构相对稳定。

针对问题三,同问题一,首先通过Python编程读取xyz文件将其整合,利用库伦矩阵和特征值提取转换成向量以满足机器学习算法且保证原始数据不丢失,然后利用随机森林回归模型、LightGBM回归模型算法对硼团簇能量进行预测,并且对两种模型进行网格搜索找到最优参数,来达到整体模型的偏差和方差的大和谐,通过MSE评价指标选取最优算法为随机森林回归模型。最后利用粒子群优化算法与其结合,搜索和预测出硼团簇B45-的全局最优结构的能量为-114059.5529096。

针对问题四,通过Python编程首先对硼团簇B45-的坐标通过排列组合列出40个坐标所有情形共有 C4540 个,然后根据L-J势能函数计算所有情形的势能,取势能最低的作为B40-的坐标。最后通过B40-的坐标训练随机森林回归模型,利用基于随机森林回归模型的粒子群优化算法找到硼团簇B40-的全局最优结构的能量为-101138.961718,最后分析稳定性较为稳定且比B45-稳定。

关键词:团簇;LGB回归模型;随机森林回归模型;蒙特卡洛;粒子群优化算法

一、问题重述 1

二、问题的分析 1

问题一的分析:问题一要求通过附件给出的1000个金团簇Au20的结构,建立金团簇能量预测的数学模型,并预测金团簇Au20的全局最优结构,描述形状。首先,观察所给原始数据,发现155号数据缺失,通过计算原始数据平均值对缺失值进行填补。其次,为满足机器学习算法的向量输入需求,通过库伦矩阵等方法将原子坐标进行转换,利用机器学习算法得到金团簇预测模型。最后,结合粒子群优化算法搜索和预测金团簇Au20的全局最优结构并画出图形。

问题二的分析:问题二要求在问题一的基础上设计算法,产生金团簇不同结构的异构体,自动搜索和预测金团簇Au32的全局最优结构,并描述其几何形状,分析稳定性。用Monte Carlo方法及L-J势函数模拟金团簇Au20异构体Au32的生成。并用基于LightGBM回归的粒子群优化算法搜索和预测金团簇Au32的全局最优结构并画出图形。通过分析团簇的对称性以及平均键合能、一级解离能和二级解离能分析其稳定性。

问题三的分析:问题三要求通过附件给出的3751个硼团簇B45-的结构,建立硼团簇能量预测的数学模型,并预测硼团簇B45-的全局最优结构,描述形状。同问题一为满足机器学习算法的向量输入需求,通过库伦矩阵等方法将原子坐标进行转换,利用机器学习算法得到硼团簇预测模型。最后,结合粒子群优化算法搜索和预测硼团簇B45-的全局最优结构并画出图形。

问题四的分析:问题四要求在问题三的基础上设计算法,产生硼团簇不同结构的异构体,自动搜索和预测硼团簇B40-的全局最优结构,并描述其几何形状,分析稳定性。首先对硼团簇B45-的坐标通过排列组合列出40个坐标所有情形,根据势能函数计算所有情形的势能[1],取势能最低的作为B40-的坐标。最后通过B40-的坐标训练模型,利用基于随机森林回归模型的粒子群优化算法找到硼团簇B40-的全局最优结构并画出图形。通过分析团簇的对称性以及平均键合能、一级解离能和二级解离能分析其稳定性。

三、模型假设 2

(1)数据样本中不存在不精确数据。

(2)团簇在空间中的平移或旋转都不会影响基于原子坐标的能量预测模型。

(3)使用原子直接的距离来描述体系的结构适用于当前团簇原子规模。

(4)基于原子坐标的机器学习模型可以一定程度上描述体系的对称性。

四、符号说明 2

五、模型的建立与求解 3

5.1 问题一:金团簇能量预测模型的建立和Au20全局最优结构的预测 3

5.1.1求解思路 3

首先,通过Python编程读取xyz文件将其整合,并求出原始数据平均值对缺失的155号数据进行填充。由于原始数据中只包含金团簇Au20的原子坐标、原子数目和团簇能量,因此要通过原子坐标和原子数目来预测金团簇能量,就需要一种描述方法将随机生成的结构信息表征成数值向量的模式,同时还要保证原始数据不能丢失,利用库伦矩阵和特征值提取转换成向量以满足机器学习算法,然后利用K近邻回归模型、随机森林回归模型、LightGBM回归模型算法对金团簇能量进行预测,通过MSE评价指标选取最优算法。最后利用粒子群优化算法与其结合搜索和预测出金团簇Au20的全局最优结构并画出图形。

5.1.2数据处理 4

5.1.3金团簇能量预测模型的建立与求解 5

5.1.3.1 K近邻回归模型的建立与求解

5.1.3.2随机森林回归模型的建立与求解

随机森林算法是Breiman[3]提出的群体分类模型的一种,能有效分析非线性、共线性和具有交互作用数据,在变量和数据的使用上进行随机化生成很多树,随机产生样本及节点变量,使得随机森林中的每一个棵树都不尽相关,进行bootstrap抽样,在原始训练样本集N中多次有放回地随机抽取n个新的训练样本集,生成n个分类树组成的随机森林,得到模型最优时的森林,当出现新样本时随机森林中的每一个树分别进行判断。

通过Python使用sklearn库调用随机森林回归算法进行金团簇能量预测,将在数据处理中得到的32×1维的特征向量作为特征变量,金团簇Au20能量作为目标变量,划分80%的训练集和20%的测试集进行求解。在sklearn中直接调用maen_squared_error( )函数计算MSE为0.458028,模型运行时间为2.342937秒。

随机森林回归模型使用便捷,特征无须做过多变换,具有较高精度,模型并行训练快;但结果不容易解释。

5.1.3.3 LightGBM回归模型的建立与求解

LightGBM(Light Gradient Boosting Machine)是微软亚洲研究所DMYK团队的一个开源的算法,李淑锦, 嵇晓佳[4]认为LGB回归模型基于直方图进行计算获得更高的速度和更高的效率,占用更少的内存,支持并行计算,并且由于缩减了训练时间因此可以进行大数据处理。LGB回归模型在计算时会将浮点型数值转化成离散型数值,从而生成了一个直方图。并且在图中累计离散数值统计量,降低占用的内存来找最佳分割点,算法流程图如图1.3所示。

8ea5c50f7ff084bc60c19e8682b164b.png

通过Python调用LightGBM回归算法进行金团簇能量预测,将在数据处理中得到的32×1维的特征向量作为特征变量,金团簇Au20能量作为目标变量,划分80%的训练集和20%的测试集进行求解。计算MSE为0.364445,模型运行时间为12.187506秒。发现LightGBM回归模型精度高,但训练时间长,模型复杂。

5.1.3.4金团簇能量预测模型的选取

将K近邻回归模型、随机森林回归模型和LightGBM回归模型预测准确率进行对比,如图1.4所示。

68d71994918358222928bff71518690.png

K近邻回归模型在三种模型中MSE最大,精确度较低,故在随机森林回归模型和LightGBM回归模型中进行选取,又比较算法的时间开销如表1.1所示

表1.1 算法时间开销


74ff3650c2347ca49eb70b810d956f8.png

综合考虑,选取LightGBM回归模型作为金团簇能量预测的模型。

5.1.4基于LightGBM回归模型的粒子群优化算法的建立与求解 7

5.2 问题二:金团簇不同结构异构体的产生和Au32的全局最优结构的预测 10

5.2.1求解思路 10

5.2.2基于Monte Carlo方法和L-J势函数的异构体Au32的生成 10

5.2.3基于LightGBM回归模型的粒子群优化算法的Au32最优结构预测与稳定性分析 12

5.3 问题三:硼团簇能量预测模型的建立和B45-全局最优结构的预测 13

5.3.1求解思路 13

首先,根据金团簇Au20的结构,通过Monte Carlo方法和L-J势函数模拟生成异构体Au32的结构,重新训练LightGBM回归模型,然后利用基于LightGBM回归的粒子群优化算法预测出全局最优结构。通过分析团簇的对称性以及平均键合能、一级解离能和二级解离能分析其稳定性[5]。

5.3.2数据处理 14

5.3.3硼团簇能量预测模型的建立与求解 14

5.3.4基于随机森林回归模型的粒子群优化算法的建立与求解 15

5.4 问题四:硼团簇不同结构异构体的产生和B40-的全局最优结构的预测 17

5.4.1求解思路 17

通过Python编程首先对硼团簇B45-的坐标通过排列组合列出40个坐标所有情形共有 个,然后根据L-J势能函数计算所有情形的势能,取势能最低的作为B40-的坐标。最后通过B40-的坐标训练随机森林回归模型,利用基于随机森林回归模型的粒子群优化算法找到硼团簇B40-的全局最优结构并画出图形。通过分析团簇的对称性以及平均键合能、一级解离能和二级解离能分析其稳定性。

5.4.2基于随机森林回归模型的粒子群优化算法的B40-最优结构预测与稳定性分析 17

六、模型评价与改进 18

对于问题一:问题一中选取了K近邻回归模型、随机森林回归模型、LightGBM回归模型对金团簇能量进行预测,随机森林回归模型和LightGBM回归模型准确度较高,运行时间较短,加快了粒子群优化算法搜索金团簇Au20的最优结构的速度。对于问题一只选取了三种机器学习模型而且并没有进行调参,对此增加了多层神经网络和支持向量回归模型并进行参数调优,发现LightGBM回归模型精确度最高为0.347896且运行速度较快。并对粒子群优化算法种群数和迭代次数扩大在其中加入金属对称性的约束条件,发现找到的最优结构更好能量更低。

对于问题二:在产生金团簇异构体时采取的是L-J势函数,对此进行改进采取LJ+AT势能函数发现产生的异构体更稳定,预测的最优结构对应的能量更低。

对于问题三、问题四:采取的是随机森林回归模型和LightGBM回归模型做比较选取对此进行改进,将随机森林回归模型和LightGBM回归模型进行融合发现效果更好。因为预测向量中的每个值都接近于真实值时,才能保证在进行局部优化或全局搜索时的方向和真实情况是一致的。所以建立算法置信度模型,置信度定义为预测误差小于给定允许误差的点所占的比例,这个比例越大,表明算法越可靠,从结果看在准确度方面是可行的。

七、参考文献 19

八、附录 20

第一题:

read_file_1.py:
import numpy
from scipy.spatial.distance import cdist
def read_xyz_comment(path):
    with open(path, 'r') as f:
        for i, line in enumerate(f):
            if(i==1):
                comment=float(line)
    return comment
def read_xyz_coords(path):
    elements = []
    coords = []
    with open(path, 'r') as f:
        for i, line in enumerate(f):
            if i < 2:
                continue
            ele, x, y, z = line.strip().split()
            point = [float(x), float(y), float(z)]
            elements.append(ele)
            coords.append(point)
    return coords
#计算库伦矩阵
def get_coulomb_matrix(numbers, coords, alpha=1, use_decay=False):
......

未完待续

相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
2月前
|
存储 算法 搜索推荐
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
本文提供了2022年华为杯数学建模竞赛B题的详细方案和MATLAB代码实现,包括方形件组批优化问题和排样优化问题,以及相关数学模型的建立和求解方法。
109 3
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
|
2月前
|
算法 安全 量子技术
【2023 年第十三届 MathorCup 高校数学建模挑战赛】 B 题 城市轨道交通列车时刻表优化问题 42页论文及代码
本文介绍了2023年第十三届MathorCup高校数学建模挑战赛B题的研究成果,提供了城市轨道交通列车时刻表优化问题的详细建模方案、C++代码实现以及42页的完整论文,旨在通过贪心算法、二分搜索法和多目标规划等方法最小化企业运营成本并最大化服务水平。
61 0
【2023 年第十三届 MathorCup 高校数学建模挑战赛】 B 题 城市轨道交通列车时刻表优化问题 42页论文及代码
|
2月前
|
数据采集 数据可视化 数据挖掘
【2021 年 MathorCup 高校数学建模挑战赛—赛道A二手车估价问题】1 数据分析及可视化
介绍了2021年MathorCup高校数学建模挑战赛赛道A的二手车估价问题,包括数据的读取、宏观查看、缺失值和异常值的检查、数据分布和相关性的分析,以及特征类别的统计,为建立二手车估价模型提供了数据预处理和分析的基础。
45 5
|
2月前
|
机器学习/深度学习 数据可视化 Python
【江西省研究生数学建模竞赛】第三题 植物的多样性 建模方案及参考文献
本文提供了江西省研究生数学建模竞赛第三题“植物的多样性”的建模方案、参考文献和可视化示例,探讨了如何通过数学模型研究植物数量变化规律并提出保持森林多样性的策略。
34 0
【江西省研究生数学建模竞赛】第三题 植物的多样性 建模方案及参考文献
|
2月前
|
机器学习/深度学习 数据采集 存储
【2021 年 MathorCup 高校数学建模挑战赛—赛道A二手车估价问题】2 问题一 数据预处理、特征工程及模型训练Baseline 和数据
参加2021年MathorCup高校数学建模挑战赛赛道A二手车估价问题时进行的特征工程步骤,包括缺失值处理、时间特征提取、特定匿名特征的处理、特征存储以及模型训练过程,并提供了相关代码的下载链接。
55 2
|
2月前
|
算法 量子技术 决策智能
【2023 年第十三届 MathorCup 高校数学建模挑战赛】A 题 量子计算机在信用评分卡组合优化中的应用 42页论文及代码
本文介绍了2023年第十三届MathorCup高校数学建模挑战赛A题的解决方案,深入探讨了量子计算机在信用评分卡组合优化中的应用,提供了详细的建模过程、QUBO模型构建方法以及相应的Python代码实现,并在42页的论文中详细阐述了研究成果。
45 0
【2023 年第十三届 MathorCup 高校数学建模挑战赛】A 题 量子计算机在信用评分卡组合优化中的应用 42页论文及代码
|
2月前
|
机器学习/深度学习 算法 大数据
【2023年MathorCup高校数学建模挑战赛-大数据竞赛】赛道A:基于计算机视觉的坑洼道路检测和识别 python 代码解析
本文提供了2023年MathorCup高校数学建模挑战赛大数据竞赛赛道A的解决方案,涉及基于计算机视觉的坑洼道路检测和识别任务,包括数据预处理、特征提取、模型建立、训练与评估等步骤的Python代码解析。
63 0
【2023年MathorCup高校数学建模挑战赛-大数据竞赛】赛道A:基于计算机视觉的坑洼道路检测和识别 python 代码解析
|
2月前
|
机器学习/深度学习 监控 安全
【2023 年第十三届 MathorCup 高校数学建模挑战赛】D 题 航空安全风险分析和飞行技术评估问题 27页论文及代码
本文介绍了2023年第十三届MathorCup高校数学建模挑战赛D题的解决方案,涉及航空安全风险分析和飞行技术评估问题,提出了基于主成分分析、梯度提升决策树(GBDT)和BP-神经网络模型的综合方法,并通过27页的论文详细阐述了建模过程和仿真模拟结果。
49 0
【2023 年第十三届 MathorCup 高校数学建模挑战赛】D 题 航空安全风险分析和飞行技术评估问题 27页论文及代码
|
2月前
|
算法 图形学
2023年第三届长三角高校数学建模竞赛】A 题 快递包裹装箱优化问题 详细数学建模过程
本文详细介绍了2023年第三届长三角高校数学建模竞赛A题的详细数学建模过程,探讨了快递包裹装箱优化问题,提出了三维装箱算法、目标规划和优化策略,旨在减少耗材使用量和优化耗材总体积,同时考虑了货物和耗材的柔性属性。
60 0
2023年第三届长三角高校数学建模竞赛】A 题 快递包裹装箱优化问题 详细数学建模过程
|
2月前
|
监控 安全 量子技术
【2023 年第十三届 MathorCup 高校数学建模挑战赛】 B 题 城市轨道交通列车时刻表优化问题 详细建模方案及代码实现
本文详细介绍了2023年第十三届MathorCup高校数学建模挑战赛B题的城市轨道交通列车时刻表优化问题,提供了详细的建模方案、优化目标、约束条件以及MATLAB代码实现,旨在最小化企业运营成本并最大化服务水平。
46 0