BSc Project Topics 2015-16
Dr Rodger Kibble
I am interested in supervising projects in the areas of Natural
Language Processing, Agent-based social simulation, Text Mining, the
Semantic Web and Machine Ethics. I am willing to supervise both software- and research-based projects.
These topics should be suitable for students who have taken at least one of
these courses:
- Introduction to Natural Language Processing
- Data Mining
- Artificial Intelligence
Sample topics
- Automated translation between English and another language with which
you are familiar
- Extracting and analysing information from social networks such as
Facebook, Twitter, LinkedIn
- Topic detection and/or classification tasks: analysing texts to determine
what they are about, identifying the author or genre, or identifying positive and negative opinions.
- Use Semantic Web technologies to develop an ontology for a
particular domain, with interfaces for users to query and update the
content.
- Develop a unification (feature-based) grammar using the Natural
Language Toolkit, which can parse a substantial sequence of prose such as
a chidren's story.
- Implement and evaluate a probabilistic parser for natural language as
described in Jurafsky and Martin (2008) ch. 14.
- Modify, extend or re-implement the system described in
Isaac (2008) to model
game-theoretic scenarios such as the Prisoner's Dilemma.
- Ethical issues in areas such as medical technology and military robotics: are current AI systems capable of moral
reasoning in situations involving life and death;
who should be accountable for the consequences of such decisions?
- Research-based extended essays in any of the above areas.
Software environments
Many of the above topics are suitable for Python programming.
You are strongly encouraged to use Anaconda and
IPython Notebook for installing and maintaining Python and associated libraries, and
for developing and executing your applications. Some useful websites:
Students who prefer to code in Java could investigate Lingpipe or
the Stanford NLP tools.
Useful reading
- Steven Bird, Ewan Klein and Edward Lopez, Natural Language
Processing with Python, O'Reilly Media: 2nd edition expected 2016.
See online version.
- Nitin Hardeniya,
NLTK Essentials,
Packt Publishing, July 2015. ISBN = 9781784396909
- Jacob Perkins, Python 3 Text Processing with NTLK 3 Cookbook,
PACKT PUBLISHING (August 2014). ISBN-13: 9781782167853
- Breck Baldwin, Krishna Dayanidhi,
Natural Language Processing with Java and LingPipe Cookbook, PACKT PUBLISHING, November 2014,
ISBN = 9781783284672
- Richard M Reese,
Natural Language Processing with Java,
PACKT PUBLISHING, March 2015, ISBN = 9781784391799
- Toby Segaran, Programming Collective Intelligence:
Building Smart Web 2.0 Applications O'Reilly Media, 2007. ISBN-13:
978-0596529321
- Dhiraj Murthy, Twitter: Social Communication in the Twitter Age,
Polity, 2012.
- Matthew Russell, Mining the Social Web: Data Mining Facebook, Twitter, LinkedIn, Google+, GitHub, and More,
O'Reilly Media; 2nd edition (October 2013). ISBN-13: 978-1-4493-6761-9 (print), 978-1-4493-6820-3 (ebook).
- Alan G. Isaac (2008).
Simulating Evolutionary Games: A Python-Based Introduction.
Journal of Artificial Societies and Social Simulation
- Toby Segaran, Colin Evans and Jamie Taylor, Programming the
Semantic Web, O'Reilly, 2009. ISBN-13: 978-0596153816
- Daniel Jurafsky and James Martin, Speech and Language Processing:
an Introduction to Natural Language Processing, Computational
Linguistics, and Speech Recognition, Pearson Education; 2 edition
(29 April 2008) ISBN-13: 978-0135041963
- Michael Anderson and Susan Leigh Anderson,
Machine Ethics:
Creating an Ethical
Intelligent Agent, AI Magazine Volume 28 Number 4 (2007)
- Susan Schuppli, Deadly Algorithms,
Radical Philosophy 187 (Sept/Oct 2014)
- Bing Liu,
Sentiment Analysis and Opinion Mining,
University of Illinois at Chicago, 2012.
- Jaspreet Shaheed and Jim Cunningham, Agents making moral decisions,
ECAI 2008.