主权项 |
一种基于多种群协同算法的给水管网污染源定位方法,其特征在于,包括如下步骤:获取给水管网中每个水质传感器检测到的污染物浓度;利用多种群协同算法随机产生多个初始污染事件;其中,包括:确定种群规模、最大迭代次数和平分子群个数;在主节点上初始化种群,其中,将所述种群平分为P个子群,所述种群中的粒子个体的编码包括管网节点位置、污染物质量向量、污染发生时间和污染截止时间;计算所述种群中每个粒子个体的适应值,并保存所述种群的最优解和最优个体;污染物浓度模拟步骤:基于污染事件进行水力模拟和水质模拟,以得出污染物浓度模拟结果;将所述污染物浓度与所述污染物浓度模拟结果进行匹配,获得匹配误差;在所述匹配误差大于设定误差时,利用所述多种群协同算法根据所述匹配误差调整优化方向进行循环搜索,直到找到全局最优解;其中,包括:利用所述种群在所述主节点上并行优化,找到包含所述最优解的N个种群,其中,每个所述子群包括多个粒子个体;将所述P个子群分配给N个子节点;在Hadoop云计算平台下运行Map‑Reduce模型进行如下步骤:a、在Mapper上运行单粒子群局部精度搜索算法进行局部搜索:所述N个子节点分别进行局部极值点的维度搜索,并对每个所述粒子个体进行位置更新和速度更新;b、在Reducer上对所述局部搜索的结果进行规约存储;将所述局部搜索的结果合并得到的最优解集合与上一次迭代结果进行对比;若对比结果小于或等于所述设定误差,则确定找到所述污染源位置,否则产生N个新污染事件送往所述主节点,迭代次数加1后返回所述污染物浓度模拟步骤;所述匹配误差在所述设定误差范围内时确定找到污染源位置。 |