[an error occurred while processing this directive] [an error occurred while processing this directive]
[an error occurred while processing this directive]
[an error occurred while processing this directive]
Monash University

FIT4010 Advanced topics in algorithms and discrete structures - Semester 1, 2013

Algorithms are the most fundamental area for all aspects of computer science and software engineering. Discrete structures, such as those treated in graph theory, set theory, combinatorics and symbolic logic form the mathematical underpinning of the study of algorithms. As well-designed algorithms and data structures are essential for the good performance of an information system, an in-depth understanding of the theoretical properties of algorithms is essential for any computer scientist. As importantly, the theoretical investigation of algorithms leads to a deeper understanding of problem structures and classes of problems and the knowledge of a large variety of algorithm types enables the designer to approach a new problem from different angles. Topics for this unit include: Computability and Complexity Automata Theory Advanced Analysis and Design of Algorithms Parallel and Distributed Algorithms Numerical Algorithms Cryptographic algorithms Spatial/geometric algorithms

Mode of Delivery

Clayton (Day)

Contact Hours

2 hrs lectures/wk, 1 hr laboratory or tutorial/wk

Workload requirements

Students will be expected to spend a total of 12 hours per week during semester on this unit as follows:

  • two hour lecture and
  • one hour tutorial (or laboratory) (requiring advance preparation)
  • a minimum of 3 hours of personal study per one hour of contact time in order to satisfy the reading and assignment expectations.

Unit Relationships


Completion of the Bachelor of Computer Science or equivalent to the entry requirements for the Honours program. Students must also have enrolment approval from the Honours Coordinator.

Chief Examiner

Campus Lecturer


Mark Carman

Consultation hours: Tuesday 2pm - 3pm or make email appointment

Kim Marriott

Consultation hours: Tuesday 2pm - 3pm or make email appointment

Academic Overview

Learning Outcomes

At the completion of this unit students will have:
  • an improved understanding of the issues involved in designing algorithms in the chosen specialisation area(s) and in analysing their performance;
  • an understanding of the mathematical formalisms that are relevant for these algorithms;
  • learned to recognise tasks that can be solved with these algorithms;
  • the ability to judge the limitations of these methods.With successful completion of the unit the students;
  • the ability to choose and apply algorithms and data structures in the chosen specialisation area(s);
  • the ability to evaluate the performance of algorithms using formal approaches;
  • the ability to design modified algorithms in the chosen area to suit particular problem structures.

Unit Schedule

Week Activities Assessment
0   No formal assessment or activities are undertaken in week 0
1 Introduction to constrained optimization  
2 Modelling with MiniZinc Assignment 1 handed out
3 Linear Programming  
4 Mixed Integer Programming (MIP)  
5 Constraint Propagation (CP)  
6 Network Simplex & Advanced Programming with MiniZinc  
7 SAT techniques and planning applications  
8 Heuristic search methods Assignment 1 due 29 April 2013. Assignment 2 handed out
9 Non-Linear Programming (NLP) I  
10 Non-Linear Programming (NLP) II  
11 Local search methods  
12 Research directions in constrained optimization  
  SWOT VAC Assignment 2 due 10 June 2013
  Examination period LINK to Assessment Policy: http://policy.monash.edu.au/policy-bank/

*Unit Schedule details will be maintained and communicated to you via your learning system.

Assessment Summary

Assignment and Examination, relative weight depending on topic composition. When no exam is given students will be expected to demonstrate their knowledge by solving practical problems and maybe required to give an oral report.

Assessment Task Value Due Date
Assignment 1 - Modelling with MiniZinc 50% 29 April 2013
Assignment 2 - Building an Automated Planning system using SAT, Heuristic Search and/or NLP techniques 50% 10 June 2013

Teaching Approach

Lecture and tutorials or problem classes
This teaching and learning approach provides facilitated learning, practical exploration and peer learning.

Assessment Requirements

Assessment Policy

Faculty Policy - Unit Assessment Hurdles (http://www.infotech.monash.edu.au/resources/staff/edgov/policies/assessment-examinations/unit-assessment-hurdles.html)

Academic Integrity - Please see the Demystifying Citing and Referencing tutorial at http://lib.monash.edu/tutorials/citing/

Assessment Tasks


Students are expected to attend lectures and tutorials. However this is not mandatory.

  • Assessment task 1
    Assignment 1 - Modelling with MiniZinc
    In this assignment students will model a relatively simple constrained optimization problem using MiniZinc. They will be rquired to create models that work with a variety of different underlying solving techniques: MIP, CP and SAT.

    They will need to construct test data and then evaluate their models with this data.

    Produce a written report that describes their models, test data and the results of the evaluation. The report should also try and explain reasons for differences in behaviour of these models.
    Criteria for assessment:

    The quality of the models: correctness, efficiency, clarity and documentation.

    The quality of the test data: coverage.

    The quality of the written report including the quality of the evaluation and analysis of the differences in behaviour.

    Due date:
    29 April 2013
  • Assessment task 2
    Assignment 2 - Building an Automated Planning system using SAT, Heuristic Search and/or NLP techniques
    In this assignment students will investigate certain planning domains from the International Planning Competition. They will build a system to encode planning problems from that domain into SAT, Heuristic Search and / or non-linear programming formulations, which can then be solved using the aforementioned techniques.

    Students will need to show that their system works as desired (can discover reasonable plans) on a number of different problems (of increasing difficulty) from the chosen domain.

    Students will need to produce a written report describing their system and their evaluation of it.
    Criteria for assessment:

    The quality of the planning system: its ability to find reasonable plans, its speed, and the type (complexity) of problems it can deal with.

    The quality of the written report including the quality of the evaluation and analysis.

    Due date:
    10 June 2013

Learning resources

Reading list

There are several recommended books for this subject:

  • Introduction to Mathematical Programming. W. L.  Winston. Duxbury Press, 1995.
  • Introduction to Operations Research. F.S. Hillier and G.J. Lieberman. McGraw-Hill, 8th Ed, 2005.
  • Constraint Programming - An Introduction. K. Marriott and P. Stuckey. MIT Press, 1998.
  • Numerical Optimization. J. Nocedal & S. Wright. Springer, 2006.
  • Automated Planning: Theory and Practice. D. Nau, M. Ghallab and P. Traverso. Morgan Kaufmann 2004.

In addition to this, selected research papers will be referenced throughout the unit.
The lecture material will be loosely based on this material and will be available through Moodle.

Monash Library Unit Reading List

Feedback to you

Types of feedback you can expect to receive in this unit are:
  • Informal feedback on progress in labs/tutes
  • Graded assignments with comments
  • Solutions to tutes, labs and assignments

Extensions and penalties

Returning assignments

Resubmission of assignments

Resubmission is not allowed unless special consideration applies in which case the course leaders may allow the student to resubmit an assignment.

Assignment submission

It is a University requirement (http://www.policy.monash.edu/policy-bank/academic/education/conduct/plagiarism-procedures.html) for students to submit an assignment coversheet for each assessment item. Faculty Assignment coversheets can be found at http://www.infotech.monash.edu.au/resources/student/forms/. Please check with your Lecturer on the submission method for your assignment coversheet (e.g. attach a file to the online assignment submission, hand-in a hard copy, or use an online quiz).

Online submission

If Electronic Submission has been approved for your unit, please submit your work via the learning system for this unit, which you can access via links in the my.monash portal.

Required Resources

Please check with your lecturer before purchasing any Required Resources. Limited copies of prescribed texts are available for you to borrow in the library, and prescribed software is available in student labs.

You will be using the MiniZinc modelling language.

This is available from: http://www.g12.csse.unimelb.edu.au/minizinc/

Other Information


Graduate Attributes Policy

Student services

Monash University Library

Disability Liaison Unit

Students who have a disability or medical condition are welcome to contact the Disability Liaison Unit to discuss academic support services. Disability Liaison Officers (DLOs) visit all Victorian campuses on a regular basis.

Your feedback to Us

Previous Student Evaluations of this Unit

The changes we made last year worked well and we received a high student evaluation. We plan to update the material slightly to reflect advances in the field.

If you wish to view how previous students rated this unit, please go to

[an error occurred while processing this directive]