## 2 Improved APF Algorithm
### Vehicle Collision Detection Model
The gray grid in the figure is the expanded obstacle, but there is a phenomenon that the vehicle carrier covers the gray grid because this type of obstacle does not provide repulsive force, and if the same size of repulsive force is still applied to the carrier, it will cause the vehicle carrier to be overstressed and the steering effect will not be obvious, so the grid is only for expanding the distance with the original obstacle to provide a certain safe distance base for local path planning; at the same time, the target point bias strategy further expands the distance between the temporary target point and the obstacles to prevent the vehicle from colliding with the obstacles when steering; the steering angles of the vehicles are all limited to \(\pm 40^{\circ}\), the maximum angle of the left turn is \(28.35^{\circ}\), the maximum angle of the right turn is \(36.98^{\circ}\), and the average steering angle is \(8.38^{\circ}\); comparing the planned paths with the three-times B-spline, the three-times B-spline curves cannot deal well with the phenomenon of sudden corner change caused by vehicle turning, while the three-point arc method based on the steering model used in this paper is still smooth in the turning stage. The APF algorithm with the added collision detection model is compared with the unadded collision detection model, and the comparison results are shown in Table 1.  
As can be seen from Table 1, the APF algorithm with the addition of three rows of 14 envelope circles improves the minimum distance between the planned path and the obstacle by 66.67%, although the algorithm running time increases slightly (by 12.23%). This is because too close a distance triggers the safety mechanism of the expansion detection model, and the obstacle provides repulsive force in advance to ensure that it will not touch the obstacle, so the relative increase in time to improve the safety of the path is tolerable. Figure 28: Path smoothing comparison chart. Figure 27: Steering angle diagram. Although the comparison of the algorithm running time was conducted, the improved method still needs to be analyzed for theoretical cost complexity, including time complexity and space complexity. After theoretical analysis, the time complexity of the method is O(N), where N is the number of obstacles in the environment. Although the introduction of the multi-envelope circle model increases the computation of the constant factor, the method improves the accuracy of vehicle collision detection and demonstrates a good balance of performance and accuracy. In each iteration, we compute 14 fixed-position envelope circle centers. These circle centers are distributed in three alignments to form a comprehensive coverage of the vehicle body. The computation is independent of the number of obstacles and has a time complexity of O(1). For each envelope circle, we need to calculate its distance to each obstacle in the environment, and a total of 14 \(\times\) N distance calculations are performed. Although the computation is 14 times more than the single-point model, the constant coefficient can be ignored from the asymptotic analysis point of view, and the complexity is still O(N). When an obstacle enters the detection range, we compute the distance-based repulsive potential field. This process has O(N) complexity for the worst case. The space complexity, also O(N), is mainly used to store the distance and force value information associated with the N obstacles. 14 The storage requirement for the circle center coordinates is a fixed value and has a negligible effect on the space complexity. The envelope circle model does not change the asymptotic complexity O(N) of the algorithm, although it increases the computational effort by a constant factor. This increase in computational cost is fully justified considering that the method significantly improves the accuracy of collision detection by meticulously modeling the vehicle shape, especially in complex environments and narrow passages.