0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

种群进化+邻域搜索的混合算法求解作业车间调度问题之算法原理

电子设计 来源:电子设计 作者:电子设计 2020-12-24 17:11 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

前言

过去小编简单了解过作业车间调度问题(JSP),这两个月简单接触了柔性车间调度问题(FJSP),但是因为一些原因打算暂时研究到这里。在研究的时候,小编发现网上这方面的中文资源不多,那么秉持着普度众生的原则,就在这里和大家分享一下最近研究的一些成果。

柔性作业车间调度问题介绍

之前我们曾经做过车间调度问题(JSP)的内容,相关可以看这篇文章:

这里再简单介绍一下FJSP:

集合表示一系列相互独立的工件,任一工件需要经过等一系列工序的加工方可完成,工序之间按照固定的加工顺序依次完成。集合表示可用的加工机器,表示工件的第道工序,可以在可用机器集合中的任意机器上进行加工。每道工序的加工时间与加工机器相关。

一道工序一旦开始加工,就不能中断。每台机器一次只能加工一道工序。在初始加工时刻,所有工件和机器都是可用的。

一般来说,该问题的目标是最小化Makespan,通常用L来表示,即从开始加工到所有工件加工完毕总的时长。

综上所述,柔性车间调度问题和车间调度问题相似,在此之上改变了一个条件:对JSP,每道工序只能在某个特定的机器上加工;对FJSP,工序可能有多个可加工的机器(且不同机器上加工时间不同)。

所以,FJSP不光要选择工序在机器上加工的顺序,还要选择在哪个机器上加工。这也意味着FJSP是比JSP更复杂的优化问题。

根据小编这段时间的研究,学术界目前比较常用的启发式求解算法是种群进化+邻域搜索的混合算法,其中GA+TS是比较成熟的算法体系。接下来主要参考论文 An effective hybrid genetic algorithm and tabu search for flexible job shop scheduling problem 的算法,介绍论文里的混合算法HA,以及小编自己复现的代码。

算法总体的流程如上图所示,简单来说就是在GA的过程中,对每一个子代个体进行tabu search优化。下面小编分别对GA部分和TS部分进行讲解。

遗传算法部分

大家知道,不同的启发式算法在不同问题下效果会有很大的差别。过去小编在研究VRP问题时,GA的表现不是很好,编码、解码过程也相对复杂。但是GA在FJSP上表现的却非常优秀,因此大部分算法采取GA或类似GA的种群进化算法作为基础。仅仅是GA部分,已经可以以相当快的速度得到还算不错的解。

编码解码

FJSP的GA编码采取两行数字的方式。一串叫做OS(operation sequence),一串叫做MS(machine sequence)。之前我们提到过,求解FJSP需要做两个选择:工序加工顺序的选择;工序加工机器的选择。顾名思义,两串编码分别对应这两种选择。

上图是一个FJSP算例的编码和对应解。

表a代表算例。

算例中有三个工件需要加工,每个工件分别有两道工序(不同工件加工工序不一定一样多)。除了J3的工序T2(task)外,所有工序都可以在三台机器上加工,对应的加工时间如表a所示。

审核编辑:符乾江
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编码
    +关注

    关注

    6

    文章

    1015

    浏览量

    56650
  • 车间调度
    +关注

    关注

    0

    文章

    4

    浏览量

    7031
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    西格电力智慧能源管理平台——算法如何优化调度

    能源管理平台的核心,西格电力提供智慧能源管理平台,咨询服务:1.3.7-5.0.0.4-6.2.0.0。——优化调度算法算法通过精准预测、动态决策、多目标优化,将调度从 “被动应对”
    的头像 发表于 11-04 15:16 954次阅读
    西格电力智慧能源管理平台——<b class='flag-5'>算法</b>如何优化<b class='flag-5'>调度</b>?

    SM4算法实现分享(一)算法原理

    SM4分组加密算法采用的是非线性迭代结构,以字为单位进行加密、解密运算,每次迭代称为一轮变换,每轮变换包括S盒变换、非线性变换、线性变换、合成变换。加解密算法与密钥扩展都是采用32轮非线性迭代结构
    发表于 10-30 08:10

    查找表与多项式近似算法实现初等函数

    查找表与多项式近似结合算法是一种把查找表算法和多项式近似算法综合到一起的算法。这种算法综合了两种基本算法
    发表于 10-28 08:10

    国密系列算法简介及SM4算法原理介绍

    一、 国密系列算法简介 国家商用密码算法(简称国密/商密算法),是由我国国家密码管理局制定并公布的密码算法标准。其分类1所示: 图1 国家商用密码
    发表于 10-24 08:25

    AI的核心操控:从算法到硬件的协同进化

           人工智能(AI)的核心操控涉及算法、算力和数据三大要素的深度融合,其技术本质是通过硬件与软件的协同优化实现对复杂任务的自主决策与执行。这一过程依赖多层技术栈的精密配合,从底层的芯片架构
    的头像 发表于 09-08 17:51 768次阅读

    DFT算法与FFT算法的优劣分析

    一概述 在谐波分析仪中,我们常常提到的两个词语,就是DFT算法与FFT算法,那么一款功率分析仪/谐波分析仪采用DFT算法或者FFT算法,用户往往关注的是能否达到所要分析谐波次数的目的,
    的头像 发表于 08-04 09:30 889次阅读

    分光光度法结合进化算法精确测定:金属氧化物薄膜厚度与光学常数

    。该方法在太阳能电池、传感器等领域至关重要,解决了传统优化算法易陷入局部最优、商业软件依赖初始猜测敏感的问题。通过进化算法(EAs)的群体搜索策略,实现了从350–
    的头像 发表于 07-21 18:17 487次阅读
    分光光度法结合<b class='flag-5'>进化</b><b class='flag-5'>算法</b>精确测定:金属氧化物薄膜厚度与光学常数

    基于FPGA实现FOC算法PWM模块设计

    哈喽,大家好,从今天开始正式带领大家从零到一,在FPGA平台上实现FOC算法,整个算法的框架如下图所示,如果大家对算法的原理不是特别清楚的话,可以先去百度上学习一下,本教程着重介绍实现过程,弱化原理的介绍。那么本文将从PWM模块
    的头像 发表于 07-17 15:21 3120次阅读
    基于FPGA实现FOC<b class='flag-5'>算法</b><b class='flag-5'>之</b>PWM模块设计

    无刷直流电机滑模观测器参数优化设计方法

    设计时间,同时能够降低观测器的误差。为了改进传统遗传算法易陷入局部收敛的问题,采用多种群遗传算法求解最优增益参数。实验结果表明提出的方法能够快速求解
    发表于 06-27 16:48

    FPGA使用Cordic算法求解角度正余弦值

    在进行坐标变换的时候,需要计算角度的正余弦值,而在FPGA中是不能直接进行求解的,需要采用其它的方式进行求解
    的头像 发表于 06-19 09:54 1147次阅读
    FPGA使用Cordic<b class='flag-5'>算法</b><b class='flag-5'>求解</b>角度正余弦值

    AlphaEvolve有望革新AI玩具芯片设计,算法进化驱动能效与成本双突破

    电子发烧友网综合报道,近期,谷歌 DeepMind发布了一款AlphaEvolve,是一款通用科学AI代理,基于大语言模型Gemini系列与进化计算框架,专注于算法发现与优化。可以支持数百行代码
    的头像 发表于 06-18 00:09 3491次阅读

    黑芝麻智能视觉与4D毫米波雷达前融合算法介绍

    本文介绍了黑芝麻智能视觉与4D毫米波雷达前融合算法,通过多模态特征对齐和时序建模,显著提升逆光、遮挡等复杂场景下的目标检测精度,增强辅助驾驶安全性。
    的头像 发表于 05-08 09:27 1948次阅读
    黑芝麻智能视觉与4D毫米波雷达前融<b class='flag-5'>合算法</b>介绍

    LSM6DSV16X内置的传感器融合算法SFLP,输出的四元数是自身坐标系下的还是全局坐标系下的?

    请问各位大佬,LSM6DSV16X内置的传感器融合算法SFLP,输出的四元数是自身坐标系下的还是全局坐标系下的?以及输出的陀螺仪偏置是实时更新的吗?谢谢!
    发表于 03-14 07:22

    提取LSM6DSV16X内置低功耗融合算法输出的四元数后,转换成欧拉角后遇到一个问题求解

    各位大佬好,在提取LSM6DSV16X内置低功耗融合算法输出的四元数后,转换成欧拉角后遇到一个问题,当Y轴与重力方向平行时,输出的角度与惯性测量单元绕自身Y轴转过的角度对应不上,且抖动增加,请问有什么解决方法吗?
    发表于 03-14 06:55

    PID控制算法的C语言实现:PID算法原理

    在工业应用中 PID 及其衍生算法是应用最广泛的算法之一,是当之无愧的万能算法,如果能够熟练掌握 PID 算法的设计与实现过程,对于一般的研发人员来讲,应该是足够应对一般研发问题了,而
    发表于 02-26 15:24