雪浪云算力开发者大赛

news2024/10/7 12:22:27

1赛题背景

汽车生产工艺复杂,一辆汽车的制造需要完成焊装、涂装、总装三大工艺, 经过焊装车间、涂装车间、总装车间。各车间存在上下游关联关系,每个车间有自己的优化排序目标,需要综合考虑多种复杂的排序规则及工艺约束,制定合理的混流装配排序计划,通过对车身序列进行排序优化,从而保证生产物料消耗的均衡性以及各个生产工位的负荷均匀化等。

车辆生产流程

订单基本信息

注: 车顶无对比颜色视为与车身颜色相同。

2优化目标及其建模

::: block-2

焊装车间

  • 当车进入焊装车间时,由于焊装时不同车型使用的设备不同,需要根据车型切换生产,故该车间中设备的切换次数越少越好。

分析:焊装车间设备切换次数等价于生产序列中车型切换次数,则 f 1 f_1 f1的表达式可写为:

f 1 = 生产序列车型切换次数 (1) f_1 = 生产序列车型切换次数 \tag{1} f1=生产序列车型切换次数(1)
:::

::: block-2

涂装车间

  • 当车进入涂装车间时,由于喷漆(固定每 5 辆车清洗喷头或颜色切换也需额外清洗喷头)限制偏向颜色以 5 的倍数切换生产,故该车间中尽量连续生产颜色相同的车,且数量为 5 的倍数

f 2 f_2 f2建模思路,对于给定的 n n n辆同一颜色的车(车顶颜色和车身颜色相同),将其切分为 m m m组,每组车辆数 0 ≤ x j ≤ 5 0\le x_j \le 5 0xj5,即有 ∑ j = 1 m x j = n \sum_{j=1}^m x_j=n j=1mxj=n。对于车辆数 x j > 0 x_j>0 xj>0的组,车辆数越接近 5 5 5越好,因此可描述为

f 2 = 1 / ∑ i = 1 k ∑ j = 1 m x i j 2 (2) f_2 = 1/\sum_{i=1}^k\sum_{j=1}^m x_{ij}^2 \tag{2} f2=1/i=1kj=1mxij2(2)

k:表示有 k k k种不同色的连续车。

注:喷漆顺序为先喷车顶再喷车身,若一辆车车顶与车身颜色不同,则认为需要颜色切换,即需要额外清洗喷头,若一辆车车身颜色与下一辆车车顶颜色不同,也认为需要颜色切换。相邻两辆车在喷漆过程中若发生了颜色切换则认为颜色不连续。车顶颜色为无对比颜色时,认为车顶与车身颜色相同。

::: block-2

总装车间

  • 当车进入总装车间时,四驱车尽量连放但连放次数<4 为优。即连续两辆或连续三辆四驱车相邻都认为是符合预期的,故该车间中尽量使得四驱车连放,但是连放数<4。

f 3 f_3 f3建模对不满足要求的四驱车(包含孤立的四驱车数和连放次数大于等于4的四驱车数)进行计数即可。

f 3 = 序列孤立的四驱车数 + 连放次数大于等于 4 的四驱车数 (3) f_3 = 序列孤立的四驱车数+连放次数大于等于4的四驱车数 \tag{3} f3=序列孤立的四驱车数+连放次数大于等于4的四驱车数(3)
:::

::: block-2

订单总完工时间

  • 焊装一辆车需要 80s,此外焊装设备有个最小使用时间 30min/次。若在 30min 中内发生设备切换,则需要等到第 30min 才可切换;若连续使用 30min 后 发生切换,只需要考虑焊装时间即可。
  • 涂装一辆车分为涂装车身和车顶, 分别耗时 40s,清洗喷头耗时 80s。
  • 总装车间总装一辆车的耗时 80s,该车间耗时是一个固定值,最终直接加到总完工时间内即可。

订单总完工时间由车辆全部通过焊装车间 t 1 t_1 t1、涂装车间 t 2 t_2 t2和总装车间 t 3 t_3 t3​的总时间即序列最后一辆车的总时间。
f 4 = t 1 + t 2 + t 3 (4) f_4 = t_1+t_2+t_3 \tag{4} f4=t1+t2+t3(4)

f 4 f_4 f4的思考,对于同一批车辆,焊装、涂装和总装耗时是固定的,不同点在于焊装车间的设备切换时间和涂装车间的清洗喷头时间。故可对 f 4 f_4 f4修正为
f 4 = 设备切换时间 + 清洗喷头时间 (5) f_4 = 设备切换时间 + 清洗喷头时间 \tag{5} f4=设备切换时间+清洗喷头时间(5)
:::

::: block-2

数据预处理

由于目标函数和约束条件未涉及物料编号和发动机,因此仅从车型,车顶颜色,车身颜色,变速器(四驱和二驱)四个维度出发构造距离矩阵,距离矩阵的构造思路如下:
首先,车型转换最为耗时,则在车型这个纬度设置权重最大并且大于其他三个纬度的权重最大值,即若车辆 i i i和车辆 j j j的车型不同设置 d i j = 10 d_{ij} = 10 dij=10,否则 d i j = 0 d_{ij}=0 dij=0。其次,若车辆 i i i的车身颜色和车辆 j j j的车顶颜色不同,则需要清洗喷头增加耗时,因此设置在这种情形下 d i j = d i j + 5 d_{ij}= d_{ij} + 5 dij=dij+5;若车辆 i i i和车辆 j j j的车身颜色不同,则会导致车辆颜色连续的中断,因此设置在这种情形下 d i j = d i j + 1 d_{ij} = d_{ij} + 1 dij=dij+1。最后,考虑到四驱车的硬性约束,将车辆 j j j的变速器类型为四驱车的 d i j d_{ij} dij+0.5,距离矩阵的设计可使得同色车辆连续(保障 f 2 f_2 f2尽可能的小)。
:::

::: block-2

算法

Step1:将批次车辆按车型分组(在最小化 f 1 f_1 f1的基础上尽可能使得 f 2 f_2 f2 f 3 f_3 f3 f 4 f_4 f4小);

Step2:遍历分组,随机选择组内第一辆车,然后根据距离矩阵进行推进(在推进过程中,加入四驱车连续的约束)得到组内排序。

Step3:对组内排序进行优化,优化方式a:12->22->22->22->22->22(减少清洗喷头次数,可以在不影响 f 2 f_2 f2的前提下减小 f 4 f_4 f4),优化方式b:22->22->22->22->21(进一步减少清洗喷头次数从而降低 f 4 f_4 f4,但这会使得 f 2 f_2 f2增大),不同的数字表示颜色,如12表示车顶颜色为1,车身颜色为2。

Step4:对序列四驱车进行修正,保证四驱车连续2~3次(只有它是硬性约束)。
:::

github代码链接
欢迎关注微信公众号
在这里插入图片描述

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

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

相关文章

9.100ASK_V853-PRO开发板支持E907小核开发

0.前言 ​ 100ASK_V853-PRO开发板的V853芯片集成Arm Cortex-A7和RISC-V E907 双CPU&#xff0c;玄铁E907 是一款完全可综合的高端 MCU 处理器。它兼容 RV32IMAC 指令集&#xff0c;提供可观的整型性能提升以及高能效的浮点性能。E907 的主要特性包括&#xff1a;单双精度浮点单…

centos7设置时区,时间+时间同步的三种方式

centos7设置时区&#xff0c;时间时间同步的三种方式 1.centos7设置时区 1.1查看当前时区&#xff1a; timedatectl 1.2查看时间命令&#xff1a; date1.3选择时区命令 [rootlocalhost test]# tzselect Please identify a location so that time zone rules can be set co…

第五十六章 Unity 音频播放

Unity可以导入大多数标准音频文件格式&#xff0c;精通于在3D 空间中播放声音&#xff0c;还可根据需要提供其他效果。虽然播放声音是一件非常简单的事情&#xff0c;但是为了模拟现实直接中的各种声音效果&#xff0c;Unity会提供各种各样的组件来实现。 首先&#xff0c;我们…

创意无限,场景惊喜:让你的描述变成现实(Skybox Labs)

你是否曾经想象过能够用文字来创造出一个全新的世界&#xff1f;你是否曾经想过能够用一句话来生成一个令人惊叹的360天空盒&#xff1f;如果你的答案是肯定的&#xff0c;那么你一定要试试Skybox Labs&#xff0c;这是一个由Blockade Labs开发的AI-powered解决方案&#xff0c…

最全的免费SSL证书申请方式

在SSL广泛普及的今天&#xff0c;申请一张免费的SSL证书是一件非常容易的事情。这里为大家总结当前阶段(2023年)拥有一张免费SSL证书的方式。首推的方式为来此加密网站&#xff0c;文章后面会有详细的介绍。 下面介绍几种获取免费SSL证书的方式&#xff0c;大家可以根据自己的…

【运维知识进阶篇】集群架构-Nginx常用模块(目录索引+状态监控+访问控制+访问限制)

这篇文章给大家介绍Nginx常用模块&#xff0c;包括Nginx目录索引&#xff0c;Nginx状态监控&#xff0c;Nginx访问控制&#xff0c;Nginx访问限制。熟悉使用模块&#xff0c;才能给Nginx增加色彩。 目录索引模块 Nginx不允许列出整个目录浏览下载&#xff0c;可以用模块自己做…

QT窗体之间值的传递,多种方法实现

QT窗体之间值的传递&#xff0c;多种方法实现 前言[1] QT窗体之间值的传递&#xff0c;多种方法实现1、新建工程2、全局变量extern3、公共成员函数public4、信号与槽singnals5、总结与工程分享主窗口.cpp文件主窗口头文件子窗口.cpp文件子窗口头文件 [2] Qt在子窗口接收父窗口的…

Node.js版本管理工具,我选择n

文件收录&#xff1a; 个人网址&#xff1a;https://linglan01.cn/ Github&#xff1a; https://github.com/CatsAndMice/blog/issues 为什么要管理Node.js版本&#xff1f;这是我们要先明白的点。 假设我电脑Node.js版本为v14.x&#xff0c;日常工作中可能会遇到以下场景&…

c#入门教程(有一定计算机基础的人看)

废话不说&#xff0c;有一定基础的人看&#xff0c;如java等程序员 c#是什么&#xff1f; 开发语言&#xff0c;为什么要学&#xff1f;主流游戏是用这个开发 c#怎么运行? c#微软做的&#xff0c;微软做了个.net framework&#xff0c;c#运行在这个之上。windows自带.net …

8. 100ASK_V853-PRO开发板支持MPP媒体处理平台

0.前言 ​ MPP 系统控制模块&#xff0c;根据芯片特性&#xff0c;完成硬件各个部件的复位、基本初始化工作&#xff0c;同时负责完成 MPP&#xff08;Media Process Platform 媒体处理平台&#xff09;系统各个业务模块的初始化、去初始化以及管理 MPP 系统各个业务模块的工作…

python基于LBP+SVM开发构建基于fer2013数据集的人脸表情识别模型是种什么体验,让结果告诉你...

本身LBPSVM是比较经典的技术路线用来做图像识别、目标检测&#xff0c;没有什么特殊的地方 fer2013数据集在我之前的博文中也有详细的实践过&#xff0c;如下&#xff1a; 《fer2013人脸表情数据实践》 系统地基于CNN开发实现 《Python实现将人脸表情数据集fer2013转化为图像…

IP网络电话呼叫转移设置

这里的网络电话呼叫转移设置&#xff0c;我们以IP电话系统用方位的网络电话机为例说明 通话转移 当用户正在与对方通话时&#xff0c;并希望将呼叫转移到其他号码&#xff0c;这里有两种方法来转移呼叫&#xff0c;出席移转和非出席移转。 出席移转 出席移转也被称为“礼貌…

条形码阅读器 CnetSDK Barcode Scanner SDK Crack

条形码阅读器组件SDK CnetSDK Barcode Scanner SDK 为.NET程序员提供了一个免费测试的条形码阅读器软件&#xff0c;称为.NET Barcode Scanner SDK。它在从许多图像文件中读取条形码和识别条形码方面非常有效。这个.NET条形码库支持最流行的线性和2D条形码&#xff0c;如QR码&a…

膨胀阀的结构和工作原理(详细篇)

膨胀阀的工作原理 编辑搜图 膨胀阀也称节流阀&#xff0c;是组成汽车空调制冷系统的主要部件&#xff0c;安装在蒸发器入口处&#xff0c;如图 所示&#xff0c;是汽车空调制冷系统的高压与低压的分界点。其功用是&#xff1a;把来自贮液干燥器的高压液态制冷剂节流减压&#…

第五十七章 Unity 混音器

本章节我们介绍Unity 混音器 (Audio Mixer)&#xff0c;它允许我们混合各种音频源&#xff0c;并对音频源进行统一控制或应用各种效果。在Unity中混音器是一种资源文件&#xff0c;可以右键Create创建AudioMixer文件。虽然它是一个文件&#xff0c;但是Unity提供了图形化界面来…

人大李崇轩:我的生成模型修炼之路丨智源大会嘉宾风采

导读 AIGC的飞速发展离不开生成模型、深度学习以及多模态学习等领域研究的不断累积&#xff0c;其中生成模型的原理与算法发展是不可或缺的一部分&#xff0c;如&#xff1a;生成对抗网络 GAN 及其一系列变体、变分自编码器 VAE 及其一系列变体、自回归模型 AR、流模型 FLOW &a…

考虑多能负荷不确定性的区域综合能源系统鲁棒规划(MatlabPython代码)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

Interiorai: 室内设计工具平台

【产品介绍】 Interiorai是一个可以让用户从自己的房间照片中生成不同风格的室内设计的在线平台。用户只需上传一张房间的照片&#xff0c;选择想要的设计风格和模式&#xff0c;就可以看到AI生成的室内设计效果&#xff0c;并且可以下载或分享。帮助用户快速找到装修或改造房间…

即时聊天app开发-即时通讯app开发方案分析

如今&#xff0c;即时聊天APP层出不穷&#xff0c;它已经成为人们日常生活中密不可分的社交工具。如今&#xff0c;即时聊天APP不仅是聊天工具&#xff0c;也是企业营销的利器。我们经常可以在聊天主页上看到一些广告。如有必要&#xff0c;用户可以直接点击广告了解详情。即时…

五、云对象存储以及课程分类管理模块

本项目的存储图片和音频文件都存储在腾讯云的服务器中&#xff0c;本章先介绍存储图片的方式。 存储桶文件创建&#xff1a; 存储桶项目存储内容&#xff1a; APPID和密钥管理&#xff1a; APPID和密钥是整个云存储最为重要的验证依据&#xff0c;在配置文件中应用。 现在简要…