b Video Image of 3D-TL Layout
Local controller functions:
The image analysis with the congestion detection on specially designated approach and exit regions are performed in step (206) The microprocessor also contains a traffic light optimization unit (207) with software algorithm for optimization of current cycles, green times on each direction, recommended travel speeds etc. A local database stores current optimization data and said video image analysis. The microprocessor has an on-line two-way communication link to the central server (208) to enable real time traffic data transmission to central server and control timing data of at least one or more local TL controllers. Local server receives modified cycle lengths, green time starts and recommended speeds computed and adjusted by 2nd stage server network optimization. The local traffic controller may also include separate radio transmitter and receiver (214) for transmitting traffic control data to and from vehicles equipped with similar two-way transmitters.
The central traffic control server (208) has a remote control link to at least one local traffic light comprising a system and method for central network traffic control optimization and coordination module for a two-level network traffic light optimization (209). The traffic control server module computes and adjusts green time group start-times, green-waves and recommended speeds on TLs in the network and sends out data packs to individual TL controllers (202) as required by coordinated traffic control. The traffic server is logically connected to on-line traffic navigation and client guidance system (210) which comprises means for updating client on-vehicle traffic navigation unit-databases (211) with recommended speeds, cycle durations, green waves and other live traffic data. The traffic server system also comprises communication means such as landlines or web links for updating the said navigation data to roadside traffic monitors (212) and other traffic advisory display systems (213). The control server module can also send out live travel data packs via local radio transmissions (214) to radio connected on-vehicle navigation units.
The main emphasis in the present invention is on dynamic vehicle congestion processing on all TL approach and exit directions. Ignoring the congestion loads after TL in heavy congested traffic will often result in “jam” congestion increase, adding more vehicles onto already saturated exit lanes. While other systems use vehicle loads on “stop lines” on lanes before the TLs, the present system performs traffic congestion analysis on all approaches before and after TLs for currently optimal green times.
Other standard traffic surveillance data inputs from roadside counters and statistical tables may be also included in the computations.
Live traffic data streaming from TL traffic cameras are stored locally on controller database. Compressed bitmap images from video and digital cameras are collected in short time sequences, i.e. one image/sec for near real time processing locally and are also stored on central server database including Geographical Information System (GIS) reference data such as local coordinates, time, etc. All cameras have average recording range of 150-200 meters and are located on central location typically above the TL intersection according to operator specifications. In the preferred embodiment the use of inexpensive digital cameras or single 360 degree panorama cameras may result in significant cost reduction in the overall system. The operator calibrates camera views for each travel direction to enable full surveillance of the entire intersection. Additional cameras may be added if necessary due to intersection topography. Monitoring of all cameras and their performance is from remote central traffic location or locally as required. All processing is in real time with direct output to each TL controller.
Traffic data collection in large urban areas is also made possible via remote airborne cameras and high resolution satellite radars such as synthetic aperture radar (SAR) and inverse synthetic aperture radar (ISAR). The system uses adaptation of the image brightness analysis to compute vehicle congestion on larger traffic areas covering 10-15 km radius simultaneously.
In this embodiment we present single TL and traffic camera configuration for local vehicle loading computations. On the larger urban scale the loading computations are done on a plurality of TLs at the same time.
In the system initiation stage the operator configures TL intersection using standard input interface. The operator selects appropriate geometrical layout from various intersection templates such as 2-way, 3-way, 4-way etc. and assigns allowable speeds for all road sections. The operator also assigns vehicle groups that will move during the same green time interval. Groups are designated here as Gr1, Gr2, Gr3 and Gr4 and will represent vehicle queues on individual lanes and their travel directions of the TL.
All camera views are designated by CAM ID number, camera height, azimuth and angle. Recommended heights range between 10-15 meters for unobstructed views of queues of 150-200 meter lengths.
Using TL layout interface allows the operator simple means of data entry as well as uniform system of intersection designation. The
b shows an existing TL camera view of with a 3D layout template. Lanes L1,L2,L3 and L4 designate approach lanes before TL and exit ways W1,W2,W3 and W4 after TL as defined by the operator in the TL configuration stage. Several views may be combined to provide full coverage of an existing intersection.
This module uses image sequences from a TL video camera views to measure traffic congestion by means of image brightness heterogeneity (IBH).
The main objective of the brightness heterogeneity analysis method is to define pixel brightness variance of an image pixel strings inside the user-designated boundary polygon regions. In this analysis the regions represent approach lanes or exit ways of the intersection and are selected by the operator to asses the current traffic congestion in these areas. The amount of traffic congestion on the TL approach lane can be expressed as a degree of pixel brightness variance (heterogeneity) in the image relative to the last learning calibration period (say 15-minutes) and the minimum “learning” value obtained in that period, which the system now sets as its current “empty” or “zero” congestion level for the given region.
The color image is comprised of number of pixel-strings in the horizontal and vertical array i, j. In this patent, we define a single pixel string as a contiguous sequence of pixels in one row or one column, where the difference between the initial pixel brightness value B and each internal pixel brightness B-value does not exceed the preset tolerance level (TOL). The image brightness heterogeneity (IBH) may be defined as a sum of all pixel strings whose B-values exceeded pre-set TOL value. Experimentally we found that TOL=30 variance between two pixel strings gives the closest approximation of significant variance in the image heterogeneity for estimating traffic congestion changes.
While the color images may be also defined by their color hue H and color saturation S, besides the color brightness B, (HBS) in this invention only the pixel brightness B coefficient is used for image analysis resulting in simplified computing process.
Note: In all color images the pixel B coefficient ranges between values 0≦B≦255.
The higher value of B indicates higher presence of cars. For example B value 4 may signify 1 car count, value 8 two cars etc. In this manner the operator can visually update car count template determining car multiplier value for car counts for current period T. The image parameters are re-evaluated periodically and car multiplier value re-adjusted as necessary. Factors such as time of day, weather and lighting conditions may influence car count results and the system updates the present car count template from previous rolling history values. To compute the car count in the current image for camera view CAM 1 the system first calculates current brightness coefficient value B, obtains last car multiplier factor and estimates current car count accordingly.
The input module routine verifies the available lists of TL intersections included in the network optimization and examines approach lanes and exit ways on each link, their main group directions and group designations. All available TL camera views and their configurations are also examined by this routine. The operator sets maximum waiting time parameter for each green light including crossing times for pedestrians as necessary, and the maximum allowable speeds for each road link.
C
Max=minjWtjMax+maxjGjMin,j=1,2, . . . ,NDir
B
i
B,Max=maxtBiB,t, BjA,Max=maxtBjA,t,
B
i
B,Min=mintBiB,t, BjA,Min=mintBjA,t,i,j=1,2, . . . ,NDir.
B
i
B,Var
=B
i
B,Max
−B
i
B,Min
B
j
A,Var
=B
j
A,Max
−B
j
A,Min
D
i
B=1−(BiB,Cur−BiB,Min)/BiB,Var
D
i
A=1−(BjA,Cur−BjA,Min)/BjA,Var
G
j
≧G min, j=1, . . . ,12
G
j
≦G
j
max
=T
j
Wait
+T
j
Go.
C
Cur
=C
Max
·B
Cur
/B
TL
Q
i
L
=C
i
B
L
car
c and QjL=CjALcarc
C
J
B=20,Lcar=3,c=1.5,V=10 m/s,Δt=0.5 sec
G
j≦20*(3*1.5*2/10+0.5)=20*1.4=28 sec then:
The purpose of 2nd stage optimization is to compute optimal green wave network coordination of start times of sequential green lights of groups of oversaturated TL intersections subject to green wave and recommended speed constraints. Current optimal green light times and cycles from linear optimization in 1st stage are used as input constraints in the next stage coordination. The multiobjective paradigm is defined as simultaneous optimization of several, often conflicting, design objectives such as adjustments of allocation of green times control variables computed for TLi in 1st optimization stage.
where Ci,jB is number of vehicles on direction Dirj before TLi from 1st stage optimization
The control variables in this problem include Vi,jnext and additional variables that do not enter explicitly into the objective function (have zero coefficients).
Vi,jnext is recommended speed on direction Dirj after TLi.
The additional control variables are as follows:
ti,j is start time of next group of green light for Dirj at TLi;
ti,jnext is start time of current group of green light TLnext after TLi in direction that continues Dirj;
ti,jNextnext is start time of next group of TLnext after TLi;
χi,j is binary: 0 means current cycle, 1—next one;
Gi,j are control variables for green times approximately computed for TLi in 1st optimization stage. They could receive corrected values at the 2nd stage of optimization;
δi,j are nonnegative control variables that relate two stages of the optimization.
The objective function above is maximized subject to the following constraints:
t
i,j
+d
i,j
/V
i,j
next
>t
i,j
next+Cycleiχi,j;
t
i,j
+d
i,j
/V
i,j
next
>t
i,jNext
next+Cycleiχi,j;
G
i,j+δi,j>ti,jNext−ti,j>Gi,j−δi,j,
min{Gi,j−Gmin,ν·Gmin}≧δi,j≧0
t
i,jLast
+G
i,jLast
−t
i,jInit
=C
Cur,
Vi,jReal≦Vi,jAllowable
Vi,jnext,Real>Vi,jnext>0
This model is not linear due to Vi,jnext, di,j/Vi,jnext; however, if in the objective function we replace Vi,jnext by 1/Vi,jnext and maximize the objective function instead of minimizing it, the model becomes linear although it includes binary control variables.
Note: the above mathematical problem is mixed linear and can be solved by standard optimization tools such as LINDO or SOLVER of MS Excel.
Individual intersections in oversaturated networks almost invariably create additional traffic loads and vehicle congestion in certain directions. By definition, the optimizations of individual green lights works best with local control systems and these often fail to distribute vehicle loads towards more accessible TLs. As a result, some directions become more saturated, creating additional congestion loads on next traffic lights. In order to avoid accumulation of vehicle loads in specific traffic zones the system uses 2nd stage optimization of traffic lights. In this stage it is essential to synchronize green times of a plurality of TL intersections in optimized sequences resulting in green wave preference to less congested directions. The proposed green wave function uses recommended speeds to drivers as means to increase or decrease traveling speeds in certain directions resulting in more green time in these directions while taking into consideration traffic demands on these directions.
In contrast to prior art, the green wave function in this embodiment is highly adaptive and not fixed in specific or preferred direction.
The proposed green wave coordination system will also result in redirecting traffic to less saturated directions as required. This process includes on-line driver-navigation systems and the fastest routes computations. Live traffic information network server updates driver's on-board vehicle navigation units and net-provided traffic guidance systems with recommended speeds on all local links and updates all green light changes in the path of travel.
We consider the problem of constructing a method for finding the fastest route for a vehicle to travel between two points on a map. A map may represent a city, a group of cities, a whole county, etc. The route means a chain of road links usually between road intersections. A road link contains a directed road segment and a turn-off or a go-through segment. The fastest route implies taking into account changing traffic conditions that might include traffic lights, slowdowns, traffic jams, road closures, atmospheric conditions, etc. If we also have additional information, say, traffic light timing, that could be used in finding the fastest route.
Traditionally, optimal route search has been performed by an A* algorithm or its modification. In the present invention, we are using a route guidance method that uses novel time-dependent modifications of an A*-type algorithm in conjunction with a Navigation Travel Time Database. This Travel Time Database includes statistical travel time data, current travel time data, and predicted travel times. Our modifications of an A*-type algorithm also rely on various additional preprocessed data stored in databases, in particular graphs of the region partitioned into subgraphs or cells, intercell distances, intracell distances, lists of reference points, precalculated routes from reference points to selected points on the map and vice versa, etc. Input and output data for this problem are as follows.
Input: Static Data: Region map, coordinate info, distance info, turns info, lane info, additional data.
Dynamic Data: Limit speed info, Lane closure info, Table of statistical travel times, Table of current travel times for road links in the vicinity of the current vehicle position and Tables of travel times produced by various prediction methods.
Output: Optimal route on the map and a corresponding sequence of instructions to the driver.
The control part of the problem may be divided into 5 parts or 5 algorithms. The algorithms 3 and 4 deal directly with fastest route search and are described in detail below. The algorithms 1, 2 and 5 relate to data conversion problems known in the literature and there is no need to expand and explain them in detail. They are however necessary for constructing a data framework for searches route.
We assume that a dynamic transportation network can be represented by a space-time graph TG which is a directed graph having a set of nodes (road intersections and endpoints) N and a set of edges (arcs) A. N={(ni,loci),i=1, . . . ,m} where ni is a node, and loci is its location. A={(linkij,lij,Tij),i,j=1, . . . ,m} Where linkij is a link connecting nodes ni and nj, lij is the length (travel distance) of linkij, Tij is the time structure that provides a travel time along linkij as a function of leaving time ti at node ni. We will often denote nodes simply by i, j, s, etc.
For each node i, we have the set of successors S(i)={j:∀jεS(i),link(i,j)εA} and the set of predecessors P(i)={j:∀jεP(i),link(j,i)εA}. For specifying a fastest route problem, we have to have a start nodes, a destination node d, and a leaving time ts at start nodes.
After receiving each route request, the system checks availability and relevance (timeliness) of the second part: those elements of it that are recent and relevant are used for modifying the first part and for producing the third part which will be used in actual computations. To summarize all the sources available for getting estimates of actual travel times for all or some road links we will use a generic functional notation dij(ti)=arrival_time(linkij,ti) where linkij is a link of interest, ti is the time of leaving node i, and dij is the earliest arrival time to node j when leaving node ni at time ti and traveling along a link linkij.
Let gi(ts) be an estimate of earliest arrival time to node i when leaving the start node s at time ts, and hi=hi(gi) an estimate of the earliest arrival time to the destination node d when leaving the node i at time gi. Also let fi=hi(gi(ts)) be an estimate of the earliest arrival time to the destination node d when leaving the start node s at time ts, then going to node i, leaving the node i at time gi(ts) and from there going to node d.
Let OPEN be the set of nodes opened by an A*-type algorithm at any given moment, and CLOSED is the set of nodes closed at any given moment. Note that gi=gi(ts), and fi=hi(gi(ts)) have already been computed for all nodes on OPEN and CLOSED. Each node i is a structure (ts,gi,fi,BPi) where gi=gi(ts) and fi=hi(gi(ts)) are as defined above, and BPi is a pointer from node i back to a predecessor of i. The lists (priority queues) OPEN and CLOSED are ordered increasing in fi.
A solution for a problem is a chain of nodes (ni,ti,FPi) for i=1, . . . ,q where ni=s, nq=d, and FPi−1=ni for i≧2, a list of travel times: g1(ts)=gs(ts)=ts, g2(ts), . . . , gq(ts)=gd(ts), and the total travel time is gd(ts).
Input: Graph TG, Start node s, Destination node d, Arrival time function g, Estimation function h.
Output: Solution chain {ni} with ni=s and nq=d, List of travel times.
Let ta denote an earliest arrival time to the destination node d leaving i at time gi. To keep Algorithm TA* admissible, function h has to be a lower bound estimate of that earliest arrival time ta. If Δta is the shortest time interval needed to arrive from node i to destination d leaving i at time g1, then ta=gi+Δta. Provided we have a lower bound estimator on Δta, say, Δ{hacek over (t)}a, we can use as hi the quantity hi=gi+Δ{hacek over (t)}a.
Let r be the length of a possible travel route from node i to destination node d, and v a corresponding (hypothetical) travel speed. Denoting a lower bound estimator of r by {hacek over (r)}, and an upper bound estimator of v by {circumflex over (v)}, we can write a lower bound estimator Δ{hacek over (t)}a as Δ{hacek over (t)}a={hacek over (r)}/{circumflex over (v)}. To proceed, we need a means to obtain a pair of estimators {hacek over (r)} and {circumflex over (v)}.
For our purposes, preprocessing consists in precomputing various quantities related to TG graph and storing them in a database in such a way that they could be retrieved by standard queries at any moment.
A graph can be partitioned into a set of subgraphs also called cells or fragments. Cells are usually made of highly connected regions of the road network. Each node of the graph belongs to exactly one cell. Cell is a subgraph such that an edge connecting two nodes is in a cell if a link connecting the two nodes is in the original graph. A node is a boundary node if it belongs to more than one cell. All other nodes are internal nodes. A cell boundary is the set of all boundary nodes of the cell. The edges that connect nodes in different cells are called boundary edges.
Assume that the following quantities have been pre-computed and stored (
If two nodes n1 and n2 are in different cells C1 and C2, then a lower estimate of travel route between them may be calculated as L12=S1+S12+S2 where S1 is the minimum travel path distance from n1 to the boundary of C1, S12 is the minimum travel path distance between boundaries of the cells C1 and C2, S2 is the minimum travel path distance from n2 to the boundary of C2. If the nodes n1 and n2 are in a common cell, then either a precalculated distance may be used if it has been stored, or an Euclidean distance as indicated above.
By speed we mean average speed at a given link; it may not correspond to an actual vehicle speed but is useful in computations. Not that under the selected setup, the database stores travel times rather than average speeds. For finding a maximum speed in the whole database, all travel distances are divided by their stores travel times.
Maximum speed estimators may be obtained as follows.
2A. Calculate maximum speed over a DB subset defined by a predicate like Day Type, or city speed limit.
2B. Calculate maximum speed over a DB subset defined by a time window [ti,ti+Δt] where ti is the current time and Δt has to be determined. The period Δt should be such that (ti+Δt) is a guaranteed arrival time to the destination d. In other words, we have to find an upper bound Δ{circumflex over (t)} on Δt.
One way of obtaining an upper bound Δ{circumflex over (t)} is as follows. Suppose, we know a travel route from the node i to the destination d. Then departing from the node i at time ti, we can easily compute the arrival time t* to destination d by traveling along that route, and take (t*−ti) as an upper bound Δ{circumflex over (t)}. To be able to use a travel route from the node i to the destination d, we need some precalculated quantities.
Assume that the following quantities have been precalculated and stored (
Let M={m1, . . . ,mK} be those points. Now we can obtain a travel route from the start s to the destination d by taking a shortest travel route among the K stored routes from the start s to mi and then from mi to d.
Input: Distances between all nodes and boundaries of their cells, shortest travel routes from any node to all selected points, and shortest travel routes from all selected points to all nodes.
Output: Value of h(i,ti)
= max ν over the time window [ti,ti + Δ ] .
As noted in prior art, the problem of providing optimal routes to drivers in real time using concurrent road network conditions is a difficult problem. It involves among other things processing and combining data from various sources, managing huge databases, maintaining and updating dynamic models of saturated networks, making short time predictions of traffic times, and optimal paths calculations in large graphs. Dynamic traffic navigation system in the present invention provides fastest routes by applying novel dynamic time-dependent versions of shortest path searching techniques for the system database. These include statistical travel time tables, current travel times and short time predicted travel times. To make searches fast and effective, the present invention relies on preprocessed information prepared and stored routinely in central network databases, and in particular, graphs of the regions partitioned into subgraphs or cells (mathematical presentation of regional road networks), intercell distances, intracell distances, lists of reference points, and precalculated routes from reference points to selected points on the map and vice versa.
Main objective of short travel time prediction module is to provide live and predictive traffic guidance for short to intermediate trip durations in congested traffic. It is designed to provide optimal departure time, total travel length and duration times in preplanning stages and on route optimal guidance to plurality of drivers and their navigation units throughout their entire trip.
In the preferred embodiment the on-line navigation server sends dynamic traffic data packets to large number of vehicle navigation units simultaneously via multiple broadcasts. Clients obtain dynamic recommended travel time tables and green times in their vehicle units for live fastest route searches and live traffic guidance.
Accurate predictions of travel times in saturated networks are in most cases very complex, involving many random traffic events. In practice, statistic or historic travel time tables are often inadequate in predicting dynamic nature of traffic loads and their influence on travel times in the network. Time-dependent predictions for specific destinations must therefore include estimation models that will take into account the changing conditions and adjust current, predicted and historical travel times accordingly. The main purpose of short to intermediate travel time predictive model is to develop a bridge between current traffic data from the traffic control server and historical statistical data used in on vehicle navigation units.
This function creates a dynamic rolling saturation register log for each TL link based on statistical time of day. Short term prediction tables have a limit of 60 minutes rolling horizon with a continuous updates every 5 minutes. The logs are stored on the central database and can be used also in updating the statistical daily data.
TT
ij
Est=min(TTijStDLij(DL
Next steps show the method in central server of simultaneous broadcasting current and estimated travel time tables to plurality of vehicle units on-line. In order to save storage space, the server coordinates the table updates according to x,y,z location of requesting vehicle. In
The vehicle navigation units dynamically recalculate current travel path TPCur and modify fastest travel routes by processing additional traffic guidance data from on-line navigation system data updates. Since all recommended speeds and directional traffic movements are monitored and updated on all links, the central server sends out live broadcasts of current traffic data to plurality of vehicle units in real time, and thus re-routing plurality of vehicles away from congested intersections.
Other methods of live traffic navigation updates are also available: local TL green times and recommended speeds are broadcasted to all passing vehicles within the local transmission range equipped with suitable antenna receivers and on-board navigation units. Current location information can also be updated at any number of on-line connected roadside displays along the travel path. Drivers stay updated by following traffic monitors advisory messages and recommended travel speeds to clear approaching traffic lights, green wave recommendations, and alternate routes, changing traffic conditions, traffic jams, road closures and atmospheric conditions reports.
As explained above, the overall performance of optimized traffic control in saturated networks depends on live traffic data collection and traffic congestion processing on plurality of saturated intersections in real time. The proposed patent presents basic methods of individual traffic light camera processing and image analysis for local and central traffic network optimization and green way coordination.
In this embodiment we use high resolution airborne thermal imaging cameras and satellite surveillance radar images such as synthetic aperture radar (SAR) and the inverse synthetic aperture radar (ISAR). The remote sensors are used for larger scale vehicle volume and congestion analysis. Sensor radar images from orbiting satellites provide traffic images for large urban areas and are more suitable for live network traffic monitoring. The streaming data from single, fixed radar source such ISAR provides traffic data images for large urban zones in extent of 10-30 km. The SAR or ISAR imaging while requiring specific software for data interpretation does not differ substantially from pixel images provided by other sources and are therefore suitable for brightness analysis in much the same fashion as presented above. In the infrared thermal imaging the reverse polarity (black=hot) images makes the brightness analysis even more straightforward. The plurality of intersections are designated and processed by the system according to traffic templates with operator-set parameters and are combined together with GIS road layer system and database.
The operator further designates approach lane and relevant exit regions on each intersection as described before.
The relevant series of SAR images are superimposed over GIS template coordinates and specific mathematical compensation is applied for vehicle/satellite movement corrections. Resulting vehicle congestion on plurality of traffic lights is mapped and computed in the central server in nearly real time.
According to this invention it is not necessary to generate detailed identification of individual vehicles as in prior art. User applies designated intersection template over radar or infrared images and much of the non relevant information is automatically filtered out. Computing congestion on specific approach and exit regions with short-time high and low peek-traffic calibrations significantly reduces processing time generally required for radar image and object interpretation.
Comparing several radar images from one location and using local traffic templates the processor computes relevant absolute pixel brightness variance of the images and estimates relevant vehicle parameters such as vehicle loading and general direction of vehicle travel.
Stationary radar configurations such as ISAR are better adapted for moving object detection such as road vehicles and are also suitable for showing number of vehicle travel-directions simultaneously.
The main advantage of remote traffic monitoring and road sensing systems is in that the ISAR, airborne thermal infrared cameras and to a certain extent SAR images provide live traffic data for wide urban areas simultaneously and are not affected by local weather and ground conditions. These systems also allow continuous 24-hour traffic coverage allowing full monitoring of night traffic as well.
Another advantage of the ISAR/SAR image analysis is that it can be executed in the central traffic processor in near real time. The proposed method of satellite image processing therefore significantly reduces overall costs related to traffic data collection and gathering, reliably replacing traditional data collection means from plurality of road sensors and other video or radar traffic surveillance systems.