一、程序流程图初始化参数随机生成初始群计算初始群适应值是否满足循环次数选择交叉变异计算新群适应值新群替换原群循环次数+1是输出最优结果记录最优结果二、过程简介1、初始化参数:族群60,循环500次,交叉0。8变异0。6代沟0。92、初始化群:按调度优先级编码,比如3个零件,每个零件3个工序,就初始化:1、3、4、5、6、7、8、9、22、1、3、4、5、6、7、8、9等等3、计算适应值:解码成工序序列,计算时间4、选择:在原族群中,按轮盘法选择出60*0。9(代沟)=54个个体组成新族群。5、交叉:对选择出来的新族群进行交叉,在新族群中,随机选择2个个体(选择过的个体将不在选择,保证所有个体都选择),随机生成有一个数,如果大于交叉概率,就进行2点交叉。2点交叉位置每次都是随机的比如1、2、3、5、6、7、8、4、92、1、3、5、6、4、9、7、8如果交叉位置在2和5先生成0、2、3、5、6、0、0、0然后按下面的数据删除2、3、5、6后写入就是1、2、3、5、6、4、9、7、86、变异:对交叉出来的新族群进行变异,在新族群中,对每个个体,随机生成有一个数,如果大于变异概率,随机生成2个位置数据,将2个位置的数据进行交换7、替换:新的族群个体是54个,原来的族群为60,保留6个适应值好的,其他代替54个。三、计算效果图0501001502002503003504004505000500100015002000250030003500解的变化种群均值的变化0200400600800100012001400012345678910706071208081829050834010010110241727351527453754243445455453091929394958485212223242510361626310113132333486878810410510635649646478976777848491071081091213141516171819262728293637383965666768695657585997989979