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:

Sample topics

  1. Automated translation between English and another language with which you are familiar
  2. Extracting and analysing information from social networks such as Facebook, Twitter, LinkedIn
  3. 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.
  4. Use Semantic Web technologies to develop an ontology for a particular domain, with interfaces for users to query and update the content.
  5. 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.
  6. Implement and evaluate a probabilistic parser for natural language as described in Jurafsky and Martin (2008) ch. 14.
  7. Modify, extend or re-implement the system described in Isaac (2008) to model game-theoretic scenarios such as the Prisoner's Dilemma.
  8. 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?
  9. 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

  1. Steven Bird, Ewan Klein and Edward Lopez, Natural Language Processing with Python, O'Reilly Media: 2nd edition expected 2016. See online version.
  2. Nitin Hardeniya, NLTK Essentials, Packt Publishing, July 2015. ISBN = 9781784396909
  3. Jacob Perkins, Python 3 Text Processing with NTLK 3 Cookbook, PACKT PUBLISHING (August 2014). ISBN-13: 9781782167853
  4. Breck Baldwin, Krishna Dayanidhi, Natural Language Processing with Java and LingPipe Cookbook, PACKT PUBLISHING, November 2014, ISBN = 9781783284672
  5. Richard M Reese, Natural Language Processing with Java, PACKT PUBLISHING, March 2015, ISBN = 9781784391799
  6. Toby Segaran, Programming Collective Intelligence: Building Smart Web 2.0 Applications O'Reilly Media, 2007. ISBN-13: 978-0596529321
  7. Dhiraj Murthy, Twitter: Social Communication in the Twitter Age, Polity, 2012.
  8. 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).
  9. Alan G. Isaac (2008). Simulating Evolutionary Games: A Python-Based Introduction. Journal of Artificial Societies and Social Simulation
  10. Toby Segaran, Colin Evans and Jamie Taylor, Programming the Semantic Web, O'Reilly, 2009. ISBN-13: 978-0596153816
  11. 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
  12. Michael Anderson and Susan Leigh Anderson, Machine Ethics: Creating an Ethical Intelligent Agent, AI Magazine Volume 28 Number 4 (2007)
  13. Susan Schuppli, Deadly Algorithms, Radical Philosophy 187 (Sept/Oct 2014)
  14. Bing Liu, Sentiment Analysis and Opinion Mining, University of Illinois at Chicago, 2012.
  15. Jaspreet Shaheed and Jim Cunningham, Agents making moral decisions, ECAI 2008.