一种基于双层多目标进化算法的选址优化方法

文档序号:32449005发布日期:2022-12-07 01:22阅读:157来源:国知局
一种基于双层多目标进化算法的选址优化方法

1.本发明涉及群体智能优化技术领域,特别涉及一种基于trust-tech和相关系数的双层多目标进化算法的选址优化方法,该方法用于供水管网污染监测点的选址。


背景技术:

2.城市供水管网监测系统是基于无线通信技术,提供给供水企业用来远程监测供水管网,利用城市供水管网监测系统可以在水司调度中心远程监测全市供水管网的压力及流量情况。城市的供水管网为城市居民提供日常用水尤为重要,但是一旦饮用水发生污染且没有及时发现,就会对居民、经济、社会造成巨大的危害后果无法想象。
3.现有技术中基于双层多目标优化问题的进化算法建立一个完善的供水管网监测系统是很有必要的,通过此检测系统能够在第一时间进行预警,尽可能地减少城市居民的损害及社会的经济损失。双层优化问题总是涉及两层决策者,且优化过程是分层进行的,位于不同层次的决策者有自己的优化空间,当至少一个决策者必须考虑多个优化目标时,该问题称为多目标双层规划问题(mbpp)。
4.在监测系统中,对监测点的选择是至关重要的,在现实中不同的供水网络具有不同的监测目标,甚至在一个网络中的不同区域也会有不同的需求;但是,由于mbpp具有来自分层和多目标优化的累积计算成本,特别是当下层问题出现多个目标时计算非常困难,所以在具有不同监测目标、不同区域有不同需求的供水网络污染监测点选址时,其不能实现快速、准确选址。


技术实现要素:

5.基于此,有必要针对上述技术问题,提供一种基于双层多目标进化算法的选址优化方法。
6.本发明实施例提供一种基于双层多目标进化算法的选址优化方法,用于供水管网污染监测点的选址,该优化方法包括以下步骤:
7.将供水管网污染监测点选址的多目标优化问题分解成上下层多目标优化问题,且将下层多目标优化问题转化为多个下层单目标问题;即构建上层目标函数和下层目标函数;
8.产生初始种群,对初始种群中每一个上层参数值,解下层目标函数,获得下层最优解;
9.将下层最优解反馈于上层目标函数,采用多目标进化算法处理上层多目标优化问题,求适应度值得出pareto解集,将种群中所得的非支配解存入集合d1中;
10.从种群中选点进行交叉和变异,并对交叉和变异后的后代集,采用trust-tech技术求出下层目标函数的近似最优解;
11.将近似最优解反馈于上层目标函数,通过上层目标函数和下层目标函数的相关系数选择部分点进入下一代种群,对选择的个体求适应度值得出pareto解集,将采用多目标
进化算法获取的上层多目标优化问题的非支配点集存入集合d2中;
12.根据集合d2更新集合d1,迭代产生下一代种群,当满足停止准则时,输出非支配集合d1,即为选取的供水管网污染监测点。
13.进一步地,所述上层目标函数包括:监测时间和被感染的居民人数;所述下层目标函数包括:居民已使用的污染水量和监测概率。
14.进一步地,所述将下层多目标优化问题转化为单目标问题,具体包括:
15.基于球面坐标,利用均匀设计权重向量处理下层多目标优化问题,使下层规划变成了多个单目标规划。
16.进一步地,所述多目标进化算法包括:cmode/d算法、eatc算法、nsga-ii算法。
17.进一步地,所述交叉和变异采用的算法,包括:单纯形法和高斯变异算子。
18.进一步地,所述采用trust-tech技术求出下层多目标问题的近似最优解,其具体包括:
19.对选定的下层多目标问题采取多个初始点策略,对于下层多目标问题得到的最优解,作为初始点之一;
20.随机选择最优解区域内的其他点,以这些点为起点,重新应用额外的全局优化,在更新的点中选择更新得到真正下层的pareto最优解。
21.进一步地,所述停止准则,包括:达到预先设定的迭代次数结束,或达到最大循环迭代次数结束。
22.本发明实施例提供的上述基于双层多目标进化算法的选址优化方法,与现有技术相比,其有益效果如下:
23.本发明对多个子目标问题动态分配计算资源的优化策略有所改进,增加上下层问题的决策变量之间的信息交流,在保证算法精度的前提下缩短下层问题的计算时间,进而提高算法的收敛速度;以上层多目标函数作为评判全局标准,更为有效的选取供水管网的监测点,满足工程需求。即本发明在下层诱导域的前提下通过求解上层多目标问题来动态分配的计算资源的优化策略的改进,更有效的选取供水管网的监测地址,且在保证精度的前提下提升了算法的收敛速度。
附图说明
24.图1为一个实施例中提供的一种基于trust-tech和相关系数的基于双层多目标进化算法的选址优化方法流程图;
25.图2为一个实施例中提供的上层多目标优化问题的算法框架图;
26.图3a为一个实施例中提供的采用cmode/d、eatc及nsga-ii三种多目标进化算法对模型的上层两个目标进行求解时,得出的一个区域的pareto解集曲线图;
27.图3b为一个实施例中提供的采用cmode/d、eatc及nsga-ii三种多目标进化算法对模型的上层两个目标进行求解时,得出的另一个区域的pareto解集曲线图。
具体实施方式
28.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不
用于限定本技术。
29.在本发明实施例中,将上下层目标函数看成是多个所选的地址,提出的优化方法是将下层多目标问题通过加权和的方法转化成单目标问题,随后基于moea/d的进化算法来处理mbpps,进而确定出所选的地址。同时,在本发明实施例中嵌入一些有效的方法:如trust-tech和相关系数技术,被应用并结合moea/d的进化算法来处理mbpps,其中上层的变量值作为个体,通过计算上层的目标值来评估mbpps。此外,利用相关系数法提出了一种潜在个体的选择技术。即,通过对下层目标函数的加权求和和上层多目标问题的pareto解计算,更有效的选取供水管网的监测地址,且在保证精度的前提下提升了算法的收敛速度。其具体技术方案如下:
30.请参见图1,本发明提供的一种基于trust-tech和相关系数的多目标双层进化算法的选址优化方法的一较佳实施例采用算法框架moea/d,先进行下层多目标优化问题的加权和,利用trust-tech技术来求解下层目标的近似值,再将下层参数反馈于上层目标,通过上下层目标函数的相关系数选择部分点进入下一代种群,对上层目标函数利用moea/d分解的子问题产生新的种群个体,然后再用遗传算法选出优秀解生成外部集合,计算子问题的贡献度,再结合图2,本发明基于双层多目标进化算法提供了一种选址优化方法,且具体步骤如下:
31.将下层多目标优化问题转化为单目标问题,再对上层变量的每一个参数值,将其最优解反馈于上层目标函数,进而得出上层问题的pareto解集以提供供水管网污染监测点的选址。
32.s1(初始种群):在初始化范围内,对种群及权重向量进行初始化。
33.随机生成n个初始点xi,i=1,2,

,n构成初始种群pop(0)设gen=0。对每一个上层参数值xi,解下层问题并获得最优解y
li
,i=1,2,

,n,l=1,2,

,v。
34.s2(下层问题的转化):通过加权和的方法将下层多目标问题转化为单目标问题,依据trust-tech技术求出下层问题相应的近似解。利用moea/d分解所述种群,在目标函数空间内进行子区域个体选择。该上层目标函数包含监测时间f1、被感染的居民人数f2、下层目标函数为居民已使用的污染水量f1及监测概f2。其中,基于球面坐标利用均匀设计权重向量处理下层的多目标优化问题,使下层规划变成了v个单目标的规划。
35.s21:监测时间(z1):
36.污染物时间,是指利用传感器从污染物注入的时刻开始监测,到监测点监测到污染物(污染物浓度大于0)的时间间隔。定义ti为第i个监测点的监测时间,则在一次此污染事件中,所有的监测点的最小的监测时间为t=minti。因此检测时间f1(即目标函数f1)为:f1=e(t)。其中,e(*)表示左右随机事件的数学期望。
37.s22:被感染的居民人数(f2)
38.由于摄入的污染物浓度影响着感染的人数,而监测时间又影响着摄入的污染物浓度。假设从监测到污染物开始,不再有污染物被人体摄入。因此,对一次污染物事件,在监测到事件之前,每个节点的用户摄入的污染物浓度计算如下:
[0039][0040]
这里v为平均摄取速率,δt为时间间隔,c
il

il
分别是节点i在第t个时间步长的
污染物浓度和剂量乘子,m为监测到事件之前的时间步长总数。ρ
il
表示在一天之内污染物的摄入速率,因此其中γ
il
是在第l个步长时间内节点i在的需水量,是节点i的平均需水量。
[0041]
人在摄入ni的污染物之后,用下述模型表示被感染的概率:
[0042][0043]
这里pi∈[0,1],α表示常数,g为人的体重,使50%的人染病的剂量表示为d
50
,表示标准正态分布。
[0044]
所以在一个污染物事件中被感染的人数可以表示为以下模型:
[0045][0046]
这里mi是节点i的人口数,n是节点总数。对于随机事件,则感染的人数为:
[0047]
f2=e(ma)
[0048]
s23:居民已使用的污染水量(f1)
[0049]
f1表示在监测到水被污染之前被用户使用的污水的体积,则:
[0050]
f1=e(v)
[0051]
v表示用户的需水量体积。
[0052]
s24:监测概率(f2)
[0053]
给定监测点选址(监测点的数量和位置),监测概率定义为:
[0054][0055]
其中,第j个随机事件能够被监测到则dj=1,反之,dj=0;l是随机事件的总数。
[0056]
s3:指定双层多目标进化算法更新的交叉、变异算子的累计代数为gen,比较当前代数和指定代数gen,采用进化算法中的进化算子产生新的种群个体。即:对种群中的上层变量个体,若当前代数小于指定代数gen,则对每个子区域应用交叉变异算子产生新的个体;反之,则根据相关系数技术在进化算子产生的个体和父代个体中选择规定数量的较优个体。
[0057]
在本发明实施例中,利用单纯形法和高斯变异算子的进化算法产生新的种群个体。
[0058]
s31(交叉):
[0059]
在种群中,任意取个体xj,j=1,2,

,p+1,最差的xi其中作为父个体。基于单纯形法的思想,设计了如下的交叉操作:
[0060]
oi=(x
j-xi),i≠j,i=1,2,

,p+1
[0061]
那么交叉后代为:
[0062][0063]
这里,r
t
,t=1,2,

,p,是正的并满足
[0064]
s32(变异):
[0065]
采用高斯变异。假设是被选中进行突变的个体,那么的后代按如下方式产生:
[0066][0067]
s4(适应度值评估):上层目标的函数值值为fk(xi,y
li
),i=1,2,

,n,l=1,2,

,v,k=1,2,

,q,应用moea/d方法处理上层多目标优化问题,将种群pop(g)中所得的非支配解存入集合d1中。
[0068]
在上述的双层多目标目标函数找出pareto的解集的过程中,转化后的下层单目标问题可以根据trust-tech技术在下层目标空间中可以逐层进行搜索找出下层优化问题的近似最优解。
[0069]
在本发明中,将每个监测点看成是种群中的个体,而选址可以根据以下的更新采用如下方法:
[0070]
s6(后代种群pop

(gen))
[0071]
对于交叉和变异操作产生的后代集(x
o1
,x
o2
,

,x

),采用trust-tech技术得到下层规划(3)的近似解(y

l1
,y

l2
,...,y


),l=1,2,

,v。则得到子集pop

(gen),上层的目标函数值为fk(x
oi
,y
li
),i=1,2,...,λ,l=1,2,

,v,k=1,2,

,q。
[0072]
s7(更新后代个体)
[0073]
传统优化不能保证获得全局最优解的原因是初始点离真正的最优解太远。它不在同一个山谷中,因此,优化过程并不总是找到全局最优解。在本发明中,对选定的下层问题采取多个初始点策略。对于得到的y,作为初始点之一,随机选择y值区域内的其他η个点,以这些点为起点,然后重新应用额外的全局优化程序,可以在更新的点中选择更新得到真正下层的pareto最优解。moea/d用于获取上层问题的非支配点,并将这些点放入档案集d2。
[0074]
s8(更新pareto解集d1):
[0075]
令d1=d1∪d2。去掉d1中的支配解,假设d1的规模超过了预先所确定的阈值,应用nsga-ii算法中的拥挤距离来删除一些冗余点。
[0076]
s9(选择)
[0077]
从集合pop

(gen)∪d1中,选择最好的n个个体构成下一代种群pop(gen+1)。
[0078]
s10(终止条件)
[0079]
如果满足停止准则,则eatc停止并输出非支配解集d1;否则,设置gen=gen+1并转到步骤s4。即如果达到预先设定的代数或达到最大循环迭代次数则结束,反之直接返回步骤s4。
[0080]
实例分析:
[0081]
在本实施例中,采用114个节点的复杂网络为研究对象,并采用群体只能优化算法对这四个监测目标进行优化,需要对上层决策变量进行编码。即x={x1,x2,

,xm},其中xi,i=1,2,

,m的取值为0或1,m为管网的节点总数。当xi=1时表示第i个节点为监测点。
[0082]
分别采用cmode/d、eatc以及nsga-ii三种多目标进化算法对模型的上层2个目标进行求解,得出两个区域的pareto解集,其结果在图3中给出。由图3可知,本发明方法具有较好的效果。表1表示了三种算法在运行10次中c度量的比较,从表中的数据也显示本发明
是有效的。
[0083]
表1 c度量的比较
[0084][0085]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1