SlideShare a Scribd company logo
1 of 27
Vincenzo Dentamaro
CEO Nextome, Georgia Institute of Technology,
Università degli studi di Bari
Introduzione alle:
Self Driving Cars
Agenda
• Cosa sono le self driving cars e la loro tassonomia
• Il problema della localizzazione
• Modello probablisitico
o Filtri di Kalman
o Particle filter
o Ricerca del percorso
• Modello Deep Learning
• Conclusioni
Cosa sono le self driving cars e la
loro tassonomia
Le self driving cars sono auto capaci a localizzarsi in uno spazio, pianificare un
percorso e muoversi evitando gli ostacoli in presenza di alter automobili e persone.
La tassonomia
• Livello 0 - Nessuna autonomia
• Livello 1 - Assistenza alla guida: (il guidatore deve essere pronto a riprenderne il
controllo)
• Livello 2 - Automazione parziale: (monitoraggio circostante da parte dell’utente)
• Livello 3 - Automazione condizionata (guidatore pronto a riprendere controllo in
caso di richiesta del sistema)
• Livello 4 - Alta automazione (non attivabile in casi estremi come es. maltempo).
• Livello 5 - Completa automazione
How Did We Do?
Componenti delle auto semi
autonome
External
1. Radar
2. Visible-lightcamera
3. LIDAR
4. Infrared camera
5. Stereo vision
6. GPS/IMU
7. Audio
Internal
1. Visible-lightcamera
2. Infrared camera
3. Audio
Componenti delle auto semi
autonome
Il problema della localizzazione
In presenza di mappa
.
Fixed anchors localization
GPS Sensors based localization
Il problema della localizzazione
In presenza di mappa
.
Migliorare l’accuratezza
Modello Probabilistico
Pros:
• Non necessita di addestramento
• E’ utilizzabile sempre ma con notevoli limiti
Cons:
• Non è in grado di muoversi nel traffico efficientemente senza computer
vision (non riconosce segnali, non riconosce persone)
• Imprevedibile
• Non gestisce le priorità
Filtri di Kalman
I filtri di Kalman, sono usati per filtrare segnali rumorosi, gestendo l’incertezza
presente in tale segnale. Ogni sensore ha un certo “rumore”, se tale rumore è
lineare, il Kalman Filter può rimuoverlo. Inoltre il Filtro di Kalman è noto per
predire stati future del Sistema.
Un altro vantaggio del filtro Kalman è che lo storico di uno stato non è
necessario poiché il filtro si basa solo sullo stato immediato e su una matrice di
covarianza che definisce la probabilità dello stato di essere corretto durante
l’update.
Nelle self driving cars, servono a predire la posizione di oggetti (tracking),
pulire segnali rumorosi riguardo il movimento e la localizzazione.
Filtri di Kalman
• Lo stato è rappresentato come la posizione/velocità/valore associato al Sistema
• Le azioni sono ciò su cui si può intervenire e che avrà effetto sul sistema.
• Ci sono 2 equazioni nel filtro di Kalman, la prima è la predizione (qual’è lo stato
corrente rispetto allo stato passato e l’azione effettuata), la seconda equazione è
nota come equazioni di aggiornamento: esamina i sensori di ingresso in
proporzione a quanto ci si fida di ogni sensore e quanto ci si fida della stima dello
stato complessivo e aggiorna lo stato attuale.
• Questo filtro funziona prevedendo lo stato corrente utilizzando le equazioni di
predizione e poi segue una correzione della stima precedente utilizzando le
equazioni di aggiornamento. Questo processo viene ripetuto continuamente.
Particle Filters
• L’idea chiave è quella di rappresentare la densità a posteriori con un insieme
di campioni casuali (“samples”) con associato un peso ed effettuare la stima
in base a questi campioni e al loro peso. Al crescere del numero di campioni
considerati si ottiene una rappresentazione equivalente della funzione di
densità.
Particle Filters
Algoritmo
1. Randomly generate a bunch of particles Particles can
have position, heading, and/or whatever other state
variable you need to estimate. Each has a weight
(probability) indicating how likely it matches the actual
state of the system. Initialize each with the same weight.
2. Predict next state of the particles Move the particles
based on how you predict the real system is behaving.
3. Update the weighting of the particles based on the
measurement. Particles that closely match the
measurements are weighted higher than particles which
don't match the measurements very well.
4. Resample Discard highly improbable particle and
replace them with copies of the more probable particles.
5. Compute Estimate Optionally, compute weighted mean
and covariance of the set of particles to get a state
estimate
Particle Filters
Algoritmo
Ricerca del percorso su mappa
Algoritmo Dijkstra
• L'algoritmo di Dijkstra consente di selezionare gli shortest path ( cammini
minimi ) in un grafo ciclico caratterizzato da archi con pesi non negativi. Il
cammino minimo è il percorso che permette di unire due nodi distinti del
grafo.
• L’algoritmo è finito e ha complessità O(V²) dove V è il numero di vertici.
Ricerca del percorso su mappa
Algoritmo A*
• A* è un algoritmo di ricerca di tipo best first e ottimizzazione basato su grafi
o griglie. Viene frequentemente impiegato nell’intelligenza artificiale perché
in grado di gestire grafi ampi e indeterminati.
• L’algoritmo euristico ha il compito di stimare la distanza tra qualsiasi nodo e
la soluzione. L’euristica influenza fortemente i risultati conseguiti da A*.
Esso, in particolare, ne determina il tempo complessivo di esecuzione. Un
algoritmo euristico molto efficace consente ad A* di trovare velocemente la
soluzione. Nel caso pessimo, una funzione euristica costante, A* diviene un
algoritmo di ricerca molto simile a Dijkstra.
Ricerca del percorso su mappa
Algoritmo A*
• A* rientra nella categoria degli algoritmi di ricerca best-first. Esso infatti
esamina, passo dopo passo, i nodi che hanno il punteggio migliore.
• A* usa le seguenti strutture dati per mantenere traccia dello stato
d’esecuzione:
o Una lista di nodi già visitati;
o Una coda a priorità contentente i nodi da visitare.
• Nel corso dell’esecuzione, ad ogni nodo vengono associati più valori: gScore,
hScore, fScore. In termini matematici, dato il nodo corrente n, il nodo di
partenza p e il nodo soluzione s, si deifiniscono i valori:
La funzione g calcola il costo effettivo del percorso
che separa i nodi p (partenza) e n (attuale).
La funzione h calcola una stima del costo del
percorso tra i nodi s (soluzione) e n (attuale). La
funzione h corrisponde alla definizione dell’algoritmo
euristico enunciato in precedenza. Essa è infatti
chiamata spesso funzione euristica.
Ricerca del percorso su mappa
Algoritmo A*
1. Inserimento nella coda del nodo di partenza con priorità pari al fScore;
2. Se la coda è vuota, l’algoritmo termina: soluzione non trovata;
3. Estrazione del miglior nodo da visitare (priorità con valore più basso);
4. Se il nodo estratto ha hScore nullo, l’algoritmo termina: soluzione trovata;
5. Costruzione dei nodi figli;
6. Eliminazione dei nodi figli già visitati e subottimi;
7. Inserimento dei nodi rimanenti nella coda con priorità pari al fScore;
8. Tornare al punto 2.
Ricerca del percorso su mappa
Algoritmo A*
Modello Deep Learning
Computer Vision
Supervised
Learning
Unsupervised
Learning
Semi-Supervised
Learning
Reinforcement
Learning
Apprendimento supervisionato standard
Computer Vision
Deep Learning con le ConvNet
• Consentono di costruire più livelli al fine di relevare diverse features ad ogni livello tenendo
conto della disposizione spaziale dei pixel nell’imagine.
• I campi recettori funzionano come finestre sovrapposte che si fanno scorrere sull’immagine in
modo da creare una mappa di caratteristiche, tale processo si chiama convoluzione.
• Più layers permettono di riconoscere oggetti nell’imagine aventi sia posizione che diverse
dimensioni.
• Il layer di pooling sono dei layer semplici che permettono il riepilogo delle caratteristiche da
passare poi al livello convolutivo sucessivo per finire a un perceptron multilivello.
Regular neural network (fully connected): Convolutional neural network:
Sequenza di convolutional layer e pooling layer
con al termine più livelli di full connected layers.
Deep Learning con le ConvNet
Deep Learning con le ConvNet
Deep Learning architettura
• 9 layers
• 1 normalization layer
• 5 convolutional layers
• 3 fully connected
layers
• 27 million
connections
• 250 thousand
parameters
Camera + Inputs da parte
del conducente (sterzo,
freni, velocià, marce) da
parte dell’automobilista in
fase di training
Deep Learning architettura
Deep Learning
Dataset
Conclusioni
• Il deep learning da solo ha dimostrato di poter guidare un’auto in condizioni
di traffico normale e senza condizioni atmosferiche particolari.
• La fusione tra il modello probabilistico e il modello deep learning (deep
reinforcement learning) è il futuro per le self driving cars. Tale fusione sarà
capace a fronteggiare anche problematiche estreme come guida con il
maltempo.

More Related Content

Similar to Introduzione alle Self Driving Car

COUGAR: Clustering Of Unknown malware using Genetic Algorithm Routines
COUGAR: Clustering Of Unknown malware using Genetic Algorithm RoutinesCOUGAR: Clustering Of Unknown malware using Genetic Algorithm Routines
COUGAR: Clustering Of Unknown malware using Genetic Algorithm RoutinesDavidePanarella
 
Extended Summary of “Co-Learning of Task and Sensor Placement for Soft Robotics”
Extended Summary of “Co-Learning of Task and Sensor Placement for Soft Robotics”Extended Summary of “Co-Learning of Task and Sensor Placement for Soft Robotics”
Extended Summary of “Co-Learning of Task and Sensor Placement for Soft Robotics”RiccardoWeis
 
Design Exploration: Sviluppo telaio per vettura formula sae
Design Exploration: Sviluppo telaio per vettura formula saeDesign Exploration: Sviluppo telaio per vettura formula sae
Design Exploration: Sviluppo telaio per vettura formula saeMarco Basilici
 
Realizzazione di un controllore basato su piattaforma robotica Thymio 2.
Realizzazione di un controllore basato su piattaforma robotica Thymio 2.Realizzazione di un controllore basato su piattaforma robotica Thymio 2.
Realizzazione di un controllore basato su piattaforma robotica Thymio 2.anwarNazik
 
Simulazione di un sistema fisico ts inginf
Simulazione di un sistema fisico ts inginfSimulazione di un sistema fisico ts inginf
Simulazione di un sistema fisico ts inginfIonutAlexandruPascar
 
Progettazione e sviluppo di un sistema di visione artificiale per il monitora...
Progettazione e sviluppo di un sistema di visione artificiale per il monitora...Progettazione e sviluppo di un sistema di visione artificiale per il monitora...
Progettazione e sviluppo di un sistema di visione artificiale per il monitora...RiccardoScilla
 
Recognizing Hand Gestures using WebCams
Recognizing Hand Gestures using WebCams Recognizing Hand Gestures using WebCams
Recognizing Hand Gestures using WebCams graphitech
 
Automi probabilistici temporali e loro verifica formale
Automi probabilistici temporali e loro verifica formaleAutomi probabilistici temporali e loro verifica formale
Automi probabilistici temporali e loro verifica formaleOrlando Selenu
 
Realizzazione di un controllore basato su piattaforma robotica Thymio 2.
Realizzazione di un controllore basato su piattaforma robotica Thymio 2.Realizzazione di un controllore basato su piattaforma robotica Thymio 2.
Realizzazione di un controllore basato su piattaforma robotica Thymio 2.anwarNazik
 
Classificazione in efMRI: Un caso di studio sulla coniugazione dei verbi
Classificazione in efMRI: Un caso di studio sulla coniugazione dei verbiClassificazione in efMRI: Un caso di studio sulla coniugazione dei verbi
Classificazione in efMRI: Un caso di studio sulla coniugazione dei verbiLuca Vitale
 
Extended Summary of "Evolutionary Optimization of Deep Learning Activation Fu...
Extended Summary of "Evolutionary Optimization of Deep Learning Activation Fu...Extended Summary of "Evolutionary Optimization of Deep Learning Activation Fu...
Extended Summary of "Evolutionary Optimization of Deep Learning Activation Fu...MicheleScomina
 
Algoritmi di ordinamento
Algoritmi di ordinamentoAlgoritmi di ordinamento
Algoritmi di ordinamentoMarco Liverani
 

Similar to Introduzione alle Self Driving Car (20)

COUGAR: Clustering Of Unknown malware using Genetic Algorithm Routines
COUGAR: Clustering Of Unknown malware using Genetic Algorithm RoutinesCOUGAR: Clustering Of Unknown malware using Genetic Algorithm Routines
COUGAR: Clustering Of Unknown malware using Genetic Algorithm Routines
 
Extended Summary of “Co-Learning of Task and Sensor Placement for Soft Robotics”
Extended Summary of “Co-Learning of Task and Sensor Placement for Soft Robotics”Extended Summary of “Co-Learning of Task and Sensor Placement for Soft Robotics”
Extended Summary of “Co-Learning of Task and Sensor Placement for Soft Robotics”
 
Design Exploration: Sviluppo telaio per vettura formula sae
Design Exploration: Sviluppo telaio per vettura formula saeDesign Exploration: Sviluppo telaio per vettura formula sae
Design Exploration: Sviluppo telaio per vettura formula sae
 
Realizzazione di un controllore basato su piattaforma robotica Thymio 2.
Realizzazione di un controllore basato su piattaforma robotica Thymio 2.Realizzazione di un controllore basato su piattaforma robotica Thymio 2.
Realizzazione di un controllore basato su piattaforma robotica Thymio 2.
 
Presentazione Tetris
Presentazione TetrisPresentazione Tetris
Presentazione Tetris
 
Simulazione di un sistema fisico ts inginf
Simulazione di un sistema fisico ts inginfSimulazione di un sistema fisico ts inginf
Simulazione di un sistema fisico ts inginf
 
Progettazione e sviluppo di un sistema di visione artificiale per il monitora...
Progettazione e sviluppo di un sistema di visione artificiale per il monitora...Progettazione e sviluppo di un sistema di visione artificiale per il monitora...
Progettazione e sviluppo di un sistema di visione artificiale per il monitora...
 
AV_tesi_v5
AV_tesi_v5AV_tesi_v5
AV_tesi_v5
 
Recognizing Hand Gestures using WebCams
Recognizing Hand Gestures using WebCams Recognizing Hand Gestures using WebCams
Recognizing Hand Gestures using WebCams
 
Automi probabilistici temporali e loro verifica formale
Automi probabilistici temporali e loro verifica formaleAutomi probabilistici temporali e loro verifica formale
Automi probabilistici temporali e loro verifica formale
 
Realizzazione di un controllore basato su piattaforma robotica Thymio 2.
Realizzazione di un controllore basato su piattaforma robotica Thymio 2.Realizzazione di un controllore basato su piattaforma robotica Thymio 2.
Realizzazione di un controllore basato su piattaforma robotica Thymio 2.
 
Classificazione in efMRI: Un caso di studio sulla coniugazione dei verbi
Classificazione in efMRI: Un caso di studio sulla coniugazione dei verbiClassificazione in efMRI: Un caso di studio sulla coniugazione dei verbi
Classificazione in efMRI: Un caso di studio sulla coniugazione dei verbi
 
Tesi andrea cingolani
Tesi andrea cingolaniTesi andrea cingolani
Tesi andrea cingolani
 
Robotic Arm Simulation
Robotic Arm SimulationRobotic Arm Simulation
Robotic Arm Simulation
 
Relaxed FD Discoverer
Relaxed FD DiscovererRelaxed FD Discoverer
Relaxed FD Discoverer
 
Extended Summary of "Evolutionary Optimization of Deep Learning Activation Fu...
Extended Summary of "Evolutionary Optimization of Deep Learning Activation Fu...Extended Summary of "Evolutionary Optimization of Deep Learning Activation Fu...
Extended Summary of "Evolutionary Optimization of Deep Learning Activation Fu...
 
BlackBoard Team - Motion Tracking Platform
BlackBoard Team - Motion Tracking PlatformBlackBoard Team - Motion Tracking Platform
BlackBoard Team - Motion Tracking Platform
 
Test 03b 26.05.2015
Test 03b   26.05.2015Test 03b   26.05.2015
Test 03b 26.05.2015
 
Rl meetup 29102018_andrea_mercuri
Rl meetup 29102018_andrea_mercuriRl meetup 29102018_andrea_mercuri
Rl meetup 29102018_andrea_mercuri
 
Algoritmi di ordinamento
Algoritmi di ordinamentoAlgoritmi di ordinamento
Algoritmi di ordinamento
 

Introduzione alle Self Driving Car

  • 1. Vincenzo Dentamaro CEO Nextome, Georgia Institute of Technology, Università degli studi di Bari Introduzione alle: Self Driving Cars
  • 2. Agenda • Cosa sono le self driving cars e la loro tassonomia • Il problema della localizzazione • Modello probablisitico o Filtri di Kalman o Particle filter o Ricerca del percorso • Modello Deep Learning • Conclusioni
  • 3. Cosa sono le self driving cars e la loro tassonomia Le self driving cars sono auto capaci a localizzarsi in uno spazio, pianificare un percorso e muoversi evitando gli ostacoli in presenza di alter automobili e persone. La tassonomia • Livello 0 - Nessuna autonomia • Livello 1 - Assistenza alla guida: (il guidatore deve essere pronto a riprenderne il controllo) • Livello 2 - Automazione parziale: (monitoraggio circostante da parte dell’utente) • Livello 3 - Automazione condizionata (guidatore pronto a riprendere controllo in caso di richiesta del sistema) • Livello 4 - Alta automazione (non attivabile in casi estremi come es. maltempo). • Livello 5 - Completa automazione
  • 5. Componenti delle auto semi autonome External 1. Radar 2. Visible-lightcamera 3. LIDAR 4. Infrared camera 5. Stereo vision 6. GPS/IMU 7. Audio Internal 1. Visible-lightcamera 2. Infrared camera 3. Audio
  • 6. Componenti delle auto semi autonome
  • 7. Il problema della localizzazione In presenza di mappa . Fixed anchors localization GPS Sensors based localization
  • 8. Il problema della localizzazione In presenza di mappa . Migliorare l’accuratezza
  • 9. Modello Probabilistico Pros: • Non necessita di addestramento • E’ utilizzabile sempre ma con notevoli limiti Cons: • Non è in grado di muoversi nel traffico efficientemente senza computer vision (non riconosce segnali, non riconosce persone) • Imprevedibile • Non gestisce le priorità
  • 10. Filtri di Kalman I filtri di Kalman, sono usati per filtrare segnali rumorosi, gestendo l’incertezza presente in tale segnale. Ogni sensore ha un certo “rumore”, se tale rumore è lineare, il Kalman Filter può rimuoverlo. Inoltre il Filtro di Kalman è noto per predire stati future del Sistema. Un altro vantaggio del filtro Kalman è che lo storico di uno stato non è necessario poiché il filtro si basa solo sullo stato immediato e su una matrice di covarianza che definisce la probabilità dello stato di essere corretto durante l’update. Nelle self driving cars, servono a predire la posizione di oggetti (tracking), pulire segnali rumorosi riguardo il movimento e la localizzazione.
  • 11. Filtri di Kalman • Lo stato è rappresentato come la posizione/velocità/valore associato al Sistema • Le azioni sono ciò su cui si può intervenire e che avrà effetto sul sistema. • Ci sono 2 equazioni nel filtro di Kalman, la prima è la predizione (qual’è lo stato corrente rispetto allo stato passato e l’azione effettuata), la seconda equazione è nota come equazioni di aggiornamento: esamina i sensori di ingresso in proporzione a quanto ci si fida di ogni sensore e quanto ci si fida della stima dello stato complessivo e aggiorna lo stato attuale. • Questo filtro funziona prevedendo lo stato corrente utilizzando le equazioni di predizione e poi segue una correzione della stima precedente utilizzando le equazioni di aggiornamento. Questo processo viene ripetuto continuamente.
  • 12. Particle Filters • L’idea chiave è quella di rappresentare la densità a posteriori con un insieme di campioni casuali (“samples”) con associato un peso ed effettuare la stima in base a questi campioni e al loro peso. Al crescere del numero di campioni considerati si ottiene una rappresentazione equivalente della funzione di densità.
  • 13. Particle Filters Algoritmo 1. Randomly generate a bunch of particles Particles can have position, heading, and/or whatever other state variable you need to estimate. Each has a weight (probability) indicating how likely it matches the actual state of the system. Initialize each with the same weight. 2. Predict next state of the particles Move the particles based on how you predict the real system is behaving. 3. Update the weighting of the particles based on the measurement. Particles that closely match the measurements are weighted higher than particles which don't match the measurements very well. 4. Resample Discard highly improbable particle and replace them with copies of the more probable particles. 5. Compute Estimate Optionally, compute weighted mean and covariance of the set of particles to get a state estimate
  • 15. Ricerca del percorso su mappa Algoritmo Dijkstra • L'algoritmo di Dijkstra consente di selezionare gli shortest path ( cammini minimi ) in un grafo ciclico caratterizzato da archi con pesi non negativi. Il cammino minimo è il percorso che permette di unire due nodi distinti del grafo. • L’algoritmo è finito e ha complessità O(V²) dove V è il numero di vertici.
  • 16. Ricerca del percorso su mappa Algoritmo A* • A* è un algoritmo di ricerca di tipo best first e ottimizzazione basato su grafi o griglie. Viene frequentemente impiegato nell’intelligenza artificiale perché in grado di gestire grafi ampi e indeterminati. • L’algoritmo euristico ha il compito di stimare la distanza tra qualsiasi nodo e la soluzione. L’euristica influenza fortemente i risultati conseguiti da A*. Esso, in particolare, ne determina il tempo complessivo di esecuzione. Un algoritmo euristico molto efficace consente ad A* di trovare velocemente la soluzione. Nel caso pessimo, una funzione euristica costante, A* diviene un algoritmo di ricerca molto simile a Dijkstra.
  • 17. Ricerca del percorso su mappa Algoritmo A* • A* rientra nella categoria degli algoritmi di ricerca best-first. Esso infatti esamina, passo dopo passo, i nodi che hanno il punteggio migliore. • A* usa le seguenti strutture dati per mantenere traccia dello stato d’esecuzione: o Una lista di nodi già visitati; o Una coda a priorità contentente i nodi da visitare. • Nel corso dell’esecuzione, ad ogni nodo vengono associati più valori: gScore, hScore, fScore. In termini matematici, dato il nodo corrente n, il nodo di partenza p e il nodo soluzione s, si deifiniscono i valori: La funzione g calcola il costo effettivo del percorso che separa i nodi p (partenza) e n (attuale). La funzione h calcola una stima del costo del percorso tra i nodi s (soluzione) e n (attuale). La funzione h corrisponde alla definizione dell’algoritmo euristico enunciato in precedenza. Essa è infatti chiamata spesso funzione euristica.
  • 18. Ricerca del percorso su mappa Algoritmo A* 1. Inserimento nella coda del nodo di partenza con priorità pari al fScore; 2. Se la coda è vuota, l’algoritmo termina: soluzione non trovata; 3. Estrazione del miglior nodo da visitare (priorità con valore più basso); 4. Se il nodo estratto ha hScore nullo, l’algoritmo termina: soluzione trovata; 5. Costruzione dei nodi figli; 6. Eliminazione dei nodi figli già visitati e subottimi; 7. Inserimento dei nodi rimanenti nella coda con priorità pari al fScore; 8. Tornare al punto 2.
  • 19. Ricerca del percorso su mappa Algoritmo A*
  • 20. Modello Deep Learning Computer Vision Supervised Learning Unsupervised Learning Semi-Supervised Learning Reinforcement Learning Apprendimento supervisionato standard Computer Vision
  • 21. Deep Learning con le ConvNet • Consentono di costruire più livelli al fine di relevare diverse features ad ogni livello tenendo conto della disposizione spaziale dei pixel nell’imagine. • I campi recettori funzionano come finestre sovrapposte che si fanno scorrere sull’immagine in modo da creare una mappa di caratteristiche, tale processo si chiama convoluzione. • Più layers permettono di riconoscere oggetti nell’imagine aventi sia posizione che diverse dimensioni. • Il layer di pooling sono dei layer semplici che permettono il riepilogo delle caratteristiche da passare poi al livello convolutivo sucessivo per finire a un perceptron multilivello. Regular neural network (fully connected): Convolutional neural network: Sequenza di convolutional layer e pooling layer con al termine più livelli di full connected layers.
  • 22. Deep Learning con le ConvNet
  • 23. Deep Learning con le ConvNet
  • 24. Deep Learning architettura • 9 layers • 1 normalization layer • 5 convolutional layers • 3 fully connected layers • 27 million connections • 250 thousand parameters Camera + Inputs da parte del conducente (sterzo, freni, velocià, marce) da parte dell’automobilista in fase di training
  • 27. Conclusioni • Il deep learning da solo ha dimostrato di poter guidare un’auto in condizioni di traffico normale e senza condizioni atmosferiche particolari. • La fusione tra il modello probabilistico e il modello deep learning (deep reinforcement learning) è il futuro per le self driving cars. Tale fusione sarà capace a fronteggiare anche problematiche estreme come guida con il maltempo.