Dr. Joanna J. Bryson

Last modified: 22 July 2012

Dr. Bryson supervises two sorts of projects: AI projects, primarily those to do with making the design of AI systems easier, and NI projects, primarily those modelling the evolution of social and cognitive behaviour. NI projects normally (but not always) include a systems AI component, since the tools we use for modelling natural intelligence are all AI. Improving the AI or tools is one way to make the computer science component of the project clear. AI projects similarly will always have some interesting AI product to be produced.  Being your own user is also the best way to make sure your tools are actually useful.

See the AmonI software page for details of some of our existing projects, and related papers on the designing intelligent systems page.

Dr. Bryson meets with all her project students once every other week in Autumn term, and weekly in Spring. This is a group meeting, allowing students to experience peer supervising and supervision, and can generally work together on understanding common problems such as new technologies. There are of course a few longer individual meetings at critical periods in both terms.  She sometimes accepts novel project proposals from strong students, and is happy to negotiate about and adjust her own proposals to the interests and capabilities of a particular student. However, please note that not every project below can be adjusted to suit every student's capabilities.

Previous projects and students.

Examples of possible AI projects for this year:


Evaluating and Improving an AI IDE

This summer we are working to substantially improve our core piece of AI development technology, ABODE (current / old version is here).  But as I said above, only use makes tools good. Taking this project requires strong java skills and an interest in real-time AI systems such as robots and/or game characters (see e.g. the next two projects), since, as stated above, you will need to demonstrate that you can build something with the tool.

A Behaviour Library for LEGO Robots

The department has recently acquired a set of LEGO robots to be used by final-year students (mostly in the Spring). We would like to make them compatible with Behavior-Oriented Design (BOD) and to work with ABODE  (see above). Possible tasks include RoboCup Football, RoboCup Rescue a Robot Companion, or overcoming the Dalek problem in the East Building (the stairs.)

Improving the Action Selection Mechanism for an Artificial Football Team

Behavior-Oriented Design (BOD) is a way of making artificial intelligence based on combining object oriented design and proactive planning, normally using POSH action selection. Last year, Tom Hyde produced a good team for the Robocup Football Simulator League (that's VR, not robots), and in so doing identified some problems in the real-time scheduling for POSH. This project will probably be in Java, but other technologies are possible through an API. Note: this project requires a very competent programmer. Interest in sport is not particularly useful & could even get in the way!

Creating a Bath Implementation of Behaviour Trees

Over the years, a lot of game & robot technology has been produced at Bath (& a few other universities) using POSH action selection.  However, there are other action-selection mechanisms (ASM) capable of describing dynamic plans.  One of the most widely cited presently is the Behaviour Tree (BT), however there is no canonical downloadable, open-source version of BTs.  This project would involve building a BT action selection mechanism.  Ideally this would be used to replace the POSH action selection on one of our existing behaviour libraries (e.g. UT Capture the Flag, Robocup Footbal, StarCraft: Brood Wars) so that the student would a) be easily able to compare the two technologies and b) not have to implement a substantial AI as well as building the ASM.

Visualization and Maintenance of an Emotional Virtual Agent

Previous PhD student Emmanuel Tanguy built the Emotionally Expressive Facial Animation System (EE-FAS). The basic system is very modular, having been built on top of psyclone. However, understanding the architecture is not trivial for new users. This project would involve making it easier to both develop and understand emotional AI systems.  This might very well involve reimplementing and simplifying EE-FAS system.

Extending & Generalising BOD Star Craft to more species and map.

Behavior-Oriented Design (BOD) is intended as an iterative methodology to make building AI easier and faster. In 2012, Simon Davies created a single BOD StarCraft or VR social spaces, such as Second Life. Can Davies' solution be refactored to make extending the AI to other maps and / or species easier?  This project would ideally create a number of additional extensions to.

Examples of possible NI projects this year include:


Modelling matriarchical dominance structures non-human contexts

This project requires modelling the social structure of lemurs and/or spotted hyenas. This would be interesting in itself, but it is particularly interesting if it helps us understand why these species have evolved to have female dominant social structures (most other similar species have male-dominated structures). This project requires spatial agent-based modelling, and developing a good understanding of some concepts from contemporary biology, particularly inclusive fitness.

Modelling fission / fusion social behaviour and its impact on information dissemination

Modelling the fission/fusion society and inter-troop relations of chimpanzees, spider monkeys or Mongolian asses. There are two existing models that could be extended for this project, or a new one could be written from scratch. This project also requires reading some biology, but would probably not require the level of theoretical sophistication of the female dominance project.

Modelling the impact of in-group & out-group assessments on regional economics

This project extends from a recent grant run in our group on Understanding Cultural Variation in Anti-Social Punishment. It would however require a new model, probably a spatial agent-based model, but a strong independent student could possibly look at this with game theory.

Deriving Individual Semantics from Small Text Corpra

This project extends from an undergraduate dissertation by Avri Bilovich on using simple vector-based automatic text analysis to track the change of meaning in texts over time. We would now like to see if we can track individual differences in word use and shifts in semantics over time by looking at corpra in the public domain, such as Enron's email corpus, government records or social media. See Detecting the Evolution of Semantics and Individual Beliefs Through Statistical Analysis of Language Use. Bilovich's software is written in common lisp; it could be reused or a new version could be written in another language.  See also Eugene Bann's 2012 dissertation on deriving information about emotions from twitter corpra.