Transcript
Page 1: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Lógicas Descritivas & CARIN

Jacques Robin & Thiago Santos

Page 2: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Histórico Redes Semânticas

Nós e associações; Herança; Confusão entre classe/sub-classe e classe/instâncias; Falta de semântica clara das associações; Nível do conhecimento diretamente mapeado para o nível da

implementação, sem nível lógico intermediário.

Frames Redes Semânticas aumentadas com:

Valores default (raciocínio não monótono); Procedimentos.

Mesmos problemas que redes semânticas.

Lógica Descritivas: emergiram para superar as limitações destes.

Page 3: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Filosofia

Usar lógica para definir formalmente semântica de formalismos de representação de conhecimento OO.

Estudar computabilidade e complexidade das linguagens e serviços de inferência antes de implementá-los.

Limitar expressividade para garantir esses serviços sejam computacionalmente tratáveis.

SPIV invade a IA.

Page 4: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Lógicas Descritivas (LDs) Formalismos lógicos para representação das informações

sobre classes de indivíduos e suas descrições. Subconjunto da lógica de primeira ordem, trata de:

Relações unárias (conceitos) Exemplo: Student

{x | Student(x)} Relações binárias (papéis);

Exemplo: SUPERVISED {(x,y) | SUPERVISED(x,y) }

Possui também: Construtores sobre os conceitos (,, outros)

Exemplo: PdhStudent = Student SUPERVISED.AcademicStaff { x | Student(x) y.SUPERVISED(x,y) AcademicStaff(y) }

Indivíduos, e instâncias dos conceitos franklin, jacques, thiago; Student(thiago), PhdStudent(franklin), Researcher(jacques)

Trade-offs entre expressividade e complexidade computacional conhecidos.

Page 5: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Construtores

Page 6: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Semântica Baseada na teoria dos conjuntos; Semântica definida por uma interpretação (I,I); Conjunto não-vazio, domínio I; Função de interpretação I que mapeia:

Todo conceito em um subconjunto de I; Todo papel em um subconjunto de I x I;

Unicidade de nome Se a b então aI bI

Um modelo para C é uma interpretação onde CI é não-vazio Um conceito é satisfiable se ele possui pelo

menos um modelo.

Page 7: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Semântica dos construtores

Page 8: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Bases de conhecimento em LD KB = Tbox + Abox Tbox (Terminological part) = Descrições

Exemplos: Student = Person STUDIESAT.University PhdStudent Student Researcher

Abox (Assertional part) = Instâncias Exemplos:

PdhStudent (franklin) STUDIESAT (franklin,UFPE)

Page 9: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Serviços de inferência Dada uma base de conhecimento =

<Tbox,Abox>, dois conceitos C e D, e um indivíduo a, chamamos:

Satisfiability: |= C Verificar se há um modelo I de tal que CI Exemplo: Student Person ?

Subsumption: |= C D Verificar se C é subsumed por D. CI DI em todo modelo I de

Exemplo: Employee Person Student ?

Consistência: |= Verificar se a própria base tem um modelo. Exemplo: Student = Person ?

Classificação de instância: |= C(a) Verificar se uma dada asserção é válida. Exemplo: Person(franklin)

Page 10: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Raciocínio na Tbox Tbox:

Syntax-based reasoning: Structural Comparison Semantic-based reasoning: Constraint Systems

Expressividade Vs Complexidade Expressividade é diretamente proporcional à complexidade

computacional.

Page 11: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Exemplo: Estrutura Acadêmica

Personaddress : Stringeditor : Publicationemail : Stringfax : StringfirstName : StringlastName : StringmemberOfPC : EventmiddleInitial : Stringname : StringorganizerOrChairOf : Eventphone : Stringphoto : Stringpublication : Publication

Employeeaffiliation : OrganizationheadOf : ProjectheadOfGroup : ResearchGroupworksAtProject : Project

StudentstudiesAt : University

PhDStudentsupervisor : AcademicStaff

ResearchercooperatesWith : ResearchermemberOf : ResearchGroupresearchInterest : ResearchTopic

AcademicStaffsupervises : PhDStudent

Lecturer

AdministrativeStaff

TechnicalStaffSecretarysecretaryOf : ResearchGroup

Page 12: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

LD para o exemplo = <Tbox,Abox> Tbox – ConceitosStudent PersonSTUDIESAT Student UniversityStudent =

Person STUDIESAT.UniversityEmployee PersonAFILIATEDTO Employee OrganizationEmployee =

Person AFILIATEDTO.OrganizationAcademicSaff EmployeeSUPERVISES AcademicStaff PhdStudentAcademicSaff =

Employee SUPERVISES.PdhStudentResearcher AcademicStaffPhdStudent Student ResearcherSUPERVISED PhdStudent AcademicStaffPdhStudent =

Student SUPERVISED.AcademicStaff

Abox – InstânciasStudent(thiago)STUDIESAT(thiago,UFPE)

PhdStudent(franklin)STUDIESAT(franklin,UFPE)

Researcher(jacques)SUPERVISED(franklin,jacques

)

AFILIATEDTO(jacques,UFPE)

Page 13: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Exemplos de serviços (1/4) |= C |= Student Person ? Equivalente a:

Student Person = ? Se já temos x Student(x) Person(x)

x Student(x) Person(x) x Person(x) Person(x) que é impossível.

Logo o conjunto formado pela conjunção Student Person é . Não satisfiable.

Person

Studente1 e2

e5e14

en...

Page 14: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Exemplos de serviços (2/4) |= C D |= AcademicStaff Researcher ? AcademicStaff Researcher

Equivalente a: x Researcher(x) AcademicStaff(x) O conjunto de indivíduos do tipo Researcher está

contido no do conjunto de AcademicStaff.

AcademicStaff

Researche1 e2

e5e14

en...

Page 15: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Exemplos de serviços (3/4) |= A base contém asserções/definições contraditórias? Adicionando Person(franklin) mantém a base consistente ?

Raciocinando com as instâncias da Abox e conceitos da Tbox, temos: PhdStudent(franklin) : Abox Student(franklin) : Regra PhdStudent Student da Tbox Person(franklin) : Regra Person Student da Tbox

Ao término das expansões da Abox temos: Abox = Abox0 , Student(franklin), Person(franklin)

Ao adicionarmos Person(franklin) teríamos uma KB com contradições, isto é, inconsistente onde franklin é Student e franklin não é Student.

Conclusão: Uma KB que possua a Tbox anterior, não pode ter Abox com asserções do

tipo PhdStudent(franklin) e Person(franklin) pois se torna uma base inconsistente.

Page 16: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Exemplos de serviços (4/4) |= C(a) |= Person(franklin) ?

Raciocínio sobre a hierarquia definida na Tbox, gera: Student(franklin) Person(franklin)

Assim, Person(franklin) pode ser deduzido como uma instância válida dentro da KB.

Page 17: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Aplicações Ontologias

Terminologia médica; Taxonomia biológica; Baseadas na Web (OIL, DAML+OIL).

Configuração de sistemas Bancos de dados

Modelagem de esquemas; Otimização de consultas; Interoperabilidade; Verificação de consistência dos dados.

Page 18: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

CARIN Linguagem que combina:

Lógicas descritivas ( ALCNR ) Cláusulas de Horn ( Regras dedutivas) KB = <T,R,A>

Uma Tbox da lógica descritiva (T); Um conjunto de regras (R); Um conjunto fatos para os conceitos, papéis e

predicados que estão em T e R (A). Contribuições

Um mecanismo de inferência completo para declarações não-recursivas em ALCNR;

Um algoritmo para determinar subsumption em ALCNR.

Page 19: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

CARIN – Regras e Restrições Lógica descritiva

Sejam C e D conceitos, pode-se: Criar definições

C = D Descrever inclusões

C D Regras

X[p1(X1) pn(Xn) q(Y)], onde: Y {X1,,Xn) p1,,pn são conceitos, papéis, expressões, ou ainda

predicados que não constam na Tbox. q não pode ser um conceito ou papel. O raciocínio sobre

a estrutura deve estar na Tbox, não nas regras. Um predicado q é dito dependente de um predicado p se

p é precedente em uma regra que gera q.

Page 20: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Regras em CARIN Considerando a Tbox e Abox já apresentadas. Adicionando ao componente de regras:

AcademicStaff(X) 7 SUPERVISES(X) Overloaded(X)

Student(X) AcademicStaff(Y) SUPERVISED(X,Y) SpecialStudent(X)

Poderíamos responder as perguntas: Overloaded(jacques)?

Jacques está sobrecarregado? R: não SpecialStudant(franklin)?

Franklin é um aluno especial? R: não

Page 21: Lógicas Descritivas & CARIN Jacques Robin & Thiago Santos

Referências Curso de Lógicas Descritivas

Enrico Franconi, Department of Computer Science, University of Manchester, UK http://www.cs.man.ac.uk/~franconi/dl/course

Referências da aula “Ontologias na Web”

http://www.cin.ufpe.br/~compint/aulas-IAS/mci2/taias-012