形同陌路范文
时间:2023-04-02 10:33:07
导语:如何才能写好一篇形同陌路,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。
篇1
我们常需要面对一些关联的形态,比如亲密,比如相恋,比如同伴。这些关联的形态一直在改变着,也许微小,也许巨大,但都是说不上来的。什么时候的事呢?一瞬间的转变。
像年月日和时分秒的这种关联,亲密,似乎不可替代,就好像习惯了的陪伴,理所当然。因为我们总觉得有什么是不会改变的吧,有什么该会是永恒的吧。但却变了。曾经有多么亲密,就变得有多么的疏远。可曾经还在啊。这就是密切的形同陌路。
在一段感情之后,有些人会尝试着遗忘,于是像“我不记得他了”“我不想他了”这样的话也就听得多了。可这样的话却恰恰说明了没有忘记和依旧想念。重点是那个“了”字。说明曾经有多少次反复的深入生活,说明还萦绕在心里,也就说明那些话语中的掩饰。这就是刻意的形同陌路。
“就是我不认识的那个人。”这句话最近相当流行。意指某一个曾经有过不同寻常的关系,如今这关系却消失殆尽,想要忘记,却又控制不住想念的人。因为办不到忘掉,却又无法挽回了,所以才会宁愿从未认识过,什么都没有发生过,甚至从未见过。这就是无奈极了的形同陌路。
想要把关系都退回到原点以前,想要到所有的事情都没有发生过,想要像陌生人一样可以简单的错身而过。
这是所谓形同陌路。
篇2
当我们的生命随着落地的声响而结束时,那是一种怎么样的痛楚和留恋呢,我们都不是要学着勇敢和坚强么,我们还要继续什么呢。无病的悲伤已经不是这个时代的进行曲了,我们只有在这个季节听着悲伤的音乐感伤寂寞的幽灵。
我们用寂寞的心写着不是很孤单的文字,有点隐隐的看不见的疼痛,当我们的眼泪随着憔悴的表情一起凋落时,我们的感情已经没有了曾经的影子。可是,我们还是得继续生活,因为明天还是要继续,不管是在病痛中,还是在睡梦中抑或是清醒中,只是,我们已经忘记的昨天时间的苍老。也许,我们的希望不在明天,但是,我们还是要努力。为了明天那生活,我们的心不知疲倦的跳动着,真的很想让那颗破碎的心短暂的歇一歇,可是生命赋予了它神圣的使命,不能让它休息,哪怕就一分都不行。
当我们看着悲伤的剧情没心没肺的掉眼泪的时候,我们也感到了那种比死还要痛苦的撕心裂肺的痛,虽然只是一种自然的离别。或许,我们的心就是生来就用来被伤害和痛苦的,好象没有了伤害和痛苦就不正常,好象没有了伤害和痛苦就也不会有幸福。
当幸福在我们身边擦肩而过时,我们也闻到了悲伤的气息,只是,有时它来得太突然太让人不知所措,但它确实是一种残忍诚实的真实。所以,我们不要期望太过于幸福的东西,因为,越是幸福越容易受伤,因为,越是幸福越容易感伤。
在我们的倾斜的世界里,整个城市喧扰而繁华,我们在昏黄的灯光下行走,城市的窒息给我们带来了一点绝望和心灵的震撼,人们都是在这样的环境下生活的,他们都只顾自己的生活,没有时间去顾及这个被工程师雕琢地危险笼罩的城市,也没有时间去装扮这个蛛网成群的城市文明。
一个个的很有创意的广告牌更是城市午夜里的一道道靓丽的风景,而在这样风景下,他们则用匆忙的脚步替代了这个城市的压抑,用步行替代了这个城市的拥挤。我们在这个立体的空间生存,鼻孔里充斥着烟尘的味道,有时有种无法呼吸的窒息。我们很想找一片天空安静的呼吸,不让自己因为呼吸而太累太狼狈悲伤。
黑暗还在继续向四边延伸,街道两旁灯火依旧辉煌,只是多了一个人的影子。黯淡的光在无边无际的夜空里慢慢的一点一点飘向未知的世界,没有谁会去写历史去纪念。
因为太遥远。所以它们还在在成就着一种未知的永恒,而我们却已经开始了苍老。我们不知道该纪念些什么,我们只是还要继续明天简单的简单。
篇3
关键词:交通规划 交通分布 双约束重力模型 浙江公路一、引言
经济不断发展,要求有一个与之相适应的公路交通系统。当前,浙江省现有的公路交通设施已不能满足公路客运和货运交通量的快速增长,开展浙江省公路交通需求预测研究,更好的指导公路建设。浙江省于2004年和2010年分别开展了一次公路出行OD调查,论文在两次公路出行OD调查统计数据的基础上研究适用于浙江省的公路出行交通分布模型。
二、交通分布预测方法的选择
交通分布预测方法一般分为两类,一类是增长系数法,一类是综合法[1]。从上述两大类方法中各选择一个研究浙江省公路交通分布模型。
福莱特法较平均增长系数法收敛速度快,在满足相同精度条件下迭代次数也少,因此在实际研究和工作中广泛应用。福莱特法和佛尼斯法计算较复杂,因此一般通过计算机编程或专门的交通规划软件计算。用增长系数法在进行浙江省交通分布研究中选用福莱特法。
综合法中最常用的是重力模型法,双约束重力模型能满通守恒条件,在研究和工作中广泛应用,选取双约束重力模型对浙江省交通分布进行研究。
三、福莱特法进行浙江省交通分布研究
采用福莱特法进行交通分布是将2004年作为基年,2004年浙江省公路网OD调查获得的交通出行OD表作为基年OD表,以2010年浙江省公路网OD调查获得的各交通小区发生和吸引量作为预测值进行的交通分布,最后将分布结果与2010年OD调查获得的OD分布量做对比,以检验福莱特法是否适用于浙江省公路交通OD分布。
(一)基年OD表
增长系数法的应用前提是要求被预测区域有完整的现状OD表,浙江省2004年组织了全省公路OD调查获得了真实可靠的2004年全省公路交通出行OD表,以此作为基年OD表,增加了预测的精确度。
(二)2010年各交通小区发生和吸引量
将2010年浙江省公路OD调查获得的全省交通出行OD表进行统计可以得出16个交通小区的交通发生与吸引量[2]。
(三)福莱特法进行交通分布
由于福莱特法计算过程较复杂,因此一般通过计算机编程实现或通过专门的交通规划软件计算,应用transcad软件进行浙江省交通分布研究[3]。
1 建立交通小区地图,输入各交通小区2010年交通发生和吸引量。
2 导入基年2004年交通出行OD矩阵,设置迭代次数为10次,收敛标准为1%,在软件中选择福莱特法进行交通分布。
(四)交通分布结果检验
为了检验与实际的误差,将福莱特法进行浙江省交通分布的结果与2010年浙江省公路OD调查获得的OD分布进行对比分析[4]。将福莱特法得出的交通分布矩阵的单元格数值除以2010年调查得到的OD分布矩阵的单元格数值,生成新矩阵,用matlab对新矩阵进行统计分析,得出新矩阵的均值为1.1702,方差为0.4913。用福莱特法进行浙江省交通分布得到的结果与实际调查值有较大差距,与实际交通分布不吻合。
四、双约束重力模型进行浙江省交通分布研究
通过2010年浙江省公路OD调查得出的OD分布和初始阻抗矩阵对阻抗函数进行参数标定,应用双约束重力模型在transcad中进行交通分布。
(一)重力模型参数的标定
1.阻抗函数的选取
阻抗函数包括幂函数、指数函数和组合函数三种形式。由于组合函数可克服指数函数和幂函数由于交通分区之间的距离过小而造成分配量过大的弊端而且组合函数是幂函数和指数函数的组合,考虑因素全面,因此组合函数在交通分布的研究和工作中应用广泛。在计算小区间的阻抗时选用组合函数,即在transcad软件进行阻抗函数选择中选择“Gamma”选项。组合函数需要对函数中的参数a、b、c进行标定。
2.阻抗函数参数的标定
在双约束重力模型公式中,参数仅存在于阻抗函数
中,对双约束重力模型的标定,即对阻抗函数进行参数标定。
①在transcad中打开交通小区层,执行“Networks/Paths―Multiple Paths”命令计算各交通之间的阻力dij ,生成阻力矩阵。
②将2010年调查获得的浙江省交通出行OD矩阵导入软件中,选择“planning―Trip Distribution―Gravity Calibration”命令,在阻抗函数选区中选择“Gamma”函数,标定出阻抗函数参数a、b、c。其中a=1.3877,b=-0.5388,c=0.0422。
(二)双约束重力模型进行交通分布
1.将参数标定输入TransCAD软件,计算各小区间的摩擦因子,即阻抗,得出阻抗矩阵。
2.导入2010年浙江省各小区交通发生和吸引量,在TransCAD软件中选取双约束重力模型进行交通分布,得出浙江省2010年交通分布结果。
(三)交通分布结果检验
将用标定参数的双约束重力模型分布得出矩阵的单元格数值除实际OD分布矩阵的单元格数值,生成新矩阵,用matlab对新矩阵进行统计分析, 得出新矩阵的均值为1.0170,方差为0.2085。利用标定参数的双约束重力模型进行浙江省OD分布与实际调查的OD分布相吻合。
五、结语
由第三部分的研究可知,福莱特法不适用浙江省交通分布。由第四部分的研究可得,浙江省交通分布模型为标定参数的双约束重力模型,即:
参考文献:
[1]邵春福.交通规划原理[M].北京:中国铁道出版社,2004.
[2]浙江省交通规划设计研究院,长安大学. 2010年浙江省公路OD调查数据分析报告[R].杭州:浙江省交通规划设计研究院,2011.
篇4
【关键词】交叉路口;红绿灯;车流量;优化模型
中图分类号:C913.32 文献标识码:A 文章编号:
0前言
城市交通信号控制的研究意义交通是城市经济活动的命脉,对城市经济发展、人民生活水平提高起着十分重要的作用。汽车工业在给人们带来各种便利的同时,也带来了一系列令人困惑的问题,如环境污染、交通拥挤、交通事故的频繁发生等,给人们的生命财产带来很大的损失。
1信号配时的数学模型
交叉路口是道路系统中对交通影响最大的一个部分,主要不利因素有:交通事故、交通延误、燃料消耗等,这些问题又直接与交叉路口的信号配时密切相关,目前,在我国城市道路交叉路口,主要采用定时式信号管理系统。
设T为信号周期(单位为秒(S),下文中时间单位皆为秒);d为交叉路口车辆到达率(辆/S);c为交叉路口车辆离开率(辆/s);为红灯持续时间;包括红灯前的黄灯过渡时间; 绿为绿灯持续时间,包括绿灯前的黄灯过渡时间; 排为在红灯亮后车辆依次排队的时间;时刻红灯亮,来车陆续被阻停在停线前。随红灯时间的延长而积累的排队车数 排时刻,绿灯亮,车辆依次疏散通过交叉路口,经过时间疏疏散车辆到时刻,全部车辆疏散完。疏通车辆数为, 当 时,交叉路口车辆在绿灯时间内可全部疏散完而不会造成阻塞,否则该交叉路口需改造,方可满足现行交通需要。本文是在条件下研究交叉路口信号配时问题。红灯亮后,累积的车辆数为:;
每一信号周期内交叉路口一个进口处的车时平均总延误为:
设在十字路交叉口中,相交道路一条为主干道,另一条为次干道,主干道的车辆到达率、离开率及红灯持续时间分别为,,;次干道的车辆到达率、离开率及红灯持续时间分别为,,。在一个信号周期内,两条道路上的车辆在交叉路口处总延误时间为:
2实例
以金华市迎宾大道和二环北路交叉路口的信号配时优化设计为实例,依照时现场得到的数据部分优化和计算的除以下数据(其中二环北路为),来车率:(1) ;(2)离车率:;(3)红灯的临界时间;(4)最大的疏散时间; (5)优化前的信号配时为。
计算得出,;;可见,主车道的红灯信号配时比优化前少了,次车道的红灯信号配时比优化前多了,这样主、次车道的红灯信号配时比减少了,车流量进一步增大,运行效率显著提高,从而按照此模型进行交叉口红绿灯配时可有效地解决城市交叉口的车辆拥挤现象,提高交叉路口的通行能力,更好的减少汽车在交叉路口的延误时间,提高效益。
3 结语
本文在红绿灯配时优化方面有一定的创新,能解决城市道路十字交叉路口的红绿灯配时问题,可使得车辆总延误时间减少、通过交叉路口的车流量增大、停车次数减少,对于提高车辆运行的效率、节省能源和城市交通管理具有一定的理论和实用价值。与此同时,该模型具有一定的推广价值,但在以下方面还需要进一步完善,不同路口以及不同时段下交通红绿灯的配时方案有所差异,而且本数学模型忽略了黄灯的时间,所以很大程度上有误差。故需要进一步考虑绿灯时间来解决红绿灯优化配时方案。
【参考文献】
篇5
有的时候还是无法相信很多曾经形影不离的好友已经形成陌路!
有的时候还是无法相信小的时候经常在他膝上玩的舅舅和自己早已形同陌路!
有的时候真的真的感慨时光留不住人!
陌生,但是身边却总是会有一堆朋友!
此时此刻,却怎么也无法想到自己身边的这堆朋友,
总有一天也会像那些形同陌路的过往好友离去!
终究,形成陌路!
回忆究竟是什么,光吗?是想抓都抓不住,想挡都挡不了的光吗?
陌生,如此陌生!
会不会有一天,连自己都陌生了!
会不会有一天,连我爱的人都陌生了!
篇6
我不知道曾经一起欢笑过,开心过,愉快地玩过闹过,伤心过……互相安慰过,互相慰藉过,互相埋怨过,互相善意地嫉妒过的我们是否未来会有怎么一天……是哪一天,相信大家都十分的疑惑吧!
不知我们是否会有这样的时候,十年之后,曾经好如蜜糖般的姐妹再次在茫茫人海的大街上重逢,互相抬起头看到了对方, 眼神交叉的那一刹那,你是否会大声地喊出对方的名字?你是否会冲上去给对方一个甜蜜而又温馨的拥抱?你是否会甜甜地说,好姐妹,我们又见面了!你是否会甜蜜地拥着她的肩膀,手拉手带她去你最熟悉不过的咖啡馆靠着窗,和她一起喝着咖啡,欢笑着讲着你们以前欢笑又喜悦的事情?你是否会带着她回家见见你的家人,再次和她成为朋友?我不知道我们是否会在大街上心照不宣地低头走路,互相没看见对方,然后匆匆走过,就等于没有看到她,都默默地走开, 把这次偶遇抛在脑后。会吗?我们会这样吗?苦笑三声后,我也希望不会这样形同陌路吧……
形同陌路多么伤人的一个词,一个完美甜蜜的姐妹情化为虚无,心会痛吗?
篇7
【关键词】ZPW2000A 移频轨道电路 模拟系统
【中图分类号】G【文献标识码】A
【文章编号】0450-9889(2012)12C-0191-02
随着铁路的不断发展,对专门培养铁路人才的院校来说,要使学生在学习理论知识的同时,又能够在接近真实的环境下对移频轨道电路系统进行操作,就必须有相应的移频轨道电路系统设备。
铁道信号的主要功能是保证行车安全,提高运输效率,实现运输管理自动化和列车运行自动控制,改善铁路职工的劳动条件。铁道信号实训基地作为培养学生基本技能和专业技能的重要场所,对于提高学生的专业素质起着不可替代的作用。基于此,我们利用学院现有人力与物力,在原有沙盘轨道基础上,加入ZPW-2000轨道移频电路,在发送端向轨道发送移频信息,在接收端进行解调得到低频信息,由低频信息去控制地面信号机点灯,形成ZPW-2000轨道电路的模拟系统。
把单片机及CPLD两种技术结合在一起,研究和设计了ZPW-2000系列轨道电路模拟系统,主要功能有:轨道的占用与空闲及完整性检查、区间信号点灯控制、抗电化干扰等。系统设计使各项参数尽可能接近现场实际,可测量的参数有:移频信号的电压、载频、上边频及下边频、低频信息等。该系统可以供学生学习、测量使用,具有一定的推广价值。
一、系统结构
(一)发送器
移频信号产生器由CPLD作为处理器,晶振50MHz,用于产生高精度移频信号,包括8种载频和18种低频信息。低频信息、载频编码条件通过并行输入/输出接口送到处理器,首先判断编码值,由CPU通过查表得到该编码条件所对应的上下边频数值,控制移频发生器,产生相应FSK信号。波形变换器是把移频信号产生器产生的方波信号转换成正弦波。
实际设计中,移频信号在钢轨线路上传输,由于钢轨线路呈感性,当移频信号流过时,信号衰减比较大,常用的方法是在钢轨线路上并联电容,使传输距离增加。而在沙盘上不存在此问题,但为下一步模拟列控系统设计考虑,如果信号能量太小,列车线圈无法感应到信号,因此必须对信号进行功率放大。
功率放大选用LM1875音频功率放大专用芯片,输出功率最大达到20W,已能满足设计要求,最后经隔离变压器把信号送到钢轨上。
(二)接收器
信号经滤波限幅后,排除干扰,让一定通带的有用信息通过,对工频干扰及其他信号干扰起抑制作用。然后经鉴频检波,解调出移频信息中的低频信息。再经低频放大及波形转换器,把正弦信号转成方波信号,送CPU处理,鉴别低频信息,来控制地面信号机点灯。
为了防止信号幅度大小不均对鉴频电路有影响,加入限幅器。限幅器用四个二极管构成强信号双向限幅,每个二极管饱和压降约0.6V,则输出信号上下幅值在±1.2V,完成强信号对称限幅。
鉴频器选用选频放大电路,由运算放大器与LC滤波网络构成。因移频信号的频差太小,用两个谐振槽路很难区分,同时这样的精确电子谐振也很难实现,因此我们使用选频放大器帧频特性曲线的线性段实现。检出低频信息后,进入低频放大电路,该电路采用运算放大器与RC网络构成。
CPU选用STC单片机,用于鉴别低频信息,从而控制地面信号点灯,同时向后一闭塞分区传送编码信息。
二、软件设计
三、实验测量
该系统在轨道电路调整状态时,分别对发送器输出信号及接收器解调后信号进行了实验测量。
(一)发送器移频信号频率的测量
(二)接收器输出低频测量及点灯情况
把单片机及CPLD两种技术结合在一起,研究和设计了ZPW-2000系列轨道电路模拟系统。在调整状态下,对发送器输出信号及接收器解调后信号进行了实验测量,主要有上边频及下边频、低频信息。结果表明,该系统能真实模拟现场设备,可以供学生学习、测量使用,具有一定的推广价值。
【参考文献】
[1]罗海涛.移频自动闭塞[M].北京:中国铁道出版社,1992
[2]林瑜筠.区间信号自动控制[M].北京:中国铁道出版社,2008
[3]王静霞.FPGA/CPLD应用技术(Verilog 语言版)[M].北京:电子工业出版社,2011
篇8
关键词:公交;Dijkstra算法;最优路径
DOI:10.16640/ki.37-1222/t.2015.24.253
1 引言
随着国家经济的迅速发展,城市的规模不断扩大,交通拥堵问题日趋严重,影响了市民的生活质量和居住环境。地处经济发达地区的旅游城市苏州,鉴于历史名城的保护,城市公共交通以“公交优先”为战略,经过多年的建设取得了长足发展, 但还面临着诸如公交网络重复度高、公交线路过长、换乘不便等问题。本文立足于苏州市城市道路的现状,通过对Dijkstra最短路径算法的改进,根据市民的不同的出行需求,建立苏州市最优公交线路选择模型。进一步,以苏州市国际教育园周边公交线路为数据来源,开发服务于国际教育园师生的最优公交线路查询系统。
2 最优公交线路选择模型
我们将公交站点看作网络上的顶点,相邻站点间的路段看作边,考虑苏州市城市道路的现状,对Dijkstra 算法计算最短路径时每个公交站点都可以转车进行修正,即市民出行转车不超过2次。算法如下:
第1步,所有公交站点记为V={1,2,…,n},起点到任一站点i的最短路径距离为L[i]=Min[D[i,1]],在V-S中搜寻使L[t]最小的站点t,直至V-S为空。若L[i]>L[t]+D[i,t],则Y[i]=t,L[i]=L[t]+D[i,t]。
第2步,求过起点或其周边的路线s(i),(i=1,2,…,m),过终点或其周边的路线t(j),(j=1,2,…,n)。若s(i)=t(j),则有直达路线;若路线s(i)上的站点E(i,x),(x=1,2,…,p)=路线t(j)上的站点F(j,y),(y=1,2,…,q),则有换乘一次路线;若E(i,x)的路线r(z),(z=1,2,…,k)上的站点G(z,r),(r=1,2,…,h)=路线t(j)上的站点F(j,y),(y=1,2,…,q),则有换乘两次路线。
第2步, 若没有,表明换乘两次不可行,结束搜寻。
市民的出行会综合考虑距离、时间、费用等因素来选择满意度最大的公交线路。为此,市民可根据各自的需求来确定各因素的权重,将各条公交线路对应的直达距离矩阵、直达时间矩阵、直达费用矩阵标准化处理后加权平均,得到综合满意度矩阵,利用修正的Dijkstra算法建立最优公交线路选择模型。
3 最优公交线路选择模型系统设计
在最优公交线路选择模型的基础上,以苏州市国际教育园周边公交线路为数据来源,对最优公交线路选择系统用程序化的软件系统来实现,系统采用在C/S模式下的三层体系结构,应用了当前最流行的Eclispe开发环境,后台采用了以目前最稳定的SQL Server2008数据库为开发平台。查询系统的流程设计:录入苏州市国际教育园周边公交线路信息,包括每条线路的线路名称及经过的所有站点;利用算法算出最符合用户需求的公交线路,在所输入的条件没有直达车的情况下,系统会自动给予转乘方案;直观、简单、快捷的输出每条满足条件的信息。
根据整个系统平台的功能划分,设计上面按照两个主要模块来设计的:
(1)模块一,录入系统模块:由公交站点管理与公交线路管理两部分组成,实现数据的录入、修改、删除功能(图1)。
(2)模块二,查询系统模块:可实现按起点-中转站-终点查询查询和按线路查询两种查询方式(图2)。
4 结语
本文对苏州市城市道路交通和市民出行选择问题的进行分析,通过对Dijkstra最短路径算法的改进,根据公众的不同的出行需求,确定距离、时间、费用等因素的权重,建立市民满意度最大的公交线路选择模型。进一步,以苏州市国际教育园周边公交线路为数据来源,开发服务于国际教育园师生的最优公交线路查询系统,验证了模型和算法,说明了模型和算法的合理性和实用性。
参考文献:
[1]戴泉华,黄剑.苏州公交发展中的矛盾及解决方案[J].江苏交通, 2002(05):11-13.
[2]王建林.基于换乘次数最少的城市公交网络最优路径算法[J].经济地理,2005,25(05):673-676.
[3]许军林,蒋年德.一种改进的公交换乘算法的实现[J].电脑知识与技术,2007,14(02):517-518.
[4]刘新.《Java开发技术大全》[M].清华大学出版社,2009(01).
篇9
关键词:路边停车;流体模拟理论;电动自行车;延误
DOI:10.16640/ki.37-1222/t.2016.08.242
0 引言
在我国大多数中小型城市中,路边停车是常见现象。路边停车场的泊位通常占用非机动车车道宽度,对非机动车交通流产生很大的影响。作为非机动车的主要构成者,这种影响在电动自行车身上显得尤其明显。目前国内外的大部分研究集中在非机动车对机动车交通流延误、行人穿越道路对机动车交通流延误等方面[1-2],对路边停车对非机动车交通流影响的研究很少。本文在国内外研究成果的基础上,重点研究路边停车对电动自行车交通流造成的延误,找出影响因素,并建立相关延误模型。
1 条件假设
本文在研究过程中,作如下假设:(1)车辆停靠路边泊位时,选择平行式停放;(2)停车场泊位设置在非机动车车道上,并且机动车车道与非机动车车道之间有隔离带分隔。
2 延误模型建立
车辆在驶出驶入泊位时,驾驶员为了保障行车安全,会在空隙足够大时才会驶入驶出泊位。因此当路段车流量较小时,车辆的驶入驶出因为有足够大的空隙,因而对电动自行车交通流的影响较小。但是当路段的电动自行车的车流量较大时,电动自行车之间的间隙不能够确保车辆的驶入驶出泊位的安全性,当驾驶员因等待时间较长而失去耐心时,将强行驶入车流,而导致电动车车流产生交通堵塞[3]。
4 总结
本文在车流波动理论的基础上,建立了路边停车对电动自行车车流的延误影响模型。模型对车流的延误时间、排队长度、堵塞概率给出了具体的计算方法,并通过具体事例验证了模型的可行性。该模型对确定车流延误影响具有重要的意义。
参考文献:
[1]张水潮,杨仁法.路边停车带对非机动车流影响的分析模型[J]. 交通运输工程与信息学报,2014,12(01):22-27.
篇10
关键词:全文检索;Lucene;倒排索引;分词
DOIDOI:10.11907/rjdk.151168
中图分类号:TP319
文献标识码:A 文章编号
文章编号:16727800(2015)006012703
作者简介作者简介:张吴波(1977-),男,湖南邵阳人,湖北汽车工业学院电气与信息工程学院讲师,研究方向为软件开发。
0 引言
大数据时代,可利用的数据和信息量呈爆炸式增长,人们在获取更多信息的同时,也不可避免地增加了筛选信息的难度[1]。面对海量数据,如何使用户更好、更准确地抓取所需信息,已成为信息化技术中一个非常重要的课题。全文检索技术是为用户提供快速、准确获取有效信息的重要方法。
1 全文检索技术
全文检索是以各种计算机数据,诸如文字、声音、图像等为处理对象,提供按照数据资料的内容,而不是外在特征来实现的信息检索手段[2]。相对于一般的DBMS,可以将Word文档、邮件、网页等非结构化、半结构化数据作为检索对象。
全文检索最初是以字符串匹配程序实现的,即在待查找的文件中,打开每个文件后,对文件内容从头到尾检索,如果其中包含需要查询的字符串,则将它作为结果文件。这种顺序检索效率较低,因此,全文检索都是通过“索引”技术实现的。其过程是由计算机索引程序扫描文件中的每一个词,然后对每个词建立一个索引,并指明该词在文章中出现的次数和位置。当用户查询时,由检索程序对已建立的索引进行查找,得到所需要的文件[3]。
2 全文搜索引擎Lucene
Lucene是一个非常优秀、成熟、开源、免费、采用Java语言编写的全文检索引擎工具。它提供了丰富的API,可以与存储在索引中的信息方便地交互,并能方便地嵌入到各种应用系统中,实现针对应用的全文索引/检索功能。
Lucene运用了大量的面向对象设计思想。首先定义了一个与平台无关的索引文件格式,其次通过抽象系统的核心组成部分设计为抽象类,具体的平台实现部分设计为抽象类的实现,此外与具体平台相关的部分比如文件存储也封装为类,经过层层的面向对象式处理,最终达成一个低耦合、高效率、容易二次开发的检索引擎系统[4]。
目前,Lucene得到了广泛应用,许多Java项目都使用了Lucene作为其后台的全文搜索引擎,比较著名的有:Jive(Web论坛系统)、Eyebrows(邮件列表HTML归档/浏览/查询系统)、Cocoon(基于XML的Web框架)等。
3 Lucene系统模型
3.1 Lucene系统结构
Lucene搜索引擎由基础结构封装、索引核心、对外接口、查询分析器4大部分组成,如图1所示。
索引核心是Lucene的重点,主要包括索引管理和数据存储管理。其中org.apache.lucene.index包实现对索引的建立、删除等操作[5],通过为每个分出的词建立索引,查询时只需遍历索引,从而极大地提高检索效率;org.apache.lucene.store包实现对索引文件的存储管理。基础结构封装是Lucene的基础,包括文档管理和公用类。其中org.apache.lucene.document实现对文档信息和域信息的管理;org.apache.lucene.util作为公共类,实现一些优化的数据结构和算法。对外接口包括检索和语言分析器,org.apache.lucene.analysis是语言分析器,主要用于切分词,把输入的文本分成一个个可供索引模块处理的“词语”。org.apache.lucene.search是检索管理器,提供用户检索接口,可以实现根据用户输入的查询条件进行查询。org.apache.lucene.QueryParser是查询分析器,其作用是解析用户输入的查询语句,对查询语句进行分析,然后返回一个查询对象(query),它还可以自定义查询规则,以实现像Google一样能支持查询条件的与、或、非等复合查询方式。
3.2 Lucene检索流程
基于Lucene的全文搜索,包含索引管理和搜索索引两个基本过程,其数据处理流程如图2所示。
3.2.1 索引管理
在创建索引时,先将被索引(待搜索的数据)的内容,作为文档(Document)信息,传给IndexWriter对象,在IndexWriter对象中,指定语言分析器Analyzer。语言分析器自动对文档进行分词处理,将文档分成一个个单独的单词,其中还要进行去除标点符号和停用词(像英语中的a、the、or等使用频率很多的冠词、介词、副词或连词)等处理,形成“词元(Token)”。词元传递给语言处理器进行相关处理,形成“词(Term)”,对于英语形式的词元进行语言处理时,一般做以下工作:将词元变为小写、将词元缩减为词根形式(例如“cars”转换成“car”)、将词元转变为词根形式(例如“drove”转换“drive”)等。最后索引组件依据语言处理产生的词形成词典,采用倒排索引法,形成一定数据结构的索引文件。
3.2.2 搜索索引
Lucene是针对索引进行查询的。先将用户输入的查询信息传递给QueryParser对象,该对象采用建立索引时类似的分词方法和语言处理方法,得到需要查询的单词和查询关键词;再根据查询语句的语法规则,进行语法分析,创建一棵语法树,形成Query对象;最后由IndexSearcher对象打开、读取索引目录中的索引文件,在反向索引表中,分别找出需要查询的单词文档链表,并根据语法树对文档链表进行交、差、并等操作,得到结果文档。
3.3 Lucene索引机制
索引是Lucene进行全文搜索的基础,关系到检索的效率。在Lucene中,分析器只能对文本数据进行解析,并产生索引,对于其它类型的数据,需要将其转换成文本数据后,提交给分析器进行处理。Lucene在管理索引时,是通过索引文件管理的,在索引文件中既保存正向信息,也保存反向信息。
3.3.1 正向信息
在Lucene中,索引结构是一种层次结构。索引(index)由段(segment)组成,段由记录(document)组成,记录由域(field)组成,域由词(term)组成。每个层次都保存了本层次的信息以及下一层次的元信息,也即属性信息[6],其结构如图3所示。
3.3.2 反向信息
反向信息是索引文件的核心,记录的是倒排索引表。倒排索引源于实际应用中根据属性的值来查找记录的方式。索引表中的每一项都包括一个属性值和该属性值记录的地址。在Lucene中,索引表中的项是文档单词,其属性是包含单词的文档号、在文档中的出现频次及位置,如图4所示。反向信息主要包括倒排索引表中的词典(Term Dictionary)和倒排表(Posting List)。
4 Lucene应用
Lucen提供了全文检索框架,具备完整的查询引擎和索引引擎,为数据访问和管理提供了简单的函数调用接口。在应用Lucene搭建全文检索系统时,由于应用领域不同,需要进行二次开发,以扩展系统功能。
4.1 构建数据采集器
能被Lucene索引的数据是文本数据。实际应用中,待检索数据有许多种格式和来源,例如:PDF文件、Word文件、XML文件,以及互联网的网页文件。在具体实施时,需要按照应用需求,对这些不同格式的文件分别进行处理,从中提取出纯文本格式信息,并建立对应的Lucene文档,再提交给索引管理器进行索引。
在处理PDF文件、Word文件等二进制文件时,可以借助第三方的接口和应用程序,对文件进行数据提取。例如在处理PDF文件时,可以使用PDFBox接口进行文件分析并提取数据;在处理Word文件时,可以使用JACOB、POI等从中提取数据等;在处理互联网上的网页时,可以通过网络爬虫等方式对网页数据抓取,并使用网页分析技术,先去掉其中的HTML标记,再提取网页内容。
4.2 扩展分词器
Lucene在org.apache.lucene.analysis中定义了接口,提供了可供应用系统使用的语言处理能力。Lucene默认已经实现了英文等语言的简单词法分析逻辑(按照空格分词,并去除常用的语法词,如英语中的is、am、are等)。但是,在具体应用时,由于每个语种的习惯和处理词的方法差异较大,例如在汉语中词语的分割与英语就有很大的不同。因此,使用Lucene提供的ChineseAnalyzer和CJKAnalyzer对中文分词效果并不明显,不能满足系统对中文的分词要求,此时可以采用analysis接口实现的方式,自定义分词算法,以实现对中文的个性化分词。
5 结语
Lucene本质上是一个信息检索的类库(Library),它具有高效、简洁、易用的特点,在信息检索中有着非常广泛的应用。Lucene采用了倒排索引技术,实现了高效的索引管理和检索。Lucene只以文本格式的数据作为索引对象,在实际应用中,可以开发针对各种不同类型数据的采集器,以扩展系统数据处理的广度;可以在Lucene提供的分词器基础上,针对语言系统特点,开发新的分词器,以扩展系统数据处理的深度。
参考文献:
[1]刘东君.基于Lucene非结构化文档全文检索系统研究与实现[J].软件导刊,2013,12(10):100102.
[2]李永春.Lucene的全文检索的研究与应用[J].计算机技术与发展,2010,20(2):1215.
[3]李明宙.Lucene全文检索引擎的结构机制与应用方式[J].广西科学院学报,2012,26(4):433435.
[4]周平.Lucene全文检索引擎技术及应用[J].重庆工学院学报:自然科学版,2007,21(4):8688.