The present disclosure relates to road network congestion, and more particularly to a computer using floating vehicle data for identifying, tracking, and predicting road network congestion to mitigate the same.
Automotive manufacturers and transportation agencies are continuously investigating systems that mitigate road congestion associated with urbanization trends. These trends can result in commensurate losses in productivity, wasted energy, and increased vehicle emissions. Transportation agencies currently implement sparsely deployed surveillance systems, such as traffic cameras and inductive loop detectors embedded in road surfaces. However, these surveillance systems can be costly, difficult to maintain, ineffective at tracking highly dynamic road conditions, limited in coverage and/or vulnerable to missing data. Other systems implement smartphones and associated smartphone applications, e.g., WAZE or Google Maps, for detecting roadway geometries and estimating vehicular behaviors, including speeds. However, these smartphones can inaccurately detect the position of the smartphone at a lane-level. In addition, some smartphone applications may not be capable of detecting road events, e.g., vehicle collisions.
Thus, while existing systems for mitigating road congestion may achieve their intended purpose, there is a need for a new and improved system that directly uses vehicle data to help address these issues.
According to several aspects of the present disclosure, a system is provided for mitigating road network congestion. The system includes a plurality of motor vehicles, with each of the motor vehicles having a telematics control unit (TCU). The TCU generates one or more location signals for a location of the associated motor vehicle and one or more event signals for an event related to the associated motor vehicle. The system further includes a display device and a computer, which communicates with the display device and the TCU of the associated motor vehicles. The computer includes one or more processors receiving the location signal and/or the event signal from the TCU of the associated motor vehicles. The computer further includes a non-transitory computer readable storage medium (CRM) including instructions, such that the processor is programmed to identify a location of the road network congestion at a current time step, based on the location signal and/or the event signal. The processor is further programmed to track the road network congestion, based on the location signal and/or the event signal. The processor is further programmed to predict the road network congestion at a next time step, based on the location signal and/or the event signal. The processor is further programmed to generate a notification signal associated with the road network congestion, such that the display device displays the road network congestion in response to the display device receiving the notification signal from the processor.
In one aspect, the processor is programmed to identify the location of the road network congestion by identifying a road edge congestion condition and a road intersection congestion condition for the associated motor vehicles, based on the location signal and/or the event signal. The processor is further programmed to identify the location of the road network congestion by determining a congested region aggregation, based on the road edge congestion condition and the road intersection congestion condition.
In another aspect, the processor is further programmed to determine the congested road aggregation by aggregating a congested intersection and a congested edge that are connected to one another into a first subgraph. The processor is further programmed to aggregate two congested edges that are connected to one another into a second subgraph. The processor is further programmed to merge the first and second subgraphs, delete one or more non-congested edges, delete one or more non-congested intersections, determine a congestion type, and determine a congestion level.
In another aspect, the processor is programmed to track and predict a propagation of the road network congestion in a temporal and spatial domain, based on a Spatio-Temporal Discrete Markovian Process.
In another aspect, the processor is programmed to use the Partial Differential Equation (PDE) according to:
where x(t) is a spatio-temporal regional congestion state at a time step t; where xB is a congestion state at a boundary condition; and where F and HB are a PDE diffusion matrix associated with a neighbor geographic impact.
According to several aspects of the present disclosure, a computer is provided for a system including a plurality of motor vehicles. Each of the motor vehicles includes a telematics control unit (TCU) for generating one or more location signals for a location of the associated motor vehicle and one or more event signals for an event related to the associated motor vehicle. The computer includes one or more processors for receiving the location signal and/or the event signal from the TCU of the associated motor vehicles. The computer further includes a non-transitory computer readable storage medium (CRM) including instructions, such that the processor is programmed to identify a location of the road network congestion at a current time step, based on the location signal and/or the event signal. The processor is further programmed to track the road network congestion, based on the location signal and/or the event signal. The processor is further programmed to predict the road network congestion at a next time step, based on the location signal and/or the event signal. The processor is further programmed to generate a notification signal associated with the road network congestion, such that a display device displays the road network congestion, in response to the display device receiving the notification signal from the processor.
In one aspect, the processor is programmed to identify the location of the road network congestion by identifying a road edge congestion condition and a road intersection congestion condition, based on the location signal and/or the event signal. The processor is further programmed to identify the location of the road network congestion by determining a congested region aggregation, based on the road edge congestion condition and the road intersection congestion condition.
In another aspect, the processor is further programmed to identify the road edge congestion condition by determining a Probability Density Function pdf(v), based on a plurality of speeds of the motor vehicles traveling on the associated road edge.
In another aspect, the processor is further programmed to identify the road edge congestion condition by selecting a predetermined statistical metric h(pdf(v)), based on the Probability Density Function pdf(v) as an indicator of a congestion level for the associated road edge.
In another aspect, the processor is further programmed to identify the road edge congestion condition by determining a reference non-congestion speed value g(v) for the associated road edge.
In another aspect, the processor is further programmed to identify the road edge congestion condition by conducting a statistical regression test R between the predetermined statistical metric h(pdf(v)) and the reference non-congestion speed value g(v) as an estimated congestion value.
In another aspect, the processor is programmed to identify the road intersection congestion condition, based on a control delay, an average approach travel time for the associated road intersection, a travel time for an associated motor vehicle across an approach to the associated road intersection, a free-flow travel time for the approach, a count of all vehicles captured within a time interval along the approach, and a set of all approaches at the road intersection.
In another aspect, the processor is further programmed to determine the congested road aggregation by aggregating a congested intersection and a congested edge that are connected to one another into a first subgraph. The processor is further programmed to aggregate two congested edges that are connected to one another into a second subgraph. The processor is further programmed to merge the first and second subgraphs and delete one or more non-congested edges and one or more non-congested intersections. The processor is further programmed to determine a congestion type and a congestion level.
In another aspect, the processor is programmed to track and predict a propagation of the road network congestion in a temporal and spatial domain, based on a Spatio-Temporal Discrete Markovian Process.
In another aspect, the processor is programmed to use the Partial Differential Equation (PDE) according to:
where x(t) is a spatio-temporal regional congestion state at a time step t; where xB is a congestion state at a boundary condition; and where F and HB are a PDE diffusion matrix associated with a neighbor geographic impact.
According to several aspects of the present disclosure, a process is provided for operating a computer of a system to mitigate a road network congestion. The system includes a display device and a plurality of motor vehicles, and each of the motor vehicles includes a telematics control unit (TCU). The computer includes one or more processors and a non-transitory computer readable storage medium (CRM) including instructions. The process includes generating, using the TCU of the associated motor vehicles, one or more location signals for a location of the associated motor vehicles and one or more event signals for an event related to the associated motor vehicles. The process further includes identifying, using the processor, a location of the road network congestion at a current time step, based on the location signal and/or the event signal. The process further includes tracking, using the processor, the road network congestion, based on the location signal and/or the event signal. The process further includes predicting, using the processor, the road network congestion at a next time step, based on the location signal and/or the event signal. The process further includes generating, using the processor, a notification signal associated with the road network congestion. The process further includes displaying, using the display device, the road network congestion in response to the display device receiving the notification signal from the processor.
In one aspect, the process further includes identifying, using the processor, a road edge congestion condition and a road intersection congestion condition for the associated motor vehicles, based on the location signal and/or the event signal. The process further includes identifying, using the processor, the location of the road network congestion by determining a congested region aggregation, based on the road edge congestion condition and the road intersection congestion condition.
In another aspect, the process further includes aggregating, using the processor, a congested intersection and a congested edge that are connected to one another into a first subgraph. The process further includes aggregating, using the processor, two congested edges that are connected to one another into a second subgraph. The process further includes merging, using the processor, the first and second subgraphs. The process further includes deleting, using the processor, one or more non-congested edges and one or more non-congested intersections. The process further includes determining, using the processor, a congestion type and a congestion level.
In another aspect, the process further includes tracking and predicting, using the processor, a propagation of the road network congestion in a temporal and spatial domain, based on a Spatio-Temporal Discrete Markovian Process.
In another aspect, the process further includes using, with the processor, the Partial Differential Equation (PDE) according to:
where x(t) is a spatio-temporal regional congestion state at a time step t; where xB is a congestion state at a boundary condition; and where F and HB are a PDE diffusion matrix associated with a neighbor geographic impact.
Further areas of applicability will become apparent from the description provided herein. It should be understood that the description and specific examples are intended for purposes of illustration only and are not intended to limit the scope of the present disclosure.
The drawings described herein are for illustration purposes only and are not intended to limit the scope of the present disclosure in any way.
The following description is merely exemplary in nature and is not intended to limit the present disclosure, application, or uses. Although the drawings represent examples, the drawings are not necessarily to scale and certain features may be exaggerated to better illustrate and explain a particular aspect of an illustrative example. Any one or more of these aspects can be used alone or in combination within one another. Further, the exemplary illustrations described herein are not intended to be exhaustive or otherwise limiting or restricting to the precise form and configuration shown in the drawings and disclosed in the following detailed description. Exemplary illustrations are described in detail by referring to the drawings as follows:
Referring to
In this non-limiting example, the system 100 includes a plurality of motor vehicles 102 travelling along associated road edges 104 and travelling through associated road intersections 106. As described in detail below, the system 100 can determine a congested intersection and a congested edge connected to one another form a first subgraph 108 with road congestion, and the system 100 can further determine two congested edges connected to one another form a second subgraph 110 with road congestion.
Referring to
As described in detail below, the system 100 can include a local road model with Peer-to-Peer (P2P) or edge computing that utilizes the TCU 112 of motor vehicles communicating with the TCU 112 of other motor vehicles 102. Edge computing is a distributed computing paradigm that brings computation and data storage closer to the sources of data to improve response times and save bandwidth. The system 100 can further include cloud computing with a global road model that utilizes a remote computer 128 or server. The computer 128 includes one or more processors 134 and a non-transitory computer readable storage medium 132 (“CRM”) including instructions, such that the processor 130 is programmed to receive the location signals and/or the event signals from the TCUs 112 of one or more motor vehicles 102. The processor 134 is further programmed to identify a location of the road network congestion at a current time step, based on the location signals and/or the event signals. The processor 134 is programmed to identify the location of the road network congestion by identifying a road edge congestion condition and a road intersection congestion condition. The processor 134 is further programmed to identify the location of the road network congestion by determining a congested region aggregation based on the road edge congestion condition and the road intersection congestion condition.
The processor 134 is further programmed to identify the road edge congestion condition by determining a Probability Density Function pdf(v) based on a plurality of speeds of the motor vehicles 102 traveling on the associated road edge 104. The processor 134 is further programmed to identify the road edge congestion condition by selecting a predetermined statistical metric h(pdf(v)) based on the Probability Density Function pdf(v) as an indicator of a congestion level of the associated road edge 104 at time (t,t + 1). The processor 134 is further programmed to identify the road edge congestion condition by determining a reference non-congestion speed value g(v) for the associated road edge. The processor 134 is further programmed to identify the road edge congestion condition by conducting a statistical regression test R (e.g., Logistic or Lasso regression) between the predetermined statistical metric h(pdf(v)) and the reference non-congestion speed value g(v) as an estimated congestion value Cong(i,t) according to:
For people who are skilled in this domain of technical practice, it should be understood that any variants of Eq0.1 or other approaches could be used to achieve the same objective.
The processor 134 is programmed to identify the road intersection congestion condition based on a control delay dk and an average approach travel time
where tti represents a travel time for an associated motor vehicle i across an approach j to the associated road intersection; where ffttj represents a free-flow travel time for the approach j; where n represents a count of all vehicles captured within a time interval t along the approach j; and where J is a set of all approaches at the road intersection. For people who are skilled in this domain of technical practice, it should be understood that any variants of Eq0.2 and Eq0.3 or other approaches could be used to achieve the same objective.
The processor 134 is further programmed to determine the congested road aggregation by aggregating a congested intersection and a congested edge that are connected to one another into a first subgraph. The processor 134 is further programmed to aggregate two congested edges that are connected to one another into a second subgraph. The processor 134 is further programmed to merge the first and second subgraphs. The processor 134 is further programmed to delete one or more non-congested edges and one or more non-congested intersections. The processor 134 is further programmed to determine a congestion type ct and a congestion level cl according to:
where ncs represents a number of congested subgraphs; wherein scs represents a size of congested subgraphs; wherein CE represents the congested edge; where OE represents the overall edge; where CV represents the congested vertex; and wherein OV represents the overall vertex. For people who are skilled in this domain of technical practice, it should be understood that any variants of Eq.4 and Eq.5 or other approaches could be used to achieve the same objective.
The processor 134 is programmed to track the road network congestion at a plurality of time steps, based on the location signals and/or the event signals. The processor 134 is programmed to predict the road network congestion at a next time step. More specifically, the processor 134 is programmed to track and predict a propagation of the road network congestion in a temporal and spatial domain based on a Three-Dimensional Spatio-Temporal Discrete Markovian Process (TS-DMP). The processor 134 uses the TS-DMP to model the congestion propagation in both temporal and spatial domain.
Referring to
The processor 134 is programmed to use a Partial Differential Equation (PDE) according to:
where x(t) is a spatio-temporal regional congestion state at a time step t; where xB is a congestion state at a boundary condition; and where F and HB are a PDE diffusion matrix associated with a neighbor geographic impact. For people who are skilled in this domain of technical practice, it should be understood that any variants of Eq0.6 or other approaches could be used to achieve the same objective.
In one non-limiting example, for 3-region areas and 2 boundary region areas, the PDE captures the TS-DMP according to:
Where (θ1, ...., θ9) are the elements in the PDE diffusion matrix function F, and (∝1, ..., ∝6) are the elements in the PDE diffusion matrix function HB in boundary region. For people who are skilled in this domain of technical practice, it should be understood that Eq0.7 is mere example how the Partial Differential Equation could be used for congestion prediction in a particular setup.
The processor 134 is programmed to generate a notification signal associated with the road network congestion during at least one of the time steps. The system further includes a display device 136 communicating with the processor 134, such that the display device 136 displays the road network congestion in response to the display device 136 receiving the notification signal from the processor 134. In one non-limiting example, the display device can be a display screen in the motor vehicle for informing the vehicle occupant of the road congestion, such that the occupant can drive the motor vehicle along an alternate route that does not have road congestion. In another non-limiting example, the display device can be a display screen in an autonomous vehicle for informing the vehicle occupant of the road congestion and indicating that the autonomous vehicle will be driven along the alternate route without the road congestion. In still another non-limiting example, the display device can be a monitor of a desktop computer utilized by a transportation agency for analyzing road congestion and modifying traffic control infrastructure to better manage city traffic. In still another example, the display device can be a screen on a mobile communication device, such as a smart phone.
Referring now to
At block 204, the process 200 further includes identifying, using the processor 134 (
More specifically, the process 200 includes aggregating, using the processor 134, a congested intersection 106 and a congested edge 104 that are connected to one another into the first subgraph 108. The process 200 further includes aggregating, using the processor 134, two congested edges 104 that are connected to one another into the second subgraph 110. The process 200 further includes merging, using the processor 134, the first and second subgraphs 108, 110. The process 200 further includes deleting, using the processor 134, one or more non-congested edge 104 and one or more non-congested intersection 106. The process 200 further includes determining, using the processor 134, the congestion type and the congestion level according to Equations 4 and 5 above.
At block 206, the process 200 further includes tracking, using the processor 134, the road network congestion at a plurality of time steps, based on the location signal and/or the event signal. The process 200 further includes tracking and predicting, using the processor 134, the propagation of the road network congestion in the temporal and spatial domain, based on the Spatio-Temporal Discrete Markovian Process. The process 200 includes using, with the processor 134, the Partial Differential Equation (PDE) according to Equations 6 and 7 above.
At block 208, the process 200 further includes predicting, using the processor 134, the road network congestion at a next time step, based on the location signal and/or the event signal.
At block 210, the process 200 further includes generating, using the processor 134, a notification signal associated with the road network congestion for at least one of the time steps.
At block 212, the process 200 further includes displaying, using the display device 136, the road network congestion, in response to the display device 136 receiving the notification signal from the processor 134.
Computers and computing devices generally include computer executable instructions, where the instructions may be executable by one or more computing devices such as those listed above. Computer executable instructions may be compiled or interpreted from computer programs created using a variety of programming languages and/or technologies, including, without limitation, and either alone or in combination, JAVA, C, C++, MATLAB, SIMUEDGE, STATEFLOW, VISUAL BASIC, JAVA SCRIPT, PERL, HTML, TENSORFLOW, PYTHON, PYTORCH, KERAS, etc. Some of these applications may be compiled and executed on a virtual machine, such as the JAVA virtual machine, the DALVIK virtual machine, or the like. In general, a processor (e.g., a microprocessor) receives instructions, e.g., from a memory, a computer readable medium, etc., and executes these instructions, thereby performing one or more processes, including one or more of the processes described herein. Such instructions and other data may be stored and transmitted using a variety of computer readable media. A file in a computing device is generally a collection of data stored on a computer readable medium, such as a storage medium, a random-access memory, etc.
The CRM (also referred to as a processor readable medium) participates in providing data (e.g., instructions) that may be read by a computer (e.g., by a processor of a computer). Such a medium may take many forms, including, but not limited to, non-volatile media and volatile media. Non-volatile media may include, for example, optical or magnetic disks and other persistent memory. Volatile media may include, for example, dynamic random-access memory (DRAM), which typically constitutes a main memory. Such instructions may be transmitted by one or more transmission media, including coaxial cables, copper wire and fiber optics, including the wires that comprise a system bus coupled to a processor of an ECU. Common forms of computer readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD ROM, DVD, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH EEPROM, any other memory chip or cartridge, or any other medium from which a computer can read.
In some examples, system elements may be implemented as computer readable instructions (e.g., software) on one or more computing devices, stored on computer readable media associated therewith (e.g., disks, memories, etc.). A computer program product may comprise such instructions stored on computer readable media for carrying out the functions described herein.
With regard to the media, processes, systems, methods, heuristics, etc. described herein, it should be understood that, although the steps of such processes, etc. have been described as occurring according to a certain ordered sequence, such processes may be practiced with the described steps performed in an order other than the order described herein. It further should be understood that certain steps may be performed simultaneously, that other steps may be added, or that certain steps described herein may be omitted. In other words, the descriptions of processes herein are provided for the purpose of illustrating certain embodiments and should in no way be construed so as to limit the claims.
Accordingly, it is to be understood that the above description is intended to be illustrative and not restrictive. Many embodiments and applications other than the examples provided would be apparent to those of skill in the art upon reading the above description. The scope of the invention should be determined, not with reference to the above description, but should instead be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled. It is anticipated and intended that future developments will occur in the arts discussed herein, and that the disclosed systems and methods will be incorporated into such future embodiments. In sum, it should be understood that the invention is capable of modification and variation and is limited only by the following claims.
All terms used in the claims are intended to be given their plain and ordinary meanings as understood by those skilled in the art unless an explicit indication to the contrary in made herein. In particular, use of the singular articles such as “a,” “the,” “said,” etc. should be read to recite one or more of the indicated elements unless a claim recites an explicit limitation to the contrary.