Fujifilm Diosynth Biotechnologies è un'organizzazione di sviluppo e produzione a contratto (CDMO) che ha un reparto dedicato alla caratterizzazione dei processi, focalizzato sull'esecuzione di studi di caratterizzazione dei processi (PCS). L'obiettivo del PCS è dimostrare che i processi dei nostri clienti sono robusti alle modifiche nelle impostazioni dei parametri o nei loro normali intervalli operativi.
I PCS impiegano comunemente la progettazione di esperimenti (DOE) per investigare gli effetti che gli input di processo hanno sugli attributi di qualità (QA) e sugli indicatori di performance di processo (PPI). L'analisi DOE è uno strumento utile per identificare gli input che hanno un effetto sui QA/PPI, ma è principalmente quantitativa.
Oltre all'analisi DOE tradizionale, il calcolo del rapporto di impatto (IR) per ogni input fornisce una valutazione quantitativa e qualitativa e può aiutare nell'assegnazione di un parametro come critico o meno. L'IR fornisce una misurazione della dimensione dell'effetto rilevante per un intervallo accettabile.
Eseguire i calcoli manualmente richiede molto tempo ed è soggetto a errori. Presenteremo uno strumento di automazione in grado di estrarre le informazioni richieste da un modello DOE e calcolare l'IR. Un'interfaccia consente all'utente di personalizzare il modo in cui vengono calcolati i risultati.
Ciao a tutti. Sono davvero felice di essere qui oggi con il mio collega Sam. Oggi parleremo di rapporti di impatto. In pratica, qual è l'impatto dei tuoi fattori DoE sui tuoi output o risposte DoE? Introdurrò il concetto, i calcoli e gli esempi in JMP, quindi passerò la parola a Sam che ti guiderà effettivamente nell'automazione di quel processo usando JSL e ti mostrerà come lo ha fatto in add-in.
Prima di tutto, è il momento delle confessioni. Avrei davvero voluto intitolare questo intervento, Cosa hanno in comune gli scienziati della caratterizzazione dei processi con gli scienziati della NASA? Ma il collegamento era troppo labile e forse sarebbe stato un po' mistificante. Tuttavia, continuo a usare i concetti qui. Ecco perché abbiamo le immagini dei meteoriti nella prima diapositiva. Questa è la mia metafora. Sto guardando i crateri da impatto e li sto confrontando con i rapporti di impatto perché abbiamo bisogno di divertirci un po'.
Cosa sta succedendo qui? Abbiamo un meteorite molto simile, e potrebbe cadere sulla Terra o su Marte o sulla Luna, e le condizioni sarebbero diverse. Qui hai, prima di tutto, un'atmosfera o pochissima atmosfera o nessuna atmosfera, che cambia l'esplosione, che cambia il comportamento del meteorite. Se sei sulla Terra, il cratere d'impatto che si formerà Potrebbe avere un impatto davvero enorme su ciò che sta accadendo intorno perché sulla Terra, abbiamo persone che vivono intorno.
Con questo in mente, cosa affronteremo oggi? Esamineremo un altro rapporto statistico. Gli statistici amano i loro rapporti. Poi esamineremo cosa misura specificamente il rapporto di impatto. Poi risponderemo a questa domanda: "Posso calcolarlo in JMP?" La risposta è, ovviamente, che puoi, e puoi farlo in diversi modi. Puoi farlo in modo doloroso. Ti guiderò attraverso questo manualmente. Salterò questo passaggio perché non abbiamo tempo, ma abbiamo creato un flusso di lavoro per rendere le cose un po' più semplici con la gestione delle tabelle.
Poi passerò la parola a Sam, che vi mostrerà il modo felice di calcolare il rapporto di impatto cliccando sul suo componente aggiuntivo JMP. Qui abbiamo un brutto disegno a mano che ho fatto io stesso per mostrarvi qualcosa che probabilmente avete visto molte volte perché è un grafico di controllo, e sono piuttosto onnipresenti nel mondo degli statistici. Qui abbiamo un output, e cambia nel tempo man mano che creiamo più batch, per esempio.
Abbiamo delle zone su questo grafico. Nella zona viola-bluastra, abbiamo dove cade il nostro output. Poiché si tratta di dati distribuiti normalmente, possiamo fare una previsione su dove cadrà con il passare del tempo. Qui abbiamo delle statistiche che ci danno una previsione di quanto ampia potrebbe diventare questa zona blu. Poi in verde tra due specifiche, abbiamo un tipo di zona sicura del cliente. I clienti tendono a fornirci specifiche, oppure potremmo aver calcolato un criterio di accettazione dal lavoro di sviluppo, ad esempio.
Ciò che vogliamo fare è assicurarci che il nostro processo si trovi in una zona che sia ben contenuta dalla zona sicura quando eseguiamo il controllo del processo. Un rapporto che viene utilizzato per questo è il Capability Index, come il CPK, il PPK, sta sostanzialmente rapportando questa zona rispetto a questa zona verde. Questo è il più simile che ho trovato al rapporto di impatto. Qui abbiamo quasi lo stesso grafico. Si potrebbe dire che ho riutilizzato lo stesso disegno. L'unica cosa che cambia qui è che questa volta, invece di avere statistiche che prevedono la diffusione dei dati, abbiamo statistiche che prevedono la forma dei dati. Stiamo modellando cosa succede a un output specifico quando si modifica l'input e si sposta il suo valore da basso ad alto.
Ecco cosa faresti se stessi eseguendo un DoE e cambiassi sistematicamente le condizioni operative. Più in particolare per la caratterizzazione del processo, questo basso-alto sarebbe un intervallo che vuoi dimostrare essere accettabile. Qui abbiamo un'equazione alla fine e abbiamo una zona blu, il minimo-massimo previsto per la nostra risposta, e abbiamo ancora una zona verde, ciò che è accettabile per darci un prodotto di qualità alla fine del processo.
Stiamo verificando, di nuovo, se la deviazione occupa una quota accettabile della nostra area sicura o di gioco. Questo rapporto di impatto può aiutarci a confrontare l'impatto di diversi fattori perché otterremo un modello del genere per tutti i nostri fattori. Potrebbe anche essere un criterio per classificare quei fattori se questo fa parte di un DoE. Cosa sta realmente misurando questo rapporto di impatto? Ne avevi avuto un indizio nella diapositiva precedente, ma torniamo ai meteoriti.
I nostri scienziati della NASA hanno calcolato due cose. Il luogo in cui il nostro meteorite colpirà il pianeta e anche il raggio del cratere d'impatto. Hanno detto che, finché saremo ben all'interno di questa zona verde sicura, chiunque viva all'esterno starà bene. Ovviamente, questo non sarebbe vero per il meteorite, ma seguitemi per un secondo. Quello che stiamo rapportando qui è fondamentalmente il raggio del cratere al raggio della zona sicura. Speriamo che questo numero sia molto più piccolo di questo. Che la zona sicura sia molto grande rispetto al cratere d'impatto.
Ora, quello che succede è che potremmo essere fuori bersaglio, così che gli scienziati della NASA hanno previsto che il meteorite sarebbe caduto qui, ma è caduto qui. Anche se l'area sicura era probabilmente abbastanza grande per un meteorite/processo centrato, in questo caso qui, abbiamo effettivamente il cratere d'impatto ben al di fuori dell'area sicura. Spero che tu non viva da queste parti. Un'altra possibilità, e ce ne sono molte altre, sarebbe che siamo nel bersaglio qui, ma abbiamo calcolato male il cratere. Il cratere è molto più grande di quanto pensassimo che fosse. Di nuovo, è fuori dall'area sicura e il raggio dell'area sicura è in realtà più piccolo di quello del cratere qui. Questa è solo un'immagine e vediamo come apparirebbe su un grafico. Di nuovo lo stesso grafico con alcune frecce extra qui e alcune equazioni.
In parole povere, il tuo rapporto di impatto è in realtà il rapporto tra la dimensione dell'effetto e la distanza rispetto alla tua specifica o al criterio di accettazione. La dimensione dell'effetto qui è quella sottile freccia blu e arancione in questo caso. È la distanza dalla previsione minima al centro o dalla previsione massima al centro. Stiamo rapportando questo alla distanza dal centro alla tua specifica su entrambi i lati. In questo caso, questa distanza occupa il 70% della nostra zona sicura. Questo non è un buon rapporto di impatto qui. Qui è solo il 40%, è comunque una cifra piuttosto alta. Ma per essere onesti, dovremo prendere il massimo di quei due valori, quindi considereremmo il 70% qui.
Questo è il mio disegno a mano. Passiamo a un vero grafico JMP. Questo è un grafico a salto, ed è solo una parte di un profiler che otterresti alla fine di un'analisi DoE. In questo caso, abbiamo un po' di curvatura, ma le zone sono le stesse. Se vogliamo calcolare il nostro rapporto di impatto al minimo qui, la previsione è che il minimo al centro sta prendendo circa il 42% del minimo alla specifica. D'altra parte, la previsione dal minimo alla parte superiore o massima sta prendendo solo circa il 7% della nostra zona sicura.
Tuttavia, dovremo segnalare questo numero, quindi è ancora un numero piuttosto alto qui. Le domande a cui stiamo cercando di rispondere qui sono: siamo in linea con l'obiettivo con un impatto piccolo rispetto a ciò che è accettabile? Ora, uscirò da qui e andrò in JMP per mostrarvi come eseguire questa operazione manualmente, nel modo doloroso. Qui abbiamo un DoE standard a scatola, cinque fattori. Abbiamo condiviso qui solo quattro risposte. È tutto anonimizzato, quindi mi dispiace molto, ma i numeri sembrano un po' strani perché sono tutti tra meno uno e uno.
Ma quello che stiamo cercando qui è di avere limiti di risposta specificati in modo da poter giocare con l'obiettivo per quelle risposte. Massimizzare per la maggior parte di esse per qualcosa come impurità che potrebbero essere ridotte al minimo, e potremmo non essere nemmeno interessati a quanto in alto vanno. Non passerò alla modellazione perché non è per questo che siamo qui. Mi dispiace. Script sbagliato. Ecco qua. Abbiamo già adattato questo, e questo è l'esempio che avevo nelle note, quindi continuerò con questo.
Qui stiamo usando il Profiler per ottenere tutti i numeri di cui abbiamo bisogno per la nostra equazione. Stiamo impostando questo al punto centrale e registreremo quel numero. Ecco fatto. Queste sono le condizioni del punto centrale. Tutto è mantenuto al punto centrale qui. Chiederò a JMP di ricordare questa impostazione. Lo chiamerò Load Center Point perché sono interessato al carico qui. Questo è il mio primo. Quindi manualmente, non avrei davvero bisogno di chiedere aiuto a JMP qui. Tutto è al punto centrale per quei due. Potrei semplicemente spostare questo qui al minimo e posso registrarlo di nuovo come valore minimo. Questo è il mio carico minimo qui.
Per il massimo, è un po' più complicato. Potrei provare a fare così. Potrei renderlo più grande e cercare di assicurarmi di arrivare al massimo qui. Ma mi fiderò di JMP per questo. Farò clic su Control + Alt, e farò clic sugli altri due grafici qui, e bloccherò le impostazioni del fattore al punto centrale. Perché mi interessa solo cosa sta facendo il carico e qual è il massimo per il carico quando tutto il resto è mantenuto a quel punto. Quindi userò il massimizzatore in JMP.
Ecco qua. Avrei potuto arrivarci a mano, ma ora so che è esattamente al massimo. Salverò anche questo. Abbiamo il massimo. Ora ho quasi tutto ciò di cui ho bisogno. Se lo fai manualmente, lo fai per ogni fattore o parametro di equazione in questo elenco per ogni risposta. Se hai modelli abbastanza grandi e hai forse 5-10 risposte, questo diventa molto lavoro molto rapidamente.
Quindi dovresti esportare tutti questi dati in una tabella. Utilizzeresti questo se ne avessi molti, ma io ne ho solo uno, quindi farò questo. Qui hai tutte le informazioni di cui hai bisogno nel formato sbagliato. Ciò che dobbiamo tenere è dove sono queste? Quindi vogliamo questo numero qui. Ora, useresti transpose in tables qui, ma non lo farò perché l'ho già fatto in precedenza. Voglio solo condividerlo rapidamente con te. Perché non è felice? Qui abbiamo i dati di transpose. Abbiamo tutte le etichette dalla tabella qui.
Manualmente, dovremmo aggiungere le nostre specifiche inferiori e superiori. Da queste e dal minimo e dal massimo e dal CP, possiamo calcolare il numeratore per i rapporti qui, il denominatore per i rapporti e il rapporto stesso. Hai la piccola distanza sulla grande distanza che ti dà il tuo rapporto di basso impatto. Quindi usi semplicemente la formula per ottenere il massimo dei due e dovresti ripetere questo per ognuno di loro. Ora lascio la parola a Sam che potrebbe mostrarti quanto è più facile farlo una volta che hai un componente aggiuntivo per questo. Sam?
Grazie, Gwen. Come ha detto Gwen, abbiamo deciso di creare un componente aggiuntivo per automatizzare questa attività. Ora farò solo una rapida dimostrazione di come funziona il componente aggiuntivo. Sto usando la stessa tabella dati con cui Gwen ha appena lavorato. Il motivo per cui abbiamo deciso di creare un componente aggiuntivo è semplicemente perché rende tutto più semplice rispetto all'esecuzione di uno script direttamente da una finestra di script. La cosa bella di avere un componente aggiuntivo è che quando passi il mouse sul nome del componente aggiuntivo, puoi aggiungere una descrizione comandi. In questo caso, la descrizione comandi ti dice semplicemente la finestra corretta da cui deve essere eseguito il componente aggiuntivo.
Infatti, se provo a cliccarci sopra, vedrai che non succede niente perché non sono nel posto giusto. Se ora apro lo script con quei modelli che abbiamo creato prima, puoi vedere che ora posso eseguire lo script e poi verrà eseguito correttamente. Prima di tutto, all'utente vengono presentate alcune finestre che hanno alcune istruzioni e poi più avanti alcune aree per l'input dell'utente. La prima finestra ha solo alcune istruzioni sui requisiti per la tabella dati sottostante.
Ad esempio, le colonne dei fattori devono essere codificate e tutte le unità devono essere inserite come proprietà di colonna. Se non è così per nessuna delle colonne, puoi semplicemente premere Annulla e posso tornare indietro e apportare quelle modifiche. Ma in questo caso, so che sono tutte codificate correttamente. Premerò di nuovo Esegui e poi cliccherò su OK. Quindi la finestra successiva ha solo l'area per l'inserimento delle impostazioni dei fattori. Noterai che abbiamo un input qui per i fattori categoriali.
Non è possibile calcolare un rapporto di impatto per un fattore categoriale. Tuttavia, tutti i fattori categoriali contenuti nei modelli devono essere fissati a un'impostazione particolare, quindi questo consente all'utente di inserirla qui. Per i fattori rimanenti che erano fattori continui che sono stati valutati nel DoE, puoi vedere che abbiamo un'area per inserire tali impostazioni. Puoi vedere che lo script legge automaticamente il valore minimo e massimo semplicemente leggendo dalla tabella. Ciò che ha fatto è anche calcolare il punto centrale semplicemente guardando il centro tra il minimo e il massimo.
Tuttavia, in alcuni casi, il punto centrale potrebbe non essere esattamente al centro dell'intervallo. In questo caso, era il caso del carico, quindi lo cambierò in 20. È possibile modificare uno qualsiasi di questi valori. Il vantaggio di poter modificare l'input qui è che se eseguiamo l'aggiunta e otteniamo rapporti di impatto troppo alti per alcuni dei fattori. Possiamo quindi eseguire di nuovo l'aggiunta e cambierò i valori qui, provando a valutare un intervallo di fattori ridotto, ad esempio. Quindi vedere se il rapporto di impatto sembra migliore in quel nuovo intervallo.
Ma manterrò invariati i restanti valori e cliccherò su OK. Quindi la finestra finale avrà solo l'input per i criteri di accettazione della risposta. Inserirò quei valori ora. Se c'è un solo criterio, puoi semplicemente inserirne uno e lasciare l'altro vuoto. Se non hai criteri, puoi lasciare entrambe le caselle vuote e sarà comunque in grado di calcolare il rapporto di impatto. In quel caso, è solo la differenza percentuale tra la risposta del set point e la previsione minima o massima. Non offre esattamente la stessa misurazione in termini di significatività pratica, ma verrà comunque calcolato dallo script.
Ora, se clicco su OK, puoi vedere che la tabella di riepilogo è stata generata. Ma se torno alla finestra da cui ho eseguito il componente aggiuntivo, puoi vedere che sotto ogni profiler di previsione, le impostazioni sono state ricordate. Queste sono le impostazioni che sono state utilizzate per ottenere la previsione minima e massima per ogni fattore nel modello. Questo è utile in modo da poter tornare indietro e vedere come sono stati effettuati i calcoli. È bello poterlo rivedere.
Ma ora darò solo una panoramica molto generale di come funziona effettivamente lo script. Innanzitutto, lo script esegue un ciclo attraverso ogni modello di risposta nella finestra. Quindi imposta la desiderabilità per massimizzare la risposta. Lo script esegue un ciclo attraverso ogni termine nel modello. Per il primo termine, che è il carico in questo caso, sblocca quindi le impostazioni del fattore, in modo che possa essere libero di muoversi. Quindi tutti gli altri fattori vengono bloccati alla loro impostazione del punto di riferimento. Lo script esegue quindi la funzione Maximize and Remember. Ora puoi vedere che quell'impostazione è stata salvata sotto il Profiler e puoi vedere che abbiamo massimizzato questa risposta semplicemente modificando il fattore di carico in questo caso.
Quindi continua quell'operazione per ogni termine nel modello, quindi la desiderabilità viene impostata per minimizzare la risposta, quindi quel processo viene ripetuto di nuovo. Ogni termine viene quindi valutato di nuovo per ottenere la previsione minima. Quindi, infine, tutte quelle impostazioni ricordate vengono quindi aggiornate in modo che il nome sia significativo. Quindi mostriamo il nome del fattore e se l'obiettivo era minimizzare o massimizzare la risposta. Quindi, infine, questo intero processo viene quindi ripetuto per ogni modello di risposta contenuto nella finestra. Ecco come funziona lo script. Ora tornerò alla tabella di riepilogo che è stata emessa.
Qui puoi vedere che tutti i dati vengono semplicemente raccolti e riportati in questa tabella. Ogni riga contiene un fattore specifico per ogni modello di risposta che è stato valutato. Abbiamo colonne per i criteri di accettazione che sono stati immessi dall'utente. Ci sono poi colonne che mostrano la previsione alle impostazioni del set point, e poi la previsione minima e massima per ogni fattore contenuto in quel modello di risposta. Poi le colonne rimanenti sono solo formule. Qui abbiamo la differenza tra la previsione minima e la previsione del set point, e poi, in modo simile, per la previsione massima e la previsione del set point.
Quindi le ultime due colonne sono solo i rapporti di impatto calcolati. Abbiamo il rapporto di impatto inferiore e il rapporto di impatto superiore. Noterete che dove abbiamo solo un criterio, quindi per l'impurità in questo caso, poiché abbiamo solo un criterio di accettazione superiore, calcoliamo solo un rapporto di impatto superiore. Quindi la colonna finale è solo il rapporto di impatto complessivo. Questo è semplicemente il massimo del rapporto di impatto inferiore e superiore. Concluderò questa parte del discorso riassumendo i vantaggi dell'utilizzo di un componente aggiuntivo per automatizzare questa attività e saltare.
Innanzitutto, usare il componente aggiuntivo è molto più rapido che farlo manualmente. In secondo luogo, questo consente di ripetere l'attività molto più facilmente. Come ho detto, se esegui il componente aggiuntivo e ottieni rapporti di impatto considerati troppo alti, puoi semplicemente rieseguire il componente aggiuntivo, modificare le impostazioni del fattore e vedere se riesci a ottenere rapporti di impatto accettabili. Infine, ci sono molte meno possibilità che si verifichino errori perché non devi eseguire alcuna trascrizione o manipolazione dei dati. Lo script raccoglie tutti quei dati insieme e poi li inserisce tutti in questa tabella che ottiene un output alla fine.
Okay, grazie. Con questo si conclude la mia parte del discorso. Lascio la parola a Gwen per riassumere le cose. Grazie.
Oltre a quanto detto da Sam, un grande vantaggio del componente aggiuntivo è che puoi ripetere i calcoli e modificare ciò che inserisci nelle prime due tabelle. Puoi modificare le impostazioni del fattore se vuoi, ad esempio, inserire ciò che ti eri prefissato per mostrare dove si trova il tuo intervallo accettabile provato, un po' al di fuori del tuo normale intervallo operativo, presumibilmente. L'altra cosa che potresti cambiare è rivedere le tue specifiche o i criteri di accettazione. Se i tuoi rapporti di impatto fossero davvero alti, allora la tua zona di sicurezza sarebbe stata forse un po' troppo piccola per operare comodamente.
Potresti spingere le specifiche e controllare se tutti i tuoi rapporti di impatto sono un po' più piccoli. Potresti probabilmente usare questo come giustificazione per cambiare quei criteri di accettazione. Un'altra cosa che puoi fare con quei rapporti di impatto è che potresti usarli collettivamente come criterio per classificare i parametri di processo testati. Potrebbe essere che un parametro di processo sia critico, altamente critico o non critico alla fine del DoE perché il suo impatto è molto piccolo. Penso che questo concluda ciò che avevamo da dire sui rapporti di impatto oggi. Siamo entrambi disponibili a rispondere alle domande se ne hai. Grazie mille.