| Conférencier |
Transcription |
| Christel Kronig |
Bonjour à tous et merci de participer à cette conférence. Je m'appelle Christel Kronig et je suis scientifique chez Dr. Reddy's à Cambridge, au Royaume-Uni. |
| |
J'ai participé à l'analyse des données de ce projet. Ma collègue, Andrea Sekulovic, qui a également travaillé sur cette étude, est basée chez Dr Reddy's aux Pays-Bas et est spécialiste en formulation. |
| |
Et donc aujourd'hui, je vais vous parler de l'optimisation d'un processus de broyage pour correspondre aux attributs de qualité du produit pharmaceutique de l'innovateur. |
| |
Et donc la première partie de la présentation vous parlera du processus de développement, de l'objectif du projet et de ce qu'impliquait l'étude et |
| |
et quelles options de modélisation nous avons envisagées, puis la deuxième partie, je vais examiner le flux de travail que nous avons développé dans JMP pour cette étude. |
| |
D'accord, donc l'objectif de cette étude était vraiment de comprendre la relation entre le paramètre de processus pour le processus de broyage |
| |
et tous les attributs de qualité du médicament que nous fabriquons, donc nos réponses. Nous souhaitions donc obtenir un modèle prédictif utilisable pour la mise à l'échelle et pour optimiser les conditions nécessaires à ce processus. |
| |
Il y avait donc plusieurs réponses que nous avons dû examiner dans le cadre de l’étude et il s’agit d’attributs de taille de particules. |
| |
Nous avons donc examiné le micron et la portée et, en étudiant le produit innovant, nous savions également quelle plage devait être pour nous assurer d'avoir un produit conforme aux spécifications et similaire au produit innovant. |
| |
Ainsi, le profil des réponses varierait en fonction du temps de fraisage et des paramètres du processus de fraisage pour trouver les conditions optimales dont nous avions besoin pour optimiser ces paramètres afin de garantir que nous aurions un produit dans la gamme de conception qui répondrait aux exigences de spécification. |
| |
la vitesse de broyage, le débit, la taille, nous avions également un paramètre de chargement, le pourcentage d'excipient, la concentration d'API et, bien sûr, le temps de broyage. |
| |
Le développement du processus a donc été... |
| |
Nous avons commencé par réaliser quelques lots initiaux. Nous n'avons pas directement commencé par élaborer un plan d'expériences. |
| |
Nous avons examiné les données à collecter pour les premiers lots fabriqués et étudié les options de modélisation. L'équipe a ensuite |
| |
aux Pays-Bas, ils ont décidé de faire une conception I-optimale, ils ont donc examiné trois paramètres et le temps et ont effectué une modélisation initiale, |
| |
Après ces premiers ensembles de données, nous avons décidé d'ajouter trois paramètres supplémentaires. Nous avons donc documenté ce modèle et ajouté dix expériences supplémentaires. Ainsi, l'ensemble de données final que nous avons |
| |
L'optimisation comportait 38 lots incluant six paramètres et une durée. C'est ce que nous avons utilisé pour l'optimisation de cette étude. Nous avons ensuite réalisé des lots de confirmation afin de vérifier si |
| |
de nouveaux paramètres généreraient des produits répondant aux exigences. |
| |
D'accord, quelles options de modélisation avons-nous envisagées ? |
| |
Pour ce projet ? L'option par défaut de l'équipe était donc de modéliser la réponse à des moments précis. |
| |
Et c'est facile à faire dans le logiciel standard et l'inconvénient est bien sûr qu'il n'est pas possible de prédire le résultat. |
| |
à d'autres instants, et l'optimum peut se situer entre des instants spécifiques. Ainsi, la modélisation du profil au fil du temps permet de mieux comprendre comment les paramètres du procédé influencent le profil de la réponse au fil du temps. |
| |
Vous avez donc plus de chances d'atteindre un optimum. Mais pour cela, bien sûr, vous avez besoin de capacités de modélisation plus avancées. |
| |
Nous avons donc examiné la première courbe d’ajustement, disponible dans JMP. |
| |
Et pour notre ensemble de données initial, cela fonctionne plutôt bien, c'est donc l'une des fonctions, cette biexponentielle 4, |
| |
que nous avons utilisé semble convenir à la plupart des lots que nous avons créés initialement, lorsque vous savez modéliser certaines des réponses et il y a un exemple sur la droite de la façon dont ce type de courbe correspond assez bien à nos données. |
| |
L'un des problèmes rencontrés était que cela ne fonctionnait pas pour tous les lots. Par exemple, dans certains cas, nous n'avions pas assez de points temporels. À gauche, il n'y a pas assez de points temporels. |
| |
Pour voir… pour adapter ce modèle. Il faudrait un minimum de cinq, par exemple, pour ce modèle particulier. À droite, nous avons un exemple : nous avons suffisamment de points temporels, mais ce type de courbe ne correspond pas très bien à ce modèle. |
| |
Il était donc difficile d’utiliser cette approche pour le plus grand ensemble de données dont nous disposions, et c’est pour cette raison que nous n’avons pas continué avec cette approche. |
| |
Nous avons également examiné Functional Data Explorer. |
| |
Vous pouvez donc voir ici, en regardant cette plate-forme pour 10 lots différents, vous pouvez voir ceux de gauche et comment le profil a été ajusté... |
| |
profil au fil du temps, il n'y avait donc aucun problème de manque de points de données ici. |
| |
Cela a donné une bonne idée des différences entre les lots. Ainsi, par exemple, |
| |
en vert sur le graphique à droite, vous pouvez voir que le lot rapide est dans cette partie de l'espace et le lot lent apparaît dans une autre partie de l'espace et cela met en évidence la différence |
| |
entre ces profils, ce qui n'est peut-être pas si évident quand on regarde le graphique de gauche. |
| |
Ainsi, ce que vous obtenez avec Functional Data Explorer est |
| |
il décompose le profil au fil du temps en différents composants principaux, donc les valeurs FPC que nous voyons ici, |
| |
Et c'est ce que vous utiliserez ensuite pour la suite du workflow. C'est disponible dans JMP Pro ; j'ai oublié de le préciser. Avant de vous montrer à quoi cela ressemble dans JMP, je voulais juste vous expliquer comment procéder. |
| |
À quoi ressemble le flux de travail, ce que nous essayons de faire. Nous commençons donc par… toutes mes excuses… nous commençons par |
| |
un emploi du temps qui a ces attributs de qualité critiques, des réponses, nous avons nos points temporels et ensuite pour chacun de ces points temporels, |
| |
et oui, les attributs de qualité critiques, ainsi que les paramètres de processus que nous utiliserons pour générer les lots. |
| |
Vous prenez ensuite ces données et vous utilisez FDE pour obtenir un modèle, ce qui signifie que vous pouvez exprimer vos CQA, vos réponses, en fonction du temps et de ces composantes principales fonctionnelles FBC. |
| |
Vous obtiendrez ainsi un tableau récapitulatif. Pour chaque lot, vous disposerez des CPP et de la composante principale fonctionnelle (FPC), puis vous pourrez appliquer la modélisation standard. |
| |
pour ensuite obtenir le modèle prédictif pour exprimer ces FPC en fonction de vos paramètres de processus. |
| |
Et puis l'étape finale consiste à réimporter ce modèle dans la table d'origine, vous avez donc... vous pouvez alors exprimer vos réponses en fonction du temps et de vos paramètres de processus, |
| |
ce qui vous permet ensuite de l'utiliser pour trouver des conditions optimales et de réaliser des lots de confirmation en utilisant ces modèles. |
| |
Et donc, et ce que j'ai à dire, c'est que pour la modélisation, je vais vous montrer ceci dans JMP, nous utilisons cette stratégie de validation de modèle pour les expériences conçues, c'est quelque chose qui m'a été présenté |
| |
Il y a trois ans, au Discovery Summit. Je n'entrerai pas dans les détails, mais c'est là pour référence si vous souhaitez le consulter. |
| |
Alors, d'accord, je vais maintenant vous expliquer à quoi ressemble ce flux de travail dans JMP et je vais passer à JMP donc... trouvez simplement mon |
| |
Revue JMP. |
| |
Ok, je vais déplacer ça ici. |
| |
Ok, nous allons donc commencer par le |
| |
tableau de données d'origine, nous avons donc un certain nombre de lots qui ont été fabriqués, soit 38 lots. Chaque lot a |
| |
Plusieurs points temporels. Par exemple, le premier lot comporte dix points temporels différents. Six colonnes correspondent aux paramètres du processus. |
| |
Et puis nous avons deux réponses pour chacune d'entre elles |
| |
Points de données. La première chose à vous montrer est d'examiner le tableau de données et de visualiser l'ensemble de données. J'ai ici un script utilisant Graph Builder, qui donne très rapidement un bon aperçu. |
| |
à quoi ressemblent les données. Par exemple, vous avez l'une des réponses |
| |
avec le temps de fraisage ici en bas, et vous pouvez voir tout de suite que les profils sont assez différents, selon les lots, certains sont plus raides que d'autres, certains sont très peu profonds et aussi certains ont été collectés sur une période de temps plus ou moins longue. |
| |
Nous allons maintenant examiner le profil un peu plus en détail et examiner les deux approches de modélisation que nous |
| |
dont nous avons parlé précédemment dans les diapositives. |
| |
Donc, la première consiste à utiliser la courbe d'ajustement, donc elle se trouve sous la plateforme d'analyse, sous la modélisation spécialisée. |
| |
Donc si je sélectionne la courbe d'ajustement. |
| |
Je vais choisir mon temps de fraisage avec mon X et une de mes réponses, puis je vais sélectionner le lot. Je vais donc faire cela pour chaque lot. Je clique sur OK. J'ai ensuite un profil pour chaque lot, la réponse au fil du temps. |
| |
Et puis je vais |
| |
utiliser l'un des modèles qui est stocké, vous savez, que JMP a déjà, et c'est ce 4P biexponentiel, que je |
| |
J'en ai déjà parlé, je ne vais donc pas détailler les différences. Vous connaissez les différents modèles, mais je sais que celui-ci fait partie de ceux que nous avons examinés précédemment pour nos données. Par exemple, pour ce lot, il s'adapte bien, mais pas parfaitement pour certains points de données. |
| |
Pour celui-ci, il n'y a pas assez de points de temps donc vous ne le faites pas, |
| |
tu sais, tu ne peux pas vraiment utiliser ça, mais pour certains lots, |
| |
donc celui-ci, par exemple, correspondait vraiment bien, donc vous aviez les quatre coefficients, vous savez, les estimations et elles étaient statistiquement significatives. |
| |
Donc, ce que vous feriez, alors, c'est simplement exporter toutes ces données et obtenir un tableau récapitulatif de la même manière que nous allons le faire pour Functional Data Explorer mais... Je n'utiliserai donc plus la courbe d'ajustement dans cette démo, mais la même approche pourrait être utilisée. |
| |
Passons donc à l'explorateur de données fonctionnelles, qui se trouve également dans la modélisation spécialisée de JMP Pro. |
| |
Et je vais sélectionner ma réponse et mon temps de fraisage ainsi que mon identifiant et mon numéro de lot. |
| |
Je ne vais donc pas l'expliquer à nouveau en détail, compte tenu du temps dont nous disposons, |
| |
Quelle modélisation utiliser pour ce type de données ? Je sais que B-Spline fonctionne plutôt bien avec mon ensemble de données, c'est donc celle-ci que je vais utiliser. |
| |
Et comme vous pouvez le voir, JMP a adapté un modèle pour chacun des lots que nous avons dans notre tableau de données, et cela semble assez bien correspondre. |
| |
Donc, si je regarde plus bas, vous pouvez voir que le profil est divisé en différents composants. |
| |
Vous pouvez voir sur le graphique où se situent les lots dans les spécifications. Pour cette réponse particulière, FPC1, ici en haut, explique 96 % de la variation des données, ce qui est plutôt bon, donc nous n'aurions pas besoin, dans ce cas, de |
| |
Regardons FPC2 et FPC3. Dans ce cas, nous ne conserverons probablement que le premier. Ce ne serait pas le cas, par exemple, pour l'autre réponse de cet ensemble de données, mais je vais ici limiter le nombre de FPC à un. |
| |
Et puis je vais |
| |
exporter mes données récapitulatives, donc lorsque je clique sur enregistrer le résumé, un nouveau tableau apparaît |
| |
Dans JMP. Il y a donc 38 lignes, une ligne par lot, mon numéro de lot, ma valeur FPC et une formule de prédiction. |
| |
Je vais donc fermer ce tableau maintenant et utiliser celui que j'ai préparé plus tôt, qui a le |
| |
FPC pour toutes les réponses que je souhaite examiner dans mon ensemble de données. |
| |
Laissez-moi faire cela et revenez à mon journal. Bon, nous en sommes maintenant à la deuxième étape, où j'ai préparé un tableau récapitulatif et les colonnes correspondant à chacune de mes réponses pour mes FPC. |
| |
Donc la première chose que je veux faire ici est d'utiliser ceci |
| |
validation |
| |
Technique pour le plan d'expérience, où je vais créer des lignes supplémentaires pour le rapport de validation. Je vous ai donné la référence dans les diapositives : si vous souhaitez en savoir plus sur cette technique, n'hésitez pas à le faire. Nous allons ensuite |
| |
adapter un modèle pour l'un de mes FPC. |
| |
Nous voudrons examiner en fonction de certains de mes paramètres de processus. |
| |
Et cliquez sur Exécuter. |
| |
Je vais utiliser une règle d'arrêt, soit l'AICc minimum. Cliquez sur « Go ». |
| |
JMP a identifié plusieurs paramètres de processus et interactions jugés importants. Vous pouvez voir le R au carré et le R au carré ajusté. |
| |
L'apparence est bonne, et vous obtenez également ce résultat en utilisant ces éléments… en ajoutant cette validation R carré supplémentaire, qui indique également que l'apparence est bonne et que le modèle n'est pas surajusté, par exemple. Je vais donc cliquer sur « Créer un modèle ». |
| |
et |
| |
alors |
| |
J'ai un modèle dans lequel je peux voir que la vitesse et la taille de fraisage étaient importantes et que certains des termes d'interaction étaient également importants, donc ce que je dois faire ensuite est de sauvegarder la formule de prédiction. |
| |
Et je peux également enregistrer le script pour quand je veux le refaire plus tard et l'enregistrer dans ma table de données. |
| |
Je vais donc fermer cette fenêtre. Vous devrez donc effectuer cet exercice d'ajustement du modèle pour chacune des valeurs FPC de votre table de données. |
| |
Et la dernière chose que nous devons faire est d’utiliser notre formule de prédiction, c’est donc la formule que je viens d’enregistrer pour FPC1. |
| |
Voici la formule de prédiction issue de FDE. Si je fais un clic droit, voici à quoi elle ressemble. J'ai donc le FPC1 pour chaque lot. |
| |
Et puis, j'ai ces colonnes supplémentaires qui sont des fonctions du temps. Donc, au lieu de FPC1, la valeur réelle, je vais utiliser ma formule de prédiction. |
| |
Ce qui est maintenant une fonction de mes paramètres de processus. Il suffit de remplacer cela dans la formule. Je clique sur « Appliquer ». |
| |
OK, donc encore une fois, vous devrez le faire pour tous les modèles que vous générez, puis les enregistrer dans votre table de données. |
| |
Je vais donc fermer ceci et nous passerons à l'étape suivante du journal. |
| |
Bon, il faut donc réimporter les formules que nous venons d'enregistrer dans la table d'origine, afin de voir comment la réponse varie en fonction du temps et des paramètres du processus. Je vais donc ouvrir ma table de données temporelles et ma table récapitulative avec mon modèle. |
| |
Je vais donc sélectionner ces colonnes avec les modèles et je veux copier ces colonnes dans |
| |
ma table d'origine, que j'ai maintenant perdue. |
| |
Voilà. Je vais maintenant cliquer sur « Coller les colonnes ». |
| |
Et je veux juste vérifier que mes formules ont bien été copiées. |
| |
Donc, par exemple, si j'y vais, oui, ma formule a été copiée. Donc, ce que j'ai maintenant, c'est |
| |
Le modèle prédit la réponse en fonction du temps et des paramètres du processus. Je ne vais donc pas sauvegarder cela, mais utiliser le tableau final, qui contient tous les modèles nécessaires à l'optimisation. |
| |
C'est donc la dernière étape. |
| |
J'ai donc à nouveau mes paramètres de procédé, mon temps de fraisage, les deux réponses et la formule de prédiction, qui provient du tableau récapitulatif. Je vais donc utiliser ces deux colonnes avec le profileur. |
| |
Je dois également examiner la qualité du facteur. L'équipe souhaitait donc définir la concentration de l'API, l'excipient et la taille selon des paramètres spécifiques pour trouver les conditions optimales. Si vous verrouillez ces paramètres, cliquez sur OK. |
| |
Et ensuite, vous pouvez utiliser les fonctions de désirabilité pour définir la limite de spécification, ce que j'ai déjà fait. |
| |
Et puis maximiser la désirabilité et alors ceux-ci |
| |
JMP a trouvé la meilleure condition pour fournir un produit répondant aux exigences définies. C'est la technique que nous avons utilisée. |
| |
Je vais donc sortir de JMP maintenant et revenir à la diapositive pour vous montrer quel a été le résultat de ce flux de travail. |
| |
Je vais revenir à l'écran. OK. Sur les 38 lots que nous avons réalisés par l'équipe hollandaise, il n'y en avait que quatre où nous avions un point temporel. |
| |
Au moins un point temporel où ces deux résultats se situaient dans la plage définie. Cependant, comme le montre le tableau de droite, pour la réponse en durée, celle-ci était très proche de la valeur de référence dans les quatre cas. |
| |
limite de spécification supérieure, et l'équipe était vraiment intéressée par la recherche de conditions qui généreraient un produit où cette réponse particulière était, vous savez, bien dans la plage |
| |
tout en maintenant l'autre réponse, également dans la plage cible. |
| |
Et oui, nous avons obtenu un excellent résultat. Le modèle, avec les conditions sélectionnées, prévoyait un intervalle de 1,63. Le résultat réel pour ce lot était de 1,78, soit le plus bas. |
| |
L'étendue de la plage de mesure obtenue pour tous les lots fabriqués. L'équipe était donc très satisfaite du résultat. Malgré une légère sous-estimation du modèle, le résultat était plutôt bon. Vous pouvez le voir sur l'écran. |
| |
ce lot apparaît en vert et il est complètement à gauche de tous les autres lots. |
| |
Et c'est pourquoi nous avons pu obtenir un bon résultat. Je suppose que c'est grâce à une combinaison de paramètres légèrement différente que ce résultat a été obtenu. |
| |
En conclusion, l'Explorateur de données fonctionnelles de JMP Pro a parfaitement fonctionné pour cette application. Il a produit un bon modèle prédictif et le meilleur résultat à ce jour. |
| |
Nous n’avons pas pu utiliser l’approche de la courbe d’ajustement aussi bien, malgré les résultats prometteurs initiaux. |
| |
résultats que nous avions vus au début de l'étude, et nous ne pouvions pas les utiliser pour l'ensemble des données, mais |
| |
Néanmoins, l'équipe était convaincue de l'intérêt d'analyser les profils au fil du temps et de la valeur de cette approche. Et bien sûr, cette approche peut être appliquée à d'autres types de données, par exemple en formulation, en libération in vitro ou dans le développement de principes actifs (API) et la conversion de réactions. |
| |
Et donc, c'est la fin de la présentation, merci aux collègues aux Pays-Bas qui ont participé à la mouture de nombreux lots, et |
| |
À Andrea, co-auteure de cette présentation, pour son excellent travail d'équipe. Les échanges entre les deux parties ont été excellents, ce qui a permis d'obtenir d'excellents résultats. Merci de votre écoute et j'espère que vous avez apprécié la présentation et le reste de Discovery. |