Vai al contenuto principale
Oggetto:
Oggetto:

Aggregate Programming for the Internet of Things

Oggetto:

Aggregate Programming for the Internet of Things

Oggetto:

Academic year 2023/2024

Teachers
Ferruccio Damiani (Titolare del corso)
Giorgio Audrito (Titolare del corso)
Gianluca Torta (Titolare del corso)
Degree course
PhD in Computer Science
Year
1st year, 2nd year, 3rd year
Teaching period
Ciclo di incontri
Type
A scelta dello studente
Credits/Recognition
6
Course disciplinary sector (SSD)
INF/01 - informatics
Delivery
Tradizionale
Language
Inglese
Attendance
Obbligatoria
Type of examination
Relazione finale
Oggetto:

Sommario del corso

Oggetto:

Program

With the ongoing explosion of data production and availability of devices with computational capabilities, traditional centralized data-processing techniques start to suffer from the increasing costs of data transfer, infrastructure, security and privacy needs. The edge/fog computing paradigm has emerged to meet these challenges, particularly for Internet of Things and open Cyber-Physical Systems. It processes data where it is generated in order to address the shortcomings of centralized techniques. However, decentralized architectures have their own challenges: handling device unreliability, data volatility, and coping with conficting goals. Aggregate Programming is a recent abstraction allowing one to program large-scale networks in a simple way, while providing strong guarantees on the resilience of the resulting behaviour under changes and unreliability. This abstraction shifts the local viewpoint of single device behaviour, to the global viewpoint of overall system behaviour; leaving the (automated) global-to-local translation to language implementation. This short course presents the Aggregate Programming abstraction, together with its commonly used distributed algorithms that have strong resilience guarantees, and its toolkit (programming language and simulator).

Oggetto:

Course delivery

Frontal lessons (with slides) and program development sessions, for a total duration of 24 hours. The meetings will be: [WARNING: these are the timetibles for the last edition of the couse -- the timetables for the current edition of the course (that will meet as much as possible the needs of the participants) will appear in March-April 2024]

- Wed 3 May 9-12
- Fri 5 May 9-12
- Tue 9 May 9-12
- Tue 16 May 9-12
- Tue 23 May 9-12
- Mon 29 May 9-11
- Tue 30 May 9-12
- Mon 5 Jun 9-11
- Tue 6 Jun 9-11.

Some of the meetings may end earlier (or start later) than the allocated time: the exact timing of each meeting will be confirmed with short notice. Further meetings will soon be allocated in May. All meetings will be physically held in Sala Seminari, 1st floor at the Department of Computer Science.

Oggetto:

Learning assessment methods

Exercises done during the program development sessions. 

Suggested readings and bibliography

Oggetto:

  • Beal, J., Pianini, D., Viroli, M.: Aggregate programming for the Internet of Things.
    IEEE Computer 48(9) (2015). https://doi.org/10.1109/MC.2015.261
  • Viroli, M., Beal, J., Damiani, F., Audrito, G., Casadei, R., Pianini, D.: From distributed coordination to field calculus and aggregate computing. J. Log. Algebraic
    Methods Program. 109 (2019). https://doi.org/10.1016/j.jlamp.2019.100486
  • Audrito, G., Casadei, R., Damiani, F., Salvaneschi, G., Viroli, M.:
    Functional Programming for Distributed Systems with XC. In Proceedings of the 36th European Conference on Object-Oriented Programming (ECOOP 2022): 20:1-20:28. https://doi.org/10.4230/LIPIcs.ECOOP.2022.20
  • Audrito, G.: FCPP: an effcient and extensible field calculus framework. In:
    Proceedings of the 1st International Conference on Autonomic Computing and
    Self-Organizing Systems, ACSOS. pp. 153{159. IEEE Computer Society (2020).
    https://doi.org/10.1109/ACSOS49614.2020.00037


Enroll
  • Open
    Enrollment opening date
    01/10/2020 at 00:00
    Oggetto:
    Last update: 06/03/2024 13:10
    Location: https://dott-informatica.campusnet.unito.it/robots.html
    Non cliccare qui!