1 Introduction

Cleft lip and/or cleft palate (CL/P) are the common birth defects that result when facial structures developing in an unborn baby do not close completely. These defects usually occur as isolated birth defects but are also related to many inherited genetic conditions, syndromes, and environmental factors. The CL/P can be treated with a multidisciplinary care team comprising plastic surgeons, neurosurgeons, otolaryngologists, ophthalmologists, anesthesiologists, orthodontists, and nurses. The protocol of surgeries is able to restore normal function and reach a more normal appearance. From the statistic of the birth prevalence of the CL/P, approximately one in every 700 children is born with a cleft lip only (CLO) or a cleft palate only (CPO); some children have both a cleft lip and a cleft palate (CLP) (Panamonta et al., 2015; Operation Smile Thailand, 2020). Many countries have established centers for CL/P care to provide treatment services.

As the CL/P treatments take a long time, starting from the womb until adulthood to allow the patient to have a good quality of life at any age, a suitable treatment scheduling should be designed in providing prompt health services to patients under patients’ needs and doctors’ preferences such as minimax completion time (Makespan) and minimum travel distance of patients to hospitals. Nevertheless, the determination of effective treatment scheduling is quite difficult since it must be provided based on several conditions such as hospital eligibility, capacity, age limit, procedure complexity, multi-hospital assignment, and multidisciplinary care team assignment.

This research is motivated by a northern Thailand hospital case study, which faces treatment scheduling problems. The case study was established for servicing CL/P patients in the eight provinces of upper northern Thailand. The network of the case study is decentralized to many hospitals in these eight provinces in order to provide the treatment service. Among the hospitals in northern Thailand, only five hospitals can provide CL/P treatment, and some hospitals have some limitations of this treatment service. Nowadays, the treatment schedule is planned by the administrators using the administrator’s experience without any decision support systems. Based on the lack of decision support tools, the administrator is not able to reach an effective treatment schedule for scheduling a list of patients who are supposed to undergo different kinds of treatments in a particular time horizon. Owing to using the administrator’s experience, this is able to generate errors in scheduling the treatments. Furthermore, some patients may be forced to the hospital with long travel distances.

Kapamara et al. (2006), Marynissen and Demeulemeester (2019), Marynissen and Demeulemeester (2016), Cissé et al. (2017), Gupta and Denton (2008), Di Mascolo et al. (2021), Abdalkareem et al. (2021), and Cardoen et al. (2010) provided comprehensive overview and guidelines for successful implementation of treatment and patient scheduling. Operations research (OR) models have been applied to treatment scheduling problems. However, each model proposes different aspects of health care service including objective functions and conditions. The majority of previous work normally focuses on cost (Ceschia & Schaerf, 2011; Silva & Souza, 2019), time (Conforti et al., 2008), deviation (Rezaeiahari & Khasawneh, 2020), utilization (Souki & Rebai, 2009), makespan (Wisittipanich et al., 2021), tardiness (Vali-Siar et al., 2018), satisfaction (Ala et al., 2021; Lan et al., 2019), and the number of patients (Burke et al., 2011) with the single-objective function, while few studies consider these factors with multi-objective function. Most conditions for treatment or patient scheduling generally consider capacity (room and resource) (Range et al., 2014), hospital policies (Chen et al., 2016), medical staff’s preference (Chen et al., 2016), patient assignment (Vali-Siar et al., 2018), operating duration (Vali-Siar et al., 2018), resource limitation (Chern et al., 2008), surgery priority (Belkhamsa, 2018), consecutive days (Bolaji et al., 2018), length of stay (Bolaji et al., 2018), machine assignment (Zhao et al., 2018), precedence process (Zhao et al., 2018), processing time (Chandra et al., 2014), and completion time (Chandra et al., 2014). However, the majority of the OR models for treatment scheduling do not consider age limitations, multiple hospitals assignment, and multidisciplinary care team assignments. As the complicated conditions of specific treatment in CL/P, there are a few papers that have studied on the CL/P patient treatment scheduling problems (CL/PTSPs). Wisittipanich et al. (2021) proposed a mathematical programming model to solve the surgical scheduling problem. Two objectives of makespan and total least preference score were proposed under the consideration of hospital eligibility, capacity, age limit, procedure complexity, multi-hospital assignment, and multidisciplinary care team assignment. However, Wisittipanich et al. (2021) does not consider the doctor assignment constraint and the travel distance between the location of patient and hospital, resulting in solutions that may affect the patients’ needs and doctor assignment.

Since the treatment scheduling problem is NP-hard, a heuristic algorithm and a metaheuristic algorithm are suggested (Chern et al., 2008; Lin & Chou, 2019). Several heuristic algorithms and metaheuristic algorithms have been applied in treatment scheduling problems, including genetic algorithm (Lin et al., 2019), greedy algorithm (Chern et al., 2008), constructive heuristic algorithm (Kamran et al., 2019), hill-climbing algorithm (Bolaji et al., 2018), sine cosine algorithm (Lan et al., 2019), tabu search algorithm (Rezaeiahari & Khasawneh, 2020), NSGA-II algorithm (Ala et al., 2021), distributed optimization algorithm (Euchi et al., 2021) and simulated annealing algorithm (Rezaeiahari & Khasawneh, 2020). However, there is no literature that has presented the heuristic algorithms or metaheuristic algorithms for CL/PTSPs. To solve the CL/PTSPs, the existing heuristic algorithms or metaheuristic algorithms can be applied. Differential Evolution (DE) has been successfully applied in several areas including scheduling problems due to its effectiveness and simplicity (Cinar et al., 2021; Shahnazari-Shahrezaei et al., 2012; Yu et al., 2013). Shahnazari-Shahrezaei et al. (2012) confirm that the DE outperforms other algorithms, and also show that the DE is capable of improving the quality of acquired solutions for nurse or patient scheduling problems. Based on the well performance of DE, this study aims to apply the DE to find the solution for CL/PTSPs based on proposed particular encoding and decoding schemes.

As the research gaps, the consideration of doctor assignment constraint and three objectives of makespan, travel distance, and total least preference assignment score is lacking. Moreover, there is no literature that has applied the solution algorithm with differential evolution (DE) for CL/PTSP. Hence, this paper aims to propose a treatment scheduling method by using DE for CL/P patients. The highlights of this paper are to (1) propose a multi-objective mixed-integer linear programming model for CL/PTSP based on the three objectives of makespan, travel distance, total least preference assignment score; (2) propose a solution method based on differential evolution (DE) with particular encoding and decoding schemes; and (3) propose a decision support system based on the proposed solution algorithm for the northern Thailand hospital case study. The remainder of this paper is organized as follows: Sect. 2 presents an overview of the existing literature. Section 3 presents a mathematical model for CL/PTSP. Section 4 presents a solution algorithm using DE for CL/PTSP. Section 5 presents a computational experiment. Section 6 proposes a CL/P patient scheduling program for a real-world case study in northern Thailand. Finally, a conclusion is given in Sect. 7.

2 Literature review

This section presents an overview of the relevant literature. The CL/PTSP is a common treatment scheduling problem, for which comprehensive reviews have been proposed. Several perspective issues related to treatment scheduling problems have been reviewed: Kapamara et al. (2006) proposed an extensive literature review of scheduling problems in radiotherapy; Marynissen and Demeulemeester (2019) and Gupta and Denton (2008) presented a literature review on appointment scheduling problems in hospitals; Marynissen and Demeulemeester (2016) presented a review on integrated hospital scheduling problems; Cissé et al. (2017) proposed an extensive literature review on scheduling problems related to home health care; Di Mascolo et al. (2021) presented a synthesis of the literature dealing on routing and scheduling in home health care context; and Abdalkareem et al. (2021) presented a summary of healthcare scheduling problem including patients’ admission scheduling problem, nurse scheduling problem, operation room scheduling problem, surgery scheduling problem and other healthcare scheduling problems. Treatment scheduling is one of the most important roles in the managerial aspect of health care service by providing prompt health services to patients (Cardoen et al., 2010). The treatment scheduling problem is a complex problem for many operating administrators. In general, this problem consists of selecting treatment processes assigned to sectors or hospitals, specified treatment periods, and the required resources (Silva & Souza, 2019). Therefore, treatment scheduling is a solution to support decision-makers when the hospital’s management has certain objectives for improving their current systems (Drupsteen et al., 2013). Operations research (OR) models have been applied to treatment scheduling problems in several previous papers. However, each model proposes different aspects of health care service including objective functions and conditions as shown in Table 10 (See Appendix A).

An objective function is one of the most important components of the OR model. The objective function model is able to be separated into two types: the single-objective function model and the multi-objective function model. Several aspects of the objective function are formulated in order to reach the goals of the solution. Normally, the objective function of the treatment scheduling problem consists of minimizing cost (Ceschia & Schaerf, 2011), minimizing time (Conforti et al., 2008), minimizing deviation (Rezaeiahari & Khasawneh, 2020), maximizing utilization (Souki & Rebai, 2009), minimizing the makespan (Wisittipanich et al., 2021), minimizing tardiness (Vali-Siar et al., 2018), maximizing satisfaction (Lan et al., 2019), minimizing dissatisfaction (Ala et al., 2021), minimizing and maximizing the number of patients (Burke et al., 2011). Granja et al. (2014) proposed an optimization based on the simulation approach to the patient admission scheduling problem using a linear programming algorithm. The objective function of this paper aims to minimize the total completion time and total waiting time. Castro and Petrovic (2012) presented an optimization model with multiple objectives for a radiotherapy pre-treatment scheduling problem, in which the objective functions were composed of the minimization of the percentage of the weighted number of patients exceeding the waiting time targets, the minimization of the sum of weighted lateness, and the minimization of the maximum of lateness. Huang et al. (2018) presented a dynamic configuration scheduling problem for stochastic medical resources under consideration of the limitations of the surgical operating room, the nurse anesthetist and anesthesiologist, and the dynamic nature of the arriving calls. This study aims to maximize the utilization rate of anesthesiologists, thus reducing the increase in personnel allocation and idle time caused by surgery delays or cancellations. To point out the CL/PTSPs, only Wisittipanich et al. (2021) are found. Wisittipanich et al. (2021) proposed two objective functions of makespan and total least preference score for scheduling surgery of CL/PTSPs. However, when the multi-hospital assignment for the treatment is determined, the travel distance between the location of patient and hospital has become the essential factor, resulting in solutions that may affect the patients’ needs and doctor assignment.

Another important component is the constraints. Each treatment scheduling problem is different, so the constraints are also different. From the previous literature review, most of papers related to treatment scheduling problems or health care service generally consider capacity (room and resource) (Range et al., 2014), hospital policies (Chen et al., 2016), medical staff’s preference (Chen et al., 2016), patient assignment (Vali-Siar et al., 2018), operating duration (Vali-Siar et al., 2018), resource limitation (Chern et al., 2008), surgery priority (Durán et al., 2017; Belkhamsa, 2018), consecutive days (Bolaji et al., 2018), length of stay (Bolaji et al., 2018), machine assignment (Zhao et al., 2018), precedence process (Zhao et al., 2018), processing time (Chandra et al., 2014), and completion time (Chandra et al., 2014). Acar and Butt (2016) proposed a methodology for the construction of balanced nurse-patient workload assignments under consideration of several constraints such as a limited amount of time, a limitation of the maximum assigned sum of acuity scores, a limitation of the maximum assigned distance score. Vali-Siar et al. (2018) proposed a multi-period and multi-resource operating room scheduling solution under uncertainty. Many conditions such as patient assignment, resource capacity, resource assignment, and operating duration were determined on this paper in order to minimize tardiness, idle time, and overtime. To focus on CL/PTSPs, Wisittipanich et al. (2021) proposed a mathematical programming model to solve the surgical scheduling problem for CL/PTSPs. The constraints of hospital eligibility, capacity, age limit, procedure complexity, multi-hospital assignment, and multidisciplinary care team assignment were considered in this study. However, some constraints such as doctor assignments are lacking. To solve CL/PTSPs in a realistic situation, the lacking constraints should be determined.

To solve the OR model related to treatment scheduling problems and health care services, many researchers have generally employed exact algorithms for finding optimal solutions. Nevertheless, the exact algorithm is still having limitations since it cannot solve larger problems with limited time. Furthermore, when the number of variables is increased or the problem is formulated as nonlinear programming, the exact algorithm cannot find the solution within limited time. To solve larger problems with limited time, increasing variables, and nonlinear programming, a heuristic algorithm and a metaheuristic algorithm have been applied to solve treatment scheduling problems and health care services. Several heuristic algorithms and metaheuristic algorithms have been applied, including genetic algorithm (Lin et al., 2019), greedy algorithm (Chern et al, 2008), constructive heuristic algorithm (Kamran et al., 2019), hill-climbing algorithm (Bolaji et al., 2018), sine cosine algorithm (Lan et al., 2019), tabu search algorithm (Rezaeiahari & Khasawneh, 2020), NSGA-II algorithm (Ala et al, 2021), distributed optimization algorithm (Euchi et al., 2021) and simulated annealing algorithm (Rezaeiahari & Khasawneh, 2020). The most popular in the metaheuristic algorithm is Genetic Algorithm (GA). For instance, Belkhamsa et al. (2018), proposed two metaheuristics for solving no-wait operating room surgery scheduling problems under various resource constraints. GA is one of the proposed algorithms for solving the surgery scheduling problem; this algorithm aims to minimize access time (makespan) and total idle time in the operation room. Based on the results, the proposed algorithms outperformed the current state-of-the-art algorithm. Not only the GA but also Tabu Search (TS) and Simulated Annealing (SA) have been applied to the treatment scheduling problem. Rezaeiahari and Khasawneh (2020) proposed a simulation–optimization approach for scheduling medical tourists who travel to destination medical centers (DMCs). This aims to minimize deviations from a patient’s preferred start day and to minimize the flow time of patients at the DMC by using the tabu search and simulated annealing algorithms. The results indicated that the total cost of the proposed model is significantly less than that of the problem without any admission planning or patient sequencing. Cinar et al. (2021) optimized a routing and scheduling problem for home visits of patients by a single nurse using a developed metaheuristic and an adaptive large neighborhood search heuristic. According to the above literature, several heuristic algorithms or metaheuristic algorithms can be applied for the treatment scheduling. DE has been successfully applied in several areas due to its effectiveness and simplicity (Shahnazari-Shahrezaei et al., 2012). Shahnazari-Shahrezaei et al. (2012) applied the DE for a nurse scheduling problem. This paper confirms that the DE outperforms other algorithms, and also shows that the DE is capable of improving the quality of acquired solutions for nurse scheduling problems. Not only the DE but also Particle Swarm Optimization (PSO) also have been applied for patient scheduling problems. Yu et al. (2013) proposed PSO on the surgery scheduling problem for elective-patients in multiple operating theatres. This paper found that the PSO works very well and PSO reached the same level of the exact algorithm while the computational time of PSO is far less than the exact algorithm. Based on the well performance of DE and PSO, this study aims to apply the DE to find the solution for CL/PTSPs based on proposed particular encoding and decoding schemes while the PSO is used to compare to DE for showing the performance. Moreover, to the best of our knowledge, no DE algorithm has been developed to solve CL/PTSPs as well.

According to the overview of the relevant literature, some objective functions, some constraints, and some metaheuristic algorithms are lacking for the consideration of CL/P patient scheduling; therefore, this paper aims to present a CL/P patient scheduling method under the consideration of hospital eligibility constraints, capacity limitations, treatment age limitations, multi-hospital assignment, multidisciplinary care team assignment, and multiperiod. The multi-objective function is generated based on the patient’s needs, including minimizing makespan, minimizing the travel distance of patient to the hospital, and minimizing the total least preference assignment score. A solution is proposed via the DE algorithm based on the proposed particular encoding and decoding schemes since the DE is capable of improving the quality of acquired solutions for scheduling problems. Moreover, the PSO is used to compare to DE for showing the performance of solution finding. Finally, the proposed algorithm is used to create the CL/P patient treatment scheduling program for the hospital case study.

3 Proposed mathematical model

As mentioned earlier, for the CL/PTSP, this study aims to schedule a list of patients who are supposed to undergo different kinds of treatments in a particular time horizon. Different operations for each patient can be served at any hospital selected from a set of eligible hospitals in the network. For each period, different hospitals have different limited capacities to perform a treatment. Therefore, the CL/P patient treatment schedules are planned for each hospital on multiple periods over a particular time horizon. In this section, a mixed-integer linear programming (MILP) model is proposed to represent the CL/PTSP; the model is developed from a flexible job shop scheduling problem. The decisions in this problem include (1) identifying a list of selected treatments, (2) assigning each operation for patients to the selected hospital, (3) assigning the doctor for treatment in each operation, and (4) identifying the period of the selected treatment. The model considers three objectives: minimization of makespan, minimization of travel distance, and minimization of total least preference assignment score.

The main assumptions of the model are summarized as follows.

  • Each patient has different symptoms. Therefore, each patient has different kinds of operation requirements.

  • Some operations can be performed at specific hospitals only.

  • Time for operation treatment is a deterministic variable.

  • Time for transferring patients between hospitals is not considered.

  • There are no preemptions in scheduling.

  • All patients have equal priority.

  • The age of all patients starts a 0-year-olds.

  • There is no priority in the doctor assignment.

  • The capacity of a doctor can be known in advance in each period.

In order to formulate a mathematical model for multi-objective CL/PTSPs, the notations for indices, parameters, and decision variables are defined as follows.

  • Indices

i:

Patient (i = 1, …, I).

j, p:

Operation (j, p = 1, …, J).

k:

Hospital (k = 1,…,K).

t:

Time period (t = 1,…,T).

d:

Doctor (d = 1,…,D).

  • Decision variable

\( X_{{ijdkt}} \qquad = \left\{ {\begin{array}{*{20}l} 1 & {{\text{if}}\,\, {\text{patient}}\,\, {{i}}\,\, {\text{is}}\,\, {\text{assigned}}\,\, {\text{to}}\,\, {\text{hospital}}\,\, {{k}}\,\, {\text{with}}\,\, {\text{doctor}}\,\, {{d}}\,\, \,\, {\text{for}}\,\, {\text{operation}}\,\, {{j}}} \\ {} & {{\text{in}}\,\, {\text{period}}\,\, {{t}}} \\ 0 & {\,\, {\text{otherwise}}} \\ \end{array} } \right. \)

\(ck_{ij}\qquad \quad\,\,\, \text{Treatment \, completion \, time \, of \, patient} \, i \, \text{operation}\, j\)

\(C_{\text{max}}\qquad \quad \text{Maximum \,completion \,time \,of \,all \,patients}.\)

  • Parameters

\(\begin{aligned} E_{{ijk}} \qquad &= \left\{ {\begin{array}{*{20}l} 1 & {\,\, {\text{if}}\,\, {\text{hospital}}\,\, {{k}}\,\, {\text{can}}\,\, {\text{treat}}\,\, {\text{patient}}\,\, {{i}}\,\, {\text{operation}}\,\, {{j}}\,\, } \\ 0 &\,\, {{\text{otherwise}}} \\ \end{array} } \right. \\& \text{(Hospital \, eligibility \, restrictions)} \end{aligned}\)

\(as_{{ij}} \qquad =\left\{ {\begin{array}{*{20}l} 1 & {{\text{if}}\,\, {\text{patient}}\,\, {{i}}\,\, {\text{need}}\,\, {\text{to}}\,\, {\text{treat}}\,\, {\text{an}}\,\, {\text{operation}}\,\, {{j}}} \\ 0 & {{\text{otherwise}}} \\ \end{array} } \right. \)

\( y_{{ijp}} \qquad =\left\{ {\begin{array}{*{20}l} 1 & {{\text{if}}\,\, {\text{patient}}\,\, {{i}}\,\, {\text{is}}\,\, {\text{assigned}}\,\, {\text{to}}\,\, {\text{treat}}\,\, {\text{an}}\,\, {\text{operation}}\,\, {{p}}\,\, {\text{after}}\,\, {\text{operation}}\,\, {{j}}} \\ 0 & {{\text{otherwise}}} \\ \end{array} } \right. \)

\(da_{dk} \qquad =\left\{\begin{array}{ll}{1} \,\, {\text{i}}{\text{f}} \, {\text{d}}{\text{o}}{\text{c}}{\text{t}}{\text{o}}{\text{r}} \, {{d}} \, {\text{i}}{\text{s}} \, {\text{a}}{\text{s}}{\text{s}}{\text{i}}{\text{g}}{\text{n}}{\text{e}}{\text{d}} \, {\text{t}}{\text{o}} \, {\text{w}}{\text{o}}{\text{r}}{\text{k}} \, {\text{a}}{\text{t}} \, {\text{h}}{\text{o}}{\text{s}}{\text{p}}{\text{i}}{\text{t}}{\text{a}}{\text{l}} \, {{k}} \\ {0} \,\, {\text{o}}{\text{t}}{\text{h}}{\text{e}}{\text{r}}{\text{w}}{\text{i}}{\text{s}}{\text{e}} \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \, \end{array}\right.\)

\(et_{jp} \qquad\, \) Minimum time gap between operation j and p before starting the operation j.

\(lt_{jp} \qquad\,\, \) Maximum time gap between operation j and p before starting the operation j.

\(RT_{j} \qquad\,\, \)Ready time for starting operation j.

\(DD_{j} \qquad \)Due date of completing operation j.

\(wp_{ik} \qquad\, \)Least preference score of patient i being treated at hospital k.

\(wl_{ik} \qquad\,\, \)Travel distance between location of patient i and hospital k.

\(Tp_{t} \qquad\,\,\, \)Time period t.

\(mc_{d} \qquad \)Maximum capacity of doctor d that can treat the patient in each period.

\(oc_{jd} \quad\,\,\,\, \)Maximum capacity of doctor d that can treat the patient in operation j.

\(B \qquad\quad \) A positive big number.

  • Objective function

$$ Z_{1} = \sum\limits_{i \in P} {\sum\limits_{j \in O} {\sum\limits_{d \in D} {\sum\limits_{k \in H} {\sum\limits_{t \in T} {x_{ijdkt} wl_{ik} } } } } } $$
(1)
$$ Z_{2} = \sum\limits_{i \in P} {\sum\limits_{j \in O} {\sum\limits_{d \in D} {\sum\limits_{k \in H} {\sum\limits_{t \in T} {x_{ijdkt} wp_{ik} } } } } } $$
(2)
$$ Z_{3} = \max_{i} \left( {x_{ijdkt} Tp_{t} } \right) $$
(3)
  • Constraints

$$ \sum\limits_{i \in P} {\sum\limits_{j \in O} {x_{ijdkt} \le mc_{d} ;\,\forall d,k,t} } $$
(4)
$$ \sum\limits_{i \in P} {x_{ijdkt} } \le oc_{jd} ;\,\forall j,d,k,t $$
(5)
$$ x_{ijdkt} \le da_{dk} ;\,\forall i,j,d,k,t $$
(6)
$$ \sum\limits_{d \in D} {\sum\limits_{k \in H} {\sum\limits_{t \in T} {x_{ijdkt} = as_{ij} ;\,\forall i,\forall j} } } $$
(7)
$$ x_{ijdkt} \le e_{ijk} ;\,\forall i,d,j,k,t $$
(8)
$$ - B\left( {y_{ijp} - 1} \right) + ck_{ip} - ck_{ij} \ge 1;\,\forall i,j,p $$
(9)
$$ ck_{ij} \ge RT_{j} ;\,\forall i,j $$
(10)
$$ ck_{ij} \le DD_{j} ;\,\forall i,j $$
(11)
$$ ck_{ip} - ck_{ij} \ge et_{jp} ;\,\forall i,j,p $$
(12)
$$ ck_{ip} - ck_{ij} \le lt_{jp} ;\,\forall i,j,p $$
(13)
$$ ck_{ij} as_{ij} = \sum\limits_{d \in D} {\sum\limits_{k \in H} {\sum\limits_{t \in T} {x_{ijdkt} Tp_{t} ;\,\forall i,j} } } $$
(14)
$$ x_{ijdkt} \in \left\{ {0,1} \right\} $$
(15)
$$ ck_{ij} \cdot integer $$
(16)

The objective functions of the proposed model are shown in Eqs. (13). Equation (1) aims to minimize the total travel distance between the location of the patient and hospital, while Eqs. (2) and (3) aim to minimize the total least preference score and minimize the total maximum completion time of all patients (makespan), respectively. The constraints of the proposed model are presented in Eqs. (4)–(16). Equation (4) presents the maximum capacity of the doctor in each period. Equation (5) ensures that the doctor can treat the patients in each operation in each period with their maximum capacity. Equation (6) states that the patient must be treated by a doctor who works at those hospitals only. Equation (7) ensures that a patient must be treated for each operation by only one hospital for one period (\({a}_{ij}\) =1) and there is no need to assign patients to other hospitals in any period if patient i is not required to be treated with an operation j (\({a}_{ij}\) =0). Equation (8) specifies that each patient can be assigned to any eligible hospital to be treated with each of the operations. Equation (9) is a precedence constraint to ensure that the completion time of any operation must be greater than or equal to its ready time plus its processing time. Equations (10) and (11) state that the completion time of patient i operation j at hospital k must be between the patient’s ready time of that operation and the maximum specified age of a patient to perform that operation. Equations (12) and (13) explain the time gap limitation between operation j and p before starting the operation j. Equation (14) explains the completion time of patient i operation j. Equations (15) and (16) specify that decision variables are binary and integers, respectively.

Considering a multi-objective problem is more difficult to solve than a single-objective optimization problem. Normally, there is no single global solution, and it is necessary to determine a set of points that fit a predetermined definition for an optimum solution. The most common approach to multi-objective optimization is the weighted sum method. Therefore, this proposed mathematical model applied the weighted sum method to combine three objectives into a single objective. To assign the same magnitude to each objective function, all objective functions after normalization will be bounded as Eq. (17), in which \(Z^{\prime}\) is the normalized objective function, \(Z_{\min }\) is the minimum value of the objective function, and \(Z_{\max }\) is the maximum value of the objective function.

$$ Z^{\prime} = \frac{{Z - Z_{\min } }}{{Z_{\max } - Z_{\min } }} $$
(17)

According to the weighted sum method, the multi-objective problem can be formulated as the single-objective optimization problem following Eq. (18), in which \(w_{a}\) is the weighted value of ath objective function and \(Z^{\prime}_{a}\) is the normalized value of ath objective function:

$$ MinZ = w_{1} Z^{\prime}_{1} + w_{2} Z^{\prime}_{2} + w_{3} Z^{\prime}_{3} $$
(18)

Subject to

$$ Z_{1}{\prime} = \frac{{Z_{1} - Z_{1\min } }}{{Z_{1\max } - Z_{1\min } }} $$
(19)
$$ Z_{2}{\prime} = \frac{{Z_{2} - Z_{2\min } }}{{Z_{2\max } - Z_{2\min } }} $$
(20)
$$ Z_{3}{\prime} = \frac{{Z_{3} - Z_{3\min } }}{{Z_{3\max } - Z_{3\min } }} $$
(21)

And Eqs. (1)–(16)

The proposed mathematical model could pave the way to Artificial Intelligence (AI) and sustainability for smart decisions of CL/PTSP in hospitals and help improving performance opportunities for this challenging problem. Nevertheless, due to the limitations of the competence of an exact solution method for such a large problem (Boonmee et al., 2018) and the reduction of the investment cost of optimization software, this paper aims to propose the solution algorithm using DE for the CL/PTSP.

4 Solution algorithm

As mentioned in the introduction, this paper was motivated by the limitations of the exact method in solving CL/PTSP. Hence, this research study has focused on DE to plan CL/P patient scheduling. The details of DE, encoding and decoding scheme, and solution method are represented as follows.

4.1 Differential evolution (DE)

The Differential Evolution (DE) algorithm was originated by Storn and Price in 1995. Nowadays, DE is a high-performance tool for solving many combinatorial NP-hard problems since it can perform well in its searchability and convergence with less effort of computational times by using a few control variables. DE is a population-based random search approach that is like other Evolutionary Algorithms (EAs). The method of DE starts with a randomly generated initial population of size N. The population is represented by d dimensional vector and each variable value in the d dimensional space is represented by a real number. There are two key ideas that differentiate DE from other EAs is its mechanism for generating a new solution by particular mutation and crossover operations. At the initialization stage (g = 0), the jth value of the ith vector is generated according to the following Eq. (22).

$${x}_{i,j}^{0}=u({b}_{U}-{b}_{L})+{b}_{L}$$
(22)

The upper bound (bU,) and lower bound (bL) for the value in each dimension jth (j = 1, 2, 3, …, d) have to be specified, where u is uniformly random in the range from 0 to 1. The concept of the mutation operation of DE is reached by combining randomly selected vectors in order to produce a mutant vector. For each target vector (\({X}_{i}^{g}\)) at generation g, the mutant vector (\({V}_{i}^{g}\)) is generated as Eq. (23):

$${V}_{i,j}={X}_{r1}^{g}+F({X}_{r2}^{g}+{X}_{r3}^{g})$$
(23)

where Xr1, Xr2, Xr3 are vectors randomly selected from the current population. They are mutually exclusive and different from the target vector (\({X}_{i}^{g}\)). F is a scale factor that controls the scale of the differences of the vectors between Xr2 and Xr3. The DE applies a crossover operator on \({X}_{i}^{g}\) and \({V}_{i}^{g}\) to produce the trial vector (\({Z}_{i}^{g}\)). In this study, the binomial crossover is applied, in which the trial vector is formulated by the following Eq. (24):

$$ Z_{{i,j}}^{g} = \left\{ {\begin{array}{*{20}lllll} {v_{{i,j}}^{g} ,if\;\;u_{j} \le C_{j} \;\;or\;\;j = j_{u} } \\ {X_{{i,j}}^{g} ,\;\;\;otherwish} \\ \end{array} } \right. $$
(24)

where Cr is the crossover probability in the interval [0,1]. and ju is a randomly chosen index (ju ∈ {1, 2, …, D}). The Cr value controls the probability of selecting the value in each dimension from a mutant vector over its corresponding target vector. Next, the replacement or selection of an individual occurs only if the trial vector outperforms its corresponding vector. As a result, all individuals in the next generation are as good as or better than their counterparts in the current generation. The evolution procedure of the DE population continues through repeat cycles of the three key operations, which consist of mutation, crossover, and selection until certain stopping criteria are found. See more details in (Kachitvichyanukul & Nguyen, 2010; Nguyen et al., 2013). The evolution procedures of DE are illustrated in Fig. 1.

Fig. 1
figure 1

The evolution procedures of DE (Kachitvichyanukul & Nguyen, 2010)

4.2 Encoding and decoding scheme for CL/PTSP

The encoding procedures used in this study start by providing a range of dimensions to be equal to twice the total number of total operations of all patients. To understand more easily, this considers an example with three patients in which each patient is treated with three different operations as shown in Table 1. For this example, the number of dimensions is equal to 18. A random key representation is employed to encode the scheme for CL/PTSP as shown in Fig. 2, in which the encoding scheme is separated into two sections that consist of the encoding scheme of the sequence and the α-value (the α-value is the coefficient for calculating the hospital score). Each value in a dimension is randomly generated with a uniform random number (RN) between 0 and 1. The encoding scheme of the sequence for scheduling is firstly determined. The m-repetition of operations permutation and a sorting list rule are applied to assign the sequence of scheduling for patients. To decode these dimension values to a solution, the patient no.1 is first allocated to the dimension with the sorted value of the random number, then patient no.2 and patient no.3 are allocated, respectively, as shown in Fig. 3b. When the number of dimensions is sorted by ascending value again, the sequence of the scheduling of all patients is presented. The operations of each patient are assigned to the associated procedure of the treatment plan. These procedures result in a completed assignment for CL/PTSP as shown in Fig. 3c. To assign the parameter (α-value) for generating the hospital score for the assignment of each operation to each hospital, the encoding scheme of the α-value is directly employed to each operation of each patient. From Fig. 2, the RN in dimension no. 10–18 is assigned to dovetail with the decoding scheme of the sequence for scheduling as shown in Fig. 3c. Finally, the decoding scheme of CL/PTSP is completed as shown in Fig. 3d.

Table 1 The procedure of the treatment plan of each patient
Fig. 2
figure 2

An encoding scheme for CL/PPSP

Fig. 3
figure 3

A decoding scheme for CL/PPSP: a the sorted value of the RN, b the allocation of patients to the dimensions, c the sorted value of the number of dimensions and the assignment of operation to the patient, and d the completed decoding scheme of CL/PPSP

4.3 CL/PTSP solution

After the decisions on the sequence for CL/PTSP is made, the method of scheduling of the CL/P treatment is proposed. The pseudo-code to determine the CL/PTSP is presented in Fig. 4. Initially, the algorithm is started with inputting all necessary data including the ready time for starting operation, the due date of completing an operation, the capacity of hospitals, hospital eligibility, least preference score, treatment requirement, the minimum and maximum time gap between each operation, and the assignment of sequence for CL/PTSP based on the decoding scheme in Sect. 4.2. The first sequence from the decoding scheme is firstly started. The ready time for the treatment of patient i in operation j is set as the first period for finding the suitable period, then that period t is checked based on the consideration of the previous operation (p < j), the minimum time gap (etjp), and the maximum time gap (ltjp) between operation j and p before starting the operation j. If any operations before operation j are treated in that time or the condition of time gap between each operation is not correctly following the protocol, the operation j of patient i is determined for the treatment in the next period. Once a suitable period is found, the hospital selection is generated. To select the suitable hospital for each operation in each patient following the objective functions of travel distance (Z1) and the least preference score (Z2), the score of each hospital is calculated via using the α-value from the decoding scheme following the equation in step III in Fig. 4. Then the hospital that obtained the least score is firstly considered for treating the operation j of patient i. To confirm hospital k is able to treat the patient i in operation j, the eligibility of hospital k is checked. If that hospital is not able to treat the patient i in operation j, the next hospital that obtained the next higher score is considered. Furthermore, if all hospitals in that period k cannot treat the patient i in operation j, this patient is determined in the next period again. Once the hospital can pass the condition of eligibility, the doctor is determined. The doctor must work at that hospital and can treat the patient i in operation j at period t within her/his limited capacity. Finally, the age limitation of the operation j is checked based on the consideration of the ready time of staring operation j (RTj) and the due date of completing operation j (DDj). When all conditions are corrected, the patient i in operation j is scheduled in the appointment table.

Fig. 4
figure 4

Pseudo code for CL/PTSP

5 Computational experiments

5.1 Test problems and parameter setting

To test the proposed mathematical model and the proposed algorithm, a numerical case is given to illustrate the solution methods of the proposed CL/PTSP model. To make the problem practical, the computational experiments are executed using the simulated data according to the real treatments of CL/P patients. Four main parameters—number a number of patients, a list of operations, a number of hospitals, and a number of doctors—are generated along with other parameters such as hospital eligibility for different operations, hospital capacity, and hospital preference for patients. Each operation is scheduled on a weekly basis over a planning horizon. Fifteen numerical problems are generated as shown in Table 2 based on the real data of Table 3, 4, 5 and 6.

Table 2 Test problems for CL/PPSP
Table 3 The treatment protocol of a CL/P patient
Table 4 The time gap condition between operations
Table 5 The treatment protocol for each type of CL/P
Table 6 The treatment eligibility of hospitals

All problems were solved by an exact method using LINGO optimization solver version 14.0 for evaluation of the proposed mathematical model, while the metaheuristic method was evaluated using the C# language of Microsoft Visual Studio 2019. All tests were carried out on a personal computer with an Intel (R) Core (TM) i7-6700 CPU (3.40 GHz) and 16 GB of RAM. In this study, two metaheuristic approaches are proposed to solve the CL/PTSP: Differential Evolution (DE) and the Particle Swarm Optimization with combined gbest, lbest and nbest social structures (GLNPSO), which considers multiple social learning terms. In both algorithms, the function evaluations are set as a fixed value of 100,000 so that sufficient function evaluations are allowed in order to find the best solution. To determine the appropriate parameters of GLNPSO and DE, firstly, the preliminary experiments are conducted with four different values of each parameter. Then, for each parameter, while the values of the other parameters are fixed, the outstanding parameter values out of all other parameter values are identified according to the fitness value obtained from the algorithm. The following combinations of the parameter’s suitable values are further tested for each size of the specified instance. A full factorial design is conducted to determine the best parameter setting, as shown in Table 7. The Minitab software was employed to identify suitable parameters based on six replications. After the response optimizer is generated, the results indicate that the best solution quality is obtained from the parameter setting as is shown in Table 8 and Fig. 5. Hence, this method will be used in the following computational study.

Table 7 The full factorial design for parameters setting in DE and GLNPSO
Table 8 The suitable parameters setting
Fig. 5
figure 5

The output of optimal parameters from the Minitab software

5.2 Experimental results

The numerical results obtained from the DE are compared with those obtained from the GLNPSO under the same conditions, which are encoding and decoding schemes. Table 9 shows the results of the CL/PTSP such as the optimal (feasible) solution; the best, average and standard deviations of the fitness value from ten runs of each algorithm for each case; the objective functions; run time; Relative Improvement (RI) of the best and average solutions obtained from the GLNPSO and DE (Evaluation from Eq. 25); and p-value of a two-sample t-test for comparing the results of two algorithms at a 95% confidence level.

$$ \text{RI} = \, \left( {{\text{Sol}}_{{{\text{GLNPSO}}}} {-}{\text{ Sol}}_{{{\text{DE}}}} } \right)/{\text{ Sol}}_{{{\text{DE}}}} ) \times {1}00 $$
(25)

where RI:The relative improvement (%) between SolGLNPSO and SolDE.

Table 9 The results of the experiment

The results of the proposed mathematical model and the proposed algorithm suggest that the solutions of identifying a list of selected treatments, assigning each operation of patients to the selected hospital, and identifying the period of the selected treatment are correct and reasonable. For problem NO. 1, the result from the LINGO software found that the maximum completion time of all patients is equal to 13 weeks, while the total least preference score is equal to 17 and the total travel distance is equal to 236. The solution of CL/PTSP for problem NO. 1 was illustrated in Fig. 6. The solution of problem NO. 1 obtained from the DE and GLNPSO also presented the same solution to the exact method. For not only problem NO. 1 but also problem NO. 2 and problem NO. 3, both algorithms could reach the optimal solution the same as the exact method. However, when problem NO. 4 is tested, the exact method could not seek the solution within a reasonable computing time (10 h.). On the other hand, as the problem size increases, the DE and GLNPSO showed their potential in solving the larger problems (problem NO. 4–15) without difficulties.

Fig. 6
figure 6

The solution of CL/PTSP for the numerical problem NO. 1

To compare the degree of performance of DE and GLNPSO, the results of the RI are shown in Fig. 7. According to the results from Table 9 and Fig. 7, most of the best solutions obtained from the DE algorithm were better than those obtained from GLNPSO, with relatively faster computing times, while there were just problems NO. 9 and 11 for which the best value displayed a higher performance than DE. Nevertheless, when the average solutions were focused, only problem NO. 11, the GLNPSO generally yields outstanding results to the DE. Furthermore, the statistical t-test could indicate that most of the average solutions obtained from the DE algorithm were significantly less than the average solutions obtained from GLNPSO (except for problem NO. 11), in which the p-value was less than 0.05. The average convergence graphs were also observed using the average fitness value versus the number of iterations, as shown in Fig. 8. Figure 8 shows that the convergence behavior of DE is faster than the GLNPSO; this means that the DE could seek equal or better solutions using a fewer number of function evaluations.

Fig. 7
figure 7

The RI of each solution between DE and GLNPSO

Fig. 8
figure 8

Comparison of convergence behavior between DE and GLNPSO

6 Real-world application

The proposed decision support system is proposed to apply to the local hospital in Northern Thailand. The case study was founded for servicing the CL/P patients in the eight provinces of upper northern Thailand (Chiang Rai, Chiang Mai, Nan, Phayao, Phrae, Mae Hong Son, Lampang, and Lamphun). To treat CL/P patients, a multidisciplinary team is established that comprises plastic surgeons, neurosurgeons, otolaryngologists, ophthalmologists, anesthesiologists, orthodontists, and nurses. The network of the case study is decentralized to many hospitals in eight provinces in order to service the patients. The case study is the main center of the network. Only four hospitals in northern Thailand can provide the CL/P treatments. Nowadays, the number of CL/P patients in northern Thailand has been increasing. The case study must support about 1,744 patients. This center plays a role in providing treatment services for CL/P patients from the womb and while growing up to allow the patient to have a good quality of life at any age until normally living and working with other people (Suwiwattana et al., 2020). The standard treatment protocol (0–2 years) for patients is presented in Table 3. At each age, specific treatments are assigned to treat the patients by multidisciplinary teams in multiple periods over a particular time horizon. Any delay occurring within the treatment plan affects the treatment effectiveness and time plan.

Due to the complicated processes, the increasing number of patients, and limitation of resources including capacity and eligibility, the scheduling issue has been becoming a major problem at the present to manage these patients. To aid the case study and the patients, the best schedule of each patient should be determined under the minimization of makespan, minimization of travel distance, and minimization of total least preference assignment score. Three objective functions are the main issue of a patient’s needs in this case study. Nowadays, the treatment schedule of the case study is planned by the administrators using the administrator’s experience without any decision support systems. Therefore, administrators cannot reach an effective treatment schedule. Additionally, there are sometimes some errors in scheduling the treatments.

To create a smart decision support system for helping the administrators’ and patients’ needs, this paper proposed a CL/P scheduling program for this case study via the proposed algorithm in Sect. 4. The proposed algorithm is applied in this program for identifying a list of selected treatments, assigning each operation of patients to the selected hospital, and identifying the period of the selected treatment. The feature design of the proposed program is illustrated in Fig. 9. From Fig. 9, eight functions are formulated for monitoring each piece of data; the functions are the main page, patient data, appointment scheduling, hospital data, doctor data, operation data, setting data, and scheduling. To input the input data, the staff can input the data in five functions: patient data function, hospital data function, doctor data function, operation data function, and setting data function. Each of these functions can remove or add the data before scheduling via the proposed algorithm. After the proposed algorithm solves CL/PTSP under those data, the solutions were represented in the appointment schedule function. The solution showed the guideline for making the appointment in each period under multi-hospitals as shown in Fig. 9. Each operation of patients is represented in each box. Once the administrators agree to make the appointment, the staff will click the button and then select the date of appointment in that period as shown in Fig. 10. After the appointment is achieved, the status of that patient is recorded to schedule the appointment. When an emergency case or preemptive case occurs, the staff can postpone the treatment in the next period by clicking on the button (postponement) and changing the date. When that operation is servicing for treatment in each hospital, the status of the patient is changed to “in progress”. Finally, when the operation is done, the status of the patient is changed to “completed”.

Fig. 9
figure 9

The feature design of the CL/P scheduling program

Fig. 10
figure 10

The feature design of the appointment function

To employ the CL/P scheduling program in this case study, the steps of scheduling are illustrated in Fig. 11. Firstly, the data is input into the program such as patient data, doctor data, hospital data, distance data, and operation data. Then, the DE parameter is set for generating the schedule. However, this paper recommends using the proposed parameters. Next, all data is run via the proposed algorithm. After the scheduling guideline is proposed, the administrators need to make the appointment. If an emergency case is found, a new appointment can be made. Finally, the progress treatment and completion treatment are determined respectively. As preemptive cases come, the staff can make an appointment immediately under consideration of the capacity in each period. The treatment of new patients with an emergency case is based on the decision of doctors. In this case, the system is rescheduled every year for updating the information.

Fig. 11
figure 11

The procedure for using the CL/P scheduling program

The CL/P scheduling program can be a decision support system in helping the staff for scheduling the patients under patients’ needs including the minimization of makespan time and minimization of least preference score based on the travel distance between the patient’s location and hospital’s location for reducing the travel cost or travel distance. The case study can manage the resources easily including doctors from the multidisciplinary, surgery room, etc. Every staff can schedule without deep experience and knowledge. Moreover, this program is also able to reduce the error from the nurses or staff for appointment scheduling. Based on the existing method, only one staff at each sub-hospital can make the schedule and the staff takes 5–10 min per patient for scheduling. However, when this problem is employed, 120 patients with 19 operations can be scheduled within 5–10 min. This problem can reduce not only the time of scheduling but also the number of procedures for scheduling as well. To verify and validate the developed programing, 10 staff were trained for using this program. Finally, the evaluation form of the developed program was surveyed. The results show that most of the staff satisfy with the proposed program. However, the developed program might be difficult in some special cases such as additional surgery, additional procedure, or reprocessing of treatment. Nowadays, the Technology Licensing Office/University Business Incubator warrants the proposed program at TRL 4 of the technology readiness scale.

7 Conclusion

This paper proposes a treatment scheduling method for CL/PTSPs using a DE algorithm. The goal is to identify a list of selected treatments, assign each operation of patients to the selected hospital, and identify the period of the selected treatment under different eligible hospitals, capacity limitations, treatment age limitations, multi-hospital assignment, multidisciplinary care team assignment, and multi-period. Not only the multiple objective mixed-integer linear programming model but also the solution algorithm using DE are formulated for CL/PTSPs under three objective functions: the minimization of makespan, travel distance, and total least preference assignment score. Finally, a smart decision support system is proposed to employ in the northern Thailand hospital case study by applying the proposed algorithm using DE. The results show that the program can be a smart decision support system in helping the administrators for scheduling the CL/P patients. Moreover, this smart decision support system is also able to reduce the errors from the nurses or staff for the appointment scheduling significantly.

Nevertheless, CL/PTSP is usually discussed under the assumption that all parameters are deterministic variables, and only non-preemptive cases are considered. In practice, some of these assumptions are unrealistic. The hospital may be subjected to unpredictable conditions of its capacity and treatment durations. Hence, to solve the real-world problem, further research should consider preemption and priority. Furthermore, the arrival of emergency or urgent treatment may occur and result in preemptions in the scheduling. Hence, further research should be focused on stochastic modeling (Bazirha et al., 2021; Pervin et al., 2018; Temoçin & Weber, 2014), robust modeling (Golpîra & Tirkolaee, 2019; Tirkolaee et al., 2020a, 2020b) or fuzzy modeling (Das et al., 2020; Goli et al., 2021; Tirkolaee et al., 2021) for handling uncertainty in real-world practices. To find a better solution with the short running time, the new meta, modified, or hybrid heuristic should be developed for CL/PTSP.