DISCIPLINAS DO PROGRAMA DE PÓS GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO NÍVEL MESTRADO



Documentos relacionados
PCC173 - Otimização em Redes

PLANO DE ENSINO. ATIVIDADE SEG TER QUA QUI SEX Aulas Atendimento Preparação de aula

Sistemas de Informação 3º ANO

SISTEMAS DISTRIBUIDOS E PARALELOS 2014/2015 1º SEMESTRE

Disciplina de Projetos e Análise de Algoritmos. Aula 1 - Apresentação aos Algoritmos Computacionais

Universidade do Estado da Bahia UNEB Departamento de Ciências Exatas e da Terra - Campus I

Aprendizagem de Máquina

UNIVERSIDADE PRESBITERIANA MACKENZIE Faculdade de Computação e Informática MATRIZ CURRICULAR ELETIVAS

Pontifícia Universidade Católica do Rio Grande do Sul FACULDADE DE INFORMÁTICA

LISTA DE TEMAS PARA CONCURSO DE PROFESSOR ADJUNTO EDITAL 90/2010 ÁREA DE ANATOMIA VEGETAL GERAL, COM ÊNFASE EM ANATOMIA ECOLÓGICA * * * * * *

UNIVERSIDADE FEDERAL DE PERNAMBUCO - PRÓ-REITORIA PARA ASSUNTOS ACADÊMICOS CURRÍCULO DO CURSO DE GRADUAÇÃO EM ENGENHARIA DA COMPUTAÇÃO PERFIL

UNIVERSIDADE ESTADUAL DO OESTE DO PARANÁ PRÓ-REITORIA DE GRADUAÇÃO. PLANO DE ENSINO - PERÍODO LETIVO/ANO 2008 ANO DO CURSO: 5 o

UNIVERSIDADE LUSÍADA DE LISBOA. Programa da Unidade Curricular SISTEMAS DISTRIBUIDOS Ano Lectivo 2015/2016

Universidade Federal do ABC Rua Santa Adélia, Bairro Bangu - Santo André - SP - Brasil CEP Telefone/Fax:

UNIVERSIDADE PRESBITERIANA MACKENZIE Faculdade de Computação e Informática EMENTAS DA 3ª. ETAPA

Ficha da Disciplina COMPUTAÇÃO GRÁFICA E INTERFACES. Objectivos. Docente

IN Redes Neurais

Concurso público de provas e títulos para professor adjunto

Web site. Objetivos gerais. Introdução. Profa. Patrícia Dockhorn Costa

Sobre o Professor Dr. Sylvio Barbon Junior

Avaliação de Desempenho em Sistemas de Computação e Comunicação

PLANO DE ENSINO. DISCIPLINA: (06241) Algoritmos e Estruturas de Dados. PRÉ-REQUISITOS: Matemática Discreta e Introdução a Programação

De uma forma ampla, o profissional egresso deverá ser capaz de desempenhar as seguintes funções:

PLANO DE ENSINO. Mestrado em Matemática - Área de Concentração em Estatística

Sistemas Distribuídos (DCC/UFRJ)

CURSO DE ENGENHARIA DE COMPUTAÇÃO Renovação de Reconhecimento pela Portaria n 123 de 09/07/12 DOU de 10/07/12 PLANO DE CURSO

DISCIPLINA: Métodos Heurísticos

UNIVERSIDADE LUSÍADA DE LISBOA. Programa da Unidade Curricular SISTEMAS DISTRIBUÍDOS Ano Lectivo 2012/2013

Ficha da Unidade Curricular (UC)

Sistemas Distribuídos

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO PRÓ-REITORIA DE ENSINO DE GRADUAÇÃO

Gestão de Projectos de Software - 1

Linguagem Formais e Autômatos

SERVIÇO PÚBLICO FEDERAL UNIVERSIDADE FEDERAL DE GOIÁS INSTITUTO DE INFORMÁTICA

RESOLUÇÃO CPG nº 01/2014

UNIVERSIDADE ESTADUAL DO OESTE DO PARANÁ PRÓ-REITORIA DE GRADUAÇÃO. Curso: Informática Modalidade: Bacharelado Turno: Integral.

CURSO DE SISTEMAS DE INFORMAÇÃO

EMENTAS DO CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

EMENTAS DAS DISCIPLINAS

Plano de Ensino IDENTIFICAÇÃO

( X ) SEMESTRAL - ( ) ANUAL

(P AA) 2 PACOTE DE APOIO A APRENDIZAGEM DE PROJETO E ANÁLISE DE ALGORITMOS: IMPLEMENTAÇÃO EM JAVA

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO PRÓ-REITORIA DE ENSINO DE GRADUAÇÃO

PLANO DE ENSINO. Ano: 2015 Semestre Letivo: ( ) Primeiro ( x ) Segundo Total de Créditos (se for o caso): 4 Carga Horária: 60 horas

PLANO DE ENSINO. PRÉ-REQUISITO: Modelagem e Programação Orientada a Objetos. PROFESSOR RESPONSÁVEL : Josino Rodrigues Neto

Engenharia de Software

I. Dados Identificadores Tecnologia em Análise e Desenvolvimento de Sistemas

Os limites da computação algorítmica

PLANO DE ENSINO. CURSOS: Licenciatura em Computação, Licenciatura em Matemática, Licenciatura. MODALIDADE: Presencial

Geração do Portal CPCX - UFMS pelo UNION: Um Estudo de Caso

UNIVERSIDADE PRESBITERIANA MACKENZIE Faculdade de Computação e Informática EMENTAS DAS DISCIPLINAS OPTATIVAS I

PRÓ - REITORIA ACADÊMICA PLANO DE ENSINO

CENTRO UNIVERSITARIO SENAC PLANO DE ENSINO

SERVIÇO PÚBLICO FEDERAL UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO

GUIA DE FUNCIONAMENTO DA UNIDADE CURRICULAR

PROGRAMA DE DISCIPLINA

UNIVERSIDADE FEDERAL DO CEARÁ PRÓ-REITORIA DE GRADUAÇÃO CAMPUS DE SOBRAL

EDITAL Nº 204/2014-PROG/UEMA

PROGRAMA. Curso: Mestrado em Educação e Comunicação Multimédia. diurno. Ciclo: 2º. pós-laboral. Ano: 1º Semestre: 1º

DISCIPLINA: Arquitetura e Organização de Computadores II 2ECOM.027

PLANO DE ENSINO DE DISCIPLINA

EMENTAS DAS DISCIPLINAS

PLANO DE ENSINO PRÉ-REQUISITOS: ENS

UNIVERSIDADE PRESBITERIANA MACKENZIE Faculdade de Computação e Informática EMENTAS DAS DISCIPLINAS OPTATIVAS II

Algoritmos e Estrutura de Dados II. Apresentação. Prof a Karina Oliveira. kkco@dei.unicap.br

Inteligência Computacional [2COP229]

Plano de Ensino IDENTIFICAÇÃO EMENTA

UNIVERSIDADE LUSÍADA DE LISBOA. Programa da Unidade Curricular INFORMÁTICA Ano Lectivo 2015/2016

Universidade Salgado de Oliveira

Ementas Disciplinas Obrigatórias

ENGENHARIA DE COMPUTAÇÃO

Tecnologias de Redes Informáticas (6620)

Curso: Bacharelado em Informática. Instituto de Ciências Matemáticas e de Computação

Projeto Pedagógico do Bacharelado em Ciência da Computação. Comissão de Curso e NDE do BCC

Universidade do Estado da Bahia UNEB Departamento de Ciências Exatas e da Terra - Campus I

Projeto e Análise de Algoritmos Projeto de Algoritmos Introdução. Prof. Humberto Brandão humberto@dcc.ufmg.br

FORMULÁRIO PARA CRIAÇÃO DE DISCIPLINA

Aprendizagem de Máquina

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite

LICENCIATURA EM COMPUTAÇÃO

Programa Interunidades de Pós-Graduação em Bioinformática - Universidade de São Paulo

EMENTAS DAS DISCIPLINAS

Pontifícia Universidade Católica do Rio Grande do Sul FACULDADE DE INFORMÁTICA

6. QUADRIMESTRE IDEAL 7. NÍVEL Graduação 8. Nº. MÁXIMO DE ALUNOS POR TURMA

CURSO DE INFORMÁTICA LICENCIATURA 1 PERÍODO

EMENTÁRIO DO CURSO DE SISTEMAS DE INFORMAÇÃO

SISTEMAS DISTRIBUÍDOS

Proporcionar uma visão geral da metodologia de Sistemas Operacionais.

INTELIGÊNCIA COMPUTACIONAL

PLANO DE ENSINO. CURSO: Sistemas de Informação PERÍODO LETIVO: SEMESTRE: 4º. C/H SEMANAL Análise, Projeto e Implementação de Sistemas I

Ementário das Disciplinas

CURSO DE SISTEMAS DE INFORMAÇÃO

Regulamento do Curso de. Mestrado Integrado em Engenharia Informática

2º Ciclo em: Engenharia Informática Design e Desenvolvimento de Jogos Digitais DI UBI 2014/2015

UNIVERSIDADE PRESBITERIANA MACKENZIE Faculdade de Computação e Informática. 7th SEMESTER

Fase 1: Engenharia de Produto

Transcrição:

DISCIPLINAS DO PROGRAMA DE PÓS GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO NÍVEL MESTRADO Art. 1 o As disciplinas do Programa da Pós Graduação em Ciência da Computação são organizadas nas categorias de disciplinas obrigatórias gerais, disciplinas obrigatórias por linha de pesquisa e disciplinas optativas. 1 o Todas as disciplinas, exceto as disciplinas de Seminários, que não contabiliza crédito, e de Metodologia Científica, com 02 (dois) créditos, são disciplinas de quatro créditos, com carga horária de 60 (sessenta) horas aula. 2 o Cada disciplina deverá ser ofertada, no mínimo, uma vez a cada dois anos. 3 o As disciplinas obrigatórias gerais são as seguintes: MCC001 Estrutura de Dados e Projeto de Algoritmos; MCC002 Metodologia Científica; MCC003 Seminários. 4 o As disciplinas obrigatórias da linha Engenharia de Software, Banco de Dados e Informática e Educação são as seguintes: MCC004 Engenharia de Software; MCC005 Banco de Dados. 5 o As disciplinas obrigatórias da linha Fundamentos de Computação são as seguintes: MCC006 Análise e Projeto de Algoritmos; MCC007 Teoria dos Grafos. 6 o As disciplinas obrigatórias da linha Inteligência Computacional são as seguintes: MCC008 Inteligência Computacional; MCC009 Aprendizado de Máquina. 7 o As disciplinas obrigatórias da linha Processamento Gráfico, Interação e Computação Aplicada são as seguintes: MCC010 Processamento Digital de Imagens; MCC011 Algoritmos de Reconhecimento de Padrões. 8 o As disciplinas obrigatórias da linha Sistemas de Computação são as seguintes: MCC012 Avaliação de Desempenho; MCC013 Programação Paralela e Distribuída. 9 o As disciplinas optativas são as seguintes: MCC014 Engenharia de Software para Web Semântica MCC015 Teste de Software; MCC016 Bancos de Dados não Convencionais; MCC017 Informática e Educação; MCC018 Programação Linear; MCC019 Teoria da Computação; MCC020 Otimização Combinatória; MCC021 Fluxos em Redes; MCC022 Computação Evolucionária; MCC023 Mineração de Dados;

MCC024 Recuperação da Informação; MCC025 Meta heurísticas; MCC026 Computação Gráfica; MCC027 Visão Computacional; MCC028 Realidade Virtual e Aumentada; MCC029 Visualização de Informações; MCC030 Redes de Computadores; MCC031 Sistemas Distribuídos; MCC032 Computação Paralela; MCC033 Sistemas Multimídia; MCC034 Tópicos Especiais em Ciência da Computação; MCC035 Tópicos Especiais em Engenharia de Software, Banco de Dados e Informática e Educação; MCC036 Tópicos Especiais em Fundamentos de Computação; MCC037 Tópicos Especiais em Inteligência Computacional; MCC038 Tópicos Especiais em Processamento Gráfico, Interação e Computação Aplicada; MCC039 Tópicos Especiais em Sistemas de Computação; MCC040 Estudo Orientado. 10 o As especificações das disciplinas listadas nos parágrafos 3 a 9 encontram se no Anexo I.

I Disciplinas Obrigatórias Gerais ANEXO I Ementas das Disciplinas MCC001 Estrutura de Dados e Projeto de Algoritmos Conceitos de análise de algoritmos (fundamentos matemáticos; indução matemática; análise assintótica). Estrutura de dados elementares (lista; fila; pilha,...) Árvores (conceitos; árvores binárias de busca; árvores binárias balanceadas AVL, vermelho e preto, por peso; KD Tree, árvores B) Filas com prioridades (conceito; heaps binários; heap binomial). Tabelas de dispersão (conceito de "hash table"; funções de dispersão; endereçamento aberto; encadeamento linear) Conjuntos disjuntos (union find). 1. Cormen, Leiserson, Rivest, and Stein (CLRS), Introduction to Algorithms, 2nd Ed., MIT Press, 2001. 2. Sedgewick, R., Algorithms in C++ (Parts 1 4), Addison Wesley, 3ª edição, 1998. 3. Mark Allen Weiss, Data Structures and Algorithm Analysis in C++, 4th Ed., Addison Wesley, 2012. 4. D. E. Knuth. The Art of Computer Programming. Volume 1 Fundamental Algorithms. Addison Wesley, 1998. 5. D. E. Knuth. The Art of Computer Programming. Volume 3 Sorting and Searching. Addison Wesley, 1998. 6. N. Ziviani. Pro jeto de Algoritmos com Implementações em Pascal e C, 2a Edição. 2004. Editora Thomson. 7. C. H. Papadimitriou, U. V. Vazirani, S. Dasgupta. Algoritmos. 2009. Mcgraw Hill Brasil. MCC002 Metodologia Científica Tema, Objetivo, Hipótese, Validação Leitura de documentos científicos tipos de documentos, levantamento bibliográfico, resumo e resenha Escrita de documentos científicos referências bibliogáficas, plágio, LaTeX Apresentação de artigos técnicas e prática 1. WAZLAWICK, R.S., Metodologia de Pesquisa para Ciência da Computação, Editora Elsevier, 2009.

2. WAZLAWICK, R.S., Uma Reflexão sobre a Pesquisa em Ciência da Computação à Luz da Classificação das Ciências e do Método Científico, Revista de Sistemas de Informação da FSMA, No. 6, pp. 3 10, 2010. 3. SILVA, E.L., MENEZES, E.M., Metodologia da Pesquisa e Elaboração de Dissertação, 4ª edição revisada e atualizada, Universidade Federal de Santa Catarina, 2005. 4. MORESI, E.(Organizador), Metodologia de Pesquisa, Universidade Católica de Brasília, 2003. 5. PARBERRY, I., How to Present a Paper in Theoretical Computer Science: a Speaker s Guide for Students, SIGTCS News, Vol. 4, No. 2, pp. 37 50, 1993. 6. BARROS, Aidil de Jesus da Silveira. Fundamentos da Metodologia Científica. 3 ed. 3a. Reimpressão. São Paulo. Pearson Prentice Hall, 2010. 7. WAZLAWICK, Raul Sidnei. Metodologia da Pesquisa para Ciência da Computação. Rio de Janeiro: Elsevier, 2008. 8. SEVERINO, Antonio Joaquim. Metodologia do Trabalho Científico. 22 ed. Revisada e ampliada. São Paulo: Cortez, 2002. MCC003 Seminários Esta é uma disciplina que consiste em uma série de seminários dentro da área de concentração do Programa, coordenados por um professor responsável pela disciplina. O estudante inscrito nesta disciplina, além de assistir aos seminários apresentados por seus colegas, professores do programa ou palestrantes convidados, deverá apresentar pelo menos um seminário durante o período em que estiver matriculado na disciplina, tendo por tema um tópico relacionado a sua dissertação de mestrado. II Disciplinas Obrigatórias da linha Engenharia de Software, Banco de Dados e Informática e Educação MCC004 Engenharia de Software Software como produto e processo Relação entre Engenharia de Software e Sistemas Sociotécnicos Desafios da Engenharia de Software para o século 21 Modelos prescritivos de processo de software Processo Unificado (Concepção, Elaboração, Construção, Transição) 1. Boehm, B. A View of 20th and 21st Century Software Engineering, Proceedings of the 28th ACM International Conference on Software Engineering, 2006, pp.12 29. 2. Brooks, Frederick P. No Silver Bullet: Essence and Accidents of Software Engineering, IEEE Computer, v.20, n.4, 1987, pp.10 19. 3. Larman, Craig. Utilizando UML e padrões: uma introdução à análise e ao projeto

orientados a objetos e ao desenvolvimento iterativo, 3a edição, Porto Alegre, Bookman, 2007. 4. Pressman, Roger. Engenharia de Software, 7a edição, McGrawHill, Porto Alegre, RS, 2011. 5. Sommerville, Ian. Engenharia de Software, 9a edição, Prentice Hall, São Paulo, SP, 2011. 6. Swebok. Software Engineering Body ok Knowledge, Editado por IEEE Computer Society. Disponível em http://www.swebok.org. MCC005 Banco de Dados Conceitos básicos. Modelos e linguagens de dados. Projeto de bancos de dados. Implementação de sistemas de banco de dados. 1. Database System Concepts, Abraham Silberschatz, Henry Korth and S. Sudarshan, McGraw Hill; 6th edition, 2010; 2. Fundamentals of Database Systems, Ramez Elmasri and Shamkant Navathe, Addison Wesley. 6th edition, 2010; 3. Database Systems: A Practical Approach to Design, Implementation and Management, Thomas M. Connolly and Carolyn E. Begg, Addison Wesley; 5th edition, 2009. III Disciplinas Obrigatórias da linha Fundamentos de Computação MCC006 Análise e Projeto de Algoritmos Análise de algoritmos: Medidas de complexidade, análise assintótica de limites de complexidade, técnicas de prova de cotas inferiores. Exemplos de análise de algoritmos iterativos e recursivos. Técnicas de projeto de algoritmos: Indução, Recursividade, Tentativa e erro, Divisão e conquista, programação dinâmica, Algoritmos Gulosos, Backtracking. NP completude: Conceitos, classes de complexidade e redução de problemas. 1. Udi Manber Introduction to Algorithms A creative Approach. Addison Wesley 1989. 2. Sara Baase Computer Algorithms: Introduction to Design and Analysis. Addison Wesley 1988. 3. Alfred Aho, John Hopcroft and Jeffrey Ullman The Designs and Analysis of Computer Algorithms. Addison Wesley, 1974. 4. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein Introduction to Algorithms. MIT Press; 2nd edition, 2001. MCC007 Teoria dos Grafos

Introdução. Árvores e distâncias. Emparelhamentos. Conectividade. Fluxos em redes. Coloração de grafos. Grafos Planares. Tópicos em grafos: grafos perfeitos, grafos de intersecção, conjuntos dominantes, conjuntos independentes de vértices. 1. Reinhard Diestel Graph Theory. Springer 1997. 2. Douglas West Introduction to Graph Theory. Prentice Hall, 2001. 3. J. A. Bondy and U. S. R. Murty Graph Theory with Applications. North Hollan, 1976. VI Disciplinas Obrigatórias da linha Inteligência Computacional MCC008 Inteligência Computacional Conceitos básicos de Inteligência Computacional Agentes inteligentes/sistemas multiagentes Conhecimento e raciocínio Aprendizagem Algoritmos genéticos Computação semântica Tópicos avançados 1. Russell, S., Norvig, P. Artificial Intelligence A Modern Aproach. Pearson, 2010. 2. Coppin, B. Inteligência Artificial, Ed. LTC, 2010. 3. Luger, G. F. Inteligência Artificial: Estruturas e estratégias para a solução de problemas complexos, Ed. Bookman, 2004. 4. Artigos técnicos especializados que serão sugeridos posteriormente. MCC009 Aprendizado de Máquina Introdução ao Aprendizado de Máquina. Aprendizado supervisionado. Aprendizado não supervisionado. Aprendizado por reforço. Avaliação experimental de algoritmos de aprendizado

Tópicos avançados 1. Mitchell, T. Machine Learning, McGraw Hill, 1997. 2. Faceli, K., Lorena, A.N., Gama, J., Carvalho, A.C.P.L.F. Inteligência Artificial: Uma Abordagem de Aprendizado de Máquina, Ed. LTC, 2011. 3. Artigos técnicos especializados que serão sugeridos posteriormente. V Disciplinas Obrigatórias da linha Processamento Gráfico, Interação e Computação Aplicada MCC010 Processamento Digital de Imagens Fundamentos de imagens digitais Transformações de imagens no domínio espacial Transformações de imagens no domínio da frequência Restauração de imagens Processamento de cores Wavelets e processamento de multi resoluções Compressão de imagens Morfologia matemática Segmentação Representação e descrição de imagens Reconhecimento de objetos 1. Gonzalez, R.C. & Woods, R.E. Digital Image Processing, 3rd Ed. Prentice Hall, USA, 2008. 2. Gonzalez, R.C. & Woods, R.E. Processamento de Imagens Digitais (tradução). São Paulo, Edgard Blucher Ltda, 2000. 3. Pratt, W. K. Digital Image Processing, 4th ed. USA, Wiley Interscience Pub., 2007. 4. Filho, O. M. & Neto, H. V. Processamento Digital de Imagens Editora Brasport, 1999. MCC011 Algoritmos de Reconhecimento de Padrões Introdução ao reconhecimento de padrões e percepção. Diferentes abordagens de reconhecimento de padrões. Tipos de aprendizados: Supervisionado e Não Supervisionado Classificadores paramétricos e teorema de Bayes Métodos não paramétricos: k vizinhos mais próximos (knn), Estimação de probabilidade, Funções discriminantes lineares (LDA), Perceptron, Support Vector Machine (SVM).

Modelos Escondidos de Markov Métodos baseados em árvores CART, ID3, C4.5. Extração de características: estruturais e estatísticas. Seleção de características e redução de dimensionalidade: PCA. Análise de Sistemas de Classificação: espaço e curvas Receiver Operating Characteristics (ROC), Rejeição. Combinação de classificadores: Diversidade, Bias/variância, Boosting, Bagging e Adaboosting. 1. R.O. Duda, P. E. Hart, D. G. Stork, Pattern Classification, John Wiley Interscience, 2001. 2. C. M. Bishop. Pattern Recognition and Machine Learning. Springer, 2006. 3. S. Theodoridis and K. Koutroumbas. Pattern Recognition. Elsevier, 4th edition, 2009. VI Disciplinas Obrigatórias da linha Sistemas de Computação MCC012 Avaliação de Desempenho Revisão de Probabilidade e Estatística: espaço amostral, eventos, análise combinatória, probabilidade condicional, independência de eventos, Lei de Bayes, variável aleatória, variáveis aleatórias discretas e contínuas, função de densidade de probabilidade, função cumulativa de distribuição, etc. Simulação e experimentos: introdução, geração de variáveis aleatórias, algoritmo para simular uma fila, cálculo de medidas de interesse, média e variância amostral, intervalo de confiança, etc. Cadeias de Markov Teoria de Filas Outros tópicos: Inferência Estatística, Cauda Longa, Lei de potência, Correlação 1. Trivedi, K. S., Probability & Statistics with Reliability, Queuing and Computer Science Applications, 2001. 2. Harchol Balter, M., Performance Modeling and Design of Computer Systems: Queueing Theory in Action, 2013. 3. Montgomery, R., Applied Statistics and Probability for Engineers, 2006. 4. Le Boudec, J. Y., Performance Evaluation of Computer and Communication Systems, 2010. 5. Ross, S. M., Simulation, 2006. 6. Ross, S. M., Introduction to Probability Models, 2007. MCC013 Programação Paralela e Distribuída Introdução à Programação Paralela e Distribuída.

Arquiteturas Paralelas. Programação Paralela. Paradigmas de computação paralela. Introdução aos sistemas distribuídos. Programação distribuída. Paradigmas de computação distribuída. 1. David B. Kirk, Wen mei W. Hwu. Programming Massively Parallel Processors: A Hands on Approach, Morgan Kaufmann, 2012. 2. Andrew S. Tanenbaum and Maarten Van Steen. Distributed Systems: Principles and Paradigms, Prentice Hall, 2006 3. Jason Sanders and Edward Kandrot. CUDA by Example: An Introduction to General Purpose GPU Programming. Addison Wesley Professional, 2010. 4. Kay Hwang, Jack Dongarra, Geoffrey C. Fox, Distributed and Cloud Computing, Morgan Kaufmann, 2011. VII Disciplinas Optativas MCC014 Engenharia de Software para Web Semântica 1. Fundamentos e arquitetura da Web Semântica 2. Linguagens e/ou padrões para especificação de caracteres e localização, sintaxe, estrutura, semântica e lógica de informação 3. Ontologias e regras 4. Framework para programação de aplicações para Web Semântica 5. Temas emergentes. 1. Berners Lee, T., Hendler, J., & Lassila, O. (2001). The Semantic Web. Scientific American, 284(5), 28 37. 2. Hebeler, J., Dean, M. & Fisher, M. (2011). Semantic Web Programming. John Wiley & Sons. 2nd edition. 3. Noy, N. F., & McGuinness, D. L. (2001). Ontology Development 101: A Guide to Creating Your First Ontology. http://protege.stanford.edu/publications/ontology_development/ontology101.html 4. Segaran, T., Evans, C. & Taylor, J. (2009). Programming the Semantic Web. O'Reilly Media; 1 edition. 5. W3C. (2013). Padrões para a Web Semântica do World Wide Web Consortium. http://www.w3.org. MCC015 Teste de Software Fundamentos Teóricos. Teste Funcional. Teste estrutural. Análise de Mutantes. Oficina em

teste de software: experimentação e análise empírica. 1. M. E. Delamaro, J. C. Maldonado, M. Jino. Introdução ao Teste de Software. Campus, 2007. 2. G. J. Myers, C. Sandler, T. Badgett. The Art of Software Testing. Wiley, 3rd edition, 2011. 3. R.V. Binder. Testing Object Oriented Systems: Models, Patterns, and Tools. Addison Wesley, 1999. 4. Artigos científicos selecionados. MCC016 Bancos de Dados não Convencionais Ementa variável envolvendo aspectos emergentes sobre bancos de dados. 1. ELMASRI, R. e NAVATHE, S.B., Fundamentals of Database Systems, 6th edition, Addison Wesley, 2011. 2. SILBERSCHATZ, A., KORTH, H.F. e SUDARSHAN, S., Database System Concepts, McGraw Hill, 6th edition, 2010; 3. artigos e publicações selecionadas. MCC017 Informática e Educação Ensino de computação, tecnologias em educação e métodos científicos em informática e educação. 1. WAZLAWICK, R.S., Metodologia de Pesquisa para Ciência da Computação, Editora Elsevier, 2009. 2. MARTINS, C. Manual de Análise de Dados Quantitativos com Recurso ao IBM SPSS, Editor: Psiquilibrios, 2011 3. Artigos científicos selecionados. MCC018 Programação Linear Modelagem de problemas. Resolução Gráfica. Geometria da PL. Algoritmo Simplex Primal fases 1 e 2. Dualidade. Algoritmo Simplex Dual. Análise de Sensibilidade. Pós Otimização. Algoritmo Simplex Primal Dual.

Algoritmos Simplex canalizados. 1. Paulo F. Bregalda, Antonio A.F. de Oliveira e Cláudio T. Bornstein. Introdução à Programação Linear, Terceira Edição, Ed. Campus, 1988. 2. Marcos C. Goldbarg e Henrique P.L. Luna. Programação Linear e Otimização Combinatória: Modelos e Algoritmos, Ed. Campus, 2000. 3. D. G. Luenberger. Introduction to Linear and Nonlinear Programming, Addison Wesley, London, 1973. 4. Nelson Maculan e Márcia H. C. Fampa. Otimização Linear, Ed. UnB, 2006. MCC019 Teoria da Computação Contextualização histórica; Indução, Recursão e Enumerabilidade de Conjuntos; Linguagem Algorítmica; Funções Recursivas; Maquina de Turing; Tese de Church; Problemas Indecidíveis. 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. Computabilidade (Tese de Church, noções de incompletude de Gödel, relações entre os modelos de computabilidade). Noções de computabilidade efetiva. Modelos de computação. Problemas indecidíveis. Classes P, N P, N P C e N PDifícil. Lidando com problemas N P Completos. 1. M. Sipser; Introduction to the Theory of Computation. EUA. PWS Pub. Co., 1997. 2. M. Garey, D. Johnson, Computers and Intractability: A Guide to the Theory of NP Completeness. W. H. Freeman and Company, 1979. 3. H. R. Lewis, C. H. Papadimitriou; Elementos de Teoria da Computação. 2a Ed. Porto Alegre. Bookman Cia. Editora, 2000. 4. J. E. Hopcroft; J. Ullman; Introdução à teoria de Autômatos, Linguagens e Computação. Ed. Campus. 5. T. A. Diverio; P. B. Menezes; Teoria da Computação: Máquina Universais e Computabilidade. Série UFRGS 05. Editora Sagra Luzzato, 1999. 6. B. M. Moret; The Theory of Computation. EUA, Addison Wesley Pub. Co., 1997. 7. T. H. Cormen, C. E. Leiserson, R. L. Rivest, Introduction to Algorithms, McGraw Hill, New York, 1990. MCC020 Otimização Combinatória Problemas de natureza combinatória: caminhos, árvores e arborescências em grafos, problema da mochila. Geração de colunas em programação linear e suas aplicações.

Programação linear inteira: modelagem em variáveis bivalentes () 1) e métodos de solução (cortes, aproximação poliédrica, enumeração e relaxação lagrangiana). Programação não linear inteira: métodos gerais e métodos específicos para programação quadrática bivalente () 1). Problemas combinatórios. 1. Nemhauser, George L., and Laurence A. Wolsey. Integer and combinatorial optimization. Vol. 18. New York: Wiley, 1988. 2. Goldbarg, Marco Cesar, and Henrique Pacca L. Luna. Otimização combinatória e programação linear: modelos e algoritmos. Elsevier, 2005. 3. Bertsimas Dimitris, and John Tsitsiklis, "Introduction to Linear Optimization". 1998. 4. Ahuja, Ravindra K., Thomas L. Magnanti, and James B. Orlin. "Network flows: theory, algorithms, and applications." (1993). 5. Papadimitriou, Christos H., and Kenneth Steiglitz. Combinatorial optimization: algorithms and complexity. Courier Dover Publications, 1998. 6. Schrijver, Alexander. Theory of linear and integer programming. Wiley. com, 1998. MCC021 Fluxos em Rede Conceitos básicos e representação computacional de grafos; Formulação matemática de problemas de fluxo em redes, como: caminho mínimo, árvore geradora mínima, fluxo máximo, fluxo máximo de custo mínimo, árvore de Steiner; Algoritmos eficientes para problemas clássicos em redes. 1. R.K. Ahuja, T.L. Magnanti e J.B. Orlin. "Network Flows: theory, algorithms and applications", Prentice Hall. 2. M.S. Bazaraa, J.J. Jarvis e H.D. Sherali. "Linear Programming and Network Flows", segunda edição, Wiley. 3. C.H. Papadimitriou, K. Steiglitz. "Combinatorial Optimization: Algorithms and Complexity", Dover. MCC022 Computação Evolucionária Introdução a Computação Evolucionária e Métodos de busca Representações Algoritmos genéticos Técnicas de seleção, cruzamento e mutação Estratégias Evolucionárias e Programação Evolucionária Evolução Diferencial Otimização multi objetivo

1. David Goldberg, The Design of Innovation (Genetic Algorithms and Evolutionary Computation), Springer, 2002. 2. Yu, Xinjie, Gen, Mitsuo, Introduction to Evolutionary Algorithms, Springer, 2010. 3. Franz Rothlauf, Representations for Genetic and Evolutionary Algorithms, Springer, 2006. MCC023 Mineração de Dados Revisão de estatística básica e probabilidade. Visão geral do processo de mineração de dados. Carga, transformação e limpeza dos dados (ETL). Métodos de mineração de dados. Visualização dos resultados. Experimentos. 1. Pang Ning Tan, Michael Stenbach, Vipin Kumar, Introduction to Data Mining, Addison Wesley, 2005. 2. Ian H. Witten, Eibe Frank, Mark A. Hall, Data Mining: Practical Machine Learning Tools and Techniques, Third Edition, Morgan Kaufmann Publishers, 2011. 3. Jiawei Han, Micheline Kamber and Jian Pei, Data Mining: Concepts and Techniques, Third Edition, Morgan Kaufmann Publishers, 2011 MCC024 Recuperação da Informação Algoritmos e técnicas de Construção de máquinas de busca: Representação de vocabulários Técnicas de construção e compressão de índices Processamento de consultas Avaliação em recuperação de informação Modelos de linguagem Máquinas de busca para a Web Algoritmos e heurísticas para mineração de informações: técnicas de classificação: Classificação de textos Agrupamento (clustering) de textos Tópicos de pesquisa em Recuperação de Informação 1. Christopher D. Manning, Prabhakar Raghavan e Hinrich Schütze: Introduction to Information Retrieval, Cambridge, 2009. 2. Ricardo Baeza Yates e Berthier Ribeiro Neto: Modern Information Retrieval, Addison

Wesley, 1999. 3. W. Bruce Croft, Donald Metzler e Trevor Strohman: Search Engines information Retrieval in Practice, Addison Wesley, 2010. 4. Ian H. Witten, Alistair Moffat e Timothy C. Bell: Managing Gigabytes: Compressing and Indexing Documents and Images, Morgan Kaufmann Publishers, 1999, second edition. 5. Artigos técnicos especializados que serão sugeridos posteriormente. MCC025 Meta heurísticas Introdução a heurísticas e meta heurísticas Algoritmos Gulosos Busca Local Busca Populacional Hiper heurísticas 1. Brown, D.E. and Scherer, W.T. Intelligent Scheduling Systems. Kluwer Academic Publishers, 1995. 2. Ansari, Nirwan and Hou, E. Computational Intelligence for Optimization. Kluwer Academic Publishers, 1997. 3. Reeves, C.R. Modern Heuristic Techniques for Combinatorial Problems. Blackwell Scientif Publications, 1993. 4. Reeves, C.R. Tabu Search. Kluwer Academic Publishers, 1997. 5. Glover, F., Laguna, M. & Taillard, E. Tabu Search. Annals of Operations Research, v.41, J.C.Baltzer, 1993. MCC026 Computação Gráfica Introdução à Computação Gráfica. Sistemas de Coordenadas. Geração de Primitivas. Preenchimento de áreas e polígonos. Transformações 2D e 3D. Recorte e Projeções. Iluminação e Sombreamento Interface Homem Máquina 1. J. D. Foley, A. van Dam, S. K. Feiner, J. F. Hughes. Computer Graphics, Principles and Practice. Addison Wesley, 1997. 2. D. Hearn, M. P. Baker. Computer Graphics, C Version.Prentice Hall, 1997.

3. R.C. Gonzalez & R. E. Woods. Processamento de Imagens Digitais, Edgard Blücher, 2000. 4. R. C. Gonzalez & R. E. Woods. Digital Image Processing, Addison Wesley, 1993. 5. B. W. Kernigham, D. M. Ritchie. The C Programming Language. Prentice Hall, 1972. 6. Ballard, D.H. e C.M. Brown, "Computer Vision", Prentice Hall, 1982. MCC027 Visão Computacional Formação e modelo de imagens: câmeras; modelos geométricos de câmeras; calibração; radiometria; iluminação e cores Visão de baixo nível (uma imagem): filtros; detecção de arestas; textura Visão de baixo nível (múltiplas imagens): geometria de múltiplas imagens; visão estéreo; estruturas a partir de movimentos Visão de nível intermediário: segmentação por agrupamento; segmentação por modelos; segmentação probabilística; rastreio através de modelos dinâmicos; Análise de Movimento e Fluxo Ótico Visão de alto nível: visão baseada em modelos; superfícies; imagens tridimensionais; classificadores; reconhecimento 1. Forsyth, D.A. e Ponce, J. "Computer Vision: A Modern Approach", Prentice Hall, 2003 2. Jain, A.K. "Fundamentals of Digital Image Processing", Prentice Hall, 1989 3. Gonzalez, R.C. e Woods, R.E. "Digital Image Processing", Prentice Hall, 2002 4. Haralick, R.M. e Shapiro, L.G. "Computer and Robot Vision", Addison Wesley, 1992 5. Horn, B.K.P. "Robot Vision", MIT Press, 1986 6. Ballard, D.H. e C.M. Brown, "Computer Vision", Prentice Hall, 1982 MCC028 Realidade Virtual e Aumentada Conceitos Fundamentais da Realidade Virtual (RV) Elementos de Computação Gráfica (CG) relacionados à RV RV não imersiva, RV imersiva Hardware de Entrada e Saída para RV Aplicações de RV Desenvolvimento de Ambientes Virtuais 1. BURDEA, G.; COIFFET, P. Virtual Reality Technology. 2nd Edition. Wiley, New York, ISBN 0 471 36089 9, 2003. 2. BIMBER, O.; RASKAR, R. Spatial Augmented Reality: Merging Real and Virtual Worlds. A K Peters, Ltd, ISBN 1 56881 230 2, 2004. 3. VINCE, J. Introduction to Virtual Reality, Springer Verlag New York, ISBN: 9781852337391, 2004.

4. SHERMAN, W.R.; CRAIG, A.B. Understanding Virtual Reality: Interface, Application and Design. Elsevier, ISBN 1 55860 353 0, 2003. MCC029 Visualização de Informações Definições e histório da área de Visualização de Informações O sistema óptico e a percepção de visual Dimensionalidade dos dados Interatividade nas visualizações Técnicas de visualização de informações e suas aplicações Efetividade e eficiência Avaliação de visualizações Software e dispositivos de apoio 1. CARD, Stuart K., MACKINLAY, Jock D., SHNEIDERMAN, Ben. Readings in Information Visualization: Using Vision to Think, Morgan Kaufmann Series in Interactive Technologies, Academic Press, 1999. 2. SPENCE, Robert. Information Visualization, ACM Press, 2000. 3. WARE, Colin. Information Visualization: Perception for Design, 2nd Edition, Morgan Kaufmann Interactive Technologies Series, April 2004. ISBN 1 55860 819 2. 4. Do NASCIMENTO, Hugo A. D., FERREIRA, Cristiane B. R. Visualização de Informações Uma Abordagem Prática. No Livro Texto da XXIV Jornada de Atualização em Informática. São Leopoldo RS, 2005. 5. DI BATTISTA, Giuseppe, EADES, Peter, TAMASSIA, Roberto, TOLLIS, Ioannis. Graph Drawing: Algorithms for the Visualization of Graphs, Prentice Hall, 1999. Referências Adicionais: 1. TUFTE, Edward R., Visual Explanations: Images and Quantities, Evidence and Narrative. Graphics Press, Fev 1997. ISBN: 0961392126 2. TUFTE, Edward R., Envisioning Information. Graphics Press, Fev 1990. ISBN: 0961392118 3. TUFTE, Edward R., The Visual Display of Quantitative Information, 2nd edition, Graphics Press, Fev 2001. ISBN: 0961392142 4. JÜNGER, M., MUTZEL, P. (Eds.). Graph Drawing Software. 2003. ISBN 3 540 00881 0. 5. BORG, I. e GROENEN, P. Modern Multidimensional Scaling. Springer Verlag, New York, 1997. 6. ECO, Humberto. Tratado Geral de Semiótica. 4a. edição, São Paulo: Editora Perspectiva S.A., 2003. 7. SANTAELLA, Lucia. Semiótica Aplicada. São Paulo: Pioneira Thomson Learnin, 2004. 8. Artigos e web sites na área

MCC030 Redes de Computadores Introdução: conceitos, camadas, Internet, simulação de redes Camada de aplicação: Web, DNS, P2P, programação em sockets convencionais e raw sockets Camada de transporte: transporte confiável, controle de fluxo e de congestionamento, transporte em redes de alta velocidade, transporte em redes sem fio Camada de rede: endereçamento, IPv4/IPv6, protocolos de roteamento, roteamento em redes sem fio Camada de enlace: redes locais cabeadas, redes locais sem fio Outros tópicos: VLAN/QinQ, (G)MPLS, OpenFlow, etc. Tópicos recentes de pesquisa em redes de computadores 1. Kurose, J. F. and Ross, K. W., Computer Networking A Top Down Approach 6th edition, 2012. 2. Peterson, L. L. and Davie, B. S., Computer Networks A Systems Approach 5th edition, 2011. 3. Tanenbaum, A. S. and Wetherall, D. J., Computer Networks 5th edition, 2011. 4. Stallings, W., Data and Computer Communications 10th edition, 2013. 5. Stevens, W. R., Fenner, B. and Rudoff, A. M., Unix Network Programming Vol. I The Sockets Networking API 3rd edition, 2003. MCC031 Sistemas Distribuídos Modelos e arquitetura de sistemas distribuídos Middleware e paradigmas de interação (cliente servidor, publish subscribe, comunicação em grupo, filas de mensagens, espaços de tuplas, memória compartilhada, streaming) Princípios básicos: sincronização de relógios, estados globais, coordenação, consenso e controle de concorrência Tolerância a falhas, replicação e transações distribuídas Propriedades não funcionais de sistemas distribuídos Computação ubíqua Computação como utility (computação em nuvem) Big Data: armazenamento e processamento; Big Memory; processamento em tempo real para BIG Computing Escalabilidade: processamento de muitas requisições simultâneas; sistemas distribuídos de larga escala 1. George Coulouris, Jean Dollimore, Tim Kindberg and Gordon Blair. Distributed Systems: Concepts and Design. Fifth Edition, Addison Wesley, 2011

2. Andrew S. Tanenbaum, Maarten van Steen. Distributed systems: principles and paradigms. 2nd Edition, Pearson Prentice Hall, 2007 3. Artigos científicos relacionados MCC032 Computação Paralela Motivação, histórico e estado atual Modelos teóricos de computação paralela Projeto de algoritmos no modelo PRAM Modelos práticos de computação paralela Projeto de algoritmos no modelo BSP Arquiteturas e computadores paralelos Medidas de desempenho de programas paralelos Arquiteturas manycore e suas linguagens de programação Implementação de algoritmos paralelos usando arquiteturas manycore 1. Introduction to Parallel Algorithms, Joseph JaJa, Oxford University Press. 2. Parallel Scientific Computation: A Structured Approach using BSP and MPI, Rob H. Bisseling, Oxford University Press. 3. Programming Massively Parallel Processors: A Hands on Approach, David B. Kirk, Wen mei W. Hwu, Morgan Kaufmann. MCC033 Sistemas Multimídia Compreender o conceito de multimídia. Conhecer os requisitos para o desenvolvimento de sistemas multimídia, os principais padrões associados às aplicações multimídia, os aspectos relativos à qualidade e tipo da transmissão, performance, formato dos arquivos, compactação de dados e interação. Identificar e entender sua aplicação em interfaces avançadas. 1. STEINMETZ, R. e NAHRSTEDT. Multimedia: Computing, Communications & Applications. Prentice Hall,1995. 2. CHAPMAN, N and CHAPMAN, J. Digital Multimedia 2 nd Edition, John Wiley & Sons, England 2009 3. STEINMETZ, R. e NAHRSTEDT, K. Multimedia Systems, X media publishing, 2004. 4. CHAPMAN, N. And Chapman, J. Digital Multimedia, Wiley, 2009. 5. HAVALDAR, P and MEDIONI, G Multimedia Systems: Algorithms, standards and industry practices, Course Technology, 2010. 6. FURHT, B (editor), Multimedia Technologies and Applications for the 21st Century: Visions of World Experts (The Springer International Series in Engineering and Computer

Science), 2010. MCC034 Tópicos Especiais em Ciência da Computação Esta é uma disciplina de ementa variável que objetiva explorar tópicos avançados na área de Ciência da Computação. MCC035 Tópicos Especiais em Engenharia de Software, Banco de Dados e Informática e Educação Esta é uma disciplina de ementa variável que objetiva explorar tópicos avançados nas áreas específicas de Engenharia de Software, Banco de Dados e Informática e Educação. MCC036 Tópicos Especiais em Fundamentos de Computação Esta é uma disciplina de ementa variável que objetiva explorar tópicos avançados na área específica de Fundamentos da Computação. MCC037 Tópicos Especiais em Inteligência Computacional Esta é uma disciplina de ementa variável que objetiva explorar tópicos avançados na área específica de Inteligência Computacional. MCC038 Tópicos Especiais em Processamento Gráfico, Interação e Computação Aplicada Esta é uma disciplina de ementa variável que objetiva explorar tópicos avançados nas áreas específicas de Processamento Gráfico, Interação e Computação Aplicada. MCC039 Tópicos Especiais em Sistemas de Computação Esta é uma disciplina de ementa variável que objetiva explorar tópicos avançados na área específica de Sistemas de Computação. MCC040 Estudo Orientado Esta disciplina consiste em um estudo individual ou em grupo, sob supervisão do professor orientador, de tópicos complementares para a realização da dissertação final de mestrado. O conteúdo preciso do estudo deve ser definido em torno de uma proposta de trabalho que vise dar maturidade ao estudante para o desenvolvimento de suas atividades de

pesquisa para elaboração da dissertação. O conteúdo deve girar em torno de tópicos que permitam ao estudante se familiarizar com técnicas, ferramentas e teorias que lhe serão úteis em todas as fases da pesquisa e da elaboração da dissertação final de mestrado.