Final Year Project Exhibition 2019 Faculty of ICT, UM
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Final Year
Project
Exhibition
2019
Faculty of Information
& Communication
Technology
Excellence through Collaboration
The Next Generation of IT Professionals
By 2022, most of the major IT professions are expected to undergo considerable growth:
37%
Security
25%
Analysts
22%
Programming &
Software Engineering
20%
Web
Development
15%
Project
Management
15%
Database
Development
Source: modis.com
How is the e-Competence Framework structured?
The e-Competence Framework is a European standard designed by the ICT Industry for use by
the Industry, Education & Training Providers, ICT Professionals and ICT students.
5
Competence Areas
(Plan, Build, Run,
Enable, Manage)
40
e-Competences
(Application
Development,
User Support,
Risk Management,
etc.)
5
Proficiency Levels
(e-Competence
proficiency levels
e-1 to e-5, related
to EQF levels
3 – 8)
7
Transversal Aspects
(Accessibility, Ethics,
Legal issues, Privacy,
Sustainability,
Usability
Knowledge
(e.g. programming
languages,
database structures,
communication
techniques,
etc.)
Skills
(e.g. develop user
interfaces,
identify user error,
perform quality
audits, etc.)
eSkills
eSkills Malta Foundation
Source: digitalsme.eu
www
/ESkillsMalta @Digital Skills MT eskills.org.mt
MEDICAL
WWW.CANNABIZSUMMIT.WORLD
7 - 8 NOV
FALL / WINTER EDITION
WWW.MALTABLOCKCHAINSUMMIT.COM
MALTA
27-29 NOV 2019
MANILA
8-9 JUN 2020
WORLD’S
iGAMING VILLAGE
WWW.SIGMA.COM.MT
WWW.RISKANALYTICS.COM.MT
THE COMPANY THAT NEVER STOPS
INNOVATING
OUTSTANDING SURETY MARKET
KNOWLEDGE
INNOVATION AND TECHNOLOGICAL
BREAKTHROUGH WITHIN THE SURETY
MARKET
AUTOMATISATION OF POLICY ISSUANCE
SPECIALISATION IN RISK MANAGEMENT
UNIQUE INHOUSE PLATFORM
DATA MANAGEMENT BY AI
A DESIRE TO LEARN MORE IS ESSENTIAL,
WE TRY AND CHOOSE THE BEST TOOL
FOR THE JOB, EVEN IF WE ALL NEED TO
LEARN IT TOGETHER
RISK ANALYTICS LTD.
FOCUS HOUSE, LEVEL 4
TRIQ SAN ANDRIJA SAN GILJAN
+356 2713 3168
WWW.RISKANALYTICS.COM.MT
FIND US ON LINKEDIN
ABERTAX® GRS
Gas Release System
Valve for applications
where central degassing
(safety) is required
RELIABILITY
QUALITY
SAFETY
Available as part of the whole GRS range:
M18S
M27
Bayonet
Push in
CD
all VRLA
(GEL/AGM)
up to 120Ah
all VRLA
(GEL/AGM)
> 120Ah
OPzV, OGiV
DIN PzV;
BS PzV
for AGM
automotive
(Start - Stop)
• Lowest pressure tolerances available +/- 25 mbar - extended battery life
• Longest cycle life, tested for > 2 million opening/closing cycles -
no performance deterioration; constant pressure
• 100% testing of all valves
• No additional incoming testing required on the clients’ side
• Meets IATA requirements
• Flame arresting function by design.
ABERTAX® GRS
ABERTAX® Technologies Ltd
KW17A Corradino Industrial Estate · Paola PLA 3000, Malta
Tel +356 23 678100, +356 21660606 · Fax +356 21 808625
info@abertax.com · www.abertax.com
Int. Patent Protection on all Products. Product made in the European Union.
Artificial
Intelligence
ICT
Blockchain
LAUNCH YOUR
Digital
Games
Software
Development
Take your studies and ideas to the next level.
Speak to us to learn how we can help you
launch your own successful enterprise.
W: www.maltaenterprise.com
E: info@maltaenterprise.com
T: (+356) 2542 0000
WHAT WE DO ?
Do what makes you happy
www.go.com.mt/careers
Vodafone SuperNetTM
Malta’s # 1 Mobile
Network
The future is exciting.
Ready?
8 | Faculty of Information and Communication Technology Final Year Projects 2019
Based on independent P3 measurements. www.p3-cert.com
Final Year
Project
Exhibition
2019
Faculty of Information
& Communication
Technology
Excellence
through Collaboration
Front cover and booklet designed by
Yellow Door Media
Printing by
www.deltamedia.services
Backdrop for event and theme for this year by
Ms Roberta Scerri
Audio-Visual & Graphic Design Coordinator
Mr James Moffett
Acknowledgements
The Faculty of Information and Communication Technology gratefully acknowledges the following firms and organisations for
supporting this year’s Faculty of ICT Project Exhibition 2019:
Gold Sponsors
Main Sponsor of the event
Event Sponsors
10 | Faculty of Information and Communication Technology Final Year Projects 2019
Message from the Dean
On behalf of the Faculty of Information and Communication
Technology (ICT), it is my pleasure to welcome you to the
19th Edition of the Faculty of ICT Exhibition.
This year’s exhibition is themed ‘Excellence through
Collaboration’. We wanted to emphasise the interdisciplinary
nature of ICT. ICT provides solutions in all fields of activities and
in supporting the individual’s everyday life. This year’s theme also
highlights the Faculty’s openness to strengthen the collaboration
with industry in a time where industry is moving towards the
inclusion of more ICT systems in their processes, what is known
as Industry 4.0. We firmly believe that in today’s world it is near
to impossible to achieve excellence without collaboration. Useful
solutions can only be found if stakeholders including domain
experts, industry and users of the technology are engaged in the
design, development and testing phases of new technology.
The Faculty conducts research in various fields of ICT, and with
its mix of engineers and computer scientists, it is very flexible in
meeting the requirements of any project. The Faculty is engaged
in successful collaborations with local industry, government and
foreign institutions. We are willing to explore and discuss with
other stakeholders who want expert insight and advice on the
future of ICT in the coming generations and conduct collaborative
research towards new solutions according to the exigencies of
the market. With the collective knowledge the Faculty holds we
are in a position to offer insight for policymakers.
This exhibition showcases the work of our undergraduate
students where an idea at the beginning of their final year of
studies develops into a working prototype or a theoretical proof.
These projects are the culmination of hard work done by the
students who go through the processes of understanding the
problem, research what already exists, familiarise with available
software tools and/or hardware, develop a solution, evaluate the
work done, and finally write a report on all of this. The opening
ceremony also features the Dean’s List Awards. I congratulate the
eight students making it on this list this year.
This year’s edition features fifty-two (52) projects which are
grouped under eight umbrella topics - Audio, Speech and Language
Technology; Blockchain and Fintech; Data Science; Deep Learning;
Digital Health; Internet of Things; Software Engineering and Web
Applications; and Testing and Verification. I am sure that you will
find at least one area of study that will capture your imagination.
I would like to congratulate our final year undergraduate students
for their achievements and dedication. The undergraduate degree
is just the first step in the career in ICT, I invite you to look at the
Faculty’s offerings at postgraduate level – I am confident that you
will find a programme suitable for you. For those who are about
to start their career in industry, my advice is to find jobs that fulfil
your expectations. Whichever path you take, I wish you all the
success and happiness in your professional career.
Organising this event requires time and effort. Allow me
to thank the Rectorate for their constant support, the Faculty
academic staff not only for supervising the projects exhibited
today but also for their invaluable contribution throughout the
journey that these students had with us, the Faculty support staff
for their invaluable help in organising this event and throughout
the year, the University administrative directorates for their
support in administrative, financial and marketing requirements,
the students who are exhibiting their work, and our sponsors
without whom such an event cannot occur. Thank you.
I trust that you will enjoy this exhibition.
Carl James Debono
Dean
L-Università ta’ Malta | 11
Faculty of ICT – Members of Staff
DEPARTMENT OF COMMUNICATIONS AND COMPUTER ENGINEERING
PROFESSOR
Professor Inġ. Carl J. Debono, B.Eng.(Hons.), Ph.D.(Pavia), M.I.E.E.E., M.I.E.E.
(Head of Department) (Dean of Faculty)
ASSOCIATE PROFESSORS
Professor Johann A. Briffa, B.Eng. (Hons)(Melit.), M.Phil.(Melit.), Ph.D.(Oakland)
Professor Inġ. Victor Buttigieg, B.Elec.Eng.(Hons.), M.Sc. (Manc.), Ph.D.(Manc.), M.I.E.E.E.
Professor Inġ. Adrian Muscat, B.Eng. (Hons.), M.Sc. (Brad.), Ph.D.(Lond.), 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
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.
Inġ. Antoine Sciberras, B.Eng.(Hons.), PG.Dip.(Brunel)
Inġ. Leslie Spiteri, B.Elec.Eng.(Hons.), M.Sc., M.I.E.E.E.
Inġ. Martin Zammit, B.Elec. Eng. (Hons.)
RESEARCH SUPPORT OFFICERS
Ms Leanne Attard, B.Eng.(Hons.), M.Sc. (Research Support Officer)
Ms Gabriella Azzopardi, B.Sc.(Hons.), M.Sc. (Research Support Officer)
Dr Arkadiusz Gorzawski, Ph.D. (Research Support Officer I)
Dr Christian Galea, Ph.D (Melit.), M.Sc (Melit.), B.Sc. (Hons.) ICT (CCE), MIEEE (Research Support Officer III)
Mr Aaron Abela, B.Sc (Hons) Computer Engineering (Research Support Officer I)
Dr Frederik Van Der Vekan, Ph.D. (Research Support Officer)
Dr David Lloyd, MSci (Lond.), DPhil (Oxon.) (Research Support Officer III)
Mr Matthew Sacco, B.Sc (Hons) (Research Support Officer I)
Mr Leander Grech, B.Sc (Hons) (Research Support Officer)
Mr Simon Hirlander, B.Sc (Hons), M.Sc (TU Wien) (Research Support Officer)
Dr Ewan Hamish Maclean, M.Phys, D.Phil (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)
12 | Faculty of Information and Communication Technology Final Year Projects 2019
Research Areas:
Computer Networks and Telecommunications
Computer Systems Engineering
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
5G Technology
Adaptive and Intelligent Techniques in Wireless
Systems
Automation in Network Management
Cognitive Radio Systems
Error Correction Codes
Image Coding for Novel Camera Architectures
Internet of things
Machine-to-Machine Communications
Multimedia Communications
Multi-view video coding and transmission
Network Coding
Software-Defined Networking
Telecommunications and Network Modelling
Video Coding
Wireless Sensor Networks and Telematics
nn
nn
nn
nn
nn
Data Acquisition and Control Systems for
Particle Accelerators and Detectors
Digital Games Platforms
Human Machine Interfaces
Implementation on Massively Parallel Systems
(e.g. GPUs)
Reconfigurable Hardware
Signal processing and Pattern Recognition
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
Automated Assessment in Intelligent Tutoring
Systems
Biometrics
Computer Vision
Gesture Recognition
Image Processing
Integrated Vision and Language
Medical Image Processing and Coding
Multimedia Retrieval and Indexing
Multimedia Security and Forensics
Shape Analysis and Understanding
L-Università ta’ Malta | 13
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)
SENIOR LECTURERS
Dr Mark Micallef, B.Sc.(Hons.), Ph.D. (Melit.)
Dr Kevin Vella, B.Sc., Ph.D. (Kent) (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.)
LECTURERS
Dr Keith Bugeja, B.A.(Hons), M.IT, Ph.D.(Warw.)
Dr Sandro Spina, B.Sc.I.T.(Hons), M.Sc. (Melit.), Ph.D.(Warw.)
AFFILIATE LECTURER
Dr Neville Grech, B.Sc.(Hons),M.Sc.(S’ton),Ph.D.(S’ton)
RESEARCH SUPPORT OFFICERS
Thomas Mercieca, B.Sc (Hons.) (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)
ADMINISTRATIVE STAFF
Mr. Kevin Cortis, B.A.(Hons) Graphic Design & Interactive Media (Administrator II))
Research Areas:
nn
nn
nn
nn
nn
nn
nn
Concurrency
Computer Graphics
Compilers
Distributed Systems and Distributed Ledger
Technologies
Model Checking and Hardware/Software Verification
Operating Systems
Semantics of Programming Languages
nn
nn
nn
nn
nn
nn
High Performance Computing and Grid Computing
Runtime Verification
Software Development Process Improvement and
Agile Processes
Software Engineering
Software Testing
Security
14 | Faculty of Information and Communication Technology Final Year Projects 2019
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.
(Head of Department)
SENIOR LECTURERS
Dr Inġ. Owen Casha, B. Eng.(Hons.) (Melit.),Ph.D. (Melit.), M.I.E.E.E.
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.) (Systems Engineer)
RESEARCH SUPPORT OFFICERS
Mr Russell Farrugia, B.Eng. (Hons)(Melit.), M.Sc.(Melit.) (Research Support Officer II)
Mr 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)
Research Areas:
nn
nn
nn
nn
nn
Analogue and Mixed Mode ASIC Design
RF CMOS Circuits
Embedded Systems
Biotechnology Chips
Micro-Electro-Mechanical Systems (MEMS)
nn
nn
nn
nn
Quantum Nanostructures
System-in-Package (SiP)
System-on-Chip (SoC)
Accelerator Technology
L-Università ta’ Malta | 15
DEPARTMENT OF ARTIFICIAL INTELLIGENCE
ASSOCIATE PROFESSORS
Professor Matthew Montebello, B.Ed. (Hons)(Melit.), M.Sc. (Melit.), M.A.(Ulster), Ph.D.(Cardiff), Ed.D.(Sheff.), SMIEEE
Professor Alexiei Dingli, B.Sc.I.T. (Hons.) (Melit.), Ph.D. (Sheffield), M.B.A (Grenoble) (Head of Department)
SENIOR LECTURERS
Dr Joel Azzopardi, B.Sc. (Hons.) (Melit.), Ph.D. (Melit.)
Dr Christopher Staff, B.A.(Hons.)(Sussex), D.Phil. (Sussex)
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 Vanessa Camilleri, B.Ed. (Hons.)(Melit.), M.IT (Melit.), Ph.D. (Cov)
ASSISTANT LECTURERS
Mr Kristian Guillaumier, B.Sc. I.T. (Hons.) (Melit.), M.Sc. (Melit.)
Mr Dylan Seychell, B.Sc. I.T. (Hons.) (Melit.), M.Sc. (Melit.), GSMIEEE
ADMINISTRATIVE STAFF
Ms Francelle Scicluna, (Administration Specialist) B. W.H.R (Hons.) (Melit.)
Research Areas:
Actual research being done
Title: Maltese Speech Recognition (MASRI)
Area: Speech Processing
Title: Maltese Speech Synthesis
Area: Speech Processing
Title: EnetCollect – Crowdsourcing for Language Learning
Area: AI, Language Learning
Title: Language Technology for Intelligent Document
Archive Management
Area: Linked and open data
Title: Crowdsourcing in Education
Area: ICT in Education
Title: Medical image analysis and Brain-inspired computer
vision
Area: Intelligent Image Processing
Title: MyOcean Follow-On, MEDESS4MS, and Calypso 2
projects
Area: Down-stream services
Title: GBL4ESL
Task: Creation of digital resources for educators using a
Game Based Learning
Toolkit
Title: eCrisis
Task: Creation of framework and resources for inclusive
education through playful and game-based learning
Title: Smart animal breeding with advanced machine
learning techniques
Area: Predictive analysis, automatic determination of
important features
Title: Real-time face analysis in the wild
Area: Computer vision
Title: RIVAL; Research in Vision and Language Group
Area: Computer Vision/NLP
Title: Detection and Recognition of Marathon Number Tags
Area: Computer Vision
Title: Maltese Language Resource Server (MLRS)
Area: Natural Language Processing
Task: Research and creation of language processing tools
for Maltese
16 | Faculty of Information and Communication Technology Final Year Projects 2019
Title: Walking in Small Shoes: Living Autism
Area: Virtual Reality
Task: Recreating a first-hand immersive experience in
autism
Title: Augmenting Art
Area: Augmented Reality
Task: Creating AR for meaningful artistic representation
Title: Morpheus
Area: Virtual Reality
Task: Personalising a VR game experience for young
cancer patients
Title: Notarypedia
Area: Knowledge Graphs and Linked Open Data
Title: Smart Manufacturing
Area: Big Data Technologies and Machine Learning
Title: Analytics of patient flow in a healthcare ecosystem
Area: Blockchain and Machine Learning
An updated list of concrete areas in which we have expertise to share/offer
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
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
Natural Language Processing/Human Language Technology
Document Clustering and Scientific Data Handling and Analysis
Intelligent Interfaces, Mobile Technologies and Game AI
Optimization Algorithms
Mixed Realities
Areas which we are interested in starting/rekindling
Area: Health
Interest: Computer aided diagnosis for the detection of diabetic
retinopathy from retinal images
Area: Health / Internet of Things
Interest: Automated decision-support for personalised selfmanagement
to prevent recurrence of low-back pain
Area: Security
Interest: Forensic analysis based on video surveillance cameras
Area: Big Data
Interest: Identification of patterns using multi-modal data and all
kinds of media
Area: Banking
Interest: Detection of abnormal credit-card-based spending
behaviour
Area: Human Robot Interaction
Interest: Multi-modal communication
Area: Digital Archive Management
Interest: Information Extraction (Text Mining) from Digital
Archives
Area: Higher Education
Interest: Applying ICT to enhance e-learning
Area: Health inspired VR/ AR
Interest: Mixed reality development for increased development of
empathy towards patients
Area: Robotics
Interest: Use of AI in Robotics
Area: Brain-inspired vision
Interest: Understanding the role of feedback circuits in the visual
cortex and use it to design more effective computer vision
algorithms
L-Università ta’ Malta | 17
DEPARTMENT OF COMPUTER INFORMATION SYSTEMS
ASSOCIATE PROFESSOR
Professor Ernest Cachia, M.Sc.(Kiev), Ph.D.(Sheff.) (Head of Department)
SENIOR LECTURERS
Dr John Abela, B.Sc.(Hons.), M.Sc., Ph.D.(New Brunswick), I.E.E.E., A.C.M.
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)(Lond.), ACGI,M.Phil.(Cantab.), Ph.D.(Cantab.)
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 of Faculty)
Dr Michel Camilleri, B.Sc., M.Sc., Dip.Math.&Comp., Ph.D (Melit.)
Dr Clyde Meli, B.Sc., M.Phil, Ph.D (Melit.)
Dr Christopher Porter, B.Sc.(Bus.&Comp.), M.Sc. , Ph.D.(UCL)
Dr Joseph Vella, B.Sc., Ph.D.(Sheffield)
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)
18 | Faculty of Information and Communication Technology Final Year Projects 2019
Research Areas:
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
Object Oriented Platforms, Languages and
Techniques in Distributed Environments
System Development including Real-Time scheduling,
stochastic modelling, and Petri Nets
Modern Software Engineering (based on Conceptual
Modelling and Agile development)
Database Management Systems, Data Modelling
including Spatial-temporal Modelling
Data Mining and Data Warehousing
Software Project Management
IT Strategic Management including E-strategy
Services and Security (including Electronic Identities
and Spam Detection)
Quality Assurance and Risk Management of IT
Frameworks
Applicative Genetic Algorithms and Genetic
Programming
3D Graphics Modelling Technologies
Mobile Computing and Technologies
IT Psychology and Semantic Technologies (Web and
Applications)
Cloud Computing Solutions and Technologies
Web Application and Systems Architecture
Human Computer Interaction
Accessibilty
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
nn
Machine learning, latent semantic analysis,
scheduling, timetabling, optimisation[CP1]
Business Intelligence
Information Systems and Business Applications
Development
Enterprise Resource Planning
Bioinformatics[CP2]
IT Audit and IT Forensics
Health & Social Care Modelling
Missing Data Analysis
Biomedical Informatics
Traffic Analysis and Sustainable Transportation
Natural Language Processing
Information Retrieval
DLTs and Blockchain
Augmented Reality
Computer Aided Design
e-Government
Intelligent Transport Systems
Voice Recognition
Applications of computer technologies to medicine
and public health, education and disability
Data Science
Business applications of AI
FACULTY OFFICE
Ms Nathalie Cauchi, Dip.Youth&Comm.Stud.(Melit.), H.Dip.(Admin.&Mangt.) (Melit.), M.B.A.(A.R.U.,UK) (Manager II)
Mr Rene’ Barun, BA (Hons.) Philosophy (Melit.), (Administrator I)
Mr Anthony Buhagiar, (Senior Administrator)
Ms Anabel Decesare, (Administration Specialist)
Ms Ruth Vella Caruana, Dip.Marketing (Melit.) (Administration Specialist)
SUPPORT STAFF
Mr Patrick Catania A.I.M.I.S. (Senior IT Officer I)
Mr Paul Bartolo (Senior Beadle)
Mr Austin Camilleri (Beadle)
Mr Raymond Vella (Technical Officer II)
L-Università ta’ Malta | 19
#FICT19
20 | Faculty of Information and Communication Technology Final Year Projects 2019
ICT
final year
project exhibition
11 – 12 July 2019
EXHIBITION MAP
Internet of Things
Audio, Speech and
Language Technology
Software
Engineering and
Web Applications
COMMON
AREA
Deep Learning
ENTRANCE TO
COMMON AREA
FOYER
ENTRANCE
FROM STAIRS
Data Science
Digital Health
Testing and Verification
Blockchain
and Fintech
LEVEL -1
COMMON AREA
Audio, Speech and Language Technology
Internet of Things
Software Engineering and Web Applications
Digital Health
LEVEL -1
FOYER
Blockchain and Fintech
Testing and Verification
Data Science
Deep Learning
L-Università ta’ Malta | 21
Contents
#FICT19
Blockchain & Fintech
E-commerce Based Information Retrieval and Personalised Search 24
Document Classification Using Deep Learning 25
Evaluating Different E-Commerce Websites to Investigate the Effect of Online Adverts on Usability 26
Reducing Medical Certificate and Prescription Abuse Using the Ethereum Blockchain 27
Responding to Ethereum Web-Application Attacks 28
An Investigation of Simulating Blockchain Networks: An Abstract Approach 29
Testing & Verification
A Framework for Multi-Trace Analysis in Erlang 30
Human Centred Software Testing Using Augmented Reality 31
Usability Study of Animated and Static Banner Ads on a Mobile News Website 32
Responding to PowerShell Attacks 33
Deep Learning
Identification of Alien Objects Underwater 34
Emotion Recognition from Static Images 35
Document Segmentation using Deep Learning 36
Data Science
INfORmER: Identifying local News articles related to an Organisational Entity and its Remit 37
Automatically Resolving Forward-References in Article Headlines to Identify Clickbait 38
Analysis of online behaviour to ensure the appropriate use of web-based systems 39
AI Assisted Learning (AIAL) 40
A Machine Learning Framework for Code Optimisation 41
Depth Estimation using Light Field Cameras 42
Improving the Performance of Machine Learning Algorithms Through Increasing Dataset Size 43
Determining the Best Business Intelligence Solution according to User Requirements 44
Ontology Portal 45
Machine Learning Techniques for E-mail Categorization 46
Discovering Decisions in Neural Networks 47
Read All About It! A Research Support Tool for Automatically Finding Relevant Prior and Related Work and
Sequencing it for Reading 48
Interpreting Neural Networks Via Activation Maximisation 49
22 | Faculty of Information and Communication Technology Final Year Projects 2019
Software Engineering & Web Applications
Heuristic and Meta-heuristic Approaches to Cockpit Crew Scheduling 50
Effective Car Traffic Management Using Different Technologies 51
Real-time GI for dynamic environments using temporal filtering 52
Data Leakage in SaaS 53
Bioinformatics Resource Portal 54
A Multi-Methodology Modelling Framework for Software Development Projects 55
Optimising the Go runtime scheduler 56
Implementation of a Sudoku Puzzle Solver on a FPGA 57
Investigating Gaze Interaction Usability for Web Browsing 58
Transportation Issues in a Real-Time Web-Based Supply Chain 59
Internet of Things
Human Movement Activity Sensing Through Zigbee Wireless Technology 60
Drone-Based Search 61
Developing an Educational Game to Aid Learning Support Educators (LSEs) Teach Basic Arithmetic to
Children with Intellectual Disabilities 62
Time Series Data Reduction of data from IoT devices 63
Using Assistive Technologies to Increase Social Interaction of Residents with Limited Mobility in a Care
Environment 64
Assisting Drivers Using Parking Predictions Through an Automobile App 65
Security Issues in Controller Area Networks in Automobiles with the implementation of Fuzzing 66
Audio, Speech & Language Technology
Audio Effects Library for Digital Signal Processor 67
High Efficiency Low Voltage Class D CMOS Audio Power Amplifier 68
A Text-Independent, Multi-Lingual and Cross-Corpus Evaluation of Emotion Recognition in Speech 69
A Diphone-Based Maltese Speech Synthesis System 70
Inflection of Maltese Using Neural Networks 71
Increasing the Usability of Spoken Dialogue Systems using Machine Learning: A Study of Use by Older Users
in Retirement Homes 72
Digital Health
A Handwriting Application to Improve Fine Motor Skills 73
Classification of Brain Haemorrhage in Head CT Scans using Deep Learning 74
Mining Drug-Drug Interactions for Healthcare Professionals 75
L-Università ta’ Malta | 23
Blockchain & Fintech
E-commerce Based Information Retrieval and
Personalised Search
Anne-Marie Camilleri
Supervisor: Dr Joel Azzopardi
Course: B.Sc. IT (Hons.) Artificial Intelligence
The evolution of E-commerce websites and internet users over
the years has meant that retailers have to deal with the challenge
of information overload while also keeping the customers
satisfied [4]. Such specialised systems hence require the retrieval
of unstructured information and descriptions about their product
inventory to be able to carry out personalisation on the search
results. The main challenge in Information Retrieval involves
retrieving products according to a user’s needs using a matching
algorithm. This is mainly due to polysemy and synonymy [5] as
well as the searcher not knowing how to properly formulate their
information needs in a short search query [3]. These problems
are more prevalent in smaller, specialised systems such as in
the domain of E-commerce. This is due to the fact that when
searching for something on the World Wide Web, many relevant
documents are likely to match a query. On the other hand, in a
specialised collection it is likely that the terms used to represent
documents may not be so common [1].
Despite these problems, techniques including Latent Semantic
Analysis and Automatic Relevance Feedback have been known to
improve Information Retrieval results [4]. Moreover, the ultimate
goal is creating a user-adaptive system that will automatically
provide users with information according to their needs [2]. In
fact, when dealing with personalised search in an E-commerce
setting, the biggest challenge is obtaining information about a
user in a non-intrusive way. This information can then be used
in order to create the user’s profile which will contain the user’s
preferences and needs over time [2]. Another challenge deals
with choosing a recommendation algorithm which will be used
to gather information about users in order to personalise their
search results according to their needs [2].
This dissertation describes an information retrieval and
personalised search system in which different techniques were
researched and developed to achieve the best outcome for
the problem outlined. The proposed system is split into two
components, Information Retrieval and Personalised Search. The
information retrieval component retrieves textual information
Figure 1. System Overview
about products from an E-commerce collection and processes
them in such a way as to retrieve the best features. In the
personalised search component, a personalisation algorithm is
used to convert user information into user models. The system is
able to re-rank search results returned by user queries using the
retrieved product features and user models.
When evaluating our system, we found that using information
retrieval techniques such as Latent Semantic Analysis greatly
improves the search result relevance scores. Also, when
personalising the search results according to the user’s
preferences, the incorporation of popularity of the product as well
as similarity between the query terms and product description
terms helped to obtain the best result over all the queries. The
user-product relevance had the greatest impact on the re-ranking
of search results, indicating that personalisation according to the
user’s preferences is desired.
References
[1] C. Layfield, J. Azzopardi and C. Staff, “Experiments with Document Retrieval from Small Text Collections Using Latent Semantic
Analysis or Term Similarity with Query Coordination and Automatic Relevance Feedback,” in Semantic Keyword-Based Search on
Structured Data Sources, 2017.
[2] B. Mobasher, “Data Mining for Web Personalization,” in The Adaptive Web: Methods and Strategies of Web Personalization, Springer
Berlin Heidelberg, 2007, pp. 90--135.
[3] I. Ruthven and M. Lalmas, “A survey on the use of relevance feedback for information access systems,” The Knowledge Engineering
Review, vol. 18, no. 2, pp. 95-–145, 2003.
[4] F. Isinkaye, Y. Folajimi and B. Ojokoh, “Recommendation systems: Principles, methods and evaluation,” Egyptian Informatics
Journal, vol. 16, 2015.
[5] S. Deerwester, S. Dumais, T. Landauer, G. Furnas and R. Harshman, “Indexing by Latent Semantic Analysis,” Journal of the American
Society for Information Science, vol. 41, pp. 391--407, 1990.
24 | Faculty of Information and Communication Technology Final Year Projects 2019
Document Classification Using Deep Learning
Keith Azzopardi
Supervisor: Prof. Inġ. Adrian Muscat | Co-supervisor: Dr Inġ. Gianluca Valentino
Course: B.Sc. (Hons.) Computer Engineering
Blockchain & Fintech
Document classification describes the task of categorizing
a set of documents into two or more predefined categories.
This categorization may involve a simple rule-based approach,
or make use of a group of techniques usually referred to as
Natural Language Processing (NLP) techniques, a subset of
machine learning. This project tackles the classification of
business documents into six pre-classes: invoices, receipts,
delivery notes, quotations, purchase orders and others. The
approach taken uses textual analysis, specifically by applying
the Bag Of Words (BOW) model, meaning that each document
is first pre-processed to extract its meaningful words, and
the presence of these words is used to distinguish between
classes, without taking into consideration their position or
order and the overall visual characteristics of the documents.
Three machine learning models, in increasing complexity,
are proposed, implemented and compared. The models
comprise a term frequency based classifier (Model 1), a TF-
IDF based Multinomial Naive Bayes classifier (Model 2) and
a TF-IDF based Artificial Neural Network classifier (Model 3).
The Neural Network classifier obtained the highest overall
classification accuracy, over 97.7%, outperforming both the
frequency-based classifier and the Naïve Bayes classifier,
which obtained classification accuracies of 92.2% and 91.6%,
respectively. The results show how this task benefits from
the implementation of deep learning, especially when the
document category is not specified explicitly.
The models are trained and tested using a synthetic
business document dataset, which was created as part of
this project. The dataset is generated by populating document
templates of the specified categories with data from a mock
database. This allows for the generation of a dataset which is
of sufficient size and variation for this task, whilst permitting
the re-use and distribution of the dataset without raising
concerns with regard to data protection.
Figure 1. The system adopted to generate the synthetic dataset.
Figure 2. A sample document and the corresponding output from the three models.
L-Università ta’ Malta | 25
Blockchain & Fintech
Evaluating Different E-Commerce Websites to Investigate
the Effect of Online Adverts on Usability
Matthew Vella
Supervisor: Dr Colin Layfield
Course: B.Sc. IT (Hons.) Software Development
According to Eurostat [1], by 2012 75% of individuals aged 16
to 74 had used the internet in the previous year, with 60% of
these Internet users reporting that they had shopped online. In
the United Kingdom it was reported that 80% of internet users
were online shoppers, this figure being the highest in Europe. In
2012, the most common online purchases were clothing as well
as travel and holiday accommodation, while in 2014 global online
retail sales represented over 5% of total global sales, which was
around $1.3 trillion annually [2]. Moreover, in 2015, the Interactive
Advertising Bureau reported that Internet advertising had reached
$59.6 Billion, an increase of over 20% over the previous year.
As a result, in today’s business environment, companies strive
to maintain and expand their customer base, using numerous
strategies to reach out to their clients. Companies commonly use
websites and social media to reach out to and interact with their
clientele, in order to showcase their products. Such websites
need to be of high quality in order to exhibit the professionalism
of the business. Websites need to have high usability and allow
the user to efficiently and effectively use E-Commerce websites
whilst also being satisfied with the experience.
This eye tracking study will evaluate if online banner and
video adverts affect the usability of such websites. By comparing
two types of adverts and two different types of E-Commerce
website designs to see if such influence exists, this study will
investigate whether different types of adverts have different
levels of influence on usability, whilst also establishing whether
this influence varies on different website designs. Throughout
the experiment, 90% of participants noticed video adverts, with
a further 60% stating that such adverts were annoying and
frustrating. In contrast, only 35% of the participants noticed
banner adverts. Figure 1 shows how participants interacted
with both the banner and video adverts.
This study concluded that whilst users are able to use
such websites efficiently and effectively, users exposed to
video adverts were not satisfied with their experience, as it
affected the overall usability of the website. On the other hand,
banner adverts had no effect on the usability of E-Commerce
websites. Moreover, this influence stays relatively constant even
with change of designs, concluding that video advertising is
detrimental to the usability of E-Commerce websites.
Figure 1. Participant Interaction Patterns with Online Adverts
References
[1] “Nearly 60% of eu internet users shop online,” https://bit.ly/2Ehtchs, 2013, accessed: 2018-11-02.
[2] Q.Wang, “Usability research of interaction design for e-commerce website,” in 2011 International Conference on E-Business and
E-Government (ICEE). IEEE, 2011, pp. 1-4.
26 | Faculty of Information and Communication Technology Final Year Projects 2019
Reducing Medical Certificate and Prescription Abuse
Using the Ethereum Blockchain
Luke Attard
Supervisor: Dr Conrad Attard | Co-Supervisor: Dr John Abela
Course: B.Sc. IT (Hons.) Software Development
Blockchain & Fintech
The introduction of Bitcoin in 2008 gave birth to Distributed
Ledger Technology (DLT). A blockchain is essentially a distributed,
immutable digital ledger which uses cryptographic algorithms
to securely store transactions of any type. The blockchain
network consists of a number of ‘nodes’ which are used to
confirm transactions and secure the network in order to ensure
immutability. Anyone with internet access can join the blockchain
network and view the transactions on the ledger. This technology
set in motion a new era, where applications are decentralised with
no central authority.
This work proposes the use of the Ethereum blockchain to
try and reduce, or even eliminate, medical sick certificate and
prescription abuse. The Centre for Disease Control (CDC) reports
that prescription drug abuse is the fastest growing drug problem
in the United States, with tens of thousands unintentional drug
overdose deaths annually [1]. Medical sick leave certificates
and drug prescriptions are digitally signed by the private key of
the doctor and the patient and stored on the blockchain. Other
stakeholders, such as employers and pharmacists, can access
the relative data provided they have the required permissions.
Data analytics for the health authority, in the form of calendar
heatmaps and map markers, have also been implemented. A
hybrid architecture is used in order to save on the cost of using
the blockchain. Hashed pointers are stored on the blockchain
while the actual data resides on a database. The sick leave
certificate and prescription life cycle are fully tracked, meaning
that prescription data is recorded from when the prescription
is issued by the doctor until it is dispensed by the pharmacist.
The sick certificate life cycle is fully monitored from when the
certificate is created to when it is forwarded to the employer and,
eventually, the health authority. The proposed system was finally
given to the interviewed stakeholders for a trial to conduct a
usability study as well as gather feedback regarding the system’s
ability to reduce abuse. The feedback given by the stakeholders
was positive overall, and indicated that this system may actually
reduce medical sick certificate and prescription abuse.
Figure 1.Proposed Hybrid Architecture
Figure 2. Architecture Diagram
References
[1] Centers for Disease Control and Prevntion (CDC et Al.), “CDC grand rounds: prescription drug overdoses-a US epidemic.,” MMWR.
Morb. Mortal. Wkly. Rep., vol. 61, no. 1, p. 10, 2012.
L-Università ta’ Malta | 27
Blockchain & Fintech
Responding to Ethereum Web-Application Attacks
Franklyn Josef Sciberras
Supervisor: Dr Mark Joseph Vella
Course: B.Sc. (Hons.) Computing Science
DApps provide a solution where mistrusting entities are allowed
to interact through a user-friendly environment, backed up by
a security critical technology, more specifically the Ethereum
blockchain [But14]. Given the setup, security guarantees that the
blockchain offers are often misunderstood to cater for all possible
threats. However, the added front-end interfacing components fall
outside the scope of these guarantees and consequently increase
the possible attack surface.
The first part of this work attempts to investigate how the
added front-end components can be exploited to undermine the
present architecture. Assuming that architectures such as crypto
wallets cannot be compromised and private keys are not disclosed,
we study the possibility of abusing DApp behaviour without the
need to hijack security critical tokens. This led to the identification
of a set of potential vulnerabilities, which can be studied within the
optic of the following dimensions: 1) Exploitation of transactions
through tampering and forgery; 2) Exploitation of the DApps
functionality, either related to the nature of the application or
cryptocurrency transfers; and 3) The implications that the DApp
Browser in use has on the identified vulnerabilities. Based on this
threat analysis, it was concluded that through DOM abuse, DApp
functionality, and consequently transactions generated, can be
compromised. However, the success of the exploit depends on
the amount of visibility and control the DApp Browser provides
during the transaction authorization process.
Considering that these types of attacks can go undetected
for a number of days, traditional memory forensic techniques
Figure 1. Proposed Investigation Technique - DAppInvestigator
would be hindered in this scenario [Gar]. For this reason,
DAppInvestigator was proposed, with the aim of providing
an effective solution that targets these needs. Using the
technique portrayed in Figure 1, we show that proactive
system forensics revolving around dumping DOM-related
information, driven by particular events emitted by the DApp
Browser, can actually recreate the steps of eventual attacks
and present them in a forensic timeline. The potential of this
approach was demonstrated using two implementations that
require a different level of TCB. In using a TCB that consists
of the entire web browser stack and a second version which
only relies on DevTools Protocol server code of the browser,
we manage to set a solid basis for response.
References
[But14] Vitalik Buterin. Ethereum white paper: A next generation smart contract & decentralized application platform. Report, Ethereum.
org, 2014.
[Gar] Gabriela Limon Garcia. Forensic physical memory analysis: an overview of tools and techniques
28 | Faculty of Information and Communication Technology Final Year Projects 2019
An Investigation of Simulating Blockchain Networks:
An Abstract Approach
Matthew Barthet
Supervisor: Dr Joshua Ellul
Course: B.Sc. (Hons.) Computing Science
Blockchain & Fintech
This project aims to build upon existing research into the modelling
and simulation of blockchain networks, focusing specifically on
abstracting properties of the network into a conceptually and
computationally simpler model. The model proposed by this
project was created using the python-based library PyCATSHOO,
allowing for the simulation of the entire network on a single
machine. The system is constructed using deterministic finite
state machines, with all network communications being simulated
through delays. Monte Carlo simulations were used to test
different configurations of the model together with performance
indicators which continuously analyze the state of the simulator
and return a value.
as data observed for existing deployments without physically
implementing a network or creating a complex virtual network
on a machine. The simulator allows for various properties and
indicators to be observed, such as block sizes, block intervals and
propagation times, and blockchain splits which result in orphaned
blocks.
Figure 2. Single Process’ Communication with the System
Figure 1. Sample Network Layout
Focus was placed on recreating and extending the features
of existing research whilst improving the efficiency of the
model. It was constructed from the ground up to follow a highlevel
approach, abstracting away low-level details of the network
which should not affect the accuracy of the simulator. The
model created could reproduce existing simulation data as well
The evaluation focuses on the scalability of the model,
observing the effect of a growing network size on the performance
and security of the network. The resulting data highlighted how
blockchains such as Bitcoin and Ethereum are capable of scaling
up to thousands of nodes while still maintaining strong consensus
and resistance to attacks. Finally, improvements were proposed
to the implementation to enhance its efficiency and broaden the
scope of the properties it may simulate.
References
[1] Hassane Chraibi. Dynamic reliability modeling and assessment with PyCATSHOO:
Application to a test case. In PSAM congress, 2013.
[2] Pierre-Yves Piriou and Jean-Francois Dumas. Simulation of stochastic blockchain models. In 2018 14th European Dependable
Computing Conference (EDCC), pages 150-157. IEEE, 2018.
[3] Satoshi Nakamoto. Bitcoin: A peer-to-peer electronic cash system. 2008.
[4] Vitalik Buterin. A next-generation smart contract and decentralized application platform. white paper, 2014.
[5] Arati Baliga. Understanding blockchain consensus models. In Persistent. 2017.
[6] Arthur Gervais et al. On the security and performance of proof of work blockchains. In Proceedings of the 2016 ACM SIGSAC
conference on computer and communications security, pages 3-16. ACM, 2016.
L-Università ta’ Malta | 29
A Framework for Multi-Trace Analysis in Erlang
Christian Bartolo Burlò
Supervisor: Prof. Adrian Francalanza
Course: B.Sc. (Hons.) Computing Science
Testing & Verification
Tracing, the representation of a program execution via a sequence
of events, is a widespread software analysis technique used
in applications such as runtime monitoring. In concurrent and
distributed systems, there is often the need to use a number of
traces (e.g., one per location) and these, in turn, cannot always
be set up upfront, i.e., before execution starts. This means
that a program-analysis technique employing multiple traces
needs to contend with the dynamic reconfigurations of multiple
tracers (or monitors) in addition to the analysis it is carrying
out, which may lead to problems such as race conditions (e.g.,
multiple consumers of events from a single trace) and event loss
and reordering (e.g. when a subcomponent generating events
is transferred from one event stream to another). This study
presents two implementations that can manage multiple tracing
atop the Erlang VM tracing mechanism. The monitors within
these two strategies can also handle, up to a certain degree, the
problems that arise during runtime.
The implementations are applied to an Erlang TCP server,
intentionally constructed to mimic real-world scenarios.
The whole setup is quantitatively evaluated via empirical
experiments and compared to centralised monitoring, and
the effects incurred over the server are studied. The results
obtained from these evaluations demonstrate that both
implementations, when employed over systems composed of
asynchronous components, perform better than a centralised
monitoring setup. Moreover, the different setups offer different
advantages: one induces lower memory overheads and has less
impact on the responsiveness of the system under scrutiny by
separating concerns, whereas the other induces a much lower
CPU utilisation overhead.
The applicability of our models is not confined to Erlang.
Rather, the design of the models discussed can be applied to
any concurrent scenario in which the components within the
system can be individually traced.
sys
A
A
spw
B
sys
A
sys
B
M A
(a) System consisting of
process A.
rcv(A,B)
A
M A
snd
B
sys
M B
snd(B,A)
(d) Process B communicates
with A.
spw(A,B)
M A
(b) Process A spawns process
B.
trm(A)
A
M A
sys
B
M B
trm(B)
(e) Processes A and B
terminate.
M A
instrument
M B
(c) M A instruments M B for
process B.
M A
sys
M B
(f) Monitors M A and M B
terminate.
Figure Figure 1. Ideal 1: choreographed Ideal choreographed monitor configuration monitor set-up configuration and teardown set-up for a and system teardown containing fortwo a system processes.
containing two processes.
spw
spw
A B C
sys
C
A
B
sys
C
A
B
sys
spw(A,B) spw(B,C)
M A
hA
(a) Process A spawns process
B which spawns process C.
A
M A
hA
rcv(C,B)
C
rcv(C,B)
snd
B
sys
M B
hB
snd(B,C)
(d) Process B communicates
with process C.
M A
hA
ins(hA)
M B
hA, spw(B,C)
hB
(b) M A instruments M B and
forwards event to h A .
sys
A B C
M A
hA
M B
hB
ins(hA)
M C
hC
C ⇒ MC
(e) Monitor M B instruments
M C for process C.
B ⇒ MB
M A
M B
hA
hB
hA, spw(B,C)
(c) M B notifies h A , which
forwards event of B.
sys
A B C
M A
hA
M B
hB
M C
hC
rcv(C,B)
(f) Helper h A forwards event
exhibited by process C.
Figure 2. 2: Layered-choreographed monitor monitor configuration configuration set-up for a set-up system for containing a system three containing processes.
three processes.
30 | Faculty of Information and Communication Technology Final Year Projects 2019
Human Centred Software Testing
Using Augmented Reality
Kurt Camilleri
Supervisor: Dr Chris Porter | Co-Supervisor: Dr Mark Micallef
Course: B.Sc. IT (Hons.) Software Development
Software testing is a demanding activity where testers must
handle considerable volumes of information coming from a wide
variety of sources in order for them to carry out their day-to-day
jobs effectively. This influx and volume of information may cause
what is known as ‘information anxiety’ [1].
This project builds upon previous work [2], [3] to investigate
how context-relevant and just-in-time (JIT) information presented
through augmented reality (AR) interfaces affects the testers’
productivity and performance while at the same time mitigating
risks associated with information anxiety.
In order to investigate the above statement, a lab-based study
was designed and carried out with twenty full-time software
professionals. Participants who took part in this single blind
study were randomly assigned to either the control group or the
experimental group. The control group had access to contextrelevant
and just-in-time information through a second monitor,
while the experimental group viewed the same information
through HoloLens – an enterprise level AR headset (refer to
Figure 1 and 2).
Testers in both groups had to perform exploratory testing on a
newly released e-commerce site (System Under Test) which was
injected with some bugs in the checkout process. Participants
were therefore asked to focus their exploratory testing around that
region. As participants exploratory-tested the system, specific
context-relevant information was provided via the respective
interface (i.e. either second monitor or AR headset). This
information was based on findings from [3], in which information
needs were studied empirically with practitioners.
Results show that the productivity levels of testers using AR
interfaces for context-relevant JIT information were slightly lower
when compared with testers using a second screen monitor.
There are several factors leading to this finding, particularly the
level of familiarity with using a second monitor to interact with
information, as well as the novelty of AR headsets together with
the interaction experience afforded. Cognitive workload during
task performance was, on the other hand, similar for both groups,
which provides an interesting insight into the potential of AR
headsets for productivity tasks in this domain.
Testing & Verification
Figure 1. HoloLens AR headset
Figure 2. Information rendered in AR
References
[1] M. Micallef, “Investigating Information Anxiety in the Maltese ICT Industry,” University of Malta, 2018.
[2] S. Borg, “Augmented Reality in Exploratory Testing Activities,” University of Malta, 2017.
[3] S. Catania, “An Extensible Framework for Human Centred Software Testing,” University of Malta, 2017.
L-Università ta’ Malta | 31
Usability Study of Animated and Static Banner Ads on a
Mobile News Website
Nathan Galea
Supervisor: Dr Colin Layfield
Course: B.Sc. IT (Hons.) Software Development
Testing & Verification
News Websites are a great way to deliver information. From
breaking news to the latest trends, they have proven to be a
very efficient way to relay information quickly, with the push of
a button. When news websites found an additional medium to
deliver their content, it became easier to relay that information,
as many users carry a mobile phone. This provides a good
opportunity for marketers to advertise their products through
these websites, but advertising on a mobile device can be
particularly challenging due to mobile devices’ size limitations
[1,2] compared to desktop interfaces.
In this project, two experiments were conducted to see
how advertisements can influence the usability of a mobile
news website when conducting daily tasks like reading and
form filling in terms of effectiveness, efficiency and satisfaction
(ISO9241). This study consists of a news website design with
articles containing either no adverts, static adverts or animated
adverts. We utilised these three website variants to observe the
effects of adverts on a mobile news website. The experiments
were carried out using eye tracking technology and the think
aloud method, where both experiments followed a withinsubjects
design (Figure 1). Each participant experienced all the
website variants, however the order of the websites changed
depending on the group assigned.
The eye tracking experiment provides heatmaps and
gaze plots which show that adverts were not fixated on, and
even when participants did look at the advert, it was only for
a very short time before shifting their gaze back to the text.
Eye tracking results show no significant difference between
the three website variants based on timings. When looking at
the SUS scores, neither the think aloud nor the eye tracking
experiments showed significant difference between the three
websites (Figure 2).
Figure 1. Experiment Setup
Figure 2. Error Bar Graphs
References
[1] D. Lobo, “Web Usability Guidelines For Smartphones: A Synergic Approach,” International Journal of Information and Electronics
Engineering, 2011. DOI: 10.7763/IJIEE.2011.V1.5.
[2] M. Shitkova, J. Holler, T. Heide, N. Clever, and J. Becker, “Towards Usability Guidelines for Mobile Websites and Applications,” Wi,
no. 2015, pp. 1603–1617, 2015.
32 | Faculty of Information and Communication Technology Final Year Projects 2019
Responding to PowerShell Attacks
Neil Sciberras
Supervisor: Dr Mark Joseph Vella
Course: B.Sc. (Hons.) Computing Science
PowerShell has become such a ubiquitous tool, that it is found in
all Windows environments spanning from personal computers to
large corporate networks. It offers an interactive, object-oriented
shell ported to the .NET Framework, [1] which makes it different
from other text-based shells. It facilitates the administration
of very large corporate networks, allowing administrators to
seamlessly issue commands remotely on other computers.
Complemented with Windows Management Instrumentation
(WMI), PowerShell is an even greater asset: it gives access to
every imaginable resource on a device and across the network.
Having become such an established tool, it is installed by default
on all modern Windows operating systems.
Just as PowerShell gained its popularity, fileless malware
has become a trend in modern day cyber attacks. Unlike
traditional malware, which requires that malicious programs
are installed on the target machine prior to execution, fileless
malware often exploit already installed tools [2]. Furthermore,
payloads are directly loaded and executed into memory and
never touch the disk. Hence, the only evidence lives for a very
short time in memory.
This project focuses on investigating WMI attacks through
PowerShell in an incident response scenario. PowerShell and WMI
being both whitelisted [3] by conventional anti-malware tools, and
also promoting stealth, have become an attacker’s favourite. PS-
Investigate, the designed memory forensics solution, is based
on the study of the underlying Component Object Model (COM)
objects produced by the WMI activity. It provides an acquisition
solution, depicted in Figure 1 as part of PS-Investigate, which
dumps a sample of PowerShell’s memory containing the studied
artifacts. The dumping is narrowed down by first locating the
sections in memory where the said objects reside, and then using
two specific trigger points to invoke the dumping procedure. This
also helps in keeping the dump size as small as possible.
The analysis stage then makes use of an observed pattern
to extract the useful information. The results achieved by PS-
Investigate are comparable to the results obtained by the Event
Tracing for Windows (ETW). PS-Investigate, though, enjoys a
reduced Trusted Computing Base (TCB), making it more secure
and reliable. Although some overhead is introduced, its results
provide a good level of information, even when compared to ETW.
Testing & Verification
Figure 1. PS-Investigate
References
[1] Getting started with windows powershell — microsoft docs. https://docs.microsoft.com/en-us/powershell/scripting/gettingstarted/getting-started-with-windows-powershell?view=powershell-6,
2017. Accessed: 2019-06-5.
[2] S. Mansfield-Devine. Fileless attacks: compromising targets without malware. Network Security, 2017(4):7–11, 2017.
[3] S. M. Pontiroli and F. R. Martinez. The tao of .net and powershell malware analysis. In Virus Bulletin Conference, 2015.
L-Università ta’ Malta | 33
Identification of Alien Objects Underwater
Stephanie Chetcuti
Supervisor: Prof. Matthew Montebello | Co-Supervisor: Prof. Alan Deidun
Course:B.Sc. IT (Hons.) Artificial Intelligence
Deep Learning
Artificial Neural Networks and Deep Learning approaches have
proven their capabilities in in-air imagery [1, 2, 3, 4] and, as a
result, this has sparked an interest to use these approaches and
train these same models on underwater images [2]. However,
collecting a large enough dataset is a tedious task which is often
deemed infeasible, while attempting to train a model on a small
sample size will lead to over-fitting. Overcoming these challenges
would render this technology useful for a variety of different fields
ranging from the environmental, through ocean clean ups; the
economical, through pipeline inspections; the historical, through
underwater archaeology; and a variety of other fields.
To overcome the problem of over-fitting, the approach taken
in this project was to use a transfer learning technique, with the
argument that Convolutional Neural Networks (CNN) are not
only classifiers but are also feature extractors. Hence, a CNN
trained on a large dataset of in-air images will be sufficient to
classify objects in underwater scenes after some fine-tuning
using images taken underwater, since the pre-trained model will
already be sensitive to information such as colours, textures and
edges [3, 1, 5]. Since no dataset was available, images had to be
gathered and annotated manually. This dataset was divided into a
70:30 ratio to obtain a training set and a test set. The model was
trained to be able to detect and classify two classes of objects:
bottles (made from both glass and plastic) and tyres.
Mask R-CNN [6] is the model chosen for this project, which
was pre-trained on the COCO dataset [7]. Mask R-CNN makes use
of ResNet-FPN as the feature extractor. These features are then
passed to the first of two stages: the Region Proposal Network
(RPN), which proposes candidate boxes. These are in turn passed
onto the second stage, which outputs the class, bounding box
refinement, and mask for each of the candidate boxes.
The model was evaluated using Mean Average Precision, and
the results obtained, while not surpassing the current state-ofthe-art,
were promising. The final mAP achieved over all classes
was of 0.509, where APs of 0.616 and 0.442 were achieved for the
bottles and tyres classes respectively.
Figure 1. Output given by the model where it is detecting a bottle
Figure 2. Output given by the model where it is detecting tyres.
References
[1] X. Yu and X. Xing and H. Zheng and X. Fu and Y. Huang and X. Ding, “Man-Made Object Recognition from Underwater Optical
Images Using Deep Learning and Transfer Learning,” 2018 IEEE International Conference on Acoustics, Speech and Signal
Processing, ICASSP 2018, Calgary, AB, Canada, April 15-20, 2018, pp. 1852--1856, 2018.
[2] Y. Gonzalez-Cid and A. Burguera and F. Bonin-Font and A. Matamoros, “Machine learning and deep learning strategies to identify
Posidonia meadows in underwater images,” in OCEANS 2017, Aberdeen, 2017.
[3] L. Jin ,H. Liang, “Deep learning for underwater image recognition in small sample size situations,” in OCEANS 2017, pages 1-4,
Aberdeen, 2017.
[4] O. Py and H. Hong and S. Zhongzhi, “Plankton classification with deep convolutional neural networks,” IEEE Information Technology,
Networking, Electronic and Automation Control Conference, pp. 132-136, 2016.
[5] D. Levy and Y. Belfer and E. Osherov and E. Bigal and A. P. Scheinin and H. Nativ and D. Tchernov and T. Treibitz, “Automated
Analysis of Marine Video With Limited Data,” in 2018 IEEE Conference on Computer Vision and Pattern Recognition Workshops,
CVPR, pages 1385-1393, Salt Lake City, 2018.
[6] K. He and G. Gkioxari and P. Dollàr and R. B. Girshick, “Mask R-CNN,” in IEEE International Conference on Computer Vision, ICCV,
pages 2980-2988, Venice, 2017.
[7] T. Lin, M. Marie, S. J. Belongie, J. Hays, P. Perona, D. Ramanan, P. Dollàr, C. L. Zitnick, “Microsoft COCO Common Objects in
Context,” in Computer Vision - ECCV 13th European Conference, pages 740 - 755, Zurich, 2014.
34 | Faculty of Information and Communication Technology Final Year Projects 2019
Emotion Recognition from Static Images
Chris Bonnici
Supervisor: Dr. Inġ. Reuben Farrugia
Course: B.Sc. (Hons.) Computer Engineering
Figure 1. Pipeline of the proposed emotion recognition method.
Deep Learning
Nowadays, automation using artificial intelligence is being
introduced across a wide spectrum; from households to large
enterprises. Analysing human emotion from facial expressions
may be perceived as an easy task for human beings, but the
possibility of uncertainties still exists and can be completely
subjective in some cases. Automatically identifying human
emotions is even trickier and it has been a known problem
in computer vision. This human-computer interaction has
yet to reach the performance levels of other computer vision
recognition and classification challenges such as face, age and
gender recognition.
Multiple research endeavours have been concluded in
an effort of obtain good performance metrics of emotion
recognition in un-posed environments [1], [2], [3]. Despite these
works, it still remains an open research problem as it has not
reached the quality of other classification tasks. The challenge
lies within the amount of data needed to train such deep
learning architectures and the respective quality. This report
describes an emotion recognition model whose main aim is to
use artificial intelligence to classify emotions from static facial
images. This will allow automatic machine classification of
fundamental facial expressions.
In this work, two Convolutional Neural Network (CNN)
architectures, VGG-Face and ResNet-18, will be trained using
transfer learning methodologies for the purpose of recognizing
emotion from static images. These neural architectures will be
Figure 2. Examples from the FER2013 dataset.
evaluated on two different datasets, AffectNet [4] and FER2013
[5], which pose different challenges. The main aim is to discover
in more detail the primary challenges of this research problem
and implement a deep learning architecture for classification.
The implemented VGG-Face and a modified ResNet-18
architecture achieved a top-1 accuracy of 71.2% and 67.2%
respectively on FER2013 Dataset. Results on the AffectNet
Dataset were of 58.75% with VGG-Face and 55.2% with a modified
ResNet-18. This demonstrated that transfer learning from a closepoint
is a highly effective method to obtain better performance
without the need to fully train a network. Higher accuracies were
achieved in detecting some individual emotions. Furthermore,
from these results, it can be concluded that certain emotions
were incorrectly identified by the classifier.
References
[1] M. Pantic and L. J. M. Rothkrantz, “Facial action recognition for facial expression analysis from static face images,” IEEE
Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics) vol. 34, pp. 1449–1461, June 2004.
[2] A. Ali, S. Hussain, F. Haroon, S. Hussain, and M. F. Khan, “Face recognition with local binary patterns,” 2012
[3] G. Levi and T. Hassner, “Emotion recognition in the wild via convolutional neural networks and mapped binary patterns,” in Proc.
ACM International Conference on Multimodal Interaction (ICMI), November 2015.
[4] Mollahosseini, B. Hassani, and M. H. Mahoor, “Affectnet: A database for facial expression, valence, and arousal computing in the
wild,” CoRR, vol. abs/1708.03985, 2017
[5] Challenges in representation learning: A report on three machine learning contests,” in Neural Information Processing, (Berlin,
Heidelberg), pp. 117–124, Springer Berlin Heidelberg, 2013.
L-Università ta’ Malta | 35
Document Segmentation using Deep Learning
Kurt Camilleri
Supervisor: Prof. Inġ. Adrian Muscat | Co-Supervisor: Dr Inġ. Reuben Farrugia
Course: B.Sc. (Hons.) Computer Engineering
Deep Learning
In recent years, with the rise of computational power and the
growing popularity of artificial intelligence, the fields in data
analysis have increased significantly. Big leaps forwards have
been made with regard to object detection, such as locating
a receipt in an image and in computer vision more generally.
However, data analysis for unstructured data, such as parsing
text from a receipt, remains a challenge and little research has
been conducted in this area. Receipts are especially challenging
since there is no standard format for text placement or keywords
such as ‘total’, which differ from one vendor to another. The
dissertation discusses and explores an image-based and a textbased
implementation in order to extract key details such as Shop
name, Date of the receipt, VAT number and Total from a receipt.
The aim of this project is to segment a document, more
specifically, a receipt, and extract important information from
the image. Important information could include the company/
shop name, shop information, items, pricing, date and total.
This system can be used in for example (a) data analytics, and
(b) to facilitate data input, through the automatic detection and
completion of the fields.
An image-based model was first created using five layers
of convolutional neural networks trained specifically to search
for a shop name, VAT number and total amount. The second
implementation created consists of a two-part network, both
parts using an LSTM layer, where the characters extracted using
an OCR are analysed by the network and the input is classified as
a shop name, date, VAT, total or listed as “other”.
The image-based model acts as a proof of concept and with
enough time and training data, it could be a viable solution in the
future. On the other hand, the text-based model has managed to
yield promising results. The tests conducted include a comparison
of this model with two other existing products on the market and
the results are considered a success.
(a)
(b)
Figure1. (a) Example of OCR result after filtering extra information, and (b) output from the CNN model.
36 | Faculty of Information and Communication Technology Final Year Projects 2019
INfORmER: Identifying local News articles related
to an Organisational Entity and its Remit
Dylan Agius
Supervisor: Dr Joel Azzopardi | Co-Supervisor: Mr Gavril Flores
Course: B.Sc. IT (Hons.) Artificial Intelligence
Nowadays, the general public has the benefit of accessing a vast
amount of information [4] and articles on the internet. This can
lead to an ‘information overload’ problem [1]. There are several
organisations that on a daily basis must go through all local online
newspapers, in order to check whether there are any articles that
are relevant to their organisation in some way. This is a very timeconsuming
and repetitive job [2] that is prone to many human
errors or intra-individual variability when performed manually. It
is for this reason that there is an ever-growing need for a reliable
and efficient article recommender system that takes care of the
tedious job of going through local news articles and automatically
choosing the ones that are relevant to the organisation.
Throughout this research, we investigate similar article
recommender systems and also develop a system based on
classification to assist users recommend articles from local
newspapers without having to go through the trouble of reading
numerous and possibly lengthy articles. Hence, we created
INfORmER, a system that uses a wrapper induction algorithm to
scrape local newspapers. Using several different pre-processing
techniques, such as random oversampling [3] and word weighing
(empowerment) combined with a hybrid ensemble classifier,
the system evaluates which articles to recommend. Multiple
classifiers such as KNN and SVM were tested with numerous
pre-processing techniques like stemming and stop word removal,
and these techniques were combined to create 6 different preprocessing
sets. Around 17,000 tests were performed to find
which combination of classifiers and pre-processing sets gave
the best results. The use of multiple classifiers in a system is
evaluated, therefore experiments were run on a different number
of classifiers so that the optimal number of classifiers and their
combination was found. INfORmER also provides the option to
automatically send an email with the articles it deems relevant.
The system developed employs a hybrid ensemble classifier
technique which uses an ensemble classifier with union voting
and another ensemble with majority voting and cosine similarity
techniques. These recommendation candidates are then
combined through a majority voting classifier.
A daily averaged dataset was compiled for the final classifier
evaluation. The articles from this dataset were given to a human
classifier day by day to better understand how the system
proposed will behave in a real-world scenario. The F1-score that
INfORmER reported when tested on the daily averaged dataset
was 59.65%. The best result generated from the traditional
cosine similarity technique was 38.88%, meaning that INfORmER
gave a 20% better F1-score over the cosine similarity technique.
Finally, a user study was carried out where the human annotator
was given a set of articles that she deemed irrelevant but the
hybrid ensemble classifier deemed relevant. From this user
study, it was concluded that the hybrid ensemble classifier not
only recommended the majority of the relevant articles, but also
recommended articles which the human annotator initially said
were irrelevant, but which turned out to be indeed relevant.
Data Science
Figure 1. High level design of INfORmER.
References
[1] P. R. Y. Jiang, H. Zhan, and Q. Zhuang. Application research on personalized recommendation in distance education. In 2010
International Conference on Computer Application and System Modelling (ICCASM 2010), volume 13, pages V13–357–V13–360,
Oct 2010.
[2] Y. Jiang, Q. Shen, J. Fan, and X. Zhang. The classification for e-government document based on svm. In 2010 International
Conference on Web Information Systems and Mining, volume 2, pages 257–260, Oct 2010.
[3] Alejandro Moreo, Andrea Esuli, and Fabrizio Sebastiani. Distributional random oversampling for imbalanced text classification. In
Proceedings of the 39th International ACM SIGIR Conference on Research and Development in Information Retrieval, SIGIR ’16,
pages 805–808, New York, NY, USA, 2016. ACM.
[4] G. Song, S. Sun, and W. Fan. Applying user interest on item-based recommender system. In 2012 Fifth International Joint
Conference on Computational Sciences and Optimization, pages 635–638, June 2012.
L-Università ta’ Malta | 37
Automatically Resolving Forward-References in Article
Headlines to Identify Clickbait
Rafael Warr
Supervisor: Dr Chris Staff
Course: B.Sc. IT (Hons.) Artificial Intelligence
Data Science
Today, journalists have to take several linguistic features into
consideration when publishing material online to draw users’
attention, motivate engagement, and ultimately increase potential
for commercial revenue [1]. For instance these would include
bold claims, such as “Cure to cancer found”, taboo headlines
written purposely to provoke certain people, or titles that are
simply gossip or hearsay such as an alleged scandal concerning
a celebrity or politician [1]. Consequently, clickbait has become
an ongoing problem. It floods our news feeds and is even being
used by trustworthy newspaper websites [2]. This not only is
cause for annoyance, but also presents misleading information to
the user. The identification process of clickbait headlines can be
somewhat arduous given the different amount of strategies used
to create them. It would therefore be convenient if a common
underlying structure within clickbait headlines could be found.
This would mean that a simple yet accurate approach could play
a key role in filtering such headlines out of users’ news feeds and
internet searches.
A technique which is rarely researched but commonly used
by journalists is forward referencing [1]. The knowledge base
essentially consists of entities referring to mentions in the text
which succeed them and are usually more specific. Generally
they take the form of pronouns, common nouns/noun phrases
and proper nouns/proper noun phrases. An example of this could
be the headline “She has managed to do it again, incredible”. The
identity of the person is not known at this point and in addition
neither is it known what “She has managed to do again”. Entities
in the headline are referring to more specific mentions within
the article body, hence the hypothesis of this dissertation, is
that if such forward referring entities within the headline can
be detected, then this could be a way of identifying “clickbaity”
headlines. An expert system was implemented where a list of
rules was manually produced, built on the knowledge base of
forward referencing. Given this information a forward referencing
Figure1.Owner refers to Jamie while dog and it both refer to Bobo.
score is given to the headline in order to indicate the level of
clickbait within the title. This is achieved by detecting forward
referring entities and assigning an appropriate score to each so
that an average of these scores can be given to the headline itself.
The research concluded that in spite of the fact that
forward referencing is widely used by journalists when writing
article headlines, results obtained by the system were not up to
standard. In addition to this, the database used was very large,
and given that this is an expert system, every single factor has
to be included within the rules constructed [3]. Therefore it can
be said that forward referencing is not sufficient alone to detect
clickbait. This does not mean that it is not a useful technique,
but rather that it is a step in the right direction.
References
[1] Blom, J.N. and Hansen, K.R., 2015. Click bait: Forward-reference as lure in online news headlines. Journal of Pragmatics, 76,
pp.87-100.
[2] Potthast, M., Köpsel, S., Stein, B. and Hagen, M., 2016, March. Clickbait detection. In European Conference on Information Retrieval
(pp. 810-817). Springer, Cham.
[3] Waltl, B., Bonczek, G., and Matthes, F., 2018. Rule-based Information Extraction: Advantages, Limitations, and Perspectives, in:
Jusletter IT 22. February 2018
38 | Faculty of Information and Communication Technology Final Year Projects 2019
Analysis of online behaviour to ensure the appropriate use
of web-based systems
Damian Lee Callus
Supervisor: Dr Lalit Garg | Co-supervisor: Dr Peter Albert Xuereb
Course: B.Sc. IT (Hons.) Computing and Business
The objective of the project was set out after identifying specific
weaknesses in online verification systems designed to keep
certain vulnerable user groups safe online. These user groups
include underage users, users who are feeling tired, and users
under the influence of alcohol. An experimental application was
developed using the Django web framework. This consisted of
four different tests analysing online behaviour and cognitive
performance metrics which were established as being able
to differentiate these vulnerable user groups from other nonvulnerable
user groups (see Figure 1).
As mentioned above, the three vulnerable user groups
identified were underage users, users under the influence of
alcohol, and tired users. Participants who fall under one of the
three aforementioned user groups were mainly recruited by
word of mouth. Most of the participants who were invited to
take part in this research included relatives and friends. In total,
43 participants were engaged, and agreed to take part in this
research. Out of the 43 participants, 11 were under 18 years
of age, 13 others carried out the test under the influence of
alcoholic substances which they consumed by their own accord
and at their convenience, and overall, 23 classified themselves
as being quite to severely fatigued.
The application was deployed on a ‘Heroku’ cloud server
live environment where the participants engaged were able to
carry out a test. After all the participants had participated in
the test, the data was gathered, analysed, and optimized. Using
RapidMiner, a series of machine learning tests were then run on
the normalized data to analyse how well predictive models were
able to attribute the results of a test to a specific user group.
The four machine learning models chosen for data
analysis included the naïve Bayes classification model, the
k-nearest neighbour model, the random forest model, and the
deep learning model. Out of the four machine learning models
chosen, the random forest model performed the best across the
three user groups analysed.
The machine learning models analysed performed most
effectively on the data set gathered from participants under
the age of 18. Overall, this project was successful in tackling
the research question since the application developed novel
methods to recognise the three vulnerable user groups identified
previously. From the results obtained during data analysis, one
can conclude that such methods can be efficiently used to
help detect vulnerable user groups when accessing web pages
containing high-risk content.
Data Science
Figure 1. The above screenshot illustrates the second out of the four tests developed which the users had to carry out when participating in this study.
L-Università ta’ Malta | 39
AI Assisted Learning (AIAL)
Lara Caruana Montaldo
Supervisor:Prof. Alexiei Dingli
Course: B.Sc. IT (Hons.) Artificial Intelligence
Data Science
Education is currently facing various challenges. Teachers
acknowledge that each student is unique, but teaching methods
are targeted towards the whole class, making it difficult for
teachers to cater to the needs of individual students.
The AI Assisted Learning (AIAL) system was designed to
provide a personalized learning experience. It consists of two
parts: the web-based application and the Generative Adversarial
Network (GAN) simulation. The K-Nearest Neighbors AI
algorithm was implemented in the app in order to choose
the following question while the GAN, consisting of a Bidirectional
LSTM (generative model) and a classification model
(discriminator), simulates students answering an Addition and
Subtraction worksheet (learning) thereby evaluating student
performance without the need to perform a longitudinal study.
The AIAL browser-based application is aimed at both
teachers and students and was specifically designed to be
used on their tablets. It generates personalized Mathematics
classwork and homework worksheets for primary school
students aged between 8 and 10 years. Students can
immediately view the results of the completed worksheets
and unlock trophies. Teachers may use the app to create their
own exercises or utilize the preloaded curricula. The AIAL app
was tested in five schools in Malta; on a total of 280 students.
Students were randomly divided into 4 test groups; one control
group and the other three groups that used the app at school
and/or at home. Teachers used the Blueprint Designer and
Teacher Dashboard sections of the app. Both students and
teachers answered separate questionnaires regarding their
experience using the app.
When the pre-test and post-test results were compared,
it was noted that low-performing students who used the app
benefitted the most, with a 23.2% improvement (on average),
while there was no significant difference (no improvement)
between the test results of the Control Group. From the
questionnaire responses, it resulted that 71.9% of the students
preferred working out the worksheets on the AIAL app rather
than on paper. The teachers surveyed agreed that the app is
easy to use and a useful resource. Although the system is still
in its primary stages of development, the initial results are very
promising.
Figure 1: Blueprint Designer
Figure 2: Student Worksheet
References
[1] L. A. Outhwaite, A. Gulliford, and N. J. Pitchford, “Closing the gap: efficacy of a tablet intervention to support the development
of early mathematical skills in uk primary school children,” Computers & Education, vol. 108, pp. 43–58, 2017.
[2] C. A. Tomlinson, “Mapping a route toward differentiated instruction,” Educational leadership, vol. 57, pp. 12–17, 1999.
[3] M. Zhang, R. P. Trussell, B. Gallegos, and R. R. Asam, “Using math apps for improving student learning: An exploratory study in an
inclusive fourth grade classroom,” TechTrends, vol. 59, no. 2, pp. 32–39, 2015.
40 | Faculty of Information and Communication Technology Final Year Projects 2019
A Machine Learning Framework for Code Optimisation
Brandon Abela
Supervisor:Dr Sandro Spina | Co-supervisor: Dr Joshua Ellul
Course: B.Sc. (Hons.) Computing Science
Traditional compilers take programs written in a high-level
programming language and transform them into semantically
equivalent machine code. Along this pipeline, the optimisation
stage of the compiler carries out transformations on the code,
which try to improve on the speed and size of the resultant
target program. These optimisation passes are carried out
iteratively, with each pass searching for potential improvements
of the target program. Programmers can specify which of these
optimisations to carry out during compilation of their source
code by passing a sequence of flags to the compiler.
This project investigates whether machine learning
techniques, specifically those based on an evolutionary approach,
are able to improve on the standard optimisation sequences
(e.g. -O3) available with popular compilers such as GCC and
LLVM. This is done through the design and implementation of a
Genetic Algorithm Framework (GAF) which searches for specific
flag sequences that optimise for compilation time, executable
file size, execution time, or a combination of these, as shown
in Figure 1. The GAF is controlled through multiple parameters
such as; population size, selection function and adjustment of
sequence length, which affect the navigation through the search
space. Searching for these sequences is time- consuming since
this requires compiling and executing the given program using
a large number of sequences, as mentioned by Cooper et al. [1],
Ballal et al. [2] and Kukunas et al. [3]. Optimal flag sequences
are then tested on other programs in order to verify whether
the identified sequence actually improves the target programs
produced.
GAF was tested on real-life applications while comparing
the results from varying individual parameters, a combination
of parameters based on the individual parameter performance,
and applying identified optimisation sequences on unseen
programs, as shown in Figure 2. The framework achieved
13.98% better performance on average than the -O3 flag
sequence offered by the LLVM compiler when applying one of
the identified optimisation sequences. Three sequences were
identified which optimise compilation time, executable file size
and execution time individually, resulting in a 10.18%, 2.58% and
a 28.97% average improvement from the -O3 sequence provided
by the LLVM compiler.
Data Science
Figure 1. Framework Training.
Figure 2 - Results obtained when optimising for build time, file size and execution time
References
[1] P. A. Ballal, H. Sarojadevi and P. S. Harsha, “Compiler optimization: A genetic algorithm approach,” International Journal of
Computer Applications, vol. 112, 2015.
[2] K. D. Cooper, P. J. Schielke and D. Subramanian, “Optimizing for Reduced Code Space Using Genetic Algorithms,” in Proceedings of
the ACM SIGPLAN 1999 Workshop on Languages, Compilers, and Tools for Embedded Systems, New York, NY, USA, 1999.
[3] K. Hoste and L. Eeckhout, “Cole: Compiler Optimization Level Exploration,” in Proceedings of the 6th Annual IEEE/ACM International
Symposium on Code Generation and Optimization, New York, NY, USA, 2008.
L-Università ta’ Malta | 41
Depth Estimation using Light Field Cameras
Roderick Micallef
Supervisor:Dr Inġ. Reuben Farrugia
Course: B.Sc. (Hons.) Computing Science
Data Science
Light field imagery has become a popular field in computer
vision due to the increasing accessibility of both hardware and
software available for capturing and rendering. The modern light
field representation consists of four dimensions, which are the
2D spatial dimensions, and the 2D angular dimensions. The 2D
angular dimensions describe the direction of the light rays received,
while the 2D spatial dimensions describe their intensity values.
Alternatively, it can be explained as having multiple views of the
same scene from different viewpoints. Compared to traditional
photography, the addition of the angular direction of the light rays
allows several features to be extracted from the scene, such as
volumetric photography, video stabilisation, 3D reconstruction,
refocusing, object tracking, and segmentation. Until recently,
capturing light fields using traditional methods had proven difficult
and cost prohibitive due to the use of multiple stacked cameras.
Technological advancements have led to the Plenoptic camera,
which makes use of a micro-lens array between the sensor and
lens of a traditional camera to capture the individual light rays.
This progress has led to the commercialisation of light fields, with
industrial hardware solutions being used for microscopy, video
capture, and high-resolution imagery [1].
The basis for the majority of solutions offered by the light field
relies on extracting the depth information to function. Challenging
difficulties remain in spite of technological progress. To capture
these additional viewpoints, there is a trade-off in the image
quality due to the lower resolution of each view. Additionally, due
to the increased dimensionality, there is a significant increase in
computational complexity for processing this data. This project
aims to make use of the epipolar geometry of light fields to obtain
the depth information. Depending on the depth of the object, the
disparity between views can be minimal if the object is further
from the observer or significant if the object is closer to the
observer [2]. By stacking horizontal lines from the horizontal
views, or vice-versa for vertical lines and views, one can see the
movement of objects across the views as lines. By taking the
angle that these lines make with the axis, the depth information
can be extracted.
The goal is to have more accurate depth estimation around
the edges of objects set at different depths. The theory behind
this is based on the assumption that vertical edges are defined
better when considering the vertical views, and vice-versa for
the horizontal views since other objects do not occlude them.
The results are compared using the HCI benchmark [3], which
provides synthetic real-life scenarios along with their true depth
as well as several measurements targeted for light field depth
estimation algorithms.
Figure 1. The result of the algorithm when applied to the ‘Dino’ Scene. The left image shows the centre view of the scene, and the right image shows the resulting
disparity. Disparity is a measurement of the difference in depth between objects in the scene.
References
[1] RayTrix. [Online]. Available: https://raytrix.de/.
[2] R. C. Bolles, H. H. Baker and D. H. Marimont, “Epipolarplane image analysis: An approach to determining structure from motion,”
in INTERN..1. COMPUTER VISION, 1987, pp. 1-7.
[3] K. Honauer, O. Johannsen, D. Kondermann and B. Goldluecke, “A Dataset and Evaluation Methodology for Depth Estimation on 4D
Light Fields,” in Asian Conference on Computer Vision, Springer, 2016.
42 | Faculty of Information and Communication Technology Final Year Projects 2019
Improving the Performance of Machine Learning
Algorithms Through Increasing Dataset Size
Clayton Agius
Supervisor:Dr Michel Camilleri | Co-Supervisor: Mr Joseph Bonello
Course: B.Sc. IT (Hons.) Software Development
Machine learning – a very important field in computer science
– is utilized in many scientific domains and an ever-widening
range of human activities. Its main objectives are to enable
a machine to learn from past data, to construct accurate
predictive models, and to apply these models to a variety of
problems, such as classification. This ability has proven to be
very effective in a variety of applications, such as in healthcare
and business [1]. One of the most important factors that
determines if a Machine learning algorithm is successful in
building a good predictive model or not, is the data available
for analysis. Due to the enormous growth in computer
applications and communications, nowadays we are seeing a
shift from having a limited amount of available data to more
data that we can store, analyse and process [2][3][4].
The main aim of this study was to investigate the effect
of increasing the dataset size given to a machine learning
algorithm. This was seen through a series of purposely
designed experiments based on a selection of datasets,
machine learning algorithms, preprocessing and evaluation
techniques. Each dataset used was split up into a number
of increasing segment dataset sizes, each of which was
analysed and evaluated in terms of accuracy, costs and other
perspectives.
Each experiment yielded a range of results which led to a
set of conclusions of interest. As expected, when increasing
the dataset size, the costs (such as the time taken to train the
machine learning algorithms and the associated processing
power needed) increased. However, the performance of the
machine learning algorithms did not always increase as the
dataset size grew.
Furthermore, the application of different machine learning
algorithms, preprocessing and evaluation techniques used,
had an important effect on the performance and costs when
increasing the dataset size. When dealing with a substantially
large dataset, it might be beneficial to analyse and scale up
from a smaller sample size. This might lead to a desirable
outcome without going for the larger dataset size, hence
reducing the time and resources required for the analysis.
Data Science
Figure 1. Methodology used for the set of experiments implemented in this study.
References
[1] Nayak, A., & Dutta, K. Impacts of machine learning and artificial intelligence on mankind. 2017 International Conference on
Intelligent Computing and Control (I2C2), Coimbatore, 2017, pp. 1-3.
[2] Dalessandro, B. (2013). Bring the Noise: Embracing Randomness Is the Key to Scaling Up Machine Learning Algorithms. Big Data,
1(2), 110-2.
[3] Joy, M. (2016). Scaling up Machine Learning Algorithms for Large Datasets. International Journal of Science and Research (IJSR),
5(1), 40–43.
[4] Yousef, W. A., & Kundu, S. (2014). Learning algorithms may perform worse with increasing training set size: Algorithm-data
incompatibility. Computational Statistics and Data Analysis, 74, 181–197.
L-Università ta’ Malta | 43
Determining the Best Business Intelligence Solution
according to User Requirements
Francesca Camilleri
Supervisor:Dr Lalit Garg
Course: B. Sc. IT (Hons.) Software Development
Data Science
There are three main categories of BI implementations to choose
from; BI On-Premise, BI Cloud, and BI Hybrid. For each category,
there are different elements that affect which solution is most
suitable. In this study, different characteristics of a business were
identified as factors which might affect the decision of which BI
implementation an organisation should go for. By considering
these aspects, the most suitable implementation can be chosen.
A tool was developed to guide businesses on which type of BI
implementation they should choose.
To achieve the main objectives of this study, a model
was built for each BI architecture, to better understand the
main differences between each architecture. Then, the main
characteristics that should be considered to decide on the best
BI implementation were established after reviewing various
research papers. Moreover, a dataset was generated using a
method developed by Misra and Mondal [1]. Another dataset
was also generated through a questionnaire where the questions
reflected the attributes to be passed through the classification
algorithms. These generated datasets were added together to
form one whole set. Then, the k-fold cross-validation [2] was used
to split this set into different training and testing datasets. These
were used to train and test the implemented decision tree and
SVM algorithms [3]. From the testing sets, the accuracy of the
classification algorithms was evaluated.
The overall accuracy obtained by the decision tree was
76.36%. The overall accuracy obtained by the SVM was 74.99%.
Thus, in this study, if a decision tree was to be used, it is more
likely that the appropriate implementation will be selected. In
most cases, whenever a record was incorrectly predicted, there
weren’t any two-level jumps. This means that if a testing record
was labelled as On-Premise and was predicted incorrectly, the
incorrectly predicted value was Hybrid BI, not Cloud BI, in most
cases. This is significant because there is a much higher jump
from On-Premise to Cloud when compared to On-Premise to
Hybrid. The same goes for records in the testing set labelled as
Cloud BI that were predicted wrongly.
Figure 1. On-Premise BI.
Figure 2. Cloud BI.
References
[1] S. C. Misra and A. Mondal, “Identification of a company’s suitability for the adoption of cloud computing and modelling its
corresponding Return on Investment,” Mathematical and Computer Modelling, vol. 53, no. 3-4, pp. 504-521, 2011.
[2] G. Vanwinckelen and H. Blockeel, “On Estimating Model Accuracy with Repeated Cross-Validation,” in Proceedings of the 21st
Belgian Dutch Conference on Machine Learning, 2012.
[3] J. Akinsola, “Supervised Machine Learning Algorithms: Classification and Comparison,” International Journal of Computer Trends
and Technology (IJCTT), vol. 48, no. 3, pp. 128-138, 2017.
44 | Faculty of Information and Communication Technology Final Year Projects 2019
Ontology Portal
Matthew Drago
Supervisor:Mr Joseph Bonello | Co-Supervisor: Prof. Ernest Cachia
Course: B.Sc. IT (Hons.) Software Development
Biological curation is the cornerstone of modern Computational
Biology. Specialised Biocurators can be likened to the museum
catalogers in the world of Computational Biology. They turn
unidentifiable objects from unwieldy mediums into a powerful
model from which researchers can benefit from[1].
Our hypothesis premises that through property graphs, it
is possible to model properties of ontologies such that they
can be used by text mining algorithms to find appropriate ways
to formally describe complex interactions in biology. Moreover,
we hypothesise that it is possible to use domain-specific
ontologies to describe such relations in biological literature.
In order to achieve our aims we obtained a number
of ontologies from OBO Foundry, which is a repository of
biological ontologies that are logically well-formed and
scientifically accurate[2]. A subset of interactions in our
Knowledge Graph were validated against the Chemical
Disease Relationship(CDR) dataset[3]. The CDR dataset is
a curated set of PubMed abstracts describing chemical to
disease interactions.
We created a Python library that encapsulated an NLP
pipeline to automatically extract Subject-Verb-Object tuples as
shown in Fig 1. The subjects and objects are further enriched
by getting the best term representing them from the Ontology
Store. Relations whose subject and object are represented in
the Ontology Store are represented in our Knowledge Graph
as shown in Fig 2. The Knowledge Graph uses a standard
defined by Biolink as a ‘schema’. The graphs were stored and
represented using two Neo4j graph databases orchestrated
through Docker and Docker Compose.
When compared to the CDR dataset, we managed to
achieve an F-Score of 0.25 which is within the baseline margin
of error. There were specific tools that managed to obtain
a better score. However, this result is encouraging and we
believe that with further tweaking we can improve this score
significantly.
Whilst our system obtained scores close to the task
benchmark it requires further enhancements to obtain scores
similar to other teams in the competition. Our scores would
improve if we:
• Replace the <S,V,O> extraction utility with Semantic Role
Labelling;
• Represent ontologies in an RDF Triple Store instead of
Neo4j in order to take advantage of Description Logic and
Ontology Axioms;
• Investigate integrating Elasticsearch for resolving classes
from ontologies.
Data Science
Figure 1. Architectural Block Diagram.
Figure 2. A sub-graph of relationships.
References
[1] P. E. Bourne and J. McEntyre, “Biocurators: contributors to the world of science.,” PLoS computational biology, vol. 2, no. 10, e142,
2006, issn: 1553-358. doi: 10.1371/journal.pcbi.0020142. [Online]. Available: http://www.ncbi.nlm.nih.gov/pubmed/17411327
http://www.pubmedcentral.nih.gov/articlerender.fcgi?artid=PMC1626157
[2] B. Smith, M. Ashburner, C. Rosse, J. Bard, W. Bug, W. Ceusters, L. J.Goldberg, K. Eilbeck, A. Ireland, C. J. Mungall, t. O. OBI
Consortium, N. Leontis, P. Rocca-Serra, A. Ruttenberg, S.-A. Sansone, R. H. Scheuermann, N. Shah, P. L. Whetzel, and S. Lewis, “The
OBO Foundry: coordinated evolution of ontologies to support biomedical data integration.,” Nature biotechnology, vol. 25, no. 11,
pp. 1251–5, 2007, issn: 1087-0156. doi: 10 . 1038 / nbt1346. [Online]. Available: http://www.ncbi.nlm .nih.gov/pubmed/17989687
http://www.pubmedcentral.nih.gov/articlerender.fcgi?artid=PMC2814061.
[3] C.-H. Wei, Y. Peng, R. Leaman, A. P. Davis, C. J. Mattingly, J. Li, T. C.Wiegers, and Z. Lu, “Overview of the BioCreative V Chemical
Disease Relation (CDR) Task,” Proceedings of the Fifth BioCreative Challenge Evaluation Workshop, pp. 154–166, 2015.
L-Università ta’ Malta | 45
Machine Learning Techniques for E-mail Categorization
Steve Stellini
Supervisor:Dr John Abela
Course: B. Sc. IT (Hons.) Software Development
Data Science
It is estimated that, worldwide, around 246.5 billion e-mails are
sent every day [1]. E-mail communication is used by billions of
people every day and is a mission-critical application for many
businesses [1]. E-mail users often feel that they are ‘drowning’ in
e-mails and may start to lose track of what types of e-mails they
have in their inbox. The principal aim of this study is to investigate
the effect that text pre-processing, input encodings, and feature
selection techniques have on the performance of various machine
learning algorithms applied to automatic categorization of
e-mails into given classes. As a reference point, we used the work
done by Padhye [2] who, in her Masters dissertation, compared
the performance of 3 supervised machine learning algorithms -
Support Vector Machine, Naïve Bayes, and J48 for the purpose of
e-mail categorization. Padhye used the Enron e-mail dataset for
this purpose. The data was manually labelled by Padhye herself
into 6 main categories. The categories are; Business, Personal,
Human-Resources, General-Announcements, Enron-Online and
Chain-Mails. Padhye used the WEKA libraries to implement the
3 classification algorithms. Using Padhye’s results as a baseline,
we experimented with different encoding schemes by applying
different text pre-processing (Figure 1) and feature selection
techniques. Significant improvements were achieved on the results
obtained in [2]. The most significant improvement obtained over
that of Padhye [2], was 17.67%, for the Business versus Personal
versus Human Resources classification. Unexpectedly, uni-gram
features performed better than bi-grams, in our experiments. The
average accuracy was increased by 12.76%, when compared to
the average accuracy obtained by Padhye in [2].
Additional experiments were conducted to compare
the difference in accuracy when using normalized and nonnormalized
TF-IDF values. Normalized TF-IDF values, in general,
performed better. A novel classification algorithm, which makes
use of pre-built class models to model different classes available
in the dataset, was also proposed. During the classification, an
unseen e-mail is compared to each class model, giving different
scores to each model according to the similarity between the
e-mail and the model. The class model which obtains the highest
score is considered to be the category that the particular e-mail
should be classified in. The custom classifier also gave better
classification accuracy when compared to the results obtained
by Padhye – albeit not as good as those obtained by the WEKA
algorithms and our feature selection techniques. An average
accuracy improvement of 5.13% was obtained when compared
to Padhye’s results.
The results also highlighted the importance of selecting the
optimal set of features for a machine learning task.
Figure 1. Text Pre-Processing techniques applied on different datasets.
References
[1] The Radicati Group Incorporation, “Email-Statistics-Report, 2015-2019”, A Technology Market Research Firm, Palo Alto, CA, USA,
2015.
[2] A. Padhye, “Comparing Supervised and Unsupervised Classification of Messages in the Enron Email Corpus”, A M. Sc. Thesis
submitted to the Faculty of the Graduate School, University of Minnesota, 2006. Accessed on: 13-Oct-2019. [Online]. Available:
http://www.d.umn.edu/tpederse/Pubs/apurva-thesis.pdf
46 | Faculty of Information and Communication Technology Final Year Projects 2019
Discovering Decisions in Neural Networks
Gabriel Farrugia
Supervisor: Prof. Inġ. Adrian Muscat
Course: B.Sc. (Hons.) Computing Science
Neural networks are typically regarded as black box models due
to the complexity of their hidden layers. Recent advances in
classification problems using neural networks are hindered by
their applicability in solving real world problems due to their lack
of explainability. In critical scenarios where a simple decision is
not enough, reasons to back up each decision are required and
reliability comes into play.
Here, we used a spatial relation dataset of geometric,
language and depth features to train a neural network to predict
spatial prepositions. We attempted to extract explanations by
using Layerwise Relevance Propagation (LRP) on the trained
model to generate relevance measures for individual inputs
over positive instances. This technique redistributes relevance
at each layer in the network, starting from the output and
ending with the input layer relevance measures. The resulting
feature relevance measures are treated as explanations as they
are indicators of feature contributions towards the network’s
prediction.
To generate explanations, a baseline was first generated
as an indicator of global input relevance for the model. Feature
importance was generated by taking the difference of individual
explanations from the baseline explanation.
The feature that contributed most to each spatial
preposition were qualitatively evaluated to check if explanations
followed intuition. The results showed that the explanation
techniques used provided different feature rankings but showed
concurrence for the most relevant feature.
Data Science
input layer
hidden layers
output layer
a (2)
1
input
a (2)
2
31
a (2)
24
24 20 17
output
scores
explanation
R (2)
1
R (2)
2
R (3)
1
R (3)
2
R (2)
24 R (3)
20
R (2)
i
= ∑ j
a (2) w (2)+
i i,j
∑i a(2) w (2)+
i i,j
R (3)
j
L-Università ta’ Malta | 47
Read All About It! A Research Support Tool for
Automatically Finding Relevant Prior and Related Work
and Sequencing it for Reading
Luke Ellul
Supervisor:Dr Chris Staff
Course: B.Sc. IT (Hons.) Artificial Intelligence
Data Science
Research can be intimidating, time-consuming and boring. The
Internet did alleviate the boredom by saving researchers the
trouble of manually searching though endless documents, but
finding relevant academic articles is the ultimate goal. These
documents are written by experts, for experts, and the authors
rarely provide enough background information for non-experts to
understand. Students may end up helplessly trying to grasp the
complicated nature of a document, trying to determine how it fits
into their research. Eventually, they either give up and search for
something else or pursue information that may help make sense
of their confusion.
This project proposes a research tool that automatically finds
prior work associated with a research paper. A paper is inputted
into the tool, and by iterating through the references and the
references of referenced papers the tool builds a dependency
graph of papers and determines an order in which they should
be read. This ensures that subjects introduced in later papers but
explained in earlier papers are understood by the user.
The PageRank algorithm, along with the Katz Distance, vectorspace
models and other algorithms, is used to rank each paper’s
importance. Less important papers are omitted from the timeline
and a visualization indicates to the user which papers are more
important than others.
Since no gold standard is available, this project is a proof of
concept. However, an evaluation was conducted using a silver
standard, where multiple dependency graphs of virtual papers
were used as testing mediums for this project.
Since papers have multiple references, every time we look at a
prior paper the number of papers to inspect grows exponentially.
The user is already confused, and reading through hundreds of
papers to explain a single assertion will confuse her even more.
Paper significance is automatically deduced so that less significant
papers can be omitted.
A user can easily identify the reference section of a random
paper and decipher each reference irrespective of format. Yet,
automatic recognition of different formats and finding the exact
position of the references section of random papers is challenging.
Finally, mining for papers on the web is trivial if they are
obtained from a single digital library. The aim of this project
Figure 1. Timeline Visualization.
is to make studying easier and more fun for academics. The
research tool uses Google Scholar as its primary digital library,
therefore it has the potential to help many academics studying
a wide variety of subjects. However, for testing purposes, a
crawler that can mine papers from the digital library of the
Association for Computing Machinery (ACM) was built. If the
tool works on computer science papers mined from ACM,
therefore it will probably work on papers mined from Google
Scholar and other digital libraries that cover a wide variety of
subjects.
48 | Faculty of Information and Communication Technology Final Year Projects 2019
Interpreting Neural Networks Via Activation Maximisation
Vitaly Volozhinov
Supervisor:Prof. Inġ. Adrian Muscat
Course: B.Sc. (Hons.) Computing Science
Decision trees are models whose structure allows for tracing
an explanation of how the final decision was taken. Neural
networks known as ‘black box’ models do not readily and
explicitly offer an explanation of how a decision was reached.
However, since Neural Networks are capable of learning
knowledge representation, it will be very useful to interpret the
model’s decisions.
In this project, the Visual Relationship Detection problem
will be explored in the form of different Neural Network
implementations and training methods. These implementations
include two Convolutional Neural Network architectures (VGG16
and SmallVGG) and two Feed Forward Neural Networks trained
using Geometric features and Geometric with Language
Features. These models will be treated as two kinds of problems:
one is the Multi-Label Classification problem and the other is the
Single-Label Classification problem.
Activation Maximisation will be used to interpret the different
Convolutional Neural Networks under different training methods
by maximizing a specific class output to visualize what it is
learning. This study is grounded in the recognition of spatial
relations between objects in images. Activation Maximization
will shed light on what models are learning about objects in 2D
images, which should give insight into how the system can be
improved. The spatial relation problem is one where, given a
subject and an object, the correct spatial preposition is predicted.
This problem extends beyond just predicting one correct spatial
preposition as there are multiple possible relationships between
two objects.
Data Science
Figure 1. Activation Maps of a Fine-Tuned VGG16 trained using the Stanford
VRD Dataset
Figure 2.Activation Maps of a Fine-Tuned VGG16 trained using the SpatialVoc2k
Dataset
L-Università ta’ Malta | 49
Heuristic and Meta-heuristic Approaches to Cockpit Crew
Scheduling
Isaac Zammit
Supervisor: Dr Colin Layfield | Co-Supervisor: Dr John Abela
Course: B.Sc. IT (Hons.) Software Development
Crew Scheduling has been a significant topic of study for
researchers in the past due to its impact on airline costs. It has
been mentioned by many sources that crew costs are the second
highest expense for airline companies [1]. In fact, a one percent
reduction in flying time for pilots can yield up to $500,000/month
in savings [2]. Incremental improvements have been presented
throughout the years, yet the need for further research is
evident as no solution is guaranteed to be optimal, since crew
scheduling problems are proven to be NP-hard [3]. Problems
of such complexity require comprehensive thought built upon
knowledge of previously used techniques. The main motivation
for this research is to investigate whether the application
of Genetic Algorithms, with an appropriate chromosome
representation, can help to improve on the current solutions
to crew scheduling. The current state-of-the-art technique for
crew scheduling is Column Generation, due to its wide use in
literature and the impressive results presented throughout the
years. In this study, the focus is on cockpit crew assignment,
where pairings are to be assigned along with relative rests to
form a monthly schedule, while aiming at maximising crew
satisfaction in terms of pilot vacation preferences and preferred
flights assigned. Pairings represent a set of flights along with
necessary rest periods and briefing times.
The problem is modelled as a directed graph where each
node represents a pairing and every arc associates a legal rest
period between two pairings. The solutions from the graphproblem
are utilised in a customised Greedy Heuristic and a
Genetic Algorithm. The results obtained from both techniques
are compared to a previous Column Generation approach
developed by [4] in order to evaluate the quality of solutions
obtained. Results are presented in terms of vacation and
flight preferences satisfied. Based on the constraint values
established, reduction in costs are reported for six out of seven
instances of varying sizes. Competitive airleg satisfaction was
obtained, all while providing high vacation satisfaction to cockpit
crew. The GA achieved better flight preferences for four out of
seven instances while satisfying more vacation preferences in
all instances.
Software Engineering
& Web Applications
Figure 1. Monthly Schedule Representation.
References
[1] N. Kohl and S. E. Karisch, “Airline crew rostering: Problem types, modeling, and optimization,” Annals of Operations Research, vol.
127, no. 1, pp. 223-257, Mar 2004.
[2] G. W. Graves, R. D. McBride, I. Gershkoff, D. Anderson, and D. Mahidhara, “Flight crew scheduling,” Management Science, vol. 39,
no. 6, pp. 736-745, 1993.
[3] M. R. Garey and D. S. Johnson, Computers and Intractability; A Guide to the Theory of NP Completeness. New York, NY, USA: W.
H. Freeman & Co., 1990.
[4] Kasirzadeh, M. Saddoune, and F. Soumis, “Airline crew scheduling: models, algorithms, and data sets,” EURO Journal on
Transportation and Logistics, vol. 6, no. 2, pp. 111-137, June 2015.
50 | Faculty of Information and Communication Technology Final Year Projects 2019
Effective Car Traffic Management
Using Different Technologies
Mikhail Andrei Galea
Supervisor: Mr Tony Spiteri Staines | Co-Supervisor: Dr Peter Albert Xuereb
Course: B.Sc. IT (Hons.) Software Development
Traffic jams have become a daily encounter by drivers both in
Malta as well as other countries. Traffic jams occurs due to lack
of parking spaces, drivers uninformed of obstacles, and so on,
leading to various social, health and productivity issues, thus
making it increasingly important for this problem to be tackled.
Due to the constant rise in the population density [1], roads
have become overpopulated with vehicles [2], whilst on the
other hand parking spaces have been reduced in many places –
resulting in drivers spending significantly more time on the roads
than necessary looking for somewhere to park. The solution
proposed is developed with a view to changing this, facilitating
the finding of parking spaces in a quicker and more efficient
manner, thus reducing time spent on the roads. It is built on
the widely-used Android platform running entirely on Raspberry
Pi, making use of a simple webcam, processing real time video
capture and effectively detecting vacant parking spaces (see
Figure 1). This makes the complete setup feasible, portable and
cost-effective. Given that the parking detection data is stored
on an online database and displayed on the developed mobile
application in real time (see Figure 2), an internet connection
is required. Care was taken to develop the application with a
user-friendly UI, showing a map with parking information, whilst
also offering the ability to report obstacles that are encountered
on the roads during users’ everyday journeys. After carrying out
several tests, the solution was found to successfully detect an
empty parking space and present the data live with very little
delay (typically less than 10 seconds). This enabled the user to
make their way directly to the said parking spot, thus spending
significantly less time on the road, and showing that the solution
is indeed effective.
Software Engineering
& Web Applications
Figure 2. Displaying vacant spaces in Buġibba.
Figure 1. Testing to simulate a real world scenario.
References
[1] National Statistics Office, “World Population Day”, National Statistics Office, 2018.
[2] Times of Malta, “Times of Malta,” 1 July 2017.[Online]. Available: https://www.timesofmalta.com/ articles/view/20170701/
editorial/Traffic-causes-and-cures.652056 [Accessed 30 November 2018].
L-Università ta’ Malta | 51
Real-time GI for dynamic environments
using temporal filtering
Kevin Tonna
Supervisor: Dr Sandro Spina | Co-Supervisor: Dr Keith Bugeja
Course: B.Sc. (Hons.) Computing Science
Figure 1. Re-projection is used to filter out pixels with mismatching positions between frames.
Software Engineering
& Web Applications
Global Illumination (GI) results from the combination of direct
and indirect illumination, with the latter being much more
complex to calculate [1]. Ray tracing-based techniques determine
the indirect light contribution by simulating individual light paths
per pixel. In order to accelerate this computation, Virtual Point
Lights (VPLs) can be used to approximate indirect lighting [2].
Moreover, using temporal filtering and re-projection, previous
frames can be reused when drawing the current frame, thus
further reducing costs.
A scene is rendered by accumulating lighting from all VPLs.
Temporal sampling cuts costs by only computing lighting for a
subset of VPLs in the scene per frame and accumulating lighting
for the rest of the VPLs from previous frames. Previous frames
are re-projected to accommodate scene changes from one frame
to the next. Surfaces in previous frames which are not present
in the current frame are identified by comparing each previous
pixel position in the scene with the position of the pixel they are
re-projected onto. Previous pixels with mismatching positions are
filtered out. This process is illustrated in Figure 1.
The developed system was evaluated, with temporal
sampling enabled and disabled, along two aspects: performance
and quality. Performance results show that temporal sampling
returns faster frame times, thanks to re-projection being cheaper
to compute than using all VPLs at once. Quality tests show that
in general, image quality improves. However, temporary dark
artefacts may develop around previously occluded surfaces.
These are outlined in Figure 2, where the camera is strafing right
and the parts of the wall that were behind the pillars in previous
frames exhibit fake shadows while indirect lighting is computed
for all VPLs over a number of frames.
Figure 2. Fake shadows are temporarily rendered as a results of indirect lighting
computed from VPLs over a number of frames.
The method proposed and developed aimed to achieve faster
performance with minimal quality loss. The results show that
this has been achieved with up to 15x performance speedup. The
method is likely to scale well with better hardware as illumination
computation per VPL is the largest bottleneck in the method’s
pipeline. Future work can expand on this by selectively rendering
parts of a scene depending on the amount of valid data available.
Selectively updating all buffers for every frame could eliminate
any artefacts introduced by temporal sampling.
References
[1] Kajiya, J. T. (1986, August). The rendering equation. In ACM SIGGRAPH computer graphics (Vol. 20, No. 4, pp. 143-150). ACM.
[2] Keller, A. (1997). Instant Radiosity. In Computer graphics proceedings, annual conference series (pp. 49-56). Association for
Computing Machinery SIGGRAPH.
52 | Faculty of Information and Communication Technology Final Year Projects 2019
Data Leakage in SaaS
Julian Calleja
Supervisor: Dr Joseph Vella
Course: B.Sc. (Hons.) Software Development
Data leakage is defined as the accidental or unintended
distribution of sensitive data to an unauthorised entity [1].
This issue is considered to be one of the largest threats that
companies are facing when moving to a cloud infrastructure. New
security threats are constantly surfacing targeting data leakages;
this is especially so in Software-as-a-Service (SaaS) models [2].
As these services depend on a multitenancy architecture where
resources are shared amongst tenants, the issue of data leakage
increases in scope. Thus, the Cloud Computing Service Provider
(CCSP) has to ensure that data security is in place and that each
tenant follows pre-set and accepted security measures. This is
the area explored in this research.
Two main approaches have been adopted to carry out this
study. First was the design of a SaaS multitenancy database with
the necessary configuration requirements (designed for security)
for the database server. A middleware was also configured to
help serve as both a load balancer and a connection manager.
The second approach required the creation of data collection
processes that monitor tenant activities, including logon request,
query submissions, stored procedure invocations, and delegating
data access privileges.
A framework was developed in order to help in the collection
and integration of security-related activities and possible
identification of threats. Data warehousing techniques were
adopted in order to help collate are reconcile data from a variety
of data sources e.g. DBMS and middleware logs. As a result, this
data warehouse helped to serve as a Log Management system
(LMS) – see Figure 1. Also, data mining techniques, such as Rule
Mining and Classification algorithms, were implemented. These
algorithms use the data available in the Data warehouse (DWH)
to help security administrators with the possible identification
of data leakage threats in such environments.
Figure 1. System Overview.
From our experiments, the results show that our suggested
framework was effective in gathering data from data sources.
Thus, the framework created the possibility of helping
administrators at the CCSP and tenants to process activity data
and calculate the level of data leakage possibility.
Software Engineering
& Web Applications
References
[1] C. L. Huth, D. W. Chadwick, W. R. Claycomb, and I. You, “Guest editorial: A brief overview of data leakage and insider threats,” Inf.
Syst. Front., vol. 15, no. 1, pp. 1–4, 2013.
[2] D. Ziani and R. Al-Muwayshir, “Improving Privacy and Security in Multi-Tenant Cloud ERP Systems,” Adv. Comput. An Int. J., vol. 8,
no. 5, pp. 01–15, 2017.
L-Università ta’ Malta | 53
Bioinformatics Resource Portal
Nigel Alfino
Supervisor: Mr Joseph Bonello | Co-Supervisor: Prof. Ernest Cachia
Course: B.Sc. IT (Hons.) Software Development
Bioinformatics is a field of study that applies computational
techniques to improve the understanding and organisation of
biological data. A major difficulty in performing research in
bioinformatics is finding the right tool or dataset to use. This
obstacle arises from a lack of effort made in the bioinformatics
community to make tools or datasets reusable. This issue is
compounded by the lack of an indexable resource of tools and
datasets, as well as a lack of assessment of their reusability.
Moreover, reproducible research in biology and medicine is also
an issue. A study produced by ATCC, 2019, shows that over 70%
of researchers were unable to reproduce the findings of other
scientists [3].
The FAIR guiding principles [2] provide four principles to
measure a tool or dataset’s Findability, Accessibility, Interoperability
and Reusability. They also provide guidelines on how to score
these measurements. This study aims to create a searchable
portal of tools together with a semi-automated assessment tool
that calculates a FAIR score for tools. This will allow researchers
to make an informed decision on which tool is appropriate, and will
enable other researchers to determine how easy it is to reproduce
a study. The FAIR score provides researchers with a level of trust in
the resources they use, since the FAIR scores indicate how usable
a tool is from a scientific and applicable point-of-view, and the
degree of interoperability it has with respect to different contexts.
The results as can be seen from the portal are shown in Figure 1.
The proposed semi-automated assessment tool uses web
crawling techniques to obtain information based on a set of
pre-defined criteria. Assessment results are accessible through
a portal where additional information can be provided to refine
the FAIR score. Researchers can also calculate scores for
Bioinformatics pipelines, i.e. a series of tools and datasets used
sequentially in a study, based on the individual FAIR scores of tools
and datasets.
Our results show that the majority of the FAIR assessment
criteria of tools, datasets and pipelines can be automated.
However, some additional information, such as unique identifiers
for tools and determining whether a tool uses ontologies or
not, may be required as additional input from the user, since
information may not always be available online. This can be seen
in Figure 2.
Software Engineering
& Web Applications
Figure 1. Summary Information of Tool.
Figure 2. User Refinement.
References
[1] Cannata, N., Merelli, E., & Altman, R. B. (2005, Dec). Time to organize the bioinformatics resourceome. PLoS Computational
Biology, 1(7). doi: 10.1371/journal.pcbi.0010076
[2] Wilkinson, M. D., Sansone, S.-A., Schultes, E., Doorn, P., da Silva Santos, L. O. B., & Dumontier, M. (2018, June). A design framework
and exemplar metrics for FAIRness. Scientific Data, 5, 180118. doi: 10.1038/sdata.2018.118
[3] ATCC. (2019). Six factors affecting reproducibility in life science research and how to handle them. Nature News. Retrieved from
https://www.nature.com/articles/d42473-019-00004-y
54 | Faculty of Information and Communication Technology Final Year Projects 2019
A Multi-Methodology Modelling Framework for Software
Development Projects
Ryan Vella
Supervisor: Prof. Ernest Cachia
Course: B.Sc. IT (Hons.) Software Development
Several software development projects are failing to reach their
goals. Research shows that around 70% of all IT projects are
resulting in project failure [1]. This failure is also reflected in Malta,
albeit on a smaller scale when compared to foreign markets and
scenarios. Local IT companies strive to complete the project
even if it means making a smaller profit in the short term. It is
sometimes better to do this, as it can result in being more viable
for the company in the future.
Choosing a suitable methodology for the project can increase
the success rate of software development projects [2]. Contrary
to what is sometimes thought, it is not an easy task to choose the
best software development methodology. As a project manager,
handling software development projects includes skills and
methods unique to aspects of the ICT industry.
The process of the proposed automated solution can be seen
below in Figure 1.
This proposed automated solution assesses the
commonalities and characteristics that exist between a system,
a development methodology and a project. The solution is based
on literature reviews and research relating to the domain, and
factors in reasons why several software development projects
fail. The main research is based on the different methodologies
currently available and in use within the IT industry. This work
also required insight into the different methodologies used
in software solution development. Finally, this research is
embodied and implemented in a tool which will automatically
return the suitable methodology or methodologies for the
project at hand.
The process behind the framework analyses the
characteristics as a set of parameters which generates a decision
tree [3] subject to the system required, and chooses the best
methodology for the software system to be developed.
This will be beneficial for both software developers and
project managers, by proposing an efficient selection of
methodology(ies) to develop a specific project.
The evaluation was carried out by assigning four scenarios
to five different project managers and comparing the human
decisions with the results proposed by our solution. This work is
to be taken as proof of concept and the basis of other work that
can lead to higher quality software solutions and more efficient
and cost-effective development processes. The framework has
proven the overall hypothesis that the process of allocation of
methodology(ies) to the development of a project can be aided
through automation.
Software Engineering
& Web Applications
Figure 1. Top Level Diagram of Solution.
References
[1] The Standish Group International (2016) “Chaos Report 2015”, available online at https://www.standishgroup.com/sample_
research_files/CHAOSReport2015-Final.pdf
[2] S. Flowers, Software failure: management failure: amazing stories and cautionary tales. New York: Wiley, 1996.
[3] L. Rokach and O. Z. Maimon, Data mining with decision trees: theory and applications. World scientific, 2008, vol. 69.
L-Università ta’ Malta | 55
Optimising the Go runtime scheduler
Tharen Abela
Supervisor: Dr Kevin Vella
Course: B.Sc. (Hons.) Computing Science
It is possible to structure a computer program as a number of
concurrent tasks that execute independently, while occasionally
communicating and synchronising with each other [1]. The
Go language is an instance of a programming language that
promotes this paradigm.
The Go scheduler multiplexes lightweight processes,
referred to as Goroutines, onto the CPU cores through lowerlevel
OS threads. These goroutines, or Gs, are managed through
schedulers, referred to as Ps, as well as Ms, which are low-level
OS threads which provide handles to the actual CPU cores [2].
Each P keeps a local queue of Gs, from which work is
dispatched to be executed. Should a P find itself with no work, it
will randomly pick and lock another P to steal half its Gs. This is
how the current Go implementation makes use of its underlying
scheduler structures to implement the work-stealing balancing
mechanism [3].
Larger batches mean that a processor has more tasks
at hand, with potentially better cache usage, but this reduces
parallelism. Longer processing times mean that tasks can be
processed for longer with more cache hits, but this could lead to
starvation for other batches.
This study took a constant value as the batch size limit,
along with a global batch queue where all batches are shared
among Ps.
Software Engineering
& Web Applications
Batching
An alternative to work-stealing is thread batching. This method
dictates that tasks should be grouped and processed together, for
all tasks to exploit locality through cache reuse [4].
To enable multiple batches to execute concurrently, certain
criteria must be met to determine when new batches should
be formed. The ideal size for the grouping and processing time
differs by the type of work being done.
Results
A cache reuse benchmark [5] which evaluates performance for
workloads with differing granularities, displayed a performance
improvement of up to 20%. When running the Go benchmark suite,
a variety of results were observed, ranging from no improvement
at all in benchmarks that are not bound by scheduler performance,
to improvements of up to 69% in the more relevant instances.
The results obtained suggest that the main benefits seen are
enabled through (i) the improved cache locality that is afforded by
batching, and (ii) the removal of locks on Ps that were originally
required for work-stealing.
Future work should focus on tuning batch size limits and
yield rates to further improve performance, and optimising the
distribution goroutines across batches on the basis of information
gathered at compile-time and at run-time.
References
[1] T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein. Introduction to algorithms. MIT press, 2009, pages 777–781.
[2] A. Clements and M. Knyszek. (Nov. 2018). Hacking.md. version d029058. Run-time Documentation, [Online]. Available: https://
golang.org/src/runtime/HACKING.md.
[3] J. B. Dogan. (Jul. 2017). Go’s work-stealing scheduler, [Online]. Available: https://rakyll.org/scheduler/.
[4] K. Vella, “A summary of research in system software and concurrency at the university of malta: Multithreading,” in Proceedings
of CSAW03, 2003, p. 116.
[5] K. Debattista, K. Vella, and J. Cordina, “Cache-affinity scheduling for fine grain multithreading, ”Communicating Process
Architectures, pp. 135–146, 2002.
56 | Faculty of Information and Communication Technology Final Year Projects 2019
Implementation of a Sudoku Puzzle Solver on a FPGA
Keith George Ciantar
Supervisor: Dr Inġ. Owen Casha
Course: B.Sc. (Hons.) Computer Engineering
Sudoku is often considered a casual puzzle game, which is
played as a pastime. From a scientific perspective, the Sudoku
puzzle features certain characteristics that entail finding a
non-trivial solution, while giving individuals the opportunity
to explore and investigate several possibilities for solver
implementations. Although at face value, solving Sudoku
puzzles seems to be a self-contained problem, in reality it
encompasses a lot of properties which are useful to many
other domains.
In this work, the design, implementation and evaluation of
a hybrid Sudoku puzzle solver on a Field-Programmable Gate
Array (FPGA) is presented. The proposed Sudoku puzzle solver
follows the specifications of the competition of the 2009
International Conference on Field-Programmable Technology
(FPT). The solver initially makes use of simple pen-and-paper
solving techniques to reduce the number of possible values
and prune the overall search space. Once this is complete,
the solver then utilises the brute-force search algorithm (also
known as depth-first search algorithm) to systematically guess
and backtrack through the puzzle, until a solution is reached.
The proposed architecture, which is shown in Figure 1,
was coded in VHDL and synthesized using Xilinx ISE 14.7. The
implementation was done on an Atlys development board from
Digilent, containing a Xilinx XC6SLX45 FPGA. To test the solver,
unsolved puzzles of varying difficulties were sent to the device
via the RS-232 protocol, from a MATLAB user interface (refer to
Figure 2). Upon solving the puzzle, the device can be prompted
to send the solution and the timing result back to the computer,
where they are displayed on the interface.
From the twenty-three puzzles that were tested, it was noticed
that the solver performed very well for easy and medium puzzles.
However, due to the nature of the searching algorithm, it took
a significantly longer time to finish hard and ‘extreme’ puzzles,
with some even becoming intractable. Comparing it to existing
implementations [1]-[5], when the same puzzles were used, the
solver performed better for the easy benchmark by an average
of 8.5ms, and worse for the harder benchmark by an average of
12.3ms. Overall, the results were rather satisfactory since some
improvements were made with respect to the solutions reported
in literature, while still keeping a relatively simple solver.
Software Engineering
& Web Applications
Figure 1. Top-level view of the complete implemented system.
Figure 2. MATLAB application showing a loaded puzzle which is ready to be
sent to the FPGA.
References
[1] K. van Der Bok, M. Taouil, P. Afratis and I. Sourdis, “The TU Delft Sudoku Solver on FPGA,” International Conference on Field-
Programmable Technology (FPT) 2009, pp. 526-529, 2009.
[2] P. Malakonakis, M. Smerdis, E. Sotiriades and A. Dollas, “An FPGA-Based Sudoku Solver based on Simulated Annealing Methods,”
International Conference on Field-Programmable Technology (FPT) 2009, pp. 522-525, 2009.
[3] C. Gonzalez, J. Olivito and J. Resano, “An Initial Specific Processor for Sudoku Solving,” International Conference on Field-
Programmable Technology (FPT) 2009, pp. 530-533, 2009.
[4] M. Dittrich, T. B. Preusser and R. G. Spallek, “Solving Sudokus through an Incidence Matrix on an FPGA,” International Conference
on Field-Programmable Technology (FPT) 2010, pp. 465-469, 2010.
[5] I. Skliarova, T. Vallejo and V. Sklyarov, “Solving Sudoku in Reconfigurable Hardware,” 8th International Conference on Computing
and Networking Technology (INC, ICCIS and ICMIC) 2012, pp. 10-15, 2012.
L-Università ta’ Malta | 57
Investigating Gaze Interaction Usability for Web Browsing
Daniel Vella
Supervisor: Dr Chris Porter
Course: B.Sc. IT (Hons.) Computing and Business
Software Engineering
& Web Applications
Many websites are built with the assumption that conventional
devices, such as mice and keyboards, are to be used as primary
input modalities. Such peripherals require a certain level of
dexterity to operate, resulting in an inherent exclusion of people
with severe motor limitations. Assistive technologies are used
to overcome such barriers, however their limitations are further
accentuated when user interfaces do not consider accessibility.
This exploratory study focuses on gaze interaction for web
browsing using low-cost eye-trackers, in an effort to shed
more light on accessible user-agent design for eye-tracking
users. In recent years, major advances have been made to
facilitate gaze interaction for web browsing, with projects such
as GazeTheWeb [1] providing a user-agent built specifically for
eye-trackers. Notwithstanding, certain web-based interaction
scenarios are still problematic, presenting usability challenges
for eye-tracker users. This work considers two specific problem
areas generally found on websites: (a) high link density areas
(HLDA) and (b) navigation menus. HLDAs present a challenge
due to the accuracy required to select links from a cluster of
closely placed links, while navigation menus generally assume
the use of click, tap or hover commands, none of which is
afforded by an eye-tracker. GazeTheWeb, considered in this
thesis to be the gold standard technology, provides an out-ofthe-box
interaction pattern for link selection which is mainly
based on click-emulation with page magnification (CEM). This
pattern works well in most situations but can cause contextual
disorientation and frustration when selecting links in HLDAs and
navigation menus.
This work proposes two novel interaction patterns, namely
(a) Quadtree-based Link Selection with Secondary Confirmation
(QLSSC) for HLDAs and (b) Hierarchical Re-Rendering of
Navigation Menus (HRNM) for navigation menu interaction.
These patterns were evaluated empirically against the gold
standard approach through a lab-based single-blind study. QLSSC
tackles HLDAs as a spatial problem, constructing a quadtree of
links for efficient queries based on gaze location, and presenting
candidate links in a sidebar for easier access. With HRNM, toplevel
navigation menu options are re-rendered ergonomically on
a sidebar, after a dwell activation on the navigation menu itself,
allowing users to drill-down the various layers by selecting parent
nodes using continuous dwell-time activation [2] until the desired
link is selected.
It was found that the emerging pattern for HLDAs (QLSSC)
obtained better efficiency results over the gold standard approach,
albeit with no statistical significance. On the other hand, the
proposed interaction pattern for navigation menus (HRNM)
also obtained better efficiency, with significantly better results
when used with mega menus, as opposed to simple navigation
menus where no noticeable difference in usability was noticed
between groups. This study also presents Cactus, a purpose-built
cross-platform web browser, built primarily as an experimental
tool to study the proposed interaction patterns, but which also
addresses the need for an inclusive web browser available across
platforms, including Windows, Mac and Linux. Initial results show
that Cactus provides a usable and ergonomic environment for
gaze interaction.
Figure 1. Quadtree visualization on web-page in blue squares (starting from
English Language title). QLSSC interaction pattern obtaining 3 links within the
invisible cursor boundary (shown in red) and re-rendering links in the Cactus
sidebar.
Figure 2. Navigation menus levels rendered in the same Cactus sidebar.
References
[1] MAMEM, “Gazetheweb: Explore the web with your eyes!.” https://github.com/MAMEM/GazeTheWeb. Accessed: 2018-11-15.
[2] J. P. Hansen, A. S. Johansen, D. W. Hansen, K. Itoh, and S. Mashino, “Command without a click: Dwell time typing by mouse and
gaze selections,” in Proceedings of Human-Computer Interaction–INTERACT, pp. 121–128, 2003.
58 | Faculty of Information and Communication Technology Final Year Projects 2019
Transportation Issues in a Real-Time
Web-Based Supply Chain
Andrew Borg Costanzi
Supervisor: Mr Tony Spiteri Staines | Co-supervisor: Dr Peter Albert Xuereb
Course: B.Sc. IT (Hons.) Computing and Business
Transportation within a supply chain infrastructure is a complex,
costly and challenging resource to manage. In fact, research has
shown that this area costs some corporations millions of Euros
in net losses per year. Such heavy losses are generally a result
of factors such as new route planning inaccuracies, managing
specific risks, costs or time restraints, facing delays, or even
reacting to a particular (unplanned) event (see Figure 1). In
light of this, this project aimed to research the causes, effects
and possible solutions to the problems faced within this area.
Also, based on this research, a decision support system
Figure 1. Decision Support System Component.
(DSS) – embedded in a real-time web interface — was
developed. The primary focus of this DSS was to provide
the user with route options for transporting a particular
item. More specifically, this route planning was done based
on the resources available at the time of the request, and
other restrictions, such as the mode of transport, or the time
window available.
Figure 2. Supporting Components
For this objective to materialise, existing and publicly available
studies and datasets on this area were analysed. Furthermore,
based on the interpreted data, qualitative semi-structured
interviews were conducted with domain experts on transportation
logistics. This combination of information collection techniques
provided an extensive and detailed understanding of the
transportation logistics industry. After the required information
was gathered on this industry, the decision support system’s (and
supporting components’ (see Figure 2)) specification, design and
implementation were undertaken.
The evaluation results and feedback received on the DSS were
positive. This was due to its capability to calculate and compare
various routing possibilities in seconds, thus providing the best
routing options available at that moment. Furthermore, the DSS
resulted in being useful in aiding personnel to plan more accurate
routes, as well as avoiding the possibility of them missing out
any particular route combination which could potentially be the
best solution. Based on these results, one may conclude that this
portal, primarily the DSS, may assist a supply chain in improving
its overall efficiency.
Software Engineering
& Web Applications
L-Università ta’ Malta | 59
Human Movement Activity Sensing Through Zigbee
Wireless Technology
Julian Abela
Supervisor: Prof. Inġ. Edward Gatt
Course: B.Sc. (Hons.) Computer Engineering
Integrating human activity motion sensing with a person’s life
enables feedback to be gathered about recent movements
performed, if any, thus allowing the user to base his or her future
decisions appropriately. The system acts as a motivator to make
the user get up more often and carry out the basic movements the
body is designed to do. Zigbee wireless technology transmits and
receives data to and from an accelerometer, a microcontroller and
a Liquid Crystal Display (LCD).
The user wears a compact and unobtrusive device – the end
station – on the wrist, containing an ADXL335 triple-axis ±3 g
MEMS accelerometer, a Nokia 5110 LCD and a Digi XBee Series
1 wireless module. The accelerometer measures the position
of the user’s left wrist relative to a predefined set of x, y and z
axes, every few milliseconds, while the LCD is used to inform
the user about the feedback generated from this data. The XBee
module transmits the accelerometer readings over a point-topoint
wireless network, and readings are received on the other
end by its corresponding XBee module at the master station. An
attached microcontroller to the latter module processes the data
received, and the results are sent back over the wireless link to be
displayed to the user on the LCD.
The primary human movement patterns – walking and running
– are taken into consideration in this system. The microcontroller
is set up to identify these activities, as well as the steps walked
or strides ran. Fig. 1 represents the accelerometer axes when the
user walks two steps. The highlighted data points in Fig. 1 are
analysed by the microcontroller.
Data is wirelessly transmitted in API (application programming
interface) frames. The microcontroller is ergo configured to
recognize the incoming readings in this format, and the feedback
attained by the microcontroller about the user’s recent activity is
positioned in a code-constructed API frame. The Nokia 5110 LCD
utilizes SPI (Serial Peripheral Interface) hardware while the XBees
communicate over UART (Universal Asynchronous Receiver-
Transmitter). Code is written to send data over the UART wireless
link as a manipulation of the SPI protocol operation to match the
communication requirements of the LCD. Fig. 2 illustrates this
procedure in the form of a flowchart.
Internet of Things
Figure 1. ADXL335 axes readings for two steps.
Figure 2. Flowchart overview of data transmission in the system.
60 | Faculty of Information and Communication Technology Final Year Projects 2019
Drone-Based Search
Daniel Mallia
Supervisor: Prof. Matthew Montebello
Course: B.Sc. IT (Hons.) Artificial Intelligence
Over the past few years Unmanned Aerial Vehicles (UAVs) such
as drones have evolved and gone through great advances both
in miniaturisation of hardware technologies as well as everincreasing
computational power. This being said, present times
have also seen a rise in confidence when using robotics and
artificial intelligence in emergency situations such as hospital
operations and life-risking procedures. All this, in addition to
the daily acquisition of aerial imagery, encourages the field of
computer vision to take on the challenge of processing UAV live
video feed in real-time.
This dissertation evaluates efficient approaches that can be
used for a Drone-Based search, primarily focusing on a search
and rescue aspect, meaning that the object in search is a person.
It starts off with the creation of a custom object detection model
and continues with some tests comparing it with other stateof-the-art
object detection models that outperform in a certain
attributes of importance to real-time object detection such as
detection accuracy and processing speed.
The drone in subject is a Tello EDU. Although this drone has
a short battery life (around 13 minutes), it offers the possibility of
Python coding, which is a necessity in most areas of computer
vision. This setup will provide real-time video stream and
communicate it directly to a receiving system which processes
it and displays it on-screen. Frame processing will be done using
several object detection models after they have passed several
fundamental tests extracting their capabilities and limits. Footage
evaluation will undertake field tests over a set environment, where
it will be tested for real-time image processing by recording the
average fps. A general evaluation to the result accuracy will then
be extracted.
This project also shows how a modular design and
implementation can result in easy-to-manipulate code which
creates the possibility for branching projects with just a few
adjustments, such as an indoor search drone which is be able
to search for personal belongings in a home environment while
hovering around the rooms.
Figure 1. High Level Architecture of the system.
Figure 2. A classified image during testing.
Internet of Things
L-Università ta’ Malta | 61
Developing an Educational Game to Aid Learning Support
Educators (LSEs) Teach Basic Arithmetic to Children with
Intellectual Disabilities
Daryl Tabone
Supervisor: Dr Peter Albert Xuereb
Course: B.Sc. IT (Hons.) Software Development
Students with intellectual disabilities tend to experience
difficulties when it comes to problem solving and abstract
reasoning [1]. They also tend to experience anxiety when
presented with problems that they cannot solve [2]. For these
reasons, numerous students with mild to borderline intellectual
disabilities complete their schooling without mastering these
crucial basic skills [3].
Through incrementally developed prototypes, driven by the
feedback acquired from multiple interviews with a number of
Learning Support Educators (LSEs), a mathematical digitaleducational
game was developed based on the LSEs’ current
teaching methods. As each new incremental prototype was
developed, it was distributed to all participating LSEs, who
were given adequate time to perform usability tests with their
students. The expert feedback acquired from the follow-up
interviews with the LSEs was then used to drive the development
of the next incremental prototype.
The focus of this study was to evaluate whether a digitaleducational
game can aid LSEs in teaching basic arithmetic to
children with intellectual disabilities. Feedback from participating
LSEs after using the digital-educational game with their students
was extremely positive, since the game substantially increased
engagement, attention and motivation among students, and this
made it easier for LSEs to explain concepts discussed in class.
Also, the digital-educational game provided progress tracking
for individual students, which was deemed extremely useful by
the LSEs since manual progress tracking is usually very time
consuming.
Internet of Things
References
Figure 1. Addition Level in Educational Game.
Figure 2. Progress Tracking Feature for LSEs.
[1] M. Prendergast, N. A. Spassiani, and J. Roche, “Developing a Mathematics Module for Students with Intellectual Disability in
Higher Education,” International Journal of Higher Education, vol. 6, no. 3, p. 169, 2017.
[2] W. Admiraal, J. Huizenga, S. Akkerman, and G. Ten Dam, “The concept of flow in collaborative game-based learning,” Computers
in Human Behaviour, vol. 27, no. 3, pp. 1185–1194, 2011.
[3] B. R. J. Jansen, E. De Lange, and M. J. Van der Molen, “Math practice and its influence on math skills and executive functions in
adolescents with mild to borderline intellectual disability,” Research in Developmental Disabilities, vol. 34, no. 5, pp. 1815–1824,
2013.
62 | Faculty of Information and Communication Technology Final Year Projects 2019
Time Series Data Reduction of data from IoT devices
Matthew Attard
Supervisor: Dr Joseph Vella | Co-Supervisor: Prof. Inġ. Victor Buttigieg
Course: B.Sc. IT (Hons.) Software Development
This research concentrates on evaluating the effectiveness of
data optimisation techniques when applied to Time Series Data
generated by IoT devices. By 2030, it is estimated that around 125
billion devices will be connected to the Internet, [1] consequently
increasing exponentially the amount of data transmitted. Three
sample data formats were chosen, namely Video, Audio and
Radar data. The nature of the data series was analysed for each
format and optimisation techniques suitable for low power mobile
IoT device use were proposed and evaluated. The optimisation
algorithms were applied on common IoT devices, namely ESP32
MCUs and Raspberry Pi as development boards, while OV7670
Camera Sensors, MAX9814 Microphone Sensors, and Acconeer
A111 Radar Sensors were used as data capture sensors.
This research concluded that industry standard data
optimisation techniques such as MP3, JPEG and other
processing and memory intensive algorithms are unsuitable for
IoT use due to their demanding requirements. However, some of
the main concepts behind them could be adapted to simpler and
less demanding algorithms that work with the limited resources
offered by IoT embedded platforms. Even though the proposed
algorithms do not reach the compression ratios achieved by
their industry standard counterparts, the bandwidth and hence
power savings are considerable and this leads to a tangible
improvement, especially in large scale IoT implementations.
TCP and UDP were chosen as the communication protocols
in this research. When optimising Video Data, the proposed
techniques for video data resulted in improving the data
bandwidth reduction in TCP and UDP by 64% and 46% respectively
as shown in Figure 1. These techniques also resulted in power
consumption reduction of 19% on the transmitting side and 7%
on the receiving side. Similarly, when optimising the audio data,
the proposed data optimisation techniques resulted in a data
efficiency gain of 38% in TCP while in UDP resulted 28%. Figure
2 displays the comparison of the audio optimisation techniques
which reduced the power consumption by 9% on the transmission
side and a 21% on the receiving side. When processing Radar
Data, the optimisation technique resulted in 90% data efficiency
improvement and reduced the power consumption by 5%.
References
Figure 1. Comparison of transmitted bandwidth for video data.
Figure 2. Power consumption comparison for audio data optimisation using
different techniques.
Internet of Things
[1] L. Ga-Won, S. Young-Rok, and H. Eui-Nam, DBS Asian Insights “Internet of Things- The Pillar of Artificial Intelligence,” no. June,
pp. 16–17, 2013.
L-Università ta’ Malta | 63
Using Assistive Technologies to Increase
Social Interaction of Residents with
Limited Mobility in a Care Environment
Michael Hampton
Supervisor: Dr. Michel Camilleri | Co-Supervisor: Dr. Peter Albert Xuereb
Course: B.Sc. IT (Hons.) Software Development
Long term residents suffering from limited mobility living within
communities or institutions such as homes for the elderly,
specialised hospitals and care facilities are often subject to
lack of social interactions due to their physical state [1]. Such
residents often depend on members of staff, family members,
guardians and/or other physically able residents to move
location and/or interact with other residents. However these
people are not always available and this leaves the immobile
residents feeling isolated from the rest of the community.
This project aimed at reducing social isolation through
a social network with a dedicated multimodal user interface
and the use of assistive technologies [2]. The chosen
interfaces were a voice interface and a touchscreen interface
designed to be user friendly specifically to such residents.
The core features of the system aim to assist residents in
communicating socially as well as to help set up and manage
meetings between each other.
The secondary function of the system is to collect data in
the background related to the use of the system. This data is
primarily concerned with the interactions occurring as a result
of the system. This allows members of staff of the institute in
question and guardians of the residents to monitor interaction
rates and query this data. Several other functionalities to assist
staff members have also been included.
A web application along with assistive technologies were
used to implement the system. Google APIs played key roles in
implementing important functionality. The system was designed
to be easily integrated with the functionality of an automated
transport mechanism which would allow a resident with limited
mobility to independently travel around the institution.
Internet of Things
Figure 1. System Overview.
References
[1] M. R. L. Roy F Baumeister, “The Need to Belong,” Psychological Bulletin, vol. 117, no. 3, pp. 497-529, 1995.
[2] P. J. S. Yi-Ru Regina Chen, “The Effect of Information Communication Technology Interventions on Reducing Social Isolation in
the Elderly: A Systematic Review,” Journal of medical Internet research, vol. 18, no. 1, p. e18, 2016.
64 | Faculty of Information and Communication Technology Final Year Projects 2019
Assisting Drivers Using Parking Predictions Through an
Automobile App
Andrea Naudi
Supervisor: Dr Conrad Attard | Co-Supervisor: Dr Ing. Reuben Farrugia
Course: B.Sc. IT (Hons.) Software Development
Traffic and parking are becoming increasingly unbearable in
Malta, with delays on Maltese roads being almost triple the
European average [1]. For this research, we have taken the
parking problem at the University of Malta (UM) as a case study.
UM has approximately 720 parking spaces available for a total
of 11,670 students. The main parking area is usually full by 7:20
am but does experience changes in parking when students finish
class, which were the focus of this work. This dissertation is a
part of the SmartSkyAutomator project and presents research
on three main areas of study: data science, pervasive computing
and mobile applications. The aim of this study was to create a
solution by combining these areas of research, that makes the
process of finding a parking space more efficient.
Following an observation study, the model for the study was
created. The upper part of Car Park 6 at UM was used in this study
and the days taken into consideration were Mondays, Wednesdays
and Fridays. For each of these days, the 10:00 am and 12:00 pm
time intervals were studied i.e. a few minutes before to a few
minutes past the hour. The use of a commercial drone helped
to build a dataset based on the model, and different Regression
algorithms were tested on this dataset. The best one overall was
selected to make parking predictions. The vehicle detection tool
in [2] was used simultaneously, in attempt to obtain identical
values to the manual logs of the dataset, obtaining satisfactory
results. After designing three prototypes, an automobile app
using web technologies and a Node.js framework was built to give
predictions stored in a MongoDB database to drivers. A controlled
experiment was designed to evaluate the solution. This involved
eighteen drivers using the automobile app in a real-life scenario
to find a vacant parking space. A usability questionnaire was then
answered to evaluate the usability and safety of the application.
The outcomes of the experiments showed that finding a
parking spot was the hardest on Mondays, whilst Fridays were
the easiest. Additionally, it was easier to park at 12:00 pm than
10:00 am. The questionnaire revealed that participants found
the app simple, effective and safe to use. Drivers preferred using
the buttons on the touch screen rather than voice commands to
interact with the app. The app achieved a very high overall score.
With more collectors, several parking areas can be studied at one
go and the study can be extended to include other car parks. The
experiment would be more realistic if a larger dataset is collected
to include data for other car parks, rather than creating a random
dataset for them. The best algorithm for predictions would have
to be reselected based on the new data.
References
Figure 1. Stages of Methodology followed.
[1] T. Bonnici, “Study shows that delays on Malta’s roads are almost triple the European average”, The Malta Independent, 30-Jan-
2015.
[2] S. Mallia, C. Attard, and R. Farrugia, “Automatic Vehicle Detection from Aerial Imagery”, University of Malta, 2018.
Internet of Things
L-Università ta’ Malta | 65
Security Issues in Controller Area Networks in
Automobiles with the implementation of Fuzzing
Ezekiel Bajada
Supervisor: Dr Clyde Meli
Course: B.Sc. IT (Hons.) Software Development
The scope of this research is identifying vulnerabilities
in automotive CAN networks, using fuzzing techniques.
Automotive Security has gained importance as more automatic
features that could potentially be exploited became more
common. Examples include automatic parking, radar-driven
cruise control and collision prevention, all instances where
electronics take control of some elements of the car. In the
automotive domain, the CAN protocol is mainly used for the
ECUs’ underlying bus network[1]”uri”:[“http://www.mendeley.
com/documents/?uuid=56a7c566-e763-49b4-b938-88ac4f51
c499”],”itemData”:{“DOI”:”10.1109/SIES.2012.6356590”,”ISBN”
:”9781467326841”,”abstract”:”Controller Area Network (CAN.
While research on automotive security has been performed, the
use of fuzzing in this area is still an area of active research. This
research attempts to evaluate its appropriateness for automotive
applications, by proposing an intelligent sniffing/fuzzing process
and evaluating its effectiveness using a purpose-built prototype
implementation. The proposed technology sniffs CAN traffic over
the CAN network of a vehicle and watches for changes in the
values of the various CAN messages being transmitted, both in
terms of their IDs as well as their contents. This data can then
be analysed and the list of CAN IDs with the corresponding value
changes deducted. This list can then be used to devise fuzz
attacks either by manually selecting which bytes are randomly
fuzzed or whether they will be fuzzed using values that have
been observed in sniffed traffic and hence are deemed to be
legitimate. The results show that fuzzing can be effective in
detecting CAN network vulnerabilities. While more work needs
to be done in this direction, such as the automatic detection of
counters and their intelligent fuzzing, the results of this research
suggest that fuzzing is indeed a useful technique in automotive
security research.
Internet of Things
Figure 1. BMW Simulator.
Figure 2. Intelligent fuzzer hardware implementation.
References
[1] R. Kammerer, B. Frömel, and A. Wasicek, “Enhancing security in CAN systems using a star coupling router,” 7th IEEE Int. Symp. Ind.
Embed. Syst. SIES 2012 - Conf. Proc., pp. 237–246, 2012.
66 | Faculty of Information and Communication Technology Final Year Projects 2019
Audio Effects Library for Digital Signal Processor
Julian Spiteri
Supervisor: Dr Inġ. Trevor Spiteri
Course: B.Sc. (Hons.) Computer Engineering
Digital Signal Processing (DSP) is the use of a computer to
perform a wide variety of signal processing operations and.
This sector is continuously evolving and is used in various
applications, including audio. DSP is heavily used in the music
and film industry.
There are a lot of offline algorithms and applications to
process audio DSP, but algorithms that perform DSP in realtime
audio applications are more limited. These are used
by live audio engineers and live musicians to enhance their
instruments’ sound.
Such digital effects are usually computationally expensive
if performed on a generic low-performance processor. Thus,
executing DSP code on a Digital Signal Processor is much more
efficient. Although today’s low-performance processors are
powerful enough for basic audio processing, using a DSP device
could improve quality, for example by using more coefficients, or
running more effects at the same time.
The aim of this project was to identify and implement a
number of audio effects as an audio effects library that performs
real-time DSP on audio signals. These effects include: gain,
reverb, echo, chorus, tremolo, equalisation and pitch change.
Moreover, a demonstration application that makes use of this
audio effects library to be used in live audio applications was
developed. The code had to be optimised as much as possible
for an efficient execution on a Digital Signal Processing Board.
The library was used successfully in an embedded system with
an ARM Cortex-M4 processor.
Tests confirm proper operation of the digital audio effects.
Audio was played back to ensure there were no audible artefacts.
Figure 1 shows the echo effect test. It was tested using a hand
clap audio input and two outputs are shown at two different useradjustable
parameter values of 0.5 and 1.0. Figure 2 shows the
chorus effect test. A 440 Hz sine wave was used as input and two
outputs are shown at the same user-adjustable parameter values.
Figure 1. Echo Effect Test.
Figure 2. Chorus Effect Test.
References
[1] (2016, Jul 7). Understanding Audio Effects: An Overview of Types and Uses. Available: http://blog.dubspot.com/understandingaudio-effects-an-overview/.
[2] M. V. Micea et al, “Implementing Professional Audio Effects with DSPs,” Transactions on Automatic Control and Computer Science,
vol. 46, (60), pp. 55-61, 2001.
[3] N. Juillerat, S. Schubiger-Banz and S. M. Arisona, “Low Latency Audio Pitch Shifting in the Time Domain,” Icalip, pp. 29-35, 2008.
Audio, Speech &
Language Technology
L-Università ta’ Malta | 67
High Efficiency Low Voltage Class D CMOS
Audio Power Amplifier
Gianluca Baldacchino
Supervisor: Prof. Ivan Grech
Course: B.Sc. (Hons.) Computer Engineering
Most modern devices and digital applications incorporate some
form of audio input and output. However, device specifications
and requirements continue to increase, most specifically
where battery longevity and audio quality are concerned [1,2,3].
Hence, audio drivers have been developed in order to satisfy
such specifications within different applications. Class D audio
amplifiers are some of the most commonly used, since they offer
unprecedented power efficiency while producing high fidelity
audio [2,3].
The project entailed a brief analysis of what topologies are
currently being utilised to implement such audio drivers. This
analysis was later utilised in order to design and implement a
specific type of Class D audio amplifier. The design was carried
out using the XFAB CMOS process kit within the Cadence
Virtuoso environment.
A Pulse-Width Modulation (PWM) Class D amplifier was
utilised to fulfil the presented requirements of the project. In order
to accomplish this task, the audio amplifier was sub-divided into
its internal sub-components, analysed further, and implemented
individually to create a modular design, as portrayed in Figure 1.
Various analogue modelling techniques were utilised to assess
the performance of the design of this audio amplifier. Finally,
the physical layout of the amplifier was designed and postlayout
simulation was carried out. Schematic and post-layout
simulations were conducted in order to highlight the performance
of the implemented audio amplifier, represented in Figure 2.
Figure 1. PWM CDA internal system structure.
Figure 2. PWM CDA system input and output signals.
References
Audio, Speech &
Language Technology
[1] Y. Kang, T. Ge, H. He and J. S. Chang, “A review of audio Class D amplifiers,” 2016 International Symposium on Integrated Circuits
(ISIC), Singapore, 2016, pp. 1-4.
[2] D. Dapkus, “Class-D audio power amplifiers: an overview,” 2000 Digest of Technical Papers. International Conference on Consumer
Electronics. Nineteenth in the Series (Cat. No.00CH37102), Los Angeles, CA, USA, 2000, pp. 400-401.
[3] Z. Messghati, Y. Laghzizal and H. Qjidaa, “Pulse width modulation for class D audio power amplifier in CMOS 0.18um process with
90% of efficiency,” 2011 International Conference on Multimedia Computing and Systems, Ouarzazate, 2011, pp. 1-4.
68 | Faculty of Information and Communication Technology Final Year Projects 2019
A Text-Independent, Multi-Lingual and Cross-Corpus
Evaluation of Emotion Recognition in Speech
Alessandro Sammut
Supervisor: Dr Vanessa Camilleri | Co-supervisor: Dr Andrea DeMarco
Course: B.Sc. IT (Hons.) Artificial Intelligence
Ongoing research on Human Computer Interaction (HCI) is
always progressing and the need for machines to detect human
emotion continues to increase for the purpose of having more
personalized systems which can intelligently act according
to user emotion. When different languages portray emotions
differently, this becomes a challenge in the field of automatic
emotion recognition from speech. Different approaches may
be adopted for emotion recognition from speech and in most
cases systems approach the emotion recognition problem in a
speaker-independent or context-free manner in order to supply
models that work in different environments. These systems
train on a number of diverse aspects including individuals’
speech, alternating between gender, age groups, accent regions
or even single-word utterances.[1] Past works have been quite
successful in this type of emotion recognition from speech, but
in most cases testing was carried out using a mono-language
corpus with one classifier and naturally obtaining a very high
accuracy rate as shown in [2]. None of the current studies
have as yet addressed the challenges of emotions being
recognized in real-life scenarios, where one limited corpus will
not suffice. We propose a system which takes a cross-corpus
and multilingual approach to emotion recognition from speech
in order to show the behaviour of results when compared to
single monolingual corpus testing. We utilize four different
classifiers: K-Nearest Neighbours (KNN), Support Vector
Machines (SVM), Multi-Layer Perceptrons (MLP), Gaussian
Mixture Models (GMM) along with two different feature sets
including Mel-Frequency Cepstral Coefficients (MFCCs), and
our own extracted prosodic feature set on three different
emotional speech corpora containing several languages.
We extracted a list of 8 statistical information values on our
speech data: Pitch Range, Pitch Mean, Pitch Dynamics, Pitch
Jitter, Intensity Range, Intensity Mean, Intensity Dynamics and
Spectral Slope. The scope of the prosodic feature set extraction
Figure 1.KNN clusters of emotions in 3-Dimensions.
is to acquire a general feature set that works well across all
languages and corpora. When presenting our results, we notice
a drop in performance when unseen data is tested, but this
improves when merged databases are present in the training
data and when EMOVO is present in either training or testing.
MFCCs work very well with GMMs on single corpus testing but
our prosodic feature set works better in general on the rest
of the classifiers. SVM obtains the best results both in crosscorpora
testing and when cross-corpora testing is mixed with
merged datasets. This concludes that SVMs are more suitable
for unseen data while GMMs perform better when the testing
data is similar to the training data. Although MLP were never
the best performing machine model, it still performed relatively
well when compared to an SVM. Meanwhile, KNN was always
a bit less accurate on average than the rest of the classifiers.
We evaluate all the obtained results in view of proving any
elements that could possibly form a language-independent
system, but for the time being results show otherwise.
References
[1] J. Nicholson, K. Takahashi, and R. Nakatsu. Emotion recognition in speech using neural networks. Neural Computing &
Applications, 9(4):290–296, Dec 2000.
[2] Yi-Lin Lin and Gang Wei. Speech emotion recognition based on hmm and svm. In 2005 international conference on machine
learning and cybernetics, volume 8, pages 4898–4901. IEEE, 2005.
Audio, Speech &
Language Technology
L-Università ta’ Malta | 69
A Diphone-Based Maltese Speech Synthesis System
Daniel Magro
Supervisor: Dr Claudia Borg | Co-supervisor: Dr Andrea DeMarco
Course: B.Sc. IT (Hons.) Artificial Intelligence
In Malta, there are 7,100 vision-impaired (1.9% of the Maltese
population), and over 24,000 illiterate (6.4% of the Maltese
population), Maltese speakers [1]. These people are unable to
consume any content written in Maltese, be it a book, a news
article, or even a simple Facebook post. This dissertation sets
out to solve that problem by creating a Text to Speech (TTS)
system for the Maltese language.
While there has been work in the area, at the time of
writing there are no available TTS systems for Maltese, thus
almost the entire system had to be built from scratch. In light
of this, a Diphone-Based Concatenative Speech System was
chosen as the type of synthesiser to implement. This was due
to the minimal amount of data needed, requiring less than 20
minutes of recorded speech.
A simple `Text Normalisation’ component was built, which
converts integers between 0 and 9,999 written as numerals
to their textual form. While this is far from covering all the
possible forms of Non-Standard Words (NSWs) in Maltese, the
modular nature in which it was built allows for easy upgrading
in future work. A ‘Grapheme to Phoneme (G2P)’ component
which then converts the normalised text into a sequence of
phonemes (basic sounds) that make up the text was also
created, based on an already existing implementation by
Crimsonwing [2].
Three separate `Diphone Databases’ were made available
to the speech synthesiser. One of these is the professionally
recorded English Diphone database FestVox’s ‘CMU US KAL
Diphone’1. The second and third were created as part of this
work, one with diphones manually extracted from the recorded
carrier phrases in Maltese, the other with diphones automatically
extracted using Dynamic Time Warping (DTW). The Time Domain-
Pitch Synchronous OverLap Add (TD-PSOLA) concatenation
algorithm was implemented to smoothly string together the
diphones in the sequence specified by the G2P component.
On a scale of 1 to 5, the speech synthesised when using the
diphone database of manually extracted diphones concatenated
by the TD-PSOLA algorithm was scored 2.57 for naturalness, 2.72
for clarity, and most important of all, 3.06 for Intelligibility by
evaluators. These scores were higher than those obtained when
using the professionally recorded English diphone set.
In future work, the functionality of the Text Normalisation
component can be expanded upon to handle more NSWs. More
diphones can be recorded and extracted so that greater coverage
of the language is achieved. The Diphone Concatenation algorithm
can also be revisited since it wasn’t found to perform particularly
well. Finally, a prosody modification component can be added
which modifies the intonation and expression of the generated
speech based on the what is being said and the punctuation used.
Audio, Speech &
Language Technology
Figure 1.Block Diagram with all the components involved in the entire Text to Speech system as well as the flow of data between each component.
References
[1] Census of population and housing. Technical report, National Statistics Office, 2011.
[2] FITA Malta. Erdf 114 maltese text to speech synthesis.
1
http://www.festvox.org/dbs/dbs_kal.html
70 | Faculty of Information and Communication Technology Final Year Projects 2019
Inflection of Maltese Using Neural Networks
Georg Schneeberger
Supervisor: Dr Claudia Borg
Course: B.Sc. IT (Hons.) Artificial Intelligence
Digitisation, globalisation and the prevalence of English have
led to increased accessibility for information, education,
research and international funds and programs. At first, that
may sound like a purely positive development. However,
unfortunately, many languages, especially languages with
few speakers, can get left behind in research. This project
focussed on a particularly interesting aspect of the Maltese
language: inflection. Recent research in the domain of
inflection is analysed with a special focus on the Maltese
context. The project tries to answer the question of whether
Neural Networks with an encoder-decoder architecture are
sufficient for solving the complete Maltese inflection.
Inflection is a characteristic of many languages. it is the
process of changing a lemma into another form to represent
different grammatical functions. Maltese is a language with very
complex inflection for verbs with changes in the suffix, the infix
and also the prefix. The changes can convey number, gender and
object relations, just to name a few. The process of transforming
a lemma into the inflected form can essentially be reformulated
as a sequence-to-sequence translation task.
Inflection can be either solved by linguists’ hand-crafting of
language-specific rules, or by creating a machine-learning system
that is able to learn from sample inflections and can generalise
well enough for previously unseen lemmas. Recent research for
systems that learn to generalise from training samples, show
promising results using Neural Networks, with accuracies for
inflection approaching 100%.
The FYP’s system takes a lemma and a grammatical
description of the inflected form as input and produces the
inflection from it. To do so, the system tokenises and feeds the
description and the lemma into a neural network consisting of
an encoder and a decoder part. Encoder-decoder structures
can be used in a variety of ways. Here, both parts are recurrent
neural networks to be able to handle the sequential nature
and varying lengths of the input and output. More specifically,
the encoder is a bidirectional gated recurrent neural network,
whereas the decoder is a two-layered gated recurrent neural
network. There is also an embedding layer, an attention
mechanism and weight normalisation.
The system was trained on a few different datasets to
compare the results to previous research in the domain
and to answer the question of the FYP. Most notably, it was
trained on a dataset consisting of sample inflections from the
complete set of inflections of Maltese, called the paradigm.
This paradigm includes over 1000 inflections for every verb
and a few for every noun and adjective.
When using the same training dataset, the system wasn’t
quite able to achieve the same very high accuracies as
previous research (95%), only reaching an accuracy of 88,88%.
This could be due to a difference in the architectural setup
of the neural system. When the system was trained on the
full paradigm, the accuracy further decreased to 71,6% -a
significant decrease which reflects the complexity of Maltese
morphology. Although the results obtained are not as high as
originally expected, it is not reason enough to completely root
out these encoder-decoder architectures for the complete
inflection of Maltese. This project has shown the difficulty
of dealing with Maltese morphology and that further work is
required to find a more appropriate neural architecture for the
processing of Maltese.
Figure 1.Simplified Structure of the Neural Network.
Audio, Speech &
Language Technology
L-Università ta’ Malta | 71
Increasing the Usability of Spoken Dialogue Systems
using Machine Learning: A Study of Use by Older Users in
Retirement Homes
Tristan Mercieca
Supervisor: Dr Peter Albert Xuereb | Co-supervisor: Dr Michel Camilleri
Course: B.Sc. IT (Hons.) Software Development
Figure 1. High Level Diagram of the implemented Spoken Dialogue System.
With a rapidly increasing ageing population, more older
people are being referred to retirement homes. Consequently,
this is placing a larger workload on the carers, nurses and
allied professionals of said institutions [1]. To combat this,
many robots and Spoken Dialogue Systems (SDS) have been
designed, however, these are not commonly used. Studies have
shown that, when compared to other age groups, older users
must make a greater effort to use such systems, leaving them
frustrated and less likely to use them again [1].
A generic framework for this system usability problem
was designed, and a system based on this framework was
implemented – focusing on both simplifying the usability
(via speech recognition) and increasing its effectiveness
by speeding up the chain of commands (through sequence
prediction) issued by the target users. The core functionalities
of the system therefore included a voice interface and machine
learning to learn the sequences, over time, in which commands
are given. As a useful example application in the context of a
retirement home, the system built was one to create and track
reminders and events. A high-level diagram explaining this
system is outlined in Figure 1.
Figure 2. A graph showing the average time taken with and without prediction,
for each participant
It was found that by predicting the user’s spoken commands,
the process by which an older person reaches their goal is sped up,
without the aid of a carer, nurse or allied professional – thus reducing
frustration on the part of the user. The framework was tested with
elderly users, taking careful note of the time taken to complete a
task, or a set of related tasks, before and after the system learns a
sequence of commands (see Figure 2). The implemented SDS was
then evaluated for its usefulness in retirement homes and it was
found that such a system speeds up the reminder process overall.
Audio, Speech &
Language Technology
References
[1] N. Super, “Who Will Be There to Care? The Growing Gap between Caregiver Supply and Demand,” Washington, Jan. 23, 2002.
72 | Faculty of Information and Communication Technology Final Year Projects 2019
A Handwriting Application to Improve Fine Motor Skills
Ryan Zahra
Supervisor: Dr Peter Albert Xuereb
Course: B.Sc. IT (Hons.) Software Development
Education is one of the fundamental aspects of children’s
development, therefore, it is vital that the techniques being
implemented, and the delivery methods used, are engaging
enough for the children to enjoy. This especially important
for children with disabilities. As observed by Engel et al. [1],
a significant percentage (10-30%) of children suffered from
difficulties when it came to handwriting, whether or not those
children had a diagnosed disability. These difficulties will
have ripple effects on other areas in their education, possibly
contributing to lower attention spans, problems in speech and
adverse effects in mathematical skills [1]. Therefore, the main
aim of this project was to take one of the most tedious tasks for
some children, namely handwriting, and develop an educational
application to improve handwriting and the underlying fine motor
skills. The project aimed to make a tedious task [2], [3] more
exciting and therefore encourage children to practise handwriting
more frequently. The application was developed in conjunction
with domain experts, who were involved in both the requirements
and evaluation stages. The development methodology consisted
of choosing a software development life cycle that allowed for
the application to be built iteratively so that feedback from one
iteration could be used to improve the next. The result was an
application that, according to the domain professionals, was
not only excellent at helping to improve handwriting skills, but
also helped improve those fine motor skills that are related to
handwriting, such as hand-eye coordination (due to tracing the
letter formation over system generated help points) and the
tripod grip (when using a stylus).
Figure 2. Screenshots of the most common screens
that the children interact with.
Figure1. Using the tablet application with a stylus to improve the tripod grip.
References
[1] C. Engel, K. Lillie, S. Zurawski, and B. G. Travers, “Curriculum-Based Handwriting Programs: A Systematic Review With Effect
Sizes,” The American Journal of Occupational Therapy, vol. 72, no. March, pp. 1–8, 2018.
[2] A. Baskin, “Sweating the small stuff: improving children’s fine-motor skills,” Today’s Parent, vol. 19, no. May, pp. 45–48, 2002.
[3] N. Kucirkova, D. Messer, K. Sheehy, and C. Fernández Panadero, “Children’s engagement with educational iPad apps: Insights from
a Spanish classroom,” Computers and Education, vol. 71, pp. 175–184, 2014.
Digital Health
L-Università ta’ Malta | 73
Classification of Brain Haemorrhage
in Head CT Scans using Deep Learning
Nicola’ Spiteri
Supervisor: Prof. Inġ. Carl James Debono | Co-supervisors: Dr Paul Bezzina and Dr Francis Zarb
Course: B.Sc. (Hons.) Computer Engineering
A brain haemorrhage is defined as a bleed in the brain tissue and
it is the third leading cause of mortality across all ages. Brain
Haemorrhages are caused either by a haemorrhagic stroke, or
a significant blow to the head [1]. A brain haemorrhage is often
treated as an emergency since it can lead to death, hence the
diagnosis process is very time-critical. One of the most commonly
used diagnostic tools for patients being treated for a brain injury
or patients with symptoms of a stroke or rise in the intracranial
pressure is a non-contrast Computed Tomography (CT) scan or a
Magnetic Resonance Imaging (MRI) scan [2].
Computer-Aided Diagnosis (CAD) systems have been
developed and were introduced to aid radiologists and
professionals in their decision making. CAD systems are intended
to be used as a tool to aid radiologists, rather than replace them.
Deep Learning CAD systems were not highly researched before,
but due to recent advancements in technology, deep learning
algorithms have become more popular, and are now being
researched for their applications in medical imaging [3].
This study utilizes deep learning models to develop a
computer aided diagnosis (CAD) system to classify the different
types of haemorrhages in head CT scans. The system was
designed in such a way that it builds upon the work done on the
final year projects of Mr. John Napier and Ms. Kirsty Sant. Mr.
Napier’s work focused on developing a system that can detect
the presence of a brain haemorrhage in CT scans, and Ms. Sant’s
work involved using a machine learning technique to classify the
brain haemorrhages, based on the intensity, shape and texture
features [4], [5].
Deep learning architectures, namely ResNet, DenseNet, and
InceptionV3 architectures, were analysed in order to find the best
performing architecture to classify the different types of brain
haemorrhages from head CT scans. Moreover, a linear Support
Figure1. Example of an intracerebral haemorrhage.
Vector Machine was also built in order to be able to compare the
performance of these architectures with it.
The dataset was obtained from the General Hospital of Malta
and contained 64 anonymised brain haemorrhage CT scans. 58
of these were used for training the deep learning models, while
the remaining 6 cases were used to test the models. Each of
the architectures was executed for 100 epochs, and the overall
training accuracy was 0.1786 for ResNet, 0.2976 for DenseNet,
0.3690 for InceptionV3 and 0.6083 for the linear multiclass
support vector machine.
References
[1] M. I. Aguilar and T. G. Brott, “Update in intracerebral haemorrhage,” The Neurohospitalist, vol. 1, (3), pp. 148-159, 07, 2011.
[2] Chilamkurthy et al, “Development and validation of deep learning algorithms for detection of critical findings in head CT scans,”
12 April. 2018.
[3] K. Doi, “Computer-aided diagnosis in medical imaging: historical review, current status and future potential,” Computerized Medical
Imaging and Graphics : The Official Journal of the Computerized Medical Imaging Society, vol. 31, (4-5), pp. 198-211, 2007.
[4] J. Napier, “Image processing techniques for brain haemorrhage detection in head CT scans,” 2017.
[5] K. Sant, “Classification of brain haemorrhages in head CT scans,” 2018.
Digital Health
74 | Faculty of Information and Communication Technology Final Year Projects 2019
Mining Drug-Drug Interactions for Healthcare Professionals
Lizzy Elaine Farrugia
Supervisor: Dr Charlie Abela
Course: B.Sc. IT (Hons.) Artificial Intelligence
Adverse Drug Reactions (ADRs) are the fourth leading cause of
death in the US. One such cause of ADRs is brought about through
Drug-Drug Interactions (DDIs). The positive side of this is that such
reactions can be prevented.
Information related to DDIs is dispersed across different
biomedical articles and is growing at an accelerant rate. Currently
there are a number of free repositories available online, such as
DrugBank and Drugs.com that store information about known
DDIs. Nonetheless, these repositories feature a limited amount
of such DDIs and they are only updated every two years. For this
reason, we propose medicX, presented in Figure 1, a system that is
able to detect DDIs in biomedical texts for healthcare professionals,
by leveraging on different machine learning techniques.
The main components within our system are the Drug
Named Entity Recognition (DNER) component that identifies
drugs within the text, and the DDI Identification component
that detects interactions between the identified drugs. Different
approaches were investigated in line with existing research. The
DNER component is evaluated using the BioCreative CHEMDNER
[1] and the DDIExtraction 2013 [2] challenge corpora. On the other
hand, the DDI Identification component is evaluated using the
DDIExtraction 2013 [2] challenge corpus. The DNER component
is implemented using an approach based on bi-directional Long
Short-Term Memory (LSTM) networks with Conditional Random
Fields (CRF). The LSTMs are used to learn word and character
based representations from the biomedical texts, whilst the CRFs
are used to decode these representations and identify drugs
among them.
This method achieves a macro-averaged F1-score of 84.89%
when it is trained and evaluated on the DDI-2013 corpus, which is
1.43% higher than the system that placed first in the DDIExtraction
2013 challenge [3]. Furthermore, our approach is efficient because
it is able to identify drugs in sentences instantly and it does not
require any additional lexical resources.
Figure 1. medicX architecture
Healthcare professionals enter two drugs such as risperidone and haloperidol
into the medicX website. These two drugs are sent to the scheduler, which
sends a request to RxNorm4 to obtain the generic names of the two drugs,
in case brand names were inserted. The scheduler then formulates a set of
queries that are sent to PubMed5. PubMed sends back a number of biomedical
abstracts related to the queries. Afterwards the scheduler sends these
abstracts to the DNER component. This component returns a list of drug names
that were identified from the text. The scheduler subsequently splits the
abstracts into sentences and modifies them to look similar to the data the DDI
Identification model was trained on. Finally, the DDI Identification component
returns a variable that indicates whether an interaction exists between two
drugs in one of the sentences retrieved from the scheduler. The scheduler
formulates a message back to the website.
On the other hand, the DDI Identification component is
implemented using a two-stage rich feature-based linear-kernel
Support Vector Machine (SVM) classifier. We demonstrate that
calculating the average word embedding of a sentence and
detecting trigger words in sentences are rich features for our SVM
classifier. Our DDI Identification system achieves an F1-score of
66.18%, as compared to the SVM state-of-the-art DDI system that
reported an F1-score of 71.79% [4]. Moreover, when our system
was evaluated on a subset of this corpus that consisted solely of
long and complex MedLine sentences, our system came second,
following the state-of-the-art DDI system developed by Zheng et al.
[5] that uses neural networks to locate DDIs. Our system shows
very encouraging results.
References
[1] Krallinger, M., Rabal, O., Leitner, F., Vazquez, M., Salgado, D., Lu, Z., Leaman, R., Lu, Y., Ji, D., Lowe, D.M. and Sayle, R.A., 2015. The
CHEMDNER corpus of chemicals and drugs and its annotation principles. Journal of cheminformatics, 7(1), p.S2.
[2] Herrero-Zazo, M., Segura-Bedmar, I., Martínez, P. and Declerck, T., 2013. The DDI corpus: An annotated corpus with pharmacological
substances and drug–drug interactions. Journal of biomedical informatics, 46(5), pp.914-920.
[3] Rocktäschel, T., Huber, T., Weidlich, M. and Leser, U., 2013. WBI-NER: The impact of domain-specific features on the performance
of identifying and classifying mentions of drugs. In Second Joint Conference on Lexical and Computational Semantics (* SEM),
Volume 2: Proceedings of the Seventh International Workshop on Semantic Evaluation (SemEval 2013) (Vol. 2, pp. 356-363).
[4] Raihani, A. and Laachfoubi, N., 2017. A rich feature-based kernel approach for drug-drug interaction extraction. International
journal of advanced computer science and applications, 8(4), pp.324-3360.
[5] Zheng, W., Lin, H., Luo, L., Zhao, Z., Li, Z., Zhang, Y., Yang, Z. and Wang, J., 2017. An attention-based effective neural model for
drug-drug interactions extraction. BMC bioinformatics, 18(1), p.445.
1
https://bit.ly/2vaWF6e, accessed on 05/12/2018
2
https://www.drugbank.ca accessed on 15/07/2018
3
https://www.drugs.com/ accessed on 15/07/2018
4
https://rxnav.nlm.nih.gov/RxNormAPIs.html, accessed on 30/11/2018
5
https://www.ncbi.nlm.nih.gov/pubmed/ accessed on 13/10/2018
Digital Health
L-Università ta’ Malta | 75
Notes
#FICT19
圀 圀 圀 ⸀ 䜀 䄀 䐀 䜀 䔀 吀 匀 䴀 䄀 䰀 吀 䄀 ⸀ 䌀 伀 䴀
䤀 一 䘀 伀 䀀 䜀 䄀 䐀 䜀 䔀 吀 匀 䴀 䄀 䰀 吀 䄀 ⸀ 䌀 伀 䴀
䔀 堀 倀 伀
Digital services
From concept to reality
As Artificial Intelligence and the Internet of Things move from concept to reality, today’s
businesses face multiple challenges and exciting opportunities.
To find out how we could work with you visit www.pwc.com/mt
Data
Analytics
Cyber
Security
Cloud
Services
Artificial Intelligence
Blockchain
IT
Audits
Managed
Services
Internet of Things
Follow us on:
© 2019 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.
Connect with your peers
and develop your future with
the IEEE Computer Society.
Join the newly formed
IEEE Computer Society
Malta Section Chapter.
Contact us at
info@ieeemalta.org