一种基于自适应边逆转的路网疏散系统与方法_3

文档序号:9472000阅读:来源:国知局
,则表示 疏散规划结束,并复原有向路网结构;若不为0,则根据有向路网利用带通行容量时间约束 的路径算法,例如,可W采用参考文献《CapacityConstrainedRoutingAlgorithmsfor EvacuationPlanning:ASummaryofResults》中CCRP算法,获取当前时刻t的疏散容量 不为0且时间代价不为无穷大的时间代价最小路径,若成功获取,将时间代价最小路径输 出至候选路径判断模块;否则,表示根据有向网络图利用带通行容量时间约束的路径算法 无法获得当前时刻的任何疏散路径,则将t+1赋值给t,并将逆转路径历史集合HPS中所存 储的逆转路径输出至逆转历史路径输出模块;
[0073] 候选路径判断模块用于判断逆转路径历史集合册S是否为空,若为空,则将当前 时刻t的时间代价最小路径转换为有效路径,并输出至路径逆转模块;若不为空,则继续判 断当前时刻t的时间代价最小路径在当前时刻下是否为有效路径;判断准则为是否满足如 下两者条件:当前时刻t下时间代价最小路径与上一条获得的有效路径相同,且上一条获 取的有效路径已被判定为疏散效率不优于HPS中逆转路径的疏散效率;若均满足,则不为 有效路径;否则,为有效路径; 阳074] 若不为有效路径;则将t+1赋值给t,并将逆转路径历史集合WS中所存储的逆转 路径输出至逆转历史路径输出模块;
[0075] 若为有效路径,则判断有效路径是否存在于逆转路径历史集合HPS中;
[0076]若存在,则将有效路径输出至单一路径输出模块;
[0077] 若不存在,则判断有效路径与逆转路径历史集合HPS中所存储的逆转路径是否有 相同的源节点;
[0078] 若没有相同源节点,则将有效路径输出至路径逆转模块;
[0079] 若有相同的源节点,则遍历具有相同源节点的逆转路径中是否存在逆转路径满足 疏散容量为0或者时间代价大于有效路径的时间代价,若存在,则将有效路径输出至路径 逆转模块;否则,继续遍历具有相同源节点的逆转路径中是否存在逆转路径满足疏散效率 优于有效路径的疏散效率,若存在,则返回疏散路径计算模块用于获得当前时刻t的下一 条时间代价最小路径;否则,则将有效路径输出至路径逆转模块;
[0080] 路径逆转模块将所接收的有效路径转换为逆转路径,并将逆转路径的标识符设置 为0并存入逆转路径历史集合HPS;
[0081] 在有向路网结构上,按照从源节点到目的节点的流向,依次获得逆转路径上所经 过的各自双向边的到达时刻;依次在各自双向边的到达时刻及到达时刻之后的各时间维度 上:一是将双向边的剩余容量合并到与流向相同的边的剩余容量上;二是将双向边按照流 向转换为单向边,并将转换前的双向边的通行容量合并为转换后的单向边的通行容量;从 而更新有向路网结构W及有向路网结构在不同时刻上的剩余容量;
[0082] 并将接收的有效路径输出至单一路径输出模块;
[0083] 单一路径输出模块将所接收的有效路径或逆转路径转换为单一路径进行输出,并 获取单一路径上的疏散容量,W及单一路径上所有节点和单向边的各自到达时刻一并输 出;将单一路径所有节点和单向边在各自到达时刻的时间维度上的剩余容量减去单一路径 上的疏散容量,从而更新有向路网在不同时刻上的剩余容量;将超级源节点V。的待疏散容 量减去单一路径的疏散容量,从而更新待疏散总人数;
[0084] 判断单一路径输出模块所接收的是否为有效路径,若是,则完成输出后返回疏散 路径计算模块用于获取当前时刻t的下一条的时间代价最小路径;否则,表示所接收的是 逆转路径,返回逆转历史路径输出模块,用于遍历逆转路径历史集合HPS中所存储的逆转 路径;
[0085] 逆转历史路径输出模块遍历逆转路径历史集合HPS中所存储的逆转路径在当前 时刻t的疏散容量是否为0,若为0,则删除疏散容量为0的逆转路径;若不为0,判断逆转 路径的标识符是否为0,若为0,则将逆转路径的标识符设置为1,否则,则将逆转路径输出 至单一路径输出模块;从而在完成遍历后,返回疏散路径计算模块用于获得新的时间代价 最小路径。
[0086] 一种基于自适应边逆转的路网疏散方法,是应用于由节点集和边集组成的有向路 网结构中;节点集包含有源节点、目的节点和中间节点;具体的说,如图3所示,路网疏散方 法其特征是按如下步骤进行:
[0087] 步骤1、参数定义:
[0088] 定义超级源节点V。,连接超级源节点V。与所有源节点,生成由超级源节点V。到源 节点的有向边,该边有边的通行时间和边的通行容量两个属性,其中边的通行时间皆设置 为0 ;边的通行容量为边所连接的源节点的待疏散容量;;在超级源节点V。上设置待疏散 容量,并初始化超级源节点V。的待疏散容量为源节点的待疏散人数的总和;例如,如图1所 示,超级源节点V。的待疏散容量为30。 阳089] 定义当前时刻为t,并初始化t=0 ;
[0090] 定义逆转路径历史集合为HPS;并初始化HPS为空;
[0091] 定义标记路径触发变量化,并初始化化为空;
[0092] 定义寻找路径触发变量化,并初始化化=true; 阳093] 定义循环变量i,并初始化i=1;
[0094] 步骤2、判断超级源节点V。的待疏散容量是否为0,若为0,则表示疏散规划结束, 并复原有向路网结构;若不为0,则根据有向网络图利用带通行容量时间约束的路径算法 获得当前时刻t的第i条时间代价最小路径,记为TPiit;记第i条时间代价最小路径TP 的时间代价为7巧f"e;记第i条时间代价最小路径TPiit的疏散容量为巧:T;
[0095] 本方法中,我们采用了带有时间维度的CCRP算法;CCRP算法的具体实现方法可 W参考文献《CapacityConstrainedRoutingAlgorithmsforEvacuationPlanning:A SummaryofResults》中的介绍:在带有超级源节点的有向路网结构中,根据改进的最短路 径算法-DIJKSTRA算法获得一条在当前时刻t下从源节点到目的节点花费时间代价最小路 径;例如,在图1所示的有向路网模型上,根据CCRP算法获得在时刻t= 0时,第1次迭代下 的一条花费时间代价最小路径为TPi,。为{V1,V4,V7,Vi。},路径疏散结束时刻为巧!r= 4 ;疏 散容量为巧r= 5 ;;到达各节点的时刻为{〇, 1,3, 4};到达各条边的时刻依次为{0, 1,3}。
[0096] 步骤3、判断第i条时间代价最小路径TPiit的时间代价巧!r'P为无穷大或者疏散 容量巧r为0是否成立;若任意一个成立,则表示当前时刻t无法再获得任何疏散路径,将t+1赋值给t,并执行步骤10 ;否则,则执行步骤4 ;
[0097] 步骤4、判断逆转路径历史集合册S是否为空,若为空,则将第i条时间代价最小 路径TPi,浪照步骤9进行逆转;若不为空,则判断化=false且化=TP是否成立;若 同时成立,则表示TPiit不为有效路径,当前时刻t无法获得不同的疏散路径,将t+1赋值给 t,并执行步骤10 ;否则,表示TPiit为有效路径,执行步骤5 ;
[0098] 步骤5、判断寻找路径触发变量化=true是否成立,若成立,设置标记路径触发变 量化=TPi,t,从而实现用化记录最近一次获取的有效路径;否则,将化设置为true;
[0099] 步骤6、判断逆转路径历史集合册S中是否存在第i条时间代价最小路径TPi,t;若 存在,将第i条时间代价最小路径TPi,t转换为单一路径并输出,再将i+1赋值给i后,返回 步骤2执行;否则,执行步骤7 ;
[0100] 将第i条时间代价最小路径TPiit转换为单一路径并输出,具体步骤是按照步骤 6. 1和步骤6. 2进行操作的,并将步骤6. 1和步骤6. 2记为方式1。 阳101] 步骤6. 1、获取单一路径的疏散容量,w及所有节点和单向边的各自到达时刻,与 单一路径一同输出; 阳102] 例如,在图1所示的有向路网模型上,在时刻t= 1时,第7次迭代下获得一条时 间代价最小路径TPu为{Vi,V4,V7,Vi。},与上述例子中TPi,。相同;TPy此处作为单一路径输 出时,已经被执行逆转操作,其中TPy路径疏散结束时刻为5,疏散容量为2,到达各节点的 时刻为{1,2, 4,5};到达各条边的时刻依次为{1,2,4};
[010引同理,TPi,池被作为单一路径输出过,执行TP1,。单一输出时,TP1,。也已经被执行 过逆转操作,因此,疏散容量得W增加,疏散容量为10,不再为步骤2中所举例的逆转操作 前的疏散容量为5 ;其路径疏散结束时刻、到达各节点的时刻、到达各条边的时刻仍然保持 与步骤2中不变。
[0104] 因此,输出结果中有如下两条记录,即同一条路径被执行过多次路径规划:
[01化]路径-疏散起始时刻-疏散结束时刻-疏散容量-各节点到达时刻-各边到达时 刻 阳106](Vi,V4,V?,Vi〇},t= 0,4,10, {0, 1,3, 4}
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1