Seminar Topics
(Supervisors marked in parenthesis)
Internet of Things
Topic supervisor: Chii Chang
IP = Intermediate Presentation
Amazon Alexa vs. Google Home vs. OpenHab
Comparing the three smart home platforms.
- [IP:1] Introduction and system architecture.
- [IP:2] Connectivity and comparability in networking, protocols, OS etc.
- [IP:3] Development complexity and community supports.
LoRA vs. SigFox vs. NB-IoT
The three major technologies and specification for the Low Power Wide-Area Network (LPWAN)-based Internet of Things (IoT). Student will study them towards produce a comparison table.
- [IP:1] Introduction of Low Power Wide-Area Network (LPWAN) for IoT.
- [IP:2] Technical Review on LoRA and LoRAWAN and SigFox.
- [IP:3] Overview of 3GPP NB-IoT and a comparison among LoRA, SigFox and NB-IoT.
IoT Standards
Review and compare the standards described in the URL below: https://www.postscapes.com/internet-of-things-protocols/
W3C Web of Things (WoT)
Today, various IoT solutions exist. Although almost all of them provide their RESTful API for the integration needs, it makes development complex and fragmented. The fragmentation issue motivates the leading industrial standard organisation W3C (who standardised World Wide Web) to start the Web of Things standardisation.
- [IP:1] WoT: Architecture https://w3c.github.io/wot-architecture/
- [IP:2] Thing Description https://w3c.github.io/wot-thing-description/
- [IP:3] Protocol Binding Templates https://w3c.github.io/wot-binding-templates/ and WoT Scripting API https://w3c.github.io/wot-scripting-api/
Web of Thing Model & EVRYTHNG Platform
Topic type: Research & Development. In this topic, the student needs to deliver the follows:
- [IP:1] WoT Model http://model.webofthings.io
- [IP:2] EVRYTHNG Platform https://evrythng.com
- [IP:3] Comparison https://webofthings.org and W3C WoT standard
Multi-access Edge Computing (MEC) APIs
In this topic, the student needs to deliver the follows:
- [IP:1] Introduction of MEC and use cases http://www.etsi.org/technologies-clusters/technologies/multi-access-edge-computing
- [IP:2] Principles of MEC APIs http://www.etsi.org/deliver/etsi_gs/MEC/001_099/009/01.01.01_60/gs_MEC009v010101p.pdf
- [IP:3] MEC Management http://www.etsi.org/technologies-clusters/technologies/multi-access-edge-computing
AI (Artificial Intelligence) & ML (Machine-Learning) in Digital Twin
Digital Twin is a term to describe AI/ML-based IIoT solutions. In this topic, student has following tasks:
- [IP:1] Main idea, elements and use cases of Digital Twin.
- [IP:2] Data involved in Digital Twin and system architectures/models.
- [IP:3] Studying what are the AI & ML schemes used in Digital Twinning.
The Next Generation IoT-driven Smart Offices and Smart Workspaces
Different to smart homes which provide comfort to private individuals and families, smart workspaces need to consider various people who have different preferences. How does the system satisfy everyone? In this topic, the student needs to deliver the follows:
- [IP:1] Introduction and use cases of IoT-driven smart offices & smart workspaces (SO&SW)
- [IP:2] System architectures, process patterns and technologies involved in SO&SW
- [IP:3] Challenges and blueprint. Based on your study, identify the challenges in SO&SW and provide a high-level system design which addresses the challenges.
Android Things
This is a practical topic. Study and demonstrate Android Things platform https://developer.android.com/things/index.html
- [IP:1] Introduction, architecture, protocols, components, hardware etc.
- [IP:2] Android Things SDK and preliminary experiment
- [IP:3] Demonstrate and discuss Android Things-based application
Blockchain-based Internet of Things besides Cryptocurrancy
Blockchain is the core of the popular cryptocurrency - Bitcoin. Recent IoT approaches have been applying blockchain technology to support the decentralised IoT system architecture. Besides cryptocurrency and security aspects, what blockchain provides? The goal of this study is to investigate the research projects, commercial services and general use cases of Blockchain-based IoT applications/services.
- [IP:1] Introduction of Blockchain-based IoT systems.
- [IP:2] A comparison of Blockchain-based IoT system architectures and models from different domains.
- [IP:3] A comparison of open source software tools for implementing blockchain-based IoT. Demonstration.
Suggested demo tool: Flowchian https://github.com/flowchain
Blockchain-based Trustworthy Decentralised Mobile Social Networking
In this topic, student will implement and validate the feasibility of Blockchain-based decentralised mobile social network application.
- [IP:1] Blockchain + SIM for decentralised membership validation.
- [IP:2] Blockchain-based private text messaging control (1-to-1 & 1-to-many).
Task 3, select one from:
- [IP:3a] Blockchain-based private social group formation.
- [IP:3b] Blockchain-based private multimedia data messaging control (1-to-1 & 1-to-many)
Recommended frameworks: https://www.hyperledger.org/projects To achieve the goal, the student can either develop his/her own app or he/she can use existing blockchain-based mobile social networking API/SDK.
Mozilla IoT & Web Thing API (W3C member submitted specification)
In this project, student will perform practical experiment with Mozilla WebThing API on Raspberry Pi. https://iot.mozilla.org/about/ https://iot.mozilla.org/wot/
- [IP:1] Introduction of Mozilla IoT.
- [IP:2] Running WoT Gateway on Raspberry Pi. Connecting sensors or actuators with WoT Gateway
- [IP:3] Connecting WoT Gateway with WoT Cloud
NodeJS-based Fog Computing on OpenWrt
In this project, student needs to compile NodeJS for OpenWrt, then implement NodeJS-based dynamic code deployment and execution on an OpenWrt-based router.
This project aims to test the student’s skill on (1) searching technical instruction online and (2) solving problems independently.
- [IP:1] Introduction of Fog Computing, OpenWrt & NodeJS
- [IP:2] NodeJS on OpenWrt
- [IP:3] Deploy and execute code to NodeJS server on OpenWrt router
Service-Oriented BPMN Engine
Practical topic. Modify one of the BPMN engine with extended tags that allows a task to directly send a HTTP request, CoAP request, MQTT subscription without the user to write a corresponding class.
Engine required: bpmn-engine (https://www.npmjs.com/package/bpmn-engine) (Node.JS).
CISCO Fog Computing Server Testing
Experiments on CISCO Fog Computing Server with IR800 CISCO Industrial Integrated Router.
The Things Network
Practical topic. Implement and test the things network. https://www.thethingsnetwork.org/
Telia interested projects -- Chii Chang and Satish Srirama (Responsible persons)
- 5G and IoT
- 5G and Smart Cities
Cloud Computing -- Satish Srirama (Responsible person)
- Cloud resource management and scheduling
Cloud infrastructure providers mostly rely on either static VM provisioning policies, which allocate a fixed set of physical resources to VMs using bin-packing algorithms, or dynamic policies, capable of handling load variations through live VM migrations and other load balancing techniques. These policies can either be reactive or proactive, and typically rely on knowledge of VM resource requirements, either user-supplied or estimated using monitoring data and forecasting. Study these techniques and implement your own methods on CloudSim.
Z. A. Mann. Allocation of Virtual Machines in Cloud Data Centers—A Survey of Problem Models and Optimization Algorithms. ACM Computing. Surveys. 48, 1, Article 11 (August 2015).
Calheiros, Rodrigo N., et al. "CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms." Software: Practice and experience 41.1 (2011): 23-50. - Multi-Cloud and cloud interoperability solutions
Studying TOSCA (Topology and Orchestration Specification for Cloud Applications) and its implementations such as OpenTosca and Cloudify - Data pipelines on the cloud
AWS Data pipelines
Apache nifi - Sustainability in clouds
Dynamic allocation and reallocation of resources
Models for green clouds - Blockchains in cloud computing
Where the advances in blockchain will assist cloud computing? - Graph data processing with Apache Giraph
Study Graph data processing with MapReduce and targeted frameworks such as Apache Giraph. - Serverless computing
Study the emerging research trend in cloud computing domain. Identify and propose solutions for the challenges.
Real-time data processing -- Pelle Jakovits (Responsible person)
- Orchestrating complex Data Pipelines processing real-time IoT data. Student should investigate existing Data pipeline orchestration frameworks (such as Apache Nifi) and resent literature on this topic, which concentrate on managing IoT data flows fusing data from a large number of geographically distributed data sources and which may require deploying data processing tasks at different distances from the data sources (Fog Computing scenario).
- Real time vs micro-batching in streaming data processing: performance and guidelines Typically, stream processing frameworks buffer incoming data and process them in batches. But newer stream processing frameworks (such as Apache Storm) allow processing any incoming data objects in real time. Task of the student is to give an overview of the newest advances in Stream processing, compare the performance of real-time vs micro-batching engines for different use-cases. The student should also investigate which data or use case specific characteristics should be considered when choosing between the respective streaming data processing approaches. In addtition, student should also look into Structured Streaming, which is a new stream processing abstraction built ontop of the Spark SQL engine.
- Stream data processing on resource constrained devices - With the increasing amount of data to be collected and processing from IoT data sources, it becomes more and more expensive to simply stream all data for cloud-side data processing. Depending on specific scenarios, it may be beneficial to pre-process the data as close to its source as possible. However, there are typically limitations on how much or how powerful computing resources are available in such cases. Student should study existing solutions which aim to solve such issues, give an overview of them and demonstrate example scenarios and solutions if possible.
- Visualizing streaming data Student should perform a literature study and present in seminar what are the newest advances, best practices and available solutions for visualizing large scale streaming data. In the case of available open source visualization tools suitable in the context of this topic, student should demonstrate real-time data visualization on a an illustrative scenario.
Cloud Computing Frameworks -- Pelle Jakovits (Responsible person)
- Docker performance aspects when running large number of small docker containers.
- Docker based device integration in Cumulocity: issues and challenges
- Real-time event processing in Cumulocity: limitations, issues and performance.