Search result: Catalogue data in Autumn Semester 2022
Electrical Engineering and Information Technology Bachelor ![]() | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() A minimum of 15 cp (under the 2018 regulations), respectively at least 18 cp (under the 2016 regulations) must be achieved in the category "Laboratory Courses, Projects, Seminars". | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() ![]() Enrolment is only possible for students in the BSc Electrical Engineering and Information Technology from Friday before the start of the semester. Places are allocated using the P&S application tool (https://psapp.ee.ethz.ch/). Please only enrol for P&S for which you apply via the tool. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Number | Title | Type | ECTS | Hours | Lecturers | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
227-0085-01L | Projects & Seminars: Amateur Radio Course ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 1.5 credits | 1P | J. Leuthold | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Der Amateurfunk ermöglicht es, drahtlos über weite Distanzen zu kommunizieren. Doch darf eine Amateurfunk-Station nicht ohne Weiteres betrieben werden. Voraussetzung ist das Ablegen der Amateurfunkprüfung HB3 oder HB9 beim BAKOM. In diesem Kurs werden wir einen Überblick über die wichtigsten Themengebiete des Amateurfunks bieten. Im praktischen Teil werdet ihr unter anderem die Gelegenheit haben, das Funkgerät selbst in die Hand zu nehmen. In einem Portabel-Ausflug (nicht testatpflichtig) werden wir zudem draussen eine mobile Funkstation aufbauen und bedienen. Nach dem Kurs habt ihr die Möglichkeit, die HB9-Prüfung abzulegen. Mit der Prüfung in der Tasche könnt ihr dann auch die Funkbude des AMIV auf dem ETZ-Dach verwenden oder auch eure eigene Anlage aufbauen und betreiben. Voraussetzung für das Testat ist eine aktive Teilnahme am Kurs, nicht das Bestehen der BAKOM-Prüfung. Eine erfolgreiche Funkverbindung zu einer anderen Station ist ebenfalls Teil der Testatbedingung. Das Lernmaterial wird in der ersten Kursstunde ausgegeben. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-02L | Projects & Seminars: Game Development with Unity ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Game Development is a big field and is constantly growing. A powerful tool to create cross-platform games is Unity. Unity is a cross-platform real-time game engine that uses C# as its programming language (very similar to Java). This P&S is a great chance for gaining practical experience, creating something from scratch and establishing a supporting community. Therefore, if you are eager to improve your coding skills as well as bring them to life by applying them to game development, this is the right P&S for you! | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-03L | Projects & Seminars: COMSOL Design Tool – Design of Optical Components ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | J. Leuthold | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Simulation tools are becoming an essential accessory for scientists and engineers for the development of new devices and study of physical phenomena. More and more disciplines rely on accurate simulation tools to get insight and also to accurately design novel devices. COMSOL is a powerful multiphysics simulation tool. It is used for a wide range of fields, including electromagnetics, semiconductors, thermodynamics and mechanics. In this P&S we will focus on the rapidly growing field of integrated photonics. During hands-on exercises, you will learn how to accurately model and simulate various optical devices, which enables high-speed optical communication. At the end of the course, students will gain practical experience in simulating photonic components by picking a small project in which certain photonic devices will be optimized to achieve required specifications. These simulated devices find applications in Photonic Integrated Circuits (PICs) on chip-scale. Course website: https://blogs.ethz.ch/ps_comsol | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Prerequisites / Notice | No previous knowledge of simulation tools is required. A basic understanding of electromagnetics is helpful but not mandatory. The course will be taught in English. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-04L | Projects & Seminars: Microcontrollers for Sensors and Internet of Things ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 4 credits | 4P | M. Magno | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Ultra Low Power Microcontroller (MCU) – Firmware Programming and Sensors Interfacing using an Arm Cortex-M (STM32) Microcontroller Microprocessors are used to execute big and generic applications, while microcontrollers are low cost and low power embedded chips with program memory and data memory built onto the system which are used to execute simple tasks within one specific application (i.e. sensor devices, wearable systems, and IoT devices). Microcontrollers demand very precise and resource-saving programming, therefore it is necessary to know the processor core, and particular importance has the investigation of the microcontroller's hardware components (ADC, clocks, serial communication, timers, interrupts, etc.). The STM32 from STMicroelectronics has gained in popularity in recent years due to its low power and ease of use. The goal of this course is the development of understanding the internal processes in the microcontroller chip from TI. This will enable you to conduct high-level-firmware-programming of microcontrollers, to learn about the STM32 MCU features, benefits, and programming and how they can be connected with sensors, acquire the data, processing them and send the information to other devices. The course will also include an introductive lecture on machine learning and artificial intelligence on the embedded system and in particular microcontrollers. The C language will be used to program the microcontroller. The course will be taught in English. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-05L | Projects & Seminars: FPGA in Quantum Computing with Superconducting Qubits ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | M. Magno, K. Akin | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | FPGAs are used in wide range of applications including video processing, machine learning, cryptography and radar signal processing, thanks to their flexibility and massive parallel processing power. Recently FPGAs have become important in quantum signal processing where high amount of data should be analyzed in a short time to use quantum setups most efficiently. In addition, FPGAs are used for quantum state detection and feedback generation, which have to be performed in the scale of hundreds of nanoseconds. The goal of this course is to understand the FPGA based signal processing for superconducting circuits based quantum experiments. The course participants will learn the implementation techniques of the modules for fast quantum signal acquisition and processing, the electronics supporting quantum experiments, and FPGA programming. You will implement quantum signal processing and quantum state detection modules using Xilinx FPGA, Verilog HDL, and high speed ADC. The course will be taught in English. No prior knowledge in quantum physics or FPGA is required, still a good knowledge in any coding language (for example C or Java) is required. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-06L | Projects & Seminars: Neural Network on Low Power FPGA: A Practical Approach ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 2 credits | 2P | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Artifical Intelligence and in particular neural networks are inspired by biological systems, such as the human brain. Through the combination of powerful computing resources and novel architectures for neurons, neural networks have achieved state-of-the-art results in many domains such as computer vision. FPGAs are one of the most powerful platform to implement neural networks as they can handle different algorithms in computing, logic, and memory resources in the same device. Faster performance comparing to competitive implementations as the user can hardcore operations into the hardware. This course will give to the student the basis of Machine Learning to understand how they work and how they can be trained and giving hand-on experiences with the training tools such as Keras. Moreover the course will focus in deploy algorithms in low power FPGA such as the Lattice sensAI platform to have energy efficient running algorithms. The course will provide to the students the tools and know-how to implement neural netwok on an FPGA, and the student will challenge theirself in a 5 weeks piratical project that they will present at the end of the course. Experience in FPGA programming is desirable but not mandatory. The course will be taught in English. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-08L | Projects & Seminars: Bluetooth Low Energy Programming for IoT Sensing System ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Bluetooth Low Energy System on Chip – Firmware Programming and sensors Interfacing using an Arm Cortex-M (Nordic nrf52838) Microcontroller With the introduction of the BLE 5.0 standard, Bluetooth has achieved high data bandwidth with low power consumption. This makes the technology an ideal match for many applications, i.e., IoT sensor application or audio streaming, by addressing two of the greatest bottlenecks of these devices. This course offers the chance for participants to do hands-on programming of microcontrollers. In particular, the focus will be laid on interfacing with sensors, acquisition of data, on-board event-driven data processing with ARM-Cortex-M4 processors and BLE or other wireless transmissions. The programming will be performed in C. Today’s microcontrollers offer a low power, efficient and cost-effective solution of tackling a nearly infinite number of task-specific applications. Ranging from IoT devices, wearable systems, sensor (mesh) devices, all the way to be integrated as submodules for the most complex system such as cars, planes, and rockets. Microcontrollers derive their advantages from the efficient use of resources and as such require very efficient and resource-saving programming. Therefore, it is mandatory to understand hardware components such as processor cores, ADC, clocks, serial communication, wireless communication, timers, interrupts, etc. The P&S includes five weeks project where the student will setup an IoT sensor node to monitor electric power transmission and distribution system. The course will be taught in English by the ITET center for project based learning. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-09L | Projects & Seminars: Spiking Neural Network on Neuromorphic Processors ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | G. Indiveri | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Machine Learning – Spiking Neural Network – DVS Cameras - Programming Neuromoripch processors – Intel Loihi - Final Project with a presentation. Compared to the “traditional” artificial neural network, the spiking neural network (SNN) can provided both latency and energy efficiency. Moreover, SNN has demonstrated in previous works a better performance in processing physiological information of small sample size, and only the output layer of the spiking neural network needs to be trained, which results in a fast training rate. This couse focuses on giving the bases of spiking neural networks and neuromorphic processors. Students will learn the tools to implement SNN algorithm in both academic processors and Intel Loihi using data from Event-based Vision camera and biomedical sensors (i.e. ECG and EEG). The course will end with 4 weeks project where the students can target a specif application scenario. The course will be taught in English. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-11L | Projects & Seminars: Deep Learning for Image Manipulation (DLIM) ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | L. Van Gool | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Deep Learning – Image Manipulation – Image Enhancement – Image Restoration – Style Transfer – Image to Image Translation – Generative Models – TensorFlow/PyTorch – Projects With the advent of deep learning tremendous advances were achieved in numerous areas from computer vision, computer graphics, and image processing. Using these techniques, an image can be automatically manipulated in various ways with high-quality results, often fooling the human observer. Deep learning based image processing and manipulation are being applied in a vast number of emerging technologies, including image enhancement in smartphone cameras, automated image editing, image content creation, graphics, and autonomous driving. This course focuses on the fundamentals of deep learning and image manipulation. Students will learn the tools to implement and develop deep learning solutions for a variety of image manipulation tasks. The course will end with a 4 weeks project where the students can target a specific application scenario. The course will be taught in English. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-12L | Projects & Seminars: Electronic Circuits & Signals Exploration Laboratory ![]() ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 2 credits | 1P | H.‑A. Loeliger | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | The goal of this lab course is for the students to enhance their understanding on how basic analog electronic circuits work, or perhaps don't work, and provide enough practical experience for the students to feel at ease using transistors, resistors, capacitors, diodes, etc., to create working circuits. For example, students create circuits that make physical quantities audible. Students are encourage to realise their own circuit ideas. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-13L | Projects & Seminars: Assembling and Controlling a Tuning-Fork AFM ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3.5 credits | 3.5P | T. Zambelli | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Invented in the 1980s in Zurich and awarded with the Kavli prize in 2016, the atomic force microscope (AFM) has enabled us to visualize surfaces at the single atom level, and to measure single molecule and cell-cell interactions, deepening our understanding of material science and biology. This is achieved by controlling micromechanical piezo actuators with nanometer precision and processing noisy signals in order to achieve meaningful data. In order to introduce you to the capabilities of modern AFMs in biomedical sensing, you will build your own setups in groups of two. You will be introduced to an AFM’s functionality, control, and signal read-out using LabView. A signal of an oscillating tuning-fork will be used as feedback for the self-built AFM. In order to better understand the working principle of a tuning fork, you will also build your own frequency sweeper and analyze it with self-built low-pass filters. After you have implemented your own setup, you will have the chance to characterize different biomedical samples on state-of-the-art setups. This data will then be analyzed using Python. The focus of this P&S seminar is to enable you to transfer your theoretical knowledge into practice and at the same time get to know how electrical engineering can be used in biomedical research. The course requires active participation during the practical sessions, a 10-15 min presentation and a short written report on the acquired results. The course will be given in English. Dates: Mon 4.10., Wed 6.10., Mon 11.10., Wed 13.10., Mon 25.10., Wed 27.10., Mon 1.11., Wed 3.11. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competencies![]() |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-14L | Projects & Seminars: Technical and Economic Aspects of Renewable Energy Supply ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | G. Hug | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | More and more sustainable and renewable energy technologies are used for electricity generation to cope with climate change. These distributed resources transform the electric power grid and impose major challenges. In this seminar, students have the opportunity to glance at cutting-edge research in the field of power systems. Possible research questions might be: - How to integrate distributed energy generation like PV plants and wind turbines into the electricity grid? - What challenges does the increasing share of electric vehicles and batteries impose on the power grid? - How to cope for the uncertain generation capacity of renewables and how to forecast it? - How does the electricity market work and how do the new sources of flexibility transform it? Students will prepare a presentation and a report on their individual research question, which is based on an assigned paper. The main objectives are to practice literature review, scientific writing and presenting. Students will learn to independently understand specific research results – a crucial skill for academic research including semester and master projects. The language of instruction is English. Registrations for the seminar are binding. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-15L | Projects & Seminars: Python for Engineers - Get Productive in the Classroom, in the Lab and at Home ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | J. Leuthold, K. Keller | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Python is an interpreted high-level programming language which is becoming increasingly popular in the academic scientific community as well as in industry. The course will introduce the basics of the python programming language, and will cover some of the most useful Python modules, such as numpy, scipy and matplotlib. The classes will further cover simple GUIs, data analysis and linking with shared libraries or C code. They will further familiarize with the GIT version control system, with the linux shell and with the most common software licenses. Students are not required to have previous Python programming experience. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-16L | Projects & Seminars: Machine Learning for Brain-Computer Interfaces ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | L. Benini | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | A brain-computer interface (BCI) provides a communication and control channel based on the recognition of subject’s intention from spatiotemporal activity of the brain. A typical method to acquire neural activity signals is electroencephalograhy (EEG), which is often used in BCI. In order to make these data usable and get useful information out of them, signal processing techniques play a crucial role. Moreover, feature extraction and machine learning methods are applied to obtain a highly accurate BCI. The aim of the Project and Seminars course is to give insights of signal processing and machine learning applied to brain-computer interfaces to undergraduate students, by having hands-on experience in brain signal acquisition, data processing, feature extraction, and machine learning. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-17L | Projects & Seminars: Building a Wireless Infrared Headphone ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 2 credits | 2P | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | This P&S is about the design and operation of an optical infrared audio transmission system. For this purpose, we familiarize ourselves with important laboratory and measurement equipment (oscilloscope, spectrum analyzer) and measurement methods (record frequency response, S/N ratio, nonlinear interference). The influence of modulation to suppress interference will be investigated in experiments. Each student builds an infrared transmitter and receiver. During assembly, we gain hands-on experience with soldering conventional and SMD components. The finished circuits are tested and tuned and can be taken home afterwards. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-18L | Projects & Seminars: Bits on Air ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 2 credits | 2P | M. Lerjen | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Digital communication is a part of our everyday lives, whether we are sending e-mails, watching TV, listening to the radio, or using a cell phone. In this P&S, we will familiarize ourselves with the basics of digital communication. On conventional PCs, the students will implement their own software modems for data transmission. These modems, just like the digital communication systems used in real life, consist of a modulator, a demodulator and an algorithm to synchronize the carrier of the incoming message. Once implemented, these modems can be used to acoustically transmit any data (such as small text files) between PCs. We use MATLAB but previous knowledge thereof is not assumed. Rather, the goal of the project is to practice programming with MATLAB in addition to learning basics of digital communication. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-19L | Projects & Seminars: Software Defined Radio ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | M. Lerjen | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Wireless transmission of information is ubiquitous today. Depending on application and frequency range, different types of modulation are used, with digital methods having largely replaced the old analog methods. Software Defined Radio (SDR) tools make it possible to dive into this world and "surf the waves" with relatively little effort. More powerful computers allow for increasingly complex signal processing in transmitters and receivers. At the same time, the signal processing algorithms can be adapted and changed very quickly and flexibly. In this P&S we will take a closer look at how SDR works. In the first part we will work on the basics of frequencies, spectra, modulation types, and signal processing. In the second part we will work in groups on different projects with SDR tools. Students can also bring their own ideas. At the end, the projects will be presented in the class. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-21L | Projects & Seminars: Quad-Rotors: Control and Estimation ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 2 credits | 2P | J. Lygeros | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | The objective of this P&S is to make a real-world quad-rotor fly autonomously by applying the control and estimation theory taught in class. Details of this P&S course can be found at: http://www.dfall.ethz.ch/pands.php A video showing highlights from HS2018 can be see here: http://www.youtube.com/watch?v=PEg-XHSXd58 In the first half of the P&S, we will introduce the physical model for a quad-rotor and use this to apply the control and estimation techniques that are taught in the 5th semester in the Control System 1 class. The students will then create their own control function for a quad-rotor and test these in simulation. The second half of the course will involve the students implementing the control and estimation algorithms they design in the real-world on our fleet of nano-quad-rotors. Once stable flight is achieved, the students will have the freedom to perform tasks with the quad-rotor. By implementing the control and estimation algorithms on a real-quadcopter, the students will gain experience with how decisions in the modelling and design stage affect real-world performance. Important Information: Students must be in the 6th semester. The first class will be Monday, September 21 for all students. Classes will then occur every second week. The students will be split into two groups and the classes for each group will occur on alternating weeks. It is preferable to be taking the Control Systems 1 (CS1) course but not mandatory. Those students who are not taking CS1 will need to complete some extra reading to understand some aspects of this P&S. Due to COVID-19, the course will be offered in an online setting with classes being held over Zoom. The students will be able to take a real-world quad-rotor to their homes in order to implement the control and estimation algorithms taught in the course. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-24L | Projects & Seminars: Vision and Control in RoboCup ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 1P | J. Lygeros, L. Van Gool, F. Yu | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Vision and Control in RoboCup is jointly offered by Prof. John Lygeros (IFA), Prof. Luc Van Gool (CVL) and Prof. Fisher Yu (CVL). RoboCup is a tournament where teams of autonomous robots compete in soccer matches against each other. The ETH team NomadZ ( https://robocup.ethz.ch/ ) plays in the Standard Platform League with a team of humanoid NAO robots, where the focus lies on developing robust and efficient algorithms for vision, control and behavior. The main objective of this course is to familiarize students on the fundamental challenges we encounter in RoboCup. This is accomplished by a combination of lecture sessions, related student exercise sets and programming projects in MATLAB and Python. The topics cover visual localization, deep learning for object detection and reinforcement learning control of unknown systems. Important information for candidates: You are required to bring your own Laptop for the programing exercises. The course is taught in English and open to 5th or higher semester students. A basic knowledge of programming in Python and MATLAB is required. A prior exposure to control theory (e.g. by attending a Control Systems course) is desirable. Those students who are not familiar with control theory will need to complete some extra study to understand some aspects of this P&S. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-25L | Projects & Seminars: Magnetic Resonance: From Spectrum to Image ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 1 credit | 1P | M. Weiger Senften | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | The phenomenon of nuclear magnetic resonance (NMR) and its application for spectroscopy and imaging are introduced. The course starts with a general introduction to NMR, followed by measurements on a clinical MRI scanner. The NMR experiments will be developed and programmed by the students. Starting from a simple spectroscopic experiment, the basics of imaging will be acquired step-by-step. Finally, sectional images of test objects will be obtained. The course will be conducted only if at least 2 participants show up. In case in-classroom teaching is not allowed, the course must be cancelled. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-26L | Projects & Seminars: Biosignal Acquisition and Processing for IoT Wearable Devices ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Biosignal acquisition and processing – Wearable sensor node design and analysis for bio-impedance sensor using an Arm Cortex-M (Nordic nrf52838) Microcontroller Wearable smart sensor electronics has the potential to revolutionize the medical field. Various body conformal flexible sensors have been used to monitor motion and physiological electrical signals such as electrocardiography (ECG), electroencephalography (EEG) and body composition analysis via body bio-impedance measurements. Smart sensor nodes not only provide accurate and continuous data in time but also automate the process of maintaining medical records, thereby lowering the workload oft he health worker or clinician. This course offers an avenue for the students to understand the interdisciplinary principles that make it possible to interpret human physiology by utilizing discreet electronic components. Most importantly, participants will get a chance to do hands-on system design specific to electronically tracking a particular physiological phenomenon. In particular, the focus will be laid on programming of micro controllers, interfacing with sensors, acquisition of data and utilizing discreet analog elements for bio-signal processing. The programming will be performed in C. The course will be taught in English and by the ITET center for project based learning. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-27L | Projects & Seminars: Android Application Development (AAD) ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 4 credits | 3P | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Android Applications – Programming and development of Application - Android Studio – Smart Phone Sensors – GPS and Google Maps. Although the App-Industry is dominated by the giant Apps right now, it is still crucial that one knows how those Apps function and how those Apps are communicating with their hardware. This course offers the opportunity for the participants to understand the development of application using Android Studio. Most importantly, participants will get a chance to do hands-on software design specific to Android smartphone and the data acquisition from sensors, GPS, google maps and other internal devices. The main goal of the course if providing the students with the basic principle and software programming for build up every android application. The course include 4-5 weeks project were the students alone or in group will build up a working demo of a target application. The course will conclude with the presentation of the students work. Previous experience in C/Java or other languages is preferable but not mandatory. The students will program their own Android Smartphone. The course will be taught in English by the new Project-based learning centre. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-28L | Projects & Seminars: iCEBreaker FPGA For IoT Sensing Systems ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | M. Magno, C. Vogt | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Ultra Low Lattice FPGA – High Level Programming – Peripehrals Interfacing using an Lattice FPGA Field-programmable gate array (FPGA) is an integrated circuit designed to be configured by a customer or a designer after manufacturing , so they are also "field-programmable". The FPGA configuration is generally specified using a hardware description language (HDL), similar to that used for an application-specific integrated circuit (ASIC). However more and more nowdays producers and open source community are providing higher level toolls to program them similary than processors. On the other side still it is important know the hardware architectures. This course will give to the students the opportunity to program FPGA in a high level way and use them to connect with external peripherals such as display, sensors, etc. In particular, the course will use the iCEBreaker FPGA boards that is specifically designed for students and engineers . They work out of the box with the latest open source FPGA development tools and next-generation open CPU architectures. The course will also iCEBreaker can be expandable through its Pmod connectors, so the students can make use of a large selection of third-party modules. The course will include a project where the students will learn how to build a full working system for the next generation of Internet of Things intelligent smart sensing. The course will be taught in English by the new D-ITET center for Project-based learning. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-29L | Projects & Seminars: Embedded Deep Learning with Huawei Atlas 200 AI Dev Kit ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | M. Magno | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Deep Learning Intro - Python - Accelerated Embedded Computing Deep neural networks (DNNs) have become the leading method for a wide range of data analytics tasks, after a series of major victories at the ImageNet Large Scale Visual Recognition Challenge (ILSVRC). For ILSVRC, the task was to classify images into 1000 different classes, many of which are difficult to distinguish (e.g. many classes are different breeds of dogs). All that was given were 1.2 million labelled images. Meanwhile, this recipe for success has taken over many more areas, from image-based tasks like segmenting objects in images, detecting objects, enhancing images using super-resolution and compression artifact reduction, to robotics and reinforcement learning, and a wide range of industrial applications. DNNs and their subtype convolutional neural networks (CNNs) have not been new in the 2013 when the wave of success has started, but they got this huge boost through the new availability of large-scale dataset and—at least as importantly—the availability of the necessary compute resources by using GPUs to perform the computations required during training. While GPUs were then also used to stem the high computation effort of DNNs during inference (e.g. classifying images directly using a trained DNN rather than training the DNN itself). The high demand, the need for cost efficiency, and the goal of deploying DNNs not just in data centers but pervasively in everyday devices, wearables, and low-latency industrial or interactive applications, has triggered the development of various application-specific processors which are much faster, vastly more energy efficient, and cheaper at the same time—such as the Google TPU, Graphcore, …, and Huawei’s Ascend/Atlas platforms. In this course, you will learn: 1) the basics of deep neural networks, how they work, and what challenges there are for inference, 2) how platforms with specialized hardware accelerators, specifically the Huawei Atlas 200, can be used for running DNN inference and getting a practical application running, and 3) work on your own project using DNNs and hardware accelerators based on your own ideas or on some of our proposals. The course will be taught in English by the new D-ITET center for Project-Based Learning and a special guest lecturer from Huawei. Individual interactions/help can also be in (Swiss) German. Most sessions will be around 1 hour of lecture and 2 hours of practical computer exercises. We will start an introduction and then you will have ca. 8 weeks to work on your project, which will concluded with a final presentation of your results. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-31L | Projects & Seminars: Vision Goes Vegas ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 2 credits | 2P | L. Van Gool, F. Yu | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Computer Vision beschäftigt sich unter anderem damit, Maschinen zu befähigen ihre Umwelt zu sehen und das wahrgenommene Bild zu verstehen. In unserem Projekt soll ein System entwickelt werden, das Spielkarten erkennen kann und, einer guten Strategie folgend, erfolgreich Black-Jack spielen kann. Die Teilnehmer des Projektes werden kleine Teams bilden und gemeinsam mit einem Assistenten die Aufgabe erarbeiten und eine Implementierung erstellen. Am Ende des Semesters sollen die Programme im öffentlichen Wettstreit gegeneinander antreten! Ziel des Projektes ist es, aktuelle Methoden der Computer Vision kennen zu lernen. Spielkarten, die von einer Digitalkamera in beliebiger Orientierung aufgenommen werden, müssen registriert und erkannt werden. Ein Strategiemodul kontrolliert dann die Spieltaktik aufgrund allgemeiner Regeln und dem Wissen über schon gefallene Karten. Da sehr viele verschiedene Möglichkeiten bestehen, solch ein System zu realisieren, sind der Phantasie der Teilnehmer keine Grenzen gesetzt. Als Voraussetzungen sollte Interesse an Computer Vision mitgebracht werden und die Bereitschaft, sich in einem Team von Mitstudierenden einzubringen. Kenntnisse in C++ sind notwendig. Der Kurs wird von Prof. Fisher Yu mitbegutachtet. Dieses P&S wird in englischer Sprache durchgeführt. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-32L | Projects & Seminars: Magnetic Fields in Our Daily Life ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 2 credits | 2P | J. Leuthold | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Magnetic fields can be found everywhere but are rarely directly perceptible. This also leads to sometimes irrational fears, such as of electrosmog. The power supply with direct current, 16.67 Hz and 50 Hz alternating current is indispensable today. Wherever electricity flows, magnetic fields are generated. That is why magnetic fields are omnipresent. But where do particularly high fields occur? How high can these fields be before they cause damage to health? Many studies have already dealt with this question and country-specific guidelines have been defined on this basis. But are these actually adhered to? Where are the legal limits exceeded? What are the consequences? The P&S will deal with this topic and an invited guest will speak. The participants of the P&S will pursue small research projects of their own. To do this, they will be equipped with mobile measuring devices that can be connected to a smartphone to search for and characterise various magnetic field sources. How strong are the magnetic fields in our environment really? Can they pose a danger? How can they be shielded? These questions will be systematically investigated. At the end of the P&S, the individual groups present the findings | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-33L | Projects & Seminars: Accelerating Genome Analysis with FPGAs, GPUs, and New Execution Paradigms ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | M. H. K. Alser, J. Gómez Luna | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | In this course, we will cover the basics of genome analysis to understand the computational steps of the entire pipeline and find the computational bottlenecks. Students will learn about the existing efforts for accelerating one or more of these steps and will have the chance to carry out a hands-on project to improve these efforts. The course is conducted in English. Course website: https://safari.ethz.ch/projects_and_seminars/doku.php?id=bioinformatics | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Content | A genome encodes a set of instructions for performing some functions within our cells. Analyzing our genomes helps, for example, to determine differences in these instructions (known as genetic variations) from human to human that may cause diseases or different traits. One benefit of knowing the genetic variations is better understanding and diagnosis of diseases and the development of efficient drugs. Computers are widely used to perform genome analysis using dedicated algorithms and data structures. However, timely analysis of genomic data remains a daunting challenge, due to the complex algorithms and large datasets used for the analysis. Increasing the number of processing cores used for genome analysis decreases the overall analysis time, but significantly escalates the cost of building, maintaining, and cooling such a computing cluster, as well as the power/energy consumed by the cluster. This is a critical shortcoming with respect to both energy production and environmental friendliness. Cloud computing platforms can be used as an alternative to distribute the workload, but transferring the data between the clinic and the cloud poses new privacy and legal concerns. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lecture notes | See past course materials here: https://safari.ethz.ch/projects_and_seminars/doku.php?id=bioinformatics | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Literature | Learning Materials =============== 1. A survey on accelerating genome analysis: https://arxiv.org/pdf/2008.00961 2. A detailed survey on the state-of-the-art algorithms for sequencing data: https://arxiv.org/pdf/2003.00110 3. An example of how to accelerate genomic sequence matching by two orders of magnitude with the help of FPGAs or GPUs: https://arxiv.org/abs/1910.09020 4. An example of how to accelerate read mapping step by an order of magnitude and without using hardware acceleration: https://arxiv.org/pdf/1912.08735 5. An example of using a different computing paradigm for accelerating read mapping step and improving its energy consumption: https://arxiv.org/pdf/1708.04329 6. Two examples on using software/hardware co-design to accelerate genomic sequence matching by two orders of magnitude: https://arxiv.org/abs/1604.01789 https://arxiv.org/abs/1809.07858 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Prerequisites / Notice | Prerequisites of the course: - No prior knowledge in bioinformatics or genome analysis is required. - Digital Design and Computer Architecture (or equivalent course) - A good knowledge in C programming language is required. - Experience in at least one of the following is highly desirable: FPGA implementation and GPU programming. - Interest in making things efficient and solving problems | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-34L | Projects & Seminars: Exploration of Emerging Memory Systems ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | O. Mutlu | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | DRAM is predominantly used to build the main memory systems of modern computing devices. Emerging memory technologies (RRAM, PCM, STT-MRAM, FeRAM) provide an exciting opportunity to replace or complement DRAM. Simulation-based experimental studies are key for understanding the complex interactions between DRAM, emerging memory technologies, and modern applications. Ramulator is an extensible main memory simulator providing cycle-accurate performance models for a variety of commercial DRAM standards (e.g., DDR3/4, LPDDR3/4, GDDR5, HBM), emerging memory technologies, and academic proposals. Ramulator has a modular design that enables easy integration of additional standards, technologies and mechanisms. Ramulator is written in C++11 and can be easily integrated to full-system simulators such as gem5. In this P&S, you will design new memory and memory controller mechanisms for improving overall system performance, energy consumption, reliability, security, scalability and cost. You will extend Ramulator with these new designs and evaluate their performance, energy consumption, and reliability using modern applications. This will be the right P&S for you if you would like to learn about the state-of-the-art and future memory and memory controllerdesigns and their interaction with modern applications. This P&S will also enable you to hands-on simulate and understand the memory system behavior of modern workloads such as machine learning, graph analytics, genome analysis. The course is conducted in English. Course website: https://safari.ethz.ch/projects_and_seminars/doku.php?id=ramulator | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lecture notes | See https://safari.ethz.ch/projects_and_seminars/doku.php?id=ramulator | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Literature | Learning Materials =============== An old version of Ramulator: https://github.com/CMU-SAFARI/ramulator Original Ramulator paper: https://people.inf.ethz.ch/omutlu/pub/ramulator_dram_simulator-ieee-cal15.pdf An example study of modern workloads and DRAM architectures using Ramulator: Link An example recent study of a new DRAM architecture using Ramulator: Link An example recent study of a new virtual memory system architecture using Ramulator: https://people.inf.ethz.ch/omutlu/pub/VBI-virtual-block-interface_isca20.pdf Several examples of new ideas enabled by Ramulator based evaluation https://people.inf.ethz.ch/omutlu/pub/rowclone_micro13.pdf https://people.inf.ethz.ch/omutlu/pub/salp-dram_isca12.pdf https://people.inf.ethz.ch/omutlu/pub/raidr-dram-refresh_isca12.pdf https://people.inf.ethz.ch/omutlu/pub/DR_STRANGE_EndtoEnd-DRAM-TRNG_hpca22.pdf | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Prerequisites / Notice | Prerequisites of the course: Digital Design and Computer Architecture (or equivalent course) A good knowledge in C/C++ programming language. Interest in making things efficient and solving problems. Interest in understanding software development and hardware design, and their interactions. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-35L | Projects & Seminars: FPGA-based Exploration of DRAM and RowHammer ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | O. Mutlu | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | DRAM is predominantly used to build the main memory systems of modern computing devices. To improve the performance, reliability, and security of DRAM, it is critical to perform experimental characterization and analysis of existing cutting-edge DRAM chips. SoftMC is an FPGA-based DRAM testing infrastructure that enables the programmer to perform all low-level DRAM operations (i.e., DDR commands) in a cycle-accurate manner. SoftMC provides a simple and intuitive high-level programming interface (in C++) that completely hides the low-level details of the FPGA from programmers. Programmers implement test routines in C++, and the test routines automatically get translated into the low-level SoftMC memory controller operations in the FPGA. SoftMC developers write low-level hardware description language code to enable new and faster studies. In this P&S, you will have the chance to learn how DRAM is organized and operates in a low-level and gain practical experience in using SoftMC while developing SoftMC programs for new DRAM characterization studies related to performance, reliability, and security. You may also improve the SoftMC infrastructure itself to enable new studies. And, who knows, you might discover new security vulnerabilities like RowHammer. This will be the right P&S for you if you are interested in DRAM technology and would like to learn more about it as well as FPGA technology and how it can be used for practical purposes such as understanding and mitigating RowHammer attacks, generating true random numbers, reducing memory latency, fingerprinting and identifying devices, and improving reliability. The course is conducted in English. See: https://safari.ethz.ch/projects_and_seminars/doku.php?id=softmc | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lecture notes | See: See: https://safari.ethz.ch/projects_and_seminars/doku.php?id=softmc | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Literature | Learning Materials: =================== - An old version of SoftMC is here: https://github.com/CMU-SAFARI/SoftMC - SoftMC description: https://people.inf.ethz.ch/omutlu/pub/softMC_hpca17.pdf - SoftMC lecture: https://www.youtube.com/watch?v=tnSPEP3t-Ys - Example RowHammer study using SoftMC: https://people.inf.ethz.ch/omutlu/pub/Revisiting-RowHammer_isca20.pdf - Example security attack study using SoftMC: Link - Example neural network acceleration study using SoftMC: Link - Example random number generation study using SoftMC: Link - Example physical unclonable function study using SoftMC: https://people.inf.ethz.ch/omutlu/pub/dram-latency-puf_hpca18.pdf - The original RowHammer study using SoftMC: https://people.inf.ethz.ch/omutlu/pub/dram-row-hammer_isca14.pdf | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Prerequisites / Notice | Prerequisites of the course: - Digital Design and Computer Architecture (or equivalent course) - Familiarity with FPGA programming - Interest in low-level system exploration and memory - Interest in discovering why things do or do not work and solving problems | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-36L | Projects & Seminars: Genome Sequencing on Mobile Devices ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | M. H. K. Alser, J. Gómez Luna | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Genome analysis is the foundation of many scientific and medical discoveries, and serves as a key enabler of personalized medicine. This analysis is currently limited by the inability of existing technologies to read an organism’s complete genome. Instead, a dedicated machine (called sequencer) extracts a large number of shorter random fragments of an organism’s DNA sequence, known as reads. Small, handheld sequencers such as ONT MinION and Flongle make it possible to sequence bacterial and viral genomes in the field, thus facilitating disease outbreak analyses such as COVID-19, Ebola, and Zika. However, large, capable computers are still needed to perform genome assembly, which tries to reassemble read fragments back into an entire genome sequence. This limits the benefits of mobile sequencing and may pose problems in rapid diagnosis of infectious diseases, tracking outbreaks, and near-patient testing. The problem is exacerbated in developing countries and during crises where access to the internet network, cloud services, or data centers is even more limited. In this course, we will cover the basics of genome analysis to understand the speed-accuracy tradeoff in using computationally-lightweight heuristics versus accurate computationally-expensive algorithms. Such heuristic algorithms typically operate on a smaller dataset that can fit in the memory of today’s mobile device. Students will experimentally evaluate different heuristic algorithms and observe their effect on the end results. This evaluation will give the students the chance to carry out a hands-on project to implement one or more of these heuristic algorithms in their smartphones and help the society by enabling on-site analysis of genomic data. The course is conducted in English. Course website: https://safari.ethz.ch/projects_and_seminars/doku.php?id=genome_seq_mobile | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lecture notes | See: https://safari.ethz.ch/projects_and_seminars/doku.php?id=genome_seq_mobile | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Literature | Learning Materials =============== 1. A survey on accelerating genome analysis: https://arxiv.org/pdf/2008.00961 2. A detailed survey on the state-of-the-art algorithms for sequencing data: https://arxiv.org/pdf/2003.00110 3. An example of how to accelerate genomic sequence matching by two orders of magnitude with the help of FPGAs or GPUs: https://arxiv.org/abs/1910.09020 4. An example of how to accelerate read mapping step by an order of magnitude and without using hardware acceleration: https://arxiv.org/pdf/1912.08735 5. An example of using a different computing paradigm for accelerating read mapping step and improving its energy consumption: https://arxiv.org/pdf/1708.04329 6. Two examples on using software/hardware co-design to accelerate genomic sequence matching by two orders of magnitude: https://arxiv.org/abs/1604.01789 https://arxiv.org/abs/1809.07858 7. An example of a purely software method for fast genome sequence analysis: http://www.biomedcentral.com/content/pdf/1471-2164-14-S1-S13.pdf | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Prerequisites / Notice | Prerequisites of the course: - No prior knowledge in bioinformatics or genome analysis is required. - A good knowledge in C programming language and programming is required. - Interest in making things efficient and solving problems | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-37L | Projects & Seminars: Data-Centric Architectures: Fundamentally Improving Performance and Energy ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 3 credits | 3P | J. Gómez Luna | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Data movement between the memory units and the compute units of current computing systems is a major performance and energy bottleneck. From large-scale servers to mobile devices, data movement costs dominate computation costs in terms of both performance and energy consumption. For example, data movement between the main memory and the processing cores accounts for 62% of the total system energy in consumer applications. As a result, the data movement bottleneck is a huge burden that greatly limits the energy efficiency and performance of modern computing systems. This phenomenon is an undesired effect of the dichotomy between memory and the processor, which leads to the data movement bottleneck. Many modern and important workloads such as machine learning, computational biology, graph processing, databases, video analytics, and real-time data analytics suffer greatly from the data movement bottleneck. These workloads are exemplified by irregular memory accesses, relatively low data reuse, low cache line utilization, low arithmetic intensity (i.e., ratio of operations per accessed byte), and large datasets that greatly exceed the main memory size. The computation in these workloads cannot usually compensate for the data movement costs. In order to alleviate this data movement bottleneck, we need a paradigm shift from the traditional processor-centric design, where all computation takes place in the compute units, to a more data-centric design where processing elements are placed closer to or inside where the data resides. This paradigm of computing is known as Processing-in-Memory (PIM). This is your perfect P&S if you want to become familiar with the main PIM technologies, which represent "the next big thing" in Computer Architecture. You will work hands-on with the first real-world PIM architecture, will explore different PIM architecture designs for important workloads, and will develop tools to enable research of future PIM systems. Projects in this course span software and hardware as well as the software/hardware interface. You can potentially work on developing and optimizing new workloads for the first real-world PIM hardware or explore new PIM designs in simulators, or do something else that can forward our understanding of the PIM paradigm. The course is conducted in English. The course has two main parts: Weekly lectures on processing-in-memory. Hands-on project: Each student develops his/her own project. Course website: https://safari.ethz.ch/projects_and_seminars/ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lecture notes | See: https://safari.ethz.ch/projects_and_seminars/ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Literature | Learning materials ============ Summary papers about recent research in PIM. Link Link Link PIM Simulators. Ramulator-PIM: A version of Ramulator simulator for PIM. https://github.com/CMU-SAFARI/ramulator-pim DAMOV simulator. https://github.com/CMU-SAFARI/DAMOV UPMEM SDK documentation: The first real-world PIM architecture. https://sdk.upmem.com/2021.3.0/ An example recent study of 3D-stacked PIM for consumer workloads. Link An example recent study of lightweight PIM functionality on 3D-stacked memory: Link An example recent study of a PIM accelerator for graph processing. Link An example recent study of a Processing-using-Memory system. https://people.inf.ethz.ch/omutlu/pub/ambit-bulk-bitwise-dram_micro17.pdf https://people.inf.ethz.ch/omutlu/pub/SIMDRAM_asplos21.pdf | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Prerequisites / Notice | Prerequisites of the course: - Digital Design and Computer Architecture (or equivalent course). - Familiarity with C/C++ programming. - Interest in future computer architectures and computing paradigms. - Interest in discovering why things do or do not work and solving problems - Interest in making systems efficient and usable | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-38L | Projects & Seminars: Controlling Biological Neuronal Networks Using Machine Learning ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. Course can only be registered for once. A repeatedly registration in a later semester is not chargeable. | W | 3 credits | 2P | J. Vörös | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | The way memory and learning is achieved in the brain is an unsolved problem. Due to its relative simplicity, in-vitro neuroscience can help us discover the fundamentals of information processing in the brain. For this we can simulate a small number of biological neurons on top of an array of microelectrodes. Such an approach allows us to simulate the electrical activity of the neurons when they get stimulated. Following this approach, we can investigate biological neural networks, that have about 5-50 neurons and a controlled network architecture. Still, their behavior remains highly unpredictable. Therefore, it is not yet clear how such networks need to be stimulated electrically in order to control their behavior. However, we can use machine learning to find a mapping between a stimulus and a desired response. More specifically, we can use reinforcement learning, since finding the right stimulation pattern is an instance of the so called multi-armed bandit problem. This P&S consists of two parts. In the first part we will introduce you to the way neurons can be simulated. You will learn how neurons work and how they communicate. The second part will be about machine learning. We will discuss the basics of both artificial neural networks (ANN) and reinforcement learning. As homework exercises you will implement a reward function for a provided reinforcement learner, which will control your biological networks. In addition you will implement an ANN, that replaces unsatisfactorily performing stimulation patterns with new patterns, that this network evaluates to perform better. If the current situation will allow, the developed ANNs will be tested on real neurons in our laboratory. This P&S will be given in English. In total, the P&S takes 8 afternoons and about 50 hours of homework (ANN implementation). | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-39L | Projects & Seminars: Python for Science & Machine Learning ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. Course can only be registered for once. A repeatedly registration in a later semester is not chargeable. | W | 3 credits | 3P | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | This beginner course to programming with Python - with a focus on applications in science and technology - is an ideal starting point for later courses. We will start with an introduction to the dev environment and tools for effective development to get you started. Then we will learn the basics of Python with exercises, and discover popular modules for data processing and visualisation that will be useful for your later studies and career. We conclude with an introduction to popular machine learning techniques and some time for you to implement your own small free-style projects. By the end of the semester, you will - be familiar with your PC’s command-line interface and know how to use available dev environments effectively. - have learned the basics of Python and be able to write basic programs that do what you want (most of the time) with the help of modules. - be able to process, visualize and analyze numerical data, e.g. lab measurements, images, etc. - have first experience with machine learning techniques - maintain your first git repository and know how to collaborate with others on coding projects. Language: English / German (if necessary) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-41L | Projects & Seminars: Memory Design: From Architecture Down to Basic Cells ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. Course can only be registered for once. A repeatedly registration in a later semester is not chargeable. | W | 3 credits | 3P | M. Luisier | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | What is the cache memory and how much of it does a PC need? What is the difference between DRAM and SRAM? What are bit lines, word lines, column decoders and sense amplifiers? What does precharging mean and where is it used? How does a memory cell look on silicon and how is it manufactured? You will learn these and many other things in this P&S. Memories are important components in all modern electronic devices (e.g: computer, smartphone, TV, ...). Depending on the area of application, an engineer can look at the storage system from different perspectives. This P&S gives an overview of these different perspectives and explains the relationships between them. Since these different perspectives are not only available for memory but for all integrated circuits in general, this P&S will help you to classify further specialized knowledge in a broader context. During the exercise part of the seminar, you will work with various simulation programs. These include sophisticated programs used by engineers in research and development. So you are going to practice on professional software, and during the simulations (exercise part) and group work / lectures (seminar part) you are going to develop basic knowledge that you can later deepen during the specialized lectures. According to the different perspectives, the P&S "Basic Memory Design" consists of three parts of roughly the same length: - System Design: In this part you are going to learn the various current storage types from the system developer point of view. What can you achieve? How are they built into circuits in order to obtain a storage system that offers the right size and speed with acceptable energy consumption? Since there are many different types of storage, the participants will study data sheets individually and will discuss them with the P&S assistants as part of a lecture (seminar part). With a simple cache simulator you will examine the influence of the design parameters in a memory hierarchy. - Circuit Design: In this part you are going to learn the memory as an electronic circuit. How the transistors have to be interconnected in order to be able to write, save and read out data? How should these transistors be dimensioned in order to achieve the desired speed or energy efficiency? With simulations you will experience how the engineer examines and optimizes such circuits. - Physical Design: This part goes even deeper. Millions of transistors on a small silicon wafer form a modern memory chip. How are the memory cells produced on the chip? What does a memory cell look like? How is the memory cell optimized? With the help of modern simulation tools, you will get to know the design practices that are used during development today. You will also learn about the methods and technologies used to manufacture modern integrated circuits. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competencies![]() |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-44L | Projects & Seminars: Understanding and Designing Modern SSDs (Solid-State Drives) ![]() Only for Electrical Engineering and Information Technology BSc. Course can only be registered for once. A repeatedly registration in a later semester is not chargeable. | W | 3 credits | 3P | S. Sadrosadati | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | NAND flash memory is the de facto standard for architecting a storage device in modern computing systems. As modern computing systems process a large amount of data at an unprecedented scale, a storage device needs to meet high requirements on storage capacity and I/O performance. A NAND flash-based solid-state drive (SSD) can provide orders-of-magnitude higher I/O performance compared to traditional hard-disk drives (HDDs), with a much lower cost-per bit value over SSDs based on emerging non-volatile memory (NVM) technologies. NAND flash memory has several unique characteristics, such as the erase-before write property (i.e., a flash cell needs to be first erased before programming it), limited lifetime (i.e., a cell cannot reliably store data after experiencing a certain number of program/erase (P/E) cycles), and large operation units (e.g., modern NAND flash memory typically reads/writes data in a page (e.g., 16 KiB) granularity). To achieve high performance and large capacity of the storage system while hiding the unique characteristics of NAND flash memory, it is critical to design efficient SSD firmware, commonly called Flash-Translation Layer (FTL). An FTL is responsible for many critical management tasks, such as address translation, garbage collection, wear leveling, and I/O scheduling, which significantly affect the performance, reliability, and lifetime of the SSD. In this course, we will cover how a modern NAND flash-based SSD is organized and operates, from the basics of underlying NAND flash devices and various SSD-management tasks at the FTL level. We will also examine other emerging memory technologies for building SSDs, such as Phase Change Memory, 3D XPoint (e.g., Intel Optane SSD) and more. You will help build a practical SSD simulator by refactoring MQSim, a state-of-the-art simulator for high-end SSDs, to support advanced features of modern NAND flash chips and essential SSD-management tasks. This will allow you to have the chance to obtain a comprehensive background in modern storage systems and research experience on system optimization with rigorous evaluation. The course is conducted in English. The course has two main parts: Weekly lectures on modern NAND flash-based SSDs Hands-on project to refactor MQSim Course website: https://safari.ethz.ch/projects_and_seminars/ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lecture notes | See: https://safari.ethz.ch/projects_and_seminars/ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Literature | Learning Materials ============ Inside NAND Flash Memories: https://search.library.ethz.ch/permalink/f/823s1o/ELENDING603606 Inside Solid State Drives (SSDs): https://search.library.ethz.ch/permalink/f/823s1o/ELENDING1030264 MQSim, an open-source multi-queue SSD simulator Source code: https://github.com/CMU-SAFARI/MQSim Paper: https://people.inf.ethz.ch/omutlu/pub/MQSim-SSD-simulation-framework_fast18.pdf An example of how to improve SSD performance by optimizing the I/O scheduling policy of the FTL: Link Examples of how to improve SSD reliability by exploiting physical characteristics of modern NAND flash memory: Link Link https://arxiv.org/pdf/1706.08642.pdf Examples of how to improve the security and privacy of stored data in SSDs: Link Link | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Prerequisites / Notice | Prerequisites of the course: - No prior knowledge of NAND flash-based storage systems is required. - Digital Design and Computer Architecture (or equivalent course) - Good knowledge of C/C++ programming language is required. - Interest in system optimizations | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-45L | Projects & Seminars: Robotic Maze Solving with a TI-RSLK Robot (RMaze) ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. Course can only be registered for once. A repeatedly registration in a later semester is not chargeable. | W | 3 credits | 3P | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Microcontroller programming (C) – Peripherals Interfacing using a MSP433 MCU – Control of a Robot in a maze The course will focus on teaching how to build and program a Texas Instrument robotic system learning kit (TI-RSLK). It is a robot kit, which includes a 2 wheeled robot, a line sensor to determine lines on the floor as well as sensors to recognize walls. The robot is driven by a MSP432 state of the art ARM Cortex M4 processor. This course will give the students the opportunity to learn how to program the microcontroller of this robot to navigate in a small maze. For this, the students will learn how to control the motors and, consequently the movement of the robot with the peripherals of the microcontroller. Next to the movement, also the control and readout of the attached sensors will be part of the P&S course. Once the students are able to read sensor values and control the motors of the robot, this course will conclude with a 4-week project. Within this project the students will design their own algorithm, such that the robot can navigate autonomously within a maze. A small competition at the end of the P&S will find the fastest robot of the group. The course will be taught in English by the new D-ITET center for Project-based learning, the programming toolchain will be installed on the student’s own laptop. Experience with microcontroller programming (C) is an advantage, however not required. A short introduction will be given during the course. This course will be taught in English or in German if necessary. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-46L | Projects & Seminars: Embedded Systems With Drones ![]() Only for Electrical Engineering and Information Technology BSc. Course can only be registered for once. A repeatedly registration in a later semester is not chargeable. | W | 4 credits | 4P | M. Magno | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Microcontrollers - Programming in C – Drones – Autonomous Drones – Embedded System – Sensors. Drones can be fun to use but understanding the hardware and software and building and programming them to be intelligent and autonomous is even better. This course gives the basis of the embedded systems having the drones as the primary target. The course will introduce embedded systems and, in particular, the microcontroller ARM Cortex-M, focusing on all the crucial blocks such as Interrupts, GPIO, ADC's, Timers, and Serial communication protocols. Apart from the core topics, real-time and power-efficient algorithms for attitude and motor control are also discussed, making the drone efficient. Finally, exciting drone exercises are supported in the course to experiment with the development kit. The course will end with a 4-5 weeks project where the students will make the drone fly with some specific goal. It is not required any previous knowledge except C language. The course will be taught in English and organized by the new Project-Based Learning center. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-47L | Projects & Seminars: Machine Learning on Smart Phone ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. Course can only be registered for once. A repeatedly registration in a later semester is not chargeable. | W | 3 credits | 3P | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Machine Learning with Smart Phone Sensors –Programming Android Phones – Neural Networks – Keras/Tensor Flow- Projects and App on smartphones Smartphones have several sensors that can acquire much useful information, for instance where we are, what we are doing, with whom we are together, what is our constitution, what are our needs. Based on this information our 'smartphone' offers us the appropriate computational power to process them in loco without sending the sensor data to the cloud. This course focus on giving the bases of machine learning and embedded systems. The student will learn the tools to implement a machine learning algorithm, such as Tensor Flow and others in their android phones to have an advanced smartphone. The course will end with 4 weeks project where the students can target a specific application scenario. It is not required any previous experience In machine learning. Phyton is a plus but the basis of phyton will be given in the course to be able to complete the project. The course will be taught in English and organized by the new Project-based Learning center. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-48L | Projects & Seminars: Introduction to Program Nao Robots for Robocup Competition ![]() Only for Electrical Engineering and Information Technology BSc. Course can only be registered for once. A repeatedly registration in a later semester is not chargeable. | W | 3 credits | 3P | M. Magno | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Programming Robots – Sensors- Humanoid Robot. NAO robots from Softbank are the leading humanoid robot being used in research and education worldwide. Robotics is the fastest growing and most advanced technology used in education and research. The main goal of this course is to introduce and allowing the students to learn how to program an NAO humanoid robot to make him walk, talking, watching objects understanding the human, and reacting to external input. The Nao Robots used in this course are equipped with many sensors: Tactile Sensors, Ultrasonic sensors, A Gyro, An Accelerometer, Force Sensors, Infrared sensors, 2 HD Cameras, 4 Microphones, and high accuracy digital encoders on each joint. It has two processors on board: an Intel Atom 1.6Ghz (The main computer includes SSD drive, WiFi, Bluetooth, and wired network) and an additional ARM-9 processor in its chest. The course will introduce the software package and the full SDK and API. The students will learn how to program ( mainly in C and Phyton) the robot to access the full functionality. To improve the hands-on skills of students the course will end with a 5 weeks project where the students in the group will compete in a small soccer game where the robots will play the game following and kicking a red ball. It is not requested any previous knowledge but programming skills are a plus. The course will be taught in English and organized by the new Project-based Learning center. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-49L | Projects & Seminars: Smart Patch Projects ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. Course can only be registered for once. A repeatedly registration in a later semester is not chargeable. | W | 4 credits | 4P | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Wearable devices, PCB Design, Firmware developing, multi-sensors, Communication. The Smart Patch project will design autonomous, low power and mesh enabled multi-sensor wearable smart patches. They will be based on the always-on smart sensing paradigm to continuously acquire process and stream physiological data in real-time. They can be trained to autonomously detect illness symptoms or other physical conditions, such as stress. The students will work in a team to design a sub-block of the smart patch. According to the students' background, they will be associated swith designing the hardware or the firmware. Together in a team, they will learn how to structure problems and identify solutions, system analysis, and simulation, as well as presentation and documentation techniques. They will get access to D-ITET labs and state-of-the-art engineering tools (Matlab, Simulink, Firmware development IDE, PCB Design, etc.) The projects will be done under the Smart Patches: a flagship project for D-ITET students. (pbl.ee.ethz.ch) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-51L | Projects & Seminars: Programming Heterogeneous Computing Systems with GPUs and other Accelerators ![]() Only for Electrical Engineering and Information Technology BSc. Course can only be registered for once. A repeatedly registration in a later semester is not chargeable. | W | 3 credits | 3P | O. Mutlu, J. Gómez Luna | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | The increasing difficulty of scaling the performance and efficiency of CPUs every year has created the need for turning computers into heterogeneous systems, i.e., systems composed of multiple types of processors that can suit better different types of workloads or parts of them. More than a decade ago, Graphics Processing Units (GPUs) became general-purpose parallel processors, in order to make their outstanding processing capabilities available to many workloads beyond graphics. GPUs have been a critical key to the recent rise of Machine Learning and Artificial Intelligence, which took unrealistic training times before the use of GPUs. Field-Programmable Gate Arrays (FPGAs) are another example computing device that can deliver impressive benefits in terms of performance and energy efficiency. More specific examples are (1) a plethora of specialized accelerators (e.g., Tensor Processing Units for neural networks), and (2) near-data processing architectures (i.e., placing compute capabilities near or inside memory/storage). Despite the great advances in the adoption of heterogeneous systems in recent years, there are still many challenges to tackle, for example: - Heterogeneous implementations (using GPUs, FPGAs, TPUs) of modern applications from important fields such as bioinformatics, machine learning, graph processing, medical imaging, personalized medicine, robotics, virtual reality, etc. - Scheduling techniques for heterogeneous systems with different general-purpose processors and accelerators, e.g., kernel offloading, memory scheduling, etc. - Workload characterization and programming tools that enable easier and more efficient use of heterogeneous systems. If you are enthusiastic about working hands-on with different software, hardware, and architecture projects for heterogeneous systems, this is your P&S. You will have the opportunity to program heterogeneous systems with different types of devices (CPUs, GPUs, FPGAs, TPUs), propose algorithmic changes to important applications to better leverage the compute power of heterogeneous systems, understand different workloads and identify the most suitable device for their execution, design optimized scheduling techniques, etc. In general, the goal will be to reach the highest performance reported for a given important application. The course is conducted in English. The course has two main parts: Weekly lectures on GPU and heterogeneous programming. Hands-on project: Each student develops his/her own project. Course website: https://safari.ethz.ch/projects_and_seminars/doku.php?id=heterogeneous_systems | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Content | See: https://safari.ethz.ch/projects_and_seminars/doku.php?id=heterogeneous_systems for past examples. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lecture notes | See: https://safari.ethz.ch/projects_and_seminars/doku.php?id=heterogeneous_systems | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Literature | Learning Materials ============ 1. An introduction to SIMD processors and GPUs: http://www.youtube.com/watch?v=hOeIkAYraTE 2. An introduction to GPUs and heterogeneous programming: http://www.youtube.com/watch?v=y40-tY5WJ8A 3. Example recent studies of FPGA and GPU implementation for bioinformatics: GateKeeper: FPGA for bioinformatics (Bioinformatics 2017): Link SneakySnake: Pre-alignment filter on FPGA and GPU (Bioinformatics 2020): Link 4. An example recent study of a suite of heterogeneous benchmarks: Chai: heterogeneous benchmarks (ISPASS 2017): https://chai-benchmarks.github.io/assets/ispass17.pdf 5. An example recent study of a medical image application on GPU: GPU for medical imaging (CMPB 2020): Link 6. Example studies of programming tools and performance portability on heterogeneous systems: Boyi: execution models for FPGAs (FPGA 2020): Link Zorua: hardware support for GPU performance portability (MICRO 2016): Link Locality descriptor: Cross-layer abstraction to express data locality on GPUs (ISCA 2018): Link 7. Example studies of scheduling techniques for heterogeneous systems: Thread scheduling (MICRO 2011): https://people.inf.ethz.ch/omutlu/pub/large-gpu-warps_micro11.pdf DASH: memory scheduling (TACO 2016): Link | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Prerequisites / Notice | Prerequisites of the course: - Digital Design and Computer Architecture (or equivalent course). - Familiarity with C/C++ programming and strong coding skills. - Interest in future computer architectures and computing paradigms. - Interest in discovering why things do or do not work and solving problems - Interest in making systems efficient and usable | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-53L | Projects & Seminars: Motion Sensing Technologies for Magnetic Resonance Imaging (MRI) ![]() Does not take place this semester. Only for Electrical Engineering and Information Technology BSc. Course can only be registered for once. A repeatedly registration in a later semester is not chargeable. | W | 4 credits | 4P | K. P. Prüssmann | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Current MRI scans are limited by patient motion. In clinics, radiologists are often confronted with images with severe motion artefacts in their images. They either have to make a diagnosis although the image artefacts were they could miss crucial information, or they have to send the patient back into the scanner for reacquisition. Such reacquisition might inflict additional costs in the six-figure range per scanner per year. Further, in research, MRI images from ultra-high field systems are already limited by motion from the cardiobalistic and respiratory movement. Resulting in subpar performance if not addressed appropriately. The key to overcoming such motion artefacts is estimating the motion and correct for it. Preferably this is done prospective in real-time or otherwise afterwards retrospective in the image reconstruction. Such methods are instrumental in brain imaging since the brain's movement is well described by the rigid body behaviour of the skull. To do such motion correction, one needs a motion-sensing technology to measure the movement of the human skull with high precision, accuracy and temporal resolution. All this has to be done while being integrated into an MRI machine where powerful static magnetic fields are present, kW of pulsed RF power and MVA of changing magnetic field gradients are present. In this P&S we explore different motion sensing technologies suitable for deployment in an MRI machine. What you can expect is that we discuss the theory of multiple sensing technologies and then implement an optical, shortwave RF and NMR phase motion sensor. We will spend most of our time in the lab constructing such sensors and testing them on our robotic test bench. Finally, we would also experiment in our MRI facilities, where we would perform motion correction experiments. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-54L | Projects & Seminars: Optics and Spectroscopy Lab ![]() Only for Electrical Engineering and Information Technology BSc. Course can only be registered for once. A repeatedly registration in a later semester is not chargeable. | W | 3 credits | 4P | J. Leuthold | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | The goal of this P&S is to learn the basics of working with optics and how to assemble optical systems. It is intended to show the practical side to the many optics lectures that are offered at D-ITET. The course will give a very brief introduction on laser safety, basic building blocks for optics and information on how to handle such elements. The following classes allow the students to test very basics properties of lenses and lasers and how the corresponding optomechanics can be used to arrange a simple setup. After this, the different student groups rotate through four different experiments where they get the chance to build and align different optical setups and perform various measurements. No prior knowledge is required. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-56L | Projekte & Seminare: Intelligent Architectures via Hardware/Software Cooperation ![]() Only for Electrical Engineering and Information Technology BSc. Course can only be registered for once. A repeatedly registration in a later semester is not chargeable. | W | 3 credits | 3P | O. Mutlu | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Modern general-purpose processors are agnostic to an application’s high-level semantic information. Hence, they employ prediction-based techniques to enable computational and memory optimizations, such as prefetching, cache management policies, memory data placement, instruction scheduling, and many others. As such, the potential of such optimizations is limited due to the limited information the underlying hardware can discover on its own and such optimizations come with large area, power and complexity overheads required by the hardware for prediction purposes. Purely-hardware optimizations cannot achieve their performance potential and waste power, complexity and hardware area, since they are not aware of the application characteristics. On the other hand, purely-software optimizations are fundamentally tied up and limited by the underlying hardware. A promising way to increase the performance of modern applications is to co-design software and hardware. Hence, lately both industry and academia are making serious attempts to improve performance, energy and security using hardware/software cooperative schemes such as application-specific hardware accelerators (e.g., Google’s Tensor Processing Unit) and application-specific extensions in general-purpose processors (e.g., Media Engine in Apple M1). In this course, we will explore several different topics around hardware/software co-design such as: (i) new hardware/software interfaces (e.g., virtual memory, instruction set architecture) to enhance performance, energy and security, (ii) hardware/software co-design schemes to improve the performance of the memory subsystem in killer memory-intensive applications (e.g., sparse and irregular workloads), (iii) hardware/software cooperative machine-learning-based techniques for different microarchitectural components such as prefetchers, caches and branch predictors, which would continuously learn from the vast amount of memory accesses seen by a processor and adapt to the varying workload and system conditions. If you are enthusiastic about working hands-on to design both software and hardware, this is your P&S. You will have the opportunity to study modern applications, propose software changes to better match the underlying hardware components, design new hardware components that better match the overlying software and come up with new machine-learning techniques to design efficient microarchitectural components. You will also learn how to program industry-supported microarchitectural simulators and study the performance of modern workloads after your hardware/software modifications. Preferable: - Hands-on experience with Machine Learning frameworks (depends on the topic you choose) The course is conducted in English. Course website: https://safari.ethz.ch/projects_and_seminars/ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lecture notes | See: https://safari.ethz.ch/projects_and_seminars/ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Literature | Learning materials ============ [1] Onur Mutlu,"Intelligent Architectures for Intelligent Machines" Invited Keynote Paper in Proceedings of the 2020 International Symposia on VLSI (VLSI): Link [2] Kanellopoulos et al. "SMASH: Co-designing Software Compression and Hardware-Accelerated Indexing for Efficient Sparse Matrix Operations", Proceedings of the 52nd International Symposium on Microarchitecture (MICRO 2019): Link [3] Bera et al. "Pythia: A Customizable Hardware Prefetching Framework Using Online Reinforcement Learning" Proceedings of the 54th International Symposium on Microarchitecture (MICRO 2021): Link [4] Hajinazar et al. "The Virtual Block Interface: A Flexible Alternative to the Conventional Virtual Memory Framework" Proceedings of the 47th International Symposium on Computer Architecture (ISCA 2020): https://people.inf.ethz.ch/omutlu/pub/VBI-virtual-block-interface_isca20.pdf [5] Vijaykumar et al. "A Case for Richer Cross-layer Abstractions: Bridging the Semantic Gap with Expressive Memory", Proceedings of the 45th International Symposium on Computer Architecture (ISCA 2018): Link [6] Vijaykumar et al. “MetaSys: A Practical Open-Source Metadata Management System to Implement and Evaluate Cross-Layer Optimizations” TACO 2022: https://arxiv.org/abs/2105.08123 [7] Vijaykumar et al. "The Locality Descriptor: A Holistic Cross-Layer Abstraction to Express Data Locality in GPUs" Proceedings of the 45th International Symposium on Computer Architecture (ISCA 2018): Link [8] Besta et al. "SISA: Set-Centric Instruction Set Architecture for Graph Mining on Processing-in-Memory Systems", Proceedings of the 54th International Symposium on Microarchitecture (MICRO 2021): https://people.inf.ethz.ch/omutlu/pub/SISA-GraphMining-on-PIM_micro21.pdf | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Prerequisites / Notice | Prerequisites of the course: - Digital Design and Computer Architecture (or equivalent course). - Familiarity with C/C++ programming and strong coding skills. - Interest in future computer architectures and computing paradigms. - Interest in discovering why things do or do not work and solving problems - Interest in making systems efficient and usable | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-57L | Projects & Seminars: Wearable Ultrasound: Tools and Technologies ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 2 credits | 2P | A. Cossettini | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Ultrasound is one of the most used medical imaging techniques and it enables many applications, including the monitoring of musculoskeletal activity during movement, the imaging of carotid artery, and the control of prosthetic devices for human-machine interfaces. Recent developments showcased wearable ultrasound probes operating at minimal power consumption, enabling multi-day continuous monitoring of physiological parameters, and many companies and research centers are actively working on the development of the next generation of truly-wearable ultrasound for a number of monitoring and diagnostics applications. To sustain such recent developments, it is important to be familiar with all sub-components (hardware and software) of such biomedical systems. The goal of this course is the development of the main skills required for successfully developing a wearable ultrasound probe. The students will learn about ultrasound basics, transducer control, analog front-end/analog-to-digital converter configurations, signal processing for ultrasound, beamforming and generation of images, microcontroller-based wireless communication, and practical procedures for performing ultrasound experiments. The course will also introduce the students to Python (applied to ultrasound signal processing) and to Nordic (nRF52 family) microcontrollers. The course will be taught in English. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Content | Ultrasound is one of the most used medical imaging techniques and it enables many applications, including the monitoring of musculoskeletal activity during movement, the imaging of carotid artery, and the control of prosthetic devices for human-machine interfaces. Recent developments showcased wearable ultrasound probes operating at minimal power consumption, enabling multi-day continuous monitoring of physiological parameters, and many companies and research centers are actively working on the development of the next generation of truly-wearable ultrasound for a number of monitoring and diagnostics applications. To sustain such recent developments, it is important to be familiar with all sub-components (hardware and software) of such biomedical systems. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-58L | Projekte & Seminare: Autonomous Cars and Robots ![]() Only for Electrical Engineering and Information Technology BSc. The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 4 credits | 4P | M. Magno | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Autonomous mobile robotics is a promising field that spans from food delivery robots to the Perseverance Mars rover. In this P&S you will be introduced to the fundamental building blocks of robotics, by hands on experience in the context of the F1TENTH autonomous racing and the Robot Operating System (ROS)! Autonomous racing pushes the boundaries in algorithmic design and implementation in the fields of perception, planning and control. Thus it serves researchers as a limits test for autonomous driving and is an important building step in the field of general self driving and AI. F1TENTH is an open-source autonomous racing competition involving a racing car in the scale of 1:10. This P&S allows you to apply hands-on robotics and is the right fit for you if you want to further delve into this fascinating field of embedded systems, perception, planning and control. Lastly, you will get experience in the widely used ROS framework. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Prerequisites / Notice | - Can use the Linux-Terminal (e.g. navigating folder structure and ssh) - Python (e.g. basic loops, OOP) - Interest in autonomous driving - 20GB of free space on your laptop | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-59L | Projekte & Seminare: Hands-On Deep Learning ![]() ![]() Course can only be registered for once. A repeatedly registration in a later semester is not chargeable. | W | 1.5 credits | 2P | R. Wattenhofer | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | The objective of this P&S is to expose students to both common and cutting-edge neural architectures and to build intuition about their inner working by the means of examples. Students learn about various network structures as building blocks and use them to solve worked examples and course challenges. After attending this course, students will be familiar with multi-layer perceptrons, convolutional neural networks, recurrent neural networks, transformer encoders, graph convolutional/isomorphism/attention networks, and autoencoders. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Content | This P&S introduces deep learning through the PyTorch framework in a series of hands-on examples, exploring topics in computer vision, natural language processing, graph neural networks, and representation learning. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lecture notes | Python Notebooks will be distributed to students before every session. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
227-0085-61L | Projects & Seminars: Renewable Energies and Net-Zero Emissions Goal in Switzerland ![]() The course unit can only be taken once. Repeated enrollment in a later semester is not creditable. | W | 2 credits | 2P | C. Franck, G. Hug | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Abstract | The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Learning objective | Das Thema Energie ist aktueller denn je: Klimawandel, Versorgungssicherheit, Benzinpreise, Winterstromlücke, Energiestrategie, ….. die Liste ist lang. Aber was können und sollten wir als Gesellschaft tun? Ist es richtig auf Elektroautos umzusteigen und wo kommt der benötigte Strom her? Wären Autos mit Wasserstoffantrieb nicht viel besser? Und wenn ja, als Verbrennungsmotor oder mit Brennstoffzelle? Wieviel Fläche kann und muss in der Schweiz mit Solarzellen bedeckt werden um genügend grünen Strom zu erzeugen wenn die AKWs abgeschaltet sind? Und sind diese auf den Hausdächern im Mittelland, oder über und neben den Autobahnen, oder in den Alpenregionen? Ist nicht das Risiko eine Blackouts grösser je mehr erneuerbare Energien wir nutzen? Und warum sollen Atomkraftwerke davor schützen? Oder betrifft das eher die Winterstromlücke? Die Liste der Fragen ist lang und deren Beantwortung vielschichtiger als man denkt. In diesem Kurs beschäftigen wir uns mit verschiedenen Themen zur Frage «Energiewende in der Schweiz». Sie bearbeiten in Gruppen jeweils ihr eigenes Projekt und beantworten eine selber gewählte Fragestellung. Sie werden dabei sowohl experimentieren als auch abschätzende Berechnungen durchführen. Zum Abschluss des P&S präsentieren die einzelnen Gruppen die Erkenntnisse aus ihren Untersuchungen und fassen diese in einem Bericht zusammen. |