双变量施肥装置的控制序列优化方法及装置转让专利

申请号 : CN201910127206.3

文献号 : CN109696831B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘刚张季琴胡号黄家运

申请人 : 中国农业大学

摘要 :

本发明实施例提供一种双变量施肥装置的控制序列优化方法及装置,所述方法包括:构建双变量施肥装置的排肥量预测模型,并获取所述双变量施肥装置的排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围;根据所述排肥量预测模型、排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围,以及目标排肥量,构建排肥量控制的多目标优化问题;利用基于分解的多目标差分进化算法MOEA/D‑DE对所述多目标优化问题进行求解。本发明综合考虑了双变量施肥装置控制过程中的排肥量准确性、稳定性以及控制实施的快速性,能够提供综合性能更优的控制序列。

权利要求 :

1.一种双变量施肥装置的控制序列优化方法,其特征在于,包括:

构建双变量施肥装置的排肥量预测模型,并获取所述双变量施肥装置的排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围;

根据所述排肥量预测模型、排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围,以及目标排肥量,构建排肥量控制的多目标优化问题;

利用基于分解的多目标差分进化算法MOEA/D-DE对所述多目标优化问题进行求解,获得所述目标排肥量对应的控制序列的Pareto解集;

其中,所述排肥量控制的多目标优化问题以排肥量控制的准确性、稳定性和快速性为目标函数,并以所述排肥口开度调整范围和排肥轴转速调整范围为约束条件;

其中,所述根据所述排肥量预测模型、排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围,以及目标排肥量,构建排肥量控制的多目标优化问题的步骤,具体为:利用所述排肥量预测模型获取本次控制序列对应的预测排肥量,计算所述目标排肥量和所述预测排肥量之间的相对偏差,以所述相对偏差与许用误差的差值最小为准确性目标函数;

根据所述排肥口开度调整范围和排肥轴转速调整范围确定调节中心,以本次控制序列与调节中心的欧几里得距离最小为稳定性目标函数;

根据所述排肥口开度单位调节时间和排肥轴转速单位调节时间,计算上次控制序列到本次控制序列的开度调节耗时和转速调节耗时,以所述开度调节耗时和转速调节耗时中的较大值最小为快速性目标函数;

以所述排肥口开度调整范围和排肥轴转速调整范围为约束条件;

其中,所述准确性目标函数具体为:

其中,qt为目标排肥量,qp为根据预先构建的排肥量预测模型获得的预测排肥量,qp=g(L1,N1),(L1,N1)为本次控制序列,L1表示本次排肥口开度,N1表示本次排肥轴转速,ε为许用误差;

其中,所述稳定性目标函数具体为:

其中,s1为归一化后的本次控制序列,sM为归一化后的调节中心,l1为归一化后的本次排肥口开度,n1为归一化后的本次排肥轴转速,lM为归一化后的开度调节中心,nM为归一化后的转速调节中心;

其中,所述快速性目标函数具体为:

其中,T(tL,tN)为单位调整时间,tL为排肥口开度单位调节时间,tN为排肥轴转速单位调节时间,S0为上次控制序列,L0为上次排肥口开度,N0为上次排肥轴转速,S1为本次控制序列,L1为本次排肥口开度,N1为本次排肥轴转速。

2.根据权利要求1所述的方法,其特征在于,所述利用基于分解的多目标差分进化算法MOEA/D-DE对所述多目标优化问题进行求解,获得所述目标排肥量对应的控制序列的Pareto解集的步骤之后,还包括:从所述Pareto解集中选择一种权重向量下的Pareto解作为最优的控制序列。

3.根据权利要求1或2所述的方法,其特征在于,所述利用基于分解的多目标差分进化算法MOEA/D-DE对所述多目标优化问题进行求解,获得所述目标排肥量对应的控制序列的Pareto解集的步骤,具体为:初始化基于分解的多目标差分进化算法MOEA/D-DE的参数、初化初代种群个体,设置用于存储Pareto非支配解的外部种群EP为空;

为所述多目标优化问题的每个子问题分配权重向量,并计算权重向量之间的欧几里得距离,找到每个子问题最近邻域内的Tn个邻域子问题;

每个子问题在其邻域内进行交叉、变异,产生新解,若新解的切比雪夫聚合值更优,则更新种群个体以及目标函数值,否则,保持当前值;

完成整个邻域内的更新,并更新外部种群EP中存储的非支配解;

判断是否达到预设进化代数,若达到预设进化代数,则输出EP,获得所述目标排肥量对应的控制序列的Pareto解集。

4.根据权利要求1或2所述的方法,其特征在于,所述构建双变量施肥装置的排肥量预测模型的步骤,具体为:采集不同排肥口开度和排肥轴转速组合下所述双变量施肥装置单位时间内的排肥量,并以此构建样本数据集;

基于所述样本数据集,以排肥口开度和排肥轴转速作为输入,排肥量为输出,构建基于广义径向基神经网络的排肥量预测模型。

5.一种双变量施肥装置的控制序列优化装置,其特征在于,包括:

预测模块,用于构建双变量施肥装置的排肥量预测模型,并获取所述双变量施肥装置的排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围;

构建模块,用于根据所述排肥量预测模型、排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围,以及目标排肥量,构建排肥量控制的多目标优化问题;

求解模块,用于利用基于分解的多目标差分进化算法MOEA/D-DE对所述多目标优化问题进行求解,获得所述目标排肥量对应的控制序列的Pareto解集;

其中,所述排肥量控制的多目标优化问题以排肥量控制的准确性、稳定性和快速性为目标函数,并以所述排肥口开度调整范围和排肥轴转速调整范围为约束条件;

其中,所述构建模块具体用于:

利用所述排肥量预测模型获取本次控制序列对应的预测排肥量,计算所述目标排肥量和所述预测排肥量之间的相对偏差,以所述相对偏差与许用误差的差值最小为准确性目标函数;

根据所述排肥口开度调整范围和排肥轴转速调整范围确定调节中心,以本次控制序列与调节中心的欧几里得距离最小为稳定性目标函数;

根据所述排肥口开度单位调节时间和排肥轴转速单位调节时间,计算上次控制序列到本次控制序列的开度调节耗时和转速调节耗时,以所述开度调节耗时和转速调节耗时中的较大值最小为快速性目标函数;

以所述排肥口开度调整范围和排肥轴转速调整范围为约束条件;

其中,所述准确性目标函数具体为:

其中,qt为目标排肥量,qp为根据预先构建的排肥量预测模型获得的预测排肥量,qp=g(L1,N1),(L1,N1)为本次控制序列,L1表示本次排肥口开度,N1表示本次排肥轴转速,ε为许用误差;

其中,所述稳定性目标函数具体为:

其中,s1为归一化后的本次控制序列,sM为归一化后的调节中心,l1为归一化后的本次排肥口开度,n1为归一化后的本次排肥轴转速,lM为归一化后的开度调节中心,nM为归一化后的转速调节中心;

其中,所述快速性目标函数具体为:

其中,T(tL,tN)为单位调整时间,tL为排肥口开度单位调节时间,tN为排肥轴转速单位调节时间,S0为上次控制序列,L0为上次排肥口开度,N0为上次排肥轴转速,S1为本次控制序列,L1为本次排肥口开度,N1为本次排肥轴转速。

6.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至4任一所述的方法。

说明书 :

双变量施肥装置的控制序列优化方法及装置

技术领域

[0001] 本发明实施例涉及变量施肥计算领域,更具体地,涉及一种双变量施肥装置的控制序列优化方法及装置。

背景技术

[0002] 变量施肥技术能够根据土壤营养状况按需投入肥料,能够有效降低肥料使用,提高作物产量,提高肥料利用率同时减少环境污染,是现代农业发展的重要方向。现有技术中已公开了双变量施肥装置,通过控制外槽轮开度和排肥轴转速两个变量来调整施肥量,以提高施肥均匀性和准确性。但目前对双变量施肥装置的控制仍以转速优先或者开度优先的单变量控制,或者分档位控制为主,没有真正实现双变量同时控制,没有充分发挥双变量施肥装置的结构优势。
[0003] 对于双变量排肥装置,给定一个确定的目标排肥量,根据排肥量、排肥轴转速和排肥轴开度之间的映射关系可以获得无穷多种转速和开度组合,如何选取最佳的控制序列以达到最好的控制目标是近年来的研究重点和难点。
[0004] 现有技术通常是针对两个方面的控制性能要求来确定转速和开度组合,比如利用非线性回归方法实现的控制序列可有效降低外槽轮排肥过程的脉动性,避免了小施肥量下的大开度小转速现象。但是,考虑两个方面因素的方法,针对不同方面的控制性能要求通常采用的是固定权重,目标函数是用加权和法求出的,所获得的控制序列不够准确。因此,如何在需要综合考虑多个方面的控制性能要求的情况下,选取出最佳控制序列,目前仍然没有好的解决方案。

发明内容

[0005] 本发明实施例提供一种双变量施肥装置的控制序列优化方法及装置,用以解决现有技术确定控制序列时的上述缺陷,能够综合考虑多个方面的控制性能要求选取出双变量施肥的最佳控制序列。
[0006] 第一方面,本发明实施例提供一种双变量施肥装置的控制序列优化方法,包括:
[0007] 构建双变量施肥装置的排肥量预测模型,并获取所述双变量施肥装置的排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围;
[0008] 根据所述排肥量预测模型、排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围,以及目标排肥量,构建排肥量控制的多目标优化问题;
[0009] 利用基于分解的多目标差分进化算法MOEA/D-DE对所述多目标优化问题进行求解,获得所述目标排肥量对应的控制序列的Pareto解集;
[0010] 其中,所述排肥量控制的多目标优化问题以排肥量控制的准确性、稳定性和快速性为目标函数,并以所述排肥口开度调整范围和排肥轴转速调整范围为约束条件。
[0011] 第二方面,本发明实施例提供一种双变量施肥的控制序列优化装置,包括:
[0012] 预测模块,用于构建双变量施肥装置的排肥量预测模型,并获取所述双变量施肥装置的排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围;
[0013] 构建模块,用于根据所述排肥量预测模型、排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围,以及目标排肥量,构建排肥量控制的多目标优化问题;
[0014] 求解模块,用于利用基于分解的多目标差分进化算法MOEA/D-DE对所述多目标优化问题进行求解,获得所述目标排肥量对应的控制序列的Pareto解集;
[0015] 其中,所述排肥量控制的多目标优化问题以排肥量控制的准确性、稳定性和快速性为目标函数,并以所述排肥口开度调整范围和排肥轴转速调整范围为约束条件。
[0016] 第三方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所提供的双变量施肥装置的控制序列优化方法的步骤。
[0017] 本发明实施例提供的双变量施肥装置的控制序列优化方法及装置,综合考虑了双变量施肥装置控制过程中的排肥量准确性、稳定性以及控制实施的快速性,根据寻优获得控制序列的Pareto解集,能够提供综合性能更优的控制序列。

附图说明

[0018] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0019] 图1为本发明双变量施肥装置的控制序列优化方法实施例的流程示意图;
[0020] 图2为本发明实施例提供的双变量施肥装置的结构示意图;
[0021] 图3为本发明双变量施肥的控制序列优化装置实施例的结构示意图;
[0022] 图4为本发明实施例提供的电子设备的实体结构示意图;
[0023] 附图标记说明:
[0024] 1——开度控制电机,2——滚珠丝杠,3——排肥开度调节挡板,4——编码器,5——肥箱,6——外槽轮排肥器,7——速度控制电机,8——弹簧联轴器,9——排肥管,
10——电子尺。

具体实施方式

[0025] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0026] 本发明实施例的一个方面,提供双变量施肥装置的控制序列优化方法,能够综合考虑排肥量控制的准确性、稳定性和快速性,提高控制的综合性能。首先通过双变量施肥装置的标定试验,构建排肥量预测模型,并获取开度和转速的单位调节时间,在此基础上建立以排肥量控制准确性、稳定性、快速性为目标函数,以排肥口开度、排肥轴转速调整范围为约束条件的多目标优化问题,以基于分解的多目标差分进化算法MOEA/D-DE(Multi-objective evolutionary algorithm based on decomposition with differential evolution)为框架,经过逐代的交叉、变异、寻找最佳控制序列对应的Pareto解集,即开度、转速控制序列集合,实现对双变量排肥装置的优化控制。
[0027] 图1为本发明双变量施肥装置的控制序列优化方法实施例的流程示意图,所述方法包括:
[0028] 步骤100、构建双变量施肥装置的排肥量预测模型,并获取所述双变量施肥装置的排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围;
[0029] 具体地,本发明实施例中双变量施肥装置的结构如图2所示,其中,1是开度控制电机,2是滚珠丝杠,3是排肥开度调节挡板,4是编码器,5是肥箱,6是外槽轮排肥器,7是速度控制电机,8是弹簧联轴器,9是排肥管,10是电子尺。排肥轴转速N的调节通过调整速度控制电机7转速的变化实现,排肥口开度L的调节通过开度控制电机1的正、反转实现,当开度控制电机1转动时,带动滚珠丝杠2转动,并将转动转化为排肥开度调节挡板3的水平向左或向右移动,使得排肥口L增大或者减小;编码器4用来测量排肥轴的实际转速,电子尺10用来测量实际调整距离。
[0030] 以排肥口开度L和排肥轴转速N的组合为输入变量,单位时间排肥量Q为输出变量的排肥量预测模型具体为:
[0031] g(L,N)=Q   (1)
[0032] 为了获得上述排肥量预测模型,首先需要采集双变量施肥装置的样本数据。具体地,采集不同排肥口开度和排肥轴转速组合下双变量施肥装置单位时间内的排肥量,例如,利用图2所示的双变量施肥装置,调节排肥口开度L从10-70mm间隔5mm共13个开度值,排肥轴转速Q从10-60r/min间隔5r/min共11个转速值,采集不同开度和转速组合共计13*11=143种条件下的每分钟排出肥料的重量,并以此构建样本数据集,其中每个样本数据由排肥口开度和排肥轴转速组合以及相应的排肥量组成,即排肥口开度和排肥轴转速组合作为一组输入变量,对应的排肥量作为输出变量。
[0033] 然后利用所采集的样本数据对所述排肥量预测模型进行训练,本实施例中不对训练方法进行限制,例如,可以采用现有的各种深度学习方法获得训练完成的排肥量预测模型。
[0034] 通过测量和计算获得该双变量施肥装置的排肥口开度单位调节时间和排肥轴转速单位调节时间,记为单位调节时间T(tL,tN),其中tL为调整单位开度需要的时间,单位为s/mm,tN为调整单位转速需要的时间,单位为s/(r/min)。
[0035] 例如,测量一个排肥口目标开度从0-50mm消耗的时间,测量5次取均值作为0-50mm总消耗时间,然后除以50获得单位开度的调节时间tL。测量一个排肥轴目标转速从0-50r/min的总消耗时间,测量5次取均值作为0-50r/min总消耗时间,然后除以50获得单位转速的调节时间tN。
[0036] 双变量施肥装置的排肥口开度和排肥轴转速均需在一定的范围内进行调整,因此,为了实现排肥量控制的性能要求,需要获取双变量施肥装置的排肥口开度调整范围和和排肥轴转速调整范围。
[0037] 步骤200、根据所述排肥量预测模型、排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围,以及目标排肥量,构建排肥量控制的多目标优化问题;
[0038] 其中,所述排肥量控制的多目标优化问题以排肥量控制的准确性、稳定性和快速性为目标函数,并以所述排肥口开度调整范围和排肥轴转速调整范围为约束条件。
[0039] 具体地,已知目标排肥量qt,许用误差ε和上次控制序列S0(L0,N0),排肥口开度L的调整范围为[Lmax,Lmin],排肥轴转速N的调整范围为[Nmax,Nmin],需要求解的本次控制序列为S1(L1,N1)。
[0040] 可以理解的是,本发明实施例综合考虑了排肥量控制的准确性、稳定性和快速性,构建了以排肥量控制准确性、稳定性、快速性为目标函数,以排肥口开度调整范围、排肥轴转速调整范围为约束条件的多目标优化问题。
[0041] 即分别确定了排肥量控制的准确性目标函数、稳定性目标函数和快速性目标函数。
[0042] 具体地,将本次控制序列对应的预测排肥量利用排肥量预测模型表示出来,根据预测排肥量和目标排肥量之间的误差获得排肥量控制的准确性目标函数。
[0043] 根据排肥口开度单位调节时间和排肥轴转速单位调节时间,以及上次控制序列和本次控制序列,确定快速性目标函数。
[0044] 根据排肥口开度调整范围和排肥轴转速调整范围确定稳定性目标函数。
[0045] 步骤300、利用基于分解的多目标差分进化算法MOEA/D-DE对所述多目标优化问题进行求解,获得所述目标排肥量对应的控制序列的Pareto解集;
[0046] 在构建了排肥量控制的多目标优化问题之后,本发明实施例以基于分解的多目标差分进化算法MOEA/D-DE(Multi-objective evolutionary algorithm based on decomposition with differential evolution)为框架,聚合方法采用切比雪夫聚合法,进化算法采用差分进化,经过逐代的交叉、变异、寻找最佳控制序列对应的Pareto解集,即开度、转速控制序列集合,实现对双变量排肥装置的优化控制。
[0047] MOEA/D-DE由H.Li和Q.Zhang提出,可以处理具有复杂Pareto集的多目标优化问题,对排肥量控制多目标优化问题具有较好的求解能力。
[0048] 本发明实施例提供的双变量施肥装置的控制序列优化方法及装置,综合考虑了双变量施肥装置控制过程中的排肥量准确性、稳定性以及控制实施的快速性,根据寻优获得控制序列的Pareto解集,能够提供综合性能更优的控制序列。
[0049] 基于上述实施例的内容,所述根据所述排肥量预测模型、排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围,以及目标排肥量,构建排肥量控制的多目标优化问题的步骤,具体为:
[0050] 利用所述排肥量预测模型获取本次控制序列对应的预测排肥量,计算所述目标排肥量和所述预测排肥量之间的相对偏差,以所述相对偏差与许用误差的差值最小为准确性目标函数;
[0051] 根据所述排肥口开度调整范围和排肥轴转速调整范围确定调节中心,以本次控制序列与调节中心的欧几里得距离最小为稳定性目标函数;
[0052] 根据所述排肥口开度单位调节时间和排肥轴转速单位调节时间,计算上次控制序列到本次控制序列的开度调节耗时和转速调节耗时,以所述开度调节耗时和转速调节耗时中的较大值最小为快速性目标函数;
[0053] 以所述排肥口开度调整范围和排肥轴转速调整范围为约束条件。
[0054] 具体地,已知目标排肥量qt,许用误差ε和上次控制序列S0(L0,N0),排肥口开度L的调整范围为[Lmax,Lmin],排肥轴转速N的调整范围为[Nmax,Nmin],需要求解的本次控制序列为S1(L1,N1)。
[0055] 利用所述排肥量预测模型g(L,N)=Q获取本次控制序列S1(L1,N1)对应的预测排肥量,计算所述目标排肥量qt和所述预测排肥量之间的相对偏差,以所述相对偏差与许用误差ε的差值最小为准确性目标函数。
[0056] 其中,所述准确性目标函数具体为:
[0057]
[0058] 其中,qt为目标排肥量,qp为根据预先构建的排肥量预测模型获得的预测排肥量,qp=g(L1,N1),(L1,N1)为本次控制序列,L1表示本次排肥口开度,N1表示本次排肥轴转速,ε为许用误差。
[0059] 根据所述排肥口开度调整范围[Lmax,Lmin]和排肥轴转速调整范围[Nmax,Nmin]确定调节中心,以本次控制序列S1(L1,N1)与调节中心的距离最小为稳定性目标函数,具体为:
[0060] 首先,根据所述排肥口开度调整范围[Lmax,Lmin]和排肥轴转速调整范围[Nmax,Nmin]确定调节中心SM(LM,NM)。
[0061] 为了减少单位不统一造成的计算偏差,先利用排肥口开度调整范围和排肥轴转速调整范围对本次控制序列S1(L1,N1)和调节中心SM(LM,NM)进行归一化处理,有:
[0062]
[0063] 其中,l1为归一化后的本次排肥口开度,Lmax为排肥口开度允许最大值,Lmin为排肥口开度允许最小值;n1为归一化后的本次排肥轴转速,nmax为排肥轴转速允许最大值,nmin为排肥轴转速允许最小值;s1为归一化后的本次控制序列;
[0064] sM=(lM,nM)=(0.5,0.5)
[0065] 其中,sM为归一化后的调节中心,其中lM为归一化后的开度调节中心,nM为归一化后的转速调节中心;
[0066] 因此,所述稳定性目标函数具体为:
[0067]
[0068] 其中,s1为归一化后的本次控制序列,sM为归一化后的调节中心,l1为归一化后的本次排肥口开度,n1为归一化后的本次排肥轴转速,lM为归一化后的开度调节中心,nM为归一化后的转速调节中心。
[0069] 由于转速和开度调节同时进行,开度调节和转速调节时间中相对较大的时间决定了总的调节时间,因此,以上次控制序列S0(L0,N0)到本次控制序列S1(L1,N1)调节耗时(开度调节耗时,转速调节耗时)中较大的时间最小为快速性目标进行优化,获得快速性目标函数具体为:
[0070]
[0071] 其中,“·”表示点乘,T(tL,tN)为单位调整时间,tL为排肥口开度单位调节时间,tN为排肥轴转速单位调节时间,S0为上次控制序列,L0为上次排肥口开度,N0为上次排肥轴转速,S1为本次控制序列,L1为本次排肥口开度,N1为本次排肥轴转速。
[0072] 约束条件为:
[0073]
[0074] 本实施例中给出了排肥量控制的准确性目标函数、稳定性目标函数和快速性目标函数的具体表达式,从而构建了排肥量控制的多目标优化问题。
[0075] 基于上述各实施例的内容,所述利用基于分解的多目标差分进化算法MOEA/D-DE对所述多目标优化问题进行求解,获得所述目标排肥量对应的控制序列的Pareto解集的步骤,具体为:
[0076] 初始化基于分解的多目标差分进化算法MOEA/D-DE的参数、初化初代种群个体,设置用于存储Pareto非支配解的外部种群EP为空;
[0077] 为所述多目标优化问题的每个子问题分配权重向量,并计算权重向量之间的欧几里得距离,找到每个子问题最近邻域内的Tn个邻域子问题;
[0078] 每个子问题在其邻域内进行交叉、变异,产生新解,若新解的切比雪夫聚合值更优,则更新种群个体以及目标函数值,否则,保持当前值;
[0079] 完成整个邻域内的更新,并更新外部种群EP中存储的非支配解;
[0080] 判断是否达到预设进化代数,若达到预设进化代数,则输出EP,获得所述目标排肥量对应的控制序列的Pareto解集。
[0081] 具体地,本发明实施例以基于分解的多目标差分进化算法MOEA/D-DE为框架,聚合方法采用切比雪夫聚合法,进化算法采用差分进化,经过逐代的交叉、变异、选择,寻找控制序列的最佳Pareto解集,具体为:
[0082] (1)初始化:
[0083] 初始化算法参数包括:H-用户输入的用于计算种群数目的正整数;m-问题维度,即子问题个数;V-自变量个数;Number-种群个数, Gen-进化代数;Tn-邻域中权重向量的个数。
[0084] 初始化初代种群个体;根据公式(2)、(3)、(4)计算初代种群个体的目标函数值;
[0085] 将各目标分量的最小值放入z;设置EP为空,用于存储Pareto非支配解;
[0086] 为每个子问题分配权重向量,计算权重向量之间的欧几里得距离,找到每个子问题最近邻域内的Tn个邻域子问题;
[0087] (2)更新:
[0088] 每个子问题在其邻域内进行交叉、变异、产生新解,如果新解的切比雪夫聚合值更优,则更新种群个体以及目标函数值,否则,保持当前值;
[0089] 完成整个邻域内的更新,并更新外部种群EP中存储的非支配解;
[0090] (3)判定终止条件:
[0091] 判断是否达到预设进化代数,达到则停止并输出EP即最佳Pareto解集,否则返回(2)更新。
[0092] 本发明实施例采用MOEA/D-DE算法求解排肥量控制多目标优化问题,根据寻优获得控制序列的Pareto解集和Pareto前沿,能够提供综合性能更优的控制序列,并提供了不同权重向量下的Pareto解。
[0093] 基于上述各实施例的内容,作为一种可选的实施例,所述构建双变量施肥装置的排肥量预测模型的步骤,具体为:
[0094] 采集不同排肥口开度和排肥轴转速组合下所述双变量施肥装置单位时间内的排肥量,并以此构建样本数据集;
[0095] 基于所述样本数据集,以排肥口开度和排肥轴转速作为输入,排肥量为输出,构建基于广义径向基神经网络的排肥量预测模型。
[0096] 具体地,双变量施肥装置的排肥口开度、排肥轴转速和排肥量之间存在非线性关系,本发明实施例采用广义径向基神经网络对其进行建模。广义径向基神经网络训练过程简单,具有较高的逼近能力、学习速度、鲁棒性和良好的非线性映射能力。
[0097] 首先构建一个基于广义径向基神经网络的模型,然后采集不同排肥口开度和排肥轴转速组合下所述双变量施肥装置单位时间内的排肥量,并以此构建样本数据集,利用该样本数据集,以排肥口开度和排肥轴转速作为输入,排肥量为输出,对所构建的模型进行训练,最终获得训练完成的基于广义径向基神经网络的排肥量预测模型。
[0098] 在上述各实施例的基础上,作为一种可选的实施例,所述方法在步骤300之后,还包括:
[0099] 根据实际需要,从所述Pareto解集中选择一种权重向量下的Pareto解作为最优的控制序列。
[0100] 可以理解的是,在获得了目标排肥量对应的控制序列的Pareto解集之后,还可以根据实际的控制需要,确定准确性目标、稳定性目标和快速性目标分别所占的权重,获得一种权重向量下的控制序列和准确性、稳定性、快速性目标值,从而丰富了控制目标权重的组合方式,提高了控制序列的适应性,同时还能够实现对控制效果的量化分析和评价。
[0101] 为了验证采用本发明实施例提供的双变量施肥装置的控制序列优化方法与现有技术相比所具有的优势,下面通过将采用本发明实施例提供的优化控制序列与现有方法获得的控制序列进行对比研究。具体地,将采用本发明实施例提供的优化控制序列与现有的划分档位进行双变量控制的方法进行对比分析。
[0102] 已知上次控制序列为S0=(L0,N0)=(70,0),最大许用误差ε=0.01,单位调节时间T(tL,tN)=(0.1169,0.0217),排肥口开度L的调整范围为[70,0],排肥轴转速N的调整范围为[60,0],求解目标排肥量qt分别为322.2kg/hm2,570.56kg/hm2和942.78kg/hm2时的最佳控制序列,需要求解的本次控制序列为S1(L1,N1)。建立的排肥量预测模型为:qp=g(L1,N1)。
[0103] 初始化基于分解的多目标差分进化算法MOEA/D-DE算法参数:
[0104] H=50,m=3,V=2,得 Gen=50,Tn=10
[0105] 将以上参数代入进行运算,求得控制序列的Pareto解集;实际工作过程中对排肥准确性要求最高,稳定性次之,其次是快速性,因此,选取一种权重下weight=(0.9,0.06,0.04)的控制序列作为最佳控制序列。
[0106] 以现有分档位控制的速度优先控制方法为例,开度控制档位间隔为5mm获得的控制序列应用双变量施肥装置进行试验,排肥1分钟,利用带有串口的电子秤测量获取每秒钟的流速和总的排肥量以及调节时间。
[0107] 通过排肥相对误差(RE)、变异系数CV、调节时间t三个方面评价其排肥准确性、稳定性、快速性,结果对比分析如表1所示。
[0108] 表1两种方法试验结果对比
[0109]
[0110] 由表1可以看出基于本发明实施例的方法选取的控制序列与现有方法相比,具有更好的准确性和稳定性,同时总体上具有相对比较短的调节时间。具体的来讲,当目标施肥量分别为322.2kg/hm2和942.78kg/hm2时,本发明实施例的方法的相对误差和变异系数都比现有方法小,具有更好的准确性和稳定性;当目标施肥量为570.56kg/hm2时,现有方法的控制序列非常接近权重为(0.96,0,0.4)时本发明实施例对应的控制序列(70,22),见表2,表2为选取不同的权重向量下的控制序列进行的实施例,现有方法的相对误差比本发明实施例的方法的相对误差小,变异系数比本发明实施例对应的方法大,也进一步反映了权重向量对结果的影响。
[0111] 表2不同权重向量下排肥效果对比(qt=570.56kg/hm2)
[0112]
[0113] 由表2可以看出,当选择不同的权重向量时,对应的目标性能会发生相应改变,具体地,权重向量中的第一个值代表第一个目标(准确性目标)占的比重,第二个值代表第二个目标(稳定性目标)占的比重,第三个值代表第三个目标(快速性目标)占的比重;如在表2中,第一行的准确性目标所占比重为0.8,第二行准确性目标所占比重为0.52,第三行中的准确性指标为0.96,从获得的实验结果中可以分析得出,第三行具有最小的相对误差即最大的准确性;稳定性权值最大的第二行也具有最小的变异系数,即最佳的稳定性能。因此,实施过程中可以根据对目标量的比重的需要选取不同权重向量下的控制序列进行操作。
[0114] 本发明实施例提供的双变量施肥装置的控制序列优化方法,总体上比原方法具有更好的稳定性和准确性,同时能够综合考虑调节时间,可以根据实际的目标比重的要求提供更多的选择。
[0115] 本发明实施例的另一个方面,提供一种双变量施肥装置的控制序列优化装置,如图3所示,包括:预测模块301、构建模块302和求解模块303,其中,
[0116] 预测模块301,用于构建双变量施肥装置的排肥量预测模型,并获取所述双变量施肥装置的排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围;
[0117] 构建模块302,用于根据所述排肥量预测模型、排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围,以及目标排肥量,构建排肥量控制的多目标优化问题;
[0118] 求解模块303,用于利用基于分解的多目标差分进化算法MOEA/D-DE对所述多目标优化问题进行求解,获得所述目标排肥量对应的控制序列的Pareto解集;
[0119] 其中,所述排肥量控制的多目标优化问题以排肥量控制的准确性、稳定性和快速性为目标函数,并以所述排肥口开度调整范围和排肥轴转速调整范围为约束条件。
[0120] 该装置用于实现前述各方法实施例中所述的双变量施肥装置的控制序列优化方法。因此,在前述各实施例中所述的双变量施肥装置的控制序列优化方法的描述和定义,可以用于本发明实施例中各个执行模块的理解,在此不再赘述。
[0121] 本发明实施例提供的双变量施肥装置的控制序列优化装置,综合考虑了双变量施肥装置控制过程中的排肥量准确性、稳定性以及控制实施的快速性,根据寻优获得控制序列的Pareto解集,能够提供综合性能更优的控制序列。
[0122] 图4为本发明实施例提供的电子设备的实体结构示意图,如图4所示,该电子设备可以包括:处理器(processor)410、通信接口(Communications Interface)420、存储器(memory)430和通信总线440,其中,处理器410,通信接口420,存储器430通过通信总线440完成相互间的通信。处理器410可以调用存储在存储器430上并可在处理器410上运行的计算机程序,以执行上述各方法实施例所提供的双变量施肥装置的控制序列优化方法,例如包括:构建双变量施肥装置的排肥量预测模型,并获取所述双变量施肥装置的排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围;根据所述排肥量预测模型、排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围,以及目标排肥量,构建排肥量控制的多目标优化问题;利用基于分解的多目标差分进化算法MOEA/D-DE对所述多目标优化问题进行求解,获得所述目标排肥量对应的控制序列的Pareto解集;其中,所述排肥量控制的多目标优化问题以排肥量控制的准确性、稳定性和快速性为目标函数,并以所述排肥口开度调整范围和排肥轴转速调整范围为约束条件。
[0123] 此外,上述的存储器430中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0124] 本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例提供的双变量施肥装置的控制序列优化方法,例如包括:构建双变量施肥装置的排肥量预测模型,并获取所述双变量施肥装置的排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围;根据所述排肥量预测模型、排肥口开度单位调节时间、排肥轴转速单位调节时间、排肥口开度调整范围和排肥轴转速调整范围,以及目标排肥量,构建排肥量控制的多目标优化问题;利用基于分解的多目标差分进化算法MOEA/D-DE对所述多目标优化问题进行求解,获得所述目标排肥量对应的控制序列的Pareto解集;其中,所述排肥量控制的多目标优化问题以排肥量控制的准确性、稳定性和快速性为目标函数,并以所述排肥口开度调整范围和排肥轴转速调整范围为约束条件。
[0125] 以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0126] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0127] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。