• Non ci sono risultati.

Data Science per l'analisi di un sistema di inchiostrazione per stampanti flessografiche

N/A
N/A
Protected

Academic year: 2021

Condividi "Data Science per l'analisi di un sistema di inchiostrazione per stampanti flessografiche"

Copied!
68
0
0

Testo completo

(1)

UNIVERSITÀ DI PISA

Dipartimento di Informatica

Laurea Magistrale in Data Science and Business Informatics

Tesi di Laurea

Data Science per l’analisi di un

sistema di inchiostrazione per

stampanti flessografiche

Relatori:

Prof.ssa Anna Monreale

Prof. Daniele Mazzei

Candidato:

Giovanni Genovese

Tutor Aziendale BOBST Firenze S.r.l. Dott. Antonio Bellosi

(2)
(3)
(4)
(5)

SOMMARIO

BOBST, presso la sede italiana di Firenze, ha realizzato un nuovo sistema di inchiostrazione per le proprie macchine da stampa individuando la necessità di controllare l’intero processo cui esse sono preposte.

L’ impresa, per far fronte a questa specifica esigenza, vuole dapprima acqui-sire una conoscenza approfondita delle componenti critiche del processo di stampa e successivamente elaborare un modello comportamentale che regoli l’intero sistema.

Nell’ambito di tale sviluppo, sono state conseguite le seguenti macro-attività:  Supporto alla strumentazione del muletto di stampa con l’inserimento

di molteplici sensori per il popolamento del database;  Preparazione dei dati per le analisi;

 Analisi dei dati collezionati.

L’esecuzione delle attività sopra elencate non è strettamente sequenziale, bensì si rileva una interconnessione tra la prima e la terza fase del processo: ultimata la seconda, gli esiti della terza hanno comportato una opportuna modifica ed una eventuale rimodulazione del set di sensori (prima fase). Pertanto l’analisi dei dati ha, tra le altre, la funzione di convalidare le scelte in merito al primo punto. BOBST, specie nella fase iniziale, vuole imposta-re una strategia guidata dai dati così da non affidarsi solo ed esclusivamen-te all’esperienza, alle conoscenze di settore, al mercato ed al benchmark. Analizzando le informazioni a disposizione vuole comprendere la soluzione migliore per raggiungere le condizioni ottimali di lavoro.

(6)

BOBST, at the Italian headquarters in Florence, has created a new inking system for its printing machines, identifying the need to control the entire process to which they are responsible. The company, in order to meet this specific need, wants first to acquire a thorough knowledge of the critical components of the printing process and then develop a behavioral model that regulates the entire system. As part of this development, the following macro-activities were achieved:

 Support for the instrumentation of the press fork with the insertion of multiple sensors for the population of the database;

 Preparation of data for analysis;  Analysis of collected data.

The execution of the activities listed above is not strictly sequential, but there is an interconnection between the first and third phase of the process:

(7)
(8)

Sommario i

Abstract ii

Introduzione vii

1 CONTESTO AZIENDALE 1

1.1 Il mercato di riferimento del packaging . . . 3 1.2 Produzione su commessa . . . 4

2 LA STAMPA FLESSOGRAFICA 5

2.1 Il processo di stampa standard . . . 6 2.2 Colorimetria . . . 8 2.2.1 Variazione della percezione del colore: il parametroE 9 2.3 Stampante linea M5 . . . 10

(9)

4.3 Database per le analisi . . . 20

4.4 Data Pre-Processing . . . 22

5 FRAMEWORK ANALITICO 25 5.1 Data Understanding . . . 26

5.1.1 Distribuzione dei dati . . . 29

5.1.2 Gestione dei Valori Mancanti . . . 32

5.1.3 Correlazioni . . . 34

5.2 Estrazione dei profili macchina . . . 37

5.2.1 K-Means Clustering . . . 37

5.2.2 Analisi dei profili . . . 39

5.3 Nip Area Analysis . . . 42

6 CASO DI STUDIO: ANALISI COSTO/BENEFICIO 45 6.1 Selezione pesata sui costi . . . 47 7 CONCLUSIONI E SVILUPPI FUTURI 51

A Strumenti utilizzati 52

(10)

1.1 Logo azienda . . . 1

2.1 Schema del funzionamento del processo di stampa flessografico 6 2.2 M5 line . . . 10

4.1 Struttura Database aziendale . . . 18

4.2 Struttura database per le analisi . . . 21

5.1 Stampa Corretta: True/False . . . 29

5.2 Box Plot Temperature a confronto . . . 30

5.3 Treemap Nip Area . . . 30

5.4 Bar Chart Temperature Ambiente . . . 31

5.5 Matrice delle correlazioni . . . 34

5.6 Scelta del parametro K . . . 38

5.7 Bilanciamento Stampa_Corretta nei Cluster . . . 39

(11)

ELENCO DELLE TABELLE

2.1 Caratteristiche componenti M5 . . . 10

4.1 Esempio di tabella dati del Database . . . 19

4.2 Trasformazione Dataset . . . 22

4.3 Inserimento colonna id_conf ig . . . 24

4.4 Configurazioni macchina distinte . . . 24

5.1 Attributi dataset categorizzati per tipologia . . . 26

5.2 Trasformazione Dataset . . . 32

5.3 Riduzione Dataset . . . 36

5.4 Percentuale di Stampa_Corretta nei Cluster . . . 40

5.5 Profilo Negativo Cluster #1 . . . 41

6.1 Tabella dei costi . . . 46

6.2 Riduzione condizionata del dataset . . . 47

6.3 Percentuale di Stampa_Corretta nei Cluster . . . 49

(12)

La sfida più grande per la maggior parte delle aziende oggi è nella capacità di acquisire un vantaggio competitivo e di costo, lavorando sui dati. Tutte le aziende e tutte le Pubbliche Amministrazioni sono delle vere e proprie grandi "fabbriche di dati". Noi stessi contribuiamo costantemente, consa-pevolmente e spesso anche inconsaconsa-pevolmente, alla "produzione di dati". Ma a che servono tutti questi dati raccolti? Affinché sia davvero utile a noi, è importante processare, raccogliere e analizzare grandi volumi di dati, noti come Big Data (ad esempio dai sensori, dai semafori, e da qualsiasi dispositivo connesso), sia in azienda per migliorare sicurezza e produttività, sia in qualsiasi ambito e per qualsiasi tipo di oggetto connesso.[3]

Così come è avvenuto per innovazioni quali Internet, data center o cellulari, anche i Big Data sono uno step verso un modo diverso di gestire il business e la società, che con l’introduzione dell’Internet of Things (IoT) segna in esse un punto di svolta.

(13)

Il Data Scientist che opera in tale ambito, può aiutare a prendere deci-sioni più accurate al fine di migliorare la produzione industriale e lo sviluppo di servizi diretti alla clientela con una conseguente riduzione dei costi e un incremento dei ricavi.

Il progetto di tesi illustrato nel presente elaborato, svolto presso la mul-tinazionale BOBST Firenze srl, si colloca proprio in questo contesto che vede una nuova applicazione della Data Science nel mondo industriale. In particolare, l’obiettivo del lavoro è fornire un modello comportamentale del processo di stampa flessografica su una determinata macchina industriale, individuando i parametri critici da monitorare che portano ad una con-dizione di errore nell’output. A tale scopo, è stato necessario dapprima processare i dati acquisiti tramite sensori con tecniche di ETL (Extract, Transform, Load) [7], cosicché da renderli idonei all’applicazione di analisi di data mining. Successivamente, i dati opportunamente trasformati, sono stati analizzati con tecniche di clustering che abilitano l’estrazione di profili comportamentali.

La tesi è così articolata: nel Capitolo 1 viene presentata l’azienda pro-duttrice della macchina di stampa; nel Capitolo 2 viene descritto il processo di stampa flessografica; nel Capitolo 3 vengono descritte le tipiche fasi del processo di ETL; nel Capitolo 4 viene contestualizzato ed attuato il processo precedentemente descritto; nel Capitolo 5 si fornisce l’analisi dei dati colle-zionati; nel Capitolo 6 viene presentata un caso di studio in cui si mostra un’analisi che considera anche i costi che l’impresa dovrà sostenere per la selezione di un determinato set di sensori.

Nelle Conclusioni, infine, vengono discussi i risultati ottenuti e prospettati i possibili sviluppi futuri.

(14)

CONTESTO AZIENDALE

Con oltre 120 anni di esperienza specialistica, BOBST fornisce i macchina-ri, le soluzioni e l’esperienza tecnica per supportare i propri clienti durante l’intero ciclo di produzione di imballaggi e di etichette di ottima qualità e ad elevate prestazioni e produttività.

Fondata nel 1890 da Joseph Bobst a Losanna, in Svizzera, oggigiorno l’im-presa è presente in più di 50 paesi, gestisce 14 stabilimenti di produzione in 8 paesi e impiega circa 5400 persone in tutto il mondo.

La visione aziendale riportata sul sito ufficiale dell’azienda1, "People - Kno-wledge and Values", esprime al meglio i valori di BOBST: sono le persone e le vaste conoscenze tecniche in loro possesso che conducono al successo. I principi cardine, sia come gruppo che come individui, sono fiducia, rispetto, passione e prestazione.

(15)

1 – CONTESTO AZIENDALE

Dal 1° gennaio 2010, il Gruppo opera in ben tre Business Unit offrendo nell’unità di:

 Sheet-f ed: Attrezzature adatte per la stampa e la trasformazione di imballaggi in cartone ondulato e pieghevole;

 W eb-f ed: Soluzioni ad alte prestazioni per la produzione di imballag-gi flessibili, sia alimentari che non, etichette, applicazioni decorative e di sicurezza, eccetera;

 Services: Un servizio clienti di qualità, superiore alle industrie del packaging, che assicura il continuo funzionamento in condizioni otti-mali dei macchinari dopo l’acquisto. I servizi spaziano dalla consu-lenza specialistica alla fornitura di servizi di base, soluzioni di manu-tenzione, miglioramenti dei macchinari, competenze e soluzioni pre-stazionali.

Le sedi presenti sul territorio italiano attualmente sono tre: Piacenza, San Giorgio Monferrato e Firenze. Le ultime due, nello specifico, progettano e realizzano delle particolari macchine da stampa per imballaggi.

La filiale fiorentina, presso cui si è svolto il tirocinio dello scrivente, si occu-pa solo ed esclusivamente di progettare, produrre e manutenere macchine da stampa flessografiche in linea per il packaging di tipo flessibile ed etichette.

(16)

1.1

Il mercato di riferimento del packaging

Il termine inglese "packaging" assume un’accezione più ampia, riferendosi non solo alla materialità dell’imballaggio, ma anche agli aspetti immateriali riguardanti il processo produttivo, industriale ed estetico, laddove, invece, il termine italiano "imballaggio" assume un significato più ristretto, rela-tivo all’involucro materiale o all’operazione (o al complesso di operazioni) attraverso cui la merce viene racchiusa nell’involucro.

Il packaging è da considerare un vero e proprio dispositivo di marketing che raggiunge il consumatore con la massima precisione e certezza.

Gli imballaggi realizzati in cartone o in materiali flessibili rappresentano oltre la metà di quelli oggi utilizzati in tutto il mondo.

È in questi settori che BOBST è uno dei principali attori, offrendo conti-nuamente tecnologie innovative e produttive su cui i proprietari di marchi e gli stampatori di packaging fanno affidamento.

Valutata $820 miliardi nel 2014 e prevista per $1 trilione superiore entro il 2020, l’industria globale del packaging coinvolge quasi tutti gli abitanti del mondo ogni giorno. Entro il 2018, l’Asia rappresenterà oltre il 40% del-la domanda globale, con una crescita considerevole anche in Sud America, Africa ed Europa orientale[6].

Con l’aumentare della domanda globale di imballaggi, aumentano anche le sfide per i proprietari di marchi e per i produttori. I clienti stanno ri-chiedendo requisiti standard sempre più elevati in termini di sostenibilità, acquistando da società che su di essa si focalizzano. Allo stesso tempo, il comportamento di questi sta influenzando sia i prodotti che il packaging, in quanto essi desiderano anche la comodità di avere pacchetti più piccoli e

(17)

1 – CONTESTO AZIENDALE

1.2

Produzione su commessa

BOBST si colloca nel settore di produzione su commessa. La produzione, a partire anche dalla stessa ingegnerizzazione del prodotto, inizia solo dal momento in cui è stato ricevuto l’ordine d’acquisto del cliente.

Figura centrale è quindi il singolo acquirente con le sue specifiche esigenze. Ogni prodotto parte da una prima versione standard per divenire poi pres-soché unico in termini di progettazione, produzione, esigenze tecnologiche e vincoli di precedenza.

Si tratta, dunque, di una produzione definita in termini tecnici Make to Order o Engineer to Order che si differenzia dalla Make to Stock basata sulla realizzazione dei prodotti a previsione destinati a magazzino e in atte-sa di essere poi venduti. In dettaglio, la scelta di avere o meno rimanenze in deposito è dovuta dai tempi di consegna dei fornitori esterni che, nel caso dovessero rivelarsi lunghi, influenzerebbero in maniera alquanto significati-va quelli di realizzazione.

Pertanto, in tal caso si preferisce conservare ragionevolmente alcune unità. Come in tutti i settori della costruzione di grandi macchine, l’azienda si trova costantemente di fronte alla situazione di dover produrre poche quan-tità per modello, con continuo aumento nella complessità delle funzionalità dei prodotti e nella costante ricerca di riduzione dei tempi di consegna e dei costi. Spostandosi verso il settore Engineer to Order, si avverte una diminuzione d’importanza delle distinti basi del prodotto e il sistema infor-mativo diventa sempre più uno strumento di aiuto alla progettazione. Per rimanere competitivi nel settore è necessario attuare una forte inte-grazione tra i sistemi, dalla progettazione fino alla fornitura dei servizi di manutenzione post vendita, ed instaurare un’efficace catena del valore integrata.

(18)

LA STAMPA FLESSOGRAFICA

Si fa presente sin d’ora che il capitolo che segue non ha nessuna pretesa di rappresentare una trattazione esaustiva e tecnica del processo di stampa, quanto piuttosto un breve quadro di sintesi che funge da imprescindibile premessa per il reale obiettivo dell’elaborato.

(19)

2 – LA STAMPA FLESSOGRAFICA

2.1

Il processo di stampa standard

Figura 2.1: Schema del funzionamento del processo di stampa flessografico

La flessografia è un metodo di stampa rotativo diretto che usa lastre matrici resilienti a rilievo di gomma, detti cliché.

Tali componenti, la cui flessibilità ha assegnato il nome al sistema qui de-scritto, presentano zone stampanti a rilievo rispetto a zone non stampanti e vengono poste su un cilindro tramite l’utilizzo di un nastro bioadesivo. Ad ogni rotazione di stampa, il cliché viene inchiostrato da un rullo chia-mato anilox la cui superficie è incisa da tanti piccoli alveoli e che presenta una pressione nella parte sottostante al cliché, così da consentire il trasfe-rimento dell’inchiostro.

L’anilox, a sua volta, riceve l’inchiostro da un rullo di gomma che è im-merso costantemente in una vaschetta contenente la materia prima.

Il cliché così inchiostrato, proseguendo nella rotazione - premuto contro il materiale da stampare - rilascia l’inchiostro trattenuto, che si sposta da un rullo al successivo, detto cilindro contro-stampa, arrivando così sulla super-ficie del materiale da stampare posta tra questi.

(20)

di stampa attraverso una lampada a raggi ultravioletti che consente la po-limerizzazione degli inchiostri UV. Il dosaggio dell’inchiostro è regolato sia da una lieve pressione esercitata tra i cilindri, da cui nasce il termine tecnico di stampa al bacio (kiss printing), sia da una lama posta a contatto con l’anilox, detta racla, che rimuove l’inchiostro in eccesso su di esso presente. Infine, bisogna considerare che in genere un qualsiasi tipo di imballaggio richiede più di una colorazione. Pertanto, tale sistema appena descritto e visibile in Figura 5.1, viene replicato in sequenza. Ogni blocco conterrà una specifica tinta così da comporre, per sovrapposizione, un’immagine multi-colore. Ad oggi BOBST realizza sistemi in grado di produrre packaging flessibili fino a più di 10 colori differenti.

In estrema sintesi, il dispositivo di stampa tipico del procedimento flesso-grafico è costituito essenzialmente da:

 Un rullo gommato;

 Un assieme racla utile per ridurre al minimo le vibrazioni sulla lama;  La racla per gestire la quantità di inchiostro;

 Un cilindro anilox;

 Un cilindro stampa porta cliché;  Un contro-cilindro stampa.

(21)

2 – LA STAMPA FLESSOGRAFICA

2.2

Colorimetria

La colorimetria è la disciplina che si occupa di normalizzare la misurazione del colore attraverso lo studio dei modelli di colore.1 Questi sono modelli

matematici astratti che consentono di rappresentare i colori in forma nume-rica, tipicamente utilizzando tre o quattro valori o componenti cromatiche. In dettaglio, si serve di un’applicazione che associa ad un vettore numerico un elemento in uno specifico spazio di colori.

Uno degli spazi dei colori più diffusi ed utilizzati è il CIELAB o più sempli-cemente lo spazio colore LAB, in cui lo spazio colore-opponente è composto dalla dimensione L per la luminosità, mentre a e b sono le dimensioni colore-opponente.

Il colore nel processo di stampa flessografico assume un ruolo chiave per il soddisfacimento dei bisogni del cliente. Quest’ultimo, nella fattispecie, richiede uno specifico punto (c.d. Master) dello spazio colori, unitamente ad un margine di tolleranza dal quale la produzione non dovrà discostarsi. Bisogna, infatti, considerare che durante il processo di stampa non solo i parametri macchina, ma anche le proprietà dell’inchiostro, come la viscosità e la densità, sono sottoposte a molteplici variazioni, le quali determinano uno spostamento dal punto richiesto o, in altri termini, una variazione del colore.

L’obiettivo della produzione sarà quello di mantenersi quanto più vicino possibile al riferimento, quindi al colore indicato.

Tutto ciò sarà possibile attraverso la misurazione del parametro Delta E (d’ora in poi indicato conE).

(22)

2.2.1

Variazione della percezione del colore: il parametro

E

IlE è il valore che indica precisamente la distanza tra due punti all’interno di un qualsiasi spazio colore.

Questo termine deriva in parte dal greco e in parte dal tedesco: rispettiva-mente, il delta indica il cambiamento di una variabile, mentre la E sta per il termineEmpf indung ovvero "sensazione". Di conseguenza, il E indica la variazione della percezione del colore.[13]

Tipicamente, il valore di tale parametro deve essere inferiore a 2.0, in quanto entro tale soglia il prodotto di packaging di elevata qualità viene accettato dal cliente. É opportuno precisare che tale valore dipende fortemente dalla superficie di stampa utilizzata, che nel caso in esame riguarda la produzione di un packaging di tipo flessibile. Appare evidente l’importanza del ruolo che il E gioca all’interno del ciclo di produzione. Pertanto, al fine di assi-curare che si rispetti il limite imposto, ogni macchina di stampa in BOBST è dotata di un apposito sistema di controllo colore.

(23)

2 – LA STAMPA FLESSOGRAFICA

2.3

Stampante linea M5

Figura 2.2: M5 line

Il sistema di stampa M5 presenta alcune caratteristiche tecnologicamente innovative ed all’avanguardia.

L’utente finale può appartenere a svariati settori quali: cosmetici, detersivi, cura della salute, cibo, farmaci, tabacco, giochi, ...

Le principali superfici su cui viene impressa l’immagine richiesta sono, di conseguenza, carta e film.

Di seguito in Tabella 2.1, vengono riportate le caratteristiche tecniche delle componenti su cui sono state svolte le indagini:

Componente Azienda Modello

Anilox Apex Celle Esagonali 60° Vol.10 L.100 Cliché Dupont EFX 045

Colore Inchiostro Flint Blu Reflex "Ancora" Nastro Bioadesivo Lohmann DupoFLEX 4.2 Medium Superficie di stampa Bogophane BOPP 38my WHITE

(24)

Tra la vasta gamma di prodotti a disposizione, BOBST ha scelto di utilizzare una versione modificata della linea di stampanti M5, esposta in Figura 2.2, per la validazione del nuovo sistema di inchiostrazione. Nello specifico, la modifica più significativa è stata la rimozione della vaschetta contenente l’inchiostro sostituita da un distributore che, muovendosi lungo un asse, emette la materia prima direttamente nel punto di contatto tra il rullo gommato e l’anilox formando così un’area di deposito dell’inchiostro (c.d. Nip Area). Uno dei vantaggi e degli aspetti più innovativi di tale modifica consiste nel minimizzare la quantità di inchiostro in macchina, ri-spetto al sistema tradizionale, riducendo così il tempo di latenza del sistema per avviare le modifiche del colore dell’inchiostro.

Fatta questa doverosa premessa e certi di aver fornito al lettore un’ampia ed esaustiva panoramica del dominio applicativo, si comprende la scelta di BOBST di acquisire una conoscenza approfondita delle componenti critiche del processo di stampa, così da evitare di incorrere in errori nel corso di esso.

(25)

CAPITOLO

3

ETL: EXTRACT-TRANSFORMATION-LOAD

Nell’analisi di un ambiente diBusiness Intelligence (da qui in avanti BI) -secondo quanto riportato nel manuale "The Data Warehouse Toolkit" Terza Edizione del 2013 [7] - bisogna considerare ben quattro componenti separati e distinti: i sistemi sorgente operazionali, l’area di staging dei dati, l’area di presentazione dei dati e gli strumenti di accesso ai dati.

3.1

Sistemi sorgente operazionali

I sistemi operazionali consentono di catturare le transazioni dell’azienda. Questi dovrebbero essere considerati esterni all’ambiente di BI, perché pre-sumibilmente non si ha molto controllo sul contenuto e sul formato dei dati in questi tipi di sistemi operazionali.

Le principali priorità che devono possedere sono le prestazioni di elabora-zione e la disponibilità.

Si presuppone che i sistemi sorgente non vengano interrogati nei modi ampi e imprevisti in cui vengono generalmente interrogati nei sistemi di analisi. I sistemi sorgente mantengono pochi dati storici e, se si dispone di un buon sistema di storage dei dati, possono essere sgravati dalla maggior parte delle responsabilità di rappresentazione cronologica.

(26)

Ognuno di essi è spesso un’applicazione stovepipe1 naturale, dove sono

effettuati pochi investimenti per condividere dati comuni quali prodotto, cliente, geografia o calendario con altri sistemi operazionali dell’azienda. Ciò consentirebbe di progettare un sistema per le analisi, in maniera molto più semplice.

3.2

Area di staging dei dati

L’area di staging dei dati in un ambiente di BI, è sia un’area di me-morizzazione che un set di processi comunemente definiti di estrazione-trasformazione-caricamento (ETL).

L’area di staging dei dati è tutto ciò che si trova tra i sistemi sorgente operazionali e l’area di presentazione dei dati. Da un certo punto di vista è analoga alla cucina di un ristorante, dove i cibi crudi vengono trasformati in ottimi pasti. In maniera del tutto analoga, in un sistema di analisi, i dati grezzi vengono trasformati e ,successivamente, caricati in un sistema adatto alle query ed al consumo degli utenti. Così come in una cucina di un ristorante, inoltre, anche l’area retrostante la preparazione dei dati è accessibile solo dagli esperti del dominio.

Requisito chiave di architettura per l’area di staging, infatti, è quello di essere of f -limits agli utenti aziendali e di non fornire alcun servizio d’in-terrogazione e di presentazione.

L’estrazione è dunque il primo passo nel processo di inserimento dei dati in un ambiente di BI. Estrarre significa leggere e comprendere i dati sorgente e copiare i dati necessari, cioè utili per le analisi, per effettuare un’ulteriore

(27)

3 – ETL: Extract-Transformation-Load

Tutte queste trasformazioni precedono il caricamento dei dati nell’area di presentazione del sistema.

Purtroppo l’industria non ha ancora definito se i dati che supportano o che sono prodotti da questo processo devono essere istanziati in strutture normalizzate fisiche prima del caricamento nell’area di presentazione per l’interrogazione e il reporting. Queste strutture normalizzate vengono a volte definite nell’industria come sistemi di analisi aziendali, ma si ritiene che tale definizione non sia appropriata poiché in realtà è un ambito molto più ampio di questo set di tabelle normalizzate. Per questo motivo, per si-stema di analisi aziendale, si intende l’unione di tutti i suoi vari componenti e non solo l’ambito specifico qui discusso.

L’area distaging dei dati è dominata dalle semplici attività di ordinamen-to ed elaborazione sequenziale. In molti casi, non è basata sulla tecnologia relazionale, ma può essere composta da un sistema di file piatti. Dopo aver convalidato i dati per la conformità con le regole aziendali può essere inutile intraprendere il passo finale di creazione di un database.

Indipendentemente da quanto detto poc’anzi, con il caricamento finale nel sistema di analisi il processo ETL può definirsi così concluso.

(28)

3.3

Presentazione dei dati

L’area di presentazione dei dati è dove questi vengono organizzati e resi disponibili per l’interrogazione diretta da parte degli utenti, degli autori di report e di altre applicazioni analitiche. Poiché l’area di preparazione descritta nel paragrafo precedente è off-limits, dal punto di vista della co-munità aziendale l’area di presentazione è tutto ciò che l’impresa vede e tocca tramite strumenti di accesso ai dati. La capacità di visualizzare qual-cosa di così astratto come un set di dati in modo concreto e tangibile è il segreto della comprensibilità.

3.4

Strumento di accesso ai dati

L’ultima componente importante dell’ambiente di BI è lo strumento di ac-cesso ai dati. Quando si utilizza il termine "strumento", ci si riferisce ge-nericamente alla gamma di capacità che possono essere offerte agli utenti aziendali per sfruttare l’area di presentazione allo scopo di prendere decisioni analitiche. Per definizione, tutti gli strumenti di accesso ai dati interrogano questi ultimi nell’area di presentazione del sistema di analisi. L’interroga-zione è, ovviamente, l’essenza dell’utilizzo di tale sistema.

Uno strumento di accesso ai dati può essere semplice quanto uno strumen-to di query ad hoc o complesso quanstrumen-to un’applicazione sofisticata di data mining o di modellazione.

Gli utenti aziendali accederanno probabilmente ai dati tramite applicazioni analitiche precostituite basate sui parametri. La stragrande maggioranza degli utenti potenziali sarà servita da queste applicazioni standard, le quali

(29)

CAPITOLO

4

SUPPORTO AL DESIGN DEL SISTEMA DI

ACQUISIZIONE

Il capitolo che segue riporta una descrizione della base di dati ottenuta dal sistema di acquisizione dati progettata dall’azienda tecnologica TOI1 srl,

fornitore di BOBST per la fase di progettazione e sviluppo del sistema di acquisizione dati per le macchine da stampa. Essa è stata dallo scrivente coadiuvata nell’inserimento ottimale dei sensori nel muletto stampa e nel popolamento del database.

Il sistema di acquisizione di TOI si è rivelato più che adeguato in termini di storage dei dati, ma ai fini dell’analisi degli stessi si è ritenuto opportuno rielaborare le informazioni raccolte seguendo il processo di ETL presentato nel capitolo precedente ed eseguito nel paragrafo §4.4.

(30)

4.1

Introduzione: parametri da osservare

In primo luogo, BOBST ha identificato una serie di parametri da dover monitorare, poiché ritenuti critici nel processo di stampa. La necessità di sottoporli ad un processo di raccolta - requisito essenziale per una successiva attività di analisi - ha fatto sì che l’impresa si rivolgesse ad una società del settore.

Una parte dei parametri di interesse, integrati nella base di dati, era già rilevabile dall’unità di controllo del sistema di stampa senza richiedere l’u-tilizzo di dispositivi esterni.

Per i restanti, invece, è stato selezionato da BOBST un kit di sensori esterni alla macchina di stampa tali da permetterne la misurazione delle tempera-ture dei cilindri, del livello di inchiostro presente nellaNip Area e del flusso di materia prima in circolo nel sistema. La scelta di tali dispositivi di con-trollo è stata compiuta tenendo in considerazione anche della compatibilità con il sistema di acquisizione.

Vengono elencati di seguito, in breve, i sensori esterni scelti dall’azienda ed i relativi parametri da monitorare:

 Optris OPTCT-LT20CFCB32: Temperature

 Keyence IL-S0653: Livello Inchiostro

(31)

4 – SUPPORTO AL DESIGN DEL SISTEMA DI ACQUISIZIONE

4.2

PostgreSQL Database

Tutte le informazioni raccolte dalle componenti del sistema di acquisizione vengono registrate in un apposito database. I dati vengono etichettati con un valore di timestamp5 - espresso in microsecondi considerando lo standard P osix - da cui per lo storage è stato utilizzato un database ottimizzato per le serie temporali, in particolare un TSDB versione 10.3 di PostgreSQL. Tale base di dati può essere considerata come un sistema di salvataggio di log dei dati etichettati appositamente con il relativo riferimento temporale (timestamp). La base di dati è costituita dalle seguenti tabelle:

 config_data: tabella contenente le informazioni relative alle diverse configurazioni macchina6 impostate dall’operatore tramite un pannel-lo di configurazione fornito da TOI. In aggiunta è presente una copannel-lonna ID, che identifica in modo univoco i record della tabella, e una colon-na data_table_colon-name che contiene il riferimento al nome della tabella dati relativo al test svolto come mostrato in Figura 4.1.

 data_[yyyymmdd_hhmmss]: per ogni test eseguito viene creata una nuova tabella nel database denominata in base al timestamp in cui è stata avviata la sessione stessa nel seguente formato:

data_[AnnoMeseGiorno_OraMinSec].

Dal nome della tabella, è possibile risalire alla configurazione macchi-na seguendo il riferimento precedentemente descritto.

Figura 4.1: Struttura Database aziendale

5sequenza di caratteri che rappresentano una data e/o un orario per accertare

l’effettivo avvenimento di un certo evento

6descrizione tecnica dettagliata delle componenti macchina (anilox, cliché, superficie

(32)

Al fine di mantenere più versatile possibile il sistema di acquisizione, le misurazioni raccolte durante un test vengono memorizzate in una tabella dati all’interno del Database utilizzando la struttura riportata a titolo di esempio in Tabella 4.1.

data_201810050822

Timestamp Label Value 15252624000000 Vibrometer ch1 18.1 15252624000250 Vibrometer ch1 18.0 15252624000500 Vibrometer ch1 18.0 15252624000500 Ink temperature 2 30.1 15252624000500 Pressure 1.9 15252624000750 Vibrometer ch1 18.0 Tabella 4.1: Esempio di tabella dati del Database

La struttura appena riportata, come detto all’inizio, è utile per il salvataggio delle acquisizioni dei sensori, poiché queste vengono registrate in successio-ne ogni volta che i sensori acquisiscono una nuova informaziosuccessio-ne.

Ai fini delle analisi dei dati, la struttura non è adeguata dato che occor-re aveoccor-re per ogni istante temporale, il comportamento di tutti i dispositivi presenti a bordo macchina.

In ulteriore analisi, bisogna considerare che la presente struttura genera al-l’interno della base di dati informazioni ridondanti. Infatti, nella tabella conf ig_data, ogni qualvolta che l’operatore avvia un test, la configura-zione macchina relativa viene iscritta nuovamente all’interno di essa, anche se non è cambiata rispetto all’ultima impostata.

(33)

4 – SUPPORTO AL DESIGN DEL SISTEMA DI ACQUISIZIONE

4.3

Database per le analisi

Il nuovo sistema di analisi progettato è indispensabile per avviare il processo di analisi dei dati.

In particolare, è necessario che la nuova base di dati, rispetto alla precedente: 1. non contenga ridondanza di informazioni all’interno delle tabelle del

sistema di acquisizione;

2. consenta di raggruppare ciascun test effettuato in un’unica tabella; 3. consideri una riorganizzazione della tabella contenente l’insieme dei

test in modo da facilitare le analisi da effettuare.

1. Eliminazione Ridondanza. Il primo obiettivo è stato raggiunto

modifi-cando la relazione tra le tabelle relative alla configurazione della macchina ed i test svolti come mostrato precedentemente in Figura 4.1. É stata così rimossa dalla tabella conf ig_data, la colonna data_table_name ed è stata inserita una chiave esterna (c.d. id_conf ig) all’interno delle tabelle dei test svolti. La chiave esterna consentirà di creare un collegamento con l’identificatore univoco della tabella delle configurazioni macchina. Ciò per-mette di generare una relazione uno a molti in cui una configurazione sarà associata a più test oppure - in senso contrario - molti a uno, poiché più test si riferiranno ad una sola configurazione. In questo modo, nella tabella delle configurazioni non verrà creato un record per ogni test svolto come accadeva in precedenza, bensì si otterrà un insieme di configurazioni della stampante privo di duplicati.

2. Unione dei test. Per quanto riguarda il secondo obiettivo, si è deciso di

raggruppare tutti i test svolti in un’unica tabella così da avere una visione sia globale (andamento dei valori tra le giornate) sia specifica (andamento dei valori nel singolo test). Per conservare la separazione tra la fine di un test e l’inizio di uno nuovo, si è deciso di derivare dal Timestamp, il tempo effettivo trascorso (c.d. Time) così da avere al tempo 0 un segnalatore di inizio test e di conseguenza, un termine di quello precedente.

(34)

3. Modifica struttura dell’insieme dei test. L’ultima modifica, infine, è stata

fondamentale ai fini delle analisi, in quanto si vuole osservare il comporta-mento della macchina per ogni istante temporale. Occorre avere tecnica-mente per ciascun record i valori di tutti sensori installati.

Per fornire al lettore maggiori chiarimenti, si riporta in Figura 4.2 la strut-tura delle tabelle del nuovo sistema di acquisizione.

Figura 4.2: Struttura database per le analisi

Prima di proseguire con la descrizione del processo di trasformazione, è opportuno distinguere tra:

 Acquisizione: attività volta al campionamento del dato nell’istante impostato;

 Test: insieme di acquisizioni avvenute in un intervallo di tempo defi-nito (esempio: test di giornata del 05.10.2018);

(35)

4 – SUPPORTO AL DESIGN DEL SISTEMA DI ACQUISIZIONE

4.4

Data Pre-Processing

Estratto quindi l’insieme dei dati (c.d. dataset) nella forma esposta prece-dentemente in Tabella 4.1 vediamo ora, in pratica, cosa è stato eseguito per attuare le modifiche precedentemente descritte.

Come primo passo, si è deciso di modificare fin da subito la struttura dei test (come descritto nel punto 3. Modifica struttura dell’insieme dei test), trasformando la Tabella 4.1 in una nuova tabella in cui l’intestazione cam-bia da <Timestamp, Label, Value> a <Timestamp, Sensor1, Sensor2 ,..., SensorN>.

Per una maggiore chiarezza, viene qui di seguito riportata la Tabella 4.2

TS Label Value t1 Sensor 1 18.0 t1 Sensor 2 30.1 t1 Sensor 3 1.9

=) TSt Sensor 1 Sensor 2 Sensor N

1 18.0 30.1 1.9

Tabella 4.2: Trasformazione Dataset

Principale beneficio che ne deriva è quello di avere un tracciato dei valori di tutti i sensori presenti a bordo macchina, per ogni istante temporale t, da cui consegue la possibilità di elaborare grafici che rappresentino l’anda-mento dei valori nel corso del tempo.

Tutti i processi di trasformazione del presente capitolo, così come quello appena descritto sono stati sviluppati mediante l’utilizzo di script in Python elaborati dal candidato.

(36)

Riguardo il primo passo di trasformazione, si riporta in Listing 4.1 uno snip-pet7 di codice che ha reso possibile quanto precedentemente descritto, nella fattispecie, la struttura dati creata che ha permesso il pivoting.

1 ds = {} # { k e y _ t i m e s t a m p - >( k e y _ s e n s o r - > v a l u e _ s e n s o r ) } 2 3 w i t h o p e n ( ’ ./ d a t a s e t . csv ’ ) as f i l e : 4 for l i n e in f i l e : 5 # e [ 0 ] = t i m e s t a m p , e [ 1 ] = t y p e _ o f _ s e n s o r , # e [ 2 ] = v a l u e 6 e = l i n e . r s t r i p ( ’ \ n ’ ) . s p l i t ( ’ ; ’ ) 7 8 # Is t i m e s t a m p in ds ? 9 if e [0] not in ds : # No , t h e n c r e a t e a new e n t r y in ds . 10 ds [ e [ 0 ] ] = {} 11 ds [ e [ 0 ] ] [ e [ 1 ] ] = e [2] 12 13 e l s e : # Yes , so u p d a t e e n t r y . 14 ds [ e [ 0 ] ] . u p d a t e ({ e [ 1 ] : e [ 2 ] } )

Listing 4.1: Snippet di codice del programma pivoting:py

Prima di procedere con gli altri step di pre-processing dei dati, è opportuno elencare ulteriori modifiche che il programma "pivoting:py" compie nel corso della sua esecuzione sul dataset in input:

(37)

4 – SUPPORTO AL DESIGN DEL SISTEMA DI ACQUISIZIONE

Applicato il primo passo di trasformazione che ha risolto la problematica riportata al termine del paragrafo, sono stati avviati gli ultimi due step del processamento dei dati, di seguito elencati:

1. Eliminazione Ridondanza. In ogni dataset relativo al test di giornata effettuato viene aggiunta una nuova colonna id_conf ig, contenente per ogni record il riferimento al tipo di configurazione macchina (Ta-bella 4.3). In aggiunta, l’applicativo elabora un nuovo file che conterrà l’insieme distinto delle configurazioni macchina e privo quindi di du-plicati (Tabella 4.4).

Ciò è stato possibile, eseguendo il programma "add_config.py" ela-borato.

id_config Time Sensor 1 Sensor 2 Sensor N 1 t1 18.0 30.1 1.9 1 t1 15.0 20.1 1.5 1 t1 22.0 10.1 1.4

Tabella 4.3: Inserimento colonnaid_conf ig

id_config config_machine

1 CF1

2 CF2

3 CF3

Tabella 4.4: Configurazioni macchina distinte

2. Unione dei test. Nel sistema di acquisizione TOI, ogni volta che l’o-peratore avvia il processo di collezione dati, viene creata una nuova tabella nel database (cfr. §4.2).

Ai fini delle analisi, per poter avere una visione sia globale (andamento dei parametri tra le giornate) sia specifica (andamento dei parametri nel singolo test), si è deciso di effettuare l’unione tra tutti i test conser-vando un riferimento temporale sia relativo time (il tempo effettivo relativo al singolo test) sia assoluto T imestamp(il timestamp regi-strato dal sistema di acquisizione dal momento in cui è avvenuta la prima acquisizione sino all’ultima).

(38)

FRAMEWORK ANALITICO

Definito il dataset idoneo alle indagini, è ora possibile elaborare un modello comportamentale in grado di regolare l’intero sistema. Nello specifico, at-traverso l’utilizzo di tecniche di Data Mining, sono stati identificati diversi profili macchina (insieme di valori restituiti dai sensori) che determinano errori di stampa.

In ulteriore luogo, è stata richiesta un’analisi mirata sul livello minimo di inchiostro necessario per eseguire una stampa priva di errori. Questo permetterà a BOBST di avere un maggior controllo sull’effettiva quanti-tà di inchiostro da immettere nel processo per ottenere costantemente un prodotto di elevata qualità.

(39)

5 – FRAMEWORK ANALITICO

5.1

Data Understanding

Nel presente paragrafo viene presentata un’ampia ed esaustiva descrizione di tutti i sensori presenti nella stampante flessografica, linea M5 (cfr. §2.3). Il dataset uscente dalla fase di ETL, esposta precedentemente, presenta un numero di osservazioni (righe) pari a 262 974 ed un numero di attributi (colonne) uguale a 29. Tra questi ultimi solo uno è di tipo categorico, men-tre i restanti 28 sono di tipo numerico.

In Tabella 5.1 vengono riportati tutti gli attributi raggruppati per tipologia.

TIPOLOGIA ATTRIBUTO NUMERICO Discreto id_config tempo_acquisizione Distributore_posizione Continuo MotoreDistributore_Temp Clichè_Temp RulloGommato_Temp Anilox_Temp NipArea Ink_pressione Ink_flusso Temperatura_ambiente Velocita_stampa L, a, b, E Umiditá_ambiente MotoreCliche_Temperatura MotoreCliche_Velocita MotoreCliche_Coppia MotoreRulloGommato_Velocita MotoreRulloGommato_Temperatura MotoreRulloGommato_Coppia MotoreControCilindroStampa_Temperatura MotoreControCilindroStampa_Velocita MotoreControCilindroStampa_Coppia Data timestamp

CATEGORICO Binario Stampa_Corretta

(40)

In dettaglio, qui di seguito vengono elencati tutti gli attributi con relativa descrizione:

 Distributore_posizione: Posizione del distributore di inchiostro ri-spetto all’origine dell’asse meccanico in micrometri;

 Ink_pressione: Pressione dell’inchiostro - espressa in bar - esercitata all’interno del serbatoio per aumentarne/diminuirne la portata;  Ink_flusso: Flusso dell’inchiostro - in microlitri al secondo - che circola

all’interno del processo;

 Velocitá_stampa: Velocità di stampa espressa in metri per minuto;  L, a, b: coordinate spazio colore LAB restituite dal sistema di controllo

(cfr. §2.2);

 E: variazione della percezione del colore (cfr. §2.2.1);

 Motore Cliche/RulloGommato/ControCilindroStampa _Temperatu-ra/Coppia/Velocitá: Valori dei motori relativi alla temperatura in°C, velocità in rpm (giri al minuto) e coppia in Newton per metro;  MotoreDistributore_Temp: Temperatura del motore del distributore

(°C);

 Cliché_Temp: Temperatura del cliché (°C);

 RulloGommato_Temp: Temperatura del rullo di gomma (°C);  Anilox_Temp: Temperatura dell’anilox (°C);

(41)

5 – FRAMEWORK ANALITICO

 id_config: Identificatore univoco del tipo di configurazione macchina, derivato dalla tabella config_data del database aziendale;

 tempo_acquisizione: Tempo effettivo trascorso dal momento di ini-zio a quello di fine del test di giornata, derivato dal Timestamp del database aziendale;

 Stampa_Corretta: Segnalatore di errore messo a disposizione dello stampatore, il quale segnala mediante la pressione di un pulsante -posto sullo schermo del centro di comandi della macchina - la presenza o l’assenza di errori nella stampa. Tale attributo classifica quindi i record e viene così definito attributo di classe.

(42)

5.1.1

Distribuzione dei dati

Osservate le distribuzioni dei valori di tutti gli attributi, è stata fatta una scrematura delle più interessanti, descritte di seguito.

Stampa Corretta. Nel dataset si nota una distribuzione bilanciata per i

valori dell’attributo di classe Stampa_Corretta: il 40% delle osservazioni registrate ha la caratteristica di appartenere ad un processo il cui output porta ad una stampa priva di errori. Discorso diametralmente opposto in-vece per il restante 60% che presenta evidenti difetti sul prodotto finale.

Figura 5.1: Stampa Corretta: True/False

Temperature del motore del distributore. Il distributore di inchiostro ha

necessariamente bisogno di un motore che ne consenta il movimento lungo un’asse. Il motore ha, inaspettatamente, compromesso l’esito di diverse ac-quisizioni poiché andava in blocco.

(43)

5 – FRAMEWORK ANALITICO

l’attuale meccanismo propulsore non è in grado di gestire correttamente ed in maniera costante il carico di lavoro.

Figura 5.2: Box Plot Temperature a confronto

NIP Area. Nel dataset, come visibile in Figura 5.3, si nota un netto

sbi-lanciamento per i valori relativi al sensore di livello di inchiostro: il 61,2% dei valori è pari a 21,62mm, mentre il restante 38,8% è distribuito, in ma-niera per lo più uniforme, tra i valori minori di quest’ultimo. Si è visto che tale valore sopra citato viene restituito dal sensore quando esegue un errore di fuori lettura. Pertanto, si è reso necessario lo svolgimento di un test, volto ad un’analisi mirata in un sottoinsieme di dati in cui il picco di oc-correnze non si verificava (cfr. §5.3). L’attività di analisi è stata conseguita successivamente ad un miglior posizionamento del sensore.

(44)

Temperatura ambiente esterno. L’analisi della temperatura

dell’ambien-te evidenzia una distribuzione in gran pardell’ambien-te uniforme dei valori osservati. D’altronde è ciò che BOBST richiedeva, poiché voleva verificare se ci fossero state, al variare delle condizioni ambientali, alcune correlazioni significative con gli altri attributi soggetti all’analisi. Tale ipotesi non ha trovato però un riscontro effettivo.

Nonostante tutto, la distribuzione illustrata in Figura 5.4, è ciò che comun-que l’impresa voleva ed ha così ottenuto.

(45)

5 – FRAMEWORK ANALITICO

5.1.2

Gestione dei Valori Mancanti

Uno dei primi problemi che un data scientist si trova ad affrontare, in fase di analisi dei dati, è quello di un dataset contenenti valori mancanti. Nel caso in questione, tale mancanza è stata causata principalmente dal fatto che i sensori esterni, rispetto a quelli interni alla macchina, sono impostati ad una differente frequenza di campionamento del dato. Per risolvere tale problematica, si è deciso di effettuare un sovra-campionamento per quei pa-rametri che acquisiscono il dato ad una frequenza minore rispetto agli altri, così da rendere il tutto uniforme. Nella fattispecie, i parametri macchina vengono acquisiti con frequenza pari a 20Hz - equivalente a 50ms - mentre i parametri esterni (temperature cilindri eNip Area) sono state inizialmente impostate a 2Hz pari a 500ms.

Tra le varie tecniche di sovra-campionamento, si è scelto di adoperare un’in-terpolazione lineare che, dato un intervallo (a,b) costituito da due misura-zioni che distano temporalmente 500ms, elabora ogni 50ms una stima che converge linearmente dal primo punto (a) al successivo (b).

In Tabella 5.2 viene riportato un esempio del procedimento sopra descritto.

Time Anilox_Temp 0 25.1 50 ? 100 ? 150 ? 200 ? 250 ? 300 ? 350 ? 400 ? 450 ? 500 26.5 x! Time Anilox_Temp 0 25.1 50 25.2 100 25.3 150 25.5 200 25.6 250 25.8 300 25.9 350 26.0 400 26.1 450 26.3 500 26.5

(46)

Per giustificare e soprattutto convalidare tale scelta è necessario uno studio comparativo delle temperature, mettendo a confronto i valori acquisiti dal sensore ad una frequenza maggiore - penalizzati da una precisione minore in termini di accuratezza del dato - con i valori interpolati.

Da tale studio è emerso un errore medio commesso dall’interpolazione -dell’ordine del centesimo di grado. Tale imprecisione è però trascurabile poiché i valori delle temperature hanno una crescita molto lenta rispetto a quelli in gioco nel processo. Pertanto, temperature espresse nell’ordine del decimo di grado (es. 25.1°C) sono più che sufficienti per esprimerne l’anda-mento.

L’interpolazione viene così approvata, consentendo di uniformare le frequen-ze di campionamento di tutti i rilevatori presenti.

(47)

5 – FRAMEWORK ANALITICO

5.1.3

Correlazioni

Figura 5.5: Matrice delle correlazioni

Prima di passare allo studio delle correlazioni tra le variabili, è necessario specificare che ogni attributo è stato normalizzato applicando la Z x Score normalization.

Premesso ciò, nel seguente paragrafo vengono riportate alcune riflessioni sulla presenza o meno di correlazioni tra attributi e sulla rimozione delle variabili ridondanti.

Prima ancora di esporre lo studio delle correlazioni è bene evidenziare che sono stati esclusi quei parametri che non contribuiscono alla caratterizza-zione dei record o che contribuiscono indirettamente al processo di stam-pa: Stampa_Corretta, L, a, b, E,tempo_acquisizione, id_conf ig, timestamp, distributore_posizione, tempo_acquisizione.

(48)

Ciò che emerge dalla matrice di correlazione1 in Figura 5.5, i cui valori sono

ottenuti tramite l’indice di correlazione di Pearson, è un dato interessante. Sono presenti, infatti, più di un sottoinsieme di parametri avente tra essi una correlazione positiva, prossima quindi ad 1. Ciò equivale a dire che si è in presenza di attributi ridondanti ed è quindi necessario un processo di selezione. Per i restanti, invece, la situazione resta invariata.

Ridurre dimensionalmente l’insieme, inoltre, in un contesto aziendale, ol-tre a rendere maggiormente efficiente l’esecuzione delle tecniche dimining, consente di abbattere notevolmente i costi di produzione dell’intero impian-to. A tal riguardo, si presenterà successivamente, nel caso di studio del Capitolo 6, una soluzione in cui si cercherà di far corrispondere ad una ri-duzione della dimensione del dataset, una rimozione dei sensori relativi agli attributi non selezionati, poichè ciò comporterebbe una riduzione dei costi dell’impianto.

Il dataset è stato così ridotto, eleggendo un rappresentante da ogni gruppo di variabili correlate positivamente. La scelta del rappresentante viene ef-fettuata considerando l’attributo che risulta meno correlato, ma pur sempre alto, rispetto ai restanti, sia del gruppo di appartenenza che dell’insieme complessivo.

Si è così ottenuto un sottoinsieme di attributi pari a 7 su cui focalizzare le analisi per i coefficienti di correlazione inferiori a 0,9 .

(49)

5 – FRAMEWORK ANALITICO

In Tabella 6.2 vengono illustrati in dettaglio i gruppi che hanno portato al conseguente processo di selezione delle variabili caratteristiche.

Rappresentante Insieme Anilox_Temp Anilox_Temp Cliché_Temp MotoreDistributore_Temp RulloGommato_Temp Temperatura_Ambiente Umidità_ambiente MotoreControCilindro Stampa_Temperatura MotoreCliche_Temperatura MotoreControCilindro Stampa_Temperatura MotoreRulloGommato_Temperatura MotoreRullo Gommato_Velocita MotoreRullo Gommato_Velocita MotoreCliche_Velocita MotoreControCilindro Stampa_Velocita Velocita_stampa Ink_flusso Ink_flusso Ink_pressione

Tabella 5.3: Riduzione Dataset

In estrema sintesi, vengono qui di seguito riportati gli attributi del dataset selezionati:  Anilox_T emp  MotoreControCilindroStampa_T emperatura  MotoreRulloGommato_V elocita  Ink_f lusso  MotoreCliche_coppia  MotoreRulloGommato_coppia  MotoreControCilindroStampa_coppia

(50)

5.2

Estrazione dei profili macchina

Fornita al lettore un’ampia ed esaustiva panoramica del comportamento dei parametri in gioco nel processo di stampa, in tale paragrafo si discuterà delle attività eseguite per raggiungere l’obiettivo principale dell’elaborato. Al fine di restituire a BOBST un profilo macchina significativo, lo scrivente ha scelto di applicare tra le varie tecniche di Mining quella di Clustering, che permette di raggruppare entità, legati fra loro da caratteristiche comuni.

5.2.1

K-Means Clustering

Tra i tanti algoritmi di clustering esistenti è stato scelto il K-Means [14] utilizzando come misura di distanza, la metrica euclidea. Questo algoritmo partiziona gli oggetti di un dataset sotto analisi inK gruppi, sulla base della similarità degli oggetti stessi rispetto a un determinato insieme di attribu-ti. Una volta trovati i K gruppi di oggetti simili, K-Means restituisce un rappresentante per ogni cluster (gruppo di oggetti simili). Il rappresentate di un cluster è chiamato centroide ed è ottenuto come media di tutti i va-lori (attributo per attributo) degli oggetti appartenenti al cluster. In altre parole, il centroide descrive il comportamento tipico e medio degli oggetti di un cluster. La scelta di questo algoritmo si è basata sulla possibilità di ottenere i centroidi che nella fattispecie rappresentano i profili macchina che possono determinare degli errori di stampa.

Tale informazione è preziosissima per il contesto in cui si sta operando, poiché permetterà all’impresa di ottenere una conoscenza del

(51)

comportamen-5 – FRAMEWORK ANALITICO

il bilanciamento degli errori di stampa all’interno dei cluster ottenuti, così da individuare tre diversi tipi di profili:

1. Positivo: Predominanza di record con indicazione di stampa corretta; 2. Negativo: Numerose occorrenze di osservazioni con indicazione di

stampa non corretta;

3. Neutro: Impossibilità di determinare la classificazione del profilo.

Tuning del parametro K. Una delle problematiche relative al k-means è la

determinazione del valore adeguato per il paramentro k.

Il metodo più comune utilizzato per la scelta di tale parametro, da assegna-re all’algoritmo di clustering K-Means, è chiamato elbow method: l’idea è quella di eseguire l’algoritmo sul dataset per un intervallo di valori di k (nella fattispecie, da 1 a 50), e per ogni valore di k calcolare la somma degli errori interni ai clusters, che sono misurati con la distanza di ogni punto ri-spetto al centoide del cluster al cui il punto appartiene, elevata al quadrato (c.d. SSE).

Successivamente, come visibile in Figura 5.6, è stato tracciato un grafico a linee dell’SSE per ogni valore di k.

La scelta è così ricaduta proprio nel "gomito" (elbow) della curva, sceglien-do un piccolo valore che abbia un bassoSSE, e il gomito di solito rappresenta il punto in cui l’errore (SSE) inizia lentamente a decrescere con l’aumentare di k.

Figura 5.6: Scelta del parametro K

Il numero di cluster in output, dopo aver consultato sia il grafico che gli SSE di ogni valore, si è scelto di fissare k pari a 10 gruppi.

(52)

5.2.2

Analisi dei profili

I risultati che si ottengono dalla scelta appena effettuata, consentono di por-tare a termine l’obiettivo con successo, poiché sono stati ottenuti i diversi profili macchina. Si fornisce al lettore una prima illustrazione in Figura 5.7 dei gruppi ottenuti insieme ad un’indicazione del bilanciamento dell’attri-buto di classe.

Da una prima osservazione, è già possibile individuare la formazione dei tre profili macchina precedentemente esposti.

Ad esempio: Il gruppo di dati del Cluster #1 (primo quadrato verde a par-tire dal basso colonnaF alse) presenta un numero di occorrenze con indica-zione di stampa non corretta di gran lunga maggiore rispetto alla condiindica-zione opposta (secondo quadrato verde a partire dal basso colonnaT rue).

(53)

5 – FRAMEWORK ANALITICO

Dopo una prima visione del grafico, è ora necessario avere soprattutto un riscontro analitico per acquisire una maggiore conoscenza del bilanciamento della classe in ogni cluster. A tal proposito, è stata così creata la Tabella 5.4 che ha consentito di suddividere i 10 cluster come segue:

 Positivi: [4]

 Negativi: [1, 3, 5, 8]  Neutri: [0, 2, 6, 7, 9]

Stampa_Corretta

#Cluster False True #records 0 45.8% 54.2% 31 690 1 97.8% 2.2% 30 762 2 48.8% 51.2% 43 052 3 70.4% 29.6% 33 764 4 43.0% 57.0% 46 338 5 72.7% 27.3% 15 790 6 58.7% 41.3% 12 319 7 51.0% 49.0% 24 678 8 79.1% 20.9% 15 676 9 54.2% 45.8% 8905

Tabella 5.4: Percentuale di Stampa_Corretta nei Cluster

Come si può osservare, il Cluster #1 riporta un risultato alquanto significa-tivo: i punti appartenente a questo insieme portano ad una errata stampa del prodotto nel 97.8% delle osservazioni, su una popolazione di30 762 re-cord pari al 11% dell’intero dataset.

Le caratteristiche di questi punti, in particolare del centroide, - riportati in Tabella 5.5 - consentirà all’azienda di conoscere i limiti della stampante e soprattutto, i valori in cui essa non deve incorrere per evitare di generare prodotti con evidenti difetti.

(54)

Profilo Macchina Negativo. Occorre precisare, inoltre, che i dati di

segui-to esposti hanno subisegui-to un processo di denormalizzazione, in cui ogni valore viene moltiplicato per la deviazione standard ed al risultato ottenuto viene aggiunta la media2.

In questo modo BOBST sarà in grado di conoscere i reali limiti della stam-pante esposti qui di seguito.

avg dev.std min 25% 50% 75% max Anilox_Temp 31.46 1.04 27.62 31.04 31.70 32.13 34.38 Ink_Flusso 7.45 6.34 0.61 1.46 5.27 11.77 38.05 Motore Rullo Gommato 843 232 4.5 786 787 789 2685 Velocita Motore Rullo Gommato 0.78 0.08 0.44 0.72 0.77 0.83 1.10 Coppia Motore Cilindro Contro Stampa 32.70 2.06 27.90 31.10 32.93 35.10 35.67 Temperatura Motore Cilindro Contro Stampa 0.32 0.09 0.04 0.26 0.32 0.37 0.66 Coppia Motore Cliche 1.89 0.14 1.34 1.77 1.92 2.00 2.22 Coppia

(55)

5 – FRAMEWORK ANALITICO

5.3

Nip Area Analysis

Nella presente sezione dell’elaborato si affronterà l’indagine svolta che ha avuto come obiettivo, quello di definire l’intervallo di valori ottimali entro cui il livello del serbatoio inchiostro, denominato Nip Area, è tale da con-sentire un corretto processo di stampa.

Si ricorda che il livello del serbatoio viene calcolato, indirettamente, misu-rando la distanza che intercorre tra la lente del sensore e la Nip Area. I valori restituiti dal dispositivo variano nell’intervallo [0,21] millimetri.

Figura 5.8: Distribuzione attributo di classe

Come riportato in Figura 5.8, lo scenario illustrato corrisponde ad un sot-toinsieme del dataset sottoposto ad analisi pari a 24 727 righe, di cui circa il 76% sono state contrassegnate con T rue, inchiostro sufficiente per una stampa priva di errori, ed il restante 24% conF alse, inchiostro insufficiente e dunque errori nella realizzazione del prodotto finale.

Per poter determinare l’intervallo ideale, occorre innanzitutto effettuare una selezione dei parametri macchina ed i sensori coinvolti dall’analisi. Si è deci-so quindi di osservare le distribuzioni dei parametri relativi al livello dell’in-chiostro (NipArea) in relazione all’attributo di classe (Stampa_Corretta). Di notevole interesse, inoltre, sono anche i casi limite:

 Livello inchiostro in eccesso: "serbatoio troppo pieno"  Livello inchiostro insufficiente: "serbatoio quasi vuoto"

(56)

Figura 5.9: Bar Chart: Distribuzione attributo di classe in Nip_Area

Come visibile nel grafico a barre in Figura 5.9, viene riportato sull’asse del-le ascisse il livello del serbatoio ridel-levato dal sensore, mentre su queldel-le deldel-le ordinate il numero di osservazioni.

Inserendo poi, l’attributo di classe, colorando di verde il caso positivo e di rosso quello negativo, si osserva la presenza di una grande fascia di record in cui è stato registrato un buon livello di inchiostro nel serbatoio. In partico-lare, ciò avviene nell’intervallo [15.3, 18.3], che da una prima analisi sembra essere proprio l’intervallo ricercato.

(57)

5 – FRAMEWORK ANALITICO

Per avere un’idea ancor più chiara e precisa della distribuzione dei dati "condizionati" dal contrassegno (T rue, F alse), è stata condotta un’ulte-riore indagine riportata in Figura 5.10.

Figura 5.10: Boxplot condizionato: Livelli serbatoio

Come si può osservare, nel grafico sono presenti due boxplot, in cui il primo descrive la distribuzione del livello del serbatoio del caso positivo, mentre il secondo di quello negativo. Da questa indagine emergono risultati notevoli su cui è possibile iniziare a fondare un’ipotesi concreta.

Le condizioni di livello, difatti, (scarso, sufficiente, pieno) si distribuiscono su tre intervalli ben distinti:

 [6,34 - 10,41] : livello scarso (boxplot in basso a destra)

 [11,63 - 17,86]: livello sufficiente (boxplot in alto a sinistra prima metà fino a 17.86)

 [17,86 - 21,7] : livello pieno (boxplot in alto a sinistra seconda metà fino a 21.7)

Quest’ultima indagine risulta senz’altro più dettagliata rispetto alla prece-dente: l’intervallo ricercato (livello sufficiente) è stato ottimizzato, mentre i casi limite sono emersi in maniera chiara e ben distinta.

(58)

CASO DI STUDIO: ANALISI COSTO/BENEFICIO

Nel presente caso di studio, come preannunciato, verrà presentato un cri-terio alternativo per selezionare gli attributi del dataset da sottoporre ad analisi di clustering.

Prima di procedere alla descrizione del caso di studio, è importante ricor-dare che nei dati presentati nei capitoli precedenti, i valori di ogni attributo corrispondono alle acquisizioni fatte da un determinato sensore. Quindi, identificare un sottoinsieme di attributi - necessari e sufficienti per l’estra-zione di profili macchina - corrisponde a identificare il sottoinsieme di sensori di cui una macchina non può essere sprovvista.

Nel Capitolo 5, dalla matrice di correlazione di Pearson, gli attributi sono stati selezionati senza tener conto di una condizione piuttosto impor-tante in un contesto aziendale come nel caso in questione, ossia, i costi dei sensori che campionano i dati.

(59)

6 – CASO DI STUDIO: ANALISI COSTO/BENEFICIO

processo senza comprometterne la sua corretta esecuzione.

Produttore Tipo di Sensore Attributi ¿ Optris Pirometri MotoreDistributore 406,00 (Temperature) Cliche 406,00 Anilox 406,00 RulloGommato 406,00 Sensirion Flussimetro Ink_f lusso 1150,00 Keyence Sensore di livello NipArea 1000,00 SIEMENS Motore Rullo Gommato MRG_V elocita

600,00 (MRG) MRG_Coppia

MRG_T emperatura Mikro Sensore ambiente T emperatura

14,00 Elektronika Umidita

totale 3813,00

Tabella 6.1: Tabella dei costi

Nel paragrafo seguente, verrà presentato il procedimento in cui a partire dal-la matrice di corredal-lazione di Pearson precedentemente ottenuta, viene com-piuto un nuovo processo di selezione degli attributi rilevanti, considerando questa volta i costi, ed infine si valutano i risultati ottenuti dall’algoritmo di clustering K-Means.

(60)

6.1

Selezione pesata sui costi

Il calcolo della matrice di correlazione sull’intero insieme di N attributi disponibili, permette di partizionare l’insieme in gruppi di attributi forte-mente1 correlati tra di loro, che chiamiamoG

1: : : GN. Al fine di considerare

la dimensione costo nel processo di riduzione del numero attributi, per ogni gruppoGiè stato selezionato l’attributo che meglio lo rappresenta in termini sia economici che di analisi, ovvero l’attributo che minimizza sia il costo da sostenere per l’acquisto del sensore che la correlazione con gli altri attributi. In sintesi si riporta in Tabella 6.2 la selezione compiuta.

Si precisa che si associa il costo di ¿ 0,00 agli attributi che si riferiscono a componenti, la cui rimozione compromette il corretto funzionamento del processo di stampa. Per tale ragione, dovranno necessariamente avere una precedenza nel processo di selezione.

Gi € Insieme di attributi Rappresentante

G1 406,00 Anilox_T emp T emperatura Ambiente 406,00 Cliché_T emp 406,00 MotoreDistributore_T emp 406,00 RulloGommato_T emp 14,00 T emperatura_Ambiente 14,00 Umidita_ambiente 0,00 MotoreCliche_T emperatura MotoreContro CilindroStampa T emperatura 0,00 MotoreControCilindro G2 Stampa_T emperatura 600,00 MotoreRullo Gommato_T emperatura 600,00 MotoreRullo

(61)

6 – CASO DI STUDIO: ANALISI COSTO/BENEFICIO

La selezione ottenuta consente all’impresa di ridurre notevolmente i costi dell’impianto. Infatti, nel gruppo G1 (Tabella 6.2) il risultato ci porta a evidenziare la necessità di un unico sensore di temperatura (MikroElektro-nica), il cui costo risulta irrisorio, al posto dei 6 originali. Per gli altri tre gruppi è possibile notare che il rappresentate selezionato corrisponde a uno dei sensori che risultano indispensabili per il funzionamento della macchina (costo nullo nella tabella).

L’impresa, inoltre, ha già predisposto un nuovo meccanismo di movi-mentazione del rullo gommato così da andare incontro ad una riduzione dei costi. Per tale ragione, quindi, l’analisi di clustering verrà applicata considerando i seguenti attributi:

 T emperatura_Ambiente  MotoreControCilindroStampa_T emperatura  MotoreControCilindroStampa_V elocita  Ink_pressione  MotoreControCilindroStampa_coppia  MotoreCliche_coppia

(62)

Il set di attributi selezionati, dopo aver regolato il parametro k pari a 10, secondo il criterio descritto in precedenza (cfr. §5.2.1), ha prodotto una serie di cluster tra cui vi è in particolare un profilo negativo alquanto inte-ressante (Cluster #9 Tabella 6.3).

Stampa_Corretta

#Cluster False True #records 0 45.5% 54.5% 27 078 1 75.3% 24.7% 30 829 2 39.8% 60.2% 33 126 3 64.7% 35.3% 30 201 4 72.4% 27.6% 24 733 5 45.8% 54.2% 19 286 6 80.9% 19.1% 21 405 7 49.1% 50.9% 46 351 8 63.9% 36.1% 18 775 9 95.7% 4.3% 11 190

Tabella 6.3: Percentuale di Stampa_Corretta nei Cluster

Nonostante una selezione degli attributi vincolata, è stato comunque rag-giunto il risultato atteso, in cambio, però, di una popolazione ridotta di circa il 65% rispetto al risultato precedente (cfr. Tabella 5.4), mentre il bi-lanciamento della classe varia sensibilmente. D’altronde i risultati ottenuti nel Capitolo 5 richiedono un kit di sensori il cui costo totale - pari ad ¿ 2156,00 - è di gran lunga superiore alla soluzione osservati in questa sezione pari invece a soli ¿14,00.

(63)

6 – CASO DI STUDIO: ANALISI COSTO/BENEFICIO

Viene di seguito esposto in Tabella 6.4 il profilo negativo della seconda soluzione proposta.

avg dev.std min 25% 50% 75% max Temperatura 30.04 1.36 26.4 30.50 30.60 30.60 31.10 Ambiente Ink_Pressione 0.61 0.22 0.22 0.48 0.65 0.81 1.64 Motore Cliche 0.90 0.46 0.02 1.03 1.09 1.13 1.41 Coppia Motore Cilindro Contro Stampa 33.24 1.07 30.4 33.29 33.58 33.90 35.08 Temperatura Motore Cilindro Contro Stampa 235 132.32 0.13 260.6 261.09 261.5 437.85 Velocita Motore Cilindro Contro Stampa 0.57 0.3 0.02 0.62 0.68 0.73 0.92 Coppia

Tabella 6.4: Profilo Negativo Cluster #9

Un’ ultima considerazione riguarda la possibilità di estendere tale metodo inserendo un vincolo aggiuntivo, che consideri anche l’importanza dell’attri-buto scelto. Un possibile sviluppo potrebbe essere rappresentato dall’inse-rimento di un "indice di rilevanza" per ogni attributo, così da elaborare un modello comportamentale che escluda attributi, come nel caso in oggetto relativi alla temperatura dell’ambiente circostante. Tale attributo, è esterno al processo di stampa. Il modello elaborato è senz’altro valido per la stam-pante su cui sono state svolti i test ma la stessa - se inserita in un ambiente maggiormente freddo o caldo - si intuisce fin da subito che le condizioni dettate dal modello non sono agevolmente riproducibili.

Il presente caso di studio non ha la pretesa di porsi come una metodologia affermata e convalidata, bensì come una nuova proposta che, dal circoscritto ambito aziendale in cui essa è stata adottata, potrebbe acquisire le sopra citate caratteristiche solo se suffragata da ulteriori ricerche scientifiche che vadano nella sua stessa direzione.

(64)

CONCLUSIONI E SVILUPPI FUTURI

L’obiettivo del presente elaborato è stato quello di fornire all’azienda una conoscenza approfondita del comportamento della stampante linea M5 in versione modificata. A partire da una lunga e laboriosa fase di estrazione-trasformazione-caricamento (ETL), i dati sono stati analizzati utilizzando come tecnica di data mining l’algoritmo di clustering K-Means, i cui cen-troidi hanno consentito di conseguire l’obiettivo con successo.

La metodologia proposta è riutilizzabile per qualsiasi linea di stampante flessografica dotata di un sistema sensoristico.

In ultima analisi è stata descritta una soluzione innovativa che propone di condizionare i risultati delle analisi dei dati con i costi dei sensori presenti a bordo della macchina.

Un possibile sviluppo futuro - in merito alla tematica della manutenzione predittiva - interessa una componente della macchina: il rullo gommato.

(65)

APPENDICE

A

STRUMENTI UTILIZZATI

- Python 2.7

Linguaggio di programmazione dinamico orientato agli oggetti, uti-lizzabile per molti tipi di sviluppo software. Offre un forte supporto all’integrazione con altri linguaggi e programmi, ed è fornito di una estesa libreria standard. Nel presente elaborato sono state utilizzate le seguenti librerie software:

– pandas 0.23.4: libreria open source con licenza BSD che fornisce strutture dati e strumenti di analisi dei dati ad alte prestazioni; – scikit-learn 0.20: fornisce strumenti semplici ed efficienti per il

data mining e l’analisi dei dati;

– numpy 1.15: pacchetto fondamentale per il calcolo scientifico con Python;

– matplotlib.pyplot 2.0.2: libreria di plot python in 2D, che pro-duce dati di qualità di pubblicazione, in una varietà di formati cartacei e ambienti interattivi su piattaforme diverse;

– seaborn 0.9.0: libreria di visualizzazione dei dati Python basata su matplotlib;

– datetime 8.1: fornisce classi per manipolare date e ore in modi semplici e complessi;

(66)

– os 15.1: fornisce un modo portatile per utilizzare la funzionalità dipendente dal sistema operativo;

– psycopg2 2.7.5: adattatore PostgreSQL più popolare per il lin-guaggio di programmazione Python.

- PGAdmin III

Interfaccia grafica per l’esplorazione del database aziendale. - Power BI

Strumento di Business Intelligence utile per la visualizzazione interat-tiva dei dati.

- Knime Platform Analytics

Piattaforma Open Source con licenza GPLv3 di analisi dati, reporti-stica e integrazione. Ha anche al suo interno componenti di machine learning e data mining. La sua interfaccia grafica permette di as-semblare i nodi per la preprocessazione dei dati, per la modellazione, l’analisi dei dati e la visualizzazione.

Riferimenti

Documenti correlati

Antwerp non solo non godeva della presenza di grandi pittori, ma non poteva neanche contare su una corte importante come quella che governava Bruges. La città si

CONSULT LINE SRL TV CALZATURE E ABBIGLIAMENTO MONTAGNA, CACCIA COM.1 COS-MEK SNC VR CISTERNE, SERBATOI TRASPORTABILI E ATTREZZATURE PER LA COM.8 COSTANTIN SPA PD

Negli spettri ottenuti analizzando zone scure della fotografia sembra risaltare maggiormente la presenza di gelatina, infatti gli spettri mostrano picchi più marcati e ben

52 Secondo una parte della giurisprudenza, in particolare, la rilevanza della qualificazione data dalle parti al rapporto di lavoro è quella di una presunzione

Nel mercato primario, quindi, le opere d'arte fanno la loro comparsa e per la prima volta si vedono attribuire un valore economico; se il funzionamento di questo primo segmento

Invocato umilmente il nome di Dio mio Creatore, nelle cui mani come sta il momento della vita dell’uomo, così quello della fine di essa, del quale nulla avei di più certo né

24 Con questo non si vuole affermare che gli aiuti allo sviluppo siano una strategia sbagliata ai fini della riduzione della pressione migratoria, ma che la loro efficacia

1-24; Khadria, B., “Migration of Highly Skilled Indians: Case Studies of IT and Health Professionals” (2004), OECD Science, Technology and Industry Working Papers 2004/06,