Disciplinas
Das disciplinas do Tronco Comum (Obrigatórias), o aluno do Curso de Doutorado deverá cursar ao menos três disciplinas de quatro créditos do tronco comum, sem restrição quanto às cadeias de seletividade. Já o aluno do Curso de Mestrado deverá cursar uma disciplina em cada uma das cadeias de seletivdade, sendo uma em Fundamentos e Métodos de Computação e outra em Sistemas de Computação.
Disciplinas do Tronco Comum
Fundamentos e Métodos de Computação
Teoria da Computação |
Créditos: 04 |
Ementa: Teoria de autômatos e linguagens formais, maquinas de Turing e teoria das funções recursivas, noções de computabilidade e classes de complexidade básicas. |
Projeto e Complexidade de Algoritmos |
Créditos: 04 |
Ementa: Análise de algoritmos - princípios e exemplos; critérios e avaliação; estruturas de dados elementares; estratégias para projetar algoritmos; algoritmos e grafos; a transformada rápida de Fourier e aplicações; reconhecimento de padrões; tratabilidade. |
Sistemas de Computação
Fundamentos de Sistemas Computacionais |
Créditos: 04 |
Ementa: Organização de Computadores: Componentes do computador, ciclos de instruções, pipelining, barramentos, caches, memória RAM, arquiteturas RISC x CISC, Instruction level Parallelism (Execução Fora de Ordem, Previsão de Desvios, Execução Superescalar, Execução Especulativa, Very Large Instruction Word), Multiprocessadores Simétricos (organização e coerência de caches). Sistemas operacionais: estruturação do kernel, gerência de processos, gerência de memória, gerência de arquivos, gerência de E/S, micro-kernels, exo-kernels. |
Processamento Digital de Sinais |
Créditos: 04 |
Ementa: Transformada de Fourier e Transformada Z, Teoria da Amostragem, Sinais no domínio da frequência e sua caracterização, Interpolação e Quantização, Processamento de Sinais de voz e áudio, Filtragem Digital e Análise Espectral |
Disciplina Obrigatória em ambos os cursos
Seminário |
Créditos: 02 |
Ementa: Palestras de pesquisadores convidados e alunos do PPGInf |
Disciplinas Optativas
Teoria de Prova |
Créditos: 04 |
Ementa: O curso traz uma base sólida para os alunos que pretendem fazer pesquisa na área de dedução automatizada e métodos formais. |
Inteligência Artificial I |
Créditos: 04 |
Ementa: Introdução: o que é IA., uma visão geral, problemas, espaços de problemas e métodos básicos de solução de problemas. Conhecimento: representação e uso. Meta. Conhecimento. Aspectos gerais de sistemas baseados em conhecimento. |
Inteligência Artificial II |
Créditos: 04 |
Ementa: Aquisição e representação do conhecimento. Forma de raciocínio automático. Raciocínios não monotônicos. Sistemas Avançados de Solução de Problemas. Aprendizado mecânico. Processamento de linguagem natural. Sistemas especialistas. Sistemas conexionistas. Interfaces inteligentes. |
Linguagens Declarativas |
Créditos: 04 |
Ementa: Sistema físico de símbolos; Processamento simbólico; Linguagens declarativas e IA; Linguagem funcional pura: Reescrita, funções primitivas, paradigma funcional: equacional, equações guardadas, recursão, casamento de padrões, polimorfismo, avaliação preguiçosa, funções de alta ordem, definição local; aplicações, LISP, PROLOG. |
Engenharia de Software 2 |
Créditos: 04 |
Ementa: Estudos empíricos em Engenharia de Software; estudos primários, secundários, e terciários; estratégias de pesquisa; estudos qualitativos e quantitativos. |
Tópicos em Engenharia de Software |
Créditos: 04 |
Ementa: Motivação de LPS; definição e exemplos de LPS; especificação funcional e operacional de LPS; revisão sistemática de literatura em LPS; Engenharia do Domínio; Engenharia da Aplicação; ferramentas de apoio à construção e evolução de LPS; estratégias de adoção; gerenciamento de variabilidade nos seguintes artefatos: processos de negócio, características (features), requisitos, arquitetura, implementação; apresentação e comparação de métodos específicos (abordagens composicional, anotativa, paramétrica, e transformacional); sistemas de tipos para LPS. |
Estágio de Docência no Ensino de Graduação em Ciência da Computação |
Créditos: 04 |
Ementa: Atuação em sala de aula (aula teórica/prática), atendimento de alunos fora da sala de aula, correções de provas e exercícios, atendimento a palestra didádito/pedagógica programadas para a disciplina, participação em reuniões da coordenação da disciplina, preparação de aulas e outras tarefas inerentes a prática docente. |
Programação Paralela |
Créditos: 04 |
Ementa: Introdução à computação paralela e distribuída. Avaliação de desempenho. Processadores paralelos e distribuídos. Modelo PRAM e algoritmos. Modelos de troca de mensagens e algoritmos. Programação paralela. Algoritmos de escalonamento. PVM. MPI. Java. |
Métodos Formais para Processamento Tempo-Real |
Créditos: 04 |
Ementa: Introdução ao processamento tempo-real. Formalização do tempo e relógio. Métodos formais. Método gráfico. Método baseado em estados. Método baseado em lógica. Método baseado em álgebra de processos. Partição de software. Alocação de tarefas. Escalonamento de tarefas. Tolerância a falhas. Sincronização de relógios. |
Processamento de Imagens |
Créditos: 04 |
Ementa: Fundamentos de Processamento Digital de sinais. Captação de imagens. Representação e Tratamento de imagens. Amostragem de sinais. Transformadas aplicadas ao processamento digital de sinais. Desenvolvimento de aplicações em software específico. |
Arquiteturas VLSI |
Créditos: 04 |
Ementa: Dispositivos reconfiguráveis, Modelamento de circuitos combinacionais e sequenciais em VHDL, especificação e síntese de máquinas algorítmicas, otimização de registradores, escalonamento e alocação de operadores, técnicas de aceleração de hardware. |
Processamento de Alto Desempenho |
Créditos: 04 |
Ementa: Algoritmos paralelos, Princípios de paralelismo, Redes de interconexão, Protocolos de alto-desempenho, Arquiteturas SIMD/MIMD, Escalonamento, Balanceamento de carga, Gerenciamento de recursos geograficamente distribuídos, Fundamentos de Cluster computing, Fundamentos Grid computing |
Sistemas Distribuídos |
Créditos: 04 |
Ementa: Definição de Sistema Distribuído, Arquiteturas Paralelas e Distribuídas, Aspectos no Projeto de Sistemas Distribuídos, Gerência de Processos Distribuídos (Escalonamento de Processadores, Migração de Processos, Troca de Mensagens, Remote Procedure Call, Distributed Shared Memory), Grupos de Processos, Sincronização de Processos Distribuídos, Deadlock Distribuído, Exclusão Mútua Distribuída, Gerência de Arquivos Distribuídos, Noções de Tolerância a Falhas. |
Reconhecimento de Padrões |
Créditos: 04 |
Ementa: Introdução; Teorema de Bayes; Classificadores Paramétricos; Funções Discriminantes Paramétricas; Avaliação do Desempenho; Classificadores Não Paramétricos; Extração de Características; Teoria da Aprendizagem; Aprendizagem Não Supervisionada. |
Tópicos em Formalismos de Computação |
Créditos: 04 |
Ementa: Ementa variável |
Tópicos em Sistemas de Computação |
Créditos: 04 |
Ementa: Ementa variável |
Tópicos em Fundamentos e Métodos de Computação |
Créditos: 04 |
Ementa: Ementa variável |
Trabalho Individual em Fundamentos e Métodos de Computação |
Créditos: 02 |
Ementa: Trabalho individual orientado e escrito ao longo de um período letivo que resulta de pesquisa ou estudo de um tema proposto por um orientador responsável. |
Trabalho Individual em Sistemas de Computação |
Créditos: 02 |
Ementa: Trabalho individual orientado e escrito ao longo de um período letivo que resulta de pesquisa ou estudo de um tema proposto por um orientador responsável. |
Tópicos de Pesquisa em Informática |
Créditos: 02 |
Ementa: Ementa variável |
Sistemas Multiagentes |
Créditos: 04 |
Ementa: Esta disciplina trata de agente inteligente e sistema multiagente (SMA), incluindo uma fundamentação teórica básica da área de Inteligência Artificial Distribuída. Diversos aspectos relacionados a SMA serão estudados, tais como modelos de raciocínio, protocolos de comunicação e interação, definições arquiteturais, metodologias de modelagem, utilizando uma abordagem prática de desenvolvimento de aplicações orientada a agentes. Ferramentas e plataformas de desenvolvimento de SMA serão utilizados nos trabalhos de implementação para melhor fixação do conhecimento adquirido. |
Projeto e Complexidade de Algorítmos 2 |
Créditos: 04 |
Ementa: |
Lógica Formal e Computacional |
Créditos: 04 |
Ementa: Elementos semânticos da lógica de primeira ordem e suas limitações, cálculo de sequentes para a lógica de primeira-ordem, teoremas de löwenheim-Skolem e de compacidade, teoremas de completude e incompletude de Gödel, teoremas de Lindstrom sobre a maximalidade da lógica de primeira-ordem e uma linguagem para formalizar objetos matemáticos e computacionais. |
Arquiteturas Paralelas |
Créditos: 04 |
Ementa: |
Criptografia |
Créditos: 04 |
Ementa: Criptografia Clássica: esquemas e criptoanálise; Teoria de Shannon: entropia, segredo perfeito e teoria da informação; Cifras simetricas de bloco: DES e AES; Funções de resumo criptográfico: o paradigma de Merkle-Damgard; Criptossistema RSA e Rabin; Criptografia de chave pública baseada em logaritmo discreto: corpos finitos e curvas elípticas; Esquemas para assinatura digital; Geração de números pseudo-aleatórios. |
Modelagem e Verificação de Sistemas Integrados em Silício |
Créditos: 04 |
Ementa: Modelagem de sistemas integrados monolíticos - ou sistemas em silício (SoC - System on Chip) - em nível transacional; SystemC como ferramente de modelagem em níveis abstrados; Complexidade dos sistemas em silício. |
Tópicos Avançados em Sistemas de Computação |
Créditos: 04 |
Ementa: Disciplina com ementa variável |
Tópicos Avançados em Formalismos e Métodos da Computação |
Créditos: 04 |
Ementa: Disciplina com ementa variável |