ABCDEFGH
1
ID do TemaTítuloResumoLinks para Artigos sobre o Tema (É recomendável que o candidato leia estes artigos antes de fazer a opção pelo tema)Orientador(es)Número Total de Vagas (Doutorado)Número Total de Vagas (Mestrado)Email para contato no domínio @computacao.ufcg.edu.br (apenas nome de usuário)
2
DOU01Intelligent Software EngineeringThe Intelligent Software Engineering Group aims to investigate, validate and create techniques, methods and tools to improve quality and productivity within the Software Engineering Process using intelligent approaches, including Artificial Intelligence, Analytics, Big Data, etc. We focus on solving real problems in real software projects, with real-world experimental validation.http://isegroup.org/
Hyggo Almeida40hyggo
3
MES_DOU01Aspectos humanos em engenharia de softwareNeste tema, temos como objetivo estudar a influência que determinadas atividades de desenvolvimento de software, além de condições de trabalho, podem exercer em decisões de carreira de desenvolvedores, tais como mudança voluntária de emprego (turnover), previsão de tempo na carreira ou abandono precoce da atividade. Esta pesquisa é multidisciplinar, envolvendo engenharia de software e psicologia.http://www.chaseresearch.org/workshops/chase-2018Tiago Massoni11massoni
4
MES_DOU02Uso de NLP e Geoprocessamento para Análise de Llicitações e Obras PúblicasO processamento de linguagem natural aliado às técnicas avançadas de geoprocessamento têm propiciado avanços na área de análise de sentimentos e mineração de textos. Pretende-se com esta pesquisa desenvolver algoritmos e modelos para com uso de informações georreferenciadas, técnicas de geoprocessamento e NLP fazer análise de editais de licitações e acompanhamento com uso de geoprocessamento de obras. É requerido do candidato conhecimento em geoprocessamento (geoserver e openstreetmaps) e em processamento de linguagem natural. https://pdfs.semanticscholar.org/afef/e96214abacd209da255934b856013dd11944.pdfCláudio Baptista12baptista
5
MES01Uso de VGI na proposição de modelos computacionais para Orçamento ParticipativoUma das ações democráticas que efetivam o controle social é a execução de planos de orçamento participativo em diversas áreas da sociedade. O uso de plataformas computacionais com VGI - Volunteered Geographic Information, permite que cidadãos possam opinar sobre problemas de sua urbe, propondo ações prioritárias para a gestão. Nesta pesquisa, daremos continuidade à plataforma Crowd4City que visa proporcionar este orçamento participativo digital. É fortemente recomendado que o candidato conheça técnicas de geoprocessamento corporativo bem como saiba programar para plataformas móveis tipo Android e IOS.https://dl.acm.org/citation.cfm?doid=3167132.3167319 e https://dl.acm.org/citation.cfm?doid=3019612.3019808Cláudio Baptista01baptista
6
MES02Aplicação de Inteligência Computacional nas Etapas de Indexação e/ou Classificação da Tarefa de Resolução de EntidadesO processo de deduplicação de dados, o qual consiste em identificar entidades duplicadas em bases de dados, é essencial para a realização eficaz de tarefas como a integração de dados, descoberta de conhecimento, prevenção de fraudes, dentro outros. Este processo vem sendo cada vez mais desafiado pelas características das bases de dados atuais: i) grande volumes de dados (volume); ii) alta frequência de atualização dos dados (velocity); e iii) significativa diversidade de formatos de representação e armazenamento dos dados (variety). No intuito de tratar tais desafios, foram propostas diversas abordagens visando melhorar a eficácia e eficiência do processo de identificação de entidades duplicadas. Por exemplo, técnicas de indexação visam limitar a comparação entre entidades que possuem maior chance de serem consideradas duplicadas. Por sua vez, diversas técnicas de classificação (e.g., baseadas em regras, classificadores não supervisionados e classificação coletiva) visam aumentar a precisão dos resultados de classificação ao incorporar técnicas inteligentes para classificar as duplicatas. Nesse contexto, os projetos associados a este tema de pesquisa visam estender e aprimorar técnicas inteligentes, baseadas em algoritmos genéticos, aprendizagem ativa, redes neurais e heurísticas, no intuito de melhorar a eficiência e eficácia do processo de deduplicação de dados no contexto de bases de dados volumosas.[1] Isele, Robert, and Christian Bizer. "Active learning of expressive linkage rules using genetic programming." Web Semantics: Science, Services and Agents on the World Wide Web 23 (2013): 2-15.
[2] Christen, Peter, Dinusha Vatsalan, and Qing Wang. "Efficient entity resolution with adaptive and interactive training data selection." Data Mining (ICDM), 2015 IEEE International Conference on. IEEE, 2015.
[3] dal Bianco, Guilherme, Marcos André Gonçalves, and Denio Duarte. "BLOSS: Effective meta-blocking with almost no effort." Information Systems 75 (2018): 75-89.
Carlos Eduardo01cesp
7
DOU02Automatização de análise perceptivo-auditiva de voz por intermédio de redes convolucionais profundasA aprendizagem de máquina profunda (deep learning) baseia-se na concepção de redes neurais artificiais e na utilização massiva de dados, que uma vez introduzidos em um modelo especificamente projetado, permitem que características presentes nos dados sejam processadas e analisadas automaticamente. Em aplicações em saúde, esse modelo permite realizar a predição de diagnósticos sobre novos conjuntos de dados. Em fonoaudiologia, os sinais de voz podem ser convertidos em espectrogramas, e então tratados na forma matricial, como imagens, o que permite a análise com redes neurais convolucionais. As metas principais do projeto incluem a criação de modelos de aprendizagem de máquina profunda capazes de detectar padrões presentes na voz dos pacientes, com base no diagnóstico de especialistas; e o desenvolvimento de ferramentas de predição de desvios vocais presentes na gravação de voz de pacientes, de acordo com histórico de diagnósticos anteriores, para apoio ao especialista de fonoaudiologia.Voice Pathology Detection Using Deep Learning on Mobile Healthcare Framework
https://ieeexplore.ieee.org/document/8411437

Voice Pathology Detection Using Deep Learning: a Preliminary Study
https://ieeexplore.ieee.org/document/7985525
Leonardo Vidal Batista e Herman Martins Gomes10hmg
8
DOU03Teoria e Prática em Pensamento Computacional através da RobóticaPensamento Computacional pode ser definido como métodos, técnicas e ferramentas para resolver problemas, desenvolver sistemas e entender o comportamento humano através de conceitos fundamentais da Ciência da Computação. Em alguns países esses conceitos da computação já são estimulados desde a educação básica e uma das estratégias utilizadas está baseada no uso de robótica. Essa linha de pesquisa visa investigar, propor e aplicar estratégias para estímulo do Pensamento Computacional através da robótica e, para isso, é importante possuir experiência profissional em Robótica.Wilkerson Andrade10wilkerson
9
MES03Gerência de recursos em infraestruturas de computação utilitária (fog, edge e cloud computing)A computação na nuvem mudou radicalmente a forma como serviços de TI são oferecidos. Grande parte dos serviços e aplicações atualmente em execução estão implantadas neste tipo de ambiente. A disponibilidade de software aberto (ex. Openstack, Cloudstack, etc.) e proprietário (ex. vRA) para orquestração de recursos possibilitou a utilização desse paradigma para fornecimento de infraestrutura de TI em ambientes privados. Há, entretanto, espaço para o desenvolvimento de técninas e algoritmos que tornem a gestão dos recursos ainda mais eficiente. Ambientes híbridos (ex. multi-clouds e federerações) e distribuídos (ex. fog e edge computing) trazem desafios adicionais. Nesta linha de pesquisa nós buscamos desenvolver técnicas e algoritmos para a gestão eficiente de recursos nestes ambientes.Francisco Brasileiro03fubica
10
DOU04Sistemas de arquivos distribuídos dinamicamente adaptáveisO desempenho de sistemas de arquivos distribuídos é bastante dependente da carga de trabalho à qual estão submetidos. Por essa razão, para se obter melhor desempenho, a configuração, e mesmo o projeto, desse tipo de sistema consideram cargas específicas. Por outro lado, é bastante comum que, um mesmo conjunto de dados seja usado com propósitos diferentes, e, portanto, através de cargas de trabalho também diferentes. Por exemplo, aplicações científicas criam grandes quantidades de dados, as quais, posteriormente, serão lidas múltiplas vezes, durante a análise desses dados. Enquanto que a primeira carga de trabalho é majoritariamente de escrita e manipula porções grandes de dados em sequência uma única vez, a segunda é majoritariamente de leitura, manipula pequenas porções de dados, múltiplas vezes. Tipicamente, organizações que apresentam esta diversidade de cargas de trabalho, empregam múltiplos sistemas de arquivos, cada um otimizado para um propósito específico.  Esta solução tem algumas limitações, por exemplo o desperdício de recursos para implantação e operação dos sistemas adotados e o movimento, bem como a duplicação, de dados entre os múltiplos sistemas. Esta pesquisa tem como objetivo projetar e avaliar sistemas de arquivos distribuídos que se adaptem dinamicamente ao ponto de suportarem cargas de trabalho com características diferentes, com desempenho adequado, em uma mesma implantação.[1] PILMAN, Markus. Tell: An Elastic Database System for mixed Workloads. 2017. Tese de Doutorado. ETH Zurich. [2] COSTA, Lauro Beltrão et al. Support for provisioning and configuration decisions for data intensive workflows. IEEE Transactions on Parallel and Distributed Systems, v. 27, n. 9, p. 2725-2739, 2016. [3] COSTA, Lauro Beltrão et al. Supporting storage configuration for I/O intensive workflows. In: Proceedings of the 28th ACM international conference on Supercomputing. ACM, 2014. p. 191-200. [4] COSTA, Lauro B.; RIPEANU, Matei. Towards automating the configuration of a distributed storage system. In: Grid Computing (GRID), 2010 11th IEEE/ACM International Conference on. IEEE, 2010. p. 201-208. [5] MOLINA-ESTOLANO, Esteban et al. Mixing Hadoop and HPC workloads on parallel filesystems. In: Proceedings of the 4th Annual Workshop on Petascale Data Storage. ACM, 2009. p. 1-5. [6] Michael Stonebraker and Uğur Çetintemel. “”One Size Fits All”: An Idea Whose Time Has Come and Gone”. In: Data Engineering, 2005. ICDE 2005. Proceedings. 21st International Conference on. IEEE. 2005, pages 2–11. [7] Thiago Emmanuel Pereira, Francisco Vilar Brasileiro, Lívia M. R. Sampaio: File system trace replay methods through the lens of metrology. MSST 2016: 1-15, [8] Thiago Emmanuel Pereira, Francisco Vilar Brasileiro, Lívia M. R. Sampaio: A study on the errors and uncertainties of file system trace capture methods. SYSTOR 2016: 14:1-14:11.Francisco Brasileiro10fubica
11
MES04Influência de estratégias lúdicas em mídias imersivas e interativas no comportamento do usuárioCom o aumento de comentários online em mídias sociais e a adoção da tecnologia como ferramenta de mudança comportamental (principalmente através de wearable technologies) em diferentes espaços (e.g. aplicativos de realidade aumentada, como Pokemon Go), há um desafio em entender de que maneira estas plataformas promovem aspectos como confiança e gerenciamento de conhecimento. Neste contexto, jogos e estratégias lúdicas têm sido explorados para engajar diferentes públicos em assuntos variados. Esta variedade traz desafios de pesquisa, como maneiras inteligentes de levantar requisitos dos usuários e promover uma melhor experiência em que o usuário tenha ainda sim, controle sobre suas ações em diferentes espaços. Isto inclui outros fatores inter-relacionados, como a influência de aplicativos lúdicos na esfera pública (relacionando com aspectos contemporâneos como fake news e cultura participativa para resolução de problemas públicos, como a segurança), inteligência artificial, realidade aumentada, jogos pervasivos, gamificação e métricas dinâmicas de engajamento e comportamento do usuário. OBS: Pesquisas neste tema poderão ser desenvolvidas em parceria (co-orientação) com a Profa. Dra. Vanissa Wanick da Unviersity of Southampton, Reiono Unido, e/ou o Prof. Dr. Uwe Terton, da University of the Sunshine Coast, Australia. É imprescíndivel domínio de inglês falado e escrito.- Nacke, L.E. and Deterding, C.S., 2017. The maturing of gamification research. Computers in Human Behaviour, pp.450-454. - Joinson, A.N., Reips, U.D., Buchanan, T. and Schofield, C.B.P., 2010. Privacy, trust, and self-disclosure online. Human–Computer Interaction, 25(1), pp.1-24. - Caci, B., Scrima, F., Tabacchi, M.E. and Cardaci, M., 2018. The Reciprocal Influences among Motivation, Personality Traits, and Game Habits for Playing Pokémon GO. International Journal of Human–Computer Interaction, pp.1-9. - Sailer, M., Hense, J.U., Mayr, S.K. and Mandl, H., 2017. How gamification motivates: An
experimental study of the effects of specific game design elements on psychological need
satisfaction. Computers in Human Behavior, 69, pp.371- 380. - Sacramento, I. and Wanick, V., 2017. mHealth and the Digital Cyborg Body: The Running
Apps in a Society of Control. In Mobile e-Health (pp. 39-70). Springer, Cham.
Antão Moura (possivelmente em parceria com Dra. Vanissa Wanick e/ou Dr. Uwe Terton)01antao
12
MES_DOU3
Sistemas de Apoio à Decisão baseados em Modelagem e Simulação de Sistemas Complexos

O mundo real é um sistema complexo e o pensamento sistêmico é uma técnica prática para a compreensão de questões não lineares, sensíveis ao tempo e a feedback, visando o aprendizado e a tomada de decisões. Sistemas de Apoio à Decisão baseados em Simulação são modelos formais, ou micromundos, em que os tomadores de decisão podem simular e testar as consequências de ecisões complexas, arriscadas ou onerosas no mundo real. A Dinâmica de Sistemas é um método que tem sido utilizado na modelagem dos mais diversos tipos de sistemas: social, econômico e ambiental,bem como em temas transversais à tomada de decisão, tais como: controle de projetos, melhoria de processos, gestão estratégica e análise de investimentos. Pesquisa neste tema será conduzidas em colaboração com o Prof. Dr. Tárcio Bezerra do IFAL
https://en.wikipedia.org/wiki/System_dynamics

https://www.researchgate.net/profile/Dietmar_Pfahl/publication/220145741_System_Dynamics_Applied_to_the_Modelling_of_Software_Projects/links/5735504f08ae9f741b283989/System-Dynamics-Applied-to-the-Modelling-of-Software-Projects.pdf
Antão Moura e Dr. Tárcio Bezerra11antao
13
MES05Modelagem e Reconhecimento de Padrões em Dinâmica Emocional
A importância de se estudar a dinâmica emocional está relacionada a vários fatores, sendo um deles o fato de que distúrbios na dinâmica emocional são sintomáticos de várias desordens mentais e podem levar ao desenvolvimento de doenças somáticas como doenças cardiovasculares. Assim, pode-se afirmar que o estudo da dinâmica emocional é útil para gerar abordagens e tecnologias de auxílio ao tratamento e ao diagnóstico médico para esses tipos de problemas. Dentre as áreas que estudam emoção humana destaca-se a computação afetiva. Dentre as abordagens empregadas em computação afetiva para estudar emoções destaca-se o reconhecimento de padrões em sinais de EEG de voluntários ao assistirem filmes. Este tema de pesquisa tem como objetivo desenvolver abordagens e modelos computacionais que possam auxiliar o entendimento da dinâmica emocional humana.
https://tinyurl.com/yb55sjz5Eanes Torres Pereira01eanes
14
MES06Novas Arquiteturas e Aplicações de Deep Learning em Sistemas de RecomendaçãoSistemas de recomendação são hoje pervasivos (e.g. Amazon, Spotify e Youtube) ajudando usuários a encontrar informações relevantes e melhorando suas experiências com o sistema. As abordagens de maior sucesso na área são oriundas da área de aprendizagem de máquina (e.g. Factorization Machines). Com o advento do deep learning novas oportunidades e desafios aparecem, dentre os quais estão: Como tornar as recomendações de modelos complexos interpretáveis? Como lidar com esparsidade e escala dos dados em modelos? Quais arquiteturas mais adequadas para os diferentes cenários de recomendação? Como lidar com recomendações em tempo real e aprendizagem online? Esse tema de pesquisa se propõe a investigar essa e outras questões relacionadas à área. Leandro Balby1lbmarinho
15
MES07Reconhecimento de padrões emocionais em multimídia.As emoções desempenham papel fundamental na sobreviência dos seres humanos e alguns pesquisadores têm argumentado que sistemas artificiais só serão, realmente, inteligentes quando associarem aos seus modelos lógico-matemáticos abordagens que considerem fatores semelhantes à emoção humana. Neste sentido, uma área conhecida como computação afetiva tem desenvolvido abordagens para: reconhecer emoções, simular emoções e estimular emoções. Este tema de pesquisa tem como objetivo desenvolver métodos para reconhecer emoções utilizando multimídia, especialmente: imagens, vídeos e sinais de EEG.https://tinyurl.com/yab6ll7fEanes Torres Pereira01eanes
16
MES_DOU04Segurança de dados, privacidade e computação na nuvemEm um mundo de IoT e computação na nuvem existem cada vez mais informações, sejam de empresas ou de indivíduos, sendo coletadas e distribuídas. Por mais que os desenvolvedores se esforcem, falhas de segurança ou atacantes internos podem causar vazamento e mau uso dos dados. Nesta linha de pesquisa, estaremos interessados em tecnologias que permitam a gerência e processamento de dados de forma que seja possível controlar e proteger o uso dos dados em todos os momentos. Como resultado, esperamos diminuir o risco de adoção de tecnologias de computação na nuvem nas mais diversas áreas de aplicação, permitindo a construção de aplicações que recebam dados sensíveis (como os coletados em IoT e smart cities) mesmo quando estas aplicações executam em ambientes não confiáveis.
https://www.securecloudproject.eu/
https://www.atmosphere-eubrazil.eu/
Andrey Brito12andrey
17
MES08Rastreamento ocular da atenção visual em escolhas multiatributosA atenção é um requisito em processos de aquisição de produtos. Nos dias atuais, a atenção visual vem sendo mensurada a partir da tecnologia do rastreamento ocular. Na última década, diversas pesquisas envolvendo o rastreamento ocular têm sido conduzidas nas áreas de Marketing e Interação Consumidor-Produto. Rótulos de produtos, especialmente alimentícios, são essenciais para guiar o consumidor no processo de decisão de aquisição. Entretanto, rótulos de produtos alimentícios contêm usualmente diversos atributos indicativos do método de produção e/ou do conteúdo nutricional, os quais em muitos projetos visuais dispersam a atenção visual do consumidor. Exceto por escolhas familiars e muito simples, a maioria das tomadas de decisão requerem a identificação e ponderação de múltiplos atributos. O propósito desta pesquisa é propor um modelo computacional para o processo de escolha de produtos alimentícios a partir da investigação de como a atenção visual a atributos impacta, em nível de fixações oculares randômicas, tomadas de decisão individuais.Huddleston, P. T., Behe, B. K., Driesener, C. & Minahan, S., Inside-outside: Using eye-tracking to investigate search-choice processes in the retail environment, Journal of Retailing and Consumer Services, Elsevier, vol. 43(C), 2018.

K. Gidlöf, A. Anikin, M. Lingonblad, and A. Wallin, “Looking is buying. How visual attention and choice are affected by consumer preferences and properties of the supermarket shelf” Appetite, vol. 116, pp. 29–38, 2017.

J. L. Orquin and S. Mueller Loose, “Attention and choice: A review on eye movements in decision making” Acta Psychol. (Amst)., vol. 144, no. 1, pp. 190–206, 2013.

Eustáquio RANGEL1rangel
18
MES09Análise de dados de rastreamento ocular em visualização de dadosEstudos envolvendo o rastreamento ocular diagnóstico usualmente focalizam o processo de mensuração da atenção de observadores durante a realização de tarefas visuais, típicas em diversas áreas de pesquisa, dentre as quais destacam-se a interação usuário-computador e a visualização da informação. Em estudos dessa natureza, um dispositivo reastreador coleta dados de um usuário que interage com aplicações computacionais, a partir de diálogos envolvendo images estáticas (fotografias) ou dinâmicas (vídeos). O dispositivo coleta registros das posições do olhar do usuário na tela. Na visualização de dados, o layout e a distribuição do conteúdo visual são usualmente referenciados como tempo de renderização (rendering time). O propósito desta pesquisa é formalizar o processo de aquisição e interpretação de dados a partir de um estudo de caso envolvendo rótulos de produtos alimentícios.R. Jianu and S. S. Alam. A data model and task space for data of interest (doi)
eye-tracking analyses, IEEE Transactions on Visualization and Computer Graphics, 2017.

S. Alam and R. Jianu. Analyzing eye-tracking information in visualization and data
space: from where on the screen to what on the screen, IEEE Transactions on Visualization and Computer Graphics, 2016.

Mershack Okoe, Sayeed Safayet Alam, and Radu Jianu. A gaze-enabled graph
visualization to improve graph reading tasks. In: Computer Graphics Forum, volume 33,
pp. 251–260. Wiley Online Library, 2014.
Eustáquio RANGEL1rangel
19
MES10Reconhecimento de Padrões em Sistemas de VideovigilânciaHá milhões de câmeras sendo usadas para o propósito de videovigilância no mundo (em 2007 havia 4 milhões apenas no Reino Unido). Convencionalmente, a análise de vídeos de segurança é realizada por operadores humanos. Dependendo da quantidade de horas de vídeo que devem ser analisadas, o trabalho pode ser extenuante e propício a erros. A utilização cada vez maior de mídias digitais tem permitido a automação das análises de vídeo. o rastreamento de pessoas suspeitas em espaços públicos frequentados por multidões está além da capacidade de seres humanos e, ainda, de sistemas automatizados, apesar do sucesso em resultados acadêmicos. Sistemas de videovigilância poderão, em 2019, capturar cerca de 3,3 trilhões de horas de vídeo de vigilância por dia. Essa grande quantidade de dados deverá ser processada de modo rápido e inteligente para que informações úteis sejam obtidas e recursos não sejam desperdiçados. Com uma carga de dados tão grande, o principal desafio é desenvolver métodos de processamento que possibilitem extrair as informações desses dados com o mínimo possível de intervenção humana. Diante do contexto apresentado, a presente proposta de tema de pesquisa tem como escopo a análise de vídeos para o reconhecimento de padrões sobre as pessoas presentes nos vídeos.
https://tinyurl.com/yc45z866
01eanes
20
DOU05Redução de bugs durante floss refactoringDurante a evolução de um software, é comum a deteorização do código, o que pode tornar sua manutenção complexa. Neste sentido, refatoramentos são aplicados objetivando melhorar aspectos estruturais do código, sem alteração semântica. Entretanto, estudos mostram que refatoramentos são propensos a erros. Um dos motivos para tal, é que edições de refatoramento são comumente realizadas em conjunto com outros tipos de edições (floss refactoring). Nesta pesquisa, buscaremos identificar possíveis padrões de como desenvolvedores combinam refatoramentos com outras edições de código, bem como propor estratégias que busquem minimizar a introdução de faltas nesse contexto.https://arxiv.org/pdf/1607.02459.pdfEverton Alves e Wilkerson Andrade10everton
21
DOU06Analisando o Impacto de Mudanças em Suítes MBTMBT (Model-Based Testing) busca a geração automática de suítes de teste a partir dos modelos do sistema. A ideia é que, com MBT, equipes ganhem em tempo e trabalhem com boas suítes de teste. Entretanto, a prática evidencia alguns desafios da utilização de MBT em cenários reais. Um desses desafios é a grande quantidade de casos de teste que se tornam obsoletos à medida que os modelos do sistema evoluem. Testes obsoletos são normalmente descartados, ocasionando a perda de importantes dados históricos. Esta pesquisa, busca a definição de estratégias para identificação e redução no número de casos testes MBT obsoletos durante a evolução de modelos do sistema, bem como a realização de estudos empíricos quando ao impacto que os tipos de mudança podem ocasionar nos testes.studos empíricos quando ao impacto que os tipos de mudança podem ocasionar nos testes.https://doi.org/10.1145/3266003.3266009Wilkerson Andrade e Everton Alves10wilkerson
22
MES11Análise e avaliação de linguagens e plataformas para SDNSoftware Defined Networks (SDN) ou Redes Definidas por Software vem ganhando a atenção e grande parte da comunidade acadêmica e da indústria da área de redes de computadores. Uma SDN é caracterizada pela existência de um sistema de controle (software) que pode controlar o mecanismo de encaminhamento dos elementos de comutação da rede por uma interface de programação bem definida. De forma mais específica, os elementos de comutação exportam uma interface de programação que permite ao software inspecionar, definir e alterar entradas da tabela de roteamento do comutador. Consideramos que existe um campo amplo para o desenvolvimento de novos projetos de pesquisa enfocando SDN, seja como ferramenta para o desenvolvimento de novos serviços e aplicações de redes, seja como alvo de estudos sobre novas abstrações (linguagens) e soluções de implementação.Reinaldo e Anderson02reinaldo
23
DOU07Análise da capacidade de redes veiculares em ambiente urbano baseada em traços reais de mobilidadeEsse projeto tem como principal motivação avaliar a real capacidade de comunicação entre entidades móveis (veículos) em um ambiente urbano (i.e., geograficamente bem definido e de mobilidade restrita). Para dar maior credibilidade à pesquisa, pretende-se utilizar traços reais de mobilidade disponíveis publicamente na Internet. Objetiva-se obter respostas às seguintes perguntas: 1) Qual o perfil de comunicação sustentável? 2) Quais as condições/características que possibilitam ou impedem a utilização de aplicações de referência nessas redes? 3) Qual/quais aspectos precisam ser melhor tratados/explorados para melhorar a capacidade da rede?Reinaldo e Anderson10reinaldo
24
DOU08Técnicas para prover feedback qualitativo para alunos de cursos introdutórios de programaçãoO processo de ensino e aprendizagem em disciplinas de introdução à programação apresenta diversos desafios, dentre eles destaca-se o elevado número de estudantes por turma. Na prática, tipicamente, essas disciplinas envolvem uma grande quantidade de exercícios, o que torna custoso fornecer manualmente feedback qualitativo para cada aluno ao longo do tempo. Estudos anteriores mostram que incluir os próprios alunos no processo de feedback qualitativo pode ser uma alternativa diluir os custos do processo de avaliação, pois eles são capazes de prover feedback semelhante ao dos professores. Nesse tema de pesquisa iremos desenvolver técnicas e ferramentas para melhor habilitar a inclusão do aluno no processo de avaliação qualitativa e fomentar o seu engajamento na disciplina.
Wilkerson Andrade10wilkerson
25
MES12Técnicas de Desenvolvimento Dirigido por Modelos para Engenharia de SoftwareDDM (Desenvolvimento Dirigido por Modelos) provê toda uma infraestrutura e padrões com potencial para aperfeiçoar diversas tarefas dentro do processo de desenvolvimento de software. Este trabalho se constitui na investigação, elaboração e validação de diferentes técnicas e artefatos que permitam alcançar este potencial de DDM em processos de desenvolvimento de software.Franklin Ramalho01franklin
26
MES13Técnicas para Construção e Evolução de Linguagens Específicas de DomínioÉ crescente o número DSLs (Domain Specific Languages) lançadas e amplamente usadas no mercado. Por outro lado, ainda há uma carência muito grande de infra-estrutura e técnicas para o completo desenvolvimento de uma DSL e composição destas. O objetivo deste projeto é investigar e propor técnicas para construção e evolução para DSLs.Franklin Ramalho01franklin
27
MES14Remoção de ruído e Enriquecimento de Dados de Trajetórias de Ônibus
A melhoria dos Sistemas Inteligentes de Transportes (em inglês, Intelligent Transport Systems - ITS) tem recebido bastante atenção nos últimos anos devido ao aumento na disponibilização de fontes de dados de transporte público. Algumas cidades brasileiras, como Curitiba e São Paulo, recentemente liberaram as trajetórias de GPS (Global Positioning Systems) de suas frotas de ônibus e, assim, ofereceram às comunidades científica e da indústria a oportunidade de acesso a um grande volume de dados de GPS. Entretanto, as fontes de dados de GPS comumente contém dados com ruído, faltantes e esparsos (coletados em intervalos de tempo que variam de segundos até minutos). Como resultado, as sequências de vias (avenidas/ruas) percorridas pelos veículos não podem ser determinadas simplesmente conectando os pontos de GPS consecutivos. Esta pesquisa visa propor técnicas para a remoção de ruídos e enriquecimento de dados de trajetórias de ônibus.
[1] 'Fora do ponto': mais da metade dos ônibus do Rio tem falha no monitoramento por GPS, https://g1.globo.com/rj/rio-de-janeiro/noticia/fora-do-ponto-mais-da-metade-dos-onibus-do-rio-tem-falha-no-monitoramento-por-gps.ghtml, último acesso em 15/out/2018.

[2] Zhang, A., Song, S., Wang, J., Yu P. S. Time series data cleaning: from anomaly detection to anomaly repairing. Journal
Proceedings of the VLDB Endowment VLDB Endowment Hompage archive Volume 10 Issue 10, June 2017, Pages 1046-1057.

[3] Pinelli, F., Calabrese, F., Bouillet, E. A Methodology for Denoising and Generating Bus Infrastructure Data. IEEE Transactions on Intelligent Transportation Systems, Volume 16, Issue 2, April 2015.
Carlos Eduardo01cesp
28
DOU09Revisitando as mecânicas de refatoramentosRefatoramentos são transformações de programas que preservam o comportamento observável e que melhoram alguma qualidade do programa. Muitas ferramentas como Eclipse e NetBeans implementam vários refatoramentos. Para cada refatoramento, a ferramenta implementa um conjunto de condições que devem ser satisfeitas para que a transformação não introduza erros de compilação, preserve o comportamento observável, e melhore a qualidade. Entretanto, as implementações possuem defeitos. Uma abordagem para melhorar este cenário é estabelecer formalmente todas as condições necessárias para cada refatoramento. Porém, esta abordagem é muito custosa e não trivial. Alguns trabalhos anteriores tentam aliviar o problema resolvendo-o para alguns refatoramentos considerando um subconjunto da linguagem. Como não existe uma teoria formal estabelecendo todas as condições necessárias para que um refatoramento seja correto, é natural que as ferramentas não chequem algumas condições, permitindo assim aplicar refatoramentos de maneira incorreta. Nesse trabalho, o objetivo é usar o JDolly, gerador automático de programas, e SafeRefactor, ferramenta para avaliar se dois programas possuem o mesmo comportamento observável, em uma técnica para investigar se desenvolvedores em geral, e de ferramentas de refatoramentos possuem o mesmo entendimento sobre o resultado esperado após a aplicação de um refatoramento. O objetivo é revisitar os nomes e as mecânicas descritas pelos refatoramentos na literatura e utilizados na prática. https://ieeexplore.ieee.org/document/7898404 ; https://tinyurl.com/y8gy2cprRohit Gheyi10rohit
29
MES_DOU05Refatoramento Seguro de sistemas configuráveisRefatoramentos são transformações de programas que preservam o comportamento observável e que melhoram alguma qualidade do programa. Muitas ferramentas como Eclipse e NetBeans implementam vários refatoramentos. Para cada refatoramento, a ferramenta implementa um conjunto de condições que devem ser satisfeitas para que a transformação não introduza erros de compilação, preserve o comportamento observável, e melhore a qualidade. Entretanto, as implementações possuem defeitos. Uma abordagem para melhorar este cenário é estabelecer formalmente todas as condições necessárias para cada refatoramento. Porém, esta abordagem é muito custosa e não trivial. Alguns trabalhos anteriores tentam aliviar o problema resolvendo-o para alguns refatoramentos considerando um subconjunto da linguagem. Como não existe uma teoria formal estabelecendo todas as condições necessárias para que um refatoramento seja correto, é natural que as ferramentas não chequem algumas condições, permitindo assim aplicar refatoramentos de maneira incorreta. Este cenário pode se tornar proibitivo em contextos como sistemas configuráveis com centenas de produtos. Nesse trabalho, o objetivo é propor uma técnica escalável para testar refatoramentos aplicados a sistemas configuráveis baseado no impacto da mudança será proposta. Para isso, técnicas escaláveis para analisar se todos os produtos de um sistema configurável compilam, e se não possuem fraquezas serão propostas. As técnicas propostas serão avaliadas em ferramentas e sistemas configuráveis reais como Eclipse, IntelliJ, Linux, Apache, Lua, BusyBox, dentre outros.http://www.cs.cmu.edu/~ckaestne/pdf/tse17-refactoringifdef.pdf ; http://www.dsc.ufcg.edu.br/~spg/larissa/gpce16main-preprint.pdf ; http://www.cs.cmu.edu/~ckaestne/pdf/icse16.pdf ; http://www.cs.cmu.edu/~ckaestne/pdf/ecoop15.pdfRohit Gheyi21rohit
30
MES15(Gamificação de) Processos de Desenvolvimnto de SoftwareIn today's software industry, technological prowess and ever-evolving customer requirements have led to more complex software demands. Agile based software development is increasingly being adopted by the software practitioners as it assures early software development and high quality software products. Also, it offers responsiveness to changes in user requirements, providing for their quick absorption during software development. On the other hand, the agile framework needs to be augmented with new practices, methods and tools to accommodate real practical issues (e.g., deadline forecasting or requirements elicitation in the presence of communications challenges). Work on this theme will identify such practical issues and propose solutions for them. Gamified solutions are of particular interest.
1) Design Thinking and Agile Practices for Software Engineering: An Opportunity for Innovation, Luis Corral, Ilenia Fronza, September, 2018 SIGITE '18: Proceedings of the 19th Annual SIG Conference on Information Technology Education Publisher: International World Wide Web Conferences Steering Committee. 2) Training Scrum with gamification: Lessons learned after two teaching periods, Ulrich Schäfer, April 2017, 2017 IEEE Global Engineering Education Conference (EDUCON)
Antão Moura (possivelmente em aprceria com Profa. Dra. Cecir Almeida e/ou Prof. Dr. Adriano Santos)01antao
31
MES16Análise, Sumarização e Visualização de Pull Requests
Análise, Sumarização e Visualização de Pull Requests Revisão de código (Code Review) é uma atividade fundamental para o controle de qualidade de código-fonte. Estudos empíricos mostram que, além de melhorar a comunicação das mudanças efetuadas, revisão também possibilita a identificação de bugs e de más práticas de programação. Atualmente, com a adoção em massa do Github, a colaboração em projetos open source é feita através de pull requests que são necessariamente revisados para que possam ser integrados ao código. Nesse contexto, é comum o cenário em que o conjunto de mudanças do pull request seja complexo o suficiente para dificultar a sua revisão. O objetivo desse tema é investigar a viabilidade de técnicas e ferramentas que, automaticamente, possibilitem um melhor entendimento das mudanças sugeridas. Para tanto, será necessário o uso de análise estática de código-fonte, técnicas de visualização e análise de dados para sumarização de pull requests.https://ieeexplore.ieee.org/document/7194568João Arthur Brunet02joao.arthur
32
MES17Mulheres na computação: influências e desafios na escolha da carreiraA participação de mulheres na computação e áreas afins tem diminuído nos últimos anos. Ao mesmo tempo, diversidade é uma característica muito buscada nos ambientes de trabalho relacionados a tecnologia. Que fatores influenciam as mulheres na escolha por cursos de computação ou áreas afins? O que motiva as mulheres da computação a permanecerem no curso? Que carreiras da computação elas escolhem ao finalizarem os cursos? Por que elas abandonam os cursos de computação? Essa linha de pesquisa tem o objetivo de investigar questões de gênero envolvendo a concepção das carreiras em computação e propor estratégias para ampliar a participação e permanência de mulheres na computação.https://www.cl.cam.ac.uk/athena-swan/GenderDiffs.pdf

https://static.googleusercontent.com/media/research.google.com/pt-BR//pubs/archive/43820.pdf
Lívia Sampaio
Raquel Lopes
01livia
33
MES18Soluções de overbooking para provedores de nuvem Provedores de nuvem no nível de infraestrutura como serviço oferecem recursos computacionais aos seus usuários e se responsabilizam em manter estes recursos operacionais obedecendo uma certa qualidade de nível de serviço. Esses recursos são oferecidos sob a forma de containers ou máquinas virtuais. Uma questão importante para os provedores é manter a utilização dos seus recursos alta, caso contrário, o custo de manter o serviço é muito alto. Para complicar essa questão, os usuários costumam super-estimar a quantidade de recursos a ser adquirida, causando o que chamamos de fragmentação interna e diminuindo a utilização dos recursos. Para lidar com esse problema, os provedores aplicam overbooking, que é uma forma de revender para um segundo (ou terceiro) usuário recursos já comprometidos com um primeiro usuário. Nesse projeto temos a intenção de estudar esquemas práticos de overbooking que garantam o aumento da utilização dos recursos dos provedores ao mesmo tempo que não degradem a qualidade do serviço oferecido aos usuários.https://dl.acm.org/citation.cfm?id=2494627

https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=6819458
Raquel Lopes e Marcus Carvalho01raquel
34
MES19Geração e Execução de Casos de Teste no contexto de Sistemas EmbarcadosSistemas de tempo real são aqueles cujo correto comportamento não depende somente dos resultados gerados, mas também de quando os resultados são gerados. Muitos desses sistemas são desenvolvidos com propósitos específicos e fortemente acoplados ao hardware e, por isso, são conhecidos como sistemas embarcados de tempo real. Esses sistemas têm se tornado cada vez mais presentes no suporte a execução de atividades de controle, monitoração e tomada de decisões. Neste contexto, confiança é uma importante propriedade que demanda aplicação sistemática das atividades de Verificação e Validação. Essa linha de pesquisa visa investigar, propor e aplicar estratégias e ferramentas voltadas para a automação das atividades de geração e execução de casos de teste neste contexto.Everton Alves01everton
35
MES20processamento de video full HD em tempo realExecução do algoritmo de identificação de faces Viola-Jones em vídeo proveniente de camera resolução full HD 30 quadros por segundo sem armazenar a imagem inteira. Elmar2elmar
36
DOU10Testando Sistemas Configuráveis com Compilação CondicionalSistemas configuráveis são aqueles que podem ser adaptados através de um conjunto de opções de configuração, as quais são refletidas no código em forma de variabilidade. O web browser Firefox, a família de sistemas Android, o kernel do Linux e a IDE Eclipse são alguns exemplos bem conhecidos desses tipos de sistema. Em geral, os sistemas configuráveis são implementados utilizando uma abordagem anotativa (conditional compilation) ou dinâmica (variability-encoding). Na primeira, o código é anotado com diretivas #ifdef, que checam se as opções de configuração foram ativadas para gerar o código do produto final, através de compilação condicional. Na outra abordagem, as opções de configuração são representadas através de variáveis que guardam blocos de código, que são ativados em tempo de execução.

Testar sistemas configuráveis é uma tarefa desafiadora, pois o número configurações cresce exponencialmente em relação a quantidade de opções de configuração. As técnicas de teste de sistemas monolíticos não podem ser diretamente aplicadas a esses tipos de sistema. E apesar de existirem técnicas (S-SPLat[1], por exemplo) voltadas para esses tipos de sistema, elas só funcionam para sistemas implementados na abordagem dinâmica. Porém, a maioria dos sistemas configuráveis são implementados utilizando compilação condicional, e para esses sistemas as ferramentas de análise não executam os casos de teste existentes com os produtos gerados, visto que esses produtos nem sempre compilam. Assim, os sistemas configuráveis com compilação condicional não conseguem se beneficiar das abordagens que exploram as configurações dinamicamente. Diante dessa limitação, o objetivo é estudar como transformar o código anotado (em tempo de compilação) para a abordagem dinâmica (em tempo de execução) [2,3,4], resultando em um catálogo de refatoramentos, que possam ser automatizados e verificados, com o intuito de preservar o comportamento. Desta forma, será possível aplicar aos sistemas anotados não apenas as técnicas de testes existentes para sistemas configuráveis dinâmicos, como também as abordagens de análise convencionais, contribuindo para melhorar a qualidade e elevar a confiabilidade nesses tipos de sistema, viabilizando o teste contínuo e em múltiplas configurações, de forma sistemática a um baixo custo.
[1] https://dl.acm.org/citation.cfm?id=3097444

[2] http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.570.9106&rep=rep1&type=pdf

[3] https://www.isf.cs.tu-bs.de/cms/team/thuem/papers/2016-JLAMP-Rhein.pdf
[4] https://arxiv.org/pdf/1701.08114.pdf
Rohit Gheyi e Sabrina Souto10rohit
37
MES_DOU06Análise de conteúdo textual representando interação entre pessoas.Neste tema de pesquisa, tem-se como objetivo desenvolver métodos baseados em Processamento de Linguagem Natural (NLP) para análise de textos que representam interações entre pessoas, tais como comentários de redes sociais, chats corporativos e transcrições de áudio contendo diálogos diversos, para fins de resolução de problemas de diferentes domínios. Enquanto grande parte de pesquisas em NLP são direcionadas a outros tipos de texto (e.g., notícias, artigos, livros, etc), novos métodos de análise deste tipo de conteúdo textual (i.e., diálogos) têm sido demandados por diversas áreas e têm se mostrado úteis para resolução de problemas diversos. Exemplos de cenários de aplicação incluem: mecanismos automatizados para avaliaar a qualidade de atendimentos realizados por empresas e instituições públicas; previsão de comportamento de usuários de redes sociais; dentre outros.Cláudio Campelo11campelo
38
MES20AMétodos para análise de trajetóriasIndivíduos percorrem diversos tipos de trajetórias em seu cotidiano, seja elas de curto prazo (ir ao trabalho ou visitar um amigo) ou de médio/longo prazo (residir temporariamente em outro país). Sistemas capazes de analisar trajetórias podem ser úteis em diversos contextos, como, por exemplo, no planejamento de grandes cidades, na prevenção de desastres, dentre outros. Este tema de pesquisa tem como objetivo investigar métodos de análise de trajetórias realizadas por indivíduos, sob diferentes perspectivas. Desafios de pesquisa estão relacionados à captura e integração de dados de fontes heterogêneas (incluindo dados de redes sociais); no desenvolvimento de modelos baseados em aprendizagem de máquina e em análise semântica de informação; no tratamento de dados vagos e incertos, dentre outros.Cláudio Campelo01campelo
39
MES21Entendendo bad smells no contexto de integração contínuaBad smells ou code smells são estruturas no código fonte que podem dar indícios de problemas de design e que podem ser resolvidos por refatoração. A presença de bad smells em um sistema pode ter um impacto negativo na qualidade do software, pois eles representam violações de boas práticas e princípios de design, tornando o software difícil de entender, manter e evoluir. Esse cenário pode piorar significativamente no contexto de integração contínua, onde os desenvolvedores integram seus códigos frequentemente através de ferramentas de gerenciamento de versões (como o github, por exemplo). Essa integração pode resultar em conflitos de merge, os quais podem estar associados a presença de bad smells no código. Recentemente, Ahmed et al [1] observou que códigos com bad smells possuem três vezes mais chances de estarem envolvidos em conflitos de merge. E a resolução desse tipo de conflito interrompe o desenvolvimento e pode introduzir bugs no sistema. Portanto, queremos evitar conflitos de merge detectando e removendo bad smells num processo pré-commit. Existem abordagens para detecção de resolução de bad smells (através de refactoring) [2], porém, em um estudo recente, Tufano et al [3] observou que os bad smells sobrevivem por muito tempo no sistema até serem removidos, e quando são removidos, uma percentagem muito baixa se dá através de refactorings. Sendo assim, existe uma necessidade de estudos para entender porque os bad smells não são removidos/refatorados. Seria um problema nas ferramentas atuais de detecção de bad smells? Ou o problema estaria relacionado a (não) percepção de bad smells pelos desenvolvedores?

[1] http://web.engr.oregonstate.edu/~ahmedi/pdf/paper11.pdf

[2] https://users.encs.concordia.ca/~nikolaos/publications/SANER_MIP_2018.pdf

[3] http://www.cs.wm.edu/~denys/pubs/TSE%2717-BadSmells.pdf
Melina Mongiovi e Sabrina Souto01melina
40
MES_DOU07Corrigindo automaticamente ferramentas de refatoramento através de exemplos 
Refatoramentos são transformações que melhoram a qualidade do código enquanto preservam o comportamento dele. Cada refatoramento possui pré-condições que precisam ser checadas para garantir a preservação do comportamento do programa. IDEs, como Eclipse e Visual Studio, automatizam diversos refatoramentos, como renomear método e extrair método. Pesquisas recentes em geração automática de testes revelaram diversos bugs nestas ferramentas que levam elas a introduzir erros de compilação ou mudança comportamental no código do usuário. No entanto, a maioria dos bugs continuam em aberto devido à dificuldade de corrigi-los, visto que é uma identificar e implementar as pré-condições ausentes é uma tarefa não trivial. Neste projeto, será proposta uma técnica baseada em síntese de programas e machine learning para corrigir automaticamente de ferramentas de refatoramento utilizando exemplos de programas que revelam pré-condições ausentes.
https://ieeexplore.ieee.org/document/7898404

https://onedrive.live.com/?authkey=%21AFEvg5mecN7yD8w&cid=45C6A51761A6D66D&id=45C6A51761A6D66D%2111156&parId=45C6A51761A6D66D%219907&o=OneUp

Melina Mongiovi e Everton Alves11melina
41
MES_DOU08Democratização e Ciência de Dados CívicaTécnicas e tecnologias de Ciência de Dados permitem ao cidadão participar do debate público sobre política e gestão pública de novas maneiras, por exemplo utilizando dados abertos e portais de transparência em conjunto com técnicas estatísticas para produzir evidências e argumentos por mudança, ou para fazer controle social. Por esse potencial, é importante democratizar o uso dessas técnicas e tecnologias, permitindo que o máximo de visões sejam contempladas, e diferentes perspectivas sejam representadas nesse debate. Esse tema de pesquisa explorará como promover essa democratização de maneira inclusiva, abrangente, e tecnicamente profunda. A pesquisa iniciará da experiência do Laboratório Analytics na promoção de eventos e outras iniciativas de hacktivismo, e ampliará os debates e eventos já desenvolvidos para produzir registros, reflexões e boas práticas para o processo. A pesquisa será realizada em conjunto com a profa. Raquel Lopes.Nazareno Andrade, Raquel Lopes11nazareno
42
MES22Visualização e análise de dados humanistaCiência de dados e visualização de dados são comumente aplicadas a grandes massas de dados para permitir constatações e análises por pessoas que estão longe e frequentemente não tem relação pessoal com os dados. Essa linha de pesquisa explorará o inverso dessa situação: a utilização de métodos de ciência de dados e visualização de dados em pequenos conjuntos de dados (small data), e a análise de dados com os quais o usuário tem relação pessoal, ou que são analisados no ambiente onde os dados são produzidos. A comunidade principalmente de visualização de dados tem hipotetizado que com abordagens como essa é possível promover outra relação com os dados (ver trabalho de Giorgia Lupi por exemplo), porém a ciência e engenharia em ciência de dados ainda não tem evidências sólidas de se e como isso acontece. Essa linha de pesquisa contribuirá para remediar essa situação. Nazareno Andrade01nazareno
43
MES23Especificação e Verificação Formal de SistemasMétodos formais vêm sendo aplicados com sucesso na verificação de hardware e software. Várias pesquisas e aplicações de métodos formais em sistemas críticos, embarcados e físicos-cibernéticos têm sido desenvolvidas. Métodos formais são ferramentas matemáticas para modelar e analisar sistemas. Esses modelos podem ter uma representação gráfica para facilitar a visualização e documentação. Técnicas de validação podem incluir simulação automática, geração e execução automáticas de casos de testes, e verificação de modelos. O uso de métodos formais para analisar sistemas pode melhorar o projeto de várias formas. Primeiro, a modelagem formal do sistema pode trazer os mesmos benefícios da modelagem de sistemas de software tradicionais como, por exemplo, um melhor entendimento do problema e documentação não ambígua. Também pode ser usada para validação com simulação e verificação de modelos, antes do código ser escrito. Neste trabalho, um conjunto de técnicas e métodos, utilizados em uma metodologia, para melhorar a confiança no funcionamento de sistemas como, por exemplo, físicos-cibernéticos serão pesquisadas e propostas.https://link.springer.com/article/10.1007/s10270-017-0616-7

https://link.springer.com/article/10.1007/s10270-018-0690-5
Leandro Dias e Kyller2kyller
44
MES24Integração dos paradigmas SDN, Virtualização (NFV) e Computação em NuvemSDN (Software Defined Networking), NFV (Network Function Virtualization) e Computação em Nuvem (Cloud Computing), estão proporcionando uma revolução no provisionamento de serviços de rede. SDN desagrega o plano de dados do plano de controle, e consolida as funções de controle em um elemento lógico centralizado chamado controlador, que resulta em um gerenciamento mais eficiente e uma melhor programação dos dispositivos de rede. NFV foca na separação entre a função de rede e o hardware subjacente, permitindo a utilização de equipamentos de propósitos gerais. E a computação em nuvem possibilita o provisionamento dinâmico de recursos computacionais sob demanda com menor esforço de gerenciamento. A integração desses paradigmas está sendo alvo de pesquisa pela indústria e academia, e possui uma grande diversidade de desafios.Reinaldo e Anderson02reinaldo
45
MES25Um estudo sobre alta disponibilidade de serviços através de virtualizaçãoUma das questões relevantes no contexto de data centers é a capacidade do data center oferecer um serviço com um alto grau de disponibilidade para as aplicações, possibilitando que elas possam ser executadas 24/7. Instituições públicas e/ou privadas necessitam manter seus serviços de TI disponíveis para seus usuários com menor tempo de inatividade possível. Desta forma, a alta disponibilidade tem como foco a redução no tempo de inatividade das aplicações de modo a minimizar os impactos de possíveis interrupções nos sistemas informatizados. Outra tecnologia que vem se apresentando eficiente na maximização dos recursos computacionais é a virtualização. A ideia dessa proposta é estudar e propor mecanismos, técnicas ou arquiteturas que possam aliar as tecnologias de virtualização e alta disponibilidade para alcançar um alto grau de disponibilidade (ou uma disponibilidade aceitável em termos de SLA) dos serviços oferecidos em um data center.Reinaldo e Anderson02reinaldo
46
DOU11Deep Multitask Learning para avaliação automática de requisitos ICAOA organização Internacional de Aviação Civil (International Civil Aviation Organization - ICAO) propôs um protocolo que define 26 requisitos que fotos de passaporte devem obedecer [1], entre eles: orientação adequada da face, olhos virados para a câmera, iluminação adequada, cabelos não podem cobrir a face, background uniforme, presença de olhos vermelhos, presença de sombras, etc. Atualmente, há um sistema online que compara algoritmos que verificam esses requisitos [2]. A proposta desse projeto é desenvolver um sistema baseado em Deep Learning para avaliação automática dos requisitos do ICAO. Para isso, pode-se investigar uma técnica recente de Deep Learning conhecida como Multitask Learning, onde uma só rede é capaz de aprender diferentes tarefas ao mesmo tempo, gerando predições individuais para cada uma delas [3].[1] Biometric Deployment of Machine Readable Travel Documents, ICAO 2003
[2] FVC-ongoing. Benchmark area: Face Image ISO Compliance Verification. Disponíivel em: https://biolab.csr.unibo.it/FVCOnGoing/UI/Form/BenchmarkAreas/BenchmarkAreaFICV.aspx
[3] Zhang, Yu, and Qiang Yang. "A survey on multi-task learning." arXiv preprint arXiv:1707.08114 (2017).
Leonardo Vidal Batista e Herman Martins Gomes20hmg
47
DOU12Realce de Imagens de Impressão Digital utilizando Autocodificadores Convolucionais ProfundosAlgoritmos de casamento (matching) de impressões digitais são fortemente influenciados pela qualidade das imagens [1]. Em geral, sistemas de casamento de impressões digitais aplicam um pré-processamento na imagem de entrada para eliminação de regiões espúrias, demarcação da região de interesse, binarização e realce (enhancement) [2] de características relevantes. Métodos clássicos de realce envolvem a aplicação iterativa de bancos de filtros de Gabor seguida de pós-processamento, que não consegue resultados satisfatórios quando a qualidade da imagem original é excessivamente baixa. Este projeto tem como objetivo investigar a aplicabilidade de Autocodificadores Convolucionais Profundos para realce de imagens de impressões digitais. A depender dos resultados, a rede pode ser estendida para classificação [3], geração de imagens de impressão digital e detecção de singularidades e minúcias [4].[1] https://ieeexplore.ieee.org/search/searchresult.jsp?newsearch=true&queryText=fingerprint%20matching
[2] https://ieeexplore.ieee.org/search/searchresult.jsp?newsearch=true&queryText=fingerprint%20enhancement
[3] WANG, Ruxin et al. Fingerprint classification based on depth neural network. arXiv preprint arXiv:1409.5188, 2014.
[4] DARLOW, Luke Nicholas; ROSMAN, Benjamin. Fingerprint minutiae extraction using deep learning. In: Biometrics (IJCB), 2017 IEEE International Joint Conference on. IEEE, 2017. p. 22-30.
Leonardo Vidal Batista e Herman Martins Gomes10hmg
48
MES26Caricaturização Automática de Faces em Vídeos DigitaisCaricaturas faciais podem ser definidas como uma representação pictórica da face de um indivíduo, na qual são exageradas as características mais distintas e simplificadas as características mais comuns. Pode-se compor uma caricatura a partir de vários estilos diferentes, incluindo humorísticos, cômicos, ridículos, insultantes ou ofensivos, em função da finalidade desejada da comunicação. Neste contexto, o objetivo central deste tema de pesquisa é propor uma abordagem para a caricaturização automática de faces em vídeos digitais. São objetivos específicos: estudar técnicas que permitam aprimorar o processo de detecção de pontos fiduciais da face em vídeos; pesquisar algoritmos de deformação que sejam temporalmente coerentes e que acomodem variações de pose da face; implementar e validar a abordagem proposta no tocante à qualidade do resultado final a partir de estudos experimentais.Lee, E. J., Kwon, J. Y., & Lee, I. K. (2007). Caricature video. Computer Animation and Virtual Worlds, 18(4‐5), 279-288.

Mingming, Z., et al.(2010). The 3D caricature face modeling based on aesthetic formulae. In Proc. ACM SIGGRAPH Conf. on Virtual-Reality Continuum and its Applications in Industry (pp. 191-198).
Herman Martins Gomes01hmg
49
MES27Interpretabilidade e transferëncia de conhecimento em redes neurais convolucionais profundasConsiderando que redes neurais convolucionais profundas atingiram um estágio de desenvolvimento em que são capazes de classificar imagens com desempenho próximo ou muitas vezes superior ao de humanos, começa a surgir uma crescente preocupação de que tais modelos de redes neurais precisam ser interpretáveis e auditáveis, antes que possam compor aplicações do mundo real. Por se tratarem de modelos extremamente complexos, com milhares ou até mesmo milhões de parâmetros, a capacidade de explicar (de maneira inteligível por seres humanos) as saídas produzidas por tais modelos é tarefa preponderante para minimizar riscos em diversas aplicações críticas. A área de interpretabilidade de redes neurais se formou em resposta a essa preocupação. Adicionalmente, muitas redes neurais profundas treinadas em imagens naturais exibem um fenômeno comum: características visuais primitivas são normalmente aprendidas nas primeiras camadas. Tais características não são específicas a um determinado conjunto de dados ou tarefa, mas sim gerais, no sentido de serem aplicáveis ​​a muitos contextos diferentes. Tais características eventualmente transitam, ao longo das camadas da rede, para decisões específicas da tarefa, mas essa transição ainda não foi estudada extensivamente. Inserido no contexto acima, este tema de pesquisa tem como objetivo principal estudar e propor formas para interpretação das características aprendidas por redes neurais convolucionais profundas e formalizar o problema de como transferir tais características de um problema para outro.http://cs231n.github.io/understanding-cnn/

https://distill.pub/2017/feature-visualization/

https://www.cv-foundation.org/openaccess/content_cvpr_2015/papers/Nguyen_Deep_Neural_Networks_2015_CVPR_paper.pdf

https://arxiv.org/abs/1412.6856

https://papers.nips.cc/paper/5347-how-transferable-are-features-in-deep-neural-networks.pdf
Herman Martins Gomes01hmg
50
MES28Um estudo empírico sobre data scientists
Data scientist é um profissional especialista em dados analíticos e um dos mais procurados no momento. Este possui habilidades técnicas para resolver problemas complexos, visando a extração do conhecimento para possíveis tomadas de decisão. Apesar do grande crescimento desses profissionais, ainda há poucos estudos sobre as práticas de programação usadas por esse tipo de desenvolvedor. O objetivo dessa linha de pesquisa é utilizar técnicas de mineração de software e estudos empíricos para entender melhor quais são as práticas adotadas por data scientists. O resultado deste estudo deve impactar no desenvolvimento de novas ferramentas para este tipo de desenvolvedor.https://dl.acm.org/citation.cfm?id=3173606Melina Mongiovi e Gustavo Soares01melina
51
MES29Ferramentas e Métodos de Ensino e Aprendizado de ProgramaçãoProgramação e linguagens de programação são provavelmente a espinha dorsal de qualquer curso de ciência da computação. Formar melhores programadores e melhorar as técnicas existentes para formá-los é, portanto, desafio permanente. Este tema de pesquisa é, na verdade, um tema guarda-chuva que, nos últimos anos, se tornou meu principal tema de interesse em pesquisa e atuação. Ele comporta inúmeras ideias e estudos que incluem i) metodologias de ensino de programação, ii) projeto, desenvolvimento e avaliação de ferramentas de apoio, iii) estudos de aplicação de métodos e/ou ferramentas e seus efeitos. Para concretizar um pouco, segue uma lista de palavras-chaves que caracterizam os estudos mais recentes que fizemos: self-paced learning, feedback qualitativo de exercícios de programação, gamificação para estímulo ao estudante, clusterização de soluções de exercícios, engajamento e motivação, cooperative learning.

Obs: embora o tema esteja em meu nome apenas, eu prefiro atuar em parceria com outros professores na maioria dos casos.
Dalton Serey01dalton
52
MES30Inteligência Computacional Aplicada ao Diganóstico e à Predição de Falhas em Equipamentos de Plantas IndustriaisA identificação de problemas em equipamentos de plantas industriais é de grande
importância para evitar a ocorrência de distúrbios no sistema, pois um defeito pode
causar perda de desempenho no processo de produção e também consequências
graves, tais como: a queima ou danificação de equipamentos, a morte de pessoas,
catástrofes ambientais, dentre outros. Dentro desse contexto, o uso de técnicas de inteligência computacional se torna de extrema relevância para detecção, diagnóstico e predição de falhas com rapidez para uma operação confiável, segura e eficiente da planta e para a manutenção da qualidade de produção.
https://www.sciencedirect.com/journal/journal-of-loss-prevention-in-the-process-industries/vol/35/suppl/CJoseana Macêdo Fechine Régis de Araújo1joseana
53
MES31Pesquisa e desenvolvimento de modelos de integração entre middlewares e serviços para a Internet das Coisas e sistemas de Computação de Borda.Com o novo paradigma da Internet das Coisas (IoT), várias atividades de pesquisa e desenvolvimento estão sendo realizadas principalmente com foco em novo protocolos e arquiteturas. Essas atividades, em geral, têm como objetivo oferecer melhorias em aspectos relacionados a interconexão entre objetos (coisas), eficiência energética e de comunicação, novas APIs, e o desenvolvimento e integração de novos serviços. Entretanto, considerando que no ambiente da IoT vários desses objetos estão distribuídos em diferentes localidades e com diferentes características de conectividade, novos desafios de implantação surgem quando é necessário oferecer serviços com restrições em tempo real para esses objetos. Como resposta a essa necessidade, um novo paradigma começa a ser discutido, onde várias funcionalidades de plataformas de computação em nuvem começam a ser implantadas na fronteira de redes locais, viabilizando a visão de Edge e/ou Fog Computing. Nesse contexto, o tema proposto tem como foco o desenvolvimento de pesquisas em sistemas de computação, com foco em Engenharia de Software, tendo como alvo a exploração dos requisitos e desafios apresentados que os serviços de IoT e EC, tanto no âmbito de sistemas embarcados quanto no âmbito de sistemas de informação.https://ieeexplore.ieee.org/document/7955906

https://ieeexplore.ieee.org/document/7931566

https://ieeexplore.ieee.org/document/7488250
Danilo Santos02danilo.santos@dee.ufcg.edu.br
54
51