Curriculum framework

Courses

The curriculum of the Master's Degree in Computer Engineering requires a minimum of 24 credits obtained by taking the following subjects:

Mandatory courses

Algorithms and Data Structure (3 credits, 45h, code 23034P)
Syllabus: Basic Concepts: Role of algorithms in computing. Recurrences. Abstract data types. Sorting Methods. Heaps. Elementary Data Structures: lists, stacks, queues. Hash tables, Binary trees, Balanced trees: AVL and red-black trees. Graphs: Elementary algorithms. Paths. Search for shortest paths. Study of Computational Complexity in a generic way and with applications in the studied data structures.

Computer Architecture (3 credits, 45h, code 23035P)
Syllabus: Review of the basic concepts of computer architectures. Architectures for specific applications. Exploitation of instruction-level parallelism. Exploiting Thread-Level Parallelism. Multiprocessors and multicomputers. Emerging architectures.

Elements of Computing and Automation Theory (4 credits, 60h, code 23036P)
Syllabus: Classical computability: models of computation, computable functions, Turing machine, lambda calculus, mu-recursive functions. State machines and formal languages: recognition and transducer machines; deterministic and non-deterministic automata; finite and pushdown automata; Mealy and Moore machines; UML state machines. Calculation of processes: concurrency concepts; formalisms for concurrent processes; UML concurrency diagrams. Dioid Algebra. Petri nets.

Individual project (3 credits, 45h, code 23060P)
Syllabus: The Individual project (for enrollment on the 2nd semester) consists of completing a preparatory monograph of the master's dissertation. It may involve theoretical studies, literature review, ongoing projects, experiments, or a combination of these or other activities that support the student in preparing the work plan for the dissertation.

Dissertation Project (3 credits, 45h, code 23059P)
Syllabus: Preparation of the master's dissertation (enrollment on the 3rd semester) for the qualification exam.

Dissertation Writing (0 credits, code 23057P)
Syllabus: master's dissertation writing (enrollment on the 4th semester) for the public defense of the dissertation.

This subject is mandatory only for CAPES DS scholarship students:

Undergraduate Teaching Internship (2 credits, 30h, code 23058P)
Syllabus: The Didactic Activity discipline constitutes a teaching internship that the student undertakes under the guidance of a PPGComp professor. The internship, with a minimum duration of 30 class hours and a maximum of 60 class hours, consists of the performance of didactic activities in an undergraduate discipline that is under the responsibility of the professor supervising the didactic activity. Typical activities are: preparing and teaching theoretical or practical classes, conducting experiments, demonstrations or exercises, etc.

 

Algorithms and Data Structures (3 créditos, 45h, código 23150P)
Ementa: Basic concepts: role of algorithms in computing. Recurrences. Abstract data types. Sorting methods. Data structures: Elementary (lists, stacks, queues). Hash tables, Binary trees, Balanced trees: AVL and red-black, Heaps. Graphs: Elementary algorithms. Walks. Search for the shortest path. Study of computational complexity in a generic way and with applications in the data structures studied.

Research Line: BIOINFORMATICS

Machine Learning Applied to Bioinformatics (3 credits, 45h, code 23053P)

Syllabus: Introduction to probabilities and probabilistic models. Hidden Markov Chains (HMMs). Alignment of biological sequence pairs with HMMs. Decision Tree Learning. Bayesian Learning. Unsupervised Learning: clustering algorithms and application to gene expression analysis. Reverse engineering of biological networks, Relevance networks, Gaussian graphical models, and Bayesian networks.

Data Visualization and Exploratory Data Analysis (3 credits, 45h, code 23148P)

Syllabus: Translating information into a highly effective visual context. Image file types and visualization software. The Grammar of Graphs. Tidy data. Visualization types according to the data. Aesthetics elements of graphs. Statistically exploring data sets. Visualizing time series and trends. Visualizing Geospatial Data. Transform information in a visualization to tell a story and make a point.

Introduction and Algorithms for Computational Biology (3 credits, 45h, code 23052P)

Syllabus: Introduction to Computational Molecular Biology. Biological Databases. Introduction to Algorithms for Computational Biology. Global and Local Alignment of Biological Sequence Pairs. Structure prediction of biological macromolecules. Principles and applications of docking and molecular dynamics. Typical Problems in Biology.

Research line: SOFT COMPUTING

Aggregations in classifiers based on fuzzy rules (3 credits, 45h, code 23140P)

Syllabus: Data classification. Classification systems based on fuzzy rules. Fuzzy reasoning method. Aggregation functions and fuzzy measures.

Fuzzy and Interval Computing (3 credits, 45h, code 23048P)

Syllabus: Fuzzy Sets: definition and basic concepts of fuzzy sets; relevance functions; operations; extension principle; fuzzy numbers; fuzzy relations; basic connectives of fuzzy logic; approximate reasoning; linguistic variables; fuzzy rule-based systems; fuzzy inference methods; defuzzification methods. Interval Mathematics: basic definitions; operations; properties; function assessment. Interval fuzzy sets: definition and basic concepts of interval fuzzy sets; relevance functions; operations; extension principle; interval fuzzy numbers.

Introduction to Information Retrieval (3 credits, 45h, code 23093P)

Syllabus: Introduction to information retrieval; pre-processing and indexing; stemming; performance evaluation; classical information retrieval models (Boolean, vector, and probabilistic); expansion of queries and relevance feedback; advanced topics in information retrieval.

Introduction to Deep Learning (3 credits, 45h, code 23144P)

Syllabus: Fundamentals of deep learning. Study and analysis of state-of-the-art deep learning applications with an emphasis on computer vision.

Optimization (3 credits, 45h, code 23055P)

Syllabus: Combinatorial optimization. Multi-objective optimization. Search and optimization algorithms. Genetic algorithms. Genetic programming. Case studies: structure optimization; search for parameters; general routing, partitioning, and allocation problems. Conventional approaches: Linear programming. Entire programming.

Data Mining Principles and Applications (3 credits, 45h, code 23042P)

Syllabus: Overview of the Knowledge Discovery in Database (KDD) process. Data warehouses. Pre-processing: data loading, transformation, and cleaning (ETL). Main predictive and descriptive data mining techniques: Classification, Regression, Association Rules, and Grouping. Using the WEKA Tool. Experiments with public databases. Data mining and flexible computing.

TE EComp: Flexible Computing (3 credits, 45h, code 23089P)

Syllabus: Study of topics of interest for research in the Flexible Computing line.

Topics in Computer Security (4 credits, 60h, code 23146P)

Syllabus: Understanding information security principles. Information security laws, norms, and standards. Concepts and types of threats, risks, and vulnerabilities of information systems. Contingency plan. Systems evaluation techniques and metrics.

Research Line: INTELLIGENT ROBOTICS AND AUTOMATION

Non-Linear Control (3 credits, 45h, code 23098P)

Syllabus: Introduction. Phase plan analysis. Stability analysis via Lyapunov. Variable structure control. Analysis in the continuous time domain. Analysis in the discrete-time domain. Notions of adaptive control. Design and synthesis of control systems.

Fundamentals and Technologies for Perception (3 credits, 45h, code 23043P)

Syllabus: Types of Sensors. Representation of Uncertainty. Feature Extraction. Modeling, Recognition, and Interpretation of Information. Mapping and Location.

Introduction to Intelligent Robotics (3 credits, 45h, code 23100P)

Syllabus: Trends, challenges, scope, and opportunities in Intelligent Robotics. Introduction to Mobile and Manipulator Robotics and its scientific problems. Introduction to Robotic Perception and Robotic Vision. Introduction to Robotic Architectures: Reactive, Deliberative, and Hybrid.

Robot Modeling and Control (3 credits, 45h, code 23097P)

Syllabus: Spatial descriptions and transformations. Movement of rigid bodies. Kinematic modeling. Dynamic modeling. Trajectory generation. Robot control. Robot programming. Non-holonomic behavior.

Robot Perception (3 credits, 45h, code 23149P)

Syllabus: Types of Sensors. Feature Extraction. Modeling, Recognition, and Interpretation of Information. Model-based and Learning-based methods. Representation of Uncertainty.

TE EComp: The Oil, Gas, and Biofuel Industry and the Coastal and Oceanic Ecosystem (2 credits, 30h, code 23131P)

Syllabus: Oil. Oil exploration. Drilling. Oil transportation. Oil refining. Environmental issue. Challenges and opportunities in computing and automation.

TE EComp: Control Applied to Systems in the Oil, Gas, and Biofuel Industry (2 credits, 30h, code 23145P)

Syllabus: Classic Control. Modern Control. Nonlinear control.

TE EComp: Digital Technologies for Coastal and Ocean Ecosystems in the Oil, Gas, and Biofuel Industry (3 credits, 45h, code 23132P)

Syllabus: Computing concepts and tools. Modeling and automation applied to coastal and oceanic ecosystems concerning issues relevant to the Oil, Gas, and Biofuel industry.

Research Line: DIGITAL AND EMBEDDED SYSTEMS

Internet Architecture (3 credits, 45h, code 23141P)

Syllabus: Fundamentals of the Internet. Interconnection. Topology. Routing. Internet Security.

Heterogeneous Computing (3 credits, 45h, code 23142P)

Syllabus: Emerging systems with AI, virtual and augmented reality, robotics and IoT sensors use heterogeneous computing, in which processing is distributed between different types of functional units interconnected via an asymmetric system (GPU, application coprocessors, CPUs, FPGAs ). This subject presents a review of the area focusing on case studies of neural networks embedded in robotic applications and sensors. Describe the concepts of heterogeneous computing and the different architectural components. Understand the challenges of parallel programming in heterogeneous systems. Evaluate the performance (performance-watt and accuracy) of embedded machine learning models.

Tools for Physical Synthesis (3 credits, 45h, code 23094P)

Syllabus: VLSI Project. The flow of logical synthesis and physical synthesis. Algorithms and data structures for VLSI design.

Introduction to High-Performance Computing (3 credits, 45h, code 23143P)

Syllabus: Main hardware architectures for high-performance processing. Theoretical aspects in parallelism. Top programming environments for high performance.

Digital Systems Project (3 credits, 45h, code 23038P)

Syllabus: Review of the basic concepts of digital systems. System specification. Logical synthesis. Implementation styles. Project flow. Design tools. Exploration of the design space. Reconfigurable systems. Tendencies.

Embedded Systems (3 credits, 45h, code 23046P)

Syllabus: Introduction to embedded systems. Specification of complex systems. 's design. Hardware architectures. Embedded software. Hardware and software synthesis. Design tools. Projects aimed at low consumption. Tendencies.

Integrated Systems (3 credits, 45h, code 23045P)

Syllabus: Introduction of integrated systems. CMOS technology. MOS transistors. Manufacturing of integrated systems. Combinational circuits. Sequential circuits. Design rules. Modeling and simulation. Design tools. Testing and design for testing. Reliability of CMOS circuits. Tendencies.

Fault Tolerance in Hardware and Software (3 credits, 45h, code 23096P)

Syllabus: Basic concepts; reliability modeling and assessment; Treatment of absences; Recovery and reconfiguration; Tolerance and fault techniques implemented in hardware; Tolerance and fault techniques implemented in software; Applications of Fault Tolerant Systems: Application areas, Real-time systems, Distributed systems, Transaction systems, Secure systems, Examples by application area.

Advanced Topics in Digital and Embedded Systems (3 credits, 45h, code 23047P)

Syllabus: Advanced concepts of Embedded Electronic Systems. Digital Electronic Circuits. Digital systems. Trends in the development of digital and embedded systems.

Research Line: MULTIAGENT SYSTEMS

Tools for Multiagent Systems (3 credits, 45h, code 23039P)

Syllabus: In this subject, the aim is to analyze the transformations in Law and the judicial system caused by the information society, highlighting advances in information technology, problems related to the exposure of privacy and excessive publicity, and their impact on individual rights and collectives.

Distributed Artificial Intelligence and Multiagent Systems (3 credits, 45h, code 23041P)

Syllabus: Overview of the evolution of the area: cooperative agents vs. autonomous agents, distributed AI vs. Multi-Agent Systems vs. Agent Societies. Distributed problem-solving. Distributed planning. Distributed decision-making. Distributed learning. Organization of distributed AI systems and multi-agent systems: coordination, negotiation. Organization of agent societies: micro and macro-social levels; roles, services, commitments; values, norms, and institutions.

Agent-Based Simulation (3 credits, 45h, code 23049P)

Syllabus: Simulation. Multiagent Systems. Dynamic Systems. Conventional Simulation versus Agent-Based Simulation. Analysis and use of agent-based simulation environments.

Social Simulation: theory and applications (3 credits, 45h, code 23003P)

Syllabus: Simulation. Models. Social Simulation. Dynamic Systems. Micro and macro simulation. Agent-based simulation environments. Applications using cellular automata techniques and multi-agent systems.

Advanced Topics in Multiagent Systems (3 credits, 45h, code 23095P)

Syllabus: Specific and/or advanced applications in multi-agent systems.

Research Line: EDUCATIONAL TECHNOLOGIES

Fundamentals of Educational Technologies (3 credits, 45h, code 23092P)

Syllabus: Interfaces in educational systems. Assistive Technologies. Virtual and Augmented Reality in Virtual Objects. Dual Environments in teaching and learning. Educational games.

Innovation Laboratory (3 credits, 45h, code 23099P)

Syllabus: Introduction to innovation management. The innovation process. Contingencies in innovation projects. Generation of ideas. Selection of ideas. Organization for innovation. Special topics in innovation.