Seminar Topics
NB! Seminar topics will be updated here at the start of the first seminar
Topics of Chinmaya Dehury
email: chinmaya.dehury@ut.ee
C1: A short review on clustering algorithms for edge computing environment
Edge computing refers to bringing the computing capacity to the edge of the network. The edge devices are equipped with a limited computing capacity. When we talk about edge computing, we need to think about the characteristics of edge data, edge resources, edge devices and many more. On the other hand clustering strategies in IoT and wireless communications are applied mostly to reduce the energy consumption and further improve the network resource utilisation. In this topic, the student needs to go through the algorithms/strategies that are specifically designed for clustering the edge data or the devices or the users.
The student need to answer following:
- What are clustering algorithms present in computer science, e.g. K-Means, Affinity Propagation (AP), Mean-shift, Spectral clustering, etc. ?
- The general working principles of some (2-3) popular clustering algorithms?
- Comparison of clustering algorithms? (features, applicability, limitations, advantages, are they lightweight, scalability, reliability, adaptive and dynamic, etc,)
Some articles to start investigating:
- Clustering Algorithms on Low-Power and High-Performance Devices for Edge Computing Environments, https://www.mdpi.com/1424-8220/21/16/5395
- Task Classification and Scheduling Based on K-Means Clustering for Edge Computing, https://doi.org/10.1007/s11277-020-07343-w
- A Comprehensive Survey of Clustering Algorithms, https://doi.org/10.1007/s40745-015-0040-1
C2: [TAKEN] X Discovery: A short survey
Discoverability mechanism lets an entity X on a network be discoverable. The entity X can be a service, a device, a network or knowledge. For instance, the service discovery protocol is used by a client device to find out about the services it can use on a server device. On the other hand, edge computing allows the IoT device generated data or client data to be processed by the nearest computing device present at the periphery of the network. This topic would focus on the study of discovery systems in edge computing, especially the study of device, service, and knowledge discovery at the edge. Some of the questions the student need to focus on, are:
- What do you mean by X discoverability?
- How the X discovery works at the edge, where X can be device, service, or knowledge?
Some of the references to start with:
- Device Discovery in D2D Communication: A Survey (https://ieeexplore.ieee.org/abstract/document/8835011)
- Service Discovery (https://www.dfki.de/~klusch/i2s/SD_essay_klusch2013.pdf)
- Towards Service Discovery and Invocation in Data-Centric Edge Networks (https://ieeexplore.ieee.org/abstract/document/8888081)
- Collaborative Learning-Based Industrial IoT API Recommendation for Software-Defined Devices: The Implicit Knowledge Discovery Perspective (https://ieeexplore.ieee.org/abstract/document/9208715)
C3: [TAKEN] A tutorial on service discovery mechanisms with serf
Serf, from Hashicorp, is a tool for cluster membership, failure detection, and orchestration that is decentralized, fault-tolerant and highly available. It is extremely lightweight: it uses 5 to 10 MB of resident memory and primarily communicates using infrequent UDP messages. In this topic, student make a tutorial on how to use serf.
- Create flask app that simply print "hello world" with the container ID/IP
- Containerize the flask app
- inside the container, also install Serf
- Run multiple such containers
- Demonstrate the use of serf in forming cluster
Best place to start with is following the official document: https://www.serf.io/intro/index.html
C4: [TAKEN] What is observability and a comparison on observability tools
Observability primarily deals with measuring and understanding the internal states of a system. For this purpose, administrators primarily relies on "logs", "metrics" and "traces". In this topic, student's responsiblity is to further dig into the concept of observabilty. Student needs to also find the tools that are used in Observability.
Research Questions:
- What are diferent observability techniques?
- How can such techniques be optimized for resource-constrained devices?
Some references to start with:
- A Survey on Observability of Distributed Edge & Container-Based Microservices, 10.1109/ACCESS.2022.3193102, https://ieeexplore.ieee.org/document/9837035
C5: [TAKEN] What is Edge Intelligence for a non-AI expert?
Edge Intelligence (EI) is often seen as the intersection of Edge Computing (EC) and Artificial Intelligence (AI), leading to two primary interpretations: (a) the deployment of AI algorithms or models on edge infrastructure, and (b) the use of AI/ML techniques to manage the resources of edge infrastructure. However, for someone without expertise in AI, or for those seeking to understand EI beyond the simple convergence of EC and AI, we need to dig deeper. What does “intelligence” mean in a broader sense? What does it signify in the context of edge infrastructure, such as in the smart city framework? Can we say edge devices are intelligent, and if so, what justifies this characterization? These are the questions that the student needs to explore to gain a comprehensive understanding of Edge Intelligence.
Some articles to start investigating:
- Edge Intelligence: The Confluence of Edge Computing and Artificial Intelligence, 10.1109/JIOT.2020.2984887, https://ieeexplore.ieee.org/document/9052677/
- Disclosing Edge Intelligence: A Systematic Meta-Survey, 10.3390/bdcc7010044, https://www.mdpi.com/2504-2289/7/1/44
C6: Light-weight open-source edge orchestrator
An edge orchestrator is responsible for managing and coordinating tasks, applications, and resources within the edge infrastructure. For instance, KubeEdge allows for managing the lifecycle of containerized applications on edge devices. In this topic, students should explore existing open-source orchestration tools, compare them, assess their capabilities and limitations, and identify any missing features.
Research Questions to investigate:
- What are the essential capabilities/features expected from an edge orchestrator?
- Which open-source orchestration tools are available?
- What capabilities do these tools offer?
- What capabilities are missing or need improvement in these tools?
Some references to start with:
- To understand edge computing:
- Management and Orchestration of Edge Computing for IoT: A Comprehensive Survey, https://doi.org/10.1109/JIOT.2023.3245611, https://ieeexplore.ieee.org/abstract/document/10045724
- Some edge computing-related tools:
- https://github.com/qijianpeng/awesome-edge-computing
- Oakestra: A Lightweight Hierarchical Orchestration Framework for Edge Computing, https://www.usenix.org/conference/atc23/presentation/bartolomeo
Your topic
You may come with your own topic.....
More topics
You may refer this doc here for more topic
Topics of Pelle Jakovits
email: jakovits@ut.ee
Topic P.1. Synthetic data generators for generic real-time realistic Smart City data
The goal of this topic is to study the approaches for synthetic IoT data generation for emulating the behavior of industrial and Smart City IoT devices. The second goal is to evaluate existing state-of-the-art synthetic data generation tools and IoT data anonymization approaches.
Research questions:
- What are the scalable solutions for generating IoT data that can mimic the behavior of real-world IoT data streams?
- Are the any automated solutions for generating synthetic IoT data based on real data that do not expose the content of the real data?
- What are the limitations of existing tools and approaches? For example: can they be used on all possible types of IoT or Smart City data?
Related research articles to start with:
- Isakovic Haris, Vanja Bisanovic, Bernhard Wally, Thomas Rausch, Denise Ratasich, Schahram Dustdar, Gerti Kappel, and Radu Grosu. Sensyml: Simulation environment for large-scale iot applications. In IECON 2019-45th Annual Conference of the IEEE Industrial Electronics Society, volume 1, pages 3024–3030. IEEE, 2019.
Topic P.2. Osmotic computing
The goal of this topic is to investigate what osmotic computing is and how it differs from the other recent models of cloud computing at the Edge: Edge computing, Fog computing, and Mist computing.
Research questions:
- What is Osmotic computing, and what differentiates it from Edge, Fog, Mist computing, and Edge Mesh?
- What are the most critical improvements that Osmotic computing promises in comparison to existing models?
- In which fields is Osmotic computing being applied in practice (in Industry or research) and what implementations exist?
Related research articles to start with:
- Villari, Massimo, et al. "Osmotic computing: A new paradigm for edge/cloud integration." IEEE Cloud Computing 3.6 (2016): 76-83.
Topic P.3. Predictive maintenance of IoT devices
System monitoring is a common activity to ensure good quality of service in applications deployed in edge environments. However due to stochastic workloads and the deployed environment of devices may be prone to outages, faults, and errors. Faults can propagate leading to performance degradation of the application and system. In sensitive IoT applications such as Healthcare and Industrial applications, a small failure is not desirable and can lead to catastrophic failure. It is important to monitor the devices by logging the data and predicting the failures in advance. Predictive maintenance is a technique of monitoring and predicting the failures in a system. For example, Memory card faults are a major problem in IoT devices, where the program or data is stored on them. There are several factors that implicitly affect the failures of the SD card such as the deployment of devices in harsh environments, development of bad blocks and malware attacks, etc.
Research questions:
- What SD card performance and quality data can be collected in real-time?
- What environment data (e.g. temperature, pressure) should be collected to augment SD card data?
- What predictive maintenance techniques have been previously applied to predict SD card failures, and how well have they worked?
Related research articles to start with:
- Civerchia, Federico, et al. "Industrial Internet of Things monitoring solution for advanced predictive maintenance applications." Journal of Industrial Information Integration 7 (2017): 4-12.
- Lamorie, Joshua, and Francesco Ricci. "MicroSD Operational Experience and Fault-Mitigation Techniques." (2015).
Topic P.4. IoT System Development Frameworks
Designing and implementing IoT systems can be complex, as it involves activities at the cloud level (storage, analysis, processing tasks), client level (applications and user-facing services), and device level (hardware, sensor/actuator device software). Usually, the technologies for these 3 levels are significantly different with little overlap. Some frameworks aim to unify this picture and aim to give a single set of tools and programming languages for designing IoT systems at all levels.
Research questions:
- What kind of use cases benefit from using a single unified language for the 3 IoT solution parts (device side, the cloud side, and the client side), and in what are possible drawbacks for other kinds of applications?
Related research articles to start with:
- Guan, G., Li, B., Gao, Y., Zhang, Y., Bu, J., & Dong, W. (2020, April). TinyLink 2.0: integrating device, cloud, and client development for IoT applications. In Proceedings of the 26th Annual International Conference on Mobile Computing and Networking (pp. 1-13).
Topic P.5. Backscatter networking for the Internet of Things
In backscatter radio communication, a device transmits data to a receiver by modulating and reflecting a signal from a third, external signal source, as opposed to generating the signal itself and sending it directly to the receiver. This approach is useful mainly due to the decreased energy requirements as the transmitter does not have to generate a radio signal itself, only remodulate it. As a result, this technology is also interesting for IoT devices. This topic studies the existing prototypes &solutions of backscatter networking for IoT Backscatter radio communication exploits the reflected backscattered signals to transmit data, where the backscattered signals can be the reflection of ambient radio frequency (RF) signals, the RF signals from the dedicated carrier emitter
Research questions:
- What are the limitations and drawbacks of using back-scatter networking for IoT?
Related research articles to start with:
- Jung, J., Ryoo, J., Yi, Y., & Kim, S. M. (2020, June). Gateway over the air: Towards pervasive internet connectivity for commodity iot. In Proceedings of the 18th international conference on mobile systems, applications, and services (pp. 54-66).
Topic P.6. Estimating the optimal size of serverless functions
Serverless is new cloud computing model for delivering the run time services as service based function level billing. It has advantages of granular scaling of fine grained servcies (functions) and helps for optimized billing. However, most of the pdevelopers ,vendors a focus on handling resource management tasks such as resource provisioning, deployment, and auto-scaling. Setting up of configeration of the serveless function left to developers and its very crucial task becuase that can lead to inconsistent costs in the system.
Research questions:
- How to decide the resource configuration of the serverless functions?
- How to estimate the function size without prior performance tests?
Related research articles to start with:
- Eismann, S., Bui, L., Grohmann, J., Abad, C., Herbst, N., & Kounev, S. (2021, December). Sizeless: Predicting the optimal size of serverless functions. In Proceedings of the 22nd International Middleware Conference (pp. 248-259).
Topic P.7. Open Source Fog computing platforms: Eclipse ioFog
Traditional approaches for Internet of Things data processing have focused on collecting data originating from different devices in private data centers or in clouds and processing it centrally. Full dependence on remote cloud services can lead to the lack of autonomy of applications in case of network degradation or failures. For example, Smart city applications that depend on logic being executed in remote clouds will not be resilient in accident and disaster scenarios when cloud services may not be accessible anymore. This has driven the implementation of Edge and Fog computing platforms, where some data processing tasks or other cloud services are moved closer to the data sources to reduce data sent to the cloud and to improve data privacy. The goal of this topic is to investigate existing open-source Edge and Fog computing frameworks and to give an overview of their architectures, involved challenges, and the current state-of-the-art in the field. The student should particularly focus on Eclipse ioFog as the reference framework.
Research questions:
- What are the main barriers in industry adopting the Fog and Edge computing models in comparison to using a cloud-centric approach?
- What are the main advantages of Eclipse ioFog compared to previous approaches for designing Fog computing platforms?
- Are platforms like Eclipse ioFog already used in large-scale industries?
Related research articles to start with:
- Willner, A., & Gowtham, V. (2020). Toward a reference architecture model for industrial edge computing. IEEE Communications Standards Magazine, 4(4), 42-48.
Other topic ideas
- Performance comparison of batch-processing vs real-time data pipelines (E.g. Apache Nifi vs Dagster)
- Automated time-series data quality monitoring and enhancement for Smart City data
- Template-based approaches for automating the configuration and implementation of data pipelines to migrate data between multiple databases or data stores.