## 5 Results and Analysis
### Implementation of the Optimization Framework  
As mentioned, the 11 inputs in the optimization problem have discrete values in the Boolean domain. Herein, the truth table complies with \(2^{11}\) possible driving scenarios. As mentioned in Section 2.1, the parameter DVE 3, on the basis of FCW status, gives a discrete evaluation of collision risk with other vehicles. By this direct relationship between the DVE 3 and the App. 1, the variables of the decision problem are reduced to 10, and the number of scenarios decreases in turn. Moreover, considering that for high risk of collision with other vehicles in path, no messages, notifications, indication, etc. can be delivered to the driver, the decision problem can be further simplified. Indeed, to an FCW warning status, and therefore to a traffic risk (DVE 3) set to 1, the IMS can only formulate a reply that commands to deliver the warning alone. Hence, the possible driving scenarios can be reduced to \(1+2^{9}\). To impose no notifications to the driver when FCW is enabled, the coefficient \(c_{\text{DVE 3}}\) in Equations (1)-(3) assumes a value two orders of magnitude greater than other coefficients in the same equations (\(c_{\text{DVE 3}}=1000\)), and the Expression (2) of the driver workload index is reformulated as follows:  
\[ \begin{split} K=&(\text{DVE 1}\cdot c_{\text{DVE 1}})+(\text{DVE 2}\cdot c_{\text{DVE 2}})+(\text{DVE 3}\cdot 1000)\\ &+(\text{DVE 4}\cdot c_{\text{DVE 4}})+(\text{DVE 5}\cdot c_{\text{DVE 5}})\end{split}  \tag{5}\]\[J_{Dw}=(\text{DVE 3}\cdot 1000)+K\cdot\sum_{i=2}^{5}x_{i}\cdot\text{App. }i\cdot c_{\text{App. }i} \tag{6}\]  
Moreover, the optimization problem is subject to an inequality constraint defined as:  
\[\left(J_{Dw}-1000\right)\cdot\text{DVE 3}\leq 0 \tag{7}\]  
that forces optimization to suppress all the notifications during FCW state. The truth table derived must address \(1+2^{9}\) possible different driving scenarios. Such a finite number of scenarios can be solved offline using the proposed optimization approach. As described in [72, 73], the exploited optimization procedure, implemented in Python environment (see Supplementary Materials Pseudocode S1), by leveraging the NSGA-II, can search the driver workload index \(J_{Dw}\) and the action queue index \(J_{Aq}\) optimal parameters. These two indexes are characterized by 10 inputs and 21 coefficients. The 10 inputs (DVE 1,..., DVE 5, LQue, App. 2,..., App. 5) are used to take into account possible driving scenarios addressed by the truth table. The 21 coefficients consist of 9 weights to consider effects of DVE parameters and application requests on driver workload \(\left(c_{\text{DVE }j}\text{ and }c_{\text{App. }i}\text{ respectively}\right)\), 8 weights on impact of application requests on actions queue \(\left(p_{\text{App. }i}\text{ and }p_{\text{Q, App. }i}\right)\), and 4 decision variables \(\left(x_{i}\in\mathbb{B}\right)\) to be identified. More specifically, the four decision variables, which indicate if the corresponding four actions are executed, are tuned during the optimization process to minimize both the driver cognitive load and messages queue. The population size, which is the parameters space of potential solutions in which the NSGA-II searches the optimal value of these unknown parameters, is set according to the technical literature to 1000. Regarding, instead, the crossover and the mutation, the simulated binary crossover method and the polynomial mutation are implemented (for details about the mentioned techniques see [74]). Table 3 reports the weights used to calculate the driver workload and action queue indexes, evaluated following the procedures described in Sections 4.1 and 4.2, respectively.