严华健 ,张国富 ,苏兆品 ,刘 扬
(1. 合肥工业大学计算机与信息学院,合肥230601;2. 工业安全与应急技术安徽省重点实验室(合肥工业大学),合肥230601;3. 安全关键工业测控技术教育部工程研究中心(合肥工业大学),合肥230601;4. 安徽省经济信息中心网络管理处,合肥230001)
近年来,我国各类自然灾害多发频发,给国民经济与社会发展造成巨大的损失。当灾害发生后,如何及时、有效、合理地把各个储备点有限的救灾物资分配到灾区的各个物资发放点,成为应急管理部门非常关心的一个重要问题,也是国内外学者研究的一个热点[1]。时至今日,现有针对救灾物资分配问题的研究大致可以粗略地分为单目标优化和多目标优化两大类。
在单目标优化方面,Arora 等[2]针对单种医疗救援物资的分配,建立了费用约束下的救助率最大化模型。Altay[3]根据各储备点和发放点之间的供需关系,构建了基于应急能力的救灾物资分配整数规划模型,以最大化物资分配效用。Wex等[4]构建了一种以最小化所有事故救援总完成时间为目标的各种救援力量分配模型。李永义等[5]基于灾区区域大小、受灾程度、人口密度和灾区群众需求构建了基于区间数的地震应急物资分配多属性决策模型。王旭坪等[6]在考虑受灾地区灾民非理性攀比心理的基础上,依据应急物资分配数量和配送时间最小化应急物资分配的攀比函数值。刘长石等[7]考虑应急物资分配的公平性,以所有需求点的损失攀比效应总和最小为目标构建应急物资分配模型。于冬梅等[8]从需求区域和应急设施应急服务质量的视角构建了一个基于障碍约束、容量及安全库存约束的应急设施选址与资源分配优化模型,追求障碍约束下的应急设施最大时间满意度。胡忠君等[9]对受灾区域进行无监督聚类划分来明确各受灾点的紧急度,然后基于粒子群算法最小化救灾物资分配方案带来的相关运输费用。
在多目标优化方面,王旭坪等[10]利用前景理论建立了一个最大化感知救援时间满意度、灾区需求满意度和物资分配效用满意度的三目标非线性整数规划模型,并利用分散搜索算法对模型进行求解。Chang 等[11]构建了一个最小化物资需求不满足度、总消耗时间和总运输成本的三目标优化模型,并提出了一种基于贪心策略的多目标遗传算法来搜索最佳分配方案和配送路径。陈莹珍等[12]考虑发放点之间物资分配的公平性,建立了一个最大化发放点的物资满足量、最小化最大运送时间的两目标优化模型,并引入差异演化算法进行求解。苏兆品等[13]针对多储备点、多发放点和多种救援物资,同时考虑应急响应总时间和应急资源总成本这两个优化目标,并设计了一种基于非支配排序差异演化和编码修正机制的求解算法。张国富等[14]构建了一个最小化救援物资的未满足量、最小化最大通行时间和最大化最小通行可靠度的三目标救灾物资分配和调度集成优化模型,并设计了一种基于二维第二代非支配排序遗传算法(Non-dominated Sorted Genetic Algorithm 2,NSGA2)与蚁群优化的混合智能搜索算法进行求解。陈刚等[15]同时考虑物资分配的效率和公平,构建了一个最小化受灾点的总加权嫉妒值和最小化总物流成本的两目标优化模型,并引入NSGA2算法进行求解。
总的来说,基于单目标优化的救灾物资分配,虽然模型和算法简单易行,但只能输出一个最终解,很难在各个优化指标上达到一个理想的平衡[16];而对于救灾物资多目标分配,最终可以输出一个Pareto 解集,可以让决策者根据实际的需求挑选合适的偏好解,但是,现有研究均局限于三个优化目标之内,且大都考虑时间、成本等因素。此外,在现有研究中,往往只考虑某种特定情况下的救灾物资分配,例如所有种类的应急物资供应量都很充足,导致应急救援场景较为单一。众所周知,灾害应急响应是一个十分复杂的系统工程,需要考虑的因素牵涉到方方面面,甚至需要考虑社会心理学等,简单的多目标优化思路和单一的应急场景很难契合复杂的应急环境,难以满足实际应急决策的需求。
基于上述背景,本文在总结已有工作的基础上,引入社会心理学中的相关因素,从应急响应工程的系统性、社会性上进行设计,综合考虑了应急响应总时间、灾民恐慌度、救灾物资未满足度、物资分配公平性、灾民损失、应急响应总成本等决策指标,构建了一个多储备点、多发放点、多种救灾物资的高维多目标(大于等于四个优化目标)分配模型,从而为决策者提供更加全面、科学的思考。此外,本文引入了在高维多目标优化方面性能优越的移位密度估计(Shift-based Density Estimation,SDE)[17]和第二代强度帕累托进化算法(Strength Pareto Evolutionary Algorithm 2,SPEA2)[18]混合算法 SPEA2+SDE 来求解所提的模型,并针对SPEA2+SDE 无法处理约束的弊端,基于自适应个体修正(Adaptive Individual Repair,AIR)改进SPEA2+SDE,以提升它在解决本文的复杂高维多目标约束优化问题上的性能。最后,通过和已有方法的对比实验分析验证了所提模型和算法的有效性。
设某地区突发灾害后,周边有n 个救灾物资储备点A={a1,a2,…,an},需要响应灾区里 m 个物资发放点的应急需求G ={g1,g2,…,gm}。
定义1 ∀gj∈ G(j ∈ {1,2,…,m})有一个相对的受灾程度 λj∈ [0,1],满足越大,表示 gj受灾情况越严重。
定义2 ∀gj∈G 有一定的救灾物资需求量Dj=其 中 :r 表 示 救 灾 物 资 的 种 类 ;表示发放点gj对第k 种救灾物资的需求量,可由应急专家结合灾情评估系统根据发放点gj的服务区域大小、受灾程度、人口密度和灾区群众需求进行预估。注意,如果= 0,则gj不需要第k种救援物资。
定义3 ∀ai∈ A(i ∈{1 ,2,…,n} )拥有一个救灾物资储备量其中表示储备点 ai在第 k 种救灾物资上的储备量。注意,如果= 0,则ai没有第k种救援物资。
定义4 考虑到各物资储备点在经济和地域上的差异性,∀ai∈A 有一个救灾物资单位成本其中:表示储备点ai在第k种救援物资上的单位成本。
定义5 ∀ai∈A 对∀gj∈G 有一个救灾物资分配量Xij=表示储备点 ai到发放点 gj在第 k 种救灾物资上的分配量,满足,即每个储备点ai向所有发放点提供的第k 种救灾物资的总量不可能超过第k种救灾物资上的储备量,且有,即所有储备点向发放点gj提供的第k 种救灾物资总量不会超过gj在第k 种救灾物资上的需求量。
定义6 考虑到各储备点之间物资种类和运输工具的同 ,∀ai∈ A 对 ∀gj∈ G 有 一 个 单 位 广 义 时 间 距 离 Tij=表示从储备点ai到发放点gj在第k种救灾物资上的单位运输时间。
定义7 ∀ai∈A 对∀gj∈G 有一个单位运输成本Cij=表示从储备点 ai到发放点 gj在第 k 种救灾物资上的单位运输成本。
依据上述定义,对于n 个储备点和m 个发放点,总共有n × m 个 Xij,构成一个可能的救灾物资分配方案 Xn×m。在灾害发生后,受灾群众心理相对比较脆弱,从灾民心理风险感知的角度考虑,如果Xn×m分配不公平或配送不均衡,则容易消解灾民对安置措施的安全感受,从而导致群体性恐慌事件等严重后果。因此,在灾害应急响应过程中,尤其在资源短缺的时期,救灾物资的分配应充分考虑灾民对救灾物资的到达时间和数量的敏感度。
首先,从救灾物资的到达时间上来看,灾民对救灾物资分配的时效性最为敏感[19],因此,决策者总是期望 Xn×m对应的应急响应总时间要尽可能地短,即
除此之外,各个发放点之间对救灾物资的获取时间存在着普遍的攀比心理,如果各发放点获得救灾物资的时间与其心理预期时间相差过大,则会给灾民带来额外的心理恐慌,从而极易诱导群体性事件的爆发。因此,根据前景理论的价值函数模型,可用
来表示发放点gj获得救援物资的时间,用
来表示各个发放点获得救援物资的平均时间,用δ*(一个较大的常数)来表示τ*对应的灾民的心理恐慌度,则发放点gj区域中灾民的心理恐慌度[19]为:
其中:α,β ∈ (0,1)为敏感性递减系数,γ ∈ [1.5,2.5]为损失厌恶系数。据此,决策者总是期望分配方案Xn×m对应的灾民心理恐慌度应该越小越好,即
在另一方面,从救灾物资的数量上来看,决策者总是期望各发放点的救灾物资未满足度要尽可能地小,即
从社会心理学角度进一步考虑,当发放点gj的救灾物资未满足量
大于某个发放点gj*的未满足量
时,gj区域的灾民就会产生嫉妒心理,相反则没有嫉妒反应。可用
来表示gj区域的灾民对gj*产生的嫉妒值。另外,出于对群体效应的考虑,受灾情况越严重的地方越容易引发群体事件,其嫉妒值的权重应该越大。根据最小妒忌公平原则[15],所有发放点的加权嫉妒值越小,灾民的心理效用就会越均等,物资分配的公平性就越高,即
不仅如此,灾民的损失也与救灾物资未满足量和受灾程度具有典型的凸函数关系[20],受灾情况越严重,灾民的损失会随着救灾物资未满足量的增加而急剧增加。因此,可用
来最小化各发放点所负责灾区内灾民的损失。
需要注意的是,救灾物资分配还应该考虑经济因素,尤其在应急响应的中、后期,决策者需要谨慎考虑投入的成本(包括物资成本和运输成本),总是期望应急响应总成本要尽可能地小,即
基于上述考虑,面向多个发放点的应急需求,对多个储备点的多种救灾物资同时进行分配,构建如式(7)所示的高维多目标优化模型。该模型总共包含了6 个目标函数,基本囊括了应急响应工程的系统性、社会性等诸方面因素。需要指出的是,这样设计的目的是为了尽可能地为决策者提供更加科学、全面的决策参考。在实际的应急决策中,决策者可以在决策支持系统中根据灾情信息灵活选择需要考虑的目标函数,从而提高系统的人机交互性。此外,第一个约束条件是为了保证任意一个储备点在任意一种救灾物资上的供给不存在资源冲突;第二个约束条件是为了确保任意一个发放点在任意一种救灾物资上的需求不存在过度供应,从而避免资源浪费;第三个等式约束条件是为了让每个储备点竭尽全力地贡献资源,从而尽可能地利用现有资源实现最佳的救援效果。
近年来,多目标进化算法在解决目标个数不多于三个的多目标优化问题上展现了卓越的性能,例如主流的NSGA2[14]、SPEA2[19]等。然而,上述方法在求解高维多目标优化问题时却遇到极大的困难,这是因为随着目标函数个数的增加,传统的Pareto 占优关系很难有效区分进化个体,而且使得逼近问题真实Pareto 前沿所需的候选解个数猛增,严重影响了算法的探索能力[21-22]。Li 等[17]从维护种群多样性的角度出发,同时兼顾个体的分布和收敛信息,提出了一种移位密度估计策略。SDE通过迁移稀疏个体(即收敛性差的个体)在目标空间的位置,使其具有较大的密度值,从而让其更容易被淘汰。Li 等[17]将 SDE 与 SPEA2 相结合应用于多个基准高维多目标优化问题,取得了很好的效果。因此,本文引入简单易行且效果突出的SPEA2+SDE 算法来求解如式(7)所示的救灾物资高维多目标分配问题。
不过,需要特别指出的是,式(7)是一个典型的约束优化问题,特别是还包含一个等式约束条件,而SPEA2+SDE 算法只见长于无约束优化问题,因此,需要结合问题本身,对传统的SPEA2+SDE 算法进行改进,以提高算法对这个特殊的高维多目标约束优化问题的求解能力。
为了更清晰地表达,本章首先给出基本的SPEA2+SDE 算法,然后给出本文提出的个体编码方案和个体修正(Individual Repair,IR)策略,最后介绍本文的改进型混合优化算法。
SPEA2+SDE 算法[17]包含进化种群(包含N 个个体)和外部种群(包含N′个体)两部分,其大致流程如下:
步骤1 在初始化时,设置初始迭代次数t = 0。根据待求解的问题随机生成初始进化种群Qt和外部种群Q′t。根据Q′t中N′个个体的编码和多目标函数计算每个个体在每个目标函数上的值。
步骤2 如果t 已达最大迭代次数,则算法终止迭代,输出Q′t中的所有非支配个体作为最终的最优解集,否则算法继续迭代。
步骤3 根据Qt中N 个个体的编码和多目标函数计算每个个体在每个目标函数上的值。
步骤 4 将 Qt和 Q′t合并成一个组合种群 Vt= Qt+ Q′t,并对Vt中的每个个体的每个目标函数值进行min-max标准化。
步骤5 对Vt进行适应度分配。对于Vt中的每一个个体x,对应一个支配强度值S(x),为x能够支配的点的数目,即
据此,基于小生境法可得x 的原始适应度,即x 的支配者的强度值之和:
此外,每一个个体x还有一个拥挤度值:
步骤6 对Vt进行环境选择。在Vt中,所有的F(x)<1的个体(即非支配个体)被全部复制到新的外部种群Q′t+1。如果|Q′t+1|= N′,则此时环境选择结束。如果|Q′t+1|< N′,则外部种群没有填满,那么对于在Vt中剩下的所有支配个体(即F(x)≥1),按照适应度值F(x)进行升序排序,选择前面适应度值最小的 N′-|Q′t+1|个个体进入 Q′t+1。如果|Q′t+1|> N′,则外部种群过大,进行截尾操作,依次从Q′t+1中删除一个与邻近个体距离最小(收敛性最差)的个体,直到满足|Q′t+1|=N′。
步骤7 对新的外部种群Q′t+1进行min-max 标准化和适应度值分配。
步骤8 对Q′t+1进行交配选择。运用锦标赛选择方式依次从Q′t+1中选择两个父代个体进行模拟二进制交叉,生成两个子代个体放入新的进化种群Qt+1中,直到|Qt+1|= N。
步骤9 对新的进化种群Qt+1进行多项式变异。
步骤10 t = t + 1,转步骤2。
如前所述,对于n 个储备点和m 个发放点,对应一个救灾物资分配方案,这恰似一个二维组合优化问题。而原始的SPEA2+SDE 算法采用一维实数编码,很难描述Xn×m的二维特性。因此,本文设计了一种二维整数向量编码来表示算法中的每个个体,如式(11)所示。这种编码方式简单直观、容易理解,而且从根本上与本文救灾物资分配问题的二维本质相适应,且极大方便了后续AIR 策略的设计,从而为问题的求解和高效算法的设计奠定了良好的基础。
式(11)中,个体编码的每一行表示一个储备点(共有n行),每一列表示一个发放点(共有m 列),编码中的任意一个元素Xn×m即是储备点ai向发放点gj提供的救灾物资分配量。注意,式(7)是一个约束优化问题,因此,任意一个如式(11)所示的编码可能存在如下情况:
1)对每一行而言,如果 ∃i ∈{1,2,…,n},∃k ∈ {1,2,…,则储备点ai分配出去的第k 种救灾物资总量超过了其本身所的拥有量,造成应急资源冲突。
2)对每一列而言,如果 ∃j ∈ {1,2,…,m},∃k ∈ {1,2,…,则发放点gj分配得到的第k 种救灾物资总量超过了其本身的需求量,造成应急资源浪费。
上述的两种约束违背情况将会导致在算法进化过程中产生大量的不可行个体,从而影响算法的求解效率。而在应急响应这个特殊的场景中,时效性是一个首要衡量指标。因此,在2.3 节中,本文将在基本的SPEA2+SDE 算法中嵌入AIR 策略,旨在将各种环境中的不可行个体修正为一个可行个体,让算法始终在近似可行域中进行探索,从而提升算法的整体性能。
IR 的目的是解决算法进化过程中可能出现的应急资源冲突和浪费现象。为此,在个体编码中必须动态跟踪每一个储备点和发放点的物资供给情况:一旦某储备点ai当前某种救灾物资的可用量为0,则ai将不再响应任何其他发放点在这种救灾物资上的需求;此外,一旦某发放点gj的救灾物资未满足度为0,则gj将不再向其他任何储备点发送请求。
在实际应急救援过程中,对于储备点而言,少数几种救灾物资量能够满足发放点的救灾物资需求,而多数种类的救灾物资量无法满足发放点的救灾物资需求是比较合理的,但是在现有研究中总是假设所有种类的救援物资全部充足或者全部不充足,将所有种类的救援物资使用同一种修正策略进行统一考虑,这显然是不符合实际的,因此本文的IR 策略除了要满足2.2 节的约束,还应该对物资量充足的救援物资以及物资量不充足的救援物资采用不同的修正策略分开考虑。在应急这个特殊的应用场景,当某种救灾物资的储备量不充分时,应该从储备点出发,要求所有的储备点尽可能贡献完它们该种资源的全部物资,这样才能最大化响应效率;而对于储备量充足的某种救灾物资,应该从发放点的角度出发,这时本文的IR 策略要求所有发放点对该种救灾物资的应急需求都得到满足,这样才能最大化响应效果。基于上述思想,本文提出了AIR策略来应对不同情景下的决策需求。
首先,随机选择一种救援物资k ∈ {1,2,…,r},若则执行策略一,否则执行策略二。
AIR策略一:
步骤1 从编码中随机选择一个未检查的行i(对应储备点 ai)。
步骤2 检查ai对第k种救灾物资的供给情况,执行:
来更新ai对gj*的供应量。重复此步骤,直到
来更新ai对gj*的供给量。重复此步骤,直到
步骤2.4 更新每个发放点在第k种救灾物资上的剩余需求,对∀j ∈ {1,2,…,m},如果
步骤3 如果所有行检查完毕(即所有储备点分配完毕),修正结束,否则转步骤1。
AIR策略二:
步骤1 从编码中随机选择一个未检查的列j(对应发放点 gj)。
步骤2 检查gj在第k种救灾物资上的响应情况,执行:
步骤3 如果所有列检查完毕(即所有发放点响应完毕)修正结束,否则转步骤1。
遍历所有k后,修正结束,否则返回重新操作。
需要注意的是,在AIR 策略一中,由于该种资源紧缺,本文从储备点的视角出发,依次检查每个储备点的供给情况,让每个储备点尽可能地贡献该种资源,一旦资源贡献完则不再响应其他发放点的请求,而且对后续储备点的修正均是基于发放点的剩余需求量进行操作,从而有效保证修正后的个体编码满足式(7)中的约束条件。同理,在AIR 策略二中,由于该种资源非常充分,本文从发放点的视角出发,依次检查每个发放点的响应情况,让每个发放点尽可能地得到满足,一旦需求得到满足则不再向其他储备点发送请求,而且对后续发放点的修正均是基于储备点的剩余资源量进行操作,从而也确保了修正后的个体编码满足约束条件。由此,可以清楚地看到,个体编码在经过修正之后,发放点的需求能够根据储备点的现有资源状况尽可能地得到满足(尽可能的向最优解靠近),而且可以有效解决可能出现的应急资源冲突和浪费现象。
本文将上述的个体编码方案和修正策略嵌入到基本的SPEA2+SDE 算法中,提出一种改进型混合搜索算法,称为SPEA2+SDE+AIR,如图 1 所示。SPEA2+SDE+AIR 算法的基本流程如下:首先根据二维整数向量编码在约束空间内随机生成初始的进化种群和外部种群;然后基于AIR 策略对组合种群进行修正,确保每个个体都是可行个体;根据式(7)计算每个可行个体的目标函数值,并进行适应度分配;对组合种群进行环境选择生成新的外部种群;对新外部种群进行交配选择和多项式变异生成新的进化种群;如果满足终止条件,输出外部种群中的所有非支配个体,否则对新进化种群进行个体修正使其成为可行种群,并继续算法的进化。
从图1 可以看出,与基本的SPEA2+SDE 算法相比,本文提出的SPEA2+SDE+AIR 算法能够基于构造的二维整数向量编码,充分考虑数学模型中的相关约束关系以及实际应急救援环境的复杂情况,利用AIR 策略将种群始终限制在可行域中进化,从而能够为算法的适应度分配、环境选择、交配选择等提供更加准确可靠的启发式信息,增强算法的收敛性能。
图1 SPEA2+SDE+AIR算法的流程Fig. 1 Flowchart of SPEA2+SDE+AIR algorithm
为了验证本文SPEA2+SDE+AIR 算法在处理相关问题时的有效性,本章首先介绍算法的基本参数设置以及性能评价指标,然后考虑与两种最新的针对于应急救援物资分配问题的算法:带有编码修正机制的非支配排序差异演化(Encoding Repair and Non-dominated Sorting based Differential Evolution,ERNS-DE)算法[13],以及基于贪心搜索的多目标遗传算法(Greedy-Search-based Multi-Objective Genetic Algorithm,GSMOGA)[11]分别进行模型及算法对比。ERNS-DE 采用面向发放点的编码修正机制使种群中的每一个个体都是可行的;GSMOGA 则包含一种贪婪搜索方法,其中最接近发放点的储备点在物资分配时优先考虑,从而避免了不可行个体的产生。
为了模拟应急环境以充分评估算法性能,本文考虑20 个物资储备点、10 个物资发放点以及50 种救援物资,对应10 000 个决策变量,并分别在两种应急环境中进行测试。在应急环境1(标记为EN1),随机设置5 种物资是充分的,即可以满足所有需求点的要求,剩余45 种救灾物资均是短缺的,不能满足所有需求点的应急要求;在应急环境2(标记为EN2),随机设置10 种物资可以满足需求,剩下的40 种救灾物资极其紧缺。依据上面的设定,每个测试实例均根据输入的问题规模和约束条件随机生成,且根据不同的随机种子,在Intel Core i7 3.60 GHz CPU、内存8.0 GB、操作系统Windows 10 的个人计算机上独立运行30 次。为了对比的公平性,ERNS-DE 和GSMOGA 采用各自的推荐参数设置。对于本文的SPEA2+SDE+AIR,本文采用实验法,即结合已有工作与通过大量测试获得结果相对较好的一组参数组合,这也是目前最常用的确定参数的方法,其中较小的变异概率和较大的交叉概率有利于维护种群进化过程中的多样性和收敛性。三种算法的具体参数如表1所示。
表1 三种算法的基本参数Tab. 1 Basic parameters of three algorithms
为了比较测试算法的整体性能,本文使用流行的超体积(HyperVolume,HV)[23]指标来进行衡量。超体积定义为被所求解集支配、但不被参考点支配的空间体积大小。超体积值可以提供有关于整个解决方案的收敛性和多样性的一般信息,通常,较大的超体积值意味着解决方案的质量更高。需要注意的是,参考点的选择对于超体积的计算至关重要。由于在所提的高维多目标应急救援物资分配问题中不知道Pareto前沿的范围,因此,对于每一组测试实例,需要将所有获得的解集放在一起,去除其中的重复解以及支配解,然后,选择的参考点略大于合并解集每个目标的最大值。这种方法已经被证明是有效的,因为它能够很好地平衡解集的收敛性与多样性[24]。
在所提的高维多目标应急救援物资分配问题中,决策者通常更关心所采用的算法获得的结果是否优于其他对比算法。因此,本文采用经典的覆盖值(Coverage Value,CV)[25]来评估所得结果的收敛性。覆盖值提供了一种直接的方法来比较通过所采用的算法获得的解集中有多少个解支配了由对比算法所获得的结果中的解。假设E 和F 分别是两种不同的算法所获得的解集,假如E 中的一个解的所有目标值与F 中的另一个解的所有目标值相比,都不比它们差,则认为前者覆盖了后者。Cv(E,F)表示 F 被E 中解集所覆盖的百分比,若Cv(E,F) > Cv(F,E),则意味着E 中的解相比 F 更优。在本文的实验中,对于每个测试实例,将在30 次独立运行中所获得的所有解放在一起,去除其中的重复解后再进行覆盖值计算。
首先,对于ERNS-DE 和GSMOGA,本文在进行实验时,仅考虑其原有的目标函数(ERNS-DE 考虑f1和f6,GSMOGA 考虑f1、f3以及f6),剩余的目标函数由分配方案计算得出;而SPEA2+SDE+AIR 考虑所有的目标。由于三种算法所要优化的目标数不同,所以此处本文不采用超体积和覆盖值,而是选取了各个目标值的范围,如表2 所示,其中较优的目标值加粗表示。
由表2可以看出,就所选取的三个目标f1、f3以及f6而言,SPEA2+SDE+AIR 在7 个实例上获得的结果优于ERNS-DE 和GSMOGA所获得的结果,而ERNS-DE和GSMOGA在所有实例中都没有发现比SPEA2+SDE+AIR 更好的解。此外,SPEA2+SDE+AIR 在所有实例中占优的目标个数都远要高于ERNSDE 和GSMOGA。以上结果表明,尽管SPEA2+SDE+AIR 在处理6 个目标时具有更大的优化负担,但它仍旧可以在考虑的目标之间寻找到比ERNS-DE和GSMOGA更好的平衡。
表2 两种环境下部分测试实例的目标值范围Tab. 2 Objective value ranges of some test instances in two environments
为了更加全面地比较SPEA2+SDE+AIR、ERNS-DE 和GSMOGA 三种算法之间的性能,在本节让三种算法都考虑6个目标,在两种环境下分别测试30个实例。
表3 显示了三种算法测试结果的超体积值,在EN1 中,与ERNS-DE 以及 GSMOGA 相比,SPEA2+SDE+AIR 的超体积分别增大了约55 000 000%和14 000 000%,而在EN2 中,则分别增大了30 000 000% 和29 000 000%,尤其需要注意的是ERNS-DE 和GSMOGA 都出现了超体积值为0 的情形,尤其是GSMOGA 绝大部分的超体积为0。以上结果表明,SPEA2+SDE+AIR 的整体性能要比ERNS-DE 和GSMOGA 更好,所得解集具有更好的收敛性和多样性。
表4 给出了在高维多目标应急救援物资分配问题上三种算法的覆盖值结果,其中较优的覆盖值加粗表示。K、L、M 分别表示由SPEA2+SDE+AIR、ERNS-DE 以及GSMOGA 各自获得的最终解集。在EN1和EN2中,SPEA2+SDE+AIR 与ERNSDE 相比,平均覆盖值分别提高了34.87%和23.59%,而与GSMOGA相比,在所有测试实例中覆盖值都提高了100%。以上结果表明,SPEA2+SDE+AIR 可以获得比ERNS-DE 和GSMOGA更高质量的解。
总体而言,SPEA2+SDE+AIR 在所有60 个测试实例中均表现优异,而且可以在各种情况下获得多样化的解决方案。
表3 三种算法在两种环境下的超体积(均值和标准差)结果Tab. 3 Hypervolume(mean and standard deviation)results of three algorithms in two environments
表4 三种算法在两种环境下的覆盖值结果 单位:%Tab. 4 Coverage values of three algorithms in two environments unit:%
续表
本文针对灾害应急响应中的应急资源分配这一热点问题展开研究,首先构建了一个多储备点、多发放点、多种救援物资的并发分配模型,然后通过引入相关心理学知识来量化受灾群众的恐慌心理和公平心理,在此基础上提出了包括应急响应总时间、受灾群众的恐慌心理、发放点物资不满足度、物资分配的公平性、受灾群众损失、应急响应总成本在内的优化目标,并提出了一种基于移位密度估计和自适应编码修正的多目标优化算法SPEA2+SDE+AIR。对比实验说明,本文所提出的多目标优化算法在种群进化过程中能够很好地维持种群的多样性和收敛性,从而提高算法的整体性能。在未来的工作中,多阶段的动态优化,以及救援物资分配与调度的集成优化问题将是研究和改进的重要方向。