Você está na página 1de 6

Disciplina: Inteligência Artificial Turma: 01 Data: 24/09/2019

Professor: Edjard Mota Exemplo de Avaliação Nota:

Aluno: _______________________________________________________________________

1. Formule o seguinte argumento em Lógica Proposicional (LP)e a seguir formalmente


investigue sua validade usando tabela verdade.

Se o congresso se recusar a criar novas leis, então a greve não terminará, a menos que
dure mais de um ano e o presidente da empresa renuncie. Se a greve começou a poucas
horas e o congresso se recusar, podemos concluir que a greve nunca terminará?.

2. As seguintes sentenças são falsas ou verdadeiras, explique sua resposta.

(a)  Uma tautologia é uma sentença que é satisfatível em quase todas interpretações.

(b)  Se uma sentença é válida, então sua negação é insatisfatível sob todas
interpretações. 


3. Escreva um programa em Prolog, max_lista(L,N), que é verdade (retorna true) se, e


somente se N é o maior elemento da lista de inteiros L. Execute seu programa para

?- max_lista([1,3,7],N).
N=7

4. Usando raciocínio para trás, como em Prolog, e encontre todas as alternativas para a
meta alcancavel(X)? regras a seguir. Explique sua resposta mostrando, em cada passo, as
substituições.

aresta(a,b).

aresta(a,c).

aresta(b,d).
alcancavel(a).

alcancavel(X) ← aresta(Y,X) , alcancavel(Y).
5. Responda:

1. Descreva em alto nível (português) a busca cega em profundidade e em


amplitude. Sugestão: use uma arvore com números aleatórias (da sua
escolha), para explicar sue reposta mostrando o caminho de cada busca na
sua árvore.

2. Explique o que é função heurística.

3. DeLina as heurísticas de Subida de Encosta e A*.

4. O que se pode fazer para evitar estagnação na busca Subida de Encosta (Hill
Climbing)?

5. DeLina planejamento de ordem parcial e total e quais situações deve-se


assumir um ou outro.
Modelo de Respostas aceitas:

1.(a) P - O congresso se recusa a agir


Q - Encerrou a greve
R - O presidente da empresa renuncia
S - A greve dura mais que um ano
Teremos:
F1 - (P → F2)
F2 : ¬Q ∨ F3, F3 : (R ∧ S)
Provar que F1 ∧ P ∧ ¬S → ¬Q

P Q R S ¬Q ¬S F3 F2 F1 F1∧P ∧¬S F1∧P ∧¬S → ¬Q


V V V V F F V V V F V
F V V V F F F F V F V
V F V V V F F V V V V
V V F V F F V V V F V
V V V F F V V V V F V
F F V V V F F V V F V
F V F V F F F F V F V
F V V F F V F F V F V
V F F V V F F V V V V
V F V F V V F V V V V
V V F F F V V V V F V
F F F V V F F V V F V
F F V F V V F V V F V
F V F F F V F F V F V
V F F F V V F V V V V
F F F F V V F V V F V
2. As seguintes sentenças são falsas ou verdadeiras, explique sua resposta.

(a)  Uma tautologia é uma sentença que é satisfazível em quase todas interpretações.

R: Falso. Para ser tautologia uma sentença precisa ter valor verdadeV (satisfazível)
em todas as interpretações para sua variáveis preposicionais.
(b)  Se uma sentença é válida, então sua negação é insatisfazível sob todas
interpretações.

R: Verdade. Para ser válida uma sentença precisa ter valor verdade V em todas as
interpretações. Se todos valores são negados, então todos serão falsos e portanto
nenhum será satisfazível, ou insatisfazível.

3. Escreva um programa em Prolog, max_lista(L,N), que é verdade (retorna true) se, e


somente se N é o maior elemento da lista de inteiros L. Execute seu programa para

?- max_lista([1,3,7],N).
N=7
max_lista([N],N).
max_lista([X|T],M):-
max_lista(T,Y),
(X <= Y, M is Y;
X > Y, M is X).

Execução:

?- max_lista([1,3,7],N).
1.max_lista([1|[3,7]],M):- max_lista([3,7],Y),
2.max_lista([3|[7]],M):- max_lista([7],Y),
3.max_lista([7],7). base da recursão Y/7
2.max_lista([3|[7]],M):- … (3 <= 7, M is 7;…) backtrack M/7
1.max_lista([1|[3,7]],M):- … (1 <= 7, M is 7; …) N/7

N = 7
4. Gerando as soluções para alcancavel(X)
1. aresta(a,b).

2. aresta(a,c).

3. aresta(b,d).
4. alcancavel(a).

5. alcancavel(X) ← aresta(Y,X) , alcancavel(Y).

goal Sub-goals Substituições Formula

¬ alcancavel(X) {X/a}
- - 4
alcancavel(a)

¬ alcancavel(X) aresta(Y,X’) alcancavel(Y) {X/X’}


5
alcancavel(X’)

¬ aresta(Y,X’) {Y/a, X’/b}


- - 1
aresta(a,b)

¬ alcancavel(X) aresta(Y,X’) alcancavel(Y) {X/X’, Y/a, X’/b}


5,1
alcancavel(X’)

¬ alcancavel(a)
- - 4
alcancavel(a)

¬ alcancavel(X) aresta(Y,X’) alcancavel(Y) {X/X’, Y/a, X’/b}


5,1,4
alcancavel(X’)

¬ alcancavel(X) aresta(Y,X’) alcancavel(Y) {X/X’}


5
alcancavel(X’)

¬ aresta(Y,X’) {Y/a, X’/c}


- - 2
aresta(a,c)

¬ alcancavel(X) aresta(Y,X’) alcancavel(Y) {X/X’, Y/a, X’/c}


5,2
alcancavel(X’)

¬ alcancavel(a)
- - 4
alcancavel(a)

¬ alcancavel(X) aresta(Y,X’) alcancavel(Y) {X/X’, Y/a, X’/c}


5,2,4
alcancavel(X’)

¬ alcancavel(X) aresta(Y,X’) alcancavel(Y) {X/X’}


5
alcancavel(X’)

¬ aresta(Y,X’) {Y/b, X’/d}


- - 3
aresta(b,d)

¬ alcancavel(X) aresta(Y,X’) alcancavel(Y) {X/X’, Y/b, X’/d}


5,3
alcancavel(X’)
goal Sub-goals Substituições Formula

¬ alcancavel(b) aresta(Y,b) alcancavel(Y) {X/b}


5
alcancavel(X’)

¬ aresta(Y,b) {Y/a}
1
aresta(a,b)

¬ alcancavel(b) aresta(Y,b) alcancavel(Y) {X/b, Y/a}


5
alcancavel(X’)

¬ alcancavel(a)
- - 4
alcancavel(a)

¬ alcancavel(b) aresta(Y,b) alcancavel(Y) {X/b, Y/a}


5,4
alcancavel(X’)

¬ alcancavel(X) aresta(Y,X’) alcancavel(Y) {X/X’, Y/b, X’/d}


5,3,1,4
alcancavel(X’)

Resposta: X=a, X=b, X=c e X=d

5. Respostas: veja nos slides e livro do Russel