Course Title: Problem Solving and Algorithms

Part A: Course Overview

Course Title: Problem Solving and Algorithms

Credit Points: 12.00


Course Code




Learning Mode

Teaching Period(s)


City Campus


145H Mathematical & Geospatial Sciences


Sem 2 2016


City Campus


171H School of Science


Sem 2 2017

Course Coordinator: Assoc Professor Marc Demange

Course Coordinator Phone: +61 3 9925 2385

Course Coordinator Email:

Course Coordinator Location: 8.9.13

Pre-requisite Courses and Assumed Knowledge and Capabilities

You are assumed to have completed MATH1150 Discrete Mathematics or equivalent

Course Description


This course develops skills in problem solving, using both mathematical and computer programming methods. It consists of two interdependent parts.

  1. Basic Problem Solving through Modelling. You will consider some unstructured problems (puzzles) and endeavour to develop convincing solutions through relevant mathematical analysis. Contrary to most of the mathematical problems you have already experienced, these problems are often incompletely specified and subject to interpretation, similar to most real-world problems you will encounter in your professional life. The notion of mathematical modelling will be addressed in depth.
  2. Basic Algorithms. Algorithms and their analyses are often helpful for finding solutions and building and/or validating an argument. You will be introduced to some basic notions in algorithms, analyse them and discuss how they facilitate problem solving. You will consider trees, sorting and searching, dynamic programming and branch and bound (easy examples).

Experiments during Lab sessions will involve using popular programming environments as well as Excel.

Objectives/Learning Outcomes/Capability Development


This course contributes to the following Program Learning Outcomes for BP083 Bachelor of Science (Mathematics) and BP245 Bachelor of Science (Statistics):

Knowledge and technical competence:

  • use the appropriate and relevant, fundamental and applied mathematical and statistical knowledge, methodologies and modern computational tools.


  • synthesise and flexibly apply knowledge to characterise, analyse and solve a wide range of problems
  • balance the complexity / accuracy of the mathematical / statistical models used and the timeliness of delivery of the solution.

Teamwork and project management

  • contribute to professional work settings through effective participation in teams and organisation of project tasks
  • constructively engage with other team members and resolve conflict.


  • communicate both technical and non-technical material in a range of forms (written, electronic, graphic, oral) and tailor the style and means of communication to different audiences. Of particular interest is the ability to explain technical material, without unnecessary jargon, to lay persons such as the general public or line managers.


On completion of this course you should be able to:

  1. Engage and analyse unfamiliar problems at a basic level and identify and apply relevant strategies for solving them.
  2. Identify and apply basic concepts in algorithms and their analyses, design efficient algorithms for basic problems and verify their correctness;
  3. Select and use relevant software (Excel or programming environment) to devise and interpret experiments, either for analysing a new problem or for testing your method and comparing possible solutions;
  4. Produce convincing arguments to justify a strategy and critique the validity of others’ arguments.
  5. Communicate both technical and non-technical material in a range of forms (written, oral, electronic, graphic,) and work as a team member.
  6. Reflect on your own learning and that of your peers.

Overview of Learning Activities


Key concepts will be explained, discussed and illustrated in detail during the lectures.  

Time during lectures will be allowed for interactions and teamwork to develop critical thinking skills.

Supervised tutorials will build your capacity to use and apply the concepts for solving puzzles, to encourage you to think critically and analytically and provide feedback on academic progress.

A weekly lab tutorial will be devoted to test the methods and illustrate the concepts using a programming environment and/or Excel.

The assessment will be a combination of hand-written work; computer generated output, group work and end-of-semester hand-written exam. All details will be provided on your Canvas and discussed in class.

Overview of Learning Resources


All course material will be provided online through myRMIT Studies. These resources will include lecture notes on selected topics, slides, exercises, programs and spreadsheets.

Some additional supporting documents can be found at and

Overview of Assessment


Assessment Tasks:


Assessment Task 1:  Early class test

Assesses your knowledge, the ability to apply it and key analytic and problem solving skills.

Weighting 10%

This assessment supports CLOs 1, 2, 4 6


Assessment task 2: Puzzle-based learning homework

Specifically assesses problem-solving skills.

Weighting 10%

This assessment task supports CLOs 1, 3, 6


Assessment Task 3: Computer-lab assessment

Assesses puzzle-based learning, algorithms and programming skills

Weighting 15%

This assessment task supports CLOs 1, 3, 6


Assessment Task 4: Group project

A work prepared in-group that will assess puzzle-based learning skills as well as your ability to work in a group, project planning and communication skills.

Weighting 25%

This assessment task supports CLOs 1, 2, 3, 4, 5, 6


Assessment 5: Final Exam

2-hour final exam at the end of the semester assesses knowledge, the ability to apply it and key analytic and problem solving skills.

Weighting 40%

This assessment supports CLOs 1, 2, 4