DCM FFCLRP USP
Metaprogramação em C++17 para computação estatística

Colóquio


Curso alvo : Todos

Palestrante : Filipe Alves Neto Verri

De: 07/08/2017 à 09/08/2017

Hora de ínicio: 08:00:00
Hora de término: 17:00:00
Local: Laboratório de Informática 602


Descrição: Minicurso \\\\\\\"Metaprogramação em C++17 para computação estatística\\\\\\\" ocorre em agosto no DCM em Ribeirão Preto Nos dias 07 e 09 de agosto, segunda e quarta-feira, ocorre o minicurso “Metaprogramação em C++17 para computação estatística” com carga horária de 12 horas. O curso será no laboratório 602 do prédio do Departamento de Computação e Matemática, DCM, FFCLRP, USP Ribeirão Preto. Serão oferecidas 40 vagas gratuitamente. No dia 07, a programação será das 8:00 às 10:00 e das 12:00 às 14:00. Já no dia 09 de agosto, das 8:00 às 12:00 e das 13:00 às 17:00. Para fazer a inscrição, basta acessar https://goo.gl/forms/042AX4PIe1ocDIRN2 e preencher o formulário. Sobre o curso: Como pesquisadores na área de computação, nosso principal objetivo é \\\\\\\"rodar experimentos\\\\\\\" e analisar resultados. No entanto, os paradigmas de programação que aprendemos durante a graduação não nos prepara eficientemente para este trabalho. Linguagens “puramente” funcionais, como Scala e Haskell, são complicadas e rígidas demais na maioria das aplicações práticas. Linguagens “puramente” estatísticas, como MATLAB e R, sāo lentas e não escalam bem quanto à complexidade do problema. C++ moderno oferece um bom trade-off entre flexibilidade e escabilidade. Combinando técnicas bem conceituadas em metaprogramaçāo, programação genérica e funcional com a sintaxe moderna das revisões recentes (C++11, 14 e 17), o curso mostra como C++ pode ser aplicado em problemas gerais de computação estatística. As técnicas a serem estudadas incluem: RAII, template metaprogramming, CRTP, SFINAE, type erasure, tag dispatching, template expression, e outras. Com elas, uma versão lite da biblioteca Jules será implementada durante o curso. Será disponibilizado um ambiente virtual para edição e compilação do código. No entanto, para aqueles que quiserem utilizar seu computador pessoal, é necessário a instalação do compilador GCC 7.1. Sobre o ministrante: Filipe Verri formou-se summa cum laude como Bacharel em Ciências de Computação pelo Instituto de Ciências Matemáticas e de Computação (ICMC), Universidade de São Paulo (USP). Atualmente é doutorando do programa de Ciências de Computação e Matemática Computacional do ICMC/USP com bolsa FAPESP. Desenvolveu estágio sanduíche na School of Electrical, Computer and Energy Engineering, Arizona State University, Tempe, EUA, onde estudou sistemas complexos com aplicação em aprendizado de máquina. Possui ampla experiência no desenvolvimento de ferramentas para simulação de sistemas dinâmicos e análise de dados em R e C++. Em 2015, iniciou, juntamente com Paulo Urio, o desenvolvimento da biblioteca de computação estatística Jules (www.github.com/verri/jules) como ferramenta auxiliar nos projetos do seu grupo de pesquisa. A biblioteca, escrita em C++ moderno, utiliza diversas técnicas avançadas de metaprogramação para oferecer não apenas eficiência, mas também agilidade e facilidade de desenvolvimento. Pré-requisitos: Para o bom aproveitamento do curso, o pré-requisito é conhecimento básico da estruturação de programas de computador. A experiência em computação estatística em qualquer linguagem (isto é, implementação de modelos estatísticos, de aprendizado de máquina, de simulação, etc) também é indicado.


Departamento de Computação e Matemática - Av. Bandeirantes, 3900 - Monte Alegre - Ribeirão Preto - SP - CEP: 14040-901
Fone: (16) 3315 0429 - Fax: (16) 3315 0407 ©Copyright 2016 - DCM - FFCLRP - USP