Damas3D Programação em Lógica Nelson Jorge Silva Rodrigues – ei00070

Slides:



Advertisements
Apresentações semelhantes
Árvores CC/EC/Mestrado Teoria dos Grafos ‏ 1.
Advertisements

Profa. Rita de Cassia Fernandes Academia de Ensino Superior
INTRODUÇÃO À LÓGICA DIGITAL
Teoria da Computação MÁQUINA DE TURING (Continuação) Fabrício Dias
Realizado no Curso EFA Cozinha – Valença
O TABULEIRO de xadrez na posição inicial
Linguagens Formais e Autômatos
PLATAFORMA J2EE Luís Filipe Almeida Santos
Geração Assistida de Diagramas Esquemáticos de Rede Eléctrica
ISO/IEC – 6 Avaliação do Produto – Módulos de Avaliação
Sistema de Visão Tempo-Real Mauro Rodrigues Sistema de Tempo-Real 07/08 Universidade de Aveiro.
2 de Junho de 2005Conclusão1 Pedro Barahona DI/FCT/UNL Junho 2005.
1 Conclusão DI/FCT/UNL 1º Semestre 2004/ Ciclos de Simulação A técnica usada no exemplo da queda livre pode ser utilizada para trajectórias a duas.
Grupo a Adriano Andrade João Lopes Pedro Abrantes Sudoku, Um Assistente de Jogo.
ELEMENTOS DA INFORMÁTICA
RMI-IIOP.
Inteligência Artificial
Árvores.
April 05 Prof. Ismael H. F. Santos - 1 Módulo II XML Processing: XSLT, SAX e DOM Prof. Ismael H F Santos.
FACENS – Engenharia da Computação Inteligência Artificial
INTRODUÇÃO À PROGRAMAÇÃO
Othelo Alunos: Sávio Mendes de Figueiredo
Autores: Rafael Renato
Trabalho de Inteligência Artificial
Laboratório de Programação de Computadores I
Jogo de Damas Alex Saito Leonardo Bezerra Bruno Rocha Maria Gabriela
Sistema “La Pregunta?” Sistema “La Pregunta?” Bruno Pereira Bueno
Questões sobre quatro quadrados
Programação e Sistemas de Informação
Engº Pedro CostaAcessibilidade e Programação Web 1 Workshop Comunicação Inclusiva Acessibilidade e Programação Web Mysql.
Pequena revisão e alguns erros comuns
Busca Competitiva - MiniMax Jogo-da-Velha
Projeto Jogo da Velha Maria Aparecida Amorim Sibaldo Mozart de Melo Alvez Júnior Rosângela Teixeira da Silva Universidade Federal de Alagoas Mestrado em.
Conceitos Básicos.
E. B. 2, 3 Jose Maria dos Santos Prof. Sandra Sousa
Jogos.
Relação de contas a receber no cartão 1. Objetivo: A relação de contas a receber no cartão permite a visualização de informações importantes referentes.
Inteligência Artificial: A Linguagem Prolog (parte 2)
Relação de Movimentação de Produtos 1 Posto de Combustível.
SEMANA DA MATEMÁTICA FÓSFOROS
João Pedro Mendes Brandão INESC Porto
Conversão de um NFA para um DFA com um exemplo
XADREZ O JOGO DE XADREZ DESENVOLVE A IMAGINAÇÃO, A CONCENTRAÇÃO E CONTRIBUI PARA FORMAR O ESPÍRITO DE INVESTIGAÇÃO, ALÉM DE INSTIGAR A CRIATIVIDADE E DESENVOLVER.
Interpretação Textual no ENEM ...
4 Questões do Quadrado Está pronto? B A
INTRODUÇÃO ÁS BASES DE DADOS
EXERCÍCIOS PARA GUARDA-REDES
UNIDADE DE TREINO Seniores/Juniores “ Mais e Melhor Andebol” Nº 6
Infra-Estrutura de Hardware
Disciplina Inteligência Artificial Defesa de Projeto Período
JOGOS MATEMÁTICOS 1.AvançoAvanço 2.RastrosRastros 3.HexHex.
1.
BCC 101 – Matemática Discreta I
Como Programar? Dicas para começar a programar bem
Nome alunos 1 Título UC. Título – slide 2 Conteúdo Conteúdo 2.
XADREZ Introdução Lenda Histórico Peças / Movimentações Regras Básicas
Organização e Arquitetura de Computadores
1 Representa no geoplano figuras a teu
Construção e Análise de Algoritmos
Planear um Website Principais etapas.
Escola Básica e Secundária Dr. Luís Maurílio da Silva Dantas Ano Lectivo 2014/2015 Tecnologias de Informação e Comunicação Introdução à folha de cálculo.
Campus de Caraguatatuba Matemática Discreta 1 – MD 1
Aula 1 – Introdução a Redes de Computadores
Índice Modulação Modulação - Portadora Modulação Amplitude Frequência
MÓDULO 13 TRAVESSIA DO RIO.
Aprendendo Xadrez online
Busca Competitiva Disciplina: Inteligência Artificial
1 Linguagens de Programação Pedro Lopes 2010/2011.
Leonardo de Souza Brasil Orientador: Ricardo Pereira e Silva, Dr
Evoluir e Formar 4. Autores: Paulo Roque e Márcio Castro.
Transcrição da apresentação:

Damas3D Programação em Lógica Nelson Jorge Silva Rodrigues – ei00070 Ricardo Jorge Marques Veloso – ei00125

Damas3D Enquadramento Introdução ao jogo Módulo de lógica Módulo de visualização Comunicação entre os módulos Conclusões

Enquadramento Damas3D Este trabalho enquadra-se na proposta para o desenvolvimento de um jogo de tabuleiro, feita para a cadeira de programação em lógica (módulo de lógica) e laboratório de computação (módulo de visualização).

Damas3D Enquadramento Introdução ao jogo Módulo de lógica Módulo de visualização Comunicação entre os módulos Conclusões

Introdução ao jogo Damas3D O jogo resume-se a um tabuleiro de 8x8 casas, alternadamente brancas e pretas, ordenadas alfabeticamente nas colunas e numeradas nas linhas. Regras Cada jogador começa com 12 pecas, de uma determinada cor, brancas ou pretas. O jogo efectua-se movimentando as peças sobre as casas pretas e nas diagonais, em direcção ao adversário.

Introdução ao jogo Damas3D Objectivo do jogo Jogada simples: Movimentação das peças para a casa seguinte; Jogada de comer: Comer uma peça adversaria, avançando assim duas casas. Este tipo de jogada pode ser encadeado; Jogada de dama: Quando uma peça atinge a última linha do lado oposto, obtém-se a dama que se representa pela sobreposição de duas peças normais. Uma dama pode percorrer mais de uma casa e em qualquer sentido, diagonalmente. Objectivo do jogo O objectivo do jogo é impedir que o adversário tenha jogadas possíveis. A maneira mais fácil de conseguir este objectivo é comer as peças todas do adversário.

Damas3D Enquadramento Introdução ao jogo Módulo de lógica Módulo de visualização Comunicação entre os módulos Conclusões

Módulo de lógica Damas3D Programa desenvolvido em Prolog. Este módulo contém o motor do jogo, implementando todos os predicados para a validação e efectuação de uma jogada, assim como a implementação de um modo em que o computador actue como um ou ambos os jogadores. Representação do tabuleiro “_” (underscore) – casa vazia “0” – Peça simples branca “@” – Peça simples preta “B” – Dama branca “P” – Dama Preta

Módulo de lógica Damas3D Interface no módulo de lógica O jogador a efectuar a jogada é representado como “brancas” ou “pretas” Destaca-se na imagem o modo de introdução das jogadas: ColunaInicialLinhaInicial…ColunaFinalLinhaFinal

Damas3D Enquadramento Introdução ao jogo Módulo de lógica Módulo de visualização Comunicação entre os módulos Conclusões

Módulo de visualização Damas3D Módulo desenvolvido utilizando a linguagem Java com as extensões que possibilitam a criação e visualização de mundos 3D (Java3D). O ambiente de jogo consiste essencialmente de um tabuleiro de damas em 3 dimensões, um marcador do número de jogos ganhos por cada jogador, e um temporizador que marca o tempo para efectuar uma jogada. A interacção com o utilizador baseia-se na utilização do rato para movimentar as peças no tabuleiro de jogo, devendo no caso de jogadas compostas o utilizador passar por todas as casas que compõem a jogada.

Módulo de visualização Damas3D Existe a possibilidade de mudar o aspecto do ambiente de jogo e de ver o filme do jogo.

Damas3D Enquadramento Introdução ao jogo Módulo de lógica Módulo de visualização Comunicação entre os módulos Conclusões

Comunicação entre os módulos Damas3D A comunicação entre o módulo de lógica e o módulo de visualização efectua-se utilizando o Jasper, uma interface fornecida pelo ambiente de desenvolvimento SICStus Prolog, que permite construir uma aplicação que facilmente integra duas linguagens de programação: Prolog e Java.

Damas3D Enquadramento Introdução ao jogo Módulo de lógica Módulo de visualização Comunicação entre os módulos Conclusões Melhoramentos

Melhoramentos Damas3D Utilização de sockets para comunicação entre os dois módulos Melhorar funções de avaliação do mini-max; Melhorar o próprio algoritmo para cortes Alpha-Beta.

Conclusões Damas3D A linguagem de programação Prolog adequa-se perfeitamente ao tipo de aplicação que pretendiamos desenvolver, tendo sido bastante facil a sua aprendizagem. O Java3D embora seja muito fácil de utilizar sofre de sérias lacunas ao nível da performance. A interface utilizada para ligar as duas linguagens de programação, o Jasper, revelou-se muito dificil de utilizar, bem como pouco robusta.

Questões? Damas3D Nelson Jorge Silva Rodrigues – ei00070@fe.up.pt Ricardo Jorge Marques Veloso – ei00125@fe.up.pt