# Harmonized Autonomous-Human Vehicles via Simulation for Emissions Reduction in Riyadh City
## 4 Modeling AV Communication and Coordinated Behavior  
The simulation of autonomous vehicle (AV) communications remains a challenge in microscopic traffic simulators such as SUMO, which do not natively support explicit vehicle-to-vehicle (V2V), vehicle-to-infrastructure (V2I), or vehicle-to-network (V2N) protocols. However, the behavioral effects of these communication types can be approximated using parameter tuning, API interaction, and modular scripting. This section presents how such communication paradigms are represented in our simulations as well as the assumptions and modules used to replicate real-world coordinated AV behavior. In this study, AVs were configured using the Krauss car-following model, which was adjusted to reflect coordinated behavior enabled by V2X systems. Parameters such as a reduced reaction time (\(\tau=0.5\,\mathrm{s}\)), shorter minimum following gap (\(\mathrm{minGap}=1.5\,\mathrm{m}\)), and enhanced acceleration/deceleration thresholds were used to simulate smoother movement and anticipatory control. Cooperative lane-changing was enabled through lcStrategic and lcCooperative. This allowed for predictive and synchronized merging, which is critical in congested intersections. To emulate communication-driven coordination, we used the TraCI API to dynamically control vehicle behavior during simulation runs. The TraCI interface was called at a frequency of \(\mathbf{1}\,\mathbf{Hz}\) (one API call per simulated second), allowing each AV to retrieve traffic signal states, adjust its speed relative to neighbors, and receive routing updates in near-real time. Specifically, functions such as traci.vehicle.getNeighbors() and traci.trafficlight.getRedYellowGreenState() were employed to approximate V2V and V2I behavior, respectively, while a centralized logic was used to govern V2N-like coordination. Although this 1-s resolution captures essential behavioral dynamics with manageable computational overhead, it abstracts finer network-layer effects such as sub-second communication delays, jitter, and packet loss. We acknowledge this limitation in Section 6 and highlight the potential for future studies to incorporate full-stack V2X simulation platforms (e.g., OMNeT++ or Eclipse MOSAIC) for more granular validation and protocol-aware experimentation. Figure 4 illustrates the conceptual architecture of AV communication, highlighting how AVs interact through V2V, receive signal information via V2I, and maintain connectivity with a remote control unit or RSU via V2N. This architecture represents the baseline for emulating real-world connectivity in traffic systems. \begin{table}
\begin{tabular}{l c c c} \hline \hline
**Vehicle Type** & **Fuel Type** & **Emission Factor (g/km)** & **Trip Emissions (g)** \\ \hline Gasoline Sedan & Petrol & 180 & 2376 \\ Diesel SUV & Diesel & 220 & 2904 \\ Hybrid Car & Hybrid & 110 & 1452 \\ Electric Vehicle & Electric & 0 & 0 \\ Pickup Truck & Petrol & 250 & 3300 \\ \hline \hline \end{tabular}
\end{table} 
Table 4: Estimated CO\({}_{2}\) emissions by vehicle type (pre-AV). In our SUMO-based implementation, this architecture is approximated using the Traffic Control Interface (TraCI) Python 3.8 (Python Software Foundation, Wilmington, DE, USA). API. As shown in Figure 5, V2V behavior is emulated via synchronized control of surrounding vehicles using vehicle ID and neighbor information. V2I communication is achieved through traffic light access using traci.trafficlight.getRedYellowGreenState(), allowing AVs to adapt speed proactively. V2N is simulated through centralized logic via external Python scripts, mimicking an RSU dispatching instructions to vehicles using TraCI. Simulation Implementation Overview:
1. Behavioral Approximation (SUMO Parameters): * Car-following (Krauss): tau, minGap, accel, decel, sigma * Lane-changing (LC2013): lcStrategic,lcCooperative,lcSpeedGain
2. Dynamic AV Coordination (Python + TraCI): * Access AV positions, speeds, and neighbors * Control vehicle behavior dynamically (e.g., speed synchronization, rerouting)
3.