一种基于遗传算法的穴盘苗自动移钵路径优化方法

文档序号:207940阅读:326来源:国知局
专利名称:一种基于遗传算法的穴盘苗自动移钵路径优化方法
技术领域
本发明涉及智能农业设施技术,尤其是涉及一种基于遗传算法的穴盘苗自动移钵路径优化方法。
背景技术
工厂化穴盘育苗中成苗率在80-95%之间,穴盘内除未发芽和漏播的孔穴,还有劣质钵苗,导致后续机械化批量移栽出现栽空、漏栽等现象,因此穴盘苗出厂前需要有不健康苗剔除和补苗环节。设施农业钵苗移栽机器人通过视觉检测钵苗健康状况和移钵系统实现各种功能的移栽,代替传统手工移栽,降低劳动强度,提高生产效率,且使秧苗移栽一致性 好。穴盘苗进入钵苗移栽机器人的补苗移栽系统,在各苗钵健康状况和位置信息均已知情况下,末端执行器从移栽穴盘将健康苗钵逐一取出补种到目的穴盘中被视觉检测不健康钵苗剔除后的空穴中去。目的穴盘内各空穴位置的随机性和移栽穴盘内可移栽苗钵的多选择性,致使移钵路径距离会随补种苗钵的先后顺序不同而变化。

发明内容
本发明的目的在于提供一种基于遗传算法的穴盘苗自动移钵路径优化方法,能够提高设施农业自动化作业中自动移钵机械手机械手臂工作效率,减少补苗工序时长。为了达到上述目的,本发明采用的技术方案是
本发明使用机器视觉技术生成目的苗盘苗位信息矩阵与移栽苗盘苗位信息矩阵;通过两个苗位信息矩阵进行正负实数插序编码并生成染色体;对生成初始种群建立的染色体进行适应度计算并由赌轮盘方法来筛选保留作为子代个体;对子代个体进行交叉操作;对子代个体进行单点变异;重插入操作保证初始种群规模;重复筛选、交叉、变异、重插入过程直至满足迭代条件后输出优化路径结果。所述的通过两个苗位信息矩阵进行正负实数插序编码并生成染色体,具体过程为负实数位于染色体编码奇数位,正实数位于染色体编码偶数位,重复此过程直至满足初始规模NMD条染色体的生成。所述的对生成初始种群建立的染色体进行适应度计算并由赌轮盘方法来选择保留作为子代个体,适应度函数为/(X) = I - (Disroue(x) - Mmroute) j(Maxroute- Mmrouts),将每条染色体适应度值线性化到区间,其中Disrout'e{x.)表示为当前染色体路径值,Mnroute表示所有染色体中最小路径值,Maxroute表示所有染色体中的路径最大值。所述的对子代个体进行交叉操作,假设对于目的穴盘有4个空穴和移栽穴盘有41个有苗穴的补苗路径问题,具体交叉算法过程描述如下
a)产生两个介于I至8之间的随机数i和j,其中i作为交配位,j作为交配步长;假设 i = 4,j = 3,而父代个体 A =(0, 20,-3, 16,-1, 18,-2,36,-4,O);父代个体 B =(O, 18,-1, 14,-3,7,-4, 16,-2,0);
b)首先将两个父代个体除原点O后的第i位到i+j位互换,若i+j>8,则视其均等于8 ;得到子代个体Al = (O, 20,-3,16,-I, 7,-4,16,-4,O);子代个体BI =(O, 18,-I, 14,-3,18,-2,36,-2,O);
c)对每个子代个体前后的原点O位去除后,从前开始搜索,发现相同的基因用1000代替;于是更新子代个体 Al = (0,20,-3,16,-I, 7,-4,1000,1000,O) ;B1 =(0, 18,-I, 14,-3,1000,-2,36,1000,O);
d)再对每个个体从除原点O后的第i+ I位开始遍历,所有1000都依次被有效基因替换;具体方法是若1000处于偶数位,即带负的标记,则将目的穴盘内的所有标记号与染色体除原点O后的每个偶数位对比,如果是没有出现过的,则以此来代替1000 ;若1000处于奇数位,即带正的标记,则将移栽穴盘内的所有标记号与染色体除原点O后的每个奇数 位对比,将没有出现过标记的归为一组,随机产生一个来代替1000 ;于是得到更新子代个体 Al = (O, 20,-3,16,-I, 7 -4,25,-2,O) ;B1 = (O, 18,-I, 14,-3,8,-2,36,-4, O);
这种交叉算法在考虑继承父代信息同时,尽可能扩大随机化搜索的范围,并保证移钵路径染色体特有基因个体排序的有效性。所述的对子代个体进行单点变异,其变异过程为
a)产生一个介于I至8之间的随机数k代表变异位,将子代变异个体除原点O后的第k个标记值取出,判断该标记的正负特性;
b)若标记位为负,则从除该标记数的其他负标记数中随机选择一个,从变异个体中遍历找到该值与变异位基因互换,假设k = 2,子代个体Al =(O, 20, -3,16,-I, 7,-4,25,-2,0),则在除-3 标记数的(_1,_2,-3,-4)中产生一个随机数(设为 _2),于是更新子代个体 Al = (0,20,-2,16,-I, 7,-4,25,-3,0);
c)若标记位为正,则从除该标记数的其他正标记数中随机选择一个与其进行基因互换,并遍历基因替换后的子代个体,若其中有同的基因,则用原标记数替换它,若无则满足了排序编码的特殊性要求;假设k = 3,则在除16标记数的(1,2,3,…,36)中产生一个随机数,假设该随机数为30,于是更新子代个体Al = (0,20,-3,30,-I, 7,-4,25,-2,O);若该随机数为 25,则更新子代个体 Al = (0,20,-3,25,-I, 7,-4,16,-2,O)。所述的重插入操作保证初始种群规模,是重插入所有子代个体代替最不适应的父代个体,以保持种初始种群规模。本发明具有的有益效果是
本发明通过机器视觉技术处理得到目的苗盘与移栽苗盘的苗位信息,运用遗传算法为技术手段,完成快速优化补苗机械手臂补苗工作路径,从而提高机械手臂工作效率,减少补苗工序时长。


图I表示本发明的基于遗传算法的自动移钵路径优化方法的流程图。图2表示通过机器视觉技术得到的目的苗盘苗位信息矩阵。图3表示通过机器视觉技术得到的移栽苗盘苗位信息矩阵。
图4表示优化过程中最优随优化代数变化图。图5表示通过最终优化路径而得到的机械手臂移钵路径图。
具体实施例方式下面结合程序流程图和实施例对本发明作进一步说明。步骤流程图如图I所示本发明使用机器视觉技术生成目的苗盘苗位信息矩阵(如图2所示)与移栽苗盘苗位信息矩阵(如图3所示);通过两个苗位信息矩阵进行正负实数插序编码并生成染色体;对生成初始种群建立的染色体进行适应度计算并由赌轮盘方法来筛选保留作为子代个体;对子代个体进行交叉操作;对子代个体进行单点变异; 重插入操作保证初始种群规模;重复筛选、交叉、变异、重插入过程直至满足迭代条件后输出优化路径结果。SllO :所述的通过两个苗位信息矩阵进行正负实数插序编码并生成染色体,具体过程为负实数位于染色体编码奇数位,正实数位于染色体编码偶数位,重复此过程直至满足初始规模NMD条染色体的生成。S120 :所述的对生成初始种群建立的染色体进行适应度计算并由赌轮盘方法来选择保留作为子代个体,适应度函数为/(x) = l-(Disroue(x) — &£nrout&)/(Ma :rou£e- AfEnraule),将每条染色体适应度值线性化到区间,其中Disroute(X)表示为当前染色体路径值,Minrouis表示所有染色体中最小路径值,Maxrouie表示所有染色体中的路径最大值。S130 :所述的对子代个体进行交叉操作,假设对于目的穴盘有4个空穴(如图2所示)和移栽穴盘有41个有苗穴(如图3所示)的补苗路径问题,具体交叉算法过程描述如下
a)产生两个介于I至8之间的随机数i和j,其中i作为交配位,j作为交配步长;假设 i = 4,j = 3,而父代个体 A =(0, 20,-3, 16,-1, 18,-2,36,-4,O);父代个体 B =(O, 18,-1, 14,-3,7,-4, 16,-2,0);
b)首先将两个父代个体除原点O后的第i位到i+j位互换,若i+j>8,则视其均等于8 ;得到子代个体Al = (O, 20,-3,16,-I, 7,-4,16,-4,O);子代个体BI =(O, 18,-I, 14,-3,18,-2,36,-2,O);
c)对每个子代个体前后的原点O位去除后,从前开始搜索,发现相同的基因用1000代替;于是更新子代个体 Al = (0,20,-3,16,-I, 7,-4,1000,1000,O) ;B1 = (O, 18,-I, 14,-3,1000,-2,36,1000,O);
d)再对每个个体从除原点O后的第i+ I位开始遍历,所有1000都依次被有效基因替换;具体方法是若1000处于偶数位,即带负的标记,则将目的穴盘内的所有标记号与染色体除原点O后的每个偶数位对比,如果是没有出现过的,则以此来代替1000 ;若1000处于奇数位,即带正的标记,则将移栽穴盘内的所有标记号与染色体除原点O后的每个奇数位对比,将没有出现过标记的归为一组,随机产生一个来代替1000 ;于是得到更新子代个体 Al = (O, 20,-3,16,-I, 7 -4,25,-2,O) ;B1 = (O, 18,-I, 14,-3,8,-2,36,-4, O);
这种交叉算法在考虑继承父代信息同时,尽可能扩大随机化搜索的范围,并保证移钵路径染色体特有基因个体排序的有效性。
S140 :所述的对子代个体进行单点变异,其变异过程为
a)产生一个介于I至8之间的随机数k代表变异位,将子代变异个体除原点O后的第k个标记值取出,判断该标记的正负特性;
b)若标记位为负,则从除该标记数的其他负标记数中随机选择一个,从变异个体中遍历找到该值与变异位基因互换,假设k = 2,子代个体Al =(O, 20, -3,16,-I, 7,-4,25,-2,0),则在除-3 标记数的(_1,_2,-3,-4)中产生一个随机数(设为 _2),于是更新子代个体 Al = (0,20,-2,16,-I, 7,-4,25,-3,0);
c)若标记位为正,则从除该标记数的其他正标记数中随机选择一个与其进行基因互换,并遍历基因替换后的子代个体,若其中有同的基因,则用原标记数替换它,若无则满足了排序编码的特殊性要求;假设k = 3,则在除16标记数的(1,2,3,…,36)中产生一个随机数,假设该随机数为30,于是更新子代个体Al = (0,20,-3,30,-I, 7,-4,25,-2,O);若该随机数为 25,则更新子代个体 Al = (0,20,-3,25,-I, 7,-4,16,-2,O)。
S150 :所述的重插入操作保证初始种群规模,是重插入所有子代个体代替最不适应的父代个体,以保持种初始种群规模。S160 :当遗传代数值gen大于等于规定迭代次数Maxgen时既满足终止条件,为保证能得到可靠优化的路径解,一般Maxgen需要取一个合适的值。S170:输出优化结果并作出路径图。以图2目的苗盘苗位信息矩阵与图3移栽苗盘苗位信息矩阵为输入,优化过程控制参数设置如下交叉率为O. 8,变异率为O. 3,代沟为O. 9,遗传代数为50。图4为每代解、种群均值随着遗传代数的变化情况,全局最优由遍历法计算得到,作为和遗传算法得出的最优解做对比。图5是在此实例下,由优化路径输出的移钵机械手动作路径图,移钵机械手由原点出发按图5中优化后的路径动作,完成移栽过程又回到原点。
权利要求
1.一种基于遗传算法的穴盘苗自动移钵路径优化方法,其特征在于使用机器视觉技术生成目的苗盘苗位信息矩阵与移栽苗盘苗位信息矩阵;通过两个苗位信息矩阵进行正负实数插序编码并生成染色体;对生成初始种群建立的染色体进行适应度计算并由赌轮盘方法来筛选保留作为子代个体;对子代个体进行交叉操作;对子代个体进行单点变异;重插入操作保证初始种群规模;重复筛选、交叉、变异、重插入过程直至满足迭代条件后输出优化路径结果。
2.根据权利要求I所述的一种基于遗传算法的穴盘苗自动移钵路径优化方法,其特征在于所述的通过两个苗位信息矩阵进行正负实数插序编码并生成染色体,具体过程为负实数位于染色体编码奇数位,正实数位于染色体编码偶数位,重复此过程直至满足初始规模NMD条染色体的生成。
3.根据权利要求I所述的一种基于遗传算法的穴盘苗自动移钵路径优化方法,其特征在于所述的对生成初始种群建立的染色体进行适应度计算并由赌轮盘方法来选择保留作为子代个体,适应度函数为/(x) = I -(Disroue(x) — Mmrouid)Minrouid),将每条染色体适应度值线性化到[O, I]区间,其中Disrouie(X)表示为当前染色体路径值,Minrouis表示所有染色体中最小路径值,Maxroute表示所有染色体中的路径最大值。
4.根据权利要求I所述的一种基于遗传算法的穴盘苗自动移钵路径优化方法,其特征在于所述的对子代个体进行交叉操作,假设对于目的穴盘有4个空穴和移栽穴盘有41个有苗穴的补苗路径问题,具体交叉算法过程描述如下 a)产生两个介于I至8之间的随机数i和j,其中i作为交配位,j作为交配步长;假设 i = 4,j = 3,而父代个体 A =(0, 20,-3, 16,-1, 18,-2,36,-4,O);父代个体 B =(O, 18,-1, 14,-3,7,-4, 16,-2,0); b)首先将两个父代个体除原点O后的第i位到i+j位互换,若i+j>8,则视其均等于8 ;得到子代个体Al = (O, 20,-3,16,-I, 7,-4,16,-4,O);子代个体BI =(O, 18,-I, 14,-3,18,-2,36,-2,O); c)对每个子代个体前后的原点O位去除后,从前开始搜索,发现相同的基因用1000代替;于是更新子代个体 Al = (0,20,-3,16,-I, 7,-4,1000,1000,O) ;B1 =(0, 18,-I, 14,-3,1000,-2,36,1000,O); d)再对每个个体从除原点O后的第i+ I位开始遍历,所有1000都依次被有效基因替换;具体方法是若1000处于偶数位,即带负的标记,则将目的穴盘内的所有标记号与染色体除原点O后的每个偶数位对比,如果是没有出现过的,则以此来代替1000 ;若1000处于奇数位,即带正的标记,则将移栽穴盘内的所有标记号与染色体除原点O后的每个奇数位对比,将没有出现过标记的归为一组,随机产生一个来代替1000 ;于是得到更新子代个体 Al = (O, 20,-3,16,-I, 7 -4,25,-2,O) ;B1 = (O, 18,-I, 14,-3,8,-2,36,-4, O); 这种交叉算法在考虑继承父代信息同时,尽可能扩大随机化搜索的范围,并保证移钵路径染色体特有基因个体排序的有效性。
5.根据权利要求I所述的一种基于遗传算法的穴盘苗自动移钵路径优化方法,其特征在于所述的对子代个体进行单点变异,其变异过程为a)产生一个介于I至8之间的随机数k代表变异位,将子代变异个体除原点O后的第k个标记值取出,判断该标记的正负特性; b)若标记位为负,则从除该标记数的其他负标记数中随机选择一个,从变异个体中遍历找到该值与变异位基因互换,假设k = 2,子代个体Al =(O, 20, -3,16,-I, 7,-4,25,-2,0),则在除-3 标记数的(_1,_2,-3,-4)中产生一个随机数(设为 _2),于是更新子代个体 Al = (0,20,-2,16,-I, 7,-4,25,-3,0); c)若标记位为正,则从除该标记数的其他正标记数中随机选择一个与其进行基因互换,并遍历基因替换后的子代个体,若其中有同的基因,则用原标记数替换它,若无则满足了排序编码的特殊性要求;假设k = 3,则在除16标记数的(1,2,3,…,36)中产生一个随机数,假设该随机数为30,于是更新子代个体Al = (0,20,-3,30,-I, 7,-4,25,-2,O);若该随机数为 25,则更新子代个体 Al = (0,20,-3,25,-I, 7,-4,16,-2,O)。
6.根据权利要求I所述的一种基于遗传算法的穴盘苗自动移钵路径优化方法,其特征在于所述的重插入操作保证初始种群规模,是重插入所有子代个体代替最不适应的父代个体,以保持种初始种群规模。
全文摘要
本发明公开了一种基于遗传算法的穴盘苗自动移钵路径优化方法。主要包括以下步骤,通过机器视觉处理技术得到目的苗盘与移栽苗盘的苗位信息,并生成相应的苗位矩阵;通过苗位矩阵随机生成实数路径编码并生成初始种群;对初始种群进行适应度计算筛选,通过变异、交叉的方法生成子代同时运用重插入维持染色体规模;重复变异、交叉、筛选、重插入的过程直至满足迭代条件后输出优化路径结果。本发明可以生成优化的补苗机械手臂动作路径,该路径能够提高机械手臂工作效率,减少补苗工序时长。
文档编号A01C11/02GK102870534SQ20121035312
公开日2013年1月16日 申请日期2012年9月21日 优先权日2012年9月21日
发明者蒋焕煜, 周鸣川, 童俊华, 周伟, 刘岩 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1