|
|
| | -文章搜索 - 最新文章 - | |
单路口交通多相位模糊控制器的设计与仿真 |
| 发布时间:2006年5月20日 点击次数:696 |
| 来源: 作者:南京东南大学系统工程研究所(210096)陈淑燕 陈森发 南京师范大学江苏省光电重点实验室(210097)周延怀 |
摘要:用模糊控制方法对单路口多相位的交通信号进行控制,提出以当前相的主队列和后继相的主队列决定信号配时的方法,并用Matlab及其模糊逻辑工具箱实现二维模糊控制器。以通过交叉口的平均车辆延误作为评价指标,衡量该控制器的控制性能,采用Matlab编程设计实现了交叉口六相位的仿真系统,仿真结果表明控制效果比较好。 关键词:单路口交通 多相位 模糊控制 仿真 MATLAB 单路口交通控制就是确定交叉路口红绿灯的信号配时,使通过交叉口的车辆延误尽可能小。 MATLAB是国际上流行的控制系统计算机辅助设计语言和软件工具,其提供的模糊逻辑工具箱拓展了MATLAB对模糊逻辑系统的设计能力,已经成为运用模糊手段解决工程问题的有力工具。笔者用MATLAB软件并结合其模糊逻辑工具箱,实现了该模糊控制器及其仿真。计算机仿真结果表明控制效果优于定时控制。 1 交通信号模糊控制思想 单交叉路口交通流分布如图1所示。东、南、西、北四个方向,每个方向均有右行、直行和左行三个车道车流。在每条入口道上设置两个信号检测器构成一个检测区,一个设在停车线处,用于检测该道的车辆离开数;一个设在距第一个检测器D处,用于检测车辆到达数。距离D一般为80~100m。检测器对路口各个车道车流量进行实时检测而获取车流量信息,为模糊控制提供必要的数据。 令qjk表示第j相位对应的两个方向的车辆等待队列长度(下称队长),j=1,2,3,4,5,6,为相位序号,k=1,2,qjk∈[0,Qlimit],Qlimit=D/L,L为单位车身长度。考虑某个周期T,在T内第I相位末时(第I相将由绿转红)作一车辆等待队列长度设为qjk(i),则:
式中qjk(i-1)为周期T内第(i-1)相位末时jk车道的车辆等待队列长度。Cjk(i)为第i相位jk车道的车辆到达数,gjk(i)是第i相位从红灯变为绿灯后的车流离去数。 依据各个车道的车流信息,以路口流通能力最大或排除候车的时间最短为目标,对交叉路口交通信号进行模糊控制,实时确定各个相位的配时,因而周期和绿信比是不定的。设ei(i=1,2,3,4,5,6)是第i相位的绿灯配时,它由路口实时检测的车流量决定。具体地说,每一相交通信号的配时是由该相位的主队列和后继相的主队列两者决定的。所谓主队列是一个相位两个方向中车辆等待数较大的等待队列,又称关键车流[3]。 所谓模糊控制就是在控制方法上应用模糊集合论,运用模糊语言变量及模糊逻辑揄实现系统的智能控制。这种方法摆脱了控制对象输入、输出物理量的精确描述,用自然语言描述专家控制策略,以机器模拟人的模糊思维对系统实现有效控制。模糊控制系统原理如图3所示[4]。 在实际控制过程中,将计算机采样的输入量 2.1 确定模糊控制器的输入输出变量 根据有文所述,单路口交通的多相位模糊控制器是一个二维模糊控制器。其输入是当前相的主队列qp和后继相的主队列qs,输出是绿灯时长相对于设定配时M的增量Δe。qp和qs有以下三种组合:(右行,直行)、(直行,左行)、(左行,右行),分别对应左行相、直行相、左行相的控制。以直行相为例讨论控制器的设计,其它相位的控制与此相似,不复述。 设qp是直行主队列长,qs是左行主队列长。直行队长基本率域为[0,Qlimit],设其论域为Q,Q={0,2,3,4,5,6,7,8,9,10}。在论域Q上的定义的五个模糊子集为{很短,短,中,长,很长}, y=(10x)/Qlimit (2) 左行队长qs基本论域为[0,Qlimit],设其论域为S,S={0,1,2,3,4,5,6,7,8,9,10}。在论域上亦定义五个模糊子集{VS,S,M,L,VL},各模糊子集的隶属函数见图5。从基本率域到论域的线性变换同公司(2)。 绿灯时长e∈[gmin,gmax],设定配时m可取,控制器的输出Δe=e-m,其实际变化范围为[(gmin-gmax)/2,(gmax-gmin)/2]。 2.2 确定模糊控制规则 确定控制规则的原则是:当等待队列长或很长时,增加绿灯时间,选取的输出以放行、减少车辆等待为主;而当等待队列较短时,选取的控制量以防止绿灯时间浪费为出发点。通过总结实践和专家经验,建立了模糊控制规则表,如表1所示。一共有5×5=25条控制规则。
双输入单输出的模糊控制器,其控制规则可写成如下形式: if (qp is Qi)and (qs is Sj) then (Δe is Eij)。 这里Qi,Sj,Eij分别是上文定义的模糊语言变量。根据每一条规则,都可以求出相应的模糊关系Rij: Rij=Qi×Sj×Eij (i=1,∧,5) (3) 所有控制规则对应的模糊关系为R, 2.3 模糊推理及反模糊化的方法 根据模糊堆理合成规则运算,得出相应的控制量变化的模糊集E,E=(Q×S)oR,即:
“o”是合成运算符。合成的结果是一个模糊子集,可按隶属度量大法、中位方法或加权平衡法进行反模糊化,得到在区间E上的精确控制量Δe*,再经尺度变换后得实际的控制量增量Δe。设直行相绿灯实际范围为[gmin,gmax],右行、左行相绿灯实际范围为[g''''min,g''''max],可按下列公式转换为实际控制量e: 2.4 模糊响应表的生成 根据输入和输出变量的隶属函数、模糊控制规则,由模糊逻辑运算可离线算出模糊关系矩阵R。R庞大,不利于储存和在线运算,通常应进一步求出模糊响应表,即模糊控制表。在实际控制过程中,可根据模糊量化后的输入变量值,直接查询模糊响应表,以获得控制量的变化值Δe*。再运用(6)或(7)式,得到绿灯配时,去控制信号灯和倒计时器。 下面以直行相为例给出生成多相位模糊响应表的函数,straight.fis是直行相模糊控制器。 Function ulist=anstable() sfis=readfis(''''straight''''); %打开straight.fis,并加载到当前工作空间 ulist=zeros(11,11) %ulist 是模糊响应表 for i=1:11 for j=1:11 qp=j-1;ps=i-1; ulist(i,j)=evalfis([qp,qs],sfis)%执行模糊推理运算 end end 3 仿真系统设计与实现 3.1 评价指标计算 本文以通过交叉口的平均车辆延误作为评价指标,以此衡量多相位模糊控制器的控制性能。设在一个周期T内,第i相位jk车道的车辆延误为djk(i),则: 周期T内所有进口的车辆总延误为:
同理,设在一个周期T内所有进口车辆到达数为C(T),则:
所以k个周期内六个进口的车辆平均延误为:
其中,Q0为周期开始时所有进口的初始队列长度之和,即在第一个周期开始时,车辆等待队长之和。 3.2 仿真系统设计与实现 设T为周期,i为相位,单路口多相位模糊控制器的仿真系统流程图如图7所示。 3.3 仿真结果分析 笔者用MATALAB 5.3编写了单路口交通的多相位实时模糊控制仿真程序,仿真参数Qlimit=20,[gmin,gmax]取[20,60],[g''''min,g''''max]取[10,20]。作为对比,亦编写了定时控制方法仿真程序,直行相位取60秒,其它相位取20秒。为保证结论的可靠性,将模糊控制与定时方案作了多次仿真比较,每次仿真为10个周期,结果见表2。
经过多次仿真运行,得到模糊控制车辆平均延误d1=131.95秒/辆,定时控制方法的车辆平均延误为d2=141.91秒/辆。模糊控制方法的车辆平均眨误与定时控制方法相比,减小(d2-d1)d2×100%=7.02%。可见,采用模糊控制方法, 多相位模糊控制器适用于单路口多车道的交通控制。由于每一相位的配时是根据路口实时数据经模糊推理一次确定,可用于安装倒计时器的路口,仿真结果表明该方法是有效的。 如果不借助于开发工具,用高级语言如C语言或汇编语言等自行编程设计模糊控制器,则开发时间长、效率低且通用性差。笔者用MATLAB提供的模糊逻辑工作箱[5]辅助设计多相位模糊控制器,方便快速,大大缩减了编程工作量,且论域、语言变量、隶属函数、控制规则等设定和修改非常容易。对于参数不确定系统,更便于分析不同参数对控制结果的影响,以寻找更优的控制效果。 如果不借助于开发工具,用高级语言如C语言或汇编语言等自行编程设计模糊控制器,则开发时间长、效率低且通用性差。笔者用MATLAB提供的模糊逻辑工具箱[5]辅助设计工作量,且论域、语言变量、隶属函数、控制规则等设定和修改非常容易。对于参数不确定 系统,更便于分析不同参数对控制结果的影响,以寻找更优的控制效果。 改善模糊控制性能的最有效方法是优化模糊控制规则。通常,模糊控制规则是通过将人的操作经验转化为模糊语言形式获取,带有相当的主观性。运用粗集理论、遗传算法优化规则,是笔者进一步的研究内容。 |
|||||||||||||||||||||||||||||||
|
|
|
[传感与控制] 相关文章: 新型电容式指纹传感器简介: 摘要: 指纹识别是当前进行身份认证的一种比较可靠的方法。美国Veridicom公司生产的电容式指纹传感器FPS110,具有体积小、成本低、功耗少和成像清晰等优点,因而具有广泛的应用。文章给出了FPS110的各引脚功能和电气特性。 关键词: 电...... 霍尼威尔磁阻传感器及其应用 三相全数字移相触发电路 脉冲编码多路比例遥控用于小功率直流电动机的脉宽调速 脉宽调制功率放大器SA03在电机控制中的应用 |
|
|
|