Professor Associado no DECOM-UFOP & Senior Principal Engineering Technologist na Dell Computadores
Projetos
Learning Orchestra (2020 – 2022) – Neste projeto, investigamos como integrar diferentes soluções úteis ao cientista de dados e as disponibilizar segundo APIs interoperáveis. Tal projeto foi conduzido por voluntários do DECOM-UFOP, NUPEB-UFOP e outras localidades do mundo. O projeto conseguiu implementar duas APIs, uma para ML Toolkits (com suporte para Spark MLlib, Tensorflow e Scikit-learn) e outra para AutoML (com suporte ao Pycaret e Autokeras). Há scripts para Docker Swarm e imagens Docker capazes de simplificar a instalação do Learning Orchestra na GCP.
Any.JS (JSONs anywhere) – (2020 – 2022) – Neste projeto, investigamos como executar tarefas de forma assíncrona, assim como instanciar ou armazenar objetos em clusters de forma interoperável. Nos últimos anos implementamos e testamos uma solução de middleware com API RESTful e que opera em contêineres em nuvens computacionais. Consequentemente, o middleware Any.JS garante elasticidade, tolerância a falhas e escalabilidade. Os serviços da API incluem: (i) execução de métodos com quaisquer argumentos, (ii) instanciação de objetos, (iii) armazenamento de objetos em formato binário, (iv) registro de classes no Any.JS para futura utilização, (v) alocação de hash maps distribuídos, (vi) manipulação de pares chave-valor em hash maps previamente criadas, (vii) criação de serviços do tipo observer para recebimento de notificações de término de tarefas assíncronas, (viii) lock/unlock de objetos ou pares de chave-valor para acessos seguros de forma concorrente. O Any.JS suporta as linguagens de programação Python, Java e JavaScript. A solução Any.JS pode ser utilizada como um catálogo de serviços colaborativos em nuvens computacionais públicas ou instalada em ambiente privado. Conduzido pelos voluntários Joubert de Castro Lima (DECOM-UFOP), Lucas Urzedo (DECOM-UFOP) e Gabriel de Oliveira Ribeiro (CI&T).
iCubing (2009-2021) – Projeto que investigou novos métodos e técnicas para representação, indexação, atualização e consulta de cubos multidimensionais de dados. Nos últimos anos o projeto passou a direcionar esforços ao tema Big Data OLAP ou OLEP (Online Event Processing), portanto as inovações passaram a ser redesenhadas para arquiteturas HPC, precisamente passamos a reescrever as soluções usando eventos, logs e notificações (Event-based Distributed Computing). Conduzido pelos professores Joubert de Castro Lima (DECOM-UFOP), Celso Massaki Hirata (EEC-ITA) e Rodrigo Rocha Silva (FATEC-MC).
Java Cá&Lá ou simplesmente JCL (2011-2021) – Neste projeto, investigamos como facilitar e tornar cada vez mais eficiente a programação, instalação e manutenção de sistemas distribuídos compostos por coisas, tais como servidores de grande porte massivamente paralelos, PCs, tablets, smartphones, computadores chamados single-board (Raspberry, Beaglebone, Omega2, etc.), assim como coisas do dia-a-dia, tais como microondas, TVs, geladeiras, portões, cortinas e muitas outras coisas. Nossa alternativa de solução é baseada na adoção de Middleware. O JCL, portanto, é uma solução pioneira de middleware para HPC (High Performance Computing) e IoT (Internet of Things) que possui API única para os serviços comuns a ambas tecnologias, sejam eles: processamento, armazenamento, sensoriamento, atuação, sensibilidade de contexto e segurança. A integração de HPC e IoT numa solução única torna o JCL bem distinto do estado-da-arte, uma vez que na literatura há apenas soluções IoT ou HPC, portanto a integração ainda hoje é feita manualmente para cada aplicação IoT-HPC. Tal projeto é conduzido pelos professores Joubert de Castro Lima (DECOM-UFOP), André Luís Barroso Almeida (IFMG-OP) e André Luiz Lins de Aquino (IC-UFAL).
JCL GPU/CPU Cubing – Método para indexação e consulta de cubos de dados multidimensionais usando clusters compostos por máquinas com diversas CPUs e GPUs. O JCL foi usado como infraestrutura computacional de comunicação, execução, escalonamento e armazenamento para o método implementado. link do texto; link do código
JCL Pagerank – Algoritmo para o cálculo exato do Pagerank de todos ou alguns vértices de um grafo de grande porte. Tal algoritmo executa tanto em máquinas paralelas como também em clusters de máquinas paralelas. O JCL foi usado como infraestrutura computacional de comunicação, execução, escalonamento e armazenamento para o algoritmo implementado. link do texto; link do código
JCL SSE – Ferramenta útil ao alinhamento de cadeias de DNA, RNA e proteína. Tal ferramenta consegue processar grandes cadeias, pois executa sob clusters de máquinas paralelas. Internamente, o alinhamento entre inúmeras sequências implementa o algoritmo Smith-Waterman com as melhorias denominadas Gotoh, que reunidas garantem o alinhamento de pares de sequências. Também se utiliza o FASTAReader e a biblioteca BioJava, portanto há como ler o formato FASTA. O JCL foi usado como infraestrutura computacional de comunicação, execução, escalonamento e armazenamento para a ferramenta implementada. link do texto; link do código
JSensor (2010-2018) – Projeto que investigou como simular redes de sensores (móveis ou não) em larga escala. Como alternativa de solução, construímos um simulador, denominado JSensor, que foi testado contra o estado-da-arte nos últimos anos. O projeto foi conduzido pelos professores Joubert de Castro Lima (DECOM-UFOP) e André Luiz Lins de Aquino (IC-UFAL).
SIGHabitar (2010-2013) – Projeto conduzido no Terralab pelos professores Joubert de Castro Lima (DECOM-UFOP) e Tiago Garcia de Senna Carneiro (DECOM-UFOP). Investigamos como tornar a gestão de municípios mais eficiente e justa usando ferramentas computacionais livres. Como resultado, foi desenvolvido um Sistema de Informação Territorial – SIT, que apoia a tomada de decisão do planejamento estratégico para tornar mais acurado o desenvolvimento urbano sustentável. Tal projeto foi fruto de um convênio entre a Prefeitura de Ouro Preto e a UFOP/DECOM. Na primeira etapa do trabalho de campo, 82% dos imóveis existentes no cadastro imobiliário da prefeitura foram integrados ao banco de dados geográfico. Além disto, houve um aumento de 27% de imóveis no cadastro imobiliário. Fraudes, perdas de receitas, cobranças injustas e outras anomalias foram também detectadas com a metodologia adotada. Detalhes em (link).