SlideShare uma empresa Scribd logo
1 de 35
CAP-375

  INTELIGÊNCIA
COMPUTACIONAL E
  APLICAÇÕES
              Eduardo Fávero Pacheco da Luz
                       José Carlos Becceneri

                                       2012
Definição “zero” de IC
   Bezdek introduziu o termo em 1994:

    ◦ “... A system is computationally intelligent when it: deals
      with only numerical (low-level) data, has a pattern
      recognition component, does not use knowledge in the AI
      sense; and additionally when it (begins to) exhibit (i)
      computational adaptivity; (ii) computational fault tolerance;
      (iii) speed approaching human-like turnaround, and (iv)
      error rates that approximate human performance.”

       Bezdek, J.C., What is computational intelligence? In: Zurada, J.; Marks, R.;
        Robinson, C. (eds.), “Computational intelligence: Imitating life”. Piscataway:
        IEEE Press, 1994, pp 1-12.
Definição alternativa de IC
   Fogel sumarizou (1995):

    ◦ “...These technologies of neural, fuzzy, and
      evolutionary systems were brought together under the
      rubric of Computational Intelligence, a relatively new
      term offered to generally describe methods of
      computation that can be used to adapt solutions to
      new problems and do not rely on explicit human
      knowledge.”

       Fogel, D. Review of Computational intelligence: Imitating life. IEEE Trans
        Neural Netw, 1995, 6, pp 1562-1565.
Definição sumarizada de IC
   Pal e Mudi (2003):

    ◦ “... CI tools should have sufficient ability to solve
      practical problems. It should be able to learn from
      experience and be capable of self-organizing.
      Consequently, it is reasonable to assume that the
      major constituents of a CI system are artificial neural
      networks, fuzzy sets, rough sets, evolutionary
      computation, and immunocomputing.”

       Pal, N. R.; Mudi, R. K., Computational Intelligence for Decision-Making
        Systems, Int Jour Int Syst, 18, 2003, pp 483-486
Inteligência Computacional

            Computação
            Evolucionária



      Teoria dos
                       Redes
      Conjuntos
                       Neurais
        Fuzzy
Soft computing
   Denominação alternativa para Inteligência
    Computacional:

    ◦ Um consórcio de diferentes ferramentas
      computacionais que exploram a nossa
      tolerância com a imprecisão e incerteza para
      alcançar tratabilidade, robustez e baixo custo.
Motivação

                       Problemas
        Situações



                    Decisões




              Solução
               ótima
Introdução
   Problemas de otimização

    ◦ Achar a melhor solução (combinação dentre um
      conjunto de variáveis)
                          s* ∈ S
    ◦ Função objetivo ou função custo
       f(s) = s2+s
       f(s1,s2,s3) = s12+|s2|+s3
      f(p,q)=√((px–qx)2+(py–qy)2)

     Minimizar (↓)           ou     Maximizar (↑)
     f(s*) f(s), s ∈ S              f(s*) f(s), s ∈ S
Função Objetivo
   Problemas de otimização consistem em achar a
    melhor combinação dentre um conjunto de
    variáveis, para maximizar ou minimizar uma
    função, geralmente chamada de função objetivo
    ou função custo.

   Outros conceitos podem ser encontrados em:
    ◦ Silva Neto, A. J. e Becceneri, J. C. (2009). Técnicas de
      inteligência computacional inspiradas na natureza:
      aplicação em problemas inversos em transferência
      radiativa. Notas em Matemática Aplicada. SBMAC, São
      Carlos.
Introdução
   Otimização contínua
    ◦ Valores reais (ou contínuos):      x∈ℝ
      Ex.: (3.2, 0.5)

   Otimização combinatória (ou discreta)
    ◦ Valores discretos (ou inteiros):         y∈ℤ
      Ex.: (0, 5)

   Otimização mista
    ◦ Valores inteiros e contínuos: x ∈ ℝ, y ∈ ℤ
      Ex.: (0.8, 2, 4)
Otimização contínua




               http://www.geatbx.com/docu/fcnindex-01.html
Conceitos
O problema do caixeiro viajante (PCV)

Um caixeiro viajante deve visitar n cidades
e retornar à cidade de onde partiu, sendo
que, com exceção da cidade inicial, cada
cidade deve ser visitada apenas uma vez.

O objetivo é otimizar os
custos dessa viagem.
Conceitos
 O problema do caixeiro viajante (PCV)
     Representação em grafos:
Cidades    x       y                Dist.        A    B       C       D
  A        1       1                 A           0   2.236   3.162   5.657
  B        3       2                 B       2.236    0      2.236   3.606
  C        2       4                 C       3.162   2.236    0      3.162
  D        5       5                 D       5.657   3.606   3.162    0

                            2.236
                       A                 B
                           5.657

               3.162                     3.606

                           2.236

                   C                     D
                            3.162
Conceitos
Grafos
   Vide apêndice 2 do arquivo “Parte da tese de
    doutorado Becceneri” (disponibilizado no site da
    disciplina).

    ◦ BECCENERI, J. C. O problema de seqüenciamento de
      padrões para a minimização do número máximo de pilhas
      abertas em ambientes de cortes industriais. 1999. Tese
      (Doutorado em Engenharia Eletrônica e Computação) –
      Instituto Tecnológico de Aeronáutica, São José dos
      Campos, 1999.

       Nas referências bibliográficas da tese, você encontrará outras
        referências para o assunto “Grafo”
Conceitos
Grafos
 Um grafo G = ( V, E ) consiste de um conjunto
  não vazio de elementos V = { v1, v2, ... } chamado
  de vértices e de um outro conjunto de
  elementos E = { e1, e2, ... } chamados de arcos
  (ou ramos ou arestas).
 Cada arco ek é identificado por um par (vi,vj). Se
  este par é orientado, isto é, (vi,vj) (vj,vi) o
  grafo é dito ser orientado; caso contrário, é dito
  ser não orientado.
Conceitos
Grafos
   Um exemplo de grafo representando um PCV com 6 cidades, onde
    os arcos são valorados com o custo da viagem entre os nós que
    eles unem.
                                      2
                          A                       B
                                          1


                              3                       1
                          5                   7
                     10


                                                                          3

                                                          4

                 F

                                                                  5

                                                                              C
             1
                                                              4




             E
                                  6
                                                                      4




                              7



                                                  D
Conceitos
Grafos

   O PCV exemplificado admite 6! (=720)
    soluções viáveis.

    ABCDEFA
    ABCDFEA
     ...              Espaço de Busca
    FEDCBAF
Conceitos
                                                                           O problema do caixeiro viajante (PCV)




Fonte: http://i32.photobucket.com/albums/d10/rostev/flickr/mapa_vale.jpg
Conceitos
                                                                        O problema do caixeiro viajante (PCV)




Fonte: http://wikitravel.org/pt/Vale_do_Para%C3%ADba_(S%C3%A3o_Paulo)
Conceitos
Problemas de otimização
   Com relação ao PCV, queremos otimizar
    a viagem:

    ◦ Minimizar (↓) a distância percorrida
      Função f mede distância
      f(s*) f(s), s ∈ S

    ◦ Maximizar (↑) o lucro da viagem
      Função f avalia o lucro obtido
      f(s*) f(s), s ∈ S
Conceitos
Espaços de buscas

  ◦ Um espaço de busca é um conjunto que
    contém todas as soluções do problema que
    estamos tentando resolver. Sempre
    consideraremos que esse espaço contenha
    apenas soluções viáveis, isto é, aquelas que
    obedecem às restrições do problema.
Conceitos
Espaços de buscas

    Conjunto finito ou infinito enumerável
     que contém todas as soluções viáveis do
     problema

           S


 T
                      N(s): vizinhos de s
                       N(s)={s’∈ S | d(s,s’)   }
Conceitos
Algoritmos
   Um processo sistemático para a resolução de um
    problema.

   Uma sequência finita de instruções bem definidas e não
    ambíguas, cada uma das quais pode ser executada
    mecanicamente num período de tempo finito e com
    uma quantidade de esforço finita.
Conceitos
      Algoritmos

                                                                                                          Classificação


 Implementação                                                               Paradigma                                                     Aplicação                                                Complexidade




                                                                                                                               Busca, ordenação, análise numérica, teoria de grafos, manipulação
                                                                        Divisão e conquista, programação dinâmica, algoritmo
Recursivo ou iterativo, lógico, serial ou paralelo, determinístico ou                                                               de cadeias de texto, geometria computacional, análise                              Constante, logarítmica, log-
                                                                          ganancioso, programação linear, redução, busca e
           não-determinístico, exato ou aproximado                                                                             combinatória, aprendizagem de máquina, criptografia, compressão     linear, linear, quadrática, cúbica, exponencial, polinomial, fatorial
                                                                         enumeração, paradigma heurístico e probabilístico
                                                                                                                                              de dados e interpretação de texto
Conceitos
Algoritmos
   Exatos: garantem encontrar uma solução ótima, porém
    a complexidade do algoritmo é um fator limitante.

         Entrada   Linear   Quadrática     Exponencial
            n       O(n)      O(n2)           O(2n)
            5        5s        25s              32s
           10       10s       1m40s           17m4s
           20       20s       6m40s        12d3h16m16s
           30       30s      15m00s      34a17d13h37m4s
           40       40s      26m00s         35 mil anos
           50       50s      41m40s      36 milhões de anos

           100     1m40s     2h46m40s           
   Aproximados: encontram uma solução sub-ótima, em
    um tempo aceitável.
Conceitos
Algoritmos
   Determinísticos: resolvem o problema com
    decisão exata a cada passo.




   Não-determinísticos (estocásticos ou
    probabilísticos): envolvem um passo aleatório
    no seu processo de busca.
Conceitos
Heurísticas e meta-heurísticas
 Heurística: método “baseado na
  experiência ou julgamento, que parece
  conduzir a uma boa solução de um
  problema, mas que não garante produzir
  uma solução ótima”.
Conceitos
Heurísticas e meta-heurísticas
 Heurística gulosa (greedy heuristic):
  sempre seleciona o menor caminho do
  momento:

          1             1              2            1
     1              2             3             6         7
          2 2           2 2           2 2           2 2
     2          2             1             1             1

           2             2            1              2
     15         13                4             5         8
          2 1           2 2           2 2           2 2
     1          1             2             2             1
           2             1             1             1
     14         12            11            10            9
Conceitos
Heurísticas e meta-heurísticas
 Meta-heurística: ferramenta algorítmica
  geral que pode ser aplicada a diferentes
  problemas de otimização, com
  modificações relativamente pequenas




     PCV                   Outros
Conceitos
Heurísticas e meta-heurísticas


          Exploração (Exploration)
          Diversificação, exploração
          diversificada, busca em largura



           Intensificação (Exploitation)
           Exploração focada, busca em
           profundidade
Conceitos
Heurísticas e meta-heurísticas

   Meta-heurísticas são boas para escapar de
    mínimos/máximos locais
                                   MaxG
       f(x)
                     MaxL




              MinL

                                          MinL

                            MinG
                                                 x
Conceitos
Classificação das meta-heurísticas

               • Inspirados na natureza
Origem         • Não inspirados

               • Algoritmos genéticos
   Natureza    • Redes Neurais
               • Algoritmo de pássaros


   Não da      • Iterated Local Search
   natureza    • Hill climbing
Conceitos
Classificação das meta-heurísticas




 Formigas        Pássaros        Abelhas
             Bio-inspiradas
Conceitos
Classificação das meta-heurísticas


 Método construtivo                   4             2



                                  1            3        1




 Método populacional

                             s1           s2       s3
IC e aplicações: PCV e algoritmos de busca

Mais conteúdo relacionado

Mais procurados

Matematica 1 exercicios gabarito 07
Matematica 1 exercicios gabarito 07Matematica 1 exercicios gabarito 07
Matematica 1 exercicios gabarito 07comentada
 
Artigo Robô móvel lógica Fuzzy
Artigo Robô móvel lógica FuzzyArtigo Robô móvel lógica Fuzzy
Artigo Robô móvel lógica FuzzyTélico Oliveira
 
Medida de risco por Teoria de Valores Extremos
Medida de risco por Teoria de Valores ExtremosMedida de risco por Teoria de Valores Extremos
Medida de risco por Teoria de Valores ExtremosRenato Vicente
 

Mais procurados (9)

Matematica 1 exercicios gabarito 07
Matematica 1 exercicios gabarito 07Matematica 1 exercicios gabarito 07
Matematica 1 exercicios gabarito 07
 
CFD
CFDCFD
CFD
 
Lista de revisão 01
Lista de revisão 01Lista de revisão 01
Lista de revisão 01
 
V@R Não-Linear
V@R Não-LinearV@R Não-Linear
V@R Não-Linear
 
Artigo Robô móvel lógica Fuzzy
Artigo Robô móvel lógica FuzzyArtigo Robô móvel lógica Fuzzy
Artigo Robô móvel lógica Fuzzy
 
Medida de risco por Teoria de Valores Extremos
Medida de risco por Teoria de Valores ExtremosMedida de risco por Teoria de Valores Extremos
Medida de risco por Teoria de Valores Extremos
 
Questesdetecnologia ano2002
Questesdetecnologia ano2002Questesdetecnologia ano2002
Questesdetecnologia ano2002
 
Curso Básico de R
Curso Básico de RCurso Básico de R
Curso Básico de R
 
Pc ep14 2012_2_exponencial e logaritmo
Pc ep14 2012_2_exponencial e logaritmoPc ep14 2012_2_exponencial e logaritmo
Pc ep14 2012_2_exponencial e logaritmo
 

Semelhante a IC e aplicações: PCV e algoritmos de busca

Webinar: Uma introdução a ISA RISC-V e seu ecossistema
Webinar: Uma introdução a ISA RISC-V e seu ecossistemaWebinar: Uma introdução a ISA RISC-V e seu ecossistema
Webinar: Uma introdução a ISA RISC-V e seu ecossistemaEmbarcados
 
Oficina: construção de modelos descritivos e preditivos utilizando R
Oficina: construção de modelos descritivos e preditivos utilizando ROficina: construção de modelos descritivos e preditivos utilizando R
Oficina: construção de modelos descritivos e preditivos utilizando RFabrício Barth
 
[Pereira, IC'2013] Uma nova abordagem para detecção e extracao de paralelismo...
[Pereira, IC'2013] Uma nova abordagem para detecção e extracao de paralelismo...[Pereira, IC'2013] Uma nova abordagem para detecção e extracao de paralelismo...
[Pereira, IC'2013] Uma nova abordagem para detecção e extracao de paralelismo...Marcio Machado Pereira
 
Intro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverIntro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverEduardo Jorge
 
Tutorial Octave Matlab
Tutorial Octave MatlabTutorial Octave Matlab
Tutorial Octave Matlabblogmaxima
 
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...PotiLivre Sobrenome
 
Função Quadrática Zeros, Vérticees.ppt
Função Quadrática Zeros, Vérticees.pptFunção Quadrática Zeros, Vérticees.ppt
Função Quadrática Zeros, Vérticees.pptEmmersonWarleiEmmers
 
FISL14 - Desmontando uma engine de física
FISL14 - Desmontando uma engine de físicaFISL14 - Desmontando uma engine de física
FISL14 - Desmontando uma engine de físicaAdriano Melo
 
EfficientDet__Scalable_and_Efficient_Object_Detection.pdf
EfficientDet__Scalable_and_Efficient_Object_Detection.pdfEfficientDet__Scalable_and_Efficient_Object_Detection.pdf
EfficientDet__Scalable_and_Efficient_Object_Detection.pdfpaulovictor729520
 
Curso de Inverno 2014 - Simuladores de Satélite
Curso de Inverno 2014 - Simuladores de SatéliteCurso de Inverno 2014 - Simuladores de Satélite
Curso de Inverno 2014 - Simuladores de SatéliteChristopher Cerqueira
 

Semelhante a IC e aplicações: PCV e algoritmos de busca (20)

Introdução à otimização convexa.
Introdução à otimização convexa.Introdução à otimização convexa.
Introdução à otimização convexa.
 
Webinar: Uma introdução a ISA RISC-V e seu ecossistema
Webinar: Uma introdução a ISA RISC-V e seu ecossistemaWebinar: Uma introdução a ISA RISC-V e seu ecossistema
Webinar: Uma introdução a ISA RISC-V e seu ecossistema
 
Oficina: construção de modelos descritivos e preditivos utilizando R
Oficina: construção de modelos descritivos e preditivos utilizando ROficina: construção de modelos descritivos e preditivos utilizando R
Oficina: construção de modelos descritivos e preditivos utilizando R
 
[Pereira, IC'2013] Uma nova abordagem para detecção e extracao de paralelismo...
[Pereira, IC'2013] Uma nova abordagem para detecção e extracao de paralelismo...[Pereira, IC'2013] Uma nova abordagem para detecção e extracao de paralelismo...
[Pereira, IC'2013] Uma nova abordagem para detecção e extracao de paralelismo...
 
Intro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverIntro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserver
 
Vetor
VetorVetor
Vetor
 
NBI.pptx
NBI.pptxNBI.pptx
NBI.pptx
 
Computacao cientifica
Computacao cientificaComputacao cientifica
Computacao cientifica
 
Floyd-Warshall
Floyd-WarshallFloyd-Warshall
Floyd-Warshall
 
mech-course.pdf
mech-course.pdfmech-course.pdf
mech-course.pdf
 
Tutorial Octave Matlab
Tutorial Octave MatlabTutorial Octave Matlab
Tutorial Octave Matlab
 
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
Processamento digital de imagens com gnu octave jotacisio araujo oliveira fli...
 
Função Quadrática Zeros, Vérticees.ppt
Função Quadrática Zeros, Vérticees.pptFunção Quadrática Zeros, Vérticees.ppt
Função Quadrática Zeros, Vérticees.ppt
 
FISL14 - Desmontando uma engine de física
FISL14 - Desmontando uma engine de físicaFISL14 - Desmontando uma engine de física
FISL14 - Desmontando uma engine de física
 
Curso de Node JS Básico
Curso de Node JS BásicoCurso de Node JS Básico
Curso de Node JS Básico
 
EfficientDet__Scalable_and_Efficient_Object_Detection.pdf
EfficientDet__Scalable_and_Efficient_Object_Detection.pdfEfficientDet__Scalable_and_Efficient_Object_Detection.pdf
EfficientDet__Scalable_and_Efficient_Object_Detection.pdf
 
Curso de Inverno 2014 - Simuladores de Satélite
Curso de Inverno 2014 - Simuladores de SatéliteCurso de Inverno 2014 - Simuladores de Satélite
Curso de Inverno 2014 - Simuladores de Satélite
 
Cadernodequestes ano2010
Cadernodequestes ano2010Cadernodequestes ano2010
Cadernodequestes ano2010
 
Cadernodequestes ano2008
Cadernodequestes ano2008Cadernodequestes ano2008
Cadernodequestes ano2008
 
Inpe
InpeInpe
Inpe
 

IC e aplicações: PCV e algoritmos de busca

  • 1. CAP-375 INTELIGÊNCIA COMPUTACIONAL E APLICAÇÕES Eduardo Fávero Pacheco da Luz José Carlos Becceneri 2012
  • 2. Definição “zero” de IC  Bezdek introduziu o termo em 1994: ◦ “... A system is computationally intelligent when it: deals with only numerical (low-level) data, has a pattern recognition component, does not use knowledge in the AI sense; and additionally when it (begins to) exhibit (i) computational adaptivity; (ii) computational fault tolerance; (iii) speed approaching human-like turnaround, and (iv) error rates that approximate human performance.”  Bezdek, J.C., What is computational intelligence? In: Zurada, J.; Marks, R.; Robinson, C. (eds.), “Computational intelligence: Imitating life”. Piscataway: IEEE Press, 1994, pp 1-12.
  • 3. Definição alternativa de IC  Fogel sumarizou (1995): ◦ “...These technologies of neural, fuzzy, and evolutionary systems were brought together under the rubric of Computational Intelligence, a relatively new term offered to generally describe methods of computation that can be used to adapt solutions to new problems and do not rely on explicit human knowledge.”  Fogel, D. Review of Computational intelligence: Imitating life. IEEE Trans Neural Netw, 1995, 6, pp 1562-1565.
  • 4. Definição sumarizada de IC  Pal e Mudi (2003): ◦ “... CI tools should have sufficient ability to solve practical problems. It should be able to learn from experience and be capable of self-organizing. Consequently, it is reasonable to assume that the major constituents of a CI system are artificial neural networks, fuzzy sets, rough sets, evolutionary computation, and immunocomputing.”  Pal, N. R.; Mudi, R. K., Computational Intelligence for Decision-Making Systems, Int Jour Int Syst, 18, 2003, pp 483-486
  • 5. Inteligência Computacional Computação Evolucionária Teoria dos Redes Conjuntos Neurais Fuzzy
  • 6. Soft computing  Denominação alternativa para Inteligência Computacional: ◦ Um consórcio de diferentes ferramentas computacionais que exploram a nossa tolerância com a imprecisão e incerteza para alcançar tratabilidade, robustez e baixo custo.
  • 7. Motivação Problemas Situações Decisões Solução ótima
  • 8. Introdução  Problemas de otimização ◦ Achar a melhor solução (combinação dentre um conjunto de variáveis) s* ∈ S ◦ Função objetivo ou função custo f(s) = s2+s f(s1,s2,s3) = s12+|s2|+s3 f(p,q)=√((px–qx)2+(py–qy)2) Minimizar (↓) ou Maximizar (↑) f(s*) f(s), s ∈ S f(s*) f(s), s ∈ S
  • 9. Função Objetivo  Problemas de otimização consistem em achar a melhor combinação dentre um conjunto de variáveis, para maximizar ou minimizar uma função, geralmente chamada de função objetivo ou função custo.  Outros conceitos podem ser encontrados em: ◦ Silva Neto, A. J. e Becceneri, J. C. (2009). Técnicas de inteligência computacional inspiradas na natureza: aplicação em problemas inversos em transferência radiativa. Notas em Matemática Aplicada. SBMAC, São Carlos.
  • 10. Introdução  Otimização contínua ◦ Valores reais (ou contínuos): x∈ℝ Ex.: (3.2, 0.5)  Otimização combinatória (ou discreta) ◦ Valores discretos (ou inteiros): y∈ℤ Ex.: (0, 5)  Otimização mista ◦ Valores inteiros e contínuos: x ∈ ℝ, y ∈ ℤ Ex.: (0.8, 2, 4)
  • 11. Otimização contínua http://www.geatbx.com/docu/fcnindex-01.html
  • 12. Conceitos O problema do caixeiro viajante (PCV) Um caixeiro viajante deve visitar n cidades e retornar à cidade de onde partiu, sendo que, com exceção da cidade inicial, cada cidade deve ser visitada apenas uma vez. O objetivo é otimizar os custos dessa viagem.
  • 13. Conceitos O problema do caixeiro viajante (PCV)  Representação em grafos: Cidades x y Dist. A B C D A 1 1 A 0 2.236 3.162 5.657 B 3 2 B 2.236 0 2.236 3.606 C 2 4 C 3.162 2.236 0 3.162 D 5 5 D 5.657 3.606 3.162 0 2.236 A B 5.657 3.162 3.606 2.236 C D 3.162
  • 14. Conceitos Grafos  Vide apêndice 2 do arquivo “Parte da tese de doutorado Becceneri” (disponibilizado no site da disciplina). ◦ BECCENERI, J. C. O problema de seqüenciamento de padrões para a minimização do número máximo de pilhas abertas em ambientes de cortes industriais. 1999. Tese (Doutorado em Engenharia Eletrônica e Computação) – Instituto Tecnológico de Aeronáutica, São José dos Campos, 1999.  Nas referências bibliográficas da tese, você encontrará outras referências para o assunto “Grafo”
  • 15. Conceitos Grafos  Um grafo G = ( V, E ) consiste de um conjunto não vazio de elementos V = { v1, v2, ... } chamado de vértices e de um outro conjunto de elementos E = { e1, e2, ... } chamados de arcos (ou ramos ou arestas).  Cada arco ek é identificado por um par (vi,vj). Se este par é orientado, isto é, (vi,vj) (vj,vi) o grafo é dito ser orientado; caso contrário, é dito ser não orientado.
  • 16. Conceitos Grafos  Um exemplo de grafo representando um PCV com 6 cidades, onde os arcos são valorados com o custo da viagem entre os nós que eles unem. 2 A B 1 3 1 5 7 10 3 4 F 5 C 1 4 E 6 4 7 D
  • 17. Conceitos Grafos  O PCV exemplificado admite 6! (=720) soluções viáveis. ABCDEFA ABCDFEA ... Espaço de Busca FEDCBAF
  • 18. Conceitos O problema do caixeiro viajante (PCV) Fonte: http://i32.photobucket.com/albums/d10/rostev/flickr/mapa_vale.jpg
  • 19. Conceitos O problema do caixeiro viajante (PCV) Fonte: http://wikitravel.org/pt/Vale_do_Para%C3%ADba_(S%C3%A3o_Paulo)
  • 20. Conceitos Problemas de otimização  Com relação ao PCV, queremos otimizar a viagem: ◦ Minimizar (↓) a distância percorrida Função f mede distância f(s*) f(s), s ∈ S ◦ Maximizar (↑) o lucro da viagem Função f avalia o lucro obtido f(s*) f(s), s ∈ S
  • 21. Conceitos Espaços de buscas ◦ Um espaço de busca é um conjunto que contém todas as soluções do problema que estamos tentando resolver. Sempre consideraremos que esse espaço contenha apenas soluções viáveis, isto é, aquelas que obedecem às restrições do problema.
  • 22. Conceitos Espaços de buscas  Conjunto finito ou infinito enumerável que contém todas as soluções viáveis do problema S T  N(s): vizinhos de s N(s)={s’∈ S | d(s,s’) }
  • 23. Conceitos Algoritmos  Um processo sistemático para a resolução de um problema.  Uma sequência finita de instruções bem definidas e não ambíguas, cada uma das quais pode ser executada mecanicamente num período de tempo finito e com uma quantidade de esforço finita.
  • 24. Conceitos Algoritmos Classificação Implementação Paradigma Aplicação Complexidade Busca, ordenação, análise numérica, teoria de grafos, manipulação Divisão e conquista, programação dinâmica, algoritmo Recursivo ou iterativo, lógico, serial ou paralelo, determinístico ou de cadeias de texto, geometria computacional, análise Constante, logarítmica, log- ganancioso, programação linear, redução, busca e não-determinístico, exato ou aproximado combinatória, aprendizagem de máquina, criptografia, compressão linear, linear, quadrática, cúbica, exponencial, polinomial, fatorial enumeração, paradigma heurístico e probabilístico de dados e interpretação de texto
  • 25. Conceitos Algoritmos  Exatos: garantem encontrar uma solução ótima, porém a complexidade do algoritmo é um fator limitante. Entrada Linear Quadrática Exponencial n O(n) O(n2) O(2n) 5 5s 25s 32s 10 10s 1m40s 17m4s 20 20s 6m40s 12d3h16m16s 30 30s 15m00s 34a17d13h37m4s 40 40s 26m00s 35 mil anos 50 50s 41m40s 36 milhões de anos 100 1m40s 2h46m40s   Aproximados: encontram uma solução sub-ótima, em um tempo aceitável.
  • 26. Conceitos Algoritmos  Determinísticos: resolvem o problema com decisão exata a cada passo.  Não-determinísticos (estocásticos ou probabilísticos): envolvem um passo aleatório no seu processo de busca.
  • 27. Conceitos Heurísticas e meta-heurísticas  Heurística: método “baseado na experiência ou julgamento, que parece conduzir a uma boa solução de um problema, mas que não garante produzir uma solução ótima”.
  • 28. Conceitos Heurísticas e meta-heurísticas  Heurística gulosa (greedy heuristic): sempre seleciona o menor caminho do momento: 1 1 2 1 1 2 3 6 7 2 2 2 2 2 2 2 2 2 2 1 1 1 2 2 1 2 15 13 4 5 8 2 1 2 2 2 2 2 2 1 1 2 2 1 2 1 1 1 14 12 11 10 9
  • 29. Conceitos Heurísticas e meta-heurísticas  Meta-heurística: ferramenta algorítmica geral que pode ser aplicada a diferentes problemas de otimização, com modificações relativamente pequenas PCV Outros
  • 30. Conceitos Heurísticas e meta-heurísticas Exploração (Exploration) Diversificação, exploração diversificada, busca em largura Intensificação (Exploitation) Exploração focada, busca em profundidade
  • 31. Conceitos Heurísticas e meta-heurísticas  Meta-heurísticas são boas para escapar de mínimos/máximos locais MaxG f(x) MaxL MinL MinL MinG x
  • 32. Conceitos Classificação das meta-heurísticas • Inspirados na natureza Origem • Não inspirados • Algoritmos genéticos Natureza • Redes Neurais • Algoritmo de pássaros Não da • Iterated Local Search natureza • Hill climbing
  • 33. Conceitos Classificação das meta-heurísticas Formigas Pássaros Abelhas Bio-inspiradas
  • 34. Conceitos Classificação das meta-heurísticas Método construtivo 4 2 1 3 1 Método populacional s1 s2 s3