Propostas atribuídas ano letico 2025/2026

DEI - FCTUC
Gerado a 2025-12-06 04:46:39 (Europe/Lisbon).
Voltar

Titulo Estágio

Construção de um Motor de Inferência para Lógica de Markov em Java

Área Tecnológica

Web Semântica

Local do Estágio

DEI

Enquadramento

Lógica de Markov é uma nova linguagem lógica capaz de lidar eficientemente com incerteza e complexidade. A incerteza é representada por modelos gráfico-probabilisticos, enquanto a complexidade é representada por lógica. A ideia base é simples: anotar fórmulas lógicas com pesos que representem a sua incerteza, e construir modelos gráfico-probabilisticos com essa informação. Esses modelos permitem não só efectuar inferência probabilística sobre as fórmulas, mas também aprender automaticamente a incerteza das fórmulas, e até as próprias fórmulas.

O motor de inferência para lógica de Markov mais utilizado é o Alchemy , desenvolvido pela Universidade de Washington. Esse motor é desenvolvido em C++, e providencia um conjunto de capacidades que excedem em muito a lógica de Markov. No entanto, este motor apresenta alguns problemas: primeiro, só corre nativamente em ambientes UNIX, tendo de se usar emulação por cygwin  para funcionar em Windows; segundo, sendo desenvolvido em C++, a sua integração em aplicações Java ou Python é complexa.

Objetivo

O objectivo deste estágio é desenvolver um motor de inferência para Lógica de Markov em Java. Este motor, ao contrário do Alchemy, funcionara principalmente numa interface programática, tendo apenas os algoritmos de inferência e aprendizagem mais essenciais. O objectivo final será a sua integração no sistema Incerto , um motor de raciocínio probabilístico para a Web Semântica, desenvolvido pelo grupo CMS do CISUC.

O motor a desenvolver será disponibilizado em open-source, sendo espectável a sua utilização por equipas de investigação de todo o mundo. O aluno será também incentivado a publicar os resultados do seu trabalho numa conferência internacional na área.

Plano de Trabalhos - Semestre 1

Estudo de Bibliografia

Análise das Ferramentas
Definição da Abordagem a Seguir

Plano de Trabalhos - Semestre 2

Implementação 

Testes
Experimentação
Escrita do Relatório

Condições

O estágio não é remunerado. O local de trabalho é no LIA – DEI.

Observações

Requisitos: Bons conhecimentos de Java. Conhecimentos básicos de lógica e estatística. Conhecimentos de Inglês.

Condições Preferenciais: Experiência no desenvolvimento de código para alto desempenho. Participação em concursos de programação ou similares.

Observações

Bibliografia Base

P. Domingos, S. Kok, D. Lowd, H. Poon, M. Richardson, and P. Singla, “Markov Logic,” Probabilistic Inductive Logic Programming, 2008, pp. 92-117.

M. Genesereth, Logical Foundations of Artificial Intelligence, Morgan Kaufmann Publishers, 1987.

S. Russell and P. Norvig, Artificial Intelligence: A Modern Approach (2nd Edition), Prentice Hall, 2002. 


[1] http://alchemy.cs.washington.edu/

[1] http://www.cygwin.com/

[1] http://code.google.com/p/incerto 

Orientador

Paulo Jorge de Sousa Gomes
pgomes@dei.uc.pt 📩