The researchers in Computer Science have a wide range of potential projects in their respective areas. This page provides a list of people and possible projects that are on offer. If you are interested in a specific project or an specific area, feel free to contact the person directly.
Dr Luigi Barone
Dr. Luigi Barone has been working with evolutionary algorithms (EAs) for over ten years and has a detailed knowledge of the different kinds of these algorithms, as well as hands-on experience in implementing many of them. His research has been both into practical applications of EAs as well as theoretical implications arising from their use. Dr. Barone has experience in applying these types of optimisation techniques to many different kinds of problems including adaptive learning, opponent modelling, scheduling, and engineering design problems. Dr. Barone has won several competitive research grants for funding work in this area.
Projects
- Investigating the effects of noise on evolutionary algorithms
- Investigating heuristics for improving the performance of hypervolume calculation algorithms
- Distributed agent control for WAMBOT
- Adaptive intelligent play for the game of Pacman using evolutionary algorithms
Experience has shown that it can be very beneficial for research students to have a group of people with related interests to share ideas with. A student undertaking any of the above projects is expected to join the Adaptive Systems Research Group and will be expected to attend and contribute to group meetings and discussions. Such a student will be housed in the Adaptive Systems Research Group Laboratory in G.11 of the Computer Science building.
W/Prof Mohammed Bennamoun
- Image processing
- Computer vision (3D object recognition)
- Robotics
Prof Rachel Cardell-Oliver
-
Measuring the Programming Process
STREAM is a programming process developed by Caspersen and Kolling for novice programmers. A STREAM-like process is used in UWA's Java and Software Engineering first year units. We have developed a metrics framework based on the STREAM model for measuring the quality of programs. So far, this has been used to analyse submitted student programs. But an even more interesting problem is to measure the quality of programs produced during the programming process as students develop code. This project aims to measure novices programs during the development process. The long term aim is to improve understanding of the software development process. It may also be possible to apply these techniques in professional software engineering settings.
-
Automatic Detection of Code and Design Smells
Code and design smells are poor solutions to recurring implementation and design problems. They may hinder the evolution of a system by making it hard for software engineers to carry out changes. Moha et al have proposed three contributions to the research field related to code and design smells: 1) Decor, a method that embodies and defines all the steps necessary for the specification and detection of code and design smells, 2) Detex, a detection technique that instantiates this method, and 3) an empirical validation in terms of precision and recall of Detex.
This project is to apply the DECOR method to detect code smells for a software corpus of your choice - either student projects or professional open source software.
Background: DECOR: A Method for the Specification and Detection of Code and Design Smells, Moha et al, Transations on Software Engineering, 36(1) 2010
-
Testing Graphical User Interfaces
Testing and learning to correctly implement a Graphical User Interface (GUIs) program is difficult for several reasons. Students often encounter problems with error handling, navigation, finding bugs and using the language libraries. This project is to develop tools to support students to improve the quality of their Java Swing GUI programs. We propose a system based on the Java Abbot API for semi-automated support that contains a mixture of development tools, test cases, guided tutorial exercises and checklists. The system will be evaluated by analysing the quality of student GUI programming assignments developed both with and without the tool support.
-
Sensor Networks for Australian Sheep Monitoring
Scientists from the University of Western Australia’s School of Animal Biology are looking for a way to monitor the movement of a flocks of 10,000 to 15,000 sheep in Western Australia’s rangeland near Meekathara. The main problem is to remotely monitor and possibly control the movement of flocks of sheep, answering such questions as “where are the sheep?”, “are any sheep separated from the main flock?”, “are the sheep near water?” A possible solution to this problem is to develop a sensor network of low costs nodes, each mounted on one sheep (but not the whole flock), combined with some higher power nodes on selected sheep, or high power nodes at fixed locations. The network must be able to communicate the current status of a sheep flock over a distance of 50 to 100 kms a farm base station 4 to 12 times a day.
The project is to research suitable sensor network hardware and protocols for this application, together with simulated results of the behaviour of your protocol to support your recommendations.
Background: Thorstensen, B., Syversen, T., Bj¸rnvold, T., and Walseth, T. 2004. Electronic shepherd - a low-cost, low-bandwidth, wireless network system. In Proceedings of the 2nd international Conference on Mobile Systems, Applications, and Services (Boston, MA, USA, June 06 - 09, 2004). MobiSys '04. ACM, New York, NY, 245-255. DOI= http://doi.acm.org/10.1145/990064.99009
-
Dependable Data Collection and Management in Sensor Networks
Obtaining dependable spatial-temporal data is crucial for informed decision making in many fields from environmental science to health care. Sensor networks offer new technology for gathering such data. However, the almost universal experience of sensor network deployments over the past decade is of unacceptably low data yields, and “data graveyards” of observation data that proves hard to use once collected. This project will research novel methods for data collection and management. The project is a joint work with Chris Huebner at University Mannheim.
Prof Amitava Datta
- Computer graphics
- Visualization
- Mobile and wireless computing
- Bioinformatics
- Parallel computing
Dr Rowan Davies
- Programming languages
- Logical foundations
Asst/Prof Tim French
-
Specifying and refining security policies
The project would consider the implementation of tools to support the formal reasoning about security policies. Particularly, we would be interested in representing the knowledge of a group of agents, and how these agents can evolve there knowledge over time. The project will involve implementing known algorithms to automatically determine the correctness of such policies.
-
Auctions for autonomus agents
This project would investigate the design of online auctions and the agents who would bid in these auctions. The aim is to provide an auction system that provides optimal results for both buyers and sellers, where the buyers are simple autonomous agents.
-
Automated collection of meta-data from software repositories (with A/Prof Mark Reynolds)
Software development companies often maintain repositories of software modules they have previously used. To efficiently reuse these modules they must have sufficient meta-data about the modules purpose, and this meta-data is often lacking. This project would look at methods to automatically generate such meta-data.
-
Algorithms for model-checking (with A/Prof Mark Reynolds)
Model-checking is the process of verifying that an implementation satisfies some formally specified property. This project would investigate the development of efficient algorithms for model-checking complex properties. This is a very difficult problem and it is not expected that a complete solution will be produced.
-
Reasoning about Trust
Trust is an integral concept in many areas such as security (do we trust someone is who they say they are), data management (do we trust a database to keep our personal details private) and sensor networks (do we trust that the data from a sensor is accurate). In many of these applications trust is dealt with in an ad hoc manner. This project would look at designing theories for reasoning about trust in a general sense. We would be interested in designing algorithms to answer questions such as "how many sensors do I need to trust in order to infer property p?", or "Can I trust agent Alice, and not trust agent Bob at the same time?". The project would establish a common semantic for trust based problems and design some simple algorithms for reasoning about trust
Assoc/Prof Bruce Gardiner
- Computational systems biology
- Cancer research
- Tissue engineering
- Clinical applications
Assoc/Prof Du Huynh
More details of these projects can be found at
http://people.csse.uwa.edu.au/du/HonsProjects
Dr Joel Kelso
-
Visualisation of Influenza Epidemic Transmission
Supervisors: Prof. George Milne, Dr Joel Kelso Our research group has constructed a program for simulating the spread of influenza through the population of a town of approximately 30,000 people. One of the outputs of the simulator is a complete trace of infection events. The goal of this project would be to present the history of the epidemic in a graphical form by overlaying information about infected individuals and their movements on a map of the simulated area.
-
Construction of Virtual Communities for Influenza Epidemic Simulation
Supervisors: Prof. George Milne, Dr Joel Kelso Our research group has constructed a program for simulating the spread of influenza through the population of a town of approximately 30,000 people. One of the inputs to the simulator is a a "virtual community", which describes a set individuals, households, workplaces and schools and the connections between them. The goal of this project will be to develop and implement a robust algorithm for constructing plausible virtual communities using census, survey and other data.
Asst/Prof Wei Liu
This page gives a quick summary of the projects I'm working on. Most of these projects can be tailored to an honours or a PhD project. For more details, please email me. Email is the best way to reach me.
-
E-bookworms: ontology learning and maintenance through text mining
- See the E-newsworms in action by following this link: a demo of Wilson Wong's PhD work
- Using Natural Language Processing and Statistical Analysis to automatically discover topics and concepts and the relationships between them using the WWW as a large knowledge base. Current project is to generate ontologies for chemical engineering risk management
- Using Social Network Analysis and Temporal-Spatial Logic to understand and visualise changes of concepts across geographical regions during certain time period.
-
Smart Home for aged care: a service-oriented ubiquitous computing environment
- To build a context-aware computing environment using existing service-oriented hardware components for smart homes (using the Atlas Platform).
- Intention recognition by tracking residents’ activities in the smart home and their interactions with robots and other smart devices.
- Virtualising the smart-home into the Second Life virtual space.
-
Cognitive agents and robots
- Mapping low-level sensory input to high-level representation for communicable intelligence.
- Protocols that support flexible and robust agent communication and coordination Programming and reasoning paradigms (e.g. BDI) to enable agent teamwork and service composition, problem domain (Simulation League and Standard Platform League in RoboCup).
Love of programming is essential for these projects. A varity of languages are used, Web Scripting (Perl, Python, Php), XML, C++, Java ...
Assoc/Prof Cara MacNish
Projects offered focus on applying Computational Intelligence techniques to problems in vision processing and interpretation. Some projects may be co-supervised with other members of staff or research students.
-
Computational Intelligence Techniques for Navigation
The aim of this project is to investigate the use of evolutionary and allied dynamical optimisation techniques for navigating a terrain, for example an autonomous vehicle following a road or path.
-
Driving a Racing Car Simulator using Visual Data
Similar to the above, but focussing on the TORCS racing car simulator. Current attempts to learn bots for the simulator rely on sensor data available to the bots. This is very different to the data available to human players. The aim of this project is to learn to drive using the visual data available to humans.
-
Investigation of Fitness Landscapes for Text Location in Images
Location of distinctive items in images could be of great use to people with visual impairments as well as in robotics. This project looks at using a range of functions or transforms to generate landscapes from image features suitable for robust high-dimensional evolutionary style searches for object (particularly text) location and tracking.
-
Computational Intelligence Techniques for Pose Estimation
Like the above project this one is concerned with location and tracking using CI search techniques, however this project focuses on fitting multiple degree of freedom "avatars" to human pose estimation and tracking.
-
Compositonal Pattern Producing Networks for Object Identification and Tracking
Rather than using traditional functions and transformations for feature extraction, this project investigates the use of new "neural network" like technique for pattern generation and matching, called compositional pattern producing networks.
-
Computational Intelligence Techniques for Searching Video Footage
The ability to find specific items in video footage is important in a range of applications from security to web searching. The task is often made more difficult by the poor quality of footage and issues such as occlusion and deformation. The aim of this project is to investigate the use of Computational Intelligence search techniques to develop robust approximate approaches for searching difficult video.
-
Investigating the AdaBoost Approach to Learning
Whereas many traditional machine learning techniques seek to generate a single, high accuracy decision or classification from the data, the AdaBoost approach instead generates classifications from a compound sequence of many simple or less discriminating classifiers. It has been argued that this approach can result in improved performance. This project aims to test this approach in a practical domain such as those above.
Assoc/Prof Chris McDonald
-
Visualizing dynamic memory operations in C programs
People learning the C programming language are confronted by a number of challenges, the greatest of which is often the understanding of dynamic memory allocation. Textbooks usually present a handful of diagrams to explain the concept but, invariably, the examples are too few, only focus on correct usage, and are static.
Of greater benefit would be a visualization of the steps undertaken when memory is allocated and deallocated, when pointers are assigned and manipulated, and effects on a computer's memory. Better still would be the ability to support the development of "arbitrary" C code snippets, possibly with errors, and to observe how they perform.
Keywords: program visualization, debugging.
-
Improved management of students' files using Apple's FSEvents
Apple's new operating system, OS-X (Leopard), supports a new kernel- and user-level file archiving facility named TimeMachine the enables a user to conveniently "walk back in time" and retrieve archived files. More indepth, but not too technical, explanations of TimeMachine and Apple's enabling technology FSEvents provide good reading.
While TimeMachine is well suited for the requirements of self-managed single users, it does not immediately adapt to the needs of a community of users, such as CSSE's undergraduate students, in which many, but not all, students require backup copies of identical files. The goal of this project is to extend TimeMachine, or to design, implement, and instrument a TimeMachine-like backup system, in which each unique file is stored only once and backups are only accessible to users who ever had a copy of the file.
The well-cited book Practical File System Design with the Be File System provides more detailed background discussion on file-sytem design.
This project is generously supported by the Apple University Consortium.
-
Detecting WiFi attacks using extended pattern matching
A number of malevolent attacks against wireless networks are characterized by a sequence of modified frames that exploit a wireless card's incorrect, or incomplete, implementation of the IEEE802.11 standard. Such attacks can result in a denial-of-service for the intended victim, either an access-point or a laptop, and dramatically slow throughput for users of a access-point. Attack sequences are often hidden delivering a disabling sequence slowly, interspersed with legitimate traffic.
This project will investigate the development and very efficient implementation of pattern matching techniques to locate malevolent attack sequences in WiFi networks. Some ideas from the TRE library and Ragel look promising but, like the Berkeley Packet Filter, an efficient, compiled, implementation will be essential to maintain fast detection.
Keywords: WiFi, network security, pattern-matching.
-
Navigation by WiFi
An increasing number of mobile handheld devices, such as the iPhone, newly announced iPad, the Nokia N-series, and Android phones, provide Internet connectivity through wireless ethernet (WiFi). Higher-end models also provide GPS receivers to provide accurate location information, but GPS fails in a number of environments, including urban canyons and the interior of buildings. This is
precisely where WiFi can exhibit great advantage - in environments containing many WiFi access points, such as the UWA campus or much of Perth's CBD.
This project will investigate the combination of WiFi navigation and software to create and "run" self-guided tours around WiFi-dense environments, such as the UWA campus. The project will focus on mapping WiFi regions, predicting the locations of access points and mobile devices, and developing a location-aware application to assist visitors to UWA.
Keywords: WiFi, localization algorithms, path planning.
-
Supporting a TCP/IP stack and internet infrastructure in cnet
The cnet network simulator enables experimentation with a variety of data-link layer, network layer, and transport layer networking protocols in networks consisting of any combination of wide-area-networking (WAN), local-area-networking (LAN), or wireless-local-area-networking (WLAN) links. It executes and oversees user-written protocols within a single UNIX process, without requiring threaded or concurrent execution of protocols. cnet provides a minimal event-driven, non-preemptive environment in which data frames may be written to and read from simulated physical media, and timers are used to periodically undertake tasks.
This environment is almost sufficient to support an RFC standards compliance TCP/IP protocol stack (it may be necessary to permit blocking operations, or preemption within cnet). A number of independent projects, such as uIP provide small, but standards compliant, protocol stacks for embedded devices and wireless sensor networks. This project will evaluate available TCP/IP protocol stacks, and incorporate one of them in the cnet simulator.
Keywords: internetworking, protocol simulation.
-
An Execution Sandbox for Encryption Algorithms
"Doing for encryption, what MATLAB does for matricies..."
There are a growing number of both symmetric and asymmetric encryption algorithms whose implementations are freely available. Most publicity surrounding encryption algorithms focuses on the time required to "crack" these algorithms by brute-force techniques. With the rapid emergence of mobile communication devices powered by batteries alone, an area of greater importance is the execution speed and resource requirements of these algorithms.
This project will develop an encryption algorithm sandbox to enable experimentation with, and analysis of, modern encryption algorithms. The project will first collect and "sanitize" implementations of freely available encryption algorithms so that they may be executed within the sandbox. Encryption schemes under test will be specified by a small language indicating the composition and order of evaluation of the encryption algorithms. All algorithms, probably implemented in C, will be compiled to an internal pseudo-code so that their execution may be accurately profiled. The sandbox will generate and deliver plaintext blocks and streams, verify the encryption and decryption processes, and automatically instrument and report on their execution for comparison.
Keywords: Encryption algorithms, software instrumentation.
W/Prof George Milne
-
Modelling Complex Systems
We utilise cellular automata and process algebraic formalisms to model complex, possibly chaotic systems, constructed out of many, simple, locally connected components. This approach has been applied to urban traffic flow modelling and simulation with success being judged by benchmarking our simulations against data sampled from the physical world. Current projects in this area include bushfire, disease spread epidemics and crowd dynamics modelling and simulation. Significantly, models are created in the Circal process algebra, a process algebra originally developed to describe and analyse the behaviour of digital logic. The applicability of Circal as a powerful descriptive medium for distinct classes of concurrent systems has been demonstrated by its application to a wide variety of application domains, including fluid flow and cardiac timing models.
-
Simulation of Plant Disease Dynamics
A plant disease simulation platform will enable various sources of plant health data and emergent pathogen or pest (EPP) biology to be utilised in a manner that will allow timely and cost-effective decisions to be made by BioSecurity managers and scientists from first detection and as the incursion evolves. At present most existing epidemic models utilise differential equations to predict outcomes and do not take into account spatial factors such as landscape effects, variable population density and explicit movement of the EPP. These models assume populations are closed and well mixed; that is, host numbers are constant and individuals are free to move wherever they wish. For the development of realistic landscape-influenced models any project must incorporate spatial information to reflect the heterogeneous environment found in the incursion zone. An alternative to using deterministic differential equations is to use a two-dimensional grid of interacting automata with each automaton modelling a sub-population at a given location. Automata interact, capturing the dynamics of an EPPs mobility. Appropriate spatio-temporal modelling techniques and simulation software will be developed to permit prediction of EPP spread over the landscape through time. This technology will build on methods developed to simulate the spread of human and animal diseases (pandemic influenza, foot and mouth disease, classical swine fever) and determine the efficacy of applying alternative eradication, containment and control strategies.
PhD Scholarships Available
Plant BioSecurity PhD and Honours Scholarships are available in the area of Computational Epidemiology and Disease Spread Modelling and Simulation within the School of Computer Science and Software Engineering at the University of Western Australia, under the guidance of Professor G J Milne.
Dr Peter Pivonka
- Computational systems biology
- Cancer research
- Tissue engineering
- Clinical applications
Prof Mark Reynolds
-
Deveoping ways of managing the extraction of the purpose of software modules held in company repositories.
With Tim French and Perth IBM software development lab.
-
Formal specification of cooperative behaviour between robots.
With Dr Wei Liu
- Our research group would be interested in an efficient method for representing and manipulating populations of organisms stratified by genotype. Some sort of multi-set is quite possibly appropriate, with the information for individual genotypes being {g, n} where g is a description of the genotype and n is the number of individuals with that genotype. It is notable that total populations may be very large (millions), that the total number of possible genotypes increases rapidly with the number of genes being considered (G3 where G is the number of genes, for diploid genotypes with 2 alleles per gene and no linkage), but that some genotypes will often be much more frequent than others. With Dr Art Diggle, Department of Agriculture, Western Australia.
-
Temporal-spatial reasoning with incomplete information
In this case weather radar images, to predict time of rain front hitting a certain point within the metro area. See current radar images here. There is a brief introduction to the field here. Joint supervision with Dr Du Huynh.
-
Generation (via genetic programming) of simple rules for approximate solutions in complex situations
Eg, route planning in Rogaining.
-
Natural(ish) Language Querying of Simple Temporal Situations
Given a model of several objects moving about through several locations, allow a user to use quite natural language temporal expressions (eg, will move into, did move out of, stayed until, has been there since) to query the model. See some recent related work.
-
Detecting Unusual Events In Surveillance Scenes
An automatic surveillance system requires detection of events that are unusual to the known environment. Unusual events may include a sudden change of motion speed within the scene, or detection of suspicious motion of an individual. Use a formal temporal logic language to specify what higher order events count as suspicious. Joint supervision with Dr Eunjung Holden : see more here.
-
Model Checking systems against specifications with hidden (ie quantified) propositions
Joint supervision with Tim French: see the model checking site at CMU
-
Real-time systems modeled as networks of timed automata. See the Uppaal system.
-
Automated production of test suites for data structure software.
-
Reasoning about systems of Agents
Various projects to do with logical formal reasoning about properties of systems of agents. (Jointly supervised by various combinations of Dr Wei Liu, Tim French and A/P Mark Reynolds). Contact us for details and/or discussions.
-
Software Requirements Prioritization with Chunks.
with Terry Woodings
-
Visualization of Temporal Properties or Queries
see here for some interesting related links
-
Modelling local wind or tidal behaviour using cellular automata.
Assoc/Prof Nick Spadaccini
- Medical imaging
- Computer vision
Assoc/Prof Lyndon While
Prof Michael Wise
International Centre for Radio Astronomy Research