• Nenhum resultado encontrado

Uso de técnicas de aprendizado de máquina para identificação de perfis de uso de automóveis baseado em dados automotivos

N/A
N/A
Protected

Academic year: 2021

Share "Uso de técnicas de aprendizado de máquina para identificação de perfis de uso de automóveis baseado em dados automotivos"

Copied!
93
0
0

Texto

(1)

Cephas Alves da Silveira Barreto

Uso de Técnicas de Aprendizado de Máquina

para Identificação de Perfis de Uso de

Automóveis Baseado em Dados Automotivos

Natal-RN

2018

(2)

Uso de Técnicas de Aprendizado de Máquina para

Identificação de Perfis de Uso de Automóveis Baseado

em Dados Automotivos

Dissertação de Mestrado apresentada ao Pro-grama de Pós-graduação em Engenharia de Software da Universidade Federal do Rio Grande do Norte como requisito para a ob-tenção do grau de Mestre em Engenharia de Software.

Universidade Federal do Rio Grande do Norte – UFRN

Instituto Metrópole Digital – IMD

Programa de Pós-Graduação em Engenharia de Software – PPgSW

Orientador: Prof. Dr. João Carlos Xavier Júnior

Coorientador: Prof. Dr. Ivanovitch Medeiros Dantas da Silva

Natal-RN

2018

(3)

Barreto, Cephas Alves da Silveira.

Uso de técnicas de aprendizado de máquina para identificação de perfis de uso de automóveis baseado em dados automotivos / Cephas Alves da Silveira Barreto. - 2018.

87f.: il.

Dissertação (Mestrado) - Universidade Federal do Rio Grande do Norte, Instituto Metrópole Digital, Programa de Pós-Graduação em Engenharia de Software, Natal, 2018.

Orientador: Dr. João Carlos Xavier-Júnior.

Coorientador: Dr. Ivanovitch Medeiros Dantas da Silva.

1. Aprendizado de Máquina - Dissertação. 2. Dados Automotivos - Dissertação. 3. Aplicações Inteligentes - Dissertação. I. Xavier-Júnior, João Carlos. II. Silva, Ivanovitch Medeiros Dantas da. III. Título.

RN/UF/BCZM CDU 004.02 Universidade Federal do Rio Grande do Norte - UFRN

Sistema de Bibliotecas - SISBI

Catalogação de Publicação na Fonte. UFRN - Biblioteca Central Zila Mamede

(4)

minha família (nascidos “Barreto” ou não) que pude, inclusive, me alimentar. Realizar um trabalho como este não significa nada perto do que vocês já fizeram por mim, mas citá-los aqui talvez possa demonstrar o quanto eu os amo e sou grato.

(5)

Agradecimentos

Este espaço talvez seja o mais difícil de escrever. Não posso agradecer apenas àqueles que contribuíram diretamente para este trabalho. Terei que ir além e agradecer a todos que participaram da minha vida e que possuem relação direta ou indireta com este trabalho. Perdoem-me pois eu não tenho como fazer isso em apenas um parágrafo ou dois.

Agradeço a Deus, em uma singela obviedade repetida em muitos trabalhos, por ter me criado e por ter me amado antes de minha concepção.

Agradeço à minha mãe, Marleide, a mulher mais extraordinária que o mundo poderia contemplar, por todas as lágrimas, palmadas, conselhos, cheiros, abraços e, logicamente, pelo exemplo. Te amo mãe.

Agradeço ao meu Pai (in memoriam), Itamar, a pessoa que “jamais fez mal a uma formiga”, pelos confeitos que me trazia. Saudades painho.

Agradeço ao meu irmão, Silas, meu amigo, por existir e ser quem é. Sem você eu não estaria aqui. Te amo.

Agradeço à minha esposa, Kézia, a melhor esposa do mundo e a melhor mãe que eu conheço, por me sustentar e amar. Amo você, obrigado.

Agradeço à minha filhinha, Sara, Sarinha, Passarinha. Obrigado por existir e me salvar, minha pequena senhorinha. Amo você pequenininha.

Agradeço ao meu tio Sevinaldo, exemplo de abnegação. Não precisarei propagar a descrição do que fez pela minha família, mas enquanto o meu coração bater ele me lembrará de tudo, tio Naldo. Obrigado.

Agradeço ao querido tio e professor Arimatés Oliveira, professor por natureza e excelência. Obrigado por tanto me ajudar e aconselhar. Obrigado pela história do coelho, foi de uma sabedoria extraordinária. Te amo tio.

Agradeço aos meus pais não biológicos, Delmiro e Jeremias. Jamais esquecerei as broncas, conselhos, bizus e carinho. Também agradeço às suas famílias, pessoas que amo muito também.

Agradeço à mulher mais cheia de energia que conheço, Margarida, minha madrinha, minha mãe. Por tudo. Não largarei o osso. JAMAIS!

Agradeço ao Coronel Arthur, um amigo que me ensinou a ficar mais calado e ser melhor ao mesmo tempo, sinto saudades.

Agradeço aos meus amigos de faculdade, do BTI 2013, principalmente a Ramon, Vilar, Tharles e Hamurabi. A trajetória foi menos difícil graças a vocês.

(6)

Anderson, Dannylo, Paulo, Dennis, João, Tyrone, Rafael Queiroz e o novato Guilherme. Não teria como aguentar tanto tempo estudando se não fossem vocês me enchendo o saco e me fazendo desopilar.

Agradeço aos meus amigos, companheiros de mestrado, alunos do PPgSW, em especial aos meu amigos Welkson, Diego e David, obrigado por sempre dividirmos nossos sofrimentos, isso ajuda demais a superar as dificuldades.

Agradeço a todos que voluntariamente participaram do experimento. Não posso citar nomes por motivos científicos mas se o seu carro recebeu um OBD, com certeza eu lembro de você agora enquanto escrevo. Agradeço especialmente ao meu primo amado Érico Barreto, que muito me ajudou na preparação dos experimentos.

Agradeço de coração ao meu amigo Júnior e toda a sua equipe, inclusive sua mãe, querida irmã Nativa, com todo o apoio. Obrigado júnior, seu conhecimento extraordinário só não supera sua humildade.

Agradeço a todos aqueles que receberam pedidos para ler o texto, em qualquer das etapas, e me ajudaram dando alguma opinião. Destes eu cito especialmente minha esposa Kézia, Cícero, profa. Priscilla, Andressa, Raquel, Ramon, Yan, Karina, Paulo e Larissa.

Agradeço aos meus professores que guardo como mestres para a vida, Profs.: Ivanovitch Silva, Íris Pimenta, Anderson Paiva, João Carlos, Gibeon Soares, Itamir Barroca, Uirá Kulesza, Apuena, Rafael Aroca, Frederico Lopes, Gustavo Girão, Carla Curvelo e minha amiga eterna, a professora Priscilla Teles. Obrigado por me abrirem as portas, os olhos e a mente quando eu preciso.

Agradeço com carinho especial a Diego e Giuliana, servidores do IMD que exercem suas funções com excelência e sempre me acudiram na hora do aperreio.

Ao meu amigo Elton, excelente desenvolvedor e grande pessoa, que desenvolveu algumas das tecnologias que utilizei nesta pesquisa e que me ajudou em muitos momentos. Te devo muito. Obrigado por tudo.

Agradeço ao meu coorientador, Prof Ivanovitch Silva, o cara que nunca derruba você, que te dá parabéns até quando você cria coleira para morcego. Obrigado, o incentivo nunca atrapalha.

Agradeço ao meu Orientador e amigo, João Carlos Xavier Júnior, que parece meio bravo mas é um verdadeiro pai. Um dia decidiu me adotar e aceita que eu seja exatamente como sou. Agradeço pelas horas que deixou de estar com sua família para me auxiliar e orientar, pelas conversas e conselhos. Espero poder retribuir a quem quer que seja tudo que faz por mim. Incluo neste agradecimento também a Profa. Anne Magaly. Tenho a senhora como exemplo e já te disse isso. Obrigado por lutar pelo seu sonho mesmo com uma família

(7)

para cuidar. Obrigado pelas oportunidades que já me deu e por ouvir o prof. quando se trata de me ajudar. A ambos e sua família reitero minha admiração e agradecimento, de coração. Obrigado.

Agradeço aos professores que participaram das bancas de qualificação e de defesa. Além dos já citados prof. João Carlos e prof. Ivanovitch adiciono os profs.: Daniel Sabino, Gibeon Soares e Carlos Silla. Muito obrigado por contribuirem para a melhoria deste trabalho.

Agradeço com grande carinho à empresa Overleaf (www.overleaf.com) que, através de uma de suas colaboradoras, me cedeu gentilmente um projeto sem nenhuma restrição, o que eu não teria condições de arcar. A atitude da querida Dra. LianTze Lim ao me ofertar o projeto me deixou encantado e nunca será esquecida. Obrigado.

English version for Overleaf and dear Dra. LianTze Lim It is with great

affection that I would like to thank dear Dra. LianTze Lim from Overleaf. Equally I would like to thank Overleaf (www.overleaf.com) themselves for making it possible for the access to Project without restrictions. Thankfully I completed my research and presented it in full.

Agradeço ao meu amigo Peter Hawes pelas conversas e ajudas. Também agradeço por me permitir se o que sou de melhor, um amigo.

Agradeço, também, a todos os que eu aperreio, considero e chamo de amigos ou família. Terminar um curso como este não é fácil, mas como eu já citei, não significa nada. Adquirir certos conhecimentos é muito pouco perto do que podemos fazer (inclusive sem eles) pelo bem do próximo. Gostaria de agradecer a qualquer um que esteja lendo este trabalho. Provavelmente está lendo pelo fato de estar incluso em algum dos itens acima.

Este último parágrafo escrevo com maior apego a todos os Barretos, família de Severino e Donalba (painho) e família de Miguel e Edite (mainha). Obrigado por existirem. Jamais poderia estudar ou ter condições de raciocinar, de andar, de me vestir ou de buscar sonhos sem o suporte de vocês. Vocês me suportam quando eu não me sustento e vocês me suportam quando vocês mesmos não me aguentam. Obrigado.

Posso, então, terminar este agradecimento com a frase mais simples e o significado mais profundo. Amo cada um dos citados, profundamente.

(8)
(9)

Uso de Técnicas de Aprendizado de Máquina para

Identificação de Perfis de Uso de Automóveis

Baseado em Dados Automotivos

Autor: Cephas Alves da Silveira Barreto Orientador: Prof. Dr. João Carlos Xavier Júnior

Resumo

A violência no trânsito tem causado grandes prejuízos e, acima de tudo, vitimado muitos cidadãos, usuários ou não de automóveis. Segundo estudos do Observatório Nacional da Segurança Viária (ONSV, 2017), 90% dos acidentes de trânsito são causados por imprudência dos condutores, 5% por defeitos nos automóveis e mais 5% por má condição das rodovias. Uma das alternativas para embasar ações que enfrentam esses problemas é entender como se comportam os condutores de automóveis quando estão ao volante. Usar as informações do veículo para entender o comportamento dos motoristas é uma questão que tem ganhado importância nos últimos anos e, diante dos problemas envolvidos, identificar perfis de utilização de automóveis tem sido, cada vez mais, um tema de pesquisa em todo mundo. Este trabalho apresenta um modelo de utilização de técnicas (descritivas e preditivas) de Aprendizado de Máquina sobre dados de veículos obtidos via On-Board Diagnostics II (OBD-II) para identificação de possíveis perfis de uso automotivo. O modelo criado obteve, após todo o processo de refinamento, mais que 99% de acurácia na identificação de 3 perfis (low, mid e high). Para aplicar o modelo, foi criada uma plataforma baseada numa arquitetura distribuída (Servidor Web, Aplicativo Móvel e API de serviço). Essa plataforma é capaz de capturar os dados de um automóvel e devolver o seu perfil de uso de seu condutor (motorista).

(10)

Identification Based on Car Data

Author: Cephas Alves da Silveira Barreto Supervisor: Prof. Dr. João Carlos Xavier Júnior

Abstract

Traffic violence has caused great damage. And above all, victimized many citizens, whether drivers or non drivers. According to studies from brazilian National Road Safety Observa-tory (ONSV, 2017), 90% of traffic accidents are caused by drivers’ recklessness, 5% by car defects and 5% by poor road conditions. One of the alternatives to support actions that address these problems is to understand how car drivers behave when they are behind the wheel. Using vehicle information to understand drivers is an issue that has gained importance in recent years and, in the face of the problems involved, identifying car use profiles has increasingly been a subject of worldwide research. This work presents a model for the use of Machine Learning techniques (descriptive and predictive) on vehicle data obtained from OBD-II (On Board Diagnostics II) to identify possible profiles of automotive using. After the entire refinement process, the model presented more than 99% accuracy in the identification of 3 profiles (low, mid and high). To implement the model, a platform based on a distributed architecture (Web Server, Mobile Application and Service API) was created. This platform is able to capture data from a car and return its usage profile.

(11)

Lista de ilustrações

Figura 1 – Principais partes de um motor . . . 23

Figura 2 – Tipos de métodos de aprendizado indutivo . . . 27

Figura 3 – Etapas definidas para realização desta pesquisa . . . 38

Figura 4 – Conector OBD-II . . . 39

Figura 5 – Android-OBD-Reader . . . 41

Figura 6 – Dados obtidos via Android-OBD-Reader em formato Comma-separated values (csv) . . . 41

Figura 7 – S10 2015 - Modelo utilizado no experimento final . . . 49

Figura 8 – Trajeto definido para o Experimento . . . 50

Figura 9 – Metodologia utilizada para definição do modelo de AM . . . 53

Figura 10 – Plotagem dos valores por grupo e por atributo . . . 62

Figura 11 – Abstração da plataforma desenvolvida - Fluxo dos Dados . . . 66

Figura 12 – Funcionamento simplificado da plataforma . . . 68

Figura 13 – Estrutura de pacotes e classes - Aplicativo Móvel . . . 70

Figura 14 – Tela de início e de configuração - Aplicativo Móvel . . . 71

Figura 15 – Tela de preparação para início e finalização do monitoramento - Aplica-tivo Móvel . . . 72

Figura 16 – Estrutura de pacotes e classes - Serviço Online . . . 73

Figura 17 – Tela principal - Protótipo de Aplicação Cliente . . . 74

Figura 18 – Estrutura de pacotes e classes - Protótipo de Aplicação Cliente . . . . 75

(12)

Tabela 1 – Listagem de atributos que são capturados via OBD-II. . . 43

Tabela 2 – Resultados do Primeiro Experimento - EM . . . 46

Tabela 3 – Bases resultantes dos trajetos - atributos e características . . . 51

Tabela 4 – Bases resultantes dos trajetos - geral . . . 52

Tabela 5 – Resultados - Métodos descritivos - base de perfis . . . 54

Tabela 6 – Resultados - Métodos descritivos - base de controle . . . 54

Tabela 7 – Resultados - Métodos preditivos - base de perfis . . . 57

Tabela 8 – Resultados - Métodos preditivos - base de controle . . . 58

Tabela 9 – Médias - Métodos preditivos - base de perfis . . . 59

Tabela 10 – Médias - Métodos preditivos - base de controle . . . 59

Tabela 11 – Teste de Friedman e Índice Nemenyi - base de perfis . . . 60

Tabela 12 – Matriz de Confusão - base de perfis_K-means_k_3 . . . 60

Tabela 13 – Valores médios por atributo e grupo - base de perfis. . . 61

(13)

Lista de Abreviaturas

AM Aprendizado de Máquinas

API Application Programming Interface

BTI Bacharelado em Tecnologia da Informação CAN Control Area Network

csv Comma-separated values DB Índice Davies-Bouldin DLC Diagnostic Link Connector DT Decision Trees

ECM Engine Control Module ECU Electronic Control Unit ECUs Electronic Control Units EJB Enterprise JavaBeans EM Expectation-Maximization

ENIAC Encontro Nacional de Inteligência Artificial e Computacional GPS Global Positioning System

HA Hierárquico Aglomerativo HMM Hidden Markov Model HTTP Hypertext Transfer Protocol

ISO International Organization for Standardization JSON JavaScript Object Notation

KNN K-Nearest Neighbors

LabCoMU Laboratório de Computação Móvel e Ubíqua MAF Mass Air Flow

(14)

OBD On-Board Diagnostic OBD-II On-Board Diagnostics II

ONSV Observatório Nacional da Segurança Viária

PPgSW Programa de Pós-graduação em Engenharia de Software REST Representational State Transfer

RF Random Forest

RNA Rede Neural Artificial RNAs Redes Neurais Artificiais RPM Rotações por Minuto SVM Support Vector Machine

UFRN Universidade Federal do Rio Grande do Norte URL Uniform Resource Locator

(15)

Sumário

Capítulo 1 . . . 17 1 INTRODUÇÃO . . . 17 1.1 Problema . . . 18 1.2 Justificativa . . . 18 1.3 Objetivos . . . 19 1.4 Metodologia . . . 20 1.5 Organização do Trabalho . . . 21 Capítulo 2 . . . 21 2 CONCEITOS RELACIONADOS . . . 22 2.1 Eletrônica Automotiva . . . 22

2.2 O Módulo de Injeção e o Funcionamento dos Motores . . . 22

2.3 Especificações de Controle Automotivo . . . 24

2.3.1 Considerações Sobre Controle Automotivo . . . 25

2.4 Aprendizado de Máquina . . . 25

2.4.1 Pré Processamento . . . 26

2.4.2 Métodos de Aprendizado . . . 27

2.4.2.1 Métodos Descritivos . . . 28

2.4.2.2 Métodos Preditivos . . . 28

2.4.3 Análise dos Resultados . . . 29

2.4.3.1 Análise de Modelos Preditivos . . . 29

2.4.3.2 Análise de Modelos Descritivos . . . 30

2.4.4 O Papel Humano nos Métodos de AM . . . 30

2.4.5 Validação Estatística . . . 31

2.4.6 Considerações . . . 31

Capítulo 3 . . . 31

3 TÉCNICAS DE APRENDIZADO DE MÁQUINA SOBRE DADOS AUTOMOTIVOS . . . 32

3.1 Trabalhos Relacionados . . . 32

3.1.1 Definição de Perfis entre Condutores de Automóveis. . . 33

3.2 Sistemas de Monitoramento Automotivo . . . 35

3.2.1 Monitor OBD . . . 35

(16)

3.3 Considerações . . . 37

Capítulo 4 . . . 37

4 ESTUDO EXPLORATÓRIO . . . 38

4.1 Escolha do Sistema para Coleta de Dados . . . 38

4.1.1 Dispositivo OBD-II . . . 39

4.1.2 Sistema de Coleta e Armazenamento de Dados . . . 40

4.2 Primeiro Experimento . . . 40

4.2.1 Contexto do Primeiro Experimento . . . 41

4.2.2 Os Dados . . . 42

4.2.3 Limpeza dos Dados . . . 45

4.2.4 Análise dos Dados . . . 45

4.3 O Segundo Experimento. . . 47

4.3.1 Coleta de Dados . . . 47

4.3.1.1 Coleta Principal de Dados . . . 48

4.3.1.2 Coleta Auxiliar de Dados . . . 48

4.3.2 O Automóvel Utilizado . . . 49

4.3.3 O Trajeto . . . 49

4.3.4 As Bases de Dados . . . 49

4.3.5 Análise dos Dados . . . 52

4.3.5.1 Métodos Descritivos . . . 53

4.3.5.1.1 Métodos Descritivos - Resultados . . . 55

4.3.5.2 Métodos Preditivos . . . 56

4.3.5.2.1 Métodos Preditivos - Resultados . . . 56

4.3.6 Rotulação dos Grupos Formados . . . 60

4.4 Valor de Negócio Para os Grupos Criados . . . 63

4.5 Considerações . . . 64

Capítulo 5 . . . 64

5 PLATAFORMA DESENVOLVIDA . . . 65

5.1 Descrição Geral . . . 65

5.2 Abstração e Funcionamento da Plataforma . . . 65

5.3 Requisitos da Plataforma . . . 67

5.3.1 Requisito Funcionais . . . 67

5.3.2 Requisitos Não Funcionais . . . 69

5.4 Implementação da Plataforma . . . 69

5.4.1 Monitoramento . . . 69

(17)

5.4.3 Serviço Online . . . 71

5.4.4 Protótipo de Aplicação Cliente . . . 74

5.4.5 Formatação dos Dados . . . 75

5.5 Considerações . . . 76 Capítulo 6 . . . 77 6 CONSIDERAÇÕES FINAIS . . . 78 6.1 Retrospectiva do Trabalho . . . 78 6.2 Contribuições . . . 79 6.3 Trabalhos Futuros . . . 80 6.4 Considerações . . . 81 6.4.1 Contribuições Adicionais . . . 81 6.4.2 Dificuldades Enfrentadas . . . 81 REFERÊNCIAS . . . 83

ANEXOS

89

(18)

1 Introdução

Como é de conhecimento geral, nosso país vem sofrendo com problemas sociais sérios, causados muitas vezes pelos próprios cidadãos. A violência no trânsito, por exemplo, tem vitimado muitos brasileiros e, acima de tudo, tem causado grandes prejuízos. Essas perdas ficaram em torno de 60 bilhões de Reais com acidentes de trânsito somente no ano de 2013, segundo pesquisas feitas pelo Observatório Nacional da Segurança Viária (ONSV),

2017. A grande maioria dos acidentes de trânsito é causada por imprudência dos condutores (90%). Além da imprudência, defeitos nos automóveis (5%) e má condição das rodovias (5%) também contribuem para que vidas e recursos financeiros sejam perdidos anos após

anos (ONSV, 2015; ONSV, 2017).

Apenas em 2013, por exemplo, foram mais de 170 mil internações e mais de 43 mil mortes causadas pelo trânsito brasileiro (CARVALHO; RIBEIRO, 2016). Portanto, observa-se que se trata de uma temática com grandes repercussões financeiras e humanas, e que iniciativas que tornem viáveis estratégias para diminuição desses problemas são de grande valor.

Uma das alternativas que pode ajudar a lidar com esse contexto é entender como se comportam os condutores de automóveis quando estão ao volante. Tal entendimento pode, por exemplo, ajudar a embasar políticas sociais de conscientização no trânsito. Imaginando um cenário onde um grupo de carros e condutores tivessem seus dados armazenados e analisados em tempo real, seria possível, através desse volume de dados, encontrar padrões que pudessem indicar a forma de dirigir de cada condutor. Dessa forma, por exemplo, poderiam ser descritos grupos de condutores de acordo com seu respectivo perfil (prudente, moderado, apressado e imprudente). Condutores com perfil “apressado” ou “imprudente” poderiam ser alvos de campanhas de conscientização. Por outro lado, condutores com perfil “prudente” ou “moderado” poderiam receber incentivos, pois estariam contribuindo para a redução do nível de poluição no ambiente, do risco de acidentes e, consequentemente, dos custos com tratamento dos acidentados e seguros obrigatórios.

Segundo trabalhos encontrados na literatura (EREN et al., 2012; ZHANG et al., 2016; AMSALU; HOMAIFAR, 2016), é importante armazenar e analisar dados de condutores e automóveis visando a obtenção ou possível indicação de diferentes perfis de condutores. Além disso, mercados que dependem de informações estratégicas sobre a forma de condução dos motoristas e dos próprios veículos, como o mercado de seguros automotivos e a venda de revisões programadas, podem ter benefícios diretos caso tais informações sejam acessíveis.

(19)

Capítulo 1. Introdução 18

1.1

Problema

No Brasil há diversos problemas que estão fortemente relacionados ao compor-tamento dos condutores. Alguns desses problemas são: mortes no trânsito; poluição; congestionamentos; prejuízos para as instituições causados pela perda de tempo no trân-sito; sobrepreço em serviços que deveriam ter um valor personalizado, mas que acabam seguindo uma média geral devido à falta de informações, como o de seguros automotivos e etc.

Temos ainda, em um contexto mais amplo, outra série de questões. Cidades com aumento constante e severo do número de veículos, falta de organização do espaço urbano na maioria das metrópoles brasileiras, grandes prejuízos com saúde devido a acidentes de trânsito, grande número de óbitos também relacionados aos acidentes e outros problemas. Tudo isso torna ainda mais urgente a necessidade de abordar o tema proposto. O contraponto entre a existência de pesquisas com resultados consistentes na área e a recorrência de problemas sérios relacionados aos veículos se torna, então, evidente.

Veículos possuem sensores e dados disponíveis (MCFARLAND,2017) em tempo real durante o seu uso. Esses recursos são subutilizados na maioria dos casos. No Brasil, apesar de existirem desde 2013, a obrigatoriedade de monitoramento de todos os componentes do motor via sensores e também a comunicação dos dados deste monitoramento via interface (a algum dispositivo conectado), não há ferramentas disponíveis que disponibilizem informação consistente quanto à forma de dirigir do condutor. Em outras palavras, paga-se pelo recurso (sensores e envio de dados, que são obrigatórios) e não se utiliza esse recurso para diminuir

os problemas relacionados ao trânsito.

Tendo apontado toda a problemática sobre acidentes de trânsito causados por condutores/motoristas imprudentes, este trabalho se destina a investigar e tentar responder o seguinte questionamento: É possível utilizar Aprendizado de Máquinas (AM) para a descoberta de padrões de comportamento de condutores de automóveis e assim oferecer serviço com potencial benefício à sociedade?

1.2

Justificativa

Prejuízos com o trânsito decorrentes do comportamento de condutores e também dos problemas veiculares são inúmeros, o que por si só indica a necessidade de entendimento do uso dos automóveis para diminuir problemas como emissão de poluentes, acidentes, defeitos, etc. Portanto, obter informações sobre o uso e o estado dos automóveis pode ser um fator diferencial para o enfrentamento de problemas relativos a esse contexto.

Empresas do mercado de seguros automotivos, como a Bradesco Seguro Autos, SulAmérica Seguros e BB MAPFRE, que respondem por mais de 48% desse mercado

(20)

(SILVA,2017), precisam de informações sobre como os futuros clientes utilizam o automóvel. Problemas no veículo e acidentes de trânsito podem ser influenciados de forma contundente pela forma de dirigir (ONSV,2017). Mas como obter informações sobre o comportamento de condutores? Uma das formas é solicitar ao possível cliente uma série de informações e utilizar as mais importantes, os fatores de risco, para estimar o valor correto para o seguro.

No seguro de automóveis, os fatores são variáveis observáveis relativas ao motorista, ao veículo e ao tráfego. As principais variáveis classifi-catórias utilizadas pela indústria de seguros são as seguintes: idade, sexo, acidente ou registro de reivindicação do motorista principal, data da carteira de motorista, tipo de veículo e local de residência. (...) A abordagem comum para selecionar os fatores de risco é baseada em técni-cas estatístitécni-cas multivariadas, embora essas técnitécni-cas ainda deixam

uma grande quantidade de heterogeneidade dentro das classes tarifárias (grifo nosso). (SEGOVIA-VARGAS; CAMACHO-MIñANO; PASCUAL-EZAMA,2015, p. 1230).

A heterogeneidade citada no texto, em outras palavras, significa que pessoas de uma mesma classe tarifária, mesmo dentro de um mesmo perfil, possuem preços fortemente diferentes. Por isso, ter uma forma de obter dados precisos do automóvel e uma ferramenta capaz de identificar o modo como o automóvel tem sido utilizado (comportamento do condutor) poderia trazer grandes benefícios às empresas de seguros automotivos e aos consumidores. Essa possibilidade tornaria possível uma precificação mais aproximada à realidade individual do consumidor, tanto para o mercado de seguros automotivos, quanto para outros que dependem de informações sobre o comportamento dos condutores.

De forma similar, qualquer outro serviço que precise de preços antecipados, como as revisões programadas (que normalmente seguem um valor igual para todos), poderiam ser beneficiados de uma abordagem que consiga capturar a forma como determinado motorista utiliza o veículo. Ainda seria possível ampliar os benefícios ao se aplicar uma possível abordagem de identificação à políticas públicas que incentivem o uso moderado dos automóveis, e uma consequente diminuição de riscos de acidentes e também de emissão de poluentes. Desta forma, os serviços citados são simples exemplos de como a identificação de perfis entre motoristas poderia ser benéfica a uma série de serviços e ações.

1.3

Objetivos

O principal objetivo deste trabalho é utilizar técnicas de Aprendizado de Máquina sobre os dados de veículos obtidos via On-Board Diagnostics II (OBD-II) para identificar perfis entre os condutores. Para tal, alguns objetivos específicos (ou metas) são almejados, e que podem ser descritos como a seguir:

(21)

Capítulo 1. Introdução 20

OBD-II e disponibilização da(s) base(s) em repositório aberto com objetivo de fomentar estudos nesta área;

2. Entendimento documentado a respeito da forma como os atributos coletados junto aos automóveis favorecem ou não o resultado de métodos de AM para definição de perfis entre condutores;

3. Definição de modelos de AM com resultados robustos para identificação de perfis entre condutores;

4. Implementação inicial da plataforma proposta neste estudo, em forma de protótipo, tornando possível a sua utilização e consequente teste dos modelos de AMescolhidos;

5. Publicação de resultados deste trabalho, na totalidade, ou como contribuição para pos-síveis extensões ou modificações, em eventos e/ou periódicos científicos, contribuindo assim para o desenvolvimento do conhecimento neste campo do conhecimento.

1.4

Metodologia

Foram estabelecidas algumas etapas para que seja possível alcançar os objetivos deste trabalho:

1. Analisar possíveis formas de extração dos dados com sistemas de código aberto via interface OBD-II;

2. Definir a formatação mais apropriada para os dados automotivos obtidos;

3. Realizar a extração, armazenamento e limpeza dos dados;

4. Testar diferentes técnicas de Aprendizado de Máquina e criar um modelo para definição de perfis entre condutores;

5. Desenvolver e testar um protótipo para definição de perfis entre condutores de automóveis;

6. Analisar qualitativamente os resultados obtidos.

Na primeira etapa será realizado um estudo para verificar a existência de softwares de código aberto capazes de coletar e armazenar dados automotivos obtidos via interface

OBD-II. Na segunda etapa, após escolha do sistema, serão verificados todos os formatos dos dados recebidos e então estabelecida uma padronização para eles. Na terceira etapa serão utilizadas técnicas de extração e limpeza sobre os dados obtidos, preparando-os para a próxima etapa. Na quarta etapa serão analisados os dados pré processados, através de

(22)

algoritmos descritivos de Aprendizado de Máquina, com objetivo de identificar padrões de comportamento entre os condutores.

Após sua conclusão, uma etapa complementar (não numerada) deve ser cumprida ao criar uma base de dados de código aberto e disponibilizar em repositório de dados para outros pesquisadores. A etapa complementar pode sofrer alteração quanto ao momento da sua realização a critério do pesquisador.

A quinta etapa consistirá na análise dos resultados da etapa quatro e na escolha das melhores técnicas de Aprendizado de Máquina com base nos seus resultados. A sexta etapa é composta pelo desenvolvimento e utilização, do sistema de detecção de perfis de condutores a partir das técnicas elencadas como melhores. Por fim, a sétima etapa é constituída pela análise qualitativa dos resultados obtidos com o sistema desenvolvido através de avaliação empírica.

1.5

Organização do Trabalho

Este trabalho está dividido em 6 capítulos, ficando o restante do documento estruturado da seguinte forma:

• o Capítulo 2 aborda os conceitos relacionados aos dados automotivos e as técnicas de Aprendizado de Máquina;

• o Capítulo 3 apresenta os trabalhos relacionados ao tema principal deste trabalho; • o Capítulo 4 mostra o desenvolvimento do trabalho, detalhando ferramentas e

métodos utilizados e os resultados preliminares obtidos através do uso das técnicas de Aprendizado de Máquina;

• o Capítulo 5 apresenta o sistema a ser desenvolvido, as ferramentas e técnicas usadas para sua implementação, o experimento de uso do sistema e seus resultados;

• por fim, o Capítulo 6 apresenta as considerações finais sobre o trabalho realizado e perspectivas futuras.

(23)

22

2 Conceitos Relacionados

Esta seção apresenta uma breve descrição dos conceitos relacionados a este trabalho. Nela serão apresentadas, de forma simples, algumas das ferramentas, técnicas e tecnologias utilizadas para o desenvolvimento deste trabalho. Essa descrição se torna importante no sentido de facilitar a compreensão dos leitores, dando uma visão superficial sobre o que ocorre sob a carroceria de um automóvel e também sobre o que são e como funcionam algumas técnicas de Aprendizado de Máquina.

2.1

Eletrônica Automotiva

De forma geral, automóveis são equipamentos altamente envolvidos por tecnologia. Neles, motor, suspensão, sensores, computadores, telas, atuadores, fios e uma série de outros dispositivos trabalham em conjunto. O motor, por exemplo, é o responsável por girar as rodas e a suspensão, por sua vez, dá estabilidade ao conjunto e protege outras partes e também os passageiros de vibrações durante os deslocamentos. É o trabalho harmônico de todos os componentes que faz com que o automóvel funcione corretamente.

Com o avanço da tecnologia, os carros deixaram de ser equipamentos unicamente mecânicos e passaram a ter componentes eletrônicos. Na atualidade, mesmo um carro popular possui uma série de dispositivos eletrônicos, inclusive, alguns computadores. Esses computadores, chamados popularmente de Centrais, ou Módulo Centrais, atuam como reguladores do funcionamento do automóvel.

Na atualidade, um automóvel pode chegar a ter setenta módulos centrais ou Electronic Control Units (ECUs), cada um com finalidade específica e, em conjunto, gerenciando praticamente todo o automóvel. Mesmo em carros populares, normalmente há mais de uma central e, uma delas é a central responsável pelo gerenciamento do funcionamento do motor, chamada de Módulo de Injeção, ou Engine Control Module (ECM). O ECM é, na atualidade, o principal componente quando se trata do funcionamento do motor, pois atua como um regulador de todos os seus componentes (CONTESINI, 2017).

2.2

O Módulo de Injeção e o Funcionamento dos Motores

Como já citado, automóveis não possuem apenas componentes mecânicos. Apesar de haver uma série de componentes eletrônicos com grande importância, há um componente mecânico que é indispensável para qualquer automóvel, o motor. Motores de automóveis são, na maioria dos casos, um grupo de peças que trabalham em conjunto para misturar

(24)

ar e combustível (gasolina, óleo diesel ou álcool). A partir dessa mistura é provocada a combustão que gera uma série de forças resultantes, logo transformadas em trabalho (movimento) por outro grupo de componentes.

Figura 1 – Principais partes de um motor

Fonte: adaptada de Bob(2015)

Para entender melhor o trabalho realizado pelo motor, é necessário entender o fluxo de acontecimentos que produz o resultado final (giro do motor) e também como cada parte citada desempenha papel fundamental e específico para o bom funcionamento de todo o conjunto. A Figura 1 apresenta as principais partes onde essas etapas ocorrem.

1. Entrada de ar e injeção de combustível no cabeçote;

2. Recebimento da mistura de ar e combustível vinda do cabeçote pelo bloco do motor;

3. Disparo de uma centelha que provoca a queima da mistura dentro do espaço que fica entre o cabeçote e bloco do motor (Câmara de Combustão);

4. Geração de uma série de forças a partir da explosão da mistura;

5. Transformação das forças em movimento circular pelo conjunto móvel;

6. Transferência do movimento circular do motor para as rodas via caixa de câmbio;

7. Transferência de parte do movimento circular para circulação de óleo, mantendo o motor lubrificado.

(25)

Capítulo 2. Conceitos Relacionados 24

Todos os acontecimentos relacionados ocorrem de forma monitorada. Uma série de dados relativos ao funcionamento de cada um desses acontecimentos é colhida continua-mente através de diversos sensores cuidadosacontinua-mente localizados em cada parte do motor. Os sensores são responsáveis por “observar” todas essas etapas e enviar os respectivos dados para o computador responsável pelo controle do funcionamento do motor, o ECM, também conhecido como Módulo de Injeção ou Módulo Central.

O Módulo de Injeção utiliza os dados vindos dos sensores para monitorar o fun-cionamento do motor, assim como para regular ativamente como o motor funciona. O objetivo dessa regulação dos motores veiculares é tentar corrigir possíveis problemas o mais rápido possível e assim diminuir a emissão de poluentes ou até mesmo manter o carro em funcionamento quando na existência de defeitos graves. São atributos comuns do Módulo Central, dentre outros: verificar e confrontar informações entre sensores similares; checar a existência de resposta de componentes; analisar os gases resultantes da queima de combustível; coordenar os diversos componentes para que trabalhem sincronizados.

Na prática, a utilização do módulo central possibilita ao motor responder em tempo real à diversas situações. Por exemplo, quando um automóvel está funcionando com o problema denominado de “mistura rica” que se caracteriza pela injeção de uma quantidade de combustível acima do previsto. Quando o Módulo Central identifica esse problema, há então o envio de um comando que equilibra a relação entre ar e combustível. Esse comando pode representar a diminuição da quantidade de combustível ou o aumento da quantidade de ar.

Já no caso de problemas mais graves, como a paralisação total de um sensor, por exemplo, o Módulo Central atua de forma a manter o automóvel em funcionamento. Isso ocorre pois, ao detectar a ausência de dados de um determinado sensor (o que normalmente indica que ele não está funcionando), a central imediatamente entra no Modo de Recuperação, emite um código de falha correspondente àquele sensor e passa a assumir um valor padrão (dentro de um intervalo normal) para que o automóvel continue funcionando. O Modo de Recuperação possibilita ao condutor do automóvel se deslocar até local adequado para reparo do defeito. Por último, a presença do Módulo de Injeção nos carros atuais é de vital importância para a otimização de uso de combustível e também diminuição da poluição.

2.3

Especificações de Controle Automotivo

Sabendo que um automóvel possui uma série de componentes eletrônicos e que seria necessário algum tipo de padronização para comunicação entre eles foram definidos vários protocolos e padrões. Um desses padrões, por exemplo, foi o padrão Control Area Network (CAN), criado pela Bosch em 1986 e adotado como padrão pela International

(26)

Organization for Standardization (ISO) em 1993, após um período de desenvolvimento (CAN in Automation,2016). A especificaçãoCANtem como principal característica tornar padronizada e permitir a comunicação entre microcontroladores mesmo na ausência de um elemento eletrônico “centralizador” (host).

Além da especificação CAN também foram criadas outras para tornar menos complexo e/ou diverso o universo da eletrônica e do controle automotivo. Dentre essas especificações, tem destaque a especificação de Diagnóstico Embarcado (On-Board Diag-nostic (OBD)). Essa especificação padroniza o envio de informações sobre falhas e códigos de manutenção para os automóveis de todo o mundo. A especificação OBD-IInasceu em 1996 (BARRETO; MOOERS,2017), já com a numeração de segunda versão, e em seguida foi difundida por todo o mundo como padrão de comunicação para falhas nos automóveis manufaturados.

No Brasil, a padronização OBD-II foi adotada posteriormente, apenas em 2010 (Conselho Nacional do Meio Ambiente,2004). Sua implementação, assim como no restante do mundo, trouxe consigo, além de diversas regras, a interface de comunicação de 16 pinos Diagnostic Link Connector (DLC). Essa interface permite uma comunicação direta com Módulo de Injeção e outros módulos para monitoração e controle (com algumas restrições) de todas as funções e parâmetros comandados pela central veicular.

Em 2011 foi definido que todos os automóveis manufaturados vendidos no Brasil deveriam utilizar as especificações OBD-II para monitoramento. Foi estabelecido ainda que todas as funções do motor deveriam ser monitoradas e reguladas com o objetivo de diminuir a emissão de poluentes. A especificação possibilita a sistemas internos e externos (via DLC) solicitar informações e ter retorno sobre o respectivo sensor ou funcionalidade.

2.3.1

Considerações Sobre Controle Automotivo

De forma geral, é possível notar que o(s) Módulo Central de um automóvel tem o controle dos dados que dão o diagnóstico sobre o seu funcionamento e que são capazes de atuar para manter o funcionamento correto. Sendo o funcionamento de um automóvel o resultado da interação entre um ser humano (motorista) e o automóvel, é possível utilizar todos os conceitos citados para entender como um motorista está utilizando um automóvel e como isso pode implicar sobre o próprio funcionamento do mesmo.

2.4

Aprendizado de Máquina

Aprendizado de Máquina é um conceito que está bem definido no meio científico e que possui aplicação em diversos campos do conhecimento. Mesmo sabendo disso, podemos questionar: como essas técnicas funcionam? ou, como podem resolver um problema relacionado a automóveis ou a outro domínio? Para Faceli et al. (2015):

(27)

Capítulo 2. Conceitos Relacionados 26

Em Aprendizado de Máquina, computadores são programados para aprender com a experiência passada. Para tal, empregam um princípio denominado indução, no qual se obtêm conclusões genéricas a partir de um conjunto particular de exemplos. Assim, algoritmos de Aprendizado de Máquina aprendem a induzir uma função ou hipótese capaz de resolver um problema a partir de dados que representam instâncias do problema a ser resolvido.(FACELI et al.,2015, p. 3)

Em outras palavras, um computador é apresentado a dados de um certo problema (dados de automóveis, por exemplo) e aplica uma espécie de raciocínio (função matemática, por exemplo) obtido com os casos observados (indução), para dessa forma, encontrar uma função que represente o problema de forma geral. O processo de aprendizado de máquina pode ser dividido em três etapas: análise dos dados, também chamado de pré processamento; métodos de aprendizado; e análise dos resultados ou pós processamento.

2.4.1

Pré Processamento

Apesar de ser uma ferramenta poderosa, o Aprendizado de Máquina não oferece por si só as saídas para todo e qualquer problema. De forma geral, não é possível aplicar um método de AM sobre uma massa de dados em seu formato original. Isso acontece devido às diferentes características, dimensões e formatos que os dados podem apresentar. Nesse sentido, o pré-processamento de dados consiste em retirar ou substituir instâncias ou padrões que possuam valores de atributos faltosos, aberrantes ou inconsistentes, tornando a base de dados mais suscetível a utilização de um método de AM.

Algumas das técnicas de pré-processamento utilizadas neste trabalho foram:

• Amostragem de dados: escolha de uma amostra ou subconjunto dos dados, que pode reduzir o tempo necessário para processamento e também levar ao mesmo resultado que o obtido com o conjunto de dados completo;

• Tratamento para dados desbalanceados: se um conjunto de dados onde o grupo com a classe “a” fosse observada 3500 vezes e a classe “b” apenas 1000 vezes, poderia ser necessário reduzir o conjunto de dados evitando o aparente desbalanceamento entre essas classes. Esse problema pode fazer o resultado do método de AM ficar enviesado;

• Limpeza de dados: consiste em eliminar ou diminuir a presença de dados ruidosos (pessoa com 102 anos), inconsistentes (pessoa com 287 anos), redundantes (velocidade

média em km/h e também em milhas/h) ou incompletos (dados ausentes);

• Transformação dos dados: técnicas de aprendizado de máquina são ferramentas e, como tal, possuem pontos fortes e fracos. Alguns métodos lidam melhor com dados numéricos, outros com categóricos, outros apenas com pequenas quantidades de

(28)

dados, outros tem uma capacidade maior para dados com grande volume. Para lidar com esse problema existe essa técnica, que transforma dados de um tipo em outro, como a discretização e a categorização;

• Redução de dimensionalidade: qualquer método computacional possui um custo de execução. Um algoritmo que custa muito tempo poderia levar décadas para ser executado sobre uma base de dados muito grande. Para diminuir o tamanho de uma base de dados pode-se reduzir o seu tamanho utilizando a redução de dimensionalidade. Há duas abordagens para a redução do número de atributos, que são: agregação e seleção. Com essa técnica é possível não só obter um melhor custo computacional como também uma melhor compreensão dos resultados.

2.4.2

Métodos de Aprendizado

Métodos de aprendizado de máquina são modelos computacionais que observam um certo grupo de padrões (instâncias) e tentam realizar a definição de uma resolução geral para um problema. Apesar de serem uma ferramenta com uma definição resumida comum, há diversos tipos de métodos de AM. Cada tipo de método de AM possui vantagens e desvantagens e, são divididos conforme apresentado na Figura 2.

Figura 2 – Tipos de métodos de aprendizado indutivo

Fonte: o autor

Como é possível observar na Figura2, o aprendizado indutivo possui vários tipos de acordo com as tarefas de aprendizado. No topo, aparece o aprendizado indutivo sendo dividido em aprendizado supervisionado (preditivo) e não supervisionado (descritivo). As tarefas supervisionadas se dividem pelo tipo dos rótulos: classificação, para os rótulos discretos; regressão, para os rótulos contínuos.

Já as tarefas descritivas são divididas em: agrupamento, sumarização e associação. No agrupamento os dados são agrupados de acordo com a sua similaridade. Na sumarização, o objetivo é encontrar uma descrição simples e compacta para os dados. Enquanto que na associação, deve-se encontrar padrões para as associações entre os atributos dos dados.

(29)

Capítulo 2. Conceitos Relacionados 28

2.4.2.1 Métodos Descritivos

Esse tipo de método procura explorar ou descrever um conjunto de dados. Para tal, não há rótulos pré estabelecidos. Por isso, os métodos desse tipo são conhecidos como métodos não supervisionados. Um exemplo seria observar um conjunto de dados de utilização de automóveis e agrupá-los segundo a semelhança entre os mesmos.

Para a descrição de problemas há uma vasta quantidade de algoritmos. Abaixo serão listados os principais algoritmos de agrupamento:

• Expectation-Maximization (EM): a técnica da Expectância Máxima é usada para estimar funções de máxima semelhança. Esta técnica retorna bons resultados sobre bases com dados incompletos pois pode-se utilizar os valores aprendidos com os dados preenchidos para estimar os valores ausentes. (SILVA; JúNIOR; SILVA,

2016);

• K-means: o algoritmo k-Médias possui uma implementação relativamente simples, o que ajuda a tornar seu uso mais difundido. Esta técnica utiliza centroides, que representam a instância média de um grupo. Para realizar o agrupamento o método utiliza alguma medida de similaridade entre as instâncias. Normalmente essa medida é a distância Euclidiana (SILVA; JúNIOR; SILVA, 2016);

• Hierárquico (H): o algoritmo Hierárquico, que pode ser aglomerativo ou divisivo, trabalha criando uma sequência de partições, como uma árvore (FACELI et al.,2015). No divisivo, as instâncias são colocadas em um único grupo e são divididas até que o número de grupos seja o desejado. Já no aglomerativo, as instâncias iniciam sendo, cada uma, um grupo e são agrupadas iterativamente até que se tenha o número de grupos desejado (SILVA; JúNIOR; SILVA, 2016).

2.4.2.2 Métodos Preditivos

Em tarefas de previsão, o objetivo é encontrar uma função (hipótese) a partir dos dados de treinamento. O objetivo desse tipo de método é rotular ou dar uma “classe” a um padrão (instância) qualquer. Em um problema de predição ou classificação, baseado em dados de veículos, um novo padrão poderia ser classificado em dois possíveis valores da classe, “com defeito” ou “sem defeito”. Também se diz que os métodos de AM dessa natureza seguem o paradigma supervisionado, pois é necessário apresentar ao método uma série de dados já rotulados para que o método possa aprender.

Há um bom número de algoritmos preditivos ou de classificação propostos na literatura (XU; WUNSCH, 2005). Os algoritmos que serão utilizados neste trabalho são descritos a seguir.

(30)

• Decision Trees (DT): Essa técnica é utilizada em problemas de supervisionados

de classificação e utiliza a abordagem de dividir para conquistar. Ela funciona gerando uma árvore a partir do conjunto de trinamento e essa árvore é utilizada para classificar as novas instâncias (BERRY; LINOFF,2011);

• K-Nearest Neighbors (KNN): A técnica dos k vizinhos mais próximos é baseada em instâncias. Seu funcionamento acontece ao dar a classe mais comum nos k vizinhos mais próximos (no conjunto de treinamento) de uma instância a ser classificada (MITCHELL, 1997);

• Multilayer Perceptron (MLP): as Redes Neurais Artificiais (RNAs) são baseadas no sistema nervoso e possuem várias camadas de neurônios com conexão forte entre si. As camadas podem ser de entrada, escondida e de saída. O MLPé um dos tipos de Rede Neural Artificial (RNA) mais conhecidos na literatura (BERRY; LINOFF,

2011);

• Naive Bayes (NB): Esta técnica se baseia no teorema de Bayes e é probabilística, ou seja, não garante o mesmo resultado para uma mesma base. Para que funci-one corretamente é necessário garantir que os dados sejam independentes entre si (MITCHELL, 1997);

• Support Vector Machine (SVM): a Máquina de Vetor de Suporte é uma técnica

baseada em métodos estatísticos. Esta técnica funciona dividindo os dados através de um hiperplano traçado entre as instâncias (LORENA; CARVALHO, 2007);

• Random Forest (RF): Esta técnica funciona criando uma quantidade grande

de Árvores de Decisão com configurações diversas (floresta). A partir das árvores geradas, normalmente árvores do tipo J48, são agrupados (ou fundidos) os resultados com objetivo de encontrar o melhor resultado possível. Normalmente o a escolha do melhor resultado possível entre as árvores é feito utilizando a técnica do voto majoritário (BERRY; LINOFF,1999).

2.4.3

Análise dos Resultados

Devido à natureza diversa dos métodos de AM, é necessário separar a análise dos resultados segundo os tipos dos algoritmos. Isso acontece pois para cada técnica de AM

devem ser utilizadas as técnicas corretas de análise.

2.4.3.1 Análise de Modelos Preditivos

Esse tipo de análise pode ser realizada segundo diferentes aspectos, tais como taxa de acerto do modelo gerado, compreensibilidade do conhecimento extraído e tempo de aprendizado. A maioria das medidas de análise de algoritmos preditivos se relaciona

(31)

Capítulo 2. Conceitos Relacionados 30

ao desempenho das predições realizadas. Medidas de erro, por exemplo, são largamente utilizadas na avaliação dos métodos preditores em AM. Este tipo de métrica usa uma taxa de erro ou classificações incorretas para medir o desempenho do classificador.

Técnicas de amostragem também são usadas para se obter estimativas de desempe-nho preditivo mais confiáveis. As principais são Holdout e Amostragem Aleatória, Validação Cruzada e Bootstrap.

2.4.3.2 Análise de Modelos Descritivos

Para analisar os resultados de um método deAM descritivo há duas possibilidades: comparação de resultados entre algoritmos, ou o quanto um agrupamento feito por um método é similar ao resultado de outro método; e validação das estruturas (grupos) encontrados pelo método de AM. Nos dois casos, busca-se validar se um agrupamento é válido.

De forma geral os algoritmos descritivos são avaliados segundo critérios de validação e índices estatísticos. Os critérios de validação podem ser: relativos, quando utilizados para comparar vários resultados de métodos de AM descritivos; internos, que medem a qualidade de um agrupamento com base nos dados originais; e externos, que medem a qualidade de um grupo de acordo com uma estrutura estabelecida anteriormente. Para validar os agrupamentos gerados neste trabalho, foram usados dois índices de validação, que são:

• Índice Silhouette: este índice interno é calculado por dado e utiliza a distância entre o dado e os demais componentes do seu grupo. O índice de cada grupo é a média dos índices de cada dado e o índice geral da partição é o valor médio dos índices de cada grupo. Normalmente este índice tem valor normalizado no intervalo entre 0 e 1 e, para fins de avaliação, quanto mais próximo de 1, melhor (PERES; LIMA, 2015);

• Índice Davies-Bouldin (DB): O DB, também do tipo interno, avalia a medida de dispersão intra grupo e também a medida de distância entre grupos. Para sua avaliação, quanto mais próximo de 0 melhor. Normalmente são apresentados em valores normalizados entre 0 e 1 (PERES; LIMA, 2015).

2.4.4

O Papel Humano nos Métodos de AM

Todo método computacional possui um custo de execução, geralmente medido em tempo. Em alguns casos, os resultados de métodos de Aprendizado de Máquina descritivos precisam passar pela avaliação de um profissional que conhece muito bem o domínio em questão, ou seja, precisa passar por um expert, que indicará se os grupos (partições) criados

(32)

fazem ou não fazem sentido. Esse fato reforça a importância do trabalho humano, que complementa o trabalho computacional, no processo de Aprendizado de Máquina, uma vez que só é possível notar a relação entre os grupos criados e o mundo real a partir do olhar humano.

2.4.5

Validação Estatística

Há casos em que não há como garantir o resultado de um método deAM. Quando isso ocorre os métodos são chamados de probabilísticos e necessitam de um número de execuções para que seu resultado médio seja observado. Nesse sentido é muitas vezes necessário utilizar métodos de validação estatística para que comprovem ou não a existência de diferença entre uma série de resultados entre diversos métodos. Neste trabalho foram utilizados dois métodos estatísticos: Teste t de Student e Teste de Friedman.

2.4.6

Considerações

Neste capítulo foram abordados os principais conceitos relacionados ao trabalho. De forma geral, foi apresentado o funcionamento de um motor automotivo, algumas das abordagens apontadas como padrões para controle e comunicação automotiva. Também foram apresentados conceitos relacionados ao Aprendizado de Máquina e algumas questões pertinentes relacionadas a esses conceitos.

No desenvolvimento desta pesquisa será necessário testar alguns algoritmos descriti-vos (agrupamento) sobre os dados automotidescriti-vos, visando desta forma, identificar diferentes grupos (perfis) de motoristas. Depois de identificados, tais grupos servirão de rótulo (classe) para a base que representa as características de todos os motoristas/condutores. A partir da base já rotulada, serão utilizados algoritmos preditivos (classificação) para predizer (classificar) o perfil de novos motoristas (novos padrões).

(33)

32

3 Técnicas de Aprendizado de Máquina sobre

Dados Automotivos

Neste capítulo serão abordados alguns trabalhos existentes sobre a utilização de técnicas de Aprendizado de Máquina sobre dados Automotivos. Será dado enfoque aos trabalhos que têm por objetivo a identificação de perfis de condutores. Também será feita uma breve introdução de algumas plataformas que tenham objetivos similares ao deste trabalho e que estejam em uso na atualidade. Ao final serão apresentadas algumas considerações a respeito do estado atual dos trabalhos e sobre a proposta a ser apresentada em capítulo subsequente.

Para realização desta etapa do trabalho será utilizada uma pesquisa do tipo Estado da Arte, também chamada de Revisão Narrativa (VOSGERAU; ROMANOWSKI,

2014). Esse tipo de revisão se caracteriza por uma ampla busca por estudos e materiais que dêem embasamento a problemas em certo campo do conhecimento. Nesse tipo de revisão, não há fortes obrigações com aspectos como o esgotamento da literatura ou viés específico, como o acadêmico, por exemplo (FERENHOF; FERNANDES, 2016). Dessa forma, serão apresentados os resultados da revisão de trabalhos, artigos científicos, produções tecnológicas e sistemas relacionados aos objetivos elencados para esse trabalho.

3.1

Trabalhos Relacionados

Recentemente, alguns estudos envolvendo o comportamento dos condutores e previsão de problemas em automóveis têm recebido uma grande atenção de pesquisadores. Um dos motivos para isso é a grande abrangência dos problemas decorrentes desse contexto.

Ahmed (1999) ressalta a magnitude dos problemas causados pelos congestionamentos e acidentes de trânsito nas grandes cidades e próximo a elas. Além disso, é do conhecimento geral que problemas nos veículos também podem dificultar o trânsito e causar uma série de outros transtornos e prejuízos.

Para Meseguer et al. (2015), os impactos causados pela grande quantidade de veículos ultrapassam os problemas diretamente relacionados a acidentes e também invadem a área de meio ambiente e de saúde. Para ele, um determinado comportamento por parte do condutor pode implicar em mais ou menos poluição no meio ambiente e isso implica diretamente na saúde da população e na qualidade do meio ambiente. Além desses problemas, também é relatada uma série de repercussões diretamente ligadas à quantidade crescente de veículos no ambiente urbano, o que também é abordado por Rodrigues (2013) no estudo que demonstra o crescimento da frota de veículos no Brasil entre os anos de

(34)

2001 e 2012.

3.1.1

Definição de Perfis entre Condutores de Automóveis

Uma série de trabalhos propõem abordagens voltadas ao comportamento dos condutores com o objetivo de oferecer subsídio para melhoria em algum dos problemas que estão relacionados ao uso de automóveis. Temos como exemplo os trabalhos de Meseguer et al. (2013), Higgs e Abbas (2014),Castignani et al. (2015) e Amsalu e Homaifar (2016). Esses trabalhos buscam, de forma geral, identificar o comportamento do condutor do automóvel e oferecer a ele alguma informação, que o faça modificar sua forma de dirigir, o que pode gerar resultados positivos. Além disso, também foram observados trabalhos que buscam apenas aprimorar o método de definição do perfil do condutor, oferecendo assim uma forma mais eficiente de realizar essa parte do processo sem necessariamente se voltar às repercussões que seu uso pode gerar.

O trabalho de Eren et al. (2012) utiliza um classificador Bayesiano (Naive Bayes) sobre dados de sensores de celulares (no interior do automóvel) para identificar o compor-tamento do condutor. Durante um trajeto, dois examinadores permaneciam no interior do veículo, juntamente com o condutor. Após o trajeto, um formulário era respondido pelos avaliadores e as respostas eram colocadas em uma base de dados (dataset). Então, os condutores eram classificados em “safe” (seguro) ou “unsafe” (não seguro) usando o classificador Bayesiano sobre o dataset. Como resultado obteve-se uma taxa de acerto de 93,33% (14 dentre os 15 motoristas avaliados). Além do trabalho supracitado, Al-Sultan, Al-Bayatti e Zedan(2013) também utilizou oNB como técnica de AM em seu trabalho, que demonstra o uso de uma tecnologia de comunicação entre veículos (Vehicular ad hoc Networks (VANET)) e uma Rede Bayesiana para identificação de perfis anormais de condução de automóveis em um determinado trajeto.

O trabalho de Meseguer et al. (2013) realiza a definição de perfis entre condutores através de uma Rede Neural. A aplicação extrai os dados dos sensores automotivos através de celular e dispositivo transmissor OBD-II. Os dados coletados contêm valores para os seguintes atributos: aceleração, velocidade e rotações por minuto, assim como média e desvio padrão dos mesmos. Esses resultados são então utilizados para treinar a Rede Neural (MLP), e o principal objetivo do estudo é verificar o quão relacionada está a forma de dirigir com o consumo de combustível.

De acordo com os resultados apresentados, a forma de dirigir pode resultar em uma diferença de até 20% no consumo de combustível, mesmo sem nenhum tipo de alteração no veículo. Aspectos particulares desse trabalho estão na utilização do resultado da aplicação como feedback para o motorista, o que afeta o próprio sistema positivamente e ajuda a modificar o comportamento do condutor. Além deste, outros trabalhos estudados que utilizaram MLP para definição de perfis entre condutores foram Meseguer et al.(2015),

(35)

Capítulo 3. Técnicas de Aprendizado de Máquina sobre Dados Automotivos 34

Boyraz, Sathyanarayana e Hansen (2009), Xiao, Huang e Wang(2011).

Em um outro trabalho,Zhang et al. (2016) realizou a classificação de condutores baseado em seu perfil de direção. Para isso, utilizou dados dos sensores dos automóveis (“v”), sensores de aparelhos celulares (“s”) e também uma variação utilizando ambos (sensores dos automóveis e celulares - “vs” ). Foram realizados experimentos com rotas pré-definidas, mesmo automóvel e condutores diferentes, e outro experimento sem definição de rotas que coletou dados do automóvel por um período de tempo junto a um grupo de condutores participantes. Como técnica de definição de perfis foi utilizado uma Máquina de Vetores de Suporte (SVM) que foi treinada com um conjunto de dados gerados manualmente e definidos como padrão. De forma geral, foi observado que o modelo proposto funciona melhor para uma quantidade pequena de condutores (com 2, alcançou 100% de acerto nas três variações de dados - v, s e vs), e que a utilização dos sensores de aparelhos celulares, mesmo quando sozinhos (s) possibilitou um resultado médio melhor em todos os casos. A técnica de Máquinas de Vetores de Suporte (SVM) também foi utilizada por Suzuki et al. (2005) como uma das técnicas que possibilitaram a modelagem do comportamento do motorista quando era feita uma manobra para evitar uma colisão.

Também foram estudados outros trabalhos com desenvolvimento voltado à definição de perfis de condutores, e foi observado que a um grupo considerável desses utilizava o Modelo de Markov (Hidden Markov Model (HMM)) como método computacional para alcançar os objetivos. Dentre eles temos em destaque os trabalhos de Amsalu e Homaifar

(2016), Tran, Doshi e Trivedi (2012), Dapzol (2005), Kumagai e Akamatsu (2006), que utilizaram o HMM com finalidades diversas, dentre elas avaliar a decisão de um condutor ao chegar em um cruzamento.

Utilizando uma técnica diferente (técnica não supervisionada), há trabalhos que utilizaram o k-Means. Higgs e Abbas (2014), por exemplo, utilizaram o k-Means como técnica para identificação de ações de condutores. Com base em uma série de sensores instalados nos veículos e em segmentos específicos do trajeto o método k-Means foi escolhido por conseguir identificar as instâncias mais próximas ao que atribui como centroides. Sua escolha resultou em um bom índice de acerto (até 100%) para experimentos que utilizaram aspectos estáticos e dinâmicos da condução do automóvel.

Em outro trabalho, Higgs e Abbas (2015), utilizou o k-Means para segmentar trajetos realizados por automóveis. Com objetivo de realizar a identificação de perfis entre diferentes tipos de condutores (automóveis e caminhões), esse estudo obteve sucesso na identificação de um padrão para os condutores de caminhão e na indicação da diversidade de padrões existentes em automóveis. Essa diversidade ficou evidente pois utilizando as mesmas técnicas aplicadas aos caminhões foi identificado um número de perfis igual ao número de condutores dos automóveis. Ou seja, para cada condutor havia um perfil para automóveis e todos os condutores foram classificados no mesmo perfil no caso dos

(36)

caminhões.

Castignani et al.(2015) utilizou em sua pesquisa regras definidas com lógica Fuzzy (ZADEH, 1996) para detectar eventos em trajetos e também o método k-Means como meio para classificar os condutores de acordo com os eventos detectados. A classificação feita pelo k-Means foi confrontada com uma classificação feita pelos próprios condutores. Como resultado foi obtido até 90% de similaridade (em 18 de 20 trajetos) na classificação de comportamento de condutores. Também houve uma indicação de robustez na indicação de eventos considerados agressivos.

Por último, podemos citar os trabalhos de (AHMED, 1999; SALVUCCI, 2006), que desenvolveram metodologias próprias, e o trabalho de Winter e Happee (2012), que realizou uma comparação entre várias metodologias existentes para definição de perfis de uso de automóveis na sua época.

Há ainda outros trabalhos, encontrados no Brasil, como por exemplo Almeida

(2017), Argenton, Borth e Vilhanueva (2015), Gandolfi (2016), Santos (2016), Póvoa

(2007), Oliveira et al. (2016), Fontes e Figueiredo(2015), porém eles não se enquadram no escopo de utilização de técnicas de Aprendizado de Máquina pois se propuseram apenas a coletar dados via interface DLC e apresentar esses dados aos condutores. De forma geral, esses trabalhos tinham o intuito de diminuir o consumo de combustível por meio da modificação do comportamento do condutor frente às informações apresentadas. O único trabalho encontrado no Brasil que não apresentou os dados aos condutores de forma direta foi o de Nascimento (2016), onde o autor utilizou uma aplicação baseada em Sistema Multiagentes para diminuir o consumo de combustível de uma frota de automóveis.

3.2

Sistemas de Monitoramento Automotivo

3.2.1

Monitor OBD

Realizar uma busca por sistemas de monitoração via interfaceDLC, popularmente conhecidos como Monitor OBD, pode trazer um número de resultados consideravelmente grande. O grande número de possibilidades reflete a facilidade de consumo das informações via interface DLC e também oferece certa confusão quanto às possibilidades desse tipo de sistema.

Os MonitoresOBDsão sistemas de consumo direto de informações via especificação

OBD-II. Eles solicitam informações ao Módulo Central e as repassam para alguma forma gráfica ou textual de exibição, como um gráfico “velocímetro” para a rotação do motor, por exemplo. Não foi identificado uso de métodos de aprendizado de máquina nesse tipo de sistema, por isso eles foram considerados na busca por sistemas de diagnóstico automotivo.

(37)

Capítulo 3. Técnicas de Aprendizado de Máquina sobre Dados Automotivos 36

3.2.2

Sistemas de Predição de Falhas

Atualmente são comercializados vários sistemas de predição de problemas em automóveis. Os principais softwares dessa natureza encontrados foram o CAR MD(2006) e

AA’s Car Genie(2017). Esses sistemas funcionam, de acordo com as informações presentes em seus sites, analisando informações a respeito de um modelo específico de automóvel em uma grande rede de condutores. A cada problema que ocorre com um dos veículos monitorados é enviado um registro para um servidor. Esse registro alimenta um banco de dados com o histórico dos problemas daquele modelo e, a partir de validação estatística, torna-se uma referência a ser enviada a cada condutor que possuir o modelo em questão. Ou seja, com base em problemas recorrentes, donos de automóveis com esse tipo de sistema são alertados para que procurem um serviço de reparo e condução a correção do problema.

3.2.3

Sistemas de Identificação de Perfis

A grande maioria dos sistemas encontrados que se propõem a encontrar perfis entre motoristas utilizam dados do aparelho celular para este fim, como por exemplo, os sistemas encontrados nos trabalhos de Eren et al. (2012), Johnson e Trivedi (2011),

Castignani et al. (2015). Como exemplo das formas de classificação do motorista podemos destacar o trabalho de Johnson e Trivedi (2011), que utiliza os sensores do celular, o Global Positioning System (GPS) e a câmera para observar uma série de combinações de dados com o objetivo de identificar movimentos laterias e longitudinais. Apesar disso, esse trabalho não utiliza nenhum método de classificação para a identificação do perfil do motorista.

Há ainda outras plataformas que supostamente realizam a identificação de perfis entre os motoristas através da pontuação de seus trajetos. Utilizando dados do aparelho celular do motorista (principalmente GPS e acelerômetro) e outras fontes como dados sobre as velocidades máximas em cada rua, essas plataformas retiram pontos do motorista a cada evento perigoso realizado e, ao final do trajeto, fornecem uma nota (score) para o motorista. De forma geral esse tipo de plataforma realiza a identificação do perfil do motorista no trânsito ao saber quais motoristas cometem mais ou menos eventos perigosos.

Nenhuma das plataformas estudadas fornecem informações sobre cruzamento de dados de diversos motoristas e também sobre uso de métodos de AM na construção do que denominam como perfil. Algumas das plataformas analisadas foram a Youse (<https: //www.youse.com.br>) e a Trânsito Mais Gentil (<https://www.transitomaisgentil.com. br>). Esse tipo de plataforma é utilizado principalmente por seguradoras, que fornecem descontos no seguro automotivo aos motoristas que utilizarem seu sistema.

(38)

3.3

Considerações

Neste capítulo foram apresentados os principais trabalhos relacionados à definição de perfis entre condutores. Também foram descritas algumas das características dos trabalhos mais importantes encontrados. É importante mencionar que a maioria dos trabalhos utiliza algum método de Aprendizado de Máquina de forma semi ad hoc, ou seja, não comparam métodos e utilizam o que apresente melhor resultado. Apenas propõem um método e o utilizam sem maiores explicações.

São poucos os trabalhos que apresentam um detalhamento dos parâmetros utilizados nas técnicas de classificação, assim como as implicações de modificações desses parâmetros nos resultados finais do trabalho. Como exemplo, temos dois dos trabalhos citados na seção anterior,Zhang et al.(2016) eEren et al.(2012). Nesses trabalhos há poucos detalhes sobre os motivos para a escolha da técnica de AM utilizada e também seus parâmetros. Esse é um aspecto que deve ser observado para o desenvolvimento do trabalho, pois afeta de forma direta a possibilidade de reprodução científica dos experimentos a serem detalhados.

Por fim, é importante ressaltar que poucos trabalhos utilizam unicamente dados de sensores automotivos (OBD-II), poucos utilizam métodos preditivos e nenhum deles utiliza métodos descritivos para rotular os dados. Então, a principal contribuição deste trabalho deve ser uma plataforma que utiliza métodos descritivos sobre dados de sensores automotivos, e, em seguida utilizar métodos preditivos para definir perfis de uso de automóveis.

Referências

Documentos relacionados

For additional support to design options the structural analysis of the Vila Fria bridge was carried out using a 3D structural numerical model using the finite element method by

Depois de considerar a confidência, conteúdo, distribuição, e assuntos de oportunidade associadas com a distribuição de um relatório, um controlador pode, então,

Promovido pelo Sindifisco Nacio- nal em parceria com o Mosap (Mo- vimento Nacional de Aposentados e Pensionistas), o Encontro ocorreu no dia 20 de março, data em que também

No período de primeiro de janeiro a 30 de junho de 2011, foram encaminhadas, ao Comitê de Segurança do Paciente da instituição sede do estudo, 218 notificações de

O presente trabalho tem como objetivo geral caracterizar as comunidades de invertebrados terrestres associadas a nove cavidades naturais localizadas no município

En este sentido, el concepto de interés general, ahora abierto a la participación por exigencias de un Estado que se presenta como social y democrático de Derecho, presenta

Os autores em [30] consideram duas medidas de similaridade para determinar semelhança entre perfis: similaridade da rede – informações do grafo dos perfis

Em estudos mais aprofundados, tem-se a análise dinâmica não linear geométrica de estruturas laminadas modeladas com elementos tridimensionais de barra considerando o efeito