2024华数杯数学建模竞赛选题建议+初步分析
提示:DS C君认为的难度:C<A<B,开放度:A<B<C。
综合评价来看
· A题适合对机械臂和机器人运动学感兴趣的同学,尤其是有一定编程和优化算法基础的同学。不建议非相关专业同学选择。
· B题挑战较大,适合有EDA和VLSI设计基础的同学,适合对集成电路设计和算法优化有浓厚兴趣的同学。
· C题涉及数据处理和综合评价,适合喜欢数据分析和路径规划的同学,对多因素优化有兴趣的同学可以选择。推荐大部分同学进行选择
以下为ABC题选题建议及初步分析:
A题:机械臂关节角路径的优化设计
这道题目涉及到机械臂的运动学与动力学建模、路径规划以及能耗优化,是物理类题目。通过对机械臂的六个自由度关节进行优化,目标是最小化末端误差和能耗,并在一些复杂任务(如绕过障碍物)中进行路径规划和优化设计。
这道题需要深入理解机械臂的运动学和动力学,涉及非线性优化问题,还需要考虑多目标优化(末端误差和能耗),对数学建模和算法实现要求较高。
题目设定了较为具体的参数和限制,任务目标明确,但在优化方法和路径规划上具有一定的自由度。
可以使用的算法有:
· 非线性优化算法
· 遗传算法或粒子群优化算法
· 动力学仿真和路径规划算法
题目背景与简单分析:
机械臂关节角路径的优化设计题目要求针对六自由度机械臂进行路径优化,以最小化末端误差和能耗为目标。六自由度机械臂广泛应用于工业自动化和精密操作,其关节角路径的优化直接影响机械臂的精度和能效。这道题目主要解决以下几个问题:绘制六自由度机械臂的零位状态简图,建立机械臂运动数学模型,优化关节角路径以最小化末端误差和能耗,设计绕过障碍物的最优路径,以及处理多次货物抓取任务的路径优化。
建模过程
-
绘制机械臂零位状态简图:根据题目提供的Denavit-Hartenberg(D-H)参数,绘制六自由度机械臂的初始位置图。D-H参数包括关节的初始位置和角度等,用于定义机械臂的几何结构。
-
建立机械臂运动数学模型:根据D-H参数和机械臂的几何结构,建立机械臂的正运动学模型,计算各关节角度变化对机械臂末端位置的影响。同时,建立逆运动学模型,用于计算给定末端位置下所需的关节角度。
-
优化关节角路径:目标是最小化末端误差和能耗。末端误差是指机械臂末端位置与目标位置之间的偏差,能耗包括关节转动和机械臂克服重力势能所做的功。构建目标函数,将末端误差和能耗作为优化目标,应用非线性优化算法进行路径优化。
-
绕过障碍物的路径优化:在已有模型基础上,引入障碍物约束,设计最优底座移动路径和关节角路径。使用栅格地图表示障碍物和自由空间,应用路径规划算法(如A*算法)计算最优路径。
-
多次货物抓取任务的路径优化:处理多个任务点的路径优化问题,结合末端误差和能耗优化目标,设计出最优的路径规划方案。
推荐算法
-
非线性优化算法:如梯度下降法、牛顿法、共轭梯度法等,用于解决关节角路径优化中的非线性优化问题。这些算法能够高效地找到最优解,最小化末端误差和能耗。
-
遗传算法(GA):适用于复杂的多目标优化问题。遗传算法通过模拟自然选择过程,迭代优化机械臂的路径,找到使末端误差和能耗最小化的解。
-
粒子群优化算法(PSO):一种全局优化算法,通过模拟鸟群觅食行为,找到全局最优路径。粒子群优化算法特别适用于多维空间的优化问题,在机械臂路径优化中表现出色。
-
A*算法:用于路径规划和绕过障碍物问题。A*算法通过启发式搜索,找到从起点到目标点的最优路径,适用于栅格地图中的路径规划。
-
逆运动学算法:如Jacobian逆矩阵法,用于计算机械臂末端位置对应的关节角度,确保路径优化过程中关节角度的合理性。
B题:VLSI电路单元的自动布局
这道题目主要是解决超大规模集成电路(VLSI)设计中的全局布局问题,目标是最小化电路单元之间的总连接线长,同时满足单元密度约束。涉及到HPWL(半周长线长)和RSMT(直线型斯坦纳最小树)两种线长估计方法。
VLSI布局是一个NP难问题,涉及复杂的优化和计算,需要掌握EDA工具的原理,并具备较强的算法设计和编程能力。
适合电子工程、电气自动化、集成电路设计与集成系统等专业的同学选择。
题目提供了较为详细的输入输出要求,但在具体算法实现和优化方法上有较大的自由度。
可以使用以下的方法:
· 线长估计模型(HPWL和RSMT)
· 全局布局和详细布局算法
· 密度计算和优化算法
题目背景与简单分析:
VLSI电路单元的自动布局问题是电子设计自动化(EDA)中的一个核心问题。随着集成电路设计复杂度的增加,自动布局已成为实现高效VLSI设计的关键。题目要求在矩形布局区域内确定所有电路单元的位置,以最小化单元之间的总连接线长,同时满足单元密度约束。这个问题分为全局布局和详细布局两个步骤。全局布局大致确定电路单元的位置,允许单元重叠;详细布局则消除重叠并进一步优化。题目还涉及半周长线长(HPWL)和直线型斯坦纳最小树(RSMT)两种线长估计方法。
建模过程
-
线长评估模型:利用题目提供的信息,设计一个与电路单元连线接口坐标相关的线长评估模型。该模型应满足:(1)每组估计线长与对应RSMT的差值尽可能小;(2)能应用于评估附件1中的总连接线长。通过分析电路单元之间的连线接口坐标,计算HPWL和RSMT线长,比较两者的差异,调整模型参数以提高估计精度。
-
网格密度评估模型:根据布局区域的尺寸、网格划分粒度和密度阈值,设计一个与电路单元坐标相关的网格密度评估模型。将布局区域划分为若干网格,计算每个网格的单元密度,确保其不超过特定阈值。结合线长评估模型,建立一个数学模型,以最小化总连接线长为目标,同时满足单元密度约束。
-
全局布局优化:应用上述模型完成全局布局,输出总连接线长(HPWL),并可视化结果(电路单元的位置)。使用优化算法在满足密度约束的前提下,调整电路单元的位置,最小化总连接线长。
-
布线密度模型改进:分析现有网格布线密度计算模型的问题,提出改进方案。应用改进后的布线密度模型,计算更新后的全局布局结果的布线密度,并对结果进行可视化。
-
综合优化模型:在全局布局和布线密度模型的基础上,修正数学模型,综合考虑最小化总连接线长和满足单元密度约束的同时,使网格布线密度的最大值越小。应用修正后的模型完成全局布局,输出总连接线长和网格布线密度,并进行可视化展示。
推荐算法
-
模拟退火算法:用于全局布局优化。模拟退火算法通过模拟物理退火过程,在初始高温状态下接受次优解,逐步降低温度,找到全局最优解。适用于大规模优化问题,能够有效避免陷入局部最优。
-
遗传算法(GA):适用于复杂优化问题。遗传算法通过模拟自然选择和遗传变异过程,迭代优化电路单元的位置,最小化总连接线长。遗传算法具有良好的全局搜索能力,适合处理高维度优化问题。
-
粒子群优化算法(PSO):模拟鸟群觅食行为,适用于全局布局优化。PSO算法通过调整粒子的位置和速度,找到全局最优布局。适用于连续空间的优化问题,能够有效处理电路单元的位置优化。
-
启发式搜索算法:如A*算法,用于布线密度优化。启发式搜索算法通过估计当前状态到目标状态的代价,找到最优路径,适用于路径规划和布线优化。
-
线性规划(LP):用于解决网格密度约束问题。通过建立线性约束条件,使用线性规划方法优化电路单元的位置,确保每个网格的单元密度不超过特定阈值。
C题:老外游中国
这道题目需要建立模型解决外国游客在中国游览时的最优旅游路线规划问题,综合考虑多个城市景点的评分、交通便利性、旅游花费等因素。涉及到组合优化、路径规划和多目标优化。
题目需要处理大规模数据集(352个城市,每个城市100个景点),并结合多种因素进行优化,对数据处理和优化算法有较高的要求。
适合大部分专业的同学选择。
题目设定了多个具体问题,但在模型建立和算法选择上有较大的自由度。
需要用到的算法
-
数据处理与分析算法
-
旅行商问题(TSP)算法
-
多目标优化算法
题目背景与简单分析:
这道题目是比赛的热门题目,是很多同学在训练的时候经常做的题目类型了,属于数据分析类题目,同时也是团队擅长的题目。需要一定的建模能力,和其他赛事赛题类型类似,建议大家(各个专业均可)进行选择。这道题目开放度适中,难度较易,是本次比赛获奖的首选题目。推荐所有专业同学选择门槛较低且开放度也相对较高。(这道题目会制作我们的原创论文)
C题要求建立模型,为外国游客在中国的144小时内规划最佳旅游路线。该问题包含多个子问题,包括确定全国最高评分的景点、综合评价城市吸引力、规划旅游路线以及个性化定制旅游方案。题目涉及数据处理、评价指标建立、路径优化和多目标决策等多方面内容。
建模过程
-
数据预处理:首先处理提供的352个城市的旅游景点数据,每个城市有100个景点。清洗数据,提取有用信息(如景点评分、游玩时长、门票信息等)。根据评分选出每个城市的最佳景点,并计算全国景点评分的最高分(BS)。
-
城市综合评价模型:建立城市综合评价指标,考虑城市规模、环保、人文底蕴、交通便利性、气候和美食等因素。可以采用层次分析法(AHP)或德尔菲法等多准则决策方法,为每个城市分配权重并计算综合评分,选出最吸引外国游客的50个城市。
-
旅游路线规划:
-
问题3:针对外国游客从广州入境,在144小时内游玩尽可能多的城市,使用旅行商问题(TSP)模型。结合高铁交通时间和票价信息,构建路径优化模型,目标是最大化游玩城市数量和综合游玩体验。应用蚁群算法(ACO)或遗传算法(GA)优化路线,计算总花费时间、费用和游玩景点数量。
-
问题4:在上述模型基础上,增加费用最小化目标,重新优化路线。采用多目标优化算法(如NSGA-II)在时间和费用之间找到平衡点,提供优化方案。
-
个性化定制旅游方案:
-
问题5:为只想游览山景的游客定制路线,从全国352个城市中选择评分最高的山景景点。结合高铁交通信息,使用启发式搜索算法(如A*算法)规划路线,目标是最大化游玩山景数量并最小化总费用。优化模型需考虑交通时间、门票和住宿费用。
推荐算法
-
层次分析法(AHP):用于城市综合评价。AHP通过构建层次结构,将复杂问题分解为若干层次,进行两两比较,计算各因素的权重,最终得出综合评分。
-
蚁群算法(ACO):适用于旅行商问题(TSP)的旅游路线规划。ACO模拟蚂蚁觅食行为,通过信息素更新和路径选择,寻找最优路线,最大化游玩城市数量。
-
遗传算法(GA):用于多目标优化和路径规划。GA通过模拟自然选择和遗传变异,迭代优化路线,适用于处理复杂的多目标优化问题。
-
非支配排序遗传算法II(NSGA-II):用于多目标优化。NSGA-II通过非支配排序和拥挤距离计算,找到一组Pareto最优解,适用于同时优化时间和费用。
-
启发式搜索算法(A)**:用于个性化定制旅游路线规划。A算法结合启发式估计,找到从起点到终点的最优路径,适用于路径规划和最短路径问题。
其中更详细的思路,各题目思路、代码、讲解视频、成品论文及其他相关内容,可以点击下方群名片哦!
相关文章:

2024华数杯数学建模竞赛选题建议+初步分析
提示:DS C君认为的难度:C<A<B,开放度:A<B<C。 综合评价来看 A题适合对机械臂和机器人运动学感兴趣的同学,尤其是有一定编程和优化算法基础的同学。不建议非相关专业同学选择。 B题挑战较大࿰…...

大模型的经典面试问题及答案
大语言模型(LLM)在人工智能中变得越来越重要,在各个行业都有应用。随着对大语言模型专业人才需求的增长,本文提供了一套全面的面试问题和答案,涵盖了基本概念、先进技术和实际应用。如果你正在为面试做准备,…...

nodejs环境搭建
1.准备工作 将他解压到指定路径(我是在D:\tools)并在解压文件下建立node_global和node_cache这两个目录 注1:新建目录说明(自带的比较难找,较麻烦) node_global:npm全局安装位置 node_cache:npm缓存路径 如图: 2.配置环境变量 …...
C#基础:LINQ表达式的单独定义和编译使用
//编写表达式 Expression<Func<AlarmGroupInfo, bool>> express x > x.DataSource 1 && x.AlarmStatus2;// 编译表达式 Func<AlarmGroupInfo, bool> compiledExpression express.Compile();// 应用到 LINQ 查询 var resultlistss alarmgroupl…...

前端面试:八股文系列(一)
更多详情:爱米的前端小笔记(csdn~xitujuejin~zhiHu~Baidu~小红shu)同步更新,等你来看!都是利用下班时间整理的,整理不易,大家多多👍💛➕🤔哦!你们…...

设施农业“AutoML“时代:大模型自动调参,让农业算法模型更简单易用
(于景鑫 北京市农林科学院智能装备技术研究中心)设施农业是现代农业的重要发展方向,但在数字化、智能化的进程中仍面临诸多挑战。传统的农业算法模型虽然可以为设施农业提供一定的决策支持,但在实际应用中往往受限于参数调优复杂、模型泛化能力差等因素。…...

LinkedList接口源码解读
LinkedList 接口源码解读 前言 因为追求质量,所以写的较慢。大概在接下来的三天内会把LinkedList源码解析出完。已经出完啦!废话不多说,正片开始! (文章最后面有后记哦~) 大家都知道,LinkedL…...
nohup将代码放到后端运行查看nohup命令
tail -f nohup.outnohup python your_script.py > /path/to/your/directory/output.log 2>&1 &...
MacOS的100个超实用技巧
目录 1. 界面和导航 1.1 使用热角 1.2 多桌面切换 1.3 快速访问应用 1.4 隐藏/显示菜单栏 1.5 使用Mission Control 2. 文件管理 2.1 使用Finder标签 2.2 快速查看文件 2.3 标签式窗口管理 2.4 使用Smart Folders 2.5 文件重命名 3. 系统设置 3.1 自定义Dock 3.…...

本地调试指引文档
在开发组件库时,我们经常需要在真实的项目中测试组件库的功能,所以需要进行本地调试,本文介绍两种组件库本地调试流程, 1.使用beta版本 2.使用npm link 两种都可以作为本地调试的方案,本文作为一个参考资料࿰…...

【C++】一堆数组 冒泡排序
冒泡排序,一种很常见的排序法师 这章要划重点,很重要!! 排序思路为前一个元素与后一个元素比大小,一直循环一轮,找出最大/最小的那个元素后,进行下一轮,找到第二大/小的元素......…...
[最短路SPFA]--启动!!!!!
基础模板 #include<bits/stdc.h> #define ll long long #define fi first #define se second #define pb push_back #define PII pair<int,int > #define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0) using namespace std; const int N 1e610; int …...

大模型是否潜在地进行多跳推理?
人工智能咨询培训老师叶梓 转载标明出处 以往的研究表明,基于Transformer的LLMs能够在参数中存储和检索事实信息,以完成简单提示,例如“Stevie Wonder的母亲是谁”。此外,当必要信息明确给出时,LLMs表现出了显著的上下…...
人为什么不能长期待在家里?三个原因告诉你答案
在现代社会的快节奏生活中,人们时常渴望能够拥有一段长时间待在家里的闲暇时光,幻想这会是一段惬意、舒适且自由的经历。然而,实际情况往往并非如此。许多人在经历了数日甚至更长时间的居家生活后,会逐渐感受到诸多负面情绪和不良影响。以下将详细阐述人为什么不能长期待在…...

MATLAB画散点密度图(附代码和测试数据的压缩包)
1. 有关 Matlab 获取代码关注WZZHHH回复关键词,或者咸鱼关注:WZZHHH123 怀俄明探空站数据解算PWV和Tm:怀俄明探空站数据解算PWV和Tm 怀俄明多线程下载探空站数据(包括检查和下载遗漏数据的代码):怀俄明多线…...
SSH配置命令
前置环境:端口配置IP地址,client和server之间可ping通,此处省略 server端: 开启stelnet [Huawei]stelnet server enable Info: Succeeded in starting the Stelnet server. aaa模式相关配置 #进入aaa模式 [Huawei]aaa # 添加用户admin和…...

谷粒商城实战记录-虚拟机开启密码认证登录
文章目录 一,虚拟机无法用用户名密码登录二,解决方案1,修改配置2,重启sshd服务3,测试SSH登录注意事项结论 参考文献 一,虚拟机无法用用户名密码登录 当使用Vagrant创建和管理虚拟机时,通常会通…...

C语言程序设计-[1] 基础语法
1、字符集 字符集:是ASCII字符集的一个子集。 注:基本上就是电脑键盘可以输入的一些字符。 2、标识符 标识符:用来命名程序中的一些实体,如:变量、常量、函数、数组名、类型名、文件名等。由一个或多个字符组成。 —…...
JavaSE第11篇:设计模式
一、创建型模式 1、工厂方法模式 2、抽象工厂模式 3、单例模式singleton /*** 单例* 饿汉式(线程安全的):在加载类的时候就会创建类的单例,并保存在类中。* 1.定义类变量实例并直接实例化,在类加载的时候就完成了实例化并保存在类中;* 2.定义无参构造…...

【Unity Shader】切线空间下计算凹凸映射
// Upgrade NOTE: replaced mul(UNITY_MATRIX_MVP,*) with UnityObjectToClipPos(*)Shader "Unlit/NormalTangent" {Properties{_Color("Color Tint", Color) (1, 1, 1, 1)_MainTex("Main Tex", 2D) "While"{}//法线纹理_BumpMap(&q…...
Java 8 Stream API 入门到实践详解
一、告别 for 循环! 传统痛点: Java 8 之前,集合操作离不开冗长的 for 循环和匿名类。例如,过滤列表中的偶数: List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...
Go 语言接口详解
Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)
宇树机器人多姿态起立控制强化学习框架论文解析 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一) 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...

DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...

pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)
目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关࿰…...

初学 pytest 记录
安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...
Mobile ALOHA全身模仿学习
一、题目 Mobile ALOHA:通过低成本全身远程操作学习双手移动操作 传统模仿学习(Imitation Learning)缺点:聚焦与桌面操作,缺乏通用任务所需的移动性和灵活性 本论文优点:(1)在ALOHA…...

基于 TAPD 进行项目管理
起因 自己写了个小工具,仓库用的Github。之前在用markdown进行需求管理,现在随着功能的增加,感觉有点难以管理了,所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD,需要提供一个企业名新建一个项目&#…...

C/C++ 中附加包含目录、附加库目录与附加依赖项详解
在 C/C 编程的编译和链接过程中,附加包含目录、附加库目录和附加依赖项是三个至关重要的设置,它们相互配合,确保程序能够正确引用外部资源并顺利构建。虽然在学习过程中,这些概念容易让人混淆,但深入理解它们的作用和联…...

毫米波雷达基础理论(3D+4D)
3D、4D毫米波雷达基础知识及厂商选型 PreView : https://mp.weixin.qq.com/s/bQkju4r6med7I3TBGJI_bQ 1. FMCW毫米波雷达基础知识 主要参考博文: 一文入门汽车毫米波雷达基本原理 :https://mp.weixin.qq.com/s/_EN7A5lKcz2Eh8dLnjE19w 毫米波雷达基础…...