ALGORITMOS E TECNICAS DE PROGRAMACAO II

Slides:



Advertisements
Apresentações semelhantes
Criando aplicações WEB
Advertisements

Problema das N-Rainhas
N Rainhas Descrição do Problema Satisfação de Restrições (CSP)
Algoritmos Genéticos Problema das 8 Rainhas Algoritmo Genético
Projeto 1.
Metaheurísticas Prof. Aurora Pozo Departamento de Informática Universidade Federal do Paraná
Busca informada (heurística) Parte 2
HeapSort Filas de Prioridade – Heap
Medida do Tempo de Execução de um Programa
Medida do Tempo de Execução de um Programa
DI - UFPE 1 Constraint Satisfaction Problems (CSP) nConceitos básicos nBusca cega simples e refinada nBusca heurística nCSP iterativo.
Projeto e Análise de Algoritmos
Algoritmos Escher.
Solução de problemas por meio de busca
TIPOS DE TESTES APLICÁVEIS E NÃO APLICÁVEIS AO PROJETO
Como elaborar um texto Argumentativo
Backtracking Katia Guimarães.
INF 1771 – Inteligência Artificial
INF 1771 – Inteligência Artificial
Buscas em Grafos Prof. André Renato 1º Semestre/2012
Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012.
T ÓPICOS DE I.A. Métodos de Busca Busca em Espaços de Estado Prof. Mário Dantas.
Informática Teórica Engenharia da Computação
1 Introdução aos Agentes Inteligentes Flávia Barros.
Aula prática 6 Vetores e Matrizes
Linguagem de Programação II Parte IX
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.
Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação
Defesa Índia do Rei A defesa Índia do Rei é, sem a mínima dúvida, uma das melhores (se não a melhor) resposta das pretas a 1.P4D. Também é a mais forte.
Aula 03 – BCC202 Análise de Algoritmos (Parte 1) Túlio Toffolo www
Ordenação por inserção
MÉTODOS NUMÉRICOS APLICAÇÃO NO MATLAB
Matlab Mini Curso PET 2012.
Monitoria de Sistemas Inteligentes
Introdução aos Agentes Inteligentes Busca Cega (Exaustiva)
Vetores Imagine que você tem que receber o nome e a nota de 50 alunos de uma escola, e depois listar o nome de cada um e a média final de cada aluno e.
Disciplina Inteligência Artificial Defesa de Projeto Período
Treinamento sobre SQL.
SISTEMAS OPERACIONAIS I
Árvore Binária de Busca
Construção e Análise de Algoritmos
Algoritmos e Estrutura de Dados I
Resolução de Problemas
O que é? É o processo de investigação técnica com intuito de identificar a qualidade, a segurança e a exatidão do software desenvolvido. A validação do.
Busca Combinatorial e Métodos de Heurística
Introdução à complexidade de algoritmos Luiz Gonzaga da Silveira Junior.
Física.
Satisfação de problemas restritos (CSP)
Resolução de Problemas de Busca
Ferramentas da Qualidade
Algoritmos e Estruturas de Dados I – Estruturas de Dados
1 Introdução aos Agentes Inteligentes Resolução de Problemas de Busca Flávia Barros.
Tarciane Andrade Análise de Casos de Uso Tarciane Andrade
Busca Competitiva Disciplina: Inteligência Artificial
Construção de Algoritmos AULA 05
Programação Computacional Aula 9: Meu primeiro programa em C
Desenvolvimento WEB Prof. Renato de Oliveira Bastos
Shell Script Parte 2.
Sistemas Operacionais IV – Gerenciamento de E/S
Resolução de Problemas de Busca Agentes Baseados em Objetivo
Programação para Web I AULA 4 ESTRUTURAS DE CONTROLE.
Programação para Web I AULA 2 BANCO DE DADOS.
DETERMINANTES.
INE5408 Estruturas de Dados Listas Encadeadas Simples.
ÁLGEBRA - POLINÓMIOS.
USP – ICMC – SSC SSC0300 2º Semestre 2015
CIn- UFPE 1 Resolução de Problemas. CIn- UFPE ? Agente solucionador de problemas O agente reativo Escolhe suas ações com base.
MATEMÁTICA E SUAS TECNOLOGIAS
V ETORES E M ATRIZES Disciplina: Informática Aplicada Professor: Modesto Chaves.
Algoritmos com matrizes e vetores
Transcrição da apresentação:

ALGORITMOS E TECNICAS DE PROGRAMACAO II O PROBLEMA DAS 8 RAINHAS ALGORITMOS E TECNICAS DE PROGRAMACAO II BRUNO SENA, NATÁLIA MARCONDES E NAYRA DE OLIVEIRA

O PROBLEMA Colocar N rainhas (N>3) em um tabuleiro NxN de forma que elas não se ataquem Obs: As rainhas podem se atacar na horizontal, vertical e horizontais, ou seja, o objetivo é colocar uma rainha por linha/coluna e diagonal.

BACKTRACKING Backtracking é um algoritmo que representa o refinamento por força bruta, técnicamente, muitas soluções podem ser eliminadas sem ser explicitamente examinadas. Segue o padrão de busca em profundidade, ou seja, a arvore é percorrida sistematicamente até o fim, quando encontra um erro (falha) entra em ação o mecanismo backtracking que faz com que o sistema retorne pelo mesmo caminho, buscando encontrar soluções alternativas. As principais aplicações desse algoritmo são para encontrar todos os 2^n subconjuntos de um conjunto S com n elementos.

BACKTRACKING Exemplo: Objetivo: encontrar as 4 primeiras bolas vermelhas. A algoritmo backtracking é muito mais complexo de ser implementado, aqui estamos apenas trabalhando com a ideia implementada.

BACKTRACKING Exemplo desse problema no exercício das rainhas, sendo O rainhas e X posições onde não é possivel colocar rainhas, na 5ª linha ja haviam sido ocupadas todas as posições disponíveis e o programa seria encerrado. Nesse contexto, o backtracking é um ótimo auxiliar.

AS 8 RAINHAS Interação com o usuário, while e if simples que apenas obedecem as vontades do usuário de visualizar as opções e a quantidade delas.

AS 8 RAINHAS O numero de rainhas é igual a dimensão do tabuleiro, e como só é possivel colocar uma rainha por linha ou coluna, apenas estamos trabalhando com um vetor xadrez que esta associado a coluna que a rainha esta disposta. A função Ataque determina se a posição testada pode conter uma rainha.

AS 8 RAINHAS A função Rainha varre todo o tabuleiro, e cada posição acessada, verifica junto a função Ataque se a Rainha pode ser colocada ali. O resto do código são comandos de comparação, impressão, interação com o usuário, etc.. Não convém aqui explicações detalhadas.

Vamos executa-lo agora para mostrar todas as 92 soluções do problema. AS 8 RAINHAS Exemplo de saída do nosso código OitoRainhas_Final. Vamos executa-lo agora para mostrar todas as 92 soluções do problema.