Casos prácticos | Simio

Simheuristic of Patient Scheduling Using a Table-Experiment Approach - Aplicación de integración de Simio y Matlab

Escrito por Simio | 26-mar-2026 19:14:18

El desafío

por Mohammad Dehghanimohammadabadi (Northeastern University), Mandana Rezaeiahari (State University of New York at Binghamton) y Thomas K. Keyser (Western New England University).

Tal y como se presentó en la Conferencia de Simulación de Invierno de 2017

Este artículo se centra en la optimización de la programación de pacientes en un centro de cáncer de mama para dos tipos de pacientes: pacientes de seguimiento y de consulta. Los pacientes de seguimiento y consulta tienen diferentes tiempos de servicio y siguen diferentes vías de atención. El objetivo de este trabajo es secuenciar a los pacientes de forma que se consiga un tiempo medio de flujo mínimo para cada tipo de paciente. Se desarrolla un marco simheurístico integrando MATLAB, Simio y Excel. A diferencia de los enfoques existentes de optimización de simulaciones (SO) que se centran en los controles del modelo de simulación, este marco trata de optimizar una tabla de datos en el entorno de simulación. Este enfoque de evaluación de la simulación (SE) podría introducir iterativamente la tabla de llegada de pacientes en el modelo de simulación, y obtiene el rendimiento esperado del sistema como referencia para generar la siguiente solución. Los resultados obtenidos en este marco se analizan comparando cinco métodos heurísticos de programación de citas.

1 Introducción

Existen varios obstáculos para lograr la eficacia y la eficiencia en la prestación de asistencia sanitaria (Vahdatzad y Griffin 2016). Como parte de los sistemas de prestación de asistencia sanitaria, la programación de citas (AS) es uno de los principales desafíos para proporcionar un acceso oportuno a los servicios médicos y mejorar la eficiencia de la prestación de asistencia sanitaria (Leaven y Qu 2011). El acceso oportuno a los servicios sanitarios mejorará la satisfacción del paciente y está influido por muchos factores, como las decisiones relativas a los tipos de activos médicos, el equipamiento, así como la inversión y la asignación de recursos a los centros sanitarios. El alcance de estos factores es muy amplio y la AS es un factor crítico entre ellos (Gupta y Denton 2008).

La programación de citas es utilizada habitualmente por muchos proveedores sanitarios para programar eficazmente las visitas de los pacientes (Nguyen 2017). En el contexto de la atención primaria, el tiempo de un proveedor se divide en franjas horarias y se asigna un paciente a una franja horaria; sin embargo, es posible asignar un paciente a más de una franja horaria en función del tipo de visita (Oh et al. 2013).

Debido a las incertidumbres asociadas a los tiempos de servicio, la AS es una tarea difícil (Klassen y Rohleder 2004). A diferencia de la atención primaria, los tiempos de servicio del paciente varían en función del diagnóstico en la clínica especializada, y la duración de las franjas horarias se determina con respecto al tiempo de servicio, y la aleatoriedad de la llegada de los pacientes de urgencias (Wu et al. 2016). En un entorno de atención especializada, como un examen de imágenes por resonancia magnética (IRM), la AS es más complicada debido a la presencia de los pacientes y las preferencias de los proveedores, y a criterios múltiples y contrapuestos (Erdogan y Denton 2013). Hay tres tipos de normas de acceso en la programación de cirugía electiva: (1) reserva en bloque, (2) programación abierta y (3) reserva en bloque modificada (Gupta 2007). En la programación por bloques, a cada especialidad médica se le reservan salas de procedimientos específicas de forma recurrente, y los pacientes son programados en bloques por su proveedor, que es libre de asignar a los pacientes siempre que el tiempo total del procedimiento pueda completarse en el bloque asignado (Berg y Denton 2012). La programación abierta pretende acomodar a todos los pacientes (Denton et al. 2007), y el gestor del quirófano (OR) organiza un quirófano para el cirujano un día antes de la intervención. Los problemas clasificados en el grupo de reserva en bloque se resuelven en varias etapas. En primer lugar, se especifica la capacidad asignada a cada especialidad quirúrgica (decisión a nivel táctico). En segundo lugar, se generan planificaciones maestras que determinan la unidad quirúrgica asociada a cada bloque (es decir, decisión a nivel táctico). En tercer lugar, se mejoran las secuencias de cirugías, así como las horas de inicio, para lograr las mejores medidas de rendimiento (es decir, decisión a nivel operativo) (Gupta 2007). A pesar de la optimización secuencial en los problemas de programación en bloque, los problemas de programación abierta se resuelven a la vez teniendo en cuenta muchas restricciones, como la disponibilidad de proveedores y recursos al mismo tiempo (Jerić y Figueira 2012). Por lo tanto, el problema de asignación de recursos suele estar incluido en cualquier problema de programación abierta (Jerić y Figueira 2012). Por último, la reserva de bloques modificada es un complemento de la reserva de bloques en el que los bloques infrautilizados se asignan a otros cirujanos para la programación de casos quirúrgicos (Vancroonenburg et al. 2015).

Las decisiones en AS pueden clasificarse en tres niveles, a saber, estratégico, táctico y operativo. decisiones Las decisiones de nivel estratégico tienen que ver con la política de acceso, la determinación del número de proveedores, la política de aceptación de pacientes sin cita previa y el tipo de programación (Ahmadi-Javid et al. 2017). Las decisiones de nivel táctico tienen como objetivo la planificación a medio plazo (Osorio et al. 2015), y están relacionadas principalmente con la asignación de capacidad a diferentes grupos de pacientes, los intervalos entre citas, el tamaño de los bloques y la prioridad de los grupos de pacientes (Ahmadi-Javid et al. 2017). Por último, las decisiones a nivel operativo están relacionadas con la asignación de pacientes a los servidores, la determinación del día y la hora de las citas y la secuencia de pacientes (Ahmadi-Javid et al. 2017). Este trabajo se centra en la decisión de nivel operativo de secuenciar pacientes en un centro de cáncer de mama con el objetivo de minimizar el tiempo medio de los pacientes en el sistema. La duración de la estancia (LOS) o el tiempo de flujo de pacientes a través de la clínica se categoriza como una medida basada en los costes (Cayirli y Veral 2003) y se ha abordado principalmente cuando los pacientes llegan basándose en la política del primero en llegar, primero en ser atendido (FCFS) (Mahachek y Knabe 1984; Wang 1993, 1997).

Debido a la rápida invención y evolución de la capacidad computacional de los ordenadores, la integración de la simulación y la optimización ha crecido notablemente (Dehghanimohammadabadi et al. 2017). En este estudio, se propone un novedoso enfoque de simulación-optimización (SO) que utiliza un algoritmo metaheurístico para secuenciar la llegada de pacientes con el objetivo de lograr una LOS media mínima. Este marco simheurístico es una integración triple de MATLAB, Simio y Excel. Este enfoque de evaluación de soluciones se utiliza para ejecutar un cuadro-experimento en el entorno de simulación sin implicar las dificultades de definir un gran conjunto de controles y utilizar optimizadores de caja negra. En este marco, MATLAB despliega un algoritmo de búsqueda de óptimos para generar soluciones (tablas), y Simio estima el rendimiento esperado del sistema utilizando la solución proporcionada por MATLAB. La interacción entre la simulación y la búsqueda de un óptimo es cíclica, y el intercambio de datos se realiza a través de un archivo Excel. Para el caso de estudio presentado en el centro de cáncer de mama, se consigue un patrón práctico y bueno de llegada de pacientes mediante experimentos de simulación, cambiando la tabla de llegada de pacientes.

El resto del artículo se organiza como sigue. En la sección 22 se presenta la bibliografía pertinente. La Sección 3 está dedicada a los detalles del enfoque de simulación-optimización propuesto. En la Sección 4 se explica un caso práctico junto con los resultados computacionales. Por último, en la Sección 5 se presentan conclusiones e ideas para futuras investigaciones.

2 Revisión de la literatura

El problema de la programación de pacientes en consultas externas teniendo en cuenta las clases de pacientes (nuevos y en seguimiento), las distribuciones de tiempo de servicio de los pacientes, las cancelaciones y las ausencias ha sido abordado recientemente por muchos investigadores.

Algunos investigadores han estudiado el problema de la secuenciación de pacientes junto con la variación de las distribuciones del tiempo de servicio de los pacientes. Por ejemplo, Berg et al. (Berg et al. 2014) demostraron que la secuenciación de pacientes basada en el orden creciente del tiempo de servicio y la probabilidad de no presentarse es óptima. Según Mak et al. (Mak et al. 2014), la política de varianza ordenada (OV), que ordena a los pacientes en función de la varianza creciente, produce secuencias de pacientes prometedoras. En otro estudio, la política OV se recomienda para pacientes heterogéneos cuando las probabilidades de no presentarse son cercanas a cero (Erdogan et al. 2015). Mancilla y Storter (Mancilla y Storer, 2012) desarrollan un algoritmo basado en la descomposición que supera a la política OV, pero que requiere mucho tiempo de cálculo.

Su y Shih (Su y Shih 2003) llevaron a cabo un estudio de simulación en un hospital de especialidades urológicas de Taiwán para analizar el impacto de diferentes reglas de programación en los tiempos de espera de los pacientes y los tiempos de rendimiento. Santibáñez y sus colegas (Santibáñez et al. 2009) utilizaron la simulación para estudiar el efecto de las decisiones operativas, de programación y de asignación de recursos sobre los tiempos de espera de los pacientes y la utilización de las salas en un centro oncológico. En su estudio, los pacientes se clasifican en función de su tipo de visita (pacientes nuevos, seguimiento y consultas) en varios programas (oncología médica, radioterapia y quirúrgica) y tipos de clínica (mama, pulmón, etc.). Lee et al. (Lee et al. 2013) estudiaron el efecto de las políticas de acceso abierto y overbooking en las tasas de no presentación de pacientes mediante la simulación de una clínica ambulatoria. Las franjas horarias de acceso libre se colocan al final de la sesión (variando entre el 10% y el 80%) y se consideran dos clases de pacientes, habituales y con cita para el mismo día. En su estudio, la inasistencia es proporcional a la ventana de retraso de la cita y las medidas de rendimiento son el trabajo en horas extraordinarias, la acumulación de citas y el tiempo de espera de los pacientes. El resultado de este estudio muestra que el overbooking funciona mejor que el sistema de acceso abierto.

La bibliografía sobre estudios de AS que han combinado simulación y optimización es escasa. Klassen y Yoogalingam (Klassen y Yoogalingam 2009) integraron la simulación en una heurística de optimización para intentar minimizar el tiempo de espera de los pacientes, el tiempo de inactividad del médico, las horas extra y el tiempo de finalización de la sesión para el médico en una clínica de atención primaria. Las variables de decisión en su estudio son las horas de inicio de las citas de los pacientes. Descubrieron que una regla de programación de cúpula de meseta es robusta en todas las medidas de rendimiento. Los resultados de su estudio se comparan con cinco reglas de programación de citas que se han estudiado en otros trabajos de simulación: (1) intervalos fijos, (2) dos pacientes se programan al mismo tiempo, (3) colocación de dos pacientes en la primera franja horaria y un paciente en la segunda, etc., (4) colocación de cuatro pacientes en la primera franja horaria y un paciente en la segunda, etc., (5) regla de compensación en la que las franjas horarias más tempranas eran más cortas que el tiempo medio de servicio, y las más tardías eran más largas que el tiempo medio de servicio.

Saremi et al. (Saremi et al. 2013) modelaron la programación de citas de cirugías ambulatorias. Incluyeron tiempos inciertos de preoperación, cirugía y recuperación en su problema de programación. Además, asumieron restricciones de disponibilidad de recursos y compatibilidad del paciente con el proveedor. El objetivo de esta investigación es minimizar el tiempo de espera de los pacientes, el tiempo de finalización y el número de cancelaciones debidas a la falta de disponibilidad de los recursos. La programación entera (PI) se combina con la búsqueda Tabu mejorada basada en simulación (STS) para construir un mejor vecindario de soluciones iniciales para la búsqueda Tabu (TS) en STS. La PI divide el horizonte temporal en franjas horarias y genera una programación que busca minimizar el tiempo de espera y el tiempo de finalización teniendo en cuenta las duraciones deterministas de los casos. A partir de esta solución inicial, STS empieza a mejorar el programa para una variante estocástica del problema. En cada ejecución de la simulación, se evalúan algunas soluciones vecinas y se actualiza la mejor solución para la siguiente iteración de STS. Es necesario mencionar que, en cada ejecución de la simulación, las soluciones no se evalúan por completo, sino que se ordenan en función de un módulo de programación determinista. Liang et al. (Liang et al. 2015) utilizaron enfoques de optimización y simulación para mejorar la programación del flujo de pacientes de quimioterapia en una clínica oncológica. En su investigación, los pacientes se distribuyeron uniformemente en franjas horarias para equilibrar la carga de trabajo mediante un modelo matemático, y se desarrolló una matriz de probabilidad para informar al usuario con la probabilidad de asignar pacientes en función de su tipo de tratamiento a las franjas horarias. Se evaluaron varios escenarios teniendo en cuenta los retrasos en las llegadas, los tipos de pacientes, la variación del tiempo de tratamiento, las cancelaciones y los añadidos. Llegaron a la conclusión de que equilibrar la carga de trabajo disminuye el tiempo de espera de los pacientes y las horas de trabajo del personal.

La solución

3 Tabla simheurística-experimento

En este apartado se describen los principales elementos y la estructura del modelo simheurístico propuesto. A continuación, se identifican los pasos de implementación y se presentan los paquetes de software utilizados para crear el modelo. Además, se proporciona un ejemplo de la estructura de la solución para aclarar el enfoque de generación de soluciones utilizado en este estudio.

3.1 Desarrollo

En los paquetes de software de simulación comerciales existentes, realizar el diseño de tablas-experimentos no es trivial, o quizás posible. Para abordar este problema, desarrollamos un marco de trabajo SO que pudiera ejecutar fácilmente experimentos de simulación cambiando una tabla de variables. En lugar de tener dificultades para definir un gran conjunto de controles y utilizar optimizadores de caja negra como OptQuest, el marco propuesto podría ejecutar eficientemente experimentos de tabla sin cambios significativos en la estructura del modelo de simulación. Como se muestra en la Figura 1, en este marco un optimizador externo cambia iterativamente los parámetros de la tabla que se aplican en el modelo de simulación, e intenta encontrar la mejor o una buena configuración de la entrada de la tabla. Los gestores de la optimización y la simulación trabajan juntos de forma iterativa hasta que se satisfacen los criterios de parada del algoritmo de optimización. En la siguiente sección, se describen los aspectos de implementación de este marco.

3.2 Implementación

Para implementar este marco, utilizamos un enfoque integrado combinando MATLAB, Simio y Excel. Como se ilustra en la Figura 2, MATLAB es el gestor principal, en el que reside un algoritmo de optimización para resolver el problema. El algoritmo metaheurístico utilizado en este estudio es Simulated Annealing (SA), que se ha aplicado con éxito a numerosos problemas de optimización. SA deriva de un proceso empleado para obtener un cristal perfecto mediante el enfriamiento gradual de metales fundidos (Saruhan 2014). Remitimos al lector para más detalles sobre SA a Miki, Hiwa y Hiroyasu (Miki et al. 2006). En cada iteración, la solución proporcionada por el optimizador se ajusta en el modelo de simulación a través de un archivo Excel. Se utiliza SimioTM como gestor de simulación debido a sus capacidades de simulación (Dehghanimohammadabadi 2016; Dehghanimohammadabadi y Keyser 2015) y a su capacidad para interactuar con MATLAB y Excel.

Como se mencionó anteriormente y se demostró en la Sección 4, el propósito de este marco es permitir la ejecución de tablas-experimentos para la llegada de pacientes a un centro de cáncer de mama. En cada iteración, el algoritmo SA en MATLAB proporciona una nueva solución, que incluye los tiempos de llegada de los pacientes. A continuación, la solución generada se almacena en un archivo Excel para que Simio la utilice como entrada. De hecho, la salida de Simio se considera la función de coste de SA, y se llama para simular el modelo de clínica utilizando la nueva tabla de llegadas de pacientes. Por último, el resultado del modelo de simulación se transfiere a MATLAB para que SA lo utilice para generar la siguiente solución. Esta interacción entre MATLAB y Simio se repite hasta que se cumplen los criterios de parada del algoritmo de optimización.

3.3 Estructura de la solución

En este estudio, la solución generada por el algoritmo de optimización representa una tabla de tiempos de llegada de los pacientes. Para aclarar cómo se estructura esta solución y cómo se integra en Simio, en la Figura 3 se representa una instancia de la solución considerando seis franjas horarias de citas para seis pacientes. En la clínica estudiada, hay dos tipos diferentes de pacientes, los de seguimiento y los de consulta, con una proporción de 2 a 1, respectivamente. Por ejemplo, si entran seis pacientes, cuatro son de seguimiento ( ) y el resto ( ) son de consulta. Cabe señalar que esta proporción fue determinada por el personal de la clínica.

La solución generada por SA, representa una matriz de números con permutación de seis para seis pacientes. Si el número generado es menor o igual que del total de pacientes), el paciente es de seguimiento; en caso contrario, se considera de consulta. Una vez identificado el tipo de paciente, se le asignan las franjas horarias disponibles, ya que utilizamos un sistema de reserva por bloques. En este estudio, el tiempo entre llegadas de los pacientes se fija de forma determinista en 20 minutos. Por tanto, una vez que cambia la solución, cambia el orden y el tipo de los pacientes para cada franja horaria.

En consecuencia, el objetivo del algoritmo de optimización es encontrar la mejor tabla de llegada de los pacientes mientras se intentan optimizar las medidas de rendimiento de la clínica. Por lo tanto, una vez que el solucionador (SA) genera una nueva solución (tabla de llegada de pacientes), es necesario evaluar su impacto en la clínica a través del modelo de simulación.

Caso práctico

4.1 Modelo de simulación

El tratamiento de la incertidumbre es donde los modelos de simulación-optimización son más aplicables (Dehghanimohammadabadi 2016). La aplicabilidad del enfoque de simulación-optimización propuesto se pone a prueba utilizando un estudio de caso en un centro de cáncer de mama en el norte del estado de Nueva York. El estudio trata dos tipos de pacientes; pacientes de seguimiento y de consulta. El número de pacientes con cáncer atendidos por este centro fue de 914 y 1.654 en 2014 y 2015, respectivamente. Hay un médico y dos auxiliares de consultorio médico (MOA). El centro tiene en total cinco salas, incluidas dos salas para el proceso de admisión, una sala para el seguimiento, una sala para la consulta y una sala para la biopsia estereotáctica. Antes de construir el modelo de simulación, se supervisó cuidadosamente el proceso y en la figura 4 se muestra el diagrama de la vía de acceso.

Tanto los pacientes de seguimiento como los de consulta se registran en la recepción y pasan al proceso de admisión si alguna de las dos salas de admisión está disponible. Una vez disponibles las salas de seguimiento y consulta, los pacientes de seguimiento y consulta son guiados a las salas de seguimiento o consulta, respectivamente. Los pacientes de seguimiento abandonan el sistema tras la visita, mientras que los pacientes de consulta son conducidos a la sala de biopsias. La distribución de los tiempos de servicio en cada etapa del diagrama de carriles de natación se determina como se indica en la Tabla 1. Los datos recogidos de las observaciones se utilizan para parametrizar las distribuciones estadísticas del modelo de simulación. Para facilitar la interpretación y validación por parte de los miembros del personal del hospital (Vahdatzad et al. 2017), se ajusta una distribución triangular a los datos de tiempos de procesamiento cuando procede.

El impacto empresarial

4.2 Diseño experimental y resultados

El centro de cáncer de mama de este estudio recibe pacientes durante siete horas con intervalos de citas de 20 minutos. Por lo tanto, se necesita un patrón de citas práctico y bueno para programar 21 pacientes para un día. En primer lugar, utilizamos el marco simheurístico propuesto en este estudio para buscar una tabla de llegada de pacientes óptima, o al menos buena. A continuación, para evaluar la eficacia del marco propuesto, se compara la solución obtenida del modelo con cinco enfoques heurísticos sugeridos por el personal de la clínica. La primera heurística (H-1) programa primero los pacientes de seguimiento y después las consultas, mientras que H-2 hace lo contrario. Las heurísticas 3 a 5 tienen en cuenta la proporción de pacientes (2 a 1) y programan una combinación de dos seguimientos y una consulta por cada hora del día. Los patrones generados a partir de estos métodos se muestran en la figura 5.

Las soluciones obtenidas a partir de todos estos métodos se simulan utilizando Simio con 30 réplicas para evaluar su impacto en la LOS de los pacientes. Para garantizar la exactitud de los resultados de la simulación, se considera la semiamplitud de los intervalos de confianza sobre la media para determinar el número de réplicas. Como se muestra en la figura 6, los resultados indican que el modelo simheurístico tiene una media más baja para la LOS en comparación con otros métodos. Además, se aplica un complemento de Simio denominado "Select Best Scenario using KN" para encontrar el mejor escenario. Esta herramienta implementa el procedimiento desarrollado por Kim y Nelson (Kim y Nelson 2001), y toma un conjunto inicial de escenarios y ejecuta réplicas adicionales hasta que confía en que un escenario en particular es el mejor, o dentro de un rango especificado del mejor (llamado zona de indiferencia) (Simio 2011). Con un nivel de confianza del 95%, esta herramienta selecciona sistemáticamente la simheurística como el mejor escenario para todos los valores de zona de indiferencia definidos.

Conclusión

En este estudio, hemos desarrollado un marco simheuristic para realizar tabla-experimentos para un modelo de simulación de un centro de cáncer de mama. En este nuevo enfoque híbrido, el algoritmo SA programado en MATLAB genera soluciones y llama a Simio como función de coste para evaluarlas. Los resultados iniciales de este estudio indican que el modelo existente funciona mejor que los enfoques heurísticos, pero la diferencia no es estadísticamente significativa. En el trabajo futuro habrá que considerar la duración de las franjas horarias como variable de decisión. Actualmente, todos los bloques de citas se fijan en 20 minutos, pero podrían variar en función del tipo de paciente. También sería deseable añadir múltiples medidas de rendimiento, como el tiempo de espera de los pacientes. Además, podrían añadirse al modelo de simulación otros factores ambientales, como la ausencia de pacientes y la puntualidad de pacientes y proveedores.