PPCIC students must perform a total of at least 24 (twenty-four) credits, distributed as follows:

- 9 (nine) credits in courses from the basic group, chosen in agreement with the student tutor;
- 15 (fifteen) credits in courses from the specific group, chosen in agreement with the student tutor.

The following presents the main classes offered by PPCIC professors. The course syllabus is presented after the table. It is worth noticing that each course presents basic references that are complemented by scientific papers, which are more updated than the textbooks.

PPCIC courses

Course | Core | Credits |

Computational Linear Algebra | Specific | 3 |

Linear Algebra and Graphs | Specific | 3 |

Graph Algorithms | Specific | 3 |

Analysis and Design of Algorithms | Basic | 3 |

Robotics Applications | Specific | 3 |

Machine Learning | Specific | 3 |

Computer Architecture | Basic | 3 |

Database | Basic | 3 |

Parallel and Distributed Computing | Basic | 3 |

Fundamentals of Multimedia Systems | Specific | 3 |

Large-scale Data Management | Specific | 3 |

Scientific Methodology in computing | Basic | 3 |

Statistical Methods | Basic | 3 |

Data Mining | Specific | 3 |

Process Mining | Specific | 3 |

Text Mining | Specific | 3 |

Metaheuristic Optimization | Specific | 3 |

Linear Programming | Specific | 3 |

Special Topics in Algorithms | Specific | 3 |

Special Topics in Computer Applications | Specific | 3 |

Special Topics in Data Management | Specific | 3 |

Special Topics in Computational Intelligence | Specific | 3 |

Special Topics in Modeling | Specific | 3 |

Special Topics in Multimedia | Specific | 3 |

Special Topics in Optimization | Specific | 3 |

Data Visualization | Specific | 3 |

Research for Master Dissertation | – | 0 |

Seminar for Master Dissertation | – | 0 |

Course Descriptions

**Computational Linear Algebra**

Fundamental Aspects (Multiplication, Norms, Determinants, Graphs, Computational Complexity). Modelling by Linear Systems. Error Analysis and Condition Number. Direct and Iterative methods to solve Linear Systems. Krylov Methods. Sparsity and Stability. Eigenvalues and Eigenvectors. Principal Components Analysis. SVD Methods, Tensor Decomposition. Multigrid Methods. Parallelism techniques.

- G. Golub & C. vanLoan, Matrix Computations; Johns Hopkins University Press;
- L. Eldén. Matrix Methods in Data Mining and Pattern Recognition; SIAM;
- D.S. Watkins. Fundamentals of Matrix Computation. Wiley-Interscience

**Linear Algebra and Graphs**

Graphs. Subgraphs and Supergraphs. Families of Special Graphs. Routes and paths in graphs. Bipartite graphs and their characterization. Eulerian paths and cycles. Hamiltonian paths and cycles; Techniques of Evidence: induction and contradiction in problems of graphs. Arrays associated with graphs. Matrix eigenvalues associated with graphs. Isomorphism in Graphs. Trees. Generating Trees. Minimum Generating Trees. Connectivity. Coloring.

- Russel Merris. Graph Theory. John Wiley & Sons. 2001
- J.A. Bondy. U.S. R. Murty. Graph Theory. Springer. 2008
- Algebraic Graph Theory, Chris Godsil e Gordon Royle, Springer, 2004.

**Graph Algorithms**

Analysis of algorithms. Introduction to Graph Theory. Representation Schemes for Graphs. Paths in Graphs. Applications of Paths in Graphs. Topological Ordering. Greedy Algorithms. Dynamic Programming. Minimum Generating Tree. Minimal Paths. Maximum Flow and Maximum Pairing.

- Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Introduction to Algorithms. The MIT Press, Cambridge, Mass, 3rd edition, July 2009.
- Robert Sedgewick and Kevin Wayne. Algorithms. Addison-Wesley Professional, Upper Saddle River, NJ, 4th edition, March 2011.
- Sanjoy Dasgupta, Christos Papadimitriou, and Umesh Vazirani. Algorithms. McGraw-Hill Education, Boston, 1 edition, September 2006.

**Analysis and Design of Algorithms**

Data structures, the specification of algorithms and analysis of computational complexity. The general methods of data organization are presented: hashing, trees, queues, lists, priority queues and their applications in problems of graph searches, optimization, and large-scale scientific computation.

- Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Introduction to Algorithms. The MIT Press, Cambridge, Mass, 3rd edition, July 2009.
- Jon Kleinberg and Eva Tardos. Algorithm Design. Pearson, Boston, 1 edition, March 2005.
- Robert Sedgewick and Kevin Wayne. Algorithms. Addison-Wesley Professional, Upper Saddle River, NJ, 4th edition, March 2011.
- Donald E. Knuth. The Art of Computer Programming. Addison-Wesley Professional, Amsterdam, March 2011.

**Robotics Applications**

Fundamentals and General Characteristics of Robotics; Industrial and Mobile Robots; Sensors, Actuators, and Manipulators; Concepts of Microcontrollers: Types, Characteristics, Internal Organization, Programming Languages. Robot Modeling Furniture (kinematic and dynamic). Programming strategy of microcontrollers for mobile robots. Robotics Applications: Mobile Robots for Education and IoT (Internet of Things).

- NIKU, Saeed B. Introduction to robotics analysis, systems, applications. c2001. 349 p. ISBN 0-13-061309-6. Upper Saddle River, NJ.: Prentice-Hall.
- MARTINS, N. A. Sistemas Microcontrolados. 1a ed., Novatec, 2005.
- CRISP, J. Introduction to Microprocessors and Microcontrollers. 2a ed., Newnes, 2004
- MACKENZIE, I. S.; PHAN, R. C. W. The 8051 Microcontroller. Prentice-Hall, 2006.
- GILLILAND, M. The Microcontroller Application Cookbook. Woodglen Press, 2000.
- WILMSHURST, T. Designing Embedded Systems with PIC microcontrollers: principles and applications. Newnes, 2006.

**Machine Learning**

Machine learning is a fast-growing field at the frontier between computer science and statistics whose goal is to find patterns from data. In this discipline, we study a range of methods: connectivist, probabilistic, proximity-based, decision trees that can be used in different stages of the data-based experimentation process.

- Kevin P. Murphy. Machine Learning: A Probabilistic Perspective. The MIT Press, Cambridge, MA, 1 edition, August 2012.
- Peter Flach. Machine Learning: The Art and Science of Algorithms that Make Sense of Data. Cambridge University Press, Cambridge; New York, 1 edition, November 2012.
- Christopher Bishop. Pattern Recognition and Machine Learning. Springer, New York, October 2007.
- Gareth James, Daniela Witten, Trevor Hastie, and Robert Tibshirani. An Introduction to Statistical Learning: with Applications in R. Springer, 1st ed. 2013. corr. 4th printing 2014 edition, August 2013.
- Yaser S. Abu-Mostafa, Malik Magdon-Ismail, and Hsuan-Tien Lin. Learning From Data. AMLBook, S.l., March 2012.
- Brett Lantz. Machine Learning with R. Packt Publishing, Birmingham, October 2013.
- Simon O. Haykin. Neural Networks and Learning Machines. Prentice Hall, New York, 3 edition, November 2008.

**Computer Architecture**

Introduction to computer organization. Numbering systems. Memory Hierarchies. Main, cache and read-only memory. Central Processing Unit: components, instruction cycle. Input and output methods and devices.

- Andrew S. Tanenbaum and Todd Austin. Structured Computer Organization. Pearson, Boston, 6 edition, August 2012.
- William Stallings. Computer Organization and Architecture: International Edition. Pearson Education, edic~ao: 9 edition, March 2013.
- John L. Hennessy and David A. Patterson. Computer Architecture: A Quantitative Approach. Morgan Kaufmann Publishers, Waltham, MA, September 2011.

**Databases**

Database Basic concepts of DB: Introduction to the basic concepts of database management. The architecture of a DBMS. Evolution of the data models. The relational model: relations algebra and query optimization. Transactions and ACID properties. Control of Competition. Fault recovery. Distributed BDs: concepts, data distribution design, distributed query processing. NoSQL: CAP theorem, ACID vs BASE, key-value data models, columnar, documents and graphs. DBMS approaches: In-Memory DB, Space-Time BDs, MOD (Moving Objects Databases).

- Ramez Elmasri and Shamkant B. Navathe. Fundamentals of Database Systems. 5th ed. Pearson/Addison Wesley, 2006.
- M. Tamer Ozsu, Patrick Valduriez. Principles of Distributed Database Systems. 3rd ed. Springer, 2011.
- Peter Lake, Paul Crowther. Concise Guide to Databases: A Practical Introduction. Springer-Verlag London, 2013.
- C. J. Date. An Introduction to Database Systems. 8th ed. Pearson, Boston, 2003.
- Abraham Silberschatz, Henry Korth, and S. Sudarshan. Database System Concepts. 6 ed. McGraw-Hill Science/Engineering/Math, 2010.
- Raghu Ramakrishnan and Johannes Gehrke. Database Management Systems. 3rd ed. McGraw-Hill, 2002.

**Parallel and Distributed Computing**

Systems, architectures, algorithms, programming models, languages and software tools. Topics covered include parallelization and distribution models (MPI, Map-Reduce, etc.); parallel architectures; cluster and parallel and distributed computing systems, distributed and parallel algorithms, data structures and programming methodologies; applications; and performance analysis.

- Georg Hager and Gerhard Wellein. Introduction to High-Performance Computing for Scientists and Engineers. CRC Press, Boca Raton, FL, 1 edition, July 2010.
- Victor Eijkhout. Introduction to High-Performance Scientific Computing. lulu.com, Raleigh, N.C., January 2015.
- K. G. Srinivasa and Anil Kumar Muppalla. Guide to High-Performance Distributed Computing: Case Studies with Hadoop, Scalding and Spark. Springer, New York, NY, 2015 edition, February 2015.
- Mahmoud Parsian. Data Algorithms: Recipes for Scaling Up with Hadoop and Spark. O’Reilly Media, Sebastopol, 1 edition, July 2015.
- Sandy Ryza, Uri Laserson, Sean Owen, and Josh Wills. Advanced Analytics with Spark: Patterns for Learning from Data at Scale. O’Reilly Media, Beijing, 1 edition, April 2015.
- Pethuru Raj, Anupama Raman, Dhivya Nagaraj, and Siddhartha Duggirala. High-Performance Big-Data Analytics: Computing Systems and Approaches. Springer, S.l., 2015 edition, August 2015.
- Vijay Srinivas Agneeswaran. Big Data Analytics Beyond Hadoop: Real-Time Applications with Storm, Spark, and More Hadoop Alternatives. Pearson FT Press, Upper Saddle River, 1 edition, May 2014.

**Fundamentals of Multimedia Systems**

Introduction to multimedia systems. Presentation of the concept of media, along with its representation for storage and display. Discussion about the different components of a multimedia system. Models and languages for multimedia authoring. Multimedia on the Web, Digital TV, and IPTV. Synchronization of things.

- Multimedia Communications: Applications, Networks, Protocols, and Standards. F. Halsall, Addison-Wesley, 2000.
- MediaSync: Handbook on Multimedia Synchronization. Mario Montagud, Pablo Cesar, Fernando Boronat, Jack Jansen, Springer, 2018.
- Handbook of Data Compression. David Salomon, Giovanni Motta, Springer, 2010.
- MPEG-V: Bridging the Virtual and Real World. Yoon, Kyoungro, et al. Academic Press, 2015.
- LI, Ze-Nian; DREW, Mark S.; LIU, Jiangchuan. Fundamentals of multimedia. Upper Saddle River (NJ):: Pearson Prentice Hall, 2004.

**Large-Scale Data Management**

Introduction of fundamental concepts, technologies and innovative applications made to the processing and analysis of large data volumes (BigData). It explores the latest technology solutions, including different forms of data organization, including Distributed Storage Systems (HDFS) approaches, object-relational databases, NoSQL and newSQL, and their connections as a parallelism technique based on data partitioning.

- M. Tamer Ozsu and Patrick Valduriez. Principles of Distributed Database Systems. Springer, New York, 3rd ed. 2011 edition, March 2011.
- Peter Lake and Robert Drake. Information Systems Management in the Big Data Era. Springer, New York, NY, 2014 edition, January 2015.
- Vijay Srinivas Agneeswaran. Big Data Analytics Beyond Hadoop: Real-Time Applications with Storm, Spark, and More Hadoop Alternatives. Pearson FT Press, Upper Saddle River, 1 edition, May 2014.
- Hrushikesha Mohanty, Prachet Bhuyan, and Deepak Chenthati, editors. Big Data: A Primer. Springer, New York, NY, 2015 edition, July 2015.
- Aboul-Ella Hassanien, Ahmad Taher Azar, Vaclav Snasel, Janusz Kacprzyk, and Jemal H. Abawajy, editors. Big Data in Complex Systems: Challenges and Opportunities. Springer, New York, 2015 edition, January 2015.
- Christine L. Borgman. Big Data, Little Data, No Data: Scholarship in the Networked World. The MIT Press, Cambridge, Massachusetts, January 2015.
- Sandya Mannarswamy. Data Science: Learn the What, Where, and How of Data Science. Apress, 2015 edition, June 2015.
- Tony Hey, Stewart Tansley, and Kristin Tolle, editors. The Fourth Paradigm: Data-Intensive Scientific Discovery. Microsoft Research, Redmond, Washington, 1 edition, October 2009.

**Scientific Methodology in Computer Science**

The objective of this course is to develop the ability to produce articles and scientific projects in the area of computing. For this, it is important that the student is aware of the importance of the main elements linked to research, from the choice of topic, problem definition, bibliographic review, research execution to the writing process itself. Menu: (i) preparation of the research; (ii) bibliographic review; (iii) citations; (iv) scientific writing; (v) graphs, figures and tables; (vi) presentations; (vii) mathematical formalization and algorithms; (viii) experimental evaluation planning and hypothesis formulation; (ix) execution of the research; (x) plagiarism; (xi) written in English.

- Justin Zobel. Writing for Computer Science. Springer, New York, NY, 3rd ed. 2014 edition, February 2015.
- Raul Wazlawick. Metodologia de Pesquisa para Ciência da Computação. Elsevier, 2 edition, September 2014.
- Hilary Glasman-Deal. Science Research Writing for Non-Native Speakers of English. Imperial College Press, London; Hackensack, NJ, 1 edition, December 2009.

**Statistical Methods**

Probabilistic models and unidimensional and multidimensional random variables. Bayes’ Theorem. Expected values and random variable transformations. Central Limit Theorem. Introduction to methods of univariate data analysis and statistical inference. Descriptive statistics and exploratory data analysis methods. Overview of sampling techniques for data collection and introduction to statistical inference methods for decision making, including simple linear regression, estimation procedures using confidence intervals, and hypothesis testing.

- Peter Dalgaard. Introductory Statistics with R. Springer, New York, 2nd edition, August 2008.
- Richard J. Larsen and Morris L. Marx. An Introduction to Mathematical Statistics and Its Applications. Prentice Hall, Upper Saddle River, N.J, 4 edition, December 2005.
- Ronald E Walpole. Probability & statistics for engineers & scientists. Prentice Hall, Boston, 2012.
- Jay L. Devore and Kenneth N. Berk. Modern Mathematical Statistics with Applications. Springer, New York; London, 2nd ed. 2012 edition, December 2011.

**Data Mining**

Mining is the process of extracting knowledge from data. The main topics covered in this course include pre-processing, sorting, grouping, membership rules, anomaly, and the data mining process itself. The discipline aims to provide students with the fundamental skills needed to conduct their own research in data mining.

- Mohammed J. Zaki and Wagner Meira Jr. Data Mining and Analysis: Fundamental Concepts and Algorithms. Cambridge University Press, May 2014.
- Ian H. Witten, Eibe Frank, and Mark A. Hall. Data Mining: Practical Machine Learning Tools and Techniques. Morgan Kaufmann, Burlington, MA, 3 edition, January 2011.
- Jiawei Han, Micheline Kamber, and Jian Pei. Data Mining: Concepts and Techniques. Morgan Kaufmann, Waltham, Mass., 3 edition, July 2011.
- Gareth James, Daniela Witten, Trevor Hastie, and Robert Tibshirani. An Introduction to Statistical Learning: with Applications in R. Springer, 1st ed. 2013. corr. 4th printing 2014 edition, August 2013.
- Trevor Hastie, Robert Tibshirani, and Jerome Friedman. The Elements of Statistical Learning: Data Mining, Inference, and Prediction. Springer, 2nd ed. 2009. corr. 7th printing 2013 edition, April 2011.
- Bing Liu. Web Data Mining: Exploring Hyperlinks, Contents, and Usage Data. Springer, softcover reprint of hardcover 2nd ed. 2011 edition, August 2013.

**Process Mining**

Concepts about business process modeling (BPM). Process models and business process discovery. Different types of process models. Process discovery techniques and compliance analysis. Enrichment of process models. Operational support.

- VAN DER AALST, Wil.
*Process Mining: Data Science in Action*. 2^{nd}Springer-Verlag, 2016. - MANS, Ronny S., VAN DER AALST, Wil, VANWERSCH, Rob, J. B.
*Process Mining in Healthcare: Evaluating and Exploiting Operational Healthcare Processes*. Springer Cham Heidelberg, 2015. - Beheshti, Seyed-Mehdi-Reza, Benatallah, Boualem, Sakr, Sherif, Grigori, Daniela, Motahari-Nezhad, Hamid Reza, Barukh, Moshe, Chai, Gater, Ahmed, Ryu, Seung Hwan.
*Process Analytics: Concepts and Techniques for Querying and Analyzing Process Data*. Springer International Publishing, 2016. - Burattin, Andrea.
*Process Mining Techniques in Business Environments: Theoretical Aspects, Algorithms, Techniques and Open Challenges in Process Mining (Lecture Notes in Business Information Processing)*. Series: Lecture Notes in Business Information Processing (Book 207). Springer; 2015. - Provost, Foster, Fawcett, Tom.
*Data Science for Business: What You Need to Know about Data Mining and Data-Analytic Thinking*. O’Reilly Media, 2013. - Han, Jiawei, Kamber, Micheline, Pei, Jian.
*Data Mining: Concepts and Techniques*. 3^{rd}edition. The Morgan Kaufmann Series in Data Management Systems, 2011.

**Text Mining**

Overview of text mining and applications. Natural language processing and document representation. Knowledge Discovery Process in Text (KDT). Exploratory Text Analysis. Text Preprocessing: Stopwords; Stemming; Dictionary or Thesaurus. Grouping and classification of texts. Analysis of feeling and mining of opinions. Evaluation Metrics.

- Ronen Feldman and James Sanger. The Text Mining Handbook: Advanced Approaches in Analyzing Unstructured Data. Cambridge University Press, edição: 1 edition, December 2006.
- Matthew L. Jockers. Text Analysis with R for Students of Literature. Springer, New York, July 2014.
- Anne Kao and Steve R. Poteet. Natural Language Processing and Text Mining. Springer London, edição: 1 edition, March 2007.
- Christopher Manning and Hinrich Schuetze. Foundations of Statistical Natural Language Processing. The MIT Press, Cambridge, Mass, 1 edition, June 1999.
- Charu Aggarwal and ChengXiang Zhai, editors. Mining Text Data. Springer, edição: 2012 edition, February 2012.
- Gary Miner, John Elder, IV, Andrew Fast, Thomas Hill, Robert Nisbet, and Dursun Delen. Practical Text Mining and Statistical Analysis for Nonstructured Text Data Applications. Academic Press, edição: 1 edition, January

2012

**Metaheuristic Optimization**

Several computational problems lie in exploring solutions in a non-polynomial search space. In these scenarios, heuristics to find approximate solutions are commonly employed. The course includes: (i) Introduction to algorithm analysis and complexity theory; (ii) constructive heuristics and greedy algorithms; (iii) Local search methods; (iv) Metaheuristics: fundamentals; (v) simulated annealing algorithm; (vi) taboo search; (vii) Greedy randomized adaptive search procedures (GRASP); (viii) Genetic algorithms.

- Michael R. Garey and David S. Johnson. Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman, New York u.a, 1st edition, January 1979.
- Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Cliord Stein. Introduction to Algorithms. The MIT Press, Cambridge, Mass, 3rd edition, July 2009.
- Nils J. Nilsson. Principles of Artificial Intelligence. Springer, Berlin, softcover reprint of the original 1st ed. 1982 edition, April 2013.
- Ibrahim H. Osman and James P. Kelly, editors. Meta-Heuristics: Theory and Applications. Springer, Boston, 1996 edition, March 1996.

**Operational Research**

The discipline of operational research can be understood as applied mathematics, where mathematical models, statistics and algorithms are used to aid in decision making. It has a strong association with the problems of Computer Science, where it aims to improve or optimize a particular model. The course includes: (i) Introduction to linear programming (modeling, graphics solutions, simplex, and its variants); (ii) Introduction to whole programming (Modeling, Methods of Resolution); (iii) Introduction to game theory and forecasting models; (iv) Introduction to Markov chains and queuing theory.

- Wayne L. Winston. Operations Research: Applications and Algorithms. Duxbury Press, Belmont, CA, 4 edition, July 2003.
- Mokhtar S. Bazaraa, John J. Jarvis, and Hanif D. Sherali. Linear Programming and Network Flows. Wiley, Hoboken, N.J, 4 edition, December 2009.
- Laurence A. Wolsey. Integer Programming. Wiley-Interscience, New York, 1 edition, September 1998.

**Special Topics in Algorithms**

Development of algorithms and complexity analysis; mathematical induction methods and induction algorithm designs; projects of efficient algorithms in computational problems; algorithms in graphs; approach to elementary and advanced data structures; design and analysis of adaptive algorithms.

- Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C., Algoritmos: teoria e prática. Tradução da 3ª Edição Americana, Elsevier Editora LTDA, 2012.

**Special Topics in Computer Applications **

Development of prototypes or computational artifacts or theoretical models. Applications in the areas of engineering, exact sciences, biological, human, economics or environmental sciences.

- Raul Wazlawick. Metodologia de Pesquisa para Ciência da Computação. Elsevier, 2 edição, September 2014.

**Special Topics in Data Management**

Development of prototypes, algorithms or computational artifacts involving data management of different models and at different scales (including Big Data) in the different data science and architecture contexts (centralized, parallel and distributed). These prototypes will make use of one or more specialized methods of data management in some cut of data models and application domains.

- M. Tamer Ozsu and Patrick Valduriez. Principles of Distributed Database Systems. Springer, New York, 3rd Ed. 2011 Edition, March 2011.
- Peter Lake and Robert Drake. Information Systems Management in The Big Data Era. Springer, New York, NY, 2014 Edition, January 2015.
- Vijay Srinivas Agneeswaran. Big Data Analytics Beyond Hadoop: Real-Time Applications With Storm, Spark, And More Hadoop Alternatives. Pearson Ft Press, Upper Saddle River, 1 Edition, May 2014.
- Aboul-Ella Hassanien, Ahmad Taher Azar, Vaclav Snasel, Janusz Kacprzyk, And Jemal H. Abawajy, Editors. Big Data in Complex Systems: Challenges And Opportunities. Springer, New York, 2015 Edition, January 2015.
- Tony Hey, Stewart Tansley, And Kristin Tolle, Editors. The Fourth Paradigm: Data-Intensive Scientific Discovery. Microsoft Research, Redmond, Washington, 1 Edition, October 2009.

**Special Topics in Computational Intelligence**

Development of prototypes, algorithms or computational artifacts involving features of computational intelligence applications (such as data mining, text mining, process mining, machine learning and statistical learning) associated with data models present in Data Science (such as big data, time series, space-time series, streaming, images, texts) in areas such as health, education, economics, transport, robotics, social networks, cognition and feelings. These prototypes will make use of one or more specialized computational intelligence methods in some clipping of these models/domains.

- Han, Jiawei, Kamber, Micheline, Pei, Jian. Data Mining: Concepts and Techniques. 3rd edition. The Morgan Kaufmann Series in Data Management Systems, 2011.
- Rutkowski, Leszek (2008). Computational Intelligence: Methods and Techniques. Springer. ISBN 978-3-540-76288-1.
- VAN DER AALST, Wil. Process Mining: Data Science in Action. 2nd edition. Springer-Verlag, 2016
- KAO, Anne; POTEET, Stephen; Natural language processing and text mining. London: Springer 2007. ISBN 184628175.

**Special Topics in Modeling**

Modeling Techniques; Computational Simulation Techniques; Complexity Analysis; Applications in Engineering and Science Problems.

- Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C., Algoritmos: teoria e prática. Tradução da 3ª Edição Americana, Elsevier Editora LTDA, 2012.
- Shiflet, A.B., Shiflet, G.W. Introduction to Computational Science: Modeling and Simulation for the Sciences. Second Edition, Princeton University Press, 2014.

**Special Topics in Multimedia**

This course covers the most relevant topics of the moment in the area of multimedia. It discusses the concepts, characteristics, patterns, and requirements of modeling multimedia applications in different contexts, including, but not limited to: Internet of Things, Sensory Effects, and related areas.

- YOON, Kyoungro et al. “MPEG-V: Bridging the Virtual and Real World”. Academic Press, 2015.
- FURHT, Borko (Ed.). “Multimedia Systems and Techniques”. Springer Science & Business Media, 2012.
- WALTL, Markus. “Enriching multimedia with sensory effects: annotation and simulation tools for the representation of sensory effects”. VDM Verlag, 2010.
- HALSALL, Fred. “Multimedia Communications: Applications, networks, protocols, and standards”. Pearson Education, 2001.

**Special Topics in Optimization**

Approaches through exact methods for solving linear and non-linear programming problems; implementation of heuristics and metaheuristics for solving large problems in several areas of application.

- Glover, F., Kochenberger, G.A., Handbook of Metaheuristics, Kluwer Academic Publishers, 2002.

**Data Visualization**

Fundamentals of data visualization, the perception of discrete and continuous variables, visualization models, dynamic graphs, cluster visualization model. The discipline includes the design and development of visual and complementary representations to support the answer to questions, decision-making, and evidence perception supported by the data, being a tool to help Data Analysis.

- Thomas A. Runkler. Data Analytics: Models and Algorithms for Intelligent Data Analysis. Vieweg+Teubner Verlag, Wiesbaden ; New York, 2012 edition, September 2012.
- Alexandru C. Telea. Data Visualization: Principles and Practice, Second Edition. A K Peters/CRC Press, Boca Raton, 2 edition, September 2014.
- Andy Kirk. Data Visualization: a successful design process. Packt Publishing, Birmingham, December 2012.
- Nathan Yau. Visualize This: The FlowingData Guide to Design, Visualization, and Statistics. Wiley, Indianapolis, Ind, 1 edition, July 2011.
- Nathan Yau. Data Points: Visualization That Means Something. Wiley, 1 edition edition, April 2013.
- Alex Wright. Big Data Meets Big Science. Commun. ACM, 57(7):13–15, July 2014.
- Katy Borner and David E. Polley. Visual Insights: A Practical Guide to Making Sense of Data. The MIT Press, Cambridge, Massachussetts, January 2014.
- Leland Wilkinson, D. Wills, D. Rope, A. Norton, and R. Dubbs. The Grammar of Graphics. Springer, New York, 2nd edition, July 2005.

**Research for Master Thesis**

The student, after being approved in the discipline Seminar for Master Dissertation, must enroll in the subject Research for Master Dissertation. The objective of the course is to continue the elaboration of the Master Dissertation. The course has no credit assignment as specified in the project.

**Seminar for Master Dissertation**

The course aims to prepare and present a dissertation proposal promoting its improvement and improvement until it reaches the conditions for qualification. The student should elaborate and defend the Master Dissertation Proposal during the Seminar for Master Dissertation. The course has no credit assignment as specified in the project.