Honours topics
Half of your time as an honours student is spent working on a project. But first you have to find a project topic.
The "official" reference for projects proposed by potential supervisors is the CECS projects database.
There are projects there available for all levels of research, including short projects, summerscholarship projects, Honours projects, Masters and PhD projects. All potential research students at any level are urged to browse it.
If you see a project that looks interesting, email the potential supervisor about it. Don't be afraid to discuss possible variations to the listed project: what appears on the web site is generally more of a suggestion than a rigid specification.
You don't have to be constrained by what you see on the project website. If you have something that you would like to work on as a project, then feel free to discus it with the honours convener to see if it could form the basis of an honours project and to identify a possible supervisor. Look at the web pages of Computer Science staff to find out their research interests. Remember that projects may also be supervised by people outside the College, or even ontside the University: from CSIRO or NICTA, for instance.
Former Project Topics
For your interest, here is an archive of Honours project proposals from previous years. Some of them are quite ancient now, of course, but they may help to give you ideas of the kind of thing which is suitable.2001 Honours project proposals
Cluster Computing
- implementing a distributed, redundant file-system for bunyip using existing disk storage devices on each node
- implementing a streamlined TCP stack for the special case network found in bunyip, optimised for speed
- utilising the parallel ports of the bunyip nodes to provide a low-latency MPI barrier operation (requires h/w skills)
- investigate utilising low-cost fire-wire (IEEE 1394) PCI cards to implement a fast low-latency interconnect for a COTS cluster.
Parallel Algorithms for Predictive Modelling
Contact: Peter Christen, Markus HeglandData Mining applications have to deal with increasingly large data sets and complexity. Only algorithms which scale linearly with data size are feasible for successful data mining applications.
In our group we are developing algorithms for predictive modelling of high dimensional and very large data sets that are both scalable with the number of data records as well as number of processors if implemented in parallel. These algorithms are based on techniques like finite elements, thin plate splines, wavelets, additive models and clustering. Prototype implementations have been developed in Matlab, Python, C and MPI, and we have used them successfully in several real world data mining projects.
This research project will involve the further development of parallel data mining algorithms based on the available mathematical algorithms and prototypes. Besides scalability other important aspects are data distribution, load balancing and integration into a larger data mining framework currently being developed in our group.
To our disposal we have a 196 processor Beowulf Linux cluster, a 12 processor Sun Enterprise 4500 shared memory multiprocessor at the CSIRO CMIS and a 13 processor Fujitsu VPP 300 vector-processor at ANUSF. Data mining is one of the core projects of APAC at the ANU.
Parallel Scalable Clustering Algorithms
This topic was taken by a student.
Contact: Peter Christen, Markus HeglandClustering large and complex data sets is a core algorithm used in data mining and machine learning. To be able to handle very large data sets parallel high-performance computing is needed. In the past few years several parallel clustering algorithms for different architectures have been developed and published.
This research project aims in a first phase at comparing various parallel clustering algorithms. Two topics of interest are scalability (I/O, data distribution and communication) and load balancing (adapting the program dynamically to changing load situations). I a second phase a scalable parallel clustering algorithm should be developed and evaluated.
To our disposal we have a 196 processor Beowulf Linux cluster, a 12 processor Sun Enterprise 4500 shared memory multiprocessor at the CSIRO CMIS and a 13 processor Fujitsu VPP 300 vector-processor at ANUSF. Data mining is one of the core projects of APAC at the ANU.
Developing E-Business Applications
This topic was taken by a student.
The Internet has forever changed the requirements for enterprise software systems. The very nature of the Internet brings to bear new pressures on applications that are not commonly experienced by traditional networked information systems. The impact of well-known non-functional requirements such as manageability, scalability, security, reliability and transactions is dramatically increased when applications are opened up to potentially limitless numbers of concurrent users.
These users require efficient service every second of every day in a year. In Internet and e-business environments, the cost of failures is magnified, as each minute of downtime equates to a minute when customers cannot use the business' services. On the Internet, a competitor's site is just a simple mouse-click or two away.
In response to the demands of the increased scope of enterprise systems across the Internet, a new genre of software product has evolved, known as Application Servers. These products provide a ready-made distributed system infrastructure for building high-performance, enterprise-scale information systems.
The aims of the proposed project are:
- To find out how EJB and Web technology can be combined and used to build a typical on-line transaction example application;
- To come up with an architecture that is best suited to the proposed application;
- To run performance testing using the example application against a middleware product, to collect and analyse the performance data, to find out how well the middleware product cope with this kind of application under heavy load.
Similar work has been carried out using CORBA technology within our group (Software Architecture and Component Technology) at CSIRO. The reports can be found at http://www.cutter.com. The published work only concentrated on the CORBA middleware technology and did not include the web technology.
Some relevant information can be found in the following sites:
http://java.sun.com/products/ejb
http://www.javasoft.com/j2ee.
Contact: Shuping Ran, CSIRO Shuping.Ran@CMIS.CSIRO.AU
Real-time Multi-channel Low-latency High-performance Audio Signal Processing
This project is offered for Honours CS students and would be supervised by Bob Williamson in the Department of Engineering. All the necessary hardware referred to below is available in the Department.The aim of this project is to implement a multi-channel very high performance low-latency real-time audio signal processing solution on an Intel Pentium III based PC running Linux. It would suit a student interested in high performance signal processing coding techniques, linux hacking, and digital audio. The aim would be to release the final code under GPL.
To the best of my knowledge this sort of thing has not been done before. It involves some fancy kernel programming (the RTLinux), plus some tricky programming for the SSE core.
You will need to be able to patch and rebuild linux kernels to do this project.
Background
Multichannel signal processing can be used for beamforming microphone arrays and ambisonics and other surround sound systems. The computational demands and data communication demands are quite high. Traditionally reserach into multichannel signal processing has made use of specialised hardware, such as the Creamware Scope system. We have used one of these systems in the Department of Engineering. It has the considerable disadvantage that it needs to be programmed in a (rather arcane) assembly language.Modern commodity CPUs such as an Intel Pentium III have additional SIMD instructions specifically designed for multimedia processing. These instructions are the basis for the fast code used on bunyip.
As well as being able to compute the desired functions quickly, one needs to
get the data in and out of the machine. One can now buy for under $1000 a
RME Project Hammerfall DIGI9652
which allows for 24 simultaneous inputs and
outputs at 96kHz/24 bits in real time. (You do need outboard AD/DA converters,
but these are now widely availabe)
An
ALSA driver exists for this card.
The final ingredient is low-latency real-time scheduling. There exists a clever add-on the the Linux kernel called Real time linux which allow for very low latencies and guaranteed real-time scheduling.
