Vai al contenuto principale
Oggetto:
Oggetto:

Aggregate Programming for the Internet of Things

Oggetto:

Aggregate Programming for the Internet of Things

Oggetto:

Academic year 2021/2022

Teaching staff
Prof. Ferruccio Damiani (Titolare del corso)
Dott. Giorgio Audrito (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:

Course delivery

Frontal lessons (with slides) and program development sessions, for a total duration of 20 hours. Frontal lessons will be delivered in blocks of (mostly) two hours, while program development sessions will be allocated in blocks of 3 hours. The first meetings will be:

  • Tuesday, April 12th 9:00-12:00
  • Thursday, April 21th 9:00-12:00
  • Friday, April 22th 9:00-12:00
  • Tuesday, April 26th 9:00-12:00

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. 

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).

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.: 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


Oggetto:
Last update: 29/03/2022 18:58
Location: https://dott-informatica.campusnet.unito.it/robots.html
Non cliccare qui!