Eventos - Computec

JAI - XXX Jornadas de Atualização em Informática

Inicial | Minicursos

Minicursos das JAI 2011

Os minicursos que serão ofertados nas JAI 2011, bem como suas programações, são os apresentados a seguir:

Dias / Horários 19/07/2011 (terça) 20/07/2011 (quarta) 21/07/2011 (quinta) 22/07/2011 (sexta)
08:30 - 10:30 JAI 1 JAI 2 JAI 1 JAI 2 JAI 5 JAI 6 JAI 5 JAI 6
11:00 - 13:00 JAI 1 JAI 2 JAI 3 JAI 4 JAI 5 JAI 6 JAI 7 JAI 8
17:00 - 19:00 JAI 3 JAI 4 JAI 3 JAI 4 JAI 7 JAI 8 JAI 7 JAI 8


JAI 1: Coleta e Análise de Grandes Bases de Dados de Redes Sociais Online

Fabrício Benevenuto (UFOP), Jussara Almeida (DCC-UFMG), Altigran Soares da Silva (UFAM)

Redes sociais online se tornaram extremamente populares e vêm causando uma nova onda de aplicações na Web. Associado a esse crescimento, redes sociais estão se tornando um tema central em pesquisas de diversas áreas da Ciência da Computação. Este minicurso oferece uma introdução ao pesquisador que pretende explorar esse tema. Inicialmente, apresentamos as principais características das redes sociais mais populares atualmente. Em seguida, discutimos as principais métricas e tipos de análises utilizadas no estudo dos grafos que formam a topologia das redes sociais. Finalmente, sumarizamos as principais abordagens utilizadas para se obter dados de redes sociais online e discutimos trabalhos recentes que utilizaram essas técnicas.



JAI 2: Software Livre e Propriedade Intelectual: Aspectos Jurídicos, Licenças e Modelos de Negócios

Fabio Kon, Nelson Lago, Paulo Meirelles, Vanessa Sabino (IME-USP)

O Software Livre tem se apresentado como uma alternativa viável para a produção, distribuição e utilização de software de qualidade em uma grande gama de contextos acadêmicos, científicos, empresariais, governamentais e comerciais. No entanto, os modelos de negócio e de contratos tradicionalmente utilizados na sociedade contemporânea não são perfeitamente adequados para a forma como o software livre e produzido, disseminado e utilizado. Este minicurso discutirá como as especificidades do software livre se refletem sobre o seu uso por indivíduos, empresas e governos e, em particular, nos modelos de negócio aplicados à indústria de software. Além de um breve histórico do movimento e de uma descrição da sua dinâmica, serão descritas as principais licenças de software livre e suas consequências, as oportunidades e dificuldades de interação com a comunidade e os principais modelos de negócio relacionados ao software livre, com exemplos de casos de sucesso.



JAI 3: Introdução ao desenvolvimento de software embarcado

Alexandra Aguiar, Sergio Filho, Felipe Magalhaes, Fabiano Hessel (PUCRS)

Sistemas embarcados estão presentes na vida da maioria das pessoas e a tendência é que cada vez mais esses dispositivos sejam essenciais para o nosso dia-a-dia. Ao longo dos anos, a alta convergência dos sistemas resultou em um constante acréscimo de funcionalidades nos dispositivos embarcados, principalmente os da indústria de comunicação e entretenimento. Nesse contexto, o desenvolvimento de sistemas embarcados, onde o software era projetado especificamente para uma aplicação tem dado lugar ao desenvolvimento baseado em plataformas, onde o software atrelado a um sistema operacional vem ganhando destaque. O principal problema em se aumentar a relevância do software reside no atendimento aos requisitos típicos dos sistemas embarcados, que mesmo com um acréscimo nas funcionalidades ainda possuem limitações quanto ao tamanho do código, consumo de energia, além de restrições temporais para determinadas aplicações. Assim, ferramentas de auxílio ao desenvolvimento de software embarcado têm sido cada vez mais objeto de estudo. Este minicurso apresenta conceitos introdutórios sobre o desenvolvimento de software embarcado além de fundamentos, definições e, em um caráter teórico-prático, exemplos práticos de desenvolvimento embarcado utilizando a plataforma Hellfire, seguido pelos desafios e oportunidades na área.



JAI 4: Meta-Aprendizado para Recomendação de Algoritmos

Bruno de Souza (USP), André Ponce de Leon F de Carvalho (ICMC-USP São Carlos), Ricardo Prudêncio (UFPE)

A quantidade de dados gerados por diferentes fontes tem crescido em escalas cada vez maiores. Um dos Grandes Desafios da Computação definidos pela Sociedade Brasileira de Computação é a gestão desses grandes volumes de dados. A necessidade de analisar tais dados de forma automática tem demandado o desenvolvimento de novos métodos de Aprendizado de Máquina e Mineração de Dados que possam lidar com os problemas associados a esse desafio. Uma das dificuldades nas aplicações de Aprendizado de Máquina é a recomendação dos algoritmos mais promissores para adquirir conhecimento útil a partir de um conjunto de dados. O problema de recomendação de algoritmos é investigado na linha de pesquisa denominada Meta-Aprendizado. Diferentes técnicas de Meta-Aprendizado foram propostas e adotadas com sucesso para recomendação de algoritmos em tarefas clássicas de Aprendizado de Máquina (por exemplo, classificação de padrões). Recentemente, Meta-Aprendizado tem sido estendido para recomendação de algoritmos em domínios diversos, como otimização combinatória, previsão de séries temporais e bioinformática, apontando assim para um crescimento do interesse no tema. Este curso apresentará os conceitos básicos e as técnicas existentes para o uso de Meta-Aprendizado em problemas reais. Como resultado, espera-se a formação de pesquisadores que possam atuar com competência e autonomia nesse tema.



JAI 5: Swarming: como BitTorrent revolucionou a Internet

Marinho Barcellos, Matheus Lehmann, Flávio Roberto Santos, Rodrigo Mansilha (UFRGS)

O compartilhamento de arquivos via Peer-to-Peer (P2P) provocou uma revolução na Internet. Dentre as tecnologias causadoras dessa mudança, BitTorrent foi alegadamente a mais importante. Para chegar lá, BitTorrent partiu de uma sólida contribuição científica, particularmente o uso do conceito de swarming, aliada a uma implementação aberta, funcional e suficientemente robusta da solução. Este minicurso coleta, organiza, e apresenta de forma estruturada os inúmeros avanços propiciados por essa tecnologia desde sua introdução, em 2003. Os conteúdos são apresentados de forma abrangente, generalizando as lições (sempre que possível) a outras aplicações da Internet. O tratamento dado ao tema combina teoria e prática, analisando como as políticas propostas em âmbito científico através de artigos foram implementadas e que grau de sucesso tiveram. Amparamos a proposta de minicurso na vasta experiência dos autores sobre o assunto BitTorrent e P2P em geral; aliamos o conhecimento científico sobre a teoria subjacente com aspectos de implementações populares, em particular a de código aberto que serviu como precursora para a popularização de BitTorrent.



JAI 6: Técnicas de otimização de código para placas gráficas

Fernando Quintao Pereira (UFMG)

Livros sobre algoritmos paralelos frequentemente descrevem modelos de execução, tais como PRAM, baseados em uma máquina utópica que forneça tantos processadores quanto necessário para uma determinada tarefa. Computadores modernos, de propósito geral, provêem somente alguns núcleos de processamento; quatro sendo hoje um número razoável. Tal limitação coloca o modelo de execução PRAM muito distante das possibilidades do desenvolvedor de aplicações tradicional. Contudo o baixo custo, aliado à crescente programabilidade de placas de processamento gráfico (GPUs), está contribuindo para a diminuição de tal distância. Atualmente, programadores podem ter acesso a um hardware com milhares de unidades de processamento por algumas centenas de reais. Este novo mundo abre possibilidades, mas traz também desafios. Talvez, pela primeira vez desde a popularização dos computadores, faça sentido abrir os livros de compiladores nos capítulos finais, que tratam de conceitos e técnicas pouco conhecidas, como espaços de iterações, e transformações de Fourier-Motskin. A fim de disseminar este conhecimento, o presente material cobre, de forma condensada algumas técnicas de geração e otimização de código que um compilador, ou mesmo o próprio desenvolvedor, poderia aplicar para melhorar o desempenho de aplicações de propósito geral que executam em GPUs. Discutiremos tanto a história quanto a natureza deste novo hardware, e mostraremos como técnicas de compilação são efetivas e úteis para proteger os desenvolvedores das complicações e sutilizas do ambiente de processamento gráfico.



JAI 7: Introdução a Redes Complexas

Daniel Figueiredo (UFRJ)

De forma mais geral, uma rede é uma abstração que permite codificar algum tipo de relacionamento entre pares de objetos. Por exemplo, em redes sociais objetos são geralmente indivíduos e relacionamentos representam algum tipo de relação social, como amizade ou trabalho em conjunto. Redes estão presente por todos os lados e durante a última década um grande número de estudos empíricos vem identificando propriedades peculiares em redes muito distintas, tais como redes sociais, redes tecnológicas, redes de informação e redes biológicas. A estrutura topológica dessas redes possui um papel fundamental pois influenciam diretamente a funcionalidade e os processos que operam sobre a rede. Por exemplo, o ranqueamento por relevância de páginas Web, ou a propagação de uma novidade tecnológica pelo Twitter. Redes Complexas surgiu como uma área multidisciplinar da Ciência que visa estudar e compreender este abrangente fenômeno: como as "coisas" se conectam e quais são as consequências dessa estrutura. O objetivo deste curso é fazer uma introdução ao tema Redes Complexas. Iremos primeiramente apresentar estudos empíricos da estrutura de diversas redes reais, ilustrando propriedades peculiares comumente encontradas nestas redes, tais como distribuições em lei de potência, que dão origem às redes livre de escala. Em seguida apresentaremos modelos matemáticos que sejam capazes de representar redes reais capturando seus aspectos topológicos mais importantes. Por fim, iremos apresentar como algumas funcionalidades e os processos que operam nesta rede dependem de maneira fundamental da estrutura topológica da mesma.



JAI 8: Engenharia de Computação Invisível

Linnyer Ruiz (UEM), Antonio Alfredo Ferreira Loureiro (UFMG), José Camargo da Costa (UnB), Rogerio Pozza (PPGEE-UFMG),
Paulo Cesar Goncalves (IFMS)

O minicurso irá apresentar o estado da arte da computação invisível, também conhecida como computação em spray, computação escondida ou computação de poeira. Uma nova perspectiva para a conhecida Computação Ubíqua que agora encontrou na área de nanotecnologia, gerenciamento de grande volume de dados (em especial multimídia) e nos avanços da comunicação sem fio, as bases para o seu avanço tecnológico. A expectativa é que em bem pouco tempo, uma questão de poucos anos, o hardware computacional disponível para as mais diferentes aplicações terá a dimensão nano e este hardware estará espalhado como spray, disponível como os telefones e conectado a um mundo totalmente digital e sem fronteiras. A abordagem dada ao tema envolve as tecnologias existentes e incipientes bem como as oportunidades de pesquisa tanto em hardware (plataformas como arduíno, rede de sensores sem fio, xbee, nanosensores de parâmetros tangíveis) quanto em software (sistemas operacionais, compiladores, sistemas baseados em transações, protocolos de comunicação, máquinas de contexto, robôs para parâmetros intangíveis, protocolos de auto-configuração e auto-x). É objetivo do minicurso introduzir os principais conceitos envolvidos com a computação que estará disponível a todo momento e em qualquer lugar e que não será visível a olho nu. Trata-se da computação emergente dos paradigmas nanotecnológicos e dos resultados de pesquisa em materiais orgânicos e outros novos materiais. Um exemplo destes novos materiais é o LED (diodo emissor de luz) fabricado a partir do óleo de buriti. Será dado ao tema um tratamento teórico e prático, mostrando aspectos específicos das plataformas de hardware disponíveis. Está prevista uma demonstração de vários protótipos de computação invisível, tais como a computação invisível vestível (exemplos: a camiseta bafômetro, a camiseta de CO2), o computador sombra que monitora e reproduz os movimentos de idosos e pacientes e que pode ser aplicado aos esportista e a computação invisível doméstica, onde uma i-casa (uma casa inteligente e ecológica) coleta parâmetros tangíveis (temperatura, pressão, luminosidade, etc.) e intangíveis (fome, medo, nervoso, raiva, empolgação dos moradores) e se configura de acordo com o perfil propondo, inclusive solução para os conflitos.


XXXI Congresso da Sociedade Brasileira de Computação
Plácido A S Neto (IFRN) e Marcel Oliveira (UFRN)
All rights reserved.