Brad Alexander
Lecturer
School of Computer Science
University of Adelaide
Adelaide, South Australia, 5005
Email:
brad@cs.adelaide.edu.au
Research Interests
I am a member of the
Distributed High Performance
Computing group
in the School of Computer Science at Adelaide.
My primary research interest is program improvement, specifically
the application of rewriting techniques in the
the optimisation and parallelisation of programming
languages.
Current work is focused on the optimisation and targetting of
programs in a point-free subset
of Bird-Meertens Formalism (BMF). I am currently recasting the prototype
implementation described in my
thesis to
Stratego.
This new implementation is constructed from simple normalisation and
transformation modules and heavily exploits rewriting strategies supported
by Stratego. A prototype implementation of an array vectorization phase
of the compiler has been built and work is currently underway to formally
verify its correctness.
Preliminary work is also underway to map point-free BMF to FPGA architectures.
We are also running projects to apply heuristic search techniques to the
optimisation of simple point-free programs and, eventually, to the
construction of a compiler. Information relating to the current
version of the compiler can be found here
I am also involved in small projects applying genetic programming
to the composition of programs in point-free-form.
Other research interests include:
- Genetic Programming of Optimisation Phases
- In cooperation with Michael Gratton we have successfully evolved
a phase of optimisation (for point-free progams) from simple components
using genetic programming. Work on this thread of research is ongoing.
- Dynamic Binary Translation
- I am currently co-supervising, in conjunction with the
Australian Semiconductor Technology Company (ASTC), projects that
exploit multithreading to improve the performance of functional instruction
set simulators.
- Genetic Grouping Algorithms
- I have co-developed (with Brendan Henessy and Yip Chong) a
simple Genetic Grouping Algorithm for Cooperative Learning (GGACL). The
Java source code, with some basic instructions for the prototype can be
downloaded from this link.
Work related to Thesis
The work related to my thesis forms part of the Adl project.
A short description of the project and some related publications
is given at the end of this link .
Honours/Masters projects
My current Honours project proposals can be found
in the school's honours proposal list. Likewise, my current Masters
project proposals can be found in the school's masters proposal list.
Education Research
I am keenly interested in improving the quality of Computer Science
education, in particular, the development of problem solving skills.
I am one of the investigators in a project, funded by Google, to
promote the use of problem solving on Computer Science. I am also
one of the investigators in a University of Adelaide project to
improve and promulgate our school's
web-based automatic marking and assessment
system.
I am a current member of the Education Research Group of Adelaide (ERGA) and have recently completed
the Graduate Certificate
in Higher Education course offered at Adelaide. My main areas of interest
are Competititive Learning, Automated Assessment, Plagiarism Detection, and
the use of version-control systems. I am interested in establishing
collaborative links on these, and related, topics. I am currently working
on the use of genetic algorithms for grouping students on the basis of diagnostic assessments.
Teaching
2009 Courses
Past Courses
- Computer Science I (A/B)
- Parallel Functional Programming (Honours/Masters).
- Systems Programmin in C and C++
- Programming Paradigms.
- Programming Techniques
- Data Structures and Algorithms
- Operating Systems
- Introduction to Software Engineering (old incarnation)
I have also presented short Ada and Java courses for industry.
Teaching interests
My primary teaching interests are:
- Introductory programming
- Problem Solving
- Functional programming
- Parallelism - High Performance Computing
- Optimisation and Performance
ACM Programming Contest
I am the Coach of the Adelaide teams competing in
ACM International
Collegiate Programming Contest. The contest has enjoyed
phenomenal growth in recent years, attracting very large
numbers of competitors and strong corporate interest and
sponsorship.
The regional round of the contest is held each year
around mid-september. The South Australian Site this year
was Flinder's University. Adelaide teams did very well
again, claiming first and second places at the local site
and 11th overall
in the South Pacific Region. An Adelaide team qualified for the world
final the previous two years running.
Adelaide teams have a good record in this contest. If you a
University of Adelaide student and you are interested in entering
the contest in future email me.
We also have a forum set up each year for the contest with
information and resources for local teams.
Teaching Development
I am strongly involved in the development of core first
year curricula and course material and, in particular, new practical
exercises. I have also made major changes to the course content
for Advanced Programming Paradigms, Parallel Functional Programming and
in the development of the new Systems Programming course. I
am a co-developer a new masters course, Specialised Programming,
as part of the future development of a problem-solving curriculum in
Computer Science.
Administration and Service
Current administrative roles
- School Assessment Coordinator
- Records and Marks System coordinator
- Member of School Computing Committee
- Member of School Learning and Teaching Committee
- Member of IT Subject Advisory Committee Senior Secondary Assessment
Board of South Australia (SAABSA)
Past Administrative roles
- Course Advisor
- First-Year Coordinator
- Occupational Health and Safety Officer
- Level A teaching coordinator
- Representative to the Faculty of Science
In addition to these formal duties I regularly participate in open
days and information evenings sponsored by the University and Faculty.
Brad Alexander, July 2009.
|