Signalling game solution
According to different actions of players, the PBE of this game can be divided into three subcategories, namely, separating equilibrium, pooling equilibrium, and semiseparating equilibrium. As discussed below, these equilibriums are used to derive the full set of game solutions.
A separating equilibrium represents that different types of CAR-TFs select different actions with the probability of 1, i. For example, aggressive drivers always select to send a signal, while conservative drivers always choose to be silent i.
There are two different possible situations: 1 all aggressive drivers send a signal, and all conservative drivers do nothing; 2 all aggressive drivers do nothing, and all conservative drivers send a signal. In the first case, we assume all aggressive drivers send a signal, and all conservative ones do nothing.
According to the payoff matrix in the game tree, it costs i. Apparently, 0 is larger than ; therefore, it tends to wait instead of changing a lane. On the contrary, if CAR-E does not observe any actions i. If CAR-E changes lane, the payoff will be , which is higher than the payoff of waiting 0.
Thus, CAR-E is more likely to change lanes. To reach the equilibrium, payoffs of both sides are necessary to be considered. Several situations can be concluded in Table 2 according to corresponding branches of the game tree. In order to meet the assumption made before, a set of inequality can be derived:. Therefore, the condition of this equilibrium is. The only thing CAR-E can do is to predict the type according to the original probability.
There are two situations: all drivers go for signalling or do nothing. Here, if , then CAR-E will choose to change a lane. On the contrary, if , then CAR-E will choose to wait for another chance. In case that the first condition is matched, the payoffs of CAR-TF can be summarized in Table 3 based on its interest.
According to the discussion above, a set of inequality conditions can be derived: here comes the first strategy. The remaining branches can be derived by the same way. Semiseparating equilibrium is the most complicated situation. A conservative driver is more likely to yield when a vehicle in the other lane shows lane-changing intention.
Consequently, in this study, semiseparation equilibrium can be divided into two categories. One is that a part of aggressive CAR-TFs choose to send a signal and the rest not, while the conservative ones do not take any actions.
On the contrary, the other case is that a part of conservative CAR-TFs chooses to send a signal and the rest not, while all aggressive drivers choose to send a signal. The other scenario is more complicated, when there is no signal, CAR-E will have to determine the best strategy according to the probability. Let be the probability of the signalling action of aggressive drivers, i. Let be the probability of the lane-changing action of autonomous vehicles when observing a signal, i. Then, the probability of CAR-E observing nothing is.
Therefore, the payoffs of CAR-E under different strategies can be concluded below:. The assumption is that all the conservative drivers do not take any actions; therefore, from their perspective, , i. In conclusion, when aggressive CAR-TFs choose to send a signal or not, while the conservative ones do nothing. According to the analysis presented above, the whole model solution can be summarized in Table 5. This dataset, which was collected on Hollywood Freeway, Los Angeles, includes the detailed vehicle trajectories at every 0.
Therefore, records related to these three lanes, which could be seen as mandatory lane-changing behaviour, were removed. Moreover, we split the process of lane-changing into three phases, namely, lane-keeping LK decision horizon, lane-changing LC decision horizon, and LC duration. LC point is determined when the centre of the vehicle passes the lane boundary. Details can be seen in Figure 4.
In order to simulate lane-changing decision of autonomous vehicles, the records of lane-changing and waiting were selected randomly from the data. Additionally, there are more lane-keeping cases than lane-changing cases in the dataset. Too many lane-keeping cases will have an enormous effect on model calibration and cause a low predictive rate in lane-changing behaviour.
Therefore, it is important to determine the ratio between the records of lane-changing and lane-keeping. The longer the LK decision horizon is, the more the LK cases are. A sensitivity analysis therefore is performed to determine the LK decision horizon.
As a result, this study takes 2 seconds as the LK decision horizon, i. The strategies of CAR-E i. When the acceleration or deceleration is smaller than 0.
Due to the limitation of trajectory data, it is impossible to find out the exact time and position when a LC decision is made. However, it can be derived from LC duration since the LC point is easy to be determined.
LC duration is normally defined as the time taken by completing LC manoeuvre. Many researches have been done to figure out the LC duration Table 6. In this study, 4s is adopted, which is used to find out the endpoint of LC decision. Then, the start point for LC decision can be determined according to the 2-second decision time window.
Finally, a total of observations were selected, including lane-changing records and lane-keeping records. Table 7 shows the distribution of extracted strategies. The calibration of the proposed model is implemented in the way that we estimate the parameters in order to minimize the difference between observed decision in the NGSIM dataset and the decision predicted by the proposed model.
This paper adopts the calibration framework established by Liu et al. As shown in Figure 5 , the whole problem is divided into two levels: upper and lower level. The upper level is used to narrow the difference between predicted decisions and observed decision, while the lower level aims to find a full set of equilibrium for this game.
Before programming, decisions need to be extracted from the original observed data. Let k be the iteration index. At the first stage, a set of parameters are initialized. By applying these parameters into payoff functions defined before, strategies can be found for each vehicle using the PBE method. Then, we calculate the difference between predicted strategies and the actual decisions in upper level.
These steps are iterated and do not stop until the convergence is reached. The function of the upper problem of this programming is defined as the difference between the observed data and predicted data as below: where n is the number of observations; i is the index of records; and and are the predicted action and observed action, respectively. The genetic algorithm is used in the upper level problem to minimize the objective function since it is not limited by the form of functions [ 37 ].
On the contrary, the lower level problem is solved according to the perfect Bayesian equilibrium. In order to seek the entire solution set for the Nash equilibrium, tools like Gambit [ 38 ] and the Nashpy [ 39 ] package in Python [ 40 ] have been developed to find the equilibrium of a simple game. However, signalling game is more complicated because of its dynamic feature with incomplete information. Therefore, instead of adopting these packages directly, we explore three different equilibriums i.
Two indicators were calculated to measure model predictability, namely, recall also called sensitivity and F 1 score [ 41 ]. They are widely used in the classification model in machine learning and can be derived from equations 21 and 22 : where TP denotes the true positive cases, i.
We can see from the table that is lower than , which means that conservative drivers are more likely to regret than aggressive drivers. Also, it can be concluded that conservative drivers value distance more than aggressive drivers since is lower than.
Based on the calibrated parameters presented above, simulation experiments are performed. For the purpose of compassion, a traditional space-based LC model which only considers gaps between vehicles is also applied.
The simulation framework is presented in Figure 6. It can be divided into five parts, lanes initializing, vehicles input and output, manoeuvre controlling, information updating, and performance evaluation. The length of the lane is set to 10 kilometres.
It is assumed that a vehicle is randomly distributed in two lanes at the initial time initializing lanes. And there are three pairs of ramps on roads, where vehicles enter or exit the road randomly every second vehicle input and output.
In addition, the information of vehicles, such as position, speed, and acceleration, is updated every 0. The car-following part is designed according to equation 23 [ 42 ]: where sp is calculated by and are defined as the instantaneous speed of the following vehicle and the leading vehicle, respectively; D is the distance between two vehicles; D s denotes the safety distance; is the reaction time; and is the reciprocal of twice the maximum average deceleration of the vehicle.
A detailed parameter setting is presented in Table 9. And an example of the simulation scenario is presented in Figure 7 modified from Anushagj [ 43 ]. This section evaluates the model performance using efficiency and safety indicators, which can be presented by the successful rate of LC for the first time LC rate and the reciprocal of time to collision TTC [ 44 ]. LC rate means that drivers can finish LC successfully after the first attempt when there is a need to change lanes.
Figure 8 presents the LC rates of the proposed model and the space-based model under different traffic flow densities. One can see that, with the increasing density, the space headway between vehicles decreases.
Therefore, LC rates of the two models are both in the trend of declining. However, the LC rates of signalling game-based model are higher than those of the spaced-based model over the period, which means signalling game-based model is more efficient.
A possible scenario is when the space headway between autonomous vehicles and regular vehicles is not big enough, a space-based controller chooses to wait. On the contrary, the signalling game-based controller analyses and interacts with the other, taking the best action, i. This helps autonomous vehicles understand the traffic information and make a more reasonable strategy instead of being overly cautious, i. Note that the rates represented are the results of the first attempt of a vehicle to change lanes at the very first time when the lane-changing desire emerges.
In reality, it is impossible that every driver can always change lane successfully as soon as he or she wants to because there still needs time to find a proper position to cut in. In conclusion, the model established is superior to the space-based model in terms of efficiency. TTC refers to the time that a target vehicle can use by adjusting its own speed to avoid collision with the preceding vehicle. Its reciprocal can be calculated by using the below equation: where is the instantaneous speed of the following vehicle; is the instantaneous speed of the leading vehicle; and D is the distance between the two vehicles.
Obviously, when the reciprocal of TTC is negative, the speed of the following vehicle is lower than that of the leading vehicle, so there is no danger of collision. Conversely, when the reciprocal of the collision time is positive i. Figure 9 shows the results under different densities of traffic flow.
The reciprocal of TTC of the two lanes stays relatively steady as density changes. Thus, the performance of signalling the game-based model is almost as good as the spaced-based model in terms of safety. The results are shown in Table In another word, the proposed model not only has higher efficiency i. To evaluate the performance of the proposed model in its stability, the model was run under different scenarios regarding the varied ratios of aggressive drivers p and traffic flow densities.
Figure 10 and Table 11 show the results. Therefore, we can conclude that the performance of the signalling game-based model is stable under different values of p. The main emphasis of this paper is to establish an integrated lane-changing model for autonomous vehicles under mixed traffic flow condition by applying the signalling game approach.
Several simulations were performed to evaluate the performance of the proposed model. Therefore, we conclude that the proposed model improves the efficiency of lane-changing without decreasing the safety. Also, different ratios of the two types of drivers conservative or aggressive are set to test the sensitivity of the model. One can see that the signal game-based model is stable to the varying ratios, which means that it can be used in different areas with different composition of drivers.
In spite that the proposal model outperforms the space-based model, there is still room to further improve the model. One possibility is to relax the assumption that only two types of drivers exist.
This will unavoidably increase the complexity of the model. In addition, the data of mixed traffic flow involving autonomous vehicles do not exist in the NGSIM dataset, neither in many other available datasets. However, since autonomous vehicles are trained to imitate human behaviour, using traditional data to calibrate autonomous vehicles should not induce great difference. However, this should not rule out the possibility to recalibrate the proposed model when the data of connected vehicles become available.
Nevertheless, the proposed model shows its potential to be applied in complex situations, such as modelling the interactions and conflicts between connected vehicles with more driving styles and between vehicles with insufficient information of surroundings.
When dealing with these cases, the scope of the game needs to be expanded further, e. It will also be interesting to consider the impact of the weather conditions and the appearance of road obstacles on the proposed model. We consider these aspects as our future work. Readers can access the data underlying the findings of the study from the corresponding author zhangmr chd.
The authors declare that there are no conflicts of interest regarding the publication of this paper. This is an open access article distributed under the Creative Commons Attribution License , which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Article of the Year Award: Outstanding research contributions of , as selected by our Chief Editors.
Read the winning articles. Journal overview. Special Issues. Academic Editor: Meng Meng. Received 20 Aug Revised 11 Sep Accepted 17 Sep Published 07 Oct Abstract This paper attempts to propose a discretionary lane-changing decision-making model based on signalling game in the context of mixed traffic flow of autonomous and regular vehicles.
Introduction Lane-changing behaviour is vital in its effects on traffic flow. Literature Review In the literature of lane-changing research, three types of models dominate the modelling of lane-changing decisions: rule-based models, utility-based models, and game theory-based models [ 2 ].
Materials and Methods Here, we regard a lane-changing decision-making process as a game considering that game theories are potentially useful to the modelling of lane-changing behaviour.
Game Theory and Signalling Games Game theory is a powerful and well-developed mathematic tool. Table 1. Figure 1. Figure 2. Table 2. Table 3. Table 4. Table 5. Figure 3. Figure 4. Source Duration Mean s Range s Olsen et al.
Table 6. Table 7. Figure 5. Parameter Value Parameter Value Calibration 0. Table 8. Figure 6. Parameter Value Road map Two lanes, one direction, three pairs of ramps Road length 10 kilometres Safety distance 10 meters Speed [ Table 9. Figure 7. Figure 8. Figure 9. Table Figure Lane-changing rate under different scenarios road traffic density and. References Z. Ali, Z. Zheng, M. And most of the guides I could find only talked about more advanced applications, but not the basics.
There are many guides, both on Steam and the Factorio Forums that explain the game mechanic behind this. So you should just get started and then learn as you go along! And to get you started, here is just one basic rule when it comes to rails signaling! In the picture below, there's a simple junction. Assuming trains are allowed to move in the shown direction, we place a chain signal going into the junction and rail signals on all exits. Afterward it should look like this: Now for a more complicated example.
If trains are allowed to move in ALL directions through the junction, you follow the same rule: chain signals going in, rail signal going out. And you're done! No, really, it's that simple! Technically, it's not even an exception, because you're just following Rule Number One again! Remeber, "Going into a junction, place a chain signal". So when leaving a junction leads to another junction, instead of a rail signal, you should place a chain signal!
Here's an example! The rail signal in the red circle has been replaced with an chain signal. And then the basic "rail signals on all exits" part of the rule applies. Assuming again that you can move in all direction through both junctions, it should end up looking like this:.
If you wish to signal crossings, it works similar to junctions, except you would only have one normal signal leaving the crossing. A two-way crossing should look like this:. Sometimes you will want trains to deliver lots of materials to a factory and might end up with several train stations right next to each other. If you have more then one train delivering one kind of material, you can make a "parking area" so all your trains will patiently wait their turn, like this: For this, you just need to branch a rail off into several tracks, leave enough space for your preferred number of wagons hover over a signal to display indicators for your train length and then merge them again into the track going to your train stations.
Make sure the signal before your parking spaces is a chain signal and begin every parking space with a rail signal and finish them with another chain signal. Place another chain signal after the lines merge into one again. Below is an example, the signals marked blue are chain signals and the red ones are rail signals: If you correctly signal your rails like this, you should get well-behaved trains all neatly lined up, like so: Don't forget to put a rail signal before your Unloading Station as well!
Another very popular way of making sure your trains don't crash into each other all the time is to use two raillines, each one only going in one direction, like this: Now this example has a space of two rails inbetween notice the extra rails in the middle , big power poles for energy and rail signals along the lines to regularly make "blocks" so your trains don't have to wait all the time again, not going into detail here, just trust me on this.
This may seem like a lot for just a little bit of track, but once you have robots placing these down, it will be easy and quick. Everything is arranged in a repeatable pattern so you can just place these blueprints down one after the other without a worry.
Until then, you can make do with just a single, two-way rail, in my experience. Since each line only goes in one direction it can be a little complicated to branch off of the main line. So if you need ideas, the following pictures show some examples of how I usually do just that. A single line branching off of the main line: A single line going into the main line: T-Junction a two-rail line branching off of another two-rail line : A four-way crossing: I know these look crazy.
I find that crossings are easier to navigate in manual mode, while roundabouts provide an easy opportunity to do a U-turn. So I personally use both. Now for one last tip: I really like to blueprint a simple c-shaped, curved rail. It really helps building these junctions without having to do them over and over again because you misaligned something:. The last tip I have for you is to use the "debug mode". You can toggle "show rail blocks" under F4. Among many other things, it will also show you your rail's "blocks" that you probably keep hearing about, when it comes to rail signaling.
It can turn a hot mess like this: Into this: It's quite simple if you use this. Each colour represent one "block" and as long as there is a train anywhere on the block, the rails going into this block will be red.
And chain signals will also turn red if the next signal ist red, including other chain signals you can make a chain signal Just go ahead and place some signals all over the place with debug mode on, it will help you get a feel for this whole "block" buisness!
If you still find it confusing, don't worry about it! Just use the rules and examples in this guide and you'll be good. But I found, this really helped me understand all this talk about "blocks".
And now you're an expert on rail signaling! I hope this will help any players who were as confused by rail signaling at first as I was. Thank you for reading! If you'd like a blueprint book string for my rail designs, you can use this link [www. Wall-Nut [author] 22 Dec, am.
0コメント