Digital Technology Research & Education for all - Final Year Projects 2021
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
We’re
all
about
the
wow.
Creating “wow” moments for our
customers is what we do here at Ascent.
You could say we do digital transformation. But
we’d rather say we help people solve business problems, or do new
things, or do existing things better.
Joining Ascent gives you the opportunity to be at the heart of those
wow moments. We work with some of the sharpest minds in the
brightest businesses. We hire bright, curious minds with a passion
for leading edge technology and a love of collaboration. We’re
accepting applications now for a number of exciting roles,such as
Software Developers, Data Scientists and Data Engineers.
To apply, contact us at FICT2021@ascent.io and share your CV. If
you’re all about the wow too, we want to hear from you. You can
find out more at ascent.io
The Faculty Of ICT 2021 Publication
Digital Technology
Research & Education For All
I
nformation Technology is now present in every
area of our lives, whether we’re catching a plane
or throwing a load of laundry into the washing
machine. Indeed, the demand for better, easier,
less labour-intensive solutions to personal and worldranging
problems or shortcomings is at an all-time high.
As the Faculty of Information and Computer
Technology (ICT) at the University of Malta, our role is
to ensure that our Islands are well equipped to face
the future, which is set to be increasingly digital. For
this to happen, our work doesn’t just revolve around
teaching the next generation the latest practices and
aiding them in conducting their own research, but also
to explain the responsibilities that come with their work.
ICT is often looked at as an ‘impersonal’ and ‘cold’
discipline, but in reality it is one built around human
needs, human psychology, and human development.
In fact, ethics in ICT solutions are something we are
always pushing for, because it is imperative that what
is developed is accessible, fair, just, and preserves
the dignity of the people whose lives it impacts.
As you can read through the articles in this publication,
the research we champion always places the people
it aims to help at its centre. Digital health projects, for
example, offer greater independence to patients, but also
more freedom and peace of mind to their caregivers. AI
in Education projects, meanwhile, offer teachers more
tools, but also promote new ways of learning that are
built around the individual needs of the students.
among the best pioneers in science and technology,
and they deserve to feel at home within the ICT world
because it is as much theirs as it is anyone else’s.
Indeed, among the many reasons we work on this
publication is the fact that we want government agencies,
private businesses, parents, and prospective students
themselves to see just how broad and varied our areas
of study and research are. People of all genders and
backgrounds are conducting research that will result in
amazing advancements that could benefit us all.
The work of the Faculty, however, is by no means
over. As our theme for this year’s publication states,
we would like to see research and education in digital
technology permeate every sphere of society and
be accessible to all, regardless of socio-economic
background, gender, age, ethnicity, or health status.
In the end, to be human means to care, and the role
of ICT professionals in the world is to make good on that
promise. From our end, this publication is just one of the ways
in which we hope to entice you to learn more about what is
happening through ICT, to give you hope for a better future,
and to inspire those who wish to make a difference to join us.
So, happy reading and until next year!
Dr Conrad Attard and Mr Iggy Fenech
It is because ICT doesn’t shut out our most basic
needs for human interaction that it has become
so indispensable. Yet this growing demand for
solutions is bringing with it the realisation that we
need more professionals in the field. That’s why the
European Union has set a target to increase the
number of people working as IT professionals from
the current eight million to 20 million by 2030. It is
an ambitious vision, but one which must be met to
continue this steady improvement in our way of life.
One of the ways this can be can be achieved
is through more girls and women taking the leap.
Currently, this area is viewed as a masculine one both
from within and without, but women have always been
All the content in this publication
is available online at
https://ictprojects.mt/
L-Università ta’ Malta | 1
HARVEST.TECH
JUMP START YOUR CAREER &
GROW WITH US
At Harvest, we are always
looking for Talent!
If you’re passionate, goal driven,
and always up for a challenge,
then we’d like to meet you.
Send us your CV on
recruitment@harvest.tech
A Word From The Dean
I
have come to view this publication as an opportunity
to take a step back and look at what the Faculty has
achieved over the course of the previous academic
year. Of course, only some things are measurable,
but I think they give us a clearer picture of whether we are
succeeding in our role as educators, researchers, and mentors.
When the 2020/2021 academic year kicked off,
we couldn’t let the reality the world has been facing
since late 2019 stop us from helping our students
excel. So armed with the will to help provide even more
opportunities, the Faculty’s dedicated lecturers and staff
members worked harder than ever to ensure this.
Amongst our successes this past year, we, along
with Tech.MT, signed a cooperation agreement with eight
Italian universities that are renowned in the field of ICT.
This should help open more doors for current and future
graduates to expand their research and collaborate on
projects related to emerging technology, education,
and Artificial Intelligence, all within the sector of ICT.
Earlier on, we also launched a new Master of Science
degree in Digital Health, an interdisciplinary postgraduate
course that exposes students to how technology and
healthcare can be a perfect match. This doesn’t just give our
students a broader choice in what to focus on in their studies,
but also promotes a better society for all to live in as new
ideas in health could make someone’s life infinitely better.
This has always been the spirit of ICT, which is more
people-centric than most would assume. Indeed, all
the projects mentioned in this publication have two
things in common: technology and an idea of how it
could improve the life of the people it will impact.
It’s hard to pick just one project as the perfect
example of this, but there are two research projects that
will certainly affect the lives of a lot of people on the
Maltese Islands. Both of these use machine learning to
teach computers how to process text and speech in the
Maltese language, thus paving the way for chatbots
that can answer queries in Maltese, algorithms that can
automatically add subtitles to films and TV series, and
software that can improve spell-checking and translations.
“Such projects continue
to promote our mission
statement as a Faculty,
which is to offer ICT
solutions for everyone”
Now, as we prepare ourselves for the next academic
year, we look forward to working ever closer with our
partners in industry, other universities, and government. But
we also look forward to start increasing in-person teaching
again based on the advice by health authorities. We miss
our students and we appreciate that interaction is key.
We also hope to continue attracting the same level
of research projects as we have seen over the past few
years. Indeed, we have now employed a research officer
to help us identify great projects that can make the
biggest difference to society, as well as to help students
reach their full potential while working on them.
There’s honestly never been a better time to
become a student of this Faculty, and we are eternally
hopeful that each year will be better than the one
we left behind. So we invite anyone who has an ICTrelated
idea they wish to explore to join us.
All such projects continue to promote our mission
statement as a Faculty, which is to offer ICT solutions
for everyone, and to help guide our students to become
tomorrow’s leaders in this field that can change lives
and offer better education, health, accessibility, aviation
technology, archaeological tools, and so much more.
Prof. Ing. Carl James Debono
Dean of the Faculty of ICT
L-Università ta’ Malta | 3
What we do
Foster independent, consistent high-quality
regulation that drives investment and cultivates
innovation in modern communications.
Promote competition and ensure communications
markets work effectively for consumers.
Boost eCommerce and digital services growth
through an apt regulatory environment.
Ensure availability and sustainability of highquality
universal services fit for today’s age.
Safeguard consumer rights and empower them to
make informed decisions.
Ensure optimal use of scarce resources, including
numbering ranges and radio spectrum, that enable
high-tech business and services to flourish.
Support national and EU digital policies through
forward-thinking specialised advice for an
inclusive digital society.
www.mca.org.mt
Connect with your peers and develop
your future with IEEE Malta Section
JOIN NOW
I E E E . O R G
I E E E M A L T A W E B S I T E
H T T P : / / W W W . I E E E M A L T A . O R G /
/ I E E E M A L T A
#FICT21
Front cover and booklet design
Yellow Door Media
Printing
www.gutenberg.com.mt
Editorial board
Dr Conrad Attard & Mr Iggy Fenech
Abstracts (main text) review
Colette Grech @restylelinguistic
Review of Abstracts
Dr Chris Porter & Dr Chris Columbo
Lead Administrator of Publication
Ms Samantha Pace
Administration of Publication
Mr Rene Barun
Ms Jennifer Vella
Photography
Mr James Moffett
Ms Sarah Zammit
Acknowledgements
The Faculty of Information and Communication Technology gratefully acknowledges the following firms and
organisations for supporting this year’s Faculty of ICT Publication 2021:
Gold Sponsors
Silver Sponsor
Main Sponsor of the event
Event Sponsors
8 | Faculty of Information and Communication Technology Final Year Projects 2021
Map
E X H I B I T I O N 2 0 2 1
Data Science
Deep Learning
Audio, Speech
& Language
Technology
Internet of Things
COMMON
AREA
ENTRANCE TO
COMMON AREA
Blockchain and Fintech
LEVEL -1
FOYER
Software Engineering
and Web Applications
Digital Health
ENTRANCE
FROM STAIRS
BLOCK A
LEVEL -1
CORRIDOR
Testing
& Verification
BLOCK B
#FICT21
L-Università ta’ Malta | 9
THE RISE OF
Digital Health
The Faculty of ICT has
long championed the
digitisation of health,
both by conducting
and supporting
research, as well as by
teaching students the
latest developments.
This past century has seen
humankind take huge
leaps in the area of health.
Spurred by better tools
in science, technology, and data
collection, we now have a wider
variety of drugs to combat disease,
more precise tools to help us perform
complex surgeries, and a better
understanding of how to diagnose
and treat many more illnesses. This is
all set to continue, but the future of
healthcare will be based on a more
personalised approach, particularly
thanks to the rise of Digital Health.
For those who are new to the term,
Digital Health is the collective name
given to health functions that make
use of software, sensors, computer
platforms, Artificial Intelligence, and
the Internet of Things. It’s, of course,
a relatively new area that has come to
the fore over this past decade or so,
but the benefits of using such methods
in healthcare are set to be huge.
Currently, for example, people’s
health information is fragmented,
with parts of it being on paper
in large filing stores at Mater Dei
Hospital or health centres, in data
repositories at the general hospital,
and in computer systems at private
doctors’ clinics. That may not seem
like a big deal until you realise that
10 | Faculty of Information and Communication Technology Final Year Projects 2021
a piece of valuable information for a
medic treating you has been missed,
or when, in the event of an emergency,
doctors or paramedics may not
know what medicines you are on.
It’s with this in mind that we at
the Faculty of ICT are working on a
project entitled ‘Data Visualisation
Using BI for Digital Health’, which aims
to create a centralised system where
information from the many healthcare
points a person visits can be stored
and retrieved more easily by authorised
professionals. As mentioned above,
this could save lives in an emergency
situation, but that is just the tip of
the iceberg. Such a system will also
save healthcare professionals a lot
of time, which they can spend with
patients or researching; help hospitals
go paperless and avoid mistakes; and
even play a crucial role in transitioning
our system from being one that offers
reactionary treatment to one that
is based on proactive prevention.
Data in Digital Health is king. It
is only by collecting it, compiling it,
understanding it, and using it that
these processes can work. And the
uses can be endless. Indeed, another
project we are concurrently working
on – called ‘Intelligent Aggregation
and Adaptive Visualisation’ project – is
using an oncology-related case study
in order for us to understand how the
data gathered throughout the different
steps in a patient’s healthcare pathway
can help improve doctor-patient
relations, lead to faster diagnoses,
and make the system as easy and
as patient-centric as possible.
Digital Health, however, doesn’t
just help us make what’s already
there better, but also allows us to
create whole new systems that can
revolutionise the way things are done.
This can be seen in our Pervasive
Electronic Monitoring (PEM) project*,
which has seen our Deputy Dean, staff
from Saint Vincent de Paul, volunteers,
and numerous students join forces to
create a system that uses on-body
and environmental sensors to monitor
patients when caregivers can’t.
system how to tell if a patient had
fallen down, was walking aimlessly
or with purpose, and if they were
asleep, among a whole host of other
actions. Once all that is done, even
more data will be needed every second
to monitor patients, as computer
systems need this in order to inform
caregivers of any issues in real time.
“There’s a bright
new world
unfolding here,
and we’re proud
to be carrying the
baton for Malta”
It’s a mammoth task that has
been years in the making and which
will take years to be completed, but
this could have a truly life-changing
impact for dementia patients, who
on top of being able to lead more
independent lives in care homes, may
even be able to live in their homes and
be part of the community for longer.
Indeed, that is the beauty of Digital
Health: it gives us a way to make a
difference. But, of course, all these
things also raise ethical questions, such
as whether our research respects the
dignity of those who will use it, and
whether it will be accessible to everyone
or if it will be only for the privileged few.
The great thing about Digital
Health is that it reduces inequality
in health by making once expensive
scenarios affordable: just think
about the PEM project and how this
will help families who can’t afford a
full-time caregiver. Yet, with regards
to dignity, the buck stops with us,
which is why we are adamant that
any research conducted on our
watch respects its users’ rights,
humanity, dignity, and privacy.
That is an immovable pillar in all
the work we do, and in all the degrees
we teach. It’s also an integral part of
the MSc in Digital Health, which we’ve
just launched on the International Year
of Medical Education. This Master’s
degree, which has been created
together with the Department of Health
Sciences, will be an interdisciplinary
postgraduate course that gives our
young researchers the knowledge,
tools, and ethics needed to help in the
creation of new software and hardware
to ensure that the rise of digitisation in
health continues unabated, and that
Malta continues to be at the centre
of this revolution that will define our
age and those of future generations.
As a Faculty, we look forward
to welcoming many more students
to the fold; students who wish to
explore the areas that form part of
Digital Health, and who wish to create
something new, find a solution to a
problem, or help make someone’s
life that much more comfortable.
Finally, we also welcome everyone
else to explore all the advancements
happening in healthcare thanks to
Digital Health. There’s a bright new
world unfolding here, and we’re proud
to be carrying the baton for Malta.
To do this, masses of data have
had to be collected to teach the
*The PEM project is funded by ISL Limited through RIDT.
L-Università ta’ Malta | 11
Contents
An Expert System for Recommending the best
ERP model to SMEs
OctGI: Cloud-Based Global Illumination using
Octrees
14
15
Abstracts
Software Engineering & Web
Applications
14-28
Internet of Things 29-38
Audio Speech & Language
Technology
39-49
Data Science 50-65
Deep Learning 66-80
Blockchain & Fintech 81-85
Testing & Verification 86-94
Digital Health 95-101
Web-Based Test-bed for Image Understanding 16
Maze Solving Robot 17
Object Search Robot 18
Inclusive Musical Game Technology for Children 19
Optimising Sports Scheduling through Constraint
Satisfaction
Path Following Robot 21
Tools to construct the comparative analysis of
existing medical portals
Grammar Based Procedural Modelling of Building
Façades from Images
Obstacle Avoiding Robot 24
Auto-mobile Control Area Network security issues
involving fuzzing
Procedurally generating crowd simulations with
human-like behaviours
Procedurally Generating Game Content with the
Use of L-Systems
GNU Radio-Based Teaching System 28
20
22
23
25
26
27
A Domain Specific Language for the Internet of
Things in the Retail Sector
29
Featured Articles
An Event-Based Approach for Resource Levelling
in IIOT Applications
Securing the IoT with SDN 31
30
Making The Law Accessible To All 106
Giving Other Languages A Chance 108
Delegating The Crunching Of Data 110
A Simple Solution To Boost Workflow 112
A Smoother Ride For Programs
Running Multiple Sessions
Inspecting Particle Accelerators’ RF
Cavities
114
116
Drone Object Detection based on real-time Sign
Language
Radio Frequency Wideband Wilkinson’s Microstrip
Power Couplers
Confirming the Presence of Body-worn Sensors
at Critical Indoor Checkpoints
Evaluating centralised task scheduling algorithms
for Multi-Robot Task Allocation problems
Autonomous Drone Navigation for the Delivery of
Objects between Locations.
Indoor Navigation and dynamic obstacle
avoidance in assistive contexts using low-cost
wearable devices and beacon technologies.
Ambient Acoustic Noise Monitoring Solution
Based on NB-IoT
32
33
34
35
36
37
38
How AI Can Aid Education 118
Automated Activity Recognition
That Could Save Lives
A Helping Hand With Diagnosing
Breast Cancer
120
122
2020 Awards: An Overview 124
Automatic Sports Match Highlight Generation 39
A System to Support Audio Authenticity in Digital
Forensics
A.I. Assisted Pedagogical Chatbot 41
Grammar and Spell-Checking Techniques for
Maltese
Speech Based Psychological Distress Detection 43
40
42
Analysing Reddit Data for the Prediction, and
Detection of Depression
Developing an Educational Game Teaching
Maltese to Children with Intellectual Disabilities
A Comparison of Speech Recognition Techniques
and Models
Visual Question Answering Module for Apps
intended as Aids to the Visually Impaired
Investigation into Currier’s multiple authorship
theory for the Voynich Manuscript
MorphoTest 49
44
45
46
47
48
Number Plate Detection using Deep Learning
Techniques
Deep Learning Techniques for Classifying
Sentiment in Social Media Postings
Autonomous Drone Delivery 76
Detection of Stairways from Aerial Imagery 77
Saliency - Directed Product Placement 78
Gesture Recognition for Hologram Interaction: an
application for museums
Music Recommendation System 80
74
75
79
Predicting links in a social network based on
recognised personalities
Action preserving diversification of animation
sequences
Aviation Safety Analysis 52
Implementations of the State Merging Operator
in DFA Learning
Assisting a Search And Rescue Mission for Lost
People using a UAV
Analysis of Police Violence Records through Text
Mining Techniques
Using COVID-19 Pandemic Sentiment and
Machine Learning to predict Stock Market Price
Direction
Change detection in semi-structured documents 57
Real-Time EEG Emotion-Recognition using
Prosumer Grade Devices
Scaling protein motif discovery using Tries in
Apache Spark
Discovery of Anomalies and Teleconnection
Patterns in Meteorological Climatological Data
A DFA Learning Toolkit 61
Dashboards for Reducing Traffic Congestion 62
Using Evolutionary Algorithms for DFA Learning 63
Tracing Historical Paths - Intelligent AR Guide 64
A Data Analytic Approach to Property Price
Prediction, Influenced by Geographic Elements
50
51
53
54
55
56
58
59
60
65
Macroprogramming Smart Contract Systems 81
Relocating major buildings and the effects it has
on traffic in Malta, a study
Towards Seamless .NET Blockchain Interaction by
Using Entity Framework
Enhancing Stock Price Prediction Models by using
Concept Drift Detectors
Sentiment Analysis to Predict Cryptocurrency
Prices
Automated On-Page Usability Testing 86
High Level Events of Forensic Timelines Using
Runtime Verification
Improving soft real-time systems in games by
deadline constraints
Maintaining Chain of Custody in a Cloud
Environment using Database Encryption
Techniques
Computer Security and Communication Issues
in Automobiles - Identification and Analysis
of Security Issues using a Threat Modelling
Approach
Using Runtime Verification to generate intrusion
timelines from memory images
Towards Extracting, Analysing and Verifying
Statistical Claims
Direct Digital Synthesis on FPGA 93
Using Autonomous Drone Navigation to pick up
and deliver payloads
82
83
84
85
87
88
89
90
91
92
94
Image Deblurring Using Machine Learning
Models
Driving Behaviour Monitor 67
Automatic User Profiling for Intelligent Tourist Trip
Personalisation
Procedural Generation of Sound Files from Small
Sound Samples
3D Printing of 2D Images 70
Learning the Game 71
Drone based face mask detection system 72
Detecting Litter Objects Using an Aerial Drone
with Convolutional Neural Networks
66
68
69
73
Assessing Cognitive workload during software
engineering activities
Decoding sensors data using machine learning
algorithms to detect an individual’s stress levels
VR Enhance - Aiding Human Speech and
Sensorimotor Skills using Virtual Reality
A Model to Improve Low-dose CT scan images 98
Predicting blood glucose levels using machine
learning techniques with metaheuristic optimisers.
EEG Signal Processing using Machine Learning to
Detect Epileptic Seizures
Deep Learning based techniques for Alzheimer’s
Disease Diagnosis in MRI images
95
96
97
99
100
101
L-Università ta’ Malta | 13
Software Engineering
& Web Applications
An expert system for recommending
the best ERP model to SMEs
GABRIEL ABELA | SUPERVISOR: Dr Conrad Attard | CO-SUPERVISOR: Prof. John M. Abela
COURSE: B.Sc. IT (Hons.) Computing and Business
Expert systems make use of artificial intelligence (AI)
techniques in conjunction with human (hence, ‘expert’)
knowledge and experiences. Through this combination,
these systems could provide expert advice to the end
user. Expert systems are used within various domains that
are classified as complex, hence requiring a high level of
expertise (see Figure 1). In this project, an expert system
was used to elect an enterprise resource planning (ERP)
solution – a computer system that helps an organisation
integrate different business processes, and their respective
modules, with the aim of improving the management of
these processes. Therefore, it also improves efficiency in
general. [1]
ERPs are expensive solutions. Hence, the right choice of
vendor and product would be crucial to the organisation’s
IT infrastructure modernisation process. Apart from
being assessed from a functional perspective, such new
systems must be evaluated from a budget perspective.
Acquisition costs and cost of ownership could provide to
be unsustainable in the long run [2].
This project set out to identify and configure an expert
system for the selection of an ERP system for small and
medium-sized enterprises (SMEs). This system was used
during the evaluation process of an ERP. The following were
the main objectives of this study:
1. Finding the right expert system that would be able
to assist in such decision-making.
2. Acquiring knowledge through appropriate
methodologies.
3. Populating the expert system with the appropriate
knowledge and rules.
4. Identifying ideal ERP solutions for a given problem.
Incidentally, different Microsoft (MS) Dynamics
365 ERP solutions were evaluated in the process.
5. Finally, the expert system should suggest the right
solution for the problem (see Figure 2)
.
A number of case studies based on SMEs were
conducted to better understand the complexity and
challenges through hands-on experience.
Figure 1. Structure diagram of an expert system reproduced from [3]
Figure 2. High-level flow diagram
REFERENCES
[1] [1] S. Katuu, “Enterprise Resource Planning: Past, Present, and Future,” vol. 25, pp. 37–46, 2020, doi: 10.1080/13614576.2020.1742770.
[2] A. Uţă, I. Iulian, and M. Rodica, “Criteria for the selection of ERP software,” 2007
[3] P. Golański and P. Madrzycki, “Use of the expert methods in computer-based maintenance support of the M-28 aircraft,” vol. 201, pp. 5–12,
2015, doi: 10.5604/0860889X.1172060.
14 | Faculty of Information and Communication Technology Final Year Projects 2021
OctGI: cloud-based global
illumination using octrees
DOMENICO AGIUS | SUPERVISOR: Dr Sandro Spina
COURSE: B.Sc. (Hons.) Computing Science
Software Engineering
& Web Applications
ReGGI, as defined by Magro et al. [1][2] is a cloud-based
rendering platform that reduces response times present
in other cloud gaming platforms by allowing the client to
perform part of the rendering. The client only renders the
light cast directly from a light source to a surface (i.e.,
direct lighting). Meanwhile, the server calculates the light
reflected off other surfaces and stores the results in a 3D
grid, which is sent to the client. OctGI tries to look at how
this grid structure could be modified to improve image
quality and decrease network requirements.
Two approaches were chosen, the first of which was
to modify the grid to store more than two light values per
cell. This would allow the client to correctly illuminate cells
containing small objects with many differently oriented
surfaces, such as chair legs. The second approach was
to allow the server to adjust the cell size according to the
amount of detail present in a particular region of the scene,
by using an octree.
Upon start-up, the server would split the scene into
cubic regions, and attempt to detect surfaces within
each one. Subsequently, for each non-empty region
the server would produce a representative coordinate,
which is inserted into the octree. Should the server
identify adjacent surface points with similar orientations,
it could group them to save bandwidth. For example,
for a conference-room scene, ReGGI would generate
a grid with 20800 cells, but an octree with a similar
resolution only requires 9041 nodes (see Figures 1 and 2).
Once a client connects, it would receive the octree structure
from the server and whenever the scene’s lighting changes,
the server sends updates to modify the client’s octree. The
octree data is then interpolated on the client to reconstruct
the final image. The evaluation carried out on ReGGI was
repeated for OctGI to determine the impact of these
changes.
Figure 1. Uninterpolated lighting data from a 50 × 13 × 32 grid Figure 2. Uninterpolated lighting data from an octree with depth 6
REFERENCES
[1] M. Magro, K. Bugeja, S. Spina, and K. Debattista, “Interactive cloud-based global illumination for shared virtual environments,” in 2019 11th
International Conference on Virtual Worlds and Games for Serious Applications (VS-Games), pp. 1-8, 09 2019.
[2] M. Magro, K. Bugeja, S. Spina, and K. Debattista, “Cloud-based dynamic GI for shared VR experiences,” IEEE Computer Graphics and
Applications, vol. 40, no. 5, pp. 10-25, 2020.
L-Università ta’ Malta | 15
Software Engineering
& Web Applications
Web-based test bed for image understanding
DAVIS POKU AMANKWA | SUPERVISOR: Prof. Adrian Muscat | CO-SUPERVISOR: Dr Chris Porter
COURSE: B.Sc. (Hons.) Computer Engineering
The use of machine learning models to understand visual
data has been applied extensively to a wide range of fields.
Among other areas, machine learning models are being used
by radiologists to facilitate cancer detection, by corporations
to verify identities, and also in the restoration of distorted
images.
Implementing a machine learning algorithm for image
recognition requires extensive testing, which includes human
evaluation and fine-tuning. Both activities require substantial
time input. Moreover, since the human evaluation aspect of this
process is usually technical, it cannot be outsourced to nontechnical
third-party individuals to speed up the evaluation
process, or to diversify the participating evaluators.
This study seeks to address how a web-based test
bed could be used to test machine learning and imageunderstanding
models, thereby reducing the intensity of work
involved in testing such models. This could also simplify the
process by which humans evaluate generated results.
The test bed consisted of three main components, the
first of which was a backend-end module, which contains an
image processor that hosts the machine learning model. The
image processing element was designed to be extendable to
include more machine learning models and perform a larger
variety of tasks.
The second component was an intuitive web interface,
which would enable users to upload images to be processed
by the machine learning model. The interface would also
display the results generated by a model, using bounding
boxes and descriptive words to highlight detected objects.
Furthermore, it enables users to evaluate results generated.
The third and final component consisted of an application
programming interface (API), which orchestrates the
interaction between the web interface and the image
processor. This would offload images uploaded by the user to
a machine learning model, and also fetches results from the
image processor to the front-end.
Figure 1. Raw-input image
Figure 2. Output image after object classification
16 | Faculty of Information and Communication Technology Final Year Projects 2021
Maze-solving robot
CLIVE ATTARD | SUPERVISOR: Dr Ingrid Vella
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
When a robot navigates a maze, intelligent algorithms are
used to plan its path around the maze. These algorithms
could be further extended to find the optimal path within
different environments, such as a path for a robotic waiter in a
restaurant. This project investigates path-finding techniques,
in particular the A*, flood fill (FF) and modified flood fill (MFF)
to lead a robot from its starting location to its goal, within
different mazes.
In some instances, the robot would not know what the
maze would look like before actually exploring it. Different
path-finding algorithms could help the robot exit the maze,
while possibly traversing the shortest path. Different mazes
were constructed, with sizes varying from 6 x 6 to 9 x 9 cells.
Each maze featured black cells representing traversable cells
and white cells representing obstacles.
The A* and FF algorithms were investigated in the case of
mazes the mapping of which was known to the robot. On the
other hand, for solving mazes that the robot had never seen
before, the MFF and FF algorithms we applied. The proposed
solution was implemented using a Lego EV3 robot, fitted with
colour sensors to detect whether a cell was white or black.
The implemented algorithms, which were designed to run in a
simulation as well as on the robot, made it possible to observe
how a robot traverses the mazes using each algorithm and to
determine if the shortest path was followed.
All the algorithms used led the robot to the target
destination within the mazes along the shortest paths. In
known mazes, A* and FF recommended the exact same paths.
However, while both algorithms recommended an identical
path from starting point to goal when seeking to solve
unknown mazes, MFF proved to be far more computationally
efficient than the FF algorithm.
Software Engineering
& Web Applications
Figure 1. Overview of the maze-solving system
Figure 2. Path taken by the robot to reach the target
L-Università ta’ Malta | 17
Software Engineering
& Web Applications
Object-search robot
JEREMY BUSUTTIL | SUPERVISOR: Dr Ingrid Vella
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Autonomous mobile robots can choose independently
which actions to perform. This project sought to develop an
object-search robot using the LEGO Mindstorms Education
EV3 kit, with emphasis on the robot accurately knowing its
position within the map at all times. An occupancy grid map
representing the environment in which the robot is placed was
constructed, on which an object was randomly positioned
within the environment. The robot was set to determine its
position within the map using Monte Carlo localization (MCL),
navigating the environment to locate the object and, upon
doing so, would note the exact location of the object. The
robot used the A* path-planning algorithm to plan the shortest
path to reach the object, and a PID controller to control the
robot’s motors in order to move it towards the object.
MCL is an algorithm that enables the robot to figure out,
and keep track of, its position within the map. This uses a
number of weighted particles in order to represent its belief
of where the robot may be located within the environment.
An accurate model of how the robot should move (motion
model) was implemented, such that each particle could mimic
the real robot’s position. Similarly, a model was developed
for the sensor so that each particle could simulate a sensor
reading from the robot. A process of resampling was then
performed. In this process, particles of a certain weight that
indicated being closer to the robot’s actual position were
chosen again, whereas the lighter particles would be killed
off. Figure 1 shows the process of localization over time.
The robot was equipped with two ultrasonic sensors, one
at the front and another at the side. These sensors helped
gather information that was subsequently used to determine
the location of both robot and object within the environment.
The algorithm’s performance was tested in a room with
smooth floors and wooden furniture, without obstacles.
When testing with a small number of particles, the algorithm
converged towards the wrong position. This premature
convergence was counteracted by increasing the number
of particles, which led to accurate localization within 10cm
when 300 particles were used. However, this was achieved
at the cost of time, as it increased computation time.
Erroneous readings from the sensors could be considered
to be the main cause of performance decrease when testing
the system.
Figure 1: Over time, the particles converge to one spot, which corresponds to the robot’s actual position [1]
REFERENCES
[1] S. Thrun, W. Burgard, and D. Fox, Probabilistic Robotics (Intelligent Robotics and Autonomous Agents). The MIT Press, 2005.
18 | Faculty of Information and Communication Technology Final Year Projects 2021
Inclusive musical game technology for
children
CAOIMHE CAMILLERI | SUPERVISOR: Dr Peter Albert Xuereb
COURSE: B.Sc. IT (Hons.) Software Development
Software Engineering
& Web Applications
This research proposes a novel teaching aid aimed at
teachers within music schools and their students, including
students of music with special needs. Previous research has
successfully used modified or specifically built data gloves
for this purpose. Data gloves worn by both teacher and
student could convey real-time guidance and feedback by
detecting the state of the fingers through strain gauges –
and conveying feedback to the student using miniature
vibrating devices incorporated into the gloves.
This study proposes a flexible approach, whereby the
gloves could either respond to live performance by a teacher
or use existing MIDI music files as a source. This would
allow teachers to cater for more students simultaneously
and facilitate practising at home. Furthermore, recording
and playback facilities would allow the performances of
teachers and students to be recorded for repeated training
or evaluation exercises respectively.
For the purpose of this study, a set of fabric gloves were
fitted with strain gauges to measure the angle of each finger,
thereby detecting which keys were being pressed. Similarly,
small vibrating devices were attached to the fingers in order
to give feedback to the student or to indicate the correct
keys to press. A third device equipped with a loudspeaker
was also included so as to provide auditory feedback to the
user.
The software was designed in object-oriented C++
and developed using the Arduino IDE, which is a more
user-friendly option than the native ESP-IDF environment
provided by Espressif. Wi-Fi was chosen as the preferred
communication medium due to its additional range and
bandwidth over Bluetooth. This would allow the various
devices to communicate with each other, as well as with user
devices through a web interface that would allow the users
to control, monitor and upload MIDI files to the devices.
Figure 1. Hardware diagram
Figure 2. Data glove with strain gauges
L-Università ta’ Malta | 19
Software Engineering
& Web Applications
Optimising sports scheduling through
constraint satisfaction
MANDY CARUANA | SUPERVISOR: Mr Tony Spiteri Staines | CO-SUPERVISOR: Dr Peter Xuereb
COURSE: B.Sc. IT (Hons.) Computing and Business
Sports scheduling is a research area that has received
significant interest over the past thirty years. Strategic
thinking is vital when generating a sport schedule, as it has
a great impact on its stakeholders, namely: club owners,
technical staff and players, television broadcasters and the
supporters. Automated sport scheduling achieves greater
revenues as opposed to generating a schedule manually. This
is due to better allocation of resources, highly anticipated
matches being broadcast at more advantageous times, with
a strong relationship being maintained between the sports
association and the supporters due to favourable times.
The nature of any schedule is determined by hard and
soft constraints. Hard constraints are conditions that must
be satisfied, such as league regulations and TV broadcasting
contracts. Soft constraints focus on expectations of
supporters, players, and technical staff. A schedule must
meet all hard constraints and as many soft constraints
as possible. Some examples of these constraints include
venue availability, dates and times, and the travelling team
problem.
Prior to developing a solution, a study regarding
different types of scheduling algorithms for sports leagues
‒ both professional and amateur ‒ was conducted to
clearly identify the requirements of the system. Interviews
with experts within the domain were held to further
investigate how sports tournaments schedules are done in
Malta. On the basis of the findings, prototypes and models
were created before progressing to the development
stage. This led to the development of an ASP.Net Core
MVC Web Application, which allows the user to manage all
necessary data. Constraint programming algorithms were
used to develop the schedule. The system was evaluated
by using and comparing results from two different
algorithms, and official fixtures created for previous years.
The main focus was to obtain a reduction in the time taken
to create the fixtures and distance travelled, in order to
handle hard constraints as efficiently as possible and,
similarly, to increase the level of satisfaction in terms of
soft constraints.
Figure 1. Sample result showing fixtures of a football league
Figure 2. An architecture diagram of the developed system
20 | Faculty of Information and Communication Technology Final Year Projects 2021
Path-following robot
DALE CHETCUTI | SUPERVISOR: Dr Ingrid Vella
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Recently, there has been an increase in the application of
robotics to various areas, one of which is transportation.
These include public transport and self-driving cars, which
need to follow a predefined path. Path-following is a task
that entails robots following a predefined path from a
starting position to an end goal.
This project set out to investigate different techniques
that could be applied to a robot for following a predefined
path. Additionally, the study has considered ways of
rendering smooth movement.
The Lego Mindstorms EV3 Robot Educator was used for
the experiment. A colour sensor was attached on the front of
the device, aligned at the centre. The environment chosen for
the experiment was a black path on a white background for
maximum distinction (see Figure 1). The robot could identify
whether it was on the black path or the white background,
through the colour sensor.
The project considered three algorithms that are
commonly used in path-following robots, and compared their
performance on four different paths. The first approach used
a proportional-integral-derivative controller (PID controller),
which is commonly employed in similar projects, as it achieves
smooth movement. The second approach applied Q-learning,
whereby the robot would attempt to learn from its actions
to navigate the predefined path efficiently. Thirdly, the fuzzy
logic method was tested; this makes decisions based on a
predefined set of rules.
To evaluate the performance of the algorithms, a marker
was attached to the front of the colour sensor to trace the path
followed by the robot, so as to compute the root-mean-square
error (RMSE) between the predefined path and the actual
path. Testing the three algorithms on the four different paths
showed that all the algorithms achieved a low RMSE, with the
PID controller yielding the smoothest movement (see Figure 2).
Software Engineering
& Web Applications
Figure 1. The robot following the predefined path
Figure 2. The predefined path, and the path taken by the robot
L-Università ta’ Malta | 21
Software Engineering
& Web Applications
Tools to construct the comparative analysis of
existing medical portals
STEFANIA FARRUGIA | SUPERVISOR: Prof. Ernest Cachia
COURSE: B.Sc. IT (Hons.) Software Development
Portals, which are made up of information sources,
provide an interface offering a structured view of the
data accessible to a user (see Figure 1). Nevertheless,
there remain concerns about which factors contribute
to long-term use of a portal. This project focuses on
the development of medical portals that could provide
the medical community with access to medical records
through the web browser. Medical portals are considered
to be a valid representative class of web portals, as the
information they offer is by its nature large, non-trivial, and
distributed. Furthermore, medical-patient portals draw
their effectiveness from the extent of patient involvement
they engender.
At a basic level, this project set out to define what a web
portal is through functional and non-functional properties,
and also defines various portal classifications. Moreover,
the issue of portal usability and longevity was addressed
with reference to the findings of previous researchers in
developing these types of information products, coupled
with a study of technologies required to construct portals,
using medical portals as a representative case. By
analysing previous studies, it was concluded that the most
important characteristics when developing an effective
portal were the level of maturity of the target users, portal
usage and portal overall security.
By understanding the motivation for the use of
portals, the project explored the application techniques,
such as activity theory that seeks to comprehend human
interaction through analysis of their activities to increase
the effectiveness of portals. In the case of medical portals,
studies have shown that activity theory is an effective
tool for depicting the non-trivial nature of medical
environments. For this reason, a system was developed
through an activity-theory approach and implemented
through the use of appropriate frameworks (see Figure 2).
For portals to be accessible, they must be constructed in a
manner that would make them simple to use, while always
fulfilling both requirements and usage constraints.
Figure 1. The conventional web portal architecture
Figure 2. A structured web portal implementing the activity-theory
technique
22 | Faculty of Information and Communication Technology Final Year Projects 2021
Grammar-based procedural modelling of
building façades from images
TRISTAN Oa GALEA | SUPERVISOR: Dr Sandro Spina
COURSE: B.Sc. (Hons.) Computing Science
Software Engineering
& Web Applications
This work outlines a grammar-based solution for the rapid
modelling of building façades from images. The project
involved a user-annotated image of a façade being
interpreted by the system, which in turn encodes the positional
relationship between the façade’s elements into an internal
representation, known as a split grammar [1]. The latter was
evaluated further to construct a hierarchical subdivision,
producing a meaningful 3D model upon traversal (see Figure
1).
The main objectives of this project include: an automatic
system for deriving split rules from a single annotated image;
a procedural approach for modelling a façade from a given
ruleset and a procedural approach for generating a random
façade structure from all the previously encountered instances.
Practical applications include: architectural model creation,
simulation creation and large-scale urban modelling with
building variations, benefitting architects, game designers
and film-set designers alike.
In the same way that the structure of a language is
often defined through its grammar, a building façade could
be encoded as a context-free grammar - G(T, NT, R, S₀) -
consisting of terminal (T) and non-terminal (NT) symbols,
production rules (R) and a starting symbol (S₀) respectively.
The terminal and non-terminal symbols together define the set
of symbols acceptable by the system. Symbols in T represent
the individual façade elements (i.e., regions in which further
splitting is not possible), while those in NT correspond to any
compound grouping of terminal regions. Production rules are
a vital component of any grammar, as they specify ways in
which non-terminal regions could be converted into terminal
symbols. The chosen system defines split and conversion rules
to achieve its goal, the two key qualities which distinguish a
split grammar [1].
The proposed system has been designed to cater for
the following façade elements: doors, windows, balconies,
balcony doors and shop items (e.g., banners, posters, signs
and shop windows). The user marks these features using a
different coloured rectangle for each separate group. To
help the system distinguish between the different floors, the
user would also be asked to select the floors to be modelled.
This initial interaction is beneficial for both parties because,
while a user has full control of the floor-selection process, the
system would be made aware of the elements pertaining to
each chosen floor.
A recursive splitting algorithm evaluates each floor region
to determine the positional arrangement of all the façade
elements falling within the current scope. This creates the
production ruleset, which is the set of rules that uniquely
define a façade structure. From these rules, an abstract syntax
tree is constructed. This hierarchical data structure converts
the scope-based positional relationship between elements in
the same region to geometric information pertaining to the
global scope. Finally, a depth-first traversal of this tree would
lead to the construction of a 3D model.
The outcome of the project suggests that procedural
modelling of façades from images is possible through the
creation of deterministic split grammars, which uniquely
encode single façades. On the other hand, the procedural
modelling of a random building is achievable through the
construction of a stochastic split grammar, which encodes all
previously encountered variations [2].
Figure 1. An annotated façade image is given as input (top left); the system constructs a split grammar (bottom left) from which an abstract syntax
tree is generated (centre) to produce a corresponding 3D model (right)
REFERENCES
[1] P. Wonka, M. Wimmer, F. Sillion and W. Ribarsky, “Instant architecture”, ACM Transactions on Graphics, vol. 22, no. 3, pp. 669-677, 2003.
[2] F. Wu, D. Yan, W. Dong, X. Zhang and P. Wonka, “Inverse Procedural Modeling of Facade Layouts”, ACM Transactions on Graphics, vol. 33,
no. 4, pp. 1-10, 2014.
L-Università ta’ Malta | 23
Software Engineering
& Web Applications
Obstacle-avoiding robot
EMMA HARRISON | SUPERVISOR: Dr Ingrid Vella
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
When assisted by obstacle avoidance techniques, an
autonomous mobile robot could navigate itself around an
unseen space without any human intervention.. Such a robot
would interpret information acquired by its sensors to detect
obstacles in its way and navigate around them.
This project employed a Lego Mindstorms EV3 kit to
build a wheeled differential drive robot, i.e., a mobile robot
whose movement is controlled by two separately driven
wheels. Since the robot is required to avoid obstacles without
bumping into them, the robot was fitted with an ultrasonic
and an infrared sensor at its front to measure the distance
from any obstacles.
Initially, Bug2 algorithm was investigated for obstacle
avoidance. In this case, the robot followed a goal line
representing the target path and whenever it encountered an
obstacle, it followed the obstacle’s perimeter until it encounters
the goal line to follow once again. This process was repeated
until the robot reached the desired target location. The vector
field histogram (VFH) algorithm was also investigated. This
algorithm works over three distinct steps. Firstly, using the
robot’s sensors, it constructs a 2D histogram grid which is
continuously updated in real time. Secondly, it constructs a 1D
polar histogram around the robot’s current location in order
to reduce the histogram grid. Finally, candidate valleys are
selected and, once the centre of the selected direction would
be determined, the robot’s orientation is steered to match it.
The algorithm was tested using a 10x10 grid as the
robot’s environment. The grid included a goal location, and
different obstacles were randomly placed in the grid in order
to deliberately interfere with the path that the robot was
planning to take. In each of the ten tests carried out, the
robot reached its goal without ever colliding with obstacles.
Figure 1. The final version of the robot
Figure 2. The Test 10 path taken by the robot when programmed with
the Bug2 algorithm
24 | Faculty of Information and Communication Technology Final Year Projects 2021
Auto-mobile Control Area Network security
issues involving fuzzing
DAMIEN SPITERI BINETT | SUPERVISOR: Dr Clyde Meli | CO-SUPERVISOR: Dr Colin Layfield
COURSE: B.Sc. IT (Hons.) Software Development
Software Engineering
& Web Applications
The Controller Area Network (CAN) bus protocol is used
to network computerised car systems. Security was not a
priority when the protocol was designed, as it was initially
meant to connect a small number of electronic control unit
(ECU) devices in a closed system. Modern cars now have their
CAN bus accessible through a diagnostic port and ECUs that
communicate wirelessly to outside devices, such as remote
keyless entry systems and over-the-air updates to software
systems and telematics systems. These systems ‒ combined
with the importance of computerised systems in cars,
especially in vehicles with self-driving capabilities –would help
minimise any security risks that may lead to serious issues
spanning from theft of the automobile to injury and possible
loss of life. The software-testing method of fuzzing, which is
the generation and input of unexpected inputs to a system,
has been shown to be a viable attack on devices on the CAN
network.
For the purpose of the experiment involving the CAN
network, an attack device was developed. This comprised
a Raspberry Pi and an MCP2515 module, which allowed the
device to communicate with a CAN network. Once connected
to the CAN network, the device could monitor all traffic on the
network. The resulting data would be used to fuzz messages
and send them to the network in order to attack devices on
the network. The data could then be viewed, and attacks
would be orchestrated through a web interface accessed by
connecting to the devices transmitted Wi-Fi network.
In order to test the attack device itself, a testing device
that would emulate the dash system of a car was developed.
This device would receive CAN messages and process them
with a view to changing instrument values and logging
all messages and instrument changes. The testing device
consisted of an ESP8266 microcontroller, an ILI9341 LCD
screen, an MCP2515 module, and an SD card module.
Figure 1. The attack device
Figure 2. The testing device
L-Università ta’ Malta | 25
Software Engineering
& Web Applications
Procedurally generating crowd simulations
with human-like behaviours
DANIEL JAMES SUMLER | SUPERVISOR: Dr Sandro Spina
COURSE: B.Sc. (Hons.) Computing Science
The presence of crowds of people is becoming increasingly
commonplace in areas such as gaming, where simulations
are typically used to procedurally generate crowds [1]. The
interactions within these crowds are key to adding an extra
layer of immersion and realism. The method used to model
these interactions will generally affect the expressiveness
and scalability of these simulations.
This study sought to address these issues by proposing
a framework that would simulate realistic crowds, in
which the actions of an entity would not directly influence
the actions of another entity, as well as adding personal
decision-making, which is not commonly seen in other
simulations.
The chosen approach was to create a framework that
uses deterministic finite state automata (DFSA) to model
the behaviour and interactions of each individual. The
simulation area contains a multitude of different objects
(such as benches and shops) which are represented as
systems ‒ and each with its own DFSA. Once an entity enters
a system’s range, they are to decide whether to transition to
the system’s DFSA. Each system contains instructions in the
form of a DFSA, which the entity would follow. The systems
are independent of every other system, thus allowing new
systems to be added without affecting others.
The simplicity of how the framework was set up
allows people with little or no technological background
knowledge to be able to create a custom environment for
their own simulation. The choice of creating a framework
for such simulations allows for continuous re-use to model
various types of situations.
In order to determine whether an entity would decide to
transition to a system’s DFSA, each entity contains its own
attributes, which alter its decision-making process throughout
the duration of the simulation. Attributes such as Hunger and
Tiredness will help an entity decide whether to go to rest on a
bench, buy something to eat at a shop or keep walking. Over
time, each of these attributes will change depending on the
action a person is taking, such as the action of walking, which
increases the sense of tiredness and hunger. Figure 1 explains
further how this process functions.
The framework described above was evaluated by testing
its scalability and expressiveness. Scalability was measured
by the complexity and size of the generated environments
alongside the number of simulated people in the scene,
together with the amount of time it would take to create and
run a simulation. On the other hand, expressivity was measured
by the unique number of simulation environments that could
be modelled, including the extent to which environments can
be customised by the user. This includes being able to model
a simulation environment in which one may customise the
internals of a building, such as a shop.
This project attempts to deliver a working solution to the
situation outlined above. The proposed solution would allow
users to create their own simulation for various situations,
without having to create an entire interaction model from
scratch.
Figure 1. A ‘person’ DFSA is extended when within the range of a ‘bench’ system – this allows more transition options from the ‘person’ system, thus
allowing the entities to interact with other systems.
REFERENCES
[1] Xu ML, Jiang H, Jin XG et al. “Crowd simulation and its applications: recent advances”. JOURNAL of COMPUTERSCIENCE and TECHNOLOGY
29(5): 799-811 Sept. 2014.
26 | Faculty of Information and Communication Technology Final Year Projects 2021
Procedurally generating game content with
the use of L-Systems
MIGUEL VELLA | SUPERVISOR: Dr Clyde Meli | CO-SUPERVISOR: Dr Michel Camilleri
COURSE: B.Sc. IT (Hons.) Computing and Business
Software Engineering
& Web Applications
Modern-day game projects rely on teams of highly skilled,
multidisciplinary teams, which include story writers and
graphic designers. These projects also present a number of
problems during development, such as issues relating to the
budget, quality of the game and scheduling [1]. Bearing in
mind the resulting pressure that game developers generally
experience, this project seeks to contribute towards alleviating
some of this pressure.
The proposed solution is largely based on the
application of procedural content generation (PCG)
through L-systems. PCG is a technique used to generate
game content algorithmically, rather than generating this
content manually. L-Systems were introduced by Aristid
Lindenmayer as a method of simulating the growth of
multicellular organisms, such as plants. Its applications
have been extended to other areas, including gamecontent
generation, in view of the string rewriting nature
of L-Systems.
The approach chosen for this project was to develop
a two-dimensional rogue-like dungeon game that utilises
L-Systems as a framework to generate the level design of the
dungeon in the game, creating a main path and a number
of branching paths. The main path would lead to a boss
room, which is the only way to finish the game. However, the
branching paths may offer power-ups that would benefit the
player throughout the game. The rooms in either path option
would need to be generated such that every room would be
accessible through at least one other room. The rooms of the
main path should be connected to one another meaning that,
should they choose to, players could ignore the sub-paths
generated by the algorithm, and head straight to the boss
room.
Figure 1. String-rewriting nature of L-Systems [3]
Figure 2. A tree generated in Unity3D using L-Systems [2]
REFERENCES
[1] F. Petrillo, M. Pimenta, F. Trindade, and C. Dietrich, “What went wrong? A survey of problems in game development,” Comput. Entertain., vol.
7, no. 1, pp. 1–22, Feb. 2009, doi: 10.1145/1486508.1486521.
[2] P. Fornander, “Game Mechanics Integrated with a Lindenmayer System,” Blekinge Institute of Technology, 2013
[3] “Enhancing Computational Thinking with Spreadsheet and Fractal Geometry: Part 4 Plant Growth modelling and Space Filling Curves” –
Scientific Figure on ResearchGate. Available from: https://www.researchgate.net/figure/Rule-Interpretation-of-Bracketed-L-System-Witha-use-of-the-rule-we-obtain-an-order-of_fig11_258652653
L-Università ta’ Malta | 27
Software Engineering
& Web Applications
GNU radio-based teaching system
MALCOLM VELLA VIDAL | SUPERVISOR: Prof. Victor Buttigieg
COURSE: B.Sc. (Hons.) Computer Engineering
Software-defined radio (SDR) is a growing field that is
leading the innovation in communications technology.
Reconciling the abstract nature of communications theory
to an effective method of teaching it has often been a major
challenge for universities. The traditional approach has
relied on the use of books, notes, lectures and simulationbased
laboratory sessions.
This dissertation proposes SDR as an alternative to
the traditional teaching techniques and explores the
extent to which it could be a pivotal tool if introduced into
undergraduate communications courses. SDR receives
real-world signals using an antenna and sends them to the
device to which they would be connected, allowing the use
of software to process and manipulate these signals in real
time. This work environment is portrayed in Figure 1.
GNU Radio Companion (GRC) was the software tool
used to process the input signal. It is a free-to-use software
that evolved significantly since its inception. GRC contains
a library of inbuilt blocks which could be strung together
to form a system in the form of a flowgraph (see Figure
2). This dissertation uses a combination of SDR and GRC
to build a sequence of these flowgraphs, presenting them
in the form of a laboratory sheet that explains certain
communications concepts, such as sampling theory and
frequency modulation (FM) reception.
A questionnaire was prepared and presented to past
and current Computer Engineering students. The goal of
this questionnaire was to reach subjective results regarding
the students’ view on the possible introduction of SDR
and GRC into the syllabus. The results of the questionnaire
consolidated the idea that students would value the use
of hardware in laboratories, as it tends to provide a more
personalised feel to the work they are doing, and in turn
motivates them to continue their work at home.
Figure 1. The work environment used throughout this dissertation comprising
an antenna, SDR and a laptop.
Figure 2. A simple flowgraph outlining how GRC receives the input signal
from the SDR, and displays its waveform through the frequency sink.
28 | Faculty of Information and Communication Technology Final Year Projects 2021
A domain-specific language for the
internet of things in the retail sector
EMAN ABELA | SUPERVISOR: Prof. Ernest Cachia
COURSE: B.Sc. IT (Hons.) Software Development
In recent years, there has been a marked rise in the need
for data analysis. This is partly due to the increased
pervasiveness and adoption of the internet of things (IoT)
and, consequently, the data it generates – contributing
big data. Considerable leaps have been made regarding
applications and organisations that can conduct data
analysis, giving rise to the necessary scientific treatment
of data. Profitability for businesses through the valorisation
and usability of data is the primary reason for this increase
in analytical work. However, in view of the amount of data
generated, and the speed at which it is being generated,
data analysis is a commodity that not every business
can afford or has the resources to undertake effectively.
In particular, small to medium-sized enterprises face
significant challenges when investing in data analysis, due
to high outsourcing costs.
This project discusses how a domain-specific language
(DSL) could help small businesses benefit from investing in
solutions using smart devices connected as an IoT, and the
subsequent data analysis. This was done by implementing a
cost-effective solution that would enable small to mediumsized
businesses to better manage their data. This study
seeks to propose a solution for retail outlets. The solution is
made up of 3 parts:
1. An IoT data-collection structure where data collection
will be occurring after each purchase transaction;
2. A customised DSL to assist the retail owner in analysing
data without having to resort to outsourcing;
3. The use of data analysis through the analytical methods
present in the system, i.e.,: descriptive analysis and
predictive analysis, which employ machine learning
techniques.
A visual representation of the solution described
above could be seen in Figure 1. The solution is internally
algorithmically scalable, in that it allows the possibility of
adding more analytical methods. The ultimate benefit of
the solution was shown through the analytical methods
embodied within it. In using the proposed solution, the
management of the retail outlet would be able to make
better use of the generated data targeted at increasing
sales and profits, for example: “Which product sells the
most between 3pm and 4pm?”. The solution will search
for the best method to address that query. This is done by
utilising some basic natural-language processing (NLP) on
the input.
In part, the artefact was evaluated through its ability to
validly handle different datasets. To evaluate the ability of
the solution to deal with various datasets, those used to test
the system were randomly generated from different years
and related to various retail outlets, namely: electronics
shops and supermarkets.
When compared to similar market products, the
proposed solution appears to be more robust and
compares well with its peers in terms of accuracy, subject
to the number and type of analytical methods used in this
scalable solution. In time, accumulated data could render
the outcome from the solution more relevant. In other
words, the more the solution is used in a specific context,
the higher the accuracy it will exhibit.
Figure 1. Flow diagram of the system
Internet of Things
REFERENCES
[1] N. Jones and C. Graham, “Can the IoT Help Small Businesses?”, Bulletin of Science, Technology & Society, vol. 38, no. 1-2, pp. 3-12, 2018.
Available: 10.1177/0270467620902365.
[2] “(PDF) Building Competitive Advantage in Retail Industry using Internet of Things (IoT)”, ResearchGate, 2021. [Online]. Available: https://
www.researchgate.net/publication/320237967_Building_Competitive_Advantage_in_Retail_Industry_using_Internet_of_Things_IoT.
[Accessed: 12- May- 2021].
[3] Z. Zones, “Editorial Note: IoT Technology for Promoting Multimedia Services”, Multimedia Tools and Applications, vol. 78, no. 5, pp. 5105-
5105, 2019. Available: 10.1007/s11042-019-7266-4.
L-Università ta’ Malta | 29
An event-based approach for resource
levelling in IIoT applications
DANIEL AZZOPARDI | SUPERVISOR: Prof. Matthew Montebello
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Internet of Things
The Fourth Industrial Revolution (or Industry 4.0) has seen
widespread adoption of the Internet of Things (IoT) concept
by various industries attempting to optimise logistics and
advance supply chain management. These large-scale
systems, capable of gathering and analysing vast amounts
of data, have come to be known as the industrial internet
of things (IIoT).
This study aims to create a scalable tangible-resource
allocation tool capable of learning and forecasting resource
distributions and handling allocation biases caused by
preemptable events. Furthermore, the system should be
capable of proposing suitable reallocation strategies
across a predefined number of locations.
The physical framework would assume the form of a
low-cost resource-tracking platform similar to that seen
in the data-collection component of the accompanying
diagram. At each location, a node would keep track of the
number of items available and items in use, with data being
sent periodically to a central server, together with any
registered events. However, this goes beyond the purpose
of the study and was not pursued further.
In this study, real-world datasets and generated
synthetic data were used in order to evaluate the system’s
performance, representing the data-collection component
of the underlying framework.
In the predictive resource-allocation space models
based on long short-term memory (LSTM) [1] and, more
recently, gated recurrent unit (GRU) [2] have become
popular with state-of-the-art implementations.
The core implementation proposed in this research
investigates a cascaded dual-model approach. Taking
raw data as input, the first model was trained to generate
an initial resource-requirement forecast for each of the
predefined locations, assuming spatial dependency.
The second model was then trained to predict the error
between the distribution predicted by the first model and
the true values. Using varied combinations of bi-directional
LSTM and GRU layers, the cascaded dual-model approach
indicated significant improvements compared to standard
LSTM and GRU implementations in initial evaluations.
The system would then handle prediction distributions for
intervals in which relevant preemptable events with limited
sample data and no identifiable time-series correlations
could cause highly discernible data variation. Depending on
the application space, such events could include concerts,
public holidays or an incoming influx of patients from a
major accident.
Despite the trained models being capable of
augmentation for the generation of long-term allocation
forecasts, the proposed system was evaluated on shortterm
predictions generated using a one-step lookahead.
Once the event biases affecting the initial prediction had
been handled, further post-processing would adjust the
final allocation across the various nodes, depending on
the importance of each location and the availability of
limited resources using the forecasted requirements. Using
a priority-based double-standard repositioning model
[3] the system would then suggest a resource-relocation
strategy. This approach preemptively moves resources as
per the final prediction. Should the number of resources
at prediction not be enough to satisfy the forecasted
allocation requirement for each node, the system would
maintain a queue for moving resources as soon as they
become available.
Figure 1. System-component diagram
REFERENCES
[1] S. Hochreiter and J. Schmidhuber, ‘Long Short-Term Memory’, Neural Computation, vol. 9, no. 8, pp. 1735–1780, Nov. 1997, doi: 10.1162/
neco.1997.9.8.1735.
[2] K. Cho et al., ‘Learning Phrase Representations using RNN Encoder-Decoder for Statistical Machine Translation’, arXiv:1406.1078 [cs, stat],
Sep. 2014, Accessed: May 10, 2021. [Online]. Available: http://arxiv.org/abs/1406.1078
[3] V. Bélanger, Y. Kergosien, A. Ruiz, and P. Soriano, ‘An empirical comparison of relocation strategies in real-time ambulance fleet management’,
Computers & Industrial Engineering, vol. 94, pp. 216–229, Apr. 2016, doi: 10.1016/j.cie.2016.01.023.
30 | Faculty of Information and Communication Technology Final Year Projects 2021
Securing the IoT with SDN
BRADLEY BARBARA | SUPERVISOR: Prof. Ing. Saviour Zammit
COURSE: B.Sc. (Hons.) Computer Engineering
The number of internet of things (IoT) devices is increasing
at a steady rate, with billions of IoT-connected devices
emerging on a yearly basis. Hence, keeping the IoT
environment secure is a task of the greatest importance.
One of the prevalent threats in the IoT environment is the
denial-of-service attack (DoS attack), which depletes the
resources of its target, thus rendering it unusable.
The main aim of this study was to address the abovementioned
issue by using software-defined networking
(SDN), a networking innovation that separates the data
and control planes. This separation allows the creation of
a centralised network-provisioning system, which in turn
allows a greater degree of flexibility, programmability, and
management.
This project proposes a testbed based on the GNS3
network emulator, whereby the testbed would emulate
DoS attacks to be subsequently detected and mitigated
using algorithms developed for the purpose. The detection
algorithm is based on entropy, which is a measurement of
uncertainty. An entropy-based detection algorithm was
chosen, as such an algorithm does not incur significant
overheads while still being one of most efficient methods to
detect abnormal traffic patterns. In this work the entropy
was calculated according to the variability of the destination
IP address. The standard deviation was calculated on the
basis of the entropy measurements carried out and, once
an attack was detected, the malign traffic was mitigated
by dynamically installing a flow to drop the traffic.
The proposed testbed consisted of the following: an
RYU SDN controller which was installed on an Ubuntu
machine; an OpenFlow-enabled switch; IoT devices
simulated by using a Raspberry Pi virtual machine; and a
Kali Linux appliance used to create malicious traffic. The
simulation conducted on the testbed covered four separate
test scenarios, with the last three scenarios aiming to
overcome limitations present in the first scenario.
Figure 1. Network diagram
Internet of Things
Figure 2. Packet count during a DoS attack
L-Università ta’ Malta | 31
Drone object-detection based on
real-time sign language
GABRIELE BORG | SUPERVISOR: Prof. Matthew Montebello
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Internet of Things
In recent years unmanned aerial vehicles (UAVs), commonly
known drones, have advanced in various aspects, including:
hardware technologies, autonomous manoeuvre and
computational power. Consequently, drones have become
more commercially available. Combining this with the
increasing application of artificial intelligence (AI) allows
for increasing the number of applications of UAVs.
In this project, drones, image processing and object
recognition were merged together with the aim of creating
a personal assistant. However, this is not just any virtual
personal assistant (PA), such as Alexa, Siri or Google
Assistant, but an assistant that would communicate through
sign language[1]. Such a PA would benefit the hearingimpaired
community, which constitutes over 5% of the
world’s population and amounts to 466 million individuals.
Sign language [2] is a visually transmitted language that
is made up of sign patterns constructed together to form a
specific meaning. Due to the complexities of capturing and
translating sign language digitally, this research domain has
not been able to adequately compare with the advanced
speech recognition available nowadays. Hence, this project
attempted to combine the use of drones, following the
user closely, and entering the frame of hand gestures.
The project also incorporated object recognition for sign
language characters of the American Sign Language (ASL).
In practical terms, the drone would follow the user
closely, allowing them to spell out a word, letter by letter,
forming a word referring to an object. The drone would then
pivot while scanning the area for the object sought by the
user [3]. Should the object be found, the drone manoeuvres
itself towards the object.
The drone that was used in this project is a Tello EDU
which, in spite of having a limiting battery life of around
13 minutes, it allows Python code to be used as means of
control.
Figure 1. High-level architecture of the system
Figure 2. Hand-gesture recognition results using a convolutional neural network (YOLOv3)
REFERENCES
[1] A. Menshchikov et al., “Data-Driven Body-Machine Interface for Drone Intuitive Control through Voice and Gestures”. 2019.
[2] C. Lucas and C. Valli, Linguistics of American Sign Language. Google Books, 2000.
[3] Nils Tijtgat et al., “Embedded real-time object detection for a UAV warning system”. In: vol. 2018-January. Institute of Electrical and
Electronics Engineers Inc., July2017, pp. 2110–2118.
32 | Faculty of Information and Communication Technology Final Year Projects 2021
Radio Frequency Wideband Wilkinson
Microstrip Power Couplers
KIM CAMILLERI | SUPERVISOR: Dr Inġ. Owen Casha
COURSE: B.Sc. (Hons.) Computer Engineering
Designing high-frequency circuits is a challenging
endeavour. At high frequencies beyond the gigahertz range,
discrete components such as capacitors and inductors
start to behave in a non-ideal manner, and their correct
operation is limited by their self-resonating frequency
which depends on their size and shape (see Figure 1) [1].
Microstrip structures, as shown in Figure 2, are used
so that the limitations of discrete components are
circumvented when designing beyond the gigahertz range
[2].
This project has set out to design, simulate and
implement various wideband Wilkinson Microstrip Power
Couplers, such as the stepped impedance variant. The
design methodology consisted of initially creating a
lumped element model of the broadband circuits to be
designed. These were then simulated in a circuit simulator
to ensure their correct operation and characteristics. The
lumped element models were subsequently converted
into microstrip sections of correct dimensions and
simulated using an electromagnetic simulator. The same
simulator was used to trim the designs in order to meet
the specifications prior to sending them for fabrication.
The designed structures were implemented using an FR-4
double-sided printed circuit board technology.
Finally, the microstrip circuits were characterised and
tested using a vector network analyser. The measured
scattering parameters were compared to those simulated
using both the circuit simulator and electromagnetic
simulator.
Figure 1. Frequency response of the impedance of a discrete capacitor
(source: C. Bowick, 1982 [3])
Figure 2. Microstrip structure: its dimensions (width W and height H)
determine its characteristic impedance.
Internet of Things
REFERENCES
[1] Sturdivant R., “Lumped Elements at Microwave and Millimeter-wave Frequencies”, 04 June 2016. [Online]. Available: http://www.
ricksturdivant.com/2016/06/04/lumped-elements-at-microwave-and-millimeter-wave-frequencies/. [Accessed: 04-May-2021].
[2] T. Edwards and M. Steer, “Foundations for Microstrip Circuit Design, 4th edition,” Foundations for Microstrip Circuit Design, 4th Edition, John
Wiley & Sons, 2016, p. 1.
[3] C. Bowick, “RF Circuit Design”, Oxford: Butterworth-Heinemann, 1982, p. 13.
L-Università ta’ Malta | 33
Confirming the presence of body-worn
sensors at critical indoor checkpoints
QUENTIN FALZON | SUPERVISOR: Dr Joshua Ellul | CO-SUPERVISOR: Prof. Ing. Carl Debono
COURSE: B.Sc. (Hons.) Computing Science
Internet of Things
Internet of Things (IoT) enabled systems afford low power
consumption but often at the expense of high-frequency
data. This project combines low-frequency data from a
depth camera with received signal strength indication
(RSSI) of a Bluetooth sensor. The study investigates whether
data could be used to determine if a person is carrying the
sensor through an indoor checkpoint (e.g., the front door
of their home).
The system was developed to cover a hallway,
measuring approximately 1.5m by 4m. Two IoT-enabled
base stations were deployed in the environment: one at
the inner end of the hallway and another at the opposite
end, near the front door of the house. Both base stations
would measure the RSSI from the sensor several times as
the person walks through the hallway, away from the first
base station and towards the second. Two base stations
were used as they offer improved accuracy over a single
reference point.
A depth camera, controlled by the second base
station, was also set up near the exit. This was installed
for detecting and tracking a person through the hallway
as they approach, measuring how far away they would
be from the exit in real time. Detection and tracking were
accomplished using a single-shot detector (SSD) which
is based on an implementation of a convolutional neural
network (CNN).
Depth and RSSI measurements are obtained
approximately 4 times per second and 3 times per second,
respectively. The system was evaluated in a controlled
environment of the hallway described above, with a single
person wearing the sensor and maintaining line of sight
with both base stations.
Two practical applications of this project would be:
a) in a medical setting, alerting family or health carers if
an Alzheimer’s patient were to wander out of a safe zone
(see Figure 1), and b) attaching the sensor to an ‘item of
interest’, such as a set of keys, to alert individuals that they
might be leaving the house without the item (see Figure 2).
Figure 1. Health carer being alerted about a wandering Alzheimer’s
patient
Figure 2. Person being alerted that they are about to leave home
without their keys
34 | Faculty of Information and Communication Technology Final Year Projects 2021
Evaluating centralised task-scheduling
algorithms for multi-robot task-allocation
problems
CHRIS FRENDO | SUPERVISOR: Dr Joshua Ellul | CO-SUPERVISOR: Prof. Ing. Saviour Zammit
COURSE: B.Sc. (Hons.) Computing Science
This project investigates the problem of task allocation with
swarms of robots. Swarm robotics enables multiple robots
to work together with the aim of accomplishing a particular
task. In some cases, it might be beneficial to split a large
task into smaller tasks. This project explores tasks that
are sequentially interdependent, which means that before
executing Task B, Task A would need to be executed first.
A foraging task, where robots must find food and return
it to a nest, was used as an instance of the task-allocation
problem. Foraging could be split into two tasks: harvesting
and storing. Previous work in this area investigated the
scenario where a harvester robot was to directly hand over
the collected food item to a storing robot. In this project
a cache with a finite capacity was used, thus enabling a
harvester to place the food item within a temporary storage
location. A storing robot would then collect the food item
and take it to the nest.
The evaluation carried out in this project sought to
determine whether a cache would result in a more efficient
harvesting solution, and in which cases this might occur.
Three algorithms were tested, namely: one where no cache
was used (a robot performs both subtasks sequentially);
one with fixed allocations; and another with a basic taskallocation
algorithm that would depend on the cache
status. From the results obtained, it was observed that for
the experimental scenario in this project, the best results
occurred when a cache was not used. This could prove to
be interesting, as the generally held view is that addressing
smaller subtasks would yield a better result. The outcome of
this experiment suggests that there might be more efficient
and more complex task-allocation algorithms, which were
not explored in this project.
Figure 1. Frame taken during an experiment running on the ARGoS
simulator
Internet of Things
Figure 2. Results from fixed-task allocation experiments showing the average food collected
over 10 experiments for each combination of swarm size and allocation ratio.
L-Università ta’ Malta | 35
Autonomous drone navigation for the
delivery of objects between locations
CONNOR SANT FOURNIER | SUPERVISOR: Prof. Matthew Montebello
CO-SUPERVISOR: Dr Conrad Attard | COURSE: B.Sc. IT (Hons.) Software Development
Internet of Things
The work developed is a proof-of-concept that aims to
address the potential of autonomous drone navigation
within the transportation industry. The chosen approach
was to carefully consider the key limitations identified by
Frachtenberg [1]. A solution that could possibly overcome
these limitations for autonomous collection and delivery of
objects was conceptualised through careful investigation.
In the process, autonomous navigation between two points
was also developed as a means of proving that navigation
and delivery would be possible without human intervention.
Since it was necessary for the pick-up and dropoff
method to be autonomous, the entire process had
to exclude human involvement. The apparatus for the
pick-up and drop-off experiment was created following
an assessment of a number of sources, Kvæstad [2] in
particular. The apparatus in question was fitted with a
special case to house a magnet, which is a central feature
of the apparatus. The case containing the magnet was
designed to slide down a rail on launch, bringing the magnet
into contact with the item to be transported. Upon landing,
side struts would push the magnet upwards, forcing it to
disconnect from the object being transported, effectively
dropping it off.
Coupled with the developed apparatus is the transport
controller, which has proved to be imperative for user
involvement. As stated by Hikida et al. [3], a user interface
would help simulate the concept of drone delivery, whilst
implementing a means for users to plan routes. Hence,
the host machine was provided with start and destination
coordinates through the controller, autonomously
constructing a list of commands to be followed to complete
the delivery.
Since the developed software is a proof-of-concept
system on a small scale, the communication between the
host machine and drone could only be maintained over a
short distance. As a result, any notable limitations could be
attributed to the experimental capacity of the work, being
a proof-of-concept for autonomous navigation with an
object pick-up/drop-off function.
Figure 1. Design for autonomous
pick-up and drop-off apparatus
Figure 2. Project structure for the host machine and drone communication, and instruction
automation
REFERENCES
[1] Frachtenberg, E., 2019. Practical Drone Delivery. Computer, 52(12), pp.53-57.
[2] Kvæstad, B., 2016. Autonomous Drone with Object Pickup Capabilities (Master’s thesis, NTNU).
[3] Hikida, T., Funabashi, Y. and Tomiyama, H., 2019, November. A Web-Based Routing and Visualization Tool for Drone Delivery. In 2019 Seventh
International Symposium on Computing and Networking Workshops (CANDARW) (pp. 264-268). IEEE.
36 | Faculty of Information and Communication Technology Final Year Projects 2021
Indoor navigation and dynamic obstacleavoidance
in assistive contexts, using low-cost
wearable devices and beacon technologies
JOSHUA SPITERI | SUPERVISOR: Dr Peter Albert Xuereb | CO-SUPERVISOR: Dr Michel Camilleri
COURSE: B.Sc. IT (Hons.) Software Development
With today’s advancing technology, the number of
persons making use of navigation devices has increased
significantly. While outdoor navigation systems are
already available and in use, this is not the case for indoor
navigation. Although past research into indoor navigation
has shown some degree of success, further improvements
in accuracy and response time would be required to
make the technology generally usable. Navigating
through large buildings, such as airports and shopping
centres, or venues hosting particular events spread over
large indoor areas, still present significant challenges.
Many people find navigating such large spaces without any
technological aid both confusing and disorienting. Visually
impaired persons encounter added difficulty when seeking
to navigate unassisted, be it indoors or outdoors. While
outdoor spaces tend to be more conducive to developing
technology that would be adequately robust and reliable,
indoor spaces are very challenging in this respect. This
research therefore proposes an artefact in the form of a
portable device that would assist a user to determine
their current position in an indoor environment, calculate a
route to their destination and provide real-time interactive
assistance through an unobtrusive wearable device in the
form of spectacles.
Previous research studies have utilised various locationsensing
techniques to different rates of success. Some
studies opted to make use of Bluetooth beacons or radio
frequency devices, both of which proved not to reach the
level of accuracy required for such navigation [2]. On the
other hand, the studies that used Wi-Fi and ultra-wide band
achieved a satisfactory level of accuracy [1]. Although the
latter provides the highest level of accuracy, it is difficult to
implement without a substantial financial outlay. Hence, this
study was carried out using , low-latency indoor-location
technology, based on wireless Ethernet beacon signals.
A low-cost, off-the-shelf ESP32 device with inbuilt Wi-Fi
capabilities, was used to create the beacons. These were
programmed in object-oriented C++ using the Arduino IDE.
The beacons co-exist with existing Wi-Fi access points and
provide fast updates of the user’s position, which is crucial
in helping the user avoid dangerous situations. A map of
the building in grid form could be managed through a webbased
interface. Important environment locations such as
doors, stairs, lifts and obstacles were marked and colourcoded.
The beacons should be distributed throughout the
building, preferably in the corners of each room, to obtain
the best possible coverage and level of accuracy. The
microcontroller found on the portable device would receive
packets with information regarding the position of the
beacons before calculating the route based on mapping
points.
The accompanying schematic diagram outlines the
technologies used. The location has been calculated
according to the distance of the user from the beacons
in the area by making use of the received signal strength
indicator (RSSI). A limit was set to ignore beacons having
a low signal strength, so as to keep the level of accuracy
as high as possible. In this study, indoor navigation and
obstacle avoidance was computed through the combination
of position and map data. Directional vibrations and voice
prompts were then used to guide the user to the final
destination.
Figure 1. Schematic diagram
Internet of Things
REFERENCES
[1] B. Ozdenizci, K. Ok, V. Coskun and M. N. Aydin, “Development of an Indoor Navigation System Using NFC Technology,” 2011 Fourth
International Conference on Information and Computing, 2011, pp. 11-14, doi: 10.1109/ICIC.2011.53.
[2] M. Ji, J. Kim, J. Jeon and Y. Cho, “Analysis of positioning accuracy corresponding to the number of BLE beacons in indoor positioning system,”
2015 17th International Conference on Advanced Communication Technology (ICACT), 2015, pp. 92-95, doi: 10.1109/ICACT.2015.7224764.
L-Università ta’ Malta | 37
Ambient acoustic noise-monitoring
solution based on NB-IoT
ALYSIA XERRI | SUPERVISOR: Prof. Ing. Carl Debono | CO-SUPERVISOR: Dr Mario Cordina
COURSE: B.Sc. (Hons.) Computer Engineering
Internet of Things
Ecoacoustics or soundscape ecology is the study of the
effects of sound in our environment. It is an important
field of study due to the ecological impact of noise on
biodiversity. Nevertheless, research in this field is limited,
due to a number of factors. One of these is the lack of
wireless connectivity, making noise monitoring a timeconsuming
and expensive process, since it currently relies
heavily on manually retrieving data from deployment sites.
The use of a wireless system would reduce the time and
cost currently required for gathering the necessary data.
In view of the increasing internet of things (IoT) market,
sound monitoring could be done efficiently through cheap
wireless sensor systems. Low-power wide-area networks
(LPWAN) were developed to facilitate the communication
for wireless devices. For this project, the noise monitoring
application chosen was the gunshot detection method.
A flagging system was created so that once a gunshot
has been detected, a server would be notified with the
appropriate information.
The acoustic sensor chosen for recording the gunshots
was Audiomoth, which is a scalable open-source device
used in various noise-monitoring applications ‒ including
the observation of different species of birds and urban
noise monitoring. With the creation of a gunshot-detection
algorithm, Audiomoth could specifically record gunshots
from all the sounds captured by the sensor. When a gunshot
would be detected, the appropriate information is sent out
to a server by using LPWAN technology. The technology
chosen for this project is narrowband IoT (NB-IoT). This
is due to its low latency and the quality of service (QoS)
allowed by the said technology.
The Arduino MKR NB 1500 was used for narrowband
communication and was set to receive information relayed
from the Audiomoth. The MKR NB 1500 then sent out this
information to a server, where it was recorded for further
investigation.
Figure 1. Audiomoth (left) and Arduino MKR NB 1500 (right)
Figure 2. System diagram
38 | Faculty of Information and Communication Technology Final Year Projects 2021
Automatic sports-match-highlight generation
KURT JOSEPH ABELA | SUPERVISOR: Dr Claudia Borg
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Big sporting events are reported in real time by many
news outlets in the form of minute-by-minute updates.
Many news outlets also issue a news summary of the event
immediately after the end of the event. This is generally a
time-consuming task, and the journalists would be always
under pressure to be among the first to issue their report
at the end of the match, in order to publish the articles at a
point when the level of interest would be at its peak.
This project proposes a method for detecting highlights
from a football match automatically, by using both audio
and text features that have been extracted from the
commentary. Once the highlights would be detected, the
system would then create a textual summary of these
highlights, thus facilitating the production process of news
articles based on sports reporting.
The dataset used comprises some of the best FIFA World
Cup matches published on YouTube. This dataset made it
possible to extract the audio from each video, and the text
was automatically generated through automatic closed
captioning (CC). The project entailed creating a corpus
of 14 matches, totalling 23.5 hours. Previously available
corpora were either only text-based (such as minute-byminute
reports) or focused on features that were aimed at
classifying game outcomes. In order to use the audio files
as input to a classifier, the task at hand required producing
spectrograms, through which any features identified could
be analysed. The data is split into 70% training set and 30%
test set.
In order to build the system, two separate classifiers
were trained: one for the audio and one for the text. The
audio classifier was based on a DenseNet architecture,
whereas the text classifier was based on a 1D convolutional
neural network (CNN) architecture. Once the individual
components were trained, a further ensemble classifier
was trained to determine the correct level of confidence
that should be present in the audio and text classifiers –
outputting a final classification for the corresponding
timestamp. Finally, once the highlights were classified, the
system used the text from the relevant detected timestamps
as highlights to produce a summary report.
The audio and text classifiers were evaluated as
separate components, whilst the summary outputs were
evaluated by comparing them to gold-standard reports
from various sports sites. In future work, such a system
could also include video analysis, thus providing a richer
feature system to detect and report highlights. The same
approach could also be applied to different types of
sporting events.
Audio Speech &
Language Technology
Figure 1. System architecture
L-Università ta’ Malta | 39
A system to support audio
authenticity in digital forensics
NICHOLAS JOHN APAP BOLOGNA | SUPERVISOR: Dr Joseph G. Vella
COURSE: B.Sc. IT (Hons.) Software Development
Audio Speech &
Language Technology
This project attempts to contribute to audio-forensic
procedures by providing a system that would process and
check audio files for their authenticity, through various
methods. In order to achieve this, it would be necessary
to build a collection of tools and techniques, as creating a
single tool would result in great difficulty adapting the tool
to all the situations/scenarios encountered in the field of
audio forensics.
In its original version, the project is a web-based
system that would allow the forensics expert to upload and
analyse audio files. However, provisions were put in place
through the construction of an application programming
interface (API), to allow other types of clients to access
this system such as mobile, web and desktop applications
simultaneously (as depicted in Figure 1). In addition to this,
the API would allow clients to run analysis tasks on the
data available.
The system accepts multiple file formats as input, such
as FLAC, AAC, WAV, MP3, etc., with the multiple audio files
being supported by the Librosa library. This would allow the
importation of multiple audio file formats into a standard
format. It is recommended that source audio files be stored
as WAV or some other lossless file format, to ensure the
preservation of details that could otherwise be lost when
using lossy file formats.
Furthermore, in order to achieve the desired functionality,
several libraries, frameworks and tools were used. Among
these were: Django, Django Rest Framework, React, SciPy,
Numpy, MathPlotLib and Librosa. The Django and Django
Rest Framework were used to construct the API needed for
the front end (which was built using the React and Material-
UI libraries, among others). SciPy, Numpy, MathPlotLib and
Librosa are used to load, process and output results of
analysis done on audio files.
The available methods fall into two categories:
container-based analysis and content-based analysis.
Container-based analysis examines the properties of the
file (i.e., date and time of creation/modification) whereas
content-based analysis examines the actual content of the
file (i.e., the waveform). Authenticity could be guaranteed
by: searching for a discontinuity in a feature hidden
within the waveform (e.g., electric network frequency);
checking if different microphones recorded the audio file
(e.g., microphone signature analysis); checking if different
environments were used to record the audio file (e.g.,
environmental signature analysis); checking if different
speakers recorded the audio (e.g. speaker identification);
and checking for discrepancies within the properties of the
file (i.e., container analysis).
The system pays particular attention to the integrity
of data through file hashes, which are random strings of
numbers and letters that represent a whole file. Any change
in the file would result in a file hash that would be completely
different from the previous one. The original file hash would
be recorded immediately upon upload, safeguarding
against any tampering of data after this point. In addition
to this, the system also places importance upon the access
levels for users, meaning that each user should only be able
to access the parts of the system they may view, and not
others.
Figure 1. Architecture of the proposed system
40 | Faculty of Information and Communication Technology Final Year Projects 2021
AI-assisted pedagogical chatbot
ANDREW EMANUEL ATTARD | SUPERVISOR:Prof. Alexiei Dingli
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
The traditional classroom setting features a single
educator, who is tasked with educating multiple students.
This paradigm is fundamentally flawed, when , considering
that the number of students requiring constant attention
and educational monitoring throughout their studies is
quite high, when compared with the number of available
educators equipped to assist them.
Taking the above premise as point of departure, this
study focused specifically on the teaching of mathematics,
which is especially challenging in this regard. This is primarily
due to the nature of mathematics, which require the
assimilation of a concept in order to grasp the next topic.
Therefore, if a student were to fall short of understanding
one concept, this would negatively affect the student’s
ability to solve problems relating to the ensuing topic.
This project aims to help solve this issue by enabling
educators to automatically generate chatbots that
their students can use. The chatbot was created by
obtaining basic maths lessons from the educator and
then generating a chatbot that is capable of providing
the required explanation when asked. Chatbot systems
generally work by detecting what the user wants to, based
on their input (often referred to as ‘user intent’ in modern
systems) and then outputting the correct response. Since
chatbots require a template of what the user might say
in a conversation, possible questions were extracted from
the explanations provided, through a dedicated question
extraction component. Meanwhile, the list of outputs that
the chatbot offered in response to the user’s request was
populated by not only the given explanations but also
by explanations that would have been generated by the
system.
The explanations generated by the system were
produced through a dedicated subcomponent capable
of fine-tuning a generative model to create explanations
that would be close to the explanations originally provided
by the educator. Despite generative models generally
creating high-quality text when properly trained and duly
fine-tuned, there was an element of unpredictability,
where the output might not necessarily be of suitable
quality. Hence, a multinomial naive Bayes classifier was
developed to filter out any low-quality explanations that
would have been produced by the generative model. Once
the explanations were generated, a numerical substitution
system was deployed to generate a variety of explanations
with different numbers, while successfully maintaining the
relationship between the numbers in a given explanation.
Once the possible questions and the explanations
were generated, the data was then written into a chatbot
domain file. It was then used to train, and subsequently
deploy, a chatbot that could be used by the student. This
resulted in a chatbot that would provide the student with
the required explanation, worded in a style similar to that
of the student’s educator.
Audio Speech &
Language Technology
Figure 1. Example of student-chatbot interaction
L-Università ta’ Malta | 41
Grammar and spell-checking
techniques for Maltese
MATTHIAS BUHAGIAR | SUPERVISOR: Dr Colin Layfield | CO-SUPERVISOR: Prof. John M. Abela
COURSE: B.Sc. IT (Hons.) Computing and Business
Audio Speech &
Language Technology
This project discusses and applies grammar and spellchecking
techniques to Maltese. Although spell-checkers are
also available for this language, the suggestions they offer do
not always meet user expectations. Additionally, no grammar
checker for Maltese has been developed to date.
Using a novel Soundex approach, the spell-checker
developed promises to offer many more accurate
suggestions. This is because it utilises the pronunciation of
words, as well as the character distance between words.
Therefore, while other spell-checking techniques find it difficult
to suggest ‘għamluhomlhom’ for ‘amluhomlom’, this would be
possible if using the Soundex. Moreover, correct words with a
pronunciation similar to a misspelling could obtain a higher
ranking. Thus, ‘ċerv’ and ‘ħabib’ would receive a higher ranking
for the misspellings ‘ċerf’ and ‘ħabip’.
Apart from using the pronunciation of words to obtain
suggestions, the Symmetric Delete algorithm was used to
obtain words within a certain character edit distance. This
means that ‘rabatli’ is capable of being generated for ‘ravatli’,
or ‘kellimni’ for ‘kellinmi’.
The rule-based grammar checker uses an XML rule base
that is easily extendible. Only minimal knowledge of the inner
workings of the system would be necessary to expand the
rules. Some of the rules developed include: checking for the
correct use of the ‘-il’ particle that should be tagged onto
the numbers eleven to nineteen when immediately followed
by nouns (e.g., ‘tnax-il ktieb’) and checking that the definite
article would correspond to the noun (e.g., correcting ‘il-xemx’
to ‘ix-xemx’)
A web-based user interface was provided to enable the
user to write text and receive corrections. Words were marked
in red to indicate an orthographic error and in blue to indicate
a grammatical error. Suggested corrections could then be
applied by selecting them.
Figure 1. Overview of the system
Figure 2. Web interface of the grammar and spellchecker
42 | Faculty of Information and Communication Technology Final Year Projects 2021
Speech-based psychological-distress detection
CORINNE GATT | SUPERVISOR: Dr Andrea De Marco | CO-SUPERVISOR: Dr Claudia Borg
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
The World Health Organisation (WHO) defines depression
as being “characterised by a persistent sadness and a lack
of interest or pleasure in previously rewarding or enjoyable
activities”. Apart from displaying mental symptoms, such
as demotivation and lack of concentration, depression
could also trigger an array of physical symptoms. One of
these physical symptoms, which is of interest to this study,
is a change in speech, whereby persons suffering from
depression might develop different speech characteristics
when compared to non-depressed persons.
This study focused on analysing whether the abovementioned
characteristics could be identified by machine
learning techniques, towards enabling the distinction
between depressed and non-depressed speech.
The aim of this study was to research existing
automatic depression detection (ADD) methods designed
for depression detection and classification, as well as to
propose architectural enhancements to these methods.
Research into ADD is relatively recent, and currently offers
very limited datasets in terms of amount and size. The
chosen dataset for this study is the DAIC-WOZ dataset
compiled by the University of Southern California. This
contains audio material from interviews conducted
between a virtual interviewer and a human participant. The
study was based on a sample of 189 human participants
with different levels of depression. The various levels of
depression were calculated through a PHQ-8 questionnaire,
which consists of eight questions concerning: interest
in things, emotions, sleep levels, energy, appetite, selfconfidence,
concentration, and unusual behaviours in
bodily movements.
To tackle this classification problem, two possible types of
solutions were researched. These solutions included either the
use of vocal biomarkers, such as the AVEC and GeMAPS feature
sets, or making use of spectrograms. Examples of shallow
machine learning models were trained using vocal biomarkers,
while convolutional neural networks (CNNs) were trained using
spectrogram arrays. From these researched approaches, it was
decided to focus the proposed approach on CNNs, in view of
their strong pattern-matching abilities.
Spectrograms represent the frequency-vs-time-information
of audio signals and offer a breakdown of all the vocal behaviour
of a speaker. An example of a spectrogram for a four-second
audio clip could be seen in Figure 1. Besides showing message
content, spectrograms also reveal useful information about the
state of mind of the person speaking.
This study evaluated the effects of using both 1D and 2D
CNNs using an ensemble averaging method to calculate the
average accuracy score. Furthermore, the possibility of adopting
a multiclassification approach to depression classification was
duly tested. Instead of viewing mental health disorders as a
binary problem (having / not having the disorder), a possible
alternative approach would be to visualise mental conditions
along a spectrum. By increasing the classification accuracy,
a reduction of possible misdiagnosis of patients could be
achieved.
ADD systems are not intended to supplant seeking help for
mental disorders from medical professionals, but to provide a
way with which to track progress and/or deterioration of mental
health. This would ideally encourage individuals to seek help with
any mental issues they might be experiencing, thus also helping
reduce the negative stigma attached to mental issues.
Audio Speech &
Language Technology
Figure 1. Spectrograms plotting four-second speech samples for both depressed and non-depressed participants
L-Università ta’ Malta | 43
Analysing Reddit data for the prediction
and detection of depression
ANDREW JOSEPH MAGRI | SUPERVISOR: Dr Lalit Garg
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Audio Speech &
Language Technology
The digital footprint defines a person’s digital presence,
such as the user’s activity on social media platforms. These
platforms are becoming increasingly more popular and
are growing in number. Social media sites, allow users to
express opinions, tastes, and emotions. On the basis of this
information, the study attempts to predict and determine a
user’s state of mind, with a view to assessing whether they
might require help in maintaining their psychological wellbeing.
This could be achieved by analysing a user’s posts and
comments, paying particular attention to any defining traits
in the user’s language that could suggest that the user might
be – or is at risk of – experiencing a psychological condition.
For this project, a dataset from the social networking site
(SNS) Reddit was used. This platform was chosen for its quality
of allowing users to express themselves freely and informally.
This is particularly relevant, as a person’s true character is
most evident when they can express their true self.
The data which was used throughout this project consisted
of Reddit posts (including comments) collected from 1707
users. There was a varying number of posts from one user to
another, and the total of the entire dataset amounted to 1,
076, 582 different posts. Approximately 8.4% of these users
appeared to be depressed, whilst 91.6% of the users were
control users who did not suffer from depression. Users were
classified as being depressed if they explicitly mentioned that
they had been diagnosed with depression.
This study sought to learn certain traits in the language
used by users actually suffering from depression, so as to
determine whether other users would indeed be experiencing
depression or at risk of depression. These traits include the
use of specific words, the length of the Reddit of the user’s
posts, and the particular use of certain punctuation, such as
repeated exclamation marks (e.g., ‘!!!’), among many others.
Multiple techniques were tested, in order to identify the best
approach for reaching the aims and objectives. Amongst the
models that were considered are: support-vector machines
(SVMs), neural networks (NNs) and random forest classifiers
(RFCs).
The most efficient way to predict depression could be
determined depending on the results achieved in this study.
This method could then be applied to other social media
platforms to establish whether the user might be at risk of
depression or already suffering from depression. The user
could then be notified of the risk that they might be facing
and recommending what could be done to treat depression
to regain mental well-being and a better quality of life.
Figure 1. Flow diagram of the implementation of the system
44 | Faculty of Information and Communication Technology Final Year Projects 2021
Developing an educational game to teach
Maltese to children with intellectual disabilities
MARTINA MELI | SUPERVISOR:Dr Peter Xuereb
COURSE: B.Sc. IT (Hons.) Computing and Business
While there has been significant progress Maltese education
sector since the introduction of inclusive education, there still
remain a number of concerns revolving around the challenges
encountered by students with learning disabilities. [1]
Reasoning and interpretation of information is
challenging for intellectually disabled children, and hence
they would require direct teaching and assistance [2,3]. In
view of possible deficiencies in communication skills, and
language abilities related to vocabulary, sentence building,
and understanding complex instructions, language learning is
also a struggle. This causes a lack of proficiency and leads
to low self-esteem in conversation and public speaking [2,3].
With the growth in technologies for impaired individuals, it is
imperative that these be adapted for children with disabilities,
and any applications utilised by such users must be designed
accordingly, taking into consideration specific disabilities and
requirements.
Since children with intellectual disabilities are familiar
with and use smart technology on a daily basis, this research
project involved supplying an educational digital game to
teach Maltese to intellectually disabled children. The game
was designed in such a way as to be accessible both within
a classroom environment and in the comfort of the students’
homes. The project also consisted in evaluating the extent
to which the game would effectively facilitate the languagelearning
process among users of varying intellectual
disabilities, and at different levels of education, within a limited
time span. Research on game-based learning, traditional
teaching theories and strategies was duly undertaken in order
to ensure that these elements would be applied effectively.
Additionally, focused workshops were held with Learning
Support Educators (LSEs) experienced in assisting children
with intellectual disabilities. The aim of these workshops was
to explore techniques for implementing these games and to
discuss optimal design considerations.
A central challenge in developing such a game is
motivating the users to make use of and enjoy the game in
learning the language. The proposed solution included audio
and visual aspects to help engage the users as effectively
as possible. The text-to-speech functionality, as well as
the different sounds played depending on users’ answers,
provided an enhanced learning experience for students with
intellectual disabilities. Moreover, drag-and-drop components
and the possibility to collect rewards motivates students,
stimulating them to learn further.
When pupils are presented with challenging activities
beyond their capabilities, they tend to lose interest. Therefore,
a further challenge in creating the game was taking into
account the pace of learning of children with intellectual
disabilities and their different learning abilities, all of which
would affect the overall perception towards the game. The
solution proposed enables educators to add levels and
remove pre-existing ones to ascertain that the game provides
activities that match the ability of the user.
The project entailed the adoption of an iterative softwaredevelopment-life-cycle
approach, through which wireframes
were designed for requirements elicitation. Various prototypes
were developed and amended upon processing the feedback
from the participating educators. The LSEs made use of the
system themselves and analysed their pupils while playing
the game, observing their reactions and noting any progress
made. A usability study and educator evaluation then followed,
determining whether the game was indeed successful in
achieving its objective of facilitating the teaching of Maltese.
Figure 1. Use case diagram for the educational game
Audio Speech &
Language Technology
REFERENCES
[1] “Submission to the Committee on the Rights of Persons with Disabilities in Advance of Its Consideration of Malta’s 1st Periodic Report”,
Malta, Feb. 2018. Accessed: Jan. 06, 2021. [Online]. Available: https://tbinternet.ohchr.org/Treaties/CRPD/Shared%20Documents/MLT/
INT_CRPD_ICO_MLT_30550_E.docx
[2] M. Evely and Z. Ganim, Intellectual Disability (Revised). Australian Publishers Association, 2018.
[3] “Frequently Asked Questions on Intellectual Disability and the AAIDD Definition,” 2008. Accessed: Sep. 19, 2020. [Online]. Available: https://
www.aaidd.org/docs/default-source/sis-docs/aaiddfaqonid_template.pdf?sfvrsn=9a63a874_2
L-Università ta’ Malta | 45
A comparison of speech-recognition
techniques and models
ANDREW PIZZUTO | SUPERVISOR: Dr Colin Layfield | CO-SUPERVISOR: Prof. John M. Abela
COURSE: B.Sc. IT (Hons.) Software Development
Audio Speech &
Language Technology
There has been an increase in speech-recognition
software used in many devices. This software was initially
introduced to the public mostly through smartphones. As
technology is constantly improving, speech recognition
software is found on different devices and household
appliances, such as televisions and even refrigerators. As
people are using speech-to-text software more frequently,
this form of computer interaction is becoming the norm.
Hence, inaccuracies such as words misunderstood for
others, may cause certain difficulties in the future.
The project evaluated and compared the most relevant
models, to establish which would be best adopted in
different circumstances. This study sought to give a
clearer picture of how these devices and appliances work,
since speech recognition software seems to be becoming
an attractive form of computer interaction.
The project set out to delineate different topics, such
as sound and preprocessed sound recordings. It then
focused on feature extraction techniques, for the purposes
of retrieving key characteristics of sound waves that could
be used at the speech recognition stage. This could be
achieved by applying mel-frequency cepstral coefficients
(MFCC), which could be presented graphically by using a
spectrogram (see Figure 2).
Lastly, the data from the feature extraction process
was fed into the different models. Three models, namely:
the hidden Markov model, a convolutional neural network
and the dynamic time warping algorithm, were selected
and compared using the same datasets. The results were
then evaluated using accuracy and running time.
Figure 1. The speech-to-text process [1]
Figure 2. Sound recording visualised in different formats [2]
REFERENCES
[1] Bhushan, C., 2016. Speech Recognition Using Artificial Neural Network – A Review. [online] Iieng.org. Available at: <http://iieng.org/images/
proceedings_pdf/U01160026.pdf> [Accessed 30 December 2020].
[2] Smales, M., 2019. Sound recording visualised in different formats. [image] Available at: <https://mikesmales.medium.com/soundclassification-using-deep-learning-8bc2aa1990b7>
[Accessed 7 May 2021].
46 | Faculty of Information and Communication Technology Final Year Projects 2021
Visual question answering module for apps
intended as aids to the visually impaired
ESTHER SPITERI | SUPERVISOR: Prof. Adrian Muscat
COURSE: B.Sc. (Hons.) Computing Science
Visual question answering (VQA) has come a long way,
especially in technologies for the benefit of persons with visual
impairments. However, VQA is still incapable of answering a
question in the same manner as a human being, as the ability
of existing technology to (visually) interpret certain questions
is limited.
This project focused on obtaining a deeper understanding
of 3 key aspects, namely: the composition of the question; how
the question would be related to an available image; and how
to achieve informative answers from this relationship. A dataset
oriented around frequent requests made by low-sighted
individuals was collated for the VQA model. Question-andanswer
templates were used for the process of understanding
the inputted question and the output of the resulting answer.
Template gaps were filled according to the outcome of an
open-source, pre-trained object-detection model, and a
spatial-relation model developed for this purpose.
Models to predict spatial relations between subject-object
pairs were trained and tested on a visual relations dataset
(VRD). The best performing model was used in the VQA model
to be able to describe relations between subjects and objects
detected in images.
The VQA model was tested on the VQA dataset to evaluate
the accuracy and effectiveness of the information extracted
from the image, in order to predict its responses. The model
succeeded in the majority of results.
Performing feature selection for the spatial-relation
model might have improved the model’s output.
Additionally, many of the incorrectly predicted answers
were a consequence of undetected objects; had the
object-detection model been trained on the images used
in the VQA dataset, the experiment might have yielded
better results.
Upon evaluating the results achieved, this study
discusses the possibility of further work in this area.
Particular attention was given towards helping reduce the
daily challenges that visually impaired persons encounter
in their daily lives, with the aim of helping them enjoy
further independence.
Audio Speech &
Language Technology
Figure 1. Successful model prediction (image source: Krishna et al. [1]) Figure 2. VQA model process (image source: Krishna et al., [1])
REFERENCES
[1] R. Krishna et al., “Visual Genome: Connecting Language and Vision Using Crowdsourced Dense Image Annotations”, 2016.
L-Università ta’ Malta | 47
Investigation into Currier’s multipleauthorship
theory for the Voynich manuscript
LARA SULTANA | SUPERVISOR: Dr Colin Layfield | CO-SUPERVISOR: Prof. John M. Abela
COURSE: B.Sc. IT (Hons.) Software Development
Audio Speech &
Language Technology
The Voynich manuscript (VMS) is a handwritten book believed
to have originated in medieval Europe, and has been the
centre of much debate, particularly among researchers. The
VMS acquired its name from Wilfrid Voynich, a Polish book
dealer who purchased the manuscript in 1912. The authorship
of the script is unknown, as is the creator or origin of the
language in which the manuscript has been written (referred
to as Voynichese).
Among the many theories surrounding the origin,
language and authorship of the VMS, Prescott H. Currier
‒ a cryptologist who was fascinated by the mysterious
manuscript ‒ hypothesised that the script was written in
two statistically distinct languages, and by five to eight
medieval scribes, who primarily fulfilled the role of copyists
of various manuscripts. Lisa F. Davis, a palaeographer at Yale
University, took Currier’s theory a step further by applying a
digital palaeographic tool to be able to differentiate between
the handwriting of these scribes. This method allowed Davis
to identify a total of five scribes (see Figure 1). Her findings,
therefore, indicate that Currier’s multiple authorship theory
was indeed plausible.
This dissertation involved statistically analysing a
transliteration of the VMS generated from the Extensible
Voynich Alphabet (EVA) by using a stylometry-based
approach. Stylometry examines text to seek to establish
its authorship on the basis of the use of certain stylometric
features, which have been used in this experiment for
measuring the linguistic style of each scribe.
The most frequently used words have proven to be
good stylometric features for differentiating between the
five scribes. Machine learning algorithms were applied to
the transliteration to find possible distinctions between
the scribes identified by Davis. Unsupervised learning
algorithms, such as k-means clustering and hierarchical
agglomerative clustering were utilised to help cluster the
scribes according to these features. Additionally, supervised
learning algorithms such as naive Bayes and supportvector
machine (SVM) were also applied to help determine
the likely scribe or scribes on the basis of the most common
words. The results obtained point at the possibility of more
than one scribe, thus further corroborating the findings of
Currier and Davis.
Figure 1. Sample of the handwriting of each of the 5 scribes, as identified by Lisa F. Davis at Yale University in analysing
the calligraphy of the Voynich manuscript.
48 | Faculty of Information and Communication Technology Final Year Projects 2021
MorphoTest
DAVID VASSALLO | SUPERVISOR: Dr Claudia Borg
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Learning a language is always a challenging task that
requires a substantial amount of time and dedication to
be able to see any progress. This holds true with respect
to the Maltese language, Maltese grammar in particular.
Maltese has a ‘mixed’ grammar, which is influenced by its
origins. For instance, words of Semitic origin follow a rootand-pattern
conjugation system, whilst words of a Romance
origin follow a stem-and-affixation pattern. Both children and
adults learning the language often find that they would need
to memorise which system is to be applied, to which set of
words.
When compared to other languages, Maltese is considered
a low-resource language, meaning that there is a lack of
resources available to process Maltese computationally. This
is also true in terms of educational resources that could assist
Maltese-language learners in making progress. The main aim
of this project is to investigate how to utilise existing natural
language processing (NLP) tools to facilitate the creation a
language-learning tool for Maltese. Due to the richness of
Maltese morphology (i,e., the structure of its words and the
way in which they interact) the research seeks to create an
application that could assist language learners to practice
this grammatical aspect of the language.
The language-learning sector is very vast and nowadays
there are many smartphone applications that seek to aid
language learning. However, many of these applications do
not necessarily make use of NLP tools to the best advantage.
One of these applications is WordBrick [1] and it seeks
to tackle the difficulty of independent language learning
by displaying a jumble of words, presented in different
shapes and colours, requiring the user to rearrange them
to form a proper sentence. Echoing jigsaw puzzles, this is
achieved by having connectors attached to the word that
have a specific shape, where only another word with that
shape could be joined to it.
This project was inspired by WordBrick, which allows
learners to build words from their different components
(morphemes), and studying the meaning of each
component. In order to achieve this, we take advantage
of Ġabra [2], an open-source lexicon for Maltese. The
first step was to automatically segment words into their
components and associate a label to the individual
component. This task is referred to as morphological
analysis. The components would be presented to the
user, jumbled up, and they would have to join the pieces
together again in the right order to produce the word. The
focus on the language-learning component would then
determine which words should be presented to which
learners, according to their level. The type of exercises
offered could also be varied by reversing the process, and
asking the learner to segment a word and to attach a
meaning to each of the parts.
The developed application demonstrates how NLP
techniques could assist Maltese-language learners. The
main aim of the application is to provide a basis for
the development of further exercises that use NLP as
their backbone, allowing teachers to create content for
exercises more easily and with more diversity.
Audio Speech &
Language Technology
Figure 1. A screenshot of WordBrick displaying how words are presented initially and then rearranged
REFERENCES
[1] M. Purgina, M. Mozgovoy, and J. Blake, “WordBricks: Mobile Technology and Visual Grammar Formalism for Gamification of Natural Language
Grammar Acquisition”, inJournal of Educational Computing Research, vol. 58, pp. 126–159, Mar. 2020. Publisher: SAGE Publications Inc.
[2] John J. Camilleri. “A Computational Grammar and Lexicon for Maltese”, M.Sc. Thesis. Chalmers University of Technology. Gothenburg,
Sweden, September 2013.
L-Università ta’ Malta | 49
Predicting links in a social network
based on recognised personalities
ANDREW AQUILINA | SUPERVISOR: Dr Charlie Abela
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Data Science
Link prediction has become a ubiquitous presence in online
social networks (OSNs). A prominent example is the ‘People
You May Know’ feature on Facebook. In information-oriented
OSNs, such as Twitter, users choose whom to follow, on the
basis of a number of factors. Although personality is one of
the primary determiners influencing our social relationships,
its impact within OSNs is often overlooked.
Personality could be represented by the ‘Big Five’ model,
which identifies five dimensions: Openness to Experience,
Conscientiousness, Extraversion, Agreeableness, and
Neuroticism. It has been found that explicitly surveying users
for these traits is not a viable option. However, by employing
the relationship between language and personality, as
reported by Mairesse et al [1], a user’s personality could be
recognised without the need to resort to user surveys.
This research focused on extracting personality traits from
textual content, and observing how these would relate to the
established links between OSN users. In order to achieve
this, we considered state-of-the-art research and developed
personality recognition and link prediction components.
A basic representation of the personality recognition
component is offered in Figure 1. Different approaches were
investigated in line with existing research, comparing a variety
of machine learning models and optimisation techniques.
These models were trained on datasets containing users’
micro-blog postings and their Big Five trait values. The best
performing models managed to recognise personality from
text alone, achieving results that are comparable with the
state-of-the-art.
The effect of user personality towards a real-life Twitter
network was studied by applying the above-mentioned
personality recogniser. Although correlations between the
personality of followers and followees were found, it was
also observed that users had their own implicit personality
preferences in terms of who they follow. An example is outlined
in Figure 2. The Personality-Aware Link Prediction Boosting
(PALP-Boost) component takes these preferences into
account and improves accuracy across various topologicalbased
link-prediction algorithms, highlighting the utility of the
underlying psychological attributes within OSNs.
Figure 1. Input-output of the personality recognition component.
displaying a user’s followee personality preferences.
Figure 2. PALP-Boost scores of potential followees, based on their
proximity to such preferences. For the sake of visual clarity, only two
out of five Big Five dimensions are shown.
REFERENCES
[1] Mairesse, F., Walker, M., Mehl, M. and Moore, R., 2007. Using Linguistic Cues for the Automatic Recognition of Personality in Conversation
and Text. Journal of Artificial Intelligence Research, 30, pp.457-500.
50 | Faculty of Information and Communication Technology Final Year Projects 2021
Action preserving diversification
of animation sequences
MATTHIAS ATTARD | SUPERVISOR: Dr Sandro Spina
COURSE: B.Sc. (Hons.) Computing Science
The creation of good animation sequences is a lengthy
process, which is typically carried out either using a motioncapture
system or directly by content creators on 3D modelling
software. To increase realism in a virtual scene, a considerable
number of animations (e.g., for walking) would need to be
created. This project attempts to address this problem by
proposing a system which, given a set of animations, would
be able to generate variations of these while preserving the
purpose of the actions being animated.
Essentially, the process required mapping different
humanoid animation sequences into a latent space using
different clustering algorithms, and then proceeding to
create variations by combining different animations and
varying the influence of the chosen animations for the new
animation. This would then result in new variations influenced
by other animations. The dataset of animation sequences
that was mapped into the latent space was sourced from
the Carnegie-Mellon Graphics Lab Motion Capture Database.
This consists of hundreds of different humanoid animations,
such as walking, dancing, jumping and other actions that
involve hand movement while sitting and squatting.
The latent space created holds the mapped animations
in such way that similar animations are closer to each
other. The mapping function considers a feature vector
extracted from the animation sequence. The features that
were considered include, the position and rotation of each
component of the human body from 60 evenly spaced
frames, the muscle values of 60 evenly spaced frames, and
the distribution of translation and rotation values of each
human body component throughout the whole animation.
This was done to observe which features would best create
groups in the latent space, such that animations within the
groups would be closest to the animations within that group.
The groups formed in the latent space were identified
in such a way as to produce a hierarchical structure. In
practice, the space was divided into large groups; these
were further divided, until no more subgroups could be
identified. In the system, the first groups identified were
divided in terms of movement speed and direction of the
whole body. Particularly, looking at one of the groups, it was
further subdivided in terms of where the hand movement
was occurring.
The new animations were created through Unity, the
game engine. The humanoid animations were imported
into Unity according to how they were grouped in the latent
space. The user could then specify to which groups the
different limbs and the strength of the influence could be
assigned. The system then creates all possible combinations
with the animations in the chosen groups, allowing the user
to procced to choosing the preferred variations.
The correctness and quality of the results obtained was
evaluated through an online survey, where 120 participants
were asked to rate animations that included some that were
not created by the system. Results show that some variations
performed better than those of the motion-capture library.
Additionally, the range of the overall ratings was not that
wide, which suggests that the variations mixed well with
existing animation sequences.
Data Science
Figure 1. Merging of basketball dribbling and drinking (first 2 rows) into one animation sequence (third row)
L-Università ta’ Malta | 51
Aviation safety analysis
MATTHIAS ATTARD | SUPERVISOR: Dr Joel Azzopardi | CO-SUPERVISOR: Mr Nicholas Mamo
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Data Science
Aviation is currently a growth industry and, with an average
400 aviation accidents occurring on a monthly basis, it would
be imperative to determine the causes of these accidents
to improve aviation safety. Figure 1 presents the aviation
accidents occurring each year, according to data collected
by the Aviation Safety Reporting System (ASRS).
In this research, data and text mining techniques were
used to extract useful information from a large database of
aviation accidents. This study has drawn largely from the ASRS
database, which consists of over 210,000 aviation accident
reports since 1988. The ASRS holds narratives which contain
a detailed account of what occurred in the accidents, as well
as categorical information about the flights in question such
as weather elements and aircraft information. The study of
such accident reports helps to identify the cause of these
accidents, with a view to extract similarities or differences
amongst them in order to prevent fatalities and minimise the
loss of resources.
This work demonstrates the use of data mining techniques
to determine the primary problem of accident reports from
the ASRS and predict the risk factor of these accidents. This
is achieved through the use of machine learning classifiers
such as naive Bayes and support-vector machines (SVMs),
and deep learning techniques for both classification and
prediction.
To identify the primary problem of accidents, the
narratives were subjected to a preprocessing exercise, which
involved reducing words to their stems, removing punctuation
and stop words, and mapping synonyms and acronyms to
umbrella terms. Machine learning classifiers were then used
to predict the primary problem of an accident. This method
achieved an accuracy of 60% on the test data with the use
of SVM.
For the task of predicting the risk factor of accidents,
similar steps for preprocessing were carried out on synopses,
which are brief summaries of narratives. SVM once again
proved to be the best performing classifier with a test
accuracy of 61%. Furthermore, structured data was also used
to predict the risk factor of accidents. After encoding the
data and labels, SVM provided an accuracy of 66% on the
test data.
The work achieved through the proposed system
demonstrates that machines could reliably identify a flight’s
primary problem, as well as a high-risk situation in a flight.
Figure 1. Number of aviation accidents per year (as sourced from the ASRS database)
52 | Faculty of Information and Communication Technology Final Year Projects 2021
Implementations of the statemerging
operator in DFA learning
MATTHEW JONATHAN AXISA | SUPERVISOR: Dr Kristian Guillaumier
CO-SUPERVISOR: Prof. John M. Abela | COURSE: B.Sc. IT (Hons.) Artificial Intelligence
DFA learning is the process of identifying a minimal
deterministic finite-state automaton (DFA) from a training
set of strings. The training set is comprised of positive and
negative strings, which respectively do and do not belong to
the regular language recognised by the target automaton.
This problem is NP-hard and is typically accomplished
by means of state-merging algorithms. The algorithms in
this family all depend on the deterministic state-merging
operation, which combines two states in a DFA to create a
new, smaller automaton. These algorithms could be broadly
classified as non-monotonic (e.g., SAGE, EdBeam, DFA SAT,
automata teams) or monotonic (e.g., EDSM, blue-fringe,
RPNI) which respectively do and do not allow backtracking.
When running, these algorithms would perform many millions
of merges with non-monotonic algorithms performing
significantly more merges than monotonic algorithms. In
both cases the deterministic state merging operation is a
significant bottleneck.
This project was motivated by the need to alleviate
this bottleneck through a faster state-merging operation.
Achieving this would assist researchers in dealing with harder
problems, run more sophisticated heuristics and perform
more meaningful analyses by running their tests on a larger,
more statistically significant pools of problems.
With the main goal of identifying the fastest
implementation, this project examined a number of
implementations of the state-merging operation with
state-of-the-art DFA learning algorithms on a large pool of
problems. To achieve this, existing implementations of the
state-merging operation, such as FlexFringe and StateChum,
were investigated to evaluate the typical state merging
implementations. This involved studying the extent to which
it might be possible to take advantage of concurrency to
perform many merges in parallel, and building a novel GPU
implementation of the merge operation. Additionally, the
process entailed using deep profiling and various optimisation
techniques related to memory-access patterns to further
enhance performance. Finally, an equivalent solution was
developed in multiple programming languages to minimise
the falsely perceived performance increase which may be due
to a better optimising compiler.
The implementation was evaluated and benchmarked on
a large pool of Abbadingo-style problems. Abbadingo One
is a DFA learning competition that took place in 1997 and
was organised with the goal of finding better DFA learning
algorithms. These problems are suitable for testing because
the typical algorithms used on Abbadingo problems tend
to be simple to implement and rely heavily on deterministic
merge performance. The motivation behind this project was
not to seek better solutions than those submitted by the
winners of the competition, but to find their solutions faster.
At evaluation stage, the implementation presented in this
project proved to be significantly faster than a naïve one. The
operation was tested by using three DFA learning frameworks,
namely: windowed breadth-first search, exhaustive search,
and blue-fringe. The preliminary results indicated that the
improved state-merging operation was three times as fast as
the baseline.
Data Science
Figure 1. A valid merge between states 4 and 5; the successors of the two states are recursively merged
L-Università ta’ Malta | 53
Assisting a search and rescue mission
for lost people using a UAV
MICHAEL AZZOPARDI | SUPERVISOR: Dr Conrad Attard
COURSE: B.Sc. IT (Hons.) Software Development
Data Science
Search and rescue (SAR) missions on land are nowadays
still being executed on foot or by manned aircraft, including
planes and helicopters. Both methods demand a significant
amount of time and are not cost-efficient. This is particular
significant when considering that the main challenge in
such operations is the time needed to react and to take the
required action.
New developments in unmanned aerial vehicle (UAV)
technology could help tackle such a problem with the use
of drones and aerial photography. This study exploited
this technology, combined with shortest-path and objectdetection
algorithms, to seek to reduce the mission duration
and the risk of the injury of the parties involved.
In preparation for devising a solution to the
aforementioned problem, existing research on UAV/drone
technology and SAR missions on land was studied carefully.
Particular attention was given to research focusing on
lost persons living with dementia. Models and prototypes
were formulated prior to development, on the basis of this
research.
An Android mobile application was developed to simplify
the communication between a DJI drone and the operator,
by making use of the DJI Mobile Software Development Kit
(SDK). Given the time constraint to search for a lost individual
with dementia during such an SAR mission, a shortest-path
algorithm was implemented to aid the operator in the drone
navigation from one waypoint to another, depending on
prioritisation and the probability of finding the lost person. An
object-detection algorithm received the images captured by
the drone to detect persons at multiple points throughout the
route. A separate Android mobile application was developed
to efficiently gather data on the SAR mission, including
personal information and locations that would be potentially
vital during a SAR mission. Both mobile applications used the
same Firebase Realtime Database to collect and utilise the
mission information.
Figure 2. Prototypes of the mobile applications
Figure 1. Architecture diagram of the SAR mobile application
54 | Faculty of Information and Communication Technology Final Year Projects 2021
Analysis of police-violence records
through text mining techniques
CHRISTINA BARBARA | SUPERVISOR: Dr Joel Azzopardi
CO-SUPERVISOR: Mr Nicholas Mamo | COURSE: B.Sc. IT (Hons.) Artificial Intelligence
This research applies data mining techniques to the ‘Mapping
Police Violence’ dataset, which provides information on every
individual killed by police in the USA since 2013. Knowledge
related to police violence is extracted by profiling typical
violence victims, analysing violence across different states,
and predicting the trend such incidents follow.
The first task in this study involved profiling the victims,
which was tackled by clustering the data and identifying the
main types of reports. The typical victim belonging to each
cluster set was then extracted. This was done using different
clustering algorithms, namely: k-means, k-medoids, and
self-organising maps.. The generated profiles were validated
by observing how many killings in the dataset are accurately
described by the different profiles.
The second task was to cluster the data in each location
separately. This helped establish the most common locations
where such incidents took place, and the typical victim
profiles within those locations.
Using regression techniques, a prediction of the
number of future police killings was attempted, based on
information related to past incidents, anticipating the third
task of this study. This entailed considering information such
as the unemployment rate in each state to establish whether
including such external information would be helpful in
accurately predicting the number of killings. The results were
evaluated by comparing the predicted number to the actual
number of killings that took place.
This research could be extended by employing hierarchical
clustering, thus allowing a more detailed examination of
the generated profiles. Additionally, it would be possible
to perform clustering by focusing on the years in which the
killings took place, so as to follow how the profiles generated
change throughout the years. The analyses performed in this
study could also be applied to datasets that focus more
on general police interactions ‒ such as stop-and-search
data ‒ and observing whether there might be any similarities
between analyses of the different sets of data.
Figure 1. Sample victim profile
Figure 2. States with the highest number of killings with respect to
population numbers (2013-2018). Colours range from blue (min) to
yellow (max).
Data Science
L-Università ta’ Malta | 55
Using COVID-19 pandemic sentiment
and machine learning to predict
stock-market price direction
LUKE BEZZINA | SUPERVISOR: Prof. John M. Abela
COURSE: B.Sc. IT (Hons.) Computing and Business
Data Science
The buying and selling of financial instruments, such as
stocks and bonds, has for long been an essential activity
in maximising investors’ wealth. Stock markets, one of
which being the New York Stock Exchange have facilitated
this trading activity. A pertinent question in this field is to
determine whether particular securities would increase or
decrease in value in the foreseeable future. Changes in value
for an equity could be described through a candlestick chart,
as per Figure 1.
In financial trading, an approach that has recently
gained traction is algorithmic trading, which is the buying
and selling of (financial) instruments by using algorithms.
This was possible through the exponential improvements in
computational speed, along with the introduction of diverse
machine learning (ML) algorithms. This study exploits ML to
predict the general price direction of securities for the three
days following each day in the dataset range. This is referred
to as time series forecasting.
The solution being proposed uses data for stocks
domiciled in the United States found in the S&P500 index,
which is an indicator representative of the largest 500
US-listed companies. Two stocks per S&P500 sector were
reviewed with the purpose of obtaining a fair representation
of the US market. A baseline artificial neural network (ANN)
model, and a long short-term memory (LSTM) model were
used in parallel, as described in Figure 2. The latter model
has recently become popular in time-series problems in view
of its ability to remember the previous outcome of neurons.
The COVID-19 pandemic has affected businesses in a
global manner. Hence, this work also attempts to identify
whether there is value to be derived from the sentiment
towards the pandemic, in terms of prediction accuracy.
Google Trends data involving pandemic-related terminology
was used to derive additional features to be used within an
LSTM model, providing an effective comparison between the
model implementations in this study.
Figure 1. Candlestick chart of the S&P 500 index for December 2020
Figure 2. Architecture of the proposed stock prediction algorithm
56 | Faculty of Information and Communication Technology Final Year Projects 2021
Change detection in
semi-structured documents
WAYNE BONNICI | SUPERVISOR: Dr Joseph G. Vella
COURSE: B.Sc. IT (Hons.) Software Development
In digital forensics investigations it is sometimes required to
sift and analyse a large number of documents submitted as
evidence. A computer system could assist an investigator in
establishing the exact derivation of changes in a document
by summarising tracked changes between two documents.
This project was concerned with target documents encoded
in a docx format ‒ the default file format of Microsoft Word ‒
and assumed that the documents had text and track change
annotations.
A tool, named DocxDiff, was developed in order to
compare documents. The developed tool is easy to use and
requires minimal user interaction. DocxDiff utilises a changedetection
algorithm that is specifically designed to work on
documents that are internally represented as hierarchical XML
trees, as found in docx files. The algorithm is efficient and is
capable of providing accurate deltas. The change-detection
algorithm ignores irrelevant deltas, such as nodes that are
represented differently, but semantically equivalent. XML
nodes offer a shorthand writing notation known as self-closing
tags. If they are not considered equal to the longer version,
they have to be worked on at a later stage. This increases the
size of the output delta. DocxDiff uses the change detection
algorithm to only inspect the parts of the documents that are
flagged as ‘modified’. This avoids the need to wholly traverse
the document, thus significantly improving its performance
when large documents would be the target. DocxDiff uses the
unique paths extracted from a delta to access changed nodes
in the document, and determine their behaviour between the
previous and a later document revision. DocxDiff classes the
track changes into four categories, namely: inserted text,
deleted text, approved/rejected text marked for insertion,
and approved/rejected text marked for deletion.
It would be necessary for the investigator to select
two documents suspected of being related to one another.
DocxDiff would perform a number of preprocessing steps to
ensure that the selected documents have a relatively high
chance of being related. This step removes the need for the
investigator to manually open and compare the content of
the documents to identify similarity. Since the investigator
would not need to know the sequence of events, it would
be possible to input the documents in any order. DocxDiff
would determine the sequence of events automatically and,
if necessary, swap the supplied order. DocxDiff encapsulates
the delta of the two selected documents and presents any
altered track-change state to the investigator in a way that
would be easy to understand and manage. This is a key
factor, as an investigator might need to obtain a summary of
other similar documents.
The investigator would be expected to use the presented
summary to determine whether to shortlist the documents for
further analysis. During testing, DocxDiff achieved a very good
track-change detection accuracy. Detected track changes
were always classified into the right category. Due to the
limitations present in the docx format itself, some documents
that were resaved at a later stage tended to cause the preprocessing
validation to fail. This caused DocxDiff to mark
these documents as being non-related.
Figure 1. A sample document and associated before and after tracked
changes
Data Science
L-Università ta’ Malta | 57
Real-time EEG emotion-recognition
using prosumer-grade devices
FRANCESCO BORG BONELLO | SUPERVISOR: Dr Josef Bajada
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Electroencephalography (EEG) is a biomedical technology
that measures brain activity. Apart from being used to
detect brain abnormalities, it has the potential to be used
for other purposes, such as understanding the emotional
state of individuals. This is typically done using expensive,
medical-grade devices, thus being virtually inaccessible to
the general public. Furthermore, since most of the currently
available studies only work retrospectively, they tend to be
unable to detect the person’s emotion in real time. The aim of
this research is to determine whether it might be possible to
perform reliable EEG-based emotion recognition (EEG-ER) in
real time and using low-cost prosumer-grade devices such as
the EMOTIV Insight 5.
subject-independent models and subject-dependent models,
fine-tuned to each specific subject.
Different machine learning techniques, such as supportvector
machines (SVM) and 3D convolution neural networks
(3D-CNN) were used. These models were trained on classifying
4 emotions ‒ happy, sad, angry, relaxed ‒ utilising the dataset
for emotion analysis using physiological signals (DEAP).
The best models achieved a 67% accuracy on the subjectindependent
case, rising to 87% for subject-dependent
models, in real-time using only 5 channels. These results
compare well with the state-of-the-art benchmarks that use
the full medical-grade 32-channel data, demonstrating that
real-time EEG-ER is feasible using lower-cost devices, making
such applications more accessible.
Data Science
Figure 1. The EMOTIV Insight 5 Channel Mobile Brainwear device
This study uses a rolling time window of a few seconds of
the EEG signal, rather than minutes-long recordings, making
the approach work in real time. The information loss between
the number of channels of a medical-grade device and those
of a prosumer device is also analysed. Since research has
shown that different persons experience emotions differently,
the study also analysed the difference between generic
Figure 2. Brain activity of individuals experiencing one or more
emotions
58 | Faculty of Information and Communication Technology Final Year Projects 2021
Scaling protein-motif discovery
using tries in Apache Spark
ETHAN JOSEPH BRIFFA | SUPERVISOR: Mr Joseph Bonello
COURSE: B.Sc. IT (Hons.) Software Development
The field of bioinformatics applies computational techniques
to biology. This study focuses in particular on proteins, which
are large molecules that have specific functions in organisms.
Understanding proteins requires identifying fixed patterns
called motifs in protein sequences, as motifs are indicative of
a protein’s structure and function.
This research attempts to improve the speed of finding
motifs by comparing unknown protein sequences with known
protein domains as classified in the CATH hierarchy. The
approach adopted in this study uses the multiple sequence
alignment (MSA) from proteins found in CATH functional
families. Each MSA contains motifs having sequence regions
that have been preserved through evolution, known as
conserved regions. The representative sequences for the
functional families are stored as a suffix trie, which would then
be used to find potential structures.
To improve the efficiency of the search, the suffix trie is
implemented using the Apache Spark framework, which is
generally used to process large amounts of data efficiently.
The Spark architecture offers processing scalability by
distributing the process over a number of nodes, thereby
speeding up the search.
The method subsequently determines the best match
through a scoring algorithm, which ranks the output based on
the closest match to a known structural motif. A substitution
matrix is also used to consider all possible variations of the
conserved regions.
This system was finally compared against a library of
hidden Markov models, where the results were compared to
determine the speed of its process whilst ensuring that the
correct results would be produced.
Figure 1. Suffix trie for an example motif “GVAV”
Data Science
Figure 2. Architecture of the technology
L-Università ta’ Malta | 59
Discovery of anomalies and teleconnection
patterns in meteorological climatological data
LUKAN CASSAR | SUPERVISOR: Dr Joel Azzopardi
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Data Science
Climate change has become a growing problem globally,
and the analysis of datasets to identify patterns and
anomalous behaviour with regard to the climate is more
crucial than ever. However, analysing such datasets could
prove to be overwhelming, as these datasets tend to be too
large to inspect manually. As a result, the need has arisen
for techniques to efficiently scour and manipulate such
extensive data. These are generally referred to as data-mining
techniques.
The research for this project involved using different
data-mining algorithms to extract anomalies and
teleconnections from a dataset of monthly global air
temperatures, covering a period of 72 years (1948-2020).
Anomaly detection is a significant step in data mining,
and is primarily concerned with identifying data points
that deviate from the remainder of the data, and hence
are considered anomalies. The purpose of anomaly
detection in climate data is to identify any spatial (across
space), temporal (across time) or spatial-temporal (across
both space and time) anomalies within the dataset. They
are crucial in understanding and forecasting the nature
of the ecosystem model of planet Earth. The anomalies
are detected using three algorithms, namely: k-nearest
neighbors (k-NN), k-means clustering, and density-based
spatial clustering of applications with noise (DBSCAN).
Teleconnections are recurring and persistent patterns
in climate anomalies, and connect two distant regions
to each other. Their significance is due to the fact that
they reflect large-scale changes in the atmosphere
and influence temperature, rainfall, and storms over
extensive areas. As a result, teleconnections are often
the culprits in the event of anomalous weather patterns
occurring concurrently over widespread distances. The
teleconnections are detected using three associationmining
techniques ‒ Apriori, FP-growth, and Generalized
Sequential Pattern (GSP) ‒ over the spatial-temporal
anomalies identified previously.
The extracted anomalies and teleconnections, as
obtained from the previously mentioned algorithms, have
been represented in interactive graphs and heat maps.
Figure 1. Spatial anomalies plotted on an interactive heat map
Figure 2. Teleconnections plotted on an interactive map
60 | Faculty of Information and Communication Technology Final Year Projects 2021
A DFA-learning toolkit
DANIEL CHERRETT | SUPERVISOR: Dr Kristian Guillaumier
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Grammatical inference is the task of finding a formal
grammar or class description from a training set. This project
is particularly concerned with DFA learning, which involves
finding a minimum-state DFA (deterministic finite automaton)
from strings that might or might not belong to a regular
language. This is an NP-hard problem which has many
practical applications including natural language processing,
bioinformatics, genetic sequencing, robotics, software
verification, and data mining.
A significant obstacle encountered by students,
academics, and practitioners, especially if unfamiliar with this
area of research, is having to undertake the non-trivial task
of implementing complex data structures and algorithms
from scratch. While a number of publicly available DFAlearning
toolkits do exist, they tend to have some important
shortcomings. More specifically, their readability, performance,
documentation, and extensibility could be improved further.
This project was concerned with developing a DFA-learning
framework that is modular, efficient, properly documented,
and sought to address a number of shortcomings in existing
frameworks. The framework was implemented in Go code,
which offers the advantage of having excellent runtime
performance characteristics, as well as having a much gentler
learning curve when compared to other high-performance
languages. By design, Go is also very user-friendly.
The developed toolkit features efficient and properly
tested implementations of several data structures, statemerging
algorithms, as well as state-of-the-art heuristics.
It is particularly significant that these implementations
were designed to be user-customisable and extensible.
The framework also allows users to generate target
DFAs and datasets using both the Abbadingo and the
Stamina protocols. This is a very important feature, as it
allows both students and researchers to experiment with
different techniques on large pools of problem instances.
To further support experimentation, the framework
developed for the toolkit also has the ability to persist
instances of the most important data structures and
visualisation tools.
The practicality of this toolkit was duly evaluated by
implementing a number of higher-order DFA-learning
algorithms to emulate real-world uses of the related
framework. A second version of the said framework was
implemented in Rust, which is limited to performance
critical portions of the main framework. Since Rust is
generally considered to be a high-performance language,
while having a much steeper learning curve than Go,
working with Rust facilitated the evaluation of Go in
terms of whether this code offered the right balance
between runtime performance and readability.
Data Science
Figure 1. High-level architecture diagram of the toolkit
L-Università ta’ Malta | 61
Dashboards for reducing traffic congestion
WESLEY FALZON | SUPERVISOR: Dr Lalit Garg
COURSE: B.Sc. IT (Hons.) Computing and Business
Data Science
This work considers a possible solution for reducing traffic
congestions in Malta. It looks into a new method of tackling
this issue by utilising the currently available technology for
congestion mitigation. The project assesses how internet of
things (IoT) enabled devices and other intelligent methods
could be integrated in roads to create a dashboard offering
the relevant information to drivers and commuters.
The central part of this project focused on the use of
different application programming interfaces (APIs) to gather
the information necessary for displaying on a dashboard. The
advantage of using APIs is that they provide constant realtime
information. In addition, this data is readily available and
would not require any (new) infrastructure to be built, since
the API providers could gather the necessary information. As
a result, this could be implemented in countries such as Malta,
where there are very few IoT devices built into the roads.
Two APIs were used for the artefact, the first of which
was the Distance Matrix API, powered by the Google Maps
Platform. By providing an origin and a destination, this API can
provide two instrumental pieces of information. These are the
(predicted) duration of a journey, and the duration in traffic.
The time is given both in minutes and in seconds. The actual
time spent in traffic (given in seconds) could be obtained
by subtracting the journey duration from the duration in
traffic. Therefore, the level of congestion in that area could
be calculated by using the actual number of seconds spent
in traffic. The level of congestion (light congestion, medium
congestion, heavy congestion) could then be calculated
by using a simple conditional statement. The weather API
provided by OpenWeather was also used. This API was vital,
as it could display information such as weather conditions.
This API was also used to detect the terrain condition based
on the weather. Another reason for utilising this API was so
that a recommended speed limit could be displayed on the
dashboard, depending on the weather condition. In the event
of rain, a lower speed limit would be shown.
The second part of the project focused on the results
obtained from a questionnaire. Many functions that users
deemed necessary for displaying on a dashboard required
the installation of IoT devices in road networks. Therefore,
potentially viable IoT technologies were suggested for
obtaining such data. By implementing the proposed IoT
devices, real-time data such as parking space availability
could be obtained. From this data, the dashboard could then
be updated to show this information. Early results from the
questionnaire indicated that the respondents largely opted for
a dashboard feature that would suggest alternative routes.
The second most sought-after feature among respondents
was the notification of parking-space availability.
The main limitation for such a project was the lack of
available IoT devices that could relay the necessary data
for these dashboards. By investing in these technologies,
more data could be obtained to maximise the efficiency and
usefulness of the dashboard.
Figure 1. Traffic dashboard showing congestion level, speed limits, terrain condition and traffic updates for different locations
62 | Faculty of Information and Communication Technology Final Year Projects 2021
Using evolutionary algorithms
for DFA learning
FRANCESCO GRECH | SUPERVISOR: Dr Kristian Guillaumier | CO-SUPERVISOR: Prof. John M. Abela
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Grammatical inference is the task of learning a formal
grammar or class description from a set of training examples.
This research has focused on learning regular languages
represented by deterministic finite-state automata (DFA).
DFA learning is an active research area offering various
applications, including pattern recognition, robotics, and
speech. The issues targeted in this project consist of an
unknown DFA whose alphabet is binary, similar to those
used in the Abbadingo One competition. A dataset of strings
was labelled by this DFA and given to the learner. The learner
would then construct a hypothesis (DFA) with this dataset,
the accuracy of which would be calculated using another
set of strings, called the testing set. The inferred DFA must
either match the target DFA exactly or reach a high degree
of accuracy (≥99%).
A common and successful approach to solving this
problem would be to build a maximally specific hypothesis
called an augmented prefix-tree acceptor, which accepts
the training data exactly. Subsequently, a heuristic, such
as the Abbadingo-winning evidence-driven state-merging
(EDSM) algorithm, would be used to score merges. Statemerging
heuristics score each possible merge in a DFA,
indicating the level of the merge. The EDSM algorithm does
this by comparing labels of states that are to be merged.
The highest-scoring merge is performed, and this process is
repeated until no more merges are possible, thus delivering
the final DFA.
In this project, the relevant types of heuristics were
developed using a genetic program (GP). A GP evolves a
number of possible solutions with the aim of finding a better
one. The ‘fitness’ of each heuristic is calculated by using
the heuristic itself to solve a number of problem instances.
Then, its fitness value would be equal to the percentage of
problem instances it was able to solve.
Running the GP numerous times resulted in multiple viable
state-merging heuristics. While these heuristics performed
well on their own, their performance could be increased by
forming an ensemble. When faced with a problem, each
heuristic in the ensemble would generate a DFA using the
training set. There are several methods for parsing the testing
set consisting of an ensemble, with a majority vote being the
most straightforward. With this approach, each string would
be parsed by every DFA in the ensemble, and its label would
be determined by the verdict given by the majority.
The motivation behind using an ensemble hails from the
‘no free lunch’ (NFL) theorem, which states that ‒ in general
‒ there is no single heuristic that dominates all others over
all problem instances. This could be observed when using
another heuristic called reduction, which ‘greedily’ chooses
merges that reduce the largest number of states. While
EDSM solves a higher percentage of problems, the reduction
heuristic is able to solve problems that EDSM cannot.
The performance of the ensembles, and the heuristics
generated by the GP, were evaluated using a number of
problem instances consisting of DFAs of varying sizes. Certain
heuristics generated by the GP delivered a very promising
performance, exceeding that of EDSM. Furthermore, the
performance of certain ensembles consisting of these
heuristics was also very promising, significantly exceeding
that of any stand-alone heuristic.
Data Science
Figure 1. An overview of the implementation of the proposed solution
L-Università ta’ Malta | 63
Tracing historical paths: An intelligent AR guide
MALCOLM GRECH | SUPERVISOR: Dr Vanessa Camilleri
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Data Science
This study focuses on investigating the use of artificial
intelligence (AI) techniques and technologies in a smartphone
experience to assist journey planning in tourism. More
specifically, it set out to develop 3 major features, namely:
a path-finding system (which does not necessarily follow the
shortest path); a recommender system; and augmented reality
(AR) tools for navigation assistance. The AI was implemented
by using an adaptable search space reflecting the content of
a map that would be capable of learning through past user
experiences, and to change results dynamically.
Figure 1. An example of search-space nodes, with property values
having ‘start’ and ‘goal’ points
In the developed application, the intelligent search space
uses point values placed in junctions of a map, each signifying
a choice in travelling direction. These points contain simulated
values to signify preference variance, such as the popularity
of that point or its relevance to various historical periods.
Information may be changed to test varying trends, to reflect
real-life patterns. In doing so, the results presented in the
features outlined below could be altered.
The path-finding system used the A* search algorithm [1],
which connects vertices in a graph from a start point to a
goal point in the most inexpensive way possible. This is an
extension of the Dijkstra algorithm [2], in that it includes an
intelligent heuristic. User preferences in this system were
the main driving element in building an optimal path to
the destination that would best match the user’s choice of
heritage sites. Once created, this was then given to the user
through a map with the generated trail.
The recommender system retrieved information from
the user-assigned preferences to create a score for each
destination of interest. These destinations would be ranked
and sorted before being displayed in a list, with the highest
scores appearing at the top. These suggestions were then
used to direct the user through the path-finding system to the
chosen destinations.
The AR features include destination markers, as well as a
direction pointer that rotated according to the next location
to be followed. The AR markers are 3D models categorised
according to the historical period of the locations they identify,
were designed to hover over the real-world location of the
respective sites. An AR arrow would appear on the application
screen when a path is generated, and rotates toward the next
geographic position of the closest node to travel to.
The developed application appeared to have achieved
each of these features to successfully make use of the search
space information to draw their conclusions. Several example
paths from the path-finding system were duly tested and
evaluated by a professional tour guide, who confirmed that
the suggested paths were indeed appropriate in reflecting
user preferences, yet were not necessarily the optimal paths
in practice.
The recommender system was tested with a large
combination of user preferences and destinations of different
qualities, all of which have proved loyal to user preferences.
The AR features all behaved in accordance to their navigation
intention. Nevertheless, they displayed a degree of inaccuracy
that could prove confusing during the navigation process.
REFERENCES
[1] Peter E Hart, Nils J Nilsson, and Bertram Raphael. A formal basis for the heuristic determination of minimum cost paths. IEEE transactions
on Systems Science and Cybernetics, 4(2):100–107, 1968.
[2] Edsger W Dijkstra et al., A note on two problems in connexion with graphs. Numerische mathematik, 1(1):269–271, 1959.
64 | Faculty of Information and Communication Technology Final Year Projects 2021
A data-analytic approach to property price
prediction, influenced by geographic elements
MICHAEL SCICLUNA CALLEJA | SUPERVISOR: Dr Michel Camilleri
COURSE: B.Sc. IT (Hons.) Computing and Business
Property sales in Malta throughout the COVID-19 pandemic,
topped €3 billion in 2020, surpassing 2019 figures [1]. Despite
this rise in property sales, interviews with local real estate
executives revealed that the absolute majority of real estate
agencies in Malta still valued property listings manually, without
the help of any machine learning technologies. It also emerged
that the value of a property would be heavily influenced by
its location, and taking into account the amenities within the
immediate surroundings of the property. This study set out to
explore the influence of amenities on property valuation by
exploring whether predictive accuracy would improve when
considering proximal amenities.
Real estate data for the period 2015 to 2020 was sourced
from a local real estate agency. Records containing blank values,
location outliers and property types in limited supply (such as
farmhouses) were removed. Prices were adjusted to mitigate
the effect of price increases over the period. An online map
service was utilised to obtain latitude-and-longitude values for
all property listings (geocoding), as well as to extract amenities
around the Maltese Islands and their respective coordinates.
Four categories of amenities were considered, namely: bus
stops, shops, natural features and sundry amenities (including,
restaurants, bars and cafés).
A tier system (see Figure 1) was used where, for each listing,
the quantities of amenities falling within each of the proximity
thresholds ‒ 100m, 200m and 400m ‒ were stored. Two types
of predictive models were developed. These are: multi-layer
perceptron (MLP) neural networks and multiple linear regression
(MLR) models, through which a number of model configurations
considering property data with no amenities, individual groups
of amenities or all amenities were created.
The performance of the models was determined by
considering the mean absolute percentage error (MAPE)
produced, a measure which considers the error between actual
and expected price. The baseline model that considered solely
property-specific data – such as property type, locality, number
of bedrooms, bathrooms and square area – registered a 19.21%
MAPE with a mean absolute error (MAE) of €90,837.47. On the
other hand, the best-performing model, which considered a
number of amenities at different proximity measures, scored an
11.69% MAPE with an MAE of €45,637.78.
Therefore, since the MAPE decreased by 7.52% and
MAE decreased by around 50% when considering proximal
amenities, this might suggest that the consideration of proximal
amenities could contribute towards a more accurate prediction.
On the contrary, it was observed that the less attributes the
MLR models were given, the better the models tended to fare
‒ with the base model performing best of all, with a 22.81%
MAPE. Furthermore, the results suggest that the MLP models
generally performed better than the MLR models. This is further
supported by an 11% difference in MAPE between the best
performing MLP model and the best performing MLR model.
Data Science
Figure 1. Visualisation of fictitious property listing, with surrounding amenities and three
proximity measures
REFERENCES
[1] Malta Developers Association, “Property industry delivers €3 billion in sales in Covid year.”, mda.com.mt, 2021. [Online]. Available: https://
mda.com.mt/property-industry-delivers-e3-billion-in-sales-in-covid-year/. [Accessed: 01- May- 2021].
L-Università ta’ Malta | 65
Image deblurring using
machine learning models
ADAM AGIUS BETTS | SUPERVISOR: Prof. John M. Abela
COURSE: B.Sc. IT(Hons.) Software Development
In photography, images might appear blurred for a
number of reasons, including: lens defects, camera motion,
and camera focus. This work investigates the deblurring
of images using deep learning techniques. The chosen
approach is to use a deep stacked hierarchy using a multipatch
network. This would make it possible to identify how
the deep learning of processing blurred images can be
improved to generate better deblurred images. The project
also investigated whether the deblurring process could be
done faster and without losing image quality.
The project assesses the theoretical and practical
implications that could be applied to digital image
processing, while focusing on the blind-image
deconvolution aspect of processing. This ‘blind’ aspect
in image processing relates to the point spread function
(PSF) which was involved in blurring the image; the PSF is
assumed to be unknown, hence being referred to as ‘blind’.
The image deblurring was executed on images selected
from publicly available datasets. These newly deblurred
images were then compared to those deblurred using other
existing image-deblurring functions.
Since this project falls within the field of data science,
the programming language adopted was Python, which
is designed to support data analysis and visualization
with special features, including external libraries. The
implemented process enhances the quality of standard
images once the program completes execution, and allows
a comparison between the original image (the ground
truth) to the new and improved image.
The evaluation of the system was based on test
images that were not used for training in order to better
determine whether the image could be improved by the
trained network. Each test image was duly compared to the
corresponding ground-truth image to establish the extent
to which deblurring enhanced the quality of the blurred
image.
Deep Learning
Figure 1. Blurred image Figure 2. Deblurred version of Figure 1
66 | Faculty of Information and Communication Technology Final Year Projects 2021
Driving-behaviour monitor
DANIEL ATTARD | SUPERVISOR: Dr Josef Bajada
COURSE: B.Sc. IT(Hons.) Artificial Intelligence
In 2019, the EU registered just under 23,000 vehiclerelated
fatalities, with Malta losing 16 individuals to traffic
accidents in that year. According to research, the majority
of these fatalities could be linked to dangerous driving
behaviour. Hence, in a bid to make drivers more aware of
their driving behaviour, this research set out to investigate
different machine learning algorithms, which could be used
in conjunction with smartphone sensor data to detect fatal
or near-fatal driving incidents.
Modern smartphones are equipped with a number of
easily accessible sensors, such as an accelerometer, which
measures the acceleration force applied to the device, and
an orientation sensor that determines the rotation of the
device. These sensors provide a better user experience, act
as user input, or provide information about the external
environment.
Aggressive manoeuvres, such as abrupt turning,
braking, acceleration, or lane-changing are bound to be
reflected in accelerometer readings on different axes. In
the case of braking and accelerating, the value of the z-axis
increases for an acceleration event, while it decreases
for a deceleration event. The amount by which this value
differs is linked to the aggressiveness of the manoeuvre.
Similarly, turning events can be detected by variations in
the values of the y-axis. These sensor values were captured
in real-time through a developed smartphone application,
which instructs the driver to perform such manoeuvres,
and stores the appropriate data for future use. The stored
accelerometer values for each axis are used to train
multilabel machine learning algorithms, which classify the
data to the different aggressive manoeuvres.
The developed application could also be used as a
real-time driver evaluation tool. Securely mounted to the
vehicle’s windscreen, the application would read the realtime
acceleration data and use the trained model to detect
aggressive events. The detected event would then be shown
clearly, alerting the drivers of their behaviour.
The system proved to be capable of detecting events
with a high accuracy, achieving over 98% accuracy on
existent datasets with a recurrent neural network algorithm.
The support-vector machine and random forest machine
learning algorithms were also tested to solve the multilabel
classification problem, achieving an accuracy of 96% and
93% respectively.
Apart from being used as a real-time indicator of
one’s behaviour, leading to reduced road accidents, the
transportation and logistics, and insurance sectors could
also make use of such an application. In the insurance
sector, new usage-based motor insurance schemes use
one’s driving behaviour to set their insurance premiums.
In the transportation and logistics sector, drivers could be
monitored and rewarded for their good driving performance
which – apart from reducing costs through a reduction of
accidents, repair costs, vehicle downtime and insurance
costs – would help increase safety of the road and the
reduction of harmful emissions.
Figure 1. The real-time driver-evaluation screen of the developed application
Deep Learning
L-Università ta’ Malta | 67
Automatic user profiling for intelligent
tourist-trip personalisation
LIAM ATTARD | SUPERVISOR: Dr Josef Bajada
COURSE: B.Sc. IT(Hons.) Artificial Intelligence
Deep Learning
Travelling for leisure is very popular, as indicated by an
estimated 1.4 billion tourist arrivals globally in 2019,
according to the World Tourism Organisation (UNWTO).
Since leisure trips are usually short, an efficient holiday
activity-planner would be essential. It would make it
possible to maximise the tourist’s enjoyment during such
trips by assisting the individual in selecting the right
places to visit and things to do, according to the person’s
preferences.
Travel planning involves processing information ‒ such
as opening hours, past visitor reviews, transport options,
and costs ‒ from various data sources, which is often
very time-consuming. This project presents a touristitinerary-recommendation
algorithm that would assist
users by autonomously generating a personalised holiday
plan according to the user’s travel dates and constraints.
Furthermore, the system would automatically build a travelinterest
profile based on the user’s social media presence.
This profile would then be used to recommend itineraries
that would be tailored to the user’s interests.
The proposed system uses application programming
interfaces (APIs) from popular social media platforms,
such as Facebook and Instagram, to gather relevant
information – with the user’s permission. The information
required includes pages the user likes, pictures posted by
the user, and so on. A convolutional neural network (CNN)
was used to classify the user’s pictures into their respective
travel category, such as ‘Beach’, ‘Clubbing’, ‘Nature’,
‘Museums’ or ‘Shopping’, which was then used to determine
the user’s predominant travel-related topics of interest.
Both ResNet-18 and Keras sequential models were trained
separately on 2 datasets, in order to establish which of the
two would be the better one.
The computed travel profile of the user was given the
form of a weight vector, which is then used to generate an
automated itinerary that would fit the user’s preferences
and travel constraints. This weight vector is used to
formulate a personalised objective function, used by
various metaheuristic and evolutionary algorithms to
optimise the plan. This takes into consideration ‘hard’
constraints, such as holiday dates, opening times, and
distances between places, and also soft constraints
(preferences), such as costs, interests and the user’s
preferred pace. The algorithms used at this stage included:
particle swarm optimisation (PSO), tabu search, as well as
genetic algorithms, and they are evaluated for both their
plan quality and performance.
Since the results would be highly personalised, the
system was packaged into an application that would allow
users to connect with their social media accounts, build a
personalised travel plan for a holiday in Malta, and asks
the user to assess the quality of the plan with respect to
personal preferences and budget.
The user tasked specifically with testing the system was
also requested to assess a more generic holiday itinerary
without specifying which plan was generated by the system.
This was done in order to assess the effectiveness of the
personalised holiday-planning algorithm.
Figure 1. Renders from the itinerary generator
68 | Faculty of Information and Communication Technology Final Year Projects 2021
Procedural generation of sound
files from small sound samples
DANIEL AZZOPARDI | SUPERVISOR: Dr Kristian Guillaumier
COURSE: B.Sc. IT(Hons.) Artificial Intelligence
Sound design is an expensive and time-consuming element
in game and film design. This final-year project seeks to
simplify the sound-design process for the benefit of nonexperts
requiring sounds in developing their applications.
The proposed task entailed creating a system that
would allow users to input a set of audio files, such as
the sound of rain and thunder. The system would classify
the sound, then it would break it down into small clips.
Lastly, it would arrange all the clips in a way that would
sound natural, allowing the individual to choose the length,
number of layers and texture of the final sound file. This
process required establishing which of two popular audiosequencing
algorithms ‒ Markov chains (MCs) and recurring
neural networks (RNNs) ‒ would yield the better results
when used to sequence non-musical sounds.
It was necessary to build an audio classifier in order
to label inputs to help facilitate the process. The classifier
was built using a convolutional neural network (CNN). This
was trained using the FSD50K dataset, which is composed
of 50,000 labelled audio files of varying classes, such as
animal sounds and human voices. The classifier accuracy
was evaluated by first splitting the dataset into training
and testing data, training the data on the train split, and
finally evaluating the results on the test split. Its accuracy
was assessed with reference to the literature that made
use of this dataset, so as to determine whether the level of
accuracy achieved was comparable so as to be used as the
baseline. The CNN was used to determine the type of sound
was inputted, to be used by the audio sequencer.
Depending on the output from the classifier, the
RNN would call the respective model that was trained
for that sound type. These models were trained for each
type of audio whereby, for each class, pitches could
be detected and fed into the RNN to train, so as to
determine what the next expected pitch would be, given
a set of prior pitches. Sequences for each layer of a
sound would be built upon any features that have been
extracted. This would be carried out through a system
that checks for increases of volume, to denote the
possible start of a segment and the Fourier transform in
order to assign that segment to the corresponding pitch.
Figure 1: Flow diagram of the process for generating the sound files
The generated audio files were evaluated through the use
of a robust and properly designed survey. The survey was
composed of multiple pairs, one from the MC and one from
the RNN of audio outputs generated from the sequencer.
The respondents were asked to select which of the two
algorithmically sequenced sounds ‒ which were generated
using varying layers ‒ they felt was the more euphonic. In
the event of no clear majority, the two algorithms could be
used interchangeably.
Deep Learning
L-Università ta’ Malta | 69
3D printing of 2D images
ALEXANDER JAMES BARTOLO | SUPERVISOR: Mr Dylan Seychell
COURSE: B.Sc. IT(Hons.) Artificial Intelligence
Monocular depth estimation (MDE) is one of the core
challenges encountered in the field of computer vision.
MDE is the process of taking a singular image, and from
it, estimate the approximate depth of the scene. The
MDE process is quite a difficult task, as traditional depth
estimation is carried out by making use of multiple views of
the same object from different angles. MDE has seen much
progress in terms of accuracy, and this is largely due to the
use of deep learning techniques.
This project set out to find the state-of-the-art technique
that would produce the best depth map for a given image.
This was done by comparing the depth maps produced
by each technique with the baseline depth map for each
corresponding image, using evaluation metrics. With this
information, the techniques could be arranged according to
their accuracy of producing the current depth information
for a given image. Another important component of this
project is the refinement of the depth map of the image for
3D printing.
At the final stage, an experiment was carried out in
order to evaluate the validity of the obtained results. This
entailed printing the baseline depth map of an image
and the corresponding depth map produced by the best
technique in 3D, using a 3D printer. These 3D prints were
then presented to visually impaired persons, who were
asked to try to determine the object found within each of
the two prints. Lastly, they were asked to indicate which of
the pair they thought was the better one.
Deep Learning
Figure 1. High-level architecture for finding the best technique
Figure 2. Comparison between ground-truth depth map and
the depth map produced by the technique
70 | Faculty of Information and Communication Technology Final Year Projects 2021
Learning the game
JAKE OWEN BONNICI | SUPERVISOR: Dr Vanessa Camilleri
COURSE: B.Sc. IT(Hons.) Artificial Intelligence
Nowadays, video games are among the most popular
means of entertainment available on the market, not only
as the base game but also in terms of the competitive
scene which these games bring with them. Games such as:
Dota 2, League of Legends, Rocket League, Counter-Strike:
Global Offensive, Street Fighter V and StarCraft II are
among some of the games played in e-sport competitions,
promising jackpots that could run into millions.
Fighting games such Street Fighter, Mortal Kombat and
Tekken are among the most competitive genres in which
players spend hours practising combos and playing online
matches against each other.
Artificial intelligence (AI) has been used frequently
to defeat the single-player campaigns offered by these
games. The main aim of this project was to create an AI
agent capable of defeating the campaign of Street Fighter
II, which is a retro 2D fighting game. Furthermore, this
agent was set to fight against itself in order to better itself
with each cycle. These AI agents will eventually become
more difficult to beat than the bots offered by the game.
Professional players would be able to make use of such
agents as a new challenge towards improving themselves
by fighting new formidable opponents.
The AI agents could also be programmed to continue
training when fighting these professional players. The
training would be carried out through a custom-reward
function, which would reward the agent significantly when
winning rounds and dealing damage, while issuing a small
reward according to any points scored. Penalties are given
when incurring damage and losing rounds. The idea behind
this set-up is to create a well-balanced agent, i.e., one that
is not over-aggressive and thus allowing it to incur a degree
of damage but is also sufficiently proactive to constantly
seek to maximise his reward by trying to hit his opponent.
The training is carried out using both images of the current
state of the game and RAM values such as health, enemy
health and score.
The agent could perform to a satisfactory level and
can beat a decent number of levels on a small amount
of training, when considering the complexity of the
environment in which the agent operates. The agent tends
to tackle any new characters more effectively if their move
set would be similar to that of the original character against
which the agent would have been trained. On the other
hand, it tends to suffer when facing new characters with
drastic changes in their move sets. This could be fixed by
training against each character separately but this would
defeat the purpose of adaptability.
Tests were also made to check the adaptability
(generalisation) of these bots. The tests focused on how
well agents performed against any characters that were
not previously encountered. Moreover, the agent is only
trained against two characters: the first character which
the agent faces when training to beat the game and then
the same character as the agent due to fighting the game
against himself. Tests were also made to check how the
agent would perform against different characters, since the
agent would only be trained on one character.
Deep Learning
Figure 1. The AI agent vs the bots of the game
L-Università ta’ Malta | 71
Drone-based face-mask-detection system
RANDY CASSAR | SUPERVISOR: Prof. Matthew Montebello | CO-SUPERVISOR: Dr Conrad Attard
COURSE: B.Sc. IT(Hons.) Software Development
Since the outbreak of the Covid-19 pandemic, Malta was
among many other countries around the world affected by
the disease. With over 160 million confirmed cases and a
death toll of over three million worldwide as at the time of
writing, most governments and citizens around the world have
been trying to contain the spread of the deadly virus.
The most effective way to prevent the spread of the
virus is by simply wearing a mask [1]. Most countries have
made wearing a mask both inside public establishments and
outdoors mandatory through legal notices. However, it would
require substantial human resources to ensure that people are
wearing their masks in the various public premises and outdoor
spaces. This gives rise to the necessity of an automatic and
real-time image processing face-mask-detection system to
facilitate the difficult task of checking for the observance of
mask wearing in public places. The best advantage of this
system would be that it could detect a person’s face in real
time, thus speeding up the process.
In recent years, there has been a great advancement
to image-processing neural networks. Hence, projects such
as this one have become increasingly feasible in monitoring
open public spaces. Unlike enclosed public spaces such as
airports, in which a camera could be positioned effectively, in
public spaces this tends to be more difficult, as there would
be a larger area to cover as well as constant movement. In
these types of situations, the relevance of unmanned aerial
vehicles (UAV) such as drones come into effect, as they
offer various advantages. One of the larger benefits is that
they offer a great range of movement, which allows them to
navigate through hard-to-access areas.
The aim of this project was to investigate, design and
develop a drone-based, real-time face-detection system.
Different deep learning algorithms that could be used
in achieving this were evaluated in order to find the best
performing object-detection algorithm.
From the research and tests carried out, the You Only
Look Once (YOLO) algorithm [2] was found to be one of
the best convolutional neural network architecture models,
due to its high accuracy and speed, especially in real-time
detection [3]. The system was implemented using different
versions of this algorithm, such as YOLOv3 and the Tiny-
YOLOv3 model. A custom dataset was created and used to
train and evaluate each model. Both algorithms proved to
yield good results.
Deep Learning
Figure 1. High-level architecture diagram outlining the process of training and testing a model
REFERENCES
[1] J. Howard et al., “Face Masks Against COVID-19: An Evidence Review”, 2020.
[2] J. Redmon, S. Divvala, R. Girshick and A. Farhadi, “You Only Look Once: Unified, Real-Time Object Detection”, 2016 IEEE Conference on
Computer Vision and Pattern Recognition (CVPR), 2016.
[3] J. Du, “Understanding of Object Detection Based on CNN Family and YOLO”, Journal of Physics: Conference Series, vol. 1004, p. 012029,
2018.
72 | Faculty of Information and Communication Technology Final Year Projects 2021
Detecting litter objects using an aerial
drone with convolutional neural networks
YLENIA CINI | SUPERVISOR: Prof. Matthew Montebello | CO-SUPERVISOR: Dr Conrad Attard
COURSE: B.Sc. IT(Hons.) Software Development
Marine litter is leaving a highly negative impact on oceans,
since plastics do not biodegrade and remain intact for
centuries, making it essential to monitor the sea and beaches
for any litter, while providing relevant knowledge to develop
a long-term policy to eliminate litter [1]. Furthermore, the
unavoidable decay of the aesthetic significance of beaches
would inevitably result in a reduction of profits from the
tourism sector, as well as bringing about higher costs in the
clean-up of coastal regions and their surroundings. In order
to avert these situations, unmanned aerial vehicles (UAVs)
could be used effectively to identify and observe beach
litter, since they make it possible to readily monitor an
entire beach, while convolutional neural networks (CNNs)
combined to the drones could classify the type of litter that
would have been detected.
This study sought to evaluate approaches that can be
used for a litter-object detection by using highly efficient
models. Object detection refers to estimating the locations
of objects in each image, while labelling them with
rectangular bounding boxes [2]. The process of the solution
began by gathering a custom dataset of different types
of litter, which were then used for training the model, as
may be seen in Figure 1. The dataset incorporated four
types of litter, namely: aluminium cans, glass bottles, PET
(polyethylene terephthalate) bottles, and HDPE (highdensity
polyethylene) plastic bottles.
Once the appropriately trained results were achieved
for each object-detection model, the results could be
compared by using widely known standards in order to
determine which model would be the most accurate. The
Tello EDU drone was then used to capture video footage,
from which the detections could be made. The trained
model was finally inputted to a primary system that
controlled the drone and, in return, accepted the video feed
captured by the drone.
This experiment achieved satisfactory results, as both
the models implemented were efficient. However, the Tiny-
YOLOv3 model proved to be more useful, as it performed
better on videos due to its fast nature and capability to
require less hardware by occupying less memory space [3].
Moreover, the project could be further implemented in the
future by incorporating more litter types.
Deep Learning
Figure 1: Architecture of training an object-detection model
REFERENCES
[1] A. Deidun, A. Gauci, S. Lagorio, and F. Galgani, “Optimising beached litter monitoring protocols through aerial imagery,” Marine Pollution
Bulletin, vol. 131, pp. 212–217, 2018
[2] Z. Zhao, P. Zheng, S. Xu, and X. Wu, “Object detection with deep learning: A review,” IEEE Transactions, 2019.
[3] J. Redmon and A. Farhadi, “Yolov3: An incremental improvement,” April 2018.
L-Università ta’ Malta | 73
Number plate detection using
deep learning techniques
RALPH DEBONO | SUPERVISOR: Prof. John M. Abela
COURSE: B.Sc. IT(Hons.) Software Development
This project aims to develop an effective number plate
detection model through the use of YOLOv4, and then to
implement this model in conjunction with the Tesseract
optical character recognition (OCR) engine to recognise the
characters detected on the number plate.
Automatic number plate recognition (ANPR) is an area
of machine vision that has been explored extensively, due
to its practical uses and benefits. ANPR has been adopted
by the police in several countries and is used to deter and
disrupt criminality. These systems are used in conjunction
with databases containing car registrations pertaining to
stolen vehicles, and vehicles involved in crimes.
YOLOv4 is a single-shot object detection method and
uses the Darknet framework for its training and detections.
In this project, three separate models were trained using
YOLOv4, and their effectiveness was tested on a small sample
of Maltese number plates. Two of the models were trained
on separate datasets, one specific to Belgian number plates
and the other a more varied dataset sourced from Google.
The third model was trained using the combination of both
datasets. Any differences in the efficacy of these three
models were determined according to their performance on
the Maltese test dataset.
For the recognition segment of this work, a suitable
project was selected, which uses the Tesseract OCR to
perform the recognition task. Tesseract OCR performs best
when the characters have been preprocessed to make
them more easily readable to Tesseract. The chosen project
implements several preprocessing steps to the number plate
detection. However, the accuracy of the OCR was observed to
be suboptimal on the test set. Hence, multiple changes were
made to the preprocessing steps to improve the accuracy
of the final recognition. The efficacy of these changes was
observed through the text recognitions obtained from the
test dataset.
Deep Learning
Figure 1. Detection of number plate with 99% confidence, using a
YOLOv4-trained model.
Figure 2. Recognition of number plate registration ‘ABC123’, using
Tesseract OCR.
74 | Faculty of Information and Communication Technology Final Year Projects 2021
Deep learning techniques for classifying
sentiment in social media postings
NATHAN GRECH | SUPERVISOR: Prof. John M. Abela
COURSE: B.Sc. IT(Hons.) Software Development
Sentiment analysis (SA) is a research area within the field of
natural language processing (NLP) that involves extracting
subjective information from text. Recently, the focus within
this domain has shifted towards mining opinions and
attitudes from social media postings covering a vast range
of topics, including: product reviews, politics, stock markets,
and investor opinions. The availability of vastly varying,
sentiment-rich social media postings significantly increases
the potential and importance of SA techniques.
This research focused on SemEval-2017 Task 4A English
[1], a competition revolving around the classification of
Twitter postings into three sentiment classes (positive,
negative, neutral). This event attracted 38 teams from various
universities and organisations worldwide. The aim of the
research was to investigate ways to build better-performing
models than those constructed by the top-ranking teams.
This study was carried out in two parts. The first focused
on optimising the model of DataStories [2], one of the two
teams that tied in first place in the SemEval-2017 competition.
Their approach used deep bidirectional LSTM networks
paired with an attention mechanism. The DataStories
results were reproduced first, followed by the execution of
a number of experiments. These included: identifying the
optimal validation-set evaluation metric; checking for seed
sensitivity; finding the optimal train-validation split ratio; and
hyperparameter optimisation. The second part focused on
training, optimising, and evaluating models incorporating
the transformer encoder architecture, namely BERT and
RoBERTa, using the competition data. The necessary
experiments were also carried out on these models, in an
attempt to improve the results. To facilitate experimentation,
the systems developed in this work adopted a grid-search
framework.
All developed models outperformed the original
DataStories model. The configuration of the said model
was optimised, thus achieving a slightly better performance.
Furthermore, the BERT and RoBERTa models significantly
outperformed the configurations of the DataStories model,
further confirming the dominance of such models over
others for various NLP tasks.
Deep Learning
Figure 1. Architecture of the DataStories model [2]
Figure 2. Architecture of transformer-based models
REFERENCES
[1] S. Rosenthal, N. Farra, and P. Nakov, “SemEval-2017 Task 4: Sentiment Analysis in Twitter,” in Proceedings of the 11th International Workshop
on Semantic Evaluation (SemEval-2017), 2017, pp. 502–518, doi: 10.18653/v1/S17-2088.
[2] C. Baziotis, N. Pelekis, and C. Doulkeridis, “DataStories at SemEval-2017 Task 4: Deep LSTM with Attention for Message-level and Topicbased
Sentiment Analysis,” in Proceedings of the 11th International Workshop on Semantic Evaluation (SemEval-2017), 2017, pp. 747–754,
doi: 10.18653/v1/S17-2126.
L-Università ta’ Malta | 75
Autonomous drone delivery
SEAN DIACONO | SUPERVISOR: Prof. Matthew Montebello
COURSE: B.Sc. IT(Hons.) Artificial Intelligence
Deep Learning
This project aims to explore and develop an autonomous
drone-delivery system. This system was implemented within
a simulated environment called AirSim [1] which mimics a
real-life urban neighbourhood. To develop such a system, it
was necessary to develop a number of processes to ensure
safe use. In this project, it was deemed best to focus on
navigation, obstacle avoidance and autonomous-landingspot
detection.
Navigation of the drone works by giving the appropriate
coordinates to the flight controller, and in turn the flight
controller (implemented within AirSim) takes control of the
drone and flies it towards the desired coordinates. During its
‘journey’, the drone would be required to perform obstacle
avoidance to ensure a safe flight.
The approach chosen for obstacle avoidance involved
using a depth map to check whether an obstacle would
be present directly ahead of the drone’s path. The depth
map was created by using the depth-estimation system,
MonoDepth2 [2], which makes use of a convolutional neural
network (CNN) to estimate depth from a single image. From
the depth map, obstacles could be identified to enable the
drone to take any necessary evasive manoeuvres.
The method created for autonomous landing entailed
the use of a technique known as semantic image
segmentation. This technique splits an image into segments,
with each segment being given a different colour code that
corresponds to an object or a material [3]. By applying this
process to the image captured by the drone’s bottom-facing
camera, any surfaces that would be considered safe landing
surfaces (e.g., a paved area) could be identified. An example
of a segmented image could be seen in Figure 1.
A web application was also developed to simulate a
drone delivery app, through which a user could create a
delivery and monitor its status. This interface may be seen
in Figure 2.
Figure 1. An example of image segmentation
Figure 2. Web application interface
REFERENCES
[1] S. Shah, D. Dey, C. Lovett, and A. Kapoor, “AirSim: High-Fidelity Visual and Physical Simulation for Autonomous Vehicles,” Field and Service
Robotics. pp. 621–635, 2018 [Online]. Available: http://dx.doi.org/10.1007/978-3-319-67361-5_40
[2] C. Godard, O. M. Aodha, M. Firman, and G. Brostow, “Digging Into Self-Supervised Monocular Depth Estimation,” 2019 IEEE/CVF
International Conference on Computer Vision (ICCV). 2019 [Online]. Available: http://dx.doi.org/10.1109/iccv.2019.00393
[3] S. Minaee, Y. Y. Boykov, F. Porikli, A. J. Plaza, N. Kehtarnavaz, and D. Terzopoulos, “Image Segmentation Using Deep Learning: A Survey,”
IEEE Trans. Pattern Anal. Mach. Intell., vol. PP, Feb. 2021, [Online]. Available: http://dx.doi.org/10.1109/TPAMI.2021.3059968
76 | Faculty of Information and Communication Technology Final Year Projects 2021
Detection of stairways from aerial imagery
JOY GRECH FLERI SOLER | SUPERVISOR: Mr Dylan Seychell | CO-SUPERVISOR: Mr Mark Bugeja
COURSE: B.Sc. IT(Hons.) Artificial Intelligence
Object detection is a prominent and well-researched topic in
the field of computer vision. This study seeks to contribute to
the field by tackling the overall issue of object detection, with
an added layer of complexity through the types of images
on which the object would be detected.
A working definition of ‘stairways’ would be: “a set of
stairs inside or outside a building”. This study focused on
building a detector of stairways located outside buildings
and outdoors stairways in urban areas across the Maltese
Islands. Due to the niche nature of the study topic, it was
necessary to split this project into two major sections: data
acquisition and experimentation.
The data acquisition aspect was tackled by obtaining
images of stairways from various towns and public areas
around the Maltese Islands. In total, around 10,000 images
with varying rotations and zoom levels, randomised stairway
positioning and lighting conditions were obtained through
the use of a Google Maps API.
The aim of the other major aspect of this study – the
experiments –was to document and seek to achieve the best
metrics possible for this kind of object detection, as well
as studying the impact of varying sub-datasets from the
origins dataset. The scenarios ranged from experimenting
with different state-of-the-art object-detection methods
and differences in the datasets, to the evaluation of false
positives that were obtained by the algorithms.
The significance of this study lies in the ability to integrate
it into practical tasks, such as accessibility of public places
and possibly routing. It proposes a comprehensive stage-bystage
process towards achieving an accurate object detector
for aerially captured stairways. The study also explores and
demonstrates the impact of various components that have
long been problematic within the field of computer vision.
Deep Learning
Figure 1. The detector identifying two stairways in close proximity
Figure 2. A close-up of the two detected stairways: one of these has been
identified correctly, whereas the other is a wrongly detected terrain
abnormality included with the stairway
L-Università ta’ Malta | 77
Saliency-directed product placement
ŻAKKARIJA MICALLEF | SUPERVISOR: Mr Dylan Seychell
CO-SUPERVISOR: Prof. Ing. Carl Debono | COURSE: B.Sc. IT(Hons.) Artificial Intelligence
Product placement or embedded marketing involves the
process of finding strategic locations for particular objects
within a scene, in such a way that one’s attention would
shift to the designated product. The use of advanced
artificial intelligence and computer vision is expanding
into every area of our lives. Recently, there has been rapid
development in deep learning, which helped bring about a
number of breakthroughs in computer vision.
One of the aforementioned breakthroughs is visual
saliency, which is the branch of computer vision that
generates attention-based models of a given scene
using the features mentioned in the previous paragraph.
Through human evolution, certain characteristics of an
image, such as colour and contrast, make an object stand
out from its neighbours and attract one’s attention. These
are most of the time characterised by regions of different
contrast, different intensity values and even orientation
of features.
This dissertation evaluates how the use of visual-saliency
techniques could improve product placement analysis by
implementing an objective product-ranking system. This
system was developed to observe a scene with a number
of products, and then seek to predict upon which one the
customer’s gaze would turn first. The system initially uses a
state-of-the-art object detector to detect the products in the
scene while another component ranks the detected product,
using a technique based on a saliency segment-ranking
algorithm. A final component was also included in order that,
should there be multiple instances of the same product in a
scene (e.g., a supermarket shelf) the system would detect and
remove the product from the ranking. The modular aspect
of this system allows many aspects of the product-ranking
technique to be altered, such as substituting the saliency
map-generating algorithm, which would allow evaluating
the effectiveness of the different configurations and which
components would most affect the accuracy of the rankings.
Deep Learning
Figure 2. Final product ranking
Figure 1. Architecture design of the product-ranking system
REFERENCES
[1] D. Seychell and C. J. Debono, “An Approach for Objective Quality Assessment of Image Inpainting Results,” 2020 IEEE 20th Mediterranean
Electrotechnical Conference ( MELECON), 2020, pp. 226-231
[2] D. Seychell and C. J. Debono, “Ranking Regions of Visual Saliency in RGB-D Content,” 2018 International Conference on 3D Immersion
(IC3D), 2018
78 | Faculty of Information and Communication Technology Final Year Projects 2021
Gesture recognition for hologram
interaction: An application for museums
MEGAN MONTEBELLO | SUPERVISOR: Dr Vanessa Camilleri | CO-SUPERVISOR: Mr Dylan Seychell-
COURSE: B.Sc. IT(Hons.) Artificial Intelligence
The aim of this research project was to develop a deeper
understanding of hand-gesture recognition for the
manipulation of hologram objects, and hinges on the
human-computer interaction (HCI) for an augmented user
experience. This could have a wide range of uses across
various fields and domains, such as in cultural heritage and
museum visits.
Virtual reality (VR) and augmented reality (AR) systems
are already being considered when seeking to enhance
the museum experience. Holographic displays are also
being used to create immersive user experiences. However,
with a lack of interaction, the novelty of the display would
soon wear off, resulting in a limited user experience. Handgesture
techniques and holographic object manipulation is
an emerging research field in artificial intelligence (AI) and
employs novel computer-vision techniques and technologies,
such as: machine learning algorithms, deep learning and
neural networks (NNs), feature extraction from images and
intelligent interfaces.
By evaluating existing hand-gesture recognition
techniques and determining the optimal method, a system
that is highly efficient and accurate could be produced to
achieve the goal of a more immersive and interactive user
experience. Therefore, this study set outs to take a new
approach to HCI, in which it is a very natural interaction
and almost simulates a completely new way of how society
should plan both museums and educational sites.
For this project, hand gestures were captured by the
camera using the hand-in-frame perspective, passing it onto
the next stage of the system. The features of this hand-inframe
were then extracted and used to make a prediction
of what the hand-gesture being shown is. The prediction is
achieved by designing a dataset from scratch, containing
samples that vary in distance from camera, hand size and
other physical features. This dataset was then used to train
the NN by feeding in the samples as normalised coordinates
to represent the hand position in each captured frame. The
NN contained a number of hidden layers that were involved
in the training process, resulting in a hand-gesture prediction
model. The final NN layer output a normalised level of
confidence for each possible gesture, and a prediction is
made if the highest confidence level is above a predefined
threshold.
The hand gesture is used to manipulate the 3D model
of the historical site/artefact shown as a hologram, leading
to enhanced user interaction. Such interactions may include
lateral shifts, rotations, zooming in and out – all of which
would be dependent on the hand-gesture itself and the
direction of motion of the hand. This is rendered in real time,
with an immediate and visible result shown to the user.
The experiment results indicated that the model could
accurately and effectively translate designated human hand
gestures into functional commands to be implemented by
the system, after undergoing several training stages. Training
data for this NN model covered a wide variety of hand
sizes, proportions and other physical features. This ensures
that the model would not be limited to just responding to
the hands of specific users, thus making the entire system
accessible to anyone wishing to use it.
Figure 1. High-level system design for project model
Deep Learning
L-Università ta’ Malta | 79
Music recommendation system
MICHAEL PULIS | SUPERVISOR: Dr Josef Bajada
CO-SUPERVISOR: Prof. Ing. Carl Debono | COURSE: B.Sc. IT(Hons.) Artificial Intelligence
Traditional music-recommendation techniques are based
on the concept of collaborative filtering (CF) which
leverages the listening patterns of many users. If enough
users listen to artist X and artist Y, then should a user
listen to artist X, the system would recommend artist Y
to that user. While this technique is very effective, it is not
able to recommend new songs or artists since there is no
listening history to draw upon.
This research seeks to tackle music recommendation
for new songs and artists by making recommendations
that would be solely based on the audio content, rather
than metadata such as genre, artist, or using the listening
histories. The study proposes a distance metric, based
solely on raw audio, which in turn could be used as the
basis upon which to recommend songs that would best
reflect the user’s library.
The distance metric was created by training a
Siamese neural network (SNN) on a dataset of similar
and dissimilar song pairs. Each song was first converted
into a Mel Spectrogram to obtain a bitmap representation
of each song. The SNN consists of two identical
convolutional neural networks (CNNs) which are fed the
Mel-Spectrogram bitmap of each song pair. By training
the model on this dataset of song image pairs, the SNN
learns to act as a distance metric between songs, based
on the raw audio files. The SNN model achieved an
accuracy score of 82% on the test set.
A web app was developed to evaluate the performance
of the system with real users. Survey participants were
required to first create a small library of songs they liked,
and then proceed to rate the automatic recommendations
provided by the system. The evaluation system used A/B
testing, whereby the user would unknowingly rate songs
from both the proposed system as well as a genrebased
recommendation heuristic, to allow for meaningful
analysis and evaluation.
Deep Learning
Figure 1. Siamese network structure
Figure 2. Web app recommendation screen
80 | Faculty of Information and Communication Technology Final Year Projects 2021
Macroprogramming smart contract systems
MATTHEW VELLA | SUPERVISOR: Prof. Gordon Pace | CO-SUPERVISOR: Dr Joshua Ellul
COURSE: B.Sc. (Hons.) Computing Science
This project set out to build upon existing research in
the programming of smart contract systems. It entailed
creating a language that could describe both on-chain and
off-chain computation and data, while abstracting lowlevel
communication between platforms. The terms ‘onchain’
and ‘off-chain’ refer to blockchain transactions and
transactions occurring through other channels, respectively.
Existing smart contract languages are limited to
describing code that runs entirely on the blockchain.
However, most applications would require code that could
run on multiple blockchains and interact with the real world
at off-chain locations. The proposed solution consists
in writing separate code for different platforms, with
custom communication. It was also deemed appropriate
to run trusted code off-chain to improve the scalability
performance and privacy of the on-chain protocol.
The chosen approach would allow programmers to
write a single program description, enabling the language
compiler to manage the rest. The compiler would then target
code for both the on-chain and the off-chain platforms.
Moreover, the inbuilt Oracle system would handle the lowlevel
communication between the platforms for real-time
communication. The programmer would then be able to
focus entirely on the functionality of the smart contract,
while the rest would be abstracted out.
The target location of the code was specified using the
programming tags, defined in the language. The language
features were carefully chosen on the basis of two related
experiments. The selection also entailed analysing the
domain of existing smart contracts, and the sustainability
tags for specifying code locations
The developed language would allow programmers to
describe functions running both on-chain and off-chain.
Programmers would also be able to describe data by
defining a model and specifying the target location for
each data attribute. The language was evaluated with
reference to language theory and by comparing it to the
current domain languages.
The outcome of the aforementioned analysis indicated
that the designed language would require significantly
less code to write such systems, while providing a unified
view of the entire system. In view of a lack of developer
feedback, it was not possible to obtain a watertight verdict
on the proposed language. Nevertheless, this drawback
could prove to be the motivation for further work in the
area, or improving the language itself.
Blockchain & Fintech
Figure 1. The system design
Figure 2. A function that runs partially on-chain and partially off-chain
L-Università ta’ Malta | 81
Relocating major buildings and the
effects on traffic in Malta: A study
ANDREW CACHIA | SUPERVISOR: Dr Lalit Garg
COURSE: B.Sc. IT (Hons.) Software Development
Traffic congestion is currently one of the major problems in
Malta and has a negative impact on the country in terms of
the economy, the environment and society in general. It has
been established that congestion largely occurs at certain
peaks, which mostly coincide with office and school hours.
Nevertheless, when taking into account that the traffic
flow is acceptable at other hours during the day, widening
the roads and seeking to improve the infrastructure of the
current road network merely to cater for peak hours is not
necessarily the optimal solution.
This study proposes to reduce traffic congestion in
Malta by relocating major buildings such as schools and
hospitals from their current location to other areas. This
could be achieved by using simulation techniques to
analyse current data towards gaining insight into the
effects such relocations would have on the road network.
The proposed new locations were selected on the basis of
current non-congested areas and focusing on main roads
outside the congested town centres. The goal was to shift
traffic outside the town centre, whilst maintaining the main
road traffic as free-flowing as possible, thus leading to a
positive impact on the environment in the living area of the
general population.
Data relating to traffic congestion was obtained from
TomTom, which provides historical traffic maps. TomTom
indicates the vehicle density in a particular part of the road,
with the respective date and time. A sample is shown in the
accompanying image. The data obtained was then used
to create the proposed simulation models. The simulation
software Simul8 was used for recreating different scenarios
of the relocation of such major buildings. Traffic data
obtained using the simulation technique was compared
with the old and proposed locations, following which an
analysis on the effects of each site was conducted.
Multiple scenarios were implemented, including the
change in location of the building, taking into consideration
at least three different new locations. Another scenario
was to identify another major building within a different
category, in the same area and relocate it as well. This
scenario was simulated both as a standalone and also in
conjunction with the previous building. An analysis of the
results and comparisons between the different scenarios
was carried out.
At the final stage, the feasibility of the solution
was assessed in terms of whether it would be effective
to relocate such buildings, and the significance of
the results obtained, alongside other considerations.
Recommendations for possible implementation were
made on the basis of the achieved results and subsequent
evaluation.
Blockchain & Fintech
Figure 1. Traffic heat map of a sample road network (as sourced from TomTom) and the related statistics
82 | Faculty of Information and Communication Technology Final Year Projects 2021
Towards seamless .NET blockchain
interaction by using Entity Framework
SERGIU IOAN NIMAT | SUPERVISOR: Dr Joshua Ellul
COURSE: B.Sc. IT (Hons.) Software Development
The tool being proposed in this project enables developers
to integrate their .NET-based applications with both
Ethereum and Entity Framework, while mitigating the
complexity of having to deal with different frameworks.
This approach is widely implemented and used within IT,
such as in IoT (Internet of Things). The two most common
methods for achieving this are: macroprogramming [1] and
aggregate programming [2].
Before the introduction of Entity Framework, developers
had to write all the complexity related to aspects such
as database connections, querying, and writing to
database tables and their relations etc., manually. Entity
Framework made it possible for these tasks to be carried
out automatically. It also became possible to develop
applications in a more robust and efficient way, even
without knowing how to write SQL.
The tool developed through this project seeks to enable
developers to interact with the Ethereum blockchain more
easily when it comes to aspects of data manipulation.
While smart contracts are not the best place for storing
and manipulating data, this is just a small piece in a larger
puzzle. The project also focused on proposing a solution
to enable developers to write .NET code that could get
translated into smart contracts [3]. This would also
allow developers to merely plug in this tool and use its
functionalities.
Since the tool being proposed requires minimal
configuration to plug it into the .NET application, once
configured, developers could use all services provided
within the tool. It would be essential to mention that
the tool in question seeks to demonstrate how .NET
developers could use a package that enables them to
interact with the Ethereum blockchain and the underlying
database simultaneously. Furthermore, the package is
bound to a specific smart contract (i.e., business logic)
and, in this case, to a real estate agency. However, the
tool could be further developed in the future such that
developers would be able to apply it to any business logic.
The package itself was designed to include two levels of
abstraction. Starting from the bottom up, the first level of
abstraction consists of two interfaces: on the one hand,
an interface that communicates to an SQL database
using the Entity Framework library and, on the other hand,
the second interface would interact with the Ethereum
blockchain by using the Nethereum library. The second layer
of abstraction ensures that the external blockchain and
database are asynchronous by using both the interfaces
described in the first level of abstraction.
The demo .NET web application that was used for
demonstrating the usage of the package could enable
users to purchase properties with Ether cryptocurrency
from a real estate agency. It could also allow users to
sell their properties to other users of the application, for
an additional fee transferred to the real estate agency for
their service.
Blockchain & Fintech
Figure 1. The general level design of the package and its interactions with both the external tools and the .NET application
L-Università ta’ Malta | 83
Enhancing stock-price-prediction models
by using concept drift detectors
CHARLTON SAMMUT | SUPERVISOR: Dr Charlie Abela | CO-SUPERVISOR: Dr Vincent Vella
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Blockchain & Fintech
The problem of making predictions on the stock market
has been extensively studied by market analysts, investors,
as well as researchers from across different fields of study.
This is due to the difficulty of the problem, and also to
the potential financial gain that an efficient solution would
bring about. . In view of the recent progress made in the
field of machine learning, extensive research has been
carried out on the issue of applying machine learning
models to stock market predictions.
The efficient-market hypothesis (EMH) posits that
the current asset price reflects any and all available
information. This implies that any new information
entering the stock market would be used, thus making
it very difficult to predict future prices based on old
prices. Due to this dynamic and the fluctuating nature
of the stock market, certain underlying concepts start
to change over time. This phenomenon is known as the
concept drift. When concept drift occurs, the performance
of machine learning models tends to suffer, sometimes
drastically. This decline in performance occurs because
the data distribution that was used to train the model is
no longer in line with the current data distribution. The
concept drift issue is not exclusive to the stock market,
as it affects many real-world domains, such as weather
prediction and sales forecasting. Concept drift has been
noted in numerous occasions through the years. However,
a popular example that appeared recently in mainstream
media occurred in early 2021, when the GameStop (GME)
stock, stopped following its ‘normal’ pattern and started
to increase in price drastically.
The research presented in this study aims to answer the
following research question: “Can a machine learning model
that has been trained on a dataset containing previous
stock prices, get better results if it undergoes a retraining
process every time a concept drift has been detected?”.
This question could be addressed by first examining and
evaluating four concept drift detectors that, according to
existing literature on the topic, have been proven to deliver
good results.
Having selected the detector that promised the best results,
the next step was to replicate research that used a stateof-the-art
deep learning model to predict stock prices. The
chosen concept drift detector was then attached to the
replicated model. Each time a concept drift was detected,
the model underwent one of several retraining methods.
In the evaluation, the results of the basic model were
compared with the results of the models that were fitted
with a concept drift detector.
The conducted experiments highlight the effectiveness
of each of the proposed retraining methods, as well as the
extent to which each of the methods mitigates the negative
effects of concept drift in different ways. The best observed
result was a 2.5% increase in accuracy, when compared to
the basic model.
While this research addresses the problem of concept
drift in the stock market domain, the proposed techniques
could potentially be used in other domains where concept
drift is also a major issue., However, for this sort of
generalisation to be applied, further experimentation would
be required.
Figure 1. A time series graph of the GME stock; the change in colour indicates where a concept drift has taken place
84 | Faculty of Information and Communication Technology Final Year Projects 2021
Sentiment analysis to predict
cryptocurrency prices
JACQUES VELLA CRITIEN | SUPERVISOR: Dr Joshua Ellul | CO-SUPERVISOR: Prof. Albert Gatt
COURSE: B.Sc. (Hons.) Computing Science
This research seeks to predict the ever-changing direction of
cryptocurrency prices ‒ in particular the price of Bitcoin – by
evaluating the sentiment and volume of opinions on social
media, which directly or indirectly may affect these values.
Sentiment would be useful for price prediction because,
since these views could influence the interest of potential
investors, it would be relevant to investigate whether better
ways of supporting investors could be created. In fact, not
only could public opinion sway the interest of potential
investors, but it could also be used to provide help for
investors to make better-informed decisions about future
price predictions. Twitter is generally used as the source
of sentiment, since it is widely used by people to express
their opinion about various topics, including cryptocurrency
price changes, forecasts and other factors that might
cause fluctuations in price. On the other hand, cleaning
Twitter data ‒ which is known to present several obstacles
‒ is another issue that is observed before constructing the
actual models.
The solution proposed in this study involves determining
the relation between the overall sentiment and price by
testing several varying-time granularities with the aim of
discovering the optimal time interval at which the sentiment
expressed would begin to affect the price in question. This
study involved the implementation of two types of models:
one that predicts the direction of the price in the next day,
and another that attempts to predict the magnitude of
the next day’s price change as a multi-class classification.
These two model types were constructed using three
different neural network models (two based on recurrent
neural networks and another based on a convolutional
network) to explore and compare the performance of
these neural network models in relation to each task.
Finally, a prediction model was constructed to allow the
forecasting of a price direction by combining the two types
of predictions.
The outcome of the study suggests that recurrent
neural networks perform better in predicting the direction,
while the convolutional neural network performs better in
predicting the magnitude of change. Additionally, the study
indicates that the mean accuracy of the models is inversely
proportional to the lag in the datasets.
Despite having a dataset containing over 16 million
tweets and more daily records than other related work,
when binning the tweets into days the number of records
that could be used to train and test the models was still
insufficient. Consequently, it could be concluded that
having a larger tweet dataset ranging over more days,
the accuracy levels of the results of this research could be
improved.
Blockchain & Fintech
Figure 1. Reading sentiment from Twitter to predict the price of Bitcoin
L-Università ta’ Malta | 85
Automated on-page usability testing
JOSEPH BALDACCHINO | SUPERVISOR: Dr Chris Porter | CO-SUPERVISOR: Dr Mark Micallef
COURSE: B.Sc. IT (Hons.) Software Development
Usability testing is a human-intensive process that must
compete for time with other activities in the software
development process, such as core function development
and functional testing. In the case of web-based applications,
the problem is compounded by frequent updates and shorter
release cycles. One way to counteract this problem would
be to automate aspects of the usability testing process so
that developers could receive immediate feedback on their
work. The two aspects covered in this project are: a) formfilling
time estimates for different groups of people (using
keystroke-level model), and b) the aesthetics of a web page
(based on several published metrics).
Following a review of the relevant literature, a number
of usability metrics were designed and implemented as part
of a prototype in the form of a browser extension. Using
this extension, the developer would be able to select which
usability aspect to evaluate. Two aspects are supported:
the first uses the keystroke-level model (KLM) metrics [1] to
estimate the amount of time it would take different types of
users to complete an on-page form. This factors in multiple
influencers, such as typing time, hand movement, mouse
cursor movement, clicking time, thinking time, and so on. The
second aspect considers automated aesthetic measurements
through a combination of 13 metrics presented in [2]. These
take into account: balance, equilibrium, symmetry, sequence,
cohesion, unity, proportion, simplicity, density, regularity,
economy, homogeneity, and rhythm. The results are colourcoded
so that the developers gauge how well the metrics
were followed, at a glance.
The effectiveness of the extension was evaluated through
quantitative and qualitative analyses, in the form of online
studies with various participants. The quantitative analysis
consisted in comparing the extension’s predicted results with
those produced during study-specific tasks by participants.
Expert feedback was also sought to generate further insights
on the developed tool and associated techniques.
Testing & Verfication
Figure 1. A sample result of form-time prediction
REFERENCES
Figure 2. An example of aesthetic results
[1] S. K. Card, T. P. Moran and A. Newell, “The keystroke-level model for user performance time with interactive systems,” Communications of
the ACM, vol. 23, no. 7, pp. 396-410, 1980.
[2] D. C. L. Ngo and J. G. Byrne, “Application of an aesthetic evaluation model to data entry screens,” Computers in Human Behaviour, vol. 17,
no. 2, pp. 149-185, 2001.
86 | Faculty of Information and Communication Technology Final Year Projects 2021
High-level events of forensic timelines
using runtime verification
MANWEL BUGEJA | SUPERVISOR: Dr Christian Colombo
COURSE: B.Sc. (Hons.) Computing Science
Timeline reconstruction is the aspect of digital forensics that
concerns itself with assembling a timeline of events from a
recovered image. The timeline usually consists of a list of very
basic events, such as file creation or file changes. These lists
are ordered chronologically and include the time at which
each event has taken place. In the case of large systems such
as a smartphone device, the lists are generally huge, and
therefore very difficult to analyse manually.
Various techniques are used to build timelines of a
higher level, i.e., events that would be more understandable
to humans. This project consists of identifying scenarios
that took place on an Android device using runtime
verification. A tool called LARVA was used for the task,
while any high-risk scenarios that could take place on
Android were described using finite-state automata (FSA).
This is essentially a formal way of describing the different
scenarios that could take place. The FSA was programmed
into LARVA to act as the basis for runtime verification.
An example of these sequence of events is when a user
downloads files from the internet (for example from Google
Drive) and installs them on the device.
The identified scenarios could be used by digital forensics
investigators to track down methods that malware could
have employed to infiltrate the system. Using the previous
example, if an application were to be downloaded from
Google Drive and installed on the Android device, it could be
unsafe, as opposed to applications downloaded from the
Android market.
Figure 1. A sample extract from of a timeline
Testing & Verfication
Figure 2. A finite-state automaton
L-Università ta’ Malta | 87
Improving soft real-time systems in
games by deadline constraints
ÉTIENNE CARUANA | SUPERVISOR: Mr Tony Spiteri Staines
CO-SUPERVISOR: Prof. Ernest Cachia | COURSE: B.Sc. IT (Hons.) Software Development
In recent years, video games have seen a rise in popularity.
This is partly due to the Covid-19 pandemic, which led
to persons seeking a new source of entertainment while
confined in their home. In light of this, a considerable amount
of persons lacking the knowledge of hardware limitations,
have filled the void with gaming.
In order that the user be presented with the best
experience, the game must be optimised in a way that the
system would be able to handle it. This all depends on the
system’s specifications and the user’s knowledge on how
to use the information presented. Furthermore, gaming
technology is always advancing, with technologies such as
ray tracing and deep learning super sampling (DLSS), which
are being employed in the latest game releases, to increase
the user’s immersion at the cost of more processing power.
Hence, users who have been avid gamers over a long
period of time would also need to optimise their settings
to compensate for this issue without the need of upgrading
system components.
Due to the technology advancements, namely by the
Nvidia and AMD corporations, game optimisation could be
achieved by the user to accommodate personal requirements.
However, other third-party software that offers data tracking
of currently launched applications does not take over and
offer assistance on improving the quality of games. Therefore,
this leaves an open solution for a system to offer descriptions
of statistics, while also taking control over the quality of the
game.
This study describes how real-time systems could help
gaming by illustrating how real-time data acquisition could
benefit the user’s immersion. This serves as the basis on which
a system that automatically detects video games running on
the system itself and act upon the data generated is being
proposed.
The features of the system include real-time tracking of
frames per second (FPS), latency (in milliseconds), packet
loss and actions based on the gathered data. These actions
include notifying the user of frame and audio lag which can
lead to desynchronisation, unstable internet connection and
guidance to solve these issues. All the previously mentioned
functionalities are activated when the system detects
reduction in quality in any of the tracked data. Real-time
algorithms have been included in the system to offer accurate
data and assign deadline constraints. Considering that there
are no all-in-one systems such as what is being proposed,
functionalities of the system were tested against various
other trusted solutions to compare the results.
These comparisons include real-time tracking of each
measure (FPS, latency and packet loss), efficiency of data
gathering and conciseness of each functionality triggering.
An approximation of accuracy was generated, and the
conclusions suggest that the solution presented is more
effective in helping the user understand the information
presented and more accurate at optimising the user’s
settings. Furthermore, a general evaluation indicated that
systems that did not consider user understandability and
usability obtained less traffic. Finally, the performance of
the proposed solution compares well with specialised thirdparty
software, with the addition of guidance and deadline
constraints to improve the user experience.
Testing & Verfication
Figure 1. Integration of the system in a real-world setting
88 | Faculty of Information and Communication Technology Final Year Projects 2021
Maintaining chain of custody in a
cloud environment, using databaseencryption
techniques
GAYLE CASSAR | SUPERVISOR: Dr Joseph G. Vella
COURSE: B.Sc. IT (Hons.) Software Development
Given its widespread presence in the area of processing,
and the lower storage costs it promises, cloud computing
enjoys considerable interest in a very connected society.
Considering the ever-increasing volume of data and the
extension of data-access to remote users, this technology
has also become attractive to digital forensic investigators,
as it facilitates the storing and analysing of evidence data
from ‘anywhere’.
While proving to be highly beneficial to forensic
investigators, the nature of the cloud also presents new
difficulties. Since data resides on external and also distributed
servers, it becomes challenging to ensure that the acquired
data remain uncompromised. This project investigates
whether modern encryption algorithms could be seamlessly
integrated in a workable system by securing the data in a
database management system (DBMS), and ensuring that
the evidence would not be altered during transfer, and when
it is stored in the cloud. The performance of the encryption
algorithms was also evaluated to test to what extent the
performance of basic update operations could be affected.
The approach taken was to first generate test data and
store it in a custody database. Two databases were built:
one that was encrypted and one that was not. The security
features that were used to keep the one of the databases
secure were: encryption, auditing, role separations, and
hashing. The two databases were then stored on a cloud
environment where the performance was evaluated during
testing. The quantitative performance was analysed and
tested to compare with the encrypted version to analyse
how far encryption would affect performance and whether
it would burden updating activities.
The data was also protected from access by database
administrators to mitigate the risk of an insider attack. The
‘Always Encrypted’ feature provided by Microsoft SQL Server
was used to encrypt data at rest without having to reveal
the encryption keys to the database engine. This resulted in
a separation between those who own the data, thus having
access to it, and those who manage the data but are not
granted access.
The custody system must be able to describe the
continuum of the evidence (that is: from where the evidence
would have been retrieved, the operations performed on it,
proof of adequate handling, and justified actions performed
on the evidence item. It was crucial to maintain the chain of
custody of the digital evidence throughout the investigation
by documenting every stage of the forensic process. This was
achieved by making use of the SQL Server’s auditing feature,
which involved tracking and logging events that might occur
in the database. The audits created for the custody system
were: failed login attempts, changes to logins, user changes,
schema changes, and audit changes. The logs generated
from these events made it possible to maintain evidence
provenance, thus helping to answer important questions
necessary to the chain of custody, such as what and when an
audit record has been generated.
Furthermore, a clear separation of concerns would be
required in the custody system to prevent changes in the
audit records, whilst also avoiding overlapping functional
responsibilities. An explicit forensic role and a corresponding
forensic database were created to prevent discretionary
violations of administrative functions, such as disabling
auditing mechanisms.
Testing & Verfication
Figure 1. Research model
L-Università ta’ Malta | 89
Computer security and communication
issues in automobiles: Identification
and analysis of security issues using
a threat-modelling approach
GIANLUCA CONTI | SUPERVISOR: Dr Clyde Meli
COURSE: B.Sc. IT (Hons.) Software Development
Car manufacturers are building vehicles with a greater
emphasis on connectivity, thus making them more
convenient – but also more susceptible to attacks from
malicious parties. There are many methodologies in use
by manufacturers to combat these threats but there is no
consensus on which is the most effective. The aim of this
project is to determine that threat modelling (TM) could be
used in the life cycle of a product to make it more secure.
In the area of security. TM is a methodology that is used to
identify risks by modelling the structure of a system.
To test the claim that TM is efficient and useful to the
security of vehicles, a specific TM software was used
on a simulated vehicle. By modelling the vehicle and its
components, a list of threats was generated and sorted
according to risk factor. The most problematic threats were
tested against the system. The results of the TM exercise
were then compared to the results generated by a fuzzing
test, which is a test that sends randomly generated data to
the system to detect any errors.
The results point towards a higher efficiency, both in time
and threat identification. However, not all the generated
threats were accurate, so further testing would be required
to improve the model itself.
The results show that TM could improve security testing
in the car industry. It allows for the developers to get a list
of the significant potential threats. Therefore, if an adequate
TM software would be applied early on into the life cycle of
the system’s development , it would allow the developers
to work on the most significant problems as efficiently as
possible, and with no impact on the consumer.
Figure 1. Threat model of car lock
Testing & Verfication
Figure 2: Attacking device linked to the controller area network (CAN) of the vehicle
90 | Faculty of Information and Communication Technology Final Year Projects 2021
Using runtime verification to generate
intrusion timelines from memory images
JONATHAN CUTAJAR | SUPERVISOR: Dr Christian Colombo | CO-SUPERVISOR: Dr Mark Vella
COURSE: B.Sc. (Hons.) Computing Science
Every action carried out in a system is recorded and logged
in memory. These actions, also known as events, could be
of various types, such as: opening a file, downloading a file,
or accessing a network. Analysing such events is useful for
detecting security breaches and computer misuse.
However, events stored in memory are not always
analysed, as there are various steps needed to put them
into a timeline for easier analysis. Manual checking for
any intrusion would be impractical, as it would be very
time-consuming to go through all the events, which occur
continuously. Hence, automated tools are important and are
much needed in this scenario.
In this project, timelines were checked for any possible
intrusions. This process was carried out over a number
of stages, as outlined in Figure 1. The first step required is
to create a memory image out of the memory. The next
step entails extracting events from memory images and
constructing the timeline using the Volatility framework. For
testing, readily available memory images were used, while
timelines without intrusions were created to assess the
difference between the two.
The main part involved runtime verification for checking
these timelines for any intrusion. The LARVA toolset was
used for the analysis, and the timelines were subject to rules
to be followed, in the form of transitions. These transitions
represent the moves between the states of the timelines. An
output file was generated while checking for timelines and if
any intrusion is found it would have been reported.
Figure 1. The stages of the process
Testing & Verfication
L-Università ta’ Malta | 91
Towards extracting, analysing and
verifying statistical claims
MATTHEW GALEA | SUPERVISOR: Dr Joel Azzopardi
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Claim verification is the task of determining the veracity of
a claim. Typical artificial intelligence approaches attempt
to support or refute a claim by comparing it to either
authoritative sources (such as databases of previously
fact-checked claims) or unstructured information (such as
the Wikipedia corpus and/or peer-reviewed publications).
However, this method faces many semantic challenges, where
minor changes in wording could generate inaccurate results.
Another difficulty encountered by human fact-checkers,
as well as by automatic systems, is that many claims
would not have one straightforward, correct answer. The
truthfulness of claims is usually given on a 5 or 6-point scale,
where claims are not necessarily ‘True’ or ‘False’, but could
also be ‘Half true’, ‘Mostly true’ or ‘Mostly false’. In fact,
research has shown that the two most popular human factcheckers
‒ Politifact and Fact Checker – only agree on 49
out of 77 statements [1].
This project proposes a novel approach towards
tackling the aforementioned issues in the task of claim
analysis, with the caveat that only a subset of claims
could be analysed. For the purpose of this research, these
are referred to as ‘statistically verifiable claims’ (SVCs).
Such claims are considered statistically verifiable because
they can be verified using statistical analysis, rather
than by comparing the claim to other textual sources
(which is a challenging task for automatic systems).
A solution was developed which given some text will first
identify the claims and then analyse each one to determine
whether it is statistically verifiable. Should this be the case, the
variables would be extracted along with information about
them (e.g., whether it indicates an increase or a decrease).
All the causal relationships are subsequently extracted and,
by using an ensemble system, the cause-and-effect events
would be mapped to the variables, establishing relationships
between them.
A further system was then utilised for obtaining time
series data for the variables identified in the claim. The
Eurostat dataset was used for this task, as it offers a large
collection of data covering a broad range of aspects of
EU Member States. Such time series data for each variable
would allow for a statistical analysis to determine whether
the data obtained supports or refutes the original claim.
In this way, the SVCs would be binary (i.e., ‘True’ or ‘False’)
without the possibility of a middle ground.
Testing & Verfication
An SVC is made up of variables and events. Variables
are quantitative entities that change over time such
as, population, average income and percentage of
unemployment. On the other hand, events are either changes
in variables (e.g., increase in a variable), or relationships
between variables (e.g., a causal event, where a change in
one variable could bring about a change in another). For
example, the claim by The Guardian that, “Global warming
has long been blamed for the huge rise in the world’s jellyfish
population” is a statistically verifiable claim, where there is a
causal relationship between two variables “global warming”
and “the world’s jellyfish population”.
REFERENCES
Figure 1. Overview of the proposed solution
[1] C. Lim, “Checking how fact-checkers check,” Research and Politics, vol. 5, July 2018. Publisher: SAGE Publications Ltd.
92 | Faculty of Information and Communication Technology Final Year Projects 2021
Direct digital synthesis on FPGA
MARK SALIBA | SUPERVISOR: Dr Ing. Trevor Spiteri
COURSE: B.Sc. (Hons.) Computer Engineering
This work presents an implementation of a direct digital
synthesis (DDS) system, on both a software level and a
hardware level. Such systems could be implemented on
devices such as sound synthesisers and function generators.
DDS is a signal-processing technique that combines digital
and analogue methods, in order to produce an arbitrary
waveform while using a fixed-reference clock. The use of
digital methods permits the DDS synthesiser to operate over
a wide range of frequencies, extending to the megahertz
(MHz) range. This is possible due to its capability of fast
frequency hopping.
In order to change the output frequency of a DDS system,
a procedure known as the phase-accumulator method was
used. The phase accumulator relies heavily on a component
called the binary tuning word (BTW). In essence, the BTW
is the value by which the phase accumulator increases. The
phase values were then portrayed as wave outputs by using
a phase-to-amplitude convertor. The fundamental waveform
associated with DDS is the sine wave, as seen in this project.
DDS popularity is constantly on the rise, due to its high
frequency capabilities. Consequently, its use in industry is
also on the increase.
The objective of this project was to implement a DDS
system onto a field-programmable gate array (FPGA),
the implementation of which also entailed simulations
taking place on a software level. The DDS system was
implemented for 3 types of waves: sine, square and
triangular. The algorithm was first implemented as a
prototype on MATLAB and the resultant plots were deemed
correct upon verification. The hardware implementation,
written in the VHDL programming language, consisted of
2 parts, namely: the VHDL simulation itself and the running
of the VHDL code on a hardware level by using an FPGA.
By simulating the VHDL code, it was noted that the
DDS system was verified to work for frequencies from
10kHz to 5MHz. However, due to limitations brought about
by the FPGA connectors, only the lowest frequency from
the range (i.e., 10kHz) was outputted on the oscilloscope.
This limitation was only present when the code was
running on the FPGA, and the output values were directly
generated. More importantly, if the DDS system was to be
used as one stage in a larger FPGA project, this limitation
would not impact the output.
Lastly, in order to carry out the final hardware
implementation, a digital-to-analogue convertor (DAC)
was used. Its role was to convert the digital signal
outputted by the FPGA into an analogue waveform. This
analogue wave was then passed through a filter which
was used to create a smooth and clear wave on the
oscilloscope display.
Figure 1. DDS waveforms
Testing & Verfication
L-Università ta’ Malta | 93
Using autonomous drone navigation
to pick up and deliver payloads
RYAN VELLA | SUPERVISOR: Prof. Matthew Montebello
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
This project aims at researching and investigating how
to efficiently employ unmanned aerial vehicles (UAV) ‒
commonly known as drones – to pick up and deliver a
package from source to destination entirely autonomously,
and as efficiently as possible.
The drone in this project was programmed to carry out its
task over a number of distinct stages. Firstly, the drone was
to immediately hover one to three metres above the starting
point, at which point it would immediately start looking for
the designated payload. Once detected, the drone would
slowly hover towards it and position itself as close to its
centre as it can get. It then picks up the payload through the
magnet attached to its small winch. Upon completing this
task, the drone slowly hovers back up into the air and starts
to pinpoint the landing zone, while constantly keeping track
of its environment and surroundings. When the landing zone
has been identified, the drone would align itself and begins
to make its descent and with that ending its trip.
The experiment made use of a Tello EDU, which is a very
small programmable drone measuring just 10cm in length.
Given this size, the drone is very light and considerably fast.
On the other hand, the main drawback of the device is its
battery life, which averages out at approximately 13 minutes.
Being limited to using such a small drone meant that
the entire project had to be tailored in such a way as to
ensure that no tests would exceed its specified capabilities.
A variety of different weights were used for the payload but
the drone invariably sought the same object it was trained to
detect, using the YOLOv4 algorithm.
Figure 1. Pipeline of proposed drone delivery process
Figure 2. Prototype of the setup used in the experiment
REFERENCES
Testing & Verfication
[1] S. Belkhale, R. Li, G. Kahn, R. McAllister, R. Calandra and S. Levine, “Model-Based Meta-Reinforcement Learning for Flight With Suspended
Payloads,” in IEEE Robotics and Automation Letters, vol. 6, no. 2, pp. 1471-1478, April 2021, doi: 10.1109/LRA.2021.3057046.
[2] P. Nguyen, M. Arsalan, J. Koo, R. Naqvi, N. Truong, and K. Park, “LightDenseYOLO: A Fast and Accurate Marker Tracker for Autonomous UAV
Landing by Visible Light Camera Sensor on Drone,” Sensors, vol. 18, no. 6, p. 1703, May 2018.
[3] C. Wang, J. Wang, Y. Shen and X. Zhang, “Autonomous Navigation of UAVs in Large-Scale Complex Environments: A Deep Reinforcement
Learning Approach,” in IEEE Transactions on Vehicular Technology, vol. 68, no. 3, pp. 2124-2136, March 2019, doi: 10.1109/TVT.2018.2890773.
94 | Faculty of Information and Communication Technology Final Year Projects 2021
Assessing cognitive workload during
software engineering activities
SEAN ANASTASI | SUPERVISOR: Dr Chris Porter | CO-SUPERVISOR: Dr Mark Micallef
COURSE: B.Sc. IT (Hons.) Software Development
Assessing the difficulty of a task as it is being performed
can provide substantial value to an organisation. Fritz et
al. [1] posit that such a capability would enable developers
to, among other benefits, revise the estimates for tasks,
reduce bug counts or even offer support to developers
where needed. They proceeded to propose a methodology
for assessing task difficulty among developers using
physiological data from eye trackers, brain activity
(electroencephalography or EEG), and electrodermal
activity (EDA). Although the study by Fritz et al. yielded
positive results, one cannot help but notice that the devices
used in their research required a specialised lab setup and
were arguably intrusive.
This project set out to investigate the extent to which
the results obtained in the aforementioned study could
be replicated by exclusively using sensors provided by a
commercial off-the-shelf smart watch. The intention here
was to explore the possibility of rendering such work more
accessible in an industry setting.
Following a review of commercially available devices,
the Fitbit Sense watch was chosen for the purpose of
this study. The methodology followed by Fritz et al. was
adapted to allow the of use heart-rate sensors on the said
device. Twenty participants were asked to complete a set
of software development tasks. The tasks were designed
in a way that each successive task induced more cognitive
stress on the participant. Time limits were also imposed to
regulate the length of the study, and to induce additional
pressure. Data was collected by means of a smartphone
app during the exercise, as it extracted the data off the
watch worn by the participants.
As with Fritz et al., a Bayes classifier was used to classify
windows of heart-rate data as ‘stressful’ or ‘not stressful’.
To train this classifier, participants were asked to complete
the widely used NASA-TLX questionnaire about each
task immediately after completing the respective tasks.
This provided a subjective workload rating and perceived
difficulty for each task, which was then used in conjunction
with heart-rate windows as training data for the classifier.
Results varied but, as at the time of writing, it was possible
to register a precision level of 73%. This demonstrates that
real-time task-difficulty assessment using non-invasive
commercial off-the-shelf devices is possible. This conclusion
presents ample opportunities for future research in the area,
ranging from improving the classification methodology, to
encompassing the real time task-difficulty assessment as
part of a set of real-world productivity tools that could
support knowledge workers in their day-to-day jobs.
Figure 1. The smart watch used during the study
REFERENCES
[1] T. Fritz, A. Begel, S. Müller, S. Yigit-Elliott and M. Züger, “Using psycho-physiological measures to assess task difficulty in software
development”, Proceedings of the 36th International Conference on Software Engineering, 2014. Available: 10.1145/2568225.2568266.
Digital Health
L-Università ta’ Malta | 95
Decoding sensors data using machine
learning algorithms to detect an
individual’s stress levels
DANIEL AZZOPARDI | SUPERVISOR: Dr Conrad Attard
COURSE: B.Sc. IT (Hons.) Software Development
Effectively detecting whether an individual might be
stressed could greatly improve a person’s well-being. This
would enable us to become aware of, and therefore act
upon, anything that might be causing stress. Advancements
in the field of digital health enable us to better monitor our
well-being towards making any lifestyle changes necessary
for enjoying a good and healthy life.
This study seeks to contribute to existing research
into the relationship between psychological stress and
the body’s vital signs. The approach adopted in achieving
this aim was through the use of sensor data and machine
learning algorithms.
Since a good relationship between psychological stress
and vital signs has already been established, the goal was
to collect these vital signs and make sense of them with
reference to stress, i.e., process them as necessary in order
to effectively detect an individual’s level of stress solely
through such readings. The vital signs that were considered
throughout the project were electrocardiogram (ECG)
readings and skin temperature. The chosen method for this
research has also been adopted in other studies; it consists
of the following steps: data collection, data cleansing, data
processing, and classification.
The project itself was split into two phases, namely:
artefact creation and artefact testing. Since the creation of
the artefact entailed a substantial amount of data, a public
dataset was used. This consisted of physiological data
collected from 15 individuals in different mental states. [1]
Sensor data is susceptible to noise from external
factors, such as body movement. Hence, filtering was
implemented within the artefact, cleansing the signals as
much as possible. Once the signals had been cleansed,
the solution proceeded to process them as necessary.
This is done by making use of popular methodologies that
are commonly used to make sense of such data, since
raw data is of little use. The metrics inferred from these
readings are generally referred to as features. Any data
collected during a stressful state was labelled as ‘Stressed’,
whilst the data collected when the person was in a relaxed
state was labelled as ‘Not stressed’.
These features and their labels were then passed
through a number of classification algorithms for training
the relevant model. While 80% of the data was used to train
the algorithms / model, the remaining 20% was used for
testing. Testing with this data yielded substantial results.
An experiment was then carried out following a similar
procedure as used in the WESAD dataset [1], for which 5
individuals were chosen to take part in the protocol, using
a skin temperature sensor and ECG sensor (see Figure 1)
readings were recorded in a baseline state and in a stressed
state.
Lastly, the data was passed through the created
artefact. Although the results achieved at the time of
writing were satisfactory, they suggested that a change in
the device used to collect the data, or the lack of variation
of participants in the datasets, could affect the level of
accuracy of the final results.
Figure 1. Positioning of the ECG and skin-temperature sensors
REFERENCES
Digital Health
[1] P. Schmidt, A. Reiss, R. Duerichen, C. Marberger and K. Van Laerhoven, “Introducing WESAD, a Multimodal Dataset for Wearable
Stress and Affect Detection”, Proceedings of the 20th ACM International Conference on Multimodal Interaction, 2018. Available:
10.1145/3242969.3242985.
96 | Faculty of Information and Communication Technology Final Year Projects 2021
VR Enhance - aiding human speech and
sensorimotor skills using virtual reality
RYAN CAMILLERI | SUPERVISOR: Dr Vanessa Camilleri | CO-SUPERVISOR: Dr Andrea DeMarco-
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Stroke remains one of the major causes for most linguistic
and functional disabilities, but this condition is not the only
cause for such deficits. Current rehabilitation programmes
struggle to keep up with the increasing demands for therapy
on a daily basis. The psychological impacts of therapy are
also not be underestimated.
This study investigates a rehabilitation game built on
a virtual reality (VR) system, which uses multimodality
to identify both speech and dynamic gestures within
a single application. The solution aims to provide an
alternative means of therapy that would allow patients to
independently improve their speech and physical abilities,
more specifically those related to the upper extremities,
with minimal to no guidance from therapists. For user
engagement, the system applies the themes of magic and
spells to instantiate intra-diegetic features after speech
or gesture classification, which are amplified according
to the user’s score. A sensor-based deep neural network
is applied, which recognises both one-handed and twohanded
gestures, essential for targeting bimanual activities.
For speech, the IBM Watson cloud-based speech-to-text
service was used with streaming, to allow for continuous
speech recognition until a pause would be detected.
The performance of both models was evaluated
through a user evaluation to validate the efficacy of the
proposed system. When applied to 18 participants, a global
accuracy and Cohen’s kappa coefficient of 93.3% and
89.9% respectively were achieved for the gesture model.
These results indicate the model’s ability to extend to
different users, whilst maintaining considerable accuracies.
An overall word error rate of 28.8% was achieved for the
speech model, which suggests that further improvements
would be required to recognise speech with low intelligibility.
Nonetheless, a gradual improvement in user scores was
observed during the 10 repetitions performed for each
gesture-and-speech sequence. The system was also very
well accepted by users, thus indicating that VR could be
effectively applied to rehabilitation programmes in the
future.
Figure 1. High-level diagram of the system
Figure 2. Intra-diegetic interface showing user analytics
Digital Health
L-Università ta’ Malta | 97
A model to improve low-dose CT scan images
FRANCESCA CHIRCOP | SUPERVISOR: Prof. Ing. Carl Debono
CO-SUPERVISORS: Dr Francis Zarb and Dr Paul Bezzina | COURSE: B.Sc. (Hons.) Computing Science
A computed tomography (CT) scan provides detailed crosssectional
images of the human body using X-rays. With the
increased use of medical CT, concerns were expressed on
the total radiation dose to the patient.
In light of the potential risk of X-ray radiation to
patients, low-dose CT has recently attracted great interest
in the medical-imaging field. The current principle in CT
dose reduction is ALARA (which stands for ‘as low as
reasonably achievable’). This could be achieved by reducing
the X-ray flux through decreasing the operating current and
shortening the exposure time of an X-ray tube.
The higher the dose of X-rays within a specific range,
the higher the image quality of the CT image. However, a
greater intensity of X-rays could potentially cause more
bodily harm to the patients. Conversely, using a lower dose
of radiation can reduce safety risks however this would
introduce more image noise, bringing more challenges to
the radiologist’s later diagnosis. In this context, low-dose
CT image-denoising algorithms were proposed in a number
of studies towards solving this dilemma.
Although there are many models available, the task of
low-dose CT image denoising has not been fully achieved.
Current models face problems such as over-smoothed
results and loss of detailed information. Consequently, the
quality of low-dose CT images after denoising is still an
important problem.
This work has sought to improve upon existing models
and discover new models that could solve the low-dose
denoising problem. A high-level architecture of the system
is shown in Figure 1. The trained model produces denoised
CT images from low-dose images, as shown in Figure 2. The
models were tested at different dose levels on a customdeveloped
dataset obtained from Mater Dei Hospital. The
best model from the tested machine learning techniques
was chosen on the basis of image quality and the model’s
efficiency.
Figure 1. High-level architecture of training a model for low-dose denoising
Digital Health
Figure 2. An example of a low-dose CT image, the output from one of the models and the corresponding fulldose
image
98 | Faculty of Information and Communication Technology Final Year Projects 2021
Predicting blood glucose levels
using machine learning techniques
with metaheuristic optimisers
MATTEO RAPA | SUPERVISOR: Dr Michel Camilleri | CO-SUPERVISOR: Mr Joseph Bonello
COURSE: B.Sc. IT (Hons.) Software Development
The human body keeps blood glucose levels within safe
limits naturally. However, this is not the case for persons
with diabetes, raising the need for blood glucose level
control. This, in turn, entails regularly measuring blood
glucose levels and, depending on the identified level, the
appropriate treatment would then be administered.
Diabetes is a global health problem, and the
International Diabetes Federation (IDF) reports that
around 463 million persons are currently living with diabetes,
amounting to roughly 1 in 11 adults worldwide. The IDF
projects that by 2030 more than 578 million individuals will
be living with diabetes [1]. Diabetic patients are at higher
risk of critical glycaemic events, and such events could
be mitigated through timely intervention. However, these
preventive actions tend to take time to act.
The use of machine learning (ML) techniques for
predicting blood glucose levels is an area of interest
to researchers attempting to provide the patient with
predictions on future blood glucose levels using less invasive
measures than are currently in use. In order to achieve this,
an adequate dataset would be required.
The OhioT1DM dataset is a publicly available dataset,
consisting of physiological time series data of a large
number of diabetes patients collected over eight weeks
[2]. The dataset contains thousands of rows and multiple
columns, obtained from wearable sensors and a continuous
glucose monitor (CGM). In a number of related studies,
multiple ML approaches were proposed for blood glucose
prediction, such as the recurrent neural network and the
multi-layer perceptron. This study implements two or more
of these predictive algorithms using the OhioT1DM dataset,
with the aim of predicting up to one hour ahead with
clinically acceptable predictive accuracy.
The performance of ML algorithms is dependent on their
parameter configuration or hyperparameters. The manual
selection of hyperparameters can often be challenging
due to the large, if not infinite, parameter search spaces.
Researchers often take an ad hoc approach in seeking an
acceptable combination of hyperparameters that could give
satisfactory results. Given the vast number of combinations
in the hyperparameter search space of certain algorithms,
it is often considered unfeasible to test every combination
to determine the optimal combination. Hyperparameter
optimisation may be used to algorithmically select and
tune the hyperparameters of an ML model. Metaheuristic
optimisers use intelligent ways of exploring the search
space to identify near-optimal solutions using exploration
and exploitation mechanisms. The aim of this study was to
apply more than one metaheuristic optimiser to the task of
finding candidate combinations of hyperparameters that
could possibly offer better predictive accuracy.
Although intelligently searching the search space
would reduce computational costs, the population-based
optimisers used would still require substantial computing
resources to complete in a timely manner. This work intended
to use graphic processing units (GPUs) to accelerate the
training process, due to their high computational power.
However, in certain cases, using a single machine alone
would not be sufficient. The workload might need to be
distributed among a network of machines. Hence, the
study also explored the use of distributed systems to
train the various models with different hyperparameter
combinations in parallel, on a cloud infrastructure.
Figure 1. Chart of ‘predicted vs actual’ blood glucose values from the
OhioT1DM dataset [2] using the multi-layer perceptron model
REFERENCES
[1] “IDF DIABETES ATLAS Ninth Edition 2019.” https://diabetesatlas.org/en/
[2] C. Marling and R. Bunescu, “The OhioT1DM dataset for blood glucose level prediction: Update 2020,” CEUR Workshop Proc., vol. 2675, pp.
71–74, 2020.
Digital Health
L-Università ta’ Malta | 99
EEG signal processing using machine
learning to detect epileptic seizures
SIMON XERRI | SUPERVISOR: Dr Lalit Garg
COURSE: B.Sc. IT (Hons.) Artificial Intelligence
Epilepsy is one of the most prevalent neurological disorders
worldwide. In Malta alone, around 4000 persons suffer
from the condition. A person is diagnosed with epilepsy
when two or more seizures are experienced for no known
reason. The effects that a person experiences differ
depending on the type of seizures. These effects can range
from impairment of senses, to total loss of consciousness
and uncontrollable convulsions. The main objective of this
work is to create a seizure-detection system using prerecorded
electroencephalogram (EEG) data and a number
of machine learning techniques.
When neurons fire within the brain, a small current
is produced. During a seizure, a group of neurons
synchronously fire together, resulting in spikes in electrical
activity in the brain, which is not characteristic of regular
brain activity. EEG sensors are used to measure this
electrical activity in the brain and use a number of metal
electrodes placed on the skull to measure the brain’s
electrical activity in different regions.
In this study, the CHB-MIT scalp EEG database [1-
2] was used to obtain many EEG recordings from seizure
patients. These recordings were then used as the dataset
on which to train a number of machine learning classifiers,
to classify whether an EEG signal being monitored would
correspond to a seizure or a non-seizure class.
Before the EEG recordings could be used for training,
preprocessing and signal processing techniques were
applied to extract salient features that would represent
the corresponding classes. Discrete wavelet transform was
used to decompose the signal into several subband signals
of different frequency ranges. Various features were then
identified in the extracted subband signals to be used to
train the classifiers.
Previous literature in the area of seizure detection using
EEG data predominantly compared and evaluated single
classifiers. In this work, the results were obtained with the
use of a technique called stacking classifiers (Figure 1). This
is an ensemble machine learning technique, whereby more
than one classifier would be used. This technique combines
the predictions from several well-performing classifiers to
produce a single meta-classifier that would outperform the
single classifiers. A number of classifiers were used in the
training process, namely: support-vector machine, naive
Bayes, k-nearest neighbors, random forest, multilayer
perceptron neural network and extreme learning machine.
These classifiers helped yield the desired results.
The performance of the stacked classifier was evaluated
using three performance metrics: accuracy, sensitivity
and specificity. When comparing the results obtained
through a stacked classifier to a single classifier, multiple
stacked classifiers were found, which outperformed all the
single classifiers in every performance metric mentioned.
Moreover, the sensitivity of the stacked classifiers in
particular was noticeably higher in most cases than that
of the single classifiers. This suggests that certain stacked
classifiers could report seizures more accurately.
Figure 1. An overview of the architecture of stacked classifiers
REFERENCES
[1] Shoeb, A. Application of Machine Learning to Epileptic Seizure Onset Detection and Treatment. PhD Thesis, Massachusetts Institute of
Technology, September 2009.
Digital Health
[2] Goldberger, A.L., Amaral, L.A., Glass, L., Hausdorff, J.M., Ivanov, P.C., Mark, R.G., Mietus, J.E., Moody, G.B., Peng, C.K. and Stanley, H.E., 2000.
PhysioBank, PhysioToolkit, and PhysioNet: components of a new research resource for complex physiologic signals. circulation, 101(23),
pp.e215-e220.
100 | Faculty of Information and Communication Technology Final Year Projects 2021
Deep-learning-based techniques for
Alzheimer’s disease diagnosis in MRI images
VLADISLAV KALASHNIKOV | SUPERVISOR: Mr Joseph Bonello
CO-SUPERVISOR: Prof. John M. Abela | COURSE: B.Sc. IT (Hons.) Software Development
Alzheimer’s disease (AD) is a neurological disease that often
results in dementia. AD causes patients to experience severe
cognitive decline, and also leads to an inability to perform basic
bodily functions, such as walking or swallowing. Eventually,
the condition becomes fatal. Currently, there is no treatment
but an early diagnosis would facilitate the management
of the disease. Thus, the patient may also be eligible for
medication that could help reduce visible symptoms, possibly
also slowing down the degenerative process.
In the case of AD patients, structural irregularities of the
brain could be identified through neuroimaging techniques,
such as magnetic resonance imaging (MRI). Neurologists
examine the brain scans obtained through such techniques,
and combine the analysis with the patient’s medical history
and various clinical tests to provide a diagnosis of the disease.
In recent years, multiple computer-aided diagnosis
(CAD) techniques have been proposed to provide an
automated diagnosis of the disease, using brain scans
from neuroimaging techniques. A number of studies in the
field have applied the deep learning (DL) approach towards
enhancing AD diagnosis, with promising results.
This study set out to investigate the use of different
DL models trained on a dataset of MRI scans, in order to
effectively distinguish between AD patients and healthy
persons. A CAD system was implemented, combining the
use of different preprocessing techniques to clean the raw
MRI scans to be inputted in the DL models. These, in turn,
were trained to provide an automated diagnosis of the
disease.
The DL models proposed in this study have been duly
evaluated in order to identify the best performing models.
This exercise suggested that the proposed system could
achieve promising results for the automated diagnosis of
AD.
Figure 1. Comparison between a healthy brain and the brain of an
Alzheimer’s patient
Figure 2. MRI brain scan after passing through the preprocessing
pipeline
Digital Health
L-Università ta’ Malta | 101
With 20+ brands, Betsson Group is one of the world’s largest gaming groups, at the heart
of entertainment for over five decades. Betsson employs over 2,000 talented people from
more then 60 nationalities across 12 offices worldwide.
WHAT WE ARE PROUD OF
32%
INTERNAL
HIRING RATE
7,000
APPLICATIONS
PER MONTH
43
BOOMERANG
EMPLOYEES
IN 2020
WHAT DO OUR BETSSONITES SAY
89%
ARE PROUD TO
WORK WITH US
90%
BELIEVE THAT WE
ARE A RESPONSIBLE
OPERATOR
86%
RECOMMEND US
AS AN EMPLOYER
WHAT DOES THE INDUSTRY SAY
GREAT PLACE TO
WORK 2020
– INTERNATIONAL GAMING AWARDS –
BEST EMPLOYEE
SUPPORT 2020
– COMMUNITY AWARDS –
EMPLOYER OF
THE YEAR 2021
– EGR NORDICS AWARDS –
2000Mbps
Epic Fibre is here.
Fastest speed in town.
€24 .99
/month
epic.com.mt/fibre
Terms apply.
Making The Law
Accessible To All
The digital versions of Malta’s Laws may be available to the public, but
their limited searchability makes them a hard set of documents to go
through. Now, a Master’s in Computer Information Systems thesis by
DESIREE BEZZINA is looking to change that for good.
One of the great benefits
of the digital age is
that information can
be made available and
accessible to everyone at all times.
Nevertheless, information that is not
easily searchable hinders people
from making the most of it. That is
indeed one of the problems with the
current digital version of Malta’s Law
both in Maltese and in English.
“Let’s take Malta’s drug laws as
an example,” Desiree says. “Currently,
anyone looking up drug-related laws
in Malta’s legislation would need to
know which specific Codes drugs are
mentioned in. Then, they would need to
access them individually and search for
these laws using exact text matches as
they would be found in the corpus of the
legislation. But that also means that a
person would need to know that there is
more than one law relating to drug use
in the different Chapters of the different
Codes and Acts in Malta’s legislation.
“Professionals may of course
know this, but the law is made
for citizens so it should be
understandable and searchable
by citizens, too. Even so, with
laws continually being changed
and updated, making Malta’s
legislation easier to search
should also help lawyers,
notaries, and other professionals
in their work by default.”
In order to turn this idea into
reality, Desiree started by looking at
existing ontologies, which basically
offer a vocabulary of domain-terms
that standardises the meaning of
concepts. So, as in our example,
searching for ‘drug laws’ would bring
up any laws related to drug control
in Malta regardless of where they
are listed or how they are described
in the text (i.e. legal or otherwise).
“Sadly, though, there are only
a few legal ontologies in the world
and none of them are in Maltese, so
the English version of Malta’s Code
was used for this project. Moreover,
when we tried to use the two main
ontologies in this area – the Core
Legal Ontology and the LKIF-Core
Ontology – on Malta’s Civil Code,
the former resulted in a coverage
of just 4.5 per cent of the whole
Code, while the latter covered 9.1
per cent. In other words, neither
of these ontologies offered wideenough
coverage of the English
version of Malta’s legislation.”
To get around this, Desiree looked
to extend the concept coverage of
the LKIF-Core Ontology by using
Sweet & Maxwell’s legal taxonomy.
This method basically saw her
employ knowledge engineering to
extend the ontology’s controlled
vocabulary related to Malta’s laws,
a process that required her to build
a semantic network using Natural
Language Processing techniques.
106 | Faculty of Information and Communication Technology Final Year Projects 2021
“Basically, we are making concepts
and words relate to each other so
that they become searchable by
reasoning rather than just by exact text
matches. In order to do this, I had to
look at how terms were being used in
Malta’s Civil Code. Some terms, like
‘Code of Conduct’, have to be looked
at as one term or concept because
we don’t want the system to bring
up every sentence where the words
‘code’ or ‘conduct’ are mentioned
unless they are directly related to
what the person is searching for.
“Desiree’s work has seen the extended
LKIF-Core Ontology’s coverage go up
to 42.8 per cent of Malta’s Civil Code”
Desiree’s work has seen the
extended LKIF-Core Ontology’s
coverage go up to 42.8 per cent of
Malta’s Civil Code, which means that
the ontology can now find almost five
times more concepts than before.
This, in turn, shows that the method
provides a tangible benefit. Moreover,
the fact that part of the thesis
involved the creation of a website
where the Civil Code can easily be
searched, means that the stage is
set for a platform that could, in the
future, be accessible to the public.
A sample of work
“The website is only available
to examiners and a few other
people for the time being, but I
do hope that in the near future,
this technology will be extended
to cover the entirety of Malta’s
Legislation and be made accessible
to everyone,” Desiree concludes.
L-Università ta’ Malta | 107
Giving Other
Languages A Chance
The English language’s current status in the field of technology is further
bolstered by the fact that many languages aren’t afforded the resources
needed to compete. Now, research by Master’s in Artificial Intelligence
student JAKE DALLI is offering a faster and cheaper way for other
languages to catch up.
Technology and the internet
may have opened up
some incredible avenues
for people to explore and
experience, but these have also
become monopolised by a small
number of languages. There are
many reasons for this, but none more
crucial than the fact that expensive
research is required to change
this. Thankfully, Jake Dalli, through
his Master’s thesis, is working on
creating a system whereby software
can use what’s already available
to help other languages thrive.
“When it comes to teaching
a computer how to understand
sentences the way humans do, we
use a specific type of AI called
Natural Language Inference
(NLI), which is a branch of Natural
Language Processing (NLP),” Jake
explains. “This area sees us use
machine learning models to teach
a computer how to deduce the
relationship between sentences in
order to get it to understand the
semantics [meaning] of language.”
In his research, Jake explored
the inference task, where a computer
is charged with deducing whether
two sentences – a premise and a
hypothesis – corroborate, contradict,
or bear no relation to each other.
To understand this better, let’s
take, ‘The boy jumps over the wall
in the garden,’ as an example of
a premise. A hypothesis that says,
‘There is a wall in the garden,’
corroborates the premise. One
that states, ‘The boy is in the
bedroom,’ contradicts it. While a
sentence that specifies, ‘The boy
is wearing a green shirt,’ bears no
relation to the premise at all.
“Such a system
allows for a more
diverse online
world in which
all languages
can be easily
communicated in,
thus leaving fewer
people behind”
“This may seem easy and obvious
to us, but computers work in a
different way. To understand the
semantic reasoning behind language,
they turn words and sentences into
a type of arithmetic. That’s why we
need to point out certain things, such
108 | Faculty of Information and Communication Technology Final Year Projects 2021
as what things like figures of speech
and metaphors actually infer, and
which words hold a lot of weight –
‘not,’ for example, can completely
alter the meaning of a sentence.”
As one can imagine, it takes
many examples and a lot of
programming in order for computers
to learn to make these distinctions
by themselves. That, in turn, makes
the process a time consuming and
expensive one. But while this may
make financial sense for researchers
to do it with global languages
like English or French, it’s not as
financially worthwhile for lowresource
languages like Urdu or
Maltese, which have small userbases.
“In the hopes of counteracting
this, my research is looking at
cross-lingual NLP, which would
use what computers have been
taught about the English language
to understand other languages,
without the need of starting from
scratch,” Jake continues. “To test
this out, I started by feeding an
artificial neural network [a computer
system that simulates the human
brain] all the pages on Wikipedia
in a variety of languages including
English and German. Then, I got the
computer to deduce the correlation
between words in these languages
based on what it already knew
about language in general.
“This actually had a higher level
of accuracy than we first envisaged.
Indeed, we discovered that languages
that come from the same language
family require pretty similar things.
So, for example, once we teach the
computer that some languages allow
for free word order, then that can be
used across the board whether it is
translating Bulgarian or Russian to
another language, or vice versa. It’s
similar with Latin languages, Semitic
languages, and the list goes on.”
The benefits of such research
could actually be manifold. On top
of saving vast amounts of money, a
system like this could help improve
the level of digital translation
systems, improve automated
language translations, make it easier
for companies to provide instruction
manuals in many languages, see
film studios offering subtitles and
dubbing in more languages, and
much, much more. Yet, perhaps,
the biggest benefit is that such a
system allows for a more diverse
online world in which all languages
can be easily communicated in,
thus leaving fewer people behind.
L-Università ta’ Malta | 109
Delegating The
Crunching Of Data
The reading of data by
artificially intelligent
machines is starting to
play a bigger role in
the healthcare systems
we use, yet speed is
still somewhat of an
issue. Now, thanks
to IAN CHETCUTI’s
Master’s in Computer
Information Systems
thesis, the reading of
data in such scenarios
could well become
much faster.
Over the past few years,
there has been a leap
in the technology
required to help
caregivers keep an eye on patients
in remote healthcare situations,
as well as in residential hospital
environments. This technology,
although still largely in its testing
phase, can give computers
the ability to inform caregivers
whenever a patient is in need of
help within just a few seconds.
Ian Chetcuti’s Master’s thesis,
however, is looking to take that
time lapse down to less than one
second by using edge computing.
“My thesis plugs into a
larger PEM (pervasive electronic
monitoring) in healthcare research
project funded by RIDT, which is
being conducted in collaboration
with Saint Vincent de Paul at
Pervasive Computing labs within the
Faculty of ICT. Their work is focusing
on increasing the quality of life
of people who live with dementia,
as well as on giving more tools to
their caregivers,” Ian, who also
works as a Senior System Analyst
at Mater Dei Hospital, explains.
The PEM system mentioned
here works by having sensors send
data about the patients to the
cloud on a regular basis. This data
is then crunched and the system
alerts caregivers to any specific
problems, such as a fall. Currently,
however, when this data is collected,
it is sent directly to the cloud,
which is basically a centralised
network server on the internet.
110 | Faculty of Information and Communication Technology Final Year Projects 2021
“The problem with this is that in
a residential hospital environment,
there are vast amounts of data
being collected from a large number
of people simultaneously. And
while the systems can crunch this
data in just a few seconds, such
delays could mean the difference
between life or death in certain
circumstances,” Ian continues.
“That’s why my Master’s thesis
is suggesting a framework using
edge computers, which in essence
would be servers located in specific
rooms or areas of the hospital.
Each of these edge computers
would only cater to a specific
number of people, whose data
“An alert issued by
edge computers
would be out
within less than
a second from
the accident
happening”
would be received and analysed
by their allocated edge server.”
These edge servers would then
look at the most important data
and alert caregivers if there is an
issue before forwarding the data
to the cloud. The cloud, then, would
predict the processed data that has
been forwarded and alert caregivers
whether the edge computer has
or hasn’t caught it, thus ensuring
double verification of every case.
Such a process may seem timeconsuming
but, in reality, an alert
issued by edge computers would
be out within less than a second
from the accident happening. This
would mean that if a caregiver is
not in the room, or is taking care
of another patient elsewhere, they
would immediately be told that
Patient X requires their assistance.
Moreover, through the use of
Wi-Fi connected to the patient’s
smartphone, caregivers would be
able to use a visualisation tool to see
exactly where the patient has fallen.
The importance of such a
project lies in the fact that it has a
transferrable system that could be
used for a lot of other scenarios,
too. By adding sensors that check
heart rate, skin temperature, blood
sugar levels, blood pressure levels,
and so on, a system like this could
alert nurses and doctors to any
immediate or predictable danger
before it actually happens. Meanwhile,
the use of such systems can give
patients with dementia, among other
conditions, more independence
while reducing risk, as the system
could automatically be made to call
relatives, emergency services, or even
a neighbour in case of accidents.
Will this be the future of
care? Only time will tell, but it’s
surely a promising start.
L-Università ta’ Malta | 111
A Simple
Solution To
Boost Workflow
By understanding how our brains work when we receive a push
notification, MSc in Computer Information Systems student VANESSA
VELLA has created a piece of software that can help thousands of people
quickly regain focus.
If you work at a computer,
then you will surely have
experienced the interruption
that comes with a notification:
one minute you’re focusing on the
task at hand, the next you’re scrolling
through a seemingly endless list of
posts. It happens to all of us, but
the worst part about all this is how
hard it can be to get back on track.
For the past year, however, Vanessa
has been working on a project that
aims to help knowledge workers, with
software developers in particular, easily
get back on track thanks to a simple,
yet effective software extension.
“Push notifications, which come
from social media platforms, e-mails,
weather apps, and other software, are
important tools in keeping us aware
and on top of things, but there are
just too many of them nowadays,”
Vanessa explains. “Even so, it’s hard
for people to switch off their phones,
go offline, or even disable notifications
for fear of missing out, so what I
wanted to do was create a way that
would facilitate getting back to work,
rather than removing notifications.”
To do this, Vanessa started working
on a three-phase project. The first
phase was to understand how people
reacted to these notifications, how
they felt about them, and what they
found hardest to do once they got
back to work. It also included extensive
research into what literature related
to this area said, and whether that
applied to what the Maltese software
developers surveyed had told her.
This led to the second phase,
which was a controlled lab experiment
that sought to understand how
different types of notifications
affected the workflow of users
and how long it would take for
them to get their focus back.
“We started by creating a website
where software developers could
undertake a code comprehension
task, which involved a software code
snippet and five questions related
to it,” she continues. “Then, at some
point during the task, each user
was interrupted by one of the four
different types of notifications.”
112 | Faculty of Information and Communication Technology Final Year Projects 2021
Each of these notifications
required a different sort of pause
for a different purpose, with the aim
being the understanding of how each
affected the focus of the user. The
four notifications were made up of the
‘actionable intrusion’, which was an
unrelated riddle that froze the screen
and didn’t allow participants to return
to the task; the ‘actionable intervention’,
which asked users if they wanted to
go through a tutorial of how the task
at hand needed to be completed;
the ‘informational intervention’, which
offered users notes on their task; and
the ‘informational intrusion’, which
presented them with a fact about Ada
Lovelace (the world’s first programmer).
“During this experiment, we also
generated heatmaps from tracked
mouse movements,” Vanessa continues.
“The data from these two things
showed us how long it took users
to get back into a state of flow.”
It quickly became evident that
the ‘actional intrusion’ (the riddle),
which was completely unrelated to
the task, was the type that took users
the longest to regain focus from; while
the ‘informational intervention’ (the
notes), which was related, made it
easy for them to get back on track.
Moreover, through the heatmap,
Vanessa realised that when faced
with the ‘actional intervention’ (the
tutorial) users aggressively scrolled
up and down, which she later realised
was the result of the tutorial making
them question whether what they
had done had been correct.
With this information in hand,
Vanessa could proceed to phase
three, which saw her create a cognitive
stack-trace (a list with the most
recently changed code at the top).
“When human beings write – be
it content or software – we naturally
write for a bit and then pause to think;
it’s simply how our working memory
operates. However, when we stop for a
longer period of time – to make a coffee
or, in this case, read a notification – we
may completely lose track of where we
were or what we were meant to do next.
“So, by using this knowledge and
the information gathered in phase
two, I designed a cognitive stacktrace
which could be added to IDE
[a software used to write code]. This
extension would automatically list
a number
of actions
previously taken by the user in between
short breaks or before long ones.”
Finally, through a participatory
design process, where she took on
board feedback derived from actual
users of this extension, Vanessa
updated the software to further divide
the actions by colour and position in
order to make them understandable
at a glance. Meanwhile, in-program
linking means that clicking on an
item in the list will automatically
take you to that part of the code.
Although this is a deceptively
simple solution, it shows just
how understanding notifications could
completely change the way we work.
Indeed, such an extension could in the
future be used by many professionals
using a variety of software including
Microsoft Word and Excel. The best
part, of course, is that this would lead
to better workflow for users, thus saving
professionals time throughout their day.
The research work disclosed
in this article is partially funded
by the Endeavour Scholarship
Scheme (Malta). Scholarships are
part-financed by the European
Union – European Social Fund
(ESF) – Operational Programme
II – Cohesion Policy 2014-2020
“Investing in human capital to
create more opportunities and
promote the well-being of society”.
“Although this
is a deceptively
simple solution,
it shows just how
knowledge and a
good idea could
completely change
the way we work.”
L-Università ta’ Malta | 113
A Smoother Ride
For Programs
Running Multiple
Sessions
Debugging software before it is rolled out to
users seems like an obvious thing to do, but
then why isn’t software that can run multiple,
concurrent sessions being checked? Master’s
student GERARD TABONE has the answer to this
question, as well as a potential solution.
Interactions with machines
have become commonplace
over the past 20 years,
but we rarely stop to think
about how they work until they
don’t. One of the main reasons why
this happens is because of bugs
that arise during programming,
which can wreak havoc on the
system when something unexpected
happens. That is something Gerard
Tabone, through his Master of
Science research work, aims to fix.
“Let’s consider a flight booking
service, which usually has multiple
concurrent sessions going on,”
Gerard begins. “Such a system will
be having interactions with numerous
potential travellers at one go. In
each case, the traveller will be the
first to initiate the process by asking
the system whether there are flights
to a particular destination and how
much they cost. The computer then
answers and, if there are no flights,
the connection with that particular
traveller is terminated. But, if there are,
the computer gives the traveller two
options: to accept a specific flight or
to reject it. This is all fine, but what
happens if the system isn’t set up
to terminate the session if it doesn’t
receive a reply from the traveller?
What happens if it waits indefinitely?”
114 |
As Gerard continues to explain,
this isn’t just a problem that can
arise with flight booking services,
but with all systems that can run
multiple sessions at the same time.
Indeed, it can also be a problem
when it comes to chatbots such as
those seen on Facebook and the
online help centres of major brands.
So what happens when a user
does not stick to what is expected of
them, such as asking a question when
the system is expecting an answer?
“Such shortcomings can cause
the whole program to crash, affecting
not just the one user but all other
people using it. But there’s another
issue, which is that current debugging
systems will not pick up on such
things. Indeed, while they may tell
you that there’s a semicolon missing
somewhere in the code, they can’t
tell you that it won’t work in these
eventualities. This is because the
problem isn’t in the way the program
“Such shortcomings can cause the
whole program to crash, affecting not
just the one user but all other people
using it”
is written, but that the system is not
prepared for the unexpected.”
With this in mind, Gerard is
working on building a system using
Elixir, which is a type of dynamic
programming language frequently
used for developing programs that
need to run hundreds, thousands,
and even millions of concurrent
processes. The aim of this will
be to operate in the background
automatically and silently, checking
that the developer’s work can indeed
handle any eventuality thrown at it,
and flaging things up if it can’t.
“Debugging software that runs
multiple sessions is actually not
widely researched and worked on
across the world, which is why my
computer science thesis focuses on
programming language theory. Its
benefits, meanwhile, will mostly be felt
by developers on the backend of such
software, but this will ensure fewer
running problems when the software
is being used by actual users, too.”
Such research continues to
show how many things we take for
granted when we use software that
works the way it should. It is only
when we start considering how much
goes into creating, verifying, and
monitoring it that we realise that
what seems pretty straightforward
is actually quite complex.
L-Università ta’ Malta | 115
Inspecting Particle
Accelerators’ RF
Cavities
Nuclear research for the purpose of physics and
science is among the fastest-growing type in
the world, yet a small scratch on the inside of a
particle accelerator could jeopardise results. Now,
partly in thanks to Master’s in Signal Process
& Machine Learning student RYAN AGIUS, a
cheaper and faster solution is being proposed.
Nuclear research does not
always have a nice ring to
it: historical events have
left many doubting the
true benefits of unleashing the power
of the atom. Yet, in reality, particle
accelerators are helping physicists
and scientists solve some of the
universe’s most elusive questions
with regards to the laws of nature
and the laws of physics, as well as
giving humanity the potential to have
unlimited, carbon-free electricity.
Such research is done in
tightly-controlled environments
where scientists can safely smash
charged particles (protons or
electrons) together to analyse the
way these react. For this process
to occur, particle accelerators,
which can come in the shape of
a circular or linear collider, use
a radiofrequency (RF) cavity.
These RF cavities are usually made
from two copper shells welded together
and coated with a layer of the metallic
element, niobium. For them to work
their magic, their temperature must
be taken down to near zero kelvin
degrees (equivalent to -273.15°C), as
this gives them the perfect conducting
qualities needed to accelerate
particles. But there is just one issue
with all this: the tiniest scratch or
imperfection in the millimetre-thick
niobium coating on the inside could
mean the cavities just won’t work
as well as they should, ultimately
affecting the results of the experiment.
“One way scientists and
engineers have been trying to find
these imperfections is by cooling the
cavity and seeing which parts of it
heat up during operation, as these
indicate the presence of defects,”
Ryan explains. “But, this takes a lot
of time, is quite expensive, and has
to be repeated for each anomaly
present on the surface as the process
can only identify one at a time.”
For the past year, Ryan has
been part of an international team
of students trying to help find a
solution to this issue at CERN, the
European Organization for Nuclear
Research. The answer they have
come up with is in the shape of a
tiny camera that can be inserted
in the RF cavity and which can
then take over 50,000 images of
the surface over the course of 50
hours. But this presented the team
116 | Faculty of Information and Communication Technology Final Year Projects 2021
[1] F. Pirozzi, “Mechatronic Design for a Novel RF Cavity Visual Inspection System” from MRO
Technical Meeting, CERN, 09/04/2020. [Online]. Available: https://indico.cern.ch/event/907822/
contributions/3822783/attachments/2019353/3375999/9_MRO_Technical_Meeting_09-04-2020.
pdf . [Accessed: Jun. 28, 2021].
with some more problems, as the
openings of these RF cavities are just
5cm in diameter, while the RF cavity’s
design features numerous torus
(doughnut) formations, which make
scanning them for 10 micrometre (one
millionth of a metre) defects using a
camera on a metal arm quite a feat.
Ryan’s job in all this was two-fold:
he first had to work on the optical
system of the camera, and then create
an algorithm that would be able to
“Ryan’s algorithm
may now help
bring this project
a step closer to
being used by
CERN’s scientists,
and may save
them both time
and money”
read those 50,000 images and come
up with a report of whether there
were any anomalies and where.
“The optics of the camera were
indeed a headache, as normal lenses
in such a small size did not offer us
enough power to capture such small
imperfections in the detail we require.
But there was yet another issue: the
robot arm could not ensure that
the lenses we used were always at
the same distance from the subject,
meaning that not all photos had
the same depth of field. This was all
counteracted through the use of spacegrade
liquid lenses, which have a layer
of oil that changes the shape of the
lens when voltage is applied to it.”
Ryan then worked on the algorithm
that could read the images and come
back with a report. This algorithm had to
understand what was an anomaly that
needed to be fixed and what wasn’t. As
Ryan explains, some scratches and the
welding seam have no effect on how
effective the RF cavity is. But how would
the algorithm know what to include
and not to include in the report, without
the report coming back full of noise?
“In the end, it was decided
that the wavelets (baby waves)
mathematical concept would be
used to better identify each anomaly
from the photos. We combined this
with another algorithm designed
specifically to process images, from
which we generated an accurate
report that was able to identify
anomalies that could significantly
reduce the RF cavity’s performance.
“For the time being, however,
we still have some issues with the
algorithm recognising the very
visually distinct welding seams as
anomalies when they in fact do
not affect the performance, but we
are working closely with scientists
from the Deutsches Elektronen-
Synchrotron (DESY) nuclear research
group to mitigate this problem
and make the visual anomaly
detector that much more viable.”
Ryan’s algorithm may now help
bring this project a step closer to
being used by CERN’s scientists, and
may save them both time and money
in their world-leading experiments.
“It’s been a fantastic journey,”
Ryan, who was one of the first
students to sign up to the Signal
Process & Machine Learning
Master’s, continues. “I had always
wanted to do an AI course that
had more practical rather than
theoretical outcomes, and the fact
that I got to work with the people
at CERN just made the experience
that much more memorable.”
L-Università ta’ Malta | 117
How AI Can Aid Education
By understanding
how students learn,
PhD student MARIO
MALLIA-MILANES
and Research Support
Officer STEPHEN
BEZZINA are creating
AI algorithms that can
help teachers teach
and learners learn.
Education is a vital element
in a stable, just, and civilised
society, yet the way we
have been teaching and
learning has not really changed much
for hundreds of years. The reason
for that is that human-to-human
interaction remains the best way we
have to learn new concepts, discuss
ideas, and put theories to practise.
Technology, however, continues to
permeate the classroom, and AI, as
both our interviewees show, is now set
to help facilitate the process with which
human beings exchange information.
many people who join online
courses often lose interest because
of the lack of interactivity, which
in turn leads to boredom.
“Psychology is the main driving
force behind people’s decision to drop
out, so my next task was to work out
how students could be kept happy
and interested during their online
lessons. The answer came in the
form of agent assistant collaborative
learning (AACL), which uses the
premise of collaboration, something
we humans, for the most part, enjoy.”
“Researchers are constantly
trying to find a way to solve both new
and age-old educational problems
using technology and new ideas,”
Mario explains. “In fact, when I
started my PhD, my tutor had a
challenge for me: to figure out why
only a small percentage of students
who register for online classes
finish the course, and to propose a
solution to help reduce the trend.”
Dedicating the past six years
of his research to answering this
question, Mario discovered that
AACL, as Mario explains, sees AI
becoming the student’s ‘teammate’,
helping them with any problems that
arise, making suggestions, and keeping
them interacting during the lesson.
“As in any other relationship, trust
plays a big part in the creation of a
bond between the student and the AI
algorithm, so I also worked on creating
an algorithm that could explain
itself as it goes along. This, in many
ways, demystifies the technology.”
Such systems may seem alien
118 | Faculty of Information and Communication Technology Final Year Projects 2021
Left: M. Mallia-Milanes.
Right: S. Bezzina.
to us indeed, but even as we speak,
it is being used to create algorithms
that offer personalised and adaptive
learning alongside the traditional
teacher-student dynamic.
“Each student
is unique and has
distinct needs in
the classroom,”
Stephen adds. “For
that reason, teaching
can’t be a one-size-fitsall
affair. Nevertheless,
the logistics and expense
of having a teacher for
every student would make
it impossible to sustain, so
how can we find a solution?”
“At a basic
level, AI
learning keeps
things human.”
It is with this in mind that
Stephen, as well as a number of
other researchers, are currently
designing and developing an AI
system aimed at primary school
mathematics students. This system,
which can be operated from tablets
and laptops directly in the classroom,
is being programmed to offer students
exercises and games based on the
maths topic they would have covered
that day, week, month, or academic
year. The questions, however, would
start off easy for all students and then,
based on each student’s answers,
the individual student’s system would
decide whether to make the next
question harder or to re-explain the
subject through a video tutorial before
giving them another shot at it.
“The system itself personalises
learning and adapts to the child’s needs.
Its function, however, isn’t to replace the
teacher, but to aid in teaching both by
giving the teacher more time to focus
on students who are struggling, and
through the report of each student’s
work the system creates, which can
help with the monitoring of progress.”
Stephen’s role in all this is that
of gamification, which is the use of
gaming elements in non-gaming
contexts. This, in so many words,
means that he has to figure out how to
make the system fun for children to use
by, for example, awarding badges at
the end of the day, or creating different
levels that may entice students to
spend more time studying and learning.
In many ways, this also
shows how, at a basic level, AI
learning keeps things human:
neither project is changing the
way we learn or teach, and neither
project is replacing the human-tohuman
interaction. Instead they are
creating systems that aid educators
and learners alike in order to
develop a more symbiotic learning
environment that makes the most
of the abilities of the students.
L-Università ta’ Malta | 119
Automated Activity
Recognition That
Could Save Lives
Through his PhD,
JOHN SOLER is
developing an
algorithm that will be
able to automatically
recognise daily
activities of dementia
patients, as well as
share important
information with
their caregivers. If
successful, this could
be plugged into one
of the Faculty’s most
ambitious projects to
date.
For the past four years, Saint
Vincent de Paul (SVDP)
residence has been at the
centre of one of the Faculty
of ICT’s biggest projects: the PEM
(pervasive electronic monitoring) in
Healthcare research project, which
aims to improve the lives of people
with dementia, and reduce the
workload on their caregivers. To do
this, researchers have been creating
an algorithm that can, in lay man’s
terms, understand what a person
is doing through the crunching of
data that is fed to it by on-body
and environmental sensors, and
then send instantaneous reports
to caregivers if anything goes
amiss. The process is a long one
involving many steps and research
specialities, and John Soler’s
PhD thesis will be aiding with
one of the most crucial parts.
“The idea behind the PEM project
isn’t just to understand dementia
better, but to give those who live
with it more freedom to move about
with added safety,” John explains.
“Using Machine Learning, this system
will be able to predict danger and
inform caregivers about a variety
of scenarios including whether
daily meals have been consumed,
whether the patient is wandering,
and whether they have fallen down.”
Such a system may sound
straightforward, but it requires a lot
of work even just to get it off the
ground. For years, the team behind
it has been working on finding the
best type of sensors to use for
this purpose, and has worked with
volunteers to simulate different
activities patients with dementia
would do, such as walking aimlessly
(wandering), walking with purpose,
standing, lying down, sitting down,
and a whole host of other actions.
“The algorithm
I’m working
on will extract
patterns from
the sensor data
… and learn
to recognise
human activities
accurately in
real-time”
120 | Faculty of Information and Communication Technology Final Year Projects 2021
As John explains, when such data
is collected, it can be displayed in
an Excel sheet-type of form, with
each line representing different
values from different sensors over an
infinitesimally small period of time –
just to give you an example, one fall
could result in 1,200 data points.
“So the objective now is to
develop an algorithm that can fuse
the data from all the sensors and
make sense of it automatically (as
opposed to manually). Indeed,
the algorithm I’m working on will
extract patterns from the sensor
data that the PEM research team
has collected, and learn to recognise
human activities accurately as
they happen in real-time.”
Of course, this is just one building
block in this ambitious project, yet
it leads it one step closer to its
final aim of being tested in reallife
scenarios, and of being rolled
out into the community and care
residences. That will take years to
do, but the benefits could be huge.
“A system like this could allow
people with dementia to live at home
and in the community for longer and
without the need or the expense of
having 24/7 help,” John says. “It could
also give caregivers at institutions
like SVDP more tools to take care
of their patients, and decrease the
response time in cases of patients
falling, among other things.”
Indeed, beyond the technology
and algorithms, this project is
extremely human in essence, and
creates a framework that could be
used in a variety of situations where
human beings require assistance.
L-Università ta’ Malta | 121
A Helping Hand
With Diagnosing
Breast Cancer
For years, Artificial Intelligence could have been used to help surgeons
and radiologists identify breast cancer earlier and with more accuracy –
yet the software hasn’t been met with enthusiasm. MICHELE La FERLA has
used his Master of Science in AI to ask why and come up with a possible
solution.
Around 300 women in
Malta are diagnosed with
breast cancer each year.
For some, the condition
may be caught too late, leading to
much lower rates of treatability and
even lower rates of survivability.
Nevertheless, numerous studies
on how deep machine learning
(machines learning unsupervised)
could be used to solve this have
produced many positive results
– but it’s not all so clear cut.
One of the issues with such
software is that it’s been focused
on MRIs, which are normally done
well after a patient has reported a
problem. This means that by the time
an MRI is requested by the doctor
and the results are in, certain types of
breast cancer could well have spread,
leading to other complications.
“This has long been understood
and, in 2017 and 2018, a number of
studies started looking at creating
artificially intelligent software
that could read mammograms,
which come way earlier in the
diagnostic process than MRIs do.
One such study came from Google
DeepMind, whose model proved
to be 99 per cent accurate at
diagnosing whether a person had a
benign tumour [needs monitoring],
a malignant tumour [needs
surgery and/or chemotherapy],
or showed no signs of cancer.”
Michele enrolled for his Master’s
right after these papers were
published and he assumed that
with such high proven rates of
accuracy, hospitals would be quick
in implementing such technology.
Yet this wasn’t happening, which
is why his thesis sought to do two
things: understand why radiologists
122 | Faculty of Information and Communication Technology Final Year Projects 2021
and surgeons weren’t using this
technology, and figure out how
he could change their minds.
“By using such software, the time
a radiologist or a surgeon spends
reading a mammogram can be slashed
down to 10 minutes from 45”
“From data compiled through
a questionnaire sent out to
radiographers and surgeons who
specialise in breast cancer, it
quickly became apparent that
the main problem was that this
software couldn’t explain why
it was issuing the result it was.
Trust, in other words, was a
very important factor in getting
these key players to use it.”
To counteract this, Michele used
the Deep Taylor LRP (Layer Wise
Propagation) method to reverse
engineer the mammogram-reading
software. This, in turn, would not
just tell doctors that a certain
mammogram showed signs of a
benign or malignant tumour (or lack
thereof), but it would also show
which areas of the breast X-ray
were responsible for its conclusion.
“By using such software, the time
a radiologist or a surgeon spends
reading a mammogram can be
slashed down to 10 minutes from 45.
Indeed, this software is not there to
replace the doctors, but to give them
even more tools to make accurate
and timely diagnoses, reduce human
error, and even find tumours which
are not that visible to the naked eye.”
It would seem that this is the
end of the project and that doctors
working in this field will quickly take
this on, but as Michele explains, there
are still numerous hurdles that need to
be overcome. For a start, there are no
legal frameworks – both at a national
and EU level – to protect medical
practitioners in the rare occurrence
that the software gives an unchecked
false negative or false positive result.
Moreover, such software requires
vast amounts of data to learn what it
needs to look for, and while currently
it is being fed information from 6,000
publicly available mammograms,
few patients are willing to donate
their mammogram results to
scientific research. This means that
the algorithm cannot continue to
improve, thus making the chances
of mistakes or omissions higher.
To add insult to injury, a recent
study has alleged that Deep
Taylor LRP may not be as good at
explaining results as once thought.
Although, it must be said that
the study has not yet been peerreviewed
and the results are from
lung cancer diagnoses, which is a
completely different kind of tumour.
“The human body is extremely
complex and we can never take a
one-size-fits-all approach,” Michele
adds. “Even breast cancer can
come in a variety of shapes and
forms, which is why we need as
many mammograms as possible
for the algorithm to be finetuned
to the point where even the rarest
forms of breast tumours can be
caught easily and in time.”
What makes such research
worth fighting for is that, coupled
with the doctors’ experience and
expertise, it could potentially help
breast cancer patients get faster
diagnoses, which would lead to
faster treatment and better chances
of survival. The question is, are
we ready to give it a chance?
L-Università ta’ Malta | 123
2020 Awards
An Overview
Each year, the Faculty
of ICT, in conjunction
with a small number of
partners, gives out a
number of awards to students who
excel in specific areas. In 2020, 12
such accolades were awarded.
Six of these awards were
part of the Dean’s List. At these
awards, students who stand out
in the undergraduate degree
courses offered at the Faculty are
recognised for achieving academic
excellence. To feature in the Dean’s
List, students must demonstrate
exceptionally high achievement
across all study-units forming part
of their chosen, Faculty-approved
course of study, irrespective of
study-unit provenance. All awardees
would also need to have obtained
a final average mark of 80 or
over, have no cases of failed or
re-sit study-units in their final
year, and have had no reports
of misconduct during the course
of their studies. Missing from the
photos is Holomjova Valerija, who
also received a Dean’s List Award.
A further three awards were
part of the FYP Project. This award
is given to three students whose
research component in the final
year of their undergraduate degree
of study is considered exceptional.
Normally, the choice is done by
external examiners but due to the
special circumstances that arose
in 2020, last year’s choice was
made by Heads of Departments.
The fourth award, meanwhile,
was the IEEE 2020 Award, which
aims to honour outstanding
contributions to technology,
society, and the engineering
profession. IEEE is the world’s
largest professional association
dedicated to advancing
technological innovation and
excellence for the benefit of
humanity. The IEEE Malta
Section is recognised as a
volunteer organisation.
Last but not least, there were
two further awards. The first was
the Tech.MT Best ICT Academic
Project with an eBusiness Theme
Award, which was awarded to
Redent Zammit for his Data
Visualisation: Using BI for Digital
Health project. The second was
the Chamber of Engineers Award,
which went to Anastasia Lauri.
We congratulate all 2020
winners and look forward to
2021’s awards, which will take
place in the coming months.
124 | Faculty of Information and Communication Technology Final Year Projects 2021
Dean’s List Award
All awards were presented by the Hon. Clayton Bartolo, then-Parliamentary Secretary for Financial Services & the Digital Economy (middle),
and Prof. Ing. Carl James Debono, Dean of the Faculty of ICT at the University of Malta (left).
Aidan Cauchi receiving the Dean’s List Award.
Daniel Cauchi receiving the Dean’s List Award.
Adriana Camilleri receiving the Dean’s List Award.
Chantelle Saliba receiving the Dean’s List Award.
Gerard Tabone receiving the Dean’s List Award.
FYP Projects Awards
First Prize delivered to Daniel Cauchi. Second Prize delivered to Anastasia Lauri. Third Prize delivered to Mark Mifsud.
L-Università ta’ Malta | 125
IEEE Awards
The Chamber of Engineers Malta Award
Anastasia Lauri receiving the IEEE Award by the IEEE Malta Chair,
Prof. Edward Gatt (left), and the IEEE Computer Society Malta Chair,
Dr Conrad Attad (right).
Anastasia Lauri receiving the CoE Award from the President of the CoE,
Dr Ing. Daniel Micallef.
Prof. Ing. Carl James Debono, Dean
Dr Conrad Attard
Prof. Saviour Zammit, Pro-Rector
Hon. Clayton Bartolo MP
Find out more about our partners by visiting their websites.
The IEEE Malta Section: www.ieeemalta.org
Tech.mt: www.tech.mt
Chamber of Engineers: www.coe.org.mt
126 | Faculty of Information and Communication Technology Final Year Projects 2021
L-Università ta’ Malta | 127
9 Ways in which AI is
transforming healthcare
Given the huge potential of AI, it is transforming healthcare industry, performing
human task but more efficiently, more quickly and at a lower cost.
Robot-Assisted Surgery Virtual Nursing Assistants Administrative Workflow
Assistance
www.cognilytica.com
Fraud
Detection
Error
Reduction
Connected Machines
Clinical Trail Assistance AI Assisted Diagnosis Patient Engagement
eSkills
eSkills Malta Foundation
www
/ESkillsMalta @eSkills_Malta eskills.org.mt
Could further
education bring
you closer to your
destination?
The EY Tech MBA by Hult.
The exceptional EY experience.
It’s yours to build.
Building a Connected
Enterprise
As the lines between business and technology
continue to blur, leaders face increasingly complex
demands and challenges. Technology must
advance the business, not just support it.
Staying ahead of the curve with emerging
technologies is therefore crucial in order to remain
relevant when addressing growth, risk, and cost
strategies.
With over 40 technology specialists, having a vast
range of areas of expertise, we are able to support
our clients with all their digital needs.
The KPMG Digital Solutions team offers its
professional services in IT Advisory, Data &
Analytics, Cyber Security, Automation and
Software Solutions.
Contacts us:
Marco J. Vassallo
Partner
Digital Solutions
+356 2563 1140
marcovassallo@kpmg.com.mt
Curt Gauci
Director
Digital Solutions
+356 2563 1895
curtgauci@kpmg.com.mt
© 2021 KPMG, a Maltese civil partnership and a member firm of the KPMG global organisation of independent member firms affiliated with
KPMG International Limited, a private English company limited by guarantee. All rights reserved.
Paving your way to
the working world of tech
The PwC Graduate Programme for STEM students is a journey that focuses on
your development during your studies at University and prepares you for a
career at PwC.
What to expect?
A mix of digital upskilling, practical work experience, dissertation support,
networking with the best in the industry and much more ...
Interested?
www.pwc.com/mt/studentregistration
Apply today
Software
Development
Data
Analytics
Cyber
Security
IT
Audit
Artificial Intelligence
Follow us on:
© 2021 PricewaterhouseCoopers. PwC refers to the PwC network and/or one or more of its member firms, each of which is a
separate legal entity. Please see www.pwc.com/structure for further details.
Develop Your Career With RS2
Do you love taking on a challenge?
Do you have a passion for innovation?
Then kickstart your career with us! RS2 is a leading
provider of global payment solutions and technologies
on a single payment platform. We are looking for
talented individuals to form part of our international
team. Join us to shape the future of payments together.
Explore our latest vacancies at
RS2.COM
recruitment@rs2.com +356 2134 5857
Change your job
into a career!
The Faculty of Information & Communication Technology (ICT) offers a
range of specialised courses that enable students to study in advanced areas
of expertise, and improve their strategic skills to achieve career progression.
Get to know more
about our courses
um.edu.mt/ict
= Master of Science in Artificial Intelligence
(Taught and Research, mainly by Research)
= Master of Science in Computer Information Systems
(Taught and Research, mainly by Research)
= Master of Science in Computer Science
(Taught and Research, mainly by Research)
= Master of Science in Computer Science
(Taught and Research, mainly Taught)
= Master of Science in Signal Processing and Machine Learning
(Taught and Research, mainly Taught)
= Master of Science in Microelectronics and Microsystems
(Taught and Research, mainly Taught)
= Master of Science in Telecommunications Engineering
(Taught and Research, mainly Taught)
= Master of Science in Information and Communication
Technology (Computer Information Systems)
= Master of Science in Information and Communication
Technology (Microelectronics and Microsystems)
= Master of Science in Information and Communication
Technology (Signal Processing and Machine Learning)
= Master of Science in Information and Communication
Technology (Telecommunications)
= Master of Science (by Research)
= Master of Science in Digital Health
= Master of Science in Human Language Science and Technology
Members of Staff
F A C U L T Y O F I C T
DEPARTMENT OF COMMUNICATIONS
& COMPUTER ENGINEERING
PROFESSOR
Professor Inġ. Carl J. Debono, B.Eng.(Hons.), Ph.D.(Pavia), M.I.E.E.E., M.I.E.E.
(Dean of Faculty)
Professor Inġ. Adrian Muscat, B.Eng. (Hons.), M.Sc. (Brad.), Ph.D.(Lond.), M.I.E.E.E.
ASSOCIATE PROFESSORS
Professor Johann A. Briffa, B.Eng. (Hons)(Melit.), M.Phil.(Melit.), Ph.D.(Oakland), (Head of Department)
Professor Inġ. Victor Buttigieg, B.Elec.Eng.(Hons.), M.Sc. (Manc.), Ph.D.(Manc.), M.I.E.E.E.
Professor Inġ. Saviour Zammit, B.Elec.Eng.(Hons.), M.Sc. (Aston), Ph.D.(Aston), M.I.E.E.E.
(Pro-Rector for Research and Innovation)
SENIOR LECTURERS
Dr Inġ. Reuben A. Farrugia, B.Eng.(Hons.), Ph.D., M.I.E.E.E.
Dr Inġ. Trevor Spiteri, B.Eng.(Hons.), M.Sc., Ph.D.(Bris.), M.I.E.E.E., M.I.E.T.
LECTURER
Dr Inġ. Gianluca Valentino, B.Sc.(Hons.)(Melit.), Ph.D. (Melit.), M.I.E.E.E.
AFFILIATE PROFESSOR
Dr Hector Fenech, B.Sc. (Eng.) Hons., M.E.E. (P.I.I.), Ph.D. (Bradford), Fellow A.I.A.A., F.I.E.E.E., F.I.E.T., Eur. Eng.
AFFILIATE ASSOCIATE PROFESSOR
Dr Norman Poh, Ph.D (EPFL), IEEE CBP, FHEA
ASSISTANT LECTURER
Inġ. Etienne-Victor Depasquale, B.Elec.Eng.(Hons.), M.Sc.(Eng.), M.I.E.E.E.
VISITING ASSISTANT LECTURERS
Inġ. Brian E. Cauchi, B.Sc.IT (Hons.), M.Sc.(ICT), M.Ent.
Inġ. Antoine Sciberras, B.Eng.(Hons.)(Melit.), PG.Dip.Eng.Mangt.(Brunel), M.ent (Melit.)
Inġ. Leslie Spiteri, B.Elec.Eng.(Hons.), M.Sc., M.I.E.E.E.
Inġ. Martin Zammit, B.Elec. Eng. (Hons.)
RESEARCH SUPPORT OFFICERS
Dr Christian Galea, Ph.D (Merit), M.Sc (Melit.), B.Sc. (Hons.) ICT (CCE), MIEEE (Research Support Officer III)
Mr Leander Grech, B.Sc (Hons) (Research Support Officer)
Dr Mang Chen (Research Support Officer III)
Mr Matthew Aquilina (Research Support Officer II)
Mr Riccardo Illan Fiastre (Research Support Officer)
Dr James Molson (Research Support Officer)
ADMINISTRATIVE & TECHNICAL STAFF
Mr Mark Anthony Xuereb, (Administrator I)
Mr Albert Sacco, (Senior Laboratory Officer)
Inġ. Maria Abela-Scicluna, B.Eng.(Hons.)(Melit.), M.Sc. ICT (Melit.) (Systems Engineer)
Mr Jeanluc Mangion, B.Eng.(Hons.)(Melit.) (Systems Engineer)
L-Università ta’ Malta | 141
R E S E A R C H A R E A S
Computer Networks and
Telecommunications
Signal processing and
Pattern Recognition
Computer Systems Engineering
s
s
s
s
s
Error Correction Codes
Multimedia Communications
Multi-view video coding and
transmission
Video Coding
Internet of Things
s
s
s
s
s
s
s
s
s
s
s
s
s
Computer Vision
Image Processing
Light Field Image Processing
Volumetric Image Segmentation
Medical Image Processing and
Coding
Earth Observation
Image Understanding
Vision and Language tasks in
Robotics
Visual Relation Detection
Visual Question Answering
Sound Event Detection
Self Supervised Learning
Federated Learning
s
s
s
s
s
Data Acquisition and Control
Systems for Particle Accelerators
and Detectors
Digital Games Platforms
Implementation on Massively
Parallel Systems (e.g. GPUs)
Reconfigurable Hardware
Implementation of Machine
Learning algorithms at the edge
DEPARTMENT OF COMPUTER SCIENCE
PROFESSOR
Professor Gordon J. Pace, B.Sc., M.Sc. (Oxon.), D.Phil. (Oxon.)
ASSOCIATE PROFESSORS
Professor Adrian Francalanza, B.Sc.I.T. (Hons.), M.Sc., D.Phil.(Sussex)
Prof Kevin Vella, B.Sc., Ph.D. (Kent)
SENIOR LECTURERS
Dr Mark Micallef, B.Sc.(Hons.), Ph.D. (Melit.), M.B.A.(Melit.) (Head of Department)
Dr Mark J. Vella, B.Sc.I.T.(Hons.), M.Sc. Ph.D. (Strath.)
Dr Joshua Ellul, B.Sc.I.T. (Hons.), M.Sc. (Kent) , Ph.D. (Soton)
Dr Christian Colombo, B.Sc.I.T. (Hons.), M.Sc. Ph.D. (Melit.)
Dr Sandro Spina, B.Sc.I.T.(Hons), M.Sc. (Melit), Ph.D.(Warw.)
Dr Keith Bugeja, B.A.(Hons), M.IT, Ph.D.(Warw.)
LECTURER
Dr Neville Grech, B.Sc.(Hons),M.Sc.(S’ton),Ph.D.(S’ton)
AFFILIATE LECTURER
Dr Alessio Magro, B.Sc. IT (Hons)(Melit.),Ph.D.(Melit)
RESEARCH SUPPORT OFFICERS
Caroline Caruana B.Sc.(Melit.), M.Sc.(Melit.) (Research Support Officer I)
Mark Charles Magro, B.Sc.(Melit.),M.Sc.(Melit.) (Research Support Officer II)
Adrian De Barro, B.Sc.ICT(Hons)(Melit.),M.Sc.(Melit.) (Research Support Officer II)
Kevin Napoli, B.Sc.ICT(Hons)(Melit.),M.Sc.(Melit.) (Research Support Officer II)
Jennifer Bellizzi, B.Sc.ICT(Hons)(Melit.), M.Sc.(Birmingham) (Research Support Officer II)
Robert Abela, B.Sc.(Hons), M.Sc.(Melit.) (Research Support Officer II)
ADMINISTRATIVE STAFF
Mr. Kevin Cortis, B.A.(Hons) Graphic Design & Interactive Media (Administrator II))
142 | Faculty of Information and Communication Technology Final Year Projects 2021
R E S E A R C H A R E A S
s
s
s
s
s
s
Concurrency
Computer Graphics
Compilers
Blockchain
Distributed Systems and
Distributed Ledger Technologies
Model Checking and Hardware/
Software Verification
s
s
s
s
s
Operating Systems
Program Analysis
Semantics of Programming
Languages
High Performance Computing and
Grid Computing
Runtime Verification
s
s
s
s
Software Development Process
Improvement and Agile Processes
Software Engineering
Software Testing
Security
DEPARTMENT OF MICROELECTRONICS
AND NANOELECTRONICS
PROFESSOR
Professor Inġ. Joseph Micallef, B.Sc.(Eng.)(Hons.),M.Sc.(Sur.),Ph.D.(Sur.), M.I.E.E.E.
ASSOCIATE PROFESSORS
Professor Ivan Grech, B.Eng.(Hons.),M.Sc.,Ph.D.(Sur.),M.I.E.E.E.
Professor Inġ. Edward Gatt, B.Eng.(Hons.),M.Phil.,Ph.D.(Sur.),M.I.E.E.E.
SENIOR LECTURERS
Dr Inġ. Owen Casha, B. Eng.(Hons.) (Melit.),Ph.D. (Melit.), M.I.E.E.E. (Head of Department)
Dr Inġ. Nicholas Sammut, B.Eng.(Hons.) (Melit.), M.Ent. (Melit.), Ph.D. (Melit.), M.I.E.E.E.
ADMINISTRATIVE & TECHNICAL STAFF
Ms Alice Camilleri (Administrator I)
Inġ. Francarl Galea, B.Eng. (Hons.),M.Sc.(Eng.) (Senior Systems Engineer)
RESEARCH SUPPORT OFFICERS
Dr Inġ. Russell Farrugia, B.Eng. (Hons)(Melit.), M.Sc.(Melit.) (Research Support Officer II)
Inġ. Barnaby Portelli, B.Eng. (Hons)(Melit.), M.Sc.(Melit.) (Research Support Officer II)
Mr Matthew Meli, B.Sc. (Hons)(Melit.), M.Sc. (Melit.) (Research Support Officer II)
R E S E A R C H A R E A S
s
s
s
Analogue and Mixed Mode ASIC
Design
Radio Frequency Integrated
Circuits
Embedded Systems
s
s
s
s
Biotechnology Chips
Micro-Electro-Mechanical Systems
(MEMS)
Quantum Nanostructures
System-in-Package (SiP)
s
s
s
System-on-Chip (SoC)
Accelerator Technology
Microfluidics
L-Università ta’ Malta | 143
DEPARTMENT OF ARTIFICIAL INTELLIGENCE
PROFESSOR
Professor Matthew Montebello, B.Ed. (Hons)(Melit.), M.Sc. (Melit.), M.A. (Ulster), Ph.D. (Cardiff), Ed.D. (Sheff.), SMIEEE (Head of
Department)
ASSOCIATE PROFESSORS
Professor Alexiei Dingli, B.Sc.I.T. (Hons.) (Melit.), Ph.D. (Sheffield), M.B.A (Grenoble)
SENIOR LECTURERS
Dr Joel Azzopardi, B.Sc. (Hons.) (Melit.), Ph.D. (Melit.)
Dr Vanessa Camilleri, B.Ed. (Hons.)(Melit.), M.IT (Melit.), Ph.D. (Cov)
AFFILIATE SENIOR LECTURER
Mr Michael Rosner, M.A. (Oxon.), Dip.Comp.Sci.(Cantab.)
LECTURERS
Dr Charlie Abela, B.Sc. I.T. (Hons)(Melit.), M.Sc. (Comp.Sci.)(Melit.),Ph.D.(Melit.)
Dr Claudia Borg ,B.Sc. I.T. (Hons.) (Melit), M.Sc. (Melit.), Ph.D. (Melit.)
Dr Josef Bajada, B.Sc. I.T. (Hons)(Melit.), M.Sc. (Melit.), M.B.A.(Henley), Ph.D. (King`s)
Dr Ingrid Vella, B.Eng. (Hons)(Melit.), M.Sc. (Imperial), D.I.C., Ph.D. (Nott.), M.B.A. (Lond.)
Dr Kristian Guillaumier, B.Sc. I.T. (Hons.) (Melit.), M.Sc. (Melit.), Ph.D. (Melit.)
ASSISTANT LECTURERS
Mr Dylan Seychell, B.Sc. I.T. (Hons.) (Melit.), M.Sc. (Melit.), GSMIEEE
RESEARCH SUPPORT OFFICERS
Mr Stephen Bezzina, B.Ed (Hons.) (Melit.), M.Sc. Digital Education (Edinburgh) (Research Support Officer II)
Mr Mark Bugeja, B.Sc. (Hons.) Creative Computing (Lond.), M.Sc. AI (Melit.) (Research Support Officer II)
Mr Luca Bondin, B.Sc. IT (Hons) (Melit.), M.Sc. AI (Melit.) (Research Support Officer II)
Mr Foaad Haddod, B.Sc. (Al-Jabal AI Gharbi), M.Sc. AI (Melit.) (Research Support II)
Mr Kurt Micallef, B.Sc. IT (Hons.)(Melit.), M.Sc. (Glas.) (Research Support Officer II)
Ms Sarah Aguis, B.A. (Hons.)(Melit.), M.A. (Leic.) (Research Support Officer II)
Ms Martina Cremona, B.A. (Hons.)(Melit.), M.A. (Melit.) (Research Support Officer II)
Ms Dorianne Micallef, B.A. (Hons.)(Melit.), M.A. (Card.) (Research Support Officer II)
ADMINISTRATIVE STAFF
Mr Elton Mamo, (Administrator II)
Ms Nadia Parnis, (Administrator II)
144 | Faculty of Information and Communication Technology Final Year Projects 2021
R E S E A R C H A R E A S
Actual research being done
s
s
s
Title: EnetCollect – Crowdsourcing
for Language Learning
Area: AI, Language Learning
Title: Augmenting Art
Area: Augmented Reality
Task: Creating AR for meaningful
artistic representation
Title: Smart Manufacturing
Area: Big Data Technologies and
Machine Learning
s
s
s
Title: Medical image analysis and
Brain-inspired computer vision
Area: Intelligent Image Processing
Title: Notarypedia
Area: Knowledge Graphs and
Linked Open Data
Title: Language Technology for
Intelligent Document Archive
Management
Area: Linked and open data
s
s
Title: Smart animal breeding
with advanced machine learning
techniques
Area: Predictive analysis,
automatic determination of
important features
Title: Morpheus
Area: Virtual Reality
Task: Personalising a VR game
experience for young cancer
patients
s
s
s
s
Title: Analytics of patient flow in a
healthcare ecosystem
Area: Blockchain and Machine
Learning
Title: Real-time face analysis in
the wild
Area: Computer vision
Title: RIVAL; Research in Vision
and Language Group
Area: Computer Vision/NLP
Title: Learning Analytics, Ambient
Intelligent Classrooms, Learner
Profiling
Area: ICT in Education
s
s
s
s
Title: Machine Learning and AI for
the Maltese Language
Area: Natural Language
Processing
Title: Maltese Language Resource
Server (MLRS)
Area: Natural Language
Processing
Task: Research and creation of
language processing tools for
Maltese
Title: Language in the Human-
Machine Era
Area: Natural Language
Processing
s
s
s
s
Title: Walking in Small Shoes:
Living Autism
Area: Virtual Reality
Task: Recreating a first-hand
immersive experience in autism
Title: Corpus of Spoken Maltese
Area: Speech Processing
Title: eCrisis
Task: Creation of framework and
resources for inclusive education
through playful and game-based
learning
Title: GBL4ESL
Task: Creation of digital resources
for educators using a Game
Based Learning Toolkit
An updated list of concrete areas in which we have expertise to share/offer
s
s
s
s
s
AI, Machine Learning, Adaptive
Hypertext and Personalisation
Pattern Recognition and Image
Processing
Web Science, Big Data,
Information Retrieval & Extraction,
IoT
Enterprise Knowledge Graphs
Agent Technology and Ambient
Intelligence
s
s
s
s
s
Drone Intelligence
Natural Language Processing/
Human Language Technology
Automatic Speech Recognition
and Text-to-Speech
Document Clustering and
Scientific Data Handling and
Analysis
Intelligent Interfaces, Mobile
Technologies and Game AI
s
s
s
s
s
s
s
s
Optimization Algorithms
AI Planning and Scheduling
Constraint Reasoning
Reinforcement Learning
AI in Medical Imaging
Applications (MRI, MEG, EEG)
Gait Analysis
Machine Learning in Physics
Mixed Realities
L-Università ta’ Malta | 145
DEPARTMENT OF COMPUTER INFORMATION SYSTEMS
ASSOCIATE PROFESSOR
Professor Ernest Cachia, M.Sc.(Kiev), Ph.D.(Sheff.) (Head of Department)
Professor John Abela, B.Sc.(Hons.), M.Sc., Ph.D.(New Brunswick), I.E.E.E., A.C.M.
SENIOR LECTURERS
Dr Lalit Garg, B.Eng.(Barkt), PG Dip. I.T.(IIITM), Ph.D.(Ulster)
Dr Colin Layfield, B.Sc. (Calgary), M.Sc.(Calgary), Ph.D.(Leeds)
Dr Peter A. Xuereb, B.Sc.(Eng.)(Hons.)(Imp.Lond.), A.C.G.I., M.Phil.(Cantab.), Ph.D.(Cantab.)
Dr Christopher Porter, B.Sc.(Bus.&Comp.), M.Sc. , Ph.D.(UCL)
Dr Joseph Vella, B.Sc., Ph.D.(Sheffield)
VISITING SENIOR LECTURERS
Dr Vitezslav Nezval, M.Sc.(V.U.T.Brno),Ph.D.(V.A.Brno)
Mr Rodney Naudi, B.Sc., M.Sc.(Eng.)(Sheff.)
LECTURERS
Dr Conrad Attard, B.Sc.(Bus.&Comp.), M.Sc., Ph.D.(Sheffield) (Deputy Dean)
Dr Michel Camilleri, B.Sc., M.Sc., Dip.Math.&Comp., Ph.D (Melit.)
Dr Clyde Meli, B.Sc., M.Phil, Ph.D (Melit)
VISITING ASSISTANT LECTURERS
Inġ. Saviour Baldacchino, B.Elec.Eng.(Hons.), M.Ent., D.Mgt.
Mr Norman Cutajar, M.Sc. Systems Engineering
ASSISTANT LECTURERS
Mr Joseph Bonello, B.Sc.(Hons)IT(Melit.), M.ICT(Melit.)
ASSOCIATE ACADEMIC
Mr Anthony Spiteri Staines, B.Sc., M.Sc., A.I.M.I.S., M.B.C.S.
ADMINISTRATIVE STAFF
Ms Shirley Borg, (Administration Specialist)
Ms Lilian Ali, (Administrator I)
R E S E A R C H A R E A S
Applied Machine Learning, Computational Mathematics and Statistics
s
s
s
s
s
s
Applicative genetic algorithms and
genetic programming
Latent semantic analysis and
natural language processing
Heuristics and metaheuristics
Stochastic modelling & simulation
Semantic keyword-based search
on structured data sources
Application of AI and machine
learning to business and industry
s
s
s
s
s
s
Application of AI techniques for
operational research, forecasting
and the science of management
Application of AI techniques to
detect anomalies in the European
Electricity Grid
Knowledge discovery
Image Processing (deconvolution)
Image super-resolution using
deep learning techniques
Optimization of manufacturing
production lines using AI
techniques
s
s
s
s
s
Square Kilometre Array (SKA) Tile
Processing Module development
Spam detection using linear
genetic programming and
evolutionary computation
Scheduling/combinatorial
optimisation
Traffic analysis and sustainable
transportation
Automotive cyber-security
146 | Faculty of Information and Communication Technology Final Year Projects 2021
Software Engineering
Data Science and Database
Technology
Human-Computer Interaction
s Computational complexity and
optimisation
s Integrated risk reduction of
information-based infrastructure
systems
s Model extraction (informal
descriptions to formal
representations)
s Automation of formal
programming syntax generation
s Automation of project process
estimation
s High-level description language
design
s Distributed computing systems
and architectures
s Requirements engineering -
methods, management and
automation
s System development including
real-time scheduling, stochastic
modelling, and Petri-nets
s Software testing, information
anxiety and ergonomics
s
s
s
s
s
s
s
s
s
s
s
s
s
Data integration and
consolidation for data
warehousing and cloud services
Database technology, data
sharing issues and scalability
performance
Processing of streaming data
Data analysis and pre-processing
Predictive modelling
Data warehousing and data
mining: design, integration, and
performance
Big data and analytics
Search and optimization
Business intelligence
Data modelling including spatialtemporal
modelling
Distributed database systems
Missing data analysis
Information retrieval
s
s
s
s
s
s
s
s
s
s
Human-Computer Interaction
(HCI)
Understanding the User
Experience (UX) through
physiological and cognitive
metrics
Human-to-instrumentation
interaction in the aviation industry
User modelling in software
engineering processes
Human-factors and ergonomics
Accessibility, universal design and
accessible user agents
Advancing assistive technologies
(multi-modal interaction)
Affordances and learned
behaviour
The lived experience of
information consumers
Information architecture
Bioinformatics, Biomedical Computing and Digital Health
Fintech and DLT
s
s
s
s
s
s
s
s
s
s
Gene regulation ensemble effort
for the knowledge commons
Automation of gene curation;
gene ontology adaptation
Classification and effective
application of curation tools
Pervasive electronic monitoring in
healthcare
Health and social care modelling
Missing data in healthcare records
Neuroimaging
Metabolomics
Technology for an ageing
population
Education, technology and
cognitive disabilities (e.g.
augmented reality)
s
s
Assistive technologies in the
context of the elderly and
individuals with sensory and
motor impairments in institutional
environments
Quality of life, independence and
security - investigating the use of
robotic vehicles, spoken dialogue
systems, indoor positioning
systems, smart wearables, mobile
technology, data-driven systems,
machine learning algorithms,
optimisation and spatial analytic
techniques
s
s
Automatic Stock Trading
Distributed Ledger Technologies
L-Università ta’ Malta | 147
FACULTY OFFICE
Ms Nathalie Cauchi, Dip.Youth&Comm.Stud.(Melit.), H.Dip.(Admin.&Mangt.) (Melit.), M.B.A.(A.R.U.,UK) (Manager II)
Ms Jennifer Vella, B.A. (Hons) Youth and Community Studies (Melit.) (Manager I)
Ms Michelle Agius, H.Dip.(Admin.&Mangt.)(Melit.) (Administrator II)
Mr Rene’ Barun, BA (Hons.) Philosophy (Melit), (Administrator I)
Ms Therese Caruana (Administrator II)
Ms Samantha Pace (Administrator I)
SUPPORT STAFF
Mr Patrick Catania A.I.M.I.S. (Senior IT Officer I)
Mr Paul Bartolo (Senior Beadle)
Ms Melanie Gatt (Beadle)
Mr Raymond Vella (Technical Officer II)
148 | Faculty of Information and Communication Technology Final Year Projects 2021
AI BEHAVIOUR
LEARNING
MONITOR
TRANSACTIONS
BLOCK SUSPICIOUS
TRANSACTIONS
FACILITATE
MANUAL PROCESSES
BACK-TESTING
ENVIRONMENT
STREAMLINE
TOOLS
ComplyRadar helps you address AML transaction monitoring requirements by automatically
identifying suspicious behaviour in real-time or retrospectively, while minimising unnecessary alerts.
ComplyRadar monitors transactions related to individuals, accounts, and entities to detect suspicious
ever-changing regulatory requirements and make the right risk decisions faster, so you can find the
right balance between stringent regulation and positive player experience.
FEATURE HIGHLIGHTS
Monitor transactions in real-time with live notifications as they happen
Catch transactions from sanctioned countries
Capture irregular deposit or withdrawal patterns
Block suspicious transactions before they hit the payment system
Reduce the number of tools needed for the compliance team
Use AI to learn additional behaviour patterns which are not captured by rules
Learn More. Get in touch with us today.
Drop us an email on sales@computimesoftware.com
Give us a call on +356 2149 0700 or visit our website on comply-radar.com
START YOUR
CAREER
WITH US!
VISIT MITA.GOV.MT/CAREERS
FOR MORE INFORMATION