Trabalho de Formatura - BCC (IME / USP)

Propostas de temas (pelos profs) para 2017

Última atualização: 14/março/2017


Prof. Diogo Patrão

  1. Extração e inferência de dados clínicos sobre pacientes oncológicos
  2. Text mining em laudos de laboratório clínicos



Prof. Routo Terada

Criptografia

    Objetiva desenvolver algoritmos baseados em problemas computacionais difíceis, para (1) esconder informação das pessoas desautorizadas, (2) autenticar usuário de sistemas, e (3) assinar digitalmente um documento. Há diversas aplicações em, por exemplo, banco ou loja virtual, e-mail, comando militar, diplomacia, urna eletrônica, etc. Exige conhecimento prévio de Álgebra I, e Programação.

    Sub-tema a ser escolhido conforme o perfil do aluno.




Prof. Ernesto G. Birgin

Desenvolvimento de um aplicativo para sugerir rotas para ciclistas

    Este projeto trata sobre um problema de roteamento que pode ser denominado "problema do ciclista urbano". Trata-se de sugerir rotas para ciclistas que levem em consideração, além de distâncias, critérios tais como a preparação física do ciclista (que o habilita em maior ou menor grau a subir ladeiras) e a sensação de segurança do ciclista (que interfere na escolha de rotas com maior ou menor tráfego de carros e ônibus). Por conta destes critérios, a rota ideal pode variar de ciclista para ciclista. A determinação de uma rota com base em preferências pessoais e o aprendizado contínuo para melhorar a rota sugerida configuram um desafio matemático e computacional que envolve conhecimentos de áreas variadas (modelagem matemática, otimização, inteligência artificial, banco de dados, etc.).

    A Woole é uma startup de mobilidade urbana que atua na criação de um aplicativo de navegação para ciclistas nos moldes sugeridos acima. Atualmente, está em fase de desenvolvimento de produto e à procura de desenvolvedores. Este projeto poderá ser desenvolvido em conjunto com a Woole.




Prof. Fabio Kon

Projetos no contexto do INCT da Internet do Futuro para Cidades Inteligentes

    O INCT da Internet do Futuro para Cidades Inteligentes (http://interscity.org) têm 4 possíveis tópicos para TCC em 2017. Os sistemas abaixo descritos tiveram o seu desenvolvimento já iniciado mas precisa de mais alunos para continuar o seu desenvolvimento. Em todos os casos, os alunos de TCC serão coorientados por um alunos de pós do IME e um docente do IME. Alunos interessados deverão enviar o resumo escolar do jupiterweb para o Prof. Fabio kon@ime.usp.br.

    1. Sistema de análise e visualização de dados de saúde (internações hospitalares no SUS) em parceria com a Secretaria Municipal de Saúde da Cidade de São Paulo. O sistema está sendo desenvolvido em Ruby on Rails e exige um grande comprometimento do(s) aluno(s) participantes por envolver um cliente real (Secretaria Municipal de Saúde da Cidade de São Paulo).

    2. Sistema de análise e visualização de atrasos de ônibus na cidade de São Paulo, em colaboração com a startup Scipopulis de ex-alunos do IME. O sistema está sendo desenvolvido em Ruby on Rails e exige um grande comprometimento do(s) aluno(s) participantes.

    3. Sistema gamificado, georreferenciado com realidade aumentada para visita a pontos de interesse artístico-cultural da cidade de São Paulo. Em particular, será implementado o suporte a um guia de visita virtual a obras de intervenção artística realizadas no passado na cidade, em parceria com aluna de doutorado da ECA. O sistema está sendo desenvolvido em Java/Android.

    4. Simulação de grande escala de Cidades Inteligentes. O aluno irá trabalhar em colaboração com o doutorando Eduardo Zanbom Santana no desenvolvimento de software para simulação de Cidades Inteligentes em grande escala. Será baseado na linguagem Erlang e no simulador MATSim.



Prof. Valdemar Setzer

PRÉ-PROCESSADOR DE TABELAS DE DECISÃO PARA PYTHON

    Uma das grandes dificuldades na programação é o encaixamento de ifs, dando uma árvore binária de condições. Com 2 ou mais encaixamentos, fica difícil de fazer um teste de mesa, simulando todas as condições e as ações a serem executadas, pois o ser humano não pensa dessa maneira. As Tabelas de Decisão (TDs) são uma ferramenta visual para compor condições e as ações facilitando enormemente a programação, a compreensão e o teste de mesa de um programa. Com 3 encaixamentos de ifs, pode-se ter até 7 condições e 14 blocos de ações. Uma TD equivalente tem 3 linhas de condições e, separadamente, uma ou poucas mais linhas de ações, numa apresentação gráfica muito simples.

    Além disso, as TDs podem ser usadas para super-estruturar um programa, separando-se a parte de entrada de dados, das condições que testam seus valores (usando as TDs) e das ações propriamente ditas. Nas próprias TDs, as condições são totalmente separadas das ações, o que não ocorre em geral em encaixamento de ifs.

    Este TCC consistirá na programação, em Python, de um pré-processador que aceita como entrada um programa em Python no qual estão inseridas TDs graficamente, e gera um programa em Python com os ifs correspondentes.

    Bibliografia:

    • Nagayama, Satoshi. Tabelas de Decisão e Implementação do Gerador I-M-E. Dissertação de mestrado, IME-USP, 1991.
    • Setzer, V.W. Superstructured programming and the I-M-E application generator. Report N. 7 Phillips-Universität Marburg, 1991.