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
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.
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.
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”.
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
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