遗传算法操作流程

接下来给出遗传算法的框架

1、初始化:依据每个种群的特征随机生成第一代种群的全部个体;

2、求个体适应度:计算每个个体的适应度;

3、选择过程:依据一定的选择规范,选出一部分优秀个体参与交叉和变异操作;

4、交叉过程:群体中两两配对,交换部分染色体基因,完成交叉操作;

5、变异过程:随机改变个体中的部分基因,来实现变异操作;

6、终止判断:若新一代种群满足终止条件,停止算法迭代,记录此时的最优解为问题的最优解;否则,迭代次数加1,返回步骤2;

image-20210317154538854

车间调度问题描述

车间调度是指根据产品制造的合理需求分配加工车间顺序,从而达到合理利用产品制造资源、提高企业经济效益的目的。车间调度问题从数学上可以描述为有n个待加工的零件要在m台机器上加工已知各工件的加工时间,优化目标是如何确定工件的加工顺序以及每阶段工件在机器上的分配情况,使得最大完工时间极小化。


遗传算法求解车间调度问题方法

1.个体编码

当待加工的工件总数为k,工件n**i的加工工序共为m**j时,则个体表示为长度为Image,染色体前半部分表示所有工件在机器上的加工工序,后半部分表示工件每道工序的加工机器序号。如个体

该个体表达了4个加工工序都是2次的工件在3台机器上的加工顺序。其中前8位表示工件的加工顺序,为工件2->工件4->工件3->工件1->工件1->工件2->工件3->工件4;9到16位表示加工机器,依次为机器2->机器1->机器3->机器3->机器2->机器2->机器1->机器3。

2.适应度值

染色体的适应度值为全部工件的完成时间,适应度值计算公式为

image-20210317154956488

其中,time指全部任务完成时间。全部工件完成时间越短,该染色体越好。

3.选择操作

采用轮盘赌法选择适应度较好的染色体,个体选择概率为

image-20210317155030419

其中,image-20210317155059759表示染色体i在每次选择中被选中的概率

4.交叉操作

交叉操作首先从种群中随机选取两个染色体,并取出每个染色体的前位进行交叉。操作方法如下:交叉位置为5,只对个体前位进行交叉。


冷秋