Codefest 2011

Outubro 16, 2011

Este final de semana ocorreu a primeira edição do Codefest. A ideia do programa promovido pela Conpec é a de aproximar empresas, que propõem desafios de ordem prática, e os alunos, que por sua vez devem resolvê-los com soluções inovadoras.

Foram definidos 5 temas, cada qual organizado por um empresa. Os integrantes da equipe vencedora de cada tema ganhariam um smartphone da motorola. A Buscapé, propôs o tema que achei mais interessante: um problema de otimização em grafo (não posso dar mais detalhes devido a um contrato de sigilo).

Juntei-me a mais alguns amigos da pós-graduação em otimização, além de um pós-graduando em reconhecimento de padrões fazendo pós na elétrica.

A descrição dos problemas foi divulgada há cerca de duas semanas. Na verdade a competição era para ter acontecido pelos idos de Agosto, mas houve um problema e a organização precisou adiar. Isso complicou a vida de alguns participantes como eu, que agora estou trabalhando 40h por semana.

Mesmo assim, consegui dedicar um bom tempo no problema, graças a um feriado e alguns finais de semana. Durante esse tempo, nossa equipe atacou o problema com diversas abordagens e acabamos optando pela que apresentou melhores resultados nas instâncias de testes.

Neste Sábado e Domingo houve uma etapa presencial no Instituto de Computação onde as equipes deveriam concluir seus projetos e apresentá-los. No caso do problema da Buscapé, tínhamos que submeter nosso programa a uma bateria de testes fechados.

Haviam apenas 2 concorrentes com o mesmo tema que nossa equipe. Infelizmente não ganhamos a competição :( Cometemos um erro técnico grave que teria sido facilmente evitado com boas práticas de programação, mais especificamente testes unitários. Além disso, focamos muito na solução do problema e pouco na apresentação da mesma.

Fiquei chateado pelo fato de ter me esforçado tanto e uma bobeirinha ter estragado todo o trabalho, mas são coisas que acontecem e o melhor que dá pra fazer é tentar aprender com os erros :)

Conclusão

No geral, achei a iniciativa muito bacana e espero que seja repetida nos próximos anos (embora eu não possa mais participar). Houve alguns problemas de organização, mas totalmente compreensíveis dado que é a primeira vez que essa competição é realizada.

Também achei legal que vieram pessoas de fora (tinha até equipe de Natal) e de outros cursos (por exemplo mecatrônica). Seria muito bom ver a competição atingir abrangência nacional, ou mesmo que outras Universidades copiassem o modelo e realizasse competições locais.

As empresas deveriam ser as mais interessadas nisso já que, além de agregar ideias que possam evoluir para produtos, é uma forma eficaz de garimpar talentos.

Não tinha me dado conta, mas essa competição foi exatamente o que eu gostaria que a arena MTE fosse quando participei em 2010.

Anúncios

Defesa do Mestrado

Setembro 11, 2011

Segunda-feira passada foi a defesa da minha tese de mestrado. Felizmente correu tudo bem e fui aprovado :)

Do trabalho

O título da minha dissertação foi “Mapas de Símbolos Proporcionais”. O nome ficou bem genérico e não dá nem para saber do que se trata, hehe. Talvez fosse melhor “Problemas de otimização combinatória envolvendo mapas de símbolos proporcionais”.

Mapa de símbolos proporcionais com as maiores cidades brasileiras

De qualquer maneira, basicamente o que fizemos foi abordar dois problemas envolvendo esse tipo de mapa através de programação linear inteira, buscando soluções ótimas. Fizemos estudos teóricos mostrando que a formulação utilizada é forte, além de encontrarmos desigualdades adicionais. Também desenvolvemos técnicas de pré-processamento usando divisão-e-conquista e finalmente contribuímos com a paralelização de uma abordagem heurística.

Da banca

A banca da defesa foi composta pelo meu orientador, o prof. Pedro e pelos professores Carlinhos do IME-USP e o prof. Hélio do IC.

O prof. Carlinhos é um dos grandes responsáveis pela organização da maratona e por isso devo boa parte de minha formação a ele. O prof. Hélio foi o responsável da disciplina de estrutura de dados da qual eu fui monitor em 2010 e também foi meu professor de computação gráfica.

Ambos foram bem tranquilos na arguição, tendo apenas sugerido algumas correções ortográficas e uma melhor explicação aqui e acolá.

Da apresentação

Eu sou bastante tímido e tinha pavor de apresentar em público. Acho que os seminários do LOCo fizeram com que eu me acostumasse a apresentar, pelo menos quando se trata do meu próprio trabalho.

fonte: http://www.greenlights.org/blog/wp-content/uploads/2011/05/ostrich.jpg

Além disso, aprendi várias técnicas com meus orientadores sobre como apresentar melhor. Eis algumas delas:

  • Olhar para a platéia (esse é difícil :P)
  • Não ler os slides (além de te deixar de costas pra platéia, você não convence que sabe o conteúdo da palestra)
  • Não voltar slides. Se você sabe que vai precisar mostrar um slide que apareceu antes, duplique-o na confecção da apresentação. Se não der pra fazer isso, pelo menos avise que está voltando os slides para a plateia não ficar perdida.
  • Use “nós” ao invés de “a gente”. A vantagem é que no primeiro caso podemos usar sujeito oculto, o que torna a fala mais agradável de se ouvir.

Do aprendizado técnico

Embora eu não tenha me dado conta na hora, acho que aprendi bastante coisa no mestrado, principalmente sobre programação linear inteira e desenvolvimento de software em C++. Até então eu só tinha feito programinhas de ~100 linhas para resolver problemas de maratona, sem usar muitos conceitos de orientação de objetos.

No mestrado fiz as coisas pensando em reuso, o que acabou sendo muito bom, pois tive que utilizar código que eu havia escrito depois de um ano. O código ficou com umas 10.000 linhas.

Embora tenha usado bibliotecas como CGAL e XPRESS, se eu fosse reescrever meu código, teria usado mais bibliotecas como por exemplo a Boost.

Do futuro

Acadêmico: Há algumas tarefas possíveis para complementar o que fiz no mestrado e minha ideia é realizá-las assim que sobrar um tempinho. Mesmo não tendo certeza se voltarei para um doutorado, eu gosto bastante de publicar :) e isso me motiva a continuar pesquisando.

Profissional: Pesquisa em áreas como geometria computacional é rara de ser encontrada fora da academia, pelo menos no Brasil. Eu ia fazer meu mestrado em geometria, mas meu orientador sugeriu um problema que no final das contas usou bastante otimização combinatória e eu sou grato pelo rumo que as coisas tomaram. Graças a isso estou trabalhando em uma empresa de pesquisa operacional. Otimização em geral é uma área com aplicação direta na indústria e por isso é possível encontrar algumas empresas do ramo no Brasil.


Sibgrapi 2011

Setembro 4, 2011

Nessa última semana aconteceu o Sibgrapi 2011, que é uma conferência brasileira de abrangência internacional de computação gráfica, padrões e imagens. O evento foi sediado em Maceió, Alagoas. Tivemos um artigo aceito para essa conferência e fui lá apresentar.

O Sibgrapi deste ano foi composto por diversos mini-cursos, palestras de pesquisadores de renome na área, apresentações orais dos artigos (em inglês) e apresentação de pôsteres (artigos e também teses de iniciação/mestrado/doutorado).

Mini-cursos

Acho que a parte mais interessante de conferências são os minicursos. Nessa edição do Sibgrapi, cada mini-curso foi dividido em duas partes.

Houve um particularmente interessante, sobre fotografia computacional, onde eles explicaram alguns conceitos básicos sobre ótica e fotografia e falaram dos principais temas dessa área.


Imagens com diferentes tempos de exposição (fonte)

Foram discutidas diversas técnicas de composição de imagens. A mais legal pra mim, sem dúvida é a do high dynamic range (HDR), que consiste em usar imagens com diferentes tempos de exposição (como no exemplo da figura acima) para compor uma imagem visualmente mais atraente (como no exemplo da figura abaixo). Outros exemplos impressionantes podem ser encontrados nesse site.


Imagem composta (fonte)

Falaram também sobre light fields, que pelo que entendi consiste em representar mais informação a partir de um dado ponto de vista. Um exemplo disso é essa câmera que tira fotos com diferentes focos que podem ser escolhidos depois, na própria imagem. Veja exemplos aqui.

Assisti também a um tutorial sobre OpenCV, mas só peguei a primeira parte, pois a segunda conflitava com o horário do tutorial sobre fotografia computacional.

Apresentação de artigos técnicos

Havia sempre duas seções paralelas de apresentações de artigos técnicos, o que impossibilitou assistir a todas elas. Pelo que pude perceber, uma linha era voltada à computação gráfica e a outra à processamento de imagens. Acabei escolhendo apenas seções de computação gráfica.

Pra dizer a verdade, entendi muito pouco dos trabalhos apresentados, mas os que mais me chamaram a atenção foram de modelagem de terrenos em tempo real usando CPU-GPU (link) e texturização de modelos 3D com poucas características geométricas (link).

Apresentei nosso trabalho em uma seção de visualização. Trata-se de uma solução para uma das variantes do problema de mapas de símbolos proporcionais que abordei no meu mestrado (link). Pretendo comentá-la em um post futuro.

Pôsteres de teses

O projeto mais interessante era a tese de mestrado de Adriana Schulz (IMPA) que estudou animação computadorizada, mais especificamente para simulação de coreografia. Esse site tem diversos vídeos bacanas!

Fato curioso

Embora os artigos tivessem que ser apresentados em inglês, os mini-cursos foram ministrados em português. Além disso, as palestras dadas por convidados brasileiros também estavam sendo dadas em português. Aí houve uma hora em que na seção de dúvidas, um cara fez a pergunta em alemão. Depois de todo mundo ficar com cara de pastel, ele repetiu em inglês, criticando o fato de uma palestra de conferência de nível internacional ter sido dada em português. A partir de então, só tivemos palestras em inglês :)

Turismo

Aproveitei minha ida a Maceió para conhecer alguns pontos turísticos de Alagoas. A cidade de Maceió em particular tem uma boa estrutura para turismo, com empresas de transporte e serviço de guias. Consegui visitar a praia do Gunga, onde existem falésias compostas de camadas coloridas.


Camadas coloridas das falésias

Também fui a Maragogi, famosa por suas piscinas naturais, onde se pode mergulhar em meio a peixes coloridos e corais.


Piscina natural em Maragogi

Conclusão

Foi a primeira vez que apresentei em inglês e para um público desconhecido. Acredito ter sido um bom ensaio para a minha defesa que ocorrerá logo mais.

Os passeios nos últimos dias também serviram como um descanso relâmpago, pois esses últimos três meses têm sido bem puxados :)


Google Developer Day 2010

Novembro 5, 2010

Sexta-feira passada amigos do instituto e eu, fomos ao Google Developer Day, que é um evento para apresentar as novas tecnologias do Google para desenvolvedores de aplicativos. O evento era gratuito. Para se inscrever tinha que mandar um currículo e resolver uns probleminhas de programação.

Introdução

Havia quatro assuntos principais de palestras: Android, Chrome/HTML5, Computação em Nuvem e API’s do Google. As palestras ocorreram em três salas diferentes, de forma que não era possível assistir a todas. Meu principal interesse eram as palestras sobre Chrome e HTML5, pois tenho alguma experiência com desenvolvimento web. Não sabia nada sobre Android, mas como queria aprender alguma coisa, decidi assistir algumas das palestras relacionadas.

Minha experiência com desenvolvimento de aplicativos sempre foi bem superficial. Já tinha lido alguns tutoriais sobre Web Toolkit e usado a API do Google Maps. Também já comecei o desenvolvimento de uma extensão para o Firefox (até descobrir que alguém já tinha feito o que eu estava pensando em fazer, só que melhor :P – considerei a hipótese de adaptá-la para o Google Chrome, mas faltou tempo e disposição).

Bonequinho que ganhamos de brinde

Abertura

A palestra de abertura deu uma geral sobre os quatro tópicos. Uma das apresentações que mais chamaram a atenção foi sobre Chrome/HTML5, onde apresentaram um vídeo que roda usando um componente do HTML5, chamado canvas. Ele usava o acelerômetro presente em alguns notebooks e celulares, pois quando o notebook no qual o vídeo era apresentado foi inclinado, o vídeo desmoronou. Também apresentaram cenas 2D e 3D, renderizadas em tempo real, usando aceleração por hardware (através de GPUs).

Outra palestra que arrancou aplausos foi sobre o sistema de reconhecimento de voz em português, presente na nova versão do Android. Funcionou muito bem quando o palestrante fez uma pesquisa pronunciando uma determinada frase.

Depois tivemos que escolher as palestras. Vou comentar brevemente sobre as que assisti. Para o cronograma completo, veja o site oficial.

Melhore seu Navegador com Extensões para o Google Chrome

Nessa palestra foi apresentado o sistema de extensão do google chrome. Pareceu bem simples de usar. O criador do Chromed Bird apareceu por lá para dividir suas experiências. Foi passado o endereço do google-groups dos desenvolvedores de extensões do Chrome.

Desenvolvendo para uma Web mais rápida

Aqui foram apresentados aspectos do HTML5 e da nova versão do Javascript (1.6) relacionados a desempenho. Alguns deles são: uso de cache para aplicações web, uso de processadores multi-core (através de passagem de mensagens) e websockets, que é quase um TCP/IP para Javascript, bastante interessante para aplicativos multi-usuários que exigem resposta rápida, como por exemplo chats e jogos multi-player.

HTML5++ – O Futuro da Web, Agora!

Foram Detalhadas as novas funcionalidades do HTML5. As que me lembro são:

  • Execução de vídeos usando canvas (como na palestra incial);
  • Drag-and-drop (sem Javascript): mover objetos dentro de uma página, ou fazer upload de arquivos apenas movendo ícones da pasta local para o browser;
  • Geolocalização: acesso às coordenadas geográficas do usuário;
  • Orientação do aparelho, usando o acelerômetro (também exibido na palestra inicial).
  • WebGL: análogo ao OpenGL para a Web

Exemplo de cena renderizada no próprio browser (fonte).

Também falaram um pouco da nova versão do CSS, o CSS3, que traz muitas facilidades que antes só podiam ser feitas com magia-negra :)

  • Atributos como reflection, text shadow, round corners agora são padrão;
  • Além disso, foram adicionadas transformações e animações de objetos.

Práticas Efetivas de Interface com o Usuário

O palestrante deu umas dicas sobre como melhorar a interface de um aplicativo android. Algumas características são:

  • Beleza: o aplicativo deve ser visualmente agradável;
  • Rapidez: tempo de resposta do aplicativo deve ser impeceptível ao usuário;
  • Uso intuitivo: deve haver pouca ou nenhuma instrução;
  • Modos de visualização: o aplicativo deve sempre ser desenvolvido para retrato e paisagem;
  • Integração: deve se integrar a aplicativos já existentes, e não conter todas as funcionalidades em si próprio;
  • Não deve exibir pop-ups de confirmação de uma ação e sim oferecer a possibilidade de desfazê-la.

Outras palestras

Assisti a mais duas palestras: “Aplicativos Android Flexíveis: Adaptando-se ao Hardware/Local” e “Construindo Aplicativos de Alto Desempenho”. Mas elas entraram em detalhes muito técnicos sobre o Android e por isso não consegui absorver nenhum conteúdo direito.

Conclusão

Achei as palestras bem legais e tiveram bastantes brindes (bonequinho, camiseta, bloco de notas, squeeze, pasta, capa de notebook, bolinhas). Porém, como respondi no questionário final, é um tipo de conteúdo que conseguiríamos obter na internet. Aliás, acho que eu teria aproveitado bem melhor o conteúdo das palestras técnicas se fosse através de tutoriais. Por outro lado, é o tipo de material que coloco na fila de coisas a aprender e quase nunca acabo vendo. As palestras forneceram uma boa introdução e deram direções a seguir. Acho que com esse empurrãozinho, fico mais animado a desenvolver uma extensão para o Chrome e me aprofundar em HTML5.


Final Brasileira da Maratona de Programação 2010

Outubro 29, 2010

Nos dias 22 e 23 aconteceu a final brasileira da maratona de programação, em Joinville, SC, organizada pela Universidade do Estado de Santa Catarina, UDESC.

22 de Outubro

Infelizmente, só conseguimos o financiamento para ônibus, que leva cerca de 10h entre Campinas e Joinville. Saímos às 19h de Campinas na Quinta-feira, dia 21 e chegamos às 5 da manhã de Sexta-feira em Joinville. Como a reserva era para o dia 22, teríamos que esperar até 12h para fazer o check-in. No final das contas, só conseguimos entrar nos quartos às 14h, bem na hora do warm-up! Foi meio corrido e cansativo, mas deu tudo certo.

Logo depois, assistimos a uma palestra da IBM, seguida de uma reunião só com os coaches. Aí fomos passear de barco na Baía de Babitonga. Saímos de Joinville e fomos até São Francisco do Sul, onde a janta foi servida no próprio barco (felizmente ninguém do nosso time enjoou) e depois regressamos. O passeio durou umas 4 horas.

Barco “Príncipe de Joinville”, no Píer

23 de Outubro

Para descansar o máximo possível, os competidores optaram por dormir até mais tarde no Sábado, pulando o café da manhã. Logo após o almoço começou a competição e devo adiantar que o nervosismo que a gente passa como técnico é maior do que como competidor!

A mesma prova é aplicada em várias sedes da América Latina, mas em algumas o horário de início é diferente. Nós técnicos não tivemos acesso ao placar até que todas as sedes já tivessem iniciado, pois, como tínhamos acesso à internet, divulgar o placar online serviria de dica dos problemas mais fáceis para as sedes que ainda não tivessem começado. Assim, só ficamos sabendo a classificação depois de duas horas.

Qual não foi minha surpresa ao ver que o time Alfa da Unicamp estava com apenas 3 problemas e em 20° lugar, enquanto tinha equipes já com 6 problemas. Essa minha angústia perdurou um pouco mais, até que de repente, eles resolveram 4 problemas em menos de 10 minutos! Nessa hora eles pularam para sexto lugar. Infelizmente, devido à alta penalidade (em decorrência da submissão tardia desses 4 problemas), dois outros times fizeram 7 problemas e os ultrapassaram, colocando-os em oitavo lugar. Nesse momento o placar congelou. Como não estávamos vendo os competidores para saber se mais balões chegavam, tivemos que esperar até a cerimônia de encerramento para saber a classificação final.

Times durante a competição

A cerimônia foi logo depois da competição. Em anos anteriores, utilizava-se um programinha para mostrar a evolução do placar no período em que ficou congelado, mas o autor do software e o único que sabia como operá-lo era o Fábio Dias que não pôde comparecer ao evento. Assim, a organização do evento foi mostrando o log de submissões dos últimos minutos e descobrimos que a Poli-USP também tinha passado à nossa frente. No final ficamos com a nona posição e ganhamos a medalha de bronze. O placar final pode ser acessado aqui.

O time “Garotos da OBI” era formado pelo Caíque, Felipe e Renato, 3 dos 4 alunos classificados na seletiva para a IOI esse ano, sobre a qual escrevi num outro post (o André estava no time da Poli-USP). Eles participaram como convidados da maratona e portanto não são classificáveis para a final mundial. Embora estejam ainda no ensino médio, podemos ver que o nível deles já é equivalente ao das melhores equipes. Isso é um sinal de que a olimpíada de informática está se fortalecendo, o que é essencial para a formação de equipes competitivas a nível mundial. Quem sabe daqui a alguns anos veremos algum time brasileiro ganhando medalhas na final mundial.

O Unicamp Beta não ficou muito bem classificado, tendo feito apenas dois problemas. Eles ficaram meio chateados, mas falei para eles considerarem o grande feito que já tinham realizado ao conseguir a vaga para a final nacional. Lembrando que o Alex está apenas no segundo ano e o Igor e a Patrícia aprenderam a programar esse ano! Se continuarem se dedicando, eles estarão no primeiro time da Unicamp daqui a alguns anos e nos classificarão para um próximo mundial.

Apesar de o desempenho da nossa equipe não ter sido um dos melhores, ainda há esperança quanto ao mundial. Levando em conta que o “Garotos da OBI” não são elegíveis e que o segundo time do ITA não pode ir à final (a regra permite no máximo um por universidade), estamos em sétimo na lista de espera por uma vaga. Parece pouco promissor, mas ano passado tivemos exatas 7 vagas para o mundial em Harbin, embora essa quantidade mude todo ano. Agora só resta torcer e, para os que ainda podem competir, voltar a treinar o quanto antes.

24 de Outubro

Aproveitando que nosso ônibus era só para as 22h, fomos conhecer um pouco a cidade de Joinville. Só conseguimos visitar os museus da Imigração e do Sambaquis, além do parque zoobotânico, todos de entrada franca. Infelizmente um dos principais cartões-postais da cidade, o mirante, estava interditado. Além disso, um dos museus que eu mais queria ver, o museu da bicicleta, foi fechado! O museu tinha sido aberto em comemoração aos 150 anos de Joinville — que é conhecida como a cidade das bicicletas — e expunha uma grande coleção de bicicletas de um acervo particular. A prefeitura pagava o aluguel do espaço e o dono das bicicletas ficava como curador do museu. Com a mudança de mandato na prefeitura, perdeu-se o interesse em manter o museu e o desabamento do telhado do prédio ababou decretando o fechamento do local.

Moedor de cana-de-açúcar (Museu dos Imigrantes)

Podíamos ainda visitar o parque de exposições Expoville, mas já estava meio tarde e o local ficava um pouco longe. Preferimos ir jantar em um shopping, onde o Paulo perdeu a passagem de volta dele >.< No final ele teve que comprar outra, mas felizmente pôde embarcar de volta conosco.

Conclusão

Gostei de ser técnico, mas não poderei continuar sendo ano que vem. Além disso, não está nos meus planos continuar os treinos esse ano (principalmente porque pouca gente se interessaria) e não sei se vou me envolver com treinamentos ano que vem. Ainda não temos um substituto concreto para o cargo, mas cogita-se professores.


Primeira Fase da Maratona de Programação 2010

Setembro 24, 2010

No último Sábado (18 de Setembro), aconteceu a primeira fase da maratona de programação. A regional de Campinas aconteceu na PUC-Camp, como no ano passado. Diferentemente do ano passado, o ITA não veio (foi para a sede de São Paulo) e o ICMC voltou (ano passado eles tinham ido pra São Paulo).

Saímos logo de manhã da frente do IC1-2 em uma van fretada pelo instituto. Chegamos lá na PUCC um pouco cedo, com os organizadores ainda preparando o ambiente.

Às 10h00 começou o aquecimento (warmup). O aquecimento é uma prova de 1h com dois problemas fáceis, com a finalidade de testar e se familiarizar com o sistema. Pelo terceiro ano consecutivo o problema “Dama” caiu no warmup. Nesse problema tem que dizer, dado um tabuleiro de xadrez, qual o menor número de movimentos para levar a rainha de uma posição inicial a uma posição final (esse problema está no SPOJ-Br). O outro problema era o seguinte: dadas N tábuas de comprimento variado e largura fixa, encontrar o menor número de tábuas necessárias para construir um retângulo n por m posicionando as tábulas lado a lado com mesma orientação (i.e. todas de “pé” ou todas “deitadas”). Não é possível serrar nenhuma tábua e só é possível juntar duas tábuas para aumentar seu comprimento. Esse problema é relativamente simples, mas nenhum time o resolveu! O pessoal do Unicamp Alpha argumentou que foi por causa da lenda de que quem ganha o warmup não ganha a competição.

Organizadores com dificuldade pra colocar a faixa

Depois disso fomos almoçar na praça de alimentação da PUCC (O organizador do evento também sugeriu que fôssemos andando até o Shopping D. Pedro!).

Às 14h começou a prova, contendo 11 problemas. Eu e o Alessandro, o reserva dos times, ficamos na sala dos coaches, de onde dava para ver os competidores. Rapidamente começaram a surgir balões para o problema A e o problema J. A partir daí o time Unicamp Alpha e o Dona Margarida do ICMC começaram a disputa pelo primeiro lugar. O time Unicamp Beta ficou embolado com três outros times do ICMC, além do time de Sorocaba. Ao congelar o placar (com 4h de prova), o Dona Margarida estancou em 6 problemas e o Unicamp Alpha continuou ganhando balões até chegar em 9. Logo atrás havia dois times do ICMC com 6 e o Unicamp Beta e o time de Sorocaba com 5. Nesse momento estávamos classificando 2 times para a final, devido à regra de só poderem ir dois times por faculdade. Porém, a qualquer momento o time de Sorocaba poderia passar um problema. Durante a última hora, muita coisa aconteceu. A equipe Dona Margarida passou 3 problemas e alcançou o Unicamp Alpha e até ficamos preocupados de perder o primeiro lugar. Além disso, o Unicamp Delta, passou dois problemas e acabou deixando pra trás o Unicamp Beta e o time de Sorocaba.

O placar na nossa regional ficou o seguinte:

1. Unicamp – Alpha, 9 problemas (Douglas Santos, Igor Assis, Paulo Costa)

2. ICMC – Dona Margarida, 9 problemas

3. ICMC – Capitão Ad Hoc, 7 problemas

4. ICMC – HEAP HEAP ARRAY, 6 problemas

5. Unicamp – Delta, 6 problemas (Alex Brandt, Igor Wolff, Patrícia Hongo)

6. Unicamp – Beta, 5 problemas (Bruno Crepaldi, Ruan Silva, Thiago Cavalcante)

7. Sorocaba – De última hora, 5 problemas

12. Unicamp – Gamma , 3 problemas (Charles Garcia, Felipe Fleming, Thiago Santos)

Ninguém fez os problemas G e K na nossa sede, mas em outras sedes no Brasil sim. Porém, ninguém chegou a gabaritar a prova. Um pessoal organizou o placar nacional nessa planilha.

Quase ao mesmo tempo em que ocorreu a prova, houve um contest com os mesmos problemas no site de Valladolid aberto ao público. Lá, 6 pessoas fecharam a prova >.<

No geral achei que fomos bem. Esse ano tivemos uma renovação considerável nos times. Prova disso é que excetuando-se o Paulo e o Igor do primeiro time, todos os outros competidores são primeiro ou segundo-anistas. No Unicamp Delta o Igor e a Patrícia são bixos da Engenharia.

Competidores, reserva e coach reunidos.

Depois da prova fomos ao Shopping D. Pedro jantar e, lógico, discutir sobre a prova :)

Agora é treinar até a final, em Joinville!


Arena MTE

Agosto 27, 2010

Domingo passado (22 de agosto), participei do arena MTE. O arena MTE é uma competição de resolução de cases, problemas reais da indústria, em equipe de 4 pessoas.  O evento durou todo o Domingo, com várias palestras e 4 cases: da editora Abril, da AISEC, da Henkel e do próprio MTE. Os 5 melhores colocados nesses 4 cases iriam para a final, participar da resolução de mais um case da Fiat, sendo o time vencedor dessa última etapa premiado com um netbook para cada integrante.  Participaram desse evento 192 pessoas, ou 48 equipes. Nossa equipe era a “on Rails”, com o Vítor, a Bia e o Felipe Guaycuru (o criador do GDE!).

Os Cases

Vou aqui detalhar um pouquinho mais sobre os cases propostos.

Abril — Inicialmente nos foi passado um vídeo de um executivo de uma revista se comunicando via nextel com um acessor de uma marca, para supostamente negociar propagandas. Depois entregaram uma folha descrevendo o seguinte problema: A abril recentemente fundou uma empresa distribuidora, chamada Treelog. Um dos desafios dessa empresa é entregar as revistas veja aos Sábados, uma vez que atualmente há regiões para as quais as revistas são entregues somente às Segundas ou Terças-feiras. O objetivo era propor uma solução para esse problema, utilizando ideias do vídeo apresentado.

AIESEC — Nesse case a AIESEC estava estudando criar uma sede na Coreia do Norte, que planeja criar zonas de livre comércio. O objetivo era convencer o governo comunista de que a entrada da AIESEC no país traria benefícios, sem com isso ameaçar o sistema de governo.

Henkel — Dois representantes da Henkel participaram desse case. O cenário é o seguinte: a cola Tenaz, líder de vendas nesse segmento, depende do petróleo para sua composição. Estamos no ano de 2030 e há uma projeção de que em 25 as reservas de petróleo irão se esgotar e o preço deste irá subir exponencialmente nos próximos anos. Foi descoberto porém, um novo tipo de cola, batizada de Power Glue, biodegradável e 5 vezes mais aderente e seu principal componente é produzido por bactéria, uma fonte renovável. O problema é que não foram feitos testes conclusivos sobre os efeitos carcinogênicos do produto. O objetivo era decidir se íamos produzir tal cola e quando começar a produção, justificando as decisões.

MTE — Nesse case, o MTE enfrenta vários problemas: empresas perderam interesse em patrocinar eventos, consequentemente o número de participantes em tais eventos diminuiu e para piorar há uma falta de interesse por parte dos alunos em integrar o MTE. O objetivo era propor ideias para reverter essa situação.

Depois dos cases cansativos, tivemos um coffee-break e então o anúncio dos finalistas. Não fomos classificados para a final, que consistia em resolver um case da Fiat. O restante dos times deveria participar de um laboratório que consistia em montar um cubo de papel representando um carro e colocar inovações nele, na vertente do Fiat Mio http://www.fiatmio.cc/ A maioria das equipes (incluindo a nossa) decidiu não participar desse último evento e voltamos para a Unicamp de ônibus.

Conclusão

O MTE espalhou bastante propaganda pelo campus e todos eles apresentavam desafios de lógica. Como eu nunca tinha participado, achei que os cases eram de problem solving, mas sem cunho matemático/computacional como olimpíadas e maratona de programação. Minha impressão no final do dia foi de que os cases não davam muito espaço para ideias, uma vez que a solução esperada já era delineada no enunciado do problema. Obviamente, todas as equipes apresentaram soluções parecidas, o que torna difícil a comparação das equipes por soluções.

Segundo o regulamento da competição, outras formas de avaliação são comunicação, trabalho em equipe, pró-atividade, ética e conduta. Não creio que nossa equipe tenha se destacado em nenhum desses quesitos (exceto pelo Vítor que pode ter arrecadado uns pontos extras com a comunicação). Pelo contrário, creio que perdemos pontos com ética e conduta, já que diversas vezes durante a resolução fizemos piadas e brincadeiras :P.

Enfim, senti que acordei Domingo às 6 da manhã não para participar de uma competição, mas para ficar o dia inteiro participando de dinâmicas de grupo exaustivas (com a diferença que eu conhecia a minha equipe). Bom, pelo menos ganhamos uns brindes: boné, camiseta e caneta.