2019-mathorcupB题-环形穿梭机调度模型(思路篇)
前言
此次2019年的mathorcup杯B题和18年建模国赛题目类似,都是关于环形穿梭机(RGV)的调度问题,这里主要以mathorcup杯的赛题来讲解模型的建立部分,关于国赛的相关内容会在后续介绍。
RGV介绍
关于赛题详情请参见mathorcup官网,这里简单介绍一下RGV系统的构成。
有N辆穿梭车在轨道上跑,每次只能装载一个货物,在A侧上货口的上货的货物要求在B侧出货口运出,而在B侧上货的货物同样只能在A侧出货口运出。
通过对题目的分析不难发现,我们唯一能对整个RGV系统施加的影响只有穿梭车下一次装货或者卸货的窗口,假设每次每辆RGV都能选择对整个系统最有利的装/卸窗口,那么最后得到的结果便是题目要求的最优解。
(1)A、B侧进出口集合
(2)穿梭车当前状态
环形轨道上小车分为正在装货、运货中、进行卸货、空车四种状态,用aaa表示,穿梭车从一种状态转移至下一状态的时间记为bbb,穿梭车的窗口记为ccc,针对穿梭车当前装卸状态设置穿梭车状态函数。
图4穿梭车运行状态
第iii辆穿梭车当前状态statusistatus_istatusi 为:
(3)穿梭机在两两进出货口之间行驶路程
首先针对环形穿梭车系统的A、B两侧的进货口和出货口分别设置编号,以A侧的出货口3为起点1,根据逆时针方向依次编号。
动态规划是把多阶段过程转化成一系列单阶段问题,是研究多阶段决策优化问题的方法,本文利用动态规划求解两两地址间最短距离。根据题意进货口、出货口均匀分布在A、B两侧条件进行计算相关数据,计算相邻进出口之间距离:
由穿梭机匀速行驶可得状态转移方程:
RGV调度模型的建立
1.决策模型的建立
本文的决策目标为系统中最迟完成任务的穿梭车完成搬运货物的总时间,决策目标的最小值即为决策模型的目标函数。决策变量NestNestNest为小车下一个的窗口编号,约束条件为最终所有进货窗口货物量为0。
目标函数:
决策变量NextNextNext:
约束条件:
2.求解目标函数
Step1 构建单辆穿梭车状态转移函数:
单辆穿梭车状态转移函数表示单辆穿梭车在不考虑堵塞的条件下由当前状态转化为下一时刻的状态的过程。
单辆穿梭车状态转移函数:
每辆穿梭机转移时间为:bi1b^1_ibi1
Step2 构建整体状态转移函数
将第辆穿梭车由当前状态到下一时刻状态所用时间记为TiT_iTi,令第iii次整体状态转移时间TiT^iTi为所有穿梭车状态转移的最短时间。记此时唯一完成状态转移的小车编号为i=minIii=minI_ii=minIi,第次整体状态转移时间:
在允许超车的情况下,堵塞时间即为超车时间,将此时超车时间记为waitwaitwait,此时根据
第iii次整体状态转移时间以及单穿梭车状态转移函数得出第iii次整体状态转移函数F1(statusi)F_1(status^i)F1(statusi),即F1(statusi)F_1(status^i)F1(statusi)控制每次整体转移仅有一辆穿梭车发生状态转移。
则在允许超车情况下,第iii次整体状态转移方程:
整体状态转移时间与单辆穿梭车转移时间关系:
第iii次整体状态转移时间为Ti=min(T1i+wait1,T2i+wait2,……,TNi+waitN)T^i=min(T^i_1+wait_1,T^i_2+wait_2,……,T^i_N+wait_N)Ti=min(T1i+wait1,T2i+wait2,……,TNi+waitN),则此时唯一完成状态转移的穿梭车编号为minIimin I_iminIi。
Step3 计算每次整体状态转移的时间
当ai=1or2a_i=1or2ai=1or2时,waitiwait_iwaiti为0;当ai=3or4a_i=3or4ai=3or4且waitiwait_iwaiti不为0时,说明小车i发生了阻塞,此时,必然存在小车j在i之前完成转移(否则i无法完成状态转移),所以当waitiwait_iwaiti不为0时,综上所述,可得:
Step4构建回溯函数
整体状态转移函数可能发生超车现象,超车的充分必要条件:
①穿梭机i下一次装卸货物的窗口与当前窗口之间的路径上存在其他穿梭机正在进行上下货物,记为集合A.
②存在穿梭机集合,满足要求:穿梭机i在到达穿梭机blockblockblock正在装卸货物窗口的时间<穿梭机剩余装卸货物的时间。
回溯函数具体流程如如下:
模型的实现
本篇博客主要讲解了模型的建立思路,下面给出一种最简单的模型求解算法,(不是最优的)在下一篇文章2019-mathorcupB题-环形穿梭机调度模型(代码篇)中将根据该算法具体完成模型的实现,
1、基于就近原则的函数nextnextnext确定。
以下是模型求解的结果
状态转移次数 | 总共用时(s) | |
---|---|---|
N=3 | 1557 | 12699 |
N=6 | 1437 | 6785.7 |
N=9 | 536 | 2540.7 |
2019-mathorcupB题-环形穿梭机调度模型(思路篇)相关推荐
- 数学建模国赛2018B题RGV动态调度模型思路复述(这题也太硬了吧(啃不动
目录 一.问题分析 任务一 任务二 二.假设与符号说明 假设 变量 三.思路与模型 情况1:一道工序无故障作业调度 1. 关于RGV运行路径的分析 2. 关于RGV的作业调度方式 3. 调度模型的目标 ...
- 2011年数学建模国赛B题(交巡警服务平台的设置与调度模型)论文.doc
本博客下载链接有可以修改的word版本, 可免费下载阅览学习, 也可作为数学建模相关课程作业修改上交. 链接:https://pan.baidu.com/s/1xJKV-MeA1qJAevXpfLpk ...
- 列车matlab模型,【国家级精品课程】-中南大学-数学建模-lingo-matlab-优化建模-数模培训-全国赛论文-京沪线列车调度模型(B题)...
[国家级精品课程]-中南大学-数学建模-lingo-matlab-优化建模-数模培训-全国赛论文-京沪线列车调度模型(B题) 答卷编号: 答卷编号: 论文题目: 京沪线列车调度模型(B题) 参赛队员: ...
- 如何评价2022年数维杯国际赛C题【如何使用大脑结构诊断阿尔茨海默病】【D题:拉尼娜事件】思路模型代码全套资料+高清代码结果图+完整源程序+论文
资料获取方式我放到下面了,欢迎小伙伴一起学习交流 2022数维杯国际赛C题:https://mbd.pub/o/bread/Y5yVlp1x2022年数维杯国际赛[D题:拉尼娜事件]思路模型代码全套资 ...
- 2022年数维杯国际赛【C题:利用大脑结构特征和认知行为特征诊断阿尔茨海默病】【D题:拉尼娜事件】思路模型代码全套资料!全网最全,持续更新...
大家好呀,数维杯国际赛早上8点开始了,拿到赛题之后我也在第一时间研究,现在先给大家一个初步的选题建议及C题的初步思路.欢迎小伙伴一起交流 首先是选题建议: AB题目.也就是mcm类型的,理论方面难度较 ...
- 【直播】陈安东,但扬:CNN模型搭建、训练以及LSTM模型思路详解
CNN模型搭建.训练以及LSTM模型思路详解 目前 Datawhale第24期组队学习 正在如火如荼的进行中.为了大家更好的学习"零基础入门语音识别(食物声音识别)"的课程设计者 ...
- 蓝桥杯真题训练 2019.2题
2019第二题 标题:年号字串(本题总分:5 分) 小明用字母 A 对应数字 1,B 对应 2,以此类推,用 Z 对应 26.对于 27 以上的数字,小明用两位或更长位的字符串来对应,例如 AA 对应 ...
- 2023年五一数学建模 | 第二十届五一数学建模B题:快递需求分析问题思路
2023年五一数学建模 | 第二十届五一数学建模B题:快递需求分析问题思路 目录 2023年五一数学建模 | 第二十届五一数学建模B题:快递需求分析问题思路 基本介绍 问题1: 问题2: 问题3: 问 ...
- Goroutine 并发调度模型深度解析之手撸一个高性能 goroutine 池
文章目录 1 前言 2 Goroutine & Scheduler 2.1 线程那些事儿 2.1.1 用户级线程模型 2.1.2 内核级线程模型 2.1.3 两级线程模型 2.2 G-P-M ...
最新文章
- pycharm执行python程序报错ImportError: DLL load failed: torchvision找不到指定的程序
- 利用velocity.js将svg动起来
- android 前置摄像头预览时 镜像翻转_全面屏时代,原来手机前置摄像头都隐藏着一些缺点,你发现了吗?...
- 特征工程之自动特征生成(自动特征衍生)工具Featuretools介绍
- 蓝桥杯 ADV-239 算法提高 P0102
- 在 Adobe AIR 中为不同屏幕尺寸的多种设备提供支持
- c/c++混编到的问题 extern C 介绍【转】
- 自然语言处理(八)——语言模型性能评价
- Matlab带阻滤波器实验报告,有源滤波器实验报告
- Oracle创建用户后无法登录,报错ORA-01045: user lacks CREATE SESSION privilege
- html常用长度度量单位,度量长度的单位是什么 毫米以下的五个计量单位分别是什么?...
- 和风天气获取天气情况
- Spring学习笔记 之 Spring<全>
- 常见机器学习模型适用场景及优缺点
- Android 12 快速适配要点
- CVPR 2021 | 真内卷!Involution:构建新一代视觉识别网络
- 游戏被App Store下架 如何快速上线?
- 咕咚运动数据存储实践
- java与模式 之,《java与模式》学习之状态模式
- python开发bi报表_bi报表
热门文章
- php抓取curl下载文件,PHP 利用 Curl 函数实现多线程抓取网页和下载文件
- 中国互联网企业的生存模式与盈利思路
- 通过机器码获得注册码的完整方案
- Autodock--基于windows10系统下的详细安装教程
- ESP-IDF Kconfig文件配置
- C语言中time_t详解
- php拒绝式服务漏洞防御,PHPYUN最新版SQL注入(绕过防御)
- 【计算机 - 毕业设计论文】人事管理系统[免费论文]
- 调整时间,当日期遇到星期六|星期日,则需要跳过
- 四位行波进位加法器_《城市:天际线》中的图灵机:用水电管道做一个四位加法器...