inteligenta artificiala

15
Inteligenta Inteligenta Artificiala Artificiala Universitatea Politehnica Bucuresti Anul universitar 2005-2006 Adina Magda Florea http://www.cs.pub.ro/ ia_06

Upload: salim

Post on 05-Jan-2016

101 views

Category:

Documents


7 download

DESCRIPTION

Inteligenta Artificiala. Universitatea Politehnica Bucuresti Anul universitar 2005-2006 Adina Magda Florea http://www.cs.pub.ro/ia_06. Curs nr. 12. Invatare bazata pe explicatii Invatarea prin generalizare explicata Invatarea utilizand macro-operatorii. 2. Invatarea bazata pe explicatii. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Inteligenta Artificiala

Inteligenta ArtificialaInteligenta Artificiala

Universitatea Politehnica BucurestiAnul universitar 2005-2006

Adina Magda Florea

http://www.cs.pub.ro/ia_06

Page 2: Inteligenta Artificiala

Curs nr. 12

Invatare bazata pe explicatii Invatarea prin generalizare explicata Invatarea utilizand macro-operatorii

2

Page 3: Inteligenta Artificiala

Invatarea bazata pe explicatii

Sistemul invata un concept sau o regula pornind de la un singur exemplu de invatare – sintetic

/analitic

Analiza motivelor – explicatie

Generalizarea unui exemplu

Reguli operationale

2 etape:- Explicatie- Analiza exemplu

3

Page 4: Inteligenta Artificiala

1 Generalizare bazata pe explicatii

EBG Explicatie = demonstratiile scopului de

rezolvat

Problema EBG Conceptul scop Exemplul de invatare Teoria domeniului Criteriul de operationalitate

Cum le reprezentam4

Page 5: Inteligenta Artificiala

Generalizare bazata pe explicatii

Sistemul trebuie sa reformuleze conceptul scop in termenii unei noi descrieri care satisface conditiile:

Este o generalizare a ex de invatare Este o conditie suficienta pt caracterizarea

conceptului scop Satisface criteriul de operationalitateMetoad EGB Explicare Generalizare

5

Page 6: Inteligenta Artificiala

Concept scop: sigurpeste(x,y)Exemplul de invatare: sigurpeste(cub1,masa1)

peste(cub1,masa1)vol(cub1,10)isa(cub1,cub)isa(masa1,masa)culoare(cub1,rosie)culoare(masa1, alba)dens(cub1,10)

Teoria domeniuluimaiusor(x,y) sigurpeste(x,y)gr(x,w1) gr(y,w2) maimic(w1,w2) maiusor(x,y)isa(x,masa) gr(x,500)vol(x,v) dens(x,d) inm(v,d,y) gr(x,y)

Criteriul de operationalitatePredicate specifice domeniului

vol(x,y), dens(x,y) culoare(x,y), isa(x,y)Predicate generale

inm(x,y,z), maimic(x,y)6

Page 7: Inteligenta Artificiala

7

SIGUR-PESTE(cub1, masa1)

MAI-UªOR(cub1, masa1)

GREUTATE(cub1, 100) GREUTATE(masa1, 500) MAI-MIC(100, 500)

VOLUM(cub1, 10) DENSITATE(cub1, 10) ÎNM(10, 10, 100) ISA(masa1, masã)

Exemplul de invatare: sigurpeste(cub1,masa1)peste(cub1,masa1)vol(cub1,10)isa(cub1,cub)isa(masa1,masa)culoare(cub1,rosie)culoare(masa1, alba)dens(cub1,10)

Teoria domeniuluimaiusor(x,y) sigurpeste(x,y)gr(x,w1) gr(y,w2) maimic(w1,w2) maiusor(x,y)isa(x,masa) gr(x,500)vol(x,v) dens(x,d) inm(v,d,y) gr(x,y)

Page 8: Inteligenta Artificiala

8

SIGUR-PESTE(cub1, masa1)

MAI-UªOR(cub1, masa1)

GREUTATE(y, 500) MAI-MIC(m, 500)

VOLUM(x, v) DENSITATE(x, d) ÎNM(v, d, m) ISA(y, masã)

SIGUR-PESTE(x, y)

MAI-UªOR(x, y)

GREUTATE(x, m)

GREUTATE(cub1, 100) GREUTATE(masa1, 500) MAI-MIC(100, 500)

VOLUM(cub1, 10) DENSITATE(cub1, 10) ÎNM(10, 10, 100) ISA(masa1, masã)

{x/cub1, y/masa1}

{x/cub1, y/masa1}

VOLUM(x,v) DENSITATE (x,d) ÎNM(v,d,m) ISA(y,masã) MAI MIC(m,500)

Page 9: Inteligenta Artificiala

Exemplul de invatarepeste(cub1,masa1).volum(cub1,10).isa(cub1,cub).isa(masa1,masa).culoare(cub1,rosie).culoare(masa1,alba).dens(cub1,10).

Teoria domeniuluisigurpeste(X,Y):-maiusor(X,Y).maiusor(X,Y):-gr(X,W1),gr(Y,W2),maimic(W1,W2).gr(X,500):-isa(X,masa).gr(X,Y):-volum(X,V),dens(X,D),inm(V,D,Y).maimic(X,Y):-X<Y.inm(X,Y,Z):-Z is X*Y.

Criteriul de operationalitateoperational(Scop):-member(Scop,[inm(_,_,_),maimic(_,_),peste(_,_), volum(_,_),isa(_,_),culoare(_,_),dens(_,_)]).

9

Page 10: Inteligenta Artificiala

gbe (Frunza, FrGen, FrGen) :-operational (Frunza), !, call (Frunza).

gbe ((Scop1, Scop2), (Scop1Gen, Scop2Gen), (Frunze1, Frunze2)) :-gbe (Scop1, Scop1Gen, Frunze1),gbe (Scop2, Scop2Gen, Frunze2).

gbe (Scop, ScopGen, Frunze) :-clause (ScopGen, ClauzaGen), duplicate_term ((ScopGen :- ClauzaGen), (Scop :- Clauza)), gbe (Clauza, ClauzaGen, Frunze).

?- gbe(sigurpeste(cub1,masa1),sigurpeste(X,Y),Ref).

X = _G476

Y = _G477

Ref = (volum(_G476, _G651), dens(_G476, _G654), inm(_G651, _G654, _G599)), isa(_G477, masa), maimic(_G599, 500))

10

Page 11: Inteligenta Artificiala

2 Invatarea macro-operatorilor Sistemul de planificare automata STRIPS macro-operator

11

C

B A

A

B C

S S i f

CLEAR(A)

ON(A,B) CLEAR(C) ONTABLE(C)

ON(C,B)

ONTABLE(B)

ONTABLE(A) ONTABLE(B)

ARMEMPTY

Plan = (UNSTACK (C,B),PUTDOWN(C),PICKUP(A),STACK(A,B))

ON(C,B) ONTABLE(A) ONTABLE(B)

CLEAR(A) CLEAR(C) ARMEMPTY

ON(C,B) ONTABLE(A)

ON(A,B) ONTABLE(C)

LA:

LP

LA

LE

Page 12: Inteligenta Artificiala

P = (UNSTACK(x ,x ),PUTDOWN(x ),PICUP(x ),STACK(x ,x ))M1 1 2 1 3 3 2

ON(x ,x ) ONTABLE(x ) ONTABLE(x )1 2 3 2

CLEAR(x ) CLEAR(x ) ARMEMPTY3 1

ON(x ,x ) ONTABLE(x )1 2 3

ON(x ,x ) ONTABLE(x )3 2 1

LP

LA

LE

STACKONB(x) CLEAR(x) CLEAR(B) HOLD(x)

CLEAR(B)

ON(x,B) ARMEMPTY

P = (UNSTACK (C,B),PUTDOWN(C),PICKUP(A),STACKONB(A))

P = (UNSTACK (x ,x ),PUTDOWN(x ),PICKUP(x ),STACKONB (x ))M2 1 2 1 3 3

ON(x ,x ) ONTABLE(x ) ONTABLE(x )1 2 3 2 CLEAR(x ) CLEAR(x ) ARMEMPTY3 1

ON(x ,x ) ONTABLE(x )1 2 3

ON(x ,x ) ONTABLE(x )3 2 1

LP

LA

LE

LP

LA

LE

Macro1

Macro2

C BA

S E D

C B

AS

E

D i f A

Page 13: Inteligenta Artificiala

Tabela triunghiulara - Algoritm1 Numeroteaza liniile tabelei de la 1 la N+1 si coloanele de la 0 la N

2 pentru i=1,N executa

TAVB[i,i]=P[i]

3 pentru i=1,N executa

TAB[i,0]=toate faptele din Si care sunt adevarate inainte de aplicarea P[i]

4 TAB[N+1,0]=faptele din Si adevrate in Sf

5 pentru i=1,N executa

pentru j=i+1 la N executa

TAB[j,i]=faptele adaugate de P[i] adevarate inainte de aplicare P[j]

6 pentru i=1,N executa

TAB[N+1,i]=faptele adaugate de P[i] care raman adevarate in Sf

7 pentru i=1,N executa

marcheaza cu * fiecare fapt din TAB[i,_] care a fost utilizat in demonstrarea preconditiilor P[i]

sfarsit13

Page 14: Inteligenta Artificiala

14

BA

S AS i f A

BPlan = (PICKUP(A),STACK(A,B))BA

S AS i f A

B

Plan = (PICKUP(A),STACK(A,B))

CLEAR(A)

ON(A,B)

CLEAR(B)

ONTABLE(B)ONTABLE(A)

ONTABLE(B)

ARMEMPTY

Page 15: Inteligenta Artificiala

15

Algoritm: Generalizarea planului în sistemul STRIPS1. Generalizeaza tabela triunghiulara

1.1. Înlocuieste fiecare constanta distincta din coloana 0 a tabelei TABTcu o variabila distincta

1.2. pentru i=1 la N executa- Înlocuieste fiecare formula din coloana i a tabelei TABT cuformula (neinstantiata) corespunzatoare din lista adaugariloroperatorului i

1.3. Redenumeste variabilele astfel încat formulele obtinute prin aplicarea operatorilor distincti sa conþina variabile cu nume diferite

2. Executa din nou validarea preconditiilor utilizînd demonstratii similare cu celeale planului original

2.1. Fiecare noua validare a unei precondiþii se va face pe baza formulelorgeneralizate marcate cu *

2.2. Fiecare noua demonstraþie considera aceleasi perechi de formuleîn rezolutie si aceleasi perechi de literali în unificare

2.3. Substitutiile generate în timpul unificarii sînt aplicate întregii tabelesfîrsit.