January 19, 2021
Mobile Communications and Networks
Finishing up my last semester of courses before the master’s thesis was one whirlwind of emotions and a lot of hard work! One course that I enjoyed a lot in particular was Mobile Communications and Networks, where students took on essentially a mini thesis project in a subject of their choosing.
Image by Tumisu from Pixabay
Unlike previous courses that contained a lot of pre-determined lectures, labs, and/or a final project/final exam, this course allowed students to choose a specific project to take on and work one-on-one with a professor in the respective field. This year there were a variety of subjects that we could choose from in the areas of logistics, transportation, smart cities. Some of the topics within these subject areas included:
- The Impact of Covid‐19 on Mobility and Traffic Safety in Sweden
- Traffic simulation analysis of automated vehicles
- Characterization of Arrival Sequences at Entry and Feeder Points of Stockholm Arlanda Terminal Airspace
- Train Dispatcher Shift Planning
- Federated Learning in Smart Cities
- Calibration of a low-end sensor for traffic
And these were just a small set of examples of areas that could be chosen for study. Once a topic was chosen, students were asked to come up with a project plan, a mid-project evalutaion report, a final report, and a final presentation.
For my project in this course, I chose “Federated Learning in Smart Cities”, which invovled a really extensive literature study of Federated Learning applications in smart cities, and an example test of how to create the baseline algorithm for this Machine Learning method in Python. I worked closely every week with a professor in this field, to understand and coordinate the process of the project as it unfolded.
To give you an idea of what Federated Learning is, I will quote this piece from my final report for the class.
“Federated Learning (FL) has grown in popularity as a Machine Learning (ML) tool since its introduction by Google in 2017. Whereas traditional Machine Learning requires the centralization of training data in one place, Federated Learning allows for the utilization of decentralized data on the individual user devices themselves, by training the model on the device and then sending back only trained parameters instead of data. This allows for the data to be stored directly in the device, ensuring greater security and privacy and reduced communication costs When creating solutions for smart city implementation specifically, privacy is an aspect at the forefront of consideration, making Federated Learning a useful tool for deploying Machine Learning methods that provide privacy and security to end users [1].”
[1] McMahan, B., & Ramage, D. (2017, April 6). Federated Learning: Collaborative Machine Learning without Centralized Training Data. Google AI Blog. https://ai.googleblog.com/2017/04/federated-learning-collaborative.html
I spent around 2-3 weeks researching about the topic through literature found in the Linköping University library and then used this Federated Learning tutorial on LinkedIn to get started analyzing how the code works in Python. I was originally hoping to do this practice in MATLAB as this is a software I am much more familiar with, but I ended up using Python instead. The learning curve to understand Python was a bit steep, but luckily there was a lot of useful information I could find online to get started. In previous posts from last year, I have mentioned that an important skill to have in this program is the ability to understand programming at a fundamental level, as many courses jump around in the different softwares and programming lanugages used.
After this analysis in Python was all said and done, I was able to test the output of the Federated Learning model to that of a generic Machine Learning model, and the output can be seen below for the first 25 and last 25 iterations.
I would go a bit more into detail about how the program works, but I believe it is a bit too high level for the purpose of this blog post 🙂 If you are really interested, you can see the algorithm for this model in the figure below, and be sure to check out the link to the Federated Learning tutorial I had mentioned earlier.
If you plan on joing the Intelligent Transport Systems and Logistics program at LiU, you can get excited knowing that this course is in the cirriculum. I wish more courses were like this open ended project! But maybe that just means I need to pursue a PhD and do more research in the future.
Best of wishes! – Adam