Course description
This course on Information, Computation and Communication (ICC) was introduced in September 2013. It provides an introduction to computer and communication sciences for all first year students at EPFL (except those in architecture).
After the first introductory lecture, the course is divided into three modules:
- 1. Computation
- Which problems are solvable? Which problems are efficiently solvable? And how? In this module, students learn the basic principles of algorithms and how to evaluate their complexity. An introduction to Turing’s computability theory is presented.
- 2. Information and Communication
- How do you convert physical signals into sequences of 0’s and 1’s, and reciprocally? In this module, students learn the basic principles of signal processing, data compression, and error correction, with Shannon’s entropy as a key ingredient.
- 3. Systems
- The third module exposes students to how a computer actually works. In particular, Von Neumann’s processor architecture is presented. And the course concludes with a final lecture on security.
Pragmatics
At a practical level, this course has a coefficient 3 in first year, with 2 hours of lectures and 1 hour of exercises per week. The exercises and exams are on paper. The students also have the opportunity to implement ICC concepts in the first-year programming courses, which are taught concurrently.
Textbook (in french)
You can find more informations as well as the exercices’ solution here: https://archiveweb.epfl.ch/decouvrir-le-numerique.epfl.ch/
Videos
Course Videos (in french, ©Philippe Janson)
(All video clips below are in ppsx format. Please click here for video clips in mp4 format.)
Module 1: Computation
Module 2: Information and Communication
Module 3 : Systems
Wandida Videos (in french)
Exercices
Sample Exercises (in french)
(All exercises are in .pdf format)
Week 1 : Introductory lecture
Week 2: Basic principles
Week 3: Conception of algorithms
Week 4: Computability
Week 5: Representation of information
Week 6: Signal sampling and filtering
Week 7: Signal reconstruction
Week 8: Entropy
Week 9: Data compression
Related Programming Exercises (in french)
https://progmaph.epfl.ch/icc-prog.php
Course Evolution (Sept. 2018+)
Starting in September 2018, the ICC course will be merged with the concurrent programming courses, becoming a course with coefficient 6 in first year (with 3 hour of lectures and 3 hours of exercises/practice per week). The material presented in ICC will be coordinated with the programming instruction.The programming languages for this course will vary by section, in order to accommodate the needs of each field.