Altoparlante | Trascrizione |
| Andrea Coombs, JMP | Salve, mi chiamo Andrea Coombs e sono un ingegnere di sistema di JMP. Quindi oggi racconterò la storia dei miei anni in cui ho lavorato nel settore, in particolare nell'industria farmaceutica. |
| Quindi ecco di cosa parlerò oggi in poche parole. |
| strategie di coping per dare un senso |
| dei dati di produzione in tempo reale nella produzione... nella produzione di vaccini. E in quella presentazione ho discusso dei modi di gestire i dati curvi |
| che stavamo ricevendo in tempo reale dai sensori nel nostro reparto di produzione. |
| E oggi, quello di cui voglio parlare sono alcuni dei nuovi strumenti che abbiamo in JMP, in particolare l'esploratore di dati funzionali, e come questo avrebbe reso tutto questo un gioco da ragazzi. |
| E approfondirò i modi per utilizzare l'esploratore di dati funzionali per la comprensione dei processi, l'ottimizzazione dei processi e il monitoraggio dei processi. |
| Quindi iniziamo parlando del processo e delle curve con cui avevamo a che fare. Quindi qui a sinistra abbiamo un esempio di un ipotetico processo di produzione di un vaccino. Inizia con la preparazione del materiale. |
| In questo caso, stiamo facendo la fermentazione batterica in due fasi, quindi il prodotto viene filtrato, assorbito e raccolto, |
| ea valle il prodotto viene centrifugato e, infine, più sottolotti di materiale vengono formulati insieme in un unico lotto di materiale. |
| E oggi mi concentrerò sulle fasi di fermentazione di questo processo. |
| Quindi, mentre i batteri stanno fermentando, stanno attraversando una fase di crescita e le curve di crescita sembrano qualcosa qui a destra. Quindi, durante la crescita, c'è una fase di ritardo, c'è una fase di crescita esponenziale, una fase stazionaria e, infine, una fase di morte logaritmica. |
| E mentre ero in questa azienda, stavamo attraversando un'evoluzione del processo sotto ... della comprensione del processo, in particolare attorno a queste curve di crescita. |
| Quindi abbiamo iniziato presto, prelevando solo cinque campioni da queste due fasi di fermentazione, inviando quei campioni al... laboratorio di controllo qualità e aspettando i risultati. E abbiamo ottenuto |
| densità ottica, quindi potremmo dire la densità delle cellule in quei campioni, e i risultati che abbiamo ottenuto assomigliavano a quelli che vedete qui a destra. |
| Abbiamo una distribuzione dei risultati in quei punti temporali specifici, ma in realtà non sapevamo come fossero le curve di crescita. Avrebbero potuto assomigliare a una qualsiasi delle curve che ho disegnato su quelle distribuzioni in basso. Non ne avevamo proprio idea. |
| Ma poi abbiamo implementato le sonde in linea, quindi abbiamo implementato le sonde di torbidità in modo da poter effettivamente vedere come sono quelle curve di crescita. Tuttavia, abbiamo dovuto vestirci ed entrare nella sala di produzione |
| per scaricare manualmente i dati, riportarli alle nostre scrivanie e quindi provare a capire cosa avremmo fatto con tutti questi dati. |
| E poi, finalmente, abbiamo aggiornato il nostro PLC in modo che ora potessimo avere tutti i dati di tutti i nostri sensori sulla nostra scrivania, senza bisogno di vestirci e tornare indietro... e tornare alla produzione; avevamo tutti i dati |
| a portata di mano, il che è stato fantastico. Ma attraverso un'attenta analisi, siamo stati in grado di determinare che avevamo troppi dati e avevamo molti dati da gestire. |
| Ecco perché... |
| ecco perché ho tenuto questa presentazione sulle strategie di coping per dare un senso ai dati in tempo reale. |
| Abbiamo lavorato molto per dare un senso ai nostri dati e volevo condividere alcune strategie che potresti adottare per dare un senso ai tuoi dati in tempo reale. |
| La prima cosa di cui ho parlato è stata la parametrizzazione di quelle curve di crescita. Quindi avevamo queste curve ma volevamo essere in grado di dare un'occhiata alla crescita e |
| capire cosa stava succedendo, quindi li abbiamo parametrizzati. In altre parole, abbiamo preso la pendenza della crescita, la pendenza del tasso di mortalità, stavamo osservando la durata del tempo in cui i batteri si trovavano in ciascuna delle fasi. Stavamo guardando |
| la torbidità in determinati momenti, e ora avevamo una grande collezione di queste crescite... quelle che chiamavamo variabili di crescita. |
| E queste variabili di crescita ci sono state molto utili. Li abbiamo usati per la comprensione del processo, per l'ottimizzazione del processo e il monitoraggio del processo. |
| Ora, il secondo gruppo di strategie di coping di cui ho parlato era proprio l'elaborazione di tutti questi dati in tempo reale |
| che abbiamo avuto. Quindi, ovviamente, una volta che abbiamo iniziato a trovare utili tutti questi dati, volevamo accedervi immediatamente. |
| Quindi la prima cosa che dovevamo capire erano tutte le nostre fonti di dati e assicurarci di poter accedere a tutto ciò che avevamo, non solo i dati del nostro storico, ma anche i dati del nostro |
| Sistema ERP, nei nostri sistemi di gestione delle informazioni di laboratorio. Abbiamo dovuto portare tutti quei dati in un unico posto. Abbiamo usato un super journal, quindi questo è una specie di centrale di comando per accedere a tutti i nostri dati ed eseguire tutti i nostri script. |
| Questo è stato davvero un sacco di lavoro che abbiamo fatto. Eravamo abbastanza orgogliosi di noi stessi, ma sai col senno di poi, |
| sapendo quali strumenti abbiamo in JMP, in particolare ora con JMP 16, ci sono un paio di cose che avrebbero reso questo lavoro molto più semplice. |
| Con le curve di crescita, avremmo potuto utilizzare l'esploratore di dati funzionali per analizzare le nostre curve. Non dovremmo parametrizzarli, |
| dove stavamo lasciando molti dati dietro. Possiamo utilizzare tutti i dati nell'esploratore di dati funzionali. E poi, naturalmente, la registrazione dell'azione nel registro avanzato, |
| ciò avrebbe reso gli sforzi nella sceneggiatura molto più semplici. Ma oggi voglio concentrarmi solo su come avrei utilizzato l'esploratore di dati funzionali. |
| Ovviamente non ho più accesso a quei dati, quindi ho simulato alcune curve di crescita. Qui ho 20 curve diverse, che rappresentano una certa variabilità che potresti vedere durante la fermentazione batterica. |
| E con l'esploratore di dati funzionali, tutto si riduce davvero a questi quattro passaggi. La prima cosa è che prenderai la tua collezione di curve |
| e appianerai tutte le singole curve. Il secondo passo è determinare una forma media e componenti di forma che descrivano tutta la variabilità che vedete in queste curve. |
| Il passaggio successivo consiste nell'estrarre la grandezza dei componenti della forma per ciascuna curva. |
| E una volta che hai questi due componenti della forma, in realtà vengono chiamati componenti principali funzionali, |
| quindi puoi usarli per come vuoi analizzare i tuoi dati, se le tue curve sono input per i modelli, se sono output per i modelli, se vuoi fare analisi di clustering. |
| Davvero, ora puoi fare qualsiasi tipo di analisi con questi componenti principali funzionali. Nell'esempio di oggi, tutte le mie curve sono uscite per un modello, quindi utilizzerò il DOE funzionale |
| per dare un'occhiata più da vicino a queste curve. Quindi entriamo in JMP. |
| Qui ho la mia tabella dei dati, dove ho i numeri di lotto, ho il tempo nella torbidità, che compongono le curve. |
| E ho anche un sacco di parametri di processo. E la prima cosa che voglio fare è, voglio fare un po' di comprensione del processo per vedere se qualcuno di questi parametri di processo |
| stanno influenzando la variabilità che vedo nelle curve. Quindi entriamo nell'esploratore di dati funzionali. Metteremo il tempo come nostra X, la torbidità è la nostra Y. Inseriremo la nostra funzione ID e poi prenderemo tutti questi parametri di processo e li inseriremo come variabili supplementari. |
| Ora, il primo passo che dobbiamo fare è adattare il modello flessibile a tutte le nostre curve e userò la PCA direzionale...funzionale diretta per farlo. |
| Ecco quei modelli flessibili. Il secondo passo, che JMP ha già fatto per me, è determinare la curva media |
| e i nostri componenti di forma. E JMP ha identificato per me sei diversi componenti di forma. Qui a sinistra, posso vedere quei sei diversi componenti di forma. |
| Ed ecco la quantità cumulativa di variabilità che quei componenti della forma stanno spiegando nei miei dati. |
| Puoi vedere, solo con i primi due componenti della forma, sto già descrivendo il 92% della variabilità nella mia curva, il che è fantastico. |
| E i restanti componenti di una forma qui, li escluderò, perché probabilmente stanno solo spiegando la variabilità casuale nei miei dati. Quindi andiamo avanti e personalizziamo il nostro numero di FPC fino a due e rimango con quei due componenti di forma. |
| Ora, il passo successivo è determinare l'ampiezza di ciascuna di queste componenti della forma per ognuna di quelle curve, e le ho qui nel grafico del punteggio. |
| Sull'asse X ho Shape Component 1 e sull'asse Y ho Shape Component 2. |
| Di seguito ho un profiler in cui posso dare un'occhiata alla mia curva, che ho evidenziato qui in giallo, e puoi vedere come il primo componente della forma influisce sulla forma della curva, |
| principalmente la fase di crescita della curva, e la seconda componente della forma ha un impatto principalmente sulla fase di morte della curva. |
| E diamo un'occhiata più da vicino a un paio di questi lotti. Diamo un'occhiata al lotto 15. Ecco la curva per il Batch 15, e possiamo vedere l'ampiezza di Shape Component 1 e l'ampiezza di Shape Component 2. Posso inserirli direttamente nel mio profiler. |
| Ora puoi vedere che sono in grado di riprodurre la curva per il batch 15. Diamo solo un'occhiata a un altro. Diamo un'occhiata a questo lotto 2, e puoi vedere che sembra molto diverso rispetto al lotto 15 e alla forma... anche la grandezza dei componenti della forma è molto diversa. Quindi andiamo |
| dai un'occhiata a quelli. |
| E ora puoi vedere che siamo stati... siamo in grado di replicare anche quella curva. |
| Quindi, conoscendo la forma media, le due componenti di forma che rappresentano la variabilità attorno alle curve, possiamo usare ora queste grandezze di quelle componenti di forma per fare un'analisi. |
| E possiamo fare il ... quando le tue curve sono la risposta nel tuo modello, puoi fare quell'analisi proprio qui nell'esploratore di dati funzionali. |
| Quindi qua sotto, ho un nuovo profiler. E questa volta nel mio profiler, ho... ho di nuovo la mia curva, che evidenzierò di nuovo in giallo. |
| E poi ho i parametri di pH, temperatura, pressione e velocità di miscelazione. Puoi vedere qui per la velocità di miscelazione, è piuttosto piatto, quindi non influisce su quella forma. |
| Lo stesso per la pressione, ma quando comincio a guardare la temperatura, puoi vederlo cambiare la forma della mia curva, principalmente la fase di crescita della mia curva. E mentre cambio il pH, influisce principalmente su quella fase della mia curva. |
| Quindi questo è l'approccio che prenderei per la comprensione del processo. Bene, per quanto riguarda l'ottimizzazione dei processi? E per ottimizzazione dei processi, intendo, |
| sai, se c'è una curva particolare su cui vogliamo standardizzare, quali sarebbero il pH e la temperatura di cui avremmo bisogno per ottenere quella curva desiderata? Bene, la prima cosa che devi fare è definire cosa |
| sembra la curva desiderata. E ho solo alcuni punti dati qui in fondo alla mia tabella dati che descrivono quella forma che sto cercando, e li vedrai qui sul mio... |
| nel costruttore di grafici. E in questo caso, sono interessato a ottenere una curva in cui ho un tasso di crescita molto veloce e poi un tasso di crash molto lento. |
| E questo è davvero facile da aggiungere all'esploratore di dati funzionali. Abbiamo solo bisogno di fare un ulteriore passaggio; Ricorderò quello che ho fatto prima. |
| E l'unico passaggio aggiuntivo è caricare quella funzione di destinazione, identificare quale |
| funzione rappresenta il nostro obiettivo. E tutto quello che sto facendo ora è replicare quello che ho fatto prima. Farò il mio PCA funzionale diretto. |
| Personalizzerò i miei FPC fino a 2 e questo... questi risultati sono esattamente ciò che stavamo vedendo prima, e poi verrò su e farò il mio DOE funzionale. |
| E ancora, metterò in evidenza la mia curva qui. E ora che la curva target è stata identificata, posso massimizzare la desiderabilità, quindi, in altre parole, posso trovare i set point per pH e temperatura |
| e la pressione e la velocità di miscelazione che mi daranno una curva che assomiglia di più a quella curva target. Quindi c'è |
| tasso di crescita molto veloce, un tasso di crash lento. E ne avrei solo bisogno |
| iniziare con terreni con un pH di 7,2 e utilizzare la temperatura di 37,9 sui miei fermentatori. Quindi questo è l'approccio che avrei usato per la comprensione e l'ottimizzazione del processo. |
| Quando parliamo di monitoraggio del processo delle curve di crescita o delle forme delle curve, ci sono alcune opzioni diverse là fuori e ho un paio di pensieri diversi qui. |
| Se questo è qualcosa che vuoi fare, ti consiglio vivamente di dare un'occhiata a questa presentazione del 2020, controllo statistico del processo per le variabili di processo che hanno una forma funzionale. |
| Questa è stata una presentazione che è stata registrata ed è davvero fantastica. Hanno parlato di prendere quei componenti principali funzionali e inserirli in carte di controllo multivariate guidate dal modello. |
| Hanno fatto una grande dimostrazione ... dimostrazione di ciò e poi hanno anche parlato di alcuni forse inconvenienti di adottare quell'approccio. |
| Quindi voglio discutere un altro approccio che potresti prendere in considerazione e che sta guardando la differenza integrata da uno standard. |
| Quindi, proprio come prima, quando guardavamo quella curva target, potevi usare quella curva target come standard e poi per ogni batch, calcolare la differenza da quello standard. Quindi, per esempio, qui ho |
| una curva di un lotto rappresentata qui in blu... o scusate, in rosso. La curva standard è in blu e sto prendendo la differenza e la differenza qui è su questa curva verde in basso. |
| E puoi semplicemente integrare su quella curva per trovare l'area sotto la curva, e poi potresti usarla nel tuo programma di controllo del processo statistico. E voglio solo guidarti rapidamente attraverso i passaggi su come farlo. |
| Quindi ecco il mio tempo e i miei valori di torbidità standard, la mia torbidità per quel primo lotto, e ho appena calcolato la differenza tra questi due. E poi quello che puoi fare è che puoi |
| usa l'adattamento Y per X per costruire un modello spline per quella differenza nel tempo, quindi puoi salvare i coefficienti per quel modello in una tabella di dati. |
| Quello che otterrai sono i tuoi valori X e i quattro coefficienti che puoi usare per costruire il modello spline. Ed ecco la formula per costruire il modello spline, |
| e poi integri questa formula. Quindi puoi farlo tramite script, ho scelto di farlo nell'editor di formule. Quindi ho appena determinato l'area per ogni fetta della curva qui semplicemente integrando la formula precedente a mano. |
| Quindi, una volta che ho queste fette di aree, devo solo sommare le aree che mi interessano. Quindi posso fare l'area per la curva totale. |
| Posso anche farlo solo per la fase di crescita e solo per la fase di morte, e l'ho fatto qui quassù |
| nella mia variabile di tabella. Quindi ora ho una variabile per la mia differenza integrata totale, per la mia differenza integrata solo durante la fase di crescita e la mia differenza integrata durante la fase di morte. |
| E in sostanza devi solo passare attraverso e farlo per ciascuno dei lotti. Qui l'ho fatto per tutti i 20 batch e ora puoi eseguire il controllo del processo statistico su quelle variabili. |
| Quindi questi sono i miei approcci che avrei adottato per esaminare il monitoraggio dei processi e anche la comprensione dei processi e l'ottimizzazione dei processi utilizzando l'esploratore di dati funzionali. Spero che tu lo controlli e che sia un gioco da ragazzi anche per te. Grazie. |