Design and Optimization of Internet-of-Things Systems
EE-733 / 4 credits
Teacher(s): Atienza Alonso David, Burg Andreas Peter
Language: English
Remark: Next time: Fall 2024
Frequency
Every 2 years
Summary
This course provides a complete overview of the most relevant subfields related to Internet of Things (IoT) systems, it presents the perspectives and the underlying technologies, with a particular focus on edge AI architectures and software (AI and TinyML algorithms), communication and Cloud systems
Content
- Smart Platforms for IoT: Introduction and motivation, different options for IoT system components (nodes and backend). Hardware and software co-design for edge computing and multi-level computing with cloude systems. ULP single vs multi-core IoT processing architecture: parallel processing and classification optimization opportunities for IoT systems. Examples of different edge computing architectures and use cases.
- Artificial Intelligence (AI) and Machine learning (ML) techniques for IoT and edge nodes: Review of families of AI and ML/tinyML for edge computing. Efficient signal sampling and event-based operation for IoT nodes. Videos and demos with different case studies to understand energy vs. performance trade-offs in IoT designs. Description and implementation of security requirements for IoT systems. Exercises of different case studies.
- Power Management and Low Power Design for IoT systems: Basics of CMOS low-power design. Power management considerations in CMOS embedded and IoT systems. ARM Cortex M3 Low-Power Modes and JenOS Power Manager (PWRM) module. Evaluation of low-power saving modes transition in IoT devices when data processing is performed. Understanding of how PWRM works and how to compare performance of different IoT application codes for signals and biosignals processing.
- Communication for IoT: Wireless system and ULP protocols §Transmission schemes and signaling schemes for ULP communication, RF circuits architectures and signal propagation models. Videos and demos will be done to understand the features of signal strength and quality of communication.
- IoT Cloud computing services: Different IoT platform deployments: IaaS, PaaS, and SaaS. AI/ML Support in IoT platforms. Big-4 IoT platform vendors and architecture examples. Interfacing secure IoT devices and cloud services as backend.
- Application-Oriented IoT Designs: eHealth and other applications. Mobile health devices and sensors, body worn systems for functional tests, activity and behavior monitoring. Wearable systems and other applications, such as sport activity. Hands on experience with PPG, inertial sensors, etc.
- Team project development: Last five weeks of the course after validation with lecturers of system scope through a mid-term (first proposal) review and presentation.
Learning Prerequisites
Important concepts to start the course
It is important to have an initial understanding of electronic systems and the sources of power consumption, as well as basic computing architectures are important to follow correctly the course.
As the same time, basic knowledge of communication systems and notions of machine learning are required.
Finally, notions of how cloud computing operates is relevant but not essential to the course.
Learning Outcomes
By the end of the course, the student must be able to:
Transversal skills
- Assess progress against the plan, and adapt the plan as appropriate.
- Communicate effectively, being understood, including across different languages and cultures.
- Evaluate one's own performance in the team, receive and respond appropriately to feedback.
- Assess one's own level of skill acquisition, and plan their on-going learning goals.
- Continue to work through difficulties or initial failure to find optimal solutions.
- Take feedback (critique) and respond in an appropriate manner.
- Use both general and domain specific IT resources and tools
Teaching methods
The course includes regular lectures, laboratory exercises and team project (approximately 50% distribution of time between lectures and exercises).
The course is a 4-ECTS credits and spans the whole semester.
Expected student activities
Theory and laboratory exercises are taught during the first half of the semester (4 hours per week), and the evaluation is done through project development in the last five weeks of the semester, in groups of two people (presentation and demo at the end of the semester).
Assessment methods
The evaluation is based on two oral presentations: one is a mid-term presenting the initially proposed project (30% of the final grade), and the second one is the final oral presentation and developed code of the final project (70% of the final grade), which is evaluated in the last session of the semester.
Resources
Notes/Handbook
The material required for the course (including slides and documentation for the lab sessions) are provided during the corresponding lectures.
Moodle Link
In the programs
- Number of places: 36
- Exam form: Oral presentation (session free)
- Subject examined: Design and Optimization of Internet-of-Things Systems
- Courses: 24 Hour(s)
- Exercises: 24 Hour(s)
- TP: 8 Hour(s)
- Type: optional
- Number of places: 36
- Exam form: Oral presentation (session free)
- Subject examined: Design and Optimization of Internet-of-Things Systems
- Courses: 24 Hour(s)
- Exercises: 24 Hour(s)
- TP: 8 Hour(s)
- Type: optional