1 Introduction

Recently, a great growth is occurred in healthcare systems around the world. For example, in the United States healthcare annual costs are more than $2.4 trillion, which constitutes 16.2% of the gross domestic product [21, 36]. Most of these expenditures escalated easily for the last handful of ages, all of which will reach 19.5% of the US GDP by simply 2017 [9]. In addition, operating rooms (ORs) are usually the most vital assets for hospitals. In some hospitals, above 40% of the income originates from ORs, and the ORs are liable for a large percentage of the total expenditures [12, 39].

In some public hospitals, OR plays a role in the greatest expenses with almost no income. Therefore, the administration of operating rooms has turned into a central problem intended for hospital managers to manage surgery’s fees to be able to supply satisfactory excellent providers [32]. Indeed, a significant portion of hospital expenditures is surgery. Surgical cost involves fixed expenses (OR equipment, nurses, and surgeon cost) and variable expenses (possible overtimes, equipment wear and tear costs, as well as disposables) [36]. Operations research and decision support tools are very common approaches in the operating room scheduling literature [18, 25, 33].

The growing attention to the planning and scheduling of surgical cases results in a growth of problem types. One of the major difficulties which is related with the operating room schedules is the uncertainty in surgical services. For instance, Saadouli et al. [32] considered the case of a hospital in Tunisia, in which they scheduled the elective surgery patients under uncertainty of the capacity of resources as well as the surgery and recovery durations. They considered two kinds of assets: Operating Rooms (OR) and Recovery Beds (RB). Brandaa et al. [6] studied uncertainty in the fixed interval scheduling problem, where random delays in processing times account for the risk. Heydari and Soudi [14] considered the predictive/reactive scheduling problem with two kinds of surgery request: (1) elective or known request; (2) emergency or uncertain request. The emergency patients with uncertain surgery time arrive stochastically, and this imposes the modification of the schedule of elective patients on the decision maker. For solving the problem, they suggested a method inspired from the two-stage stochastic programming.

Moreover, researchers try to incorporate stochastic approaches into deterministic planning and scheduling approaches. For instance, Saremia et al. [35] introduced stochastic service times for patients, and considered the presence of a variety of patient types as well as the compatibility and accessibility of resources. Rachuba and Werners [29] studied the problem of assigning the patients to rooms and days, considering stochastic surgery times. They tried to find robust schedules, and dedicated reserve time windows to the emergency demand that arrives in a random manner.

Some of operating room planning problems are formulated as a Mixed Integer Linear Program (MILP) and Mixed Integer Nonlinear Programming (MINLP) model with a Constraint Programming (CP) model. Molina-Pariente et al. [19] proposed a mixed integer linear programming model for the planning and scheduling problem, in which one or two surgeons should be present in the surgical team, and their skills and experience determine the surgery durations. Wang et al. [38] studied a real-life case in order to determine which one of the mixed-integer or constraint programming can better solve a highly constrained operating room scheduling problem.

Beliën and Demeulemeester [5], Ogulata and Erol [24], Jebali et al. [15], and Adan et al. [1] all present some exact solving methods, most often using the commercial softwares such as CPLEX. Several papers developed to solve the problem by heuristic algorithms. Wang et al. [37] used a method inspired by a resource-constrained machine scheduling problem with machine eligibility constraint to solve the operating room scheduling problem with the makespan criterion. Nasiri and Rahvar [21] introduced nurse preferences and consecutive shifts to the nurse scheduling problem. For finding the optimal solution of the new problem, they proposed a two-step multi-objective mathematical model.

The solution methods of ORs scheduling problems can be divided into four different Solution methods of surgery scheduling problems can be divided into three major classes: queuing models (for determining the start times of a set of surgeries in single OR scheduling problems), simulation methods (preparing for an evaluation different scheduling heuristics under uncertain parameters such as surgery duration, recovery time, arrival process, and resource availability, in during surgery scheduling), and optimization methods (for developing deterministic/stochastic integer programming/mixed integer programming models base on fuzzy, robust and stochastic nature of these problems) [2, 22, 30].

Dexter et al. [10] studied the problem of scheduling operating rooms with fuzzy constraints. For maximization of the room usage rate, they use bin-packing based approaches. Saremi et al. [34] addressed the problem of assigning surgical services to outpatients with stochastic service times. Razmi et al. [31] studied uncertainty in the problem of the unique equipment planning of operating room using a stochastic model. Gerami and Saidi-Mehrabad [11] considered the case that non-elective patients (emergency or urgent) arrives at uncertain times and selected the reactive scheduling approach to schedule the operating rooms assuming the stochastic times for all durations. Lahijanian et al. [16] investigated the operating room scheduling problem with elective patients considering the operation lengths as fuzzy numbers. They proposed a mixed-integer programming model with the total weighted start times criterion. Hamid et al. [12] suggested considering the decision-making styles of the surgical team members to enhance the quality of a surgery.

The characteristics of the recent papers considered uncertainty in operating room planning and scheduling are shown in Table 1. In this paper, we study the scheduling of elective patients on a daily basis in the surgery division of an Iranian hospital. We have extended Vijayakumar et al. [36] work on assumptions and constraints, and solved a new problem under uncertainty. The primary contribution of this study is to consider overtime, cost and the number of surgeries as objective functions at the same time. So the aims of this model are (1) to maximize the number of surgeries that could be performed given fixed resources, (2) to minimize the fixed costs and overtime costs of the ORs, and (3) to minimize the maximum completion time of operating rooms. In addition, for the first time, we developed fuzzy robust stochastic multi objective models to solve the surgery scheduling problems in multiple ORs.

Table 1 Characteristics of papers considering uncertainty in planning and scheduling of the surgical cases

Due to the uncertainty of surgery times, tools such as stochastic programming are commonly used, as they allow the OR manager to account for the random nature of surgery times [17]. So, we assume that the regular operating time of OR (\(k_{o}\)) is a fuzzy-stochastic parameter.

In addition, the number of nurses, and the maximum operating time of each room can vary with the importance of the surgery. Thus, in this paper, we considered them as fuzzy constraints.

The remainder of this paper is organized as follows. Section 2 presents the problem of surgery scheduling of elective patients considering the overtimes, and introduces the base model. Section 3 describes the fuzzy robust stochastic programming methodology, and proposes the reformulation of the base model. Section 4 presents the computational results, and finally, Sect. 5 concludes the paper.

2 Problem definition and notations

This section proposes a Mixed Integer Nonlinear Programming (MINLP) model for solving the elective surgery scheduling problem under multi-resource, multi-period, priority-based conditions. Our model is developed based on these assumptions:

  • Time is divided into 30-min intervals, such that a 8-h shift includes 16 time-periods.

  • Depending on the length of time the OR is planned, some overtime may occur at the end of the day (defining the length of overtime of each OR).

  • The pre-emption is not permitted, i.e., Once an operation initiates, it is continued until its termination.

  • Only one surgeon performs a surgical case, but more than one operation can be performed by one surgeon.

2.1 Notations

Before formulating the problem, some notations should be defined.

Parameters:

\(p\)

Index for patients requiring a surgery

\(p \, = \, 1, \, 2, \ldots , \, P\)

\(o\)

Index for operating rooms

\(o \, = \, 1, \, 2, \ldots , \, O\)

\(s\)

Index for surgeons

\(s \, = \, 1, \, 2, \ldots , \, S\)

\(t\)

Index for slots during day

\(t \, = \, 1, \, 2, \ldots , \, T\)

\(I_{p}\)

Priority of patient \(p\)

where \(I_{p} \in \, I^{ + }\)

\({\text{T}}_{p}\)

Total time that is necessary for the most experienced surgeon to perform the surgery of patient \(p\)

 

\(R_{s}\)

A coefficient which is determined due to the experience of the surgeon and affects the surgery time (for the most experienced surgeon \(R_{s} = 1\))

 

\(\eta_{st}\)

1, if surgeon \(s\) is available at time \(t\); 0, otherwise

 

\(A_{t}^{N}\)

Total number of nurses available at a time t

 

\(\gamma_{p}\)

Number of nurses required for patient \(p\)

 

\(F_{o}\)

The fixed costs of opening room \(o\) per day

 

\(u_{o}\)

The overtime costs of room \(o\) per unit time

 

\(k_{o}\)

The regular operating time of OR \(o\), i.e., the length of time that room o is planned to be available (stochastic variable)

 

\(m_{o}\)

The maximum operating time of room \(o\)

 

Variables:

\(x_{post}\)

1, if patient p is scheduled in OR \(o\) with surgeon s at time t, 0, otherwise

\(y_{po}\)

1, if patient p is assigned to OR \(o\), 0, otherwise

\(\pi_{p}^{s}\)

Start-time of surgery for patient \(p\)

\(\pi_{p}^{e}\)

End-time of surgery for patient \(p\)

\(z_{ps}\)

1, if patient \(p\) is scheduled for a surgery by surgeon \(s\), 0, otherwise

\(q_{o}\)

1, if OR \(o\) is open, 0, otherwise

\(v_{o}\)

length of time that OR \(o\) is over-operated

2.2 Model formulation

Here, a MINLP model is proposed for the problem of the paper.

$$\hbox{max} \sum\limits_{po} {y_{po} I_{P} }$$
(1)
$$\hbox{min} \sum\limits_{o} {q_{o} (F_{o} + u_{o} v_{o} } )$$
(2)
$$\hbox{min} \, w$$
(3)
$$\begin{aligned} & \text{Subject}\,\text{to} \\ & \quad \sum\limits_{p} {y_{po} (\pi_{p}^{e} - \pi_{p}^{s} ) \le w} \quad \forall o \\ \end{aligned}$$
(4)
$$\sum\limits_{os} {x_{post} \le 1} \quad \forall {\text{p,t}}$$
(5)
$$\sum\limits_{ps} {x_{post} \le 1} \quad \forall o , {\text{t}}$$
(6)
$$\sum\limits_{po} {x_{post} \le 1} \quad \forall s , {\text{t}}$$
(7)
$$\sum\limits_{o} {y_{po} \le 1} \quad \forall p$$
(8)
$$\sum\limits_{st} {x_{post} \le T} y_{po} \quad \forall p,o$$
(9)
$$\sum\limits_{o} {y_{po} \le \sum\limits_{s} {z_{ps} } } \quad \forall p$$
(10)
$$\sum\limits_{ot} {x_{post} = (T_{p} R_{s} } )z_{ps} \quad \forall p , {\text{s}}$$
(11)
$$\sum\limits_{o} {x_{post} \le } \eta_{st} z_{ps} \quad \forall p , {\text{s,t}}$$
(12)
$$\pi_{p}^{s} \, \le {\text{t}}\sum\limits_{os} {x_{post} + T} ( 1- \sum\limits_{os} {x_{post} } )\quad \forall p , {\text{t}}$$
(13)
$$\pi_{p}^{e} \, \le ({\text{t + 1)}}\sum\limits_{os} {x_{post} } \, \quad \forall p, {\text{t }} \quad I_{p} \in \, I^{ + }$$
(14)
$$\sum\limits_{o} {x_{post} \le } \pi_{p}^{e} - \pi_{p}^{s} \quad \forall p$$
(15)
$$\sum\limits_{pos} {\gamma_{p} x_{post} \le_{f} } \, A_{t}^{N} \quad \forall t$$
(16)
$$y_{po} \le q_{o} \quad \forall p,o$$
(17)
$$\sum\limits_{p} {y_{po} (\pi_{p}^{e} - \pi_{p}^{s} ) - k_{o} \le v_{o} } \quad \forall o$$
(18)
$$v_{o} \ge 0\quad \forall o$$
(19)
$$v_{o} + k_{o} \le_{f} m_{o} \quad \forall o$$
(20)
$${\text{z}}_{ps} ,y_{po} ,x_{post} ,q_{o} \in \{ 0,1\}$$
(21)
$$\pi_{p}^{e} , \pi_{p}^{s} ,v_{o} \in \{ 0,I^{ + } \}$$
(22)

Maximizing the total number of scheduled patients is stated in the first objective. The second objective of the model is to minimize overtime costs and the fixed costs of the operating rooms, and the third objective of the model is to minimize the maximum of completion time operating rooms. Constraints (5) show that, assigning a patient to at most one OR and surgeon is possible at a given time. Likewise, Constraints (6) describe that at any time in an OR, it is impossible to schedule more than one surgery. Constraints (7) guarantee that at any given time, at most one surgery can be performed by each surgeon. Constraints (8) explain that assigning a patient to more than one OR is not legitimate. Constraints (9) and (10) help in obtaining the variables \(y_{po}\) and \({\text{z}}_{ps}\), which are utilized in the objective function and the constraints of operating time, respectively. Constraints (11) confirm that, the total duration of operation for that patient is equal to the total number of periods to which a patient is scheduled for operation. Constraints (12) investigate if the surgeon is available during that period of time or not. Constraints (13) and (14) ensure proper choice of start and finish times for the patient-surgery. Constraints (15) show that the difference between the scheduled finish- and start-time should equal the number of periods needed for the surgery of the patient. Flexible constraints (16) investigate if the nurses are available to schedule a surgery at specific time-slots during a day. Constraints (17) show that the surgeries must be scheduled to the opened ORs, i.e., if the OR \(o\) is closed, then the variables \(y_{po}\) are forced to be 0. Constraints (18) and (19) for each OR calculate the length of overtime. If OR \(o\) is performed completely on the regular time, \(v_{o}\) is forced to be 0, and if it used the overtime, then \(v_{o}\) is forced to be equal to the length of overtime, regarding to the second objective. Flexible constraints (20) emphasize on the operating time cannot exceed the predefined value for each OR. Constraints (21) and (22) are bounding constraints.

The uncertainty of the parameters and constraints are added to the model using a fuzzy robust stochastic approach in the next section.

3 Fuzzy stochastic and robust multi objective model in operating room

This part is divided into four sections. In the first section, we considered the regular operating time of OR (\(k_{o}\)) is fuzzy-stochastic parameter. \(k_{o}\) as a random parameter represented by normal distribution and the rate of deterioration is essentially vague and denoted by a trapezoidal fuzzy number. The Sect. 3.1 shows how this parameter becomes a crisp parameter. The Sect. 3.2 shows how these flexible constraints [constraints (16) and (20)] are applied to the model by assigning penalties to the cost function. In the Sect. 3.3, the model has been reformulated. The Sect. 3.4 describes Dauer and Krueger optimization algorithm to find a Pareto-optimal solution for the multi-objective goal programming problem.

3.1 Fuzzy stochastic model

Now, assume that the coefficients have both the properties of fuzzy and stochastic. To address the mentioned circumstances, Nazemi et al. [23] proposed Fuzzy Stochastic Programming (FSP). The subsequent definitions should be given before explaining the model.

Definition 3.1

Make the assumption that the variable ‘\(a\)’ has stochastic property, but adequate data does not exist. ‘\(a\)’ is also fuzzy. Then it is entitled a “fuzzy-stochastic” variable.

Definition 3.2

The objective function of an LP problem is assumed to be crisp. If coefficients of the constraint are “fuzzy stochastic” variables, then we have a fuzzy stochastic programming problem. The subsequent steps should be done to obtain the FSP formulation,

  1. 1.

    With regard to each coefficient of constraint \(a_{ij}\), obtain an estimation for mean \(\mu_{ij}\) and variance \(\sigma_{ij}\) using existing data.

  2. 2.

    Make the assumption that each coefficient of the constraints \(a_{ij}\) is an independent random number and have a suitable probability distribution. Then, using the estimated mean and variance, the set of random values \(S_{ij}\) is given as below:

    $$S_{ij} = \left\{ {x_{k} | \, x_{k} \, \in \,assumed\,distribution; \, k = \, 1, \ldots , \, N} \right\}$$

    where \(x_{k}\) is \(k\)th produced random value. \(N\) is selected sufficiently large to generate a set with adequate number of random values to denote nearly all conditions of the coefficient.

The coefficient of the constraint is a the fuzzy number \(T\), \(\tilde{A} = \, \left( {A^{ - } , \, A^{0} , \, A^{ + } } \right)\) as in [3], where \(T\) denotes the triangular membership function, and

\({\text{A}}^{0} = \frac{{\sum\limits_{i = 1}^{N} {x_{i} } }}{N}\) :

\({\text{A}}^{0}\): is the most reliable value, which is allocated a membership value of 1, and is obtained as the average of the produced random set \(S_{ij}\).

\(A^{ - } = \mathop {inf(X_{i} )}\limits_{i = 1, \ldots ,N}\) :

\(A^{ - }\): takes membership value 0, and is obtained as minimum value of produced random set \(S_{ij}\). It is anticipated that the actual parameter value almost definitely exceeds \(A^{ - }\).

\(A^{ + } = \mathop {\sup (X_{i} )}\limits_{i = 1, \ldots ,N}\) :

\(A^{ + }\): is obtained as the maximum value of produced random set \(S_{ij}\). The actual parameter value is expected to be exceeded by A+.

The above process is completed for all coefficients of constraints. Consequently, the standard membership functions represent the uncertainty in all constraint coefficients. The standard model can be simply adjusted by modifying crisp value \(A\) with [\(\tilde{a}_{ij}\)] triangular membership function and can be solved with

$$\begin{array}{*{20}l} {\hbox{max} C^{T} X} \hfill \\ {\text{Subject}\,\text{to}} \hfill \\ {\frac{{4A^{0} + A^{ - } + A^{ + } }}{6}X \le b} \hfill \\ {X \ge 0} \hfill \\ \end{array}$$
(23)

3.2 Robust fuzzy programming approach

Flexible constraints are defined lingually and they can be gratified at different levels [20]. The basic flexible programming (BFP) model is characterized here:

$$\begin{aligned} & \hbox{min} {\text{ E = cx + fy}} \\ & \text{Subject}\,\text{to} \\ & Ax \ge_{f} d \\ & Bx = 0 \\ & Sx \le_{f} Ny \\ & Ty \le 1 \\ & y \in \{ 0,1\} ,x \ge 0. \\ \end{aligned}$$
(24)

As claimed by the work of Pishvaee et al. [28], variable activity costs and fixed opening costs of facilities are denoted by vectors c and f, respectively. The parameters of the constraints are denoted by the matrices \(A, \, B, \, S, \, T\) and \(N\), where \(N\) indicates the capacity of facilities. Vector \(d\) is a symbol for the demand of customers. Lastly, vectors x represents continuous variables and vector y denotes binary variables. For more information, Pishvaee et al. [28] can be referred.

In addition, the fuzzy version of \(\ge\) is denoted by symbol \(\ge_{f}\) which states that the constraint’s left hand side is greater than or similar to the value of the right hand side. Two fuzzy numbers \(\tilde{t}\) and \(\tilde{r}\) are used by Cadenas and Verdegay [7] and Peidro et al. [26] to demonstrate how the soft constraints can be violated. Accordingly, model (24) is reformulated as:

$$\begin{aligned} & \hbox{min} {\text{ E}} = {\text{cx}} + {\text{fy}} \\ & \text{Subject}\,\text{to} \\ & Ax \ge d - \tilde{t}(1 - \alpha ) \\ & Bx = 0 \\ & Sx \le Ny + [\tilde{r}(1 - \beta )]y \\ & Ty \le 1 \\ & y \in \{ 0,1\} ,x \ge 0. \\ \end{aligned}$$
(25)

Parameters \(\alpha\) and \(\beta\) are indicators of the minimum gratification level of flexible constraints. In addition, assume \(\tilde{t}\) and \(\tilde{r}\) to be triangular fuzzy numbers. We represent them by their three prominent points (i.e., \(\tilde{t} = (t^{p} ,t^{m} ,t^{o} )\) and \(\tilde{r} = (r^{p} ,r^{m} ,r^{o} )\)). By using one of the methods for ranking of fuzzy numbers, they can be get out from fuzzy form.

In the basic flexible programming (BFP) model, the decision maker (DM) should subjectively assign the minimum gratification level of flexible constraints \((0 \le \alpha \, , \, \beta \le 1)\). Indeed, the initially determined values of gratification levels should repetitively alter using a reactive process and achieve the ultimate appropriate values for these significant parameters. At each stage, the model’s outcome can be used to asses the desirability of the choices. There are two important faults with regard to the explained method.

First, there is no guarantee that the identified final value of gratification levels are optimal. Second, the process of enhancing flexible constraints to find the gratification levels needs time-consuming tests. The robust flexible programming (RFP) model is used here to avoid these weaknesses.

3.2.1 Robust flexible programming model

The RFP model is:

$$\begin{aligned} & \hbox{min} {\text{ E}} = {\text{cx}} + {\text{fy}} + \, \theta \, \left[ {t\left( {1 - \alpha } \right)} \right] \, + \, \lambda \, \left[ {r\left( {1 - \beta } \right)} \right] \, y \\ & \text{Subject}\,\text{to} \\ & Ax \ge d - \tilde{t}(1 - \alpha ) \\ & Bx = 0 \\ & Sx \le Ny + [\tilde{r}(1 - \beta )]y \\ & Ty \le 1 \\ & y \in \{ 0,1\} ,x \ge 0. \\ \end{aligned}$$
(26)

In the objective function, the total variable processing and fixed opening costs are stated at the first two terms. Consequently, the feasibility robustness of the first and third constraints is investigated using the two remaining terms. Indeed, the violation of soft constraints (which is measured by the satisfaction level variables \(\alpha\) and \(\beta\)) is penalized by unit penalty cost parameters \(\theta\) and \(\lambda\) [27].

3.3 Robust and fuzzy reformulation

We applied robust flexible programming model for scheduling the surgical cases. Given the robust fuzzy programming approach described in the previous Sect. 3.2, two fuzzy numbers \(\tilde{t}\) and \(\tilde{r}\) are added to constraints (16) and (20). Then, we calculated the total penalty cost of potential soft constraint violation by adding the two control terms to cost objective function. The second objective could be converted into:

\(\hbox{min} \sum\limits_{o} {q_{o} (F_{o} + u_{o} v_{o} } )\)

(2)

is converted into

\(\hbox{min} \sum\limits_{o} {q_{o} (F_{o} + u_{o} v_{o} } ){ + }\theta \, \left[ {t\left( {1 - \alpha } \right)} \right] \, + \, \lambda \, \left[ {r\left( {1 - \beta } \right)} \right]\)

(2-a)

Flexible constraints (16) and (20) could be converted into:

\(\sum\limits_{pos} {\gamma_{p} x_{post} \le_{f} } \, A_{t}^{N}\)

(16)

is converted into

\(\sum\limits_{pos} {\gamma_{p} x_{post} \le_{{}} } \, A_{t}^{N} + \, \left[ {t\left( {1 - \alpha } \right)} \right]\)

(16-a)

\(v_{o} + k_{o} \le_{f} m_{o}\)

(20)

is converted into

\(v_{o} + k_{o} \le_{{}} m_{o} + \, \left[ {r\left( {1 - \beta } \right)} \right]\)

(20-a)

Finally, the robust flexible programming model is as follows:

\(\hbox{max} \sum\limits_{po}^{{}} {y_{po} I_{p} }\)

(1)

\(\hbox{min} \sum\limits_{o} {q_{o} (F_{o} + u_{o} v_{o} } ){ + }\theta \, \left[ {t\left( {1 - \alpha } \right)} \right] \, + \, \lambda \, \left[ {r\left( {1 - \beta } \right)} \right]\)

(2-a)

\(\hbox{min} \, w\)

(3)

Subject (1) to (15), (17) to (19), and (21) to (22)

 

\(\sum\limits_{pos} {\gamma_{p} x_{post} \le_{{}} } \, A_{t}^{N} + \, \left[ {t\left( {1 - \alpha } \right)} \right] \quad \forall t\)

(16-a)

\(v_{o} + k_{o} \le_{{}} m_{o} + \, \left[ {r\left( {1 - \beta } \right)} \right]\quad \forall o\)

(20-a)

3.4 Multi objective goal programming

The algorithm of Dauer and Krueger [8], for finding Pareto-optimal solutions, considers k goals (objective functions) and a set of constraints , as a classical nonlinear goal programming model:

$$\begin{array}{*{20}l} {(NLGP):} \hfill & {{\text{f}}_{1} ({\text{x}}) \le b_{1} } \hfill \\ {} \hfill & {{\text{f}}_{2} ({\text{x}}) \le b_{2} } \hfill \\ {} \hfill & \ldots \hfill \\ {} \hfill & {{\text{f}}_{k} (x) \le b_{k} } \hfill \\ {subject\;to} \hfill & {{\text{M}} = \{ {\text{x}} \in \;{\text{R}}^{n} |{\text{ g}}_{r} ({\text{x}}) \le 0,\;{\text{r}} = 1, \ldots ,m,\;{\text{X}} \ge 0\} } \hfill \\ \end{array}$$
(27)

where \(X = (x_{1} ,x_{2} , \ldots ,x_{n} )\) includes decision variables and \(b_{i} , \, i = 1, \ldots ,k\) stands for aspiration levels for objectives \(f_{i} \left( x \right), \, i = 1, \ldots ,k\). Then, objectives are ranked by their level of priority, that is, if \(i \le j\) then objective , \(f_{i} \left( x \right) \le \, b_{i}\) has a greater level of priority than objective , \(f_{j} \left( x \right) \le \, b_{j}\). It is well known that the basic assumption of goal programming is that objective is needed to be found regardless of the reachability of the objectives with less priority level. This idea was used by Dauer and Krueger to present an algorithm for solving linear, nonlinear, and integer goal programming problems. The algorithm sequentially find solution for single-objective problems. The initial and final problems are:

Finding a solution for the problem which corresponds to objective 1, P1 is:

$$\begin{array}{*{20}l} {p_{1} :} \hfill & {{\text{Minimize }}d_{1} } \hfill \\ {} \hfill & {{\text{Subject to f}}_{1} (x) - d_{1} \le b_{1} } \hfill \\ {} \hfill & {\quad\qquad {\text{g}}_{r} ( {\text{x)}} \le 0 , {\text{ r}} = 1 ,\ldots , {\text{m}}} \hfill \\ {} \hfill & {\qquad \quad d_{1} \ge 0 , {\text{ x}} \ge 0 , { }} \hfill \\ \end{array}$$
(28)

where \(d_{1}^{{}}\) is the positive deviance for objective \(f_{1} \left( x \right)\) from its objective value \(b_{1}\), and the solution of this problem is \(d_{1}^{*}\).

Finding a solution for the problem which corresponds to objective k, Pk is:

$$\begin{array}{*{20}l} {p_{k} :} \hfill & {{\text{Minimize d}}_{k} } \hfill \\ {} \hfill & {{\text{Subject to f}}_{i} (x) - d_{i} \le b_{i} } \hfill \\ {} \hfill & {\quad\qquad {\text{d}}_{i} = d_{i}^{*} ,\quad 1\le {\text{i}} \le {\text{k}} - 1} \hfill \\ {} \hfill & {\quad\qquad {\text{g}}_{r} ( {\text{x)}} \le 0 , { }\quad {\text{r}} = 1 ,\ldots , {\text{m}}} \hfill \\ {} \hfill & {\quad\qquad {\text{d}}_{k} \ge 0 , {\text{ x}} \ge 0 , { }} \hfill \\ \end{array}$$
(29)

Vector \(\bar{x} = (\bar{x}_{1} ,\bar{x}_{2} , \ldots ,\bar{x}_{k} )\) stands for the optimal solution of the above model (GP problem).

In the next section, the fuzzy robust stochastic approach described above is implemented on a numerical instance to investigate the model performance.

4 Experimental results

By using collected data during 2 months in the surgical department, we have estimated the problem parameters. These parameters consist of the number of nurses and available facilities, fixed and variable costs of operating rooms, time of using operating rooms, access to surgeons and patients’ priority in accordance to the necessity of surgery. Here, the performance of the presented models are examined by utilizing the data of the surgical department. In the model, the goal value of the second objective and some of the constraints are assumed to be flexible. In addition, the potential violation of the second objective and flexible constraints are denoted as new parameters (Sects. 3.2, 3.3). Moreover, the maximum potential violation of objective (i.e., \(\theta\) and \(\lambda\)) is assumed to be 80% over the defined aspiration level. Likewise, 30 percent of the related right hand sides (i.e., the number of nurse and maximum operating time of each room) is considered as the maximum permissible (i.e., \(\tilde{t}\) and \(\tilde{r}\)) flexibility of soft constraints.

The present condition for scheduling the operating room is as follows:

Scheduling is based on 15 operating rooms and 15 surgeons. As mentioned earlier, time is discretized into 30-min intervals. Indeed, the regular time (an 8-h shift) includes 16 intervals, while the overtime consists of 4 intervals. The cost of overtime for the operating rooms is considered to be equal.

The objective is to build schedules that minimize (in expectation) the patient waiting time due to, patient preparation time after anesthesia, operating room cleaning time, and operating room preparation time. So we consider the regular operating time of OR (\(k_{o}\)) as a fuzzy-stochastic parameter. The shortage of sufficient data is the first reason, and the interactions between the parameters that may not be obvious is the second. Also, due to monthly data (2 months) normal distribution is regarded as a suitable probability distribution and we calculate \(k_{o}\) as indicated in Eq. (23) (Sect. 3.1), so:

$$\begin{aligned} & k_{o} = (k_{o}^{ - } ,k_{o}^{O} ,k_{o}^{ + } ) \\ & \mu = 16,\sigma = 0.2 \\ & k_{o} = (15.6,16,16.4) \\ & k_{o} = \frac{(4(16) + 15.6 + 16.4)}{6} = 16 \\ \end{aligned}$$
(30)

As discussed at the end of Sect. 1, the fuzzy constraints include the number of nurses and the maximum operating time of each room; some nurses works in overtime.

We consider \(\tilde{t} = (0,2,4)\) and \(\tilde{r} = (0,2,4)\) and calculate \(t\) and \(r\) as indicated in Eq (23), so:

$$\begin{aligned} & t = \frac{(4(2) + 0 + 4)}{6} = 2 \\ & r = \frac{(4(2) + 0 + 4)}{6} = 2 \\ \end{aligned}$$
(31)

According to Pishvaee and Fazli Khalaf [27] (Sects. 3.2, 3.3), the parameters \(\theta\) and \(\lambda\) denote the quantity that flexible constraints are violated. Accordingly, the fixed and variable costs of the main model as well as the penalty costs originated from violation of the constraints, are minimized by the second objective function of the model. Since the problem has to be solved for every \(\alpha \in \left[ {0, \, 1} \right]\) and \(\beta \in \left[ {0, \, 1} \right]\), the function samples \(\alpha\) in \(\left[ {0, \, 1} \right]\) and \(\beta\) in \(\left[ {0, \, 1} \right]\) according to a user-specified step, and is solved for each \(\alpha\) and \(\beta\). Also, this matter applies to the variable \(\theta \in \left\{ {10,20,30,40,50} \right\}\) and \(\lambda \in \left\{ {10,20,30,40,50} \right\}\). We use the optimization algorithm of Dauer and Krueger [8] to solve the multi-objective goal programming problem (Sect. 3.4).

For examining the effectiveness of the proposed model when compared with the base model, we solve the fuzzy robust stochastic model (FRS model) with a diverse set of fines. Moreover, the optimization of the base model is implemented using different levels of satisfaction (i.e., 0.2, 0.5, 0.75 and 0.9). Subsequently, we choose the best solution from the provided solution by comparing saving with the basic solution (Table 2). So, we solve the base model and then to show the quality of the solutions achieved from different \(\alpha\), \(\beta\), \(\theta\), and \(\lambda\) values in Figs. 1, 2, 3, 4, 5 and 6, the objective function values of the model is used:

Table 2 Select best solution by savings compared to the baseline solution
Fig. 1
figure 1

The comparison of FRS and basic models under constraints violation penalties for cost function

Fig. 2
figure 2

The comparison of first, second, and third functions under different \(\theta\) and \(\lambda\) values (\(\alpha = \beta = 0\))

Fig. 3
figure 3

The comparison of first, second, and third functions under different \(\theta\) and \(\lambda\) values (\(\alpha = \beta = 0.25\))

Fig. 4
figure 4

The comparison of first, second, and third functions under different \(\theta\) and \(\lambda\) values (\(\alpha = \beta = 0.5\))

Fig. 5
figure 5

The comparison of first, second, and third functions under different \(\theta\) and \(\lambda\) values (\(\alpha = \beta = 0.75\))

Fig. 6
figure 6

The comparison of first, second, and third functions under different \(\theta\) and \(\lambda\) values (\(\alpha = \beta = 0.9\))

The quantity of violation of flexible constraints is calculated by \(\, \left[ {t\left( {1 - \alpha } \right)} \right]{\text{ and }}\left[ {r\left( {1 - \beta } \right)} \right]\). Therefore, the objective function of model (2-a) minimizes the penalty costs originated from the violation of constraints along with the fixed and variable costs of the original model. The objective function value of model (2-a) is used to show the performance of the solutions achieved by FRS and basic model. Indeed, the solution of extended models are obtained by software GAMS and their related results are displayed in Fig. 1.

In Figs. 2 and 3, with an increase of constraint violation penalties (\(\theta\) and \(\lambda\)) at the (\(\alpha = \beta = 0,0.25\)) level, there will be an increase in the cost objective function, while the time function will be decreased. It is obvious that when a larger space is considered for constraints, scheduling use the most of the condition and more surgeries will be done and penalties will be given to the second objective function (cost). So, by increasing the cost, the time can be reduced. Because the first objective function (number of surgeries) is the most important one, in the optimal solution, the maximum value of it is observed in Figs. 2, 3, 4, 5 and 6.

In Figs. 4, 5 and 6, with an increase of distinct satisfaction levels the (\(\alpha = \beta = 0.5,0.75,0.9\)), there will be decrease in the cost objective functions compared to other levels (\(\alpha = \beta = 0,0.25\)) because smaller penalties has been assigned to (\(\alpha = \beta = 0.5,0.75,0.9\)) and the completion time function will be increased compared to other levels (\(\alpha = \beta = 0,0.25\)).

The interesting point in results is the trade-offs between two functions (cost and completion time functions) which can be seen in Figs. 2, 3, 4, 5 and 6. With an increase in the cost objective function, the time function will be decrease. It is clear that when a larger space is considered for constraints, scheduling use the most of the condition and more surgeries will be done and penalties will be given to the second objective function (cost). So, by increasing the cost, the time can be reduced.

However, in order to choose the best solution from the provided solution, we need a selection criterion. According to an article by Baril et al. [4], we consider the best solution as saving in relation to basic solution (deterministic). The results are provided in Table 2.

As can be seen in Table 2, among 25 solutions at different levels of \(\alpha ,\beta ,\theta\) and \(\lambda\) only seven of solutions have positive savings. Solution of \(\theta = \lambda = 20\) at (\(\alpha = \beta = 0.9\)) in comparison with the solution of basic problem has the highest rate of savings and can be selected as the best solution for operating room scheduling problem. As shown in the Fig. 1, the performance of FRS model at (\(\alpha = \beta = 0.9\)) is the best performance among other levels for cost function. We solve basic model (first row of Table 2) and then we calculate other satisfaction levels (i.e., 0, 0.2, 0.5, 0.75 and 0.9) solutions. Finally, we investigate 25 solutions and then select best solution by high saving compared to the base solution.

5 Conclusion

In this paper, we introduced a multi objective mixed-integer programming model of surgical cases scheduling with three functions include a multi-resource, patient-priority-based surgical case scheduling problem and minimizes cost and completion time. We formulated this problem as a fuzzy robust stochastic problem.

We applied the fuzzy robust model by applying penalty on objective function and giving more solution space in maximum operating time of each room and the number of nurses at different levels. Three objective functions are considered for this problem including the objective function of max, min and min–max. Then, a solution for the goal programming problem with several objectives is obtained using a standard algorithm. To investigate the performance of proposed model and compare the results with the base model, the fuzzy robust stochastic model (FRS model) is solved considering various penalty sets. Moreover, optimization of the base model is implemented using diverse gratification levels (i.e., 0.2, 0.5, 0.75 and 0.9). Finally, using the best solution as saving in relation to basic solution (definite without fuzzy robust), one of these solutions was selected as the best solution. Results showed the trade-offs between two functions (cost and completion time functions). With a rise in the cost objective function, the time function would be decreased. It is clear that when a larger space is considered for constraints, scheduling use the most of the condition and more surgeries will be done and penalties will be given to the second objective function (cost). So, by increasing the cost, the time can be reduced.

Also, results indicated that by considering penalty on objective function because of fuzzy constraints, we can achieve a better solution than the definite state. The remarkable result in this study is that considering fuzzy constraints due to uncertainties on number of resources and surgical team that are closer to the reality of operating room scheduling problems did not result in worse solutions compared to traditional operating room scheduling problems, even as the result of this article indicates, they may lead to a better solutions.

For the future, several other avenues are considered: (1) considering other constraints, i.e. number of bed and so on, (2) replacing the robust method by other robust technique such as the worst-case analysis, and (3) considering the fuzzy parameters in the model.