Post on 27-Jan-2016
description
transcript
MSc Project Portfolio Spring 2015
For all 2014/2015 MSc cohorts except
January 2015 Network Security (INS)
i
Instructions for completing the Project Choice Form
1. If you have an agreed project and supervisor, then you do not need to submit a project choice form. Otherwise:
2. Please choose FIVE projects.
3. Do not choose more than TWO projects from any one member of staff.
4. Please return your completed form to the labelled
coursework box by Monday May 11th, 2015.
5. See the notes overleaf for further explanation.
ii
Notes
1. Many projects are available to all students. However, some projects are labelled as (e.g.):
Suitable for: INS students only Suitable for: Oil & Gas students only Suitable for: Students who started in Jan 2016 only (because of staff availability).
Therefore, you should only choose a project with a “Suitable for” restriction if you’re studying on the specified course(s).
2. For each project you choose, please enter the full title, the name of the
proposer (if given) and the page number within the portfolio where the project appears. Some projects have very similar titles, and providing these details will ensure that I interpret your requests correctly.
3. Please do not choose more than two projects proposed by any one member
of staff.
If a project doesn’t specify a supervisor name, then this restriction does not apply.
4. Before submitting your choices, you are advised to contact the proposer(s)
of the projects you are interested in where possible, to find out in more detail what the project will involve. However, you should note that the project proposer will not necessarily be the eventual supervisor, since we must ensure that the supervisory load is fairly distributed between staff.
5. Submitting an incomplete form is NOT a good way of ensuring you get the
project you want. Students who submit fewer than five choices will be treated with lowest priority whenever there is a conflict (i.e., whenever two or more students want the same project).
iii
MSc Project Choice Form
Name:
Matric. Num. Course
1st Title
Proposer Page
2nd Title
Proposer Page
3rd Title
Proposer Page
4th Title
Proposer Page
5th Title
Proposer Page
1
Hatem Ahriz
Robert Gordon University, School of Computing Science and Digital Media
Project Specification
Title Ad‐blocking software and SSL compromises
Supervisor Dr. Hatem Ahriz, h.ahriz@rgu.ac.uk
Suitable for INS Students ONLY
Key Techniques Computer and Network Security Background Ad‐blocking software (e.g., PrivDog [1]) has recently been in the news (e.g., [2]) after some researchers identified that it can pose a threat to the SSL (Secure Socket Layer) protocol. Other research has also shown that a growing list of software, including anti‐malware and parental control software, can also compromise SSL security. The aim of the project is to investigate some of these software products and the claim they could compromise SSL protocol security. Objectives
To investigate the SSL protocol and its vulnerabilities (e.g., man‐in‐the‐middle attacks)
To investigate Ad‐blocking and anti‐malware software and their interaction with SSL
To design/implement/test/evaluate an experimental setup to demonstrate SSL compromises by such software
References [1] http://www.privdog.com/ [2] https://blog.hboeck.de/archives/865‐Software‐Privdog‐worse‐than‐Superfish.html
2
Hatem Ahriz
Robert Gordon University, School of Computing Science and Digital Media
Project Specification
Title Botnet Analysis and Detection
Supervisor Dr. Hatem Ahriz, h.ahriz@rgu.ac.uk
Suitable for INS students ONLY
Key Techniques Computer and Network Security, Programming Background Botnets are one of the most sophisticated and popular types of cybercrime today. They allow hackers to take control of many computers at a time, and turn them into “zombie” computers to spread viruses, generate spam, etc. [1] The aim of the project is to investigate botnets and develop an application/environment that can simulate a botnet behavior and detect its presence. Depending on the student’s programming skills, this project could either involve developing an application (in a language of the student’s choice) that can simulate a bot’s behavior and interface with an Intrusion Detection System (IDS) such as snort [2] in order to simulate the detection of the bot’s activity. Alternatively, the project can focus mainly on setting up the virtual environment for running an actual bot and evaluating the efficiency and effectiveness of the IDS in detecting the bot’s activity. Objectives * To investigate the different types of botnets, methods of infection and detection methods… * To design/implement (or setup)/test/evaluate an experimental setup to demonstrate the use
of the application in simulating bot activity and its detection. References [1] http://uk.norton.com/botnet [2] https://www.snort.org/
3
Hatem Ahriz
Robert Gordon University, School of Computing Science and Digital Media
Project Specification
Title HoneyPots
Supervisor Dr. Hatem Ahriz, h.ahriz@rgu.ac.uk
Suitable for INS students ONLY
Key Techniques Computer and Network Security Background In computer terminology, a honeypot is a trap set to detect, deflect, or, in some manner, counteract attempts at unauthorized use of information systems. [1] The aim of the project is to investigate the use of honeypots to secure information systems and networks. Objectives * To investigate the different types of honeypots, how they are deployed, why they are used, and how effective they are… * To investigate the legal and ethical issues around deploying honeypots (using the UK context, for example), and to design a check list for organisations considering the use of honeypots * To design/implement/test/evaluate an experimental setup to demonstrate the use of
honeypots References [1] http://en.wikipedia.org/wiki/Honeypot_(computing)
4
Hatem Ahriz
Robert Gordon University, School of Computing Science and Digital Media
Project Specification
Title Evaluation of Intrusion Detection Systems (IDS)
Supervisor Dr. Hatem Ahriz, h.ahriz@rgu.ac.uk
Suitable for INS students ONLY
Key Techniques Computer and Network Security Background Intrusion detection is the process of monitoring the events occurring in a computer system or network and analyzing them for signs of possible incidents. [1] The aim of the project is to design a framework for evaluating IDS and conducting such an evaluation on selected IDPS. Objectives * To investigate the various types of IDS, how they are used in organisations, and the types of threats they can defend against… * To identify the metrics that can be used in the evaluation of IDS * To investigate the tools that can be used to generate background and attack traffic for IDS
evaluation * To design/implement/test/evaluate an experimental setup for IDS evaluation for a chosen
type of attack. References [1] K. Scarfone, P. Mell, Guide to Intrusion Detection and Prevention Systems (IDPS), National Institute of Standards and Technology (NIST), 2007.
5
Hatem Ahriz
Robert Gordon University, School of Computing Science and Digital Media
Project Specification
Title Web Application Firewalls (WAF)
Supervisor Dr. Hatem Ahriz, h.ahriz@rgu.ac.uk
Suitable for INS students ONLY
Key Techniques Computer and Network Security, Web Technologies (HTTP…) Background A Web application firewall (WAF) is an appliance, server plugin, or filter that applies a set of rules to an HTTP conversation [1]. The aim of the project is to investigate Web Application Firewalls (WAF) and evaluate the effectiveness of selected WAFs in preventing common attacks such as XSS (cross‐site scripting) and SQL injection. Objectives * To investigate common web application attacks * To analyse the functionality, benefits and limitations of WAFs * To design/implement/test/evaluate an experimental setup to demonstrate the security
features of WAFs References [1] https://www.owasp.org/index.php/Web_Application_Firewall
6
Hatem Ahriz
Robert Gordon University, School of Computing Science and Digital Media
Project Specification
Title Migration to IPv6
Supervisor ???
Suitable for INS students ONLY
Key Techniques Computer Network Protocols, Security Background Organisations are considering what needs to be done in migrating from IPv4 to IPv6. One area of particular interest is security. According to an InformationWeek Analytics report on IPv6 security: “There are black hats out there who see IPv6 as a once‐in‐a‐lifetime opportunity.” [1] The aim of the project is to investigate the threats to IPv6 traffic and propose a roadmap for a secure, and cost‐effective, transition from IPv4 to IPv6. Objectives * To investigate how organisations and vendors are planning for IPv6 migration and to survey the key issues that are at stake in this migration * To analyse the effect on network security of such migration * To design/implement/test/evaluate an experimental setup to demonstrate how such a
migration can take place References [1] http://stuff.is‐a‐geek.net/OnlineDocs/Pending/ipv6‐security.pdf Note: This project was obtained by Hatem Ahriz, but will NOT be supervised by him.
7
Inés Arana
MSc Project Proposal
Project Title : A demonstrator for data analysis and visualisation using Tibco
Spotfire.
Supervisor:.Ines Arana, i.arana@rgu.ac.uk, Tel: 01224262716
Key Words: Data visualisation, data analysis.
Background
Companies currently collect substantial amounts of raw data. Data often needs to be cleaned up, summarised and analysed before it can be visualised and interpreted, and finally used in business decision-making. Tibco Spotfire is a sophisticated tool for data visualisation and analysis which is widely used in industry. Aims This project aims to produce a demonstrator of the various stages of data processing to aid in business decision making using Tibco Spotfire. Objectives
1. To investigate existing work and tools used in data analysis and visualisation. 2. To select a number of datasets for the project in a domain of interest to the student. 3. To become proficient in the use of the Spotfire data visualisation and analysis tool. 4. To analyse, design, implement, test and evaluate a demonstrator for data visualisation and analysis
using Spotfire. Required Skills
1. Strong programming skills. 2. Basic understanding of statistics.
Bibliography
E. Tufte, The Visual Display of Quantitative Information, 2nd Ed., Graphics Press LLC, 2001
E Tufte Visual Explanations, Graphics Press LLC, 1997
Tools for data analysis and visualisation
1. TIBCO Spotfire http://spotfire.tibco.com/ [ accessed 29/8/2014]
8
Inés Arana
SchoolofComputingThe Robert Gordon University
Project Specification
Title A geoscience tutor
Proposer Dr Inés Arana – Room N432e, Riverside East, i.arana@rgu.ac.uk
Suitable for Oil & Gas students ONLY
Key Techniques Web‐Based Systems, tutoring systems.
BackgroundGeoscience is a key topic in the Oil and Gas industry.
Aim
To develop an educational site to enable people to learn about about geoscience.
Objectives
- To learn about tutoring systems, with particular focus on geoscience tutoring systems - To design a suitable web‐based system (including a user interface) to teach users about a
selected area of geoscience. - To implement the system - To test and evaluate the system - To document the system.
References
1. ULLMAN, L.,2010 Effortless E−Commerce with PHP and MySQL. New Riders. 2. World Wide Web Consortium, Web Design and Applications, http://www.w3.org/standards/webdesign/ ,
accessed 24/4/2015
3. MySQL, www.mysql.com , accessed 24/4/2014
9
Inés Arana
Title An OilSim support tool Proposer Inés Arana – Room N432e Riverside East, i.arana@rgu.ac.uk Suitable for Oil & Gas students ONLY Key Techniques Key techniques may vary depending on what support tool is developed but will include GUI techniques. Background OilSim by NeXT is a software tool aimed at teaching users about all aspects of the Oil and Gas Industry, from initial exploration through to decommissioning. The tool simulates the real process taken in the industry and includes the following stages: geology study, prospecting, exploration and drilling, depletion plan, facilities plan, construction, production and decommissions. OilSim is available via a web browser and includes a wide variety of information sources such as interactive maps, geological surveys, simulated drilling, etc. Thus, the user will explore vast amounts of information and may require a software tool to keep track of the data and assist with decision-making. Aims To develop a suite of software tools to help the user keep track and make decisions related to an OilSim simulation. Objectives To analyse OilSim To investigate tools and techniques which can be used in order to produce a set of
tools to keep track of data and make decisions in an OilSim simulation To design, implement, test and evaluate a set of tools to help with an OilSim simulation To document the implemented system Note: the tools developed will be independent from the OilSim software, i.e., the tool will not be added to OilSim (accessed via a web browser) but simply launched at the same time on the local machine. References [1] OilSim Software page http://www.nexttraining.net/immersive-learning-
programs/OilSim.aspx [accessed 24/04/2015]
10
Robin Boswell
Title A program to play Mancala games
Proposer Robin Boswell (r.boswell@rgu.ac.uk)
Keywords
Game-playing, minimax search.
Background
The name “Mancala” denotes a class of games where beans or other small objects are moved (“sown”) around an array of holes [Parlett 1999]. The object of the game is to capture beans and remove them from the board. Figure 1 shows a Sengalese hand-made board with a game in progress.
Aim The aim of the project is to create a program that would allow the computer to play games of the mancala family in an intelligent fashion against a human opponent. The AI technique of minimax search [Nilsson 1998] is applicable to 2-player games of this type. Issues
The mancala family includes a wide range of games. This project does not aim to create a program which can play all of them, but it should allow the user some choice in the form of the game he or she wishes to play. A more sophisticated approach might include an interface which allows the user to define a variety of existing or new forms of the game by choosing appropriate parameter values.
Part of the pleasure of playing the game derives from the physical experience of holding
and sowing the seeds. This would necessarily be lost in a computer application; however some thought needs to be given to the design and implementation of an attractive graphical interface, which might include animation or sound.
Figure 1: A Senegalese Mancala board [ALDEN et al 2012]
11
Robin Boswell
References ALDEN et al 2012. Mancala board. In: BoardGameGeek. Available from http://boardgamegeek.com/image/1069131/mancala [ Accessed April 19th, 2012] NILSSON, N. 1998. Artificial Intelligence: A new synthesis. Morgan Kaufmann. San Francisco, CA. PARLETT, D., 1999. The Oxford History of Board Games. Oxford University Press, Oxford.
12
Robin Boswell
Title Information retrieval from a music database
Proposer Robin Boswell (r.boswell@rgu.ac.uk)
Keywords
Information retrieval, music
Background
There are various ways in which music can be represented in paper or electronic formats.
Conventional staff notation is human readable, but not convenient for searching or editing
without the use of specialised application software. Alternative notations have therefore
been developed which aim to provide the convenience of a purely text-based representation
while being understandable to someone familiar with conventional notation. The most
well-known is probably sol-fa. Another is the ABC notation [Walshaw 2006]. A number
of tune databases in ABC notation are available on the internet: Walshaw (2006) provides
an index of over 3000 publicly available ABC databases.
It is generally straightforward to search an on-line music collection for a tune whose name
is known. What is much harder is to search for the tune itself; that is, for a given sequence
of notes .There are a number of difficulties associated with music retrieval. The most
fundamental is that most people do not have perfect pitch, so that even if someone can
remember a tune, she probably won’t remember the pitch at which she heard it. Hence, to
be of any use, a retrieval tool must be able to match a query in one key with a target tune in
a different key.
A second difficulty is inaccuracy of recall. People trying to recall tunes from memory may
do so inaccurately, making mistakes in both pitch and time, and omitting or adding notes.
Secondly, folk tunes in particular may exist in many slightly different forms, so there is no
one “correct” version. A retrieval system should therefore incorporate some form of fuzzy
matching. Ideally, this fuzzy matching should take account of the ways in which human
memory and recall tend to mutate tunes.
The existence of on-line databases and the desirability of a mechanism for identifying tunes
motivates this project, whose goal is to build a music retrieval system.
13
Robin Boswell
Objectives
To investigate on-line music databases, and the representation schemes they use.
To investigate techniques for storing and retrieving tunes.
To design and implement a music retrieval tool which will use retrieve tunes from a
database given a query provided by the user.
There are a several features which would make the tool more useful.
The ability to tune the fuzzy matching algorithm, e.g., by specifying how “close”
retrieved tunes must be to the query.
The ability to order results according to their similarity with the query
The facility for the user to enter a query in different ways, e.g., in one of the various
available forms of textual notation, or via a virtual keyboard, …
The detailed specification for the tool will be developed by the student during the
investigation phase of the project, in discussion with the supervisor.
References BARLOW, H. and MORGENSTGERN, S., 1949. Dictionary of musical themes. London: Ernest Benn NELSON, L., 2010. Contemplations from the Marianas Trench/Folk Music of Britain, Ireland & America.[online]. Available from http://www.contemplator.com/ [Accessed 14th April 2010] WALSAW, C., 2006. The abc home page. [online]. London: University of Greenwich. Available from: http://abcnotation.org.uk/ [Accessed 12 December 2012]
14
Robin Boswell
Title Project assignment tool using network flow optimisation
Proposer Robin Boswell (r.boswell@rgu.ac.uk)
Keywords
Optimisation problems, minimum cost network flow, task allocation
Background
Every year, between 100 and 150 honours and MSc students have to undertake an
individual project. Since no two students are allowed to work on the same project, each
student is asked to submit a list of project choices, after which the project co-ordinator will
assign projects to students with the aim of satisfying as many students as possible. This is
a complex task for a human, but the underlying problem is to which a variety of
computational techniques are applicable. Project assignment is therefore a domain in
which it would be both feasible and useful for a student to develop an automated tool to
assist the project co-ordinator.
Technology
One technology that is particularly suitable for modelling the project assignment problem is
that of network flow optimisation, specifically the minimum cost flow problem. A network
can be constructed to represent the project assignment task, where nodes represent students
and projects, and arcs link students to their chosen projects. Arcs to projects further down a
student’s list of choices will be assigned increasingly high costs. Additional arcs can be
used to represent staff quotas. An optimal flow through this network will correspond to an
optimal assignment of projects to students.
The chief advantage of representing project assignment as a minimum cost flow problem is
that efficient algorithms exist for solving this problem (Lawrence and Pasternack 2002) and
software is freely available which implements these algorithms (Eikland and Notebaert
2010).
Objectives
Since software for network flow optimisation already exists, the student will not need to
implement any optimisation algorithms. Instead, he or she will create a project assignment
tool that performs the following steps:
15
Robin Boswell
o Input all the data related to projects, staff and students.
o Generate the corresponding network.
o Run the optimisation software.
o Interpret the results.
o Display the corresponding project assignments.
The minimum requirement for such a tool is that it should be able to read a file containing a
list of student choices and generate a set of project assignments. There are a number of
other features which would make the tool more useful.
A further constraint on project assignment is the need to balance staff supervision
loads. The tool should be able to take staff loads into account in some way, e.g., by
imposing a limit on the number of students each member of staff is asked to
supervise.
There is a trade-off between giving as many students as possible a project occurring
anywhere in their list, and giving students projects near the top of their list. Is it
better to give four students their first choice and a fifth student none of his chosen
projects, so that he has to choose again, or to give all five students their last choice?
The tool should allow the user to adjust assignment costs to reflect different
policies.
The user may wish to assign certain projects by hand, or to prevent certain
assignments. The tool should allow this option if required.
Note that the above points are only suggestions. A detailed specification would be
developed by the student during the research phase of the project, in discussion with the
supervisor.
Finally, prospective students should note that, although the project assignment problem can
be simply stated, creating a tool to solve it for a realistic number of students and projects is
a non-trivial task. If you choose this project, you will be expected to use the proposed
technology. Past experience shows that students who ignore existing work and devise their
own algorithms from scratch are extremely unlikely to be successful.
16
Robin Boswell
References LAWRENCE, A.J. and PASTERNACK, B. A., 2002. Applied management science. Hoboken, NJ: John Wiley & Sons, Inc. EIKLAND, K. and NOTEBAERT, P. , 2010. Lpsolve., [online]. Sourceforge. Available from: http://sourceforge.net/projects/lpsolve/files/lpsolve/ [Accessed 18 December 2013].
17
Michael Crabb
A User-Based Research Experiment System
Dr Michael Crabb
In user based research it is important to have consistency between experimental sessions. One method that can be used to aid in this is to rely on software to guide participants and facilitators through a session. Aspects such as obtaining informed consent from participants, gathering demographic information, and the order in which experiment tasks are carried out are all important when conducting these types of experiments. Within experimental sessions, a common technique used to gather information is through questionnaires. These can be used obtain information to compare between different systems. The data collected in these questionnaires needs to accurate, correct, and consistent between participants
The purpose of this project is to create a system that will be used in future research experiments. This system must be able to:
Obtain informed consent from participants (text for this will be provided) Gather demographic information from participants Gather information from quantitative questionnaires from participants. Provide a guide for participants/facilitators as to the tasks that are being accomplished Export all data into a suitable format (e.g. .csv) once an experiment is completed.
In terms of the front and backend web programming languages that will be used, this can be decided upon by the student. The end result, however, must be cross-browser compatible, not require any additional plug-ins (i.e. Java) and should be easy for a non-computer expert to use. Data collected in the system should be easily exported into a .csv file (or similar).
For further information on this project please contact Dr Michael Crabb (m.j.crabb@rgu.ac.uk)
18
Michael Crabb
Boggle
Dr Michael Crabb
Boggle is a word game that is played using 16 lettered dice that are arranged in a 4x4 grid. The purpose of the game is to create words by using the letters in the grid. Only adjoining letters can create words. The figure below shows some sample words that are acceptable.
Each of the 16 lettered dice have pre-determined letters. The letter that appears, and the order in which they appear on the board changes in every game. This means that every game is different.
The purpose of this project is to create a web based version of this game. An outline of possible steps is detailed below:
Basic
1. Each of the 16 dice has specific letters attached to them
2. A random letter from each die needs to be selected for each ‘game’
3. The letters need to then be placed in a random pattern using 4x4 grid
4. A timer should be implemented so that each game lasts a certain amount of time
Advanced
1. Players should be able to enter words and have these verified in real time by the computer
2. The computer should keep track of the players score
3. At the end of the game, the computer will be able to determine all possible words that were available (using a dictionary) on a given board
In terms of the front and backend web programming languages that will be used, this can be decided upon by the student. The end result, however, must be cross-browser compatible, not require any additional plug-ins (i.e. Java) and should be easy for a non-computer expert to use.
For further information on this project please contact Dr Michael Crabb (m.j.crabb@rgu.ac.uk)
19
Michael Crabb
Creating A Website from Wikipedia
Dr Michael Crabb
Wikipedia is an online encyclopedia that contains articles that are created and edited by its members. Articles vary in length and the increasing length can pose a problem to some users. The purpose of this project is to create a system that takes a Wikipedia entry and then generates a fully functional website from this.
Wikipedia pages can be exported in an XML format in order to be used for other reasons. An example XML output from Wikipedia can be found here:
http://en.wikipedia.org/wiki/Special:Export/Robert_Gordon_University
The XML file will need to be parsed, interpreted, and then a website created from the results. The website should have separate pages based on the different sections and subsections of a given Wikipedia page. Images should also be copied across. In order to complete this project, students will need to acquire an understanding of the MediaWiki language, develop their front and back end web programming skills, and have excellent project management.
In terms of the front and backend web programming languages that will be used, this can be decided upon by the student. The end result, however, must be cross-browser compatible, not require any additional plug-ins (i.e. Java) and should be easy for a non-computer expert to use.
There are many possibilities to extend this project, and these will depend on the areas of interest shown by the student. Possibilities include:
Creating browser plugins to generate these ‘meta-websites’ when they are requested by users browsing Wikipedia
Examine the linking of multiple website together to create an even larger network of articles Creating accessibility and usability adaptions to the finished website to make it more suitable for users
with different abilities and needs.
For further information on this project please contact Dr Michael Crabb (m.j.crabb@rgu.ac.uk)
20
Michael Crabb
Visualisation of European Energy Data
Dr Michael Crabb
Suitable for Oil & Gas students ONLY
Open access data sets are available online containing energy statistics for the European Union. A particularly good source for this data can be found at ec.europa.eu/eurostat/data/database Examples of data that is available here include:
Prices of natural gas and electricity by country Oil stock levels Energy imports and exports Energy Infrastructure
Data is freely available to download in a number of formats (xls, csv…) and lends itself to a variety of data visualisation tasks. The purpose of this project is to create an interactive visualisation of this data. During this project, students will be expected to:
Examine datasets available and select suitable sources for creating a visualisation Use suitable APIs that combine different online sources together (Google maps etc.) Present the final visualisations in a meaningful way that is easy to understand
In terms of the front and backend web programming languages that will be used, this can be decided upon by the student. The end result, however, must be cross-browser compatible, not require any additional plug-ins (i.e. Java) and should be easy for a non computer expert to use.
Note - the brief for this project is intentionally left very wide to give students the chance to examine datasets before deciding what to create. The purpose, therefore, is find interesting ways to visualise large amounts of data and to present this in a method that is easily interpretable.
For further information on this project please contact Dr Michael Crabb (m.j.crabb@rgu.ac.uk)
21
David Davidson
ProjectProposal
ASSETMANAGEMENTSYSTEMUSINGANDROIDMOBILEANDCAMERAASFRONT‐ENDQRCODEREADER
AIMTo design and implement an asset tracking system based on the use of an Android mobile phone and
built‐in Camera as front‐end QR code reader.
BACKGROUNDThis project will involve the use of an Android mobile phone and built‐in Camera which will be
programmed to act as remote QR code reader. QR codes could be used to label School assets
(although other application areas could be investigated e.g. student attendance monitoring). The
Android mobile would connect via Wifi to a server with access to a central asset database for
reading / updating information about individual assets.
The Android mobile will be programmed in Java using Android Studio as the integrated development
environment.
PROJECTGOALSThe goals of the project are:
1. Learn to program an Android mobile using Android Studio
2. Identify a suitable library for QR decoding
3. Develop software to enable decoding of QR codes and remote updating of asset history via Wifi.
PREREQUISITES
The student will require to learn Java programming for Android.
REFERENCES
http://developer.android.com/index.html
for more information on Android software development.
https://github.com/zxing/zxing
for more information on a possible choice of QR code reading library
D.G.Davidson 16/4/2015
22
David Davidson
ProjectProposal
ASSETMANAGEMENTSYSTEMUSINGRASPBERRYPIANDCAMERAASFRONT‐ENDQRCODEREADER
AIMTo design and implement an asset tracking system based on the use of the Raspberry Pi and Camera
as front‐end QR code reader.
BACKGROUNDThis project will involve the use of the Raspberry Pi and Camera which will be programmed to act as
remote QR code reader. QR codes could be used to label School assets (although other application
areas could be investigated e.g. student attendance monitoring). The Raspberry Pi would connect via
Wifi to a server with access to a central asset database for reading / updating information about
individual assets.
The Raspberry Pi will be programmed in Python using a PC for remote development.
PROJECTGOALSThe goals of the project are:
4. Learn to program the Raspberry Pi and interfaces in Python
5. Identify a suitable library for QR decoding
6. Develop software to enable decoding of QR codes and remote updating of asset history via Wifi.
PREREQUISITES
The student will require to learn Python.
REFERENCES
http://www.raspberrypi.org/
for more information on the Raspberry Pi and its General Purpose IO interface.
https://pypi.python.org/pypi/zbar
for more information on a possible choice of bar code reading library
D.G.Davidson 16/4/2015
23
David Davidson
ProjectProposal
ASSETMANAGEMENTSYSTEMUSINGRASPBERRYPIANDRFIDREADER
AIMTo design and implement an asset tracking system based on the use of the Raspberry Pi and RFID
reader.
BACKGROUNDThis project will involve the use of the Raspberry Pi and RFID reader. RFID tags could be used to label
School assets (although other application areas could be investigated e.g. student attendance
monitoring). The Raspberry Pi would connect via Wifi to a server with access to a central asset
database for reading / updating information about individual assets.
The Raspberry Pi will be programmed in Python using a PC for remote development.
PROJECTGOALSThe goals of the project are:
1. Learn to program the Raspberry Pi and interfaces in Python
2. Identify a suitable RFID reader and Python library for controlling the RFID reader
3. Develop software to enable reading of RFID tag data and remote updating of asset history via
Wifi.
PREREQUISITES
The student will require to learn Python.
REFERENCES
http://www.raspberrypi.org/
for more information on the Raspberry Pi and its General Purpose IO interface.
http://www.adafruit.com/products/364
for more information on a potential choice of RFID/NFC reader
D.G.Davidson 16/4/2015
24
David Davidson
ProjectProposal
DATALOGGINGSYSTEMUSINGRASPBERRYPIANDIOT(MQTT)PROTOCOLWITHWEBINTERFACE
AIMTo design and implement a distributed data logging system based on the use of a Raspberry for data
acquisition, data transmission and data collection using an "Internet of Things" protocol MQTT.
BACKGROUNDThis project will involve the creation of a distributed system comprising:
Raspberry Pi hosting a MQTT server and web server
Raspberry Pi collecting data and acting as MQTT client sending data to the MQTT server
The Raspberry Pi's will be programmed in Python using a PC for remote development.
PROJECTGOALSThe goals of the project are:
1. Learn to program the Raspberry Pi and interfaces in Python
2. Become familiar with IOT protocol MQTT.
3. Develop an administrative web interface.
PREREQUISITES
The student will require to learn Python.
REFERENCES
http://www.raspberrypi.org/
for more information on the Raspberry Pi and its General Purpose IO interface.
http://mqtt.org/
for more information on MQTT
http://flask.pocoo.org/
for more information on a python web micro‐framework
D.G.Davidson 16/4/2015
25
David Davidson
ProjectProposal
SECUREENTRYSYSTEMCONTROLLEDBYRASPBERRYPIANDNFCCARDREADER
AIMTo design and implement a secured entry control system based on the use of a Raspberry Pi and NFC
card reader.
BACKGROUNDThis project will involve the use of the Raspberry Pi and NFC Card Reader which will be programmed
either to grant or deny access via a (physical) door lock depending on the identity of the owner of
the NFC card. (The door locking mechanism will be simulated). NFC cards will be programmed to
identify the card owner. The Raspberry Pi would connect via Wifi to a web server with access to a
central user ID database for reading / updating information about individual card owners (physical)
access rights (i.e. to gain or be denied entry).
The Raspberry Pi will be programmed in Python using a PC for remote development.
PROJECTGOALSThe goals of the project are:
1. Learn to program the Raspberry Pi and interfaces in Python
2. Learn how to read and write data to NFC cards
3. Develop an administrative web interface.
PREREQUISITES
The student will require to learn Python.
REFERENCES
http://www.raspberrypi.org/
for more information on the Raspberry Pi and its General Purpose IO interface.
www.nxp.com/documents/data_sheet/MFRC522.pdf
for more information on NFC card reading / writing
http://flask.pocoo.org/
for more information on a python web micro‐framework
D.G.Davidson 16/4/2015
26
Eyad Elyan
BSc Project Proposal Project Title : Motion Detection and Analysis Supervisor: Dr. Eyad Elyan, e.elyan@rgu.ac.uk , Extension 2737
School of Computing Science and Digital Media Robert Gordon University
Key Techniques: Machine vision, image processing, machine learning Background
The project aims to develop a method to detect and track human movements in video files. The project requires using image-processing techniques such as segmentation, edge detection, etc, … In addition, a machine learning (classifier) approach will be used to classify these movements. The type of activity to be monitored is to be discussed with the student, and this should be a simple one. Alternatively, a public data set may be used. Note The student may use an existing open source software package (e.g. OpenCV, Python, R, etc…) instead of developing the entire software from scratch. Requirements 1. Investigating existing literature and software technologies 2. Chose, design and implement algorithms to meet the main objectives of the project 3. Write appropriate technical documentation. Required Skills
1. Good programming and mathematical skills 2. Ability and willingness to learn and work hard.
27
Eyad Elyan
BSc Project Proposal Project Title : Body Shape Difference Visualisation Supervisor: Dr. Eyad Elyan, e.elyan@rgu.ac.uk , Extension 2737
School of Computing Science and Digital Media Robert Gordon University
Key Techniques: Computer Graphics, C++ Programming skills, Basic Mathematical Skills Background
The main objective of this project is to develop 3D software that enables the users to visualise difference between two 3D human body models (See Figure 1).
Figure 1. Different perspective views of a 3D human body model Aims In particular the software should be designed and implemented to address the following features
1. Read 3D and display 3D files of human body models 2. Allow the viewing of more than one 3D model at a time. 3. The software should provide the user with a mechanism to select a specific model and
transform it (e.g. translate, rotate, etc...) 4. Enable the users to interactively change the orientation of the model (e.g. frontal pose, side,
perspective, etc...), usually this is achieved by mouse click and drag 5. Enable the user to register the displayed models to the same pose and orientation. This is
necessary to simplify the visualizations of the difference (manual approach is acceptable) 6. Provide a way to visualise the difference between the two shapes (e.g. different colours and
shading, setting one model to be transparent, etc...), see Figure 1. Note The student may use an existing open source software package (e.g. Paraview, Meshlab, etc...) instead of developing the entire software from scratch. Requirements 1. Investigating existing literature and software technologies used in the 3D graphics area. 2. Chose, design and implement algorithms to meet the main objectives of the project 3. Write appropriate technical documentation. Required Skills
1. Good programming and mathematical skills (C++ and OpenGL and knowledge of Linear
Algebra are advantages). 2. Ability and willingness to learn and work hard.
28
Eyad Elyan
Links Body Shape Visualization http://cs.brown.edu/~black/
29
Eyad Elyan
BSc Project Proposal Project Title: Hand-written digits recognition Supervisor: Dr. Eyad Elyan, e.elyan@rgu.ac.uk , Extension 2737
School of Computing Science and Digital Media Robert Gordon University
Key Techniques: Machine vision, image processing, machine learning Background
The project aims to develop a method to classify hand-written digits. The project will involve developing the underlying algorithms for classifying digits as well as a front end to show when a correct / incorrect classification. Note The student may use an existing open source software package (e.g. OpenCV, Python, R, etc…) instead of developing the entire software from scratch. Requirements
1. Investigating existing literature and software technologies 2. Chose, design and implement algorithms to meet the main objectives of the project 3. Write appropriate technical documentation.
Required Skills
1. Good programming and mathematical skills 2. Ability and willingness to learn and work hard.
30
Mohammed Gaber
Four projects from Dr Mohammed Gaber
m.gaber1@rgu.ac.uk
Suitable for:
Students who started their course in January 2016 only.
These projects cannot be assigned to students from the September cohorts,
since the supervisor will not be available over the summer.
Adoption of Diversity Prediction Theorem in Ensemble Learning
You need to be an excellent programmer in either Java or R to undertake this project. Diversity
Prediction Theorem promotes the importance of diversity in numerical prediction. In this project, the
student will mathematically formalise the theorem for classification problems using ensemble
learning, particularly Random Forests. The implementation of Random Forest that uses the new
mathematical formalisation will be used to assess the usefulness of diversity when taking into
consideration the predictive accuracy of individual classifiers.
Implementing an R Package for Random Forest Pruning using Clustering
You need to be an excellent programmer in Java to undertake this project. You will also need to
learn the statistical computing language R, if you don’t already know it.
CLUB‐DRF is a new method for diversifying and pruning Random Forests, using clustering of the
classification behaviour of individual trees in the ensemble. You will be required to develop an R
package to convert an existing Java implementation of CLUB‐DRF to R. This task will be followed by a
thorough experimental study of the method over a number of medical datasets. Datasets will be
provided.
Implementing an R Package for Boosting Diversity through Replicator Dynamics
You need to be an excellent programmer in Java to undertake this project. You will also need to
learn the statistical computing language R, if you don’t already know it.
RD‐DRF is a new method for diversifying Random Forests using the replicator equation. You will be
required to develop an R package to convert an existing Java implementation of RD‐DRF to R. This
task will be followed by a thorough experimental study of the method over a number of medical
datasets. Datasets will be provided.
31
Mohammed Gaber
Implementing an R Package for Diversified Random Forests (DRF) through Feature Clustering
You need to be an excellent programmer in Java to undertake this project. You will also need to
learn the statistical computing language R, if you don’t already know it.
DRF through random subspacing is a new method for diversifying Random Forests. A number of
subforests are created, each with a different randomised set of features. You will be required to
develop an R package to alter the method to partition the feature space into disjoint clusters of
features instead of using random subspacing. This task will be followed by a thorough experimental
study of the method over a number of medical datasets. Datasets will be provided.
32
Ayse Goker
Dr Ayse Goker Social media projects Online social and news media generate rich and timely information about real-world events. It is also a forum where a considerable amount of discussion and follow-up debates around particular topics emerge. This large scale data available, the large number of users, along with the breadth of the user base, present challenges to online news systems. There are challenges in trending topic detection, filtering, and presentation of results, in addition to catering for different content perspectives and personalisation. In addition to dealing with fast stream content, there are challenges in dealing with heterogeneous and multimedia content. We have compared these with US Elections, Super Tuesday (USA Republican Party elections), and for FA Cup/ Football. We have implemented a version of the system for Scottish Referendum with different visualisation. For example, http://socialsense1.comp.rgu.ac.uk/scottish_independence_frontend/index.html For general information see also http://www.socialsensor.org/ There are opportunities in the following, for example: - to help evaluate news prototypes for online social networks with real-time content. - to analyse previously crawled Tweet data sets. - to investigate aspects of the social media activity around the Scottish Referendum. - to use and extend open-source components and code in this area.
33
Ayse Goker
UXLabsMScprojectideas2015
These are five externally sponsored projects, co-ordinated by Dr Ayse Goker.
Contact Dr Goker for further details
InteractiveQueryExpansionAccording to the IDC whitepaper, The High Cost of Not Finding Information, knowledge workers spend
2.5 hours per day searching for information. Assuming they either find what they are looking for
eventually or stop and end up making a non‐optimal decision, there is a high cost to both outcomes. To
address this problem, UXLabs is developing a radical alternative to traditional query formulation. We are
creating a novel, visual framework which allows users to express information needs in a manner that is
simple and intuitive, facilitating the expression of complex queries via a simple but powerful visual
syntax. However, to become a viable proposition, we must solve the crucial problem of keyword
selection: i.e. for a given query, how can we identify the optimal set of search keywords and phrases?
The aim of this project is to develop an intelligent query generation engine which can expand an initial
expression to include an optimal set of related terms and synonyms, going far beyond the limitations of
traditional auto‐completion techniques.
DevelopingarobustmodelofqueryreformulationQuery reformulation is a common part of users' information retrieval behaviour, whereby search
queries are adapted until the user fulfils their information need or abandons their search. Previous
studies have shown that users display distinct patterns of query reformulation, and that these patterns
can be used to define behavioural habits specific to individual users. However, previous approaches
have generally been restricted to using patterns based on simple lexical transformations, i.e. adding or
removing words & characters. In this project, we seek to extend that work to address more conceptual
relationships such as those due to semantics or other types of higher‐level association. This could
involve the use of knowledge based resources such as WordNet and/or machine readable dictionaries &
thesauri. The outcome would be a more robust model of query reformulation behaviour that more
accurately reflects the search habits and preferences of individual users. We have a number of
transaction logs which could be explored.
AlanguageforsearchanddiscoveryThere has been much work on describing and modelling human information seeking behaviour. In one
particular model, information behaviour is represented as a set of search modes that users employ to
satisfy their information needs, such as ‘locate’, verify’, ‘monitor’, and so on. An interesting property of
this framework is that modes do not occur randomly, but instead are seen to form distinct patterns or
chains. The goal of this project is to analyse a collection of real‐world information needs and identify and
visualize the patterns within them. In so doing we would hope to explore how the modes can be used as
an elementary ‘language’ for describing information behaviour. We would also hope to extend the
framework and explore its ability to accommodate new domains and scenarios.
34
Ayse Goker
CollaborativesearchMost search tools are predicated on the notion of a single user, single session interaction.
However, there is increasing evidence to suggest that many of the tasks they support could be
better facilitated via collaborative, social activity, involving multiple users working toward a
common goal. In this project
we seek to explore the use of UXLabs visual search framework but extending it to multi‐user interaction,
using an expanded interaction canvas (e.g. 20 inch plus tablet devices). By studying search as a
social phenomenon, we can address research questions such as:
What kind of social interactions should we aim to support when there are two
simultaneous users rather than one?
What kind of human‐device interactions can best support multi‐user collaboration, and
how will these differ from existing gestural vocabularies?
How does the social & organisation context affect the interaction, and what kinds of
contexts
and tasks benefit most from collaborative search tools?
MultimodalsearchUXLabs visual search framework allows users to express complex queries using a simple visual syntax
that is simpler and more transparent than comparable text‐based query formulation methods.
However, certain types of search task are inherently complex and require the invocation of
functions that are not easily discoverable in the UI. In these cases, the use of an additional input
channel in the form of speech would provide the ideal contextual signal to disambiguate the input,
allowing a much more natural form of interaction. In this project, we seek to explore the
combination of gestural interactions with speech input, addressing questions such as:
What kinds of spoken interaction work best for search applications, and how should
these complement the existing gestural language?
How can we use linguistic context to help disambiguate the task context, and vice versa?
How can we combine speech with other gestural commands, so that they
work in a complementary (mutually supportive) manner rather than as
independent inputs
35
Jean‐Claude Golovine
Title Evaluation and Cognitive Modelling Supervisor Dr Jean Claude Golovine Suitable for: Students who started their course in January 2016 only.
This project cannot be assigned to students from the September cohorts, since the supervisor will not be available over the summer.
Background Understanding human cognition with regard to computer interfaces has been a major research activity ever since the first computerised devices were developed many decades ago. These cognitive scientists realised that modelling human cognitive and motor functions was crucial to our understanding on how human interact with machines and their efforts culminated to the creation of powerful cognitive architectures such as ACT embedding human cognition. John Anderson developed ACT and was joined later by Lebierre who developed the human rationality aspect of the theory to produce ACT-R. Other scientists collaborated to integrate other modules to complete this architecture. Kerias integrated the motor functions whilst Salvucci integrated an advanced visual module. This collaboration led to the architecture that we know as ACT-R/PM. ACT-R-R/PM is now a mature architecture that is used by scientist all over the world. Software designers use the power of this cognitive architecture to design and optimise user interfaces in terms of usability by simulating users using CogTool. CogTool was developed by John and is a rapid prototyping toolkit that is dedicated to user interface optimisation through a process known as visual storyboarding and allows for user interaction demonstration on mock-up interfaces i.e. usually screenshots. The simulated user interaction is internally used to create ACT-R/PM cognitive models which when ran produce time predictions for the completion of sets of tasks. These latencies can then be used to compare with data obtain with real users completing the same series of tasks on the real interfaces.
CogTool project
36
Jean‐Claude Golovine
Aims/Objectives
The aims for this project is to ultimately use a set of user interfaces that both CogTool and real users can use. The set of tasks to achieve must be the same for both and replicable.
1. To investigate how CogTool can be used to evaluate user interfaces.
2. To implement a user interface in CogTool and describe relevant tasks.
3. To design a heuristic evaluation questionnaire.
4. To collect user evaluation data using CogTool and the questionnaire.
5. To statistically analyse the relationship between CogTool and questionnaire data.
For further information please email the supervisor: j.r.r.golovine@rgu.ac.uk
37
Sue Hodgson
MSc Project Proposal Title: A software tool for drawing and annotating Conceptual models Proposer: S Hodgson Suitable for: Everyone Key Techniques: SSM, conceptual models, programming methods, 2D Graphics Background: SSM (Soft Systems Method) is one of many methodologies available to the systems analyst; incorporating various techniques and diagrams to help the analyst understand and model a system. One of the diagrams developed in SSM is the Conceptual Model, which uses which aims to depict a system using an ordered arrangement of subsystems. The model can be decomposed to reveal lower-order subsystems and activities. the Tool to be developed for this project would enable system developers to create and edit conceptual models. Aims:
To investigate SSM and Conceptual Models from a systems developers point of view To investigate and evaluate appropriate technologies To develop a software tool which will allow the developer to create, edit and
decompose Conceptual Models and save them to the computer To Test and evaluate the software tool Write appropriate technical documentation
38
Sue Hodgson
Title A Customer Relations Management System Proposer S Hodgson External Sponsor Suitable for MScCST or CSTNM
Key Techniques: VB.NET development, Customer Relations Management (CRM), Database design, Multi-tier Application technologies, HCI and Interface Design Background The Dancliffe is a small independent 5 star luxury hotel located in Aberdeen. They currently have no means of capturing, storing or accessing information on their customers electronically, and all customer relations management is done manually. The proposed project will develop a prototype CRM system that will be used to capture information on current or prospective customers and their requirements, and provide a set of customer relations management services based on a graphical user interface to a relational database. The prototype CRM system will provide structured queries to target selected groupings of customers, generating lists of customer email addresses and providing appropriate information visualisations for management information. Aims
Investigate the use of the customer relations management as a means of marketing
and advertising and promoting commerce. Investigate the company’s requirements, analyse the requirements and design the
structure of the database and a complementary set of customer relations management services.
Develop a prototype CRM system. Test and evaluate the system with a sample end-users
Write appropriate technical documentation.
39
Michael Heron
ThisprojectaimstodevelopanopensourceUnitytoolthattakesanXML/JSONfileandrenderitintoagrid‐based3Drepresentationinthestyleofold‐fashioneddungeoncrawlergamessuchasDungeonMaster,andmoremoderntitlessuchasLegendofGrimrock.Theintentionistocreateaself‐containedUnitymap‐rendererthatcanbeusedasadrop‐intoolforASCIIbasedtextgames.Therenderingengineshouldbeabletohandledoors,movementwithinconstraints,anddifferingtexturesforfloorsandwalls,withnoassumptionoflookorfeelbeyondthatdefinedintheprotocol.Thereisastandardprotocolexpectedfromtherenderingtool,andtheintentionistodeployitinanexistingtextgame.Hencethereisafixedexpectationofhowthetoolwilllookandfunction.ThetoolwillbedevelopedasaUnityasset,anddesignedsoastoallowmapstobereadfromfilesonahard‐drive,orthroughstandardinputstreamsovertheinternet. AscenefromDungeonMaster(TheMeanMachinesArchive2015)Note:Unityisacross‐platformgameenginewhichcanbeprogrammedinavarietyoflanguages,includingJavaScript.ReferencesTHEMEANMACHINESARCHIVE,2015ThemakingofDungeonMaster.[online].http://www.meanmachinesmag.co.uk/upload/media/scans/retrogamer_dungeonmaster.pdf[Accessed26April2015].
ProjectTitle ASCIIMapParser
Supervisor MichaelHeron–RoomN432– m.j.heron1@rgu.ac.uk
40
Michael Heron
ThisprojectaimstodevelopanopensourceunitytoolthatcanbeplacedinanyUnityscene.Itwillserveasageneralframeworkforidentifyingmousegesturesandhavingthesetriggerin‐gameactions.Exampleusesare:triggeringgamespellsviacombinationsofgestures,orwritingnumbersormathematicalformulaeonascreen,wherethecorrectformulaisrequiredinordertoprogress.Thetoolwillbedevelopedasaself‐containedUnityassetthatcanbedeployedinanyotherappropriateapplicationwithminimaleffortonthepartofthedeveloper.Alladeveloperhastodoistowritehandlersforeachgestureandhookthemuptothegestureasset.Thetoolshouldallowthedevelopertodefineagesturelanguagethrougheitherthedefiningofbitmapspritesinmemoryorcomparisonbitmapimagesontheharddrive.Thiswouldallowthedevelopermaximumflexibilityindecidingwhatconstitutevalidgestureswithintheirgames.Note:Unityisacross‐platformgameenginewhichcanbeprogrammedinavarietyoflanguages,includingJavaScript.
ProjectTitle UnityGestures
Supervisor MichaelHeron–RoomN432–m.j.heron1@rgu.ac.uk
41
Michael Heron
TheSchoolofComputingresearchcentre(IDEAS)usesadatabasetotracktweetsrelatedtoselectedtopics,basedonhashtagsandsignificantusers.TheyalsohaveaShinyAppsfront‐endwhichisusedforgeneratinggraphsandwordclouds.(ShinyAppsisaplatformfordevelopingwebapplicationsfordatavisualisation).However,thescriptsthatrunthisfront‐endaresomewhatinefficient,andthesoftwareoftentimesoutwhenworkingwithlargerdatasets.Thisprojectwillcarryoutarewriteofthesoftwarefront‐end,alongwithsomeinternalreworkingofthetweetcollectionscripts(writteninJava)tooptimisethestorageandanalysisofthetweets.Thiswillinvolveworkingwithalegacysystemandmulti‐gigabytedatasets,soitwillrequireacarefulapproachandamethodicaltechniquetoensurethatexistingdataisnotcompromised.ThedatabaseusedisMongoDB,whichisaNoSQLdatabase(“NotOnlySQL”).NoSQLdatabasesaretypicallyusedforbigdataandreal‐timewebapplications.TheysupportSQL‐likequerylanguages,buttheyuseavarietyofdatamodels(suchasnetworks)asanalternativetothetablesusedbyrelationaldatabases.Nonetheless,therearesufficientsimilaritiesbetweenNoSQLandrelationaldatabasesthatastudentfamiliarwithrelationaldatabasesshouldhavenoprobleminlearningMongoDB.ReferencesTHEHUFFINGTONPOSTUK,2013,DavidCameron'sEUReferendumSpeechCondensedIntoAWordCloud.[online].http://www.huffingtonpost.co.uk/2013/01/23/david‐cameron‐speech‐wordle_n_2532047.html[Accessed26April2015].
ProjectTitle Front‐endtoolsforatweetdatabase
Supervisor MichaelHeron–RoomN432– m.j.heron1@rgu.ac.uk
A word cloud (The Huffington Post UK 2013)
42
Michael Heron
TheSchoolofComputingresearchcentre(IDEAS)needsasuiteofgeneraltwitterutilitiestobeusedwithinitssocialmediaresearchprojects.ThisprojectwilldevelopanapplicationthatallowscertainqueriestobesubmittedinbatchesviatheTwitterAPI.Suchqueriesmightinclude:
LookuptwitterusernamesfromIDs; Queryauser'sprevioustweetsandstoretheresultsinadatabase; PerformsentimentanalysisusingtheexistingAlchemyAPI.
AlloftheseAPIsareratelimited(theyarerestrictedtoafixedmaximumnumberofTwitterqueriesperhour),andyetweoftenneedtoworkwithverylargenumbersoftweets,usersandusernames.WearecurrentlytrackingmillionsoftweetsusingaMongoDB1databaseinstallation,andwerequiregood,solidtoolsforextractingsetsoftweets,cleaningthemup,andpresentingtheminaformatsuitableforanalysis.Ifyouchoosethisproject,youwillfirstneedtofamiliariseyourselfwiththeexistingsoftware,andthendevelopanapplicationthat:
Interactswithourexistingdatabases, Presentselementsofextractedtweetsinanappropriateform,and Managesratelimits.
1 See previous project.
ProjectTitle Twitterutilities
Supervisor MichaelHeron–RoomN432– m.j.heron1@rgu.ac.uk
43
Kit Hui
The Robert Gordon University
School of Computing Science & Digital Media
MSc Project Proposal
Title: A Cloud-based Attendance Monitoring System Proposer: Dr. Kit-ying Hui Key Techniques
1. Database design and programming 2. Web programming (e.g. Ajax) 3. Java programming
Background Most lecturers agree that a student’s attendance to classes has a positive correlation to his/her result in a taught module. A continuous monitoring of class attendance allows the School Office to identify students who have difficulty and refer them to assistance as early as possible. The current attendance monitoring process is a manual one, where staff has to visually scan for abnormality. This is a tedious process which is liable to errors. Data are centrally kept in a few spreadsheets and information is not readily available to module lecturers or tutors. An online system available to all staff will make attendance monitoring more effective. The system could also automatically scan for abnormality in students’ attendance record and notifies the class tutors pro-actively Traditionally these systems require the set up of local servers. With the rise of cloud computing, both data storage and web application hosting can now be moved into third-party cloud service providers. The stored data, however, will need to be protected (e.g. by encryption) as they are sensitive. Another challenge is to represent the “abnormality detection knowledge” as portable reusable knowledge blocks which can be distributed and used locally in a web browser, instead of running everything on the application server. This “fragmentation” also allows the modular maintenance of detection knowledge, making the system more flexible. Aim To develop a cloud-based web application that monitors students’ attendance to classes. Objectives
To design and build a database that stores students’ class attendance data in a cloud data storage service.
To protect stored data using encryption.
44
Kit Hui
To design and implement a web interface that allows staff to input and view student attendance data online.
To design and implement knowledge modules that detect abnormal patterns in student’s attendance data.
References
Google App Engine: https://developers.google.com/appengine/ Amazon Web Services: http://aws.amazon.com/
45
Kit Hui
The Robert Gordon University School of Computing Science & Digital Media
MSc Project Proposal
Title: Drone Delivery Scheduling Proposer: Dr. Kit-ying Hui Key Techniques
1. Artificial intelligence (e.g. Genetic algorithm, constraint solving) 2. Web programming (e.g. Ajax) 3. Java programming
Background Recently, the use of Unmanned Autonomous Vehicles (UAV, aka drone) is a hot topic. With the advances in technologies and the fall in prices, drone has opened up the door to fast and autonomous courier. Big companies, like Amazon and Google, have been exploring the use of drones for delivery. Despite the hype, delivery by drones has many limitations:
A typical drone can only carry a limited weight. E.g. 1kg. Depending on the battery capacity, a typical drone has a flight time of 10-30
minutes. The flight time is also dependent on the weight. Drones are affected by the weather. Flying against the wind means using more
power and a shorter flight time. There are areas where drones should not be flying (e.g. near power lines,
airports). Some destinations are not suitable for drone delivery (e.g. a flat without a landing
space). Given a fleet of drones and a set of delivery orders, the problem of scheduling drones for delivery has challenges at different levels:
At the top level, a company wants to deliver all orders in the shortest time. This is a typical optimisation problem which can be solved by genetic algorithm or constraint solving.
To take into consideration the effect of weather on a drone’s performance, the wind speed and direction along the flight path need to be included and modeled in the flight time estimate. Weather information of different locations are readily available from online resources (e.g. openweather.org)
Instead of simply specifying the starting and ending locations, a drone accepts a flight path defined by a sequence of way points. An intelligent system can include geographical factors into the scheduling process.
46
Kit Hui
Aim To investigate, design and implement a system for scheduling drone delivery. Objectives
To model the drone delivery problem, taking into consideration the characteristics (e.g. load capacity, flight time) of different drones in the fleet.
Solve the drone delivery problem using AI techniques. Optionally, include weather information in the flight time estimation model. Optionally, generate flight plans for drones instead of making simple task
allocations. References
Open Weather API: http://openweathermap.org/api Wikipedia’s entry on Constraint Satisfaction Problem:
http://en.wikipedia.org/wiki/Constraint_satisfaction_problem A quick introduction to Genetic Algorithm:
http://www.doc.ic.ac.uk/~nd/surprise_96/journal/vol1/hmw/article1.html The Arducopter website: http://copter.ardupilot.com/
47
Kit Hui
The Robert Gordon University School of Computing Science & Digital Media
MSc Project Proposal
Title: LEGO Building as a Constraint Satisfaction Problem Proposer: Dr. Kit-ying Hui Key Techniques
1. Artificial Intelligence (e.g. constraint satisfaction) 2. Java programming
Background LEGO is a popular plastic construction toy consists of bricks of specific sizes. One primary attraction of LEGO is its endless possibility in using simple bricks to build complex 3D objects. A very good example is the Legoland tourist resort in the U.K. Using LEGO bricks to build a 3D object usually involve slicing the 3D design into multiple layers with each layer stacking on top of another. In a layer, for two adjacent bricks to stay together, they have to be joined by a third brick in the layer above or below. The following diagram explains this requirement in a 1-dimensional layer:
As LEGO bricks are of different sizes, we have many choices for the joining brick C. Choosing a brick C affects the choices of other bricks in the layers above and below. This process of using LEGO bricks to build two stacking layers can be modeled as a constraint satisfaction problem. If we divide a layer into primitive bricks of size 1, it becomes the problem of deciding if adjacent size-1 bricks should be merged. Merging two size-1 bricks mean a size-2 brick. So we have a set of variables whose value can be true or false (meaning the size-1 bricks are merged or not). The following diagram explains the idea:
C
A B
48
Kit Hui
If V1-2, V2-3, V3-4 are all true, and if the biggest brick size is 4, then V4-5 must be false. This means VA-B must be true. This idea can be extended to 2-dimension layers of bricks and with the brick colour as another requirement. The end result is a vast network of connected boolean variables which are to be assigned the value of true or false. Aim To investigate, design and implement a system to build an arbitrary 3D object with LEGO bricks. Objectives
To investigate the feasibility of solving the LEGO building problem of 1-dimensional brick layers.
To extent the problem solving method to 2-dimensional brick layers. To implement a tool to illustrate the problem solving method.
References
Wikipedia’s entry on Constraint Satisfaction Problem: http://en.wikipedia.org/wiki/Constraint_satisfaction_problem
List of Java libraries for constraint solving: http://www.constraintsolving.com/solvers/constraint-libraries
1 2 3 4
V1‐2
{T,F}
V2‐3
{T,F}
V3‐4
{T,F}
V4‐5{T,F}
5 6
A B
VA‐B{T,F}
49
Kit Hui
The Robert Gordon University School of Computing Science & Digital Media
MSc Project Proposal
Title: Database for sound Proposer: sound Point of Contact: Dr. Kit-ying Hui Key Techniques
1. Database design and programming 2. Web programming (depends on client requirement) 3. Java programming (depends on client requirement)
Background “sound” is Scotland’s annual festival of new music, which takes place in late October and early November throughout Aberdeen and Aberdeenshire. There are between 40 and 60 events with 30 project partners and 20-30 different venues. A certain number of other events and education projects take place outwith the festival. sound currently uses the Artifax system for its data needs. Throughout the years Artifax is found to be too heavy for the task and does not fit well with the requirements of the organisation. sound is thus planning to migrate to another database management system and at the same time exploring the possibility of applying the same system to other festivals and events in Scotland. Apart from the major database designing task, the followings are potential sub-tasks in the project:
Migrate data from the existing system to the new one. To design and building a user interface to the new database. Optionally design and implement an access portal to data stored in the new
system. Note: This project enquiry is received through the University’s Talent Exchange project (http://www.rgu.ac.uk/talentexchange). Student is expected to work with sound to discover the data need and explore the application domain. Aim To investigate, design and implement a data solution for sound. Objectives
To investigate the data storage requirement of sound. To explore and select an appropriate database management system. To design and implement a database for sound.
50
Kit Hui
To design and implement a user interface for the database. References
sound website: http://www.sound-scotland.co.uk/
51
Kit Hui
The Robert Gordon University School of Computing Science & Digital Media
MSc Project Proposal
Title: Website for Assured Occupational Health Proposer: Assured Occupational Health Point of Contact: Dr. Kit-ying Hui Key Techniques
1. Web programming 2. Database design
Background Assured Occupational Health (AOH) is a new business start up offering all types of medical checks for all industry sectors, including oil and gas, aviation, and construction. They also offer sickness absence assessments, pre-employment health checks and other occupational health medical consultations. AOH currently has no website and needs to develop one to take bookings and payments. Note: This project enquiry is received through the University’s Talent Exchange project (http://www.rgu.ac.uk/talentexchange). Student is expected to work with AOH to explore the application domain and requirement details. Aim To design and implement a website for Assured Occupational Health. Objectives
To discuss with AOH on the project requirements. To design and implement a website to fulfil the requirements.
52
John Isaacs
Project Title Easy Sensor Platform
Supervisor John Isaacs ‐ j.p.isaacs@rgu.ac.uk
Suitable for INS students ONLY
Background
Crowd sourcing and citizen science is changing the way scientific data is collected. Previously costly
sensors system needed to be in place to record data at specific, often restricted locations. For
example the whole air pollution levels for a city may have been collected at a single spot in the city,
which would not accurately reflect the whole environment.
Crowd sourcing has meant that a lot more data can be collected; however it is often from different
types of sources and is not always verifiable. To work properly crowd sourced information must
trusted in terms of accuracy and source.
Embedded systems such as the raspberry pi, the Arduino or the intel Galileo could be used to create
common sensor platform that is easy to set up by the data collector, uses a standard set of sensors
and can communicate the data back to a central cloud based system. The main idea here is that a
user simply turns the sensor platform on, connects some sensors and the data is transmitted
automatically, creating a large network of connected sensors and access to the aggregated data via a
simple map based user interface.
This project will look at the creation of such as sensor system ( 5 intel Galileo (generation 2 models)
are available for testing)
Objectives
Investigate embedded system technologies to determine a viable hardware platform.
Research methods of detecting and auto connecting to the sensor network.
Investigate the appropriate communication protocols and methods for transmitting logged
data efficiently.
Research methods of giving user access to and displaying the collected data.
Design, implement and test a prototype sensor platform and associated central data store.
Skills
Knowledge of embedded systems (PI, Beaglebone etc)
Some programming skills
Knowledge of networks and mobile communication technologies
Further Info
http://www.intel.com/content/www/us/en/do‐it‐yourself/galileo‐maker‐quark‐board.html
http://postscapes.com/internet‐of‐things‐cloud
http://www.instructables.com/id/PART‐1‐Send‐Arduino‐data‐to‐the‐Web‐PHP‐MySQL‐D3js/
53
John Isaacs
Project Title Map Based Temporal Visualisation
Supervisor John Isaacs ‐ j.p.isaacs@rgu.ac.uk
Suitable for Any
Background
Large amounts of data are collected everyday coving aspects of finance, politics and transport. Much
of this data is presented either temporally or geographically but not both. For example many
financial graphs will show aggregated stock prices over time, but will not show where in the world
the companies are. A company falling in the US may correspond to a company gaining in Asia, which
may be missed on a simple temporal graph.
The image below shows a single time point of a visualisation of air traffic over Europe, on its own the
image looks great but does not really convey the movement in the data set. When you watch the
video you can see how important the temporal aspect is.
https://www.youtube.com/watch?v=SrZSelcIxWM
The idea of this project is to investigate methods where large datasets can be shown interactively on
a map based system which can include temporal effects on the data.
There are a number of possible data sets that could be used such as election data, bus or train
tracking, oil and gas data or the students own suggestions.
Objectives
Identify an appropriate data set for visualisation
Research visualisation platforms such as d3.js, webgl and google maps.
Investigate the appropriate visualisation methods (eg colour, shape, size)
Design, implement and test a prototype visualisation of the selected data set.
Skills
Some programming skills
Knowledge of internet based development such as php, javascript, mysql and html would be
an advantage
Further Info
http://gephi.github.io/
http://d3js.org/
54
David Lonie
Background
In the Oil and Gas industries the role of Trading Operations is very important. Producers, consumers
and governments are all subject to financial risks from changes in oil and gas prices: governments
through their reliance on taxation revenues; producers are adversely affected by decreases in prices;
consumers are adversely affected by increases in prices. To manage financial risk from oil price
movements there is a huge market in oil and gas futures and associated financial options or
derivatives.
Project Aims
To design, implement, test and document a software tool which can perform pricing and associated
visualisation related to futures and options products based on the Oil or Gas market prices.
Project Objectives
To investigate the important aspects of Oil and Gas trading, and the role of futures and
options in the Oil and Gas markets;
Investigate the pricing models used to establish the fair price of oil and gas market futures
and options, and the role of Historic oil and gas prices, and energy market price shocks in
those models;
Design, implement, test and document a software solution for that can manage and visualise
historic oil and gas price data, and which can be used to calculate prices for a range of user‐
specified oil and gas option contract types.
Skills required
good programming skills (in any programming language)
familiarity with data visualisation techniques
willingness to become familiar with some basis financial terminology and to understand
some mathematical concepts used in the pricing models
References
Financial derivatives: pricing and risk management, Ed. Kolb, Robert W.,
[Electronic resource, RGU Library]
Understanding oil prices, Carollo, S. [electronic resource, RGU Library]
http://en.wikipedia.org/wiki/Energy_derivative
Project Title A Software Tool for Pricing Futures and Options in Oil and Gas
Markets
Supervisor David Lonie – Room N432 – d.p.lonie@rgu.ac.uk
Suitable for COG students, or others with an interest in Oil and Gas
55
David Lonie
http://en.wikipedia.org/wiki/Derivative_(finance) for a brief overview
56
David Lonie
Background
Oil and Gas drilling operations generate vast amounts of data of interest to decision makers who
may be at geographically distant from either the drilling site or the HQ where data is stored and
processed. A tool for allowing decision makers in drilling operations to access key data in a reliable,
current and easily interpreted form from mobile devices would allow them to remain part of the
decision making process from remote locations.
Project Aims
To design, implement, test and document a software solution that allows oil and gas personal to
access and visualise well drilling data from a mobile device. With the purpose of providing decision
makers current and easily interpreted access to key data associated with the drilling process.
The tool would need to perform at least the following main tasks:
Access a WITSML server to access WITSML data
Allow the user to select fields and categories of data they wish to access.
Visualise the data in a clear and appropriate format.
Project Objectives
Investigate the factors of interest to key decision makers related to the oil and gas field
drilling process;
Investigate appropriate technologies for accessing WITSML server held data (e.g. JWitsml
library or use of Standards DevKit);
Investigate appropriate visualisation techniques, suitable for implementation on a mobile
device;
Design, implement, test and document a software solution for visualising data from a
WITSML database on a suitable platform (a standalone application, a mobile device or web
browser would all be possible depending on interests and skills of the student).
Skills required
programming skills in a suitable language
interest in data visualisation
willingness to investigate the WITSML standard, and associated technologies such as the
JWitsml and Standard Devkit libraries
References
Project Title A tool for providing visualisation of WITSML data
Supervisor David Lonie – Room N432 – d.p.lonie@rgu.ac.uk
Suitable for COG students only
57
David Lonie
www.energistics.org for an overview of WITSML (and associated standards) http://www.energistics.org/standards‐devkit for details of the .NET Standards DevKit http://www.jwitsml.org for details of the JWitsml library
58
David Lonie
Background
Modern smartphones are equipped with a wide range of physical sensors including very sensitive
microphones. There are many potential applications in which a smartphone could be used by
teachers and students in a classroom. An aspect of modern educational practice is to encourage
cross‐curricular thought, especially through open‐ended investigations by students. For this,
teachers and students could benefit from well‐designed, and easily assessable tools to assist in such
investigations. The idea for this project is to have an easy to use app that allows interesting sound
samples (such as speech, musical phrases from different instruments, environmental noise, etc.) to
be captured, displayed and analysed so that students can investigate and compare the nature and
properties of sound from different sources.
Project Aims
To create a smartphone application aimed at students and teachers that captures and stores
audio samples and which can then perform analysis and visualisation of the sound’s
waveforms and frequency spectrum. The main functionality could be supplemented by
explanation and background theory or links to external resources. Some method of
extracting data or graphs from the smarthphone to a PC would be useful for students
wishing to include results of investigations in written reports or presentations
Project Objectives
Investigate the capabilities available on a smartphone of your choice;
Research the aspects of sound appropriate for inclusion in an app designed for school level
students;
Design, implement, test and document a smartphone application for use in a teaching or
project.
Skills required
investigate and develop programming skills in mobile computing environment of your choice
(Android or iPhone)
interest in educational matters
Further information
http://developer.android.com/guide/topics/sensors/sensors_overview.html
“Smartphones put the app into physics apparatus”, New Scientist, 29 August 2012
Project Title Smartphone App for Capturing and Analysing Sound Samples
Supervisor David Lonie Room N432 d.p.lonie@rgu.ac.uk
59
David Lonie
http://www.intuitor.com/student/Android%20Phone%20Site/AndroidIntroduction.php
60
David Lonie
Background
As very recent history has demonstrated, Oil and Gas prices are liable to significant fluctuations in
value, causing problems for regions and nations reliant on revenues and jobs derived from
hydrocarbon production. A wide variety of econometric techniques have been applied to the
problem of modelling the supply, demand and price of oil and gas. The idea for this project is to
create a software tool that would enable a student or researcher with an economics background to
manage datasets and investigate econometric models.
Project Aims
To design, implement, test and document a software tool which can be used to manage time‐series
data and perform a variety of econometric analyses and model‐fitting procedures to that data for a
user with a non‐computing background.
Project Objectives
To investigate the important aspects of Oil and Gas economics and some of the econometric
models that have been applied to these markets;
Design, implement, test and document a software solution for that can manage and visualise
historic oil and gas price data, and which can be used to apply econometric and statistical
model‐fitting and forecasting using that data.
It is envisaged that the application will connect to a database to store the economic data,
and make use of appropriate libraries to connect from a front‐end to an existing statistical
package such a R to facilitate the econometric and statistical calculations.
Skills required
good programming skills (in any programming language)
familiarity with data visualisation techniques
willingness to become familiar with some economics terminology and statistical techniques
References
BP: Energy Economics & Statistical Review http://www.bp.com/en/global/corporate/about‐bp/energy‐economics.html
Crude Oil Price Forecasting: a comprehensive review of literature. https://caia.org/sites/default/files/3.RESEARCH%20REVIEW.pdf
JRI Java/R interface http://www.rforge.net/JRI/ RCaller https://code.google.com/p/rcaller/wiki/About
Project Title Software Tool to facilitate the econometric analysis of Energy
markets
Supervisor David Lonie – Room N432 – d.p.lonie@rgu.ac.uk
Suitable for COG students, or others with an interest in Oil and Gas
61
Rob Lothian
MastersProjectSpecification2015
Title AComputer‐BasedLearningToolforLinearAlgebra
Supervisor RobLothian
Background Linear algebra is the study of matrices and vectors. Matrix and vector methods are widely used in mathematics, engineering, computer science and many other fields.
It would be useful to have a computer-based tool to support the learning of this discipline. It would be especially helpful to find creative ways to support the learning of those who are not specialist mathematicians.
Aim To design and develop a computer-based learning tool to support the learning of (some aspects of) linear algebra.
Skills Required
Good programming skills in the language of your choice. A working knowledge and understanding of linear algebra.
62
Rob Lothian
MastersProjectSpecification2015
Title GoProgram
Supervisor RobLothian
Background Go is an ancient board game involving the placement of stones on a grid of squares. The object is to
control the majority of the territory, which may involve the capture of opposing stones. The AI
challenge is of quite a different nature to that involved in chess or checkers.
Aim To create a program to play the game (in an intelligent manner) against a human opponent. The
student would require to research and/or devise AI approaches to the problem.
Skills Required
Familiarity with the rules and basic strategies of the game.
Good programming skills in the language of your choice. This should include an appreciation of data
structures and the way that algorithms can exploit these structures.
Capacity for critical engagement with the research literature.
63
Rob Lothian
MastersProjectSpecification2015
Title Scrabble‐PlayingProgram
Supervisor RobLothian
Background Scrabble ® is a board game in which players score points by placing letter ‘tiles’ on the board to
create words. Special squares multiply scores and there is a bonus for using all (seven) tiles in one
turn.
Aim To create a program to play the game (in an intelligent manner) against a human opponent. The
student would require to research and/or devise AI approaches to the problem.
Skills Required
Familiarity with the rules and basic strategies of the game.
Good programming skills in the language of your choice. This should include an appreciation of data
structures and the way that algorithms can exploit these structures.
Capacity for critical engagement with the research literature.
64
Rob Lothian
MastersProjectSpecification2015
Title TimeSeriesProject
Supervisor RobLothian
Background The time series is a common and important type of data. There are a large number of analytic
techniques that may be applied to time series, often with the goal of predicting future values.
Aims
1) To find some interesting time series data.
2) To develop a tool to store, display and analyse the data.
3) To carry out an analysis of the data using the tool.
The project must have a strong software development component, so it is no enough to read data
into an existing tool such as R Studio. It is, however, permissible to incorporate library routines into
your own code or to actually program in a statistical language rather than a general language. The
element of data analysis may be small if the software development element is sufficiently
substantial.
The student will be required to find data and choose techniques of analysis and visualisation as part
of the investigation phase.
Skills Required
Good programming skills in the language of your choice.
65
Rob Lothian
Ability to narrow down this broad proposal into something more specific and willingness to take
ownership of the resulting project.
Some basic grasp of mathematics and statistics.
Note for Oil and Gas Students
You will already have seen some basic time series analysis in CMM020, but you will be expected to
investigate and implement techniques beyond the scope of that module. You should try to find time
series data that is relevant to the energy sector.
66
Stewart Massie
The Robert Gordon University School of Computing
MSc Project Specification Title: Personalised Tourist Itineraries Proposer: Stewart Massie, Room N426, s.massie@rgu.ac.uk Key Techniques
Case-Based Reasoning Recommender Systems Software Development/web application development (Java/php) User interface design
Background The next generation of information tools will be required to provide users with a greater ability to formulate solutions rather than simply retrieving relevant information. One task in which the requirement to provide solutions is already prevalent is in the provision of personalised tourist itineraries (PTI’s). PTI’s can be thought of as an assembly of recommendations where each recommendation is a tourist attraction. Mahmood et al. adopt an interactive approach to recommend tourism destinations that are relevant to users’ needs. Rather than individual attractions, this project aims to recommend a set of attractions and assemble them as an itinerary that balances the relevance to the user’s interests, the quality or rating of the attraction, and any other prevailing constraints e.g. time available. There is a wide range of potential tourist attraction types and locations that could be used for this project. But it is envisaged that a locally relevant choice would be most interesting with possible attraction types including but not limited to visits to castles, whiskey distilleries, or golf courses. Information on tourism attractions and completed itineraries are available from web sources. One source is social network sites, such as Twitter and Flickr, which allow posts to be stamped with time and mapped to points of interest by location data or tags. Leveraging this information would allow us to assemble itineraries. This project will investigate approaches that reuse knowledge captured in existing itineraries to assist in the creation of new recommendations or PTI’s. The proposed methodology is Case-Based Reasoning (CBR) and recommender systems. In CBR new problems are solved by retrieving similar cases from a database of previously solved problems and reusing the retrieved solutions. Agile CBR, where individual components of the solution are solved iteratively and then assembled into a complete solution, may be particularly applicable to this problem. Hence, when a new itinerary is being created, features that characterise the route and the attractions will be compared with those of existing
67
Stewart Massie
itineraries in the case library for each component of the itinerary, possibly as a sequence of interactive recommendations. Aims and Objectives The aim of the project is to assemble novel itineraries by organising retrieved fragments of stored examples into a balanced solution that meets the users’ requirements and matches with their interests. The process may be interactive with the user solving and confirming one part of the PTI before looking at recommendations for a different part. The system may be developed using existing CBR frameworks (e.g. JColibri or myCBR) or from scratch. The project objectives include:
Understanding the Recommendation/CBR processes and in particular the representation of cases, the similarity between cases and nearest-neighbour retrieval;
Capturing knowledge of available attractions from web sources and developing approaches that match these with user requirements;
Developing representations that capture previous itineraries along with any other knowledge sources in an effective, integrated model;
Develop software to rank or display recommended tourist attraction candidates and allow the assembly of effective PTI’s;
Designing user-interfaces to allow entry of PTI requirements as an input and recommended tourist attractions or itinerary as an output;
Evaluating the effectiveness of the system-generated itineraries. References
Mahmood, T., Ricci, F., Venturini, A., and Höpken, W. (2008) Adaptive Recommender Systems for Travel Planning. Information and Communication Technologies in Tourism, Vol 1:1-11
JColibri (http://gaia.fdi.ucm.es/projects/jcolibri/) myCBR (http://mycbr-project.net) Lopez de Mantaras et al. (2005). Retrieval, reuse, revision and retention
in case-based reasoning, Knowledge Engineering Review 20(3): 215-240. Craw, S. (2009). Agile case-based reasoning: A grand challenge towards
opportunistic reasoning from experiences. Proceedings IJCAI-09 Workshop 12, pp33-39.
Witten, I. H. & Frank, E. (2005), Data Mining: Practical Machine Learning Tools and Techniques, 2nd edn, Morgan Kaufmann.
Deitel, Harvey (2005) Java : how to program Downey, T. (2007). Web Development with Java, Springer.
68
Stewart Massie
The Robert Gordon University School of Computing
MSc Project Specification Title: Time Series Analysis and Forecasting Proposer: Stewart Massie, Room N426, s.massie@rgu.ac.uk Key Techniques
Case-Based Reasoning Knowledge representation Software Development/web application development (Java/php) User interface design
Background A time series is a sequence of data points, typically consisting of successive measurements made over a time interval. Examples include sensor data from medical or engineering applications, financial market data, and commodity prices. Here, we are interested in time-series forecasting, which involves the use of a model, to predict future values of the series, based on previously observed values. Methods of analysis are divided into two distinct classes: frequency-domain methods and time-domain methods. In this project the focus is on time-domain methods and the task is to develop a standard framework for forecasting future values in time-series data. The proposed methodology is Case-Based Reasoning (CBR). In CBR new problems are solved by retrieving similar cases from a database of previously solved problems and reusing the retrieved solutions. Hence, when a new time series is being created, features that characterise the current period will be compared with those of existing portions of the time series stored in the case library. Analysing the Time Series is an important task which requires segmentation, the process of splitting a time-series into a sequence of shorter parts. Often, the complete time-series is split into fixed window segments to create a sequence of individual segments, each with its own characteristic properties. Alternatively, only prototypical segments, representative of specific events identified in the time series, may be stored as the case base. Whichever approach is taken to segmentation, comparisons are required between the current part of the time series (the query) and those stored in the case base, to identify the most similar previous examples. Dynamic Time Warping (DTW) is one approach for measuring similarity between two temporal sequences. DTW is a method that calculates an optimal match between two given sequences. While, the standard algorithm has high complexity, less complex approximations, such as Fast DTW, have been developed and are available as standard algorithms in Java, R and Python among others.
69
Stewart Massie
Aims and Objectives The aim of the project is to develop a framework that supports time series analysis. The focus of the software could be either: to identify significant events in, for example, sensor data; or, to predict future values, for example, in financial market data. A range of standard datasets are available. The software should accept one or more time series as inputs and apply suitable segmentation before processing a more typical CBR cycle. The system may be developed using existing CBR frameworks (e.g. JColibri or myCBR) or from scratch, and may be a stand-alone application or a web application. The project objectives may include:
Understanding the CBR processes and in particular the representation of cases, the similarity between cases and nearest-neighbour retrieval;
Developing approaches to representation that can capture and segment time series data to form a case-base of segments;
Developing software to calculate similarity between the current query and the stored time series segments using dynamic time wrapping, and then ranks and reuses the retrieved segments to generate forecasts;
Designing user-interfaces to allow input of the time series and any associated parameters for segmentation and similarity, and provide a solution or prediction as an output;
Evaluating the effectiveness of the system-generated solutions. References
Madsen, H. (2007). Time series analysis. CRC Press. Berndt, D. and Clifford, J. (1994). Using dynamic time warping to find
patterns in time series. AAAI Workshop on Knowledge Discovery in Databases, pp. 229-248.
Keogh, E. (2002). Exact indexing of dynamic time warping. In 28th International Conference on Very Large Data Bases. pp. 406-417.
JColibri (http://gaia.fdi.ucm.es/projects/jcolibri/) myCBR (http://mycbr-project.net) Lopez de Mantaras et al. (2005). Retrieval, reuse, revision and retention
in case-based reasoning, Knowledge Engineering Review 20(3): 215-240. Witten, I. H. & Frank, E. (2005), Data Mining: Practical Machine Learning
Tools and Techniques, 2nd edn, Morgan Kaufmann. Deitel, Harvey (2005) Java : how to program Downey, T. (2007). Web Development with Java, Springer.
70
Stewart Massie
The Robert Gordon University School of Computing
MSc. Project Specification Title: System for Visual Search and Exploration of Document Collections Proposer: Stewart Massie, Room C49h, s.massie@rgu.ac.uk Key Techniques
Case-Based Reasoning or Information Retrieval Software Development (Java) User interface design
Background We increasingly rely on our ability to search and retrieve documents, both on the internet and in organisational repositories, in order to access information and solve problems. In Information Retrieval (IR), document retrieval typically uses a keyword-based query as an input. This approach works well when the information being looked for can be precisely defined in a few terms. However, where users are unaware of their exact requirements the process is less effective. A user may start with a vague search term, then open and read some of the retrieved documents to identify more specific terms, before refining the query by adding new keywords in a new search. This refinement process may be repeated for several iterations. Similar problems are found in Textual Case-Based Reasoning (TCBR). In TCBR, the problem and solution are presented text form but may also be represented in a more structured format for similarity comparison. A query is usually the problem part of a new text document and then, the quality of the retrieval set will depend on how well the representation and similarity knowledge capture the context of the current task. As a result, manual input is often required to refine the retrieval set and to ensure it contains a diverse spread of possible solutions. This requires the user to open, read and assess the relevance of each retrieved document. The key challenge in both IR and TCBR is to provide users with an overview of a document without it having to be opened and read in detail. One approach is to use Natural Language Programming (NLP) techniques to summarise documents. However, this is hard and the approaches are computationally demanding making it difficult for real time systems. A more promising approach may be to take advantage of the advances in text visualisation techniques, such as tag clouds, to provide an overview as a visualisation. The overview may be of individual documents or of clusters of similar documents. This project will investigate an interactive approach to exploring, searching and retrieving documents in which visualisations of the retrieved documents are presented to the user. User interactions will then be used to provide an input for the next stage of the retrieval process, for example, to refine the search query or to increase diversity in the retrieval set.
71
Stewart Massie
Aim The aim of the project is to design and implement a prototype system in which documents retrieved for a query are presented as a visualisation and user interactions initiate the next stage of the retrieval process. Objectives The main objectives are:
to understand the IR/TCBR processes involved in retrieval, in particular the representation of text, the similarity between documents and nearest-neighbour retrieval;
to investigate available text visualisations techniques;
to assemble a document repository in a suitable domain;
to develop software that given a query will present retrieved documents visually and then refine the retrieval process in response to user interactions; and
to evaluate the effectiveness of the visual approach to retrieval.
It is envisaged that Java will be used as the development language because open source libraries are available to support much of the work. For example, Lucene provides an existing IR framework on which to conduct the basic text retrievals; numerous visualisation packages or web services are for text; and data on which to develop the system should be available from previous research activities or from the web. References
Spence, R. (2001) Information visualization, 2nd Addison-Wesley.
Lucene (http://lucene.apache.org/)
OpenCloud (http://opencloud.mcavallo.org/index.jsp)
Lopez de Mantaras R., et al. (2005). Retrieval, reuse, revision and retention in case-based reasoning, Knowledge Engineering Review 20(3): 215-240.
Deitel, Harvey (2005) Java : how to program
Downey, T. (2007). Web Development with Java, Springer.
72
Stewart Massie
The Robert Gordon University School of Computing
MSc Project Specification Title: Interactive Visual Summary of Textual Reviews Proposer: Stewart Massie, Room N426, s.massie@rgu.ac.uk Key Techniques
Textual Case-Based Reasoning (TCBR) or Information Retrieval (IR) Data Mining Software Development (Java) User interface design
Background Information retrieval tools often have difficulty dealing with the sheer volume of information. One task in which information overload is already an issue is in looking at product reviews. Product reviews are available from many sources: commercial companies ask customers for feedback on product purchases; specialised product review sites record reviews or provide recommendations; and the explosion in social network sites has led to a further increase in the availability in product reviews on specialist community sites. However, the abundance of product review information creates a problem for users who want to access them to support informed decision making. As many individual opinions need to be read, it can be time-consuming for a user to acquire an overview or consensus view of the important aspects of a product and the associated sentiment towards each aspect of interest. For example for an hotel a user may be interested in sentiment relating to aspects such as hotel location and room cleanliness but not food quality. IR/TCBR approaches can help. Typically, a keyword-based query identifies an aspect of interest to the user and acts as a filter to retrieve reviews referring to that aspect of the product. However, a large number of reviews may still be retrieved and users are often initially unaware of which aspects are of interest to them. The key challenge is to provide users with an overview of the reviews without having to open and read them in detail. One approach is to use Natural Language Programming (NLP) techniques to summarise documents. However, this is hard and the approaches are computationally demanding making it difficult for real time systems. More recently, aspect-based sentiment analysis has been applied but the accuracy associated with sentiment analysis is not yet sufficient. A simpler, but more promising approach may be to take advantage of the advances in text visualisation techniques, such as tag clouds, to provide an overview as a visualisation. The overview may be of all the reviews or of documents created from clusters of aspect-based similar sentences. It is envisaged that the user could start with an general overview of all reviews and then could drill down into reviews by selecting more specific aspects relevant to both the product and user.
73
Stewart Massie
This project will develop an interactive approach to exploring, searching, summarising and retrieving reviews in which visualisations of the retrieved documents are presented to the user. User interactions will then be used to provide an input for the next stage of the retrieval process, for example, to refine the search by selecting more specific aspects associated with the product. Aim The aim of the project is to design and implement a prototype system in which reviews retrieved for a query are presented as a visualisation and user interactions initiate the next stage of the process. Objectives The main objectives are:
to understand the IR/TCBR processes involved in retrieval, in particular the representation of text, the similarity between documents, and existing aspect-based sentiment analysis approaches;
to investigate available text visualisations techniques (e.g. tag clouds) and the availability of open source approaches;
to assemble a review repository in a suitable domain e.g travel;
to develop software that given a query will present reviews visually and then refine the retrieval process in response to user interactions; and
to evaluate the effectiveness of the visual approach to retrieval.
It is envisaged that Java will be used as the development language because open source libraries are available to support much of the work. For example, Lucene provides an existing IR framework on which to conduct the basic text retrievals; numerous visualisation packages or web services are available for text; and data on which to develop the system is be available from previous research activities or from the web. References
Spence, R. (2001) Information visualization, 2nd Addison-Wesley.
Lucene (http://lucene.apache.org/)
OpenCloud (http://opencloud.mcavallo.org/index.jsp)
Lopez de Mantaras R., et al. (2005). Retrieval, reuse, revision and retention in case-based reasoning, Knowledge Engineering Review 20(3): 215-240.
Deitel, Harvey (2005) Java : how to program
Downey, T. (2007). Web Development with Java, Springer.
74
Christopher McDermott
Four projects from Christopher Mcdermott
Email: c.d.mcdermott@rgu.ac.uk
These projects are suitable for INS students ONLY
Project 1: LAN Security using a DMZ (Demilitarized Zone)
Project 2: Secure Network Design
Project 3: Remote Site Management and Security
Project 4: Layer 2 Security in Cisco Devices
75
Mathew Nicho
Project title APT Vulnerabilities and Mitigation Supervisor Mathew Nicho m.nicho1@rgu.ac.uk Suitable for INS students ONLY
Background One of the most serious and persistent threats that had emerged in recent years combining technical as well as non-technical skills is the Advanced Persistent Threat known commonly as APT where the hackers circumvent the organizational defences and instead target the naivety of the employees in making an unintentional mistake. While this threat has gained prominence in recent years, research on its cause and mitigation is a scant area of research. Analysis of high profile cases during the last three years where it (APT) had gained prominence revealed that unintentional mistakes of employees and the persistence of the attackers in using social engineering methods have largely contributed to this threat.
Project Objectives 1. Find out the different modes of APT attacks 2. Find out the vulnerabilities – both technical as well as non-technical 3. Come up with a set of configuration for mitigation Skills Required 1. Networking skills 2. Basic programming Further resources: 1. C. Tankard, "Persistent Threats and How to Monitor and Deter Them," Network Security, pp. 16-19, 2011.
2. M. Liebowitz. (2011, 7 July, 2011). 2011 Set to Be Worst Year Ever for Security Breaches. SecurityNews. Available: http://www.securitynewsdaily.com/2011-worst-year-ever-security-breaches-0857/
4. Symantec. Norton Cybercrime Report 2012 [Online]. Available: http://now-static.norton.com/now/en/pu/images/Promotions/2012/cybercrime/
5. Encode. (2012, June). Demystifying Advanced Persistent Threats: Encode Extrusion Testing Facts and Statistics. Available: www.encodegroup.com/colutions.aspx?page=APT
6. Symantec. (2011, May). Advanced Persistent Threats: A Symantec Perspective. Available: http://www.symantec.com/content/en/us/enterprise/white_papers/b-advanced_persistent_threats_WP_21215957.en-us.pdf
7. Fireeye. (2012, June). FireEye Advanced Threat Report Available: http://www2.fireeye.com/advanced-threat-report-1h2012.html
8. Wright, K. (2014). "UK is the No. 1 Target for Advanced Persistent Threat cyber attacks." Retrieved 20th October, from http://www.itgovernance.co.uk/blog/uk-is-the-no-1-target-for-advanced-persistent-threat-cyber-attacks/
76
Mathew Nicho
Project title Implementation Issues in PCI DSS Supervisor Mathew Nicho m.nicho1@rgu.ac.uk Suitable for INS students ONLY
Background The Payment Card Industry Data Security Standards (PCI DSS) is the very first industry-wide standard that aims at achieving a strong protection of sensitive consumer and cardholder data, and prevents major security issues. The growing dependence on online transactions has forced merchants dealing with credit cards to comply with PCI DSS or face huge penalties for non-compliance. With more and more transactions based on credit cards, merchants are finding it costly and increasingly difficult to implement and interpret the PCI standard. One of the top reasons cited for merchants to fail PCI audit, and a leading factor in data theft, is the failure to adequately protect stored cardholder data. Hence while implementation of the PCI DSS is not a guarantee for perfect protection, effective implementation of the PCI standards can be ensured through the divergence of the PCI standard into the wider information security governance to provide a comprehensive overview of information security based not only on security but also security audit and control.
The PCI DSS tends to specify technologies quite loosely, making requirements at a higher level, and often only including technologies as a suggestion. The technologies involved include IPS and IDS, firewalling technologies, two-factor authentication, and more unusual controls such as file integrity monitoring and centralized log analysis tools. This complicates compliance programs somewhat, as the standard is not actually presented in such a fashion that a series of tickboxes can be easily completed. Project Objectives 1. Find out the major implementation issues in PCI DSS implementation 2. Find out the most relevant and difficult requirement (out of the 12) one to implement 3. Come up with a set of recommendations and suggestions for effective implementation Skills Required 1. Knowledge of Security standards 2. Basic knowledge of networking Further resources: 1. Nxumalo, Z. C., Tarwireyi, P., & Adigun, M. O. (2014, October). Towards privacy with
tokenization as a service. In Adaptive Science & Technology (ICAST), 2014 IEEE 6th International Conference on (pp. 1-6). IEEE.
2. Palmer, E. (2014). The Importance of Payment Card Industry Data Security Standards for Startup Companies.
3. EL ALLOUSSI, H., FETJAH, L., & CHAICHAA, A. (2014). Securing the Payment Card Data on Cloud environment: Issues & perspectives. IJCSNS, 14(11), 14.
77
Mathew Nicho
Project title Creating a Taxonomy of Security Issues in Cloud Computing
Supervisor Mathew Nicho m.nicho1@rgu.ac.uk Suitable for INS students ONLY
Background Cloud computing encompass many technologies namely distributed computing, virtualization technology and other computing technologies. The basic concept of cloud is based on the premise that instead of having selected information systems resources like software and data stored locally on a user’s or organization’s computer systems, these resources can be stored on Internet servers, named as “clouds,” and accessed as a paid service on the Internet from anywhere through Internet. While there are numerous papers on security in cloud computing a complete taxonomy is lacking in the literature Project Objectives 1. Find out all the security issues and concerns in the different cloud services and platforms. 2. Come up with a taxonomy Skills Required 1. Knowledge of IS security 2. Basic knowledge of networking Further resources: 1. Grover, J., & Sharma, M. (2014, July). Cloud computing and its security issues—A
review. In Computing, Communication and Networking Technologies (ICCCNT), 2014 International Conference on (pp. 1-5). IEEE.
2. Fernandes, D. A., Soares, L. F., Gomes, J. V., Freire, M. M., & Inácio, P. R. (2014). Security issues in cloud environments: a survey. International Journal of Information Security, 13(2), 113-170.
3. Xiao, Z., & Chen, J. (2015, January). Cloud Computing Security Issues and Countermeasures. In Proceedings of the 4th International Conference on Computer Engineering and Networks (pp. 731-737). Springer International Publishing.
78
Prof Babs Oyeneyin
MSc OIL& GAS IT PROJECTS –
2015
Professor Babs Oyenyin
Mail: b.oyeneyin@rgu.ac.uk Mobile: 07828285245
Professor Babs Oyenyin has supplied 7 Oil & Gas related project proposals.
There are some general aims which are shared by all these projects. Professor Babs has also stated
some requirements for the way in which the project will be conducted. Any student choosing one
of these projects needs to accept these requirements.
These aims and requirements are listed on the following two pages, followed by the list of projects.
Please note that these projects are available for September 2014 Oil & Gas students ONLY.
79
Prof Babs Oyeneyin
KEY AIM FOR EACH PROJECT
• To develop appropriate software support system for each
of the topical areas
• System should be versatile enough to be a standalone system
for Integrated Petroleum Engineering Solution • Candidate to source, test and validate relevant Engineering
model(s) • Integrate into relevant user friendly software platform • Scope to include development and testing
• Alpha version should be a standalone system for application in
the oil & gas industry • Looking for candidates with initiative and drive
80
Prof Babs Oyeneyin
REQUIREMENTS (conduct of project)
• Project Proposal • Work Package • Progress Meeting Schedule • Individual Progress Meetings
– Fortnightly – Preceded by 2‐Page Progress Report
• Objective for the period, Action, Highlights of Results
• Monthly Formal Presentations
81
Prof Babs Oyeneyin
PROJECT LIST & CANDIDATES
Suitable for SEPTEMBER 2014 Oil & Gas students ONLY
S/N PROJECT TITLE No.
OF STUDENTS
1 Real‐time Hydrocarbon Production Data Management System
Student 1 : to focus on development of PDM that can also be used for
Real‐Time Reservoir pressure , pressure decline and flowing bottom
hole pressure prediction
Student 2 : To focus on use of PDM that can also be used for future
production forecast prediction with comparison of Decline Curve Analysis
with Material Balance Student 3: To focus on use of PDM that can also be used for real‐time
Scale & Hydrate prediction
3
2 Real‐Time Textural Properties Prediction from Petrophysical Data –
Phase II
1
3 Real‐time System for Formation Compressive Strength prediction
while drilling
1
4. Variable Density Managed Pressure Drilling Hydraulics Management
System
1
5 Real‐Time System for Sand Production Rate Prediction from Well Logs 1
If you wish to choose one of these projects, please specify the page number (81),
project number (1 – 5), and title.
82
Iain Pirie
MSc Project Specification
Title Decision Theory Package Supervisor Iain Pirie Background A university lecturer, with limited computing skills, is in need of software to replace some of the lectures he gives on decision theory. (A typical decision theory problem is that a manager must decide upon the number of units of a product to manufacture when there is uncertainty concerning the likely demand for that product.) The lecturer wants the software to provide: interactive tutorials, and a facility for students to enter problems and apply different techniques. The role of this lecturer will be assumed by the supervisor. Aim To provide a decision theory software package suitable for use by students who are being taught about decision theory for the first time. Objectives
To conduct background research on decision theory techniques and relevant computer based learning.
To design and implement an interface that provides access to interactive material on several decision theory techniques.
To allow the user to enter information regarding, for example, the possible decision alternatives, states of nature, and corresponding payoffs for a given problem. For certain problems, the user will also have to be able to enter relevant probabilities.
To allow the user to enter answers for a given (user-entered) problem and to check those answers.
To provide worked solutions to user-entered problems. For problems involving Bayesian analysis of additional information, to provide the
user with output such as: the optimal decision strategy, the expected value of sample information, and the efficiency of sample information.
To provide, where appropriate, graphical representations of solutions in the form of a decision tree.
To allow the user to construct a decision tree for a specific problem and to obtain the solution from that decision tree.
To provide the user with appropriate guidance in using the package. Skills Required Good programming skills in the language of your choice.
83
Iain Pirie
Bibliography Iain Pirie’s lecture notes on decision theory. Dennis T. L. & Dennis L. B., 1991. Management Science. West.
84
Iain Pirie
MSc Project Specification Title Inventory Management system Supervisor Dr Iain Pirie Background Companies that supply parts and equipment to (the oil) industry often have large storage facilities which comprise warehouses and yards. In order for such a business to run efficiently, good management of the processes associated with procuring goods from suppliers, storing those goods and dispatching orders to customers is essential. Aim To create a generic Inventory Management System that could be tailored to satisfy the requirements of any large supply company. Objectives
To research existing inventory management systems. To create a database that can be populated with information about goods, suppliers,
customers, etc. To construct a tool that allows the user to ‘map’ the storage facility so that item
locations and available space can be easily identified. To design and implement an interface to interact with the database and run
additional tools. To update inventory levels automatically upon receipt and dispatch of goods and to
provide automatic warnings of low inventory levels. To maintain sales records. To provide an economic order quantity calculator. To provide a system that manages purchases and orders efficiently. To allow the user to generate relevant reports.
Skills required Database design and programming skills. Specific software tools and platform
85
Iain Pirie
MSc Project Specification Title Inventory Models Software Package Supervisor Iain Pirie Suitable for Oil & Gas students, but OK for students on other
courses as well Background A university lecturer, with limited computing skills, is in need of software to augment the lectures he gives on inventory models. He wants the software to be educational and to allow his students to explore different models without the burden of excessive number crunching. The role of this lecturer will be assumed by the supervisor. Aim To provide an inventory models software package suitable for use by students who are being taught about stock control for the first time. Objectives
To obtain a sound knowledge of inventory models and a good understanding of computer based learning (CBL).
To provide the user with appropriate background information, perhaps in the form of interactive tutorials.
To provide an interface that allows the user to choose between several different inventory models.
To provide the user with appropriate guidance to help the user identify the appropriate model for a given scenario.
To allow the user to enter information regarding, for example, the annual demand for a product, and the holding and ordering costs associated with that product.
To provide the user with output such as: the optimal order quantity, the corresponding annual cost, and other relevant output.
To provide appropriate (interactive) graphical presentations: to enhance the students’ understanding of the models, and to help guide the user towards a practical near-optimal solution.
Skills Required Good programming skills in the language of your choice. Bibliography Iain Pirie’s lecture notes on inventory models. Dennis T. L. & Dennis L. B., 1991. Management Science. West.
86
Iain Pirie
87
Iain Pirie
MSc Project Specification Title Management Science Suite Supervisor Dr Iain Pirie Suitable for Oil & Gas students, but OK for students on other
courses as well Background Many large companies are faced with problems that can be solved using Management Science (or Operational Research) techniques. For example: a transportation problem arises when a particular product is manufactured at several supply locations and must then be distributed to several demand locations at minimum cost; a shortest route problem arises when the minimum distance is to be covered while making deliveries to several locations; a maximal flow problem arises when, say, oil is to be distributed from a source to a final location via a network of pipes of differing capacities. Aim To create a Management Science suite of programs that will solve a range of problems commonly encountered in industry.
Objectives
To research Management Science techniques including transportation and network models.
To research any existing Management Science software tools. To design and build a package with algorithms to solve transportation-type problems
and network problems. (It is possible to implement certain algorithms using linear programming and/or genetic algorithm techniques.
To design and build a package with algorithms to solve network problems. To design an interface that will allow the user to input and edit a problem
specification as easily as possible. To represent a problem solution graphically in the form of a network. To provide built in user-guidance.
Skills Required
Good programming skills in the language of your choice.
Bibliography Dennis T. L. & Dennis L. B., 1991. Management Science. West.
88
Olivier Regnier‐Coudert
MSc Project Proposal
Project Title : Human in the loop Evolutionary Algorithms
Supervisor: Dr. Olivier Regnier-Coudert, o.regnier-coudert@rgu.ac.uk ,
Extension 2571
Key Words: Optimisation, Problem Solving, Evolutionary Algorithm, Graphical User Interface, Java
Background
Evolutionary Algorithms (EAs) are methods that iteratively generate and evolve solutions to a given problem. Examples of EAs include Genetic Algorithms, Ant Colony Optimisation, Particle Swarm Optimisation and are often nature-inspired. EAs have proved successful at solving problems ranging from resource allocation to routing. Despite their overall ability to efficiently solve complex real-world problems, EAs may sometimes exhibit difficulties as a result of premature convergence to non-optimal solutions or the exploitation of sub-optimal areas of the search space. Restart procedures or mutation kicks are possible solutions to these issues. In this project, an alternative approach will be investigated: a human intervention, which will enable manual alterations of solutions or addition of new solutions during the search. In addition to helping with convergence issues, the human in the loop method may yield alternative solutions to the problems, by blending evolved and man-made features. Aims This project aims to develop a optimisation tool to enable human intervention along the search of an EA. The student will initially choose a population-based algorithm and a classic optimisation problem for the purpose. The tool should include:
an implementation of the chosen EA; a graphical user interface to allow tuning of the algorithm parameters and problem instance selection; a component to allow the EA to be paused;
The tool may also include:
additional EAs, allowing algorithm comparison; additional problems.
Requirements
Investigation of existing literature on EAs and their applications; Investigation of existing literature on human in the loop and human assisted EAs; Design and implementation of GUI modules; Design of tests to assess the potential benefits of human interventions in EAs; Writing technical report.
Required Skills
Strong programming skills in Java; Basic knowledge of EAs and strong interest in the field; Interest in research.
Resources
89
Olivier Regnier‐Coudert
Farooq, H. and Siddique, M.T. (2014). A Comparative Study on User Interfaces of Interactive Genetic Algorithm. Procedia Computer Science, 32 pp. 45-52, available from http://www.sciencedirect.com/science/article/pii/S1877050914005961
Brownlee, J. (2011). Clever Algorithms: Nature-Inspired Programming Recipes. Available from http://www.cleveralgorithms.com/nature-inspired/index.html
90
Olivier Regnier‐Coudert
MSc Project Proposal
Project Title : Job Data Visualisation for Truck Operations
Supervisor: Dr. Olivier Regnier-Coudert, o.regnier-coudert@rgu.ac.uk ,
Extension 2571
Key Words: Logistics, Scheduling, Graphical User Interface, Web programming, Databases, Visualisation
Background
In collaboration with industries from Aberdeen, data has been collected on truck operations. Trucks are used on a daily basis to carry goods from different locations around Aberdeen. Although any type of goods may be transported, oil and gas related cargos account for the largest part of the haulage and consequently, a large part of the activities of the activity is centered around the harbour, where platform supply vessels can be loaded and unloaded. Following operations of a haulage company, data on trucks and jobs has been gathered. For a particular job, the data contains its collection and delivery details, its client, or its allocated resource. This data may also be linked with geolocation data to understand what route was used for the job. Because of the typical large vehicle fleet size and the large number of jobs, the volume of job data is difficult to process and well though visualisation and statistics tools need to be developed. Aims This project aims to develop a visualisation tool for the truck operation job data. The tool should include:
software components to retrieve data from a MySQL database software components to filter the data based on different features (eg. time window, specific trucks,
specific customer …) software component to visualise filtered data on a map software component to output statistics on the selected data a web-based graphical user interface to allow users to gather all above software components;
The tool may also include:
a software component able to estimate and generate artificial data from data profiles and statistics resulting from the above aims (e.g. generate operational data for customer X, on day Y).
Requirements
Understand truck operations and the dataset at hand Design and implementation of the different software components using model-view-controller patterns.
This stage requires comparing different libraries for MVC software development Design and implementation of a GUI (web-based). This stage requires comparing different libraries for
mapping data (eg. Google Maps) and outputting statistics Writing technical report.
Required Skills
Strong programming skills, in web technologies (javascript, MySQL); Interest in data visualisation.
Resources
Examples and tutorial for MVC libraries: http://todomvc.com/
91
Olivier Regnier‐Coudert
Andrienko G, Andrienko, N and Wrobel, S. Visual Analytics tools for analysis of movement data. ACM SIGKDD Explorations Newsletter - Special issue on visual analytics. Vol 9(2). Pp. 38-46, 2007. Available from http://dl.acm.org/citation.cfm?id=1345455
92
Olivier Regnier‐Coudert
MSc Project Proposal
Project Title : Resource Data Visualisation for Truck Operations
Supervisor: Dr. Olivier Regnier-Coudert, o.regnier-coudert@rgu.ac.uk ,
Extension 2571
Key Words: Logistics, Scheduling, Graphical User Interface, Web programming, Databases, Visualisation
Background
In collaboration with industries from Aberdeen, data has been collected on truck operations. Trucks are used on a daily basis to carry goods from different locations around Aberdeen. Although any type of goods may be transported, oil and gas related cargos account for the largest part of the haulage and consequently, a large part of the activities of the activity is centered around the harbour, where platform supply vessels can be loaded and unloaded. Following operations of a haulage company, data on trucks has been gathered. For a particular vehicle, the data contains for regular time stamps its coordinates, its trailer, the jobs it is performing and other features such as speed or orientation. Because of the typical large vehicle fleet size, the volume of resource data is difficult to process and well though visualisation and statistics tools need to be developed. Aims This project aims to develop a visualisation tool for the truck operation resource data. The tool should include:
software components to retrieve data from a MySQL database software components to filter the data based on different features (eg. time window, specific trucks, …) software component to visualise filtered data on a map software component to output statistics on the selected data a web-based graphical user interface to allow users to gather all above software components;
The tool may also include:
a software component able to trim the data without information loss. This will be valuable with respect to the current large data volume.
Requirements
Understand truck operations and the dataset at hand Design and implementation of the different software components using model-view-controller patterns.
This stage requires comparing different libraries for MVC software development Design and implementation of a GUI (web-based). This stage requires comparing different libraries for
mapping data (eg. Google Maps) and outputting statistics Writing technical report.
Required Skills
Strong programming skills, in web technologies (javascript, MySQL); Interest in data visualisation.
Resources
Examples and tutorial for MVC libraries: http://todomvc.com/
93
Olivier Regnier‐Coudert
Andrienko G, Andrienko, N and Wrobel, S. Visual Analytics tools for analysis of movement data. ACM SIGKDD Explorations Newsletter - Special issue on visual analytics. Vol 9(2). Pp. 38-46, 2007. Available from http://dl.acm.org/citation.cfm?id=1345455
94
Nirmalie Wiratunga
ExplanationsinSocialRecommenderSystemsDr Nirmalie Wiratunga, Reader, Computing, RGU n.wiratunga@rgu.ac.uk,
www.comp.rgu.ac.uk/staff/nw/
KeyTechniquesandSkills Text Mining
Recommender Systems
Web Development Skills
Java programming
BackgroundSocial recommender systems help users locate attractive and relevant items by analysing social
content such as online product reviews. In recent years, recommender systems have come to
provide not only a list of relevant content to the users but also explanations of why a specific
item is recommended. Some of the explanations proposed in the literature are average user
rating, neighbours’ ratings and histogram with grouping interface [4]. In this project we will
explore how different explanation approaches might be applied to improve recommendation. In
particular, we generate explanations based on sentiment of the product aspects from online
product reviews. We analyse the influence of such explanations in recommendation and
evaluate the effectiveness of the proposed explanations in a social recommender system.
AimandObjectivesThe overall aim is to explore the application of sentiment driven explanation in social recommender
systems. Project objectives include:
1. To carry out a survey on explanation in recommender systems.
2. Develop a recommender system using methodology in [3].
3. Develop sentiment driven explanations in the recommender system.
4. Compare the sentiment driven explanations with other existing explanation approaches in
top‐N recommendation task.
References[1] Tintarev, N., Masthoff, J.: A survey of explanations in recommender systems. In: Proceedings
of the 2007 IEEE 23rd International Conference on Data Engineering Workshop, ICDEW ’07,
pp. 801–810. IEEE Computer Society, Washington, DC (2007)
[2] Herlocker, J.L., Konstan, J.A., Riedl, J.T., 2000. Explaining collaborative filtering
recommendations. In: Proceedings of the 2000 ACM Conference on Computer Supported
Cooperative Work (CSCW000), Philadelphia, Pennsylvania, USA, pp. 241–250.
95
Nirmalie Wiratunga
[3] Yoke Yie Chen, Xavier Ferrer, Nirmalie Wiratunga, and Enric Plaza. Sentiment and preference
guided social recommendation. In Case‐Based Reasoning Research and Development, pages
79‐94.Springer, 2014.
[4] Gedikli, F., Jannach, D., & Ge, M. (2014). How should I explain? A comparison of different
explanation types for recommender systems. International Journal of Human‐Computer
Studies, 72(4), 367‐382.
96
Nirmalie Wiratunga
Data and Text Analytics Dr Nirmalie Wiratunga
Reader School of Computing and Digital
Media n.wiratunga@rgu.ac.uk
Social Media Mining
Using state of the art text mining algorithms you can develop applications that allow a local authority such as the Aberdeen City Council to track the opinions of people on a variety of services. For example by analysing tweets given a period of time ascertain whether they enjoyed the bon fire night? What traffic safety problems are being identified by people and in which areas of the city?
To develop such functionality you will need a good grasp of programming skills and appreciation of computing algorithms. From a technology point of view you have the flexibility to develop this as a web or mobile application using php, java script or Mongo DB.
Data Mining Analysing traffic safety from incident statistics. All accidents and incidents in the UK are currently being recorded and made available publicly through the SATS19 database. In this project your task is to use this database to present a variety of statistics about road safety in the UK. For instance you can find out what are the most common causes for reported fatalities by pedestrians, cyclists or cars? Which age groups, modes of transport appear to be most vulnerable? Which areas report the greatest fatalities and what can you infer in terms of socio demographic data? To develop such an app you will need to be passionate about data mining. It will also be helpful to good GUI skills because this would allow you to present trends and statistics using relevant data visualisation tools.
Recommender Systems
Much of the online retail industry now relies on intelligent algorithms to assist online shoppers.
Consider popular sites such as Amazon, TripAdvisor or Expedia. These are all a rich source of data
from which you can deliver useful apps. For instance there reviews generated by users,
descriptions of products and information about which products were actually purchased after
viewing a specific product. Could you for example develop a system that can analyse all reviews (in
a given time windows) for a given product to extract all the positive and negative reasons detailed
by customers? Or you could extract the viewed and purchased product relationships to draw a
graph to visualise people’ s purchase behaviour.
To develop such functionality you need to appreciate the need for data and text mining and
have very good programming skills with a passion for retrieval algorithms.
97
Nirmalie Wiratunga
ImprovingtheefficiencyofkNNwithPageRankDr Nirmalie Wiratunga, Reader, Computing, RGU.
n.wiratunga@rgu.ac.uk, www.comp.rgu.ac.uk/staff/nw/
KeyTechniquesandSkills Data and Text Mining
kNN and similarity metrics
Excellent Programming Skills
BackgroundPageRank is commonly used to identify authoritative nodes in graphs. Its most famous
application is the ranking of documents for Google. This algorithm assigns an importance score
to a node in a direct‐graph by taking into account the outward and inward links of a node. The
Pagerank score of a node is proportional to the Pagerank scores of its incoming links and
inversely proportional to the scores of its outgoing links. The general intuition is that nodes that
are important will have a greater influence on nodes linked to them. The algorithms is iterative
and applicable to any form of directed graph.
In this project we will explore how the above Pagerank algorithm might be applied to improve
the efficiency of a kNN algorithm. For instance we will use the competence modelling metrics of
reachability and coverage of a case to define its in and out links, and then apply the Pagerank
algorithm to score cases. These scores can be used to identify the core cases, thereby reducing
the number of pair‐wise case comparisons at run‐time.
AimandObjectivesThe overall aim is to explore the application of PageRank with kNN
5. To carry out a survey on competence modelling, kNN and PageRank.
6. Develop the PageRank algorithm.
7. Integrate the outcome of 2 with kNN.
8. Compare the indexing mechanisms with other traditional kNN case reduction techniques.
References Smyth, B., McKenna, E.: Building compact competent case‐bases. In Klaus‐Dieter Althoff,
Ralph Bergmann, and L. Karl Branting, editors, Proceedings of the Second International
Conference on Case‐Based Reasoning Springer (1999) 329–342
Wiratunga, N., Massie, S., & Lothian, R. (2006).: Unsupervised Textual Feature Selection. 8th
European Conference on Case‐Based Reasoning (ECCBR‐06), Springer, pp 340‐354.
Brin, S. and Page, L. (1998) The Anatomy of a Large-Scale Hypertextual Web Search Engine. In: Seventh International World-Wide Web Conference (WWW 1998), April 14-18, 1998, Brisbane, Australia.
98
Nirmalie Wiratunga
ThreeProjectsinSentimentAnalysisDr Nirmalie Wiratunga, Reader,
Computing, RGU.
n.wiratunga@rgu.ac.uk,
www.comp.rgu.ac.uk/staff/nw/
KeyTechniquesandSkills• Text/Data Mining
• System development, interface and integration
• Excellent Programming Skills (e.g. Java)
Sentiment analysis is a recent area of text mining driven by the need to unearth patterns from
both positive and negative user opinions on the social Web [6]. Unlike traditional Information
Retrieval and text classification, the focus is not on ”topic”, but rather on the polarity (positive or
negative) and the strength of sentiment expressed [7].
Vocabulary alone is not usually enough to reliably assess sentiment and extract phrases.
Additional information, such as part‐of‐speech (POS) tags, grammatical analysis to identify
negation terms and lexical valence shifters can further improve performance on this task.
Research has shown that certain tag sequence patterns (e.g. centred on the adjective tag) are
good extractors of sentiment‐rich phrases [8]. Furthermore, the relevant patterns for any
particular domain can be learned automatically. With social content, non‐lexical terms such as
emoticons and hashtags can also be exploited. Interested students can explore projects in the
following directions:
Project‐1. Sentiment Classification: Develop a sentiment classifier for an identified theme on social media (twitter,reddit etc.) [1,2,5]
Project‐2. Sentiment Aspect Extraction: Develop an algorithm to extract key aspects from
user reviews and generate sentiment over each of these aspects. A suitable domain
might be reviews on trip advisor. [3,5]
Project‐3. Twitter Emotion Analysis with Distance Supervision: Explore how emoticons
can be utilised to develop an emotion classification algorithm for social
media content. [4,5]
99
Nirmalie Wiratunga
References
1. Mukras, R., Wiratunga, N., & Lothian, R. Selecting Bi‐tags for sentiment analysis of text. in Proc of 27th
International Conf on Innovative Techniques and Applications of Artificial Intelligence, 2007, Springer.
2. F. Sebastiani. Machine Learning in Automated Text Categorization, ACM Computing Surveys, 34(1), 2002. 3. Minqing Hu and Bing Liu. "Mining and Summarizing Customer Reviews". Proceedings of
the 10th ACM International Conference on Knowledge Discovery and Data Mining
(SIGKDD‐2004), Seattle, USA, August
2004.
4. Alec Go, Richa Bhayani, Lei Huang. 2009. Twitter Sentiment Classification using Distant Supervision.
Technical Report , Stanford
5. Christopher D. Manning, Prabhakar Raghavan and Hinrich Schütze, Introduction to
Information Retrieval, Cambridge University Press. 2008.
http://nlp.stanford.edu/IR‐book/information‐retrieval‐book.html
100
Mark Zarb
Title A Booking System for Arduino Components
Supervisor Suitable for
Dr Mark Zarb CST / CSTNM / Oil & Gas students ONLY
BackgroundArduino components (such as Arduino Pro Mini boards, LEDs, resistors, magnetometers and PIR
sensors) are used in a number of contexts in the RGU undergraduate program: for example, they are
used as part of the teaching for the CM1016 module, can be requested for use in Honours projects,
and could be taken away to form a number of workshops (both internally and externally).
Currently, there is no way to ‘track’ components or their whereabouts.
AimThis project would be looking at a number of potential “check‐out” solutions (ideally some kind of
web site/database) which would list all the components and allow users to check components out,
and return them. Additionally, the system would be able to send out periodic reminders asking users
to return their components should they be urgently required, or after they have been “checked‐out”
for a certain period of time.
SkillsRequired An awareness of project management
Gathering system requirements
A working knowledge of implementing web and database systems
101
Mark Zarb
Title An App to Monitor Stock Prices
Supervisor Dr Mark Zarb
Suitability Oil & Gas students only
BackgroundCurrently, prices for oil and gas are in a state of flux, and it has been recently reported that the oil
price has dropped to its lowest point for six years.
AimThis project would involve the creation of an app (tablet or phone) which would allow for easy
monitoring of stock prices for user‐requested oil/gas companies, as well as other information (e.g.
the current price of crude oil and gas), or display the retrieved stock prices as a visualisation/chart.
It is expected that this project would involve an element of external research which would allow the
student to determine areas that would benefit from being monitored, and an appropriate
implementation for the chosen system.
(This project could also involve a separate element at the start, dealing with organising a set of focus
groups with potential users of this app, to derive system requirements or user stories.)
SkillsRequired An awareness of project management
A technical ability in developing app‐based solutions (e.g. tablet/phone; OS tbd by student)
An understanding of the oil and gas industry
ReferencesA number of datasets are available at https://www.gov.uk/oil‐and‐gas‐uk‐field‐data
102
Mark Zarb
Title A Framework to Implement Programming Concepts in Processing
Supervisor Suitable for
Dr Mark Zarb Anyone
BackgroundThe Processing language is often seen as a basic tool built for visual design communities, and it is
built on the Java language. This allows instructors to demonstrate more complex code written with
this simple tool: with little effort, concepts such as arrays, objects and inheritance can be
demonstrated in Processing.
A number of workshops have been developed, which allow students to write their own code (e.g.
designing and coding individual fish, and animating them). Once all students complete this task, they
are asked to e‐mail the instructor with their code. At this stage, the instructor then writes additional
code to bring all these code snippets together (e.g. all fish designed during a workshop are animated
in an aquarium) – however, this requires the instructor to spend a considerable amount of time
refactoring the individual code – however, this is not always feasible.
AimThis project can take one of two forms, depending on student preference.
1) To design and implement a framework to support this process in a simpler way;
2) To design and implement a series of workshops which visually engage learners whilst
introducing certain programming concepts.
This project may require the use of a certain degree of user testing in its final stages.
SkillsRequired Knowledge of basic and advanced programming techniques (e.g. inheritance and abstract
classes)
Knowledge/willingness to learn the Processing language
An understanding of user testing
Research techniques
103
Mark Zarb
Title A System allowing Practice of Intermediate‐Level Programming Concepts
Supervisor Suitable for
Dr Mark Zarb Anyone
BackgroundFollowing an initial introduction to programming, students are often quickly exposed to a number of
intermediate techniques which they find to be more complex to understand (e.g. class structure,
inheritance, abstract classes, etc…).
AimThis project aims to firstly understand which concepts students struggle with, through interviews
and focus groups. The knowledge derived from this process should then be targeted in an adequate
solution.
It is currently anticipated that the proposed solution would be a ‘tutorial‐based’ system, however,
this is a very flexible requirement: these concepts could be introduced in a more abstract or passive
way, for example, through development of an app, or a game.
SkillsRequired Project management
Knowledge of more complex programming techniques (e.g. inheritance and abstract classes)
An understanding of how to gather user requirements
Research techniques
104
Inés Arana
Title Knowledge Hub ‐ Web‐portal
Proposer Independent Data Services Holdings Pte Ltd – Singapore
Supervisor Contact Inés Arana for further details i.arana@rgu.ac.uk
Background Independent Data Services (IDS) delivers web‐based data and knowledge management solutions to the upstream Oil and Gas Industry. IDS specialise in Reporting and Analytics, which is driven by its DataNet framework. DataNet is web‐based and can be accessed via any flash enabled web‐browser. As an extension of IDS services, IDS wish to aid their users in learning how to navigate, use and learn from their tailored IDS solution. This has led to discussions around the creation of a ‘knowledge hub’ consisting of training materials, glossaries and guides. This content management system (CMS) should interface with the IDS software ticketing system – Jira. Aims To plan, design and implement a knowledge portal integrated in the IDS customer facing website which is based on Joomla (other technologies may be recommended with sufficient reasoning and requirement). IDS at this point has licenses for Joomla, ZenDesk, SugarCRM and JIRA. All these tools should be evaluated and the most fit for purpose selected as the management tool
Objectives
To plan, design, implement, test and evaluate a ‘knowledge hub’ environment
To investigate, design and implement an interface with Jira and ZenDesk
To create a ‘feature future’ road map
To fully document the implemented system Key Techniques Key techniques may vary from project management, service delivery, software development, software interfacing and/or integration, human computer interaction considerations and advanced graphical user interface skills. Notes
IDS will provide access to the content management system that is to be used.
IDS offices and staff can be used to brainstorm ideas, and work on the project within office hours.
IDS standard software applications should be used and will be provided. Note: This project was obtained by Inés Arana, but a supervisor has not yet been assigned.
105
Inés Arana
Project Specification
Title Data Management – Investigation on Data Completeness
Proposer Independent Data Services Holdings Pte Ltd – Singapore
Supervisor Contact Inés Arana for further details i.arana@rgu.ac.uk
Background Independent Data Services (IDS) delivers web‐based data and knowledge management solutions to the upstream Oil and Gas Industry. IDS specialise in Reporting and Analytics, which is driven by its DataNet framework. DataNet is web‐based and can be accessed via any flash enabled web‐browser. IDS currently store its customer’s data on hosted web‐servers (via an external cloud) and can access all of this information in order to perform statistical analysis and learning from its vast amount of data. IDS require an investigation into how ‘complete’ their customer’s data sets are. Aims Investigate, analyse and document fields, which are commonly captured in the IDS DataNet suite. Find trends in data capture and investigate the data set to find trends that are not already known to IDS or the Industry. A full write‐up of the investigation should be provided to IDS containing a breakdown of techniques used, results, and possible completeness improvement methods. Objectives
To analyse the IDS DataNet system to find data completeness issues
To investigate and compare data completeness across a number of IDS customers
To fully document the investigation
To document possible data completeness and product usability improvements
ADDITIONAL: To design, implement, test and evaluate a software application that can be run on any IDS product to determine the completeness of data within its own realm.
Key Techniques Key techniques may vary from statistical analysis, database querying, software development, data management review, data modelling and project management.
Notes
IDS will provide access to the DataNet application as to investigate the suite
IDS offices and staff can be used to brainstorm ideas, and work on the project within office hours.
IDS standard software applications should be used and will be provided.
Note: This project was obtained by Inés Arana, but a supervisor has not yet been assigned.
106
Inés Arana
Title E‐commerce solution ‐ IDS Marketplace
Proposer Independent Data Services Holdings Pte Ltd – Singapore
Supervisor Contact Inés Arana for further details i.arana@rgu.ac.uk
Background Independent Data Services (IDS) delivers web‐based data and knowledge management solutions to the upstream Oil and Gas Industry. IDS specialise in Reporting and Analytics, which is driven by its DataNet framework. DataNet is web‐based and can be accessed via any flash enabled web‐browser. Currently IDS Technical staff manually create ‘tailored solution’ (web) sites for each client. IDS require an investigation into the creation of an e‐commerce “marketplace” environment where clients can self‐service and auto‐implement a working solution.
Aims Investigate and develop an e‐commerce environment where users can select capabilities, a pricing plan and auto‐implement a working solution consisting of IDS’s DataNet reporting and analytic capabilities.
Objectives To investigate current and emerging e‐commerce technologies
Select most appropriate technology(ies)
Design, develop and test a prototype e‐commerce system that can auto‐build a working DataNet2 solution from user selection capabilities.
Fully document the investigation and development Key Techniques Techniques include, but not limited as:
Technology review
Software prototype design, development and testing
Project Management
Notes IDS will provide access to the DataNet application as to investigate the suite
IDS offices and staff can be used to brainstorm ideas, and work on the project within office hours.
IDS standard software applications should be used and will be provided.
Note: This project was obtained by Inés Arana, but a supervisor has not yet been assigned.
107
Inés Arana
Project Specification Title DrillNet Data Validation – An Investigation
Proposer Independent Data Services Holdings Pte Ltd – Singapore
Supervisor Contact Inés Arana for further details i.arana@rgu.ac.uk
Background Independent Data Services (IDS) delivers web‐based data and knowledge management solutions to the upstream Oil and Gas Industry. IDS specialise in Reporting and Analytics, which is driven by its DataNet framework. DataNet is web‐based and can be accessed via any flash enabled web‐browser. There is currently limited validation in place within the IDS DataNet solutions, therefore relying on the user to be accurate when entering data. IDS require an investigation into possible validation methods that would improve the data accuracy, and final data integrity.
Aims Investigate and document validation methods in the IDS DataNet environment to improve final data quality & integrity
Objectives
Review and analysis of IDS DataNet environment to identify opportunities for applying data validation
Make recommendations based on investigation for introduction of data validation methods into IDS DataNet solutions.
Fully document the investigation
Key Techniques Techniques include, but not limited as:
Data validation methods/techniques
Software design, development and testing
Project Management
Notes
IDS will provide access to the DataNet application as to investigate the suite
IDS offices and staff can be used to brainstorm ideas, and work on the project within office hours.
IDS standard software applications should be used and will be provided as necessary.
Note: This project was obtained by Inés Arana, but a supervisor has not yet been assigned.