Ia - Resumo Np2
Ia - Resumo Np2
Ia - Resumo Np2
Pasta de Buscas
Busca IDA:
Utilizada para encontrar soluções em espaços de estados.
É um algoritmo completo. Sempre encontra uma solução, caso exista.
É ideal para problemas em que a estrutura de espaço não é conhecida
ou o espaço de estados é muito grande para ser completamente
explorado.
Definições:
É uma combinação entre a busca iterativa (IDA) e o algoritmo A*.
- Utiliza uma heurística para estimar os custos dos caminhos e realiza uma
busca iterativa aumentando progressivamente o limite de profundidade a cada
iteração até encontrar uma solução.
- Estima o custo para alcançar a solução a partir de um determinado estado. E
utiliza uma função que estima o custo do caminho até o estado atual.
Essa estimativa deve ser admissível, ou seja, nunca superestimar o
custo real do caminho.
Essas estimativas são combinadas para determinar a ordem de
expansão dos nós.
Estrutura:
É necessário utilizar uma estrutura de dados como uma pilha ou fila para
armazenar os estados visitados.
A complexidade da IDA depende da heurística e da quantidade de estados
possíveis. Pode ser mais eficiente que a busca A*
A busca IDA mantém apenas o caminho atual na memória durante a
busca, consumindo menos espaço que outras buscas.
Desvantagens:
- Caso a heurística usada na busca for inconsistente (superestima o custo),
pode levar ao mau desempenho, visto que irá explorar nós desnecessários.
- Em alguns casos a IDA pode repetir a expansão de nós. Isso ocorre
principalmente em situações em que o nó objetivo possui múltiplos caminhos
para alcançá-lo.
Exemplo IDA:
Para implementar a IDA, estabelecemos um limite de profundidade para a
busca. Em cada iteração, chamamos uma função de busca em profundidade
limitada, que explora os nós até atingir o limite. Se encontrar o objetivo, termina
e busca e retorna o resultado, senão, incrementa o limite e repete o processo.
BUSCA EM PROFUNDIDADE
Explora o espaço de estados a partir de um estado inicial, avançando o
mais profundamente possível antes de retroceder e explorar outras
opções.
BUSCA em A*
Combina a busca gulosa e a busca de custo uniforme. Considera a
distância do nó atual ao nó objetivo, bem como o custo total até o
momento para chegar ao nó atual.
A busca A* utiliza uma fila de prioridade, onde os nós são priorizados de
acordo com o valor da função de avaliação. Sempre que um nó é
expandido, seus nós vizinhos são adicionados à fila de prioridade,
respeitando a ordem de prioridade definida pela função de avaliação.
Seu desempenho depende dos fatores da heurística e do grafo, quanto
mais precisa a sua heurística, menos nós serão criados, tornando a
heurística mais eficaz.
- A quantidade de estados gerados durante a bsuca A* depende do número
de vezes que um estado já visitado é expandido novamente.
- Se a heurística foi admissível, que nunca superestima o custo real, a
busca é completa e ótima.
Características:
Completeness: Sempre encontrará uma solução se ela existir, mas
dependendo da heurística pode não ser a ótima.
Optimality: Quando é admissível, garante que encontre o caminho mais
curto, sendo ótima.
Eficiência: O desempenho depende da qualidade da heurística e da
complexidade do grafo. Caso use uma mais precisa, pode reduzir o número
de nós expandidos e sendo mais eficiente.
Espaço de memória: Armazena a árvore de busca, visto que mantém uma
lista de nós abertos e uma de nós visitados.
HEURÍSTICAS:
A heurística é uma técnica utilizada para dar direcionamento nos algoritmos
de busca para solucionar certos problemas, tornando-a mais rápida e prática.
Sendo também uma função que estima o custo para alcançar a solução
desejada a partir de um determinado estado. Na busca recursiva Best-First,
as heurísticas são usadas para determinar qual nó deve ser explorado a
seguir.
São avaliadas para cada possível movimento a partir do estado atual e o
nó com a menor estimativa de custo é escolhido para explorar primeiro.
Exemplos de heurísticas:
Heurística da distância Euclidiana:
Geralmente usada em problemas de busca em um espaço de estados
com coordenadas. Estima a distância euclidiana direta entre o estado
atual e o estado objetivo, considerando as coordenadas desses pontos.
Heurística de distância de Manhattan:
Calcula a soma das distancias horizontais e verticais desses dos pontos.
Geralmente usada em problemas de busca em grade, como um labirinto.
Heurística de contagem de peças fora do lugar:
Geralmente usada em problemas de busca em que o estado objetivo é
um estado final pré-definido. Conta o número de peças que estão fora
do lugar em relação ao estado objetivo, fornecendo uma estimativa da
qualidade do estado atual.
busca recursiva best first:
Esse tipo de algoritmo de busca, procura as melhores soluções em problemas
mais complexos dando prioridades em caminhos com maior chance de ser o
caminho correto.
Por meio da heurística, o nó que tem a maior chance de prosseguir é
expandido, caso o nó não tenha filhos inexplorados, a heurística volta para
calcular outros caminhos. Para isso, deve ser definido um ponto inicial e final
para a heurística fazer os cálculos e é necessário criar uma função de
avaliação que será responsável por atribuir um valor para cada movimento até
o objetivo final. Na expansão de nós, cada possível passo, que seriam os nós
criados a partir do ponto principal, são calculados pela função de avaliação e
para calcular um novo caminho, conforme os passos são dados, os valores dos
custos são atualizados. Esse tipo de busca também tem um critério de parada
que não termina até chegar em seu objetivo final ou até passar por todos os
nós disponíveis, caso todos os caminhos já tenham sido testados, mas não
chegou ao objetivo final, significa que esse problema não tenha uma solução.
ESPAÇO DE ESTADO
É uma representação formal de um problema. Consiste em um conjunto
de estados possíveis, ações que podem ser executadas em cada estado
e uma função de transição que especifica como o estado evolui quando
uma ação é realizada.
É um modelo que descreve todas as possíveis configurações de um
problema ou sistema. Composto por um conjunto de estados e
transições, essa são determinadas por ações ou operações que
podemos executar em um determinado estado para chegar a outro
estado.
Representação:
- Conjunto de estados: Um espaço que contém todos os possíveis estados do
sistema ou problema em questão.
Modelagem de estados: Identifica os elementos necessários para
descrever cada estado do problema. Exemplo: Utilização de uma matriz
3x3 para representar um tabuleiro de jogo da velha, com cada posição
podendo ser vazia, ocupada pelo jogador X ou pelo jogador O.
PASTA CONHECIMENTOS:
Características do SBC:
Benefícios do SBC:
Consistência e padronização;
Velocidade e eficiência;
Redução de erros;
Preservação e disseminação do conhecimento.
Limitações do SBC
Identificação do problema;
Análise de requisitos;
Aquisição de conhecimento;
Representação do conhecimento (De forma estruturada e lógica);
Implementação;
Teste e avaliação.
AULA IA.
Arvore de decisão da IA
Recebe valores falsos e verdadeiros
HLM
Geração de informações por seres humanos.
Human Language Model
Engenharia de conhecimento:
Representação de conhecimento:
Formas:
Rede semânticas:
Lógica formal:
Inferências e conjuntos de regras. “Todos os mamíferos são
vertebrados”.
∀ x (mamíferos) (x) —> Vertebrados (x))
Frame:
Categorias e estereótipos.
Raciocínio da IA
Usa o conhecimento para chegar em novas conclusões.
Raciocínio Dedutivo:
Começa com uma premissa geral e usa a lógica para chegar a uma
conclusão específica.
Geral: Todos os humanos são mortais
Específica: Aristóteles é humano.
Dedução: Aristóteles é mortal.
Raciocínio Indutivo:
Começa com específica e depois generaliza para chegar à conclusão.
"Se todos os cisnes que vimos até agora são brancos, então todos os
cisnes são brancos."
Raciocínio Abdutivo:
Começa com uma observação e usa a hipótese para explicar.
Exercício:
Um sistema de IA para jogar xadrez precisa decidir qual o melhor movimento a
ser feito em uma determinada posição. Qual o tipo de raciocínio o sistema de
IA pode usar para tomar essa decisão?
R: Dedutivo e Abdutivo (Geral - Observação – Específico)