INF INTELIGÊNCIA ARTIFICIAL TRABALHO 1 BUSCA HEURÍSTICA

Documentos relacionados
INF INTELIGÊNCIA ARTIFICIAL TRABALHO 1 BUSCA HEURÍSTICA

INF INTELIGÊNCIA ARTIFICIAL TRABALHO 1 BUSCA HEURÍSTICA

INF INTELIGÊNCIA ARTIFICIAL TRABALHO 2 LÓGICA

INF INTELIGÊNCIA ARTIFICIAL TRABALHO 1 BUSCA HEURÍSTICA

INF INTELIGÊNCIA ARTIFICIAL TRABALHO 1 BUSCA HEURÍSTICA

INF INTELIGÊNCIA ARTIFICIAL TRABALHO 2 LÓGICA

INF INTELIGÊNCIA ARTIFICIAL TRABALHO 2 LÓGICA

IPRJ TÓPICOS ESPECIAIS EM LINGUAGENS DE PROGRAMAÇÃO TRABALHO 3 UNITY 3D

INF INTELIGÊNCIA ARTIFICIAL TRABALHO 1 BUSCA HEURÍSTICA

Trabalho de Programação 2 Processador CESAR. 1. Descrição Geral. 2. Especificação do Trabalho

TÉCNICAS DE PROGRAMAÇÃO II TRABALHO 2

INF INTELIGÊNCIA ARTIFICIAL TRABALHO 2 LÓGICA

NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016

INF 1771 Inteligência Artificial

MAC425: EP2 Data de entrega: 4 de dezembro de 2006

Tópicos Especiais em Otimização

Criação e modificação de um modelo geológico

Estruturas de Dados II. Caixeiro Viajante

INF Fundamentos de Computação Gráfica /1

Resistor Parte 2. Resistores com 5 faixas coloridas. Vanderlei Alves S. da Silva

Técnicas de Inteligência Artificial

Paradigma Simbólico. Sistemas de Informação UNISUL Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 2)

Inteligência Artificial. Prof. Tiago A. E. Ferreira Aula 5 Resolvendo Problemas

UNIVERSIDADE FEDERAL DE PELOTAS. Índice

SME Introdução à Programação de Computadores Primeiro semestre de Trabalho: jogo Semáforo

Pesquisa em Grafos. Pedro Ribeiro 2014/2015 DCC/FCUP. Pedro Ribeiro (DCC/FCUP) Pesquisa em Grafos 2014/ / 33

Caixeiro Viajante. Estruturas de Dados II. Prof. a Mariella Berger. 1. Objetivo

Estudo e implementação de heurísticas para determinação do caminho de menor custo para atender a rotas pré estabelecidas. Por: Charles Pereira

GRAFOS BUSCAS E MENOR CAMINHO. Prof. André Backes

Estruturas de Dados Apresentação

Módulo Central de Serviços SUAP Perfil Atendente de Chamados

Levantamento, Análise e Gestão Requisitos. Aula 02

ÍNDICE. Introdução 3 1. Vamos Começar 7 2. Capturar Pokémon Navegar no Mapa e no Menu Questões e Conflitos 78. e Dar lhes Power Up 53

SCC603 Algoritmos e Estruturas de Dados II Prof.a Rosane Minghim 1o sem. 2013

ROTEIRO 1: CADASTRO NO CAMPO ESCOLA VIRTUAL

Inteligência Artificial

Sobre as rubricas. Níveis de conquista. Critérios Avaliativos

Roteirização de veículo para realização de coleta utilizando algoritmo evolucionários

Daniel da Rosa Mesquita. Resolução de Problemas Relacionados à Teoria de Grafos no. Ensino Fundamental

CONTEÚDO DO HP ALM 11.5 ADOPTION READINESS TOOL (ART)

The. Your Topic Handbook. A Step by Step Guide to Add Your Topic Here. Author Name. Website or Company Name. A Publication of YOUR LOGO

Retomada aula. Introdução sobre Inteligência Artificial Abordagem sobre Agentes Resolução de problemas estratégias de busca - apresentação trabalhos

2ª. Competição Tecnológica (Outubro/2010)

MAP Métodos Numéricos e Aplicações Escola Politécnica 1 Semestre de 2017 EPREC - Entrega em 27 de julho de 2017

Primeiro Projeto de PG: Lista de Temas Selecionados

INF 1620 Estruturas de Dados Semestre Segundo Trabalho: Jogo de Caça-Palavras

Bem-vindo ao Word. Para praticar o uso dos recursos do Word, procure o texto Experimente em vermelho ao longo do documento.

Aula 6: Entrada e Saída

Universidade Metodista de Piracicaba. Trabalho de Inteligência Artificial LABIRINTO

Tutorial de Acesso ao AVA - Ambiente Virtual de Aprendizagem e-learning Consinco. Agosto 2015, versão 1

Alguns Exercícios de Inteligência Artificial

1 Introdução 1.1 Motivação

GEOGRAFIA PROVA SIMULADA- GLOBAL I. Podemos representar o planeta terra de duas formas. Na esférica, chamamos de e na forma plana é chamada de.

Ao selecionar o seu curso, aparecerá a página principal contendo as informações e as atividades disponíveis.

Sistema MVM Apresentação

Modelos matemáticos para resolução de problemas de afectação de operações a recursos produtivos

Simulador didático de testes de algoritmos de ordenação

A Cidade Enlameada Árvores Geradoras Mínimas

Manual de Utilização do Software Espectroscopia de Terra Rara. Tela Principal. Resumo: Felipe Ferreira

CRIAR UM CARTÃO DE VISITA. É fácil começar selecionando um dos designs de cartão de visita que acompanham o Publisher.

Sistemas Inteligentes (INE5633)

Teoria dos Grafos Aula 6

Conhecendo e editando a sala de aula

Com o Monitor do sistema, você pode medir o desempenho de seu próprio computador ou de outros computadores da rede, das maneiras a seguir:

2 Segmentação de imagens e Componentes conexas

Tutorial Modem. O recurso poderá ser acessado a partir das seguintes telas do sistema:

Grafos IFRN. Prof. Robinson Alves

VISÃO DIGITAL, OS OLHOS DO FUTURO

Exercícios: Vetores e Matrizes

Aula 01 Microsoft Excel 2016

Sempre que encontrar esse botão, poderá acessar Manual Passo a Passo ou Guia de Referência, disponíveis para aquela janela.

1_1 1_2 2_1 1_ _ _ Fonte: Autor

MODULARIZAÇÃO - PARTE 1

Grafos: caminhos mínimos

TUTORIAL Módulo de Objetivos

ArcGIS 1: Introdução ao GIS

Melhor caminho entre duas estações de metro

Universidade Federal do ABC BCM Processamento da Informação Prática Projeto Campo Minado Primeiro Quadrimestre de 2018

Noções básicas do SAP Business One Tópico: Guia de introdução

C com introdução a OO

Outlook Web App (OWA)

ENSINO MÉDIO INTEGRADO INFORMÁTICA LINGUAGEM DE PROGRAMAÇÃO Trabalho Final Semestral TFS

Algoritmos Genéticos

Configuração do Furbot no NetBeans

O uainov é uma plataforma de gerenciamento de ideias que permite que todas as pessoas de

Teoria e Algoritmos em Grafos

Buscas Informadas ou Heurísticas - Parte II

Trabalho Prático 2 Mundo dos Blocos Alocação Dinâmica / Listas Encadeadas

MAC 115 Introdução à Ciência da Computação ROTHELO

CI202 - Métodos Numéricos - Trabalho 2

Programas Interativos

4 Modelos Propostos para Otimização de Planejamentos com Restrições de Precedência 4.1 Representação com Algoritmos Genéticos

(INFORMAÇÕES PARA LABORATÓRIOS VIRTUAIS) Nome do laboratório: Laboratório de Programação (INFORMAÇÕES PARA FERRAMENTA)

Trabalho Prático Data de Entrega : 30 de Maio

Simulação de Caixa Automático

Inteligência Artificial - IA. Resolução de problemas por meio de busca

AULA 2 Planos Vistas e Temas

Felipe Affonso Feliphe Nogueira

Transcrição:

INF1771 - INTELIGÊNCIA ARTIFICIAL TRABALHO 1 BUSCA HEURÍSTICA Descrição: Para se tornar um Mestre Pokémon é necessário aventurar-se por terras desconhecidas, capturar novos pokémons, treina-los e derrotar os Lideres de Ginásios em batalhas pokémon para demonstrar as suas habilidades de treinador. Ao vencer o líder do ginásio de uma cidade, o treinador pokémon recebe uma Insígnia. Após derrotar todos os líderes de ginásio de um continente, conquistando suas respectivas insígnias, o treinador pode participar da Liga Pokémon deste continente. A sua aventura como treinador pokémon inicia-se no Continente de Kanto. Para entrar para a Liga Pokémon de Kanto você deve derrotar os 8 lideres dos ginásios do continente e ganhar as 8 Insígnias de Kanto. Para poder acessar os ginásios e derrotar os lideres você deve capturar pokémons durante a sua jornada. Lembre-se de utilizar a sua Pokédex para localizar e identificar os pokémons. Figura 1. Insígnias de Kanto. Figura 2. Pokédex. O Trabalho 1 consiste em implementar um agente capaz de locomover-se pelo continente, capturar os pokémons necessários para acessar os ginásios e ganhar as 8 insígnias de forma inteligente. Para isso, você deve utilizar o algoritmo de busca heurística A*. O agente deve ser capaz de calcular automaticamente a melhor rota para reunir as 8 Insígnias de Kanto. O mapa do continente é mostrado na Figura 3.

Figura 3. Mapa do continente de Kanto. O continente é formado por 5 tipos de terrenos: grama (região verde), água (região azul), montanha (região marrom), caverna (região cinza) e vulcão (região laranja). Os custos para passar por cada tipo de terreno são os seguintes: Grama Custo: +10 Água Custo: +100 Caverna Custo: +120 Montanha Custo: +120 Vulcão Custo: +150

Ao capturar determinados tipos de pokémons se torna mais fácil passar em alguns tipos de terrenos: Água usando um pokémon de água Custo: +10 Caverna usando um pokémon elétrico Custo: +12 Montanha usando um pokémon que voa Custo: +12 Vulcão usando um pokémon de fogo Custo: +15 A melhor rota para ganhar as 8 insígnias é a rota de menor custo levando em consideração o terreno. A localização dos ginásios e as suas respectivas insígnias estão definidas na Figura 3. Existem 5 tipos de pokémons espalhados pelo continente (Grama, Fogo, Elétrico, Água e Ar). A posição inicial dos pokémons é desconhecida. O agente deve utilizar o radar da pokédex para localiza-los. O radar possui um alcance máximo de 4 regiões adjacentes em todas as direções. A Figura 4 ilustra o alcance máximo do radar considerando que o agente está localizado na posição marcada em vermelho. Figura 4. Alcance máximo do radar de pokémons. Informações Adicionais: O planeta deve ser representado por uma matriz 42 x 42 (igual à mostrada na Figura 3). O agente sempre inicia a jornada no laboratório do Professor Carvalho (ponto onde está o personagem no mapa). O agente não pode andar na diagonal, somente na vertical e na horizontal. Inicialmente as posições dos pokémons são desconhecidas. O programa deve sortear as posições durante a inicialização, mas o agente não pode ter acesso a essa informação diretamente. Ele deve localizar os pokémons usando o radar da pokédex.

A pokédex é capaz de identificar o tipo de pokémon quando ele entra no alcance do radar. Caso mais de um pokémon apareça no radar da pokédex, você deve calcular o melhor caminho e a melhor ordem para capturar os pokémons visíveis que desejar. O total de cada tipo de pokémon é o seguinte: o 20 pokémons de grama; o 10 pokémons de água; o 8 pokémons de ar; o 6 pokémons de fogo; o 4 pokémons elétricos; Os pokémons sempre estão em locais de grama. Ao sortear a posição inicial dos pokémons, o programa deve garantir que eles sempre estejam em regiões de grama. Deve existir uma maneira de visualizar os movimentos do agente, mesmo que a interface seja bem simples. Podendo até mesmo ser uma matriz desenhada e atualizada no console. O mapa do planeta deve ser configurável, ou seja, deve ser possível modificar o tipo de terreno em cada local. O mapa pode ser lido de um arquivo de texto ou deve ser facilmente editável no código. A única forma de garantir o caminho de menor custo possível é resolvendo várias vezes o problema do Caixeiro Viajante (Travelling Salesman) para selecionar a melhor ordem para visitar os ginásios e capturar os pokémons. O programa deve exibir o custo do caminho percorrido pelo agente enquanto ele se movimenta pelo mapa e também o custo final ao terminar a execução. O programa pode ser implementado em qualquer linguagem. O trabalho pode ser feito individualmente ou em grupos de no máximo 3 pessoas. O programa deve ser apresentado durante a aula por todos os membros do grupo. Se algum dos membros do grupo não comparecer ou não souber explicar nada sobre a implementação receberá nota zero.

Dicas: Neste trabalho existem 2 problemas distintos: o (1) Capturar os pokémons; o (2) Encontrar o melhor caminho para chegar aos ginásios e ganhar as insígnias; Para resolver o primeiro problema é aconselhável dividir o processo de busca em duas etapas: o (1) Exploração do mapa: O agente deve explorar o mapa até que o radar da pokédex localize um pokémon. o (2) Capturar o pokémon: Uma vez que um pokémon for localizado, o agente deve executar o algoritmo de busca A* para encontrar a rota de menor custo para chegar até o pokémon partindo da sua posição atual. A maneira mais simples de realizar a exploração do mapa é definindo um conjunto de pontos, dos quais seja possível rastrear todo o mapa com o radar da pokédex. Durante a execução do programa você deve executar o algoritmo de busca A* para encontrar o melhor caminho para navegar por esses pontos até encontrar os pokémons necessários. Note também que alguns ginásios podem ser acessados facilmente sem a ajuda de um pokémon e outros podem ser acessados antes de capturar todos os tipos de pokémons. Planeje bem a sua estratégia de exploração do mapa para ir ganhando as insígnias ao mesmo tempo em que você captura os pokémons necessários para acessar os outros ginásios. Programa Base (Projeto do Visual Studio 2010): http://edirlei.3dgb.com.br/aulas/ia_2013_2/trabalho1programabase_2013_2.zip

Forma de Avaliação: Será avaliado se: (1) O trabalho atendeu a todos os requisitos especificados anteriormente; (2) Os algoritmos foram implementados e aplicados de forma correta; (3) O código foi devidamente organizado; (4) O trabalho foi apresentado corretamente em sala de aula; Bônus: (1) A interface gráfica não é o objetivo desse trabalho, mas quem implementar uma boa interface gráfica (2D ou 3D) para representar o ambiente e o agente receberá até 2 pontos extras na nota. (2) O programa que conseguir coletar todas as 8 insígnias com o menor custo, dado uma determinada configuração de posições de pokémons, receberá 2 pontos extras na nota. Para participar dessa competição é necessário que o programa inclua uma forma simples de definir manualmente a posição dos pokémons. Em caso de empate, ambos os trabalhos receberão a nota extra. (3) O trabalho que implementar corretamente a resolução do problema do Caixeiro Viajante (Travelling Salesman) usando algoritmos genéticos receberá 1 ponto extra na nota. Data de Entrega: 30/09 Forma de Entrega: O programa deve ser apresentado na aula do dia 30/09 (segunda) e enviando até o mesmo dia para o email edirlei.slima@gmail.com. Trabalhos entregues atrasados perderam 0.5 pontos para cada dia de atraso.