APP下载

一种求解番茄种植规划问题的多目标粒子群-生物地理学优化算法

2023-08-10蒋兵兵

计算机应用与软件 2023年7期
关键词:番茄酱栖息地番茄

罗 丹 蒋兵兵

1(湖南铁道职业技术学院轨道交通智能控制学院 湖南 株洲 412000) 2(湖南铁路科技职业技术学院铁道供电与电气学院 湖南 株洲 412000)

0 引 言

番茄作为一个重要农作物,年平均种植面积在70 000公顷以上,占我国产量的90%左右,其出口量占全球贸易量的1/4[1]。在番茄加工期,在番茄生产能力与加工厂的加工能力之间存在严重的不平衡。主要表现在番茄采摘季的前后期,由于番茄的产量偏少,造成加工生产线的闲置,使得酱厂的生产效率降低;而在番茄采摘季的中期,番茄的产量明显偏高超过酱厂的加工能力,造成加工番茄的堆积和变质以致浪费,使得番茄酱的质量下降。在加工期番茄原料的供应不均衡,容易给农户和企业造成较大的经济损失,同时也给环境造成一定的污染。因此,番茄种植规划问题的研究能够为番茄酱加工企业以及番茄种植户提供种植规划方面的理论指导,并产生一定的实际实用价值[2-3]。

在许多发展中国家,农作物的种植规划正在成为研究的热点,且越来越多的学者将各种智能优化算法逐渐应用到种植规划中。生物地理学算法[4](Biogeography-based Optimization,BBO)是一种继蚁群算法、细菌觅食算法和萤火虫算法之后的又一个热门研究算法。该算法被测试在一些性能上表现得比传统智能优化算法更好,已被成功地应用到经济负荷调度、旅行商问题和机器人路径规划等实际问题中。

本文旨在将具有快速收敛性能的粒子群算法与收敛速率不足的生物地理学算法相结合,采用“取长补短”的方式,结合两种算法的优势,提出一种基于粒子群优化的改进生物地理学算法,将该算法在NSGA-Ⅱ中的快速非支配排序法基础上进行优化,形成基于非支配排序的多目标粒子群-生物地理学算法(Nondominated sorting Biogeography-based Optimization with Particle Swarm Optimization, NSPBO),用于对构建的多目标番茄种植规划模型进行求解,以期能够协调各目标之间的关系,获得最合理的种植规划方案。

1 多目标番茄规划模型的构建

以新疆吉木萨尔县某番茄酱加工厂(企业)的环境参数为例进行多目标番茄规划模型的建立。本研究主要考虑三个目标的综合优化:在满足工艺约束的情况下,一是使得企业经济损失最小,即使番茄产量达到供应平衡;二是使得种植户总净收益最大,即种植户能够利用有限的土地获得尽可能多的收益;三是使得土地利用率最大,即在满足约束的前提下使十个品种的番茄种植面积最小。

1.1 三个目标函数

(1)目标函数1:企业经济损失最小。

为了使经济损失最小、原料浪费最少和生产效率最高,应使番茄日产量与加工厂日产能的误差的平方和最小:

(1)

式中:D为番茄酱厂的总加工时间;EY为酱厂所有生产线日加工产量;PYj为估计的第j批(即第j天种植的)番茄产量。

(2)

式中:N为种植番茄的品种数目。每个品种的番茄产量Y的向量模型表达式为[15]:

(3)

式中:Yj(i)为第j批(即第j天种植的)i号番茄的实际产量,单位(kg);Y0j(i)为第j批i号番茄的单位面积基本产量;Aj(i)为第j批i号番茄的种植面积,单位m2;S(k)为第k天的光照强度;T(k)为第k天的平均积温;N(k)为第k天的土壤营养状况;W(k)为第k天的土壤水分状况;P(k)为第k天的病虫害状况;Mj(i)为第j批(即第j天种植的)i号番茄的实际生长期;M0j(i)为第j批i号番茄的基本生长期;Bpy、Bny、Bty、Bwy和Bsy分别为反映番茄在生长过程中受病虫害、土壤营养、积温、土壤水分和光照强度对农作物产量的影响程度;Bsh和Bth分别为反映在生长过程中光照和环境积温对加工番茄生长的影响程度。

(2) 目标函数2:种植户总净收益最大。为使种植户的净收益最大化:

(Aj(i)×WRi×WC)]-FARM

(4)

式中:Ci为第i号番茄的总收益/kg;WRi为第i号番茄用水量/m2;WC为水价/m2;FARM为种植户总的成本。

(3) 目标函数3:土地利用率最大化。即面积最小:

(5)

1.2 目标函数的约束条件

(1) 约束条件1:总的种植面积。

种植规划方案中,番茄酱厂需要的种植面积不能超过所有种植户的总面积。因此,十个品种的番茄的总的种植面积应该小于或者等于总面积。

(6)

式中:TPA为番茄酱厂的总种植面积/m2。

(2) 约束条件2:种植面积的地块信息。番茄酱厂的种植面积是由许多独立地块组成,在减少种植时对面积的计算将独立地块不再划分,即每块地在一天内只能种植一个品种且地块面积必须全部种植。

Aj(i)=LAND

(7)

式中:LAND为番茄酱厂的地块信息。

(3) 约束条件3:固形物含量SC。满足基本要求:

SC(x)≥BSC

(8)

式中:BSC为原料中SC要求的最低含量,单位mg/g。

(4) 约束条件4:番茄红色素含量HC。满足基本要求:

HC(x)≥BHC

(9)

式中:BHC为原料中HC要求的最低含量,单位mg/100 g。

(5) 约束条件5:维生素含量。番茄加工对维生素VC含量不得低于基本要求。

VC(x)≥BVC

(10)

式中:BVC为原料中VC要求的最低含量,单位mg/100 g。

1.3 番茄规划的数学模型

根据上述分析得到约束条件的番茄规划数学模型,直接求解过程会非常复杂。本文根据罚函数法,即将表示企业损失最小的目标表达式F1进行增广,将其转化为无约束数学模型,得到新的F1函数,其数学表达式为:

F1(X,Mk)=min{f1(X)+M1×

max(SC(x)-BSC,0)+M3×max(HC(x)-

BHC,0)+M4×max(HC(x)-BHC,0)}

(11)

式中:M1、M2、M3和M4分别表示惩罚因子。

有上述的描述可以得到为番茄规划的数学模型:

(12)

2 求解番茄种植规划的NSPBO

2.1 粒子群优化

在标准粒子群优化算法(PSO)中,可用字母变量Xi表示第i个粒子,变量Vi表示其对应的速度,将其每次迭代中获得的最优个体位置(局部极值)表示为Pi,其中整个迭代过程中的最优个体位置(全局极值)表示为Pg。则粒子的速度和位置更新公式为:

Vi(t+1)=γ(Vi(t)+c1·r1(Pi(t)-Xi(t))+

c2·r2(Pg(t)-Xi(t)))

(13)

Xi(t+1)=Xi(t)+Vi(t+1)

2.2 生物地理学算法

在BBO中,问题的每个解对应每个番茄品种每批的种植面积被称为一个适宜度指数变量(SIV)。每个解的度量函数值对应每个种植方案的目标函数值被称为一个适宜度指数(HSI)。生物地理学算法的基本介绍参考文献[5-6]。BBO的两个操作算子简述如下:

(1) 栖息地的迁移操作[7-8]。

根据λi选择需要迁入的栖息地Xi,确定Xi后;根据μj选择需要迁出的栖息地Xj,并随机选择一个栖息地Xm;然后从Xj和Xm中分别选择SIV进行混合替代Xi中相应SIV。

(14)

式中:α为加权因子,rrand为随机数,rrand∈(0,1)。

(2) 栖息地的突变操作[9-10]。突变操作中发生突变的概率计算公式:

(15)

式中:Mmax为最大突变率,Pmax=arg(max(Ps)),s=1,2,…,Smax。然后根据Ms选择需要突变的栖息地,随机选择该栖息地的一个SIV将其用按高斯分布随机生成的一个量替代[10]。

2.3 NSPBO

BBO算法的收敛速率及精度差但探索能力强[11]。PSO的速度及位置更新操作可以使得粒子的搜索范围变得愈来愈窄,同时不断地向最优解靠近,虽然在迭代前期算法收敛很快,但是到后期由于搜索区间的局限性使得粒子可能无法跳出局部极值,这就造成了粒子的搜索能力被大大减弱。为了充分地利用每个操作算子,将PSO的速度及位置更新方式与BBO的操作算子合理地相结合形成一种改进算法,简称PSOBBO。其中,BBO每个栖息地信息与PSO的每个粒子位置信息互相对应。

受NSGA-Ⅱ算法的设计原理启发,将快速非支配排序法与本文算法联合起来,并用于解决多目标番茄种植规划等实际问题。将快速非支配排序法与PSOBBO相融合[12],用 PSOBBO的位置和速度更新操作、迁移和突变操作机制代替NSGA-Ⅱ算法的GA的选择、交叉、变异操作机制,以用于求解具有多目标的番茄种植规划模型。文中将采用非支配排序的PSOBBO称为多目标粒子群生物地理学算法(NSPBO)。NSPBO的具体工作步骤如下:

(1) 参数初始化,包括BBO的参数及PSO的参数c1、c2和φ;随机生成任一栖息地信息X(t0),即算法中的栖息地向量与优化问题的种植方案一一对应。

(2) 根据目标函数计算每个栖息地的适宜度函数值f(X),按降序排序;保存本次的最优适宜度函数值为pbest,获得pbest的栖息地信息为局部最优个体Pi;保存整个算法运行中的最优适宜度值为gbest,对应的栖息地信息为全局最优个体Pg。

(3) 根据第(2)步的计算方式更新适宜度函数值得到新的f(X),并按降序排列,获得对应栖息地的物种数目Si,根据余弦迁移模型计算迁入率λ以及迁出率μ,并保存最优解。

(4) 根据文中给出的干扰迁移操作算子式(14)获得新的栖息地信息U(t)和新的适应度值f(U)。

(5) 根据高斯变异操作选取需要进行突变的栖息地完成变异,并修改对应的栖息地信息V(t),重新计算适应度值f(V)。

(6) 比较栖息地信息。若f(X)比f(V)和f(U)更优,则栖息地信息X(t)不变,若f(V)或f(U)比f(X)更优,则栖息地信息X(t)用U(t)或V(t)替换。

(7) 根据PSO算法的信息更新公式获得新的栖息地信息,并对pbest、Pi和gbest、Pg进行更新。

(8) 根据参考文献[12]的计算方式对获得的解集计算极大极小距离密度,进行快速非支配排序。

(9) 判断是不是到达最大迭代次数Tmax。如不满足,则t=t+1,转到步骤(3);否则输出优化过程中保存的最优解gbest。

(10) 根据实际需求,从Pareto最优解集中选取最合理的番茄规划方案。

2.4 性能比较

为了验证NSPBO应用于番茄规划问题求解的有效可行性,先选取常用的二维函数进行测试,ZDT系列中的ZDT1、ZDT3,再选取三维函数进行测试DTLZ系列中的DTLZ1、DTLZ2进行性能验证。

NSPBO算法的环境参数设置如下:最大迁入和迁出率E=I=1.0、Mmax=0.1、c1和c2均为2.0、γ为1.0;不同测试函数的两个相关环境参数NP和Tmax设置详见表1,其他算法也是相同的设置。NSPBO算法获得的Pareto前沿如图1所示。

(a) ZDT1 (b)ZDT3

表1 环境参数设置

由图1、表2和表3测试结果可以看出,本文算法在二维函数的测试上可以将解集收敛到最优,针对具有一定难度的三维函数,NSPBO也能够收敛到已知的Pareto前沿解集,Pareto前端不论是具有非连续的ZDT3函数还是凸的三维函数DTLZ系列,测试结果表明本文算法NSPBO都可以收敛到图中的真正Pareto前端上,同时获得的Pareto前端在分布性上表现较均匀,表明提出的算法是合理和可行的。

表3 四种算法获得的SP的平均值及方差

为了进一步验证NSPBO的有效性,与NSGA-Ⅱ[12]、NSPSO[13]、NSBBO[14]进行比较,各算法实验的参数设置参考文献[12-14]中的设置,NSGA-Ⅱ算法的交叉因子为0.9、变异因子为0.01,交叉和变异分布参数均为15;NSPSO算法的c1和c2均为2.0,γ为1.0。采用文献[15]中的世代距离GD和分布性评价指标SP分析MDBBO的有效性,其中GD和SP的两个评价指标分别表示收敛到Pareto前端的性能和获得的Pareto前端在空间分布的均匀程度,其值均是越小越好。通过MATLAB 2010b软件仿真,将四种每个算法分别独立运行20次,经计算获得的GD和SP平均值及方差的数据对比如表2所示,表2中用字母A、B、C、D分别表示代替NSPBO、NSGA-Ⅱ算法、NSPSO、NSBBO。

对表2数据进行对比分析可以看出,对于四个测试函数,NSPSO和NSPBO的收敛性指标GD值都比较近似,但从二维函数ZDT1、三维函数DTLZ1和DTLZ2的测试数据来看,NSPBO的GD值是四种算法中数值最小的,NSPBO获得的数据结果要优于NSPSO,同时NSPBO对三维测试函数DTLZ1、DTLZ2在收敛性上比另外三种算法表现更好。从表3可以看出,对四个测试函数得到的SP值,NSPBO的均值均是最小,表明NSPBO的均匀分布性要优于其他三种算法,同时也表明NSPBO在多目标优化问题上是有效的。

3 仿真与分析

新疆某地区某番茄酱厂提供的部分环境参数为:D为60 d;EY为3 000 000 kg/d;TPA和LAND值由某工厂提供;番茄品种的参数信息参考文献[15-16],部分参数如表4所示;酱厂对番茄原料中的固形物、红色素和维生素含量分别为12.16 mg/100 g、5.6 mg/100 g和5.6 mg/100 g。

表4 番茄品种的参数信息

本文将所提出的NSPBO与NSPSO、NSGA-Ⅱ 、NSBBO分别对多目标番茄规划模型进行求解,以此测试和验证算法的可行性和有效性。使用MATLAB 2010b 软件仿真,文中四种算法得到的番茄种植规划问题的Pareto最优前沿曲线图和极端解的数据表分别如图2和表5所示。在每个地块的面积是固定的情况下,由于地块的信息中难免有面积一样的,所以在选择地块的时候存在多解。

(a) NSGA-Ⅱ算法 (b) NSBBO

表5 四种算法获得番茄种植规划问题的极端解

由图2(a)可以看出,随着土地面积的增加,番茄种植户总收益不增加,而番茄浪费量即企业利润的损失不断增加,因此,NSGA-Ⅱ算法较其他算法得到的Pareto最优前沿在空间分布上比较局限,解集的完整性表现最差。而由图2(d)可以看到,在分布长度的完整性上,获得的整个Pareto前端要明显优于图1(a)和图1(c),因此,NSPBO的完整性表现较好;从空间分布上看,图2(d)的解集在整个Pareto前沿的空间分布上表现得更加均匀,要优于图2(b)和图2(a)。

同时从表5可以看出,在F1最优的极端解情况下(即番茄浪费量最少),NSPBO和NSGA-Ⅱ、NSPSO在三个优化目标上都能够获得相同的极端解,表明在考虑番茄浪费率上都可以获得最优的番茄种植规划。在F2最优的极端解情况下,NSPBO和NSPSO都能够保障种植户获得最大净收入,但NSPBO相比NSPSO虽然在番茄浪费量上增加0.975%,但NSPSO种植面积上比NSPBO要增加8.40%,在这种情况下NSPBO获得种植方案更加合适。在F3最优的极端解情况下,各算法获得种植面积极端解都是比较接近的,但NSPBO在番茄浪费量和种植户收益优化效果更好,在考虑种植面积最优时,NSPBO获得种植方案要优其他几种算法。

因此,本文算法与NSPSO、NSGA-Ⅱ和NSBBO进行比较,采用本文算法获得的Pareto前沿在完整性和分布均匀性上都要表现得更加突出。综上所述,提出的NSPBO有更好的优化能力,能够更好地为企业提供适合的番茄种植规划方案。

4 结 语

番茄酱原料存在长期供应不均衡的情况,而这一现象与番茄种植的规划相关,因此本文通过对番茄种植规划进行数学模型,然后应用 NSPBO求解多目标番茄规划模型,其中番茄规划模型综合考虑了经济因素和环境因素。该算法有机融合了 Pareto 快速非支配排序法和粒子群速度位置更新操作与生物地理学算法迁移和突变操作,增强了算法对多目标问题的优化能力。通过实际案例分析,该方法算法能够有效地为企业和种植户提供某一目标优化偏好的种植规划方案,并与NSPSO、NSGA-Ⅱ和NSBBO进行比较,本文算法NSPBO 的 Pareto 前沿无论在目标空间的分布上还是解集的完整性上都具有更好的表现,能够更好地实现任一目标偏好。因此,本文算法能够为多目标番茄种植规划的求解提供适合的种植规划方案。

猜你喜欢

番茄酱栖息地番茄
四川大熊猫栖息地
番茄酱哲学
番茄炒蛋
秋茬番茄“疑难杂症”如何挽救
番茄果实“起棱”怎么办
“听话”的番茄酱
番茄酱简史
BEAN SCENES
抵达栖息地
番茄酱吃多了好吗