2023年认证杯SPSSPRO杯数学建模D题(第一阶段)立体车库的自动调度问题全过程文档及程序

news2024/12/17 19:51:26

2023年认证杯SPSSPRO杯数学建模

D题 立体车库的自动调度问题

原题再现:

  随着人们生活水平的提高,汽车保有量日益增加,而城市土地资源有限,传统平面停车场土地面积利用率低, 这样便形成了交通拥挤、停车困难的现象。为解决该问题,立体车库应运而生,有效解决了车位难的问题,但是在实际使用过程中,现有的立体车库存在自动化程度低、排队时间长、适应性弱等问题。为了增强其适用性,建筑设计和调度方案等都是值得研究的问题。
  我们考虑一种密集排布的立体式车库,这种车库只有一个出口和一个通向出口的通道,为了高效地利用空间,车库的每层只能根据需求预留很少的腾挪空间,这就迫使某些位置的车辆的出库过程需要经历复杂的腾挪过程,所需时间相当可观。为了减少此类问题,这种车库会根据车辆的使用计划自动地移动调整车辆布局。车辆的排列和存放布局对于车辆进出车库的时间有很大影响,特别是遇到更改计划的时候更是如此。例如:车主临时改变行程计划,原定在 30 分钟后使用车辆,改为希望能在 10 分钟后使用车辆,系统如何快速响应需求,进行有效的排队调整,减少车主的等待时间。再比如:车主临时推后行程计划,原来计划在 10 分钟后使用车辆,现在推后到 1 个小时后使用,这种变化又该如何应对?
  第一阶段问题:
  1. 请结合考虑上面两种情况,提出一个合理的指标体系,用以衡量立体车库在用车计划出现改变时的适应能力;
  2. 给出一个立体车库自适应调度的优化算法;
  3. 提出一个单出口的立体化车库的布局设计和调度方案。

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

  近年来,由于经济的不断增长,人均汽车保有量也随之不断上升,城市停车难的问题愈演愈烈。传统停车模式的缺点也开始展现,而立体车库新技术又面临着诸多瓶颈。为此,如何高效的减少车辆存取等待时长,提高自动化立体车库的自适应能力,寻找最优化的调度方案成了当前备受关注的研究问题。本文通过参考目前主流立体车库发展现状,选择了一种完美符合题目需求的巷道堆垛式立体车库,构建了诸多模型用于衡量立体车库中不同调度方案在不同情况下的自适应能力与需要时长,为其前景发展提供参考,具体研究内容如下:
  对于问题一,本文提出以立体车库中存取车辆的排队等候时长作为该指标体系,并且通过建立一个排队论模型以直观的展示整个立体车库的运行模式。本文选用成都市某大型立体车库单位时间段内的存取车辆数据进行取样指标分析,提出假设并使用卡方检验对模型结果进行检验,最终取合适自由度数值计算出假设指标体系的反馈值为最佳。
  对于问题二,本文选择将车辆存取所需的总时长设置为目标函数,采用混合改进的GA-SA 算法对于车辆调度分配模型建立求解,并且针对存取用时数据的高低峰期设定不同的存取策略。本文使用 matlab 软件进行优化迭代并作出曲线进行对比分析,最后选择相较之下优化速度提升近的混合改进 GA-SA 算法作为新的优化调度算法。
  对于问题三,本文根据实需求构建出了三维物理的巷道堆垛式立体车库模型,并对其进行二维坐标轴化,以此进行调度方案的设计。为了体现方案的优化升级,本文选择建立不同时段不同优先策略的时间消耗模型,使用软件对数据进行绘图分析处理,对传统的单一存取调度方案升级为交叉替换混合方式。本文对比不同优先调度策略的仿真曲线数据图的结果,最后选择了合理的设计布局与最佳的存取车辆调度方案。

问题分析:

  (一) 问题 1 的分析
  针对问题 1 中要求设计一种能够衡量体现用车计划出现改变时立体车库适应能力的合理指标体系,本文根据目前国内停车市场的紧迫需求,以提高立体车库运营效率为主要目的,并且结合题目中所要求的“单出口、单通道”的“密集排布”立体车库条件,选择以巷道堆垛式立体车库为主要的研究对象,在这基础之上,本文采用用户排队等待的时长用于衡量立体车库的服务效率,以此作为衡量该立体车库在出现关于用车计划改变时适应能力的指标体系,具体通过建立排队论模型,以成都市区某大型立体车库为调查对象,通过真实数据进行模型推演,以验证这一标准体系的合理性。
  (二) 问题 2 的分析
  针对问题 2 中要求设计一个关于立体车库自适应调度优化算法,首先明确优化方向为提高其自适应调度效率,具体体现该车库存取车辆的策略,此处仍以成都某大型立体车库为数据样本,本文将车俩在立体车库内的总时长设置为目标函数,选择使用一种改进混合的遗传算法与模拟退火算法,通过两者的结合以达到进一步优化升级种群,升级收敛速率,进而达到提高全面搜索水平。其中主要以遗传算法(GA)为基底,将模拟退火算法(SA)作为帮助加入到车库之中。由初始化的种群判断初始温度,并算出车库在整个自适应调度过程中的时间,经过反复迭代升级作图观察其数据是否满足收敛,不断通过交叉,变异选择等操作,进而得到最佳解,并且完成退火过程产生新解,以得到全局最优,结束运行。最后在判断当前该种群内单个个体的算法能否满足收敛条件,若满足就输出最优个体,不满足则循环操作,流程如图。
在这里插入图片描述
  (三) 问题 3 的分析
  针对问题 3 要求对该立体车库进行布局设计与新的调度方案的设计,首先明确研究对象仍然选择巷道堆垛式立体车库为目标,并以成都某大型立体车库数据为参考(见附件 1),本文认为一个能够实现高效率存取车辆并具有高适应力的立体车库首先应该体现在存取车辆的方式,因此选择先建立一三维结构的立体车库模型,并且根据不同优先顺序将存取车辆的流程分为了三种,分别是“存车优先”,“取车优先”以及同步进行的“交叉策略”,并跟据参考的实际流程数据进行分时段分高低峰期进行分别讨论验证,建立不同种存取策略的时间消费模型,最终得出最佳布局设计并对堆垛机路径进行优化升级,结合三种存取策略设计出新的最佳方案。

模型假设:

  为了使得解答题目过程种得到适当简化,本文做出以下假设用于规范模型算法的合理范围。
  假设 1:假设本题中所有的模型合理假设均建立于巷道堆垛式立体车库这一唯一车库类型中。
  假设 2:假设本题中选择的某大型立体车库普通存取车辆采样的原始数据不考虑节假日等特殊情况。
  假设 3:假设在考虑设计车库的布局与调度方案上不考虑车库本身的运营成本。
  假设 4:不考虑机械的使用损耗情况,默认其一直始终保持最佳状态。

完整论文缩略图

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

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

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

% GA-SA 算法实现
% 问题描述:求解最大利润问题
% 输入参数:n=10,m=5,p=1,r=0.9,lambda=1,GA_rate=0.8,SA_rate=0.9,max_iter=1000
% 输出参数:最优解,最大利润
% 初始化种群
pop = rand(n, m);
% 初始化权重向量
w = ones(n, 1);
% 初始化损失函数值
loss = 0;
% 迭代算法
for it = 1:max_iter
% 随机选择一批个体
selected = pop(randperm(n, m), 1);
% 变异
for i = 1:size(selected, 1)
selected(i, :) = randi(size(pop, 1));
end
% 选择父代
parents = selected';
% 计算交叉概率
cross_prob = rbinom(m, 1, GA_rate);
% 进行交叉操作
for i = 1:size(parents, 1)
temp = parents(i, :);
for j = 1:size(parents, 1)
if temp(j) > temp(i)
temp(j) = temp(i);
end
end
parents(i, :) = temp;
end
% 计算交叉后的种群均值
new_pop = [pop(:, 1:m) parents'];
% 计算梯度
descent_vector = zeros(n, 1);
for i = 1:size(new_pop, 1)
descent_vector(i) = -rsqrt(sum(new_pop(i, :) * w' * new_pop(i, :)) /
size(new_pop, 1));
end
% 梯度更新
w = w - descent_vector * rsqrt(sum(descent_vector' * descent_vector) /
size(pop, 1));
% 计算损失函数值
loss = -sum(log(pop(:, 1:m))) / size(pop, 1);
% 输出迭代次数和损失函数值
if mod(it, 100) == 0
fprintf('Iters: %d, Loss: %f\n', it, loss);
end
end
% 输出最优解和最大利润
[~, best_index] = max(pop(:, 1:m));
best = pop(best_index, :);
max_profit = sum(best(:, 1:m)) / size(pop, 1);
fprintf('Best solution: %d %g\n', best_index, best(:, 1));
fprintf('Max profit: %g\n', max_profit);

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

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

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

相关文章

资深测试老鸟整理,超全自动化测试用例详解-小技巧总结...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 Python自动化测试&…

PCA的数学原理和python实现

最近学习了一下PCA,具体原理网址如下: CodingLabs - PCA的数学原理 主要原理是通过线性变换将原始数据变换为一组各维度线性无关的表示,其中将方差最大的方向作为主要特征。提取数据的主要特征分量,可用于高维数据的降维 主要算…

工作3年裸辞,从18K到38K,面试也····

现在的面试好像也不是那么的难 工作3年,换了好几份工作(行业流行性大),每次工作都是裸辞。朋友都觉得不可思议。因为我一直对自己很有信心,而且特别不喜欢请假面试,对自己负责也对公司负责。 但是这次没想…

Axure 教程:动态分组条形图(中继器)

本文将教大家如何用AXURE中的中继器动态分组条形图 一、效果介绍 如图: 预览地址:https://v7cmdp.axshare.com 下载地址:https://download.csdn.net/download/weixin_43516258/87807121?spm1001.2014.3001.5503 二、功能介绍 简单填写中继…

Lucene(4):Field域类型

1 Field属性 Field是文档中的域,包括Field名和Field值两部分,一个文档可以包括多个Field,Document只是Field的一个承载体,Field值即为要索引的内容,也是要搜索的内容。 是否分词(tokenized) 是:作分词处理…

requests爬虫

目录 一、爬虫概念及分类 二、requests模块 1、网页地址内容获取 2、图片爬取 3、UA伪装 三、动态加载数据 一、爬虫概念及分类 爬虫: 通过编写代码,让其模拟浏览器上网,然后在互联网中抓取数据的过程 分类:1、通用爬虫:要…

Linux: ARM32各CPU模式下栈配置

文章目录 1. 前言2. 背景3. ARM32 中断向量表 和 中断处理流程3.1 ARM32 中断向量表3.2 ARM32 中断处理流程 4. ARM32 各CPU模式下的栈配置4.1 SVC模式下各CPU栈配置(内核栈配置)4.1.1 BOOT CPU SVC模式栈配置(内核栈配置)4.1.2 非 BOOT CPU SVC模式栈配置(内核栈配置) 4.2 中断…

实现快速多点触控,让App自动化测试操作更方便

目录 前言: PyAutoGUI简介: 代码示例: 总结: 前言: 随着智能设备的普及,触摸点的数量和触摸操作的复杂度也在不断增加。要想在触控界面上获得更高效率和更好的体验,多点触控操作是必不可少的…

历经70+场面试,我发现了大厂面试的套路都是···

今年的金三银四刚刚过去,我又想起了我在去年春招时面试了50余家,加上暑期实习面试了20余家,加起来也面试了70余场的面试场景了。 基本把国内有名的互联网公司都面了一遍,不敢说自己的面试经验很丰富,但也是不差的。 …

【JAVAEE】认识网络及网络通信

目录 1.网络发展史 1.1独立模式 1.2网络互连 1.2.1局域网 1.2.2广域网 2.网络通信基础 2.1IP地址 2.2端口号 2.3协议 2.4五元组 2.5协议分层 2.5.1什么是协议分层 2.5.2协议分层的作用 2.5.3TCP/IP五层(或四层)模型 3.封装和分用 1.网络发…

调用百度API自动生成春联

目录 1、作者介绍2、百度智能春联介绍录2.1 功能介绍2.2 技术特色 3、智能春联API接口介绍3.1 请求参数3.2 返回参数 4. 操作流程5. 代码实现 1、作者介绍 范宇帅,男,西安工程大学电子信息学院,2022级研究生 研究方向:多机器人协…

〖C++11〗线程库详解

「前言」文章是关于C11线程库相关的 「归属专栏」C嘎嘎 「笔者」枫叶先生(fy) 「座右铭」前行路上修真我 「枫叶先生有点文青病」 「每篇一句」 请不要把陌生人的些许善意, 视为珍稀的瑰宝, 却把身边亲近人的全部付出, 当做天经地义的事情&am…

比赛记录:Codeforces Round 874 (Div. 3) A~G

传送门:CF 前题提要:赛时A出了5道题,并且都是一遍过的,F题也已经找到了解决方法,但是没时间完成了.以为应该能上分,但是没想到赛后E题被hack掉了…绝了.然后打完这场 d i v 3 div3 div3后立马阳了,加上一大堆烦心事(包括但不限于各类考试).就导致现在才写出这篇题解. A题:A. …

移动机器人 | 火星探矿机器人

01、需求分析 “火星探矿机器人”旨在要开发若干个自主机器人,将其送到火星上去搜寻和采集火星上的矿产资源。 火星环境对于开发者和自主机器人而言事先不可知,但是可以想象火星表面会有多样化的地形情况,如河流、巨石、凹坑等,机…

公司从字节招来一个28K的测试工程师,让我见识到了什么才是真正的测试天花板

今天上班开早会就是新人见面仪式,听说来了个很厉害的大佬,年纪还不大,是上家公司离职过来的,薪资已经达到中高等水平,很多人都好奇不已,能拿到这个薪资应该人不简单,果然,自我介绍的…

队列——“数据结构与算法”

各位CSDN的uu们你们好呀,又好久不见啦,最近有点摆烂,甚是惭愧!!!!今天,小雅兰的内容是队列,下面,让我们进入队列的世界吧!!&#xff0…

Trigger +Pipeline 完整实战案例

2.4.1 案例环境说明 示例项目:http://code.icloud2native.com/root/spring-boot-helloWorld.git 触发机制: 用户推送代码至项目仓库由Push Hook 自东触发pipeline的流水线的执行 2.4.2 项目实现 1、在k8s上部署一个gitlab,前面上节已经完成。 2、运…

海睿思分享 | 类chatgpt模型在信息抽取领域的应用

大语言模型(LLM,Large Language Model)是指能够处理海量数据、拥有百亿级参数的深度学习模型,它已成为⼈⼯智能领域中的新热点。2022 年 11 ⽉ 30 号 ChatGPT 发布,其卓越的性能表现给整个⾏业带来了巨⼤的冲击。⼈们不…

2023年春季期末网球理论复习资料

(含2023/2022/2021时事题,基于2012年期末网球理论复习资料修改) 目录 网球的起源 网球的主要赛事 三大网球协会 大满贯 网球的场地 1. 球场线 2. 网球的球网 3.场地的类型 网球的规则 1.发球规则 2.计分方法 3.通则 4.赛…

在Octane中提升渲染速度的技巧(第1部分)

Mike Griggs是一位数字内容创建者,在为众多客户创建Mograph,VFX和CGI方面拥有超过二十年的经验。迈克格里格斯(Mike Griggs)在Creative Bloq上写了很多博客,该博客是国际媒体集团和领先的数字出版商Future plc的一部分…