Resources for Students

On this webpage I provide some resources which are hopefully helpful for some students. Well, and of course the idea is also to save me (and my co-supervisors) quite an amount of time since students often write a thesis report for the first time, so we end up explaining the same thing over and over again. So instead I provide some of this material here, I hope it's helpful!

Please let me know if some of it can be improved. :)

About Research Projects

There are several skills you need to master, e.g.,

  • Finding related research (papers)
  • Writing your report
  • Presenting your work

In particular the writing part is quite challenging for a beginner as there are conventions that need to be learned. Please consider:

  • Presentations on Research Projects. This zip contains two presentations: (1) on literature research and (2) on scientific writing.
  • LaTeX template for slides. Note that this design does formally not comply with the ANU style guides (cf. ANU templates) in the sense that it uses another corporate design (colors), but when you include the ANU graphics, the required "hard constraints" are fulfilled, so you should still be able to use it for ANU presentations (which I do, even for all my lectures). But as a student you really don't have to bother about this anyway. :)
  • LaTeX template for project theses. The linked git is public to everybody with an ANU account, so you can check it out, but not push. Note that this template is not officially accepted by the ANU yet (I'm working on it!), but it's more than just a simple template: It also contains a lot of advice that's particularly helpful for beginners in either LaTeX or scientific writing. Thus, even if you use another LaTeX template you are still very likely to benefit from just reading the document. For this purpose I also make just the PDF available (which can directly be downloaded, also without an ANU git account).

Further Resources

Basics to get started with Planning

If you don't have any knowledge about planning at all, then start here, i.e., with classical planning, the base-case of planning. This is a planning problem class that's as simple as it could be. I.e., it uses basically zero extensions (no time, no hierarchy, no uncertainty, etc. etc.) -- perfect to get started!

Here are some recommendations for self-studying, listed in order of recommended reading:

  • Some of the related material I produced:
    • If you literally know nothing at all about AI planning, then my Hands-on Introduction to Classical Planning lecture should be a perfect start. I delivered it in 2022, but it's so basic that it should be timeless. It's a 60 minute lecture plus 20 to 25 minutes of modeling exercises that you are asked to do during this lecture in the last part (where you are asked to pause the video).
    • ANU Guest Lecture: Introduction to Search and Classical planning. Slides. It conveys several important foundations, though no video recording is available.
    • Complete Course at Ulm University, Germany on Hierarchical Planning. Note that you should only pick those lecture units which are on classical (i.e., non-hierarchical) planning. There's quite some overlap with the previous material. Only slides are available, no lecture recordings.
  • Now that you should know about the most foundational definitions, you should be able to read a (semi-)scientific paper on that matter: A fun paper about the motivation and some of the research directions in classical planning including some of its most influential research results: Everything You Always Wanted to Know About Planning (But Were Afraid to Ask) by Jörg Hoffmann
  • Another list of references to work through as an introduction to classical planning.
  • Still not enough? Check out http://education.planning.domains/, which provides a lot of material, such as lecture slides, tutorials, and video recordings!

Basics to get started with HTN Planning

You do understand the basics of planning already? Great! Then you can move on studying Hierarchical Task Network (HTN) planning. :)

Some recommendations, again listed in order of recommended reading:

  • Start with our IJCAI survey paper from 2019 on HTN planning, since it is written for non-experts, i.e., without much technical content. Disregard all contents about HGN or GTN planning, i.e., read until (including) chapter 3.1.
  • After that, for more technical definitions, read the paper which introduced the simplistic HTN formalism, but only until section 2 (inclusive) to get the full technical definitions. If you know the basics of complexity theory, also read section 3.
  • By this point you should have understood the problem class of HTN planning, i.e., how is the problem defined, which includes which task networks are considered solutions and which are not. You should now be able to follow the following material:
    • Tutorial on HTN planning, which explains all that in a bit more detail (though only slides are available) and also explains some search algorithms for solving such problems.
    • My course at Ulm University, Germany on Hierarchical Planning. Website.
  • You may now read until (including) page 10 (Def. 4) of our JAIR 2020 article, after which you will understand the standard (progression) algorithm for solving HTN problems.