一种大气污染扩散的仿真方法与仿真系统与流程

文档序号:14008533阅读:283来源:国知局
一种大气污染扩散的仿真方法与仿真系统与流程
本发明涉及agent的建模与仿真领域,更具体地说,涉及一种大气污染扩散的仿真方法,以及一种大气污染扩散的仿真系统。
背景技术
:agent是计算机科学和人工智能中发展很快的前沿领域,agent可译为“主体”或“智能体”。agent具备以下四个特性:(1)自治性:能在无人或其他程序介入的条件下,自主控制自己的状态和行为;(2)反应性:agent能够感知周围环境,同时有对其它agent发来信息的接收和识别能力,并且能对信息做出相应的回应;(3)社会性:agent具有通信能力,能够与其它agent建立联系,相互通信,传达信息,共同协作完成一个任务;(4)主动性:agent可以不通过外界刺激,为达到既定的目标主动行动;(5)适应性:agent能通过学习,自动改变在旧环境中保留的习惯,形成新的行为规则,动态适应环境。大气污染物扩散是一个复杂的、动态的、非线性的过程,现有的对大气污染影响的评价方法往往是一些以局部的、静态的、线性的离散指标为标准的定性评价,缺乏系统的动态评价工具。随着计算机能力的提高,人们开始运用计算机模拟来分析科学对象,把复杂系统中各个因素之间的非线性关系转化为可执行的程序,以模型程序自动运行的方式来推演系统规律。目前国内处理大气污染物扩散较成熟的数学模型是高斯模型,高斯模型作为国家环境评价标准中规定使用的模型,其模拟效果虽然在大多数气象条件下都较合理,但是也有其局限性。高斯模型及以它为基础的改进模型都是稳定态的扩散模式,假定污染源以直线轨迹连续稳定排放;下垫面均匀平坦;且风向、风速和大气稳定度都不随时间和地点变化。但是这种恒定的扩散传输条件,并不符合大部分现实情况,对地形和气候因素忽略过多,只适合研究中小尺度的污染物扩散问题。技术实现要素:本发明的目的在于克服现有技术的不足,提供一种能够展现大气污染复杂、非线性的扩散过程的大气污染扩散的仿真方法,以及大气污染扩散的仿真系统。本发明的技术方案如下:一种大气污染扩散的仿真方法,步骤如下:1)将大气环境划分成i×j的若干网格,其中,i=1,2,3,…,j=1,2,3,…,将每个网格抽象成一个大气agent,构成大气agent空间,表示大气的自然环境;2)获取各个大气agent的初始污染物浓度;3)根据元胞自动机的复杂系统建模方法,通过相邻大气agent间的浓度传递,获取在理想无风无降雨条件下,大气污染物自由扩散的模型;4)基于步骤3)获取的模型,对大气污染物随时间的自由扩散进行仿真。作为优选,步骤3)中,在理想无风无降雨条件下,大气污染物自由扩散的模型,具体为:其中,为网格(i,j)在时刻t的污染物浓度,为网格(i,j)在时刻t+1的污染物浓度,为网格(i+1,j)在时刻t的污染物浓度,为网格(i-1,j)在时刻t的污染物浓度,为网格(i,j+1)在时刻t的污染物浓度,为网格(i,j-1)在时刻t的污染物浓度,为网格(i+1,j+1)在时刻t的污染物浓度,为网格(i+1,j-1)在时刻t的污染物浓度,为网格(i-1,j+1)在时刻t的污染物浓度,为网格(i-1,j-1)在时刻t的污染物浓度,m为垂直和水平方向的扩散系数,d为用于修正斜角方向扩散的斜角系数。作为优选,如果增加风向、风速与降雨吸引因素对大气污染物自由扩散的影响,则大气污染物自由扩散的模型具体为:其中,δt为降雨对污染物的吸附系数,分别为西、东、北、南、东北、东南、西北和西南风的风场系数。作为优选,t时刻的风场系数为:其中,k为邻居大气agent的方位,l为当前风场方向,vl为当前l风向的风速,vlmax为该风向的最大风速,α和γ为扩散参数。作为优选,步骤1)中,将网格的形状为四边形,则大气agent向八个方向进行扩散,以此动态仿真大气污染物在大气agent之间逐步传递。作为优选,网格的大小由仿真区域的地理分辨率、污染物本身的扩散速度共同决定。作为优选,步骤2)中,根据实际排污资料,确定各个大气agent的初始污染物浓度pi,j,具体为:假设大气污染物在每个网格中均匀分布,则其中,m′为仿真区域内实际排放污染物的质量,s为大气仿真区域的面积,h为大气平面相对地面的高度。作为优选,步骤4)中,以预设的周期进行动态仿真。作为优选,如果增加空间步距c0对仿真结果的影响,则进行仿真的时间步距t0具体为:其中,t为仿真的真实时刻,p为仿真的进行次数,v为大气污染物扩散速度。一种大气污染扩散的仿真系统,通过所述的大气污染扩散的仿真方法进行仿真,包括:环境模块,用于表征仿真区域的环境状况,创建有仿真区域的网格边界,定义网格环境中的初始污染物浓度、吸附系数、风场系数;agent模块,用于采用元胞自动机模型对大气agent的交互传递进行仿真,实时更新所有大气agent的污染物浓度;显示模块,用于显示仿真区域在不同气象条件下特定时间内的大气污染扩散情况;输出模块,用于输出统计图表和结果数据值。本发明的有益效果如下:本发明所述的大气污染扩散的仿真方法与仿真系统,基于agent的建模仿真,将agent的建模仿真方法运用到大气污染影响中,通过agent来描述复杂环境系统中的大气主体,并对各大气agent间的交互方式进行建模,抽象出大气agent并对其进行形式化模型设计,从而实现大气污染影响的动态评价。本发明能够有效考虑污染物随大气agent运动而扩散,仿真区域内的降雨、风向、风速和大气稳定度等气象条件对污染物传播的影响,展现大气污染复杂、非线性的扩散过程。附图说明图1是本发明所述的方法的流程图;图2是本实施例的大气agent的网格形状示意图;图3是本实施例的大气agent邻居的形式示意图;图4是本实施例的大气agent扩散规则的示意图;图5是本发明所述的系统的结构示意图;图6是本发明所述的系统在某特定条件下的污染物分布图;图7是本发明所述的系统在某特定条件下的各污染等级大气agent数量图。具体实施方式以下结合附图及实施例对本发明进行进一步的详细说明。本发明为了解决现有技术存在的无法展现大气污染复杂、非线性的扩散过程等不足,提出一种大气污染扩散的仿真方法与仿真系统,基于agent的建模仿真,通过agent来描述复杂环境系统中的大气主体,并对各大气agent间的交互方式进行建模,从而实现大气污染影响的动态评价。本发所述的大气污染扩散的仿真方法,如图1所示,步骤如下:步骤1)将大气环境划分成i×j的若干网格,其中,i=1,2,3,…,j=1,2,3,…,将每个网格抽象成一个大气agent,构成大气agent空间,表示大气的自然环境。如图2所示,本实施例中,网格为四边形,则大气agent向八个方向进行扩散,以此动态仿真大气污染物在大气agent之间逐步传递。理论上,网格可以实施为不同的形状,如在二维平面划分为三角形、四边形和六边形。其中,三角形空间里每个大气agent对应的邻居数较少,可以减少规则转换时的运算量,并且易于表达复杂的系统边界;六边形空间规则对称,对各向同性的系统模拟效果较好,但是这两种平面划分方法都不利于在计算机环境下显示。而四边形空间与计算机二维点阵的建立相似,虽然模拟显示较粗糙,但能很方便地和目前多主体平台里的网格环境相结合,因此本发明优选采用四边形网格对大气环境进行分割。确定网格空间大小:网格的大小由仿真区域的地理分辨率、污染物本身的扩散速度等因素共同决定,经过有限次的尺度敏感度试验后,会得到一个最优网格大小下的模拟结果。如图3所示,本发明采用最常用的moore型邻居,所有大气agent并行计算,互不干扰,某一中心大气agent也可以成为其他大气agent的邻居。大气agent的邻居与局部转化规则密切相关,每个大气agent只需要和邻居进行状态交互,就能实现整个系统污染物的动态扩散。如图4所示,网格中的任意大气agent(边界agent除外)周围都有八个邻居,大气主体ai,j中的污染物会向这八个方向进行扩散。步骤2)获取各个大气agent的初始污染物浓度,即初始化大气agent状态,包括:根据实际排污资料,确定各个大气agent的初始污染物浓度pi,j。假设大气污染物在每个网格(三维空间)中均匀分布,则式中,分母表示每个网格的体积,分子为污染物的质量,pi,j为各个网格的初始污染物浓度;其中,m′为仿真区域内实际排放污染物的质量(克),s为大气仿真区域的面积(平方米),h为大气平面相对地面的高度(米)。步骤3)根据元胞自动机的复杂系统建模方法,通过相邻大气agent间的浓度传递,即计算各个预设的t时刻,大气agentai,j的污染量及周围八个邻居的污染量;其中,当t=0时,则为大气agent的初始污染物浓量。进而获取在理想无风无降雨条件下,大气污染物自由扩散的模型。根据元胞自动机状态转换规则,每一个大气agent在t+1时刻在理想无风无降雨条件下,大气污染物自由扩散的模型,具体为:其中,为网格(i,j)在时刻t的污染物浓度,为网格(i,j)在时刻t+1的污染物浓度,为网格(i+1,j)在时刻t的污染物浓度,为网格(i-1,j)在时刻t的污染物浓度,为网格(i,j+1)在时刻t的污染物浓度,为网格(i,j-1)在时刻t的污染物浓度,为网格(i+1,j+1)在时刻t的污染物浓度,为网格(i+1,j-1)在时刻t的污染物浓度,为网格(i-1,j+1)在时刻t的污染物浓度,为网格(i-1,j-1)在时刻t的污染物浓度,m为垂直和水平方向的扩散系数,d为用于修正斜角方向扩散的斜角系数。具体实施时,m和d均可取经验值。本发明采用元胞自动机的理由是:如果采用现有技术的高斯等由微分物理方程求解得到的模型对大气agent建模时,不仅参数计算过程繁琐,而且只能把污染物浓度作为大气环境的一个静态属性值,通过与源强距离,重点实现其计算属性,并不能展现大气污染物复杂、非线性的扩散过程。特别是对于工程环境的动态评价,大气agent需要能够与其它主体实时交互的建模方法,如果只有对扩散结果的仿真显示还不够,需要有整个交互过程的显示。元胞自动机作为一种复杂系统的建模方式,由元胞、元胞空间、邻域和转换规则组成。系统被划分为许多形状一样的单元,即元胞,每个元胞在t+1时刻的状态都由t时刻周围邻居和自身状态共同决定,系统的复杂演化完全取决于基于空间关系的简单元胞规则。元胞自动机作为一种时空和状态都离散的动力系统,其离散性和agent概念相符合。污染物在大气环境中的扩散抽象成相邻大气agent间的交互作用,这既能解决在基于离散粒子建模的agent系统中如何加入连续的大气环境因素,又能弥补高斯建模缺乏动态移动和交互行为的问题。并且元胞自动机的栅格数据模式易于和地理信息系统(gis)相结合,为agent主体提供了能够直观显示的活动空间。为了使模型能够更精准地反应现实情况,则可增加考虑风向、风速与降雨吸引等因素对大气污染物扩散的影响。降雨对大气污染物浓度具有稀释作用,因此,中心agent除了向周围八个大气agent邻居扩散外,还会被降雨吸附沉降。在无风有降雨条件下,大气污染物自由扩散的模型:其中,δt为降雨对污染物的吸附系数,在不同雨速及半径下,降雨对各类污染物的吸附沉降作用可取经验值。风场下的加速扩散对大气污染物浓度具有稀释作用,因此,中心agent除了向周围八个大气agent邻居扩散外,还会受到风场作用的效果。因此在一般情况下,如果增加风向、风速与降雨吸引因素对大气污染物自由扩散的影响,大气污染物自由扩散的模型具体为:其中,δt为降雨对污染物的吸附系数,分别为西、东、北、南、东北、东南、西北和西南风的风场系数。考虑到风场作用的方向性以及风场对大气agent不同方向上的邻居影响程度,风作用效果需加入自由扩散的影响比例,分别作用在风场对应方向的大气agent上,目前可用两种方式求得t时刻的风场系数为:其中,k为邻居大气agent的方位,l为当前风场方向,二者分别取八个不同的方向w、e、n、s、en、es、wn和ws;vl为当前l风向的风速,vlmax为该风向的最大风速,α和γ为经实验得到的扩散参数。步骤4)基于步骤3)获取的模型,对大气污染物随时间的自由扩散进行仿真,即计算t+1时刻大气agentai,j的污染量:根据获取的模型,以预设的周期进行动态仿真,可计算得出经过一定时间步距大气agentai,j的污染量。由于所有大气agent并行计算,互不干扰,某一中心大气agent也可以成为其他大气agent的邻居。因此,所有大气agent都适用于一般情况下大气污染物自由扩散模型。最后,实时更新所有大气agent的污染量。本实施例中,实时更新时间间隔1小时后的所有大气agent的污染物浓度,并将大气污染物浓度的扩散结果以图表的形式呈现。如果增加空间步距c0对仿真结果的影响,则进行仿真的时间步距t0具体为:其中,t为仿真的真实时刻,p为仿真的进行次数,v为大气污染物扩散速度。本发明还提供一种大气污染扩散的仿真系统,通过所述的大气污染扩散的仿真方法进行仿真,通过改变环境参数模拟不同情况下大气环境随时间变化的自然响应规律,并对仿真系统的输出数据进行统计和分析,以达到大气环境可持续评价目的。由于所述的大气污染影响智能仿真系统,需要建立大气扩散模型,并在计算机中进行仿真实验,则实施时,优选采用基于java开发语言建模的repastsimphony2.4.0作为模型实现的仿真平台。如图5所示,系统包括以下模块:1、环境模块,用于表征仿真区域的环境状况,所述系统将会创建仿真区域的网格边界,并根据实际环境资料,定义网格环境中的初始污染物浓度、降雨强度、风向及风速等数据,具体为:生成网格边界:所述系统的环境模块实现contextbuilder接口,通过build()方法创建和设置网格边界规则以及网格大小,将大气agent集成在一个模型中运行;创建二维矩形网格:在网格空间上通过context和grid类创建二维矩形网格以及主体类agent的具体坐标位置;定义网格邻域规则:repast提供了对元胞自动机邻域规则的支持,通过moorequery类,可以设定大气agent的扩散邻居;输入天气状况数据:所述系统根据实际环境资料,定义网格环境中的初始污染物浓度、降雨强度、风向及风速等数据。2、agent模块,用于根据所定义的环境状况,采用元胞自动机模型对大气agent的交互传递进行仿真,实时更新所有大气agent的污染物浓度,具体为:控制时间步距:采用计算机仿真的方法来评价大气污染的环境影响,属于基于物理实体的仿真,和社会学仿真有一定区别。模型中涉及到两个重要因素,即时间步距(t0)和空间步距(c0),并且二者往往要综合起来考虑。时间步距的确定除了需要知道仿真的真实时间(t)和污染物扩散速率(v)外,还和空间步距密切相关,可表达为:式中,p为仿真的进行次数,t为仿真的真实时刻,v为大气污染物扩散速度。定义变量与数学规则:大气agent的参数如表1所示:表1:大气agent的参数表变量名称类型取值范围描述neighborinterger8、16邻居空间pconcentrationdouble≥0污染物浓度(g/m3)dispersionm、ddouble≥0污染物自由扩散下的参数dispersionwndouble≥0受到不同风向、风速影响下的扩散参数rainfalldouble≥0降雨吸附系数environmentstandardinterger一、二、三《环境空气质量标准》(级)air()依次得到邻居污染质量:大气agent主体通add()方法被添加到环境当中,再使用grid类里面的moveto()方法平铺整个网格,通过query()方法依次取得摩尔邻居的大气agent的污染属性,进行扩散。3、显示模块,用于显示仿真区域在不同气象条件下特定时间内的大气污染扩散情况,不同颜色表示大气污染等级,并对网格颜色进行填充,具体为:getcolor()颜色显示:大气agent显示类airstyle2d实现valuelayerstyleogl接口,通过getcolor()方法显示不同颜色表示大气污染等级,如图6所示。getcellsize()网格填充:大气agent显示类airstyle2d实现valuelayerstyleogl接口,通过getcellsize()得到网格尺寸以填充颜色,如图7所示。4、输出模块,用于输出统计图表和结果数据值,统计图表包括污染物分布图、各类大气agent数量图等,数据类则为具体数据和步距数据。所述系统的输出均需要在运行界面中加载模型,创建数据集,配置图表及文件。具体为:通过aggregatedatasource接口,输出包括污染物分布图、各类大气agent数量图等统计图表;通过aggregatedatasource接口,输出仿真步距内较大量级的数据;具体数据println():单个具体数据值的输出用系统自带的println()方法显示在console界面,所述系统的输出均需要在运行界面中加载模型,创建数据集,配置图表及文件。如图6所示,在静风条件下持续排污一年内仿真区域的大气污染物分布中,可知在每个仿真步距内,污染物扩散都呈高斯分布形式,表现为较均匀的圆形。如图7所示,在静风条件下持续排污一年内各污染等级大气agent的数量中,符合环境质量标准的大气agent总共有1848个,其中符合一级标准的大气agent有844个,符合二级标准的有1004个,一级污染(超过二级标准一倍)大气agent有528个,二级污染(超过二级标准一倍,还不到两倍)大气agent有156个,三级污染(超标两倍以上)大气agent有69个。上述实施例仅是用来说明本发明,而并非用作对本发明的限定。只要是依据本发明的技术实质,对上述实施例进行变化、变型等都将落在本发明的权利要求的范围内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1