一种带硬时间窗的刀具准时配送路径规划算法的制作方法

文档序号:14910333发布日期:2018-07-10 23:13阅读:来源:国知局

技术特征:

1.一种带硬时间窗的刀具准时配送路径规划算法,其特征在于包括以下步骤:

步骤1:已知刀具仓库中心中工位每个工序的开工时间和需求、每个工序的硬时间窗、闭合式车辆路径,且每个工序只有一辆车配送,按以下公式确定决策变量:

其中,xijk为表示工序之间的行驶顺序以及配送小车的变量,yik为表示工序由哪辆车配送的变量,i、j表示工序编号,i=1,2,…,N,j=1,2,…,N,N为工序总数,k表示车辆的编号,k=1,2,…,K,K为车辆总数;

步骤2:分别按以下公式建立不等式约束:

tid<ti<tiu (3)

其中,tid表示工序i的时间窗下限,tiu表示工序i的时间窗上限,ti表示配送车辆到达工序i所对应工位的时间;

步骤3:按照建立优化目标函数,其中,μi为工序i的满意度,按照计算,tie表示工序i的期望小车服务时间;

步骤4:随机产生popsize个个体作为初始种群,每个个体为所有工序编号的自然数全排列,即工序编号编码,popsize为遗传算法初始化参数,取值范围为10~200;

步骤5:根据各工序的时间窗要求,分别对每个个体进行解码,即将工序编号编码转化为工位编码,具体为:

步骤a:将小车的发车时间初始化为最早开工的工序的开工时间的前11min,针对一个个体,首先在工位编码的第一个编码位置插入0,然后从左到右遍历个体的工序编号编码,根据配送中心与工序编号所对应工位之间的行驶时间,找出能够在时间窗内到达工序的所在工位,如果可以找到,将工位编号放入工位编码里,并将其工序编号从工序编号编码中去掉,此时,小车的行驶时间为小车的发车时间加上配送中心到达工序编号所对应工位的行驶时间,转入步骤b;否则,改变小车的发车时间为工序编号编码第一个编码位置所对应工序的开工时间减去11min,然后从左到右遍历工序编号编码,根据配送中心与工序编号所对应工位之间的行驶时间,找到可以在时间窗内到达工序的所在工位,将工位编号放入工位编码里,并将其工序编号从工序编号编码中去掉,此时,小车的行驶时间为小车的发车时间加上配送中心到达工序编号所对应工位的行驶时间,转入步骤b;

步骤b:以小车的行驶时间为基础,从左到右遍历工序编号编码,根据工序编号所对应工位之间的行驶时间,寻找可以在时间窗内到达的工序所在的工位,将工位编号放入工位编码里,并将其工序编号从工序编号编码中去掉,小车的行驶时间更新为上一小车行驶时间加上工序编号所对应工位之间的行驶时间。重复此步骤,直到找不到满足条件的工序,转入步骤c;

步骤c:在工位编码的最后位置加入0,并判断此时工序编号编码的长度是否为0,如果为0,则解码结束;否则,返回到步骤a;

步骤6:按照fitness(i)=value(i),i=1,2...,popsize计算得到每个个体的适应度值,其中value(i)为第i个体的工序平均满意度值与车辆数量值的倒数之和,工序平均满意度是指工位编码中所有非0的编码对应的工序的满意度的平均值;车辆数量值是指工位编码中0的数量减1;

步骤7:根据步骤6计算出来的适应度值,采用比例选择方法对初始种群进行选择,得到适应度高的个体组成父代种群;

步骤8:以一定的交叉概率Pc,采用部分匹配法对步骤7选择出的个体进行交叉,得到子代种群,Pc的取值范围为0.4~0.99;

步骤9:以一定的变异概率Pm,采用逆转变异算法对步骤8得到的子代种群进行变异,得到下一代临时种群,Pm的取值范围为0.0001~0.1;

步骤10:记录临时种群中适应度值最高的个体,并判断是否达到最大迭代次数Nd,若是,则结束,从记录的每一代适应度值最高的个体所组成的集合中,找出适应度值最大的个体,则这个适应度值最大的个体解码所得的路径即为最优刀具配送路径;否则,以步骤9得到的临时种群为初始种群,返回步骤5,迭代次数加1,所述的迭代次数初始值为1,最大迭代次数Nd的取值范围为100~500。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1