UWA logo

 
Computer Science
4th Year Projects in 2001




The Human Brain - The Final Frontier?


With ever increasing knowledge of physical systems both in the large (astrophysics) and in the small (molecular physics), and ever increasing understanding of biological systems through, for example, mapping of the human genome, the human brain remains one of our most elusive mysteries. A greater understanding of the human brain and nervous system promises great benefits in terms of improving treatments for mental and physical health, as well as potential spin-offs in Artificial Intelligence and Human-Computer Interaction.

Modelling Aspects of the Human Brain

One way to understand and test theories about the way the brain, the nervous system, and related sensory and motor processes function is through attempting to develop computational models of these processes. This is one of the goals of Cognitive Science. The projects offered below seek to use computational models to demonstrate or assess specific aspects of cognitive or cognitively controlled processes.


    
  1. Getting Connected - Developing A Schema Language

    External Advisor: (to be confirmed)
    Prof. Michael Arbib, Adjunct Professor, Department of CS&SE, UWA
    Professor of Computer Science, Neuroscience and Psychology, University of Southern California
    Director of the USC Brain Project.

    One of the most enduring debates in Artificial Intelligence is whether cognitive processes should be implemented at the "high" or symbolic level (such as logic) or the "low" or connectionist level (such as neural nets). Arbib (1989) has proposed the concept of a schema which may offer a means of bridging this gap.

    Construction of objects from geons.

    A set of properties that would be found in the implementation of schemas has been identified by MacNish (2000). These properties combine high-level constructs and functions, such as instantiation, subclassing and matching, and lower-level constructs and functions, such as networks of activation. They also include facilities for learning such as assimilation and accommodation.

    The properties identified for schemas appear to be well-suited to implementation in a threaded object-oriented language such as Java. The aim of this project is to develop an implementation of a general schema and provide a proof of concept by showing that instances of that class can be applied to more than one cognitive process.

    The range of possible cognitive processes that can be considered is broad and can be tailored to the interests of the student. Possible domains include include vision, language processing, memory and learning, and control. One example is shown in the accompanying image. It is thought that people recognise complex objects by constructing them from geometric "primitives" or geons. In order to do this (and other image construction tasks) our mental models must provide a mechanism for "floating" smaller representations with respect to each other and "anchoring" them to form larger representations of a scene - one of the properties identified for schemas.

  2. Drawing on the Right Side of Your Brain - Testing Emergence of Hemispherical Specialisation

    Asymmetry of the human brain.

    While at first sight the two hemispheres of the human brain may appear quite similar, researchers as far back as the 1850s have noticed difference in the structure and particularly the function of the left and right hemispheres. As illustrated in the figure, for example, the left hemisphere provides most competency for language understanding and production and mathematical operations, while the right side is most competant with spacial relationships (hence the well-known series of books that promote drawing using the right side of the brain).

    The goal of this project is to investigate whether such specialisation is a natural consequence of the processes of evolution and learning. This will be achieved by evolving neural networks using a genetic algorithm approach, with selection at each generation according to proficiency at more than one task. The aim will be to see whether there is an emergent tendency towards specialisation that can be demonstrated.

    The tasks undertaken by the neural networks can be tailored according to the interests of the student. Examples include visual recognition, speech recognition, and control.

    
    
    

  3. Measuring Emotional Intensity and Lateral Asymmetry

    Co-supervisor: Dr Eunjung Holden

    Facial expression of emotion plays an important role in human communication, with basic expressions of emotion being consistent across cultures. Studies have shown that people judge emotion expressed on the left side of the face as more intense than emotion expressed on the right side, leading to the hypothesis that the right hemisphere of the brain (which is chiefly responsible for controlling the left side of the face) plays a leading role in the production of emotional expression. (Evolutionary conjectures for the reason behind this specialisation include the suggestion that it compensates for the diminished ability of the left hemisphere of the brain, which processes the right visual field and hence tends to process the left side of others' faces, to recognise emotion thereby increasing communication.)

    Basic facial expressions.

    The studies of intensity of emotional expression have proceeded by making up composite pictures of the faces from only the left side of the face and its mirror image or only the right side of the face and its mirror image. These are then shown to participants, in a suitable random fashion, who are asked to rank or rate the images for emotional intensity. While the tendency towards rating left-side composites as more intense may not be particularly extreme, it is remarkably consistent across large numbers of experiments.

    The goal of this project is to use vision processing techniques to develop more quantitative measures of intensity of emotional expression. In particular, a technique called non-negative matrix factorisation has been found useful in extracting and learning parts of faces. This may be preferable to other techniques that learn holistic representations since emotion appears to be expressed chiefly around particular facial features. The aim is to use this technique to provide data for a neural network which can be trained to recognise, and hence quantify, emotions and their intensity.

  4. More to come...


Images from Hilgard's Introduction to Psychology for educational purposes only. Access restricted to UWA.
COMMONWEALTH OF AUSTRALIA
Copyright Regulations 1969

WARNING

This material has been reproduced and communicated to you by or on behalf of The University of Western Australia pursuant to Part VB of the Copyright Act 1968 (the Act).

The material in this communication may be subject to copyright under the Act. Any further reproduction or communication of this material by you may be the subject of copyright protection under the Act.

Do not remove this notice.


Intelligent Techniques for Code Analysis and Feedback

Evolutionary Optimisation and Test Sequence Generation

The datlab system is a Java system for analysing data structure implementations submitted by 2nd year students. The system, and some preliminary work on evolutionary test sequence generation, is described in [ MacNish00].

The main approach used by the datlab system for testing student code is to run sequences of test methods on the code, and compare the resulting output and the errors thrown with those of a "master copy" that is known to work correctly. While these test sequences can be generated pseudorandomly, there are a number of problems with this approach. First, errors may only arise from fairly specific sequences of operations. Long pseudorandom sequences are therefore needed to give a high probability of uncovering errors. Since the response time of the system is also important with many students using the system at once, there are practical limits on the size of test sequences used, and on some occasions erroneous code will pass unnoticed.

Secondly, it is important to be able to provide useful feedback to students. One way in which this has been done is to provide students with the sequence of operations that brought about the failure of the submitted code. They can then be encouraged to work through the sequence against a diagrammatic representation of the data structure to identify where its state is corrupted. (The corruption does not, in general, occur in the last method called - this method simply reveals the corrupted state.) If long test sequences are used this process becomes unwieldy and impractical.

Finally, the long pseudorandom sequences provide little feedback to the lecturer about the types of errors frequently being made by students. This information could be very useful for addressing common misunderstandings in lectures and tutorials.

What we seek, therefore, is a way of generating test sequences that fulfill the following goals.

  1. The sequences should uncover "most" errors - in particular, frequently occuring classes of errors should be found. Note that frequency of occurrence of an error has little correlation with frequency of pseudorandom generation of a sequence that uncovers the error. (Project students may wish to explore this correlation.)

  2. Errors should be uncovered by "short" sequences, which can then be used by students to investigate the behaviour of their code and by lecturers to characterise common misunderstandings amoung students.
The aim of these projects is to explore the development and use of iterative optimisation techniques (or "evolutionary" techniques) for test sequence generation. This provides an interesting application area for iterative optimisation techniques for a number of reasons:

At least two projects can be offered in this area, focussing on the following optimisation techniques:

  1. Genetic Algorithms

    Genetic algorithms [Davis91,Goldberg89] are based on the biological process of evolution and natural selection, and are now a well-established technique for iteratively improving solutions in search spaces that are not "well-behaved". A population of individuals (encoded solutions) is "evolved" by crossover and mutation operations, chosen randomly according to some parameters, with the aim of finding successively improved results (solutions with an improved fitness value).

  2. Particle Swarm Optimisers

    Particle swarm optimisers are a less well-known technique that originally grew out of attempts to model the behaviour of flocks of birds and schools of fish. Each individual "flies" through the search space, influenced by its own best position to date and the best position found by the "flock", ideally converging on a near-optimal solution. A lack of understanding of the mathematics of the optimiser led the original authors to cap velocity in order to obtain convergence, thus giving behaviour that appeared closer to a swarm of particles, hence the (somewhat misleading) name.


Dr Cara MacNish (cara@cs.uwa.edu.au)

Cara obtained her BE(Hons) in Electronic Engineering at UWA in 1987. This was followed by a short period working as a research and development engineer for ACET Ltd, before taking up the Prince of Wales Studentship at Trinity College, Cambridge, in 1988. In 1992 she obtained her Ph.D. in Logic-based Inference Systems from the University of Cambridge, and in March 1992 took up a Lectureship in Computer Science at the University of York. She returned to Australia in 1995 to join the Computer Science Department at UWA. In 2000 she obtained her Chain Saw Operator's Certification.

Cara's research interests include logic and artificial intelligence, automated planning, machine learning, evolutionary computation and optimisation, cognitive science, neuropsychology and computer science education.

For more information see the Adaptive Systems Research Group web site.


Return to the 4th year project list