首页 / 专利库 / 水处理 / 淡水 / 饮用水 / 一种基于HTN规划的应急资源调运任务规划方法和系统

一种基于HTN规划的应急资源调运任务规划方法和系统

阅读:1019发布:2020-06-24

专利汇可以提供一种基于HTN规划的应急资源调运任务规划方法和系统专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于HTN规划的应急资源调运任务规划方法和系统,属于智能规划、公共安全及应急决策的交叉领域,包括:对于待规划的应急资源调运任务,采集初始状态集合和初始任务网络集合,设置领域知识;利用领域知识中的资源估算方法、应急资源分配方法和运输队伍选择方法,结合初始状态集合和初始任务网络集合将待规划的应急资源调运任务分解生成子任务;然后利用领域知识中的 原子 任务生成方法将子任务分解生成原子任务,利用领域知识中的操作符实例化完成原子任务,得到应急资源调运任务规划方案。本发明能很好地适应大规划复杂规划问题,在表达资源调运问题时有效地描述其领域知识,很好地表现出应急响应任务的层次性特征。,下面是一种基于HTN规划的应急资源调运任务规划方法和系统专利的具体信息内容。

1.一种基于HTN规划的应急资源调运任务规划方法,其特征在于,包括如下步骤:
对于待规划的应急资源调运任务,采集初始状态集合和初始任务网络集合,设置领域知识;
利用领域知识中的资源估算方法、应急资源分配方法和运输队伍选择方法,结合初始状态集合和初始任务网络集合将待规划的应急资源调运任务分解生成子任务;
然后利用领域知识中的原子任务生成方法将子任务分解生成原子任务,利用领域知识中的操作符实例化完成原子任务,得到应急资源调运任务规划方案。
2.如权利要求1所述的一种基于HTN规划的应急资源调运任务规划方法,其特征在于,所述初始状态集合为s0={SU0,TRANS0,SPEC0,Dis},其中,SU0表示的是应急物资储备初始状态集合,TRANS0表示的是运输队伍初始状态集合,SPEC0表示的是专业队伍初始状态集合,所述专业队伍包括救援队伍、医疗队伍和专家队伍,Dis表示的是应急资源调运路网。
3.如权利要求1或2所述的一种基于HTN规划的应急资源调运任务规划方法,其特征在于,所述初始任务网络集合为T0={t1,t2,t3,...},ti=(demand_location,intensity,population),ti表示需求点为demand_location的资源保障及救援任务,i=1,2,3...,demand_location表示需求点在应急资源路网中的位置编号,intensity表示需求点的地震烈度,population表示需求点的人口总数。
4.如权利要求1或2所述的一种基于HTN规划的应急资源调运任务规划方法,其特征在于,所述领域知识D={0,M},其中,O为操作符集合,M为方法集合,操作符集合O={!movet,!movep,!transport},操作符!movet实例化表示为运输队伍转移动作,操作符!transport实例化表示为应急物资运输动作,操作符!movep实例化表示专业队伍转移动作;方法集合M={ResDemand,ResAllocation,TruckSelect,AtomGenerate},其中,ResDemand表示资源估算方法,ResAllocation表示应急资源分配方法,TruckSelect表示运输队伍选择方法,AtomGenerate表示原子任务生成方法。
5.如权利要求1或2所述的一种基于HTN规划的应急资源调运任务规划方法,其特征在于,所述资源估算方法ResDemand={m1,m2,m3,m4,m5,m6},资源估算方法包括如下步骤:
根据待规划的应急资源调运任务中地震烈度大小判断所需上层应急资源类型,上层应急资源类型包括生活物资、救援资源、医疗资源和专家资源;
若需求点的地震烈度大于等于6,进入方法m1,将待规划的应急资源调运任务分解生成生活物资任务、救援资源任务、医疗资源任务和专家资源保障任务;
若需求点的地震烈度小于6,进入方法m2,将待规划的应急资源调运任务分解生成专家资源保障任务;
对于生活物资任务,所需上层应急资源类型为生活物资,进入方法m3,计算下层应急资源中食物、帐篷和饮用的需求数量;
对于救援资源任务,所需上层应急资源类型为救援资源,进入方法m4,计算下层应急资源中救援队伍需求量;
对于医疗资源任务,所需上层应急资源类型为医疗资源,进入方法m5,计算下层应急资源中的医疗队伍需求量;
对于专家资源任务,所需上层应急资源类型为专家资源,进入方法m6,利用地震烈度计算下层应急资源中的专家队伍需求量。
6.如权利要求5所述的一种基于HTN规划的应急资源调运任务规划方法,其特征在于,所述应急资源分配方法ResAllocation={m7,m8,m9,m10},所述应急资源分配方法包括以下步骤:
如果下层应急资源类型为专业队伍时,进入方法m7,得到专业队伍分配任务;如果下层应急资源类型为生活物资时,进入方法m8,得到应急物资分配任务;
如果选择应急物资分配任务,进入方法m9,选择距离需求点最近的应急物资供应点,若供应点的应急物资储备量满足需求点的需求,则生成运输任务transfer,进入运输队伍选择方法;若该供应点的应急物资储备量不能完全满足需求,则生成运输任务transfer,进入运输队伍选择方法,同时更新该供应点的应急物资储备量,更新当前任务的应急物资需求量,重新进入方法m9,选择下一个离需求点最近的供应点,迭代求解,直到需求点的应急资源需求量都得到满足;
如果选择专业队伍分配任务,进入方法m10,得到距离需求点最近的专业队伍后,若该支专业队伍能满足需求点的需求,则生成专业队伍转移任务movep,进入原子任务生成方法;
若该支专业队伍不能完全满足需求,则生成专业队伍转移任务movep,同时更新选中专业队伍的状态,更新当前任务的专业队伍需求量,重新进入方法m10,选择下一支离需求点最近的专业队伍,迭代求解,直到需求点的专业队伍需求量都得到满足。
7.如权利要求6所述的一种基于HTN规划的应急资源调运任务规划方法,其特征在于,所述运输队伍选择方法TruckSelect={m11,m12},运输队伍选择方法包括以下步骤:
读取运输任务transfer,进入方法m11,若总运输量等于0,则运输任务完成,结束运输队伍选择部分;
若总运输量大于0,读取运输队伍状态,得到运输队伍所在位置,将运输队伍所在位置与供应点的位置匹配,得到供应点位置的运输队伍集合,若运输队伍集合不为空,从供应点位置的运输队伍集合中选择一支运输队伍,生成应急物资运输任务transport,进入原子任务生成方法;
若运输队伍集合为空,进入方法m12,选择离供应点最近的运输队伍,依次生成运输队伍转移任务movet和应急物资运输任务transport,进入原子任务生成方法。
8.如权利要求7所述的一种基于HTN规划的应急资源调运任务规划方法,其特征在于,所述原子任务生成方法AtomGenerate={m13,m14,m15,m16,m17,m18},原子任务生成方法,包括以下步骤:
若原子任务为专业队伍转移任务movep,通过方法集合{m17,m18}生成操作符!movep,将操作符!movep实例化为专业队伍转移动作;
若原子任务为应急物资运输任务transport,通过方法集合{m13,m14}生成操作符!transport,将操作符!transport实例化为应急物资运输动作;
若原子任务为运输队伍转移任务movet,通过方法集合{m15,m16}生成操作符!movet,将操作符!movet实例化为运输队伍转移动作。
9.一种基于HTN规划的应急资源调运任务规划系统,其特征在于,包括:
预处理模,用于对于待规划的应急资源调运任务,采集初始状态集合和初始任务网络集合,设置领域知识;
任务分解模块,用于利用领域知识中的资源估算方法、应急资源分配方法和运输队伍选择方法,结合初始状态集合和初始任务网络集合将待规划的应急资源调运任务分解生成子任务;
任务规划模块,用于利用领域知识中的原子任务生成方法将子任务分解生成原子任务,利用领域知识中的操作符实例化完成原子任务,得到应急资源调运任务规划方案。

说明书全文

一种基于HTN规划的应急资源调运任务规划方法和系统

技术领域

[0001] 本发明属于智能规划、公共安全及应急决策的交叉领域,更具体地,涉及一种基于HTN规划的应急资源调运任务规划方法和系统。

背景技术

[0002] 应急资源调运作为应急响应的关键环节,是灾后救援工作的重点,有关灾民生命财产安全与社会稳定,因此对它的研究具有重大的现实意义。与传统商业物流不同,应急资源调运问题有如下特征:
[0003] (1)任务具有多样性和层次性。地震发生后,应急资源调运分为救援人员调运、医疗人员调运和生活物资调运等,任务是多样的而不是单一的;针对某一具体任务的分解,譬如需求点的应急资源保障,首先需要明确应急资源类型,然后是资源的需求量,接着是资源分配和运输车辆配送,这些分解出的任务之间就存在着层次性。
[0004] (2)约束关系复杂。地震发生后,应急资源类型众多,短时间内数量有限,需要考虑任务的优先级进行应急资源分配,同时,任务之间也存在着复杂的约束关系。
[0005] (3)决策环境具有高度动态性。地震发生后,随着时间的推进,灾情的演变发生变化,导致应急态势一直发生变化,所以需要不断更改调运方案,以便适应新的应急态势。
[0006] 应急资源调运问题的上述特征决定了制定应急资源调运方案的难度。在实际问题中,地震发生后,应急资源调运方案的制定大多依赖于决策人员以往的经验,并不能完全制定出合理满意的调运方案;在研究层面上,国内外学者大多针对某一局部问题,基于数学模型进行优化求解。其中,建立数学模型求解并不能很好地适应大规划复杂规划问题,譬如地震应急资源调运问题;其次,在表达资源调运问题时,不能有效地描述其领域知识,限制了应急方案制定者利用领域经验知识解决实际问题,同时,数学模型不能很好地表现出应急响应任务的层次性特征。
[0007] 总而言之,建立数学模型在应急资源调运问题的求解上具有一定的局限性。

发明内容

[0008] 针对现有技术的以上缺陷或改进需求,本发明提供了一种基于HTN(Hierarchical Task Network,层次任务网络)规划的应急资源调运任务规划方法和系统,由此解决现有技术在应急资源调运问题的求解上具有一定的局限性的技术问题。
[0009] 为实现上述目的,按照本发明的一个方面,提供了一种基于HTN规划的应急资源调运任务规划方法,包括如下步骤:
[0010] 对于待规划的应急资源调运任务,采集初始状态集合和初始任务网络集合,设置领域知识;
[0011] 利用领域知识中的资源估算方法、应急资源分配方法和运输队伍选择方法,结合初始状态集合和初始任务网络集合将待规划的应急资源调运任务分解生成子任务;
[0012] 然后利用领域知识中的原子任务生成方法将子任务分解生成原子任务,利用领域知识中的操作符实例化完成原子任务,得到应急资源调运任务规划方案。
[0013] 进一步地,初始状态集合为s0={SU0,TRANS0,SPEC0,Dis},其中,SU0表示的是应急物资储备初始状态集合,TRANS0表示的是运输队伍初始状态集合,SPEC0表示的是专业队伍初始状态集合,所述专业队伍包括救援队伍、医疗队伍和专家队伍,Dis表示的是应急资源调运路网。
[0014] 进一步地,初始任务网络集合为T0={t1,t2,t3,...},ti=(demand_location,intensity,population),ti表示需求点为demand_location的资源保障及救援任务,i=1,2,3...,demand_location表示需求点在应急资源路网中的位置编号,intensity表示需求点的地震烈度,population表示需求点的人口总数。
[0015] 进一步地,领域知识D={O,M},其中,O为操作符集合,M为方法集合,操作符集合O={!movet,!movep,!transport},操作符!movet实例化表示为运输队伍转移动作,操作符!transport实例化表示为应急物资运输动作,操作符!movep实例化表示专业队伍转移动作;方法集合M={ResDemand,ResAllocation,TruckSelect,AtomGenerate},其中,ResDemand表示资源估算方法,ResAllocation表示应急资源分配方法,TruckSelect表示运输队伍选择方法,AtomGenerate表示原子任务生成方法。
[0016] 进一步地,资源估算方法ResDemand={m1,m2,m3,m4,m5,m6},资源估算方法包括如下步骤:
[0017] 根据待规划的应急资源调运任务中地震烈度大小判断所需上层应急资源类型,上层应急资源类型包括生活物资、救援资源、医疗资源和专家资源;
[0018] 若需求点的地震烈度大于等于6,进入方法m1,将待规划的应急资源调运任务分解生成生活物资任务、救援资源任务、医疗资源任务和专家资源保障任务;
[0019] 若需求点的地震烈度小于6,进入方法m2,将待规划的应急资源调运任务分解生成专家资源保障任务;
[0020] 对于生活物资任务,所需上层应急资源类型为生活物资,进入方法m3,计算下层应急资源中食物、帐篷和饮用的需求数量;
[0021] 对于救援资源任务,所需上层应急资源类型为救援资源,进入方法m4,计算下层应急资源中救援队伍需求量;
[0022] 对于医疗资源任务,所需上层应急资源类型为医疗资源,进入方法m5,计算下层应急资源中的医疗队伍需求量;
[0023] 对于专家资源任务,所需上层应急资源类型为专家资源,进入方法m6,利用地震烈度计算下层应急资源中的专家队伍需求量。
[0024] 进一步地,应急资源分配方法ResAllocation={m7,m8,m9,m10},所述应急资源分配方法包括以下步骤:
[0025] 如果下层应急资源类型为专业队伍时,进入方法m7,得到专业队伍分配任务;如果下层应急资源类型为生活物资时,进入方法m8,得到应急物资分配任务;
[0026] 如果选择应急物资分配任务,进入方法m9,选择距离需求点最近的应急物资供应点,若供应点的应急物资储备量满足需求点的需求,则生成运输任务transfer,进入运输队伍选择方法;若该供应点的应急物资储备量不能完全满足需求,则生成运输任务transfer,进入运输队伍选择方法,同时更新该供应点的应急物资储备量,更新当前任务的应急物资需求量,重新进入方法m9,选择下一个离需求点最近的供应点,迭代求解,直到需求点的应急资源需求量都得到满足;
[0027] 如果选择专业队伍分配任务,进入方法m10,得到距离需求点最近的专业队伍后,若该支专业队伍能满足需求点的需求,则生成专业队伍转移任务movep,进入原子任务生成方法;若该支专业队伍不能完全满足需求,则生成专业队伍转移任务movep,同时更新选中专业队伍的状态,更新当前任务的专业队伍需求量,重新进入方法m10,选择下一支离需求点最近的专业队伍,迭代求解,直到需求点的专业队伍需求量都得到满足。
[0028] 进一步地,运输队伍选择方法TruckSelect={m11,m12},运输队伍选择方法包括以下步骤:
[0029] 读取运输任务transfer,进入方法m11,若总运输量等于0,则运输任务完成,结束运输队伍选择部分;
[0030] 若总运输量大于0,读取运输队伍状态,得到运输队伍所在位置,将运输队伍所在位置与供应点的位置匹配,得到供应点位置的运输队伍集合,若运输队伍集合不为空,从供应点位置的运输队伍集合中选择一支运输队伍,生成应急物资运输任务transport,进入原子任务生成方法;
[0031] 若运输队伍集合为空,进入方法m12,选择离供应点最近的运输队伍,依次生成运输队伍转移任务movet和应急物资运输任务transport,进入原子任务生成方法。
[0032] 进一步地,原子任务生成方法AtomGenerate={m13,m14,m15,m16,m17,m18},原子任务生成方法,包括以下步骤:
[0033] 若原子任务为专业队伍转移任务movep,通过方法集合{m17,m18}生成操作符!movep,将操作符!movep实例化为专业队伍转移动作;
[0034] 若原子任务为应急物资运输任务transport,通过方法集合{m13,m14}生成操作符!transport,将操作符!transport实例化为应急物资运输动作;
[0035] 若原子任务为运输队伍转移任务movet,通过方法集合{m15,m16}生成操作符!movet,将操作符!movet实例化为运输队伍转移动作。
[0036] 按照本发明的另一方面,提供了一种基于HTN规划的应急资源调运任务规划系统,包括:
[0037] 预处理模,用于对于待规划的应急资源调运任务,采集初始状态集合和初始任务网络集合,设置领域知识;
[0038] 任务分解模块,用于利用领域知识中的资源估算方法、应急资源分配方法和运输队伍选择方法,结合初始状态集合和初始任务网络集合将待规划的应急资源调运任务分解生成子任务;
[0039] 任务规划模块,用于利用领域知识中的原子任务生成方法将子任务分解生成原子任务,利用领域知识中的操作符实例化完成原子任务,得到应急资源调运任务规划方案。
[0040] 总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
[0041] (1)本发明基于HTN规划的应急资源调运任务规划方法能很好地适应大规划复杂规划问题,譬如可以解决地震背景下的应急资源调运任务规划问题;其次,在表达资源调运问题时,能有效地描述其领域知识,使得应急方案制定者利用领域经验知识解决实际问题,同时,通过任务分解很好地表现出应急响应任务的层次性特征。总而言之,本发明方法在应急资源调运问题的求解上具有很强的适用性。
[0042] (2)本发明考虑了应急资源调运问题的任务多样性和层次性、约束关系复杂、决策环境具有高度动态性等特征及难点,基于HTN规划方法,得出科学合理的地震应急资源调运方案。本发明详细定义了面向HTN规划的应急资源调运领域知识,进一步丰富了应急资源调运问题的理论知识;其次为突发事件应急响应过程中的资源调运提供决策支持,具有一定现实意义。附图说明
[0043] 图1是本发明实施例提供的一种基于HTN规划的应急资源调运任务规划方法的流程图
[0044] 图2是本发明实施例提供的资源估算方法的流程图;
[0045] 图3是本发明实施例提供的应急资源分配方法的流程图;
[0046] 图4是本发明实施例提供的运输队伍选择方法的流程图。

具体实施方式

[0047] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
[0048] 如图1所示,一种基于HTN规划的应急资源调运任务规划方法,包括如下步骤:
[0049] 对于待规划的应急资源调运任务,采集初始状态集合和初始任务网络集合,设置领域知识;
[0050] 利用领域知识中的资源估算方法、应急资源分配方法和运输队伍选择方法,结合初始状态集合和初始任务网络集合将待规划的应急资源调运任务分解生成子任务;
[0051] 然后利用领域知识中的原子任务生成方法将子任务分解生成原子任务,利用领域知识中的操作符实例化完成原子任务,得到应急资源调运任务规划方案。
[0052] 初始状态集合为s0={SU0,TRANS0,SPEC0,Dis},其中,SU0表示的是应急物资储备初始状态集合,SU0={su1,su2,su3...},Sui(i=1,2,3...)为初始状态时,路网中的某个供应点的应急物资储备情况。Sui={res1,res2,res3...},resi为供应点储备的某类应急物资初始状态;resi={supply_location,resource_name,supply_num,RT},supply_location表示应急物资所处的供应点在路网中的编号,resource_name表示应急物资类型,supply_num表示应急物资储备量,RT表示应急物资时间轴。TRANS0表示的是运输队伍初始状态集合,TRANS0={trans1,trans2,trans3...},transi表示的是单个运输队伍初始状态;transi={truck_ID,truck_location,truck_capacity,CT},truck_ID表示运输队伍编号,truck_location表示运输队伍当前时刻所在位置在路网中的位置编号,truck_capactity表示运输队伍的运,CT为运输队伍时间轴。
[0053] SPEC0表示的是专业队伍初始状态集合,其中专业队伍包括救援队伍、医疗队伍和专家队伍,SPEC0={spec1,spec2,spec3...},speci表示单支专业队伍的初始状态;speci={spec_ID,spec_location,spec_type,spec_hum,ST},其中,spec_ID表示专业队伍编号,spec_location表示专业队伍当前所在位置在路网中的编号,spec_type表示专业队伍的类型。Dis表示的是应急资源调运路网,Dis={seg1,seg2,seg3......},segi描述路网中一段道路的相关信息。segi={from_node,to_node,distance,access},from_node,to_node为一段道路的两个节点,distance为两个节点之间的距离。access表示道路的可达性,access值为0时,表示道路中断;值为1时,表示道路畅通。
[0054] 所述的初始任务网络集合为T0={t1,t2,t3,...},ti=(demand_location,intensity,population),ti表示需求点为demand_location的资源保障及救援任务。其中,demand_location表示需求点在应急资源路网中的位置编号,intensity表示需求点的受灾程度,在地震中为地震烈度,population表示需求点的人口总数。
[0055] 领域知识D,具体为一个二元组D={O,M},其中,O为操作符集合,M为方法集合。领域知识的一个操作符说明了原子任务执行的前提条件和产生的效果,可以表示成一个三元组o=(head(o),pre(o),update(o))。其中,head(o)为操作符的头,包含了操作符名称和一组参数,pre(o)表示执行操作符o前应满足的前提条件,update(o)表示执行操作符o后的效果,包括负效果和正效果。操作符的实例化是可以具体执行的动作;领域知识中的一个方法说明如何将一个复合任务分解成子任务集合,其中,子任务集合由复合任务或者原子任务组成。方法m可以表示为三元组m=(head(m),pre(m),subtasks(m))。其中,head(m)表示方法m的头,包含了方法名称和一组参数,与可以采用该方法进行分解的任务名称和参数保持一致,pre(m)表示运用方法m分解复合任务前应满足的前提条件,subtasks(m)表示由方法m分解生成的子任务集合。
[0056] 其中,操作符集合O={!movet,!movep,!transport}。操作符!movet实例化表示为运输队伍转移动作,操作符!transport实例化表示为应急物资运输动作,操作符!movep表示专业队伍转移动作;
[0057] 方法集合M={ResDemand,ResAllocation,TruckSelect,AtomGenerate}。ResDemand表示资源估算方法,ResDemand={m1,m2,m3,m4,m5,m6};ResAllocation表示应急资源分配方法,ResAllocation={m7,m8,m9,m10};TruckSelect表示运输队伍选择方法,TruckSelect={m11,m12};AtomGenerate表示原子任务生成方法,AtomGenerate={m13,m14,m15,m16,m17,m18}。
[0058] 如图2所示,资源估算方法,包括以下步骤:
[0059] 根据待规划的应急资源调运任务(即任务demand)中地震烈度大小判断所需上层应急资源类型。上层应急资源类型主要包括生活物资、救援资源、医疗资源和专家资源。
[0060] 选定应急资源保障任务resource-demand,进行具体的下层应急资源的需求估算:
[0061] 若需求点的地震烈度大于等于6,进入方法m1,将待规划的应急资源调运任务分解生成生活物资任务、救援资源任务、医疗资源任务和专家资源保障任务;
[0062] 若需求点的地震烈度小于6,进入方法m2,将待规划的应急资源调运任务分解生成专家资源保障任务;
[0063] 对于生活物资任务,所需上层应急资源类型为生活物资,进入方法m3,仅考虑地震黄金救援时间72小时即3天的需求,计算下层应急资源中食物、帐篷和饮用水的需求数量,具体为:
[0064] people=population*damageratio
[0065] amout_food=people*unit1*3
[0066] amout_water=people*unit2*3
[0067] amout_tent=people*unit3*3
[0068] 其中people为转移安置人数,population为灾区总人口数,damageratio为房屋严重受损率,与地震烈度有对应关系;amout_food为食物需求量,unit1为每个人一天的食物需求量,amout_water为饮用水需求量,unit2为每个人一天的饮用水需求量,amout_tent为帐篷需求量,unit3为每个人一天的帐篷需求量。
[0069] 对于救援资源任务,所需上层应急资源类型为救援资源,进入方法m4,计算下层应急资源中救援队伍需求量,具体为:
[0070] amout_rescuer=persons/rescuer_num
[0071] persons=population*collapseratio
[0072] 其中persons为地震被埋人数,population为需求点总人口数,collapseratio为房屋严重受损率,与地震烈度有对应关系,rescuer_num为一支救援队伍的人数;amout_rescuer为救援队伍需求量。
[0073] 对于医疗资源任务,所需上层应急资源类型为医疗资源,进入方法m5,计算下层应急资源中的医疗队伍需求量amout_doctor,具体为:
[0074] amout_doctor=persons/doctor_num
[0075] persons=population*collapseratio
[0076] 其中persons为地震被埋人数,population为需求点总人口数,collapseratio为房屋严重受损率,与地震烈度有对应关系,doctor_num为一支医疗队伍的人数。
[0077] 对于专家资源任务,所需上层应急资源类型为专家资源,进入方法m6,计算下层应急资源中的专家队伍需求量,与地震烈度有对应关系。
[0078] 如图3所示,应急资源分配方法,包括以下步骤:
[0079] 判断任务select所需下层应急资源类型,具体地:
[0080] 如果下层应急资源类型为救援队伍、医疗队伍和专家队伍这些专业队伍时,进入方法m7,得到专业队伍分配任务spec-select;
[0081] 如果下层应急资源类型为食物、饮用水、帐篷这些生活物资时,进入方法m8,得到应急物资分配任务supply-select;
[0082] 如果选择应急物资分配任务,进入方法m9。采用就近可用原则选择距离需求点最近的应急物资供应点,若供应点的应急物资储备量满足需求点的需求,则生成运输任务transfer,进入运输队伍选择方法;
[0083] 若该供应点的应急物资储备量不能完全满足需求,则生成运输任务transfer,进入运输队伍选择方法,同时更新该供应点的应急物资储备量,更新当前任务的应急物资需求量,重新进入方法m9,选择下一个离需求点最近的供应点,迭代求解,直到需求点的应急资源需求量都得到满足;
[0084] 如果选择专业队伍分配任务,进入方法m10,得到距离需求点最近的专业队伍后,若该支专业队伍能满足需求点的需求,则生成专业队伍转移任务movep,进入原子任务生成方法;
[0085] 若该支专业队伍不能完全满足需求,则生成专业队伍转移任务movep,同时更新选中专业队伍的状态,更新当前任务的专业队伍需求量,重新进入方法m10,选择下一支离需求点最近的专业队伍,迭代求解,直到需求点的专业队伍需求量都得到满足。
[0086] 如图4所示,运输队伍选择方法,包括以下步骤:
[0087] 读取当前运输任务transfer,进入方法m11。若总运输量等于0,则运输任务完成,结束运输队伍选择部分。
[0088] 若总运输量大于0,读取当前运输队伍状态,得到运输队伍当前所在位置,与供应点的位置匹配,得到当前在供应点位置的运输队伍集合。若集合不为空,说明供应点当前有运输队伍。选择一支运输队伍,生成应急物资运输任务transport,进入原子任务生成方法,同时更新系统状态,重新进入方法m11,迭代求解,直至完成总运输量的运输;
[0089] 若集合为空,说明供应点的运输队伍当前均被占用,正在执行运输任务,进入方法m12,选择离供应点最近的运输队伍。选出距离最近的一支运输队伍后,依次生成运输队伍转移任务movet和应急物资运输任务transport,进入原子任务生成方法;
[0090] 完成运输队伍转移和应急资源运输后,更新系统状态,重新进入方法m12,迭代求解,完成所有运输量运输。当运输量判断等于0后,结束运输队伍选择部分。
[0091] 原子任务生成方法,包括以下步骤:
[0092] 若原子任务为专业队伍转移任务movep,通过方法集合{m17,m18}生成操作符!movep,将操作符!movep实例化为专业队伍转移动作;
[0093] 若原子任务为应急物资运输任务transport,通过方法集合{m13,m14}生成操作符!transport,将操作符!transport实例化为应急物资运输动作;
[0094] 若原子任务为运输队伍转移任务movet,通过方法集合{m15,m16}生成操作符!movet,将操作符!movet实例化为运输队伍转移动作。
[0095] 本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈