2025华中杯数学建模选题建议及思路来啦!

大家好呀,2025年第十七届“华中杯”大学生数学建模挑战赛今天早上开赛啦,在这里先带来初步的选题建议及思路。

目前团队正在写B题完整论文,后续还会持续更新哈,大家三连关注一下防止迷路。

精力有限,以下只是简略的图文版初步思路,更详细的视频版完整讲解请移步:

2025华中杯数学建模选题建议及B题详细思路!_哔哩哔哩_bilibili

本次华中杯难度上A>C≈B。推荐大家选择B题目。
本次A题目数据处理和利润计算要求比较复杂,不过最不容易做的是后面第四问我们需要自己部署开源大模型,没有相关经验的队伍不建议选择。C题目虽然是比较经典的数据分析+机器学习预测题目,但比较难的是后面的数据收集部分,要收集到宜昌地区能用的相关指标数据并整合,如果大家能搜集到真实有效且多指标的数据,可以选择,除此之外不推荐,此外选择队伍预计也比较多,也很难做得出彩,获奖概率并不高。B题目比较硬核,主要是图论+优化,难点在于地图数据提取和路径规划,这个我到时候会给大家做好,这道题我们只要能得出优化结果,做出可视化,,获奖概率会高很多,大家到时候看我论文以及运行我的python代码即可,代码不需要你配环境,我会录制怎么运行的视频,无脑运行,很简单。

我们预计会在4.18日晚更新完毕B

接下来开始思路具体讲解:

B:共享单车的调度与维护问题

问题一:总量估算与分布测算

1. 目标: 估算校园内共享单车总数,并计算指定时间点(7:00, 9:00, 12:00, 14:00, 18:00, 21:00, 23:00)各停车点位的单车数量。

2. 思路:

数据预处理:

§ 读取附件1的Excel数据。

§ 将时间戳(小数表示的天数)转换为小时制,方便理解和匹配。例如,0.3125 * 24 = 7.5,即 7:30。

§ 处理异常值/特殊值:如 "200+",可以暂时按 200 计入,或根据上下文考虑一个略大的估计值(如205或210),但需注明假设。保守起见,使用200是安全的。

总量估算:

§ 共享单车总量在理想情况下是恒定的(不考虑增减投放和丢失)。但在任意时刻,部分单车可能处于使用中(在途)或停在未统计的区域。

§ 方法: 找到所有统计时间点中,所有统计点位单车数量之和的最大值。这个值可以作为校园内单车总量的下界估计。即 Total_Bikes ≈ max(sum(Count(location_i, time_t))) 对所有 t 和 i。选择这个最大和的时刻,是因为此刻观测到的单车最多,最接近真实总量。

分布测算 (填表1):

§ 挑战: 附件1的统计时间点与表1要求的时间点不完全吻合。

§ 方法: 需要进行时间和空间上的估计/插值。

§ 时间插值: 对于表1中要求的每个时间点 T_req (如 9:00),对于每个停车点 L_i:

· 在附件1中找到与 T_req 最接近的两个或多个实际统计时间点 t_before 和 t_after。

· 获取 L_i 在 t_before 和 t_after 的单车数量 Count(L_i, t_before) 和 Count(L_i, t_after)。

· 使用插值方法(如线性插值

§ 数据聚合/平滑: 附件1包含多天数据(周三至周日)。为了得到一个更具代表性的分布,可以先将相同或相近时间段(例如,所有工作日上午7:00-8:00的数据)的数据进行平均,然后再进行插值。或者,对每一天分别插值,然后对结果进行平均(可能需要区分工作日和周末)。

§ 处理缺失: 如果某个点位在某个时间段完全没有数据,需要说明数据缺失,或者基于该点位的性质(如宿舍区、教学区)和邻近点位的情况进行合理推断(但需谨慎并注明)。

结果呈现: 将计算得到的各点位在指定时间点的估算数量填入表1。

问题二:用车需求模型与调度模型

1. 目标: 建立用车需求模型,并为缓解高峰期供需矛盾建立调度模型。

2. 思路:

用车需求模型:

§ 定义: 需求主要指在某个时间段内,从某个点位出发的骑行需求(即需要取车的数量)。

§ 估计方法:

§ 基于问题1计算出的单车数量变化来推断。在时间段 (t, t+Δt) 内,点位 i 的单车数量减少量 max(0, Count(i, t) - Count(i, t+Δt)) 可以近似看作该时间段从该点出发的净需求

§ 结合附件3(学校作息时间表),识别高峰时段(如上课前 8:00-8:55, 14:00-14:45;下课后 11:05-12:00, 17:35-18:00;晚高峰 21:10-21:30 等)。重点分析这些时段的需求。

§ 模型形式: 可以是基于历史平均变化量预测未来短时段的需求。例如,预测早上 7:30-8:00 各点位的需求量 Demand(i, 7:30-8:00)。也可以建立更复杂的模型,如考虑星期几、天气(题目已限定晴朗天气)等因素的时间序列模型(若数据足够)。

§ 输出: 得到各点位在关键时间段(尤其是高峰期前)的预测单车需求量 D_i 和预测单车富余量 S_i(基于当前或预测的单车存量与需求的差值)。

调度模型:

§ 目标: 在高峰期来临前(例如,早上7:00-7:45之间进行调度,以应对8:00的上课高峰),使用3辆调度车(限速25km/h,每车容量20辆)从富余点调运单车到缺车点,最大程度满足即将到来的需求。

§ 模型类型: 这是一个带时间窗和容量约束的车辆路径问题 (Capacitated Vehicle Routing Problem, CVRP) 或取送货问题 (Pickup and Delivery Problem, PDP) 的变种。

§ 要素:

§ 节点: 所有停车点位 + 调度中心(运维处,位于校园东北角)。需要从附件2地图中提取各点位坐标,计算点位间距离(可以使用地图比例尺估算,或假设路网距离)。

§ 车辆: 3辆,容量20,速度25km/h。

§ 供需: 基于需求模型,确定哪些点是供应点(S_i > 0)和需求点(D_i > 0)。

§ 时间: 调度必须在指定时间窗口内完成(例如,在早上8:00前完成)。需要计算行驶时间和装卸时间(题目未给装卸时间,可假设一个固定值,如每辆车装/卸需要几分钟,或者暂时忽略)。

§ 决策变量:

§ 每辆调度车的行驶路线(访问点位的顺序)。

§ 在每个访问点装载/卸载的单车数量。

§ 目标函数:

§ 主要目标: 最大化满足的需求量(即运到缺车点的总单车数,但不超过其需求),或者最小化未满足的总需求。

§ 次要目标/约束: 最小化总调度时间或总行驶距离。

§ 约束条件:

§ 车辆容量约束:Load <= 20。

§ 车辆数量约束:最多3条路线。

§ 时间窗约束:完成调度的时间 < 高峰开始时间。

§ 供需平衡约束:从供应点取的车不能超过其富余量,送到需求点的车不能超过其需求量(或存储容量上限,虽然题目没提上限,但"200+"暗示可能有容量问题)。

§ 路线连续性:车辆从一个点到下一个点。

§ 求解方法:

§ 对于小规模问题,可以尝试建立整数规划 (Integer Programming, IP) 模型。

§ 对于实际规模,更常用的是启发式算法,如节约算法 (Savings Algorithm)、扫描算法 (Sweep Algorithm) 或基于模拟退火、遗传算法等的智能优化算法。

问题三:运营效率评价与布局优化

1. 目标: 建立评价模型评估当前(经问题2调度后)的运营效率,判断布局合理性,若不合理则提出调整方案,并重新评估。

2. 思路:

运营效率评价模型:

§ 选取指标: 需要定义“运营效率”。可以从以下几个维度考虑:

§ 用户满意度相关:

· 缺车率: 在需求高峰时段,用户在需求点找不到车的概率或次数(可通过模拟或基于Q2调度后的预测存量与需求计算)。

· 满溢率: 停车点车辆过多,导致用户无法还车的概率或情况(可关注那些数量经常远超平均或出现"200+"的点位)。

§ 资源利用率相关:

· 车辆周转率: 平均每辆单车每天被使用的次数(较难直接从现有数据得出,但可以通过总骑行次数估算,而总骑行次数又可从需求模型推断)。

· 供需平衡度: 各点位在一天内缺车和满溢情况的严重程度和频率(例如,计算各点位缺车量/满溢量的方差或总和)。

§ 运营成本相关:

· 调度效率: 问题2中调度模型的执行成本(如总行驶距离、总时间)。

§ 构建模型:

§ 可以将上述指标进行量化

§ 建立一个综合评价函数,例如通过加权求和的方式组合多个关键指标。Efficiency_Score = w1 * (1 - Avg_Shortage_Rate) + w2 * (1 - Avg_Overflow_Rate) + w3 * (Dispatch_Efficiency_Metric) + ...。权重的设定可以基于对不同目标的重视程度(如用户体验优先还是成本优先)。

布局合理性评估:

§ 依据:

§ 效率评价结果: 分析哪些点位是效率瓶颈(持续缺车或满溢)。

§ 地理位置与需求匹配度: 结合附件2地图和附件3作息时间,判断当前点位是否靠近主要人流产生地(宿舍、教学楼、食堂、图书馆等)和吸引地。点位间的距离是否合理(是否覆盖了主要路径?是否存在服务盲区?)。

§ 调度难度: 当前布局是否导致调度路线过长或效率低下?

§ 判断: 如果评价得分较低,或者存在明显的布局缺陷(如重要区域无点位、点位过于集中或分散),则认为布局不合理。

布局调整方案:

§ 原则: 增加服务覆盖、缓解供需矛盾、提高调度便利性。

§ 方法:

§ 增设点位: 在服务不足或需求量大的区域(如新的教学楼、远离现有站点的宿舍区)增加新的停车点。

§ 撤销/合并点位: 移除使用率极低或位置不佳(如过于偏僻、道路不便)的点位,或将距离过近且功能相似的点位合并。

§ 调整点位容量: 虽然题目未明确点位容量,但可以隐含地调整“期望容量”,影响调度目标(例如,对易满溢点减少调度目标存量,对易缺车点增加)。实际操作中可能是调整物理停车区域大小。

§ 利用地图工具: 在附件2地图上标记出人流热点区域,结合现有路线,规划新点位的位置。可以考虑使用地理信息系统 (GIS) 分析或选址模型(如 P-Median, P-Center)的思想。

调整后重新评估:

§ 模拟: 基于新的点位布局,重新进行(或调整)问题1的分布估计(可能需要假设新点位的初始分布或需求吸引力)、问题2的需求预测和调度模拟。

§ 计算: 使用相同的评价模型和指标,计算调整后布局的运营效率得分。

§ 比较: 对比调整前后的效率得分,验证调整方案的有效性。

问题四:故障车巡检维修模型

1. 目标: 基于优化后的布局,为维修师傅鲁迪规划何时、何路线进行故障车回收,以在最短时间内回收最多故障车,控制故障车比例。

2. 思路:

故障产生模型:

§ 总量: 校园单车总数 N (来自Q1)。

§ 日故障数: N * 6%。

§ 时空分布:

§ 时间: 假设故障在一天内随机发生,或与使用频率相关(高峰期故障可能更多)。可以简化为均匀分布在运营时间内。

§ 空间: 假设故障随机分布在各个停车点位。可以假设故障概率与该点位的单车停放数量或使用频率成正比。简化处理:平均分配到各个点位,或者根据前述分析的点位热度进行加权分配。

§ 模型: 估算在某个时间点 t,各个点位 i 累积的待回收故障车数量 Broken(i, t)。

巡检时机选择 (何时巡检):

§ 目标: 及时回收,降低故障车比例。

§ 策略:

§ 固定时间: 每天固定时间巡检(如下午低峰期、晚上结束运营后)。

§ 动态阈值: 当估计的总故障车数达到一定阈值(如接近一车容量20辆)时触发巡检。

§ 结合调度: 可以在执行常规调度(Q2)时,顺带回收故障车(如果调度车有空余容量且时间允许)。但题目描述鲁迪是专门的维修师傅,可能独立工作。

§ 选择: 考虑到目标是“最短时间最大限度回收”,可能每天一次或两次的集中回收较为合理。例如,选择在一天使用基本结束后(如下午或晚上)进行,此时故障车数量累积较多,一次巡检效率较高。

巡检路线模型 (何种路线):

§ 目标: 从运维处(东北角)出发,访问有故障车的点位,回收故障车(总数不超过20辆),最终返回运维处,要求总时间(行驶+查找搬运)最短。

§ 模型类型: 这又是一个车辆路径问题 (CVRP),或者如果一次能收完所有故障车(或当天计划回收的量),则简化为旅行商问题 (TSP)

§ 要素:

§ 节点: 运维处 + 所有有故障车的点位 i (根据故障模型和巡检时机确定)。

§ 车辆: 1辆维修车,容量20,速度25km/h。

§ 需求: 每个点位 i 的故障车数量 Broken(i, t)。

§ 服务时间: 在每个点位 i 查找和搬运故障车的总时间 = Broken_collected(i) * 1 分钟。

§ 决策变量: 访问点位的顺序。

§ 目标函数: 最小化总时间 T_total = T_travel + T_service。

§ T_travel = Total_Distance / Speed (距离来自地图,速度25km/h)。

§ T_service = sum(Broken_collected(i) * 1 min) (对所有访问的点 i)。

§ 约束条件:

§ 车辆容量:sum(Broken_collected(i)) <= 20。

§ 必须从运维处出发,最终返回运维处。

§ 访问的点位必须是那些有故障车的点。

§ 如果一次巡检无法回收所有故障车(例如总故障数 > 20),则需要规划最优的一次行程(回收最多或最“重要”的20辆),或者规划多次行程直到回收完毕。题目要求“最大限度将故障车辆运回”,暗示单次行程内要尽可能装满(或清空访问点)。

§ 求解方法:

§ 精确算法: 对TSP可用分支定界法等(如果点位少)。

§ 启发式算法: 如最近邻算法 (Nearest Neighbor)、插入算法 (Insertion Heuristics)、模拟退火、遗传算法等,用于求解TSP或CVRP。

总结:

1. Q1是基础数据分析。

2. Q2是核心运营环节(需求预测+调度优化)。

3. Q3是系统评估与战略调整(效率评价+布局优化)。

4. Q4是另一个重要运营环节(维护管理+路线优化)。

OK,上述思路的文档领取、视频讲解以及后续的完整成品论文预定请点击我的下方个人卡片查看↓:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值