1 Introduction

In Western countries, blood is collected from healthy individuals who donate it and provided to health care systems through the so-called Blood Donation Supply Chain (BDSC). Its complex management, pushed by the short shelf life of blood products, includes both strategic and operational decisions (Pierskalla 2004). The BDSC consists of four echelons (Sundaram and Santhanam 2011; Osorio et al. 2015): (i) collection, which includes donor eligibility assessment, donation and screening of the blood unit; (ii) transportation; (iii) storage; (iv) utilization, which includes distribution to end users and demand prediction to properly allocate units.

In this work, we focus on collection, an essential step to make the entire BDSC work properly. The latest available statistics on world blood need (Roberts et al. 2019) estimated it to be 305 million units, whilst production was assessed at around 272 million units. In the absence of supply alternatives, the main leverage to meet the blood need is to increase the number of donations. In addition, the collection temporal trend should be consistent with that of the demand, as an unbalanced supply of units could trigger alternating periods of blood shortage and wastage. For example, in the case of supply to a large hospital with many elective procedures, low demand variability, and well-sized storage capacity, the main goal should be to provide a number of units of different blood types as constant as possible between days (Puranam et al. 2017).

Moreover, a well-functioning blood collection should consider the quality of the service offered to donors, and the emerging delocalization trend.

Delocalization of health services in the territory is a growing trend, as demonstrated by home care (HC) services (Lanzarone and Matta 2012; Regis-Hernández et al. 2020; Lahrichi et al. 2022). The SARS-CoV-2 pandemic in 2020 has strengthened this trend (Govindan et al. 2020) and also affected blood collection directly. For instance, the production of red blood cells in Italy in April 2020 was reduced by \(36.4\%\) in comparison to April 2019 (Centro Nazionale Sangue 2020). Shortages all over the world were linked to three concomitant factors (Gniadek et al. 2020; Gupta et al. 2020; Pagano et al. 2020). First, blood drives organized in schools or companies with the aid of specially-equipped vehicles were cancelled because of the closures of these structures. Second, infected and exposed donors were suspended from donation until they tested negative for the virus. Third, the unavoidable gathering of people in blood collection centers discouraged potential donors.

A deeper restructuring of blood collection service is thus needed to meet both delocalization needs and cope with any future pandemic or emergency. However, the management of blood collection is only marginally addressed in the literature when compared to other BDSC echelons, e.g., storage (Beliën and Forcé 2012; Baş Güre et al. 2016, 2018b; Pirabán et al. 2019; Yalçındağ et al. 2020).

Within this context, we propose a new organizational model for blood collection at donors’ domiciles (home blood donation), and provide a decision support tool for its management. In our model, donations are made via mobile vehicles (bloodmobiles), which reach donors’ addresses to carry out the donation. After collecting a number of donations, they return to the depot from which they left to unload the collected units.

This new model entails challenges that must be adequately addressed to ensure its sustainability. First, vehicles must be properly routed to avoid inefficiencies that would dramatically increase costs. Moreover, they must return to the depot within a limited time period to reduce the equipment installed to the minimum necessary for the donation, without taking charge of processing the collected blood units that will be carried out at the facility. From the donor’s point of view, this alternative must be attractive and represent an increase in service quality with respect to the classical donations made at the collection center. Therefore, appointments should be made efficiently, providing an immediate response to the donor when making the reservation and allowing the donor to express preferences. Then, booked donation slots should not be canceled or postponed. Finally, the same production challenges and goals as for classic donations in a collection center must be achieved with the new model, e.g., planning the workforce and reaching target production levels and production balancing between periods.

In agreement with the above challenges, the home donations are planned by means of an appointment system, as commonly done in several blood collection centers. The specific goals of the proposed system are to balance the production of the different blood types, and to respect of the appointments agreed with the donors. Moreover, this system allows donors to express their preference on the day and period of the donation.

The architecture of the system consists of three stages: (i) an offline planning of time slots for donations, (ii) an online allocation of slots to donors when they make a reservation, and (iii) the routing of a fleet of bloodmobiles to serve reserved donations. The goal of the planning phase is to create donation slots in such a way that the production of the different blood groups is balanced between days. The allocation stage assigns a suitable slot to each donor at the time of booking, by proposing alternative days and time slots, according to a certain priority defined to respect the quality of the plan. Donors choose a slot suitable for their blood type starting from the one with the highest priority. The list of available slots must be immediately available when donors are making a reservation, to meet the requirement of a real-time feedback. Finally, the routing stage consists of a Multi-Trip Vehicle Routing Problem with Time Windows (MTVRP-TW). It organizes the daily tours of the bloodmobiles and defines the actual arrival time at the donors’ homes, which should fall within the time window assigned at the time of booking. Both planning and routing stages are solved through Mixed Integer Linear Programming (MILP) models, while the prioritization of the slots for the allocation consists of a dynamically-updated linear formula to be able to provide an immediate response to donors.

The developed tool has been tested considering a possible service extension towards home blood donation for the case of the Milan department of the Associazione Volontari Italiani Sangue (AVIS), referred to as AVIS Milan in the following. AVIS is the largest blood donor association in Italy, covering 70% of national demand. The Milan department is one of the largest in the AVIS network, and supplies the collected units to one of the largest hospitals in Milan, the Niguarda Hospital. The blood demand of this hospital is characterized by rather low variability, as it mostly takes care of elective surgeries and of only a small amount of emergency requests. Therefore, it must be replenished daily with a constant (and possibly high) amount of units of each blood type. Finally, AVIS Milan shares many characteristics with several others worldwide in terms of donors, activities and management problems. Therefore, the approach we propose can be considered of general validity, and applicable to extend the activities of several other blood collection centers towards home donation.

The remainder of the paper is structured as follows. A literature review on related topics is presented in Sect. 2. The addressed problem is detailed and formalized in Sect. 3, while the proposed architecture with three stages is presented in Sect. 4. Then, the computational tests carried out to validate the tool and evaluate its performance, together with the results, are shown in Sect. 5. Finally, discussions and conclusion are presented in Sect. 6.

2 Literature review

We first review the relevant literature related to BDSC management, and to the collection echelon in particular. Then, we provide a brief overview of VRP in blood collection and in some related non-urgent health care settings.

As for the BDSC, one of the earliest works addressing it from a non-clinical point of view was proposed by Millard (1959), who suggested to apply industrial inventory models to blood collection. However, the BDSC management began to receive broader attention only a decade later (Beliën and Forcé 2012; Osorio et al. 2015; Pirabán et al. 2019).

Focusing on the collection echelon, to which our work refers, several problems arise in its management, ranging from the long-term (e.g., centers location, staff and equipment dimensioning) to the short-term (e.g., appointment scheduling, screening policies, demand prediction) planning horizon. However, the attention devoted to collection is in any case marginal in comparison to other echelons of the chain (Baş Güre et al. 2016, 2018b). Blood collection merges the typical features of a production system with those of a service provider, which increases the management complexity (Lanzarone & Yalçındağ 2019). From the service provider perspective, a blood collection center must take into consideration several aspect related to the quality of service delivery. For example, the possibility of booking a donation in advance, the inclusion of donor preferences in defining reservations, and the reduction of waiting times in the center are crucial aspects to consider. From the production system perspective, typical goals are to increase the number of produced units and to balance the daily production with respect to the demand (Baş Güre et al. 2018a). Moreover, unique features make blood donation different from other health care-related problems, e.g., perishability of collected units and legal requirements on collection and transportation.

Considering this dual nature, several techniques have been employed to study blood collection. Michaels et al. (1993) used simulation to compare donor scheduling strategies for a Red Cross blood drive, using donor cycle time as main performance index. Alfonso et al. (2012) used Petri net models to analyze how different donor scheduling and workforce planning strategies interact in terms of system efficiency. More closely to the BDAS problem, Alfonso et al. (2015b) presented a simulation-optimization approach for capacity planning and appointment scheduling. However, no work but Baş Güre et al. (2018a) took into account the issue of balancing the production of the different blood types. More specifically, they proposed an appointment scheduling framework, which includes both booked and non-booked donors, with the goals of balancing the production and avoiding the increase in queue times. Related to Baş Güre et al. (2018a), Yalçındağ et al. (2020) extended the framework including stochastic arrivals of non-booked donors, and Doneda et al. (2021) developed a discrete event simulator to evaluate the feasibility of the appointment schedule at the operational level. To the best of our knowledge, no work considers home blood donation and, although the framework proposed in this study was inspired by Baş Güre et al. (2018a), none of the available contributions can be applied to this service layout.

Home blood donation requires the integration of a VRP into the system. The literature on VRP is immense, so we will now focus on what is more relevant to this problem. Blood collection through bloodmobiles has been considered in some works (Gunpinar and Centeno 2016), but in a different setting where donors donate at temporary mobile collection sites that serve areas far from blood collection centers, with no appointment scheduling. Other works consider the use of bloodmobiles for the distribution of blood products to end users (Liu et al. 2020), which however include different actors and different constraints. Bloodmobiles routing traditionally dealt with vehicles used to create temporary collection sites (Alfonso et al. 2015a; Şahinyazan et al. 2015). On the contrary, home blood donation requires to schedule of a fleet of vehicles that visit a number of locations, with time windows and multiple trips for each vehicle, as well as a series of practical constraints linked to the specific features of the problem.

Therefore, our problem presents many similarities to problems arising in non-urgent health care, such as HC and home sample collection, being a combination between a VRP with Time Windows (VRP-TW) and a Multi-Trip VRP (MTVRP) (Braekers et al. 2016), thereby falling into the MTVRP-TW category. The most similar problem in the MTVRP-TW area is the transportation of perishable biomedical samples (Anaya-Arenas et al. 2016), where the goal is to satisfy the requests of collection centers for the transport of biomedical samples to a central laboratory. However, in their formulation, multiple requests may arise from the same center in the same day, which does not fit the case of blood donors; moreover, their architecture is not linked to a mid-term planning, while routing depends on previously scheduled appointments in our problem; in addition, we pursue different goals.

2.1 Contributions

To the best of our knowledge, this is the first management tool proposed for home blood donations in the literature.

First of all, the three-stage architecture in which the decision stages are combined to properly coordinate the different decisions of the problem has never been proposed before.

From the methodological viewpoint, our MTVRP-TW differs from other formulations available in the literature in several ways. The most important difference is that, in the standard MTVRP-TW, customers are required to be visited according to their TW information; no other decisions previously made are taken into account nor external goals (e.g., production balancing) are considered. On the contrary, in our home blood donation setting, the VRP represents the third stage of the framework and includes assignment decisions from previous stages, made in order to balance blood production. These decisions are then taken as an input for the MTVRP-TW model: some of them are fixed, while some others can be partially modified. Moreover, our MTVRP-TW includes specific characteristics of blood collection, such as the maximum transportation time of collected units due to the perishable nature of donated blood. Our MTVRP-TW is also different from routing problems arising in HC. The main difference between HC problems and our home blood donation lies in the fact that HC does not consider the production viewpoint of our home blood donation. Therefore, all patients are independently considered in HC while in our problem we combine all collected units to reach the production goals. Moreover, no production goals are considered when scheduling a visits in HC, while already allocated slots and pre-allocated ones are considered in our home blood donation when booking a new donation. Finally, in realistic HC settings, different constraints are taken into account (such as continuity of care, synchronization and the presence of different skills among the operators), which are not meaningful in the blood donation process.

Our system also presents elements of novelty regarding the first two stages, which are different from those available in the literature because of the specific features of home blood donation, which required to include some relevant modifications. In particular, they are different with respect to those in Baş Güre et al. (2018a), as specifically discussed in Sect. 4.4 after the new architecture is detailed.

3 Problem statement

Blood collection includes all phases between donor arrival and preparation of a blood unit. The process starts with the registration of the donors; then, they are visited by a physician, who assesses their eligibility. If donors pass the assessment, consisting of an anamnestic questionnaire and a brief objective examination, they can make the donation. This sequence of activities is common in both blood collection centers and in our proposed home donation, although in our framework they are performed in a modified setting, due to the use of bloodmobiles.

A bloodmobile is any medium-sized vehicle capable of hosting one donor at a time, equipped with all facilities required to collect blood safely. If donors are deemed eligible, the donation takes place and, after that, donors rest directly in their own home. Then, the bloodmobile travels to the next location in its schedule. Travel time between two consecutive locations can be used to sanitize the bloodmobile and prepare any necessary equipment. To reduce the time required to assess donors’ eligibility, they can be invited to fill in the anamnestic questionnaire before the arrival of the bloodmobile, for example compiling a web form.

To support the management of home blood donation, we propose a new decision support tool tailored to it. When donors make a reservation, they decide the day and the time period within the day in which the donation will take place, choosing from a set of suitable slots, proposed by the center in a decreasing order of priority. The order is determined by the goals of the collection center, mainly by balancing the amount of collected units between days for each blood type. As already mentioned, neglecting this aspect may trigger alternating periods of blood shortage and wastage. Other goals are related to the efficiency of the collection process, e.g., the reduction of travel times.

Proposing a list of donation slots and allowing donors to choose among them is a fundamental requirement of the home donation setting. Moreover, when donors call to make the reservation, the set of slots should be immediately available, to give an immediate response to their requests.

To develop and test the new organizational model, we have referred to the case of AVIS Milan. Originally, AVIS Milan implemented a simple and manual reservation system, which however neglected the requirement of production balancing. Then, the architecture developed by Baş Güre et al. (2018a) was proposed to this center, to deploy a more performing scheduling system. The proposed architecture modifies and extends this approach to be applied to the home donation setting.

4 Interconnected matheuristic approach

The architecture is shown in Fig. 1. It consists of three interconnected and subsequent stages:

  1. 1.

    The first preallocation stage generates a set of donation slots associated with any blood type, day in the planning horizon, period within the day, and bloodmobile. Slots are generated in order to balance the production of each blood type throughout the planning horizon while considering capacity constraints and target arrivals of donation requests.

  2. 2.

    In the second stage, when a donor calls to make a reservation, the slots generated for the corresponding blood type are presented in a decreasing order of priority, until the donor accepts a slot. This converts some planned slots into actual blood collection appointments.

  3. 3.

    The last stage routes the bloodmobile fleet taking into account donors’ geographical locations and their reserved donation times.

Then, the donations are collected following the solution of the routing problem.

Fig. 1
figure 1

Proposed decision support tool for home blood donation

The preallocation problem is periodically solved at the beginning of each day, or alternatively with a higher frequency, to update the list of the slots for all subsequent days in the planning horizon. The second stage is executed during the day each time a donor calls for a reservation, to fix an appointment in one of the next days. Finally, the routing stage is solved at the end of the day for the following one, for which the list of appointments is completed and fixed. Then, the process is repeated on each day moving the planning horizon of the preallocation stage forward by one day.

This multi-staged architecture complies with the flexibility granted to donors, who are free to choose the donation slot from a list of predetermined ones. Alternatively, this flexibility could be achieved within a single model where all decisions are taken simultaneously, but only assuming that online reservation requests are known in advance. This is not realistic, while sequential decisions are required to mimic real life. In this sense, our three-stage approach is not a simple division of the problem into sub-problems, as the solutions of the second and third stage also depend on exogenous variables that are not determined by previous stages, i.e., the donors who ask to make a reservation and the slots actually chosen by the donors.

Besides being flexible, as donors must be able to select their preferred slot from a set of alternatives, the second stage needs to be fast, as donors must receive the alternatives immediately when booking. For this reason, the generated slots are ranked using a simple allocation policy based on a single linear equation. On the contrary, the first and the third stages consist of a MILP model.

4.1 Stage 1: MILP model for planning slots

Donation slots are planned through a MILP model that balances the production of the different blood types \(b\in B\) over a set of days \(t \in T\). Donations are collected with a fleet of bloodmobiles \(k\in K\), which travel in the area served by the collection center. We assume that each day is divided into periods \(p \in P\), which represent the time windows in which the donors are allocated upon reservation, and in which they expect to be served. Moreover, in the proposed formulation, we consider only whole blood donations and assume that all blood units are successfully collected, as the amount of unsuccessful donations is negligible, while cancellations can be included. This assumption is justified by the fact that, both in AVIS Milan and similar providers, the amount of unsuccessful donations is negligible (less than 1% in AVIS Milan).

The model defines a number of slots for each blood type \(b \in B\), day \(t \in T\), period \(p \in P\) and bloodmobile \(k \in K\), represented by a non-negative integer decision variable \(w_{pt}^{bk}\). The sum of \(w_{pt}^{bk}\) over \(p \in P\) and \(k \in K\) gives the daily number of planned slots \(m_t^b\) for blood type b and day t. The expected number of collected units for blood type \(b \in B\) at day \(t \in T\) (if all pre-allocated slots are filled) is given by the sum between the number of planned slots \(m_t^b\) and that of already booked slots \(l_t^b\) (integer parameter). Finally, the overall sum \(\sum _{t=1}^T (m_t^b + l_t^b)\) over the days t gives an expectation of the collected units of blood type b over the time horizon, which should be equal the expected number of donors \(d^b\) in the planning horizon for each blood type. However, since exact number of donations cannot be known in advance, a flexibility parameter \(\varepsilon \in [0,1]\) is introduced to limit the total planned bags between \((1-\varepsilon ) d^b\) and \((1+\varepsilon ) d^b\).

We assume that each bloodmobile \(k \in K\) has a capacity \(c_{pt}^k\) for each day \(t \in T\) and period \(p \in P\), representing the maximum number of donors that can be served in day t and period p. A fraction \(s_{pt}^k\) of this capacity represents the capacity allocated to already booked donors for day t and period p, linked to \(l_t^b\).

Finally, a decision variable \(z_t^b\) for each \(t \in T\) and \(b \in B\) denotes the absolute variation of \(m_{t}^b + l_{t}^b\) with respect to its average value over T, computed as \(\frac{1}{|T|} \sum _{t \in T} (m_{t}^b + l_{t}^b)\).

The planning of a specific bloodmobile should concern the routing problem. However, it is anticipated here, by including the index k in the variables \(w_{pt}^{bk}\), in order to consider capacity limits and provide an initialization to the rest of the stages. Then, this decision can be rediscussed and changed in the MTVRP-TW, as shown in Sect. 4.3, ranging from a complete discharge to kee** all previous decisions.

All sets, parameters and decision variables of the MILP model are summarized in Table 1.

Table 1 Sets, parameters and decision variables of the planning of slots

The objective of the model is to balance the production of each blood type \(b \in B\) among the days, which is formalized through the minimization of the total and maximum absolute variations \(z_t^b\). Accordingly, the objective function is:

$$\begin{aligned} \min {\biggl \{\eta _z \sum _{b \in B} \sum _{t\in T} z_t^b + \eta _{\nu } \, |T| |B| \, \nu \biggr \}} \end{aligned}$$
(1)

where the first term minimizes the sum of the absolute variations, and the second the maximum of the absolute variations. The two terms are scaled by two positive parameters \(\eta _z\) and \(\eta _{\nu }\), and \(\nu\) is multiplied by |T| and |B| to make the two terms comparable.

Variables are subject to the following constraints:

$$\begin{aligned}&m_t^b = \sum _{p\in P}\sum _{k\in K}{w_{pt}^{bk}}&\forall \, t \in T, b \in B \end{aligned}$$
(2)
$$\begin{aligned}&(1-\varepsilon ) d^b \le \sum _{t\in T}(m_{t}^b + l_{t}^b)&\forall \, b \in B \end{aligned}$$
(3)
$$\begin{aligned}&\sum _{t\in T}(m_{t}^b + l_{t}^b) \le (1+\varepsilon ) d^b&\forall \, b \in B \end{aligned}$$
(4)
$$\begin{aligned}&\sum _{b \in B}{w_{pt}^{bk}} + s_{pt}^k \le c_{pt}^k&\forall \, k \in K, t \in T, p \in P \end{aligned}$$
(5)
$$\begin{aligned}&\sum _{\tau \in T}(m_{\tau }^b + l_{\tau }^b) - (m_{t}^b + l_{t}^b)|T| \le z_t^b|T|&\forall \, t \in T, b \in B \end{aligned}$$
(6)
$$\begin{aligned}&(m_{t}^b + l_{t}^b)|T| - \sum _{\tau \in T}(m_{\tau }^b + l_{\tau }^b) \le z_t^b|T|&\forall \, t \in T, b \in B \end{aligned}$$
(7)
$$\begin{aligned}&\nu \ge z_t^b&\forall \, t \in T, b \in B \end{aligned}$$
(8)
$$\begin{aligned}&m_t^b \in {\textbf{N}}&\forall \, t \in T, b \in B \end{aligned}$$
(9)
$$\begin{aligned}&w_{pt}^{bk} \in {\textbf{N}}&\forall \, k \in K, t \in T, p\in P, b \in B \end{aligned}$$
(10)

Constraints (2) compute the total number of planned slots \(m_t^b\) for each day \(t \in T\) and blood type \(b \in B\) as the sum of all the \(w_{pt}^{bk}\) corresponding slots. Constraints (3) and (4) limit the total number of slots in the considered horizon to be around the value of \(d^b\), with flexibility \(\varepsilon\). Constraints (5) limit the number of slots assigned to each bloodmobile \(k \in K\) in each day \(t \in T\) and period \(p \in P\). Constraints (6) and (7) compute the absolute variation \(z_t^b\) between the amount of planned slots (\(m_{t}^b + l_{t}^b\)) for each blood type \(b \in B\) and day \(t \in T\) and the corresponding average amount over T, while constraints (8) compute the maximum \(\nu\) of the absolute variations. Finally, constraints (9) and (10) define the domain of the decision variables.

4.2 Stage 2: online allocation for actual donation requests

The goal of this stage is to assign a donation slot to donors when they book. Proposing only one slot might be inefficient, as donors may not accept it because of personal preferences or other constraints. At the same time, the center has to orient the donor towards the best possible slot, in terms of its production targets. A possible solution to balance these aspects is to propose a set of possible appointments and let donors choose among them.

Therefore, a prioritization policy is enforced in this stage, assigning a numerical score to each alternative slot that suits the donor’s blood type. Slots are then presented to the calling donor in descending order, starting with the one with the highest score. This solution allows to compromise between donors’ need to express preferences and management’s production needs with little computational effort and in a very fast way.

Three items are assumed when scoring the slots of a blood type:

  1. 1.

    Flexibility the reservation system should avoid to immediately occupy all the slots in a period of a day, preventing all subsequent donors from choosing it. On the contrary, donors should be directed to the combination of day, period and vehicle with the largest number of prepared slots still available, to ensure the greatest number of alternatives available to subsequent donors. Flexibility is guaranteed because blood donation is a voluntary act, and it is important to try to accommodate donors’ preferences.

  2. 2.

    Timeliness the slots of the nearest days should be preferred over the others. In fact, kee** these slots empty can result in a waste of system capacity if no further donors of the same blood type call to book an appointment.

  3. 3.

    Clustering each cluster refers to the donors allocated to a combination of day \(t \in T\), period \(p \in P\) and vehicle \(k \in K\). The allocation of slots should take into account the geographical location of donors and create clusters of donors who live relatively close to each other, thus reducing distances.

The first two items are concurrent and should be properly balanced. The latter is fundamental in providing a fair initialization for the routing of bloodmobiles in the next stage.

This factors have been considered based on a discussion with the staff of AVIS Milan, who identified these three priorities. Actually, the two factors also included in Baş Güre et al. (2018a) came from a previous discussion; then, when analysing the alternative home blood donation setting, the staff of AVIS Milan identified only one additional factor (the third).

The score \(S_{pt}^{ik}\) of the \(w_{pt}^{bk}\) slots for day t, period p and vehicle k when donor \(i \in I\) makes the reservation is given by the following linear equation:

$$\begin{aligned} S_{pt}^{ik} = \frac{\lambda _f}{c_{pt}^{k}} \, w_{pt}^{b(i) \, k} - \frac{\lambda _t}{|T|} \, t - \frac{\lambda _k}{R} \, L_{pt}^{ik} \end{aligned}$$
(11)

where b(i) denotes donor i’s blood type and t represents the day in the time horizon, starting from day \(t=1\) in which donor i is making the reservation. \(L_{pt}^{ik}\) is the distance between donor i’s location and the centroid of the already-formed cluster of vehicle k on day t and period p, which includes its already allocated donors.

The first term generates higher scores when more slots are available, to pursue flexibility. The second term generates lower scores for slots that are further away in time, to pursue timeliness. Lastly, the third term returns higher scores for clusters that are geographically closer to donor i’s location, to pursue an efficient clustering.

The distance \(L_{pt}^{ik}\) between donor i and the cluster for t, p and k is the Euclidean one, as in Cattaruzza et al. (2016). We consider a Cartesian system in which the location of donor i is defined by latitude \(\alpha _i\) and longitude \(\beta _i\), and the centroid of the cluster by latitude \({\bar{\alpha }}_{pt}^k\) and longitude \({\bar{\beta }}_{pt}^k\) for each t, p and k. Therefore, the distance is:

$$\begin{aligned} L_{pt}^{ik} = \sqrt{(\alpha _i-{\bar{\alpha }}_{pt}^k)^2+(\beta _i-{\bar{\beta }}_{pt}^k)^2} \qquad \forall \, i \in I, k \in K, t \in T, p \in P \end{aligned}$$

The coordinates of the centroid are the average of the respective coordinates among all donors who are part of the cluster and those of the blood center, which is the depot. If no donors have already been assigned to a cluster, its centroid simply coincides with the depot.

The three terms in (11) are weighed by three coefficients \(\lambda _f\) (for flexibility), \(\lambda _t\) (for timeliness) and \(\lambda _k\) (for clustering). These terms are made comparable via normalization, dividing them by \(c_{pt}^k\), |T| and R, respectively, which represent the maximum values that variables \(w_{pt}^{b(i) \, k}\), t and \(L_{pt}^{ik}\) can reach, respectively. Parameter R is a reference distance for the served territory, e.g., the radius when the area of the territory can be approximated as a circle.

Each time a donor is assigned to a slot, the corresponding value of \(w_{pt}^{bk}\) is reduced by 1 before the next reservation if the planning model is not rerun, and the coordinates \({\bar{\alpha }}_{pt}^k\) and \({\bar{\beta }}_{pt}^k\) are updated.

In case it is not possible to find a slot for blood type b(i), a donation slot from other blood groups can be forcibly allocated. Though this may lead to an unbalanced production plan, such a local inefficiency can be quickly absorbed by the rolling nature of the proposed framework without any manual intervention.

4.3 Stage 3: bloodmobile fleet routing with time windows

The routing part consists of a MTVRP-TW that determines the daily routes of the bloodmobile fleet. We assume that each vehicle can perform up to \(|\Pi |\) trips to unload the collected blood units, to respect the maximum transportation time allowed for blood units according to government regulations. While routing, we also assume that all donors are available on the appointed day, i.e., no-shows are not considered.

The MTVRP-TW is solved on every single day after the reservations are closed, including all and only the donors allocated to the next day. The assignment of period \(p \in P\) and vehicle \(k \in K\) are included as inputs in the daily MTVRP-TW. The assigned vehicle is directly considered in the model, while the assigned period is transformed into two variables: the appointment time period and the vehicle trip. The former is in terms of a time interval \([a_i, b_i]\) associated to each donor \(i \in I\), which defines the temporal interval in which donors expect the bloodmobile to arrive. Late and early arrival violations are penalized, to guarantee the promised service to the donor. The trip is indexed with \(\pi \in \Pi\), and the trip associated to each donor is initialized by assuming a perfect correspondence between trips and time windows, i.e., donors assigned to period p are planned to be visited during trip \(\pi =p\) of the assigned vehicle. Then, \(\pi\) can be changed at no cost, as it does not impact on donors.

The routing is modeled by means of two sets of decision variables: Boolean variables \(x_{ijk\pi }\) are equal to 1 if vehicle \(k\in K\) traverses an arc spanning from node \(i \in N\) to node \(j \in N\) during its \(\pi \in \Pi\) trip, and 0 otherwise; continuous variables \(t_{ik\pi }\) represent the arrival time of vehicle \(k \in K\) at node \(i \in N\) during trip \(\pi \in \Pi\), and 0 otherwise. The set N of nodes includes both the donors, (when \(i= \{1, \dots , |I|\} \in N\), and the depot. When \(i=0\), it represents the depot as a departure point; when with \(i=|I|+1\), it models the depot as an arrival destination. With respect to other MTVRP-TW formulations, the four indexes associated with variables \(x_{ijk\pi }\) are required to connect the second and the third stage decisions (vehicle and period assignments).

If the arrival of donor i’s vehicle is not within time window \([a_i, b_i]\), two slack variables are activated: variable \(\Gamma _i\) is equal to 0 if the vehicle arrives at donor i’s home after \(a_i\) and positive otherwise; similarly, variable \(\Delta _i\) is equal to 0 if the vehicle arrives at donor i’s home before \(b_i\) and positive otherwise. When either of them is positive for a donor i, it represents the deviation between the actual and the agreed arrival times of the vehicle. To pursue the respect of the arrival times, variables \(\Gamma _i\) and \(\Delta _i\) are penalized in the objective function by means of a coefficient \(\chi\).

The inputs for vehicle and trip assignments made at the previous stages are included through two sets of Boolean parameters: \(\xi ^0_{ik}\) is set equal to 1 donor \(i \in I\) is assigned to vehicle \(k \in K\) in the online allocation, and 0 otherwise; \(\psi ^0_{i\pi }\) is set equal to 1 if donor \(i \in I\) is allocated to trip \(\pi \in \Pi\) of the vehicle associated in the online allocation, and 0 otherwise. Then, vehicle and trip assignments produced as a solution of the MTVRP-TW are represented by a set of decision variables: \(\xi _{ik}\) is equal to 1 donor \(i \in I\) is assigned to vehicle \(k \in K\), and 0 otherwise; \(\psi _{i\pi }\) is equal to 1 if donor \(i \in I\) is allocated to trip \(\pi \in \Pi\) of the associated vehicle.

Service times for donation and travel times are assumed as follows. The service time for donor \(i \in I\) is given by parameter \(\sigma _i\), while the travel time from \(i \in N\) to \(j \in N\) by parameter \(T_{ij}\). As for the depot, \(\sigma _0\) and \(\sigma _{|I|+1}\) represent the loading time of the equipment and the unloading time of the collected donations, respectively.

Finally, parameter \(T_{max}\) sets the maximum transportation time allowed for each blood unit from donation to depot delivery. Technical standards impose that whole blood destined for platelet production should be processed within 6 hours from donation; consequently, \(T_{max}\) should be set at a sufficiently lower value so that the sum of transportation and processing times does not exceed this limit. Similarly, parameters \(T_k\) bound the maximum working time of vehicle \(k \in K\) not to exceed the legal working time limits of the involved personnel.

The variations between the produced solution and the inputs are represented by other Boolean decision variables: variables \(\** _{ik}\) are equal to 1 if \(\xi _{ik}\) is different from \(\xi ^0_{ik}\), and 0 otherwise; variables \(\Psi _{i\pi }\) are equal to 1 if \(\psi _{i\pi }\) is different from \(\psi ^0_{i\pi }\), and 0 otherwise. The maximum number of allowed changes are then bounded by means of two parameters \(\mu _{\** } \in [0, 1]\) and \(\mu _{\Psi } \in [0, 1]\). Both refer to the maximum fraction of donors allowed to change vehicle or trip. When \(\mu _{\** } = \mu _{\Psi } = 0\), all assignments made at the previous stage are kept and the MTVRP-TW is reduced to a Multi-Trip Travelling Salesman Problem with Time Windows (MTTSP-TW). On the contrary, when \(\mu _{\** } = \mu _{\Psi } = 1\), the problem is a complete MTVRP-TW, which coul be too complex to be solved from the computational viewpoint.

Therefore, values \(0< \mu _{\** } < 1\) and \(0< \mu _{\Psi } < 1\) can be set to provide an heuristic approach to solve the MTVRP-TW, which limits the admissible domain of the problem through the closeness to an initialization. As usual in heuristic approaches, parameters \(\mu _{\** }\) and \(\mu _{\Psi }\) can be tuned based on the case to make them effective. With respect to other heuristics, this setting allows: (i) to limit the admissible domain based on something provided in agreement with the goal of the problem; (ii) to know where the approximations induced by the heuristic lie in the presence of low optimality gaps, i.e., in the fixed variables. In fact, in other literature works on VRP problems where an initialization based on previous decisions is not possible, heuristics such as local searches or fix-and-optimize approaches are generally used. However, in those cases the presence of non-negligible optimality gaps cannot be attributed to specific aspects of the heuristic approximation.

All sets, parameters and decision variables included in the MTVRP-TW are listed in Table 2.

Table 2 Sets, parameters and decision variables of the MTVRP-TW

The MTVRP-TW is formulated though some groups of constraints. The first group defines the structure of the routes:

$$\begin{aligned}&\sum _{i \in N \setminus \{|I|+1\}} \sum _{k \in K} \sum _{\pi \in \Pi } x_{ijk\pi } = 1&\forall j \in N \end{aligned}$$
(12)
$$\begin{aligned}&\sum _{j \in N \setminus \{0\}} x_{ijk\pi } = \sum _{j \in N \setminus \{|I|+1\}} x_{jik\pi }&\forall i \in N, k \in K, \pi \in \Pi \end{aligned}$$
(13)
$$\begin{aligned}&\sum _{j \in N \setminus \{0\} \setminus \{|I|+1\}} x_{0jk\pi } \le 1&\forall k \in K, \pi \in \Pi \end{aligned}$$
(14)
$$\begin{aligned}&\sum _{j \in N \setminus \{0\} \setminus \{|I|+1\}} x_{0jk\pi } = \sum _{j \in N \setminus \{0\} \setminus \{|I|+1\}} x_{j, n+1, k\pi }&\forall k \in K, \pi \in \Pi \end{aligned}$$
(15)

Constraints (12) ensure that all donors in the set are visited exactly once. Constraints (13) are the flow conservation constraints: if a vehicle enters a node which is not the depot, it should also leave it. Constraints (14) and (15) force all vehicle trips to start and end at the depot.

The second group of constraints deals with the time dimension:

$$\begin{aligned}&t_{ik\pi } + \sigma _i + T_{ij} - t_{jk\pi } \le T_k \left( 1-x_{ijk\pi } \right)&\forall i \in N \setminus \{|I|+1\}, \nonumber \\{} & {} j \in N \setminus \{0\}, k \in K, \pi \in \Pi \end{aligned}$$
(16)
$$\begin{aligned}&\Gamma _i = a_i - \sum _{k \in K} \sum _{\pi \in \Pi } t_{ik\pi }&\forall i \in N \end{aligned}$$
(17)
$$\begin{aligned}&\Delta _i = \sum _{k \in K} \sum _{\pi \in \Pi } t_{ik\pi } - b_i&\forall i \in N \end{aligned}$$
(18)
$$\begin{aligned}&t_{0k\pi }\ge t_{n+1 \, k \, \pi -1}&\forall k \in K, \pi \in \Pi \setminus \{1\} \end{aligned}$$
(19)
$$\begin{aligned}&t_{n+1 \, k \, \pi } - t_{0k1} \le T_k&\forall k \in K, \pi \in \Pi \end{aligned}$$
(20)
$$\begin{aligned}&t_{n+1 \,k \,\pi }- t_{jk\pi } \le T_{max} + T_{k} \left( 1-\sum _{i \in N \setminus \{|I|+1\}} x_{ijk\pi } \right)&\forall j \in N \setminus \{0\}, k \in K, \pi \in \Pi \end{aligned}$$
(21)

Constraints (16) define the arrival times at donors’ homes and eliminate sub-tours. Constraints (17) and (18) compute the slack variables to calculate the deviations from time windows for the arrival of the vehicle, which are then penalized in the objective function. Constraints (19) ensure that, if a vehicle performs multiple trips, the starting time of its trip \(\pi\) is after the arrival time of its trip \(\pi -1\) at the depot (node \(|I|+1\)). Finally, constraints (20) impose vehicles to respect maximum working limits, and constraints (21) limit the maximum transportation time of blood units.

The third group of constraints determines the assignments of donors to vehicles and trips:

$$\begin{aligned}&\xi _{ik} = \sum _{\pi \in \Pi } \sum _{j \in N \setminus \{|I|+1\}} x_{jik\pi }&\forall i\in N, k \in K \end{aligned}$$
(22)
$$\begin{aligned}&\psi _{i\pi } = \sum _{k \in K} \sum _{j \in N \setminus \{|I|+1\}} x_{jik\pi }&\forall i\in N, \pi \in \Pi \end{aligned}$$
(23)

The fourth group of constraints bounds maximum number of changes with respect to the inputs:

$$\begin{aligned}&\** _{ik} \ge \xi _{ik} - \xi ^0_{ik}&\forall i\in N, k \in K \end{aligned}$$
(24)
$$\begin{aligned}&\** _{ik} \ge \xi ^0_{ik} - \xi _{ik}&\forall i\in N, k \in K \end{aligned}$$
(25)
$$\begin{aligned}&\Psi _{i\pi } \ge \psi _{i\pi } - \psi ^0_{i\pi }&\forall i\in N, \pi \in \Pi \end{aligned}$$
(26)
$$\begin{aligned}&\Psi _{i\pi } \ge \psi ^0_{i\pi } - \psi _{i\pi }&\forall i\in N, \pi \in \Pi \end{aligned}$$
(27)
$$\begin{aligned}&\sum _{i\in N \setminus \{0\} \setminus \{|I|+1\}} \sum _{k \in K} \** _{ik} \le 2 \, \left\lfloor \mu _{\** } \, |I|\right\rfloor \end{aligned}$$
(28)
$$\begin{aligned}&\sum _{i\in N \setminus \{0\} \setminus \{|I|+1\}} \sum _{\pi \in \Pi } \Psi _{i\pi } \le 2 \, \left\lfloor \mu _{\Psi } \, |I|\right\rfloor \end{aligned}$$
(29)

Constraints (24)-(27) compute the number of changes, which are then bounded in constraints (28) and (29), where \(\left\lfloor \cdot \right\rfloor\) denotes truncation to integer. The multiplier 2 in (28) and (29) is used because every time a change from the original assignment occurs, \(\** _{ik}\) and \(\Psi _{i\pi }\) register two changes: the disappearance of the original assignment and the creation of the new one. Let us remark that even using values of \(\mu _{\** }\) and \(\mu _{\Psi }\) close to 1 does not completely discard the allocation decided at the second stage, as the time window of the donations is preserved thanks to the penalty \(\chi\) in the objective function.

Finally, the last group of constraints enforce symmetry breaking according to Coelho and Laporte (2014):

$$\begin{aligned}&\sum _{i \in N \setminus \{0\} \setminus \{|I|+1\}} x_{0ik1}-\sum _{i \in N \setminus \{0\} \setminus \{|I|+1\}} x_{0 \, i \, k-1 \, 1}\le 0&\forall k \in K \setminus \{1\} \end{aligned}$$
(30)

The objective function of our MTVRP-TW is as follows:

$$\begin{aligned} \min \Biggl \{ \sum _{i \in N \setminus \{|I|+1\}} \sum _{j = N \setminus \{0\}} \sum _{k \in K} \sum _{\pi \in \Pi } T_{ij} \, x_{ijk\pi } + \chi \sum _{i \in N \setminus \{0\} \setminus \{|I|+1\}} \left( \Gamma _i + \Delta _i \right) \Biggr \} \end{aligned}$$
(31)

The first term, denoted by OF1, aims at minimizing the total travel time spent by the bloodmobile fleet, whole the second, denoted by OF2 and weighed by parameter \(\chi\), penalizes the amount of arrival time window violations.

4.4 Comparison with Baş Güre et al. (2018a)

Though we took inspiration for the previous work of Baş Güre et al. (2018a), this interconnected matheuristic includes some novelty elements that make it remarkably different.

First of all, the addressed problem is different and includes the routing of bloodmobile. Therefore, our architecture includes three stages while that of Baş Güre et al. (2018a) includes only the first two. Moreover, the first two stages also include new components that make them different.

The MILP model of the first stage extends the one reported in Baş Güre et al. (2018a) because it copes with routing decisions to give an initialization to the MTVRP-TW. More specifically, capacity limits are associated with each individual vehicle, and the MILP model must separately manage them. It also constitutes a hard constraint, whilst soft constraints were considered in Baş Güre et al. (2018a) for the overall continuous capacity of the collection center.

The allocation stage is also extended and now includes the geographical clustering, which was absent in Baş Güre et al. (2018a). Clustering achieves the fundamental goal of merging the decisions taken at the various stages together, and participates to the initialization of the MTVRP-TW so that any vehicle serves donors close to each other on any tour.

5 Computational experiments

We have first conducted experiments on individual stages to analyze the impact of model parameter values in a controlled setting. Results of these experiments are reported in the Supplementary Materials.

The overall approach was then tested with the best values of model parameters in realistic instances derived from the AVIS Milan case and described in Sect. 5.1. Results are reported in Sect. 5.2 along with an economic evaluation in Sect. 5.2.2. The analysis continues in Sect. 5.3, including cancellations and donors who do not accept the first proposed slot but choose another one from the list.

It is important to underline that home blood donation has not been treated neither in the practice nor in the literature. Thus, there are no literature works or existing tools that can be used for directly benchmarking our framework. To make a comparison, we have again considered the work of Baş Güre et al. (2018a) and made in Sect. 5.2.1 a comparison in terms of the common parts between the approaches, i.e., the balancing goal and the number of waiting days between reservation and donation.

The MILP models have been implemented and solved via CPLEX 12.8.0 (IBM, Armonk, NY, US) through its OPL interface. The experiments have been run on a Windows virtual machine installed on a server, with an Intel Xeon Gold 6130 CPU at 2.10 GHz and 12 GB of dedicated RAM. The relative gap limit of both models has been set to be 0.01, while time and memory limits have been set differently for the two models, as detailed below. The architecture that links the MILP models and defines the entire approach has been implemented in Visual Basic (Microsoft, Redmond, WA, US).

5.1 Tested instances

The functioning of the framework has been simulated basing on the current context of the AVIS Milan case over a period of 90 days. Then, in order to exclude the ramp-up period, the results are reported and analyzed for the last 31 days of the rolling approach.

On each rolling day, the MILP model of the first stage plans the donation slots for the next \(|T|=28\) days, which are converted into real reservations through the online allocation stage based on the reservation requests for that day. Afterwards, the MTVRP-TW model provides the daily routes considering all donors allocated to the day, resulting from bookings made on the same day and in the previous days. In parallel, at the end of each rolling day, the amounts of the newly booked slots for the upcoming days are fed-back to the planning model for the next executions.

The number of donors who require a reservation at each rolling day and their blood types are taken from historical data of AVIS Milan regarding whole blood donation. In that period, the total number of donors was 4932, and the percentages of the blood types were as follows: 34.12% for A Rh+ (\(b=1\)), 5.68% for A Rh- (\(b=2\)), 10.20% for B Rh+ (\(b=3\)), 1.521% for B Rh- (\(b=4\)), 3.67% for AB Rh+ (\(b=5\)), 0.59% for AB Rh- (\(b=6\)), 37.67% for O Rh+ (\(b=7\)), and 6.55% for O Rh- (\(b=8\)).

We have assumed that the 60% of those donors are served with the home donation service, while the others make the donation at the blood collection center. Therefore, the 60% of historical donations have been randomly extracted from the historical data and included in the simulations.

For each included donor, information regarding previous donation date and sex have been used to compute their first available donation day, i.e., after 90 days from donation for men and 180 days for women. Then, the date of the reservation request has been generated adding a random number (sampled from a uniform distribution with support [0, 30] days) to this first available day. This way of modeling donors’ behavior is coherent with what is observed in practice at AVIS.

In the absence of detailed data, in this realistic setting, donors’ locations have been randomly generated in a circle of radius R using polar coordinates, by assigning a distance \(r_i\) from the center, sampled from a uniform distribution with support [0, R], and a random angle \(\theta _i\), sampled from an independent uniform distribution with support \([0, 2\pi )\) where R is the radius of the served area. These coordinates have been then converted into the Cartesian latitude \(\alpha _i = r_i\,\cos \left( \theta _i\right)\) and longitude \(\beta _i = r_i\,\sin \left( \theta _i\right)\). In particular, the area of Milan is 181.67 km\(^2\) and is well approximated by a circle, so we assumed \(R = 7.604\) km. Then, considering the location of AVIS Milan within the city, the depot has been placed at a distance of \(0.2 \, R\) from the center of the cycle. To obtain travel times, Euclidean distances between points have been considered and the average speed \(\rho\) has been set to 50 km/h, which well represents the situation in Milan.

The parameters of the framework have been set to be the same on each rolling day, exploiting the values identified with the experiments reported in the Supplementary Materials. We have considered 3 vehicles (\(|K|=3\)), 3 periods and 3 trips (\(|P|=|\Pi |=3\)) per day, and a capacity of 4 donations for each trip (\(c_{tpk} = 4\)), which correspond to a total capacity of 36 donations per day. The other parameters for the planning stage have been set as follows: \(d^b = [336; 37; 84; 14; 39; 7; 420; 66]\), \(\varepsilon = 0.25\), \(\eta _{z}=\eta _{\nu }=1\). The parameters of the online allocation stage have been set as follows: \(\lambda _{f}=\lambda _{t}=\lambda _{k}=1\). Moreover, it has been assumed that all donors accept the first suggested slot (with the highest score \(S^{ik}_{pt}\)). As for the routing stage, we have set \(\sigma _i\) for \(i=1,\dots ,|I|\) to 20 minutes, \(\sigma _0=\sigma _{|I|+1}\) to 5 minutes, \(T_k\) to 1440 minutes, \(T_{max}\) to 240 minutes. As for the heuristic procedure associated with the MTVRP-TW, we have chosen \(\mu _{\** }=\mu _{\Psi }=0.5\) and \(\chi =10\).

We imposed a time limit of 5400 seconds together with a memory limit of 3 GB for the first-stage planning model, while a time limit of 14400 seconds with a memory limit of 8 GB for the MTVRP-TW.

5.2 Results

Table 3 reports the results of the first stage pre-allocation MILP. Notably, all instances are solved to optimality in a maximum computational time of 100.55 s. The number of planned slots and donations (slots filled by calling donors) for each analyzed day are also reported in Fig. 2a, which shows an almost stable trend for both of them. At the same time, the executed donations are able reach a satisfactory level of saturation with respect to the planned slots. Indeed, executed donations account for 96.45% of the planned ones, with a minimum daily production of 30 bags over 36 available slots. Figure 2b presents the amount of executed collections of each blood type on each day. It confirms the balanced trend and also highlights that each blood type has an almost individually balanced production amount among days.

Table 3 Planned number of donors, objective function (OF) and computational time (Time) of the first stage model on each day
Fig. 2
figure 2

Planned slots and executed donations over the 31 analyzed days (a); executed donations of each blood type over the 31 analyzed days (b)

Results from the online allocation and from the MTVRP-TW are reported in Table 4 in terms of the following performance indicators:

  • average waiting days from request to the actual appointment (\({\mathcal {I}}_w\)),

  • average saturation (\({\mathcal {I}}_s\)), expressed as the average number of booked appointments over the total capacity of vehicles;

  • total traveled distance in km (\({\mathcal {I}}_d\)), obtained by directly applying a MTTSP-TW (routing with \(\mu _{\** } = \mu _{\Psi } = 0\)) to the allocation solution;

  • distance traveled per donor in km (\({\mathcal {I}}_{dd}\)), expressed by the ratio between \({\mathcal {I}}_d\) and the number of donors.

It can be seen that the online allocation provides an average waiting time from call to donation is 10.72 days with around 90% system saturation. It can be also observed that both indicators \({\mathcal {I}}_d\) and \({\mathcal {I}}_{dd}\) provided by the online allocation are quite satisfactory, but at the same time the MTVRP-TW allows decreasing their values even further. More insight on this point can be found in Fig. 3, which provides a visual representation of routes in three days: day 15 (the central one in the 31 observed), the day with the lowest OF1, and that with the highest OF1.

Table 4 Results in terms of indicators \({\mathcal {I}}_w\), \({\mathcal {I}}_s\), \({\mathcal {I}}_d\) and \({\mathcal {I}}_{dd}\) obtained from allocation (and MTTSP-TW for \({\mathcal {I}}_d\) and \({\mathcal {I}}_{dd}\)), and indicators \({\mathcal {I}}_d\) and \({\mathcal {I}}_{dd}\) updated after MTVRP-TW
Fig. 3
figure 3

Routes from allocation and MTTSP-TW (left), and after the MTVRP-TW right: day 15 (a, b); day 6 with lowest OF1 (c, d); day 20 with the highest OF1 (e, f)

We have also analyzed the transportation times of the collected blood units. All blood units are significantly transported within the legal requirement of 6 hours, and the average transportation time is equal 141.33 minutes. These low transportation times, which are far from the imposed bound, allow to reduce projected costs, as it is not required to equip the vehicles with special refrigerators.

Table 5 reports the objective function value OF and its components OF1 and OF2, together with the computational time and the dimension of the problem (the number of routed donors).

Table 5 Results of the MTVRP-TW for the entire approach on each day in terms of number of donors, OF, OF1, OF2, computational time (Comp t) and value of \({\mathcal {I}}_{dd}\)

Results show that, in the cases in which the imposed time limit is reached, the maximum optimality gap of the solver with respect to the bound is 6.83% and the average is 4.60%. This means that, although the run terminates, the result is close enough to the theoretical optimal from the application viewpoint. In particular, over all days, the average optimality gap of the solver with respect to the bound is 3.14%, which we consider an acceptable value. It is also possible to observe that, in most cases, vehicles do not violate donors’ time windows, as \(OF2=0\) in 30 out of 31 days. Even in the case of violations, a maximum of 27 seconds is observed, which is negligible in practice. Over the simulated days, the average computational time for a single instance is of 1.4 hours. Finally, with \(\mu _ {\psi }=\mu _{\xi }=0\) (the MTTSP-TW) all instances are always solved to optimality with an average computational time of 5.75 seconds.

5.2.1 Benchmark comparison

Home blood donation has not been treated neither before. Therefore, no literature works or existing tools can be used to directly benchmark our framework, while a comparison is possible with similar architectures for related problems. In particular, the BDAS problem (Baş Güre et al. 2018a) has been used for benchmarking, not least because we have tested our framework on the same set of donors. In particular, we have taken the case of Baş Güre et al. (2018a) with \(\varepsilon = 0.25\), \(|T|=28\) and \(|B|= 8\). Then, as we have assumed that the 60% of donors are served with the home donation service, with respect to Baş Güre et al. (2018a) we have scaled \(d^b\) to the 60% and randomly included the 60% of the donors in the analysis.

The first comparison is in terms of production balancing. Figure 2b show a slightly better balancing with respect to that of Baş Güre et al. (2018a), reported in Fig. 4.

Fig. 4
figure 4

Executed donations of each blood type over the same 31 analyzed days, for the DBAS problem (Baş Güre et al. 2018a)

Other common metrics analyze waiting time and saturation. The average \({\mathcal {I}}_w\) over the 31 days was equal 5.27 waiting days in Baş Güre et al. (2018a), while it is 10.72 days in our case. As for \({\mathcal {I}}_s\), its average value was \(80.05\%\) in Baş Güre et al. (2018a), while we are able to reach the \(90.05\%\). These value show that the waiting times are about double in the home blood donation setting, but these longer times are compensated by the advantages of donating blood at home. Saturations are more comparable, but they refer to capacities calculated in a completely different way and with different overtime policies.

5.2.2 Economic evaluation

Considering the values of OF1 reported in Table 5, (which correspond to the kilometers daily travelled by the fleet), it is possible to estimate the differential operating cost of the proposed home donation system. As for the AVIS Milan case, we may assume a Diesel fuel consumption of 8.5 liters/100 kilometers for a suitable minivan car, and a cost of 1.439 euros/liter, giving an average daily cost for fuel of 12.11 euros. Other costs include the yearly vehicle insurance premium (approximately 2000 euros), yearly maintenance costs (estimated at 500 euros), substitution of worn tires (approximately 200 euros once every two years), and amortization of the vehicles (approximately 6000 euros per year) for three vehicles, for a global daily cost of 70.68 euros. The sum of these costs, giving 82.79 euros per day for the entire fleet, is fully comparable with the costs sustained for the functioning of the blood collection center (e.g., heating, lightning and cleaning costs). All other costs related to donation can be considered fixed and common to both layouts. Finally, as the personnel of the center can be partitioned to serve both on site and home donations, no additional personnel cost should be required. In addition, implementing a home donation layout can determine a reduced need for physical space in the collection center, allowing to generate a revenue by sub-renting some of the unused spaces/floors of the building.

5.3 Extended analyses with cancellations and acceptance of slots with lower scores

We have included two relevant realistic features in the process. First, we have considered that donors may accept slots with lower scores rather than always accepting the first proposed slot with the highest one. In particular, we have assumed that: when two slots are available for the donor’s blood type, 70% of donors choose the first with the highest score and 30% the other; when three slots are available, 50% of donors choose the first slot, \(30\%\) the second one, and the remaining \(20\%\) the third one; when at least four slots are available, 40% of donors choose the first slot, 30% the second one, 20% the third one, and the remaining \(10\%\) the fourth one.

Second, we have included cancellations and rebookings. There are two ways in which a cancellation or a cancellation with rebooking may occur. In the first case, the cancellation or cancellation with rebooking is made in advance, i.e., until the day before the appointment. If this happens, the respective number \(l_t^b\) of already booked donors is simply reduced by 1 on the day the donor was originally booked. If the cancelled donor also books for a new appointment, the new slot is assigned as in the second stage. Both these situations are not critical because, due to the rolling approach, the cancelled slot can be reassigned to pursue production balancing before the MTVRP-TW for that day is solved.

In the second case, a last-minute cancellation or cancellation with rebooking is requested on the same day the donor is scheduled. They are more critical, require immediate response, and need to be investigated. Assuming that last minute cancellations happen before the routing phase of the day under consideration, the donors are eliminated from the daily schedule and the routing is performed without taking them into account. If a donor also rebooks, the new slot is once again assigned as in the second stage. However, re-routing is not feasible in this case because it would result in modifications of appointments for other donors, which is not possible based on the characteristics of the problem and therefore independent of the solution approach.

We have included this second critical case in the extended analysis, assuming that last minute cancellations occur with probability 2%, and that half of the cancelled donors also rebook.

The random acceptance of slots with lower priority requires to set the weights of the second stage in a different way, to avoid that slots closer in time remain underfilled thus losing system capacity. Therefore, to overcome this issue, parameter \(\lambda _t\) has been increased to 10. In this way, all the slots in the list are reasonably close in time, preventing waste of capacity even when donors choose a slot with lower priority score.

Results from the overall approach with these extended features in terms of production balancing are reported in Fig. 5, where also a setting with \(\lambda _t=10\) but without cancellations and random slot acceptances is reported. Figures are similar to each other and to Fig. 2b as well. Therefore, the considered setting, which is closer to what is expected in the home blood donation practice, does not affect production balancing performance. In other words, once the weights of the second stage are properly calibrated, the framework is robust with respect to the inclusion of these features.

Fig. 5
figure 5

Executed donations of each blood type over the 31 analyzed days with cancellations, random slot acceptance and \(\{\lambda _f,\lambda _t,\lambda _k\} = \{10,1,1\}\) (a), and with \(\{\lambda _f,\lambda _t,\lambda _k\} = \{10,1,1\}\) only (b)

We have also analyzed the metrics considered in Table 6, i.e., \({\mathcal {I}}_w\) and \({\mathcal {I}}_s\) from allocation, and \({\mathcal {I}}_d\) and \({\mathcal {I}}_{dd}\) from allocation and MTTSP-TW. We do not consider \({\mathcal {I}}_d\) and \({\mathcal {I}}_{dd}\) from MTVRP-TW, because the third stage is not directly affected by the inclusion of the additional features in these extended analyses. Values are reported in Table 6 for the extended case with cancellations and random slot acceptance, and for the case with \(\{\lambda _f,\lambda _t,\lambda _k\} = \{10,1,1\}\) and no extended features. As expected, a higher weight \(\lambda _{t}\) reduces waiting time and increases saturation, which lowers \({\mathcal {I}}_{dd}\) even if \({\mathcal {I}}_d\) increases. The two introduced features affect these metrics, but rather marginally, and mainly cause less efficient donor clustering, forcing an increment of the total distance travelled by \(\sim\)8.8%. Therefore, even from this viewpoint, the inclusion of cancellations and random slot acceptances generates is still manageable by the framework, with a proper calibration of weights for the second stage.

Table 6 \({\mathcal {I}}_w\) and \({\mathcal {I}}_s\) from allocation, and \({\mathcal {I}}_d\) and \({\mathcal {I}}_{dd}\) from allocation and MTTSP-TW with extended features (first row), and with only \(\{\lambda _f,\lambda _t,\lambda _k\} = \{10,1,1\}\) but no extended features (second row)

6 Discussions and conclusion

In this paper, we propose a new organizational model to collect blood from donors, based on the new home donation paradigm. In home blood donation, it is not the donor who goes to the blood collection center, but it is the collection service that arrives at the donor’s home. To support the management of this novel service, we develop a matheuristic framework that combines an appointment-based scheduling of donations, an online policy to select a suitable slot when the donor actually makes the reservation, and a MTVRP-TW to route a fleet of bloodmobiles. The structure of this framework represents a novel contribution in the literature, and the three stages have notable elements of novelty with respect to similar works. As for the MTVRP-TW in particular, our model introduces new constraints linked to the perishability of the transported goods and the variables fixed based on the solution from the previous stages. Also the planning model differs from the allocation and scheduling models generally proposed in the literature, especially because the amount of entities to allocate is an additional decision variable. Even considering the work of Baş Güre et al. (2018a), our planning model includes novel elements related to assignments of the slots to specific vehicles rather than to a whole collection center, which also requires to keep track of the capacity of each single vehicle.

The numerical experiments detailed in this paper have verified the well-performing behavior of the proposed matheuristic framework. In particular, the tests conducted on realistic instances generated based on the AVIS Milan case have confirmed the capability of our approach to balance the production of each blood type over the days and to create cost-effective vehicle schedules. Computational and economic feasibility have been verified as well. Even if these experiments have been conducted considering a specific case, they can be however considered of general validity, because the number of donations in AVIS Milan is large enough and its organizational structure is general enough to make it comparable with that of several other providers. Although the home donation paradigm refers to a new service, the assumptions derived from the original blood collection center layout can be considered of general validity. Moreover, the execution of the experiments on random datasets allowed us to analyze sensitivity. Therefore, we can argue that our framework can also be effective for many other cases besides that of AVIS Milan.

As for the MTVRP-TW, due to its computational complexity, it was necessary to include a heuristic approach in order to provide a usable solution within a reasonable amount of time and with a reasonable amount of memory. This heuristic approach is characterized by two parameters, whose different values make the solution process more or less efficient and able to get a solution within a predefined time frame. However, as common in heuristics, they should be retuned when considered other collection centers with different characteristics.

The approach proposed in this work can be applied to extend the activities of any blood collection center towards home donation, either for all donors or only for a part of them, according to the criteria defined by the specific health system or provider. In addition to improving the donor experience and avoiding crowds at the collection center, our approach could be economically convenient if properly managed. In fact, without considering the cost associated to human resources, which can be considered equivalent in the two settings, the cost of owning and operating a small fleet of bloodmobiles may be less than maintaining a large physical collection center.

Future work will be conducted to extend the model in order to combine the new home donation paradigm with the classical one based on blood collection centers. An extended framework will give donors the option to choose among the two donation settings and will balance the overall production coming from these settings. At the same time, we will include the uncertainty of the parameters in the new framework through stochastic programming or robust models for the first and the third stage.