Author Contributions
Conceptualization, H.Z.; methodology, H.Z.; software, H.Z.; validation, H.Z.; formal analysis, H.Z.; investigation, H.Z.; resources, K.T.; data curation, M.Y. (Masaki Yamaoka), M.Y. (Minori Yamataka) and H.Z.; writing—original draft preparation, H.Z.; writing—review and editing, H.Z., A.C. and K.F.; visualization, H.Z.; supervision, A.C., K.F. and K.T.; project administration, A.C. and K.T.; funding acquisition, A.C. and K.T. All authors have read and agreed to the published version of the manuscript.
Figure 1.
Illustration of two approaches for detecting DUI driving behaviors: (a) detect DUI driving behaviors using binary classification; (b) detect DUI driving behaviors using novelty detection.
Figure 1.
Illustration of two approaches for detecting DUI driving behaviors: (a) detect DUI driving behaviors using binary classification; (b) detect DUI driving behaviors using novelty detection.
Figure 2.
Illustration of the overall structure of DUIncoder.
Figure 2.
Illustration of the overall structure of DUIncoder.
Figure 3.
Network structure of the driver model in DUIncoder.
Figure 3.
Network structure of the driver model in DUIncoder.
Figure 4.
Illustration of the implement process of DUIncoder: (a) training process of the driver model; (b) validating process of the driver model; (c) fitting process of the novelty detector; (d) inferring process of DUIncoder.
Figure 4.
Illustration of the implement process of DUIncoder: (a) training process of the driver model; (b) validating process of the driver model; (c) fitting process of the novelty detector; (d) inferring process of DUIncoder.
Figure 5.
The driving simulator for collecting both normal and drunk driving behaviors.
Figure 5.
The driving simulator for collecting both normal and drunk driving behaviors.
Figure 6.
Examples of scenes in the three different routes: ((top): route “near accident urban”; (middle): route “accident”; (bottom): route “highway”). The green point in the trajectory maps indicates the vehicle’s current location.
Figure 6.
Examples of scenes in the three different routes: ((top): route “near accident urban”; (middle): route “accident”; (bottom): route “highway”). The green point in the trajectory maps indicates the vehicle’s current location.
Figure 7.
Flow diagram of the data collection process.
Figure 7.
Flow diagram of the data collection process.
Figure 8.
Example of driving behaviors during a journey: (a) vehicle velocity (km/h); (b) steering angle ([−1, 1]); (c) throttle position ([0, 1]); (d) brake position ([0, 1]); (e) lane center deviation (m); (f) yaw rotation speed (rad/s).
Figure 8.
Example of driving behaviors during a journey: (a) vehicle velocity (km/h); (b) steering angle ([−1, 1]); (c) throttle position ([0, 1]); (d) brake position ([0, 1]); (e) lane center deviation (m); (f) yaw rotation speed (rad/s).
Figure 9.
Box-plot comparison with baseline methods in terms of detecting DUI driving behavior in normal and drunk records across all three different routes.
Figure 9.
Box-plot comparison with baseline methods in terms of detecting DUI driving behavior in normal and drunk records across all three different routes.
Figure 10.
Trajectory comparison with baseline methods in terms of detecting DUI driving behavior in normal and drunk records across all three different routes. The red points in the trajectory denote frames predicted as drunk driving.
Figure 10.
Trajectory comparison with baseline methods in terms of detecting DUI driving behavior in normal and drunk records across all three different routes. The red points in the trajectory denote frames predicted as drunk driving.
Figure 11.
Comparison of actual and predicted driving behaviors in anomalous segments detected by DUIncoderR in “accident” route: (a) the red section within the dashed box indicates the location of the selected detected anomalous segment within the entire trajectory; (b) a comparison of actual and predicted driving behaviors within this segment, where orange represents the predicted driving behavior, and blue represents the actual driving behavior: (i) vehicle velocity (km/h); (ii) steering angle ([−1, 1]); (iii) throttle position ([0, 1]); (iv) brake position ([0, 1]); (v) lane center deviation (m); (vi) yaw rotation speed (rad/s).
Figure 11.
Comparison of actual and predicted driving behaviors in anomalous segments detected by DUIncoderR in “accident” route: (a) the red section within the dashed box indicates the location of the selected detected anomalous segment within the entire trajectory; (b) a comparison of actual and predicted driving behaviors within this segment, where orange represents the predicted driving behavior, and blue represents the actual driving behavior: (i) vehicle velocity (km/h); (ii) steering angle ([−1, 1]); (iii) throttle position ([0, 1]); (iv) brake position ([0, 1]); (v) lane center deviation (m); (vi) yaw rotation speed (rad/s).
Figure 12.
Box-plot comparison with baseline methods in terms of detecting DUI driving behavior in normal and drunk records of three different routes, respectively: (a) route “accident”; (b) route “urban”; (c) route “highway”.
Figure 12.
Box-plot comparison with baseline methods in terms of detecting DUI driving behavior in normal and drunk records of three different routes, respectively: (a) route “accident”; (b) route “urban”; (c) route “highway”.
Figure 13.
Box-plot comparison of DUI behavior detection by DUIncoders trained on different scenarios in normal and drunk data for three routes: (a) comparison between DUIncoderGs on all three routes; (b) comparison between DUIncoderGs on route “accident”; (c) comparison between DUIncoderGs on route “urban”; (d) comparison between DUIncoderGs on route “highway”; (e) comparison between DUIncoderRs on all three routes; (f) comparison between DUIncoderRs on route “accident”; (g) comparison between DUIncoderRs on route “urban”; (h) comparison between DUIncoderRs on route “highway”.
Figure 13.
Box-plot comparison of DUI behavior detection by DUIncoders trained on different scenarios in normal and drunk data for three routes: (a) comparison between DUIncoderGs on all three routes; (b) comparison between DUIncoderGs on route “accident”; (c) comparison between DUIncoderGs on route “urban”; (d) comparison between DUIncoderGs on route “highway”; (e) comparison between DUIncoderRs on all three routes; (f) comparison between DUIncoderRs on route “accident”; (g) comparison between DUIncoderRs on route “urban”; (h) comparison between DUIncoderRs on route “highway”.
Figure 14.
Box-plot comparison of DUI behavior detection by DUIncoders using different size of sliding window for route “accident” and route “urban”: (a) different window size setting for DUIncoderG; (b) different window size setting for DUIncoderR.
Figure 14.
Box-plot comparison of DUI behavior detection by DUIncoders using different size of sliding window for route “accident” and route “urban”: (a) different window size setting for DUIncoderG; (b) different window size setting for DUIncoderR.
Figure 15.
Box-plot comparison of DUI behavior detection by DUIncoders using different hyperparameter settings of novelty detector for route “accident” and route “urban”: (a) different settings for DUIncoderG; (b) different settings for DUIncoderR.
Figure 15.
Box-plot comparison of DUI behavior detection by DUIncoders using different hyperparameter settings of novelty detector for route “accident” and route “urban”: (a) different settings for DUIncoderG; (b) different settings for DUIncoderR.
Figure 16.
Box-plot comparison of DUI behavior detection by DUIncoders using different proportion of training data for route “accident” and route “urban”: (a) different settings for DUIncoderG; (b) different settings for DUIncoderR.
Figure 16.
Box-plot comparison of DUI behavior detection by DUIncoders using different proportion of training data for route “accident” and route “urban”: (a) different settings for DUIncoderG; (b) different settings for DUIncoderR.
Table 1.
Participants’ driving and drinking-related characteristics.
Table 1.
Participants’ driving and drinking-related characteristics.
Characteristic | Mean ± SD * | Min | Max |
---|
Age [years] | 38.7 ± 12.3 | 26 | 58 |
Weight [kg] | 67.0 ± 11.0 | 55 | 95 |
Height [cm] | 172.6 ± 12.8 | 165 | 178 |
Driving experience [years] | 19.4 ± 12.8 | 5 | 39 |
Driving distance [km/year] | 6480 ± 5780 | 0 | 18,000 |
Frequency of alcohol consumption [1~9] † | 5.7 ± 1.3 | 5 | 8 |
Average alcohol consumption [mL] | 50.0 ± 32.5 | 25 | 125 |
Table 2.
Implementation details of the selected baseline methods.
Table 2.
Implementation details of the selected baseline methods.
Model | Framework | Hyperparameters |
---|
LDA | scikit-learn [51] | significant threshold |
AdaBoost | scikit-learn [51] | max number of estimators |
|
XGBoost | XGBoost [52] | max number of estimators |
|
SVM | cuML [53] | regularization parameter |
in kernel coefficient |
RF | cuML [53] | number of trees |
max depth of the tree |
to split an internal node |
VAE | PyTorch [50] scikit-learn [51] | symmetric encoder/decoder |
latent distribution dimension |
learning rate of Adam |
step scheduler , |
isolation forest |
Table 3.
Statistical and performance metric comparison with baseline methods in terms of detecting DUI driving behavior in normal and drunk records across all three routes.
Table 3.
Statistical and performance metric comparison with baseline methods in terms of detecting DUI driving behavior in normal and drunk records across all three routes.
Model | Minimum | Median | Maximum | IQR | AUC ↑ | p-Value ↓ |
---|
LDA * | 0.0236/0.0505 | 0.1741/0.1905 | 0.2996/0.3958 | 0.1083/0.1560 | 0.581 | 0.218 |
(+0.0269) | (+0.0163) | (+0.0962) | (+0.0476) |
SVM * | 0.0341/0.0666 | 0.1069/0.1921 | 0.2907/0.6850 | 0.1116/0.2639 | 0.762 | 0.001 |
(+0.0325) | (+0.0851) | (+0.3943) | (+0.1522) |
RF * | 0.0305/0.0688 | 0.1530/0.2666 | 0.3484/0.6975 | 0.1054/0.2545 | 0.760 | <0.001 |
(+0.0384) | (+0.1136) | (+0.3492) | (+0.1492) |
ADA * | 0.0803/0.1097 | 0.1545/0.2867 | 0.3801/0.6601 | 0.0999/0.2328 | 0.753 | 0.002 |
(+0.0295) | (+0.1322) | (+0.2800) | (+0.1329) |
XGB * | 0.1054/0.1283 | 0.1901/0.3380 | 0.4669/0.7873 | 0.1355/0.2517 | 0.751 | 0.002 |
(+0.0229) | (+0.1479) | (+0.3203) | (+0.1162) |
VAE | 0.0001/0.0000 | 0.0065/0.0103 | 0.0202/0.0355 | 0.0088/0.0144 | 0.588 | 0.051 |
(−0.0001) | (+0.0038) | (+0.0153) | (+0.0056) |
DUIncoderG | 0.0029/0.0023 | 0.0078/0.0127 | 0.0198/0.0502 | 0.0069/0.0213 | 0.657 | 0.004 |
(−0.0006) | (+0.0050) | (+0.0304) | (+0.0143) |
DUIncoderR | 0.008/0.0267 | 0.0125/0.1519 | 0.1970/0.3613 | 0.0773/0.1234 | 0.847 | <0.001 |
(+0.0260) | (+0.1394) | (+0.1643) | (+0.0461) |
Table 4.
Performance metric comparison with baseline methods in terms of detecting DUI driving behavior in normal and drunk records of three different routes, respectively.
Table 4.
Performance metric comparison with baseline methods in terms of detecting DUI driving behavior in normal and drunk records of three different routes, respectively.
Model | Accident | Urban | Highway |
---|
AUC ↑ | p -Value ↓
| AUC ↑ | p-Value ↓
| AUC ↑ | p-Value ↓
|
---|
LDA * | 0.656 | 0.214 | 0.589 | 0.403 | 0.600 | 0.454 |
SVM * | 0.767 | 0.076 | 0.689 | 0.180 | 0.833 | 0.015 |
RF * | 0.778 | 0.072 | 0.789 | 0.051 | 0.789 | 0.013 |
ADA * | 0.722 | 0.121 | 0.767 | 0.124 | 0.789 | 0.033 |
XGB * | 0.744 | 0.098 | 0.778 | 0.123 | 0.756 | 0.023 |
VAE | 0.722 | 0.077 | 0.589 | 0.262 | 0.500 | 0.404 |
DUIncoderG | 0.833 | 0.005 | 0.622 | 0.212 | 0.733 | 0.111 |
DUIncoderR | 0.889 | 0.001 | 0.878 | 0.007 | 0.867 | 0.011 |
Table 5.
Performance metric comparison of DUI behavior detection by DUIncoders trained on different scenarios in normal and drunk data for three routes.
Table 5.
Performance metric comparison of DUI behavior detection by DUIncoders trained on different scenarios in normal and drunk data for three routes.
Model | Training | Evaluation |
---|
A | U | H | All | Accident | Urban | Highway |
---|
AUC ↑ | p-Value ↓ | AUC ↑ | p-Value ↓
| AUC ↑ | p-Value ↓
| AUC ↑ | p-Value ↓
|
---|
| ✓ | | | 0.584 | 0.923 | 0.878 | 0.010 | 0.567 | 0.580 | 0.600 | 0.390 |
| ✓ | | 0.531 | 0.922 | 0.589 | 0.350 | 0.622 | 0.202 | 0.567 | 0.431 |
| | ✓ | 0.525 | 0.928 | 0.578 | 0.435 | 0.556 | 0.522 | 0.511 | 0.737 |
✓ | ✓ | | 0.599 | 0.904 | 0.867 | 0.012 | 0.589 | 0.175 | 0.578 | 0.553 |
✓ | ✓ | ✓ | 0.677 | 0.002 | 0.833 | 0.006 | 0.622 | 0.212 | 0.733 | 0.112 |
| ✓ | | | 0.590 | 0.090 | 0.922 | <0.001 | 0.600 | 0.284 | 0.644 | 0.393 |
| ✓ | | 0.575 | 0.433 | 0.711 | 0.099 | 0.878 | 0.003 | 0.589 | 0.601 |
| | ✓ | 0.538 | 0.905 | 0.644 | 0.414 | 0.589 | 0.369 | 0.500 | 0.641 |
✓ | ✓ | | 0.680 | 0.049 | 0.911 | 0.001 | 0.856 | 0.001 | 0.611 | 0.511 |
✓ | ✓ | ✓ | 0.851 | <0.001 | 0.889 | 0.001 | 0.878 | 0.007 | 0.867 | 0.012 |
Table 6.
Performance metric comparison of DUI behavior detection by DUIncoders using different size of sliding window for route “accident” and route “urban”.
Table 6.
Performance metric comparison of DUI behavior detection by DUIncoders using different size of sliding window for route “accident” and route “urban”.
Model | Window Size | AUC ↑ | p-Value ↓ |
---|
| 5 s | 0.772 | 0.002 |
10 s | 0.703 | 0.006 |
15 s | 0.733 | 0.006 |
20 s | 0.748 | 0.004 |
| 5 s | 0.867 | <0.001 |
10 s | 0.878 | <0.001 |
15 s | 0.881 | <0.001 |
20 s | 0.886 | <0.001 |
Table 7.
Performance metric comparison of DUI behavior detection by DUIncoders using different hyperparameter settings of novelty detector for route “accident” and route “urban”.
Table 7.
Performance metric comparison of DUI behavior detection by DUIncoders using different hyperparameter settings of novelty detector for route “accident” and route “urban”.
Model | Contamination | AUC ↑ | p-Value ↓ |
---|
| 0.001 | 0.721 | 0.003 |
0.005 | 0.711 | 0.005 |
0.01 | 0.703 | 0.007 |
0.05 | 0.694 | 0.017 |
0.1 | 0.686 | 0.028 |
| 0.001 | 0.872 | <0.001 |
0.005 | 0.872 | <0.001 |
0.01 | 0.878 | <0.001 |
0.05 | 0.894 | <0.001 |
0.1 | 0.894 | <0.001 |
Table 8.
Performance metric comparison of DUI behavior detection by DUIncoders using different proportions of training data for route “accident” and route “urban”.
Table 8.
Performance metric comparison of DUI behavior detection by DUIncoders using different proportions of training data for route “accident” and route “urban”.
Model | Data Proportion | AUC ↑ | p-Value ↓ |
---|
| 20% | 0.722 | 0.004 |
40% | 0.750 | 0.003 |
60% | 0.725 | 0.004 |
80% | 0.733 | 0.003 |
100% | 0.703 | 0.006 |
| 20% | 0.806 | 0.001 |
40% | 0.869 | <0.001 |
60% | 0.872 | <0.001 |
80% | 0.864 | <0.001 |
100% | 0.878 | <0.001 |
Table 9.
Inference time and memory consumption for DUIncoder with different devices.
Table 9.
Inference time and memory consumption for DUIncoder with different devices.
CPU | GPU | Memory [MB] | Time [ms] |
---|
Intel E5-2697 v3 | NVIDIA GeForce RTX 2080 Ti | 327.83 | 1510.0 |
Intel E5-2697 v3 | NVIDIA TITAN X (Pascal) | 327.83 | 1791.2 |
Intel E5-2699 v4 | NVIDIA RTX A6000 | 327.83 | 1185.4 |
AMD EPYC 7542 | NVIDIA GeForce RTX 3090 | 327.83 | 1125.0 |