# Estimation Method for Road Link Travel Time Considering the Heterogeneity of Driving Styles
## 2 Materials and Methods
### Driver Classification and Outlier Supplement  
As [PERSON] and [PERSON] described, driving behavior is influenced by many factors such as lifestyle and personality [31]. There are considerable discrepancies in different drivers' driving styles. First, there are differences in the performance between different brands of vehicles, such as acceleration and deceleration. Second, there is a stark difference between the driving styles of autonomous vehicles and manually driven vehicles. Autonomous driving may be safer, energy-efficient, and more environmentally friendly than human driving. [32] There are also differences in driving habits between the young and the old [33]. For the outliers and missing values in the travel time, if the data are supplemented directly based on the comprehensive data of all driving people as the standard, it will lead to too many reference sources for the supplementary data, which may cause the additional data to be distorted. Hence, to achieve higher supplementation accuracy, it is necessary to classify the driving crowd and supplement the abnormal and missing data within each category to avoid mutual influence between data with lower correlation. We consider using the DBSCAN algorithm to identify driver or travel time heterogeneity from ANPR data. It is an effective density-based clustering method. Compared with other clustering methods, the DNSCAN algorithm can split the data into arbitrary-shaped clusters and does not require an a priori number of groups, which is, likewise, not sensitive to the order of points in the data [34]. For the travel time dataset \(X\), the basic definition of the DBSCAN algorithm is as follows [35]:  
\(\varepsilon\)-close neighbor: For \(x_{j}\in X\), the \(\varepsilon\)-close neighbor contains samples in the dataset \(X\) whose distance from \(x_{j}\) is not greater than \(\varepsilon\), that is \(N_{\varepsilon}\big{(}x_{j}\big{)}=\big{\{}x_{i}\in X\big{|}dist\big{(}x_{i},x_{j}\big{)}\leq\varepsilon\big{\}}\). The core point \(x_{j}\) is the point that contains no less than _MinPts_ (a number) samples in the \(\varepsilon\)-close neighbor of the point. If \(x_{j}\) is located in the \(\varepsilon\)-close neighbor of \(x_{i}\), and \(x_{i}\) is the core point, then it is defined that \(x_{j}\) is directly density-reachable (DDR) by \(x_{i}\). For \(x_{j}\) and \(x_{i}\), if there is a sample sequence \(p_{1},p_{2},\ldots,p_{n}\), where \(p_{1}=x_{i}\), \(p_{n}=x_{j}\) and \(p_{i+1}\) is DDR by \(p_{i}\), then the \(x_{j}\) is density-reachable (DR) by \(x_{i}\). For \(x_{j}\) and \(x_{i}\), if \(x_{k}\)\(i\) SDR, then the \(x_{j}\) is density-connected (DC) by \(x_{i}\). The DBSCAN algorithm can cluster dense data of any shape, and it is not sensitive to abnormal points in the dataset, and the clustering results are not biased. In contrast, the k-means algorithm is generally only suitable for convex datasets. The input parameters of the DBSCAN algorithm are _MinPts_ and the radius of the \(\varepsilon\)-close neighbor, and the outputs are the clustering results and noise data of the sample points. The DBSCAN algorithm finds some clusters of DC objects to achieve the maximum density. The specific steps of the DBSCAN algorithm considering the heterogeneity of driving styles are as follows [36; 37]:  
1. Aimlessly select one of the unprocessed objects for the sample set \(X\). The object \(x_{j}\) is a core point when there are more than _MinPts_ points in the \(\varepsilon\)-close neighbor of \(x_{j}\). 2. Amass all the objects in the sample set \(X\) that are DR to the object \(x_{j}\) and regard them as a cluster. 3. Over the process of DC, produce the final cluster. 4. For the remaining objects, repeat steps 2 and 3 until all objects have been handled. The number of clusters in the output results varies significantly with the input parameter values of the DBSCAN algorithm.