Inteligencia Artificial
Trabalho Escolar: Inteligencia Artificial. Pesquise 862.000+ trabalhos acadêmicosPor: • 27/4/2013 • 4.329 Palavras (18 Páginas) • 1.173 Visualizações
UNIVERSIDADE CIDADE DE SÃO PAULO
Curso de Bacharelado em Ciência da Computação
Estudo sobre as estratégias para criação do jogo do quarto entre um jogador humano e o computador.
Emerson Nascimento de Oliveira
CA: 19155608
Rodrigo Costa Alves
CA: 19155481
ORIENTADOR(A): Prof. Msc. Marcelo de Moura Amorim
Junho 2012
UNIVERSIDADE CIDADE DE SÃO PAULO
Curso de Bacharelado em Ciência da Computação
____________________________________________________
Emerson Nascimento de Oliveira
CA: 19155608
_____________________________________
Rodrigo Costa Alves
CA: 19155481
BANCA EXAMINADORA
PROF. ORIENTADOR. Msc. Marcelo de Moura Amorim
PROF. ___________________________________
PROF. ___________________________________
Junho 2012
Dedicamos este trabalho a todos os amigos e familiares, que tanto contribuíram para nossa formação.
AGRADECIMENTOS
Agradecemos a todos os professores, e amigos, que nos passaram conhecimento necessário, para nossa formação durante nossos quatro anos de faculdade.
RESUMO
Esse trabalho tem como objetivo estudar a construção das estratégias para o jogo do quarto em três níveis de dificuldade. Os níveis de dificuldade consistem no fácil, médio e difícil e foi desenvolvido em PHP, com o tabuleiro e as peças a ser jogado pelo computador e um jogador humano. Seus resultados apresentaram uma modalidade de intervenção por meio de jogos de regras, simples para que o usuário possa interagir com o computador.
Abstract
This work aims to study the construction of strategies for the fourth game in three difficulty levels. The difficulty levels consist of easy, medium and hard and were developed in PHP, with the board and pieces to be played by the computer and a human player. This presents a method of intervention through games rules, simple for the user to interact with the computer.
SÍMBOLOS, ABREVIATURAS, SIGLAS E CONVENÇÕES.
ABNT Associação Brasileira de Normas Técnicas
ÍNDICE
1 Introdução 9
1.1 Objetivos 10
1.2 Motivação 10
1.3 Organização do Texto 10
2 A história dos Jogos 11
3 Jogo do Quarto 13
3.1 Descrição 13
3.2 Peças 14
3.3 Dinâmicas do Jogo 15
3.4 Finalizando o Jogo 17
4 Estratégias para vencer o jogo 18
4.1 Estratégia Fácil 19
4.1.1 Exemplos de uma Jogada Fácil 20
4.2 Estratégia Média 26
4.2.1 Exemplos da Jogada Média 26
4.3 Estratégia Difícil 31
4.3.1 Exemplos da Jogada Difícil 31
5 Considerações Finais 39
5.1 Dificuldades Encontradas 39
5.2 Trabalhos Futuros 40
6 Referências Bibliográficas 41
1 Introdução
O desenvolvimento de jogos para computadores possui características diferentes com relação ao desenvolvimento de softwares tradicionais, por serem projetos grandes e integrar equipes multidisciplinares.
Existem diversas ferramentas que facilitam o desenvolvimento de jogos, a escolha da linguagem de programação a ser usada é fundamental tendo em vista as vantagens e desvantagens que ela oferece. O desenvolvedor deve atentar para os recursos oferecidos, nível de fluência que possui na linguagem, facilidade de uso e também, quais linguagens são suportadas pela ferramenta escolhida. [1]
Jogos de computador têm cativado o interesse da comunidade de sistemas, especialmente os jogos chamados “tradicionais”, como xadrez, damas, go-moku, dentre outros.
Os desenvolvimentos desses jogos devem, sobretudo, não a inovações no campo de sistemas inteligentes, mas sim ao uso do conhecimento de especialistas no projeto do sistema e a avanços de hardware que permitiram aos computadores usar de “força bruta” para superar seus oponentes humanos.
Atualmente muitos jogos de computador utilizam alguma técnica de sistemas inteligentes, contudo os recursos mais avançados, incorporando técnicas de inteligência computacional, só estão presentes em uma minoria dos jogos disponíveis comercialmente. [2]
1.1 Objetivos
Os objetivos desse trabalho são explorar e entender as estratégias na construção do jogo do quarto, sendo capaz de criar um jogador automático que consiga identificar e se antecipar nas decisões tomadas pelo jogador humano.
1.2 Motivação
Os Jogos de Computador vêm sendo uma grande ferramenta no desenvolvimento e testes de novas metodologias e algoritmos, devido à complexidade dos ambientes sofisticados. Devido ao grau de interação com o usuário e por possuírem ambientes ricos, os jogos têm grande interesse da comunidade acadêmica por apresentarem oportunidades no ponto de vista da inteligência artificial se aproximando cada vez mais do mundo real, mas se mantendo em um ambiente controlado. [3]
1.3 Organização do Texto
Durante esse trabalho, na Seção 2, há uma breve descrição de jogos. Na Seção 3, Apresenta-se o jogo do quarto e seu funcionamento e regras. Na Seção 4, demonstram-se as estratégias simples e média que compõem o jogo. Na Seção 5 algumas considerações finais sobre nossa exploração da Inteligência Artificial e trabalhos futuros são exploradas.
2 A história dos Jogos
Há muito tempo os jogos vem sendo utilizados para testar o conhecimento na Ciência da Computação, principalmente, na área de Inteligência Artificial. As primeiras pesquisas realizadas foram em jogos de tabuleiros a Dama e o Xadrez, tendo em vista a simplicidade das regras.
A história dos jogos pode ser dividida em: antes da década de 70, décadas de 70, 80, 90 e 2000, e através das diferentes tecnologias utilizadas em diferentes épocas. Antes da década de 70, algumas empresas e pessoas já começavam a dar os primeiros passos na criação de jogos.
Uma das principais empresas da indústria, a Nintendo, começou como uma empresa que fabricava cartas de baralho em 1889. Segundo a linha de tempo [4], esse é o primeiro marco da história dos jogos eletrônicos (pelo fato que a Nintendo hoje está no mercado de jogos eletrônicos). Ainda, desde o início do século XX, KENT, e DEMARIA, [5] consideram máquinas como a Gottlieb Bale Ball os precursores das máquinas de pinball, que hoje em dia são máquinas de jogos eletrônicos.
O primeiro jogo eletrônico interativo criado na história foi o Spacewar, um jogo onde duas pessoas controlavam dois tipos diferentes de espaço-nave que deveriam combater entre si. Esse jogo foi programado por um estudante do MIT, Steve Russell, em um computador PDP-1 em 1961 DEMARIA. Existem alguns historiadores, porém, que argumentam que o primeiro jogo eletrônico foi criado por Willy Higinbotham, um cientista do Brookhaven National Laboratory. Higinbotham programou, em 1958, um osciloscópio onde era possível jogar uma partida de tênis interativa.
Essa diferença deve-se pelo fato que jogos são um meio de entretenimento (embora haja casos de “jogos sérios” voltados para a educação), e que a indústria de jogos tem um potente mercado que fatura bilhões de dólares por ano, portanto, é fácil compreender a informalidade. [6]
3 Jogo do Quarto
O jogo da quatro é um jogo de tabuleiro. É um jogo de regras extremamente simples, que não traz grandes dificuldades para o jogador e é facilmente aprendido. Foi inventado em 1985 na França por Blaise Muller . Tendo sido premiado nos concursos de Boulogne-Billancourt neste mesmo ano e em Cannes em 1992. E posteriormente em vários países da Europa e nos Estados Unidos [1].
O Jogo do quarto pertence á família dos jogos de alinhamento, destacando se pela imensa quantidade de possibilidades combinatórias, e é o único que o oponente escolhe a peça para o outro jogar. [2].
3.1 Descrição
O tabuleiro é uma matriz de quatro linhas por quatro colunas, possui 16 peças. Este é um jogo para dois jogadores. Nosso trabalho foi desenvolvido jogador contra máquina.
Figura 3.1: Tabuleiro do Jogo do Quarto.
3.2 Peças
Cada peça tem quatro atributos:
-Tamanho (grande/pequena)
Figura 3.2.0: Modelo de uma peça grande Figura 3.2.1: Modelo de uma peça pequena
As figuras 3.2.0 e 3.2.1 e representada por modelos de nosso protótipo
- Cor (vermelha/azul)
Figura 3.2.2: Modelo de uma peça cor vermelha Figura 3.2.3: Modelo de uma peça cor azul
- Forma (quadrada/bola)
Figura 3.2.4: Modelo de uma peça forma quadrado Figura 3.2.5: Modelo de uma peça forma bola.
- Furo (vazia/cheia)
Figura 3.3.6: Modelo de uma peça mod vazia Figura 3.3.7: Modelo de uma peça mod cheia
As peças de um jogo real têm as características conforme vamos mostrar na figura abaixo.
Figura 3.2.8: Peças de um jogo real
Em nosso protótipo iremos representar as peças com imagem em 2D,como esta mostrando na figura 3.2.9 abaixo.
Figura 3.3.9: Tabuleiro completo com as peças em 2D.
3.3 Dinâmica do Jogo
O jogador escolhe a primeira peça para máquina jogar no tabuleiro, na sequência a máquina escolhe a peça para o jogador humano escolher a posição. Os jogadores movem-se alternadamente, colocando uma peça de cada vez no tabuleiro; uma vez que introduzidas, as peças não podem ser movidas.
Uma das características mais especiais deste jogo é que a escolha da peça a ser colocada no tabuleiro não é feita pelo mesmo jogador que a coloca; é o adversário que, após ter feito seu movimento, se decide qual será a peça seguinte a colocar.
Assim, cada jogada consiste em duas ações:
1. Colocar no tabuleiro a peça dada pelo adversário.
2. Dar ao adversário a peça a ser colocada no movimento seguinte.
Na primeira jogada, o jogador que começa tem para escolher somente uma peça para o oponente.
3.4 Finalizando o jogo
O objetivo do jogo é terminar uma linha com quatro peças onde essas possuam pelo menos uma dos quatro atributos descritos em comum (quatro peças grandes, quatro pequenas, quatro claras, quatro escuras, quatro cilíndricas, quatro quadradas, quatro com o furo ou quatro lisas). A linha pode ser vertical, horizontal ou diagonal, o vencedor é o jogador que colocar a quarta peça na sequência. O jogo termina em empate quando ninguém alcança o objetivo após ter colocado as 16 peças.
Uma das características invulgares do Quarto é o fato de existir um mesmo conjunto de peças para os dois jogadores e não dois conjuntos distintos para cada um deles. Este é considerado um jogo totalmente imparcial onde apenas é testada a inteligência e perícia bem como a capacidade de antecipação dos jogadores. [2]
4 Estratégias do Jogo do Quarto
Os jogos de tabuleiro servem para incentivar a capacidade de memória e desenvolver o raciocínio lógico e abstrato. Nesse capitulo apresentaremos a estratégia fácil, média, e difícil para vencer no jogo do quarto.
Figura 4.1: Árvore desenvolvida para conhecer significado dos quarto atributos
A árvore mostrada na figura 4.1, foi desenvolvida com o propósito de identificar as pelo jogador computável qual a peça está sendo usada, e em qual posição ela se encontra, a partir daí elaboramos as estratégias para os níveis médios e difícil que mostraremos a seguir.
id peça Nome peça
1 Bola vermelha pequena vazia
2 Bola vermelha grande vazia
3 Quadrado vermelho pequeno vazio
4 Quadrado vermelho grande vazio
5 Bola vermelha pequena cheia
6 Bola vermelha grande cheia
7 Quadrado vermelho pequeno cheio
8 Quadrado vermelho grande cheio
9 Bola azul pequena vazia
10 Bola azul grande vazia
11 Quadrado azul pequeno vazio
12 Quadrado azul grande vazio
13 Bola azul pequena cheia
14 Bola azul grande cheia
15 Quadrado azul pequeno cheio
16 Quadrado azul grande cheio
Tabela 4.1: Essa tabela mostra o numero de identificação da peça e seu nome
4.1 Estratégia Fácil
A estratégia fácil as peças e as posições são escolhidas aleatoriamente por parte do computador, e o usuário terá que se preocupar em escolher a posição favorável a ele e as peças desfavoráveis ao computador.
Sendo assim em todas jogadas o computador não utiliza estratégias de ataque e defesa, e não tem nenhum fator de inteligência por trás dessa estratégia.
4.1.1 Exemplos de uma Jogada Fácil
Uma jogada no modo fácil aonde o computador escolhe as peças do jogador aleatoriamente e também a posição.
Figura 4.1.0: Mostra a primeira jogada do modo fácil.
Na figura 4.1.0 da jogada fácil demonstra a primeira jogada aonde o jogador escolhe a peça para máquina colocar no tabuleiro logo ela escolheu a posição 2 X 3, segunda linha, terceira coluna, logo abaixo iremos explicar como foi essa escolha da maquina na posição.
Figura 4.1.1: Algoritmo de escolha da posição
Na figura 4.1.1, mostra o código que desenvolvemos para a máquina escolher as colunas aleatoriamente. Na primeira inicia-se o código PHP, na segunda linha um FOR para que vai de 1 a 100, na 3 linha uma variável chamada de numero que recebe um método do próprio PHP que busca um numero aleatoriamente de 1 a 16, na linha 4 temos um IF que verifica se a posição da matriz esta nula, linha 5 uma função do próprio PHP aonde ele grava na memória do computador o numero escolhido, na linha 6 uma função do próprio PHP que vai para pagina citada no código “location:./salvar_posicao.php”,na linha 7 fecha chave do IF,na linha 8 fecha chave do FOR, linha 8 fecha o código do PHP.
Figura 4.1.2: Mostra 2ª jogada do modo fácil
A figura 4.1.2, mostra a 2ª rodada do jogo já com duas peças no tabuleiro aonde a maquina escolheu aleatoriamente a peça (numero figura da peça) para o jogador jogar no tabuleiro aonde o próprio escolheu a posição 2 X 1 (segunda linha, primeira coluna), na figura abaixo mostraremos como a maquina escolheu essa peça para o jogador jogar.
Figura 4.1.3: Algoritmo de escolha da peça.
Na figura 4.1.3, mostra o código que desenvolvemos para a máquina escolher as peças aleatoriamente. Na primeira linha inicia-se o código PHP, na segunda linha um FOR para que vai de 1 a 100, na 3 linha uma variável chamada de numero que recebe um método do próprio PHP que busca um numero aleatoriamente de 1 a 16, na linha 4 temos um IF que verifica se a peça do jogo esta nula, linha 5 uma função do próprio PHP aonde ele grava na memória do computador o numero escolhido,na linha 6 uma função do próprio PHP que vai para pagina citada no código “location:./salvar_posicao.php”,na linha 7 fecha chave do IF,na linha 8 fecha chave do FOR, linha 8 fecha o código do PHP.
Figura 4.1.4: Mostra 3ª jogada do jogo.
Nessa figura 4.1.4 veja que já aparece uma terceira peça jogada no tabuleiro pelo computador repare que o computador poderia ter jogado na segunda linha do tabuleiro, mas como ela escolhe aleatoriamente a posição ela escolheu a terceira linha, primeira coluna.
Figura 4.1.5: Mostra 4ª jogada do jogo.
Figura 4.1.5 mostra a quarta jogada aonde o computador escolheu uma peça para o jogador jogar no tabuleiro escolhendo a posição seguinte segunda linha e segunda coluna.
Figura 4.1.6: Mostra 5ª jogada do jogo.
Na figura 4.1.6, repare que o jogador escolheu uma peça favorável para a máquina ganhar o jogo, mas como nesse grau de dificuldade ela não tem a inteligência de ver que pode ganhar o jogo assim como já visto na figura (F.2), que mostra o código ela escolhe aleatoriamente, com isso ela escolheu a posição primeira linha e terceira coluna.
Figura 4.1.7: Mostra 5ª jogada do jogo.
Na figura 4.1.7 repare que a máquina escolheu uma peça favorável para o jogador fechar o jogo com isso o jogador jogou na posição segunda linha e quarta coluna, assim ele fechou o jogo.
4.2 Estratégia Média.
Na estratégia média, não está sendo usado o modo aleatório na escolha das peças e posições. Nessa estratégia trabalhamos mais no algoritmo das jogadas para garantir a elevação do nível e ter um diferencial em relação ao anterior, porém sempre consultado pelo computador as jogadas realizadas pelo usuário a fim de finalizar o jogo.
À medida que estão sendo feitas as jogadas o computador verifica as linhas, as colunas e diagonais a fim de preencher com a peça disponibilizada pelo usuário e vencer o jogo, deixando sempre as possibilidades aberta para o jogador humano também finalizar a partida, pois nesse nível o computador não está programado a se defender.
4.2.1 Exemplos de uma jogada Média
Figura 4.2.0: Mostra 1ª jogada do nível médio
Na figura 4.2.0 acontece à primeira jogada aonde o jogador escolheu uma peça para máquina jogar no tabuleiro, na primeira jogada ela escolhe aleatoriamente uma posição nesse caso ela escolheu a posição terceira linha e terceira coluna.
Figura 4.2.1: Mostra 2ª jogada do nível médio
Na figura 4.2.1, a máquina escolheu a peça para o jogador colocar na posição.
Figura 4.2.2: Mostra 3ª jogada do nível médio
Na figura 4.2.2 o jogador escolhe a peça, para a máquina colocar no tabuleiro escolhendo a posição 3X2 terceira linha e segunda coluna.
Figura 4.2.3: Mostra 4ª jogada do nível médio.
Na figura 4.2.3, repare que a máquina escolheu uma peça para o jogador não fechar o jogo, nesse nível médio que estamos a estratégia e apenas para vencer, mas colocamos algumas dificuldade para dar a peça para o jogador, assim o jogador posicionou a peça na posição 2X2 segunda coluna e segunda coluna.
Figura 4.2.4: Mostra 5ª jogada do nível médio.
Na figura 4.2.4, o jogador deu uma peça favorável para a máquina ganhar o jogo, a maquina fez uma busca no tabuleiro e verificou que tinha 3 peças na mesma linha com um atributo igual a que o jogador escolheu, assim ela posicionou a peca na posição 3X4, mostraremos na próxima figura o algoritmo para essa jogada vencedora da maquina.
Figura 4.2.5: Mostra uma parte do algoritmo desenvolvido.
Na figura 4.2.5 mostra uma parte do algoritmo desenvolvido para que a máquina verificar em todas as linhas horizontais, verticais e diagonais nessa verificação percebendo que tem 3 posições já preenchidas com o mesmo atributo e a peça que o jogador escolheu tem um desses atributos, a máquina joga na posição nula assim finalizando a jogo.
4.3 Estratégia difícil.
Na estratégia difícil, como na média também não está sendo usado o modo aleatório na escolha das peças e posições, porém o diferencial dessa estratégia está nas jogadas feitas pelo computador. A casa jogada feita pelo usuário humano o computador faz a analise e passa a jogar em cima dos erros. Além disso, o computador consegue bloquear todas as jogadas que possam levar o jogador humano finalizar a partida, além disso, faz a análise das posições e consegue vencer o jogo.
Sendo assim, a estratégia difícil tem o fator de inteligência que permite atacar e defender nas suas jogadas.
4.3.1 Exemplos de uma jogada Difícil.
Figura 4.3.0: Mostra 1ª jogada do nível difícil.
Na figura 4.3.0 acontece a primeira jogada aonde o jogador escolheu uma peça para maquina jogar no tabuleiro, na primeira jogada ela escolhe aleatoriamente uma posição nesse caso ela escolheu a posição terceira linha e terceira coluna.
Figura 4.3.1: Mostra 2ª jogada do nível difícil.
Na figura 4.3.1, a máquina escolheu a peça para o jogador colocar na posição.
Figura 4.3.2: Mostra 3ª jogada do nível difícil.
Na figura 4.3.2, o jogador escolheu uma peça, para a máquina jogar, a máquina fez uma verificação na matriz e viu que tinha na primeira linha uma peça com o mesmo atributo por isso a escolha da posição 1X4 primeira linha e quarta coluna como vai ser mostrado uma parte do algoritmo na figura 4.3.3 abaixo.
Figura 4.3.3: Parte do algoritmo do jogo.
Como foi citado no parágrafo acima esse algoritmo foi responsável pela escolha da peça na posição 1X4.
Figura 4.3.4: Mostra 4ª jogada do nível difícil.
Na figura 4.3.4, a máquina escolheu a peça para o jogador jogar no tabuleiro escolhendo a posição 1X1.
Figura 4.3.5: Mostra 5ª jogada do nível difícil.
Observe na figura 4.3.5 mostra uma jogada aonde a máquina poderia ter dado uma peça para o usuário fechar o jogo, mas não foi por pura sorte que ela não deu a peça do fecha usaremos a tabela (01) a tabela (02) e a tabela (03) para mostrar essa escolha.
Conjunto dos atributos id peça
Vermelha [1,2,3,4,5,6,7,8]
Azul [9,10,11,12,13,14,15,16]
Grande [2,4,6,8,10,12,14,16]
Pequena [1,3,5,7,9,11,13,15]
Cheia [5,6,7,8,13,14,15,16]
Vazio [1,2,3,4,9,10,11,12]
Quadrado [3,4,7,8,11,12,15,16]
Bola [1,2,5,6,9,10,13,14]
Tabela 4.3.0: Essa tabela e formada por 8 conjuntos com os 4 atributos de cada peça.
Nessa tabela 4.3.0 dividimos em 8 conjuntos, aonde temos na primeira coluna o nome do conjunto e na 2 coluna temos os número de identificação das peças (id peça) obtivemos esses números através da figura 4.1 que desenvolvemos, exemplo da linha 1: repare que na primeira linha seu conjunto e formado por todas as peças que tem um atributo vermelho, na 2 linha acontece com as peças que tem um atributo azul, assim acontece sucessivamente até chegar no conjunto bola.
Id peça Num. combinações Atributos combinatório
1 4 [bola],[vermelho],[pequena],[vazia]
2 3 [vermelho],[bola],[vazio]
3 3 [vermelho],[vazio],[pequena]
4 2 [vermelho],[vazio]
5 3 [vermelho],[bola],[pequena]
6 2 [vermelho],[bola]
7 2 [vermelho],[pequeno]
8 1 [vermelho]
9 3 [bola[,[vazia],[pequena]
10 2 [vazio],[bola]
11 2 [pequena],[vazia]
12 1 [vazia]
13 2 [bola],[pequena]
14 1 [bola]
15 1 [pequena]
16 0 0
Tabela 4.3.1: Essa tabela mostra todas as combinações da peça numero 1
Na tabela 4.3.1 anterior dividimos em conjunto todos os atributos das peças do jogo nessa tabela 4.3.1 que pertence à peça número 1 pegaremos ela como nosso exemplo de explicação, sabemos que o nome dela é “Bola vermelha pequena vazia” então se concluí que ela está em 4 conjuntos que são eles [bola], [vermelha], [pequena], [vazia], cada conjunto desses tem 8 números de identificação. Observe que tabela (02) tem 3 colunas, primeira coluna tem o número de identificação das peças, a segunda coluna representa a quantidade de vezes que ela aparece nos 4 conjuntos que forma a peça número 1 (número da figura da peça) na terceira coluna os nomes dos conjuntos.
Na primeira linha aparece 4 combinações e quatro nomes, isso significa que é a própria peça, na segunda linha temos o número 2 de identificação (repare que o número 2 aparece no conjunto ([vermelho],[bola],[vazio]) por isso que marcamos 3 combinações a linha 3 (três combinações), a linha 4 (2 combinações), a linha 5 (3 combinações), sucessivamente ate a linha 15 na tabela 4.3.1 da peça numero 1 (figura da peça), repare que a linha número 16 temos 0 (zero) de combinação e nessa linha da tabela (02) que temos a estratégia de alunar a hipótese de a máquina dar uma peça favorável ao jogador para ganhar o jogo.
A máquina verifica se tem 3 atributos do mesmo formato em uma mesma linha (verticais, horizontais ou diagonais) se tiver a máquina devolve a peça oposta que no nosso exemplo seria a peça 16 nisso ela está garantindo que naquela jogada o jogador não ganhará o jogo.
Qtd peça Combinações
4 3
6 2
4 1
1 0
Tabela 4.3.2: Essa tabela mostra a quantidade de peça e quantidade de combinações.
Nessa Tabela 4.3.2 acima mais simplificada que a tabela 4.3.1 anterior mostra na primeira coluna a quantidade de peça, na segunda coluna significa as combinações que aparece na coluna 2 da tabela 4.3.1 anterior. Na primeira linha temos 4 peças que tem 3 possíveis combinações de atributos, na linha 2 temos 6 peças com 2 possíveis combinações, na linha 3 temos 4 peças com 1 combinação, e na linha 4 temos uma peça com 0 (zero) de combinação. O interessante dessa tabela 4.3.2 que ela é a mesma para todas as peças diferentes da tabela 4.3.1 que para cada peça existe sua própria tabela.
Figura 4.3.6: Mostra sexta jogada do nível difícil.
Nessa figura 4.3.6 o jogador escolheu a peça para a máquina jogar, pelo algoritmo ela percebeu que não poderia ganhar com essa peça na primeira linha então ela verificou que na segunda coluna tinha uma peça do mesmo atributo por isso essa jogada.
5 Considerações Finais
Conforme descrito nesse trabalho, as estratégias aplicadas no desenvolvimento do nosso protótipo seguem as seguintes características: No modo fácil foi utilizado nenhum tipo inteligência e sim sorte, pois é totalmente aleatório, no médio, consegue-se desenvolver as técnicas a para que o computador sempre ataque os pontos estratégicos a fim de vencer o jogo e por fim no modo difícil fechamos todas às jogadas de ataque do jogador humano utilizando a tabela para localizar as peças opostas e entregar para o usuário, fazendo assim a técnica de defesa e ao passo que o jogador humano disponibiliza a peça o computador realiza a varredura na intenção de atacar e finalizar a partida.
Com esse trabalho concluí-se que os objetivos propostos do jogo estão atingidos, a representação do estado do jogo encontra-se definido, a visualização do tabuleiro no browser, a colocação das peças no tabuleiro verificando se a mesma este ocupado ou não.
5.1 Dificuldades Encontradas
As dificuldades que encontramos na elaboração do nosso trabalho foi basicamente programar a estratégia difícil, tendo em vista que em princípio estávamos desenvolvemos o algoritmo com um fator exponencial muito grande, e com o número de combinações muito alto.
Sendo assim optamos pelo desenvolvimento na estratégia de ataque e defesa, como em diversos jogos de tabuleiros.
5.2 Trabalhos Futuros
Propomos para trabalhos futuros, o desenvolvimento do jogo do quarto em outras linguagens e para plataformas moveis, celulares Smartfones, pois esse segmento está crescendo cada vez mais no mercado.
6. Referencias Bibliográficas
[1] J. Hattan. What Language Do I Use? Article Published, 2000
http://www.gamedev.net/reference/articles/article895.asp
[2] Osvaldir Viegas, Jogos de Tabuleiro,2004
http://oficinadoaprendiz.com.br/?page_id=46
[3] Victor Kazuo Tatai, Engenharia da Computação-Unicamp
Tese:Técnicas de Sistemas Inteligentes Aplicadas ao Desenvolvimento de Jogos de Computador. 2006
ftp://ftp.dca.fee.unicamp.br/pub/docs/gudwin/publications/TeseTatai.pdf
[4] (KENT, 2001) KENT, Steven L. The Ultimate History of Video Games: From Pong to Pokémon and Beyond – The Story Behind the Craze that Touched Our Lives and Changed the World. New York: Three River Press. 2001
[5] (DEMARIA, 2004) DEMARIA, Rusel; WILSON, Johnny L. High Score! The Illustrated History of Electronic Games,2nd edition. Emeryville: McGrawHill/Osborne. 2004.
[6]R. Coelho, V di Iorio. Desenvolvimento de jogos de computadores utilizando software livre.
DPI – Departamento de Informática UFV – Universidade Federal de Viçosa – MG, 2004
http://www.dcc.ufla.br/infocomp/artigos/v4.2/art10.pdf
...