Você está na página 1de 30

UNIVERSIDADE PAULISTA - UNIP

INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET


CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Introdução à inteligência artificial


A sobrevivência da espécie humana deve-se principalmente pelas
capacidades mentais que o ser humano vem desenvolvendo ao longo de sua
existência. Em função disso, o entendimento sobre “como o Homem pensa”
tem sido objeto de estudo durante milhares de anos, ou seja, como uma
pequena porção de matéria pode perceber, compreender, prever e manipular
um mundo muito maior e mais complexo que ela própria (Russell e Norvig,
2004). Prof. Eliton Smith, MSc
UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Introdução à inteligência artificial


A Inteligência Computacional (IC), denominada originalmente de Inteligência
Artificial (IA), é uma das ciências mais recentes, tendo surgido logo após a
Segunda Guerra Mundial e tendo seu nome original cunhado em 1956. Por
razões de simplificação, consideraremos indistintas as denominações
“Inteligência Computacional” e “Inteligência Artificial”.
A Inteligência Computacional vai além da perspectiva de compreensão do
pensamento humano, pois também procura construir entidades artificiais
inteligentes.
Prof. Eliton Smith, MSc
UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Introdução à inteligência artificial


Para conhecer o que vem a ser a área da Inteligência Computacional faz-se
necessária uma reflexão sobre o conceito de inteligência. Há diversas definições
e inúmeras discussões filosóficas sobre o que vem a ser este conceito.
Como podemos defini-la? Todos os seres vivos que têm cérebro são, de certa
forma, inteligentes? Ou seria a inteligência um privilégio do ser humano?
Maquinas podem ser inteligentes? A que tipo de inteligência nos referimos?
Como podemos notar, definir inteligência não é tarefa simples nem trivial.
Defina: Inteligência, conhecimento, consciência e sabedoria.
Prof. Eliton Smith, MSc
UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

O que é inteligência?
O que é conhecimento?
O que é consciencia?
O que é sabedoria?

Prof. Eliton Smith, MSc


UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Introdução à inteligência artificial


Podemos citar algumas habilidades que necessariamente envolvem
inteligência:
• Capacidade de raciocínio / dedução / inferência
• Capacidade de aprendizado
• Capacidade de percepção
• Capacidade de evolução e adaptação

Prof. Eliton Smith, MSc


UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Introdução à inteligência artificial


Definição: Inteligência artificial (IA) se refere amplamente a
qualquer comportamento semelhante ao do humano apresentado
por uma máquina ou sistema.
Na forma mais básica da IA, os computadores são programados
para “imitar” o comportamento humano usando dados extensivos
de exemplos anteriores de comportamento similar. Eles podem
variar desde reconhecer diferenças entre objetos, animais, pássaros
até realizar atividades complexas em uma fábrica. Prof. Eliton Smith, MSc
UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Áreas da inteligência artificial


✓ Sistemas especialistas; ✓ Mineração de dados;

✓ Algoritmos de busca; ✓ Visão computacional;

✓ Lógica difusa (Fuzzy); ✓ Sistemas multi-agente; e

✓ Algoritmos de otimização; ✓ Computação afetiva

✓ Raciocínio baseado em casos;


✓ Machine Learning;
✓ Deep learning;
✓ Ciência de dados;
✓ Processamento de linguagem natural;

Prof. Eliton Smith, MSc


UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Resolução de problemas por Busca

Prof. Eliton Smith, MSc


UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Agentes de resolução de problemas


Os agentes inteligentes mais simples são os reativos, que
conferem suas ações ao mapeamento diretamente dos estados
(Russell; Norvig, 2004). Entretanto, em ambientes nos quais o
mapeamento exige um grande número de elementos,
consequentemente requerendo muita memória ou tempo de
processamento, os agentes não seriam eficientes.
Ex.: Escoler a melhor jogada no xadrez
▪ 1056 - 1 seguido de 56 zeros;
Prof. Eliton Smith, MSc
UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Agentes de resolução de problemas


Em tais casos, os que tomam por base os objetivos alcançam
melhor performance, pois levam em conta os possíveis cenários e
avaliam os resultados conforme essas possibilidades.
Entre os agentes baseados em objetivos, destacamos os agentes
de resolução de problemas, que segundo Rusell e Norvig (2004,
p.62), “decidem o que fazer encontrando sequencias de ações que
levam a estados desejáveis”.
Prof. Eliton Smith, MSc
UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Agentes de resolução de problemas


Tomemos como exemplo um problema típico da área de logística
e turismo, que envolve a roteirização. Quando há um conjunto de
locais que precisam ser visitados de acordo com as rotas
predefinidas, um dos problemas típicos é como percorrer todos os
locais considerando um custo mínimo ótimo. Na IA, tal problema foi
descrito inicialmente como problema do viajante.

Prof. Eliton Smith, MSc


UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Agentes de resolução de problemas


Os objetivos ajudam a organizar o comportamento, limitando o
que o agente está tentando alcançar e, consequentemente, as ações
que ele precisa considerar. A formulação de objetivos, baseada na
situação atual e na medida de desempenho do agente, é o primeiro
passo para a resolução de problemas. A formulação de problemas é
o processo de decidir que ações e estados devem ser considerados,
dado um objetivo.
Prof. Eliton Smith, MSc
UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Agentes de resolução de problemas


Se o agente souber o estado inicial e o ambiente for conhecido e
determinístico, saberá exatamente onde estará após a primeira ação,
é possível receber apenas uma percepção, a solução poderá
especificar apenas uma segunda ação possível, e assim por diante.
Esse processo de procurar por tal sequência de ações que
alcançam o objetivo é chamado de busca. Um algoritmo de busca
recebe um problema como entrada e devolve uma solução sob a
forma de uma sequência de ações.
Prof. Eliton Smith, MSc
UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Agentes de resolução de problemas


Se o agente souber o estado inicial e o ambiente for conhecido e
determinístico, saberá exatamente onde estará após a primeira ação,
é possível receber apenas uma percepção, a solução poderá
especificar apenas uma segunda ação possível, e assim por diante.
Esse processo de procurar por tal sequência de ações que
alcançam o objetivo é chamado de busca. Um algoritmo de busca
recebe um problema como entrada e devolve uma solução sob a
forma de uma sequência de ações.
Prof. Eliton Smith, MSc
UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Heuristicas
É um conceito importante na área de algoritmos inteligentes de buscas.
Heurística é um procedimento mental simples que ajuda a encontrar
respostas adequadas, embora várias vezes imperfeitas, para perguntas
difíceis. Heurística também pode ser definido como ATALHOS MENTAIS
NA TOMADA DE DECISÃO.
▪ A heurística é uma maneira de resolver um problema;
▪ Indicam escolhas que a máquina deve priorizar; e
▪ Técnicas de ajuda a descoberta.
Prof. Eliton Smith, MSc
UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Componentes de um problema
1. Estado inicial;
2. Estado final (objetivo);
3. Espaço de estados;
4. Ações para passer de um estado para outro;
5. Solução (Caminho que leva do estado inicial ao
estado final)
Prof. Eliton Smith, MSc
UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Problema: Jogo das peças (8-Puzzle)


Estado Inicial Estado Final

Prof. Eliton Smith, MSc


UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Heuristicas
Agora, usando uma função heurística, o algoritmo de busca deveria expandir o
melhor entre esses dois estados sucessores. Mas como decidir qual deles é o
melhor? Uma possibilidade é verificar o quão longe cada peça encontra-se de
sua posição na configuração final e apontar o melhor estado, aquele cuja soma
das distâncias é mínima. Por exemplo, no estado s1, as peças 1, 5, 6, 7 e 8 já
estão em suas posições finais. Para as peças 2, 3 e 4, a distância é 1. Portanto,
h(s1) = 3. Analogamente, temos h(s2) = 5. Esses valores indicam que uma solução
a partir do estado s1 pode ser obtida com no mínimo mais três expansões,
enquanto que s2 requer no mínimo mais cinco expansões. Então, o algoritmo de
busca deve expandir o estado s1. Prof. Eliton Smith, MSc
UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Problema: Jogo das peças (8-Puzzle)


Estado Inicial Estado Final

Prof. Eliton Smith, MSc


UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Heuristicas
Vamos agora trabalhar com uma heurística para selecionarmos qual será a melhor jogada no
tabuleiro (8 - Puzzle) abaixo.
Estado Inícial Estado Final
Ação - 3
Ação - 2

Ação - 1

Prof. Eliton Smith, MSc


UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Problema: Jogo da Velha


Estado Inicial

Prof. Eliton Smith, MSc


UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Vetores Ordenados
▪ Os dados estão organizados na ordem ascendente de valores-chave, ou seja,
com o menor valor no índice 0 (zero) e cada célula mantendo um valor maior
que a célula abaixo.
▪ Vantagem: Agiliza os tempos de pesquisa

Prof. Eliton Smith, MSc


UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Vetores Ordenados - Inserção

Prof. Eliton Smith, MSc


UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Vetores Ordenados – Pesquisa Linear


Com relação à pesquisa utilizando a PESQUISA LINEAR, existe uma sutil diferença com relação
ao vetor não ordenado.
- POIS A PESQUISA termina quando o primeiro item maior, que o valor de pesquisa é atingido
- COMO O VETOR está ordenado, o algoritmo sabe que não há necessidade de procurar mais.
Por exemplo se você quer procurar o número 5, e o vetor atual que você está verificando é
formado por 15 elementos, e o vetor está ordenado a pesquisa termina em 5, não sendo
necessário ir até o final.
Temos nesse link uma visualização on-line.
https://www.cs.usfca.edu/~galles/visualization/Search.html
Prof. Eliton Smith, MSc
UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Problema: Ir de Arad até Bucharest

Fonte: Livro Inteligência Artificial – Stuart Russell e Peter Norvig


Prof. Eliton Smith, MSc
UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Em Busca de Soluções
Depois de formular o problema, precisamos resolvê-lo. Uma solução é uma
sequência de ações, de modo que os algoritmos de busca consideram várias
sequências de ações possíveis.
As sequências de ações possíveis que começam a partir do estado inicial
formam uma árvore de busca com o estado inicial na raiz; os ramos são as
ações, e os nós correspondem aos estados no espaço de estados do problema.
A seguir apresentamos os primeiros passos no crescimento da árvore de
busca para encontrar uma rota de Arad para Bucareste. O nó raiz da árvore
corresponde ao estado inicial, em (Arad).
Prof. Eliton Smith, MSc
UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Em Busca de Soluções
O primeiro passo é testar se esse é um estado objetivo. Então é necessário
considerar a escolha de diversas ações. Isso é feito pela expansão do estado
atual, ou seja, aplicando cada ação válida no estado atual, gerando assim um
novo conjunto de estados. Nesse caso, adicionaremos três novos ramos a partir
do nó pai em (Arad) conduzindo a três novos nós filhos: em (Sibiu) , em
(Timisoara) e (Zerind). Agora temos de escolher qual dessas três possibilidades
merece consideração adicional.

Prof. Eliton Smith, MSc


UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Arad

Timisoara Sibiu Zerind

Rimnicu Oradea
Fagaras

Craiova
Pitesti
Bucareste

Bucareste

Prof. Eliton Smith, MSc


UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Distância em
Grafo: Busca Aestrela( A*) Arad linha reta para
75 118 Bucareste
140
374 253 329 --------------
Zerind Sibiu Timisoara Arad – 366
449 447
393 Zerind – 374
151 99 Oradea – 380
380 80 178
193 Sibiu – 253
Oradea Fagaras Timisoara – 329
531 Rimnicu 277 Lugoj – 244
273
Mehadia – 241
97 146 Dobreta – 242
98 160
Craiova – 160
Pitesti Craiova Rimnicu – 193
195 306
Fonte: Livro Inteligência Artificial – Stuart Russell e Peter Norvig Fagaras – 178
0 101 Pitesti – 98
Bucharest Bucharest – 0
101 Giurgiu – 77
UNIVERSIDADE PAULISTA - UNIP
INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA - ICET
CURSO DE CIÊNCIAS DA COMPUTAÇÃO - CC

Mapa com as distâncias dos Estados do Paraná (em quilômetros)

Prof. Eliton Smith, MSc

Você também pode gostar