面向大规模路网的城市轨道交通并行仿真任务分解方法与流程

文档序号:15853520发布日期:2018-11-07 10:33阅读:310来源:国知局
面向大规模路网的城市轨道交通并行仿真任务分解方法与流程

本发明涉及一种交通仿真技术,尤其是一种城市轨道交通并行仿真任务分解方法。

背景技术

随着城市轨道交通路网规模的不断扩大、客流量增加,城市轨道交通路网层面上进行的各类仿真运算量急剧增加,在某些对运算时效要求较高的场景下,采用并行仿真技术提高仿真效率成为一个提高仿真效率的可行途径,而并行任务的分解直接影响到仿真系统的模型构建与并行运算效率,是一个值得研究的问题。

目前路网层面的城市轨道交通并行仿真系统较少,还未在并行仿真任务分解方面形成相应的成果。而目前道路交通路网仿真方面采用的并行任务分解方法虽有一定成果,但因为城市轨道交通系统主要具有“列车本线运行”、“乘客跨线换乘”的特性,道路交通并行仿真所采用的任务分解方法不适应城轨并行仿真的需要。



技术实现要素:

发明目的:提供一种面向大规模路网的城市轨道交通并行仿真任务分解方法,以提高并行仿真效率。

技术方案:本发明所述的面向大规模路网的城市轨道交通并行仿真任务分解方法,包括如下步骤:

步骤1,以仿真功能模块为基本单位对所要仿真的城市轨道交通仿真系统进行顶层任务分解获得顶层并行任务集合,再对顶层并行任务集合中的各个仿真功能模块进行分类,获得核心仿真任务集合和顶层仿真任务集合;

步骤2,结合城市轨道交通系统的空间地理区域特性,将核心仿真任务划分为各个子域仿真任务;

步骤3,将各个子域仿真任务以及顶层仿真任务集合中的顶层仿真任务加入并行仿真任务集合中,形成能够在并行计算机系统上被独立调度和并行执行的任务单元。

进一步地,步骤1中,获得核心仿真任务集合和顶层仿真任务集合的具体步骤为:

步骤1.1,分解城市轨道交通仿真系统获得的顶层并行任务集合为module={module1,module2,…,modulek};

步骤1.2,对module中任一仿真功能模块modulei生成任务taski,若modulei与乘客或列车状态的仿真推演处理相关,则将任务taski加入到核心仿真任务的集合coretask中,否则将任务taski加入到顶层仿真任务的toptask集合中。

进一步地,步骤2中,将核心仿真任务划分为各个子域仿真任务的具体步骤为:

步骤2.1,对于所要仿真的城市轨道交通仿真系统,定义轨道交通网络的运营线路集合l,并从历史数据中统计计算出各线路li日均客流量数据以及各线路li换乘量数据;

步骤2.2,对于运营线路集合l,考虑各子域间仿真负荷均衡性和子域间仿真运算的通讯量来构建路网拓扑子域划分多目标优化模型;

步骤2.3,输入轨道交通网络的运营线路集合l、各线路li日均客流量数据以及各线路li换乘量数据,运用lingo软件求解路网拓扑子域划分多目标优化模型,将路网线路分割为k个子域,l=l1∪l2∪…∪lk,其中任一线路li属于且仅属于某一个子域lj;

步骤2.4,将核心仿真器集合coretask中任一仿真任务coretaskj再次划分为k个子域仿真子任务,每个子域仿真任务承担该子域内所有线路范围内的核心仿真运算功能。

进一步地,步骤2.2中,各子域间仿真负荷均衡性是以各子域间仿真负荷偏离量进行定义的,根据各子域包含的线路li所承担的日均客流总量的平均偏差进行计算,计算公式为:

式(1)中,w(lij)为子域li与子域lj间线路客流总量的偏差,qp为线路集l中任一线路lp的客流总量,qq为线路集l中任一线路lq的客流总量,定义0-1变量表示线路lp划分于第i个子域li,否则为0,定义0-1变量表示线路lq划分于第j个子域lj,否则为0。

进一步地,步骤2.2中,考虑各子域间仿真运算的通讯量是根据各子域间的各线路的换乘量进行计算,计算公式为:

式(2)中,w(vtij)为衔接子域li与lj间的各换乘站的换乘客流总量,tqpq为由线路lp换乘至lq的换乘客流总量,定义0-1变量表示线路lp划分于第i个子域li,否则为0,定义0-1变量表示线路lq划分于第j个子域lj,否则为0。

进一步地,步骤2.2中,路网拓扑子域划分多目标优化模型是通过多目标优化方法将路网线路分割为k个子域,以各个子域间的日均客流总量的平均偏差∑w(lij)以及换乘客流总量w(vtij)最小化为优化目标。

进一步地,步骤2.2中,路网拓扑子域划分多目标优化模型为:

式(3)为模型目标函数,以各个子域间的日均客流总量的平均偏差∑w(lij)以及换乘客流总量w(vtij)最小化为优化目标,式(4)和(5)为约束条件;tqpq为由线路lp换乘至lq的换乘客流总量;qp为线路集l中任一线路lp的客流总量;为0-1变量,表示线路lp划分于第i个子域li,否则为0;qq为线路集l中任一线路lq的客流总量;为0-1变量,表示线路lq划分于第j个子域lj,否则为0;w1和w2为所设系数,用于将多目标转化为单一目标。

本发明与现有技术相比,其有益效果是:

(1)采用了功能分解与域分解相结合的混合式策略对大规模路网城市轨道交通仿真系统进行并行仿真任务的分解,能够满足大规模路网条件下城市轨道交通系统路网仿真对快速仿真运算的要求,并适应仿真在功能与规模上的扩展。

(2)与一般的道路交通并行仿真系统中以局部区域“面”来划分任务的方式不同,本发明以“运营线路”为基本单位进行仿真任务的划分,更好地适应城市轨道交通系统的特点,提高了仿真并发度。

(3)构建了核心仿真器子域分解的多目标优化模型,根据线路客流量和域间客流换乘量来定义域间运算均衡性和通讯开销,适应城市轨道交通系统的运营特征,模型简洁,求解方便,便于实施。

附图说明

图1为基于功能分解的城市轨道交通路网运营并行仿真任务分解方法流程图;

图2为本发明的基于混合并行仿真策略的城市轨道交通路网运营并行仿真框架。

具体实施方式

下面结合附图对本发明技术方案进行详细说明,但是本发明的保护范围不局限于所述实施例。

如图1所示,本发明所述的面向大规模路网的城市轨道交通并行仿真任务分解方法,包括如下步骤:

步骤1,以仿真功能模块为基本单位对所要仿真的城市轨道交通仿真系统进行顶层任务分解获得顶层并行任务集合,再对顶层并行任务集合中的各个仿真功能模块进行分类,获得核心仿真任务集合和顶层仿真任务集合;

步骤2,结合城市轨道交通系统的空间地理区域特性,将核心仿真任务划分为各个子域仿真任务;

步骤3,将各个子域仿真任务以及顶层仿真任务集合中的顶层仿真任务加入并行仿真任务集合中,形成能够在并行计算机系统上被独立调度和并行执行的任务单元。

进一步地,步骤1中,获得核心仿真任务集合和顶层仿真任务集合的具体步骤为:

步骤1.1,分解城市轨道交通仿真系统获得的顶层并行任务集合为module={module1,module2,…,modulek};

步骤1.2,对module中任一仿真功能模块modulei生成任务taski,若modulei与乘客或列车状态的仿真推演处理相关,则将任务taski加入到核心仿真任务的集合coretask中,否则将任务taski加入到顶层仿真任务的toptask集合中。

进一步地,步骤2中,将核心仿真任务划分为各个子域仿真任务的具体步骤为:

步骤2.1,对于所要仿真的城市轨道交通仿真系统,定义轨道交通网络的运营线路集合l,并从历史数据中统计计算出各线路li日均客流量数据以及各线路li换乘量数据;

步骤2.2,对于运营线路集合l,考虑各子域间仿真负荷均衡性和子域间仿真运算的通讯量来构建路网拓扑子域划分多目标优化模型;

步骤2.3,输入轨道交通网络的运营线路集合l、各线路li日均客流量数据以及各线路li换乘量数据,运用lingo软件求解路网拓扑子域划分多目标优化模型,将路网线路分割为k个子域,l=l1∪l2∪…∪lk,其中任一线路li属于且仅属于某一个子域lj;

步骤2.4,将核心仿真器集合coretask中任一仿真任务coretaskj再次划分为k个子域仿真子任务,每个子域仿真任务承担该子域内所有线路范围内的核心仿真运算功能。

进一步地,步骤2.2中,各子域间仿真负荷均衡性是以各子域间仿真负荷偏离量进行定义的,根据各子域包含的线路li所承担的日均客流总量的平均偏差进行计算,计算公式为:

式(1)中,w(lij)为子域li与子域lj间线路客流总量的偏差,qp为线路集l中任一线路lp的客流总量,qq为线路集l中任一线路lq的客流总量,定义0-1变量表示线路lp划分于第i个子域li,否则为0,定义0-1变量表示线路lq划分于第j个子域lj,否则为0。

进一步地,步骤2.2中,考虑各子域间仿真运算的通讯量是根据各子域间的各线路的换乘量进行计算,计算公式为:

式(2)中,w(vtij)为衔接子域li与lj间的各换乘站的换乘客流总量,tqpq为由线路lp换乘至lq的换乘客流总量,定义0-1变量表示线路lp划分于第i个子域li,否则为0,定义0-1变量表示线路lq划分于第j个子域lj,否则为0。

进一步地,步骤2.2中,路网拓扑子域划分多目标优化模型是通过多目标优化方法将路网线路分割为k个子域,以各个子域间的日均客流总量的平均偏差∑w(lij)以及换乘客流总量w(vtij)最小化为优化目标。

进一步地,步骤2.2中,路网拓扑子域划分多目标优化模型为:

式(3)为模型目标函数,以各个子域间的日均客流总量的平均偏差∑w(lij)以及换乘客流总量w(vtij)最小化为优化目标,式(4)和(5)为约束条件;tqpq为由线路lp换乘至lq的换乘客流总量;qp为线路集l中任一线路lp的客流总量;为0-1变量,表示线路lp划分于第i个子域li,否则为0;qq为线路集l中任一线路lq的客流总量;为0-1变量,表示线路lq划分于第j个子域lj,否则为0;w1和w2为所设系数,用于将多目标转化为单一目标。

实施例:

需要进行仿真任务分解的系统名为“城市轨道交通路网客流推演仿真系统”,仿真对象为北京市城市轨道交通系统,拥有16条地铁运营线路,246个运营车站,日均客流超过700万人次,仿真对象路网规模与客流量巨大,对系统运算速度要求较高。仿真运行资源为一台4核多线程计算机,为实现并行仿真,首先进行仿真任务分解,实施步骤如下:

步骤1,对于实例所述的仿真系统,由其概要设计可知系统共包含6个功能模块,分别为“仿真过程展示”、“指标计算与展示”、“数据采集与存储”、“路网拓扑与设施模型”、“乘客活动仿真”以及“列车运行仿真”。则定义module1~module6模块,分别代表这6个模块,将各模块放入module集合中;

步骤2,对module中每个功能模块生成相应的任务task1~task6,其中,task5与task6与乘客或列车状态的仿真推演处理相关,则将二者加入到核心仿真器集合coretask中,其它任务task1~task4则加入到toptask集合中,形成基于功能分解的城市轨道交通路网运营并行仿真框架,如图2所示。

步骤3,对于北京市城市轨道交通系统,定义轨道交通网络的运营线路集合l=即l={l1,l2,...,l8,...,l16},并从历史数据中统计计算各线日均客流量数据qp及各线换乘量数据tqpq如下表4和表5所示。

表1各线路总客流量qp

表2各线路间的总换乘客流量tqpq

步骤4,对于集合l={l1,l2,...,l8,...,l16},设定所划分子集数为4,即k=4,利用本发明中的多目标规划方法建模并求解后得到各子集集合分别为l1={l1,l4,l15},l2={l5,l6,l9,l11,l13,l16},l3={l2,l3,l12},l4={l7,l8,l10,l14};

步骤5,采用基于“域”的分解方式,对核心仿真器集合coretask中的“乘客活动仿真”、“列车运行仿真”分别再次划分为4个子域仿真子任务,每个子域仿真任务承担该子域内所有线路范围内的核心仿真运算功能;

步骤6,将各子域仿真任务单元和其它各顶层并行任务单元加入并行仿真任务集合,形成能够在并行计算机系统上被独立调度和并行执行的任务单元。由此,在第一层功能分解的基础上,通过第二层域分解实现了仿真任务的划分,形成了基于混合并行仿真策略的城市轨道交通路网运营并行仿真框架,如图2所示;

步骤7,将分解后形成的多子任务多线程放到4核计算机上进行并行仿真运算,可以对路网运营状况进行快速的并行仿真计算。

如上所述,尽管参照特定的优选实施例已经表示和表述了本发明,但其不得解释为对本发明自身的限制。在不脱离所附权利要求定义的本发明的精神和范围前提下,可对其在形式上和细节上作出各种变化。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1