Trabalho de Formatura - BCC (IME / USP) |
Propostas de temas (pelos profs) para 2017
Prof. Diogo Patrão
Prof. Routo Terada
Sub-tema a ser escolhido conforme o perfil do aluno.
Prof. Ernesto G. Birgin 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
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.
Prof. Valdemar Setzer
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:
|