Vocero
|
Transcripción
|
| Christel Kronig |
Bueno hola a todos, y gracias por sumarse a esta charla. Mi nombre es Christel Kronig y soy científica del Dr. Reddy's en Cambridge, Reino Unido. I |
| |
ayudó con el análisis de datos de este proyecto. Mi colega, que también trabajó en este estudio, es Andrea Sekulovic, trabaja en Dr. Reddy's en los Países Bajos y es científica en formulación. |
| |
Por eso, hoy les voy a hablar sobre la optimización de un proceso de molienda para que coincida con los atributos de calidad del producto farmacéutico del innovador. |
| |
Y así la primera parte de la presentación será hablarles sobre el desarrollo del proceso, del objetivo del proyecto y de lo que implicó el estudio y |
| |
y qué opciones de modelado consideramos, y luego, en la segunda parte, analizaré el flujo de trabajo que desarrollamos en JMP para este estudio. |
| |
Bien, el objetivo de este estudio fue realmente comprender la relación entre el parámetro del proceso para el proceso de molienda |
| |
y cualquier atributo de calidad del producto farmacéutico que estamos fabricando, así como nuestras respuestas. Entonces queríamos obtener un modelo predictivo que pudiéramos usar para ampliar y también optimizar las condiciones que necesitaríamos para este proceso. |
| |
Así que hubo varias respuestas que tuvimos que examinar como parte del estudio y son atributos del tamaño de las partículas. |
| |
Así que analizamos las micras y la extensión y, al estudiar el producto innovador, también sabíamos cuál... cuál debía ser el rango para asegurarnos de tener un producto que estuviera dentro de las especificaciones y similar al producto innovador. |
| |
Por lo tanto, el perfil de las respuestas variaría según el tiempo de fresado y los parámetros del proceso de fresado para encontrar las condiciones óptimas que necesitábamos para optimizar estos parámetros y asegurarnos de que tendríamos un producto en el rango de diseño que cumpliera con los requisitos de especificación. |
| |
velocidad de molienda, el flujo, el tamaño, también teníamos un parámetro de carga, porcentaje de excipiente, concentración de API y, por supuesto, el tiempo de molienda. |
| |
Entonces el desarrollo del proceso fue... |
| |
Comenzamos haciendo algunos lotes iniciales. No comenzamos directamente con un diseño de experimentos. Nosotros |
| |
Analizamos los datos que debían recopilarse con los primeros lotes que se fabricaron y analizamos las opciones de modelado. Y luego el equipo |
| |
en los Países Bajos decidieron hacer un diseño I-óptimo, por lo que observaron tres parámetros y el tiempo y realizaron un modelado inicial, |
| |
Después de esos primeros conjuntos de datos, decidió agregar tres parámetros adicionales. Entonces documentamos este diseño y agregamos 10 experimentos adicionales. Entonces el conjunto de datos final que |
| |
Lo analizado para la optimización tenía 38 lotes que incluían seis parámetros y tiempo, y esto es lo que utilizamos para la optimización de este estudio. Luego de eso hicimos algunos lotes de confirmación para verificar si el |
| |
Las nuevas configuraciones generarían productos que cumplan con los requisitos. |
| |
Bien, entonces, ¿qué opciones de modelado consideramos? |
| |
¿para este proyecto? Entonces, la opción predeterminada para el equipo fue realmente modelar la respuesta en momentos seleccionados. |
| |
Y es fácil hacerlo en el software estándar y la desventaja, por supuesto, es que no es posible predecir el resultado. |
| |
en otros puntos de tiempo y el óptimo puede estar entre puntos de tiempo específicos. Entonces, el modelado del perfil a lo largo del tiempo permite una mayor comprensión de cómo los parámetros del proceso afectan el perfil de la respuesta a lo largo del tiempo. |
| |
por lo que es más probable que alcance un óptimo. Pero para esto, por supuesto, se necesitan capacidades de modelado más avanzadas. |
| |
Entonces analizamos la primera curva de ajuste, que está disponible en JMP. |
| |
Y para nuestro conjunto de datos inicial, eso funciona bastante bien, esta es una de las funciones, esta Biexponencial 4, |
| |
que utilizamos parecía encajar bien con la mayoría de los lotes que hicimos inicialmente cuando sabes modelar algunas de las respuestas y hay un ejemplo a la derecha de cómo este tipo de curva se ajusta bastante bien a nuestros datos. |
| |
Y uno de los problemas que encontramos es que no funcionó para todos los lotes, por lo que, por ejemplo, en algunos casos no teníamos suficientes puntos de tiempo. A la izquierda no hay suficientes puntos de tiempo. |
| |
para ver...para encajar en ese modelo. Necesitaría un mínimo de cinco, por ejemplo, para este modelo en particular. A la derecha tenemos una forma en la que tenemos suficiente punto de tiempo, pero ese tipo particular de curva no se ajusta muy bien a este modelo en particular. |
| |
Entonces, fue difícil usar esto para el conjunto de datos más grande que teníamos, por lo que no continuamos con ese enfoque. |
| |
Y también analizamos Functional Data Explorer. |
| |
Entonces puedes ver aquí, mirando esta plataforma para 10 lotes diferentes, puedes ver los de la izquierda y cómo se ajustó el perfil... |
| |
perfil a lo largo del tiempo, por lo que no hubo problema con la falta de puntos de datos aquí. |
| |
Esto dio una buena visión de las diferencias entre lotes. Así por ejemplo, |
| |
En verde en el gráfico del lado derecho, puede ver que el lote rápido está en esta parte del espacio y el lote lento aparece en una parte diferente del espacio y eso resalta la diferencia. |
| |
entre esos perfiles, lo cual quizás no sea tan obvio cuando miras el gráfico del lado izquierdo. |
| |
Entonces, lo que obtienes con Functional Data Explorer es |
| |
descompone el perfil a lo largo del tiempo en diferentes componentes principales, por lo que los valores de FPC que vemos aquí, |
| |
y esto es lo que luego usará para la siguiente parte del flujo de trabajo. Esto está disponible en JMP Pro; Olvidé decir esto. Entonces, primero, antes de mostrarles cómo se ve en JMP, solo quería explicarles |
| |
cómo se ve el flujo de trabajo, qué estamos tratando de hacer. Entonces comenzamos con... disculpas por eso... comenzamos con |
| |
un cronograma que tiene estos atributos de calidad críticos, respuestas, tenemos nuestros puntos de tiempo y luego para cada uno de esos puntos de tiempo, |
| |
y sí, los atributos de calidad críticos y también los parámetros del proceso que usaremos para generar los lotes. |
| |
Luego toma esos datos y usa FDE para obtener un modelo, y esto significará que puede expresar sus CQA, sus respuestas, en función del tiempo y esos componentes principales funcionales, FBC. |
| |
Entonces, el resultado de esto será que obtendrá una tabla de resumen. Para cada lote tiene CPP y FPC, componente principal funcional, y luego puede aplicar el modelado estándar. |
| |
para luego obtener el modelo predictivo para expresar esos FPC en función de los parámetros de su proceso. |
| |
Y luego, el paso final es importar ese modelo nuevamente a la tabla original, para que luego... pueda expresar sus respuestas en función del tiempo y los parámetros de su proceso. |
| |
lo que le permite luego usar esto para encontrar condiciones óptimas y hacer lotes de confirmación usando esos modelos. |
| |
Y entonces, lo que tengo que decir es que para el modelado les mostraré esto en JMP, usamos esta estrategia de validación de modelos para experimentos diseñados, eso es algo que me presentaron. |
| |
hace tres años en Discovery Summit. No entraré en detalles sobre eso, pero está ahí como referencia si quieres buscarlo. |
| |
Bien, ahora les explicaré cómo se ve este flujo de trabajo en JMP y cambiaré a JMP así que... simplemente busque mi |
| |
Revista JMP. |
| |
Bien, vamos a mover esto aquí. |
| |
Bien, primero comenzaremos con el |
| |
tabla de datos original, por lo que tenemos una cantidad de lotes que se realizaron, es decir, 38 lotes. Cada lote tiene |
| |
una serie de puntos temporales. Por ejemplo, en el primer lote aquí, tenemos 10 puntos de tiempo diferentes. Tienes tus seis columnas que son los parámetros del proceso. |
| |
Y luego tenemos dos respuestas para cada una de esas |
| |
puntos de datos. Entonces, lo primero que debemos mostrarle es mirar la tabla de datos y visualizar ese conjunto de datos, cómo se ve. Así que aquí tengo un script que utiliza Graph Builder, que ofrece muy rápidamente una buena descripción general de |
| |
cómo se ven los datos. Así, por ejemplo, tienes una de las respuestas |
| |
con el tiempo de molienda aquí en la parte inferior, y se puede ver inmediatamente que los perfiles son bastante diferentes, dependiendo de los lotes, algunos son más inclinados que otros, algunos son muy poco profundos y también algunos se recolectaron durante un período de tiempo más largo o más corto. . |
| |
Así que ahora veremos el perfil con un poco más de detalle y veremos los dos enfoques de modelado que usamos. |
| |
mencionado anteriormente en las diapositivas. |
| |
Entonces, el primero es usar la curva de ajuste, que está bajo la plataforma de análisis, bajo modelado especializado. |
| |
Entonces, si selecciono ajustar curva. |
| |
Voy a elegir mi tiempo de molienda con mi X y una de mis respuestas, y luego seleccionaré el lote. Así que haré eso para cada lote. Haga clic en Aceptar. Luego tengo un... para cada lote tengo un perfil, la respuesta a lo largo del tiempo. |
| |
Y luego voy a |
| |
use uno de los modelos que está almacenado, ya sabes, que JMP ya tiene, y este es este 4P biexponencial, que yo |
| |
Ya hablamos antes, así que no repasaré las diferencias. Ya conoces los diferentes modelos, pero sé que este es uno de los que analizamos anteriormente para obtener nuestros datos. Entonces, por ejemplo, para este lote encaja bien, pero no de manera brillante para algunos de los puntos de datos. |
| |
Para este, no hay suficientes puntos de tiempo para que no lo hagas. |
| |
ya sabes, realmente no puedes usar eso, pero para algunos de los lotes, |
| |
Este, por ejemplo, encajaba muy bien, entonces tenías los cuatro coeficientes, ya sabes, estimaciones y eran estadísticamente significativos. |
| |
Entonces, lo que harías es simplemente exportar todos esos datos y obtener una tabla de resumen de la misma manera que vamos a hacer para Functional Data Explorer, pero... Así que no usaré más la curva de ajuste en esta demostración, pero se podría usar el mismo enfoque. |
| |
Entonces, vayamos al Explorador de datos funcionales, que también está en el modelado especializado en JMP Pro. |
| |
Y voy a seleccionar mi respuesta y mi tiempo de molienda y también mi identificación es mi número de lote. |
| |
Así que no voy a volver a explicar con mucho detalle, teniendo en... teniendo en cuenta el tiempo que tenemos, |
| |
qué modelado utilizar para este tipo de datos. Sé que B-Spline funciona bastante bien con mi conjunto de datos, así que esto es lo que voy a usar. |
| |
Y como puede ver, JMP instaló un modelo para cada uno de los lotes que tenemos en nuestra tabla de datos, parece encajar bastante bien. |
| |
Entonces, si miro más abajo, puedo ver que el perfil está dividido en diferentes componentes. |
| |
Y puede ver en el gráfico aquí dónde están los lotes según las especificaciones. Ahora, para esta respuesta en particular, FPC1 aquí en la parte superior en realidad explica el 96% de la variación en los datos, lo cual es bastante bueno, por lo que no necesitaríamos, en este caso, |
| |
mire FPC2 y FPC3. En este caso, probablemente sólo necesitemos conservar el primero. No sería el caso, por ejemplo, de la otra respuesta que tenemos en este conjunto de datos, pero aquí voy a restringir el número de FPC a uno. |
| |
Y luego voy a |
| |
exporto mis datos de resumen, de modo que cuando hago clic en guardar resumen, aparece una nueva tabla |
| |
en JMP. Como pueden ver, esto es así, 38 filas, por lo que tengo una fila por lote, tengo mi número de lote, tengo mi valor de FPC y tengo alguna fórmula de predicción. |
| |
Así que cerraré esta tabla ahora y usaré una que preparé anteriormente, que tiene la |
| |
FPC para todas las respuestas que quiero ver en mi conjunto de datos. |
| |
Déjame hacer eso y volver a mi diario. Bien, ahora estamos en el paso dos, donde tengo una tabla de resumen que preparé y tengo las columnas para cada una de mis respuestas para mis FPC. |
| |
Así que lo primero que quiero hacer aquí es usar esto |
| |
validación |
| |
técnica para DOE, donde voy a crear filas adicionales, que usaré para el informe de validación. Así que te di la referencia en las diapositivas. Si quieres entender más sobre esa técnica, puedes hacerlo. Entonces vamos a |
| |
encajar un modelo para uno de mis FPC. |
| |
Querremos examinar en función de algunos de mis parámetros de proceso. |
| |
Y haga clic en ejecutar. |
| |
Y voy a utilizar una regla de detención que es AICc mínimo. Haga clic en Ir. |
| |
Entonces, JMP ha encontrado varios parámetros de proceso y también interacciones que considera importantes. Puedes ver el R cuadrado y el R cuadrado ajustados. |
| |
se ve bien y también se obtiene al usar estos... agregando esta validación adicional del cuadrado R, que también indica que se ve bien y que el modelo no se ha ajustado demasiado, por ejemplo. Entonces voy a hacer clic en hacer modelo. |
| |
y |
| |
entonces |
| |
Tengo un modelo en el que puedo ver que la velocidad y el tamaño de fresado eran importantes y que algunos de los términos de interacción también eran importantes, así que lo que debo hacer a continuación es guardar la fórmula de predicción. |
| |
Y también puedo guardar el script para cuando quiera volver a hacerlo más adelante y guardarlo en mi tabla de datos. |
| |
Entonces voy a cerrar esta ventana. Por lo tanto, deberá realizar este ejercicio de ajuste del modelo para cada uno de los valores de FPC que tiene para su tabla de datos. |
| |
Y lo último que debemos hacer es usar nuestra fórmula de predicción, así que esta es la fórmula que acabo de guardar para FPC1. |
| |
Y esta es la fórmula de predicción que vino del FDE anteriormente. Entonces, si hago clic derecho, esto es lo que parece. Entonces tengo el FPC1 para cada lote. |
| |
y luego tengo esas columnas extra que son funciones del tiempo. Así que lo que tengo que hacer ahora es, en lugar de FPC1, el valor real, voy a usar mi fórmula de predicción, |
| |
que ahora es una función de mis parámetros de proceso. Simplemente reemplace literalmente eso en la fórmula aquí. Voy a hacer clic en Aplicar. |
| |
Bien, nuevamente, deberá hacer eso para cualquiera de los modelos que genere y luego guardarlos en su tabla de datos. |
| |
Así que cerraré esto y pasaremos al siguiente paso del diario. |
| |
Bien, entonces lo que hay que hacer es volver a importar estas fórmulas que acabamos de guardar en la tabla original, para que podamos ver cómo la respuesta varía en función del tiempo y los parámetros del proceso. Entonces, abriré mi tabla de datos de tiempo y abriré mi tabla de resumen con mi modelo. |
| |
Entonces voy a seleccionar esas columnas con los modelos y quiero copiar esas columnas en |
| |
mi mesa original, que ahora he perdido. |
| |
Ahí está. Así que ahora voy a hacer clic en pegar columnas. |
| |
Y solo quiero volver a verificar que haya copiado mis fórmulas. |
| |
Entonces, por ejemplo, si voy allí, sí, mi fórmula ha sido copiada. Entonces lo que tengo ahora es |
| |
el modelo que predice la respuesta en función del tiempo y de los parámetros del proceso. Así que nuevamente no voy a guardar esto sino que usaré la tabla final, que tiene todos los modelos que necesito para luego hacer la optimización. |
| |
Entonces este es el último paso. |
| |
Así que ahora tengo nuevamente mis parámetros de proceso, mi tiempo de molienda, las dos respuestas y luego la fórmula de predicción, que habría aparecido en la tabla resumen. Entonces voy a usar estas dos columnas ahora y con el generador de perfiles. |
| |
Y lo que también tengo que hacer es observar el grado del factor, por lo que el equipo quería establecer la concentración, el excipiente y el tamaño del API en configuraciones específicas para las que querían encontrar las condiciones óptimas. Entonces, si bloquea esas configuraciones, haga clic en Aceptar. |
| |
Y luego puedes usar las funciones de deseabilidad para establecer el límite de especificación, lo cual ya hice. |
| |
Y luego maximizar la deseabilidad y entonces estos serían |
| |
conseguir que JMP encontrara las mejores condiciones para proporcionar un producto que cumpliera con los requisitos establecidos que queríamos. S esta es una técnica que utilizamos. |
| |
Así que ahora saldré de JMP y volveré a la diapositiva para mostrarles cuál fue el resultado de este flujo de trabajo. |
| |
Así que voy a volver a la pantalla. Bueno. Entonces, de los 38 lotes que hicimos, que hizo el equipo en Holanda, solo hubo cuatro en los que teníamos un punto de tiempo, |
| |
al menos un momento en el que ambos resultados estuvieron dentro del rango establecido. Pero se puede ver en la tabla de la derecha que, para la respuesta del intervalo, en los cuatro casos, esto estuvo muy cerca del |
| |
límite de especificación superior, y el equipo estaba realmente interesado en encontrar condiciones que generaran un producto donde esa respuesta particular estuviera, ya sabes, dentro del rango |
| |
manteniendo la otra respuesta, también dentro del rango objetivo. |
| |
Y sí, obtuvimos un gran resultado. El modelo con las condiciones seleccionadas predijo un lapso de 1,63. El resultado real para este lote fue 1,78 y ese fue el más bajo. |
| |
lapso que se logró de todos los lotes realizados. Entonces el equipo estaba muy contento con ese resultado. Entonces, a pesar de la ligera subestimación del modelo, este fue un resultado bastante bueno. Y puedes ver en la pantalla aquí donde |
| |
este lote aparece en verde y está completamente a la izquierda de todos los demás lotes. |
| |
Y es por eso que pudimos lograr un buen resultado. Supongo que fue el uso de una combinación de parámetros ligeramente diferente lo que permitió lograr este resultado. |
| |
Entonces, solo una conclusión: Functional Data Explorer en JMP Pro funcionó muy bien para esta aplicación. Arrojó un buen modelo predictivo y el mejor resultado hasta la fecha. |
| |
No pudimos utilizar tan bien el enfoque de la curva de ajuste, a pesar de las perspectivas prometedoras iniciales. |
| |
resultados que habíamos visto al comienzo del estudio, y no pudimos usarlos para todo el conjunto de datos, pero |
| |
sin embargo, el equipo estaba convencido del valor de analizar los perfiles a lo largo del tiempo y del valor de este enfoque. Y, por supuesto, se puede aplicar esto a otros tipos de datos, por ejemplo, en la formulación, ya sabes, la liberación in vitro o en la conversión de reacciones de desarrollo de API, por ejemplo. |
| |
Y así, este es el final de la presentación, gracias a los colegas de los Países Bajos que participaron en la molienda de muchos lotes, y |
| |
A Andrea, coautora de esta presentación, por su gran trabajo en equipo. Y tuvimos buenas interacciones entre ambas partes, lo que condujo a grandes resultados. Así que gracias por escuchar y espero que hayan disfrutado la presentación y disfruten el resto de Discovery. |