2024年辽宁省数学建模竞赛B题超详细解题思路+问题一代码分享

news2024/11/16 16:49:06

B题相关优秀论文+问题一数据预处理代码分享链接:

https://pan.baidu.com/s/1wpNZYW5v8jf2iM0uB7pDEA

提取码:sxjm

B题 钢铁产品质量优化

研究现状

冷轧带钢是钢铁企业的高附加值产品,其产品质量稳定性对于钢铁企业的经 济效益具有非常重要的影响。在实际生产中,冷连轧之后的带钢需要经过连续退 火处理来消除因冷轧产生的内应力并提高其机械性能。连续退火的工艺流程如图 1 所示,一般包括加热、保温、缓冷、快冷、过时效、淬火等加工阶段。首先, 带钢在加热炉中被加热到指定的温度,然后在均热炉中进行保温使得带钢内外的 温度一致;接着,带钢依次穿过缓冷炉、快冷炉、过时效炉、淬火炉等阶段,以 实现带钢内部金属组织的再结晶,达到需要的力学性能。处理完成后的板卷会通 过实验室对其机械性能进行离线检测,如果性能不达标则会产生经济损失。由于连续退火工序中各阶段的工艺参数之间存在耦合性(加热炉的温度设定 会影响后续均热与冷却温度的设定,以及带钢穿行速度),导致难以建立该工序 的机理模型,从而为在线的产品质量控制与优化带来挑战。

问题1分析:哪些参数对于带钢的机械性能具有显著影响?

思路:如何确定重要影响参数

1.数据预处理:

1检查数据是否有缺失值或异常值,进行必要的清洗和处理。

2标准化或归一化各参数,以消除量纲的影响。

2.相关性分析

(1)计算每个参数与硬度之间的皮尔逊相关系数可选,初步筛选出相关性较高的参数

2使用热力图可视化相关性矩阵

3.特征选择

(1)运用多元线性回归分析,确定每个参数的回归系数和显著性

2使用逐步回归(前向、后向或双向)进一步筛选重要参数

3采用LASSO回归等正则化方法进行特征选择。

比较复杂的方法,也可以采用因子分析、PCA、随机森林等

一、数据预处理

(1)导入带钢的规格数据。

(2)检查数据的基本情况,包括数据维度、缺失值和异常值,并处理缺失值和异常值。

首先我们绘制缺失值数量的条形图,如图1所示,可以看到我们的训练数据是没有缺失值的。

图片

然后对属性进行箱型图可视化,如图2,可视化每个属性的箱线图(最小值、第一四分位数、中位数、第三四分位数、最大值)以及异常值)。)从图2可以看到,带钢厚度数据主要集中在8000到8500之间,有一些较小和较大的异常值。带钢宽度数据较为集中在190到200之间,有一些显著的异常值。碳含量数据主要集中在300到400之间,有一些小于200和大于400的异常值。硅含量数据主要集中在6到10之间,有一些显著的异常值。带钢速度数据主要集中在540到550之间,分布较为均匀,没有明显的异常值。加热炉温度数据主要集中在720到740之间,有一些小于700的异常值。均热炉温度数据集中在680到700之间,存在较多的异常值。缓冷炉温度、过时效炉温度、快冷炉温度、淬火炉温度,存在较多的异常值。平整机张力数据集中在2000到2400之间,有一些小于2000和大于2500的异常值。从图中我们还是可以看到有不少异常值的,针对此情况,采用Z-score将异常值删除。z-score规范化(零均值规范化)是将属性A的值根据其平均值和标准差进行规范化。

图片

图片

图片

二、相关性分析

(1)计算每个指标与带钢硬度之间的相关系数。

计算各指标与带钢硬度之间的相关系数,使用热力图(heatmap)可视化相关矩阵,突出高相关性和低相关性的指标。很显然上图每个指标分布可知,几乎所有的指标都处于一个非正态分布的状态,因此在这里我们采用的是Spearman相关系数。

(2)使用热力图可视化相关矩阵。

图片

二、特征选择

(1)采用随机森林的方法进行指标重要性影响分析,为了提高准确率,在随机森林基础上进行了一个剪枝操作。为什么剪枝(噪声、离群点)

“剪枝”是决策树学习算法对付“过拟合”的主要手段,可通过“剪枝”来一定程度避免因决策分支过多,以致于把训练集自身的一些特点当做所有数据都具有的一般性质而导致的过拟合。

后剪枝:后剪枝是在决策树构建完成后,通过剪掉部分节点或子树来减少过拟合。先从训练集生成一棵完整的决策树,然后自底向上地对非叶结点进行考察,若将该结点对应的子树替换为叶结点能带来决策树泛化性能提升,则将该子树替换为叶结点。

图片

图5是采用随机森林剪枝得出来了特征重要性分析。

(1)采用因子分析,首先求出来了因子载荷矩阵

图片

因子重要性条形图显示了每个因子的相对重要性,因子4和因子5具有最高的重要性,均在0.21左右。因子3、因子2和因子1的重要性较低,但也较为接近。因子载荷矩阵热图显示了各个因子在原始特征上的载荷情况。载荷的绝对值越大,表明该因子对相应特征的解释力越强。X10在因子1中的载荷最高,显示出因子1对该特征的解释力最强。因此,x10是最重要的指标之一。x6 (因子1和因子2):该特征在因子1和因子2中的载荷均较高,表明这两个因子对x6有较强的解释力。因此,x6 也是重要指标。x2 (因子3和因子5):该特征在因子3和因子5中的载荷较高,表明这两个因子对x2有较强的解释力。因此,x2 也是重要指标。x7 (因子1和因子4):该特征在因子1和因子4中的载荷较高,表明这两个因子对x7有较强的解释力。因此,x7也是重要指标。x12 (因子2):特征在因子2中的载荷较高,表明因子2对x12有较强的解释力,因此,x12也是重要指标。

综合因子重要性和因子载荷矩阵,可以得出最重要的指标是x10,x6,x2,x7,x12;次重要指标x1,x3,x4。

问题2分析:在线监测模型

问题2:请帮助现场操作人员建立一个数据驱动的带钢产品质量在线检测模型, 并分析该模型的性能。

思路:建立一个预测带钢硬度的在线检测模型,并分析其性能

1.数据分割:

将数据集分为训练集和测试集,常见比例为8:2

2.模型选择:线性回归、决策树、随机森林、支持向量机和神经网络

3.模型训练与评估:在训练集上训练模型,调节参数以获得最佳性能。在测试集上评估模型性能,计算均方误差(MSE)、平均绝对误差(MAE)等指标。使用回归模型的决定系数评价模型拟合效果。

4.模型解释:分析模型的重要特征,解释各参数对硬度的影响

决策树原理:决策树是一个树状分类结构模型,每个非叶子节点表示一个特征属性,每个分支边代表着这个特征属性在某个值域上的输出,每个叶子节点存放一个类别。

决策过程:从根节点开始,测试待分类项中相应的特征属性,并按照其值选择输出分支,直到到达叶子节点,将叶子节点存放的类别作为决策结果。

图片

图片

决策树通过一系列的二分决策将样本逐步分类到不同的叶节点。每个叶节点包含了预测值(即目标变量的值)、样本数量及误差信息。决策树的分割深度适中,没有过度复杂,这有助于防止过拟合。从数的结构来看,决策树模型根据特征值的不同将数据集划分为多个子集,最终形成一个树状结构,根节点分割条件是 x9≤0.352,这意味着特征x9是最重要的特征之一。如图9可以知道哪些特征对模型的影响较高,说明它们对目标变量y硬度有较大的影响。

问题3分析带钢工艺参数优化

问题3:现场操作人员通常是根据个人经验对带钢产品的工艺参数进行设定,你 能否帮助他们建立一个带钢工艺参数优化的解决方案?

思路:带钢工艺参数优化

1.目标函数

设定优化目标,如最小化硬度误差或最大化硬度一致性。

2.约束条件:考虑实际生产中的约束条件,如工艺参数的取值范围

3.优化算法:

使用遗传算法、粒子群优化等全局优化算法进行参数优化

通过模拟退火、梯度下降等局部优化算法进一步微调参数

4.模型验证:在优化后的参数设置下,使用已建立的在线检测模型预测硬度,验证优化效果

为了优化带钢生产工艺参数以提高产品质量,我们将使用全局优化算法(遗传算法、粒子群优化)和局部优化算法(模拟退火、梯度下降)进行参数优化。

图片

采用了遗传算法、粒子群算法、模拟算法进行优化,最终进行一个比较。

该问题只是一个简单的思路,目前正在代码的优化以及全篇论文的写作。具体完整代码与完整论文稍后全部完成会进行发布。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot整合JAX-RS接口

目录 二、创建RESTful资源 三、注册JAX-RS资源 四、修改配置等信息 五、启动SpringBoot程序、访问服务 六、遇到的问题 七、与feign进行配合使用 1、接口定义 2、接口实现 3、注册资源 4、调用方web服务实现,跟注入普通服务一样 5、启动两个服务&#xff…

很多人误解:谷歌账号就是谷歌邮箱账号吗?Google账号=Gmail?

在服务的过程中,我发现有一些朋友对于什么是Google账号、谷歌账号和gmail地址,谷歌邮箱和辅助邮箱等等的概念和用法搞得不够清爽,使得偶会会出现问题,甚至给谷歌账号带来一些风险。所以这篇文章,GG账号服务为大家解析一…

LeetCode刷题之HOT100之打家劫舍Ⅲ

2024 7/13 七月就要过去一半了,伴随着蝉鸣,酷暑被窗户隔离,我坐在凳子上,有一只蚊子不愿意放过我。 1、题目描述 2、算法分析 前面做过打家劫舍Ⅱ,今天来做打家劫舍Ⅲ,小偷也是越来越聪明了,意…

集训 Day 3 总结 虚树 + dfs tree + 基环树

虚树 虚树,顾名思义是 只关注原树上的某些 关键点,在保留原树祖孙关系的前提下建出的一棵边数、点数大大减少的树 适用于优化某些在整棵树上进行 d p dp dp、 d f s dfs dfs 的问题 通常是题目中出现多次询问,每次给出树上的一些关键点&a…

唯一索引插入引发的死锁问题

MySQL 8.4.0 RR隔离级别 场景复现 分析下面SQL死锁的场景 对于switch表,有主键索引id和唯一索引(uid、type)。 CREATE TABLE switch (id int NOT NULL AUTO_INCREMENT COMMENT Unique identifier for each switch,uid int NOT NULL COMMENT User ID associated wi…

Autoware 定位之基于ARTag的landmark定位(六)

Tip: 如果你在进行深度学习、自动驾驶、模型推理、微调或AI绘画出图等任务,并且需要GPU资源,可以考虑使用UCloud云计算旗下的Compshare的GPU算力云平台。他们提供高性价比的4090 GPU,按时收费每卡2.6元,月卡只需要1.7元每小时&…

AI大模型来了,低代码还有机会吗?

AI大模型的突飞猛进,不仅引领了技术的革新浪潮,也为各行各业的发展带来了前所未有的挑战与机遇。近年来,随着人工智能技术的不断进步,关于各行各业将被AI取代的论调此起彼伏,引发了许多从业者的不安。 几年前&#xf…

Flowable-流程图标与流程演示

BPMN 2.0是业务流程建模符号2.0的缩写。它由Business Process Management Initiative这个非营利协会创建并不断发展。作为一种标识,BPMN 2.0是使用一些符号来明确业务流程设计流程图的一整套符号规范,它能增进业务建模时的沟通效率。目前BPMN2.0是最新的…

AI人工智能填词,唱响心中独特旋律

在音乐的无垠宇宙中,每个人的内心都有一段独一无二的旋律在悄然回荡。而如今,人工智能填词正以其神奇的力量,帮助我们将这些深藏心底的旋律化作动人的歌词,让它们得以放声歌唱。 “妙笔生词智能写歌词软件(veve522&am…

【QT】布局管理器

布局管理器 布局管理器1. 垂直布局2. 水平布局3. 网格布局4. 表单布局5. Spacer 布局管理器 之前使⽤ Qt 在界⾯上创建的控件, 都是通过 “绝对定位” 的⽅式来设定的;也就是每个控件所在的位置, 都需要计算坐标, 最终通过 setGeometry 或者 move ⽅式摆放过去。 …

一文彻底学会Vue3路由:全面讲解路由流程、路由模式、传参等——全栈开发之路--前端篇(7)路由详解

全栈开发一条龙——前端篇 第一篇:框架确定、ide设置与项目创建 第二篇:介绍项目文件意义、组件结构与导入以及setup的引入。 第三篇:setup语法,设置响应式数据。 第四篇:数据绑定、计算属性和watch监视 第五篇 : 组件…

pytorch-pytorch之LSTM

目录 1. nn.LSTM2. nn.LSTMCell 1. nn.LSTM 初始化函数输入参数与RNN相同,分别是input_size,hidden_size和num_layer foward函数也与RNN类似,只不过返回值除了out外,ht变为(ht,ct) 代码见下图: 2. nn.LSTMCell 初…

SQL优化-索引

什么是索引? 索引( index )是帮助 MySQL 高效获取数据的数据结构 ( 有序 ) 。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据, 这…

这是我见过最棒的大模型干货!!!

大模型技术的发展和迭代2024年已经可以按天来计算了,几乎每天都有新的大模型和技术登场。 从基座模型Mamba2,Jamaba,到Dora,LoftQ,GaLore等最新的微调技术;KTO,IPO,SimPO等微调技术…

STM32实战篇:按键(外部输入信号)触发中断

功能要求 将两个按键分别与引脚PA0、PA1相连接,通过按键按下,能够触发中断响应程序(不需明确功能)。 代码流程如下: 实现代码 #include "stm32f10x.h" // Device headerint main() {//开…

ZGC的流程图

GC标记过程 1、初始标记 扫描所有线程栈的根节点,然后再扫描根节点直接引用的对象并进行标记。这个阶段需要停顿所有的应用线程(STW),但由于只扫描根对象直接引用的对象,所以停顿时间很短。停顿时间高度依赖根节点的数…

鸿蒙HarmonyOS应用开发为何选择ArkTS不是Java?

前言 随着智能设备的快速发展,操作系统的需求也变得越来越多样化。为了满足不同设备的需求,华为推出了鸿蒙HarmonyOS。 与传统的操作系统不同,HarmonyOS采用了一种新的开发语言——ArkTS。 但是,刚推出鸿蒙系统的时候&#xff0…

uni-app 保存号码到通讯录

1、 添加模块 2、添加权限 3、添加策略 Android: "permissionExternalStorage" : {"request" : "none","prompt" : "应用保存运行状态等信息,需要获取读写手机存储(系统提示为访问设备上的照片…

Prometheus + alermanager + webhook-dingtalk 告警

添加钉钉机器人 1. 部署 alermanager 1.1 下载软件包 wget https://github.com/prometheus/alertmanager/releases/download/v0.26.0/alertmanager-0.26.0.linux-amd64.tar.gz 网址 :Releases prometheus/alertmanager (github.com) 1.2 解压软件包 mkdir -pv …

用 Kotlin 编写四则运算计算器:从零开始的简单教程

人不走空 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 目录 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌…