polito.it
Politecnico di Torino (logo)

Sviluppo di un codice Machine Learning per la stima di ossidi di azoto e particolato in motori Diesel = Development of a Machine Learning code for the estimation of nitrogen oxides and particulate matter in Diesel engines

Giuseppe Nobile

Sviluppo di un codice Machine Learning per la stima di ossidi di azoto e particolato in motori Diesel = Development of a Machine Learning code for the estimation of nitrogen oxides and particulate matter in Diesel engines.

Rel. Daniela Anna Misul, Alessandro Falai. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Meccanica, 2021

[img]
Preview
PDF (Tesi_di_laurea) - Tesi
Licenza: Creative Commons Attribution Non-commercial No Derivatives.

Download (13MB) | Preview
Abstract:

Negli ultimi anni, sia a livello nazionale che a livello internazionale, sono state imposte, in particolare nell’ambito automotive, delle stringenti normative riguardanti l’emissione di sostanze inquinanti come PM (Particulate Matter) e NOX (ossidi di azoto e miscele), poiché ritenute dannose per l’uomo e per l’ambiente. In questa direzione si muove il seguente lavoro di Tesi Magistrale dove si sviluppa un sistema automatizzato basato su Machine Learning per il calcolo predittivo di inquinanti, con la possibilità in futuro di implementare questi algoritmi nella centralina del motore per rendere possibile un controllo on-board in tempo reale e quindi consentire un ottimizzazione dell’after-treatment. Il seguente elaborato è stato svolto in collaborazione con il dipartimento di Energia del Politecnico di Torino, il quale ha fornito i dati relativi alle due tipologie di motori Diesel in analisi: un motore da 2.0L ed un Cursor da 11.0L di cilindrata. In particolare, nel primo caso si hanno 1112 punti di funzionamento motore rpm (giri motore) x pme (pressione media effettiva), mentre nel secondo si hanno 5260 punti rpm x pme suddivisi tra misure effettuate a banco e misure stimate in centralina. L’obiettivo dell’elaborato è stato quello di realizzare un modello in ambiente Python, implementabile in futuro in ECU (Electronic Control Unit), che stimi con un elevato valore di accuratezza il numero di inquinanti emessi dai motori Diesel. Il modello implementato in ambiente Python si fonda sui principi di Machine Learning. Il ML rientra nel mondo dell’Intelligenza Artificiale e utilizza metodi matematico-statistici per simulare l’intelligenza umana, con lo scopo di migliorare autonomamente durante l’allenamento apprendendo dai dati forniti. Il modello in questione è un codice di Machine Learning basato sull’algoritmo GBRT (Gradient Boosted Regression Trees) dove, fornendogli coppie di input (dati raccolti, predittori) e di output (inquinanti prodotti, risultato atteso o target), tramite l’allenamento riesce a trovare, senza l’aiuto umano, una regola (funzione o modello) con cui generare un output desiderato anche per un valore di input mai visto in precedenza. Il codice inoltre raccoglie i valori in un foglio di calcolo elaborando i risultati ed individuando i parametri motoristici più influenti per la predizione di un inquinante. Una volta individuate le 7 features più importanti per una “missione” specifica, riproduce lo stesso codice usando questi parametri col fine di ottenere i risultati in un tempo computazionale minore e svincolarsi completamente dalla fenomenologia del caso, pur sacrificando pochi punti percentuale sull’accuratezza e sul rmse. Per adattare all’algoritmo GBRT i dati NOx del motore 11.0L ed avere un’efficienza maggiore della predizione, sono state applicate delle trasformate (power transform) alle variabili in gioco con lo scopo di superare i problemi legati al training sulle variabili target e ridurre i coefficienti di asimmetria di Fisher-Pearson della loro dispersione. La soluzione migliore è stata quella di applicare la trasformata Box-Cox alla variabile target e la trasformata Yeo-Johnson alle features. Per concludere, è stato realizzato un confronto numerico tra i valori del GBRT e quelli ottenuti sia con l’algoritmo Random Forest e sia con l’algoritmo XGBoost. La comparazione fra i diversi algoritmi è stata fatta in termini di coefficiente di regressione quadratico r2 ed errore quadratico medio rmse.

Relatori: Daniela Anna Misul, Alessandro Falai
Anno accademico: 2020/21
Tipo di pubblicazione: Elettronica
Numero di pagine: 171
Soggetti:
Corso di laurea: Corso di laurea magistrale in Ingegneria Meccanica
Classe di laurea: Nuovo ordinamento > Laurea magistrale > LM-33 - INGEGNERIA MECCANICA
Aziende collaboratrici: NON SPECIFICATO
URI: http://webthesis.biblio.polito.it/id/eprint/18552
Modifica (riservato agli operatori) Modifica (riservato agli operatori)