## 2 Problem Definition  
To model the studied problem, patients were associated with customers and caregivers with vehicles. The problem can be seen as a variant of the vehicle routing problem with a time window and specific synchronization constraints encountered in the home healthcare system. In particular, the problem at hand focuses on cases in which some patients may ask for some services requiring more than one caregiver with different skills to be accomplished, either simultaneously or in a given order.  
Before explaining how simultaneous synchronization/precedence constraints and objective function are modeled, let us introduce the following notation:  
* \(N\) is the set of customers.
* \(L=\{d,f\}\) is the set of initial and final depots denoted as \(d\) and \(f\), respectively.
* \(V=N\cup L\) is the set of nodes.
* \(S\) is the set of offered services, where \(S_{i}\) is the subset of services requested by customer \(i\in N\).
* \([a_{i},b_{i}]\) denotes the service time window at customer \(i\), which are hard in this study. Indeed, service at customer \(i\) must start only in this interval: if a caregiver arrives at \(i\) before \(a_{i}\), a waiting time occurs, and the service after time \(b_{i}\) is not allowed to be provided.
* \(K\) is the set of available vehicles, where \(K_{s}\) is the subset of vehicles performing service \(s\in S\).
* \(C_{ij}\) is the travel cost from customer \(i\in V\) to \(j\in V\).
* \(Pref_{lk}\) is the non-preference value of customer \(i\in N\) to the caregiver \(k\in K\).
* \(t_{ik}\) is a scheduling variable corresponding to the starting time of the service by vehicle \(k\) at customer \(i\in N\).
* \(x_{ijk}\) is equal to one if and only if the vehicle \(k\in K\) goes from \(i\) to \(j\), zero otherwise.  
VRPTW-SP consists of building a set of routes, such that the following conditions are satisfied:  
1. each route starts at the initial depot \(d\) and ends at the final depot \(f\),
2. each vehicle route does not exceed the maximal imposed duration,
3. each customer time window must be respected,
4. each customer service request is satisfied,
5. each service must be accomplished by the qualified caregiver,
6. timing constraints linking the start time of services at customers asking for more than one service must be considered.  
In a preliminary work [1], the authors extended the constraints proposed by [32] to deal with both types of synchronization (simultaneous and precedence) while retaining the idea of avoiding node duplication for customers requiring synchronized visits. In addition, several heuristics and local research procedures were proposed to solve the problem as a single-objective variant. Here, we propose to use these methods to solve the bi-objective problem.  
Synchronization constraints are expressed for some customers \(i\in N\) by defining \(gap_{isr}\) as the required time between the starting times of services \(s\) and \(r\) requested by customer \(i\). For a simultaneous pair of services, this gap is obviously set to zero. Then, synchronization/precedence constraints are defined as:  
\[\forall i\in N,\forall s\in S_{i},\forall r\in S_{i}:r\
eq s,\quad\sum_{k\in K _{s}}|t_{ik}-\sum_{k\in K_{r}}t_{ik}|=gap_{isr}\]  
The considered objective function is formulated as follows:  
\[\min\quad Z=(Z_{1},Z_{2}) \tag{1}\]  
with,  
\[Z_{1} =\sum_{i\in\
abla\backslash\{f\}}\sum_{j\in\
abla\backslash\{d \}}\sum_{k\in K}C_{ij}.x_{ijk} \tag{2}\] \[Z_{2} =\sum_{i\in N}\sum_{j\in\mathcal{V}\backslash\{d\}}\sum_{k\in K }Pref_{ik}.x_{ijk} \tag{3}\]  
Here, \(Z\) is regarded as a two-dimensional vector \(Z=(Z_{1},Z_{2})\), where both objectives must be optimized simultaneously. For more details on the proposed mathematical model, readers are referred to [PERSON] et al. [1] in which \(Z=Z_{1}+Z_{2}\) was minimized. Note that patient preference for caregivers is quantified by a negative value. Thus, a large negative value means a highly-desired assignment, while a positive value means an undesired visit.