Adaptive control of vehicular traffic
11328589 · 2022-05-10
Assignee
Inventors
- Jianlin Guo (Newton, MA)
- Gilsoo Lee (Blacksburg, VA, US)
- Kyeong Jin Kim (Lexington, MA, US)
- Philip Orlik (Cambridge, MA)
- Heejin Ahn (Cambridge, MA)
- Stefano Di Cairano (Newton, MA)
Cpc classification
G08G1/096741
PHYSICS
G08G1/087
PHYSICS
G08G1/096708
PHYSICS
G08G1/096725
PHYSICS
G08G1/096783
PHYSICS
International classification
Abstract
A traffic control system for controlling traffic at interconnected intersections is provided, where the system comprises a receiver that receives traffic data that indicates states of vehicles approaching an intersection of the interconnected intersections and directions of the vehicles exiting the intersection. Further, the system comprises a processor that determines intersection crossing times and velocities of vehicles approaching the intersection by minimizing at least one of a total travel time or a maximum travel time of the vehicles for crossing the intersection. The contribution of each vehicle of the vehicles approaching the intersection in the at least one of a total travel time or a maximum travel time is weighted based on directions of the vehicles and traffic at next intersection. Further, the system comprises a transmitter that transmits the intersection crossing times and velocities to the vehicles exiting the intersection for controlling the traffic at the interconnected intersections.
Claims
1. A traffic control system for controlling traffic at interconnected intersections of roads, comprising: a receiver configured to receive traffic data indicative of states of vehicles approaching an intersection of the interconnected intersections and directions of the vehicles exiting the intersection; a processor configured to determine intersection crossing times and velocities of vehicles approaching the intersection by minimizing at least one of a total travel time or a maximum travel time of the vehicles for crossing the intersection, wherein a contribution of each vehicle of the vehicles approaching the intersection in the at least one of a total travel time or a maximum travel time is weighted based on directions of the vehicles and traffic at next intersection along the directions, such that the minimization uses different weights for at least two different vehicles of the vehicles approaching the intersection; and a transmitter configured to transmit the intersection crossing times and velocities to the vehicles exiting the intersection for controlling the traffic at the interconnected intersections.
2. The traffic control system of claim 1, wherein the traffic is controlled based on motion trajectories of the vehicles for exiting the intersection, the motion trajectories are determined based on the intersection crossing times and velocities of the vehicles approaching the intersection.
3. The traffic control system of claim 2, wherein the processor is configured to partition the roads approaching the intersection into sections based on the traffic data, the sections comprising a control zone adjacent to the intersection and a sequencing zone adjacent to the control zone, wherein the intersection crossing times and velocities of the vehicles are determined in the sequencing zone and wherein the motion trajectories for the vehicles are determined to travel in the control zone.
4. The traffic control system of claim 3, wherein the processor is configured to minimize the total travel time of vehicles or the maximum travel time of vehicles in the sequencing zone with the intersection crossing times and velocities of the vehicles fixed in the control zone.
5. The traffic control system of claim 4, wherein the processor performs the minimization by solving a mixed integer linear problem (MILP), the MILP simulates motion of the vehicles crossing the intersection subject to a reference velocity corresponding to safety requirement and traffic regulation.
6. The traffic control system of claim 3, wherein the processor is configured to determine length of the sequencing zone and length of the control zone, the sequencing zone length is a function of a computational speed of the processor and wherein the control zone length corresponds to a distance needed to decelerate a maximum allowed speed of a vehicle entering the control zone or accelerate the vehicle from a control zone entering velocity to the maximum allowed speed.
7. The traffic control system of claim 3, wherein the traffic control system exchanges information with each vehicle of vehicles in the sequencing zone and the control using a zone-based communication protocol comprising: transmitting information of the sequencing zone to the vehicle; receiving a state of the vehicle arriving at the sequencing zone, the state of the vehicle comprising a location of the vehicle, a velocity of the vehicle and an acceleration of the vehicle; transmitting an intersection crossing time and velocity for exiting the intersection to the vehicle before entering the control zone; transmitting information about preceding vehicle to the vehicle; receiving motion trajectory of the vehicle to be applied in the control zone; transmitting the vehicle motion trajectory to next vehicle; transmitting traffic data of the intersection to the next intersection; and transmitting zone information of the next intersection to the vehicle.
8. The traffic control system of claim 1, wherein the weight of the vehicle is based on the traffic at the next intersection towards a direction of the vehicle exiting the intersection.
9. The traffic control system of claim 8, wherein the traffic at the next intersection is traffic formed by motion of vehicles intersecting the direction of the vehicle.
10. The traffic control system of claim 9, wherein directional weight of a vehicle i is determined according to
11. The traffic control system of claim 1, wherein the traffic control system is arranged on an edge device placed in proximity of each intersection of the interconnected intersections, the edge device comprises a set of sensors to collect the traffic data, wherein the processor is configured to perform the determination of the intersection crossing times and velocities of the vehicles entering the intersection and the minimization based on the traffic data.
12. A method for controlling traffic at interconnected intersections of roads, wherein the method uses a processor coupled to a receiver configured to receive traffic data indicative of states of vehicles approaching an intersection of the interconnected intersections and directions of the vehicles exiting the intersection, wherein the processor is coupled with stored instructions implementing the method, wherein the instructions, when executed by the processor carry out step of the method, comprising: determining intersection crossing times and velocities of the vehicles approaching the intersection by minimizing at least one of a total travel time or a maximum travel time of the vehicles for crossing the intersection, wherein a contribution of each vehicle of the vehicles approaching the intersection in the total travel time or the maximum travel time is weighted based on the directions of the vehicles and traffic at next intersection, such that the minimization uses different weights for at least two different vehicles of the vehicles approaching the intersection; and transmitting the intersection crossing times and velocities to the vehicles exiting the intersection via a transmitter coupled to the processor for controlling the traffic at the interconnected intersections.
13. The method of claim 12, wherein the traffic is controlled based on motion trajectories of the vehicles for exiting the intersection, the motion trajectories are determined based on the intersection crossing times and velocities of the vehicles approaching the intersection.
14. The method of claim 13, further comprising: partitioning the roads approaching the intersection into sections based on the traffic data, the sections comprising a control zone adjacent to the intersection and a sequencing zone adjacent to the control zone, wherein the intersection crossing times and velocities of the vehicles are determined in the sequencing zone subject to intersection crossing times and velocities of the vehicles in the control zone.
15. The method of claim 14, further comprising: minimizing the total travel time or the maximum travel time of vehicles in the sequencing zone with the intersection crossing times and velocities of the vehicles fixed in the control zone.
16. The method of claim 15, wherein the minimization comprising: solving a mixed integer linear problem (MILP), the MILP simulates motion of the vehicles crossing the intersection subject to a reference velocity corresponding to safety requirement and traffic regulations.
17. The method of claim 14, wherein partitioning the roads comprising determining length of the sequencing zone and length of the control zone, wherein the sequencing zone length is function of a computational speed of the processor and wherein the control zone length corresponds to a distance needed to decelerate a maximum allowed speed of a vehicle entering the control zone or accelerate the vehicle from a control zone entering velocity to the maximum allowed speed.
18. The method of claim 14, further comprising exchanging information with each vehicle of vehicles in the sequencing zone and the control zone using a zone-based communication protocol comprising: transmitting information of the sequencing zone to the vehicle; receiving a state of the vehicle arriving at the sequencing zone, the state of the vehicle comprising a location of the vehicle, a velocity of the vehicle and an acceleration of the vehicle; transmitting an intersection crossing time and a velocity for exiting the intersection to the vehicle before entering the control zone; transmitting information about preceding vehicle to the vehicle; receiving motion trajectory of the vehicle to be applied in the control zone; transmitting the vehicle motion trajectory to next vehicle; transmitting traffic data of the intersection to the next intersection; and transmitting zone information of the next intersection to the vehicle.
19. The method of claim 13, wherein the weight of the vehicle is based on the traffic at the next intersection towards a direction of the vehicle exiting the intersection, the traffic at the next intersection is traffic formed by motion of vehicles intersecting the direction of the vehicle and wherein directional weight of a vehicle i is determined according to
20. A non-transitory computer readable storage medium embodied thereon a program executable by a processor for performing a method, the method comprising: receiving traffic data indicative of states of vehicles approaching an intersection of the interconnected intersections and directions of the vehicles exiting the intersection; determining intersection crossing times and velocities of the vehicles approaching the intersection by minimizing at least one of a total travel time or a maximum travel time of the vehicles crossing the intersection, wherein a contribution of each vehicle in the total travel time or the maximum travel time is weighted based on the directions of the vehicles and traffic at next intersection, such that the minimization uses different weights for at least two different vehicles of the vehicles approaching the intersection; and transmitting the intersection crossing times and velocities to the vehicles exiting the intersection via a transmitter coupled to the processor, for controlling the traffic at the interconnected intersections.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) The presently disclosed embodiments will be further explained with reference to the attached drawings. The drawings shown are not necessarily to scale, with emphasis instead generally being placed upon illustrating the principles of the presently disclosed embodiments.
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
DETAILED DESCRIPTION
(18) In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present disclosure. It will be apparent, however, to one skilled in the art that the present disclosure may be practiced without these specific details. In other instances, apparatuses and methods are shown in block diagram form only in order to avoid obscuring the present disclosure.
(19) As used in this specification and claims, the terms “for example,” “for instance,” and “such as,” and the verbs “comprising,” “having,” “including,” and their other verb forms, when used in conjunction with a listing of one or more components or other items, are each to be construed as open ended, meaning that the listing is not to be considered as excluding other, additional components or items. The term “based on” means at least partially based on. Further, it is to be understood that the phraseology and terminology employed herein are for the purpose of the description and should not be regarded as limiting. Any heading utilized within this description is for convenience only and has no legal or limiting effect.
(20)
(21) The traffic scenario 100 shows an intersection 102 and an intersection 104 which are interconnected to each other, and also called as interconnected intersections of roads 106-116, where vehicles 126-146 are present on the roads 106-116 of the interconnected intersections. The vehicles (e.g., the vehicles 126-146) may be autonomous, semi-autonomous or manually operated vehicle. Some examples of the vehicles 126-146 include two-wheeler vehicles, such as motor bikes, four-wheeler vehicles, such as cars or more than four-wheel vehicles, such as trucks and the like.
(22) There is further shown a road site unit (RSU) 122 and a RSU 124, a core network 120, and a cloud network 118 to establish an Internet of Vehicles (IoV) environment within the set of vehicles 126-146 on the roads 106-116.
(23) In some embodiments, the traffic scenario 100 corresponds to a metropolitan area, where the roads 106-116 form a large number of intersections, such as the intersections 102 and 104. In the metropolitan area, traffic conditions at the intersections 102 and 104 determine traffic flow because traffic congestion usually starts at an intersection (such as the intersection 104) and propagates to the roads (e.g. 106-116). The traffic conditions at the intersections 102 and 104 are interdependent such that a variation at one intersection (i.e. the intersection 104) propagates to other intersections, such as the intersection 102 (also called as a neighboring intersection 102).
(24) Some embodiments are based on a realization that to establish communication among different vehicles (e.g., the set of vehicle 126-146) in the IoV environment, communication between the cloud network 118 and vehicle 126 on the road 114 needs to propagate through the RSU 124 and the core network 120 in such a way that a multi-hop communication is established. In the IoV environment, vehicular mobility of the vehicles 126-146 is controlled using a cloud based network (i.e. the cloud network 118). However, in such a case a multi-hop communication long latency is obtained which leads to impractical real-time control and service by cloud based vehicle control approach using the cloud network 118. More specifically, the multi-hop communication between the cloud network 118 and the vehicle 126 results in long delay, which may not be feasible in real-time scenarios.
(25) In addition, on-board control devices of the vehicles, such as the vehicle 146 cannot obtain information about neighboring vehicles (such as the vehicle 142), pedestrians and environment conditions that are out of their visible range. For instance, the vehicle 146 traveling on the road 114 intends to pass the intersection 102 after the vehicle 144 (that is bigger in size than the vehicle 142) passes the intersection 102, and the vehicle 142 (that is a small sized vehicle) is also moving into the intersection 102. In such a scenario, visibility of the vehicle 142 is blocked by the vehicle 144 as shown in
(26) Some embodiments are based on a realization that different communication technologies are utilized to support vehicular communications. For example, IEEE Dedicated Short-Range Communications/Wireless Access in Vehicular Environments (DSRC/WAVE) standard family for vehicular networks, 3GPP Cellular-Vehicle-to-Anything (C-V2X), and the like. However, due to high cost reasons, it is impractical for vehicles (e.g. the vehicles 126-146) to install more than one short range communication technologies which leads to compatibility issues among the vehicle to communicate with each other. Therefore, the vehicles equipped with the IEEE DSRC/WAVE cannot communicate with vehicles equipped with the 3GPP C-V2X, and vice versa. Consequently, accuracy of the vehicle mobility control decision by the on-board control device is severely affected as the vehicle mobility control decision is based on incomplete information of the traffic scenario 100.
(27) Some embodiments are based on a realization that IoV-Edge devices (e.g. the RSU 122 and the RSU 124) for controlling vehicular traffic have advantages in real-time vehicle mobility control over usage of the cloud network and the on-board device. For example, the IoV-Edge devices installed at intersection or highway merging point directly communicate with the vehicles (e.g., the vehicles 126-146) approaching the intersection or merging point, the IoV-Edge devices equipped with multiple communication technologies can communicate with all the vehicles, the IoV-Edge devices are capable to achieve real time collaboration on vehicle states and environment view via robust high speed communication links, the IoV-Edge devices are stationary which enable them in providing reliable communication between the IoV-Edge devices and the vehicles as well as collecting environmental data having higher quality, and the IoV-Edge devices are capable of continuously monitoring vehicle traffic and the environment for accurate decision making. Accordingly, the IoV-Edge devices are appropriate to use for optimal vehicle mobility control decision.
(28) The IoV-Edge devices are implemented based a control point to run control technology for making control decision and provide vehicular traffic control at the interconnected intersections. Thus, selection of the control point is critical in order to perform real time vehicle mobility control. However, controlling vehicle mobility of the vehicles (e.g., the vehicles 126-146) by the cloud network 118 cannot meet the real time vehicle mobility control due to the multi-hop communication delay. In addition, the cloud does not have instant information (i.e., real-time information) of the vehicles 126-146, pedestrians and condition of the roads (e.g. the roads 106-116) to make optimal decision. On-board control does not have comprehensive information to make optimal vehicle mobility control decision. In addition, the on-board control may also have communication limitation due to the existence of the heterogeneous vehicular communication technologies such as the IEEE DSRC/WAVE and the 3GPP C-V2X. The edge devices such as the RSU 122 and the RSU 124 are feasible points to make optimal decision on real time vehicle control due to their direct communication capability, road condition knowledge, environment view, and real rime collaboration capability.
(29) As shown in
(30) Some embodiments are based on a realization that Artificial Intelligence (AI) techniques are utilized for controlling such traffic at the intersection 102 and the intersection 104. For instance, in a smart-city infrastructure with urban traffic management system, traffic at such intersections may be controlled using AI model based techniques. Some other embodiments are based on realization that the traffic may be controlled based on inputs provided by a human agent. However, the human agent based traffic control may not be efficient. The human agent may exhibit potentially irrational behavior or provide subjective choices, which may be difficult to quantify, calibrate or justify. The human agent may enhance a traffic control model using data-driven techniques, such as reinforced learning for the traffic control. However, the data-driven based reinforced learning may not be able to provide a seamless traffic control in abrupt situations or emergency cases. For example, the vehicle 146 may stop while crossing the intersection 102 due to battery failure of the vehicle 146. This may cause traffic congestion due to sudden event of the vehicle 146 stopping in the intersection 102. Consequently, traffic congestion occurs at other neighboring intersections, such as the intersection 104. In order to control the sudden traffic congestion, human involvement may be required. For instance, the RSU 124 may immediately transmit an alert signal to a manual operator for the human involvement because the RSU 124 has direct view of the intersection 102.
(31) Therefore, some embodiments of the present invention are based on utilization of edge devices to perform edge computing for realizing real time optimal vehicle control at interconnected intersections (i.e. the intersection 102 and the intersection 104). In this disclosure, the edge devices such as the RSU 122 and RSU 124, or eNodeB are called as an IoV-Edge. The edge computing for controlling traffic at the interconnected intersections using the IoV-Edge is described in
(32)
(33) In some embodiments, an IoV-Edge is placed in proximity of each intersection (e.g., the intersection 102 and the intersection 104). Initially, the IoV-Edge receives traffic data at the interconnected intersections at step 202. The IoV-Edge comprises a set of sensors to collect the traffic data. The traffic data represents states of vehicles (e.g., the vehicles 126-146) approaching an intersection of the interconnected intersections and directions of the vehicles exiting the intersection. Some examples of the states of the vehicles include, but not limited to, longitudinal position, velocity, and acceleration of the vehicles. The IoV-Edge then determines weights for the vehicles based on the directions and traffic at next intersection for a total travel time and maximum travel time in step 204. The IoV-Edge collects the next intersection traffic provided by an IoV-Edge of the next intersection. Next, the IoV-Edge minimizes at least one of the total travel time or the maximum travel time of the vehicles for crossing the intersection by using different weights for at least two different weights for two different vehicles approaching the intersection, in step 206. Further, the IoV-Edge determines intersection crossing times and velocities of the vehicles approaching the intersection based on the minimized total travel time or maximum travel time at step 208. At step 210, the intersection crossing times and velocities are transmitted to the vehicles exiting the intersection for controlling the traffic at the interconnected intersections.
(34) In various embodiments, the IoV-Edge generate road data that includes parts of a road approaching an intersection into sections for controlling the interconnected intersections, which is explained next with reference to
(35)
(36) For instance, interconnected intersections in an urban road environment are installed with IoV-Edges, as shown in
(37) The IoV-Edge 302 generates road data that includes parts of a road 308 approaching the intersection 300 into sections (such as a sequencing zone 318 and a control zone 316) to provide safe and optimal control of vehicular traffic. The road 308 is a one-direction road intersected by a north bound road (i.e. a road 324) and a south bound road (i.e. a road 330), where an intersection area of the road 308 is an intersection or a crossing zone 314. In a similar manner, for a two-lane road 324, the lane that approaches towards the IoV-Edge 302 is partitioned into a sequencing zone 322 and a control zone 320 by the corresponding IoV-Edge 302.
(38) Further, the IoV-Edge 302 computes an intersection crossing velocity for a vehicle 310 for entering the sequencing zone 318 in order to exit the intersection 300. In the sequencing zone 318, the IoV-Edge 302 computes an intersection crossing time (i.e., optimal time) for the vehicle 310 to cross the intersection 300 with minimum delay. The IoV-Edge 302 communicates with the neighboring IoV-Edge 304 and vehicles, such as the vehicle 310 that provides the traffic data. The IoV-Edge 302 and the IoV-Edge 304 communicate via communication link 326, which can be wired or wireless. The IoV-Edge 304 informs the IoV-Edge 302 about arrival of the vehicle 310. The vehicle 310 establishes connection with the IoV-Edge 302 when it enters sequence Zone 318 via wireless communication link 330. The IoV-Edge 302 then collects state of the vehicle 310 such as vehicle identifier (ID), location, speed, acceleration, etc. In the control zone 316, location and velocity of the vehicle 310 is controlled to arrive at the crossing zone 314 based on the intersection crossing time with an intersection crossing velocity.
(39) Further, the IoV-Edge 302 transmits the intersection crossing time and velocity to the vehicle 310 via wireless communication link 330. The vehicle 310 determines the optimal motion trajectory to be applied in control zone 316 based on the intersection crossing time and velocity. The optimal motion trajectory is transmitted to neighboring vehicle, such as a vehicle 312, and IoV-Edge 302. The vehicle 312 determines corresponding motion trajectory based on the optimal motion trajectory of the vehicle 310. In an alternate embodiment, the IoV-Edge 302 determines motion trajectory in the control zone 316 for the vehicle 310 based on at least one of the optimal arrival time, vehicle location, vehicle speed, vehicle acceleration, speed limit, acceleration limit, headway constraint, or road map. The motion trajectory is determined as a vehicle location, a vehicle velocity, and a value of vehicle acceleration at different time instants, e.g., time to enter the control zone 316, time to enter the crossing zone 314, and time to exit the crossing zone 314. Further, the IoV-Edge 302 controls vehicle mobility based on the determined motion trajectory.
(40) The intersection crossing time and velocity at which the vehicle 310 crosses the intersection 300 prevent the vehicle 310 to stop while crossing the intersection 300, and thus improve driving comfort and minimizing fuel consumption. This also allows the vehicle 310 to safely cross the crossing zone 314 without collision. When the vehicle 310 exits the crossing zone 314, the IoV-Edge 302 provides information of next intersection to the vehicle 310. The IoV-Edge 302 also transmits information of the vehicle 310 to the IoV-Edge 306 via communication link 328 (wired or wireless). The information provides details on arrival of the vehicle 310 to the IoV-Edge 306. The IoV-Edges 302 and 306 also communicate with the vehicle 310 via the wireless communication link 330. This allows the vehicle 310 to provide the information to the IoV-Edges 302 and 306. Examples of the communication link 330 include a DSRC link, a C-V2X link, and the like. Accordingly, the center IoV-Edge 302 communicates with both vehicles (e.g. the vehicle 310) and neighboring IoV-Edges (e.g. the IoV-Edges 304 and 306) to make optimal control decision.
(41) Further, to provide the control decision in an efficient manner, the IoV-Edge 302 determines start point of each zone (i.e., the control zone 316 and the sequencing zone 318). The IoV-Edge 302 determines length of each zone, which is described further with reference to
(42)
(43) In an illustrative example scenario, when the vehicle 310 with ID i enters the sequencing zone 318 at distance x.sub.s from start point of the sequence zone 318 to the crossing zone 314, the vehicle 310 transmits a heartbeat message to the IoV-Edge 302. The heartbeat message contains state of a vehicle (i.e. the vehicle 310), which further is described in
(44) The two messages (i.e. the announcement message and the scheduling message) have data sizes, K.sub.x.sub.
(45)
where, R.sub.i(x) is data rate of a downlink between the IoV-Edge 302 and the vehicle 310 and defined as
(46)
where
g.sub.i(x)=β.sub.1x.sup.−β.sup.
β.sub.1 is path loss constant and β.sub.2 is path loss exponent,
P.sub.tx is transmission power of the IoV-Edge 302,
B is bandwidth of the channel, and
N.sub.0 is noise power spectral density.
(47) The IoV-Edge 302 takes computation time t.sub.s at the sequencing zone 318 for the edge computing. The transmission time of the announcement message and the computation time t.sub.s satisfies
(48)
(49) In other words, the sum of the transmission time of the announcement message and the computation time t.sub.s needs to be less than vehicle travel time from location x.sub.s to location x.sub.s′.
(50) When the vehicle 310 receives the scheduling message from the IoV-Edge 302, the vehicle 310 determines an optimal motion trajectory to be applied in the control zone 316. The vehicle 310 takes a computation time of t.sub.c for computing the optimal motion trajectory. The transmission time of the scheduling message and the computation time t.sub.c satisfies
(51)
(52) When the vehicle 310 enters the control zone 316, velocity of the vehicle 310 is controlled to arrive at the crossing zone 314 with the intersection crossing time and velocity determined by the IoV-Edge 302. The vehicles (e.g. the vehicles 310 and 312) adjust their velocities according to their dynamics model.
(53) Thus, it is essential to determine values of the distance variables x.sub.s 404, x.sub.s′ 402 and x.sub.c 400 such that the constraints in (3) and (4) are satisfied.
(54) To that end, the control zone size must be long enough such that vehicle i 310 can reach any velocity from its control zone entering velocity v.sub.i(x.sub.c). Therefore, the minimum control zone length for vehicle i can be determined as
(55)
The first term
(56)
is the distance required to accelerate the vehicle 310 to the maximum velocity from the velocity v.sub.i(x.sub.c) using the maximum acceleration a.sub.max while the second term
(57)
is the distance needed to stop the vehicle 310 from the velocity v.sub.i(x.sub.c) using the maximum deceleration a.sub.min. This result provides a lower bound for the control zone length for vehicle 310. For all vehicle, the IoV-Edge 302 can determine x.sub.c such that
(58)
(59) Once control zone length x.sub.c is decided, x.sub.s and x.sub.s′ are determined such that x.sub.s′−x.sub.c is long enough for (4) to be true. In fact, if (4) is true for vehicles traveling with the maximum velocity, then (4) is true for all vehicles. For the maximum velocity vehicle, (4) becomes
(60)
Therefore, x.sub.s′ is given by
x.sub.s′=x.sub.c+v.sub.max(D.sub.i(x.sub.s′)+t.sub.c) (6)
(61) Once x.sub.s′ is determined, x.sub.s needs to be chosen such that x.sub.s−x.sub.s′ long enough for (3) to be true. Similarly, if (3) is true for vehicle traveling with the maximum velocity, then it is true for all vehicles. For the maximum velocity vehicle, (3) becomes
(62)
Therefore, x.sub.s is given by
x.sub.s=x.sub.s′+v.sub.max(D.sub.i(x.sub.s)+t.sub.s) (7)
(63) Finally, the sequence zone length must be greater than or equal to x.sub.s−x.sub.c.
(64) Each vehicle (e.g., the vehicle 310) optimizes the motion trajectory that reaches the crossing zone 314 at the intersection crossing time with the intersection crossing velocity. The vehicle 310 determines an acceleration a.sub.i and velocity v.sub.i for the control zone 316. The acceleration is minimized and the vehicle 310 is controlled to arrive at the crossing zone 314 with the determined intersection crossing velocity. In the trajectory optimization problem, discrete time system is applied with T.sub.s as the sampling period. The vehicle 310 can optimize the velocity v=[v.sub.i(t.sub.0), v.sub.i(t.sub.n), . . . , v.sub.i(t.sub.N)] and acceleration a=[a.sub.i(t.sub.0), . . . a.sub.i(t.sub.n), . . . , a.sub.i(t.sub.N−1)], where t.sub.n=nT.sub.s, ∀n∈[0, N]. In other words, the vehicle determines the optimal velocity and the corresponding acceleration by solving following quadratic programming (QP) problem:
(65)
subject to
0≤x.sub.i(t.sub.n)≤x.sub.i-1(t.sub.n)−d.sub.h,∀i,i−1∈I.sub.d,∀n∈[1,N] (9)
v.sub.min≤v.sub.i(t.sub.n)≤v.sub.max,∀i∈I (10)
a.sub.min≤a.sub.i(t.sub.n)≤a.sub.max,∀i∈I (11)
x.sub.i(t.sub.0)=x.sub.c,x.sub.i(t.sub.N)=0,∀i∈I (12)
v.sub.i(t.sub.0)=v.sub.0,i,v.sub.i(t.sub.N)=v.sub.int,i,∀i∈I (13)
v.sub.i(t.sub.n)=v.sub.i(t.sub.n-1)+a.sub.i(t.sub.n)T.sub.s,∀n∈[1,N] (14)
where q is a constant to weight in acceleration, x.sub.i-1(t.sub.n) is the location of the preceding vehicle i−1 at time t.sub.n obtained from status update message transmitted by vehicle i−1, d.sub.h is the headway safety driving distance to avoid a forward collision, v.sub.0,i is the velocity for vehicle i to enter the control zone, vehicle i computes motion trajectory when it close to the control zone, therefore, vehicle i can either predict its velocity to enter control zone or control its velocity to enter control, the reference velocity v.sub.int,i can be any velocity satisfying traffic policy and traffic condition. By minimizing the first term of the objective function in (8), the vehicle i will adjust its velocity as close as possible to the reference velocity v.sub.int,i. By minimizing the second term of the objective function in (8), the vehicle i can reduce the usage of acceleration and smooth mobility. Therefore, the driving comfort can be improved and the fuel consumption can be reduced.
(66) The condition (9) is safe headway distance constraint, condition (10) shows speed constraint such that vehicle i must follow traffic rule, condition (11) is acceleration constraint for driving comfort and fuel reduction, condition (12) is the location constraint such that motion trajectory starts from vehicle i enters control zone until to vehicle i enter the crossing zone, condition (13) is the velocity constraint such that vehicle i enters control zone with velocity v.sub.0,i and enters crossing zone with reference velocity v.sub.int,i, and condition (14) is the velocity and acceleration relationship constraint indicating velocity and acceleration are related.
(67) Once the velocity is determined, the location of vehicle i can be calculated by using vehicle dynamics equation as
(68)
(69) The QP problem (8)-(14) and dynamics equation (15) give motion trajectory of vehicle 310 as (x.sub.i(t.sub.n), v.sub.i(t.sub.n), a.sub.i(t.sub.n))∀n∈[0, N].
(70)
(71) In some embodiments, an IoV-Edge such as the IoV-Edge 302 (shown in
(72) Further, the intersection crossing time and velocity is transmitted to the vehicle 310, which is shown next in
(73)
(74) The intersection crossing time and velocity is transmitted through the scheduling message that includes the vehicle information 502, intersection size 602, traffic direction 604, intersection start location 606, intersection exiting time 608, intersection crossing time 610, and intersection crossing velocity 612. The intersection size 602 corresponds to a size of the crossing zone 314, x.sub.int as described in
(75) Referring back to
(76)
(77) At step 710, the IoV-Edge 302 performs edge computation to determine intersection crossing time and velocity for the vehicle 310 for crossing the intersection 300. At step 712, the IoV-Edge 302 transmits information of the intersection crossing time and velocity along with information of preceding vehicles to the vehicle 310 via a scheduling message. The scheduling message is transmitted before the vehicle 310 enters the control zone 316.
(78) At step 714, the vehicle 310 determines an optimal motion trajectory to be applied in the control zone 316 such that the vehicle 310 exits the intersection 300 at the intersection crossing time and velocity. The vehicle 310 enters the control zone 316 based on the optimal motion trajectory. At step 716, the vehicle 310 transmits a status update message containing the optimal motion trajectory to the IoV-Edge 302. The IoV-Edge 302 further transmits to the status update message to neighboring vehicles of the vehicle 310, such as the vehicle 312 for trajectory planning. The status update message for the vehicle 312 is included in a scheduling message to be sent to the vehicle 312 by the IoV-Edge 302, when the vehicle 312 is about to enter the control zone 316. The IoV-Edge 302 can also use the status update message to compute a global trajectory for the vehicle 310. In this manner, vehicle collision is avoided. Alternatively, or additionally, the vehicle 310 may transmit the status update message to the vehicle 312 for the trajectory planning. The vehicle 310 exits the crossing zone 314 based on the intersection crossing time and velocity.
(79) At step 718, the IoV-Edge 302 transmits next zone information of next intersection to the vehicle 310. At step 720, the IoV-Edge 302 transmits traffic data and information of the vehicle 310 approaching the next intersection to the IoV-Edge 306. The traffic data is also transmitted to the IoV-Edge 304. In this manner, vehicle mobility is controlled and coordinated to enable controlling of vehicles (e.g. the vehicles 310 and 312) to pass the interconnected intersections for traffic improvement.
(80) In some embodiments, the IoV-Edges (e.g. the IoV-Edges 302) performs tuning of crossing the intersection based on directional weights of the vehicles that reflect interfering traffic at neighboring intersections. The objective of the tuning procedure is to minimize the weighted (total or maximum) travel time. Thus, the weight is dynamically adaptable, which enable the traffic control to adapt to emergency or abrupt scenarios. The determination of the weight for the minimization procedure is described further in
(81)
(82) In an illustrative example scenario, there is traffic congestion due to a set of vehicles 818-826 at the intersection 814, as shown in
(83) The IoV-Edge 812 determines a weighted travel time for the vehicle 802 with ID i approaching the intersection 800 in direction d(i) for estimating the intersection crossing time and velocity for the vehicle 802. The directional weight for travel time of the vehicle 802 is determined based on
(84)
(85) where d(i).sup.⊥ is the orthogonal direction with respect to direction d(i),
(86) N is total number of vehicles on all lanes at the next intersection,
(87) N.sub.d(i).sub.
(88) The w.sub.d.sub.
(89) Using directional weight w.sub.d(i) for vehicle 812, the travel time is weighted. For example, for vehicle i, if the sequence zone entering time t.sub.s,i and the intersection exit time is t.sub.out,i, the weighted travel time is w.sub.d(i)(t.sub.out,i−t.sub.s,i).
(90) In a similar manner, weight of the vehicle 820 is also determined. The total travel time or the maximum travel time of the vehicles is weighted based on the determined weight w.sub.d.sub.
(91)
subject to
t.sub.out,i−t.sub.s,i≥t.sub.m,i,∀i∈I (18)
t.sub.out,i+1−t.sub.out,i≥t.sub.h,∀i∈I.sub.d (19)
t.sub.out,i−t.sub.out,i′+MB.sub.i,i′≥t.sub.,int,i,∀i,i′∈I,i≠i′ (20)
t.sub.out,i′−t.sub.out,i+M(1−B.sub.i,i′)≥t.sub.int,i,∀i,i′∈I,i≠i′ (21)
where I is set of vehicles, t.sub.out is the vector consisting of t.sub.out,i, ∀i∈I, I.sub.d is set of vehicles traveling in direction d on same lane, B.sub.i,i′∈{0, 1}, B is the vector of B.sub.i,i′, ∀i, i′∈I, i≠i′. B.sub.i,i′=0 implies that vehicle i is scheduled to cross intersection prior to vehicle i′ and B.sub.i,i′=i implies that vehicle i is scheduled to cross intersection after vehicle i′. The constraint (18) shows that vehicle i must not violate the speed limit rule from entering the sequence zone to exiting the intersection, i.e., its travel time has a lower bound t.sub.m,i. For example, (x.sub.s+x.sub.int)/v.sub.max is a travel time lower bound. In the constraint (19), headway time t.sub.h is applied to guarantee the safety time gap between two adjacent vehicles on the same lane. The constraints (20) and (21) guarantee that only one vehicle can pass the intersection at a time. In particular, the difference of exit time of any two vehicles i and i′ needs to be greater than the travel time in the intersection of the preceding vehicle. In (20) and (21), M is an arbitrarily large constant used in a big-M method.
(92) For the weighted maximum travel time objective function, the MILP problem is formulated as
(93)
(94) The physical weight coefficient Wi of the vehicle can be dynamically adapted. Further, weight coefficient of one vehicle differs from weight coefficient of another vehicle. For example, the vehicle 802 is a motor bike and the vehicle 820 is a truck. The weight coefficient of the truck will differ from the weight coefficient of the motor bike. The IoV-Edge 812 can assign weight coefficient of the truck such that the truck has a small directional weight w.sub.d.sub.
(95) In case of emergency such as an ambulance is crossing the intersection 814 in d(i).sup.⊥ direction, the IoV-Edge 816 informs the emergency situation to the IoV-Edge 812. The IoV-Edge 812 performs the weight adjustment based on the emergency traffic, such that the directional weights of the vehicles 802 and 804 traveling in direction d(i) having a small weight w.sub.d.sub.
(96)
(97) As shown in
(98)
(99) The control system 1000 comprises a number of interfaces connecting the control system 1000 with other systems and devices. For example, the control system 1000 comprises a network interface controller (NIC) 1002 that is adapted to connect the control system 1000 through a bus 1004 to a network 1006 connecting the control system 1000 with one or more devices 1008. Examples of such devices include, but not limited to, vehicles, traffic lights, and traffic sensors. Further, the control system 1000 includes a transmitter interface 1010 configured to command, using a transmitter 1012 and the devices 1008 configured to transmit commands the vehicles to moved based on trajectories that correspond to intersection crossing times and velocities determined by the processor 1014. Through the network 1006, the control system 1000 receives traffic data 1032 using a receiver interface 1028 connected to a receiver 1030, the system 1000 can receive traffic information in the intersection zone as well as traffic information in neighboring intersections. The traffic data includes information of states (e.g., acceleration, location, velocity) of vehicles approaching an intersection of the interconnected intersections and directions of the vehicles exiting the intersection. Additionally, or alternatively, the control system 1000 includes a control interface 1034 configured to transmit commands to the one or more devices 1008 to change their respective state, such as acceleration, velocity, and the like. The control interface 1034 may use the transmitter 1012 to transmit the commands and/or any other communication means.
(100) In some implementations, a human machine interface (HMI) 1040 within the system 1000 connects the control system 1000 to a keyboard 1036 and pointing device 10384, wherein the pointing device 1038 can include a mouse, trackball, touchpad, joy stick, pointing stick, stylus, or touchscreen, among others. The control system 1000 can also be linked through the bus 1004 to a display interface adapted to connect the control system 1000 to a display device, such as a computer monitor, camera, television, projector, or mobile device, among others. The control system 1000 can also be connected to an application interface adapted to connect the control system 1000 to one or more equipment for performing various power distribution tasks.
(101) The control system 1000 includes the processor 1014 configured to execute stored instructions, as well as a memory 1016 that stores instructions that are executable by the processor 1014. The processor 1014 can be a single core processor, a multi-core processor, a computing cluster, or any number of other configurations. The memory 1016 can include random access memory (RAM), read only memory (ROM), flash memory, or any other suitable memory systems. The processor 1014 is connected through the bus 1004 to one or more input and output devices. These instructions implement a method for adaptive control of vehicular traffic at interconnected intersections.
(102) To that end, the system 1000 includes a traffic configuration 1018. For example, the traffic configuration 1018 includes a structure of a zone of intersection of a road. In some embodiments, the structure of the intersection zone includes a sequencing zone and a control zone. Each zone includes information of sections of multiple roads on which the vehicles are moving towards the intersection. In such a manner, the traffic configuration 1018 allows the control system 1000 to control vehicles (e.g., the vehicles 310, 312, 802, 804 and 914) in different zones (e.g., the zones 316, 318, 329, 322, 806 and 808).
(103) The control system 1000 includes a weight determining module 1020 configured to determine weights for travel times of vehicles approaching the intersection, while traveling within a sequencing zone of the intersection, as described in
(104) The control system 1000 includes a trajectory planner and tracker 1024 configured to determine states of the vehicles traveling within the sequencing and control zones. The trajectory planner and tracker 1024 is also configured to solve the optimal trajectory problem for determining motion trajectories for different vehicles according to the sequential arrival on the intersection while optimizing a metric of performance, such as energy consumption of the vehicles. For instance, the trajectory planner and tracker 1024 accesses motion trajectories of a vehicle (such as the vehicle 310) that are determined based on the intersection crossing times and velocities for the vehicle 310. The trajectory planner and tracker 1024 transmits the motion trajectories of the vehicle 310 to neighboring vehicles (such as the vehicle 312) so as to plan motion trajectory to cross the intersection (i.e. intersection 300) without colliding with each other. The traffic configuration 1018, the weight determining module 1020, the crossing time and velocity determining module 1022 and the trajectory planner and tracker 1024 are stored in storage 1026.
(105)
(106) The vehicle 1100 can be any type of wheeled vehicle, such as a passenger car, bus, or rover. Further, the vehicle 1100 can be an autonomous vehicle or a semi-autonomous vehicle.
(107) In some implementations, motion of the vehicle 1100 is controlled. For example, lateral motion of the vehicle 1100 is controlled by a steering system 1112 of the vehicle 1100. In one embodiment, the steering system 1112 is controlled by the controller 1102. Additionally, or alternatively, the steering system 1112 can be controlled by a driver of the vehicle 1100.
(108) Further, the vehicle 1100 includes an engine 1106, which may be controlled by the controller 1102 or by other components of the vehicle 1100. The vehicle 1100 may also include one or more sensors 1104 to sense surrounding environment of the vehicle 1100. Examples of the sensors 1104 include, but are not limited to, distance range finders, radars, lidars, and cameras. The vehicle 1100 may also include one or more sensors 1110 to sense current motion quantities and internal status, such as steering motion of the vehicle 1100, wheel motion of the vehicle 1100, and the like. Examples of the sensors 1110 include, but are not limited to, a global positioning system (GPS), accelerometers, inertial measurement units, gyroscopes, shaft rotational sensors, torque sensors, deflection sensors, a pressure sensor, and flow sensors. The vehicle 1100 may be equipped with a transceiver 1108 enabling communication capabilities of the controller 1102 through wired or wireless communication channels with control system (e.g., the control system 1000). For example, through the transceiver 1108, the controller 1102 receives the motion trajectory, and controls actuators and/or other controllers of the vehicle according to the received trajectory in order to control mobility of the vehicle 1100.
(109)
(110)
(111) In some embodiments, to control the vehicle 1132, the control inputs include commands specifying values of one or combination of a steering angle of the wheels of the vehicle 1132 and a rotational velocity of the wheels, and the measurements include values of one or combination of a rotation rate of the vehicle 1132 and an acceleration of the vehicle 1132. Each state of the vehicle 1132 includes a velocity and a heading rate of the vehicle 1132, such that the motion model relates the value of the control inputs to a first value of the state of the vehicle 1132 through dynamics of the vehicle 1132 at consecutive time instants, and the measurement model relates the value of the measurement to a second value of the state of the vehicle 1132 at the same time instant.
(112)
(113) To define a baseline, a scheduling scheme based on first come first serve (FCFS) basis is adopted. The FCFS schedule time for vehicles to exit an intersection in an order. In an illustrative example, a vehicle, such as vehicle 804 of
(114) As shown in
(115)
(116) In
(117)
(118) The neighboring intersections may correspond to the neighboring intersection 814 as described in description of
EMBODIMENTS
(119) The following description provides exemplary embodiments only, and is not intended to limit the scope, applicability, or configuration of the disclosure. Rather, the following description of the exemplary embodiments will provide those skilled in the art with an enabling description for implementing one or more exemplary embodiments. Contemplated are various changes that may be made in the function and arrangement of elements without departing from the spirit and scope of the subject matter disclosed as set forth in the appended claims.
(120) Specific details are given in the following description to provide a thorough understanding of the embodiments. However, understood by one of ordinary skill in the art can be that the embodiments may be practiced without these specific details. For example, systems, processes, and other elements in the subject matter disclosed may be shown as components in block diagram form in order not to obscure the embodiments in unnecessary detail. In other instances, well-known processes, structures, and techniques may be shown without unnecessary detail in order to avoid obscuring the embodiments. Further, like reference numbers and designations in the various drawings indicated like elements.
(121) Also, individual embodiments may be described as a process which is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be re-arranged. A process may be terminated when its operations are completed, but may have additional steps not discussed or included in a figure. Furthermore, not all operations in any particularly described process may occur in all embodiments. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, the function's termination can correspond to a return of the function to the calling function or the main function.
(122) Furthermore, embodiments of the subject matter disclosed may be implemented, at least in part, either manually or automatically. Manual or automatic implementations may be executed, or at least assisted, through the use of machines, hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. When implemented in software, firmware, middleware or microcode, the program code or code segments to perform the necessary tasks may be stored in a machine readable medium. A processor(s) may perform the necessary tasks.
(123) Various methods or processes outlined herein may be coded as software that is executable on one or more processors that employ any one of a variety of operating systems or platforms. Additionally, such software may be written using any of a number of suitable programming languages and/or programming or scripting tools, and also may be compiled as executable machine language code or intermediate code that is executed on a framework or virtual machine. Typically, the functionality of the program modules may be combined or distributed as desired in various embodiments.
(124) Embodiments of the present disclosure may be embodied as a method, of which an example has been provided. The acts performed as part of the method may be ordered in any suitable way. Accordingly, embodiments may be constructed in which acts are performed in an order different than illustrated, which may include performing some acts concurrently, even though shown as sequential acts in illustrative embodiments. Further, use of ordinal terms such as “first,” “second,” in the claims to modify a claim element does not by itself connote any priority, precedence, or order of one claim element over another or the temporal order in which acts of a method are performed, but are used merely as labels to distinguish one claim element having a certain name from another element having a same name (but for use of the ordinal term) to distinguish the claim elements.
(125) Although the present disclosure has been described with reference to certain preferred embodiments, it is to be understood that various other adaptations and modifications can be made within the spirit and scope of the present disclosure. Therefore, it is the aspect of the append claims to cover all such variations and modifications as come within the true spirit and scope of the present disclosure.