本發(fā)明涉及智能交通中道路信號控制領(lǐng)域,更具體地說,涉及一種基于整數(shù)規(guī)劃模型的交通信號相位設(shè)計方法。
背景技術(shù):
交通信號控制是從時間和空間上對網(wǎng)絡(luò)的交通流進行分配,目的是將交通流均衡地分配到網(wǎng)絡(luò)中去,以保障交通的安全、暢通、與有序。信號相位是交通信號控制的重要環(huán)節(jié),信號相位設(shè)計是盡量把相互沖突或干擾嚴(yán)重的交通流適當(dāng)?shù)姆蛛x,減少交叉口交通沖突的干擾。
現(xiàn)有交通信號控制中的相位設(shè)計是通過對交叉口的基礎(chǔ)數(shù)據(jù)進行采集,包括車道數(shù)、渠化劃分、車流量等數(shù)據(jù),通過人為的判斷進行相位設(shè)計,判斷依據(jù)是是否有沖突、時空利用率是否最大化。相位設(shè)計會出現(xiàn)多種的相位組合情況,從多種且大量的相位組合中挑選合適交叉口的相位設(shè)計是通過反復(fù)的人工調(diào)整,全憑管理者的經(jīng)驗,因此傳統(tǒng)的交叉口的相位設(shè)計的科學(xué)性和合理性不能得到有效的保證。
技術(shù)實現(xiàn)要素:
本發(fā)明的主要目的在于克服現(xiàn)有技術(shù)的缺點與不足,一種基于整數(shù)規(guī)劃模型的交通信號相位設(shè)計方法,在面對已知相位數(shù)的情況下,從眾多的相位組合情況中,能快速的找到適合該交叉口的相位設(shè)計,減少對經(jīng)驗的依賴,也減少人力成本。
為了達到上述目的,本發(fā)明采用以下技術(shù)方案:
本發(fā)明的公開的基于整數(shù)規(guī)劃模型的交通信號相位設(shè)計方法,包括下述步驟:
s1、計算備選相位矩陣,具體計算方法包括下述步驟:
s11、建立燈組相容關(guān)系圖gh,以每個燈組為節(jié)點,若燈組i,j是相容的,則存在一條從結(jié)點i到結(jié)點j的無向的邊,由這些結(jié)點和邊組成的無向圖即為燈組相容關(guān)系圖gh;
s12、除去冗余相位,在原始相位矩陣中,對比任意兩列,按照冗余相位的定義,剔除冗余的相位列;
s13、處理兩股以上車流的合流沖突,除掉合流沖突中燈組集合是兩兩相容但非相互相容的相位列,所述兩兩相容是指在對于一個燈組集合,任意兩個燈組允許同時放行;相互相容是指所有燈組允許同時放行;
s14、計算備選相位集合;
s2、當(dāng)燈組相容關(guān)系圖gh確定后,輸入目標(biāo)相位數(shù),保證在一個相位周期cp內(nèi),每個燈組至少出現(xiàn)一次,所述相位周期cp是指從備選相位矩陣中選出的若干相位組成的相位周期;
s3、建立考慮沖突因素的各車道流量、車頭時距、人行過街長度的相位設(shè)計模型。
作為優(yōu)選的技術(shù)方案,步驟s1中,將備選相位矩陣a,每一列代表一個備選相位
作為優(yōu)選的技術(shù)方案,步驟s11中,在燈組相容關(guān)系圖gh中,一個燈組集合能組成一個相位的必要條件是,該集合中所有燈組兩兩相容;即:一個相位對應(yīng)gh中的一個完全子圖,gh的一個完全子圖也可成為一個相位;并通過求解燈組相容關(guān)系圖gh的所有完全子圖,得到所有相容燈組集合,作為原始備選相位矩陣,記該原始相位矩陣為a0,然后篩選掉其中冗余和兩兩相容但不是互相相容的列。
作為優(yōu)選的技術(shù)方案,步驟s12中,冗余相位的定義如下:
相位
作為優(yōu)選的技術(shù)方案,步驟s13中,所述合流沖突的定義如下:
當(dāng)兩股或以上來自不同進口的車流匯入同一出口,此時產(chǎn)生合流沖突,合流沖突是否相容,取決于合流的進口車道數(shù)是否不超過出口的車道數(shù);
指定
作為優(yōu)選的技術(shù)方案,步驟s14中,計算備選相位集合的具體方法為:
s141、通過交叉口的路面渠化情況及相容經(jīng)驗表、沖突值經(jīng)驗表,計算燈組相容矩陣h及燈組沖突值矩陣ω;
s142、利用合流沖突原則,以及根據(jù)現(xiàn)場情況人為判斷,修正燈組相容矩陣h;
s143、由修正后的燈組相容矩陣h得到燈組相容關(guān)系圖gh,計算相容關(guān)系圖的所有團,得到原始相位集合矩陣a0;
s144、計算原始矩陣a0每一列的沖突值ωj,剔除冗余相位的列;
s145、利用合流沖突原則,在a0中剔除燈組兩兩相容但不是相互相容的相位列,最后得到備選相位矩陣a。
作為優(yōu)選的技術(shù)方案,步驟s141中,所述燈組相容矩陣h具體為:
建立燈組相容矩陣,設(shè)燈組的編號為1-n,定義燈組相容矩陣h∈rn×n為n×n的0-1矩陣:
其中,
最終可得
且由相容關(guān)系的對稱性可知,燈組相容矩陣h為對稱陣;
所述燈組沖突值矩陣ω具體為:
建立燈組沖突值矩陣ω,設(shè)燈組編號1~n,定義交叉口的燈組沖突值矩陣ω∈rn×n為n×n的矩陣
其中ωij∈[0,1),為燈組i,j同時放行產(chǎn)生的沖突值,范圍在[0,1)中
由沖突值關(guān)系的對稱性可知,燈組沖突值矩陣ω也是一個對稱陣。
作為優(yōu)選的技術(shù)方案,步驟s3具體為:
假設(shè)已知各個
以及各個燈組的yp值:
由此可得備選相位矩陣a中,每個備選相位的人行需求時間,記為
每個燈組,都有對應(yīng)的損失時間li,當(dāng)為人行過街燈組
整個周期內(nèi)滿足每個燈組的人行需求:
把一個燈組看成一個水桶,根據(jù)水桶模型的原理,可知所有含燈組i的備選相位的時間和,應(yīng)該滿足:
其中
依然取dj為0-1變量,λj=180,由于每個含人行燈組的相位時間tj必須滿足該相位的人行需求時間
確定目標(biāo)相位數(shù):
記
s.tat≥yp
(a-ay)t≥l
其中,dj是0-1變量,tj為非負(fù)整數(shù),λj=180,j=1,2,......m。
作為優(yōu)選的技術(shù)方案,所述水桶模型的構(gòu)建方法如下:
假設(shè)有m個水桶并排放著,編號為1到m,每個水桶都足夠高,不用考慮水是否會溢出,每個水桶的上方均有水以勻速qj注入桶內(nèi),可以讓密閉的桶內(nèi)水平線勻速上升,桶底有一個漏水的開關(guān)閥,打開閥門后,需要等待啟動時間lj,桶內(nèi)的水立刻以勻速sj流出,sj>qj,非負(fù)且不全為0;
初始狀態(tài)各個水桶均空,并準(zhǔn)備有水開始注入,依次打開桶的閥門讓水排出,每次只能打開一個桶,并且要求每次打開閥門,一定要把水排空,排空后立刻關(guān)上并開啟下一桶的閥門,當(dāng)關(guān)上最后一個桶的閥門時再次打開第一個桶的閥門,不失一般性,假定l1不為0,每個桶的閥門打開與上一次打開的時間間隔稱為周期,若干個周期后,整個系統(tǒng)會收斂到一個穩(wěn)定狀態(tài),c會收斂到一個穩(wěn)定值,記為c0,在這個周期,所有桶的水都依次剛好放完,沒有剩余也沒有空放,并且周而復(fù)始;
在一個時間間隔c0內(nèi),一個桶會積累qjc0的水,這些水排出需要的時間為qjc0/sj及啟動時間lj,記yj=qj/sj,如果各個桶都剛好放完,沒有剩余或空放,c0滿足:
記,
此為韋伯斯特的最小周期公式,q、s、l對應(yīng)每個相位的關(guān)鍵車流量、飽和流量、損失時間,c0描述的狀態(tài)是在穩(wěn)態(tài)的假設(shè)下,各個相位剛好放完車流且沒有空放,如果把人行專用相位時間全部看成相位的損失時間的話,以上公式同樣適用。
作為優(yōu)選的技術(shù)方案,通過數(shù)學(xué)優(yōu)化方法求解出相位周期cp,求解得到的
本發(fā)明與現(xiàn)有技術(shù)相比,具有如下優(yōu)點和有益效果:
1、本發(fā)明利用建立考慮沖突因素的各車道流量、車頭時距、人行過街長度的相位設(shè)計模型,在確定相位數(shù)的情況下,從眾多的相位組合中自動篩選出符合該相位數(shù)的相位設(shè)計方案。
2、本發(fā)明是減化了相位設(shè)計中人為判斷調(diào)整,利用模型進行自動從多種的相位組合情況中篩選合適交叉口的相位設(shè)計,減少了人力,也減少了對管理者的技術(shù)要求。
附圖說明
圖1是本發(fā)明相位設(shè)計方法的流程圖;
圖2為本發(fā)明實施例中的燈組相容關(guān)系圖;
圖3為本實施例中處理合流沖突時的放行示意圖;
圖4為本發(fā)明水桶模型的結(jié)構(gòu)原理示意圖。
具體實施方式
下面結(jié)合實施例及附圖對本發(fā)明作進一步詳細(xì)的描述,但本發(fā)明的實施方式不限于此。
實施例
如圖1所示,本實施例基于整數(shù)規(guī)劃模型的交通信號相位設(shè)計方法,包括下述步驟:
s1、計算備選相位矩陣,將備選相位矩陣a的每一列代表一個備選相z
備選矩陣a的具體計算方法包括下述步驟:
s11、建立燈組相容關(guān)系圖gh,以每個燈組為節(jié)點,若燈組i,j是相容的,則存在一條從結(jié)點i到結(jié)點j的無向的邊,由這些結(jié)點和邊組成的無向圖即為燈組相容關(guān)系圖gh;
連接相鄰節(jié)點的邊是無向邊,是因為相容關(guān)系是對稱的。顯然,gh以為連接矩陣,其中
相容關(guān)系值是一個布爾值,二值化無法衡量實際的沖突程度或相容程度,該程度將用沖突值來表示。
一個燈組集合能組成一個相位的必要條件是,該集合中所有燈組兩兩相容。在燈組相容關(guān)系圖gh中,一個燈組集合能組成一個相位的必要條件是,該集合中所有燈組兩兩相容;即:一個相位對應(yīng)gh中的一個完全子圖,gh的一個完全子圖也可成為一個相位;并通過求解燈組相容關(guān)系圖gh的所有完全子圖,得到所有相容燈組集合,作為原始備選相位矩陣,記該原始相位矩陣為a0,然后篩選掉其中“不夠好”的列,所述“不夠好”的列是指冗余和兩兩相容但不是互相相容的列。
其中,求解一個圖的所有完全子圖,核心問題是圖論中經(jīng)典的最大團問題,屬于np完全問題,r中有現(xiàn)成的算法包igraph可以實現(xiàn)求解。
最大團問題具體為:
大團問題又稱最大獨立集問題,通俗來說是在一個無向圖中找出一個階數(shù)最大(節(jié)點最多)的完全子圖,屬于np完全問題。確定性求解算法有:回溯法、分支界限法等。啟發(fā)式求解算法有局部搜索啟發(fā)式算法、智能搜索啟發(fā)式算法、遺傳算法、模擬退火算法、禁忌算法、神經(jīng)網(wǎng)絡(luò)法、改進的蟻群算法antmcp等。r語言的igraph包專門求解圖論中的各種問題,最大團問題的求解算法已封裝在該包中。
s12、除去冗余相位,在原始相位矩陣中,對比任意兩列,按照冗余相位的定義,剔除冗余的相位列;一個只包含一個燈組的相位,在實際工程中可能會對時空利用造成浪費。因為在放行該燈組的同時,或許可以令其他與之相容的燈組也一起放行,將這樣的相位稱為冗余相位。
冗余相位的定義如下:
相位
s13、處理兩股以上車流的合流沖突,除掉合流沖突中燈組集合是兩兩相容但非相互相容的相位列,所述兩兩相容是指在對于一個燈組集合,任意兩個燈組允許同時放行;相互相容是指所有燈組允許同時放行;
所述合流沖突的定義如下:
當(dāng)兩股或以上來自不同進口的車流匯入同一出口,此時產(chǎn)生合流沖突,合流沖突是否相容,取決于合流的進口車道數(shù)是否不超過出口的車道數(shù);
指定
如圖3所示,記4號燈組控制的東直行兩股車流為a,5號燈控制的一股北右轉(zhuǎn)車流為b,10號燈組控制的一股南左轉(zhuǎn)車流為c。三股車流的目標(biāo)出口為西出口。
按照合流沖突的原則,車流a和b相容,車流b和c相容,車流c和a相容,但是車流a、b、c不允許同時放行。
但是,在燈組相容關(guān)系圖中,無法表現(xiàn)相互相容的關(guān)系,故此,需在中,剔除掉合流沖突中燈組集合是兩兩相容但非相互相容的相位列。
s14、計算備選相位集合;
s141、通過交叉口的路面渠化情況及相容經(jīng)驗表、沖突值經(jīng)驗表,計算燈組相容矩陣h及燈組沖突值矩陣ω;其中相容經(jīng)驗表以及沖突值為行業(yè)內(nèi)的公知常識,且該相容經(jīng)驗表和沖突值經(jīng)驗表可以根據(jù)實際情況進行修改,在此不再具體進行贅述。
所述燈組相容矩陣h具體為:
建立燈組相容矩陣,設(shè)燈組的編號為1-n,定義燈組相容矩陣h∈rn×n為n×n的0-1矩陣:
其中,
最終可得
且由相容關(guān)系的對稱性可知,燈組相容矩陣h為對稱陣;
所述燈組沖突值矩陣ω具體為:
建立燈組沖突值矩陣ω,設(shè)燈組編號1~n,定義交叉口的燈組沖突值矩陣ω∈rn×n為n×n的矩陣
其中ωij∈[0,1),為燈組i,j同時放行產(chǎn)生的沖突值,范圍在[0,1)中
由沖突值關(guān)系的對稱性可知,燈組沖突值矩陣ω也是一個對稱陣。
s142、利用合流沖突原則,以及根據(jù)現(xiàn)場情況人為判斷,修正燈組相容矩陣h;
s143、由修正后的燈組相容矩陣h得到燈組相容關(guān)系圖gh,計算相容關(guān)系圖的所有團,得到原始相位集合矩陣a0;
s144、計算原始矩陣a0每一列的沖突值ωj,剔除冗余相位的列;
s145、利用合流沖突原則,在a0中剔除燈組兩兩相容但不是相互相容的相位列,最后得到備選相位矩陣a。
s2、當(dāng)燈組相容關(guān)系圖gh確定后,輸入目標(biāo)相位數(shù),保證在一個相位周期cp內(nèi),每個燈組至少出現(xiàn)一次,所述相位周期cp是指從備選相位矩陣中選出的若干相位組成的相位周期;
所述目標(biāo)相位數(shù)是通過下述方法確定的:
將相位數(shù)范圍的問題轉(zhuǎn)化為圖論中的色數(shù)問題,通過得到的一個燈組的相容關(guān)系圖gh,以及相容關(guān)系圖gh的補圖
s3、建立考慮沖突因素的各車道流量、車頭時距、人行過街長度的相位設(shè)計模型,本發(fā)明采用水桶原理來設(shè)計相位模型:
如圖4所示,考慮以下一個理想的水桶模型:有m個水桶并排放著,編號為1到m。每個水桶都足夠高,不用考慮水是否會溢出。每個水桶的上方均有水以勻速qj注入桶內(nèi),可以讓密閉的桶內(nèi)水平線勻速上升。桶底有一個漏水的開關(guān)閥,打開閥門后,需要等待啟動時間lj,桶內(nèi)的水立刻以勻速sj流出。sj>qj。非負(fù)且不全為0。
初始狀態(tài)各個水桶均空,并準(zhǔn)備有水開始注入。你需要依次打開桶的閥門讓水排出。每次你只能打開一個桶。并且要求每次打開閥門,一定要把水排空,排空后要求立刻關(guān)上并開啟下一桶的閥門。當(dāng)關(guān)上最后一個桶的閥門時再次打開第一個桶的閥門。不失一般性,假定l1不為0。每個桶的閥門打開與上一次打開的時間間隔稱為周期c。若干個周期后,整個系統(tǒng)會收斂到一個穩(wěn)定狀態(tài),c會收斂到一個穩(wěn)定值,記為c0。在這個周期,所有桶的水都依次剛好放完。沒有剩余也沒有空放,并且周而復(fù)始。
在一個時間間隔c0內(nèi),一個桶會積累qjc0的水,這些水排出需要的時間為qjc0/sj及啟動時間lj,記yj=qj/sj,如果各個桶都剛好放完,沒有剩余或空放,c0滿足:
記
此為韋伯斯特的最小周期公式。q、s、l對應(yīng)每個相位的關(guān)鍵車流量、飽和流量、損失時間。c0描述的狀態(tài)是在穩(wěn)態(tài)(q均勻到達)的假設(shè)下,各個相位剛好放完車流且沒有空放。注意,如果把人行專用相位時間全部看成相位的損失時間的話,以上公式同樣適用。
因為相位其實燈組集合組成,燈組才是包含車道和人行的對象??砂裶、s、y、l的概念從傳統(tǒng)的相位級別推廣到燈組級別。并有上面水桶模型作為啟發(fā),把一個水桶(相位)看成一堆小水桶(燈組)的物理參數(shù)q、s、y、l由其中的關(guān)鍵小水桶控制。相位設(shè)計的模型可描述成在系統(tǒng)達到滿足每個燈組的放行需求,并盡量少空放的均衡狀態(tài)下,包含沖突因子下的總周期最小。這樣則可繞過相位周期c和放行需求fi相互依賴的問題,并將c作為變量之一加入到模型中。
假設(shè)已知各個
以及各個燈組的yp值:
由此可得備選相位矩陣a中,每個備選相位的人行需求時間,記為
每個燈組,都有對應(yīng)的損失時間li,當(dāng)為人行過街燈組
整個周期內(nèi)滿足每個燈組的人行需求:
把一個燈組看成一個水桶,根據(jù)水桶模型的原理,可知所有含燈組i的備選相位的時間和,應(yīng)該滿足:
其中
依然取dj為0-1變量,λj=180,由于每個含人行燈組的相位時間tj必須滿足該相位的人行需求時間
確定目標(biāo)相位數(shù):
記
s.tat≥yp
(a-ay)t≥l
其中,dj是0-1變量,tj為非負(fù)整數(shù),λj=180,j=1,2,......m。
本實施例中,推薦使用mosek求解出相位周期cp,求解得到的
上述實施例為本發(fā)明較佳的實施方式,但本發(fā)明的實施方式并不受上述實施例的限制,其他的任何未背離本發(fā)明的精神實質(zhì)與原理下所作的改變、修飾、替代、組合、簡化,均應(yīng)為等效的置換方式,都包含在本發(fā)明的保護范圍之內(nèi)。