# Outpatient Appointment Optimization: A Case Study of a Chemotherapy Service

^{1}

^{2}

^{3}

^{*}

## Abstract

**:**

## Featured Application

**This study provides a procedure-detailed scientific approach for the outpatient planning problem at the chemotherapy department.**

## Abstract

## 1. Introduction

## 2. Problem Description

#### 2.1. Outpatient Scheduling Problem

**Pharmacy:**a resource only available during the predefined opening hours. The capacity of the pharmacy is considered unlimited.**Doctor:**a discrete time-varying resource. A doctor can receive a maximum of one patient at a time.**Nurse:**a discrete time-varying shared resource. Each nurse can install a patient to a seat or simultaneously monitor at most $\mathsf{\Psi}$ patients.**Seat:**a constant renewable resource. Each patient occupies a seat from the beginning of installation until the end of the session of care.

#### 2.2. Problem Categorization

**Flow Shop problems**. In addition, according to the capacity of different types of resources, the last stage (monitoring) can be executed for multiple patients in parallel. The problem is classified to be a

**Hybrid Flow Shop**scheduling problem. Since each care session has four operations, we denote $\mathsf{\alpha}=FH4$.

#### 2.3. Problem Complexity

**consultation**and

**installation**time are zero, the considered problem without resources constraints is reduced to the two stages Flow Shop problem, which is

**NP-hard**[10]. Furthermore, the resource variation is usually seen as an element that makes the planning/scheduling problem harder to solve [11]. Our problem thus should be at least

**NP-hard**.

## 3. Literature Review

## 4. Mathematical Model

- Each operation o can be started and ended only once:$$\begin{array}{cc}\hfill \sum _{j\in \mathcal{J}}\sum _{h\in \mathcal{H}}{\sigma}_{i,k,j,h}^{o}& =1\hfill \end{array}$$$$\begin{array}{cc}\hfill \sum _{j\in \mathcal{J}}\sum _{h\in \mathcal{H}}{\chi}_{i,k,j,h}^{o}& =1\hfill \end{array}$$
- The processing time ${p}_{i,k,j,h}^{o}$ of an operation o must be equal to the difference between the starting time ${\sigma}_{i,k,j,h}^{o}$ and the completion time ${\chi}_{i,k,j,h}^{o}$:$${\sigma}_{i,k,j,h}^{o}={\chi}_{i,k,j,h+{p}_{i,k}^{o}}^{o}$$
- Given a date j, the completion indicator variable $\sum _{{h}^{\prime}\le h}}{\chi}_{i,k,j,{h}^{\prime}}^{o$ checks whether the operation o is completed by the moment h. Therefore, if an operation $\widehat{o}$ succeeds o, the starting time of $\widehat{o}$ must not exceed o’s completion indicator:$${\sigma}_{i,k,j,h}^{\widehat{o}}\le \sum _{{h}^{\prime}\le h}{\chi}_{i,k,j,{h}^{\prime}}^{o}$$
- Since $\sum _{h\in \mathcal{H}}}{\chi}_{i,k,j,h}^{D$ indicates if the session k happens on day j, one can use the following formula to extract the index of the day when the treatment session happened:$${j}_{i,k}=\sum _{j\in \mathcal{J}\backslash \left\{0\right\}}\left(j\times \sum _{h\in \mathcal{H}}{\chi}_{i,k,j,h}^{D}\right)$$One can find the completion time of a process by a similar manner:$${h}_{i,k}=\sum _{j\in \mathcal{J}\backslash \left\{0\right\}}\sum _{h\in \mathcal{H}}h\times {\chi}_{i,k,j,h}^{D}$$From (4), (7) and (8), we can rewrite the completion time of a session k by multiplying ${j}_{i,k}$ the number of passing days by H the number of timeslots per day then adding up with ${h}_{i,k}$ the elapsed time of the treatment:$$\begin{array}{cc}\hfill {C}_{i,k}& =H\times \left({j}_{i,k}-1\right)+\left({h}_{i,k}-1\right)\hfill \\ \hfill \phantom{\rule{1.em}{0ex}}& =H\times \left(\sum _{j\in J\backslash \left\{0\right\}}j\times \sum _{h\in H}{\chi}_{i,k,j,h}^{D}-\sum _{j\in J\backslash \left\{0\right\}}\sum _{h\in H}{\chi}_{i,k,j,h}^{D}\right)+\hfill \\ \hfill \phantom{\rule{1.em}{0ex}}& \phantom{\rule{1.em}{0ex}}\phantom{\rule{1.em}{0ex}}+\left(\sum _{j\in J\backslash \left\{0\right\}}\sum _{h\in H}h\times {\chi}_{i,k,j,h}^{D}-\sum _{j\in J\backslash \left\{0\right\}}\sum _{h\in H}{\chi}_{i,k,j,h}^{D}\right)\hfill \\ \hfill \phantom{\rule{1.em}{0ex}}& =H\times \sum _{j\in J\backslash \left\{0\right\}}\sum _{h\in H}\left(j-1\right)\times {\chi}_{i,k,j,h}^{D}+\sum _{j\in J\backslash \left\{0\right\}}\sum _{h\in H}\left(h-1\right)\times {\chi}_{i,k,j,h}^{D}\hfill \\ \hfill \phantom{\rule{1.em}{0ex}}& =\sum _{j\in J\backslash \left\{0\right\}}\sum _{h\in H}\left(H\times \left(j-1\right)+\left(h-1\right)\right){\chi}_{i,k,j,h}^{D}\hfill \end{array}$$
- Given a date j, the resource usage at the time h is determined by the execution of operation o, which is calculated by the sum of the difference of the starting time indicator variable ${\sigma}_{i,k,j,{h}^{\prime}}^{o}$ and the completion time indicator variable ${\sigma}_{i,k,j,{h}^{\prime}}^{o}$ from time 0 to h: $\sum _{{h}^{\prime}\le h}}\left({\sigma}_{i,k,j,{h}^{\prime}}^{o}-{\chi}_{i,k,j,{h}^{\prime}}^{o}\right)$.

**Operations:**(11) obligates any operation to start and end exactly once on the horizon, according to (3). (12) makes each operation non-preemptive, which means that, once an operation starts, it must be processed without interruption. Equation (13) makes their start and end dates the same (outpatient regime). For each session, three stages (consultation, installation, and administration) are on a same day (14). However, since day 0 is a dummy day to allow for mixing the drug in advance, if possible, for day 1, these three steps are prohibited on day 0 (15).According to the order of operations, the installation never precedes consultation (16). The mixing, if a priori preparation is authorized (${e}_{i,k}^{C}=1$), can proceed at most one day before the day of treatment session (17); otherwise, it follows the end of consultation (18). Finally, monitoring starts when the patient has been fully installed (19) and the drug is available (20).**Appointments**: Each patient has a set of appointments in which the time-lags have been decided beforehand in terms of days (21).**Seats:**A patient occupies one seat from the beginning of installation until finishing the monitoring (22).**Doctors:**One doctor takes in one patient at a time (23).**Nurses:**A nurse can either install a patient into a seat or monitor a group of $\mathsf{\Psi}$ patients (24).**Pharmacy:**Unlimited orders are allowed to process in parallel as long as the mixing procedures are in the pharmacy’s opening time (25).

## 5. Resolution Methods

#### 5.1. Dispatching Rule Heuristics

#### 5.2. Genetic Algorithm

**Encoding:**We encode a chromosome as an ordinal sequence of patients, i.e., a chromosome is a permutation of the list of patients because we try to determine a priority list to schedule with FFS, similar to the priority-based heuristics earlier.**Initial population:**Given the permutation encoding scheme above, the initial population is created by randomly shuffling ${N}_{P}$ times the set of patients $\left\{1,2,\dots ,n\right\}$.**Selection: Tournament Selector**(TS) is chosen because of its $O\left(n\right)$ time complexity and easy parallelization for speeding up calculation in practical use. Furthermore, while a large tournament results in loss of diversity, a binary tournament performance is generally inferior to a three-tournament. Hence, the tournament size is fixed by 3.Let us denote ${F}_{O}\phantom{\rule{0.166667em}{0ex}}\left(0\le {F}_{O}\le 1\right)$ as the fraction of population selected to give offspring.**Population management:**Denote ${F}_{S}\left(=1-{F}_{O}\right)$ as the fraction of current population that we want to keep for the next generation in order to preserve diversity. The population is kept constant by combining the children ($\u2308{F}_{O}\times {N}_{P}\u2309$) and parents ($\u230a{F}_{S}\times {N}_{P}\u230b$).**Stop condition:**The process is terminated after ${N}_{G}$ successive generations that the objective value of the incumbent has not been changed.

## 6. Computational Results

#### 6.1. Instance Generation

**resources availability**(seats M, doctors $D(j,h)$, nurses $I(j,h)$, pharmacy unit $F(j,h)$), and

**planning requests**($\left\{{\mathsf{\Theta}}_{1},{\mathsf{\Theta}}_{2},\dots ,{\mathsf{\Theta}}_{n}\right\}$ with n number of patients).

- The number of seats M is 30.
- Horizon is 4 weeks ($J=28$), and each day consists of 22 time slots ($H=22$).
- The maximal number of patients a nurse can monitor simultaneously: $\mathsf{\Psi}=6$.
- Human resources’ presence are generated using a discrete uniform distribution ($\mathrm{unif}$), of which the amount is an integer number varying between 0 (unavailable) and the maximum (fully available), noted as $\mathrm{unif}\left[0;\phantom{\rule{0.166667em}{0ex}}M\right]$ with M the major bound the resource capacity. Historical data gives us ${N}_{D}=5,\phantom{\rule{0.166667em}{0ex}}{N}_{I}=6$ maximal number of doctors and nurses, respectively. Unlimited resource such as pharmacy could use 1 to represent to up state (open) and 0 for down state (close).We divide further the resources’ availability into four different scenarios to represent the reality:
- -
**Uniform:**$D\left(j,h\right)\sim \mathrm{unif}\left[0;\phantom{\rule{0.166667em}{0ex}}{N}_{D}\right];\phantom{\rule{0.166667em}{0ex}}I\left(j,h\right)\sim \mathrm{unif}\left[0;\phantom{\rule{0.166667em}{0ex}}{N}_{I}\right];\phantom{\rule{0.166667em}{0ex}}F\left(j,h\right)\sim \mathrm{unif}\left[0;\phantom{\rule{0.166667em}{0ex}}1\right]$.- -
**Daily:**Similar to**Uniform**, but the distribution is repeated daily.- -
**Weekly:**Similar to**Uniform**, but the distribution is repeated weekly.- -
**Weekend:**Similar to**Uniform**but no resource available on weekends, simulating the current working schedule at the service.

- For each request of indexed i patient, we define the following:
- -
- Number of required sessions $\left|{\mathsf{\Theta}}_{i}\right|\sim \mathrm{unif}\left[1;3\right]$.
- -
- Time-lag ${\Delta}_{i,k}\sim \mathrm{unif}\left[1;3\right]$, except ${\Delta}_{i,1}=0$.
- -
- Consultation time ${p}_{i,k}^{A}\sim \mathrm{unif}\left[0;1\right]$ (yes or no).
- -
- Installation time ${p}_{i,k}^{B}=1$.
- -
- Drug mixing time ${p}_{i,k}^{C}\sim \mathrm{unif}\left[0;3\right]$.
- -
- Authorization of a priori drug mixing ${e}_{i,k}^{C}\sim \mathrm{unif}\left[0;1\right]$ (yes or no).
- -
- Treatment time ${p}_{i,k}^{D}\sim \mathrm{unif}\left[0;3\right]$.

- ${N}_{a}$, which is the total number of treatment sessions, takes a value from {15; 30; 60; 90; 120; 150; 180; 210}. In order to avoid service congestion, given the limited resources, we have fixed the maximum number of treatment sessions to 210.

- Solver CPLEX 12.10 solves the MILP within a time limit of 1 hour by using one CPU thread.
- Heuristic approaches are implemented purely on Java 8.
- Genetic algorithm’s implementation based on Jenetic library 5.0 [35].

#### 6.2. Calibration on the Genetic Algorithm

**Easy**(low GAP): 90 weekly 3 ($GAP=0.10\%$).**Normal**(medium GAP): 180 daily 8 ($GAP=12.74\%$).**Hard**(high GAP): 210 daily 9 ($GAP=44.40\%$).

Algorithm 1: Pseudo-code for the genetic algorithm |

#### 6.3. Numerical Test Results

**Low performance:**including RLIPT-ID, RLIPT-II, SIPT, SPT in which the GAP vastly climbed from under $10\%$ to over $20\%$, even $35\%$ in weekend’s scenario.**Medium performance:**including RLIPT-DD, RLIPT-DI, LIPT, LPT, in which the GAP increased arguably slower than**low**group and stayed overall below $15\%$.**Good performance:**including MILP and GA, which in most cases give lower GAPs than the**medium**group, generally under $10\%$.

**low**group puts the short jobs at the top of their list, while the

**medium**group plans the long jobs first. Hence, good heuristics should focus on the number of appointments and the total processing time.

**The number of treatment sessions in a sequence**is probably critical for better performance, confirming our intuition for the RLIPT priority rule.

## 7. Conclusions and Future Works

## Author Contributions

## Funding

## Data Availability Statement

## Acknowledgments

## Conflicts of Interest

## References

- Hesaraki, A.F. Tactical & Operational Models for Scheduling Chemotherapy Appointments. Ph.D. Thesis, Technische Universiteit Eindhoven, Eindhoven, The Netherlands, 2019. [Google Scholar]
- Tran, Q.N.H.; Chehade, H.; Nguyen, N.Q.; Laplanche, D.; Sanchez, S.; Sadeghi, R.; Dugardin, F. Optimization of Chemotherapy Planning. In Proceedings of the International Conference on Optimization and Learning (OLA2020), Cádiz, Spain, 17–19 February 2020. [Google Scholar]
- Condotta, A.; Shakhlevich, N. Scheduling Patient Appointments via Multilevel Template: A Case Study in Chemotherapy. Oper. Res. Health Care
**2014**, 3, 129–144. [Google Scholar] [CrossRef] [Green Version] - Graham, R.L.; Lawler, E.L.; Lenstra, J.K.; Kan, A.H.G.R. Optimization and Approximation in Deterministic Sequencing and Scheduling: A Survey. In Annals of Discrete Mathematics; Volume 5, Discrete Optimization II; Hammer, P.L., Johnson, E.L., Korte, B.H., Eds.; Elsevier: Amsterdam, The Netherlands, 1979; pp. 287–326. [Google Scholar] [CrossRef] [Green Version]
- Blazewicz, J.; Lenstra, J.K.; Kan, A.H.G.R. Scheduling Subject to Resource Constraints: Classification and Complexity. Discret. Appl. Math.
**1983**, 5, 11–24. [Google Scholar] [CrossRef] [Green Version] - Weglarz, J. Project Scheduling: Recent Models, Algorithms and Applications; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2012. [Google Scholar]
- Wang, B.; Huang, K.; Li, T. Permutation Flowshop Scheduling with Time Lag Constraints and Makespan Criterion. Comput. Ind. Eng.
**2018**, 120, 1–14. [Google Scholar] [CrossRef] - Bianco, L.; Caramia, M. An Exact Algorithm to Minimize the Makespan in Project Scheduling with Scarce Resources and Generalized Precedence Relations. Eur. J. Oper. Res.
**2012**, 219, 73–85. [Google Scholar] [CrossRef] - Yalaoui, F.; Chu, C. Parallel Machine Scheduling to Minimize Total Completion Time with Release Dates Constraints. IFAC Proc. Vol.
**2000**, 33, 715–722. [Google Scholar] [CrossRef] - Lenstra, J.K. Sequencing by enumerative methods. Ph.D. Thesis, Universiteit van Amsterdam, Amsterdam, The Netherlands, 1976. [Google Scholar]
- Nguyen, N.Q.; Yalaoui, F.; Amodeo, L.; Chehade, H.; Toggenburger, P. Electrical Vehicle Charging Coordination Algorithms Framework. In Studies in Systems, Decision and Control; Springer International Publishing: Berlin/Heidelberg, Germany, 2018; pp. 357–373. [Google Scholar] [CrossRef]
- Ernst, A.; Jiang, H.; Krishnamoorthy, M.; Sier, D. Staff Scheduling and Rostering: A Review of Applications, Methods and Models. Eur. J. Oper. Res.
**2004**, 153, 3–27. [Google Scholar] [CrossRef] - Burke, E.K.; De Causmaecker, P.; Berghe, G.V.; Van Landeghem, H. The State of the Art of Nurse Rostering. J. Sched.
**2004**, 7, 441–499. [Google Scholar] [CrossRef] - Gupta, D.; Denton, B. Appointment Scheduling in Health Care: Challenges and Opportunities. IIE Trans.
**2008**, 40, 800–819. [Google Scholar] [CrossRef] - De Causmaecker, P.; Vanden Berghe, G. A Categorisation of Nurse Rostering Problems. J. Sched.
**2011**, 14, 3–16. [Google Scholar] [CrossRef] [Green Version] - Berg, B.; Denton, B.T. Appointment Planning and Scheduling in Outpatient Procedure Centers. In Handbook of Healthcare System Scheduling; Hall, R., Ed.; Springer: Boston, MA, USA, 2012; Volume 168, pp. 131–154. [Google Scholar] [CrossRef]
- Saville, C.E.; Smith, H.K.; Bijak, K. Operational Research Techniques Applied throughout Cancer Care Services: A Review. Health Syst.
**2017**, 8, 52–73. [Google Scholar] [CrossRef] [PubMed] [Green Version] - Ahmadi-Javid, A.; Jalali, Z.; Klassen, K.J. Outpatient Appointment Systems in Healthcare: A Review of Optimization Studies. Eur. J. Oper. Res.
**2017**, 258, 3–34. [Google Scholar] [CrossRef] - Marynissen, J.; Demeulemeester, E. Literature Review on Multi-Appointment Scheduling Problems in Hospitals. Eur. J. Oper. Res.
**2018**, 272, 407–419. [Google Scholar] [CrossRef] - Artigues, C.; Gendreau, M.; Rousseau, L.M.; Vergnaud, A. Solving an Integrated Employee Timetabling and Job-Shop Scheduling Problem via Hybrid Branch-and-Bound. Comput. Oper. Res.
**2009**, 36, 2330–2340. [Google Scholar] [CrossRef] [Green Version] - Hahn-Goldberg, S.; Beck, J.C.; Carter, M.W.; Trudeau, D.M.; Sousa, P.; Beattie, K. Solving the Chemotherapy Outpatient Scheduling Problem with Constraint Programming. J. Appl. Oper. Res.
**2014**, 6, 10. [Google Scholar] - Liang, B.; Turkcan, A. Acuity-Based Nurse Assignment and Patient Scheduling in Oncology Clinics. Health Care Manag. Sci.
**2016**, 19, 207–226. [Google Scholar] [CrossRef] [PubMed] - Legrain, A.; Omer, J.; Rosat, S. A Rotation-Based Branch-and-Price Approach for the Nurse Scheduling Problem. Math. Program. Comput.
**2020**, 12, 417–450. [Google Scholar] [CrossRef] - Menting, J.A.; Menting, J. Planning and Scheduling under Uncertainty in Oncology Day Care. Master Thesis, Eindhoven University of Technology, Eindhoven, The Netherlands, 2014. [Google Scholar]
- Turkcan, A.; Zeng, B.; Lawley, M. Chemotherapy Operations Planning and Scheduling. IIE Trans. Healthc. Syst. Eng.
**2012**, 2, 31–49. [Google Scholar] [CrossRef] - Nguyen, N.Q.; Yalaoui, F.; Amodeo, L.; Chehade, H.; Toggenburger, P. Solving a Malleable Jobs Scheduling Problem to Minimize Total Weighted Completion Times by Mixed Integer Linear Programming Models. In Intelligent Information and Database Systems; Lecture Notes in Computer Science; Nguyen, N.T., Trawiński, B., Fujita, H., Hong, T.P., Eds.; Springer: Berlin/Heidelberg, Germany, 2016; pp. 286–295. [Google Scholar] [CrossRef]
- Kolisch, R.; Hartmann, S. Heuristic Algorithms for the Resource-Constrained Project Scheduling Problem: Classification and Computational Analysis. In Project Scheduling: Recent Models, Algorithms and Applications; International Series in Operations Research & Management Science; Węglarz, J., Ed.; Springer: Boston, MA, USA, 1999; pp. 147–178. [Google Scholar] [CrossRef]
- Swamidass, P.M. Shortest Processing Time (SPT). In Encyclopedia of Production and Manufacturing Management; Springer: Boston, MA, USA, 2000; pp. 686–687. [Google Scholar]
- Alvarez-Valdes, R.; Tamarit, J.M. Heuristic Algorithms for Resource Constrained Project Scheduling: A Review and an Empirical Analysis. In Advances in Project Scheduling; Elsevier: Amsterdam, The Netherlands, 1989; pp. 113–134. [Google Scholar]
- Leeftink, A.G.; Bikker, I.A.; Vliegen, I.M.H.; Boucherie, R.J. Multi-Disciplinary Planning in Health Care: A Review. Health Syst.
**2018**, 9, 95–118. [Google Scholar] [CrossRef] [PubMed] [Green Version] - Grefenstette, J.J. Genetic Algorithms for the Traveling Salesman Problem. In Proceedings of the First International Conference on Genetic Algorithms and Their Applications, Pittsburg, PA, USA, 24–26 July 1985; Psychology Press: Hove, UK, 1985. [Google Scholar]
- Abdoun, O.; Abouchabaka, J.; Tajani, C. Analyzing the Performance of Mutation Operators to Solve the Travelling Salesman Problem. Int. J. Emerg. Sci.
**2012**, 2, 61–77. [Google Scholar] - Larrañaga, P.; Kuijpers, C.; Murga, R.; Inza, I.; Dizdarevic, S. Genetic Algorithms for the Travelling Salesman Problem: A Review of Representations and Operators. Artif. Intell. Rev.
**1999**, 13, 129–170. [Google Scholar] [CrossRef] - Tran, Q.N.H. CHT-I. 2021. Available online: https://github.com/qnhant5010/CHT-I (accessed on 16 November 2021).
- Wilhelmstötter, F. Jenetics: Java Genetic Algorithm Library. 2019. Available online: https://jenetics.io/ (accessed on 21 March 2020).

**Figure 3.**Gantt diagram of a particular case: no consultation, and drug mixing is allowed to process in advance.

**Figure 5.**Example of

**PMX**taken from [33]. Commencing with uniformly random two cut points, the subsequences passed to children (${p}_{1}\to {c}_{2};\phantom{\rule{0.166667em}{0ex}}{p}_{2}\to {c}_{1}$) defines the element map to swap (continuously if necessary) in case of duplication when copying parent information to children.

**Figure 6.**Example of

**PSM**taken from [33]. Randomly choosing two distinct elements then swapping them.

**Figure 7.**Evolution of GAP (%) for different difficulty and different values $\left({P}_{C};{P}_{M}\right)$.

**Figure 9.**Execution time (in seconds) of different approaches. The priority-based heuristics give responses in several milliseconds, which is significantly faster than GA and MILP. We thus do not display them here.

Researches | Multiday (with Time-Lag) | Stages | Resources | Criteria | |
---|---|---|---|---|---|

Types | Variability | ||||

Turkcan et al. [25] | Yes | 4 (as a whole) | 2 | No | Overtime + Delay |

Hahn-Goldberg et al. [21] | No | 4 | 4 | No | Makespan |

Condotta and Shakhlevich [3] | Yes | 2 | 2 | Constant except middle break | Waiting, Workload |

Liang and Turkcan [22] | No | 1 | 2 | Single shifts | Overtime + Waiting |

Hesaraki [1] | Yes | 2 | 2 | Constant except middle break | Makespan + Total weighted flow time |

Tran et al. [2] | Yes
| 4 | 4 | Yes | Total completion time |

Notation | Description |
---|---|

$O=\{A,B,C,D\}$ | Four operations of an appointment (Figure 3) |

$\mathcal{J}=\{0,1,2,\dots ,J\}$ | Set of days |

j | Index of day |

$\mathcal{H}=\{1,2,\dots ,H,H+1\}$ | Set of time slots of a day ($H+1$ indicates the end of day) |

h | Index of time |

M | Number of places |

$\mathsf{\Psi}$ | Maximal number of patients that one nurse can monitor in the same time |

$D(j,h)$ | Number of doctors at time h on day j |

$I(j,h)$ | Number of nurses at time h on day j |

$F(j,h)$ | 1 if pharmacy opens at time h on day j,0 otherwise |

$\mathcal{P}$ | Set of patients |

i | Index of patient |

${\mathsf{\Theta}}_{i}=\{1,2,\dots ,{n}_{i}\}$ | Set of required appointments for patient i |

k | Index of appointment |

${p}_{i,k}^{o}$ | Duration of operation o for patient i at appointment k |

${e}_{i,k}^{C}$ | Authorization of a priori drug mixing for patient i at appointment k |

${\Delta}_{i,k}$ | Time-lag (days) of appointment k of patient i with respect to appointment $k-1$ |

Priority | Description | Formulation |
---|---|---|

PT | Total Processing Time | $\sum _{k\in {\mathsf{\Theta}}_{i}}}{\displaystyle \sum _{o\in O}}{p}_{i,k}^{o$ |

IPT | Ideal Total Processing Time | $\sum _{k\in {\mathsf{\Theta}}_{i}}}IP{T}_{i,k$ |

RLIPT | Request’s Length and Ideal Total Processing Time | $\left({n}_{i};\phantom{\rule{0.166667em}{0ex}}IP{T}_{i}\right)$ |

**Table 4.**Attained GAP (%) at the 500th generation for different difficulties and different values $\left({P}_{C};{P}_{M}\right)$. The best results are in bold.

Instances | ${\mathit{P}}_{\mathit{C}}$ | ${\mathit{P}}_{\mathit{M}}$ | Min | Max | Mean |
---|---|---|---|---|---|

180 daily 8 | 0.80 | 0.01 | 14.18 | 17.64 | 15.93 |

0.10 | 14.28 | 17.92 | 15.96 | ||

1.00 | 0.01 | 14.30 | 17.37 | 15.59 | |

0.10 | 14.12 | 17.24 | 15.88 | ||

210 daily 9 | 0.80 | 0.01 | 4.86 | 6.97 | 5.74 |

0.10 | 4.54 | 6.92 | 5.69 | ||

1.00 | 0.01 | 4.82 | 6.47 | 5.54 | |

0.10 | 4.60 | 6.36 | 5.45 | ||

90 weekly 3 | 0.80 | 0.01 | 0.37 | 0.71 | 0.50 |

0.10 | 0.39 | 0.74 | 0.54 | ||

1.00 | 0.01 | 0.31 | 0.72 | 0.52 | |

0.10 | 0.39 | 0.69 | 0.51 |

Scenario | ${\mathit{N}}_{\mathit{a}}$ | RLIPT-DD | RLIPT-DI | RLIPT-ID | RLIPT-II | LIPT | LPT | SIPT | SPT | GA | MILP |
---|---|---|---|---|---|---|---|---|---|---|---|

daily | 15 | 0.75 | 0.96 | 1.22 | 0.95 | 0.92 | 0.75 | 1.01 | 0.84 | 0.00 | 0.00 |

30 | 0.89 | 2.30 | 0.92 | 1.65 | 1.07 | 1.07 | 1.45 | 1.45 | 0.00 | 0.00 | |

60 | 2.95 | 2.71 | 3.31 | 4.14 | 3.27 | 3.36 | 4.44 | 3.63 | 0.45 | 0.04 | |

90 | 5.05 | 4.84 | 7.91 | 10.37 | 5.53 | 5.69 | 10.34 | 9.50 | 1.56 | 0.29 | |

120 | 5.84 | 6.12 | 15.39 | 14.81 | 6.80 | 6.71 | 14.73 | 14.51 | 2.39 | 0.32 | |

150 | 9.80 | 9.19 | 24.25 | 23.66 | 12.66 | 12.76 | 21.17 | 22.38 | 5.19 | 0.89 | |

180 | 8.42 | 11.87 | 20.64 | 22.17 | 11.26 | 11.26 | 21.49 | 22.55 | 2.57 | 8.21 | |

210 | 9.99 | 9.01 | 23.79 | 23.71 | 13.26 | 13.61 | 20.48 | 20.82 | 5.84 | 8.58 | |

uniform | 15 | 0.59 | 0.37 | 0.41 | 0.35 | 0.59 | 0.54 | 0.35 | 0.35 | 0.02 | 0.00 |

30 | 1.41 | 1.95 | 1.29 | 2.16 | 1.54 | 1.40 | 2.02 | 1.99 | 0.06 | 0.00 | |

60 | 2.36 | 1.74 | 2.73 | 2.34 | 2.79 | 2.64 | 2.13 | 1.99 | 0.40 | 0.01 | |

90 | 3.19 | 3.13 | 4.02 | 5.77 | 3.61 | 3.47 | 5.16 | 5.19 | 0.78 | 0.11 | |

120 | 6.43 | 7.96 | 17.75 | 17.44 | 7.01 | 6.43 | 16.91 | 16.57 | 2.55 | 0.34 | |

150 | 6.29 | 8.09 | 19.39 | 20.19 | 8.26 | 8.46 | 17.95 | 17.66 | 3.20 | 0.44 | |

180 | 7.96 | 8.87 | 20.12 | 20.47 | 9.56 | 9.28 | 19.60 | 19.83 | 4.39 | 0.75 | |

210 | 9.96 | 11.75 | 25.68 | 28.08 | 12.91 | 12.86 | 26.36 | 27.34 | 6.74 | 6.86 | |

weekend | 15 | 0.08 | 0.12 | 0.10 | 0.13 | 0.14 | 0.15 | 0.08 | 0.11 | 0.00 | 0.00 |

30 | 0.49 | 0.41 | 0.57 | 0.45 | 0.54 | 0.57 | 0.40 | 0.40 | 0.00 | 0.00 | |

60 | 0.90 | 0.85 | 0.82 | 1.15 | 0.92 | 0.94 | 1.94 | 1.80 | 0.08 | 0.00 | |

90 | 2.22 | 1.91 | 7.41 | 7.05 | 2.42 | 2.77 | 7.72 | 8.21 | 0.38 | 0.04 | |

120 | 2.28 | 3.77 | 11.89 | 11.77 | 3.07 | 3.57 | 10.24 | 10.80 | 0.68 | 0.10 | |

150 | 4.89 | 5.98 | 21.66 | 22.61 | 6.00 | 5.27 | 20.87 | 19.86 | 1.46 | 0.21 | |

180 | 5.60 | 6.41 | 26.14 | 26.56 | 8.58 | 7.45 | 23.28 | 25.67 | 2.67 | 0.34 | |

210 | 5.78 | 7.94 | 32.60 | 34.35 | 10.25 | 8.73 | 29.31 | 31.88 | 3.46 | 0.78 | |

weekly | 15 | 0.55 | 0.54 | 0.74 | 0.60 | 0.61 | 0.58 | 0.49 | 0.55 | 0.00 | 0.00 |

30 | 0.99 | 1.03 | 1.78 | 1.69 | 1.27 | 1.26 | 1.48 | 1.51 | 0.04 | 0.00 | |

60 | 2.30 | 1.96 | 1.84 | 1.77 | 2.40 | 2.35 | 1.80 | 1.76 | 0.21 | 0.01 | |

90 | 3.93 | 3.36 | 4.68 | 5.46 | 4.45 | 4.30 | 5.10 | 5.48 | 0.87 | 0.13 | |

120 | 6.53 | 8.18 | 19.23 | 20.12 | 6.79 | 6.69 | 20.25 | 19.77 | 2.56 | 0.41 | |

150 | 7.27 | 7.83 | 23.14 | 21.06 | 9.44 | 9.40 | 20.79 | 21.06 | 3.75 | 0.56 | |

180 | 8.31 | 8.06 | 23.29 | 23.14 | 11.06 | 11.16 | 21.15 | 21.46 | 4.77 | 0.56 | |

210 | 9.27 | 9.85 | 23.96 | 25.45 | 11.41 | 11.22 | 23.84 | 24.56 | 5.60 | 7.19 |

**Table 6.**Execution time (in seconds) of different approaches. The priority-based heuristics give responses in several milliseconds, which is significantly faster than GA and MILP. We thus do not display them here. The best results are in bold.

Scenario | ${\mathit{N}}_{\mathit{a}}$ | GA | MILP |
---|---|---|---|

daily | 15 | 0.54 | 2.64 |

30 | 0.81 | 5.17 | |

60 | 1.96 | 481.84 | |

90 | 3.67 | 3144.82 | |

120 | 8.88 | 3607.37 | |

150 | 9.52 | 3605.55 | |

180 | 14.99 | 3607.27 | |

210 | 13.91 | 3606.57 | |

uniform | 15 | 0.65 | 3.15 |

30 | 0.94 | 6.93 | |

60 | 2.01 | 388.04 | |

90 | 3.81 | 2560.58 | |

120 | 5.84 | 3605.26 | |

150 | 10.96 | 3603.58 | |

180 | 13.26 | 3607.83 | |

210 | 19.85 | 3605.19 | |

weekend | 15 | 0.69 | 1.86 |

30 | 1.07 | 4.17 | |

60 | 2.66 | 85.48 | |

90 | 5.01 | 1131.40 | |

120 | 8.59 | 2892.92 | |

150 | 16.28 | 3614.94 | |

180 | 19.63 | 3604.99 | |

210 | 20.97 | 3606.20 | |

weekly | 15 | 0.54 | 2.86 |

30 | 0.85 | 6.71 | |

60 | 1.83 | 420.77 | |

90 | 3.81 | 3236.47 | |

120 | 6.88 | 3608.38 | |

150 | 9.64 | 3608.42 | |

180 | 18.29 | 3607.80 | |

210 | 15.09 | 3606.19 |

Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |

© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

Tran, Q.N.H.; Nguyen , N.Q.; Chehade, H.; Amodeo, L.; Yalaoui, F.
Outpatient Appointment Optimization: A Case Study of a Chemotherapy Service. *Appl. Sci.* **2022**, *12*, 659.
https://doi.org/10.3390/app12020659

**AMA Style**

Tran QNH, Nguyen NQ, Chehade H, Amodeo L, Yalaoui F.
Outpatient Appointment Optimization: A Case Study of a Chemotherapy Service. *Applied Sciences*. 2022; 12(2):659.
https://doi.org/10.3390/app12020659

**Chicago/Turabian Style**

Tran, Quoc Nhat Han, Nhan Quy Nguyen , Hicham Chehade, Lionel Amodeo, and Farouk Yalaoui.
2022. "Outpatient Appointment Optimization: A Case Study of a Chemotherapy Service" *Applied Sciences* 12, no. 2: 659.
https://doi.org/10.3390/app12020659