Disciplinas

GRUPO 1 - Teoria da Computação, Análise de Algoritmos e Complexidade da Computação

PPGI001 – Teoria da Computação: Estudo de modelos teóricos da computação, de linguagens formais e de autômatos. Alfabeto, linguagens e operações com linguagens. Gramáticas formais e autômatos. Autômatos finitos e de Pilha. Modelos de computação. Máquinas de Turing. Decidibilidade. Problema da parada.

PPGI002 – Projeto e Análise de Algoritmos: Análise de algoritmos. Paradigmas de projeto de algoritmos. Problemas NP-Completo. Limite inferior para diferentes classes de problemas. Algoritmos paralelos. Tópicos: algoritmos em grafos, noções de recuperação da informação, algoritmos para casamento de padrão, compressão de dados.

PPGI026 – Otimização Contínua e Combinatória: Otimização Linear; Otimização Linear Inteira; Heurísticas e meta-heurísticas; Hibridação de meta-heurísticas; Aplicações de meta-heurísticas.

PPGI031 – Teoria dos Grafos: Introdução à teoria dos grafos. Noções básicas: grafos orientados, não-orientados, bipartidos. Percursos em grafos. Casamentos. Subgrafos, hipergrafos, matróides e cliques. Árvores e árvores geradoras. Conectividade. Problemas de caminhos. Estabilidade e número cromático. Grafos planares. Circuitos eulerianos e hamiltonianos. Grafos sem circuitos. Redes. Fluxos em redes.

GRUPO 2 - Metodologia e Técnicas de Computação

PPGI003 – Engenharia de Software: Estudo de modelos teóricos da computação, de linguagens formais e de autômatos. Alfabeto, linguagens e operações com linguagens. Gramáticas formais e autômatos. Autômatos finitos e de Pilha. Modelos de computação. Máquinas de Turing. Decidibilidade. Problema da parada

PPGI007 – Especificação e Verificação Formal de Sistemas: Redes de Petri Lugar/Transição. Modelagem com Redes de Petri. Redes de Petri de Alto Nível. Redes de Petri Coloridas (CP-nets). CP-nets hierárquicas. CP-nets com Tempo. CPN-Tools. Modelagem com CP-nets. Análise comportamental de modelos CP-nets. Aplicação de CP-nets.

PPGI008 – Inteligência Artificial: Histórico. Introdução. Resolução de problemas via Métodos de busca. Representação de Conhecimento e raciocínio preciso e imprecisos/incerto. Aprendizagem de máquina. Aplicações.

PPGI009  Computação Gráfica: Modelos CSG. Representação por Bordo (halfedge). Representação por Subdivisão Espacial (Octree). Modelos de Iluminação Local (Phong). Métodos de Iluminação Global (Ray Tracing, Radiosidade). Métodos de Textura.

PPGI010  Processamento de Imagem: Noções sobre a teoria de sinais. Fundamentos de cor. Padrões de cor. Imagem digital. Quantização. Operações com imagens. Dithering, warping de imagens. Aplicações.

PPGI0011  Aprendizagem de Máquina: Técnicas de aprendizado de máquina e reconhecimento de padrões. Redução de dimensionalidade. Descritores. Classificadores.

PPGI016-07 – Tópicos Especiais em Engenharia de Sistemas Computacionais – Visão Computacional: Filtragem de imagens nos domínios espacial e espectral; calibração de câmera; visão estéreo e reconstrução 3D; reconhecimento de cenas e objetos; detectores e descritores de imagem; registro de imagens; redes neurais convolucionais; agrupamento e segmentação; reconhecimento de ações; linguagem e visão.

PPGI016-10 – Tópicos Especiais em Engenharia de Sistemas Computacionais – Testes de Software: Introdução a Testes de Software. Teste de Unidade. Teste de Integração. Teste de Sistema. Teste de Aceitação. Teste de GUI. Teste de Regressão. Teste Funcional. Cobertura de Testes. Testes de Mutação. Bug Reports. Geração Automática de Testes. Testes Caixa Branca e Caixa Preta. Testes no Android.

PPGI016-12 – Tópicos Especiais em Engenharia de Sistemas Computacionais -Técnicas de otimização bioinspiradas: Princípios de otimização e computação natural. Técnicas evolucionárias (algoritmos genéticos e programação genética). Otimização baseada em enxame de partículas. Otimização baseada em colônia de formigas e em cardume. Princípios de otimização multiobjetivo. Técnicas Multiobjetivo e funções de benchmark. Aplicação das técnicas nas áreas de pesquisa dos alunos.

PPGI017-08 – Tópicos Especiais em Computação Visual e Inteligente: Exploração e Mineração de Dados: Modelos de Preparação de Dados; Gráficos Exploratórios; Redução de Dados; Seleção de Feature; Seleção de Instâncias; Discretização; Modelos de Classificação; Modelos de Regressão; Métodos de Avaliação de Efetividade.

PPGI017-10 – Tópicos Especiais em Computação Visual e Inteligente: Aprendizagem Profunda: Conceitos básicos de aprendizagem supervisionada; Classificador perceptron; Método do Gradiente Estocástico; Perceptron multicamadas e o algoritmo de retro-propagação; Processamento de Imagens por convolução; Redes Neurais Convolucionais; Autoencoders; Redes Neurais Recorrentes.

PPGI 028 - Inteligência Artificial aplicada à Engenharia de Software.

PPGI029 – Ciência de Dados: Conceitos básicos de Ciência de Dados; Big Data; Noções básicas de estatística e inferência; Algoritmos de Aprendizagem de Máquina: K-NN, K-Means, Naive Bayes, Regressão Logística e Regressão Logística; e visualização dos dados; Recomendação de modelos usando Meta-aprendizado.

PPGI034 – Processamento de Linguagem Natural: 

PPGI035 – Qualidade de Software em Metodologias Ágeis: Estudo dos conceitos de qualidade de software Qualidade de software: Conceitos, objetivos, necessidades: efetividade, produtividade, segurança e satisfação. Visão geral de Qualidade de Software aplicadas aos métodos ágeis. Coleta de métricas software de maneira automática e mecanismos de previsibilidade de software baseado nessas métricas.

PPGI038 Boas Práticas em Aprendizagem de Máquina: Aprendizagem de máquina está relacionada com programas computacionais que melhoram seu desempenho automaticamente por meio da experiência. Nesse contexto a disciplina comtempla aspectos históricos e conceituação de aprendizagem de máquina. Tipos e paradigmas de aprendizado de máquina. Avaliação e metodologia de construção de modelos de aprendizagem de máquina. Algoritmos de aprendizagem de máquina.

PPGI 039 - Sistemas Suportados por Aprendizagem de Máquina: Introdução à aprendizagem de máquina; Efetividade de Algoritmos de Aprendizagem de Máquina; Regressão Linear; Overfitting; Underfitting; Erro nas Predições; K-Nearest Neighbours (K-NN); Máquina de Vetor de Suporte (SVM); Kernel; Regressão de Vetor de Suporte (SVR); Árvore de Decisão (Classificação); Entropia; Árvore de Decisão (Regressão); Desvio Padrão; Random Forest; Naive Bayes; Regressão Logística; Seleção e Geração de Amostras; Redes Neurais; Introdução à Mineração de Texto; Introdução à Processamento de Linguagem Natural; Introdução à Reconhecimento de Imagens.

PPGI040  Redes Neurais e Aprendizado Profundo: Introdução à Inteligência Artificial. Fundamentos de redes neurais. Perceptron, o problema do XOR e as redes de múltiplas camadas. Algoritmo de retro-propagação. Redes Profundas. Funções de ativação. Aprimorando a capacidade de generalização das redes profundas. Sobre-ajuste e sub-ajuste. Balanço viés-variância. Refinamento de hiperparâmetros. Estratégias de treinamento. Algoritmos de otimização amplamente utilizados em redes neurais profundas. Estratégias de validação cruzada. Tratamento de dados heterogêneos, estruturados ou não estruturados. Redes neurais convolucionais. Típicas topologias de redes neurais convolucionais. Redes neurais recorrentes. Unidade recorrente simples. Unidade recorrente de porta única. Redes LSTM.

PPGI041  Verificação  e  Validação  de  Sistemas  suportados  por Aprendizagem de Máquina: Visão geral sobre verificação e validação; Introdução a aprendizagem de máquina; análise estatística; Testes de software; Interpretabilidade; Explicabilidade; Efetividade e Eficiência; Procedimentos para realização de experimentos.

PPGI043 – Estatística Aplicada à Pesquisa em Computação: Estatística descritiva; Planejamento de pesquisa; Coleta de dados: amostragem e censo;Análise exploratória de dados; Modelagem probabilística: axiomas e propriedades; Variáveis aleatórias; Variáveis aleatórias discretas e contínuas; Inferência Estatística: distribuições amostrais; Estimação de parâmetros, Testes de hipóteses; Correlação; Introdução à análise de regressão; Análise de Variância; Intervalos de confiança; Outros testes paramétricos e não-paramétricos; Aplicação em problemas práticos para apoiar a tomada de decisão e modelagem científica. Softwares/linguagens estatísticos (Planilhas eletrônicas, R e/ou Python).

PPGI046 – Informática na Educação: Introdução à informática na educação. Inteligência Artificial na Educação. Aprendizagem adaptativa e Sistemas Tutores Inteligentes. Massive Open Online Courses (MOOCs). Tecnologias persuasivas para educação. Mineração de dados educacionais, learning analytics e visualização de dados. Noções de metodologia de pesquisa científica para o planejamento, implementação e validação (definição de experimentos e análise de dados) de tecnologias educacionais.

PPGI048 – Fundamentos de Inteligência Artificial aplicados à Medicina: Introdução ao Auxilio Computadorizado ao Diagnóstico; Imagens Médicas: características, especificidades e o padrão DICOM; Processamento de Imagens Médicas; Bases de imagens médicas: desafios e soluções; Radiomics: técnicas, aplicações e ferramentas; Deep Convolutional Networks para classificação de doenças; Deep Convolutional Networks para segmentação de objetos; Deep Convolutional Networks para detecção de doenças; Redes Adversárias Generativas (GANS): fundamentos e aplicações em imagens médicas; Métricas de Avaliação.

PPGI050 – Redes de Petri: Redes de Petri Lugar/Transição. Modelagem com Redes de Petri. Redes de Petri de Alto Nível. Redes de Petri Coloridas (CP-nets). CP-nets hierárquicas. CP-nets com Tempo. CPN-Tools. Modelagem com CP-nets. Análise comportamental de modelos CP-nets. Aplicação de CP-nets.

PPGI051 – Engenharia de Software Experimental: Introdução à Engenharia de Software Experimental. Processo de condução de estudos experimentais. Estudos Primários e Segundários. Métodos quantitativos e qualitativos em engenharia de software. Engenharia de software baseada em evidências. Planejamento de experimentos e análise de resultados. Estatística Aplicada a Estudos Experimentais.

PPGI052 – Visão Computacional: Filtragem de imagens nos domínios espacial e espectral; calibração de câmera; visão estéreo e reconstrução 3D; reconhecimento de cenas e objetos; detectores e descritores de imagem; registro de imagens; redes neurais convolucionais; agrupamento e segmentação; reconhecimento de ações; linguagem e visão. 

PPGI058 – Inteligência Artificial Generativa: Visão geral sobre modelagem generativa; aprendizagem profunda; arquiteturas de redes neurais; grandes modelos de linguagem; redes adversárias generativas; autoenconder; transformers; Bert; e GPT(Generative Pre-trained Transformer).

PPGI063 – Agentes Inteligentes: Introdução aos Agentes Inteligentes, arquitetura de agentes, técnicas de inteligência artificial para agentes, ferramentas e frameworks para desenvolvimento de agentes, estudo de casos e aplicações de agentes inteligentes, monitoramento e avaliação de desempenho de agentes, tópicos avançados e pesquisa atual.

PPGI065 – Sistemas de Controle Inteligente: 1. Introdução 2. Instrumentação, Controle e Automação 3. Controle por Computador 4. Lógica e Dedução 5. Representação de Conhecimentos 6. Controladores Baseados em Conhecimentos 7. Lógica Nebulosa 8. Controladores Empregando Lógica Nebulosa 9. Métodos de Otimização Numérica 10. Modelos e Arquiteturas de Redes Neurais Artificiais 11. Aprendizado com Supervisão Forte 12. Aprendizado com Supervisão Fraca 13. Aplicações de Redes Neurais Artificiais 14. Desenvolvimento de Sistemas Inteligentes. 

PPGI066 – Inteligência Artificial na Educação: Compreender o desenvolvimento paralelo entre a evolução das Ciências da Aprendizagem (como as pessoas aprendem) e a Inteligência Artificial (como as máquinas aprendem) no contexto do Ensino e Aprendizagem; Distinguir entre IA genérica e IA especificamente projetada para educação; Entender os conceitos fundamentais da IA, incluindo suas aplicações e seu impacto em nossas vidas diárias (como no desenho e implementação de políticas públicas); Compreender os fundamentos teóricos dos Sistemas de Tutoria Inteligente (ITS); Entender os conceitos de Mineração de Dados Educacionais (EDM) e Análise de Aprendizagem (LA); Aplicar vários tipos de dados para treinar tecnologias de IA; Utilizar uma estrutura para avaliar os potenciais riscos associados ao uso da IA na Educação; Analisar e testar tecnologias de IA para diversos propósitos, incluindo educação, entretenimento, automação de tarefas, recomendação e análise de comportamento, entre outros; Projetar um ITS básico adquirindo habilidades para converter atividades de resolução de problemas em modelos pedagógicos de ITS; Desenvolver modelos e empregar técnicas de EDM com implicações práticas tangíveis.

PPGI067 – Engenharia de Software Baseada em Evidências: Engenharia de Software Baseada em Evidências. Utilização, extensão, replicação e atualização de evidências científicas em Engenharia de Software. Atualização temporal de estudos secundários, compreendendo novas variáveis. Planejamento e condução de estudos empíricos complementares, incluindo surveys e experimentos, orientados a lacunas identificadas na literatura. Síntese, triangulação e agregação de evidências qualitativas e quantitativas. Avaliação de validade, confiabilidade, reprodutibilidade e ética em estudos empíricos. Práticas de Ciência Aberta, reprodutibilidade, pacotes de laboratório e diretrizes avançadas de comunicação científica. 

PPGI069 – Meta-aprendizagem: Introdução à meta-aprendizagem, conceitos básicos, recomendação de algoritmos usando meta-aprendizagem, avaliação de recomendações de sistemas de meta-aprendizagem, meta-características de conjuntos de dados, otimização de hiperparâmetros com metaaprendizagem, combinação de aprendizes em ensembles, meta-aprendizagem em métodos de ensemble, automação de ciência de dados, repositórios de metadados. Outros tópicos do estado da arte em meta-aprendizagem. Aplicações em projetos de aprendizagem de máquina. 

PPGI070 – Aprendizado de Máquina para Ambientes Não Estacionários: Ambientes não estacionários e desafios para aprendizado de máquina. Conceitos de concept drift: tipos, formas de ocorrência e grau de severidade. Métodos de detecção, compreensão e adaptação a mudanças de conceito. Aprendizado incremental e continual learning. Estratégias de adaptação contínua baseadas em replay, regularização, ensembles dinâmicos e janelas deslizantes. Abordagens passivas e ativas. Avaliação de modelos em fluxos de dados e cenários contínuos de aprendizado. Catastrophic forgetting, retenção de conhecimento e transferência contínua. Estudos de caso em séries temporais, sistemas financeiros, monitoramento de sensores e aplicações online. Discussão de tendências emergentes e desafios abertos em IA adaptativa. 

PPGI071 – Aprendizado por Reforço: 1. Introdução à Aprendizado por Reforço 2. Problema Multi-armed Bandits 3. Processo de decisão de Markov 4. Métodos de Monte Carlo 5. Aprendizado por Diferenças Temporais 6. Bootstrapping n-passos 7. Planejamento e Aprendizado com Métodos Tabulares 8. Predição e Controle on-policy com Aproximação 9. Métodos Off-Policy com Aproximação 10. Traços de Elegibilidade 11. Métodos de Gradiente de Política 12. Aprendizado por Reforço Profunda.

PPGI072 – Fundamentos de Sistemas de Tempo Real: Conceitos e terminologia de sistemas de tempo real Classificação de processos de tempo real; Tipos de relações entre processos; Requisitos e especificação de tempo real; Estimativa do tempo de execução; Métodos de escalonamento; Garantias de escalonamento; Kernels e sistemas operacionais de tempo real; Sistemas multi-processados de tempo real; Linguagens de programação para tempo real; Sistemas operacionais de tempo real; Modos de operação

GRUPO 3 - Sistemas de Computação

PPGI027  Modelagem Computacional de Sistemas Biológicos: Introdução à Engenharia Biomédica; Noções básicas sobre sistemas biológicos; Conceitos fundamentais do sistema cardiovascular humano; Modelagem 0D (Windkessel), 1D, 2D e 3D; Modelagem da câmara ventricular via função Elastância; Sinal de Eletrocardiograma; Algoritmos de detecção de onda-R.

PPGI030 – Projeto e Implementação de Redes de Sensores: Introdução a redes de sensores. Arquitetura de redes e pilha de protocolos. Roteamento e disseminação. Agrupamento de nós. Processamento de consultas. Agregação de dados. Localização, sincronização, controle de potência e economia de energia. Camadas de transporte. QoS. Segurança.Estudos de casos.

PPGI032 – Gamificação na Educação: O que é Gamificação; O que não é Gamificação; História; Por que e quando usar gamificação; Princípios de Jogos; Fundamentos Psicológicos; Fundamentos Computacionais; Projeto de Gamificação na Educação; Sistemas Educacionais Gamificados.

PPGI033 – Projeto de Simulação e Experimentos em Redes de Sensores sem fio: Pesquisa empírica em RSSFs;Design de experimentos em RSSFs; Validação de investigação empírica em RSSFs; Medição; Análise de dados; estudo de caso

PPGI036 – Engenharia de Feixes Acústicos: Introduction to Acoustics, Creating Arbitrary Acoustic Fields, Scanning of Acoustic Fields, Acoustic manipulation of objects.

PPGI037 – Tecnologias Digitais Emergentes: Conceitos Gerais. Tecnologias para Smart Home. Tecnologias para Smart Vehicles. Tecnologias para Smart Education. Tecnologias para Smart Health. Tecnologias para Smart Cities. Tecnologias cognitivas. Internet das Coisas.

PPGI042 – Gamificação Experimental: Pesquisa Científica; Pesquisa Experimental; Pesquisa em Gamificação; Pesquisa Experimental em Gamificação; Gamificação e Ameaça dos Estereótipos; Condução de Experimento; Análise Estatística. 

PPGI049 – Projeto de Banco de Dados: Fundamentos, Modelos e Tecnologias: Modelagem e Projeto de banco de Dados. Modelo Relacional. Esquema de Banco de Dados. Modelos de Banco de Dados NoSQL. Integração de Dados. Heterogeneidades em Banco de Dados. Business Inteligence. Data Warehousing. Modelagem Dimensional de Dados. Projeto e Construção de Data Warehouse. Fundamentos da Tecnologia Blockchain.

PPGI054 – Gerência e Processamento de Dados em Larga Escala: Big Data: definição, conceitos básicos, características e exemplos de domínios de aplicação;  Infraestruturas para o armazenamento e processamento de Big Data; Prática com ferramenta de  processamento de Big Data. 

PPGI060 – System of Systems Design and Architecture: 

PPGI064 – Aprendizagem de Máquina para dispositivos de borda: Compactação de modelo, poda, quantização, pesquisa de arquitetura neural, treinamento distribuído, paralelismo de dados/modelo, compactação de gradiente e ajuste fino no dispositivo. Também apresenta técnicas de aceleração específicas de aplicativos para grandes modelos de linguagem e modelos de difusão.

PPGI068 – Introdução à Identificação de Sistemas Dinâmicos: Noções básicas sobre identificação; Métodos determinísticos de identificação; Estimador de mínimos quadrados para identificação de sistemas; Noções básicas sobre identificação de sistemas não-lineares; Filtro de Kalman; Identificação de modelos em Espaço de Estados.

PPGI073 – Acessibilidade Digital: Fundamentos, Métodos e Tecnologias: Fundamentos de Interação Humano-Computador; Conceitos sobre Acessibilidade e Inclusão; Design Universal e Design Inclusivo; Normas, Diretrizes e Recomendações e Legislação; Tecnologias Assistivas; Perfis de pessoas com deficiência visual, auditiva, cognitiva, sensorial, comunicacional; Acessibilidade da Informação; Acessibilidade em Redes Sociais; Governo Digital e a Participação Cidadã; Avaliação da Acessibilidade; Inteligência Artificial e Acessibilidade; Sistemas Adaptativos e Personalização; Tecnologias Emergentes.

PPGI074 – Simulação em Tempo Real e Hardware-in-the-Loop: Introdução à simulação em tempo real. Sistemas dinâmicos contínuos e discretos. Requisitos de determinismo temporal. Arquiteturas computacionais para execução em tempo real. Modelagem de sistemas físicos para execução HIL. Técnicas Controller-Hardware-in-the-Loop (C-HIL) e PowerHardware-in-the-Loop (P-HIL). Integração de modelos desenvolvidos em softwares de simulação. Automação de testes, verificação e validação. Aplicações em eletrônica de potência, sistemas de energia, microrredes, veículos elétricos e sistemas embarcados. Estudos de caso e desenvolvimento de projeto experimental.

GRUPO 4 - Outros

PPGI016-11 – Tópicos Especiais Em Engenharia De Sistemas Computacionais: Navegação De Robô: Algoritmos de navegação simplificados; Campos de Potencial; Busca em Grafos; Mapas de Rotas; Decomposição em Células; Mapas de Rotas Probabilísticos; Filtros de Kalman; Métodos Bayesianos.

PPGI017-11 – Tópicos Especiais em Computação Visual e Inteligente: Metodologia Científica aplicada à Computação: A ciência e o método científico. A ciência e a Ciência da Computação. Conceitos e técnicas para preparação de projetos de pesquisa. Conceitos e técnicas para proceder à revisão bibliográfica e a escrita de artigos científicos. Técnicas de análise e apresentação de dados.

PPGI017-06 – Tópicos Especiais em Computação Visual e Inteligente: Bancos de Dados Não-relacionais (NoSQL): Visão Geral sobre Bancos de Dados Não-Relacionais; Histórico e surgimento do Movimento NoSQL; Conceitos Básicos; BASE x ACID; Teorema CAP; Modelos de Bancos Não-Relacionais; Modelo Chave-Valor; Modelo Orientado a Colunas; Modelo Orientado a Grafos; Modelo Orientado a Documentos; Teoria e Prática aplicada ao MongoDB.

PPGI053 – Metodologia Científica: - Escrevendo Cientificamente (Introdução Geral) - Revisões Bibliográficas Sistemáticas, Revisão e Exercícios - Atributos da Seção de Introdução e Análise de Artigos  - Apresentações (1) e debate - Atributos da Seção de Métodos e Análise de Artigos - Apresentações (2) e debate - Atributos da Seção de Resultados (1) e Análise de Artigos - Atributos da Seção de Resultados (2) e Análise de Artigos - Apresentações (3) e debate - Atributos da Seção de Discussão (1) e Análise de Artigos - Atributos da Seção de Discussão (2) e Análise de Artigos - Apresentações (4) e debate - Atributos da Seção de Conclusão e Análise de Artigo - Selecionando a revista, escopo, cover letter, rejeições, etc.- Avaliação Final.

PPGI056 – Introdução a Identificação de Sistemas:

PPGI057 – Revisão Sistemática da Literatura: