## 3 Model Development
### Ad Doc Data Process  
Ad hoc distributed simulation is a collection of logical processes, \(\text{LP}_{1}\), \(\text{LP}_{2}\), \(\text{LP}_{3}\),..., \(\text{LP}_{n}\), which share a global state G that contains object instances \(\text{G}_{1}\), \(\text{G}_{2}\), \(\text{G}_{3}\),..., \(\text{G}_{m}\). The global object instances are saved in Space-Time Memory (STM) inside the server (Figure 1), and synchronized in an optimistic fashion. All the notations described in this study are summarized in Table 3. Once \(LP_{i}\) publishes \(LP_{i,j,k}^{m,p}\) which denotes local state estimates of \(LP_{i}\) on link \(j\) at simulation time k to the server (m; data type and \(p\); link type), the estimates are transferred from \(LP_{i}\) to the message queue located inside the server. The message queue contains traffic data of different links at different simulation times from multiple \(LPs\) in the order of time when the message is received. The server processes messages from the message queue in FIFO (first in first out) order by local-to-global transition function \(\left\{f(\cdot)\right\}\). This function converts the local state estimates \(LP_{i,j,k}^{m,p}\) to global variables. In other words,  
\[g_{i,j,k}^{m,p}=f\left(LP_{i,j,k}^{m,p}\right) \tag{1}\]  
where \(g_{i,j,k}^{m,p}\) represents global variables on link \(j\) at simulation time \(k\) generated by \(LP_{i}\) with \(m\) as data type and \(p\) as link type. When the server receives any data from \(LP_{i}\), the composition function \(C(\cdot)\) aggregates the values of \(g_{i,j,k}^{m,p}\) into one global instance \(G_{j,k}^{m}\). Specifically,  
\[G_{j,k}^{m}=C\left(g_{i,j,k}^{m,p}\right) \tag{2}\]  
For example, global state instances; \(G_{j,k}^{FlowRate}\), \(G_{j,k}^{Speed}\), \(G_{j,k}^{TravelTime}\), \(G_{j,k}^{Delay}\), and \(G_{j,k}^{QueueLength}\) can be calculated based on the set of \(g_{i,j,k}^{m,p}\). \[G_{j,k}^{FlowRate}=\frac{\sum_{i}g_{i,j,k}^{FlowRate,Internal}}{n} \tag{3}\]  
where \(n\) represents all available number of estimates \(g_{i,j,k}^{FlowRate,Internal}\) of link \(j\) as an internal link at simulation time \(k\). It is noted that in the calculation of global state instances that only data from LP internal simulation links is used. Inbound and outbound link data is excluded from the aggregation process as they may poorly represent the actual traffic conditions. For example, inbound link traffic performance (travel time, delay, and queue length) may not be accurately modeled as the vehicle arrival headway distributi \begin{table}
\begin{tabular}{c c} \hline \hline
**Symbol** & **Description** \\ \hline \(LP_{i}\) & \(i\) th Logical Process \\  & Local estimate of \(LP_{i}\) on link \(j\) at simulation time \(k\) with data type \(m\) \\ \(LP_{i,j,k}^{m,p}\) & (flow, speed, travel time, delay, or queue length) and link type \(p\) \\  & Global variable generated by \(LP_{i}\) on link \(j\) at simulation time \(k\) with data type \(m\) (flow, speed, travel time, delay, or queue length) and link type \(p\) \\  & type \(p\) (inbound, internal, or outbound) \\ \(G_{j,k}^{m}\) & Global state \(G\) on link \(j\) at simulation time \(k\) with data type \(m\) (flow, speed, travel time, delay, or queue length) \\  & Global state \(G\) (based on estimates from \(LP\)) on link \(j\) at simulation time \(k\) at wall-clock time \(l\) with data type \(m\) (flow, speed, travel time, delay, or queue length) \\  & Rollback threshold (Flow rate) \\  & SpeedThreshold \\ \hline \hline \end{tabular}
\end{table} 
Table 3: Local and global process notation summary. inbound link may differ from the real traffic pattern on the link. For example, entry link data will not reflect platoon characteristics of arriving vehicles due to upstream intersections not reflected in the model. When considering outbound links, it is noted that vehicles may exit the outbound link regardless of the actual traffic conditions of the link.