Program

Slots and schedule

The subjects are taught in intensive mode and organized by slots:

  • Each semester is divided into five slots of three weeks each.
  • In each slot, two (or sometimes three) subjects are offered.
  • A subject lasts three weeks.

In the calendar, a slot looks like this:

Schedule Mon Tue Wed Thu Fri Sat Sun
Week
1
17:00-18:50
Sub. A Sub. A Sub. A Sub. A
19:10-21:00
Sub. B Sub. B Sub. B Sub. B
Week
2
17:00-18:50 Sub. A Sub. A Sub. A Sub. A
19:10-21:00 Sub. B Sub. B Sub. B Sub. B
Week
3
17:00-18:50 Sub. A Sub. A Sub. A Sub. A
19:10-21:00 Sub. B Sub. B Sub. B Sub. B
Note that:
  • Each class is 1 hour and 50 minutes and a subject has 12 classes.
  • There is no class on Fridays.
  • Every day there is class for two subjects.
  • The schedule is from 17:00 to 21:00.

Program

Subjects ECTS Type
First semester

This course introduces to the students what is--and what is not--AI. It provides a condensed history of the field, introducing the various methods and open challenges, in order to set the stage for the different approaches that will be covered throughout the MSc. Students will be introduced to cognitive systems by focusing on agents inhabiting--navigating and altering-- virtual environments. In laboratory sessions, students will investigate fundamental concepts of cognition: sensing, decision making, and acting. Finally, core concepts of knowledge representation and reasoning will be introduced, including first-order and description logics.
3 Compulsory

Description will be available soon.
3 Compulsory

This course focuses on data preparation, supervised and unsupervised learning. The preparation and use of datasets for learning tasks will be presented, with a focus on pre-processing for efficiency. This includes de-noising, sampling, feature extraction and normalization.The course covers basic supervised and unsupervised learning algorithms, identifying their uses and limitations and learning how to implement and evaluate them. The supervised learning models introduced include k-NN, Naïve Bayes, random forest and ensemble methods. In terms of unsupervised methods, different clustering techniques will be introduced. The theory focuses on the required notions to understand optimisation, measures and dimensionality reduction.
3 Compulsory

Description will be available soon.
3 Compulsory

The course objective is to enumerate the advantages of virtualization when managing decentralized software with a microservices architecture and orchestration techniques. Second, prepare Internet connected systems for high availability, load balancing, scalability, disaster recovery, and other cloud software engineering strategic dimensions. Third, practice using DevOps cloud computing technologies; such as docker, swarm and kubernetes clusters, or cloud providers.
3 Compulsory

Description will be available soon.
3 Compulsory

The course covers the fundamental principles of neural network architecture, including perceptrons, activation functions, and layers. Students explore common neural network architectures such as feedforward, convolutional, and recurrent networks, understanding their applications and advantages. Through hands-on exercises and projects, participants gain practical experience in implementing neural networks using popular frameworks like TensorFlow or PyTorch, learning techniques for training, optimizing, and evaluating model performance.
3 Compulsory

Ethical hacking refers to programming techniques that intend to reveal system insecurity by reusing or devising attack patterns. In this course, we will explore what the difference between ethical and unethical hacking is, why ethical hacking is a necessity in an ever connected world, and how the act of hacking can even be a bit of fun.
3 Compulsory

The system development lifecycle requires planning, constructing, testing, and deploying a system. Within this course we will take a particular look at the steps necessary to synthesize systems and analyze them from a systems engineering perspective. In particular, we will concern ourselves not with the particularities of individual parts of system development but rather with the concepts required to architect a holistic system by soliciting requirements from stakeholders, modeling desired behaviors that adhere to such requirements, and connecting these analysis methods with the synthesis of a realizable system to deploy.
3 Compulsory

Malware is payload software that violates confidentiality, integrity, and availability of an operating system. Malware analysis is the study of this type of software attempting to elucidate on attribution (who made the software), delivery (how the software reached its host), and function (what the software does to a particular host). In this course, we will taxonomize the different subtypes of malware, understand the analysis techniques and their limitations, and dissect a malware virus, always within the principles of ethical hacking.
3 Compulsory
Second semester

The course provides a comprehensive overview of sequential data processing and the foundational principles of recurrent neural networks (RNNs). The course explores the unique challenges posed by sequential data, including time series, natural language, and audio. Participants learn the architecture and mechanisms of RNNs, including long short-term memory (LSTM) and gated recurrent units (GRUs), understanding how these structures enable capturing dependencies over time. Through hands-on exercises and projects, students gain proficiency in implementing and training recurrent networks, addressing issues like vanishing gradients and exploding gradients. Additionally, the course delves into advanced topics such as sequence generation, attention mechanisms, and sequence-to-sequence models.
3 Compulsory

Description will be available soon.
3 Compulsory

Wireless system security is a collection of protocols, standards, and prophylactic firmware software that protect wireless networks. In this course, we will define different types of wireless transfer protocols (for example UDP and TCP) and architectures (for example mesh, star, and tree networking), investigate the types of attack patterns on wireless networking (for example spoofing, adversary in the middle, sniffing attacks), and propose potential defenses (for example https and ssl).
3 Compulsory

Design of complex and reliable cyber-physical systems (CPS) requires the creation of mathematical models, both of the environment and of the system itself. Such models allow us to analyze, control, verify, and optimize a system’s performance. The modeling choice is largely dictated by the intended use of the model plus the intricacies of the underlying physical domain. This course will provide a solid foundation for understanding different modeling paradigms, and explore them through a hands on examination on a cyber-physical domain..
3 Compulsory

This subject serves as a foundational introduction to the Internet of Things (IoT), focusing on essential protocols, networks, and design principles. Students will explore key IoT communication protocols like MQTT and network technologies including Wi-Fi, Bluetooth, LoRaWAN, and Zigbee. The course empowers students to design IoT networks using tools like IIRA (IoT Infrastructure Reference Architecture), enabling them to create robust and efficient IoT systems.
3 Compulsory

This course bridges the gap between Machine Learning (ML)and cybersecurity, focusing on how ML algorithms can be utilized to fortify cybersecurity measures and applications. We will cover the application of ML models to detect anomalies, predict attacks, and automate threat intelligence. Students will learn about the challenges and opportunities of applying ML in a cybersecurity context, including ethical considerations and the need for robust, secure ML models as there are many security applications which have large amount of data related to the system as well as adversarial actions. In the course, students will learn the theoretical concepts during the lectures as exploring different problem domains, gain hands-on experience to build up their skills by practicing on assignments, and finally demonstrate their knowledge and skills by participating in a final project to identify the type of machine learning algorithms that are useful for specific security applications and how to improve the defence against attacks to ultimately anticipate the potential attack variants that may rise in the future.
3 Elective

The course objective is to, first, list the problems that appear during the development, maintenance and operation of systems. Second, observe how continuous measures can be incorporated to avoid or control errors, but at the same time maintaining agile development mechanisms. Third, practice using DevOps productive development and continuous integration tools; such as version control systems, Agile methodologies, or automation testing and deploying tools.
3 Elective

Network security monitoring detects and prevents attacks by examining network traffic data via intrusion detection systems (IDS), log management, and threat analysis. Students can expect to learn about: (1) network architecture & data collection, (2) intrusion detection systems (IDS), and (3) threat intelligence.
3 Elective

The course covers Internet of Things (IoT) sensor systems, emphasizing the transformative potential of integrating sensor technology with the IoT across various industries. A systems engineering approach will be adopted throughout the course, where students will review and critically discuss key technologies employed at different levels of the IoT stack and how they're integrated to form complete IoT systems. Through lectures and practical activities students will gain a comprehensive understanding of the IoT ecosystem and the critical role of sensors, develop skills in designing, implementing, and managing sensor systems for IoT applications, to finally comprehend the challenges of data acquisition, processing, and management in sensor-based systems, communication technologies and protocols essential for IoT sensor networks. Students will learn through a variety of formats including interactive videos, practice quizzes, presentations, assignments, discussion forums and final project to delve into the technical and practical aspects of designing and deploying sensor systems within the IoT infrastructure with a key focus on exploring considerations of energy efficiency, sustainability, security, and privacy in IoT sensor systems.
3 Elective

This course explores parallel computing architectures, including shared memory, distributed memory, and hybrid systems, learning strategies for efficient parallelization of algorithms. Through hands-on exercises and projects, students gain practical experience in developing and deploying high-performance applications, tackling computationally intensive problems across various domains such as scientific simulations, data analytics, and machine learning.
3 Elective

The course covers foundational concepts such as tokenization, part-of-speech tagging, syntactic parsing, and semantic analysis, providing students with a solid understanding of how computers process and interpret text. Participants also delve into practical applications of NLP, including sentiment analysis, named entity recognition, machine translation, and text summarization, learning to leverage state-of-the-art tools and libraries such as NLTK, spaCy, and Transformers. Through hands-on projects and exercises, students gain experience in preprocessing text data, building NLP models, and evaluating their performance, ultimately preparing them to tackle real-world challenges in areas like information retrieval, question answering, and conversational AI.
3 Elective

Cybersecurity of industrial control systems protects industrial processes and equipment from threats. With increasing reliance on automation and computerized systems, it has become crucial to understand the unique vulnerabilities faced by industrial environments. This course delves into core areas like risk assessment, defense mechanisms, incident response, and regulatory compliance. We will address both Information Technology (IT) and Operational Technology (OT) security.
3 Elective

This course introduces key fundamental concepts and techniques of optimization applied to machine learning problems. It covers a range of optimization methods, from classical approaches to recent advancements, emphasizing their applications in designing and training machine learning models. The curriculum bridges theoretical concepts with practical implementation, providing students with the tools to solve complex optimization problems encountered in real-world machine learning tasks. The student will learn when to use which method, which tooling is appropriate in which situation, and the connections between the different methods. We will also show how these methods fit within the broader framework of the mathematical foundations of optimization methods and their importance in machine learning and apply various optimization techniques to train machine learning models effectively to analyse the importance of convergence properties of optimization algorithms and their impact on model performance. Finally, in the tutorials and labs, students will gain hands-on experience through several coding assignments and by participating in a project.
3 Elective

System security will focus on Systems-Theoretic Process Analysis for Safety and Security (STPA-Sec). The objective is to provide students with a comprehensive understanding of how to design, implement, and evaluate secure systems by considering both safety and security as integral parts of the development process. By the end of the course, students will have a deep understanding of the challenges involved in creating safe and secure systems and the skills necessary to apply coengineering principles effectively. They will also be able to critically analyze existing systems and propose solutions to improve their overall safety and security posture.
3 Elective

This course outlines a comprehensive path for learning and applying probabilistic methods to various real-world scenarios, equipping students with the theoretical knowledge and practical skills to leverage uncertainty and randomness in their professional activities. From the beginning, students will learn the fundamental concepts and mathematical frameworks of probability theory and develop proficiency in statistical reasoning and inference to analyse data and make informed decisions with insight into developing a mathematical understanding of probabilistic models and how they can be employed to interpret data, make predictions, and inform decision-making processes. Besides, in the tutorials and labs, students will gain hands-on experience through several coding assignments and exercises. Finally, student will participate in a project to apply probabilistic methods to model uncertainty and solve problems across various applications such as Monte Carlo simulations to tackle real-world challenges in technology, finance, and research.
3 Elective
Third semester

This course bridges the gap between Machine Learning (ML)and cybersecurity, focusing on how ML algorithms can be utilized to fortify cybersecurity measures and applications. We will cover the application of ML models to detect anomalies, predict attacks, and automate threat intelligence. Students will learn about the challenges and opportunities of applying ML in a cybersecurity context, including ethical considerations and the need for robust, secure ML models as there are many security applications which have large amount of data related to the system as well as adversarial actions. In the course, students will learn the theoretical concepts during the lectures as exploring different problem domains, gain hands-on experience to build up their skills by practicing on assignments, and finally demonstrate their knowledge and skills by participating in a final project to identify the type of machine learning algorithms that are useful for specific security applications and how to improve the defence against attacks to ultimately anticipate the potential attack variants that may rise in the future.
3 Elective

Description will be available soon.
3 Elective

This advanced course delves into the intricacies of relational database systems, tackling a broad spectrum of topics from sophisticated query optimization techniques to the internal workings of database management systems (DBMS). It emphasizes practical skills in designing and implementing scalable, efficient, and secure database solutions, as well as theoretical knowledge on the principles underlying database systems. Students will grasp the architecture and operation of distributed database systems, including big data integration, evaluate the applicability and limitations of NoSQL and NewSQL databases in various scenarios discussing their use cases, strengths, and how they complement traditional relational database systems to lastly implement effective strategies for data warehousing, business intelligence, and database security. Students will learn through a variety of formats including interactive videos, practice quizzes, presentations, assignments, discussion forums and handing in a final project, which will cover the technical and practical aspects of designing and deploying at least one relational database management system (e.g., MySQL, PostgreSQL, Oracle), highlighting the gained knowledge required to tackle the challenges of modern database systems and prepare for future advancements in the field.
3 Elective

This course deeply explores issues such as fairness, transparency, accountability, and bias mitigation. The course delves into the legal and regulatory landscape surrounding AI and cybersecurity, including intellectual property rights, data privacy laws, and liability considerations. Moreover, students examine the societal implications of AI across various domain, fostering critical thinking and ethical decision-making skills. Through case studies and discussions, students gain a nuanced understanding of the complex interplay between technology, ethics, and society, preparing them to navigate the ethical, legal, and social challenges posed by AI in their professional endeavors.
3 Elective

Database security concerns the use of various controls to protect the confidentiality, integrity and availability of databases. These controls can be technical (e.g. encryption, access controls), procedural/administrative (e.g. security policies, auditing), or physical (e.g. securing server rooms). In this course we will examine database encryption, access controls, data masking, and key management.
3 Elective

This course will equip students with the business and leadership skills to effectively manage transformational projects in their organisations, grow a new business unit, or move towards creating their own venture. Core tools such as value-proposition models, personas, validation canvas, and others will be introduced through practical assignments. Industry leaders will provide real-world stories on innovation management and digital transformation.
3 Elective

This subject focuses on Industrial Internet of Things (IIoT) applications, emphasizing industrial protocols, cloud computing, edge computing, and predictive maintenance strategies. Students will delve into protocols like IO-Link, Modbus, and other industrial communication standards. Additionally, they will explore how cloud computing and edge computing technologies enhance data processing efficiency in industrial settings while integrating predictive maintenance techniques for optimal operational performance.
3 Elective

Artificial Intelligence (AI) in healthcare focuses on the application of artificial intelligence technologies to enhance healthcare outcomes, operational efficiencies, and patient care. In this course, we will delve into the understanding the fundamental AI concepts and how they can be applied to solve healthcare problems, how to analyse and interpret healthcare data using AI and machine learning techniques. Moreover, students will get a comprehensive understanding of the current state and future possibilities of AI in the healthcare sector, real-world examples of AI technologies being implemented in healthcare settings, including success stories and challenges faced. The course explores various AI tools, including machine learning algorithms, natural language processing, and computer vision, and their applications in diagnostics, treatment personalization, patient monitoring, and health administration. Students will learn through a variety of formats including interactive videos, practice quizzes, presentations, assignments, and discussion forums to assess the potential of AI technologies in improving diagnostics, treatment planning, and patient care, to finally explore logistical and ethical challenges around data use and AI.
3 Elective

This course covers the computational methods used in crime investigation (forensics) and prevention (intelligence). It is a cross-disciplinary course that combines knowledge from forensic sciences, criminology, law, AI, signal processing, and others. We cover topics such as deepfakes, data manipulation, biometrics and surveillance, and others. We will held guest talks with law-enforcement agencies.
3 Elective
Tesis de Màster

Conducted under the guidance of a faculty advisor, the thesis project involves identifying a research question, conducting a thorough literature review, designing and executing experiments or investigations, analyzing results, and drawing meaningful conclusions. The thesis is expected to represent a significant contribution to the field, showcasing the student's ability to apply advanced knowledge and critical thinking skills.
18 Compulsory