A Column Generation Approach for the Lexicographic Optimization of Intra-Hospital Transports

Over the last few years, the eﬃcient design of processes in hospitals and medical facilities has received more and more attention, particularly when the improvement of the processes is aimed at relieving the workload of medical staﬀ. To this end, we have developed a method to determine optimal allocations of intra-hospital transports to hospital transport employees. When optimizing transport plans in hospitals, there are various optimization goals to strive for. Therefore, we used a lexicographic approach to solve this multi-criteria optimization problem. In order to calculate optimal transport plans in a suﬃciently short computation time, we have decomposed the problem at hand with the Dantzig-Wolfe reformulation and solved the resulting pricing subproblem with an enumerative column generation approach based on Krumke et al. [23]. For improving the eﬃciency of the column generation process, we have investigated and implemented diﬀerent pruning methods, dominance rules and a column reuse mechanism for the online setting of the application at hand. In an extensive computational study, we ﬁrst evaluated the eﬃciency of the diﬀerent pruning methods before we compared our solution approach with the standard branch-and-bound column search approach from Bärmann et al. [5], classical column generation methods and the solution of an integrated MIP model solved by a commercial solver. Finally, we present performance indicators of the transport optimization tool, which was developed from our method and is now productively used in a German hospital.


Introduction
In Germany, the annual number of patients treated in hospitals increased from approx.14.6 million to about 19.4 million in the period 1991-2019 (see Figure 1(a)), which is a rise in hospital cases by about 33% within less than 30 years.At the same time, the ongoing centralization of medical facilities has led to a significant decrease in the number of hospitals in Germany (see Figure 1(b)).The combination of these two trends already leads to the formation of fewer, but increasingly larger hospitals with steadily rising bed numbers.As a result, the need for optimized processes in hospitals also becomes more and more pronounced.Figure 1: Development of inpatient case numbers and the number of hospitals in Germany in the period 1991-2020.Source: [30].
We will address in this article the planning of intra-hospital transports of patients and medical materials, which is one of the main processes in the logistics of large hospitals.A hospital is basically divided into four areas.The wards, where the patients are located most of the time, the medical functional areas, where examinations are conducted (radiology, cardiology, urology, etc.), the operating room theatre and the emergency department.Patients and medical materials (pharmaceuticals, laboratory samples or medical waste) must be transported between these areas by a specifically designated transportation staff.The transports of patients must always be carried out at specific times, according to the patients' appointments.Delays of such transports often result in significant costs for the hospital.These costs can further increase due to the fact that a delay in one transport also leads to a delay or even to a cancellation of other appointments in a medical department.Especially when an operating room is unused due to a delayed patient transport, costs of about 40-50 Euros per minute arise for the hospital.Thus, the main goal of an optimized transportation management is to reduce such delays.Further optimization goals include a reduction of the distances to be travelled by the transporters or a fair utilization of the transport staff.
Due to the fixed start and destination of a transport, the distance between these two locations (order distance) as well as the duration that the transporter needs to travel this distance is already predetermined and cannot be changed.Optimization therefore aims to keep the distance between the destination of one transport and the start of the next transport (lead distance) as short as possible through a clever allocation and sequencing of the transports while also keeping to the specified times for the execution of the transports as far as possible.
For some years now, the company OrgaCard Siemantel & Alt GmbH has been offering software that supports a human dispatcher in the coordination of these transports.In a joint research project between OrgaCard and Friedrich-Alexander-Universität Erlangen-Nürnberg, the two partners work together to improve upon the state-of-the-art in this field.This has already led to the development of a new generation of transport planning software offered on the market, which delivers transport plans of a higher efficiency and which is able to incorporate vari-ous optimization goals at once in an adequately prioritized manner.The mathematical foundations of this new multi-criteria optimization approach for intra-hospital logistics as well as its computational performance in real-world settings are presented in this work.
Literature Overview Based on the underlying structure of the described transportation problem, it can be classified as a vehicle routing problem (VRP).This class of problems has been extensively researched [31].For a detailed survey classifying vehicle routing and dial-a-ride problems as well as solution methods, see [10].In the broad field of VRPs, also transport problems in hospitals and other medical facilities have already been studied.Hanne et al. [18], Beaudry et al. [7] or von Elmbach et al. [33] have developed heuristic solutions for these problems, whereas Kallrath [22] considers both heuristic and exact solution methods.In the last decades, dynamic vehicle routing problems (DVRP) have been studied more intensively due to industry needs, but also due to increasing computer power.In dynamic problems, part or all of the input is unknown beforehand and reveals itself dynamically during the planning or execution of the routes.The dynamics in such problems often arise from the fact that the due date or the location of requests (in our case transport orders) only becomes apparent during live operation of the system [27].One approach for solving such problems are look-ahead dynamic routing methods, which try to predict future events based on stochastic information.Typically, such approaches include waiting times at locations for which requests have been predicted (e.g.[19] or [8]).The transport system of our industrial partner OrgaCard is used in hospitals where the transport staff has a heavy workload.Thus, the transport employees are executing transports during peak times almost without any pause.Sending staff to potential transportation points and having them wait there, even though there might be no transport to execute, is not justifiable to the responsible persons in hospitals.Lookahead approaches generally work well if some degree of valid stochastic information about the uncertain parameters of the optimization problem is available.In highly uncertain systems, as in the present case of transport logistics in hospitals, such approaches are less suitable.Zou and Dessouky [35] even conclude that in these cases, re-optimization as a reactive approach to the new incoming orders is the only possible option.To this end, we have also opted for a re-optimization approach in the application at hand.
The transport problem can also be seen as a parallel-machine scheduling problem.The general problem class of scheduling problems has also frequently been the subject of research work.On the computational side, publications have mostly focussed on developing heuristic solution methods [24,29,17], in order to name some of them.However, exact solution methods for this problem class have been developed as well.For instance, Bard and Rojanasoonthon [4] as well as Lopes and de Carvalho [25] present exact solution methods for scheduling problems with parallel machines.For a comprehensive literature review on the topic of scheduling problems, see for example [2].
The main inspiration for our work are the publications of Krumke et al. [23] as well as Westphal and Krumke [34].They dealt with a vehicle dispatching problem (VDP) which originated in the provision of accident and breakdown service for cars on motorways.The authors subdivided their MIP formulation for this VDP into a master problem and a subproblem using Dantzig-Wolfe decomposition and developed a new enumerative column generation method to solve the latter.In the companion article [5], it is shown how the column generation scheme from [23,34] can be generalized to an approach called branch-and-bound column search, which is applicable to a wide variety of optimization problems and which can be used to solve multiple Dantzig-Wolfe subproblems within a lexicographic hierarchy at once.
There are some substantial benefits in using column generation with the branch-and-bound column search for intra-hospital transport optimization.By embedding it in a branch-andbound framework, it becomes an exact procedure that can find provably optimal solutions.Standard column generation methods only solve the LP-relaxation to optimality.However, our method solves at the end of the procedure the integer master problem of the Dantzig-Wolfe-Decomposition on the basis of all columns generated for the optimal LP solution.This approach, called restricted master heuristic [21], also determines very good integer solutions as the computational study shows.One factor that favours this is certainly the high number of columns with negative reduced costs (also known as intensification [32]) that can be generated per iteration by solving the pricing problem with the branch-and-bound column search.Due to these strong results, the industry partner decided not to extend the approach to a full branch-and-price procedure.Furthermore, transports in hospitals tend to be created at short notice.In combination with the optimization goals, this leads to solutions where each transporter has to execute only a few transports.This makes the branch-and-bound column search particularly effective and is a main reason why we decided to use this method for the intrahospital transport problem.
Contribution In an extensive dialogue with logistics experts from several German hospitals, we have examined the requirements for a transport planning system and have carried out an analysis based on specific key figures regarding, for example, transport volume, order distribution and transport durations.We model the resulting optimization problem of allocating and scheduling intra-hospital transports in German hospitals using an integrated mixed-integer optimization approach.Furthermore, we decompose this integrated model via Dantzig-Wolfe reformulation [11] and solve it with a novel column generation method.To this end, we adapt the enumerative column generation approach of [23] to our application and extend it with the modified pruning scheme adapted from [34].In order to solve the multi-criteria transport planning problem within the real-time setting typical for a hospital and to include all important optimization goals, we integrate this procedure into a lexicographic optimization approach in such a way that synergetic effects arise from the parallel generation of columns for the different optimization objectives.In addition, we conduct an extensive computational comparison of different approaches for solving the transport optimization problem and investigate different key figures of the developed multi-criteria column generation method.
The theoretical background of the branch-and-bound column search has already been discussed in [5].However, this work deals specifically with the aspects that are necessary to actually apply the approach in real live operation of a German hospital.Furthermore, we put a special focus on pruning the search trees in the context of the intra-hospital transport problem.We were able to further sharpen the pruning by applying the modified pruning of [34] to our multi-criteria optimization problem and improving it in such a way that less severe restrictions are imposed on the bounding of the reduced cost.In addition, we have added dominance rules to the branch-and-bound column search, which have accelerated the solution time.We have also developed and implemented a mechanism for reusing columns that takes into account that the problem at hand must be solved in an online setting.The procedure has meanwhile been productively used for several months in a German hospital.Thus, it is also possible to present real-world performance indicators that show the improvements that can be achieved by our approach and that serve hospital managers for quality assurance in transport logistics.
Structure Our exposition begins with a description of the problem background in Section 2. In Section 3, we present an integrated model of the intra-hospital transport optimization problem.The solution method using column generation with branch-and-bound column search as well as two different pruning methods are described in Section 4. Our computational study to evaluate the performance of the developed method compared to other common approaches can be found in Section 5.In Section 6, the case study shows that our method also generates efficient transport plans in the live operation of a real-world hospital.Finally, our conclusions are given in Section 7.

Problem Description
In the following, we present the technical background within which our optimization procedures have been developed.We explain the requirements arising from the integration into the software system by OrgaCard, which is currently used in about 35 hospitals in Europe.Further, we state the assumptions that were made for the computation of a feasible transportation plan.

Calculation Basis for the Distances to be Travelled
Precise information on the duration of transports is fundamental for the planning of intrahospital logistics.The distances that have to be travelled are determined from a graph in which shortest paths are calculated with Dijkstra's algorithm [14].This graph is created using a socalled Computer-Aided Design (CAD) tool with which it is possible to build a node-and-edge network, mathematically a weighted graph, using a conventional plan of a building.The edges can be weighted with walking distances, and characteristic properties can be attached, such as different floor coverings or existing gradients.Based on these properties, varying walking speeds on different edges can then also be taken into account.It is also crucial that there are transports that are not allowed to use certain paths due to the infectiousness of the patient.This became particularly relevant in times of the COVID-19 pandemic, as the number of such transports increased significantly.By providing special paths for COVID-19 patients in the nodeedge network, such isolation regulations can also be implemented easily.In addition, there are means of transport that cannot be used on all edges.These two factors regularly mean that the existing network options may be limited.The affected nodes and edges are removed from the graph before the shortest path is calculated among the remaining feasible paths.

Characteristics of the Transports in a Hospital
In order to better estimate the challenges of the transport planning system used and the complexity of the mathematical problems to be solved, we will briefly discuss the volume of transport orders arising in a representative German hospital.In the hospital at hand, we evaluated the average number of transports per day over a period of 3 months in a bar chart; see Figure 2(a).The volume of orders is distributed relatively evenly spread over the working days, but it is significantly lower at weekends.This is certainly due to the fact that the regular medical departments of a hospital do not work on weekends or only take care of medical emergencies.In Figure 2(b), we evaluate the transport volume over a typical day in a histogram by considering the temporal distribution of all transports within a period of 3 months.We can see that there are usually two peak times.In the morning, between 9 and 11 a.m. as well as between 1 and 3 in the afternoon.Around midday, the number of transports decreases slightly.After the end of regular business hours and during the night, significantly fewer transports take place.We have been informed that it is rarely problematic to distribute the transport adequately among the staff during the periods with low transport volumes.At peak times, when the staff also tends to reach its workload limit, it is difficult to find an appropriate allocation by hand, resulting in inefficiencies that lead to unnecessarily long delays of transports.Support by an automatic disposition based on mathematical optimization is then particularly desired.

Mon
Obviously, delays also have different effects depending on the type of the transport order.To be able to take this into account correctly in the transport planning system in use, there are different order types for all the transport orders that arise.However, the number of transport types and their urgency and priority are highly dependent on the hospital where the system is deployed.We will show an example of the different types of transport in a hospital in Section 6.
In Figure 3(a), we consider the duration of orders between the time the transporter receives the transport order and the time the employee hands the patient or material over.It becomes clear that most jobs last in the range between 7.5 and 12.5 minutes.Figure 3(b) shows the amount of time in minutes that an order is known to the system before it is to be executed.This time is also strongly dependent on the priority of the transport.This results in the three peaks in Figure 3(b).In summary, however, it can be seen that most jobs are entered into the system about 5-14 minutes before they are due to start.This means that almost all orders are transferred to the system at very short notice.Thus, it is not possible to calculate an integrated plan beforehand which is valid for the entire day.On the contrary, it will be necessary to recalculate several times due to newly arriving orders.Even though only one hospital has been singled out as an example, we have obtained the information that this dynamic submission of transports applies to all of customer hospitals of OrgaCard.Thus, the transport planning system must be able to operate in an online setting in which the input data changes every minute.Therefore, the allocation problem considered in this article also has to be solved within 60 seconds to ensure that new transports are distributed sufficiently fast.The problem at hand is then solved in a minute-by-minute calculation cycle.

Modelling Assumptions
An important factor when calculating a transport plan is that the employees and the transports have different profiles, i.e. not every transporter can carry out every transport.The profiles must be precisely matched so that the transports can be assigned to the respective employees.For legal reasons, only properties that relate to professional qualification are defined for the transporters, i.e. no other personal characteristics.This leads to the first assumption: Assumption 2.1.The physical constitution of all employees is the same.This means that both the walking speed and the maximum load that can be transported are identical for all employees.
Each transport employee can announce short interruptions to the system.These unavailabilities of the employees are specified to the system as strictly blocked times during which the transporter may not be scheduled to carry out any transport.It is also defined that each transport must be executed with a specific means of transport (e.g.bed, wheelchair, walker).Since it has been proved to be sufficiently accurate in practice, we assume a constant default value for the time required to procure the appropriate means of transport.This procurement time is then simply added to the duration of the transport.Thus, another assumption is made: Assumption 2.2.The means of transport required for the order is already present at the starting point of the order.Thus, it does not need to be procured separately.
Due to the fact that the problem at hand is solved in an online setting on a minute-by-minute basis, and that the transport employees usually are assigned a follow-up order promptly after processing one order, we assume that the employee always remains at the destination of a transport until the next order is received.Assumption 2.3.A transporter remains at the destination of his last executed transport, i.e. the employee does not have to be sent back to a headquarters (a depot) after completing a transport.
With these assumptions, it is now possible to develop an integrated mathematical model for creating an intra-hospital transport plan.

Mathematical Model
In this section, we derive an MIP model for the optimization of transport plans in a hospital.The inputs of the model are a set T of transports that shall be executed by a set E of transport employees.We also introduce a set L that contains the initial locations l e of each employee e ∈ E before the current calculation cycle.Moreover, we define a set of block times B e for each transport employee e ∈ E during which they cannot execute transports and the set of all block times is defined as B ∶= ⋃ e∈E B e .We also introduce a network of actions as a graph G = (V, A), where the nodes V ∶= (T ∪ B ∪ L) represent actions that an employee can perform and the arcs A ∶= V × (T ∪ B) model all feasible sequences of these actions for the transporters.
For each transport t ∈ T, we consider a time window [a t , b t ] ⊆ R + with a t ≤ b t during which the transport shall be started.The parameters a b and a le define the fixed start times for the block times b ∈ B e and the earliest times at which the initial locations l e ∈ L for e ∈ E can be left.Furthermore, for every action v ∈ V = (T ∪ B ∪ L) there is a given service time σ v ∈ R. If the action is a transport t ∈ T, then σ t > 0 represents the duration of the actual transport between the time when the transporter receives the patient or material and the time when the transporter hands it over at the destination of the transport.Via Assumption 2.2, the parameter σ t also includes the procurement time for the required means of transport t ∈ T. For b ∈ B, the value σ b models the duration of the block time and for all l ∈ L, we set σ l to zero.The distances between an employee's initial location and a transport, between two transports or between a transport and a block time are modelled via s v,w ≥ 0 with (v, w) ∈ A. Since we assumed that the walking speed of all employees is the same (see Assumption 2.1), we can directly calculate the lead times τ v,w ≥ 0 with (v, w) ∈ A.
In order to model the assignment of transports to employees, we define variables y t,e ∈ {0, 1} for all t ∈ T and e ∈ E. The variable y t,e takes a value of 1 if order t is to be executed by employee e, otherwise it is 0. We also define parameters y b,e = 1 for all b ∈ B e , e ∈ E, to ensure that the block times of the employees are respected.The matrix F contains the value 1 at position F t,e if employee e ∈ E is allowed to execute transport t ∈ T due to his qualification; otherwise we set F t,e = 0.The sequence of locations, transports and block times assigned to an employee e ∈ E is determined by the variables x v,w,e ∈ {0, 1}.If x v,w,e = 1, then transport or block time w ∈ T ∪ B directly follows location, transport or block time v ∈ T ∪ B ∪ L in the route of transporter e ∈ E, otherwise x v,w,e = 0. Since each employee e ∈ E is obviously assigned to only one initial location l ∈ L, there are only those variables x l,w,e , w ∈ T ∪ B where l is indeed the location belonging to transporter e.For employee e ∈ E, the variable ω v,e ≥ 0 models the start time of a transport for v ∈ T or the start time of a block time for v ∈ B. The variables ω le,e model the earliest possible timestamps at which any location l e ∈ L can be left by an employee e ∈ E. Occurring delays of transports are modelled using variable d t ≥ 0, t ∈ T. The delays of the transport orders can be penalized using different weights p t ≥ 0, t ∈ T. Finally, variable N ∈ Z + models the maximum number of transports performed by one single transporter.The complete model can then be stated as follows: (P) min x,y,d,ω,N (1.17) With the objective function (1.1), we minimize a weighted sum of the three optimization objectives: transport delays, lead distances and equal utilization of transport employees.The optimization goals are weighted with the parameters α 1 , α 2 , α 3 ≥ 0. Constraint (1.2) ensures that each order is carried out by exactly one transporter.If transport t ∈ T is assigned to employee e ∈ E, then Constraint (1.3) guarantees that transport t is visited, i.e. the number of incoming edges for transport t is equal to 1.For all block times, Constraint (1.3) ensures that the block time is visited, since y b,e is set to one for all b ∈ b e and e ∈ E. Since we assume that employees remain at their destination after completing their transport order (cf.Assumption 2.3) or at their location after the block time, Constraint (1.4) ensures that a transport t ∈ T, if assigned to employee e, or a block time b ∈ B e has at most one outgoing arc.Constraint (1.5) is used to ensure that each location is left only once.By Constraint (1.6), the value of variable N is greater than or equal to the largest number of transports performed by one single employee.By minimizing N in the objective function, we model the optimization goal that each transporter should execute approximately the same number of transports.With the help of Constraint (1.7), we ensure that the sequence of transports and block times is correctly integrated into a transport plan: assuming that v, w are both transports from T, and transport w shall follow order v, it guarantees that w can be started at the earliest after finishing the service time σ v of transport v as well as the travel time τ v,w between the two transports.Constraints (1.8) and (1.9) ensure that the time windows for the transports are respected.If a transport t ∈ T is delayed, this is modelled via variable d t , which then also appears in the objective function, weighted by the priority of the order p t and a weighting factor α 1 for this optimization goal.Constraint (1.10) guarantees that all transports t ∈ T are assigned to transporters e ∈ E that are allowed to execute them.Constraint (1.11) ensures that the employee locations l e ∈ L are not left before the earliest possible start time a le of the employee, and Constraint (1.12) fixes the start of block time ω b , b ∈ B e , of employee e ∈ E to the value a b .Last but not least, the domains of the variables are modelled using Constraints (1.13)-(1.17).

Solution Methodology
Real-world instances of the presented intra-hospital transport problem may be too expensive in terms of solution time to solve them with standard branch-and-bound solvers.The aim of this study is to solve the instances of two German hospitals more effectively than the previously used heuristics.To this end, we develop a solution method based on enumerative column generation coupled with a lexicographic optimization approach.

Lexicographic Optimization Approach
We now present a general approach to multi-objective optimization problems which we then apply to the intra-hospital transport problem.In Model (1), the three optimization goals (transport delays, lead distances and equal utilization of transport staff) were weighted by parameters α 1 , α 2 and α 3 and then cumulated in a so-called blended approach.The blended approach is particularly suitable if the components of the objective function are measured in the same unit or if it is at least possible to convert them into a common unit.In the transport optimization problem, however, the objectives are very different in nature.For example, we measure the uniform utilization of the transport employees in terms of the number of assigned orders, which of course differs considerably in size from the lead distances, which are measured in metres.Therefore, we decided to use the lexicographic optimization approach [20].
In this approach, the individual optimization goals are strictly optimized in a predefined hierarchical order [28].This means that on the first optimization level the model is solved with the highest-prioritized optimization goal as the objective function.If there are several optimal points of the problem on the first level, the subsequent, second-most important optimization goal is optimized, however only among the optimal solutions to the first-level problem.If there are further criteria that are to be optimized, the process is continued in this way.In our case, a clear hierarchy of optimization goals could be specified by the logistics experts from the hospitals (1st delay of transports, 2nd lead distances, 3rd equal utilization of transport staff).Applying the lexicographic optimization approach to the problem at hand leads to the three following models: Initially, a slight modification of Model ( 1) is optimized where the objective function only consists of the delays of transport orders.In the second stage of the lexicographic optimization approach, an additional inequality is appended that limits the allowable transport delays.To this end, the optimal value from the first optimization level is fixed as Z 1 ∶= min{∑ t∈T p t d t (1.2)-(1.17)}and inserted in the right-hand side of the additional inequality.Often, some deterioration is allowed compared to the first-level optimal value.This can be modelled with a weighting parameter γ 1 ∈ [1, ∞), cf.Inequality (2).For the third lexicographic level, again a constraint is added , cf.Constraint (3), that restricts the lead distances by the weighted optimal value γ 2 ⋅ Z 2 on the second lexicographic level, where Depending on the individual prioritisation of the hospital, the order of the optimization goals can of course be changed.

Branch-and-Bound Column Search
In order to successfully solve large MIPs, formulations are required whose LP relaxation forms a good approximation to the convex hull of the set of feasible solutions.One method to improve the LP relaxation is to apply a Dantzig-Wolfe reformulation of the problem [11].The resulting three master problems corresponding to the three lexicographic levels in our application require the definition of a route r ∈ R. A route must contain the information which employee e ∈ E executes the route, which transports t ∈ T are assigned to it and in which order and at which time these transports are executed.Thus, each route r ∈ R comes with the following parameters: (i) a t,r ∈ {0, 1} is equal to 1 iff transport t is contained in route r, (ii) a e,r ∈ {0, 1} is 1 iff route r is assigned to employee e ∈ E (iii) the weighted delay of all orders executed along the route is given by c 1 r ≥ 0, (iv) c 2 r ≥ 0 contains the sum of the lead distances of route r.Finally, the binary variable z r ∈ {0, 1} is 1 if route r ∈ R is chosen, and 0 otherwise.
The master problems in the lexicographic optimization, which are equivalent to the models in Section 4.1, are then obtained as: r∈R a e,r z r ≤ 1 ∀e ∈ E (6) r∈R t∈T a e,r a t,r z r ≤ N ∀e ∈ E (11) Constraints ( 5) assign each transport t ∈ T to at least one route.Every transporter e ∈ E can execute at most one route, cf.Constraint (6).Constraints ( 8) and (10) ensure that the objective function of a higher-prioritized lexicographic level deteriorates at most by γ 1 or γ 2 at the respective next-lower level.In order to determine the longest chosen route, Constraint (11) is used.The objective functions of the three master problems again minimize the already known optimization goals: delays of transports (4), lead distances (7) and the maximum number of transports executed by one transporter (9).
The number of all feasible routes increases exponentially in size with the number of transports and employees.Thus, we restrict the set of routes R that appear in the master problems as columns of the constraint matrix to only a small subset R ⊆ R.This leads to the restricted master problems (RMP1)-(RMP3).We require that the initial route set R contains at least one feasible solution to master problem (MP1).In order to get a better or even optimal solution, we need to extend the set of routes R by some improving columns.The new routes are constructed with column generation techniques (see e.g.[6,26,12], among others).More precisely, by optimizing the restricted master problems (RMP1)-(RMP3), we obtain optimal dual variables πt , πe , π1 , π2 and λe , t ∈ T, e ∈ E, corresponding to Constraints ( 5), ( 6), ( 8), (10) and (11).With this dual information, we can compute the reduced cost of routes r ∈ R ∖ R that are not yet part of the restricted master problems for the first ( c1 r = c 1 r − ∑ t∈T a t,r πt + ∑ e∈E a e,r πe ), the second ( c2 r = c 2 r − ∑ t∈T a t,r πt + ∑ e∈E a e,r πe + c 1 r π1 ) and the third ( c3 r = ∑ e∈E a e,r λe N − ∑ t∈T a t,r πt + ∑ e∈E a e,r πe + c 1 r π1 + c 2 r π2 ) lexicographic level.If a route with negative reduced costs is found, it is added to the set R. If there is no column with negative reduced costs any more, we know that an optimal solution to the LP relaxation of the corresponding master problem has been found, cf.[9].When the optimal LP-relaxation has been found for all lexicographic levels, the integer master problems (MP1 -MP3) are also solved again on the basis of the routes generated so far in order to obtain an integer solution.For further details, see Appendix B.  The problem of computing new columns with negative reduced costs is called the pricing problem or simply the subproblem.Usually, the subproblem is formulated as an MIP.However, we aim to solve the pricing problem with an enumerative solution method.We use the generic framework of branch-and-bound column search [5].The main idea of branch-and-bound column search is to find new routes r ∈ R ∖ R of transport orders by enumerating them as nodes in so-called enumeration trees, cf. Figure 4. Starting from an empty route r 0 at the root node for which only the executing employee is specified, further routes are built by successively adding transports to this empty route.Thus, all subsets -or more precisely sequencesof transport orders are enumerated.These ordered subsets are also directly assigned execution times within the procedure.Moreover, the other feasibility requirements that are modelled in System 1 (combinability of transport and employee, block times of transporters, etc.) are ensured for each route.In principle, all routes created in this way that have negative reduced costs enter the master problem as new columns.Thus, a key advantage of branch-and-bound column search is that it does not provide only one new column as in the traditional approach, but a whole set of improving columns.In many cases, this allows for a much more efficient solution process, since the pricing problem does not have to be called as often and feasible integer solutions for the master problem can be found earlier in the procedure [32].
The number of new columns can even be adjusted dynamically with the help of an acceptance threshold θ ≤ 0 (default value θ = 0).Only routes with reduced costs smaller than θ are added to the master problems.If too many columns are found, the threshold is set to a correspondingly smaller value so that fewer columns fulfil the threshold condition at the next call of the subproblem.A typical problem of column generation methods is that the dual variables oscillate strongly at the beginning of the process [26].To keep the effort of finding new routes low in the first phase of the procedure and to quickly add new columns to the master problems, the enumeration tree is not always searched entirely.Thus, we define a search depth ∈ Z + , which specifies a maximum path length up to which the enumeration tree is traversed starting from the root node.In this way, for all routes r in the current enumeration tree, we have ∑ t∈T a t,r ≤ .In addition, a search breadth β ∈ Z + is used, which determines the maximum number of child nodes visited for each route in the enumeration tree.The generation of routes is then restricted to only a certain subset T ⊆ T of transports with T = β.Thus, for all routes r in this enumeration tree, we have a t,r = 0 for all t ∈ T ∖ T. The selection of transports t ∈ T can be done according to the dual costs πt , primal costs or other criteria.The two parameters and β for limiting the search space of the branch-and-bound column search are successively increased in the course of the procedure as the values of the dual variables oscillate less and thus become more reliable.
A major advantage of combining lexicographic optimization with the enumerative method of branch-and-bound column search is that the three lexicographic levels can be solved in parallel.More precisely, the columns generated for different levels are nevertheless stored in a common pool and thus also support the solution process of the other lexicographic levels.Further details on implementing the coupling of the two methods are explained in Appendix B.

Pruning the Enumeration Trees
It goes without saying that simply enumerating all possible routes in the subproblem is inefficient, since there are exponentially many.An essential part of branch-and-bound column search is therefore a strong rule for pruning the enumeration trees.This is done using the total maximum gain tmg k of a route r in lexicographic level k ∈ {1, 2, 3}.Consider any route r that is a descendant of r in an enumeration tree, i.e. the route at the root node of the tree r 0 , r and r are connected with a path P = (r 0 , . . ., r, . . ., r).Then tmg k is the maximum value by which the reduced costs of route r can be smaller than the reduced cost of route r at lexicographic level k.Thus, the total maximal gain is used to calculate a lower bound at a route r for the reduced costs of all descendant routes r as ck r ≥ ck r − tmg k for each k ∈ {1, 2, 3}.For a generic definition of the total maximal gain, also combined with lexicographic optimization, see [5].
In the following, we will present two possibilities to calculate the total maximal gain in the context of the application at hand.First, we will calculate a total maximal gain where the resulting bound is weaker than in the approach presented later, but in return the computing times tend to be shorter.Consider again a route r ∈ R and an arbitrary descendant r.Then route r has been created attaching additional transports to route r.The idea of calculating the total maximal gain in the first lexicographic level is to bound the primal costs (delay costs) from below that arise by attaching these further transports to route r.To this end, we consider the transport with the latest starting time in route r, which is t r ∶= argmax{w t t ∈ T, a t,r = 1}.The earliest time at which the next order t 1 ∈ T with a t 1 ,r = 0 can thus be started is w tr + σ tr + τ tr,t 1 .The value by which the reduced cost c1 r is decreased if we append transport order t 1 to route r is g 1 (t, r) ∶= πt 1 − p t 1 ⋅ max{w tr + σ tr + τ tr,t − b t 1 , 0}.In tmg 1 , we assume that further transports t 2 , t 3 , . . .also start at w tr + σ tr + τ tr,t 2 , w tr + σ tr + τ tr,t 3 , . . .respectively.In this way, we bound the primal costs from below.Thus, we have total maximal gain in the first lexicographic level as where T ⊆ T with T = β.Total maximal gain tmg 1 (r, , T) is applicable for all search depths and search breadths β.In combination with the reduced costs of route r, we obtain the following bound: if c1 r − tmg 1 (r, , T) ≥ θ, then no further descendants of route r need to be visited in this enumeration tree, since their reduced costs are definitely greater than θ.That is, the enumeration trees in the first lexicographic level can be pruned below route r.
In the second lexicographic level, we try to underestimate the lead distances.If a transport t ∈ T with a t,r = 0 is appended to r, the primal costs of the route increase at least by a value of min{s t,t t ∈ T}.The set T is defined as T ∶= T ∪ B e with e ∈ E such that a e,r = 1 if route r is the root node (r = r 0 ), and as T ∶= {t r } ∪ {t ∈ T a t,r = 0} ∪ B e , which is the set of all possible predecessor transports and previous block times of t otherwise.The difference in the reduced costs c2 r of route r and another route where one transport t was appended can then be bounded from above by g 2 (t, r) ∶= πt − π1 ⋅ p t ⋅ max{w tr + σ tr + τ tr,t − b t , 0} − min{s t,t t ∈ T}.Hence, the total maximal gain in the second lexicographic level can be calculated as where T ⊆ T with T = β.The enumeration trees in the second lexicographic level can then be pruned at a node with its corresponding route r if c2 r − tmg 2 (r, , T) ≥ θ.In the third lexicographic level, the maximum route length is minimized, cf.Objective (9).Obviously, a calculation of this objective is computationally not expensive, such that bounding the primal costs from below is not necessary.Due to the two additional constraints (10) and (11), the difference in the reduced costs c3 r of route r and a route at a child node can be bounded from above by g 3 (t, r) ∶= πt − π1 ⋅ p t ⋅ max{w tr + σ tr + τ tr,t − b t , 0} − π2 ⋅ min{s t,t t ∈ T} − ∑ e∈E a e,r λe , with T as above.Thus, the total maximal gain in the third lexicographic level is calculated as where again T ⊆ T with T = β.We can now prune the enumeration trees in this lexicographic level if c3 r − tmg 3 (r, , T) ≥ θ.Since the objective of the third lexicographic level is to minimize the route length, measured in the number of orders executed, it is not useful to generate routes with more transports than the longest route in the second level has, i.e. the enumeration tree can then also be pruned.Now we will derive stronger bounds to prune the trees earlier in the branch-and-bound column search.The basic idea for this modified pruning stems from Westphal and Krumke [34].The pruning scheme developed there is based on calculating minimum weight matchings and using them to determine more precise lower bounds on the reduced costs.
In the total maximal gain tmg 1 , it was assumed that all transports added to a route r can be started immediately after the completion of the last order t r .For the new bound, it is taken into account that before the second, third, etc. attached transport can be started, the service and lead times of the first, second, etc. attached order must have been completed.However, these times are not included exactly, but are bounded from below by the sum of the n-smallest values of the instance at hand.Given a route r, let σ be a tuple with all service times of transports that are not part of route r, i.e. σ = ( σq ) q=1,..., T −∑ t∈T a t,r and σq 1 ≤ σq 2 for q 1 < q 2 , q 1 , q 2 ∈ {1, . . ., T − ∑ t∈T a t,r }.Further, let τ = ( τq 1 ) q1 =1,..., A be the tuple with all lead times, with set A ⊆ (T ∪ L ∪ B) × (T ∪ B) as in Section 3.For tuple τ, we also have τq 1 ≤ τq 2 for all q1 , q2 ∈ {1, . . ., A } with q1 < q2 .Thus, the modified total maximal gain in the first lexicographic level can be defined as follows: The calculation of the first total maximal gain tmg 1 completely disregards the sequence of transports appendable to route r and thus strictly follows the specifications in [5].However, the modified total maximal gain tmg * 1 takes into account that there are still several consecutive execution time slots for transports after r.Transports are assigned to these time slots within T without calculating the exact primal costs.For the transport assigned to the first execution time slot, the exact lead time starting from the last order t r of route r is incorporated in the total maximal gain, see (13).For all further transports t n ∈ T , the sequence uses lead times and service times from the tuples τ and σ.The lead time to the last possible is then bounded from below by min{τ t,tn (t, t n ) ∈ A, a t,r = 0}, cf.(14).
Obviously, tmg 1 and tmg * 1 are equal if only one transport is attached to r, i.e. if m = 0 or ∑ t∈T χ t = 1.If the two total maximal gains are calculated by attaching more than one transport to r, tmg * 1 is greater than tmg 1 by the value ∑ m n=1 ∑ n q=1 ( σq + τq ) + min{τ t,tn (t, t n ) ∈ A, a t,r = 0} − τ tr,tn .This value is (significantly) greater than zero in most instances, because regularly the sum of the minimum service time σq and the minimum lead times τq + min (t,tn) a t,r =0 τ t,tn is greater than one single lead time τ tr,tn .The more attached transports the total maximal gain consists of, the greater is the difference between tmg 1 and tmg * 1 .In the second lexicographic level, the modified total maximal gain can be calculated as tmg * 2 (r, , T) ∶= max Regarding the lead distances, the improvement from tmg 2 to tmg * 2 is not that significant as in the first lexicographic level, since only the first transport after t r uses the more precise estimation min{s tr,t 0 , min{s b,t 0 b ∈ B e , e ∈ E, a e,r = 1}}, see (15).For all further transport slots, min {s t,t t ∈ T} is used again, cf.(16).However, since the delays are now part of the reduced costs due to the lexicographic optimization approach, the improved estimation of delays also has a positive effect on the bounding of the reduced costs in the second lexicographic level.
In the third lexicographic level, it is not possible to bound the newly added reduced costs better than in tmg 3 , since the exact number of transports performed per route has already been taken into account.However, the better estimations of the delays and the lead distances contribute to an improved bounding of the reduced costs using a modified total maximal gain tmg * 3 : Thus, we have discussed the theoretical basis for pruning the enumeration trees and we have presented two different schemes.The simple tmg k with k ∈ {1, 2, 3} has the advantage that it is easier to compute, but it is less exact.However, the calculation of the modified bounds tmg * k with k ∈ {1, 2, 3} is more complex, but the idea is that more nodes and corresponding routes in the enumeration tree can be pruned.In the further course of this work, we will present the algorithmic computation of these two bounds and we will also compare their performance.

Solution Algorithms for Calculating the Total Maximal Gain
In this section, we discuss efficient algorithms for the solution of the maximization problem in the total maximal gain, which is used to prune the enumeration trees of the branch-andbound column search.First, in Algorithm 1, we will present a method for calculating tmg k , k ∈ {1, 2, 3}, based on the approach of Krumke et al. [23].In the second part of this section, we then investigate a more sophisticated approach and introduce an algorithm for the modified lower bounds using tmg * k , k ∈ {1, 2, 3}, based on the methodology of Westphal and Krumke [34].We pass to Algorithm 1 the lexicographic level k, a subset T ⊆ T corresponding to the search breadth β, the search depth , the current route r of the enumeration tree for which the total maximal gain should be calculated and an optimal solution ( π, λ) to the current dual problem.
Algorithm 1: S P A (Adapted from: [23]) Input : Lexicographic level k, subset of transports T ⊆ T with T = β, search depth , route r, optimal dual solution ( π, λ), acceptance threshold θ Output: true if the enumeration tree can be pruned, false otherwise.In the initialization phase of Algorithm 1, the gain is set to zero for all t ∈ T and tmg is initialized with −∞.Then we calculate the gain corresponding to lexicographic level k for all transports t ∈ T with functions g k (r, t) defined in Section 4.3.By the properties of these functions, the calculated gain is an upper bound on the value by which the reduced costs of a route r in level k decrease if one given transport t is added to the route.Afterwards, the transport indices t ∈ T are sorted by their corresponding gain and stored in SRC in descending order.Now, the total gains tg are calculated for the different numbers of transports 1, . . ., ( − ∑ t∈ T a t,r ) that can still be appended to route r within the search depth .For a given number of transports temp , the largest total gain tg is calculated by accumulating the largest gains gain SRC 1 to gain SRC temp in Lines 9-10.Finally, the maximum of these total gains tg is determined in Line 12 and the algorithm checks whether the enumeration tree can be pruned with this total maximal gain, which is equal to the simple total maximal gain tmg k (r, , T) of Section 4.3.
The idea of the modified total maximal gain is to arrange transports in such a way that the primal costs are minimal by assigning orders to estimated execution times.This assignment problems can be considered as a cost-minimizing matching problem on a bipartite graph.To this end, a bipartite graph G = (V, A) is defined at each route r of the enumeration tree, with V ∶= U ∪ T .The set U consists of nodes u t corresponding to transports t ∈ T(r) that are not scheduled in route r, i.e.T(r) ∶= {t ∈ T a t,r = 0}.Further, the set T contains nodes tj , j ∈ {0, . . ., − ∑ t∈T a t,r }, which correspond to the execution time slots for transports after the last transport order t r of route r.All nodes u t ∈ U are connected to all nodes tj ∈ T via directed arcs (u t , tj ) ∈ A, weighted by lower bounds on the reduced costs of the respective lexicographic levels ck r (u t , tj ).The arc weights of the first lexicographic level for arcs (u t , tj In the second lexicographic level, the arc weights result analogously as with T ∶= T ∪ B e and e ∈ E such that a e,r = 1.
In the third lexicographic level, we have the following arc weights: Let M J ⊆ A be the minimum-cost matching of cardinality J between nodes u t ∈ U, with t ∈ T(r), and nodes tj ∈ T with j ∈ {0, . . ., J − 1}.Further, let C(M J ) ∶= ∑ (u t , tj )∈M J ck r (u t , tj ) be the cost of the minimum-cost matching M J .Then we have tmg * k (r, , T) = − min J=1,..., −∑ t∈ T a t,r C(M J ), i.e. the total maximal gain is equal to the negative of the costs of the optimal matching among all minimum-cost J-matchings with J ∈ {1, . . ., − ∑ t∈ T a t,r }.A weighted matching problem on a bipartite graph can be reduced to a network flow problem [1].While this reduction does not generally yield the best computation times, it has been shown by Westphal and Krumke [34] that in special cases it can be worthwhile, since one can strongly benefit from the structure of the successive-shortest path algorithm at hand.To this end, a source node s is added to graph G = (V, A) which is connected to all nodes from U by arcs with weights of zero.Furthermore, all arcs A of the graph have a capacity of one.This results in a bipartite graph, as shown in Figure 5.
The idea is to balance differences in demand between the source node s and the destination nodes t0 , . . ., t −∑ t∈T a t,r by augmenting flow along a path of minimum weight.In the way graph G is constructed, there always exists an optimal matching of cardinality J.The optimal matching M J is determined by finding a demand flow of minimum cost.The demands of the nodes are set as follows: D(s) ∶= −J, D( tj ) ∶= 1 for all j = 0, . . ., J and D(ν) ∶= 0 for all other nodes ν ∈ V.
In graph G, we also use arc weights ck r (u t , tj ) for k ∈ {2, 3} which are not monotonically increasing in the second argument.Hence, an optimal matching of cardinality J < − ∑ t∈T a t,r on the entire graph G does not necessarily contain the arcs to the first J time slots t0 , . . ., tJ−1 .Some of these time slots could be omitted.For this reason, we do not compute the optimal matchings on the entire graph G = (V, A) in our implementation, but successively built up graph G in Algorithm 2 with increasing matching cardinality J.That is, we start with only the source node s and all nodes u t ∈ U with t ∈ T(r), cf. Figure 5. Then we add the nodes tJ−1 ∈ T and the corresponding arcs in A to graph G only when in the algorithm a minimum-cost matching of the corresponding cardinality J is calculated, cf.Line 5 in Algorithm 2. This also enables the use of arc weights that are not monotonically increasing with respect to t j in graph G while for j = 1 still the correct matching of a transport in U to the first execution time slot t0 is searched.12 Let M J be the matching corresponding to total flow f .Compared to the standard successive-shortest-path algorithm, some shortcuts are implemented in Algorithm 2. Their correctness is already proved [34], which is why we will only discuss their functioning here.If a matching has already been found in Line 12 whose costs fall below threshold θ, Algorithm 2 terminates and the enumeration tree must be explored further, below route r (cf.Line 14).For J > 1, we have that ck r (u t , tJ−1 ) is monotonically increasing w.r.t.J.It can thus be shown that the costs of the paths c(P J ) on the residual graph G f are also monotonically increasing in J. Since c(M J ) = c(M i ) + c(P i+1 ) + . . .+ c(P J ) for i < J, it is obvious that c(M J ) also grows in the further iterations if c(P J ) ≥ 0 holds in Line 8. As the algorithm did not terminate before, it follows that in Line 14 the threshold θ − cr will also be exceeded in all further iterations, such that Algorithm 2 can terminate with result true.Since c(P J ) is monotonically increasing for J > 1, a lower bound on the minimum-cost matching can be computed, cf.Line 17, which can be used to terminate the algorithm early in Line 19.If none of the shortcuts apply, we also know that none of the matchings has fulfilled the condition in Line 13, which is why the algorithm terminates regularly with a positive result in Line 23.
Remark 4.1.Algorithm 2 builts the matching graph successively within the procedure, such that it works for arc weights that are not monotonically increasing.Consequently, there is more freedom in the calculation of the total maximal gain, which leads to better bounds on the reduced costs.Moreover, it has computational advantages not to always build graph G completely, as it is very likely that the algorithm terminates earlier due to the shortcuts.Thus, Algorithm 2, which can be easily transferred to other applications, provides significant advantages compared to [34].

Computational Case Study for two European Hospitals
We now give a detailed computational study of the presented solution methods.First, we will evaluate the different pruning methods for branch-and-bound column search described in this work.Later, we perform a comparison of our new approach with a conventional column generation method and the solution of the integrated Model (P) by a commercial solver.Finally, we will compare it with the heuristic used by our industrial partner OrgaCard so far.
In total, we evaluated 713 real-world instances from two client hospitals of OrgaCard.All computations have been executed on a personal computer with Intel Core i7-9750H 2.6 GHz processors and 32 GB RAM, using 6 cores.Our implementation uses the Python API of Gurobi 9.5.2 [16] for solving all LPs and (M)IPs arising in this study.
In practice, the transport optimization problem is solved recurrently every minute to schedule newly arriving transports at short notice.Thus, the alternating solution of the master and the subproblem is limited to 55 seconds, after which the generation of columns is aborted.Only the solution of the integer master problems may be performed after this time limit was reached.Figure 6(a) shows the runtimes of the column generation approach with branch-and-bound column search and the simple pruning scheme for 713 real-world instances.In Figure 6(b), the runtimes of the different components of the method (master, sub, integer master problem) as well as the computation time overhead are presented as relative values of the total computation time.In both graphs, the instances are sorted in ascending order by total computation time.Approximately 500 of 713 instances were solved within the time limit of 55 seconds.For all but one instance, for which the solution time of the integer master problem was longer than 5 seconds, an integer result was available within 60 seconds.Figure 6(b) reveals that with increasing runtimes the fraction of the time allocated to the subproblem also increases significantly.As expected, the computation time overhead decreases in relative terms as the total runtime increases.The solution of the LP-relaxed master problem and of the integer master problem constantly remains very short.This indicates that it is necessary to reduce the required solution time for the subproblem in order to solve more instances within the time limit.To this end, we evaluate the modified pruning scheme in comparison to the simple pruning next.

Analysis of Different Pruning Techniques for Solving the Pricing Problem
In this section, we compare the number of nodes to be visited by the different pruning approaches.To this end, we define a suitable framework for the evaluation of how effective the pruning of an enumeration tree is.
As described in Section 4.2, at each lexicographic level, enumeration trees are built for different search depths ∈ Z + and search breadths β ∈ Z + .Thus, several enumeration trees of different sizes are built for each instance.In order to introduce a measure for the size of the enumeration trees, we calculate the number of nodes to be traversed if no pruning had been used.We define f = ( f e ) e∈E with f e ∶= ∑ t∈T F t,e where matrix F speficies whether an employee e ∈ E is allowed to perform a transport t ∈ T. Furthermore, we define N e i ∈ N as the number of nodes in an enumeration tree of employee e that have a path length of i edges to the root node.
Then we can calculate the theoretical number nodes of an enumeration tree as where N e i is defined recursively as N e 0 = 1, N e i ∶= min{β, f e } ⋅ N e i−1 with i ≥ 1 and e ∈ E. For each of the 713 instances, for all lexicographic levels and for all enumeration trees built within them, the theoretical number of nodes was calculated.The instances were then solved using the simple and the modified pruning scheme.Then we compared the number of visited nodes of these pruned enumeration trees for each lexicographic level.If several enumeration trees of a method had exactly the same theoretical number of nodes (tNN), we calculated the average number of the actually visited nodes.A comparison of visited nodes for lexicographic levels 1-3 is shown in Figure 7.The x-axis of the graphs shows the theoretical number of nodes and the y-axis the actual number of nodes that had to be visited.If no enumeration tree could be traversed completely for a certain size and pruning method a gap is left in the corresponding curve.To make the graphs easier to read, the distances on the x-axis were not scaled according to the values.Instead, the same distance was chosen between all values on the x-axis.In order to illustrate the exponential increase of the enumeration tree sizes, the number of theoretical nodes is shown as black curve in the diagrams.
Figure 7(a) clearly shows that pruning was very effective in the first level, since the blue curve (simple pruning) and the red curve (modified pruning) are clearly below the black curve.Furthermore, the number of visited nodes with modified pruning is significantly lower than the number of visited nodes when using the simple total maximal gain.While the simple pruning often requires more than 20 000 nodes to be enumerated, sometimes more than 40 000 nodes, and besides one gap in the curve also once more than 80 000 nodes, the number of traversed nodes with modified pruning remained clearly below 20 000 nodes except for one tree size.Thus, it is reasonable to choose the modified pruning.In the second lexicographic level, the number of nodes to be visited could again be reduced significantly by modified pruning compared to the simple pruning scheme.The simple pruning scheme clearly outperforms the approach without pruning, but large enumeration trees (> 170 million nodes) could not be completely traversed even once, which is why the blue curve often has gaps.As shown in Figure 7(c), the number of visited nodes in the third lexicographic level was again significantly lower when applying modified pruning than using the simple pruning scheme.However, it is noticeable here that the distance to the black curve has clearly decreased for both methods.This means, that in the third level, pruning was overall no longer as effective.Obviously, not only the number of visited nodes is relevant for the effectiveness of a method applied to the subproblem, because the calculation of the total maximal gain itself requires a certain amount of computation time.To this end, we have considered the runtimes that were necessary to traverse the enumeration trees using the different pruning methods, cf.Appendix C. In summary, it can be said that the number of nodes that can be pruned with modified pruning justifies the higher effort of calculating the modified tmg.For this reason, we will only work with this pruning method in the following sections.

Further algorithmic improvements
In addition to the tightening of the total maximal gain as described in Sections 4.3 and 4.4, we want to present two further improvements compared to the standard branch-and-bound column search presented in [5].First, we discuss how the performance of the approach can be improved by reusing columns in the online setting of the problem, before we explicate the pruning of the enumeration trees by some dominance rules.
The overall goal is to use our method in the actual live operation of a hospital.The instances to solve in this online setting are generated by storing a snapshot of the current transport situation in corresponding data instances every minute during live operation of the transport system.This means that all transports that are in progress at the moment of the snapshot are stored as block times for the employees, all transports that have to be assigned are saved as open.Completed transports are no longer relevant for the system and are therefore not included in the instances.This means that two consecutive instances strongly depend on each other.Transport orders created with a desired execution in the farther future are obviously preserved across multiple instances.This yields that routes built in a previous calculation cycle may retain their feasibility for the current and even for some future instances.Thus, the first idea to improve the performance of our approach is to store generated routes r ∈ Rκ−1 with negative reduced costs of an calculation cycle κ − 1 in an archive for the next run κ.The routes are then re-evaluated at the beginning of the new calculation cycle κ based on the requirements or constraints of the current instance.If they are still feasible, they are added to the restricted set of routes Rκ at the beginning of the column generation procedure.This means for a route r ∈ R κ−1 of calculation run κ − 1, if employee e with a e,r = 1 is still active and available and if all transports t with a t,r still open, then route r is added to the initial route set Rκ of the restricted master problems of calculation run κ.With the expectation that routes that were efficient in the previous calculation cycle are also valuable for the optimization process in the current run, we set up a warm start for the column generation procedure.The idea behind that is that the dual variables become valid faster such that the pruning procedure becomes more effective even earlier in the optimization process.
In the research area of vehicle routing problems, the pricing problem is often solved by labeling algorithms that are strongly based on pruning the search trees by so-called dominance rules [13].This gave rise to the idea of speeding up the branch-and-bound column search by pruning the enumeration trees with dominance rules.Thus, we have formulated dominance rules for all three lexicographic levels.In these rules, only routes r ∈ R are compared that contain the same transports and an identical last order t r ∶= argmax{w t t ∈ T, a t,r = 1}.

Dominance rule 5.1 (1. lexicographic level).
A route r ∈ R dominates another route r ∈ R containing the same transports a t,r = a t,r for all t ∈ T and with identical last transports t r = t r if cr cr for the reduced costs and w tr ≤ w tr for the starting time of the last transport of the routes.
If one route has both lower reduced costs and an earlier start time of the last transport, it dominates the other routes in the first lexicographic level.In the second level, the sum of the lead paths are defined as the primal costs c 2 r of routes r ∈ R. Thus, the lead paths of a route are the other dominance criterion besides the reduced costs.

Dominance rule 5.2 (2. lexicographic level).
A route r ∈ R dominates another route r ∈ R containing the same transport a t,r = a t,r for all t ∈ T and with identical last transports t r = t r if cr ≤ cr for the reduced costs and c 2 r ≤ c 2 r for the lead distances of the routes.
In the last lexicographic level, the maximum route length is minimized.Again, only routes with the same transports are compared.Thus, it is already ensured that the primal costs of dominant routes are equal to the primal costs of the dominated routes such that only the reduced costs remain as a dominance criterion.

Dominance rule 5.3 (3. lexicographic level).
A route r ∈ R dominates another route r ∈ R containing the same transport a t,r = a t,r for all t ∈ T and with identical last transports t r = t r if cr ≤ cr for the reduced costs of the routes.
The presented dominance rules are based on [15].We are aware that there are more elaborate dominance rules, which are, however, often computationally more expensive.In the application at hand, the dominance rules presented above have performed best among the rules that we have considered.Thus, we only present the computational results of these rules.
The computational effects of the two algorithmic enhancements, reusing columns and the application of dominance rules, are discussed in more detail in the following section.

Evaluation of Different Methods for Solving the Intra-Hospital Transportation Problem
In the following, we compare our solution approach for the intra-hospital transportation problem with an approach based on the branch-and-bound column search as presented in [5] as well as with standard techniques for solving optimization problems.Finally, we also present the improvements that we achieved compared to the heuristic used so far by our industrial partner OrgaCard.
First, we want to compare the computation times of the following approaches: (a) The improved method with the modified pruning scheme and with the enhancements described in Section 5.2 (CG with BaB-CS), (b) the integrated base model (P) solved by a commercial MIP solver (Integrated Model), (c) a column generation approach where the pricing problem is modelled as an MIP that is also solved by a commercial solver (CG with MIP-Sub) and (d) the approach where the pricing problem is solved by the simple branch-and-bound column search as presented in [5], called Simple BaB-CS.The total computation time in seconds of these four methods for the 713 considered instances of the intra-hospital transport optimization problem is shown in Figure 8(a).These 713 instances were provided by two hospitals and represent 1.5 transport days.For all four methods, about 450 instances were solvable in less than ten seconds.However, for over 527 instances, CG with BaB-CS has solved the most instances within the time limit.Figure 8(b) shows the four solution methods extended by an approach with the branch-and-bound column search where the enumeration tree is only pruned by the modified pruning and not by dominance rules and where the reuse of columns is not applied (Modified BaB-CS).Furthermore, the computation times of this modified pruning approach combined with the reuse of routes (Modified BaB-CS + Online) and combined with the dominance rules (Modified BaB-CS + Dom rules) are presented in Figure 8(b).Since there are also many instances that are easy to solve on a transport day (morning and evening hours), we only consider the crucial instances 480 to 540 in this figure, where some procedures are already running into the time limit.Again, it is obvious that the approach with modified pruning, the reuse of columns and the application of dominance rules, CG with BaB-CS (green curve), performs best.
Since all the column generation-based methods considered have determined integer solutions according to the principle of restricted master heuristics, this does not necessarily mean that optimal solutions have been found if they are terminated within the time limit.However, looking at the 489 instances solved by all the three approaches based on column generation and by Integrated Model within the time limit, in less than 5% of the instances, the solutions of the column generation approaches differed from the solution of the Integrated Model.That is, for all other instances, the solution of the column generation based methods were also optimal integer solutions.Considering the around 5% of instances that have not been solved to optimality, there are still no differences in the objective function value of the first lexicographic level and only small differences considering the second and third level when comparing the column generation based methods to the solution of (P).
Since our data comes from a real hospital, the instances are quite inhomogeneous.More precisely, there are instances with transports whose feasible time windows have already passed at the starting time of a new calculation cycle.Thus, it is not possible to reduce the delays to zero for these instances.For this reason, it is quite difficult to compare different methods with each other by simply calculating the difference between the objective function values on these instances.Therefore, we try to unify the instances to some extent by reducing all objective function values by a lower bound LB, in order to obtain at least a comparable zero level.That means, the relative improvement of our new approach CG with BaB-CS compared to another procedure (PROC ∈ {CG with MIP-Sub, Integrated Model, Simple BaB-CS, OrgaCard System}) is calculated for one of the instances as follows: where PROC stands for the objective function value of the procedure to compare and CG BaB-CS is the objective function value of the new branch-and-bound column search.We calculate (18) for all three optimization goals by considering the corresponding objective function value (for PROC and CG BaB-CS) of the respective lexicographic level.For the calculation of LB, we used simple estimates for the primal costs that ensure that LB provides a true lower bound to an optimal integer solution of the respective lexicographic level.Now, we analyse the instances where the procedures presented in Figure 8(a) did not terminate within the time limit.Table 1 presents a comparison of the objective function values of the four methods.When evaluating the delays, we only considered the instances where a delay occurred for at least one of the three procedures.
On the left side of the table, CG with BaB-CS was compared to Simple BaB-CS, in the middle we benchmarked it against CG with MIP-Sub and on the right side we compared it to the Integrated Model.For alle evaluations, we calculated the relative improvement of CG with BaB-CS as described in (18).This means if the values in the table are positive, CG with BaB-CS has performed better, otherwise the values are negative.The objective function values taken into account are the weighted delay (w.delay), the lead distance (distance), and the equal utilization of the employees (equal util.).As comparison metrics, we used the minimum and maximum (separately for each objective, but over all instances), the arithmetic mean and the median.
-21.6% -59.0%-100.0%0.0% - If we consider the minimum values, there are also instances where the other methods performed better than CG with BaB-CS.However, it is remarkable that there is no instance for which CG with MIP-Sub achieved a better weighted delay than CG with BaB-CS.At the maximum, CG with BaB-CS has performed significantly better than the other methods.However, the two average values, the median and the arithmetic mean, are more interesting.Compared to Simple CG with BaB-CS, which already performed quite well, we could not improve on the median, but w.r.t. the arithmetic mean we achieved noticeably better results.Compared to the two generic solution methods CG with MIP-Sub and Integrated Model, considerably better objective function values were achieved both in the median and in the arithmetic mean.In summary, CG with BaB-CS outperforms the other three approaches both in terms of computation times (cf. Figure 8(a)) and objective values, cf.Table 1.
Finally, we compare our new approach with branch-and-bound column search with the method used by our industrial partner OrgaCard (OrgaCard System).Since the latter is a simple heuristic in which computation time is not a bottleneck, we have left the runtime evaluation aside and analysed only the objective function values.The right-hand side of the table is structured as Table 1.On the left-hand side differences in absolute values are shown.
The columns show the objective functions of the three lexicographic levels supplemented by the pure delay (delay) measured in minutes.This key figure is especially interesting for our industry partner, the reason why we also present it here.In total, we have evaluated all 713 instances.Considering the delays, we again only used those instances that have a delay for at least one of the two methods.From a lexicographic point of view, we have never deteriorated compared to the OrgaCard System; the negative values in the minimum are due to the fact that delay or distance has improved in the corresponding instances.At the maximum, considerable improvements of over 100% could be achieved, which is an reduction in delay of 126.8 minutes or of over 2 kilometres lead distance for one single instance.The significant deterioration in the relative values of the third level are put into perspective considering the absolute figures.A deterioration of 200% only means that, in the worst instance, an employee had to carry out two additional transports.In contrast, there were significant improvements in terms of delays and walking distances.On the arithmetic mean, there were 15.3 minutes less delays per instance and almost 175 metres less to walk for the employees, which corresponds to 32.8% and 32.0% respectively.Also in the median, good results could be achieved by CG with BaB-CS.
In summary, the results are extremely convincing.CG with BaB-CS significantly improved the first two optimization goals, with the third goal delivering roughly the same results.These evaluations convinced the industrial partner to apply it in live operation of real hospitals.

Evaluation of the Method in Practical Use
The promising results of the computational study in Section 5 prompted us to test our method in the daily operation of a real-world hospital.Together with our industry partner OrgaCard, we enhanced our method to a ready-to-use software tool to be able to test it in pilot operation.
The Marienhospital in Osnabrück -a hospital of care level II -has 560 beds and treats about 30 000 inpatients and 70 000 outpatients annually.The transport service consists of 17 full-time positions distributed among 23 employees.The staff includes paramedics, medical assistants, and also some unskilled employees.Previously, no transport software had been used in this hospital, i.e. the transports were communicated directly to the transporters by the nursing staff.Thus, we are not able to compare our approach with an existing transport planning system.Nevertheless, we present some key figures from the pilot project that we can use to evaluate the impact of our approach on the optimization of the intra-hospital transport plan.First, we looked at the delays of the transports.For all 59,000 transports t ∈ T, we compared the time at which they were actually started with the last timestamp b t in time window (a t , b t ) that is desired for execution, see Figure 9. Notice, that the real start time of a transport t ∈ T may still differ from the calculated start time ω t if the carrier starts the transport early or late.
In Figure 9(a), we plotted the delays in a histogram.All transports to the left of the red line were started on time, all orders to the right of this line were started late.It is obvious that the great majority of orders were executed on time.The boxplot in Figure 9(b) shows a similar result.The upper whisker is about 15 minutes.Above that, there are still a few outliers.The lower whisker is around -25 minutes, and even below that there are some transports that have started earlier.The median is approx.at -6 minutes and thus clearly below the zero line.
In Table 4, the order types are listed in four columns with each column divided into two subcolumns containing relative and absolute numbers.The first line contains the number of orders that have a delay of less than or equal to one minute.The second line contains the number of orders with a delay greater than one minute and so on.
Overall, we observe that most transports across all order types are executed on time or with only minor delays.Comparing the OR and CTA transports with the MDEC and routine trans-  ports, then there are more transports with small delays for the last two transport types than for the first two types.The number of orders with longer delays decreases less for routine transports than for OR and CTA transports.The MDEC transports consistently show good results.For all delay categories from > 10 min on, the OR and CTA transports perform better than the routine transports.Since the priorities descend from the OR to the routine transports (cf. Figure 3), the delays should actually also decrease with increasing priority of the order type.We found a plausible explanation why this is not the case by looking at the time spans between the creation time of the orders and the desired execution time (lead time), see Figure 10.While the lead time is longer for the MDEC and routine transports (15-20 min), it is closer to 5-10 minutes for the OR and CTA transports.It also tends to be shorter for OR transports than for CTA transports.That is why an OR or CTA transport is already delayed if the employee has not started the transport 5-10 minutes after the creation.For the other two order types, the transport has only to be startet between 15 and 20 minutes after creating the order.Thus, small delays occur more frequently for OR transport and CTA transport.The MDEC transport is still prioritized over the routine transports, which make up by far the largest share of transports, such that this type of transport order has only a small number of delayed transports.
In the following, we investigate on the second optimization goal.The total distances covered by transporters are divided into two types.Order distances are the paths travelled by employees with the patients, where start and destination are fixed, such that they cannot be optimized.The lead distances describe the paths covered between two transports.Those are optimized in the second lexicographic level of our approach.Figure 11 provides two histograms.The x-axis shows the distances in metres (intervals of 5 metres) and the y-axis the relative number of transports.The histogram of lead distances is clearly shifted to the left compared to the histogram of order distances.While only a few lead distances are greater than 150 metres, this is where the peak of the order distances begins.Moreover, there are hardly any order distances below 30 metres.The interval 0-5 metres, in contrast, is the lead distance interval with the largest number of transports.This shows that the optimization significantly minimized the lead distances and in many cases even sequences of transports could be found such that no distance had to be travelled between the transports at all.Finally, we also want analyse at the third optimization goal, the equal utilization of employees.To this end, we consider for each employee the number of transports executed per hour, see Figure 12.The bars are ordered from left to right according to the total number of hours the respective employee was available to the system.The three transporters with the fewest attendance hours also make considerably fewer transports per hour than the other employees.However, since they were not available to the system for more than 20 hours in total for a period of about 9 months, they might be considered separately to some extent.The other transporters all execute about the same number of transports on average.Except for transporter 1, all employees carry out between 3 and 4 transports per hour.In summary, the system tested in the pilot project seems to be quite capable of equally distributing the workload to the transport staff.
In summary, we can say that the industry partner, the responsible persons at the Marienhospital Osnabrück and we are extremely satisfied with the results and after the successful deployment in the Marienhospital in Osnabrück, the installation of the system is already planned in several other hospitals.

Conclusions
We have presented an enumerative column generation approach to solve the transport optimization problem.More precisely, we developed an innovative algorithm that efficiently assigns transports among transport employees while optimizing several crucial metrics.By further developing existing methods in this field and by finding an effective method for pruning the search trees that are constructed in the pricing problem of the column generation procedure, we were able to solve this problem in real time on standard hardware of a hospital.In our extensive computational study, we evaluated the performance of the method on instances of two real-world hospitals in Europe.Thus, we could show that the method significanty outperforms the heuristic previously used by the industry partner and also achieves better results than generic methods typically applied for solving mixed-integer programs.In a 9-month case study, our approach also performed exceptionally well in live operation of a representative hospital by providing highly efficient transport plans.tuple of all lead times, sorted in ascending order tmg * k (r, , T) ∈ R modified total maximal gain for lexicographic levels k ∈ 1, 2, 3 q ∈ {1, . . ., n} summation index used in the modified total maximal gain n ∈ {1, . . ., m} summation index used in the modified total maximal gain κ index of a calculation run of the approach in the online setting residual graph of G corresponding to total flow f P j ⊆ A f minimum-cost path between nodes s and tj−1 in residual graph G f with j ∈ {0, . . ., J} C(M j ) ∈ R cost of the minimum-cost matching M J C(P j ) ∈ R cost of the minimum-cost path P j with j ∈ {0, . . ., J} D(ν) ∈ Z demand labels of nodes ν ∈ V

B Description of the Coupling of Branch-and-Bound Column Search and Lexicographic Optimization
In the following, we will discuss in detail how lexicographic optimization can be coupled with the branch-and-bound column search.To this end, we will explain the essential components of an algorithm that combines the two approaches using Figure 13.An initial feasible solution for the first lexicographic level in route set R is determined by a simple starting heuristic based on the earliest-due-date algorithm.This scheduling heuristic minimizes the maximum delays of transport orders [3].Thus, it is well suited for generating a good starting solution for the first lexicographic level.At the top level of all column generation procedures, the master and the subproblem are solved alternately.The master problem provides dual information in the form of an optimal dual solution to the currently considered (RMP), with this dual solution columns with negative reduced costs are generated in the pricing subproblem.For solving the pricing problem, we use branch-and-bound column search with a specified search depth , search breadth β and acceptance threshold θ, as described above.If no more columns are found in the enumeration tree of the first lexicographic level, the method calculates an integer solution of the master problem with the columns generated so far, stores it in Z 1 , moves on to the second level and continues the process of generating new routes r ∈ R ∖ R. When we come to the point where no columns with negative reduced costs are found at the third lexicographic level either, the search space, i.e. and β, are enlarged.This procedure is continued until the search space covers the entire enumeration tree, i.e. = β = T .When no more columns with negative reduced costs are found in the entire enumeration tree, an optimal solution to the LP relaxation of the master problem of the third lexicographic level has been found with the solution to (RMP3).On the basis of the columns or routes generated in the entire process, the master problem of the third lexicographic level is solved, which yields a (not necessarily optimal) integer solution to the overall problem.

C Runtime Comparison of the Branch-and-Bound Column Search for Different Pruning Schemes
In this section of the appendix, we compare the computation times of solving the pricing subproblem by branch-and-bound column search using the different pruning methods.Analogously to the evaluation of the visited nodes, cf.Section 5.1, all 713 instances were run with the simple and modified pruning scheme respectively.Furthermore, an additional calculation run was performed where no pruning scheme was applied at all.From now on, the latter will be referred to as without tmg.All enumeration trees were assigned a theoretical size using the formula from (17).The runtimes required for the construction of these trees in the different lexicographic levels were measured and, for enumeration trees of the same size, the arithmetic mean of the runtimes was calculated, such that exactly one time value was determined for each enumeration tree size.The values thus obtained were used to create a line chart and a box plot for each of the three lexicographic levels.In the line diagram (see Figure 14(a)), the black curve corresponds to the enumeration without pruning, the blue line to the simple total maximal gain and the red line to the modified pruning scheme.The x-axis again shows the theoretical size of enumeration trees and the y-axis shows the average time needed to construct the corresponding trees.If, for a certain tree size, one of the three methods could not construct a tree of corresponding size even once, the curve contains a gap at this point.Overall, only tree sizes were taken into account for which at least one of the three methods was able to completely traverse at least one enumeration tree of the corresponding size.One can see very clearly that without a pruning procedure, many tree sizes could not be completely visited at all.Sporadic segments of the black curve above a tree size of 1.5 million nodes only occur in the diagram because the branch-and-bound column search also terminates the traversing process if a certain number of routes with negative reduced costs have already been found.In contrast, only very few gaps occur in the simple pruning scheme, and when applying the modified total maximum gain, an average runtime could be given for every tree size considered.It is also noticeable that the red curve runs below the blue curve for almost all tree sizes.
In the box plot of Figure 14(b), only tree sizes for which values were available from all three approaches were taken into account.This means that the enumerations with the simple pruning scheme and in particular the approach without pruning, which could not be completed due to their long runtimes, are not considered here.This is also one reason why the median of the runtimes does not differ that much for the two pruning However, the median of the runtimes for the approach without pruning is definitely slightly higher then for the two pruning schemes.The small difference between medians of the runtimes of the pricing subproblem for the two pruning methods, is also due to the fact that the branch-and-bound column search often constructs small enumeration trees, because the search space (i.e.search depth and search breadth β) is enlarged successively within the procedure.In addition, the instance set at hand also contained many small instances (i.e. with few transport orders and employees).Altogether, this leads to very short construction times for most of the enumeration trees.However, since even a few longer traversing times can lead to an instance no longer being solved to optimality or even sufficiently well, it is equally important to look at the upper quartile and the outliers of these times.It is particularly noticeable that the upper quartiles of the two pruning methods are significantly smaller than when constructing the enumeration trees without a pruning scheme.The upper whisker of the two pruning methods, which in this box plot corresponds to 1.5 times the interquartile range, is also considerably lower for both simple tmg and modified tmg than for the case without pruning.The finding is similar for the other outliers.There is also a significant difference between the two pruning schemes in the first lexicographic level.The modified pruning produces obviously shorter traversing times than the simple pruning scheme, considering the above mentioned metrics.In summary, it is worthwhile to invest the computation time for the calculation of the total maximum gain, as this considerably reduces the total time for traversing the trees or makes it possible at all to visit them completely.In the crucial cases, i.e. when the size of the enumeration trees increases, it becomes especially reasonable to invest more time for pruning and to use the modified total maximal gain.The situation is similar for the second lexicographical level.Overall, it can be seen that longer traversing times occur already for smaller theoretical enumeration tree sizes for all three approaches (cf. Figure 15(a)).This means that the use of pruning schemes is no longer as effective as in the first lexicographic level.Nevertheless, it is clearly recognizable that pruning has made it possible in the first place to traverse trees of larger size completely.This is impressively shown by the fact that the black curve only exists for tree sizes below 200 000 nodes.In box plot 15(b), it can be clearly seen that even for the tree sizes where values could be generated for all three methods, the construction times with a pruning scheme are shorter than without.Considering the median and the upper quartiles again, the modified pruning clearly outperforms the other two approaches.The superiority of the modified pruning becomes particularly clear when looking at the whiskers and the outliers.The whisker for the modified total maximum gain is significantly lower than for simple pruning and for the approach without pruning.In addition, the are much closer to the box than with the other two methods.In conclusion, it can be said that it is absolutely necessary to use a pruning method in the second lexicographic level well.Further, in almost all cases the modified pruning performs better than simple pruning.However, it would be desirable to be able to prune even more effectively in order to reduce the traversing times even more.In the third lexicographic level, traversing times tend to be smaller again (cf. Figure 16(a)).This is mainly due to the fact that the objective of this level is that the routes used in a solution to master problem have the same length as far as possible (measured in the number of orders they contain).This makes it possible to limit the maximum search depth for enumeration trees to the maximum route length of the routes in the solution to the last integer master problem of the second lexicographic level.This limits the search space significantly compared to the second lexicographic level and also reduces the overall traversing times of the enumeration trees.Considering the line chart, it seems as if there could be a certain trade-off.For smaller tree sizes, the enumeration of routes tends to be faster without pruning than with the use of one of the pruning schemes.This no longer applies to larger tree sizes.From a size of 60 000 nodes on, the curve of the computation time of the modified pruning constantly runs below the black curve again.In this area, the black curve belonging to the approach without pruning scheme again has some gaps.In the box plot, this also becomes visible to some extent, as the box and the whiskers of the approach without tmg lie below the box and the whisker of the simple pruning scheme, respectively.However, the box and whisker of the modified pruning are definitely below to those of approach without pruning scheme and the modified pruning has also significant advantages when it comes to the outliers.In summary, it can be stated that for large tree sizes, modified pruning is once again the best strategy.For smaller tree sizes, it might be advantageous not to work with a pruning scheme.However, it is questionable whether this marginal advantage on only some of the small tree sizes compared to modified pruning is noticeable in terms of total computation time.
We have also made initial attempts to combine the different pruning methods in order to develop a more efficient hybrid pruning scheme.However, these attempts have not turned out to be very promising.Thus, for all comparisons in Sections 5.1, 5.3 and Section 6 we used the modified pruning scheme, which has been the overall most efficient strategy.

Figure 2 :
Figure 2: Volume of transport orders of a German hospital, during a average week (left) and the average over all weekdays within a three-month period (right).
Time between transport generation and due date.

Figure 3 :
Figure 3: Duration of orders between pick-up and handover of patient/material (left) and length of time intervals that orders are known to the system before their due date (right).

Figure 4 :
Figure 4: Illustration of an enumeration tree.

Figure 5 :
Figure 5: The graph for the network flow problem, adapted from [34].

3 J ∶= 1 4 5 6 7 Find 8 if J > 1
while J ≤ − ∑ t∈ T a t,r do Add node tJ−1 with the corresponding arcs to nodes u t 1 , . . ., u t T(r) to Graph G f .Update demands b(s) = −J and b( tJ ) = 1.s − tJ−1 -path of minimal costs P J in residual graph G f .and C(P J ) ≥ 0 f along P J .

Figure 6 :
Figure 6: Computation times for 713 instances from two European hospitals.Figure6(a) shows the runtimes of the column generation approach with branch-and-bound column search and the simple pruning scheme for 713 real-world instances.In Figure6(b), the runtimes of the different components of the method (master, sub, integer master problem) as well as the computation time overhead are presented as relative values of the total computation time.In both graphs, the instances are sorted in ascending order by total computation time.Approximately 500 of 713 instances were solved within the time limit of 55 seconds.For all but one instance, for which the solution time of the integer master problem was longer than 5 seconds, an integer result was available within 60 seconds.Figure6(b) reveals that with increasing

Figure 7 :
Figure 7: Comparison of the visited nodes in the subproblems of all three lexicographic levels using different pruning techniques.

Figure 8 :
Figure 8: Computation times for 713 instances from two European hospitals.

Figure 9 :
Figure 9: Delays of the considered transport orders in the Marienhospital Osnabrück.
/Echo/Colo-EGD Routine End of desired time window -System input time (in min) Relative number of tranport orders

Figure 10 :
Figure 10: Comparison of the durations between the entry of orders in the system and the end of the start time window for different transport order types.

Figure 11 :
Figure 11: Histograms of the start-up distances and the order distances in comparison.

Figure 12 :
Figure 12: Bar plot of the average transport orders carried out per hour for all active employees.
maximal gain for lexicographic levels k ∈ {1, 2, 3} P ∈ R κ path (i.e.κ-tuple) of routes in the enumeration tree of the branch-and-bound column search T ⊆ T set of all predecessor nodes of a transport t ∈ T given a route r ∈ R t r ∈ T last transport executed in route r ∈ R N 2 max ∈ N maximal length of a route in the integer solution to the restricted master problem of the second lexicographic level σ ∈ R T + tuple of all service times of transports that are not part of route r ∈ R, sorted in ascending order τ ∈ R A +

Figure 13 :
Figure 13: Schematic illustration of the column generation process with dynamic pricing control and the use of branch-and-bound column search for the solution of the pricing problem.

Figure 14 :
Figure 14: Comparison of runtimes for the subproblems of the first lexicographic level using different pruning techniques.

Figure 15 :
Figure 15: Comparison of runtimes for the subproblems of the second lexicographic level using different pruning techniques.

Figure 16 :
Figure 16: Comparison of runtimes for the subproblems of the third lexicographic level using different pruning techniques.

Table 1 :
Comparison of the objective function values of CG with BaB-CS and Simple CG withBaB-CS, CG with MIP-Sub as well as Integrated Model with regard to the 227 instances that are hard to solve.

Table 2 :
Comparison of the objective values of CG with BaB-CS and the OrgaCard System.

Table 3 :
Number of patient transports by transport order type at the Marienhospital Osnabrück between January and September 2022.Four types of transports are used in the Marienhospital, see Table3.Operating room transports (OR) are used to bring patients from the ward to the operating theatre or back.A CCL/TOE/Angio transport (CTA) is executed when a patient needs to go to the cardiac catheterization laboratory, when a transoesophageal echocardiography is performed or if an angiogram is taken.If a magnetic resonance imaging, a dialysis, a cardiac echo, a coloscopy or gastroscopy has to be performed, the transport is of the type MRI/Dialysis/Echo/Colo-EGD transport (MDEC).All other transports are of the type routine transport.OR transports have the highest priority and routine transports the lowest.OR transports and CTA transports occur with equal frequency of approx.5% each.The transports of type MDEC are performed about twice as often and most of the transports are routine transports with almost 80%.

Table 4 :
Delays of transports at Marienhospital Osnabrück divided by transport order type.

Table 6 :
Notation and description of all sets and parameters for the lexicographic branch-andbound column search.temporaryvariable of Algorithm 1 that contains the sum of some gains J = − ∑ t∈T a t,r maximum number of transports to be appended to route r ∈ R T(r) ⊆ T set of transports t ∈ T that are not scheduled in route r ∈ R G bipartite graph for the computation of the modified total maximal gainV set of nodes ν in graph G A set of arcs in graph G tj ∈ T ⊆ Vnodes in V that correspond to execution time slots for transports t ∈ T with j ∈ {0, . . ., J} after last transport t r of route r

Table 7 :
Notation and description of all sets and parameters of the solution algorithms for calculating the total maximal gain.

Table 8 :
Notation and description of all variables.