• Nenhum resultado encontrado

O rápido aumento no número de veículos nas estradas, bem como o tamanho crescente das cidades, levam a uma infinidade de desafios de gerenciamento de tráfego rodoviário para as autoridades. Neste contexto, nós abordamos neste trabalho o problema particu- lar do gerenciamento de tráfego para serviços de atendimento de urgências, para o qual um atraso de alguns minutos pode causar riscos à vida humana, bem como perdas finan- ceiras. O objetivo é reduzir a latência dos serviços de emergência para veículos como ambulâncias e viaturas policiais.

2.3. APLICAÇÃO PRÁTICA 15 O problema dos k-servos pode servir de abstração para este tipo de problema, para isso propomos uma modelagem para atender a população de uma cidade na situação de uma urgência policial. As urgências podem ser caracterizadas por situações em que alguém é vítima de uma ação criminosa, encontra-se em situação de risco ou faz uma denúncia. As urgências são atendidas por viaturas policiais distribuídas em diferentes locais da cidade. O objetivo é minimizar o tempo total associado ao atendimentos das requisições. Este problema pode ser modelado da seguinte maneira: O grafo G representa a cidade, cada nó n 2 G representa um diferente local (região) de urgência na cidade, k representa o número de viaturas policiais V P (servos) e s a sequência de urgências (requisições) que podem surgir em qualquer um dos locais da cidade é representada por s =ns(0)1 , s(1)2 , . . . , s(t)j o. O atendimento de uma requisição é caracterizado quando uma viatura k em um nó i é deslocada para um nó j que representa o local de ocorrência de uma urgência (st). As-

sociado ao deslocamento de cada viatura tem-se um custo ct(i, j) proporcional ao tempo

gasto no atendimento de cada urgência. O objetivo é minimizar o custo totalÂm

t ct(i, j), ou

seja, atender uma sequência de urgências no menor tempo possível.

Do ponto de vista da Aprendizagem por Reforço, o problema pode ser modelado como segue: o estado do ambiente é representado por uma configuração possível das k viaturas, ou seja, por k-tuplas do tipo {V P1,V P2, . . . ,V Pk}. As ações correspondem aos

deslocamentos permitidos das V P em um estado válido. Em cada estado, e considerando o surgimento de uma urgência s(t)i em um dos n locais, uma das k V P será deslocada. Deste modo, tem-se que o número de ações permitidas para atender s(t)i é k. Será considerado aqui o surgimento de uma urgência por vez, deixando a análise de múltiplas urgências para trabalhos futuros.

Capítulo 3

Fundamentos de Aprendizagem

Profunda

Aprendizagem profunda (DL) é um termo recente usado para definir o antigo conceito conexionista da década de 80. O movimento começou com foco em técnicas de apren- dizado não supervisionado [Hinton & Salakhutdinov 2006], [Y. Bengio & Larochelle 2007],[Ranzato et al. 2007], onde os modelos DL mostraram grande capacidade de ge- neralização de modelos, o que despertou um novo interesse da indústria de tecnologia. Atualmente as pesquisas realizadas nesta área seguem a todo vapor dada sua grande capa- cidade de generalização [Goodfellow et al. 2016]. Nas próximas seções serão abordados alguns dos principais conceitos fundamentais de DL, bem como os conceitos da rede de múltiplas camadas (MLP), arquitetura utilizada neste trabalho.

3.1 Conceitos Fundamentais

A aprendizagem de máquinas (ML) consiste no processo de aprender através dos da- dos a fazer predições e/ou tomar decisões. Usualmente o processo de aprendizado é categorizado em supervisionado, não supervisionado e aprendizagem por reforço. No aprendizado supervisionado existe um supervisor que conhece a saída desejada (rótulo) para cada amostra dos dados de entrada, enquanto no aprendizado não supervisionado não

existe a figura do supervisor, a meta é explorar ou descrever um conjunto de dados sem uma saída de referência. No aprendizado por reforço não existe a ideia de pares de entrada e saída, a aprendizagem acontece por meio da interação entre o agente e o ambiente afim de maximizar (minimizar) um sinal de reforço ao longo do tempo.

As técnicas de aprendizagem de máquinas tradicionais, como por exemplo: regres- são linear, Máquina de Vetores de Suporte (SVM) , árvores de decisão entre outras, têm sido o motor de várias aplicações modernas, porém estas técnicas dependem fortemente da forma como os dados são representados. Por décadas construir sistemas inteligentes exigiu um esforço muito grande por parte dos profissionais de engenharia, no projeto de sistemas capazes de representar dados brutos (como pixels por exemplo) em vetores características de forma adequada [LeCun et al. 2015a]. Dentro dos métodos de apren- dizagem de máquinas tradicionais podemos destacar as redes neurais artificiais base dos principais modelos práticos [Goodfellow et al. 2016].

As redes neurais são formadas por unidades de processamento de informação conhe- cidas como neurônios. O modelo neuronal é composto basicamente por três elementos básicos (figura 3.1): Um sinal de entrada xjque conecta-se ao neurônio k multiplicando-

se por um peso sináptico wk j (sinapse), um somador responsável por fazer a combinação

linear das sinapses e uma função de ativação que define a amplitude do sinal e opera tipicamente na faixa de [0,1] ou [−1,1]. Outro elemento que deve ser levado em conside- ração é o bias bk, elemento que fornece ao neurônio um efeito de aumentar ou diminuir

(dependendo do sinal) a entrada da função de ativação, uma transformação que faz com que a função não passe mais pela origem.

Como dito anteriormente, as funções de ativações são definidas em função do poten- cial de ativação vk. Existem diversos tipos de função de ativação. Dentre as principais

funções utilizadas tem-se: a função de limiar, também conhecida como função de Heavi- side f(vk) =1 se vk≥0 ou 0 caso contrário ; outra função utilizada (talvez a mais utili- zada) é a função sigmóide, também conhecida como função logística f(vk) = 1+exp(−av)1 ,

3.1. CONCEITOS FUNDAMENTAIS 19

Figura 3.1: Modelo de neurônio não linear

[Haykin 1998].

onde os valores de saída assumem um intervalo contínuo de valores entre 0 e 1; A função tangente hiperbólica, definida como f(vk) =tanh(vk)é usada quando os valores de saída

devem assumir um intervalo contínuo de valores entre −1 e 1, e as unidades retificadoras lineares (ReLU) definida como f(vk) =max(0,vk).

Formalizando o modelo matemático dos conceitos ilustrados na figura 3.1, para cada neurônio k tem-se as seguintes equações:

vk= m

Â

j=1 wk jxj+bk (3.1) yk= f(vk) (3.2)

de maneira que x representa os sinais de entrada; w os pesos sinápticos; v a saída do soma- dor (combinação linear), conhecido como potencial de ativação ou campo local induzido; b o bias; f(.) a função de ativação e y o sinal de saída do neurônio.

As redes neurais superficiais tradicionais dependem fortemente da forma como os dados são representados. Dependendo da tarefa, extrair características importantes dos dados de entradas pode se tornar uma tarefa complexa. Uma forma de contornar este problema é aprender a representação sem a necessidade de projetar manualmente as ca- racterísticas que devem ser extraídas dos dados.

Os métodos de aprendizagem profunda atuam através de múltiplos níveis de represen- tação, descobrindo automaticamente as representações necessárias para realização de uma dada tarefa, como por exemplo detecção e classificação. Cada camada (nível) não linear faz a representação dos dados hierarquicamente em níveis cada vez maiores de abstração [LeCun et al. 2015a]. Em outras palavras, DL fornece ao computador a capacidade de aprender hierarquicamente conceitos complexos a partir de conceitos mais simples, sem a necessidade de projetar manualmente os vetores características.

Figura 3.2: Aprendizagem profunda aplicada a um problema de classificação.

[Goodfellow et al. 2016].

3.2. VISÃO GERAL 21

Documentos relacionados