2025/1/3 阅读综述论文

所有作业的最大完成时间称为Makespan

一、FJSP相关的发表文献的优化目标:

1.最大完成时间(The maximum completion time):CMax=max(1≤i≤n)ci

C是作业 J的完成时间

2.总流动时间(The total flow time):CFlow=∑(1≤i≤n)ci

3.最大机器工作负载(The maximum machine workload):WMax = max(1≤j≤m) wj

w是机器 M的工作负载

4.机器总工作负载(The maximum machine workload):WTotal=∑(1≤j≤m)wj

5.减少提前或延迟(Minimize the earliness or tardiness):Δi=|ci–di|

d是 Ji 的截至日期

······

二、SI(群智能算法)和EA(进化算法)的总框架

SI和EA拥有类似的优化问题框架:

1.用随机生成的或通过简单的启发式算法(如分派规则)生成的一些解来初始化群体。

所有决策变量的值应在其定义的范围或域中。

2.初始解通过计算其目标函数来评估。

3.重复迭代过程以用不同算法产生新解。

新的解被评估并基于通常预先设置的一些规则替换种群中的解。

更新相应解决方案的目标值。

4.重复执行迭代过程,直到满足某个停止条件。

5.最后输出最优解及相应的目标值

对于不同的SI和EA算法,产生新解的方式是不同的。

对于特定的算法,初始化种群和进行局部搜索的方法往往是不同的。

 三、介绍的四种常见的编码和解码策略

1. Binary-alphabet-based Strategy [177]

该策略是基于二进制字母表的为遗传算法提出的,它设计了一个特殊的策略,在一个矩阵的作业和机器。对于一个操作,如果机器不能处理它,则此矩阵中的条目设置为“0”。

如果此操作只能在此机器上处理,则值设置为“1”。如果它可以被多个候选机器处理,则该值被设置为符号“*"。

最后,如果选择这台机器来处理它,则将该值设置为这台机器上的开始时间和结束时间。

2. Machine-based Assignment and Operation Sequences [4]

在该策略中,有两个由离散机器索引和操作索引填充的向量用于编码。

第一种是机器分配,为每道工序分配一台加工机器。第二种是针对所有机器上的作业序列,其中每台机器上的作业序列是前后连接。

3. Unified Encoding Strategy [5], [6]

该策略将机器分配和操作序列放在一个向量中考虑。向量中的每个元素由三个值组成:作业索引、操作索引和所选机器索引。(不知道咋弄的。。)

由于其简单的解码方案的解决方案,这种编码策略也被许多研究人员使用。

4. Machine Assignment and operation Sequence [7], [8]

这种策略在一定程度上与第二种策略相似。但是,操作顺序的设定方法不同。

在该策略中,使用作业索引对操作序列进行编码。当作业索引第一次出现时,它表示此作业的第一个操作。

第二个外观描述了此作业的第二个操作。操作序列可以通过类比来编码,其中所有机器的操作序列交织在一起。

表三显示了这一战略的一个例子。第一行是工序索引,而第二行和第三行显示了机器分配和工序向量。第二行和第三行的值分别是机器索引和作业索引。

由于这种编码方法产生新的运算序列和进行局部搜索以获得更好的解的方便和简单,许多研究者使用这种编码方法。

 

在四种编码策略中,第三种和第四种编码策略更适合于FJSP,也更易于设计操作,用于在算法的每次迭代中生成新的解。

第三种是更容易将操作与选定的处理机相匹配,并将解决方案解码为调度。

第四个是更容易设计操作来生成新的解决方案,并集成局部搜索算子以获得更好的操作序列。

posted on 2025-01-03 20:43  axuu  阅读(26)  评论(0)    收藏  举报