This page will regularly receive updates as students pick projects, we add new ones, so visit often. See also http://www.cse.chalmers.se/edu/course/DAT300/SLIDESNOTES/L2aboutPrj.pdf
The project is a core part of the course. You should form a group with other participants in the course and then choose one of the example projects below suggested by faculty, or suggest your own. It is important to be ready to start on your project ASAP when the course starts, so please browse the suggestions as early as you can. At the end of August, we will also send out an email to all registered students to start to choose their group / project. Send us an email if you plan to take the course, so you also get that information. Note that it is first come, first serve for the projects.
At project start, we will share access with a github for you to look at (and possibly extend earlier projects) as well as discuss available hardware that you can use in your projects, and available data. To register, create a git account and send a request to chasty@ (chalmers domain) to register to the course group.
Below we list a number of suggested projects for DAT300. Of course we would be open to hear your suggestions too -- but the projects must relate to using ICT in some interdisciplinary way (such as Energy and ICT). The suggestions below are just seed ideas from faculty (the ideas here are brief(!)). If you like an idea, we will connect you with the faculty to develop it further. It is then up to you to work out the details and the work plan with the project demonstration at the end of the course. It should be your project and you will need to drive its development.
In an attempt to hide their attack on industrial control systems, attackers may choose to spoof sensor signals so that they look normal to the human operators while the attack is being carried out. The authors of the paper https://dl.acm.org/citation.cfm?id=2714599 proposed a sensor spoofing technique and developed an entropy-based method to detect the spoofing attack. In this project, you are expected to implement the spoofing algorithm and then compare the entropy-based method with a recently proposed method called PASAD that detects structural changes in sensor behavior.
One approach to detecting attacks on industrial control systems propose to monitor sensor signals for changes in behavior. PASAD is a sensor-level attack detection method that monitors time series of sensor measurements for disturbances. The method first embeds the time series into a vector space and then tracks the distance between the most recent vectors and a cluster of vectors, defining the normal behavior, determined during a training phase. The aim of this project is to investigate the possibility of improving the detection accuracy through one-class classification techniques applied on those vectors. In particular, you are expected to use One-Class Support Vector Machines to perform the classification, and then perform an analysis on the detection accuracy and false-positive rate.
The project investigates network security for IoT, with a focus on the processing needed to detect and prevent attacks. Networks of sensors and cyber-physical systems are often targets for attacks. Providing security countermeasures for such networks is often challenging, due to the severe computation and energy constrains on these platforms. For this reason, detection algorithms and tools, such as, e.g. Snort, need to be adjusted to perform well under these constrains. On the other hand, IoT hardware is evolving and provides new features that have not been explored before (e.g. multiple cores, programmable GPUs).
In this project, you will work with embedded yet powerful devices (Raspberry Pi 3 or Odroid XU4) and design a framework so that all of the hardware resources are utilized in scanning network traffic for attacks. You will parallize the processing needed for Network Intrusion Detection across multiple cores and possible make use of an integrated, programmable GPU.
Recent advances in wireless sensor technologies has seen the growth of wireless sensor networks (WSNs) to widely being used in many fields to intelligently monitor remote locations at low cost. As a distributed network of sensor nodes, WSNs have the ability to sense, process and communicate data. Such networks are responsible for four major tasks: receiving data, data aggregation, sending data and in-network data processing. Such capabilities has led to sensor networks emerging as one of the dominant technology trends in the coming decades (Internet of things: IoT). One of the drawbacks for sensor nodes is the energy constraint where a small battery acts as the energy source. Efficiency of energy consumption and prolonging network lifetime is still challenge. A sensor becomes useless in the absence of energy and becomes unable to contribute to the utility of the network as a group. Extensive efforts and resources have been invested in finding energy-efficient networking protocols and sensor configurations to increase sensor up time without need for battery replacement.
In this project, we shall study different sensor configurations for a given network protocol with the aim of determining their energy consumption behavior. We shall then propose the optimal configuration for a given use case.
Load forecasting is an important task of the distribution system operator (DSO) in the overall network design process. One of the outcomes of load forecasting is the predicted peak load of the system, which will be used as a design parameter when dimensioning the distribution network in an optimal manner. The objective of the DSO is to supply energy to the customers with high level of power quality (e.g., with minimum power interruption) while still keeping the margin as low as possible (i.e., to keep the investment cost as low as possible).
In Sweden, one of the most commonly used methods today for peak load forecasting by the DSOs including Göteborg Energi Nät AB (GENAB) is based on Velander’s formulas . This method derives the annual peak load of a customer from the information on its annual energy consumption. The peak demand in the system can be over- or in some conditions under-estimated using Velander’s.
To evaluate a new method based on power values and other kinds of data like temperature to estimate the peak demands for distribution grid dimensioning based on smart meter reading data (smart meter based method (SMB)) against the traditional Velander’s method.
Load shedding is the last resort when it comes to saving the power system. It is only used when all other possibilities are used. This because it has a major impact on the society but there are means to make it smarter.
Today is load shedding made by breakers on the medium voltage level at the primary substations and thereby disconnecting all load in the affected area. The drawback of this strategy is consumers that are important for society or the lack of electricity causes large negative impact on their activity is also disconnected. Examples of this kind of the customers are police stations and homes for elderly people. Another drawback is that customers that hardly use any electricity are disconnect even if their contribution to the load reduction is very small. However, disconnecting only large consumers might affect the one actual use the electricity and not only uses it for standby or constant loads, like freezers etc. The project shall develop and evaluate new smart strategies of disconnecting customers in case of load shedding.
For remote villages, solar panel with a battery becomes a viable option so provide some electricity for some parts of the day. However, people often use the battery the wrong way so that it will age prematurely and make these systems more expensive than they should. There exists established techniques to regulate and measure the battery but adding these components to the system makes it too expensive. The idea in this project is to use cheap sensors and hardware to measure and control, and warn if battery usage is not optimal. What is lost in accuracy is gained in cost effectiveness.
The project will be built using Arduino's, voltage dividers, etc. The challenge will be in what to meaure, how to measure it, how to communicate, and what to calculate.
The main use of consumption data of electricity meters is billing and long term network planning. However now that electricity meters have become digital and remotely readable, new uses such as validation and real time distribution grid monitoring are starting to develop. Missing and unreliable data can cause problems for these new use cases, which is where prediction comes in. Predicted consumption values can be used to validate the measured values or to replace the missing data.
In this project you will implement a well known prediction method such as ARIMA or multiple linear regression, with the Stream Processing Engine Apache Flink. You can investigate how well the method works for predicting consumption of single customers versus predicting the consumption of a group of customers (in the same neighborhood for example).
The project will be co-supervised by Joris van Rooij, industrial PhD student with Göteborg Enegi and Chalmers; your implementation can be tested with real data at Göteborg Energi.
The switch from analog energy meters to digital and remotely read meters greatly increased the amount of metering data that is collected. All metering data needs to be validated, ie. checked for errors, to make sure that every customer receives a correct bill.
The streaming data paradigm is proving to be a good choice for validation of consumption data [Rooij et al., eChIDNA]. In this project you will implement streaming validation for energy consumption using Apache Flink, allowing data to be out-of-order or missing entirely. You will also get the chance to implement more advanced validation rules in order to determine if a received consumption value is reasonable.
The project will be co-supervised by Joris van Rooij, industrial PhD student with Göteborg Enegi and Chalmers; your solution can be tested with real data at Göteborg Energi.
How reliable is AI in CPS? Artificial Intelligence has been shown to be very good at helping with problems in our daily life, sometimes even better than humans. One such problem is Image Recognition, i.e. to determine what is present in an image. For example, is it a picture of a broken or an intact item? Is it a cat or a dog?
This project is an investigation of the reliability of Artificial Neural Networks (ANN) for solving the Image Recognition problem. More specifically questions such as: If noise is introduced to the images how will it affect the performance of the ANN and how much noise can be tolerated without significantly affecting the ANN accuracy?
If noise is gradually introduced to an image by corrupting one pixel at a time, at what point does it stop being recognizable by the AI? Is it still recognizable by human eyes? At this point, does the image contain a cat or not? Maybe it simultaneously does and does not?
Recommended previous experience with Image processing in Python, TensorFlow/Keras, or similar.
Some references for background and intuition for the project:  An intuitive guide to Convolutional Neural Networks https://medium.freecodecamp.org/an-intuitive-guide-to-convolutional-neural-networks260c2de0a050  Data Augmentation - How to use Deep Learning when you have Limited Data;Part 2 https://medium.com/nanonets/how-to-use-deep-learning-when-you-have-limiteddata-part-2-data-augmentation-c26971dc8ced  Machine Learning is Fun;Part 8: How to Intentionally Trick Neural Networks https://medium.com/@ageitgey/machine-learning-is-fun-part-8-how-to-intentionallytrick-neural-networks-b55da32b7196
Imaging spectrometry can be used for fast, frequent and objective identification of façade types and conditions. Recent development of high quality but lightweight hyperspectral imaging hardware makes it possible to analyze the components in real time.
This project may be divided in two parts: i) control the UAV based on information of coordinates, optimization of flights path, ii) interpret information from the sensor, normal video or other sensor such as IR, to find façade material, color, damages.
Before and during a planned tunnel project underneath central Gothenburg, Trafikverket (Swedish Transport Administration) performed detailed building inspections of all buildings within 150 m of the works. These are documentations of in total 1,171 buildings by hand writing where inspections are performed both from the outside and inside of buildings. The first investigations were finished during the spring of 2015. These are followed up before construction work commence in 2018 and after the construction work is finalized in 2026.
There are documentations of many of the buildings by photography from the survey described above. The focus of the inventory is on cracks and settlements. However, information from the survey may be important to form a knowledge base of the different building materials used in the area. There is also a smaller inventory made at the Department of Architecture and Civil Engineering of 640 buildings which could be used for training the algorithm.
This project aims to interpret building materials and other information such as color of the façade from photography.
Before and during a planned tunnel project underneath central Gothenburg, Trafikverket (Swedish Transport Administration) perform detailed building inspections of all buildings within 150 m of the works. These are documentations of in total 1,171 buildings by hand writing where inspections are performed both from the outside and inside of buildings. The first investigations were finished during the spring of 2015. These are followed up before construction work commence in 2018 and after the construction work is finalized in 2026.
This project aims to interpret the written information/symbols to catalogue the building typologies, façade materials and damages of the buildings. Data and examples exists for the students to use.
Energy consumption has recently become an important optimization criterion, for several reasons. For example, the electricity cost for the operation and the cooling of data centers has become a significant share of the total cost. Fixed battery capacity of is a constraint for mobile devices. And, ecological footprints of data centers, supercomputers, personal and mobile devices necessitate a balance between low energy use and high performance.
Energy consumption is obtained by the time-integral of power consumption that can be split into two parts; static and dynamic. The switching activity of the transistors, based on the characteristics of the executed program, leads to the dynamic part of the power dissipation. On the other hand, the static part originates from the leakage effects that also exist when the transistor do not change state and it is then independent from the executed program.
Modern multi-core processors employ several low power techniques to reduce the energy consumption. When the system is idle, the dynamic part of the power is negligible and often power and clock gating techniques are used to minimize the static leakage part of the power. For an active system, DVFS (Dynamic Voltage and Frequency Scaling) is the main technique to reduce the power dissipation. The convexity of the dynamic power curve according to clock frequency suggests that one can obtain better energy efficiency by reducing the frequency (coupled with the voltage) of the hardware components with a sacrifice from the execution time.
This project is an investigation on how these low power techniques influence energy consumption and execution time for benchmark code that will be given to the students. The students during this project will also learn how to take energy measurements of their code using process support for this. Recommended previous experience with C or C++ or system programming.