Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Estacionamento de um veiculo de forma au, Notas de estudo de Engenharia Informática

sem descrição

Tipologia: Notas de estudo

2017

Compartilhado em 17/03/2017

gerson-souza-6
gerson-souza-6 🇧🇷

5

(1)

5 documentos

Pré-visualização parcial do texto

Baixe Estacionamento de um veiculo de forma au e outras Notas de estudo em PDF para Engenharia Informática, somente na Docsity! EnRI III Encontro de Robótica Inteligente l 14 a 20 de julho de 2006 Campo Grande, MS Anais do XXVI Congresso da SBC Estacionamento de um Veículo de Forma Autônoma Utilizando Redes Neurais Artificiais Milton Heinen2, Fernando Osório2, Farlei Heinen3 e Christian Kelber3 1Universidade do Vale do Rio dos Sinos (UNISINOS) 2Mestrado em Computação Aplicada, 3Engenharia da Computação CEP 93022-000 - São Leopoldo - RS - Brasil mheinen@turing.unisinos.br,{fosorio,farlei,kelber}@unisinos.br Resumo. Este artigo tem por objetivo apresentar o sistema SEVA3D, que é ca- paz de simular de modo realista o estacionamento de um veículo em uma vaga paralela. O sistema proposto permite controlar um carro através da leitura de um conjunto de sensores do tipo sonar, gerando de modo autônomo os coman- dos de aceleração e de giro de direção, de modo a estacionar o carro na vaga. O sistema conta com um controlador implementado através de uma rede neural do tipo Jordan, e os resultados obtidos demonstram que o controlador é capaz de estacionar corretamente o carro baseado apenas nas informações provenientes dos sensores. 1. Introdução Os veículos autônomos (RMA - Robôs Móveis Autônomos) tem atraído a atenção de um grande número de pesquisadores, devido ao desafio que este novo domínio de pesquisas propõe: dotar sistemas de uma capacidade de raciocínio inteligente e de interação com o meio em que estão inseridos [Bekey 2005]. Os RMAs podem perceber o ambiente em que estão inseridos através da leitura de seus sensores (infravermelho, Sonar, lasers, câmeras de vídeo, etc), e através desta percepção sensorial eles podem planejar melhor as suas ações [Medeiros 1998, Heinen 1999]. Atualmente os robôs móveis atuam em diferentes áreas, como desarmamento de bombas, exploração de ambientes hostis, e a condução de veículos robotizados. Alguns exemplos de RMA’s são: o sistema desenvolvido pelo NavLab da CMU [Pomerleau 1990, Batavia et al. 1996] que é capaz de conduzir uma caminhonete pelas estradas americanas; os robôs do tipo rover enviados para Marte pela NASA [Stone 1996]; o robô Dante, que explora o interior de vulcões [Lemonick 1994]; e o sistema de controle de um veículo Li- gier elétrico desenvolvido pelos pesquisadores do INRIA na França [Garnier et al. 1999]. A partir dos estudos e dos trabalhos de pesquisa desenvolvidos pelo Grupo de In- teligência Artificial (GIA-PIPCA1) e pelo Grupo de Pesquisas em Veículos Autônomos (GPVA2) da Unisinos, foram criadas as bases para o desenvolvimento de aplicações na área de robótica autônoma móvel. Destaca-se particularmente o desenvolvimento do sis- tema SEVA3D (Simulador de Estacionamento de Veículos Autônomos em um ambiente tridimensional), que realiza o estacionamento de um veículo não-holonômico simulado em uma vaga paralela de forma autônoma. 1GIA-PIPCA – http://inf.unisinos.br/~osorio/gia.html 2GPVA – http://www.exatec.unisinos.br/~autonom/ 107 O sistema SEVA3D3 [Heinen et al. 2006b] original (SEVA3D-A) utiliza um mo- delo tridimensional do ambiente, sensores do tipo sonar, e realiza o controle do veículo através de um autômato finito baseado em regras. A tarefa de estacionamento com o SEVA3D-A funcionou de modo satisfatório, mas as regras do autômato tiveram que ser codificadas manualmente, o que é uma tarefa bastante árdua, e o autômato resultante se mostrou pouco robusto a situações não esperadas[Heinen and Osório 2005]. Por estes motivos, foi decidido o desenvolvimento uma nova versão do sistema, chamada de SEVA3D-N [Heinen et al. 2006a] onde ao invés de um autômato finito, o controle do veículo é realizado por uma rede neural do tipo Jordan [Braga et al. 2000]. A vantagem desta abordagem é que as regras não precisam ser codificadas manualmente, pois a rede neural pode aprender a partir do exemplo de uma manobra de estacionamento. 2. Trabalhos relacionados Estudos relativos ao estacionamento de veículos de forma autônoma vem sendo realizados por diversos grupos de pesquisa, dentre os quais é possível destacar os estudos realizados pelo INRIA [Paromtchik and Laugier 1996, Laugier et al. 1998, Garnier et al. 1999] para o controle e estacionamento de um veículo Ligier elétrico de forma autônoma. O veículo em questão foi equipado com quatorze sensores do tipo sonar, como mostra a Figura 1. Para que o cálculo da profundidade da vaga fosse possível, foi necessária a instalação Figura 1. Modelo do INRIA [Laugier et al. 1998] de uma barreira de altura moderada junto ao meio-fio, para que os sensores pudessem detectá-lo com precisão [Paromtchik and Laugier 1996]. As principais desvantagens da abordagem descrita acima são: (i) a necessidade da instalação de uma barreira, o que dificulta o estacionamento em vias convencionais; e (ii) a necessidade da utilização de muitos sensores (quatorze) do tipo sonar. No SEVA3D, foram utilizados apenas seis sensores. Outra desvantagem do modelo do INRIA é que a tarefa de estacionamento teve de ser codificada manualmente. Já no SEVA3D-N, a tarefa de estacionamento pode ser aprendida automaticamente pela rede neural a partir de exemplos. 2.1. Redes neurais artificiais Através de um modelo abstrato e simplificado dos neurônios humanos é possível desen- volver um simulador que seja capaz de classificar, generalizar e aprender funções des- 3SEVA3D – http://inf.unisinos.br/~osorio/seva3d/ 108 realizado independente da posição relativa dos outros carros. De fato, mesmo se não hou- verem outros carros estacionados para servir como pontos de referência, o estacionamento é possível graças ao uso do odômetro. 3.3. Modelo cinemático A movimentação do veículo respeita o modelo de cinemática Ackerman, no qual um veí- culo é representado por um volume retangular suportado por quatro rodas, onde as rodas Figura 4. Modelo cinemático traseiras possuem um eixo fixo e as rodas dianteiras podem ser direcionadas, através do giro da barra da direção (Figura 4) [Dudek and Jenkin 2000]. As coordenadas do veículo são definidas por (x, y, θ), onde x e y definem o ponto médio do eixo traseiro do veí- culo (ponto 0) e θ indica a sua orientação (ângulo em relação à direção de referência). O deslocamento do veículo é descrito pelas equações [Paromtchik and Laugier 1996]:      ẋ = v cos φ cos θ, ẏ = v cos φ sin θ, θ̇ = v L sin φ, (1) onde v representa a velocidade longitudinal do veículo, φ representa o giro da direção, e L indica o comprimento do eixo das rodas. 3.4. Autômato finito No SEVA3D-N, a tarefa de estacionamento é realizada por uma rede neural que imple- menta um autômato finito. A Figura 5 mostra o diagrama de estados do autômato finito aprendido pela rede neural. Foram utilizados os seguintes estados: Figura 5. Estados do autômato Parado: Estado inicial do autômato, antes do veículo começar a se deslocar; 111 Procurando vaga: Início da manobra de estacionamento, quando o veículo se desloca para frente com a direção reta, buscando encontrar uma vaga. Se encontrar, o estado muda para Posicionando; Posicionando: O veículo se desloca para a frente, a fim de atingir uma posição que torne possível o estacionamento, e também para verificar se a vaga é suficientemente grande. Se não for, o estado volta para Procurando vaga. Se a vaga for de tamanho suficiente, o estado muda para Entrando vaga; Entrando vaga: O carro vira a direção para a direita e começa a se movimentar para trás, de forma a entrar na vaga. Quando o sensor V[2] (Figura 3) detectar o meio-fio da calçada, o estado muda para Posicionando vaga. Posicionando vaga: neste estado, o veículo prossegue para trás, mas com a direção vol- tada para à esquerda. Quando o sensor V[3] detectar o meio-fio da calçada, o estado muda para Alinhando; Alinhando: neste estado o veículo é movimentado de forma a ficar a uma distância ra- zoável em relação aos carros estacionados à frente ou atrás. Após o alinhamento estar concluído, o estado muda para Parado e a manobra é encerrada com sucesso. 3.5. Controle neural Os resultados obtidos com o controle baseado no autômato do SEVA3D-A levaram ao estudo de uma alternativa para a aquisição de conhecimentos, visto que o processo de co- dificação de regras é muito trabalhoso, além de não garantir uma grande robustez do sis- tema na presença de ruídos (e.g. valores inexatos dos sensores e situações não previstas). Buscou-se então a implementação de uma solução baseada no “aprendizado prático” a partir de uma base de exemplos de condução do veículo autônomo. A solução adotada foi a utilização de redes neurais artificiais (RNA) [Braga et al. 2000, Rumelhart et al. 1986, Haykin 1999], com aprendizado supervisionado, capazes de aprender bases de exemplos que demonstram como se deve estacionar o carro. O primeiro passo foi a construção das bases de exemplos empregadas no apren- dizado da rede neural. Adaptou-se o simulador de modo a gerar um “arquivo de log”, contendo o registro do estado dos sensores, estado do autômato e comandos enviados aos atuadores (velocidade e rotação), gerados pelo SEVA3D-A. O arquivo gerado permite que seja treinada uma rede neural, que inicialmente deve ser capaz de reproduzir o comporta- mento do autômato. Posteriormente foi utilizado o SEVA3D para gerar novos exemplos da tarefa de estacionamento, com o veículo sendo controlado por um ser humano. O modelo de RNA adotado foi o modelo de Jordan [Ludik et al. 1997], baseado em redes do tipo MLP (Multi-Layer Perceptron) [Braga et al. 2000], e o algoritmo de aprendizado foi o Resilient Propagation [Riedmiller and Braun 1993]. O princípio de fun- cionamento da rede neural assim definida é o uso de um conjunto de entradas que servem para indicar o estado atual da rede (compatível com o autômato) e um outro conjunto de saídas da rede que servem para indicar o estado que a rede deve assumir (novo estado do autômato) em função de suas entradas. Deste modo a rede neural é capaz de receber como entrada o seu estado atual e o estado dos sensores (Figura 6) e determinar em sua saída se deve manter o estado atual ou passar para um novo estado, baseada nas informações que recebeu. 112 Figura 6. Esquema da rede neural utilizada O próximo estado (atual ou novo), obtido na saída da rede é então re-injetado na entrada da rede, obtendo assim um modelo similar ao proposto por Jordan, onde a saída da rede é re-injetada na entrada formando uma recorrência, e obtendo assim as chamadas unidades de contexto [Ludik et al. 1997]. É através das unidades de contexto que temos uma informação sobre o estado atual do autômato/rede. As variáveis (atributos) de entrada da rede empregados foram: o estado dos seis sensores de proximidade, o odômetro e uma indicação do estado atual do processo de estacionamento. Na saída da rede é obtido o estado dos atuadores (velocidade e rotação), assim como uma indicação do próximo estado do processo de estacionamento. Deste modo, a rede irá controlar os atuadores, mas também irá decidir quando se deve passar de um estado a outro no autômato de controle. A Figura 6 apresenta o esquema das entradas e saídas da RNA adotada. A base de aprendizado utilizada para treinar a rede neural usou uma codificação binária do tipo “1 entre N” para representar a maioria das entradas e saídas da rede: • Entrada: o estado atual (6 estados = 6 entradas binárias, com 1 bit representando cada estado); o estado dos sensores (6 sensores = 6 entradas numéricas normali- zadas entre 0 e 1); odômetro (numérico); • Saída: a velocidade (5 velocidades = 5 saídas binárias: frente rápida, frente lenta, parado, ré lenta e ré rápida), o giro da direção (5 rotações possíveis = 5 saídas binárias: giro máximo à esquerda, giro médio à esquerda, direção reta, giro médio à direita e giro máximo à direita) e o próximo estado (que também codifica 5 estados possíveis em 5 saídas binárias). 4. Implementação Para a implementação do modelo, foi utilizado o simulador SimRob3D [Heinen 2002], e foi construído um modelo de tridimensional de uma via com carros estacionados, para que fosse possível realizar o estacionamento de forma adequada (Figura 2). O veículo modelado para realizar o estacionamento é uma reprodução de um veículo real do tipo Mini-Baja Buggy, disponível para pesquisas em nossos laboratórios. Este veículo foi desenvolvido pelo Grupo de Pesquisas em Veículos Autônomos (GPVA) da Unisinos [Kelber et al. 2005]. O veículo real foi automatizado e pode ser controlado por dispositivos remotos, como um telefone celular. A Figura 7(a) mostra o veículo Mini-Baja Buggy real, e a Fi- 113
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved