Traffic monitoring systems typically include infrastructure positioned near a roadway that monitors the number of vehicles passing a predefined portion of roadway. An indication of the level of traffic on the roadway is then transmitted to vehicles and/or personal devices that are interested in that traffic information. For roadways that include multiple lanes, the traffic level information is typically not lane-level information, but rather, is an indication of the level of traffic on all of the lanes. Other lane speed monitoring techniques that do not rely on infrastructure positioned near the roadway may use an average velocity from a range of vehicle-to-vehicle (V2V) equipped vehicles to determine traffic congestion levels. However, an average velocity measured using only data from the V2V equipped vehicles is not indicative of the level of traffic congestion in all situations. In particular, lane speed monitoring does not provide compensation for the lack of measurements in road segments with no V2V equipped vehicles and/or in road segments where vehicle data is not available. Relying on only a portion of the traffic agents (i.e., V2V equipped vehicles) impacts the accuracy of lane speed monitoring, especially for low penetration rate scenarios. More intuitive metrics quantifying traffic congestion are needed.
According to one aspect, a computer-implemented method for traffic state estimation of a road network is based on a plurality of vehicles including probe vehicles and non-probe vehicles. The probe vehicles and the non-probe vehicles are travelling on the road network. The method includes receiving probe vehicle data from the probe vehicles of the plurality of vehicles within a communication range of the host vehicle. The method also includes spatially associating the probe vehicle data to lane level cells of the road network. The method also includes identifying empty lane level cells of the road network where the probe vehicle data is unavailable. The method further includes calculating estimated non-probe vehicle data for the empty lane level cells based on the probe vehicle data. The method includes calculating a traffic density value for the road network based on the probe vehicle data and the estimated non-probe vehicle data, and providing the traffic density value to the host vehicle.
According to another aspect, a system for traffic state estimation of a road network includes a host vehicle travelling along the road network equipped for computer communication, and a plurality of vehicles travelling along the road network. The plurality of vehicles include probe vehicles and non-probe vehicles, where the probe vehicles are equipped for computer communication. The system also includes a processor operatively connected for computer communication to the host vehicle and the probe vehicles. The processor receives probe vehicle data from the probe vehicles and spatially associates the probe vehicle data at a lane level of the road network. The processor also identifies empty lane level cells of the road network where probe vehicle data is unavailable, and calculates estimated non-probe vehicle data for the empty lane level cells based on the probe vehicle data. Further, the processor calculates a traffic density value for the road network based on the probe vehicle data and the estimated non-probe vehicle data. The processor provides the traffic density value to the host vehicle.
According to a further aspect, a non-transitory computer-readable storage medium includes instructions that when executed by a processor causes the processor to receive probe vehicle data from probe vehicles of a plurality of vehicles within a communication range of a host vehicle travelling along a road network. The medium also causes the processor to spatially associate the probe vehicle data to lane level cells of the road network. The medium further causes the processor to identify empty lane level cells of the road network having an empty value. The medium causes the processor to calculate estimated non-probe vehicle data for the empty lane level cells based on the probe vehicle data. Additionally, the medium causes the processor to calculate a traffic density value for the road network based on the probe vehicle data and the estimated non-probe vehicle data. The medium also causes the processor to transmit the traffic density value to the host vehicle.
The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate various systems, methods, devices, and other embodiments of the disclosure. It will be appreciated that the illustrated element boundaries (e.g., boxes, groups of boxes, directional lines, or other shapes) in the figures represent one embodiment of the boundaries. In some embodiments one element may be designed as multiple elements or that multiple elements may be designed as one element. In some embodiments, an element shown as an internal component of another element may be implemented as an external component and vice versa. Furthermore, elements may not be drawn to scale.
The following includes definitions of selected terms employed herein. The definitions include various examples and/or forms of components that fall within the scope of a term and that may be used for implementation. The examples are not intended to be limiting. Further, the components discussed herein, may be combined, omitted or organized with other components or into different architectures.
“Bus,” as used herein, refers to an interconnected architecture that is operably connected to other computer components inside a computer or between computers. The bus may transfer data between the computer components. The bus may be a memory bus, a memory processor, a peripheral bus, an external bus, a crossbar switch, and/or a local bus, among others. The bus may also be a vehicle bus that interconnects components inside a vehicle using protocols such as Media Oriented Systems Transport (MOST), Controller Area network (CAN), Local Interconnect network (LIN), among others.
“Component,” as used herein, refers to a computer-related entity (e.g., hardware, firmware, instructions in execution, combinations thereof). Computer components may include, for example, a process running on a processor, a processor, an object, an executable, a thread of execution, and a computer. A computer component(s) may reside within a process and/or thread. A computer component may be localized on one computer and/or may be distributed between multiple computers.
“Computer communication,” as used herein, refers to a communication between two or more computing devices (e.g., computer, personal digital assistant, cellular telephone, network device, vehicle, vehicle computing device, infrastructure device, roadside device) and may be, for example, a network transfer, a data transfer, a file transfer, an applet transfer, an email, a hypertext transfer protocol (HTTP) transfer, and so on. A computer communication may occur across any type of wired or wireless system and/or network having any type of configuration, for example, a local area network (LAN), a personal area network (PAN), a wireless personal area network (WPAN), a wireless area network (WAN), a wide area network (WAN), a metropolitan area network (MAN), a virtual private network (VPN), a cellular network, a token ring network, a point-to-point network, an ad hoc network, a mobile ad hoc network, a vehicular ad hoc network (VANET), a vehicle-to-vehicle (V2V) network, a vehicle-to-everything (V2X) network, a vehicle-to-infrastructure (V2I) network, among others. Computer communication may utilize any type of wired, wireless, or network communication protocol including, but not limited to, Ethernet (e.g., IEEE 802.3), WiFi (e.g., IEEE 802.11), communications access for land mobiles (CALM), WiMax, Bluetooth, Zigbee, ultra-wideband (UWAB), multiple-input and multiple-output (MIMO), telecommunications and/or cellular network communication (e.g., SMS, MMS, 3G, 4G, LTE, 5G, GSM, CDMA, WAVE), satellite, dedicated short range communication (DSRC), among others.
“Computer-readable medium,” as used herein, refers to a non-transitory medium that stores instructions and/or data. A computer-readable medium may take forms, including, but not limited to, non-volatile media, and volatile media. Non-volatile media may include, for example, optical disks, magnetic disks, and so on. Volatile media may include, for example, semiconductor memories, dynamic memory, and so on. Common forms of a computer-readable medium may include, but are not limited to, a floppy disk, a flexible disk, a hard disk, a magnetic tape, other magnetic medium, an ASIC, a CD, other optical medium, a RAM, a ROM, a memory chip or card, a memory stick, and other media from which a computer, a processor or other electronic device may read.
“Database,” as used herein, is used to refer to a table. In other examples, “database” may be used to refer to a set of tables. In still other examples, “database” may refer to a set of data stores and methods for accessing and/or manipulating those data stores. A database may be stored, for example, at a disk and/or a memory.
“Disk,” as used herein may be, for example, a magnetic disk drive, a solid-state disk drive, a floppy disk drive, a tape drive, a Zip drive, a flash memory card, and/or a memory stick. Furthermore, the disk may be a CD-ROM (compact disk ROM), a CD recordable drive (CD-R drive), a CD rewritable drive (CD-RW drive), and/or a digital video ROM drive (DVD ROM). The disk may store an operating system that controls or allocates resources of a computing device.
“Logic circuitry,” as used herein, includes, but is not limited to, hardware, firmware, a non-transitory computer readable medium that stores instructions, instructions in execution on a machine, and/or to cause (e.g., execute) an action(s) from another logic circuitry, module, method and/or system. Logic circuitry may include and/or be a part of a processor controlled by an algorithm, a discrete logic (e.g., ASIC), an analog circuit, a digital circuit, a programmed logic device, a memory device containing instructions, and so on. Logic may include one or more gates, combinations of gates, or other circuit components. Where multiple logics are described, it may be possible to incorporate the multiple logics into one physical logic. Similarly, where a single logic is described, it may be possible to distribute that single logic between multiple physical logics.
“Memory,” as used herein may include volatile memory and/or nonvolatile memory. Non-volatile memory may include, for example, ROM (read only memory), PROM (programmable read only memory), EPROM (erasable PROM), and EEPROM (electrically erasable PROM). Volatile memory may include, for example, RAM (random access memory), synchronous RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), and direct RAM bus RAM (DRRAM). The memory may store an operating system that controls or allocates resources of a computing device.
“Operable connection,” or a connection by which entities are “operably connected,” is one in which signals, physical communications, and/or logical communications may be sent and/or received. An operable connection may include a wireless interface, a physical interface, a data interface, and/or an electrical interface.
“Portable device,” as used herein, is a computing device typically having a display screen with user input (e.g., touch, keyboard) and a processor for computing. Portable devices include, but are not limited to, handheld devices, mobile devices, smart phones, laptops, tablets and e-readers.
“Processor,” as used herein, processes signals and performs general computing and arithmetic functions. Signals processed by the processor may include digital signals, data signals, computer instructions, processor instructions, messages, a bit, a bit stream, that may be received, transmitted and/or detected. Generally, the processor may be a variety of various processors including multiple single and multicore processors and co-processors and other multiple single and multicore processor and co-processor architectures. The processor may include logic circuitry to execute actions and/or algorithms.
“Vehicle,” as used herein, refers to any moving vehicle capable of carrying one or more human occupants and is powered by any form of energy. The term “vehicle” includes, but is not limited to cars, trucks, vans, minivans, SUVs, motorcycles, scooters, boats, go-karts, amusement ride cars, rail transport, personal watercraft, and aircraft. In some cases, a motor vehicle includes one or more engines. Further, the term “vehicle” may refer to an electric vehicle (EV) capable of carrying one or more human occupants and is powered entirely or partially by one or more electric motors powered by an electric battery. The EV may include battery electric vehicles (BEV) and plug-in hybrid electric vehicles (PHEV). The term “vehicle” may also refer to an autonomous vehicle and/or self-driving vehicle powered by any form of energy. The autonomous vehicle may carry one or more human occupants. The autonomous vehicle can have any level or mode of driving automation ranging from, for example, fully manual to fully autonomous. Further, the term “vehicle” may include vehicles that are automated or non-automated with pre-determined paths or free-moving vehicles.
“Vehicle control system,” and/or “vehicle system,” as used herein may include, but is not limited to, any automatic or manual systems that may be used to enhance the vehicle, driving, and/or security. Exemplary vehicle systems include, but are not limited to: an electronic stability control system, an anti-lock brake system, a brake assist system, an automatic brake prefill system, a low speed follow system, a cruise control system, a collision warning system, a collision mitigation braking system, an auto cruise control system, a lane departure warning system, a blind spot indicator system, a lane keep assist system, a navigation system, a transmission system, brake pedal systems, an electronic power steering system, visual devices (e.g., camera systems, proximity sensor systems), a climate control system, an electronic pre-tensioning system, a monitoring system, a passenger detection system, a vehicle suspension system, a vehicle seat configuration system, a vehicle cabin lighting system, an audio system, a sensory system, an interior or exterior camera system among others.
The methods and systems discussed herein determine traffic density ahead of a host vehicle by reconstructing measurements for segments of a road network where data is not available. For example, there may be vehicles ahead of the host vehicle that do not have communication capabilities (e.g., vehicle-to-vehicle (V2V), cellular) and therefore cannot be detected by the host vehicle and/or transmit data to the host vehicle. Thus, the methods and systems described herein use partial measurements of a group of traffic agents to reconstruct traffic density in all road segments including those road segments which have vehicles not capable of V2V communication. Referring now to the drawings, wherein the showings are for purposes of illustrating one or more exemplary embodiments and not for purposes of limiting same,
In
As illustrated by
Referring now to
In
The processor 212 can include logic circuitry with hardware, firmware, and software architecture frameworks for facilitating lane level traffic estimation and control of the host vehicle 102 and/or the vehicle 104a. Thus, in some embodiments, the processor 212 can store application frameworks, kernels, libraries, drivers, application program interfaces, among others, to execute and control hardware and functions discussed herein. In some embodiments, the memory 214 and/or the data store (e.g., disk) 216 can store similar components as the processor 212 for execution by the processor 212.
The position determination unit 218 can include hardware (e.g., sensors) and software to determine and/or acquire position data about the host vehicle 102. For example, the position determination unit 218 can include a global positioning system (GPS) unit (not shown) and/or an inertial measurement unit (IMU) (not shown). Thus, the position determination unit 218 can provide a geoposition of the host vehicle 102 based on satellite data from, for example, a global position source 224, or from any Global Navigational Satellite infrastructure (GNSS), including GPS, Glonass (Russian) and/or Galileo (European). Further, the position determination unit 218 can provide dead-reckoning data or motion data from, for example, a gyroscope, accelerometer, magnetometers, among other sensors (not shown). In some embodiments, the position determination unit 218 can be a navigation system that provides navigation control and navigation information to the host vehicle 102.
The communication interface 220 can include software and hardware to facilitate data input and output between the components of the host vehicle 102 and other components of the system 200. Specifically, the communication interface 220 can include network interface controllers (not shown) and other hardware and software that manages and/or monitors connections and controls bi-directional data transfer between the communication interface 220 and other components of the system 200 using, for example, the communication network 204.
More specifically, in one embodiment, the VCD 206 can exchange data and/or transmit messages with other compatible vehicles and/or devices via a transceiver 230 or other communication hardware and protocols. For example, the transceiver 230 can exchange data with the vehicle 104a via a transceiver 232. In some embodiments, the host vehicle 102 and the vehicle 104a can exchange data (e.g., vehicle data, probe vehicle data, non-probe vehicle data as described herein) utilizing a wireless network antenna 226, roadside equipment (RSE) 228, and/or the communication network 204 (e.g., a wireless communication network), or other wireless network connections.
As mentioned above, in some embodiments, data transmission can be executed at and/or with other infrastructures and servers. For example, in
Referring again to the host vehicle 102, the vehicle systems 208 can include any type of vehicle control system and/or vehicle system described herein to enhance the host vehicle 102 and/or driving of the host vehicle 102. For example, the vehicle systems 208 can include autonomous driving systems, driver-assist systems, adaptive cruise control systems, lane departure warning systems, merge assist systems, freeway merging, exiting, and lane-change systems, collision warning systems, integrated vehicle-based safety systems, and automatic guided vehicle systems, or any other advanced driving assistance systems (ADAS). As will be described in more, one or more of the vehicle systems 208 can be controlled according to the systems and methods discussed herein.
The vehicle sensors 210, which can be implemented with the vehicle systems 208, can include various types of sensors for use with the host vehicle 102 and/or the vehicle systems 208 for detecting and/or sensing a parameter of the host vehicle 102, the vehicle systems 208, and/or the environment surrounding the host vehicle 102. For example, the vehicle sensors 210 can provide data about other vehicles in proximity to the host vehicle 102. The vehicle sensors 210 can include, but are not limited to: acceleration sensors, speed sensors, braking sensors, proximity sensors, vision sensors, ranging sensors, seat sensors, seat-belt sensors, door sensors, environmental sensors, yaw rate sensors, steering sensors, GPS sensors, among others. It is also understood that the vehicle sensors 210 can be any type of sensor, for example, acoustic, electric, environmental, optical, imaging, light, pressure, force, thermal, temperature, proximity, among others.
Using the system and network configuration discussed above, lane level traffic state estimation and vehicle control can be provided for each lane level cell including those lane level cells that do not have a value (e.g., lane level cells occupied by a non-probe vehicle). Detailed embodiments describing exemplary methods using the system and network configuration discussed above will now be discussed in detail.
Referring now to
Probe vehicle data, as used herein, can include any vehicle data about the probe vehicle and/or vehicle control systems of the probe vehicle. For example, the probe vehicle data can include vehicle dynamics data and vehicle positioning data included with a Basic Safety Message transmitted from the probe vehicle to the host vehicle 102. As an illustrative example, probe vehicle data can include speed, acceleration, velocity, yaw rate, steering angle, and throttle angle, range or distance data, course heading data, course history data, projected course data, kinematic data, current vehicle position data, and any other vehicle information about the probe vehicle and the environment surrounding the probe vehicle.
Referring again to the method 300, block 304 includes spatially associating probe vehicle data at lane level. In one embodiment, the processor 212 spatially and temporally associates the probe vehicle data to lane level cells of the road network 100. This embodiment will now be described in more detail with
More specifically and with reference to
At block 404, the method 400 includes integrating the probe vehicle data. More specifically, the processor 212 integrates the probe vehicle data to a corresponding lane level cell of the plurality of lane level cells. Thus, the probe vehicle data is integrated by classifying each probe vehicle by its location and other probe vehicle data. Referring again to the grid model 106, the probe vehicle data is partitioned (e.g., integrated) into the lane level cells (e.g., longitudinally) and into time slices. In one embodiment, time is discretized based on sampling time interval Ts and integer time index k. The main assumption is the availability of mean speed and flow for each segment Σms. Although not shown in
At block 406, the method 400 includes identifying the empty lane level cells. More specifically, the processor 212 evaluates each lane level cell to identify and/or determine the lane level cells of the plurality of lane level cells having an empty value. An empty value indicates that probe vehicle data is unavailable and/or was not received with respect to a particular segment of the road network 100. As an illustrative example with the plurality of vehicles 104 shown in
In other embodiments, a lane level cell is deemed to be empty based on whether probe vehicle data was received from at least one vehicle detected in the lane level cell. For example, although a probe vehicle is located in a lane level cell, there could be errors with transmitting the probe vehicle data and/or the probe vehicle data could be corrupted. In these situations, the processor 212 can identify said lane level cell as empty. In another embodiment, an empty cell is defined as a cell with no vehicles (e.g., probe and/or non-probe vehicles). For example, in
Referring again to
A method 500 for calculating traffic density includes, at block 502, calculating a traffic flow value and an average speed value for each lane level cell based on the probe vehicle data. Said differently, for each non-empty lane level cell, the processor 212 calculates an average speed (v) and a traffic flow value (q, throughput) using the probe data corresponding to the lane level cell.
At block 504, the method 500 includes calculating the estimated non-probe vehicle data for the empty lane level cells based on the probe vehicle data. Here, the processor 212 calculates an estimated average speed and an estimated traffic flow value for each lane level cell that has no value and/or has been identified as an empty lane level cell (see
In one embodiment, calculating the estimated non-probe vehicle data for the empty lane level cells based on the probe vehicle data as discussed above is facilitated by an observer model (e.g., a Kalman filter).
Referring again
The traffic density value quantifies traffic measures from the perspective of the host vehicle 102. For example, the traffic density value can be a traffic level status (e.g., free-flow, light, medium, congested, heavily congested) for each segment of each lane ahead of the host vehicle 102 within a range of interest (e.g., the communication range). It is understood that the traffic density value can be any numerical or other kind of value for distinguishing between traffic states. It is further understood that multiple traffic density values can be calculated, for example, for each segment of each lane ahead of the host vehicle 102.
Referring again to
For example, the control executed at block 310 can be within the context of a swarm. Multiple vehicles, having some level of autonomy and operating in a coordinated manner, are referred to as a swarm. The vehicles operating in the coordinated manner are members of the swarm. In one embodiment, the host vehicle 102, one or more of the plurality of vehicles 104, and/or one or more other vehicles (not shown) are members of the swarm. The host vehicle 102 could be a leader of the swarm and the collective behavior of the swarm can be controlled based on the traffic density value. In this example, a control signal is generated based on the traffic density value to control movement of one or more member vehicles. The control signal can be transmitted by the processor 212 to the one or more member vehicles to collectively control the behavior of the swarm. In one embodiment, the movement of the member vehicles and/or a destination of the member vehicles can be modified to avoid a slow traffic area or alleviate a slow traffic area. In another embodiment, members of a swarm can be selected based on the traffic density value to navigate through a slow traffic area in a more efficient way.
The control at block 310 can also be in the context of traffic notifications, suggestions, and warnings. For example, the processor 212 can provide an alert signal or a graphic representation based on the traffic density value to alert a vehicle occupant of the host vehicle 102 and/or other vehicles on the road network 100. Thus, the processor 212 can provide the traffic density value to the host vehicle 102 and the host vehicle 102 can control one or more vehicle systems 208 (e.g., HMI) to display an indication of the traffic density value in the host vehicle 102. In other embodiments, the traffic density value can be transmitted to third parties and or broadcasted to other entities via the communication network 204. It is understood that the methods and systems described herein can be implemented with other use case scenarios.
The embodiments discussed herein can also be described and implemented in the context of “computer-readable medium” or “computer storage medium.” As used herein, “computer-readable medium” or “computer storage medium refers to a non-transitory medium that stores instructions, algorithms, and/or data configured to perform one or more of the disclosed functions when executed. Computer-readable medium can be non-volatile, volatile, removable, and non-removable, media implemented in any method or technology for storage of information such as computer readable instructions, data structures, modules or other data. Computer-readable medium can include, but is not limited to, a floppy disk, a flexible disk, a hard disk, a magnetic tape, other magnetic medium, an application specific integrated circuit (ASIC), a programmable logic device, a compact disk (CD), other optical medium, a random access memory (RAM), a read only memory (ROM), a memory chip or card, a memory stick, solid state storage device (SSD), flash drive, and other media from which a computer, a processor or other electronic device can interface with. Computer-readable medium excludes non-transitory tangible media and propagated data signals.
It will be appreciated that various embodiments of the above-disclosed and other features and functions, or alternatives or varieties thereof, may be desirably combined into many other different systems or applications. Also, that various presently unforeseen or unanticipated alternatives, modifications, variations or improvements therein may be subsequently made by those skilled in the art which are also intended to be encompassed by the following claims.
Number | Name | Date | Kind |
---|---|---|---|
8688321 | Prakah-Asante et al. | Apr 2014 | B2 |
8781707 | Kagawa | Jul 2014 | B2 |
8798841 | Nickolaou et al. | Aug 2014 | B1 |
8930115 | Filev et al. | Jan 2015 | B2 |
9117098 | Trombley | Aug 2015 | B2 |
9352683 | Ignaczak et al. | May 2016 | B2 |
9406229 | Basnayake et al. | Aug 2016 | B2 |
9443424 | Koshizen | Sep 2016 | B2 |
9672734 | Ratnasingam | Jun 2017 | B1 |
10147317 | Hirata | Dec 2018 | B2 |
20070100537 | Parikh | May 2007 | A1 |
20070112503 | Johnson | May 2007 | A1 |
20070213922 | Van Buer | Sep 2007 | A1 |
20120173530 | Kurciska | Jul 2012 | A1 |
20120239253 | Schmidt et al. | Sep 2012 | A1 |
20140114545 | Groger | Apr 2014 | A1 |
20160210852 | Buchholz | Jul 2016 | A1 |
20170076594 | Scofield | Mar 2017 | A1 |
20170309171 | Zhao | Oct 2017 | A1 |
20190103019 | Fowe | Apr 2019 | A1 |
20190204108 | Benincasa | Jul 2019 | A1 |
20190329770 | Rajab | Oct 2019 | A1 |
20190375408 | Ruenz | Dec 2019 | A1 |
20200066151 | Morales Bolaños et al. | Feb 2020 | A1 |
20200104880 | Shafai | Apr 2020 | A1 |
20200135015 | Kalabic | Apr 2020 | A1 |
20200298840 | Shimotani | Sep 2020 | A1 |
20200386569 | Stajner | Dec 2020 | A1 |
20210157307 | Fowe | May 2021 | A1 |
20210269026 | van Lier | Sep 2021 | A1 |
20210302960 | McGill, Jr. | Sep 2021 | A1 |
20220170761 | Mubarek | Jun 2022 | A1 |
Number | Date | Country |
---|---|---|
106781509 | May 2017 | CN |
107205046 | Sep 2017 | CN |
110310480 | Oct 2019 | CN |
110364008 | Oct 2019 | CN |
Entry |
---|
Messmer, A., Papageorgiou, M., “METANET: a macroscopic simulation program for motorway networks.” Traffic Engineering and Control, 31:466-470, Jan. 1990. |
Number | Date | Country | |
---|---|---|---|
20220319309 A1 | Oct 2022 | US |