一种基于粒子群算法的轮灌组优化方法和系统

文档序号:24876745发布日期:2021-04-30 12:52阅读:236来源:国知局
一种基于粒子群算法的轮灌组优化方法和系统

本发明涉及一种基于粒子群算法的轮灌组优化方法和系统,属于滴灌技术领域。



背景技术:

膜下滴灌是在滴灌技术与覆膜种植技术的优点相结合的基础上,针对新疆规模化种植特点、组装集成的一种适于机械化大田栽培的现代化节水灌溉技术。滴灌轮灌方式水量相对集中,管理简便,是适用于集中连片规模化经营土地的灌溉工程模式,也是目前新疆膜下滴灌工程主要应用模式。截止2019年,全疆应用膜下滴灌规模已超过5000万亩(含兵团1500万亩),占全国比重的60%左右。

滴灌轮灌组以一条支管控制面积的灌溉范围为基本灌水单元,一条或多条支管构成一个轮灌组(例如1-1,1-2,1-3,2-1,2-2,2-3中,“-”前数字代表分干管,“-”后数字代表支管号,整体构成一个轮灌组),每个轮灌组运行时,该轮灌组内支管上所有毛管全部开启,一个轮灌组灌水完成后,开启下一个轮灌组内的支管,然后关闭前一个轮灌组内的支管。管理人员按照工程规划的轮灌组划分顺序开关阀完成区域地块灌溉,即形成一种滴灌轮灌分组工作制度。随着新疆兵团大农业经营体制改革,部分企业通过对团场农业种植用地和农户实行统一的经营管理,实现了团场土地种植标准化、管理统一化,这种标准化场景作物种植、经营关系相对稳定。这种模式下,一个农户往往需要控制几百上千亩大田灌溉任务,由于滴灌轮灌组设计存在不合理等问题,往往导致农户开关阀劳动强度大,开关阀路径设置不合理导致来回跑路,工作效率低等问题。

传统轮灌组设计主要依据《微灌工程技术标准》标准,通过前期获取水源、作物、气象以及当地灌溉等基本资料,按照水力计算公式及管网流量均衡的要求计算,通过人工推算调整的方法得到轮灌组划分,在小规模地块设计轮灌组问题不大,但是在大规模地块设计轮灌组时往往难以获得较好解。且人工经验调整方法效率低下,耗时耗力。同时,现有滴灌轮灌组主要按照流量、扬程均衡等角度划分,缺乏在实际应用场景中减少农户劳动强度问题的计算,缺乏开关阀路径规划问题的计算问题。



技术实现要素:

针对上述问题,本发明的目的是提供一种基于粒子群算法的轮灌组优化方法和系统,以解决当前轮灌组手工划分效率低,农户开关阀劳动强度大的问题。

为实现上述目的,本发明采取以下技术方案:

本发明的第一个方面,是提供一种基于粒子群算法的轮灌组优化方法,其包括以下步骤:

1)以各轮灌组流量均差最小和开关阀路径最短为优化目标,建立多目标轮灌组数学优化模型,并确定其约束条件;

2)采用离散粒子群算法对步骤1)中建立的多目标轮灌组数学模型进行求解,基于得到的解对轮灌组进行分组优化。

进一步,所述步骤1)中,建立多目标轮灌组数学优化模型,并确定其约束条件的方法,包括以下步骤:

1.1)以各轮灌组流量均差最小和开关阀路径最短为优化目标,建立多目标轮灌组数学模型;

1.2)根据相关执行技术标准,确定多目标轮灌组数学模型的约束条件。

进一步,所述步骤1.1)中,建立的多目标轮灌组优化模型为:

其中,模型f1(x)表示轮灌组流量均方差,模型f2(x)表示轮灌组手工开关阀路径距离;j表示轮灌组号,i表示滴灌支管号;c表示轮灌组流量的均方差;αj表示各轮灌组流量平均值;fj为第j轮灌组流量和;m表示轮灌组数;d表示所有开关阀路径之和;sj表示采用迪杰斯特拉算法对第j个轮灌组计算最短路径。

进一步,所述步骤1.2)中,所述约束条件包括流量约束、组流量差约束和变量约束。

进一步,各所述约束条件的计算公式为:

①流量约束:

其中,fi为支管号设计流量,第j个轮灌组流量和应小于设计流量,f为轮灌组设计流量;xij表示第i根支管在第j个轮灌组中的开闭状态,xij=0和1分别表示第i根支管在第j个轮灌组中状态为关和开;n表示滴灌轮灌组支管数;

②组流量差约束:

δf=max(fj)-min(fj)<β

其中,δf为轮灌组流量之差;fj为第j轮灌组流量和;β为流量差阈值,默认为设计流量5%;

③变量约束:

xij={0,1}

其中,xij表示第i根支管在第j个轮灌组中的开闭状态,xij=0和1分别表示第i根支管在第j个轮灌组中状态为关和开。

进一步,所述步骤2)中,采用离散粒子群算法对步骤1)中建立的多目标轮灌组优化模型进行求解的方法,包括以下步骤:

2.1)根据轮灌组数m、支管数n、设计流量f、支管号流量fi和多目标轮灌组优化模型构建目标函数,并进行参数设定;

2.2)初始化离散粒子群粒子,编码方式为xij,每一行表示一个轮灌组,每一行中变量随机产生0和1,代表轮灌组中支管状态为关和开;

具体的,采用基于网格的方式建立初始解,将滴灌区域按照网格方式等分,并在每个网格区域内随机生成一个随机点,每个随机点代表一个轮灌组,随机点以贪心策略按最短路径方式将周边开关阀纳入轮灌组,并由此建立轮灌组初始解,得到:

其中,xij表示第i根支管在第j个轮灌组中的开闭状态,xij=0和1分别表示第i根支管在第j个轮灌组中状态为关和开;n表示滴灌轮灌组支管数;m表示轮灌组数;

2.3)计算初始化粒子适应度值,并把非劣解拷贝到非劣解集中;更新粒子个体速度和位置,并判断步骤2.2)产生的粒子群粒子是否满足约束条件,如果不满足约束条件则摒弃,并返回步骤2.2)继续产生新粒子;

速度更新公式为:

vid=ωvid+c1·rand()·(pid-xid)+c2·rand()·(pgd-xid)

粒子位置更新公式为:

其中:

其中,ω表示惯性权值,本发明中取值0.5;c1和c2表示加速因子,本发明中取(0,1)内随机数;pid表示粒子局部最优位置;pgd表示粒子全局最优位置;xid表示粒子的位置;且xid,pid,pgd只能是0或1;rand()表示取[0,1]范围内两个随机数;vid表示位置的变化率,由于vid表示的是概率,因此取值限制在[0,1]之间;

2.4)计算非劣解集粒子密度,找出新的全局极值和个体极值;

2.5)判断更新后粒子是否满足约束条件,如不满足则对其进行修复,如满足,则进入步骤2.6);

2.6)判断粒子空间距离,避免陷入局部最优;分别计算粒子与全局最优粒子空间距离,并与阈值进行比较,如果小于阈值则对粒子进行重新初始化,否则转入步骤2.7);

阈值定义:

其中,t和tmax分别是当前迭代次数和最大迭代次数,ub和lb是粒子上下线,k是调节参数;

2.7)更新粒子位置和速度,选择全局粒子和个体极值;

2.8)判断是否达到收敛条件或最大迭代次数,如果达到条件输出结果,按照迪杰斯特拉算法输出每个轮灌组支管号,否则转到步骤2.3)。

进一步,所述步骤2.4)中,找出新的全局极值和个体极值的方法为:

首先,通过多目标优化问题的各个目标共同指导粒子在解空间中飞行获取非劣最优解,更新全局最优粒子和个体最优粒子;

其次,分别用目标函数f1和f2计算粒子适应度值,选取各目标函数对应全局最优粒子和个体最优粒子,采用各目标函数对应全局粒子均值作为全局粒子;

再次,根据各目标函数个体最优粒子离散程度选择个体最优粒子,离散程度依据两粒子空间距离;

其中,粒子空间距离的计算公式为:

其中,l表示粒子空间距离;x1(d)和x2(d)表示种群中两粒子,d表示粒子位数,d表示第d维粒子;

最后,若两个体最优粒子距离大于其全局粒子距离,则取两个体最优粒子均值,否则随机选取个体最优粒子中一个。

本发明的第二个方面,是提供一种基于粒子群算法的轮灌组优化系统,其包括:优化模型建立模块,用于以各轮灌组流量均差最小和开关阀路径最短为优化目标,建立多目标轮灌组优化模型,并确定其约束条件;优化模型求解模块,用于采用离散粒子群算法对建立的多目标轮灌组优化模型进行求解,并基于得到的最优解对轮灌组进行分组优化。

进一步,所述优化模型建立模块包括模型确定模块,用于确定以各轮灌组流量均差最小和开关阀路径最短为优化目标,并基于确定的优化目标建立多目标轮灌组优化模型;约束条件确定模块,用于确定多目标轮灌组优化模型的约束条件。

进一步,所述模型确定模块中确定的多目标轮灌组优化模型为:

其中,模型f1(x)表示轮灌组流量均方差,模型f2(x)表示轮灌组手工开关阀路径距离;j表示轮灌组号,i表示滴灌支管号;c表示轮灌组流量的均方差;αj表示各轮灌组流量平均值;fj为第j轮灌组流量和;m表示轮灌组数;d表示所有开关阀路径之和;sj表示采用迪杰斯特拉算法对第j个轮灌组计算最短路径。

本发明由于采取以上技术方案,其具有以下优点:1、本发明建立了多目标轮灌组优化模型和智能求解算法,解决了手工计算轮罐组耗时耗力,效率低下问题,具有较好的通用性,适用于多数滴灌轮灌组划分问题。2、针对传统轮灌组水力计算只考虑管网流量问题,从用户使用角度出发,考虑手工开关阀路径最短需求,提出兼顾管网流量和路径最短模型,可减少农户开关阀劳动强度,为滴灌工程实际应用场景提供一种解决方法。因此,本发明可以广泛应用于滴灌技术领域。

附图说明

图1是本发明实施例中基于粒子群算法的轮灌组优化方法流程图;

图2是本发明实施例中采用粒子群算法对模型进行求解的流程图。

具体实施方式

下面结合附图和实施例对本发明进行详细的描述。

本发明提供的一种基于粒子群算法的轮灌组优化方法,通过建立以各轮灌组流量均差最小和开关阀路径最短为优化目标的模型,并利用离散粒子群算法对数学模型进行求解,解决在满足滴灌流量均衡条件下人工路径规划问题,获得最优轮灌组划分方案,优化现有滴灌工作制度。

具体的,如图1、图2所示,本发明提供的一种基于粒子群算法的轮灌组优化方法,包括以下步骤:

1)以各轮灌组流量均差最小和开关阀路径最短为优化目标,建立多目标轮灌组优化模型,并确定其约束条件。

具体地,包括以下步骤:

1.1)以各轮灌组流量均差最小和开关阀路径最短为优化目标,建立多目标轮灌组优化模型。

其中,建立的多目标轮灌组优化模型为:

其中,模型f1(x)表示轮灌组流量均方差,模型f2(x)表示轮灌组手工开关阀路径距离;j表示轮灌组号,i表示滴灌支管号;c表示轮灌组流量的均方差;αj表示各轮灌组流量平均值;fj表示第j轮灌组流量和;m表示轮灌组数;d表示所有开关阀路径之和;sj表示采用迪杰斯特拉算法(dijkstra)对第j个轮灌组计算最短路径。

模型f1(x)中,各参数的计算公式为:

其中,xij表示第i根支管在第j个轮灌组中的开闭状态,当xij=0和1分别表示第i根支管在第j个轮灌组中状态为关和开;fi为第i个支管设计流量。

模型f2(x)中,各参数的计算公式为:

sj=dijkstra((x1j,y1j),(x2j,y2j),…,(xij,yij),…,(xnj,ynj))公式8

其中,根据工程图纸以左上角为起始点,给每个支管号设定坐标。c,d表示任意两个支管号,xc,xd,yc,yd分别表示c,d支管号x,y横纵坐标,lcd表示任意两点之间的距离;n表示滴灌轮灌组支管数;xij表示第i根支管在第j个轮灌组中的开闭状态;(xij,yij)表示当xij=1时支管号i的坐标。

1.2)根据相关执行技术标准,例如《微灌工程技术标准》,确定多目标轮灌组优化学模型的约束条件。

约束条件包括流量约束、组流量差约束和变量约束,具体的,计算公式如下:

①流量约束:

其中,fi为支管号设计流量,第j个轮灌组流量和应小于设计流量,f为轮灌组设计流量。

②组流量差约束:

δf=max(fj)-min(fj)<β公式11

其中,δf为轮灌组流量之差,β为流量差阈值,默认为设计流量5%。

③变量约束:

xij={0,1}公式12

其中,xij表示第i根支管在第j个轮灌组中的开闭状态,当xij=0和1分别表示第i根支管在第j个轮灌组中状态为关和开。

2)采用离散粒子群算法对步骤1)中建立的多目标轮灌组优化模型进行求解,基于得到的最优解对轮灌组进行分组优化。

具体的,包括以下步骤:

2.1)根据轮灌组数m、支管数n、设计流量f、支管号流量fi和上述多目标轮灌组数学模型构建目标函数,参数设定最大迭代次数为300次,粒子总数为100个。其中,最大迭代次数和粒子总数可以根据实际需要进行调整。

2.2)初始化离散粒子群粒子,编码方式为xij,每一行表示一个轮灌组,每一行中变量随机产生0和1,代表轮灌组中滴灌支管状态为关和开。

本发明采用基于网格的方式建立初始解,将滴灌区域按照网格方式等分,并在每个网格区域内随机生成一个随机点,每个随机点代表一个轮灌组,随机点以贪心策略按最短路径方式将周边开关阀纳入轮灌组,并由此建立轮灌组初始解。

2.3)计算初始化粒子适应度值,把非劣解拷贝到非劣解集中。按公式14和15更新粒子个体速度和位置,并判断步骤2.2)产生的粒子群粒子是否满足约束条件,如果不满足约束条件则摒弃,并返回步骤2.2)继续产生新粒子。

速度更新:

vid=ωvid+c1·rand()·(pid-xid)+c2·rand()·(pgd-xid)公式14

粒子位置:

其中:

其中,ω表示惯性权值,本发明中取值0.5;c1和c2表示加速因子,本发明中取(0,1)内随机数;pid表示粒子局部最优位置;pgd表示粒子全局最优位置;xid表示粒子的位置;且xid,pid,pgd只能是0或1;rand()表示取[0,1]范围内两个随机数;vid表示位置的变化率,由于vid表示的是概率,因此取值限制在[0,1]之间。

2.4)计算非劣解集粒子密度,找出新的全局极值和个体极值。

具体方法为:通过多目标优化问题的各个目标共同指导粒子在解空间中飞行获取非劣最优解,计算非劣解集粒子密度,更新全局最优粒子和个体最优粒子,分别用目标函数f1和f2计算粒子适应度值,选取各目标函数对应全局最优粒子和个体最优粒子,采用各目标函数对应全局粒子均值作为全局粒子,根据各目标函数个体最优粒子离散程度选择个体最优粒子,离散程度依据两粒子空间距离,空间距离公式17计算按,若两个体最优粒子距离大于其全局粒子距离,则取两个体最优粒子均值,否则随机选取个体最优粒子中一个。

粒子空间距离为:

其中,x1(d)和x2(d)是种群中两粒子,d是粒子位数,d表示第d维粒子。

2.5)判断更新后粒子是否满足约束条件,如不满足则对其进行修复,如满足,则进入步骤2.6)。

2.6)判断粒子空间距离,避免陷入局部最优,设计一种随机初始化机制提高算法多样性和全局搜索能力。分别计算粒子与全局最优粒子空间距离,并与阈值进行比较,如果小于阈值则对粒子进行重新初始化。否则转入下一步。

阈值定义:

其中,t和tmax分别是当前迭代次数和最大迭代次数,ub和lb是粒子上下线,k是调节参数,阈值随着迭代次数增加越来越小。

2.7)更新粒子位置和速度,选择全局粒子和个体极值。

2.8)判断是否达到收敛条件或最大迭代次数,如果达到条件输出结果,按照迪杰斯特拉算法(dijkstra)输出每个轮灌组支管号,否则转到步骤2.3)。

本发明还提供一种基于粒子群算法的轮灌组优化系统,其包括:优化模型建立模块,用于以各轮灌组流量均差最小和开关阀路径最短为优化目标,建立多目标轮灌组优化模型,并确定其约束条件;优化模型求解模块,用于采用离散粒子群算法对建立的多目标轮灌组优化模型进行求解,并基于得到的最优解对轮灌组进行分组优化。

进一步,优化模型建立模块包括模型确定模块,用于确定以各轮灌组流量均差最小和开关阀路径最短为优化目标,并基于确定的优化目标建立多目标轮灌组优化模型;约束条件确定模块,用于确定多目标轮灌组优化模型的约束条件。

进一步,模型确定模块中确定的多目标轮灌组优化模型为:

其中,模型f1(x)表示轮灌组流量均方差,模型f2(x)表示轮灌组手工开关阀路径距离;j表示轮灌组号,i表示滴灌支管号;c表示轮灌组流量的均方差;αj表示各轮灌组流量平均值;fj为第j轮灌组流量和;m表示轮灌组数;d表示所有开关阀路径之和;sj表示采用迪杰斯特拉算法(dijkstra)对第j个轮灌组计算最短路径。

上述各实施例仅用于说明本发明,其中各部件的结构、连接方式和制作工艺等都是可以有所变化的,凡是在本发明技术方案的基础上进行的等同变换和改进,均不应排除在本发明的保护范围之外。

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