## 2 System Model
### Computation Model  
(1) Local Computing: The maximum data volume that the \(i\)-th task vehicle can process locally in time slot \(t\) is  
\[D_{i,\text{loc}}^{\max}(t)=\frac{f_{i}\tau}{C}, \tag{2}\]  
where \(f_{i}\) is the CPU frequency for the \(i\)-th task vehicle and \(C\) is the the task's computational intensity, representing the CPU cycles needed per bit of data processing. Denote \(D_{i}^{\text{rem}}(t)\) as the remaining data amount of the task at the head of the task queue for the \(i\)-th task vehicle in time slot \(t\). If \(D_{i,\text{loc}}^{\max}(t)\geq\xi_{i}D_{i}^{\text{rem}}(t)\), the part of the task processed locally can be completed in time slot \(t\), otherwise it cannot be completed. Therefore, the amount of local computation data \(D_{i}^{\text{loc}}(t)\) of the \(i\)-th task vehicle in time slot \(t\) is  
\[D_{i}^{\text{loc}}(t)=\min\Bigl{\{}D_{i,\text{loc}}^{\max}(t),\xi_{i}D_{i}^{ \text{rem}}(t)\Bigr{\}}. \tag{3}\](2) Edge Computing: When offloading the task to the service nodes, we can choose the RSU or other service vehicles to assist in the computation. Let the binary variable \(\beta_{ij}\) denote the offloading selection factor. \(\beta_{ij}=1\) indicates that the \(i\)-th task vehicle offloads the task to the \(j\)-th service node; \(\beta_{ij}=0\) indicates that the \(i\)-th task vehicle does not offload the task to the \(j\)-th service node. Denote \(D_{i,j}^{\text{trans}}\) as the amount of data offloaded by the \(i\)-th task vehicle to the \(j\)-th service node in time slot \(t\), which is given by  
\[D_{i,j}^{\text{trans}}(t)=\min\big{\{}\beta_{ij,j}\tau r_{i,j}(t),\beta_{i,j}(1 -\bar{\xi}_{i})D_{i}^{\text{rem}}(t)\big{\}}. \tag{4}\]  
The MEC server and each service vehicle maintain their own independent task queues. When tasks are offloaded from a task vehicle to the service nodes, they are directly added to the tail of the corresponding queue and processed on a first-come, first-served (FCFS) basis. Specifically, if \(D_{i,j}^{\text{trans}}(t)=0\), it means that no task is offloaded; otherwise, the task volume \(D_{i,j}^{\text{trans}}(t)\) is added to the task queue of the \(j\)-th service node. So, the task queue of the MEC server \(Q_{\text{MEC}}(t)\) consists of the offloaded tasks from all task vehicles, which is given by  
\[Q_{\text{MEC}}(t)=\{(N_{k}^{\text{MEC}},R_{k}^{\text{MEC}}(t))\mid k\in\{1,2,...,K^{\text{MEC}}(t)\}\}, \tag{5}\]  
where \(N_{k}^{\text{MEC}}\) is the ID of the task vehicle that offloaded the task \(k\) in the queue of MEC server, \(R_{k}^{\text{MEC}}(t)\) is the remaining unprocessed data volume of the task \(k\) in time slot \(t\), and \(K^{\text{MEC}}(t)\) is the total number of tasks in the MEC server queue in time slot \(t\). Similarly, for all \(n\in\mathcal{SV}\), the task queue of the \(n\)-th service vehicle \(Q_{n}(t)\) is given by  
\[Q_{n}(t)=\{(N_{k}^{n},R_{k}^{n}(t))\mid k\in\{1,2,...,K_{n}(t)\}\}, \tag{6}\]  
where \(N_{k}^{n}\) is the ID of the task vehicle that offloaded the \(k\)-th task in the queue of \(n\)-th service vehicle, \(R_{k}^{n}(t)\) is the remaining unprocessed data volume of task \(k\) in time slot \(t\), and \(K_{n}(t)\) is the total number of tasks in the queue of the \(n\)-th service vehicle in time slot \(t\). For the MEC server, it sequentially processes tasks from the head of the queue at the beginning of each time slot. \(C_{\text{rem}}^{\text{MEC}}(t)\) is defined as the remaining computational capacity of the MEC server during time slot \(t\). At the beginning of the time slot, it is initialized to the maximum data volume that the MEC server can process within that time slot, denoted as  
\[C_{\text{max}}^{\text{MEC}}=\frac{f^{\text{MEC}}\tau}{C}, \tag{7}\]  
where \(f^{\text{MEC}}\) is the CPU frequency for the MEC server. The change in \(C_{\text{rem}}^{\text{MEC}}(t)\) during time slot \(t\) is expressed by  
\[C_{\text{rem}}^{\text{MEC}}(t)=