## 2 Materials and Methods
### Generation of In-Silico Data for Algorithm Validation
#### 2.2.1 Method for Generating Simulated Datasets  
In this simulation, we assume that the training set, on which the model is built, includes the observations of n\({}_{\rm train}\) subjects, each described by N\({}_{\rm feat}\) variables, or candidate predictors. In addition, we assume that the N\({}_{\rm feat}\) candidate predictors are normally dis tributed and that the true model to be identified is a Cox model including a subset of the candidate predictors consisting of the first N\({}_{\text{pred}}\) variables. The equation of the model is then:  
\[\text{h(t)}=\text{h}_{0}(\text{t})\text{e}^{\beta_{1}\text{x}_{1}+\cdots+\beta_{ \text{Npred}}\text{N}_{\text{pred}}} \tag{2}\]  
where x\({}_{1}\), \(\ldots\), x\({}_{\text{Npred}}\) are the true predictors and \(\beta_{1}\), \(\ldots\), \(\beta_{\text{Npred}}\) are the related coefficients. The absolute value of the coefficients, \(\mid\beta_{1}\mid\), defines the predictors' importance. For simplicity, we assume that \(\mid\beta_{1}\mid>\ldots>\mid\beta_{\text{Npred}}\mid\), i.e., x\({}_{1}\), is the most important predictor and x\({}_{\text{Npred}}\) is the least important one.  
Of the remaining N\({}_{\text{feat}}-\text{N}_{\text{pred}}\) variables, we assume that N\({}_{\text{corr}}\) variables, i.e., x\({}_{\text{Npred}}+1\), \(\cdots\), x\({}_{\text{Npred}}+\text{N}_{\text{corr}}\), present a high correlation with some of the N\({}_{\text{pred}}\) variables that contribute to the true model. In particular, for sake of simplicity, we assume that each group of correlated features in the simulated dataset is made of only two variables, one from the N\({}_{\text{pred}}\) variables that define the outcome, the other from the N\({}_{\text{corr}}\) variables that are correlated with the variables that define the outcome, but do not directly contribute to the computation of the outcome. The remaining N\({}_{\text{noise}}=\text{N}_{\text{feat}}-\text{N}_{\text{pred}}-\text{N}_{\text{corr}}\) variables are noise variables, completely uncorrelated from all the other features.  
The N\({}_{\text{feat}}\) candidate predictors of the training set are generated by extracting n\({}_{\text{train}}\) random samples from a multivariate Gaussian distribution with dimension N\({}_{\text{feat}}\) and mean vector M and covariance matrix S. S is diagonal and symmetric, with only N\({}_{\text{corr}}\) values greater than 0 under and above the diagonal, corresponding to the pairs of correlated features.  
The outcome of the model is defined by a vector of event/censoring times, T, and a paired vector of death/censoring indicators, D, both with n\({}_{\text{train}}\) samples. We initially suppose to know the event time for all the n\({}_{\text{train}}\) virtual subjects. The event times are generated by multiplying the subjects' true risk scores, i.e., \(\beta_{1}\text{x}_{1}+\cdots+\beta_{\text{Npred}}\text{N}_{\text{pred}}\), for a suitable scaling factor and finally adding a random normally-distributed noise, with mean equal to 0 and coefficient of variation CV. All the event times are greater than 0, which represents the start of the hypothetical observation period. Then, a certain fraction, F\({}_{\text{c}}\), of the virtual subjects is censored; we randomly select F\({}_{\text{c}}\)*n\({}_{\text{train}}\) virtual subjects, set their censoring/death indicator to 0, and assign a censoring time chosen at random between 0 and their hypothetical event time to them. For all the non-censored subjects, the event time is supposed to be known, so their value of T is set to the event time and their death/censoring indicator is set to 1.  
The relevant parameters of the data simulation algorithm are: N\({}_{\text{feat}}\), N\({}_{\text{pred}}\), N\({}_{\text{corr}}\), N\({}_{\text{noise}}\), n\({}_{\text{train}}\), CV, F\({}_{\text{c}}\).