Course overview
- Study period
- Semester 1, 2025 (24/02/2025 - 21/06/2025)
- Study level
- Postgraduate Coursework
- Location
- St Lucia
- Attendance mode
- In Person
- Units
- 2
- Administrative campus
- St Lucia
- Coordinating unit
- Mathematics & Physics School
Techniques and applications of optimisation in operations research, including linear programming, integer programming, dynamic programming and meta-heuristics. Use of Python and the Gurobi optimisation package for linear and integer programming.
Operations research is the mathematical science of decision making. It provides ways to find the best outcomes subject to the constraints of limited resources. This course covers key mathematical and computational techniques in the area. It develops skills in modelling and solving real problems, using appropriate software, and report writing. Topics discussed include linear programming, integer programming, dynamic programming and meta-heuristics.
Course requirements
Assumed background
- A knowledge of basic linear algebra will be needed.
- Occasionally we will need some elementary concepts in statistics. These include mean, variance, independence, Normal distribution, computer generated random variables. This should be found in any university course in statistics.
Incompatible
You can't enrol in this course if you've already completed the following:
MATH3202 (co-taught)
Course contact
Course staff
Lecturer
Tutor
Timetable
The timetable for this course is available on the UQ Public Timetable.
Additional timetable information
Lectures and Practicals both start in Week 1 and will be held on campus. Consult your personal timetable for times and locations.
Aims and outcomes
The aim of MATH7232 is to give students the necessary background and practical experience to solve real problems in operations research and optimisation.
Learning outcomes
After successfully completing this course you should be able to:
LO1.
Formulate practical contexts as mathematical optimisation problems.
LO2.
Understand a range of optimisation methods and be able to select a suitable method to solve a particular problem.
LO3.
Confidently use software to implement an optimisation model and obtain solutions.
LO4.
Communicate a solution to an appropriate audience in terms of the original problem description.
Assessment
Assessment summary
Category | Assessment task | Weight | Due date |
---|---|---|---|
Computer Code, Presentation, Project | Assignments | 55% |
Assignment 1 28/03/2025 2:00 pm Assignment 2 29/04/2025 2:00 pm Assignment 3 27/05/2025 2:00 pm |
Examination |
Theory Exam
|
25% |
End of Semester Exam Period 7/06/2025 - 21/06/2025 |
Examination |
Practical Exam
|
20% |
End of Semester Exam Period 7/06/2025 - 21/06/2025 |
A hurdle is an assessment requirement that must be satisfied in order to receive a specific grade for the course. Check the assessment details for more information about hurdle requirements.
Assessment details
Assignments
- Mode
- Product/ Artefact/ Multimedia, Written
- Category
- Computer Code, Presentation, Project
- Weight
- 55%
- Due date
Assignment 1 28/03/2025 2:00 pm
Assignment 2 29/04/2025 2:00 pm
Assignment 3 27/05/2025 2:00 pm
Task description
During semester you will take on the role of an operations research consultant and respond to a series of fifteen communications from a client, split into three components of five each. You will write up a report for each set of five communications as three assignment tasks. Assignment 1 (10%) will focus on modeling problems using Linear Programming, Assignment 2 (25%) will focus on Integer Programming, and Assignment 3 (20%) will focus on Dynamic Programming.
Assignment 1 will involve written reports to the client while in Assignments 2 and 3 you will give them a video presentation of your recommendations. Each assignment will also require a technical report for your boss.
The assignments can be completed individually or in a group of up to three. If working in a group, you will submit a single group submission and all members of the group will receive the same grade for the assignment. Groups can be different for the three assignments.
Submission guidelines
Submit your assignment via Blackboard.
Deferral or extension
You may be able to apply for an extension.
The maximum extension allowed is 28 days. Extensions are given in multiples of 24 hours.
See ADDITIONAL ASSESSMENT INFORMATION for further extension/deferral information relating to this assessment item.
Late submission
A penalty of 10% of the maximum possible mark will be deducted per 24 hours from time submission is due for up to 7 days. After 7 days, you will receive a mark of 0.
Theory Exam
- Hurdle
- Identity Verified
- In-person
- Mode
- Written
- Category
- Examination
- Weight
- 25%
- Due date
End of Semester Exam Period
7/06/2025 - 21/06/2025
Task description
The Theory Exam will be held during the end-of-semester examination period. It will be an in-person exam held on campus.
The Theory Exam will involve theoretical and applied modelling questions related to the course.
Hurdle requirements
See ADDITIONAL COURSE GRADING INFORMATION for information relating to this hurdle requirement.Exam details
Planning time | 10 minutes |
---|---|
Duration | 120 minutes |
Calculator options | (In person) Casio FX82 series only or UQ approved and labelled calculator |
Open/closed book | Open Book examination |
Exam platform | Paper based |
Invigilation | Invigilated in person |
Submission guidelines
Deferral or extension
You may be able to defer this exam.
See ADDITIONAL ASSESSMENT INFORMATION for extension/deferral information relating to this assessment item.
Practical Exam
- Hurdle
- Identity Verified
- In-person
- Mode
- Product/ Artefact/ Multimedia
- Category
- Examination
- Weight
- 20%
- Due date
End of Semester Exam Period
7/06/2025 - 21/06/2025
Task description
The Practical Exam will involve modeling a problem using one or more of the computer-based methods covered in the course.
You will need access to Python/Gurobi on your own device during the exam. You may access any material during the exam including material on paper, in your electronic files or online. However, you may not communicate with others during the exam.
Hurdle requirements
See ADDITIONAL COURSE GRADING INFORMATION for information relating to this hurdle requirement.Exam details
Planning time | 10 minutes |
---|---|
Duration | 120 minutes |
Calculator options | Any calculator permitted |
Open/closed book | Open Book examination |
Exam platform | Other |
Invigilation | Invigilated in person |
Submission guidelines
Submit your Python code through the link in Blackboard.
Deferral or extension
You may be able to defer this exam.
See ADDITIONAL ASSESSMENT INFORMATION for extension/deferral information relating to this assessment item.
Course grading
Full criteria for each grade is available in the Assessment Procedure.
Grade | Cut off Percent | Description |
---|---|---|
1 (Low Fail) | 0 - 19 |
Absence of evidence of achievement of course learning outcomes. Course grade description: You will be able to partially model and analyse very few important practical settings. Written reports will be poor and the understanding of the mathematical theories and applications may be missing |
2 (Fail) | 20 - 44 |
Minimal evidence of achievement of course learning outcomes. Course grade description: You will demonstrateᅠsome knowledge of the basic concepts in the course. You will be able to partially model and analyse a few important practical settings. Written reports may be poor and the understanding of the mathematical theories and applications may be weak. |
3 (Marginal Fail) | 45 - 49 |
Demonstrated evidence of developing achievement of course learning outcomes Course grade description: You will demonstrate some knowledge of the basic concepts in the course. You will be able to model and analyse important practical settings. You will be able to describe and apply some mathematical theories and methods in the course, and be able to communicate your methods and results in writing. |
4 (Pass) | 50 - 64 |
Demonstrated evidence of functional achievement of course learning outcomes. Course grade description: You will demonstrate an understanding of the basic concepts in the course. You will be able to model and analyse important practical settings, identifying some key assumptions and parameters that might affect the modelling. You will be able to describe and apply many mathematical theories and methods in the course, and be able to communicate your methods and results in writing. |
5 (Credit) | 65 - 74 |
Demonstrated evidence of proficient achievement of course learning outcomes. Course grade description: You will demonstrate an adequate understanding of the course material. You will be able to model and analyse many practical settings, identifying the key assumptions and parameters that might affect the modelling. You will be able to describe and apply most mathematical theories and methods in the course, and be able to communicate your methods and results in writing. |
6 (Distinction) | 75 - 84 |
Demonstrated evidence of advanced achievement of course learning outcomes. Course grade description: You will demonstrate a comprehensive understanding of the course material. You will be able to model and analyse most practical settings, identifying important assumptions and parameters and other factors that might affectᅠthe modelling. You will show confidence in describing and applying mathematical theory and methods, and proficiency in communicating your methods and results in writing. |
7 (High Distinction) | 85 - 100 |
Demonstrated evidence of exceptional achievement of course learning outcomes. Course grade description: You will demonstrate an excellent understanding of the course material. You will be able to model and analyse a broad range of practical settings, providing insight and thoroughness in the form of assumptions and parameters and other factors that might affect the modelling. You will show a high-level of confidence in describing and applying mathematical theory and methods, and excellent proficiency in communicating your methods and results in writing. |
Additional course grading information
If your combined mark on the Theory Exam and Practical Exam is less than 40% of the available marks then the highest grade you can obtain is a 3.
Supplementary assessment
Supplementary assessment is available for this course.
Additional assessment information
Artificial Intelligence
Assessment tasks in this course evaluate students' abilities, skills and knowledge without the aid of generative Artificial Intelligence (AI) or Machine Translation (MT). Students are advised that the use of AI or MT technologies to develop responses is strictly prohibited and may constitute student misconduct under the Student Code of Conduct.
Applications for Extensions to Assessment Due Dates
Extension requests are submitted online via my.UQ – applying for an extension. Extension requests received in any other way will not be approved. Additional details associated with extension requests, including acceptable and unacceptable reasons, may be found at my.UQ.
Please note:
- Requests for an extension to an assessment due date must be submitted through your my.UQ portal and you must provide documentation of your circumstances, as soon as it becomes evident that an extension is needed. Your application must be submitted on or before the assessment item's due date and time.
- Applications for extension can take time to be processed so you should continue to work on your assessment item while awaiting a decision. We recommend that you submit any completed work by the due date, and this will be marked if your application is not approved. Should your application be approved, then you will be able to resubmit by the agreed revised due date.
- If an extension is approved, you will be notified via your my.UQ portal and the new date and time for submission provided. It is important that you check the revised date as it may differ from the date that you requested.
- If the basis of the application is a medical condition, applications should be accompanied by a medical certificate dated prior to the assignment due date. If you are unable to provide documentation to support your application by the due date and time you must still submit your application on time and attach a written statement (Word document) outlining why you cannot provide the documentation. You must then upload the documentation to the portal within 24 hours.
- If an extension is being sought on the basis of exceptional circumstances, it must be accompanied by supporting documentation (eg. Statutory declaration).
- For extensions based on a SAP you may be granted a maximum of 7 days (if no earlier maximum date applies). See the Extension or Deferral availability section of each assessment for details. Your SAP is all that is required as documentation to support your application. However, additional extension requests for the assessment item will require the submission of additional supporting documentation e.g., a medical certificate. All extension requests must be received by the assessment due date and time.
- Students may be asked to submit evidence of work completed to date. Lack of adequate progress on your assessment item may result in an extension being denied.
- If you have been ill or unable to attend class for more than 14 days, you are advised to carefully consider whether you are capable of successfully completing your courses this semester. You might be eligible to withdraw without academic penalty - seek advice from the Faculty that administers your program.
- There are no provisions for exemption from an assessment item within UQ rules. If you are unable to submit an assessment piece then, under special circumstances, you may be granted an exemption, but may be required to submit alternative assessment to ensure all learning outcomes are met.
Applications to defer an exam
In certain circumstances you can apply to take a deferred examination for in-semester and end-of-semester exams. You'll need to demonstrate through supporting documentation how unavoidable circumstances prevented you from sitting your exam. If you can’t, you can apply for a one-off discretionary deferred exam.
Deferred Exam requests are submitted online via mySi-net. Requests received in any other way will not be approved. Additional details associated with deferred examinations, including acceptable and unacceptable reasons may be found at my.UQ.
Please note:
- Applications can be submitted no later than 5 calendar days after the date of the original exam.
- There are no provisions to defer a deferred exam. You need to be available to sit your deferred examination.
- Your deferred examination request(s) must have a status of "submitted" in mySI-net to be assessed.
- All applications for deferred in-semester examinations are assessed by the relevant school. Applications for deferred end-of-semester examinations are assessed by the Academic Services Division.
- You’ll receive an email to your student email account when the status of your application is updated.
- If you have a medical condition, mental health condition or disability and require alternative arrangements for your deferred exam you’ll need to complete the online alternative exam arrangements through my.UQ. This is in addition to your deferred examinations request. You need to submit this request on the same day as your request for a deferred exam or supplementary assessment. Contact Student Services if you need assistance completing your alternative exam arrangements request.
Learning resources
You'll need the following resources to successfully complete the course. We've indicated below if you need a personal copy of the reading materials or your own item.
Library resources
Find the required and recommended resources for this course on the UQ Library website.
Additional learning resources information
You will need to have ᅠGurobi and ᅠPython ᅠinstalled on your own laptop for use in Practicals and the Practical Exam, as well as for completing the assignments. You will need to request a free academic license for Gurobi. Details will be available through Blackboard or you can also ask for help during one of our practicals. Alternatively, you can access the software through the UQ Digital Workspace.
The Ed Discussion (available through Blackboard) will be an important resourceᅠfor asking questions and sharing answers with the class.
Learning activities
The learning activities for this course are outlined below. Learn more about the learning outcomes that apply to this course.
Filter activity type by
Please select
Learning period | Activity type | Topic |
---|---|---|
Week 1 (24 Feb - 02 Mar) |
Lecture |
Linear Programming Introduction to Linear Programming (LP) models and graphical solutions |
Practical |
The Cost of Subsistence Introduction to Python and Gurobi for modelling LP problems and finding solutions |
|
Week 2 (03 Mar - 09 Mar) |
Lecture |
Solving LP Problems Revised simplex method for solving LP problems |
Practical |
Electricity Network Modelling flow of electricity in a network |
|
Week 3 (10 Mar - 16 Mar) |
Lecture |
Duality Applications of the revised simplex method; Duality theory and sensitivity analysis |
Practical |
Oil Blending Modelling a blending problem with future purchases, production schedules and inventory |
|
Week 4 (17 Mar - 23 Mar) |
Lecture |
Integer Programming Introduction to Integer Programming (IP); Branch-and-bound solutions of IP problems |
Practical |
Portfolio Optimisation Develop an LP model to help decide how to invest funds in a range of financial products |
|
Week 5 (24 Mar - 30 Mar) |
Lecture |
IP Modelling Set covering; Assignment problems; Noughts and crosses; Piecewise functions |
Practical |
Factory Planning Develop a production plan and maintenance schedule for a factory using an IP model |
|
Week 6 (31 Mar - 06 Apr) |
Lecture |
IP Modelling Sudoku; Minimax; Heist |
Practical |
Heist Puzzle Solve the "Heist" puzzle using an IP model |
|
Week 7 (07 Apr - 13 Apr) |
Lecture |
Network Models Network flow models; Tables and chairs |
Practical |
Modelling Scenarios |
|
Week 8 (14 Apr - 20 Apr) |
Lecture |
Dynamic Programming Introduction to Dynamic Programming (DP) and recursive functions |
Practical |
DP Models in Python Introduction to recursive functions in Python and the solution of DP models; Memoization. |
|
Week 9 (28 Apr - 04 May) |
Lecture |
Stochastic Dynamic Programming Introduction to Stochastic Dynamic Programming (SDP) |
Practical |
Further DP Models in Python Network models; nonlinear objectives; stochastic problems |
|
Week 10 (05 May - 11 May) |
Lecture |
DP Case Studies Web building; Optimising the family drive |
Practical |
Travelling Artist Problem Use DP models to find the optimal tour for an artist with and without a stochastic component |
|
Week 11 (12 May - 18 May) |
Lecture |
Case Studies in Operations Research |
Practical |
Bird Song Develop an SDP model to provide an optimal strategy for a song bird over the course of a day |
|
Week 12 (19 May - 25 May) |
Lecture |
Metaheuristics Introduction to genetic algorithms and simulated annealing; No Free Lunch theorem |
Practical |
Optimal Keyboard Layout Develop a simulated annealing algorithm to determine the optimal layout of keys on a keyboard |
|
Week 13 (26 May - 01 Jun) |
Lecture |
Theory Revision |
Practical |
Practical Revision |
Policies and procedures
University policies and procedures apply to all aspects of student life. As a UQ student, you must comply with University-wide and program-specific requirements, including the:
- Student Code of Conduct Policy
- Student Integrity and Misconduct Policy and Procedure
- Assessment Procedure
- Examinations Procedure
- Reasonable Adjustments - Students Policy and Procedure
Learn more about UQ policies on my.UQ and the Policy and Procedure Library.