School of Computer Science The University of Adelaide Australia
Computer Science Home
Staff Only
text zoom: S | M | L

School of Computer Science
Level 4
Ingkarni Wardli Building
SA 5005

Telephone: +61 8 8313 4729
Facsimile: +61 8 8313 4366

You are here: Computer Science > users > brad

Brad Alexander

School of Computer Science
University of Adelaide
Adelaide, South Australia, 5005



This page not currently being updated. My (more up to date) official page can be found at:

Research Interests

I am a member of the Optimisation and Logistics Group at the University of Adelaide.

My research interests include program optimisation, rewriting, genetic-programming (GP) - especially the discovery of recurrences and search-based-software-engineering. I am currently supervising projects in evolutionary art and in applications of search based software engineering to energy conservation and monitoring in mobile platforms. I have also supervised successful projects in the evolution of control algorithms for robots, the evolution of three-dimensional geological models, and the synthesis and optimisation of artificial water distribution networks, and using background optimisation to improve the performance of instruction set simulators (ISS)'s.

I also have a strong interest the teaching of problem-solving skills in Computer Science curricula. In particular the learning of problem-solving skills through deliberate practice. I am a member of the Education Research Group of Adelaide (ERGA). I am one of the holders of a Google Research Award to introduce a problem-solving curriculum into Computer Science. A little more informaton on my interests in education research can be found here.

I am one of the creators of a new second year course Problem Solving and Software Development where students solve realistic and fun algorithmic problems. The course will also have a focus building the meta-cognitive skills needed to practice effectively.

Recent Publications

  • The Evolutionary Process of Image Transition in Conjunction with Box and Strip Mutation, Aneta Neumann, Bradley Alexander, Frank Neumann, Accepted for ICONIP, 2016 (Accepted for Publication).
  • Using Scaffolding with Partial Call-Trees to Improve Search, Using Scaffolding with Partial Call-Trees to Improve Search, Brad Alexander, George Lorenzetti, Constantina Pyromallis and Brad Zacher, 2016 (Accepted for publication).
  • Boosting Search for Recursive Functions using Partial Call-Trees, B Alexander and B Zacher, PPSN, 2014.
  • A Reformulated Co-tree Flows Method competitive with the global Gradient Algorithm for solving the water distribution system equations, S Elhay, AR Simpson, J Deuerlein, B Alexander, WHA Schilders ,Journal of Water Resources Planning and Management, 2013
  • Evolving decision-making functions in an autonomous robotic exploration strategy using grammatical evolution, MF Ibrahim, BJ Alexander, Intelligent Robots and Systems (IROS), 2013
  • A Forest-Core Partitioning Algorithm for Speeding up the Analysis of Water Distribution Systems, A. R. Simpson, S. Elhay, B. Alexander, Journal of Water Resources Planning and Management, 2012.
  • Designing a Navigational Control System of an Autonomous Robot for Multi-Requirements Planetary Navigation using an Evolutionary Approach, M F Ibrahim, B. Alexander, National Space Science Conference, Australia.
  • Relating Blob Model Complexity to Model Error (Abstract/Poster), Brad Alexander, Stephan Thiel, Jared Peacock, 21emiw, Darwin Australia, July 2012 (accepted) pdf
  • Application of Evolutionary Methods to 3D Geoscience Modelling, Brad Alexander, Jared Peacock, Stephan Theil, GECCO 2012, corrected version (fixed typo in background resistivity).
  • Boosting Instruction Set Simulator Performance with Parallel Block Optimisation and Replacement, Brad Alexander, Sean Donnellan, Andrew Jeffries, Travis Olds, Nicholas Sizer, Australasian Computer Science Conference (ACSC), 2012.
  • Evolving Path Planner for A Multi- Robot Exploration System Using Grammatical Evolution, Faisal Ibrahim, Brad Alexander, ISSNIP 2011.
  • Evolving Patches for Software Repair, Thomas Ackling, Brad Alexander and Ian Grunert, GECCO 2011 - Smallworld example from the publication can be accessed here.
  • Engaging Weaker Programmers in Problem Solving, Brad Alexander and Cruz Izu, IEEE International Conferernce on Engineering Education, EDUCON 2010.
  • Constructing an Optimisation Phase Using Grammatical Evolution, Brad Alexander and Michael Gratton, 2009 IEEE Congress on Evolutionary Computation, CEC 2009. talk slides[pdf]
  • Data Movement Optimisation in Point-Free Form [pdf], Presented at The 11th International Conference on Algebraic Methodology and Software Technology, AMAST '06.
  • A Simple Programming Model for New-Generation Hardware[pdf], Presented at The Second International Workshop on Object Systems and Software Architectures (2006)
  • Abstract of Thesis [pdf]
  • Final Draft Thesis [pdf]
  • Automated Transformation of BMF Programs[pdf], Presented at The First International Workshop on Object Systems and Software Architectures (2004)

Some Honours/Masters Theses/PhD Theses

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.


2014 Courses

  • Grand Challenges in Computer Science
  • Problem Solving and Software Development

Past Courses

  • Introduction to Programming
  • Algorithm and Data Structure Analysis
  • 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

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

  • Director of Teaching
  • School Assessment Coordinator
  • Records and Marks System coordinator
  • School NAAEC Coordinator
  • Software Infrastructure and Web Support
  • Schools Liason (Semester 1)
  • Member of School Computing Committee
  • Member of School Learning and Teaching Committee

Past Administrative roles

  • Coach ACM Programming Contest
  • School Assessment Coordinator
  • Records and Marks System coordinator
  • School NAAEC Coordinator
  • Software Infrastructure and Web Support
  • Schools Liason
  • Member of School Computing Committee
  • Member of School Learning and Teaching Committee
  • Course Advisor
  • First-Year Coordinator
  • Member of IT Subject Advisory Committee Senior Secondary Assessment Board of South Australia (SAABSA)
Brad Alexander, June, 2014.