SIP – Sistema Integrado de Processos
Menu: TCCs de Engenharia de Controle e Automação

Título: USO DO MÉTODO Q-LEARNING PARA APRENDIZADO DE UM ROBÔ QUADRÚPEDE.

Título alternativo: Usage of the Q-Learning method for a quadrupedal robots learning.

Autoria de: Durval Camargo Rangel de Souza Brito

Orientação de: Wilian Soares Lacerda

Presidente da banca: Wilian Soares Lacerda

Primeiro membro da banca: Dimitri Campos Viana

Segundo membro da banca: Leonardo Silveira Paiva

Palavras-chaves: Aprendizagem de máquina, Robótica móvel, Q-Learning, Machine Learning, Python

Data da defesa: 19/11/2019

Semestre letivo da defesa: 2019-2

Data da versão final: 25/11/2019

Data da publicação: 25/11/2019

Referência: Brito, D. C. R. d. S. USO DO MÉTODO Q-LEARNING PARA APRENDIZADO DE UM ROBÔ QUADRÚPEDE.. 2019. 74 p. Trabalho de Conclusão de Curso (Graduação em Engenharia de Controle e Automação Bacharelado)-Universidade Federal de Lavras, Lavras, 2019.

Resumo: Este trabalho registra a implementação do método de aprendizado de máquina por reforço, conhecido como Q-Learning, que foi utilizado para ensinar um robô quadrúpede a se locomover. Para isto, foi construído um robô com quatro patas com o intuito de servir como modelo na implementação do algoritmo. Para o algoritmo do Q-Learning funcionar, é necessário uma tabela de estados e ações para armazenar as recompensas de cada ato, chamada de Tabela-Q. De modo a simplificar o problema, foram criados 2 estados para cada motor, na forma de 2 vetores de suporte contendo posições dos servomotores, assim um bit pôde representar a posição de um servomotor. A união dos bits de estados dos servomotores, permitiu que um número inteiro fosse utilizado como estado do robô, facilitando a indexação da Tabela-Q. As ações foram pares de motores a serem acionados juntos. Devido a uma limitação da memória interna do controlador do robô, foi necessário fazer o treinamento fora do próprio controlador. Dessa forma ao implementar o algoritmo em Python, fez-se necessário criar uma série de regras que simulassem a realidade, penalizando o robô, caso caia, e recompensando-o, caso consiga andar para frente. Após executar o algoritmo dez vezes, alguns resultados diferentes apareceram e todos fizeram o robô andar, sem violar as regras impostas no ambiente virtual.

Abstract: This work registers the implementation of a machine learning algorithm via reinforcement learning, known as Q-Learning, that was used in teaching a quadrupedal robot how to walk. For that, a four-legged robot was built to work as a model for the algorithm????s implementation. For the Q-Learning algorithm to work, it needs a Table with the robot states???? and actions, to store the reward for each action in each state, called Q-Table. In order to simplify the problem, two states are created for each motor in the form of two support vectors containing positions of the servo motors, allowing for a bit to represent the position of the servo motor. Placing those bits in a sequence allowed the use of an integer as the robots???? state, assisting with the indexing of the Q-Table. Actions were set to be pair of motors triggered at the same time. Due to a lack of internal memory the training was made outside the controller unit. When implementing the algorithm in Python, a set of rules that simulate the behaviour of the robot in the real world was needed, so it could penalize the robot when it falls and rewarded it when walking forwards. After executing the algorithm a ten times, some different results arise and all of them make the robot walk, without violating the rules imposed in the virtual environment.

URI: sip.prg.ufla.br/publico/trabalhos_conclusao_curso/acessar_tcc_por_curso/
engenharia_de_controle_e_automacao/20192201510431

URI alternaviva: repositorio.ufla.br/handle/1/44544

Curso: G022 - ENGENHARIA DE CONTROLE E AUTOMAÇÃO (BACHARELADO)

Nome da editora: Universidade Federal de Lavras

Sigla da editora: UFLA

País da editora: Brasil

Gênero textual: Trabalho de Conclusão de Curso

Nome da língua do conteúdo: Português

Código da língua do conteúdo: por

Licença de acesso: Acesso aberto

Nome da licença: Licença do Repositório Institucional da Universidade Federal de Lavras

URI da licença: repositorio.ufla.br

Termos da licença: Acesso aos termos da licença em repositorio.ufla.br

Detentores dos direitos autorais: Durval Camargo Rangel de Souza Brito e Universidade Federal de Lavras

Baixar arquivo