ANU ASTR 4004 / 8008 - ASTRONOMICAL Computing

A comprehensive course delves into essential computational, statistical and data analysis techniques pivotal for daily astronomical reserach.


In the vast canvas of the universe, deciphering astronomical data is intricately tied to advanced statistical machine learning techniques. Gaining profound insights and enhancing our understanding of the cosmos necessitates a deep dive into methodologies that seamlessly weave together the disciplines of statistics and astronomy.

As we transition to the latter half of the course, our focus sharpens on the synergy of statistics, machine learning, and astronomy. We prioritize the mathematical, statistical, and computational foundations of these intertwined fields. The curriculum encompasses a range of topics: from Bayesian inference, linear and logistic regression, and dimension reduction techniques to neural networks, sampling, Gaussian Process, and Markov Chain Monte Carlo methods. Time permitting, we will also explore the potential of contemporary large-language models in the realm of astronomical research.

For all programming-related assignments, participants will utilize Python 3 and the Jupyter notebook, ensuring a hands-on, applied understanding of the concepts discussed.

Course schedules

Timetable (Part 2)

- Lectures: 1pm-2.30pm, Tuesday and Thursday, Duffield Lecture Theater
- Office Hour: 2.30pm-3pm, Thursday, Duffield Lecture Theater


Python Basics 

Week 7A (Sep 19)

Scipy, Astropy, Pandas

(Tutorial uploaded - Aug 28, Video recording uploaded - Sep 19 )

Week 7B (Sep 21)

Bayesian Inference and Linear Regression

(Lecture note and tutorial updated - Sep 22, Video recording uploaded - Sep 22)


Assignment 3 released (uploaded Sep 16)

Week 8A (Sep 26)

Logistic Regression and Classification

(Lecture note and tutorial updated - Sep 27, Video recording uploaded - Sep 26)

Week 8B (Sep 28)

Expectation Maximisation, K-means and Gaussian Mixture Models

(Lecture note and tutorial uploaded - Sep 27, Video recording uploaded - Sep 28)

Week 9A (Oct 3)

Dimension Reduction 1 -Principal Component Analysis

(Lecture note and tutorial uploaded  - Sep 10)

Week 9B (Oct 5)

Neural Networks for Supervised Learning, Autodifferention and Backpropagation

(Lecture note and tutorial uploaded  - Sep 10)

Week 10A (Oct 10)

Neural Networks for Unsupervised Learning - Autoencoder, Mixed Density Network

Week 10B (TBD)

Kernel Methods and Gaussian Process Regression

(Lecture note uploaded  - Sep 18)


Assignment 3 due

Week 11A (Oct 17)

Gaussian Process Classification

(Lecture note uploaded  - Sep 22)

Week 11B (Oct 19)


(Lecture note and tutorial uploaded  - Sep 30)

Week 12A (Oct 24)

Markov Chain Monte Carlo

(Lecture note uploaded  - Sep 23)

Week 12B (Oct 26)

Applying Large Language Models in astronomical research


Final Assignment - Take-Home Exam

Exam Timetable

The final assignment, split into two parts, covers material from Part 1 (Weeks 1-6) and Part 2 (Weeks 7-12). For Part 1 details, see A/Prof. Fedderath's webpage. We expect 2/3 of the final exam is based on the material in Part 2. 

Course staff


Research School of Astronomy and Astrophysics

/ School of Computing

Teaching Assistant
- Jamie Soon (Research School of Astronomy and Astrophysics)


Christopher M. Bishop:
Pattern Recognition and Machine Learning

Springer, 2006 (selected parts)

We also recommend

Course sites

All materials for Part 2 are available on this course webpage. For Part 1 materials, please visit A/Prof. Fedderath's webpage.

We'll be running lectures both in-person and live on Zoom. We're recording the sessions and you'll find them uploaded here later, but you'll get the most out of the experience by showing up in person. Heads up: the Zoom link for Part 2 has changed, so make sure to grab the new one from Wattle.


This course includes three assignments: two in Part 1 and one in Part 2. Each assignment will account for 20% of the total grade. Additionally, there will be a take-home final assignment worth 40% of the total grade.



Assignment 3 will evaluate students on both the conceptual understanding and programming skills covered between Week 7 and Week 9a, which includes the first five lectures of the second half of the course. 

The assignment is due by 11:59 p.m. (noon time) on Wednesday of Week 10 (October 11th).

Late policy for Assignments

This policy applies to Assignment 3.

For the final exam assignment, there is no late submission allowed.