=Paper=
{{Paper
|id=Vol-2745/paper4
|storemode=property
|title=An ASP based Solution for Operating Room Scheduling with Surgical Teams in Hospital Environments
|pdfUrl=https://ceur-ws.org/Vol-2745/paper4.pdf
|volume=Vol-2745
|authors=Carmine Dodaro,Giuseppe Galatà,Muhammad Kamran Khan,Marco Maratea,Ivan Porro
|dblpUrl=https://dblp.org/rec/conf/aiia/DodaroGKMP20
}}
==An ASP based Solution for Operating Room Scheduling with Surgical Teams in Hospital Environments==
An ASP based Solution for Operating Room Scheduling with Surgical Teams in Hospital Environments? Carmine Dodaro1 , Giuseppe Galatà2?? , Muhammad Kamran Khan3 , Marco Maratea3 , and Ivan Porro2 1 DEMACS, University of Calabria, Rende, Italy, dodaro@mat.unical.it 2 SurgiQ srl, Italy giuseppe.galata@surgiq.com,ivan.porro@surgiq.com 3 DIBRIS, University of Genova, Genova, Italy muhammad.kamrankhan@edu.unige.it,marco.maratea@unige.it Abstract. The optimization of daily operating room surgery schedule can be problematic because of many constraints, like to determine the start time of different surgeries and allocating the required resources, including the availability of surgical teams for complete surgical proce- dures. Recently, Answer Set Programming (ASP) has been successfully employed for addressing and solving real-life scheduling and planning problems in the health-care domain. In this paper we present an en- hanced solution using ASP for scheduling operating rooms taking ex- plicitly into consideration availability of surgical teams, that include a surgeon and an anesthetist in different specialties for the entire duration of the surgery. We tested our solution on different benchmarks with re- alistic parameters for schedule’s length up to the target 5-days planning. The results of our experiments show that ASP is a suitable methodology for solving also such enhanced problem. 1 Introduction Hospitals, whose production output is service, often come across issues of long waiting times, surgeries cancellation for patients and even worst resource over- load occur frequently. Within every hospital, Operating Rooms (ORs) are an important unit. As indicated by [30], the ORs account for approximately 33% of the total hospital budget because it includes high staff costs (e..g, surgeons, anaesthetists, nurses) and material cost. Nowadays, in most modern hospitals, long surgical waiting lists are present because of inefficient planning. Therefore, it is extremely important to improve the efficiency of ORs to enhance the sur- vival rate and satisfaction of patients, thereby improving the overall quality of ? Copyright 2020 for this paper by its authors. Use permitted under Creative Com- mons License Attribution 4.0 International (CC BY 4.0). ?? Corresponding author. healthcare system. The management of ORs basically consists of both planning for providing the date of surgery for each patient, taking into account the availability of ORs and surgeons, and determining the sequence of operations in each OR each day, taking into account the availability of different resources. The Operating Room Scheduling (ORS) [1, 6, 29, 30] problem is the task of assigning patients to ORs by considering specialties, surgery durations, shift durations, beds availability and, most importantly the availability of surgical teams for the entire duration of the surgery. Further, the solution must prioritise patients based on health urgency. In recent years a solution based on Answer Set Programming (ASP) [8, 21, 22] was proposed and is used for solving such problems [13, 14], together with other similar scheduling problems in this context (e.g., Nurse Scheduling [15, 3]), given its intuitive semantics [9] and the availability of efficient solvers put forward by the ASP Competition series (see, e.g., [10, 18, 19]. We have recently enhanced the previous solutions by incorporating beds management [12]. However, the drawback with these solutions is that they do not consider availability of surgi- cal teams which are an important part of the surgical process. In this paper we improve our basic solution [13, 14] following another direction, and we present an enhanced encoding that takes into explicit account the availability of surgi- cal teams for planning surgical procedure. The problem is expressed in ASP as modular additions to previous, more limited encoding, of ASP rules implement- ing the surgical teams, and then efficient solvers like clingo [17] are used to solve the resulting ASP encoding. Results for planning horizons up to the target 5-days planning, obtained on different benchmarks and scenario with realistic parameters for a small-medium sized Hospital, are positive and inline with Hos- pital needs, and further confirm that ASP is a suitable methodology for solving scheduling problems in this context. The paper is structured as follows. Section 2 presents needed preliminary about ASP. Then, Section 3 describes the target problem in an informal way, whose ASP encoding is presented in Section 4. Section 5 shows the results of our experiments. The paper ends in Section 6 and 7 by discussing related work, and by showing conclusions and possible topics for further research. 2 Answer Set Programming Answer Set Programming (ASP) is a programming paradigm developed in the field of non monotonic reasoning and logic programming. It is a form of declara- tive programming oriented towards difficult primarily NP-hard search problems and is based on the stable model (answer set) semantics. This section presents the syntax and semantics of the ASP language [9] in two separate paragraphs, and then a widely used short-cut in the third paragraph. Syntax. The syntax of ASP is similar to the one of Prolog. Variables are strings starting with uppercase letter and constants are non-negative integers or strings starting with lowercase letters. A term is either a variable or a constant. A standard atom is an expression p(t1 , . . . , tn ), where p is a predicate of arity n and t1 , . . . , tn are terms. An atom p(t1 , . . . , tn ) is ground if t1 , . . . , tn are constants. A ground set is a set of pairs of the form hconsts : conji, where consts is a list of constants and conj is a conjunction of ground standard atoms. A symbolic set is a set specified syntactically as {T erms1 : Conj1 ; · · · ; T ermst : Conjt }, where t > 0, and for all i ∈ [1, t], each T ermsi is a list of terms such that |T ermsi | = k > 0, and each Conji is a conjunction of standard atoms. A set term is either a symbolic set or a ground set. Intuitively, a set term {X : a(X, c), p(X); Y : b(Y, m)} stands for the union of two sets: the first one contains the X-values making the conjunction a(X, c), p(X) true, and the second one contains the Y -values making the conjunction b(Y, m) true. An aggregate function is of the form f (S), where S is a set term, and f is an aggregate function symbol. Basically, aggregate functions map multisets of constants to a constant. The most common functions implemented in ASP systems are the following: – #count, number of terms; – #sum, sum of integers. An aggregate atom is of the form f (S) ≺ T , where f (S) is an aggregate function, ≺ ∈ {<, ≤, >, ≥, 6=, =} is a comparison operator, and T is a term called guard. An aggregate atom f (S) ≺ T is ground if T is a constant and S is a ground set. An atom is either a standard atom or an aggregate atom. A rule r has the following form: a1 ∨ . . . ∨ an :– b1 , . . . , bk , not bk+1 , . . . , not bm . where a1 , . . . , an are standard atoms, b1 , . . . , bk are atoms, bk+1 , . . . , bm are stan- dard atoms, and n, k, m ≥ 0. A literal is either a standard atom a or its negation not a. The disjunction a1 ∨ . . . ∨ an is the head of r, while the conjunction b1 , . . . , bk , not bk+1 , . . . , not bm is its body. Rules with empty body are called facts. Rules with empty head are called constraints. A variable that appears uniquely in set terms of a rule r is said to be local in r, otherwise it is a global variable of r. An ASP program is a set of safe rules, where a rule r is safe if both the following conditions hold: (i) for each global variable X of r there is a positive standard atom ` in the body of r such that X appears in `; and (ii) each local variable of r appearing in a symbolic set {Terms : Conj } also appears in Conj . A weak constraint ω is of the form: :∼ b1 , . . . , bk , not bk+1 , . . . , not bm . [w@l] where w and l are the weight and level of ω, respectively. (Intuitively, [w@l] is read “as weight w at level l”, where weight is the “cost” of violating the condition in the body of w, whereas levels can be specified for defining a priority among preference criteria). An ASP program P is a finite set of rules. An ASP program with weak constraints is Π = hP, W i, where P is a program and W is a set of weak constraints. A standard atom, a literal, a rule, a program or a weak constraint is ground if no variables appear in it. Semantics. Let P be an ASP program. The Herbrand universe UP and the Herbrand base BP of P are defined as usual. The ground instantiation GP of P is the set of all the ground instances of rules of P that can be obtained by substituting variables with constants from UP . An interpretation I for P is a subset I of BP . A ground literal ` (resp., not `) is true w.r.t. I if ` ∈ I (resp., ` 6∈ I), and false (resp., true) otherwise. An aggregate atom is true w.r.t. I if the evaluation of its aggregate function (i.e., the result of the application of f on the multiset S) with respect to I satisfies the guard; otherwise, it is false. A ground rule r is satisfied by I if at least one atom in the head is true w.r.t. I whenever all conjuncts of the body of r are true w.r.t. I. A model is an interpretation that satisfies all rules of a program. Given a ground program GP and an interpretation I, the reduct [16] of GP w.r.t. I is the subset GIP of GP obtained by deleting from GP the rules in which a body literal is false w.r.t. I. An interpretation I for P is an answer set (or stable model) for P if I is a minimal model (under subset inclusion) of GIP (i.e., I is a minimal model for GIP ) [16]. Given a program with weak constraints Π = hP, W i, the semantics of Π extends from the basic case defined above. Thus, let GΠ = hGP , GW i be the instantiation of Π; a constraint ω ∈ GW is violated by an interpretation I if all the literals in ω are true w.r.t. I. An optimum answer set for Π is an answer set of GP that minimizes the sum of the weights of the violated weak constraints in GW in a prioritized way. Syntactic shortcuts. In the following, we also use choice rules of the form {p}, where p is an atom. Choice rules can be viewed as a syntactic shortcut for the rule p ∨ p0 , where p0 is a fresh new standard atom not appearing elsewhere in the program. 3 Problem Description This section provides the description and the requirements of our problem. The elements of the waiting list are called registrations. Moreover, registrations are not all equal, as they can belong to different specialties and can be in the waiting list for a long period of time. All ORs are available for 5 consecutive hours (300 minutes) in a single shift while a full day consists of two shifts. Of course, the assignments must guarantee that the sum of the predicted duration of surgeries assigned to a particular OR shift does not exceed the length of the shift itself. For each registration we consider three priority score P1, P2, and P3, where P1 is for high priority or very urgent, P2 is medium priority and P3 is for low priority. Since P1 gathers high priority registrations, they must be all assigned to an OR, followed by P2 registrations over the P3. Additionally, in each specialty Table 1. Total number of surgeons and anaesthetists in each specialty. Specialty Number of Surgeons Number of anaesthetists 1 6 6 2 4 4 3 4 4 4 2 2 5 4 4 Total 20 20 Table 2. Surgeons availability for each specialty and in each day. Days (D) 1 2 3 4 5 Shifts (s) 1 2 3 4 5 6 7 8 9 10 Specialty (SP) Surgeons 1 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 4 1 1 1 1 1 1 1 1 1 1 5 1 1 1 1 1 1 1 1 1 1 (considered to be 5 as target in small-medium-sized Hospitals) surgical teams are allocated with number of surgeons and anaesthetists every day as shown in Table 1. Every surgeon works specifically for 4 hours every day; also surgeons in each specialty are assigned only to a single shift in a day, i.e., they either work in the morning or in evening shift as shown in Table 2. The anaesthetists are also linked to specialty and their work duration is 6 hours every day, but they can work together with surgeons during any shift of the day as shown in Table 3. In our model we also assume that surgeons for each surgery is predetermined. Once a surgery is started in an OR it cannot be interrupted. Further, surgeons cannot operate on more than one patient at the same time. The overall goal is to assign the maximum number of registrations to the ORs, respecting the priorities, and taking into account the availability of respective surgical teams in a particular specialty for the complete surgery duration. 4 ASP Encoding for ORS with Surgical Teams In this section we present the input predicates and our ASP encoding, in two different subsections. 4.1 Data Model The input data to our model is specified by means of the following atoms: – Instances of registration(R,P,SU,_,SP,_,_) represent the registrations, where we outline only the main variables: with an id (R), a priority score (P) Table 3. Anaesthetists availability for each specialty and in each day. Days (D) 1 2 3 4 5 Shifts (s) 1 2 3 4 5 6 7 8 9 10 Specialty (SP) Anaesthetists 1 6 6 6 6 6 6 6 6 6 6 2 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 5 4 4 4 4 4 4 4 4 4 4 , a surgery duration (SU) in minutes, and the id of the specialty (SP ) it belongs to. representing that the registration (R) with priority (P) is assigned with sur- geon id (SR) and anaesthetist id (AN) to the operating room (O) during the shift (S) of the day (D) with a slot time (ST). – Instances of mss(O,S,SP,D) link each operating room (O) to a shift (S) for each specialty (SP) and planning day (D), as established by the hospital Master Surgical Schedule (MSS). – Instances of surgeon(SR,SP,S) represent the surgeons with an id (SR) for each specialty (SP) and shift (S). – Instances of an(AN,SP,S) show the anaesthetists with an id (AN) for each specialty (SP) and shift (S). – Instances of time(S,ST) show the time slots (ST) for each shift (S), i.e, each shift is divided it into ST time slots (which are always 30 in our setting) and each of them corresponds to a specific length expressed in minutes. As an example, each shift can be divided into 30 time slots where each time slot lasts 10 minutes. The length of each slot depends on the different scenarios. In particular, we consider 4 different variants (or scenario) of the problem, where the length of each time slot is set to 10 (scenario A), 20 (scenario B), 30 (scenario C), and 60 (scenario D) minutes, respectively. The choice of the length is injected in the encoding by specifying a constant, called shift_duration, that represents the total length (expressed in minutes) of the shift, e.g., shift_duration is set to 300 if each time slot lasts 10 minutes (30 time slots times 10 minutes), whereas it is set to 600 if each time slot lasts 60 minutes. – Instances of surgWT(SWT,SR,D) represent the total work time in hours (SWT) for surgeons with id (SR) for each day (D). – Instances of anWT(AWT,AN,D) represent the total work time in hours (AWT) for anaesthetists with id (AN) for each day (D). The output is stored in an assignment represented by atom of the following form: x(R,P,SR,AN,O,S,D,ST) representing that the registration (R) with priority (P) is assigned with surgeon id (SR) and anaesthetist id (AN) to the operating room (O) during the shift (S) of the day (D) with a slot time (ST). (r1 ) {x(R,P,SR,AN,O,S,D,ST): (ST+SU) <= shift_duration} :- registration(R,P,SU,_,SP,_,_), mss(O,S,SP,D), surgeon(SR,SP,S), an(AN,SP,S), time(S,ST). (r2 ) :- registration(R,_,_,_,_,_,_), #count{R,SR,AN,O,S,D,ST : x(R,P,SR,AN,O,S,D,ST)}>1. (r3 ) :- x(R1,_,_,_,O,S,D,ST), x(R2,_,_,_,O,S,D,ST), R1 != R2. (r4 ) :- #count{R:x(R,_,_,_,O,S,_,ST), registration(R,_,SU,_,_,_,_), T>=ST, T1, mss(O,S,_,_), time(S,T). (r5 ) :- #count{R:x(R,_,SR,_,_,S,_,ST)} > 1, surgeon(SR,_,S), time(S,ST). (r6 ) :- #count{R:x(R,_,SR,_,_,S,_,ST), registration(R,_,SU,_,_,_,_), T>=ST, T 1, surgeon(SR,_,S), time(S,T). (r7 ) :- #count{R:x(R,_,_,AN,_,S,_,ST)} > 1, an(AN,_,S), time(S,ST). (r8 ) :- #count{R:x(R,_,_,AN,_,S,_,ST), registration(R,_,SU,_,_,_,_), T>=ST, T 1, an(AN,_,S), time(S,T). (r9 ) :- #sum{SU,R:x(R,_,SR,_,_,_,D,_), registration(R,_,SU,_,_,_,_)} > SWT, surgWT(SWT,SR,D). (r10 ) :- #sum{SU,R:x(R,_,_,AN,_,_,D,_), registration(R,_,SU,_,_,_,_)} > AWT, anWT(AWT,AN,D). (r11 ) :- #count{R:x(R,1,_,_,_,_,_,_)} < totRegsP1. (r12 ) :∼ M=#count{R:x(R,2,_,_,_,_,_,_)}, N=totRegsP2-M. [N@3]. (r13 ) :∼ M=#count{R:x(R,3,_,_,_,_,_,_)}, N=totRegsP3-M. [N@2]. Fig. 1. ASP encoding of the ORS problem with surgical teams. 4.2 Encoding The related ASP encoding is shown in Figure 1, and is described in this subsec- tion. The encoding is based on the Guess&Check programming methodology. Rule (r1 ) guesses an assignment for the registrations, surgeons and anaes- thetists to an OR in a given day, shift and with a time slot among the ones permitted by the MSS for the particular specialty the registrations, surgeons and anaesthetists belongs to, such that the registrations assigned with a slot time and surgery duration should be less than shift_duration of OR. We re- call that shift_duration is a constant that depends on the different scenario considered (see Section 4.1). After guessing an assignment for the registrations, the encoding presents constraints, related to general and work-time requirements, and to registrations of priority 1, to discard some unwanted assignments. All such constraints are explained in the following paragraphs, together with weak constraints for dealing with the optimization on registrations having priority 2 and 3. General requirements. Rule (r2 ) checks that same registration with same surgeon and anaesthetist should not be assigned more than once in different OR or shifts at the same time. Rule (r3 ) ensures that different registrations cannot be assigned in the same OR and shift at the same time slot. Rule (r4 ) checks that different registrations cannot be assigned at different times ,in the same OR and shift until the end time of the previous surgery to avoid time overlapping. Rule (r5 ) shows that the same surgeon cannot be assigned at the same time slot in different ORs in the same shift. Rule (r6 ) checks that the same surgeon cannot be assigned at different times in different OR in the same shift until the end of previous surgery. Rule (r7 ) ensures that the same anaesthetist cannot be assigned at the same time slot in different ORs in the same shift. Rule (r8 ) checks that the same anaesthetist cannot be assigned to different times to different ORs in the same shift until the previous surgery is finished. Work time requirements. Rules (r9 ) and (r10 ) are related to the work time of surgeons and anaesthetist to impose that the total number of registrations assigned to a surgeon cannot increase her/his total work hours in a day; similarly for anaesthetist the rule ensures that the total number of registrations assigned should not increase the total work hours in a day. Priorities and optimization. Finally, since we model a priority based system, we want to be sure that every registration having priority 1 is assigned first, then we assign as much as possible the others, giving preference to registrations having priority 2 over those having priority 3. This is accomplished through constraint (r11 ) for priority 1 and the weak constraints (r12 ) and (r13 ) for priority 2 and 3, where totRegsP1, totRegsP2 and totRegsP3 are constants representing the total number of registrations having priority 1, 2 and 3, respectively. 5 Experimental Results 5.1 Slot Interval Analysis This section reports about the results of an empirical analysis of the ORS prob- lem with surgical teams. The ASP system used is clingo [17]. We have per- formed different slot interval analysis on the performance of our encoding and employed ASP solver. As described in Section 4.1, the dimension of the slot interval determines the time sensitivity of our encoding, and four different sce- narios have been considered: A, B, C, and D for slot interval of 10, 20, 30, and 60 minutes, respectively. 5.2 Benchmarks For each scenario, the characteristics of the tests are as follows: – 4 different benchmarks, with a planning period of 1, 2, 3 and 5 working days; – For each benchmark the total number of randomly generated registrations were 350 for 5 days, 210 for 3 days, 140 for 2 days and 70 for 1 days; – 5 specialties; – 20 surgeons assigned to the 5 specialties; – 20 anaesthetists assigned to the 5 specialties; – 4 hours of work time in a day for each surgeon; – 6 hours of work time in a day for each anaesthetist; – 10 ORs distributed among the specialties; – 5 hours morning and afternoon shifts for each OR summing up to 500, 300, 200 and 100 hours of OR available time for the four benchmarks; Table 4 shows the distribution of the total number of randomly generated registrations for each benchmark of 5, 3, 2 and 1 day, for each specialty, together with the distribution of ORs for each specialty. Table 4. Total number of randomly generated registrations for each benchmark. Registrations Specialty ORs 5-day 3-day 2-day 1-day 1 80 48 32 16 3 2 70 42 28 14 2 3 70 42 28 14 2 4 60 36 24 12 1 5 70 42 28 14 2 Total 350 210 140 70 10 5.3 Results Experiments have been run on a HP 630 Notebook with Intel(R) Core(TM) i3 CPU M380@2.53GHz. Results of the experiments are reported for scenario A in Table 5, for scenario B in Table 6, for scenario C in Table 7 and for scenario D in Table 8, respectively. Each benchmark was tested 10 times with different randomly generated inputs. A time limit of 300 seconds was set for each experiment. In each table averages for 10 instances for each benchmark are reported. The first three columns show the number of assigned registrations out of the generated ones for each prior- ity P1, P2 and P3, while the last three columns show a measure of the total time occupied by the assigned registrations as a percentage of the total OR time available (indicated as OR time Eff in the tables) and the total percentage of surgeons and anesthetists working time (indicated respectively as Surg WT Eff and Anest WT Eff in the tables). As we can see in scenario A (Table 5) with slot interval of 10 minutes we obtain results only for schedules up to 3 days, while in the case of the 5-day benchmark the computation time exceeds our time limit of 300 seconds on all instances. Scenario B (Table 6) details the scheduling results with slot intervals of 20 min- utes. It can be seen that OR efficiency is 75% while the Surgeons and Anes- thetists WT efficiency remain greater than 90% and 60%, respectively, for all benchmarks in this scenario. In scenario C (Table 7) with a slot interval of 30 minutes, the OR efficiency is around 76% while the Surgeons and Anesthetists WT efficiency are enhanced up to 95% and 63% for all benchmarks respectively. In scenario D (Table 8) with a slot interval of 60 minutes, OR efficiency is almost 79% while the Surgeons WT efficiency is further enhanced to more than 95%, and Anesthetists WT efficiency is up to 65%. In all the evaluated benchmarks for different scenarios we can observe that the OR efficiency and the anesthetists efficiency are limited by the fact that we reached the ceiling of the surgeons maximum working hours. Considering that in our setup we had one anesthetist for each surgeon, the ratio between anes- thetist and surgeon efficiencies is the same that the ratio between their maximum working time of the surgeons and the anesthetists, i.e., 2/3. In a real applica- tion, this would be a useful information for the hospital manager to quantify the Table 5. Averages of the results for 5, 3, 2 and 1 day benchmarks for Scenario A. OR time Surg WT Anest WT Bench. P1 P2 P3 Total Eff Eff Eff 5 days - - - - - - - 3 days 43.1/43.1 53.0/81.6 26.2/85.3 122.3/210.0 73.5% 91.8% 61.2% 2 days 29.9/29.9 37.0/54.7 17.7/55.4 84.6/140.0 74.7% 93.4% 62.3% 1 day 13.4/13.4 22.8/28.0 8.9/28.6 46.1/70.0 75.6% 94.5% 62.9% Table 6. Averages of the results for 5, 3, 2 and 1 day benchmarks for Scenario B. OR time Surg WT Anest WT Bench. P1 P2 P3 Total Eff Eff Eff 5 days 71.2/71.2 99.4/140.1 38.3/138.7 208.9/350.0 75.1% 93.8% 62.5% 3 days 40.9/40.9 61.6/85.3 25.2/83.8 127.7/210.0 75.3% 94.1% 62.8% 2 days 28.2/28.2 41.1/56.1 14.9/55.7 84.2/140.0 75.0% 93.7% 62.5% 1 day 12.5/12.5 23.1/29.7 8.9/27.8 43.5/70.0 75.5% 94.4% 62.9% excess of anesthetists and reorganize their numbers or their working times. Overall we obtained satisfying results but for the 5-day schedule length for the more fine-grained time interval of Scenario A. In order to further investi- gate the issue, we moved on a different dimension and tested the Scenario A configuration with half the number of registrations (35 instead of 70 for each planning day), surgeons (10 instead of 20), anesthetists (10 instead of 20) and ORs (5 instead of 10). With these numbers we can reach acceptable solutions after 60 seconds of computation time (see Table 9) for every benchmark, includ- ing the 5-day one. In the previous analysis the issue was caused by the excessive computation required, especially in the grounding phase, by such a number of registrations, surgeons and anesthetists with the finer time sensitivity of 10 min- utes. 6 Related Work In this section we will discuss some relevant works related to this research. Meskens et al [30] considered the surgical teams in the computation of an OR schedule, and developed a model using Constraint Programming (CP) with mul- tiple constraints such as availability, staff preferences and affinities among surgi- cal teams. They optimize the use of ORs by minimizing makespan and maximiz- ing affinities among surgical team members. The effectiveness of their proposed method for improving surgical cases was evaluated using real data from an hos- pital. Hamid et al [29] incorporated the decision-making styles (DMS) of the surgical team to improve the compatibility level by considering constraints such as the availability of material resources, priorities of patients, and availability, skills, and competencies of the surgical team. They developed a multi-objective Table 7. Averages of the results for 5, 3, 2 and 1 day benchmarks for Scenario C. OR time Surg WT Anest WT Bench. P1 P2 P3 Total Eff Eff Eff 5 days 71.9/71.9 99.0/139.8 44.1/138.3 215.0/350.0 76.0% 95.2% 63.3% 3 days 41.7/41.7 66.9/84.8 21.6/83.5 130.2/210.0 76.1% 95.1% 63.5% 2 days 27.9/27.9 42.7/53.8 16.9/58.3 87.5/140.0 76.2% 95.2% 63.5% 1 day 14.2/14.2 23.0/29.4 6.7/26.4 43.9/70.0 76.2% 95.1% 63.5% Table 8. Averages of the results for 5, 3, 2 and 1 day benchmarks for Scenario D. OR time Surg WT Anest WT Bench. P1 P2 P3 Total Eff Eff Eff 5 days 68.7/68.7 109.6/143.8 46.9/137.5 224.8/350.0 79.0% 98.8% 65.8% 3 days 41.8/41.8 65.1/ 81.9 25.5/86.3 132.4/210.0 78.7% 98.4% 65.6% 2 days 27.5/27.5 46.5/ 54.5 14.6/58.0 87.7/140.0 79.2% 98.9% 65.9% 1 day 13.3/13.3 23.1/27.5 8.3/29.2 44.7/70.0 78.3% 97.8% 65.2% mathematical model to schedule surgeries. Two metaheuristics, namely Non- dominated Sorting Genetic Algorithm and Multi-Objective Particle Swarm Op- timization, were developed to find pareto-optimal solutions. Xiang et al [34] proposed an Ant Colony Optimization (ACO) approach to surgical scheduling taking into account all resources in the entire process of a surgery. The prob- lem was represented as an extended multi-resource constrained flexible job shop scheduling problem, which was solved using a two-level hierarchical graph to integrate sequencing job and allocating resources. To evaluate the efficiency of ACO, a Discrete Event System (DES) model of an OR system was developed in the simulation platform SIMIO. Monteiro et al. [31] developed a comprehensive multi-objective mathematical model using epsilon-constraint method coupled to the CPLEX solver. Vijayakumar et al. [33] used Mixed Integer Program- ming (MIP) model for multi-day, multi-resource, patient-priority-based surgery scheduling. First Fit Decreasing algorithm was developed. From a solution time perspective, their model took long hours or in most cases was unable to opti- mally solve the problem. Belkhamsa et al. [7] proposed two meta heuristics, an Iterative Local Search (ILS) approach and Hybrid Genetic Algorithm (HGA) to solve a daily surgery scheduling problem. Zhou et al. [35] developed an In- Table 9. Averages of the results for 5, 3, 2 and 1 day benchmarks with slot interval 10 minutes and reduced number of registrations. OR time Surg WT Anest WT Bench. P1 P2 P3 Total Eff Eff Eff 5 days 35.5/35.5 52.3/68.3 17.0/71.2 104.8/175.0 74.4% 93.1% 62.0% 3 days 19.0/19.0 31.9/41.2 12.9/40.8 63.8/105.0 74.4% 93.0% 62.0% 2 days 14.2/14.2 20.8/28.6 6.9/26.3 40.9/70.0 73.0% 91.3% 60.8% 1 day 5.5/5.5 10.4/15.1 3.6/14.4 19.5/35.0 70.7% 89.5% 58.9% teger Programming model for optimal surgery schedule of assigning patients to different resources in any surgical stage. They used Lagrangian Relaxation al- gorithm and solved the subproblem by using branch and bound. They verified their model using real data instances from a hospital. A common issue with all such solutions seem to be computation time and scalability. About, instead, other scheduling problems in which ASP have been profi- ciently employed: Nurse Scheduling Problem [3, 4, 15], where the goal is to create a scheduling for nurses working in hospitals; Team Building Problem [32], where the goal is to allocate the available personnel of a seaport for serving the incom- ing ships; the Conference Paper Assignment Problem [5], which deals with the problem of assigning reviewers in the PC to submitted conference papers; and scheduling production materials between storage locations and assembly station [20]. 7 Conclusions In this paper we employed ASP for solving ORs problem with surgical teams. The results of our experiments confirm that ASP is a suitable methodology for ad- dressing planning and scheduling problems in health-care system. We presented the results of an experimental analysis on several directions to check scalability of our solution in terms of efficiency, considering shift duration, surgeons and anesthetist working hours. This solution achieved satisfied ORs, surgeons’ and anaesthetists’ efficiency also for the planning length of 5 days. As a future work we would like first to investigate other parameters and configurations, e.g., with less anesthetists for which we expect that the efficiency of the anesthetists would increase. We also want to integrate the extension of the ORS model with beds management with the one presented in this paper, in order to have a more com- plete unified solution. We also plan to compare to alternative methods, assuming this is possible (i.e., availability of alternative solutions), and viable (i.e., very same problem solved). Finally, through results are satisfying, we plan to work also on improving performance by both evaluating more solvers, e.g., WASP [2], other than Clingo actually used, and employing SAT techniques (e.g., [28, 26, 27, 25, 11]), given the strong existing relation between ASP and SAT [24, 23]. References 1. Abedini, A., Ye, H., Li, W.: Operating room planning under surgery type and priority constraints. Procedia Manufacturing 5, 15–25 (2016) 2. Alviano, M., Amendola, G., Dodaro, C., Leone, N., Maratea, M., Ricca, F.: Eval- uation of disjunctive programs in WASP. In: Balduccini, M., Lierler, Y., Woltran, S. (eds.) LPNMR. Lecture Notes in Computer Science, vol. 11481, pp. 241–255. Springer (2019) 3. Alviano, M., Dodaro, C., Maratea, M.: An advanced answer set programming encoding for nurse scheduling. In: AI*IA. LNCS, vol. 10640, pp. 468–482. Springer (2017) 4. Alviano, M., Dodaro, C., Maratea, M.: Nurse (re)scheduling via answer set pro- gramming. Intelligenza Artificiale 12(2), 109–124 (2018) 5. Amendola, G., Dodaro, C., Leone, N., Ricca, F.: On the application of answer set programming to the conference paper assignment problem. In: AI*IA. Lecture Notes in Computer Science, vol. 10037, pp. 164–178. Springer (2016) 6. Aringhieri, R., Landa, P., Soriano, P., Tànfani, E., Testi, A.: A two level meta- heuristic for the operating room scheduling and assignment problem. Computers & Operations Research 54, 21–34 (2015) 7. Belkhamsa, M., Jarboui, B., Masmoudi, M.: Two metaheuristics for solving no-wait operating room surgery scheduling problem under various resource constraints. Comput. Ind. Eng. 126, 494–506 (2018) 8. Brewka, G., Eiter, T., Truszczynski, M.: Answer set programming at a glance. Communications of the ACM 54(12), 92–103 (2011) 9. Calimeri, F., Faber, W., Gebser, M., Ianni, G., Kaminski, R., Krennwallner, T., Leone, N., Maratea, M., Ricca, F., Schaub, T.: ASP-Core-2 input language format. Theory and Practice of Logic Programming 20(2), 294–309 (2020) 10. Calimeri, F., Gebser, M., Maratea, M., Ricca, F.: The design of the fifth answer set programming competition. CoRR abs/1405.3710 (2014), http://arxiv.org/ abs/1405.3710 11. Di Rosa, E., Giunchiglia, E., Maratea, M.: A new approach for solving satisfia- bility problems with qualitative preferences. In: Ghallab, M., Spyropoulos, C.D., Fakotakis, N., Avouris, N.M. (eds.) ECAI. Frontiers in Artificial Intelligence and Applications, vol. 178, pp. 510–514. IOS Press (2008) 12. Dodaro, C., Galatà, G., Khan, M.K., Maratea, M., Porro, I.: An asp-based solution for operating room scheduling with beds management. In: Fodor, P., Montali, M., Calvanese, D., Roman, D. (eds.) RuleML+RR. Lecture Notes in Computer Science, vol. 11784, pp. 67–81. Springer (2019) 13. Dodaro, C., Galatà, G., Maratea, M., Porro, I.: Operating room scheduling via an- swer set programming. In: AI*IA. LNCS, vol. 11298, pp. 445–459. Springer (2018) 14. Dodaro, C., Galatà, G., Maratea, M., Porro, I.: An ASP-based framework for operating room scheduling. Intelligenza Artificiale 13(1), 63–77 (2019) 15. Dodaro, C., Maratea, M.: Nurse scheduling via answer set programming. In: LP- NMR. LNCS, vol. 10377, pp. 301–307. Springer (2017) 16. Faber, W., Pfeifer, G., Leone, N.: Semantics and complexity of recursive aggregates in answer set programming. Artificial Intelligence 175(1), 278–298 (2011) 17. Gebser, M., Kaminski, R., Kaufmann, B., Ostrowski, M., Schaub, T., Wanko, P.: Theory solving made easy with clingo 5. In: ICLP (Technical Communications). OASICS, vol. 52, pp. 2:1–2:15. Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik (2016) 18. Gebser, M., Maratea, M., Ricca, F.: The design of the seventh answer set program- ming competition. In: Balduccini, M., Janhunen, T. (eds.) LPNMR. Lecture Notes in Computer Science, vol. 10377, pp. 3–9. Springer (2017) 19. Gebser, M., Maratea, M., Ricca, F.: The seventh answer set programming compe- tition: Design and results. Theory Pract. Log. Program. 20(2), 176–204 (2020) 20. Gebser, M., Obermeier, P., Schaub, T., Ratsch-Heitmann, M., Runge, M.: Routing driverless transport vehicles in car assembly with answer set programming. Theory Pract. Log. Program. 18(3-4), 520–534 (2018) 21. Gelfond, M., Lifschitz, V.: The stable model semantics for logic programming. In: Proceedings of the Fifth International Conference and Symposium , Seattle, Washington, August 15-19, 1988 (2 Volumes). pp. 1070–1080. MIT Press (1988) 22. Gelfond, M., Lifschitz, V.: Classical Negation in Logic Programs and Disjunctive Databases. New Generation Comput. 9(3/4), 365–386 (1991) 23. Giunchiglia, E., Leone, N., Maratea, M.: On the relation among answer set solvers. Ann. Math. Artif. Intell. 53(1-4), 169–204 (2008) 24. Giunchiglia, E., Maratea, M.: On the Relation Between Answer Set and SAT Pro- cedures (or, Between cmodels and smodels). In: ICLP. LNCS, vol. 3668, pp. 37–51. Springer (2005) 25. Giunchiglia, E., Maratea, M.: Solving optimization problems with DLL. In: Brewka, G., Coradeschi, S., Perini, A., Traverso, P. (eds.) ECAI. Frontiers in Artificial Intelligence and Applications, vol. 141, pp. 377–381. IOS Press (2006) 26. Giunchiglia, E., Maratea, M., Tacchella, A.: Dependent and independent variables in propositional satisfiability. In: Flesca, S., Greco, S., Leone, N., Ianni, G. (eds.) JELIA. Lecture Notes in Computer Science, vol. 2424, pp. 296–307. Springer (2002) 27. Giunchiglia, E., Maratea, M., Tacchella, A.: (In)Effectiveness of look-ahead tech- niques in a modern SAT solver. In: Rossi, F. (ed.) CP. Lecture Notes in Computer Science, vol. 2833, pp. 842–846. Springer (2003) 28. Giunchiglia, E., Maratea, M., Tacchella, A., Zambonin, D.: Evaluating search heuristics and optimization techniques in propositional satisfiability. In: Goré, R., Leitsch, A., Nipkow, T. (eds.) IJCAR. vol. 2083, pp. 347–363. Springer (2001) 29. Hamid, M., Nasiri, M.M., Werner, F., Sheikhahmadi, F., Zhalechian, M.: Operating room scheduling by considering the decision-making styles of surgical team mem- bers: A comprehensive approach. Computers & Operation Research 108, 166–181 (2019) 30. Meskens, N., Duvivier, D., Hanset, A.: Multi-objective operating room scheduling considering desiderata of the surgical team. Decis. Support Syst. 55(2), 650–659 (2013). https://doi.org/10.1016/j.dss.2012.10.019, https://doi.org/10.1016/j. dss.2012.10.019 31. Monteiro, T., Meskens, N., Wang, T.: Surgical scheduling with antagonistic human resource objectives. International Journal of Production Research 53(24), 7434– 7449 (2015) 32. Ricca, F., Grasso, G., Alviano, M., Manna, M., Lio, V., Iiritano, S., Leone, N.: Team-building with answer set programming in the gioia-tauro seaport. Theory and Practice of Logic Programming 12(3), 361–381 (2012) 33. Vijayakumar, B., Parikh, P.J., Scott, R., Barnes, A., Gallimore, J.: A dual bin- packing approach to scheduling surgical cases at a publicly-funded hospital. Euro- pean Journal of Operation Research 224(3), 583–591 (2013) 34. Xiang, W., Yin, J., Lim, G.: An ant colony optimization approach for solving an operating room surgery scheduling problem. Comput. Ind. Eng. 85, 335–345 (2015) 35. Zhou, B., Yin, M., Lu, Z.: An improved lagrangian relaxation heuristic for the scheduling problem of operating theatres. Comput. Ind. Eng. 101, 490–503 (2016)