本發(fā)明涉及一種單交叉口信號(hào)燈時(shí)間控制方法及系統(tǒng),屬于交通運(yùn)輸控制
技術(shù)領(lǐng)域:
。
背景技術(shù):
:目前,很多城市深受交通擁堵的困擾,如何構(gòu)建一個(gè)高效率的交通運(yùn)輸系統(tǒng)成為城市建設(shè)的頭等大事。許多已充分開(kāi)發(fā)的城市幾乎不能拓展交通道路,即在空間上已經(jīng)沒(méi)有可發(fā)展的空間,故交通理論很多方法都從時(shí)間上進(jìn)行了研究,即提出了很多交通信號(hào)控制理論算法。文獻(xiàn)《Trafficlightcontrolinnon-stationaryenvironmentbasedonmultiagentQ-learning》(下文簡(jiǎn)稱Adboosd的方法)提供了一種單交叉口信號(hào)燈時(shí)間控制方法,該控制方法將單交叉口的四個(gè)來(lái)車方向分為24種不同的車輛排隊(duì)狀態(tài),如表1所示,但是,表中24種狀態(tài)并沒(méi)有區(qū)分l1>l2>l3>l4、l1=l2=l3=l4和l1=l2=l3>l4等情況,而這些情況可能對(duì)交通網(wǎng)絡(luò)造成不同的影響。另外,每種車輛排隊(duì)狀態(tài)中不同的排隊(duì)車輛數(shù)也會(huì)對(duì)交通網(wǎng)絡(luò)造成不同的影響,例如,若li(i=1,2,3,4)表示第i個(gè)車道車輛排隊(duì)長(zhǎng)度,則(l1:4,l2:5,l3:2,l4:3)和(l1:40,l2:50,l3:20,l4:30)同屬于l2≥l1≥l4≥l3交通狀態(tài),顯然這種狀態(tài)不能選擇相同的綠燈時(shí)間。表1顯然這種方式?jīng)]有考慮到每種車輛排隊(duì)狀態(tài)中不同的排隊(duì)車輛數(shù)也會(huì)對(duì)交通網(wǎng)絡(luò)造成不同的影響,導(dǎo)致的信號(hào)燈時(shí)間段控制與實(shí)際交通狀況不符合,綠燈時(shí)間分配不科學(xué),影響通行效率。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的目的是提供一種單交叉口信號(hào)燈時(shí)間控制方法,以解決目前信號(hào)燈時(shí)間控制中沒(méi)有考慮排隊(duì)車輛數(shù)導(dǎo)致對(duì)信號(hào)燈控制不科學(xué)的問(wèn)題。同時(shí),本發(fā)明還提供了一種單交叉口信號(hào)燈時(shí)間控制系統(tǒng)。本發(fā)明為解決上述技術(shù)問(wèn)題而提供一種單交叉口信號(hào)燈時(shí)間控制方法,該控制方法的步驟如下:1)按照單交叉口四個(gè)來(lái)車方向和每種車輛排隊(duì)狀態(tài)中不同的排隊(duì)車輛數(shù)將車輛排隊(duì)狀態(tài)分為nk種,n為車輛排隊(duì)長(zhǎng)度的種類,k為單交叉口的車道數(shù);2)以交通信號(hào)相位個(gè)數(shù)、每個(gè)相位的最小時(shí)間、綠燈增加的時(shí)間段數(shù)和每段時(shí)間的長(zhǎng)度作為交通行為;3)根據(jù)所劃分的車輛排隊(duì)狀態(tài)和確定的交通行為采用Q學(xué)習(xí)法進(jìn)行學(xué)習(xí),Q(s,a)←Q(s,a)+α[μ+γmaxa'Q(s',a')-Q(s,a)]s←s′其中α為學(xué)習(xí)速率,γ為折扣因子,s為目前的交通狀態(tài)即車輛排隊(duì)狀態(tài),a為某一交通行為,μ為補(bǔ)償值,s'為下一個(gè)狀態(tài),a'為下一個(gè)交通行為。進(jìn)一步地,所述的補(bǔ)償值μ是當(dāng)前信號(hào)周期通過(guò)交叉口車輛數(shù)與周期結(jié)束時(shí)交叉口排隊(duì)的車輛數(shù)的差值,當(dāng)通過(guò)交叉口的車輛數(shù)大于排隊(duì)的車輛數(shù)時(shí),補(bǔ)償值為正值;當(dāng)通過(guò)交叉口的車輛數(shù)大于排隊(duì)的車輛數(shù)時(shí)補(bǔ)償值為負(fù)值。進(jìn)一步地,交叉口的周期長(zhǎng)度δ為:δ=nph×tmin+nex×hex其中nph表示交通信號(hào)相位的個(gè)數(shù),tmin表示每個(gè)相位的最小時(shí)間,nex表示綠燈增加的時(shí)間段數(shù),hex表示每段時(shí)間的長(zhǎng)度。進(jìn)一步地,所述交叉口的周期長(zhǎng)度δ可調(diào),周期長(zhǎng)度δ通過(guò)調(diào)整綠燈增加的時(shí)間段數(shù)nex和每段時(shí)間長(zhǎng)度hex來(lái)實(shí)現(xiàn)調(diào)整。本發(fā)明還提供了一種單交叉口信號(hào)燈時(shí)間控制系統(tǒng),該控制系統(tǒng)包括車輛排隊(duì)狀態(tài)劃分模塊、交通行為構(gòu)建模塊和Q學(xué)習(xí)迭代模塊,所述的車輛排隊(duì)狀態(tài)劃分模塊用于按照單交叉口四個(gè)來(lái)車方向和每種車輛排隊(duì)狀態(tài)中不同的排隊(duì)車輛數(shù)將車輛排隊(duì)狀態(tài)分為nk種,n為車輛排隊(duì)長(zhǎng)度的種類,k為單交叉口的車道數(shù);所述的交通行為構(gòu)建模塊用于以交通信號(hào)相位個(gè)數(shù)、每個(gè)相位的最小時(shí)間、綠燈增加的時(shí)間段數(shù)和每段時(shí)間的長(zhǎng)度作為交通行為;所述的Q學(xué)習(xí)迭代模塊用于根據(jù)所劃分的車輛排隊(duì)狀態(tài)和確定的交通行為采用Q學(xué)習(xí)法進(jìn)行學(xué)習(xí),Q(s,a)←Q(s,a)+α[μ+γmaxa'Q(s',a')-Q(s,a)]s←s′其中α為學(xué)習(xí)速率,γ為折扣因子,s為目前的交通狀態(tài)即車輛排隊(duì)狀態(tài),a為某一交通行為,μ為補(bǔ)償值,s'為下一個(gè)狀態(tài),a'為下一個(gè)交通行為。進(jìn)一步地,所述的補(bǔ)償值μ是當(dāng)前信號(hào)周期通過(guò)交叉口車輛數(shù)與周期結(jié)束時(shí)交叉口排隊(duì)的車輛數(shù)的差值,當(dāng)通過(guò)交叉口的車輛數(shù)大于排隊(duì)的車輛數(shù)時(shí),補(bǔ)償值為正值;當(dāng)通過(guò)交叉口的車輛數(shù)大于排隊(duì)的車輛數(shù)時(shí)補(bǔ)償值為負(fù)值。進(jìn)一步地,交叉口的周期長(zhǎng)度δ為:δ=nph×tmin+nex×hex其中nph表示交通信號(hào)相位的個(gè)數(shù),tmin表示每個(gè)相位的最小時(shí)間,nex表示綠燈增加的時(shí)間段數(shù),hex表示每段時(shí)間的長(zhǎng)度。進(jìn)一步地,所述交叉口的周期長(zhǎng)度δ可調(diào),周期長(zhǎng)度δ通過(guò)調(diào)整綠燈增加的時(shí)間段數(shù)nex和每段時(shí)間長(zhǎng)度hex來(lái)實(shí)現(xiàn)調(diào)整。本發(fā)明的有益效果是:本發(fā)明按照單交叉口四個(gè)來(lái)車方向和每種車輛排隊(duì)狀態(tài)中不同的排隊(duì)車輛數(shù)將車輛排隊(duì)狀態(tài)分為nk種,n為車輛排隊(duì)長(zhǎng)度的種類,k為單交叉口的車道數(shù);以交通信號(hào)相位個(gè)數(shù)、每個(gè)相位的最小時(shí)間、綠燈增加的時(shí)間段數(shù)和每段時(shí)間的長(zhǎng)度作為交通行為;根據(jù)所劃分的車輛排隊(duì)狀態(tài)和確定的交通行為采用Q學(xué)習(xí)法進(jìn)行學(xué)習(xí)。本發(fā)明通過(guò)改變狀態(tài)空間的定義,將車輛排隊(duì)狀態(tài)劃分的與交叉口的實(shí)際情況更加吻合,使得綠燈時(shí)間的分配更加科學(xué)。此外,本發(fā)明根據(jù)某一交通信息的正面和負(fù)面影響,對(duì)綠燈時(shí)間進(jìn)行補(bǔ)償,當(dāng)通過(guò)交叉口的車輛數(shù)大于排隊(duì)的車輛數(shù)時(shí),補(bǔ)償值為正值;當(dāng)通過(guò)交叉口的車輛數(shù)大于排隊(duì)的車輛數(shù)時(shí)補(bǔ)償值為負(fù)值;此外本發(fā)明還避免了固定周期的限制,使得單交叉口信號(hào)時(shí)間的控制更加靈活。附圖說(shuō)明圖1是具有四個(gè)相位的單交叉口示意圖;圖2是仿真試驗(yàn)的結(jié)果比較圖。具體實(shí)施方式下面結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式做進(jìn)一步的說(shuō)明。本發(fā)明一種單交叉口信號(hào)燈時(shí)間控制方法的實(shí)施例本發(fā)明針對(duì)單交叉口交通擁堵的情況,提出一種單交叉口信號(hào)燈時(shí)間控制方法,以解決目前信號(hào)燈時(shí)間控制中沒(méi)有考慮排隊(duì)車輛數(shù)導(dǎo)致對(duì)信號(hào)燈控制不科學(xué)的問(wèn)題。1.按照單交叉口四個(gè)來(lái)車方向和每種車輛排隊(duì)狀態(tài)中不同的排隊(duì)車輛數(shù)將車輛排隊(duì)狀態(tài)分為nk種,n為車輛排隊(duì)長(zhǎng)度的種類,k為單交叉口的車道數(shù)。本實(shí)施例中的針對(duì)的單交叉口如圖1所示,Z1、Z2、Z3和Z4是車輛進(jìn)入并通過(guò)交叉口的區(qū)域,A、B、C和D是一個(gè)信號(hào)周期內(nèi)的四個(gè)相位,將不同的排隊(duì)長(zhǎng)度分為較小,中等和較大三類,若單交叉口有k個(gè)車道,則理論上將有3k種不同的車輛排隊(duì)狀態(tài),當(dāng)k=4時(shí),共有81種狀態(tài),遠(yuǎn)遠(yuǎn)多于表1中的24種狀態(tài),與實(shí)際的交通狀況更加符合。2.以交通信號(hào)相位個(gè)數(shù)、每個(gè)相位的最小時(shí)間、綠燈增加的時(shí)間段數(shù)和每段時(shí)間的長(zhǎng)度作為交通行為。交通行為包括<nph,tmin,nex,hex>,其中nph表示交通信號(hào)相位個(gè)數(shù),本實(shí)施例中的交通信號(hào)相位個(gè)數(shù)為4,tmin表示每個(gè)相位的最小時(shí)間,nex表示綠燈增加的時(shí)間段數(shù),hex表示每段時(shí)間的長(zhǎng)度,交叉口的一個(gè)周期長(zhǎng)度δ為:δ=nph×tmin+nex×hex3.采用Q學(xué)習(xí)法對(duì)信號(hào)燈時(shí)間進(jìn)行控制Q學(xué)習(xí)算法是動(dòng)態(tài)規(guī)劃的有關(guān)理論及動(dòng)物學(xué)習(xí)心理學(xué)的有力相互結(jié)合,以求解具有延遲回報(bào)的序貫優(yōu)化決策問(wèn)題為目標(biāo),該法是根據(jù)TD算法對(duì)Markov決策過(guò)程的行為值函數(shù)進(jìn)行迭代運(yùn)算,具體的公式如下:Q(s,a)←Q(s,a)+α[μ+γmaxa'Q(s',a')-Q(s,a)]s←s′其中s表示狀態(tài),a表示動(dòng)作,Q(s,a)表示對(duì)狀態(tài)s下動(dòng)作a得到的總體回報(bào)的一個(gè)估計(jì),α為學(xué)習(xí)速率,μ為補(bǔ)償值,s'為下一個(gè)狀態(tài),a'為下一個(gè)動(dòng)作。該算法的迭代過(guò)程如下:1.對(duì)每個(gè)s,a初始化表項(xiàng)Q(s,a)為0;2.觀察當(dāng)前狀態(tài)s;3.一直重復(fù)做:選擇一個(gè)動(dòng)作a并執(zhí)行它,該動(dòng)作為使Q(s,a)最大的a,接收到立即回報(bào)r,觀察新?tīng)顟B(tài)s',對(duì)Q(s′,a′)按照下式更新表項(xiàng):Q(s,a)對(duì)于本發(fā)明而言,這里的動(dòng)作a表示一個(gè)交通行為,s為目前的交通狀態(tài)即車輛排隊(duì)狀態(tài),a為某一交通行為,μ為補(bǔ)償值,s'為下一個(gè)交通狀態(tài),a'為下一個(gè)交通行為。通過(guò)上述算法,本發(fā)明能夠快速、精準(zhǔn)的實(shí)現(xiàn)對(duì)單交叉口信號(hào)燈時(shí)間的控制。在Q學(xué)習(xí)迭代過(guò)程中,現(xiàn)有方法中的補(bǔ)償值μ與車輛排隊(duì)長(zhǎng)度成反比,μ歸一化后的范圍為[0,1],故每次補(bǔ)償值都為正值,在迭代的過(guò)程中,時(shí)延將會(huì)累計(jì)增大??紤]車輛數(shù)在整個(gè)信號(hào)周期中的分布情況,本發(fā)明根據(jù)到達(dá)交叉口的車輛數(shù)設(shè)置迭代的補(bǔ)償值μ,該補(bǔ)償值是當(dāng)前信號(hào)周期通過(guò)交叉口車輛數(shù)與周期結(jié)束時(shí)交叉口排隊(duì)的車輛數(shù)的差值,當(dāng)通過(guò)交叉口的車輛數(shù)大于排隊(duì)的車輛數(shù)時(shí),補(bǔ)償值為正值;當(dāng)通過(guò)交叉口的車輛數(shù)大于排隊(duì)的車輛數(shù)時(shí)補(bǔ)償值為負(fù)值,即交叉口的綠燈時(shí)間不足以讓一個(gè)信號(hào)周期的到達(dá)車輛通過(guò)該交叉口。為了避免固定周期的限制,使得單交叉口信號(hào)時(shí)間的控制更加靈活,本發(fā)明中的交叉口的一個(gè)周期長(zhǎng)度δ可自主調(diào)整,具體地,周期長(zhǎng)度δ通過(guò)調(diào)整綠燈增加的時(shí)間段數(shù)nex和每段時(shí)間長(zhǎng)度hex來(lái)實(shí)現(xiàn)調(diào)整。本發(fā)明一種單交叉口信號(hào)燈時(shí)間控制系統(tǒng)的實(shí)施例本實(shí)施例中的控制系統(tǒng)包括車輛排隊(duì)狀態(tài)劃分模塊、交通行為構(gòu)建模塊和Q學(xué)習(xí)迭代模塊,車輛排隊(duì)狀態(tài)劃分模塊用于按照單交叉口四個(gè)來(lái)車方向和每種車輛排隊(duì)狀態(tài)中不同的排隊(duì)車輛數(shù)將車輛排隊(duì)狀態(tài)分為nk種,n為車輛排隊(duì)長(zhǎng)度的種類,k為單交叉口的車道數(shù);交通行為構(gòu)建模塊用于以交通信號(hào)相位個(gè)數(shù)、每個(gè)相位的最小時(shí)間、綠燈增加的時(shí)間段數(shù)和每段時(shí)間的長(zhǎng)度作為交通行為;Q學(xué)習(xí)迭代模塊用于根據(jù)所劃分的車輛排隊(duì)狀態(tài)和確定的交通行為采用Q學(xué)習(xí)法進(jìn)行學(xué)習(xí),Q(s,a)←Q(s,a)+α[μ+γmaxa'Q(s',a')-Q(s,a)]s←s′其中α為學(xué)習(xí)速率,γ為折扣因子,s為目前的交通狀態(tài)即車輛排隊(duì)狀態(tài),a為某一交通行為,μ為補(bǔ)償值,s'為下一個(gè)狀態(tài),a'為下一個(gè)交通行為。各模塊的具體實(shí)現(xiàn)手段已在方法的實(shí)施例中進(jìn)行了詳細(xì)說(shuō)明,這里不再贅述。為了進(jìn)一步證明本發(fā)明的效果,下面進(jìn)行仿真實(shí)驗(yàn),本次仿真實(shí)驗(yàn)采用ParamicsV6和MATLAB軟件進(jìn)行仿真,仿真條件如表2所示,通過(guò)交叉口的車輛總數(shù)為4800輛,共計(jì)時(shí)間為10個(gè)小時(shí),每個(gè)相位的綠燈時(shí)間設(shè)定{15,25,35},各相位根據(jù)車流量情況選擇不同的綠燈時(shí)間,設(shè)定信號(hào)的周期長(zhǎng)度是可變的,信號(hào)周期長(zhǎng)度即為所有相位綠燈時(shí)間之和再加8秒,8秒是四個(gè)相位的黃燈時(shí)間。表2Z1Z2Z3Z4TotalZ1120080002000Z23000200500Z3010002001200Z450006001100Total800220014004004800仿真結(jié)果如圖2所示,Abdoos的方法和本發(fā)明方法累計(jì)的平均延誤時(shí)間分別為48655秒和35235秒,圖2中結(jié)果表明,本發(fā)明比Abdoos的方法的單交叉口通行效率提高了27.6%,具有更好的信號(hào)控制效果。本發(fā)明使用人工智能學(xué)習(xí)模式來(lái)模擬單交叉口的車輛通行狀況,利用實(shí)時(shí)的車流量信息計(jì)算各個(gè)路口的綠燈時(shí)間,相比之前的單交叉口信號(hào)控制算法,本發(fā)明中交通狀態(tài)的劃分更加符合實(shí)際交通狀況,本發(fā)明對(duì)綠燈方向進(jìn)入交叉口的車輛和紅燈方向排隊(duì)車輛的平均誤差進(jìn)行了補(bǔ)償和反饋,從而最小化交叉口信號(hào)周期的車輛延誤時(shí)間,最大程度地增大單交叉口的通行效率。當(dāng)前第1頁(yè)1 2 3