SlideShare una empresa de Scribd logo
1 de 31
Descargar para leer sin conexión
Busca Tabu
Lucas Fernandes - abril 2011
Roteiro
 Algoritmos de busca   Funcionamento
 Heurísticas           Código
 Metaheurísticas       Problema das n-Rainhas
 Busca local           Execução do TSM
 Busca tabu
 Conceitos básicos
Algoritmos de busca
Dois tipos
  Força bruta
  Heurística
Vantagens e desvantagens
Busca em listas
Busca em árvores
Busca em grafos
Heurísticas em algoritmos
de buscas
As heurísticas são funções usadas como alternativas
em algoritmos de busca
Visam diminuir o tempo computacional de uma busca
Nem sempre apresentam uma solução ótima
O trabalho de escolher uma heurística adequada para
um problema geralmente é feito pela IA
Tipos de heurísticas
 Heurística de construção: uma ou mais soluções são
 construídas elemento a elemento, baseando-se em
 critérios até que se encontre a solução
 Heurísticas de busca em vizinhança: parte de uma
 solução possível e tenta melhorar a mesma através de
 trocas, remoções ou inserções, até que seja atingido
 algum critério (geralmente uma solução ideal)
 Heurísticas sistemáticas: a árvore de espaço de
 soluções é percorrida sob critérios de ramificação e
 corte da mesma
Tipos de heurísticas


 Heurísticas híbridas: resulta da combinação de uma ou
 mais heurísticas, de tipos diferentes
 Metaheurísticas: o tipo mais sofisticado, consiste de
 uma heurística simples que é analisada por um
 procedimento que explora o problema e seu espaço
 de soluções
Exemplos de uso de
heurísticas

Busca de melhor caminho em um grafo
Busca de virus
Desktops semânticos
Metaheurística
Geralmente utilizada quando não se conhece um
algoritmo eficiente para resolver o problema
São usadas para melhorar os resultados obtidos por
funções heurísticas
“Evoluem” com o tempo, aprendendo sobre o que foi
feito anteriormente de maneira a melhorar as próximas
soluções
Termo cunhado por Fred Glover, em 1986
Busca local
É também considerada uma metaheurística
Busca uma solução ótima dentro de um conjunto de
soluções possíveis (o espaço de busca)
Parte de uma solução candidata inicial para a uma
solução vizinha, i.e. vértices vizinhos em um grafo
Geralmente, cada solução candidata tem mais de uma
solução vizinha. A escolha de qual será a próxima deve
ser feita tomando em consideração apenas a
vizinhança da solução candidata atual, por isso é
chamada de busca local
Busca local
É iterativa, métodos para encerrar a busca podem
involver o tempo de execução ou um certo número de
iterações sem apresentar melhora na solução
Considerada um algortimo de busca incompleto uma
vez que pode encerrar sem ter encontrado uma
solução ótima
Na prática é pouco provável que a solução encontrada
em pouco tempo seja próxima da ótima, por isso
foram feitas várias tentativas de melhorar o algortimo,
resultando por exemplo na busca tabu
Busca tabu

Um algoritmo de busca baseado em metaheurística
Um método de otimização matemática, da classe dos
métodos de pesquisa local
Melhora os métodos de pesquisa local usando
estruturas de memória
Busca tabu

Muito usada nas telecomunicações e em otimização
de trajetórias
Estudada principalmente no ramo da IA
Surgiu na década de 70
Fred Glover formalizou sua estrutura também em 1986
Busca tabu
É uma estratégia para resolver problemas de
otimização combinatorial as quais a aplicação abrange
da teoria de grafos e conjuntos de matróides à
problemas de programação linear gerais, puros e
mistos. É um procedimento adaptativo com a
habilidade de fazer uso de muitos outros métodos,
como algoritmos de programação linear e heurísticas
especializadas, que são dirigidas para superar as
limitações da otimização local. (Glover, 1988)
Conceitos básicos
Solução       Vizinhança
 Inicial        Original
 Corrente       Modificada (reduzida
                ou espandida)
 Melhor
              Tabu
Movimento
                Status
 Atributos
                Regra de ativação
 Valores
Funcionamento

Busca possíveis soluções a partir de um ponto
conhecido
Caso seja uma solução possível, marca o ponto como
tabu para que ele não seja visitado repetidamente
Para que todos os pontos sejam visitados, ao contrário
da busca local, a busca tabu modifica a estrutura de
vizinhos a cada solução
Funcionamento

Busca o ótimo local, mesmo que seja necessário fazer
movimentos que não melhorem a solução em relação
ao passo atual
Mantém uma lista de soluções já visitadas, chamada
de lista tabu para evitar que elas sejam revisitadas
Procedimento        Gerar solução
   heurístico      inicial e inicializar
                                                       PARAR
                     estruturas de
                        memória

Restrições tabu                                             Não
    Lista de           Construir
  candidatos         estruturas de         Sim    Mais iterações?
  Critério de          vizinhos
   aspiração         modificadas


   Regras de
    escolhas       Escolher melhor               Atualizar estruturas   Curto e longo
modificadas para        vizinho                      de memória              prazo
diversificação e
 intensificação


  Recomeçar            Executar
                                                  Atualizar melhor
Religar caminhos    procedimentos
                                                      solução
    Oscilação       especializados
   estratégica
Código
k := 1.
generate initial solution
WHILE the stopping condition is not met DO
    Identify N(s). (Neighbourhood set)
    Identify T(s,k). (Tabu set)
    Identify A(s,k). (Aspirant set)
    Choose the best s‘ |  N(s,k) = {N(s) - T(s,k)}+A(s,k).
    Memorize s’ if it improves the previous best known solution
    s := s’.
    k := k+1.
END WHILE
Memória a curto prazo



O principal objetivo da memória a curto prazo é evitar
movimentos reversos e ciclos
Exemplo 1

Após um movimento que muda o valor de xi de 0 para
1, gostariamos que o valor de xi não volte a ser 0
numa próxima iteração
    Atributo a recordar: i
    Regra de ativação tabu: move(xi←0) é tabu se i é
    tabu-ativo
Exemplo 2

Após um movimento que muda as posições dos
elementos i e j, gostariamos que na próxima iteração
os valores de i e j não mudassem novamente
    Atributo a recordar: i e j
    Regra de ativação tabu: move(i j) é tabu se
    ambos i e j são tabu-ativos
Tabu, or not tabu, that is the
question.
 Somente movimentos podem ser tabu. Atributos não
 são tabu, somente podem ser tabu-ativos
 Um movimento pode ser tabu se conter um ou mais
 atributos tabu-ativos
 A classificação de um movimento tabu (tabu ou não
 tabu) é determinada pela regra de ativação
Movimento


 O movimento         Sim    O movimento
contém atributos
                              é tabu?
  tabu-ativos?
                                     Sim
                   Não
        Não                 O movimento
                           satisfaz o critério
                            de aspiração?
   Movimento         Sim
                                     Não
   permitido
                             Movimento
                            não permitido
Flexidade de busca

O número de movimentos permitidos na vizinhança da
solução corrente depende de:
  Tipo de movimento
  Regras de ativação tabu
  Número de movimentos permitidos
  Critério de aspiração
Número de movimentos
permitidos
Estático
  O número de movimentos (TabuTenure) é fixo e se
  mantém durante toda a busca
  Os atributos se mantém tabu-ativos pelo mesmo
  número de iterações
Dinâmico
  O valor do TabuTenure não é constante durante a
  busca
  A duração dos atributos também varia
Critério de aspiração

       Por objetivo
          Um movimento tabu se torna permissível se
          possibilitar uma solução melhor do que um valor
          aspirado
       Por direção da busca
          Um movimento tabu se torna permissível se a
          direção da busca (melhorando ou não) não se altera

O critério de aspiração permite aceitar uma solução baseado em sua qualidade, mesmo que tal
                            solução faça movimentos da lista tabu.
Lista de candidatos


 São usados para reduzir o número de soluções
 examinadas em um determinada iteração
 Elas isolam regiões da vizinhança contendo
 movimentos que se aproximam de atributos desejáveis
Problema das n-Rainhas
Consiste em colocar rainhas em um tabuleiro de
xadrez, onde elas só são capazes de executar os seus
movimentos tradicionais de modo que elas não
consigam capturar umas as outras
Ou seja, nenhuma rainha pode estar na mesma linha,
coluna ou diagonal da outra
Uma simplificação do problema á chamada de
problema das 8 rainhas, onde são usadas 8 rainhas no
tabuleiro
Problema das n-Rainhas

É um problema computacionalmente muito caro de se
resolver
São possíveis 4.426.265.368 (64!/(56!8!)) com oito
rainhas no tabuleiro, mas apenas 92 soluções existem
nesse cenário (12 únicas)
Diversas heurísticas existem para que esse problema
torne-se computacionalmente viável, uma delas é a
busca tabu
Algoritmo
n-Rainhas

Más contenido relacionado

La actualidad más candente

Pesquisa operacional 1
Pesquisa operacional 1Pesquisa operacional 1
Pesquisa operacional 1Erique Neto
 
Administração de Operações - ExercíCios Em Sala (Metodos De Definicao Para Lo...
Administração de Operações - ExercíCios Em Sala (Metodos De Definicao Para Lo...Administração de Operações - ExercíCios Em Sala (Metodos De Definicao Para Lo...
Administração de Operações - ExercíCios Em Sala (Metodos De Definicao Para Lo...WeNova Consulting
 
Séries fourier cap_1 Funções Periódicas
Séries fourier cap_1 Funções PeriódicasSéries fourier cap_1 Funções Periódicas
Séries fourier cap_1 Funções PeriódicasCiro Marcus
 
Outros testes não-paramétricos
Outros testes não-paramétricosOutros testes não-paramétricos
Outros testes não-paramétricosguest422f98
 
Aula 3 testes de hipóteses e anova
Aula 3   testes de hipóteses e anovaAula 3   testes de hipóteses e anova
Aula 3 testes de hipóteses e anovaRodrigo Rodrigues
 
Kanban, o Método - Melhorando seu fluxo de trabalho de forma realmente eficiente
Kanban, o Método - Melhorando seu fluxo de trabalho de forma realmente eficienteKanban, o Método - Melhorando seu fluxo de trabalho de forma realmente eficiente
Kanban, o Método - Melhorando seu fluxo de trabalho de forma realmente eficientethiagodacosta
 
Gestão da Produção e logística Projeto da Capacidade Produtiva
Gestão da Produção e logística   Projeto da Capacidade ProdutivaGestão da Produção e logística   Projeto da Capacidade Produtiva
Gestão da Produção e logística Projeto da Capacidade ProdutivaWilian Gatti Jr
 

La actualidad más candente (20)

Algoritmos gulosos
Algoritmos gulososAlgoritmos gulosos
Algoritmos gulosos
 
Pesquisa operacional 1
Pesquisa operacional 1Pesquisa operacional 1
Pesquisa operacional 1
 
Administração de Operações - ExercíCios Em Sala (Metodos De Definicao Para Lo...
Administração de Operações - ExercíCios Em Sala (Metodos De Definicao Para Lo...Administração de Operações - ExercíCios Em Sala (Metodos De Definicao Para Lo...
Administração de Operações - ExercíCios Em Sala (Metodos De Definicao Para Lo...
 
Auladecromatografiapapelecamadafina
AuladecromatografiapapelecamadafinaAuladecromatografiapapelecamadafina
Auladecromatografiapapelecamadafina
 
Tabela normal
Tabela normalTabela normal
Tabela normal
 
Aula sobre Tabela Hash
Aula sobre Tabela HashAula sobre Tabela Hash
Aula sobre Tabela Hash
 
Séries fourier cap_1 Funções Periódicas
Séries fourier cap_1 Funções PeriódicasSéries fourier cap_1 Funções Periódicas
Séries fourier cap_1 Funções Periódicas
 
Cálculo usando MatLab
Cálculo usando MatLabCálculo usando MatLab
Cálculo usando MatLab
 
Outros testes não-paramétricos
Outros testes não-paramétricosOutros testes não-paramétricos
Outros testes não-paramétricos
 
Programacao linear aula 3 metodo grafico
Programacao linear   aula 3 metodo graficoProgramacao linear   aula 3 metodo grafico
Programacao linear aula 3 metodo grafico
 
Introdução ao R
Introdução ao RIntrodução ao R
Introdução ao R
 
Distúrbio
DistúrbioDistúrbio
Distúrbio
 
Aula 3 testes de hipóteses e anova
Aula 3   testes de hipóteses e anovaAula 3   testes de hipóteses e anova
Aula 3 testes de hipóteses e anova
 
Analise de clusters
Analise de clustersAnalise de clusters
Analise de clusters
 
Aula 5 probabilidade
Aula 5   probabilidadeAula 5   probabilidade
Aula 5 probabilidade
 
Aula 1 sig s e si
Aula 1 sig s e siAula 1 sig s e si
Aula 1 sig s e si
 
Curva abc Samuel R.L. Sobrinho
Curva abc Samuel R.L. SobrinhoCurva abc Samuel R.L. Sobrinho
Curva abc Samuel R.L. Sobrinho
 
Amostragem mauro grisi21092016
Amostragem mauro grisi21092016Amostragem mauro grisi21092016
Amostragem mauro grisi21092016
 
Kanban, o Método - Melhorando seu fluxo de trabalho de forma realmente eficiente
Kanban, o Método - Melhorando seu fluxo de trabalho de forma realmente eficienteKanban, o Método - Melhorando seu fluxo de trabalho de forma realmente eficiente
Kanban, o Método - Melhorando seu fluxo de trabalho de forma realmente eficiente
 
Gestão da Produção e logística Projeto da Capacidade Produtiva
Gestão da Produção e logística   Projeto da Capacidade ProdutivaGestão da Produção e logística   Projeto da Capacidade Produtiva
Gestão da Produção e logística Projeto da Capacidade Produtiva
 

Destacado

Aplicações de Inteligência Artificial em Rádios Cognitivos
Aplicações de Inteligência Artificial em Rádios CognitivosAplicações de Inteligência Artificial em Rádios Cognitivos
Aplicações de Inteligência Artificial em Rádios CognitivosRamon Mayor Martins
 
Simulação e Otimização
Simulação e OtimizaçãoSimulação e Otimização
Simulação e OtimizaçãoSimulação
 
Aplicação Algorítimo Genético
Aplicação Algorítimo GenéticoAplicação Algorítimo Genético
Aplicação Algorítimo GenéticoRodrigo Romais
 
Trabalhando com aplicações qt no net beans
Trabalhando com aplicações qt no net beansTrabalhando com aplicações qt no net beans
Trabalhando com aplicações qt no net beansValdomiro Morais
 
QTestLib: Criando unit tests inteligentes para projetos baseados em Qt
QTestLib: Criando unit tests inteligentes para projetos baseados em QtQTestLib: Criando unit tests inteligentes para projetos baseados em Qt
QTestLib: Criando unit tests inteligentes para projetos baseados em QtBruno Abinader
 
Qt tchelinux-2010
Qt tchelinux-2010Qt tchelinux-2010
Qt tchelinux-2010Wagner Reck
 
METAHEURÍSTICA GRASP APLICADA AO PROBLEMA DO SEQUENCIAMENTO DE TAREFAS
METAHEURÍSTICA GRASP APLICADA AO PROBLEMA DO SEQUENCIAMENTO DE TAREFASMETAHEURÍSTICA GRASP APLICADA AO PROBLEMA DO SEQUENCIAMENTO DE TAREFAS
METAHEURÍSTICA GRASP APLICADA AO PROBLEMA DO SEQUENCIAMENTO DE TAREFASJoao Gonçalves
 
Curso avançado de c++ em portugues
Curso avançado de c++ em portuguesCurso avançado de c++ em portugues
Curso avançado de c++ em portuguesLaura
 
Heurística, Principios e Usabilidade na web
Heurística, Principios e Usabilidade na webHeurística, Principios e Usabilidade na web
Heurística, Principios e Usabilidade na webDaniel Brandão
 

Destacado (20)

Rqt3
Rqt3Rqt3
Rqt3
 
Aplicações de Inteligência Artificial em Rádios Cognitivos
Aplicações de Inteligência Artificial em Rádios CognitivosAplicações de Inteligência Artificial em Rádios Cognitivos
Aplicações de Inteligência Artificial em Rádios Cognitivos
 
Simulação e Otimização
Simulação e OtimizaçãoSimulação e Otimização
Simulação e Otimização
 
Introdução ao Qt
Introdução ao QtIntrodução ao Qt
Introdução ao Qt
 
QtQuick - WSL II
QtQuick - WSL IIQtQuick - WSL II
QtQuick - WSL II
 
Tutorial api qt
Tutorial api qtTutorial api qt
Tutorial api qt
 
Revista qt 4
Revista qt 4Revista qt 4
Revista qt 4
 
Aplicação Algorítimo Genético
Aplicação Algorítimo GenéticoAplicação Algorítimo Genético
Aplicação Algorítimo Genético
 
Rqt2
Rqt2Rqt2
Rqt2
 
Trabalhando com aplicações qt no net beans
Trabalhando com aplicações qt no net beansTrabalhando com aplicações qt no net beans
Trabalhando com aplicações qt no net beans
 
QTestLib: Criando unit tests inteligentes para projetos baseados em Qt
QTestLib: Criando unit tests inteligentes para projetos baseados em QtQTestLib: Criando unit tests inteligentes para projetos baseados em Qt
QTestLib: Criando unit tests inteligentes para projetos baseados em Qt
 
Qt tchelinux-2010
Qt tchelinux-2010Qt tchelinux-2010
Qt tchelinux-2010
 
QtQuick
QtQuickQtQuick
QtQuick
 
Introdução ao QML
Introdução ao QMLIntrodução ao QML
Introdução ao QML
 
METAHEURÍSTICA GRASP APLICADA AO PROBLEMA DO SEQUENCIAMENTO DE TAREFAS
METAHEURÍSTICA GRASP APLICADA AO PROBLEMA DO SEQUENCIAMENTO DE TAREFASMETAHEURÍSTICA GRASP APLICADA AO PROBLEMA DO SEQUENCIAMENTO DE TAREFAS
METAHEURÍSTICA GRASP APLICADA AO PROBLEMA DO SEQUENCIAMENTO DE TAREFAS
 
Apostila ferramentas QT
Apostila ferramentas QTApostila ferramentas QT
Apostila ferramentas QT
 
Curso avançado de c++ em portugues
Curso avançado de c++ em portuguesCurso avançado de c++ em portugues
Curso avançado de c++ em portugues
 
Heurística, Principios e Usabilidade na web
Heurística, Principios e Usabilidade na webHeurística, Principios e Usabilidade na web
Heurística, Principios e Usabilidade na web
 
Jogos em Qt
Jogos em QtJogos em Qt
Jogos em Qt
 
Acordes para teclado
Acordes para tecladoAcordes para teclado
Acordes para teclado
 

Más de iaudesc

Data Mining - Clustering
Data Mining - ClusteringData Mining - Clustering
Data Mining - Clusteringiaudesc
 
Algoritmo_ID3_e_C.45_Gilcimar
Algoritmo_ID3_e_C.45_GilcimarAlgoritmo_ID3_e_C.45_Gilcimar
Algoritmo_ID3_e_C.45_Gilcimariaudesc
 
Seminario fuzzy
Seminario fuzzySeminario fuzzy
Seminario fuzzyiaudesc
 
Algorítimos Genéticos
Algorítimos GenéticosAlgorítimos Genéticos
Algorítimos Genéticosiaudesc
 
Autômatos celulares
Autômatos celularesAutômatos celulares
Autômatos celularesiaudesc
 
Vida artificial
Vida artificialVida artificial
Vida artificialiaudesc
 
RNA - Redes neurais artificiais
RNA - Redes neurais artificiaisRNA - Redes neurais artificiais
RNA - Redes neurais artificiaisiaudesc
 
Representação do conhecimento (rc)
Representação do conhecimento (rc)Representação do conhecimento (rc)
Representação do conhecimento (rc)iaudesc
 
Algoritmos de jogos
Algoritmos de jogosAlgoritmos de jogos
Algoritmos de jogosiaudesc
 
Programação Genética
Programação GenéticaProgramação Genética
Programação Genéticaiaudesc
 
Seminário redes bayesianas
Seminário redes bayesianasSeminário redes bayesianas
Seminário redes bayesianasiaudesc
 
Solvers and Applications with CP
Solvers and Applications with CPSolvers and Applications with CP
Solvers and Applications with CPiaudesc
 

Más de iaudesc (12)

Data Mining - Clustering
Data Mining - ClusteringData Mining - Clustering
Data Mining - Clustering
 
Algoritmo_ID3_e_C.45_Gilcimar
Algoritmo_ID3_e_C.45_GilcimarAlgoritmo_ID3_e_C.45_Gilcimar
Algoritmo_ID3_e_C.45_Gilcimar
 
Seminario fuzzy
Seminario fuzzySeminario fuzzy
Seminario fuzzy
 
Algorítimos Genéticos
Algorítimos GenéticosAlgorítimos Genéticos
Algorítimos Genéticos
 
Autômatos celulares
Autômatos celularesAutômatos celulares
Autômatos celulares
 
Vida artificial
Vida artificialVida artificial
Vida artificial
 
RNA - Redes neurais artificiais
RNA - Redes neurais artificiaisRNA - Redes neurais artificiais
RNA - Redes neurais artificiais
 
Representação do conhecimento (rc)
Representação do conhecimento (rc)Representação do conhecimento (rc)
Representação do conhecimento (rc)
 
Algoritmos de jogos
Algoritmos de jogosAlgoritmos de jogos
Algoritmos de jogos
 
Programação Genética
Programação GenéticaProgramação Genética
Programação Genética
 
Seminário redes bayesianas
Seminário redes bayesianasSeminário redes bayesianas
Seminário redes bayesianas
 
Solvers and Applications with CP
Solvers and Applications with CPSolvers and Applications with CP
Solvers and Applications with CP
 

Último

matematica aula didatica prática e tecni
matematica aula didatica prática e tecnimatematica aula didatica prática e tecni
matematica aula didatica prática e tecniCleidianeCarvalhoPer
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteVanessaCavalcante37
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...IsabelPereira2010
 
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfGEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfRavenaSales1
 
atividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfatividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfLuizaAbaAba
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfHELENO FAVACHO
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxLuizHenriquedeAlmeid6
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...Rosalina Simão Nunes
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfWagnerCamposCEA
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMHELENO FAVACHO
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxSlide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxedelon1
 
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSOLeloIurk1
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfTutor de matemática Ícaro
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfHELENO FAVACHO
 
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasJogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasSocorro Machado
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfcomercial400681
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...azulassessoria9
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 

Último (20)

matematica aula didatica prática e tecni
matematica aula didatica prática e tecnimatematica aula didatica prática e tecni
matematica aula didatica prática e tecni
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfGEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
 
atividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfatividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdf
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxSlide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
 
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO
2° ANO - ENSINO FUNDAMENTAL ENSINO RELIGIOSO
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
 
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasJogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 

Busca Tabu e Metaheurísticas

  • 2. Roteiro Algoritmos de busca Funcionamento Heurísticas Código Metaheurísticas Problema das n-Rainhas Busca local Execução do TSM Busca tabu Conceitos básicos
  • 3. Algoritmos de busca Dois tipos Força bruta Heurística Vantagens e desvantagens Busca em listas Busca em árvores Busca em grafos
  • 4. Heurísticas em algoritmos de buscas As heurísticas são funções usadas como alternativas em algoritmos de busca Visam diminuir o tempo computacional de uma busca Nem sempre apresentam uma solução ótima O trabalho de escolher uma heurística adequada para um problema geralmente é feito pela IA
  • 5. Tipos de heurísticas Heurística de construção: uma ou mais soluções são construídas elemento a elemento, baseando-se em critérios até que se encontre a solução Heurísticas de busca em vizinhança: parte de uma solução possível e tenta melhorar a mesma através de trocas, remoções ou inserções, até que seja atingido algum critério (geralmente uma solução ideal) Heurísticas sistemáticas: a árvore de espaço de soluções é percorrida sob critérios de ramificação e corte da mesma
  • 6. Tipos de heurísticas Heurísticas híbridas: resulta da combinação de uma ou mais heurísticas, de tipos diferentes Metaheurísticas: o tipo mais sofisticado, consiste de uma heurística simples que é analisada por um procedimento que explora o problema e seu espaço de soluções
  • 7. Exemplos de uso de heurísticas Busca de melhor caminho em um grafo Busca de virus Desktops semânticos
  • 8. Metaheurística Geralmente utilizada quando não se conhece um algoritmo eficiente para resolver o problema São usadas para melhorar os resultados obtidos por funções heurísticas “Evoluem” com o tempo, aprendendo sobre o que foi feito anteriormente de maneira a melhorar as próximas soluções Termo cunhado por Fred Glover, em 1986
  • 9. Busca local É também considerada uma metaheurística Busca uma solução ótima dentro de um conjunto de soluções possíveis (o espaço de busca) Parte de uma solução candidata inicial para a uma solução vizinha, i.e. vértices vizinhos em um grafo Geralmente, cada solução candidata tem mais de uma solução vizinha. A escolha de qual será a próxima deve ser feita tomando em consideração apenas a vizinhança da solução candidata atual, por isso é chamada de busca local
  • 10. Busca local É iterativa, métodos para encerrar a busca podem involver o tempo de execução ou um certo número de iterações sem apresentar melhora na solução Considerada um algortimo de busca incompleto uma vez que pode encerrar sem ter encontrado uma solução ótima Na prática é pouco provável que a solução encontrada em pouco tempo seja próxima da ótima, por isso foram feitas várias tentativas de melhorar o algortimo, resultando por exemplo na busca tabu
  • 11. Busca tabu Um algoritmo de busca baseado em metaheurística Um método de otimização matemática, da classe dos métodos de pesquisa local Melhora os métodos de pesquisa local usando estruturas de memória
  • 12. Busca tabu Muito usada nas telecomunicações e em otimização de trajetórias Estudada principalmente no ramo da IA Surgiu na década de 70 Fred Glover formalizou sua estrutura também em 1986
  • 13. Busca tabu É uma estratégia para resolver problemas de otimização combinatorial as quais a aplicação abrange da teoria de grafos e conjuntos de matróides à problemas de programação linear gerais, puros e mistos. É um procedimento adaptativo com a habilidade de fazer uso de muitos outros métodos, como algoritmos de programação linear e heurísticas especializadas, que são dirigidas para superar as limitações da otimização local. (Glover, 1988)
  • 14. Conceitos básicos Solução Vizinhança Inicial Original Corrente Modificada (reduzida ou espandida) Melhor Tabu Movimento Status Atributos Regra de ativação Valores
  • 15. Funcionamento Busca possíveis soluções a partir de um ponto conhecido Caso seja uma solução possível, marca o ponto como tabu para que ele não seja visitado repetidamente Para que todos os pontos sejam visitados, ao contrário da busca local, a busca tabu modifica a estrutura de vizinhos a cada solução
  • 16. Funcionamento Busca o ótimo local, mesmo que seja necessário fazer movimentos que não melhorem a solução em relação ao passo atual Mantém uma lista de soluções já visitadas, chamada de lista tabu para evitar que elas sejam revisitadas
  • 17. Procedimento Gerar solução heurístico inicial e inicializar PARAR estruturas de memória Restrições tabu Não Lista de Construir candidatos estruturas de Sim Mais iterações? Critério de vizinhos aspiração modificadas Regras de escolhas Escolher melhor Atualizar estruturas Curto e longo modificadas para vizinho de memória prazo diversificação e intensificação Recomeçar Executar Atualizar melhor Religar caminhos procedimentos solução Oscilação especializados estratégica
  • 18. Código k := 1. generate initial solution WHILE the stopping condition is not met DO     Identify N(s). (Neighbourhood set)     Identify T(s,k). (Tabu set)     Identify A(s,k). (Aspirant set)     Choose the best s‘ |  N(s,k) = {N(s) - T(s,k)}+A(s,k).     Memorize s’ if it improves the previous best known solution     s := s’.     k := k+1. END WHILE
  • 19. Memória a curto prazo O principal objetivo da memória a curto prazo é evitar movimentos reversos e ciclos
  • 20. Exemplo 1 Após um movimento que muda o valor de xi de 0 para 1, gostariamos que o valor de xi não volte a ser 0 numa próxima iteração Atributo a recordar: i Regra de ativação tabu: move(xi←0) é tabu se i é tabu-ativo
  • 21. Exemplo 2 Após um movimento que muda as posições dos elementos i e j, gostariamos que na próxima iteração os valores de i e j não mudassem novamente Atributo a recordar: i e j Regra de ativação tabu: move(i j) é tabu se ambos i e j são tabu-ativos
  • 22. Tabu, or not tabu, that is the question. Somente movimentos podem ser tabu. Atributos não são tabu, somente podem ser tabu-ativos Um movimento pode ser tabu se conter um ou mais atributos tabu-ativos A classificação de um movimento tabu (tabu ou não tabu) é determinada pela regra de ativação
  • 23. Movimento O movimento Sim O movimento contém atributos é tabu? tabu-ativos? Sim Não Não O movimento satisfaz o critério de aspiração? Movimento Sim Não permitido Movimento não permitido
  • 24. Flexidade de busca O número de movimentos permitidos na vizinhança da solução corrente depende de: Tipo de movimento Regras de ativação tabu Número de movimentos permitidos Critério de aspiração
  • 25. Número de movimentos permitidos Estático O número de movimentos (TabuTenure) é fixo e se mantém durante toda a busca Os atributos se mantém tabu-ativos pelo mesmo número de iterações Dinâmico O valor do TabuTenure não é constante durante a busca A duração dos atributos também varia
  • 26. Critério de aspiração Por objetivo Um movimento tabu se torna permissível se possibilitar uma solução melhor do que um valor aspirado Por direção da busca Um movimento tabu se torna permissível se a direção da busca (melhorando ou não) não se altera O critério de aspiração permite aceitar uma solução baseado em sua qualidade, mesmo que tal solução faça movimentos da lista tabu.
  • 27. Lista de candidatos São usados para reduzir o número de soluções examinadas em um determinada iteração Elas isolam regiões da vizinhança contendo movimentos que se aproximam de atributos desejáveis
  • 28. Problema das n-Rainhas Consiste em colocar rainhas em um tabuleiro de xadrez, onde elas só são capazes de executar os seus movimentos tradicionais de modo que elas não consigam capturar umas as outras Ou seja, nenhuma rainha pode estar na mesma linha, coluna ou diagonal da outra Uma simplificação do problema á chamada de problema das 8 rainhas, onde são usadas 8 rainhas no tabuleiro
  • 29.
  • 30. Problema das n-Rainhas É um problema computacionalmente muito caro de se resolver São possíveis 4.426.265.368 (64!/(56!8!)) com oito rainhas no tabuleiro, mas apenas 92 soluções existem nesse cenário (12 únicas) Diversas heurísticas existem para que esse problema torne-se computacionalmente viável, uma delas é a busca tabu