[an error occurred while processing this directive]
[an error occurred while processing this directive] Algorithms are recipes for solving a problem. They are fundamental to computer science and software engineering. Algorithms are the formal foundation of computer programming but also exist independently of computers as systematic problem-solving procedures. This unit introduces algorithmics, the study of algorithms. It is not about programming and coding but rather about understanding and analysing algorithms and about algorithmic problem-solving, i.e. the design of systematic problem-solving procedures. The unit is very hands-on and students will develop algorithms to solve a wide variety of different problems, working individually as well as together in groups and as a class.
The unit will not require any knowledge of a programming language. The initial instruction will be performed independently of any programming language and only use simple pseudo-code that will be developed from scratch in the unit. Various means of visualising algorithm execution (manipulating sets of tangible physical object, using turtle graphics, using algorithm visualisations) will be employed to enable the students to trace the execution of algorithms and to complement their formal understanding with an intuitive understanding. Later stages of the unit will make use of the coding knowledge developed in FIT1002 to demonstrate how pseudo-code algorithms can be mapped to concrete programs.
Topics include: What is a computational problem and what is an algorithm; Basic control structures; basic data structures; Modular Algorithm Structure; Recursion; Problem-solving strategies for algorithm development; Arguing correctness of an algorithm; Arguing termination of an algorithm; Understanding the efficiency of an algorithm; and Limitations of algorithms.
2 hrs lectures/wk, 2 hrs tutorials/wk
For on campus students, workload commitments per week are:
You will need to allocate up to 2 hours per week in some weeks, for use of a computer, including time for newsgroups/discussion groups.
Only for students in the Bachelor of Computer Science and Bachelor of Software Engineering, associated Double Degrees and major/minor sequences. Exceptions can be approved by the unit leader after assessment of mathematical background knowledge.
Peter Tischer
Contact hours: TBA
At the completion of this unit students will have -
A knowledge and understanding of:
Examination (3 hours): 60%; In-semester assessment: 40%
Assessment Task | Value | Due Date |
---|---|---|
Assignment 1 | 10% | Monday 8 August 2011 |
Assignment 2 | 15% | Monday 5 September 2011 |
Assignment 3 | 15% | Monday 3 October 2011 |
Examination 1 | 60% | To be advised |
Monash is committed to excellence in education and regularly seeks feedback from students, employers and staff. One of the key formal ways students have to provide feedback is through SETU, Student Evaluation of Teacher and Unit. The University's student evaluation policy requires that every unit is evaluated each year. Students are strongly encouraged to complete the surveys. The feedback is anonymous and provides the Faculty with evidence of aspects that students are satisfied and areas for improvement.
For more information on Monash's educational strategy, and on student evaluations, see:
http://www.monash.edu.au/about/monash-directions/directions.html
http://www.policy.monash.edu/policy-bank/academic/education/quality/student-evaluation-policy.html
If you wish to view how previous students rated this unit, please go to
https://emuapps.monash.edu.au/unitevaluations/index.jsp
Week | Activities | Assessment |
---|---|---|
0 | No formal assessment or activities are undertaken in week 0 | |
1 | Introduction to the unit and the type of problems | |
2 | Understanding and modelling the problem | |
3 | Invariants in problems and data | Assignment 1 due Monday, 8 August 2011 |
4 | Decomposition of problems and applying Brute Force to solve problems | |
5 | Using abstraction, symmetry, heuristics and divide and conquer to simplify problems | |
6 | Recursion | |
7 | Backtracking | Assignment 2 due Monday, 5 September 2011 |
8 | Dynamic Programming | |
9 | Fundamentals | |
10 | Abstract Data Types and Correctness | Assignment 3 due Monday, 3 October 2011 |
11 | Complexity | |
12 | Limitations of algorithms | |
SWOT VAC | No formal assessment is undertaken SWOT VAC | |
Examination period | LINK to Assessment Policy: http://policy.monash.edu.au/policy-bank/ academic/education/assessment/ assessment-in-coursework-policy.html |
*Unit Schedule details will be maintained and communicated to you via your MUSO (Blackboard or Moodle) learning system.
To pass a unit which includes an examination as part of the assessment a student must obtain:
If a student does not achieve 40% or more in the unit examination or the unit non-examination total assessment, and the total mark for the unit is greater than 50% then a mark of no greater than 49-N will be recorded for the unit
Detailed assessment criteria will be issued along with the assignment.
Detailed assessment criteria will be issued along with the assignment.
Detailed assessment criteria will be issued along with the assignment.
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).
Submission must be made by the due date otherwise penalties will be enforced.
You must negotiate any extensions formally with your campus unit leader via the in-semester special consideration process: http://www.infotech.monash.edu.au/resources/student/equity/special-consideration.html.
Monash has educational policies, procedures and guidelines, which are designed to ensure that staff and students are aware of the University's academic standards, and to provide advice on how they might uphold them.
You can find Monash's Education Policies at:
http://policy.monash.edu.au/policy-bank/academic/education/index.html
Key educational policies include:
The University provides many different kinds of support services for you. Contact your tutor if you need advice and see the range of services available at www.monash.edu.au/students The Monash University Library provides a range of services and resources that enable you to save time and be more effective in your learning and research. Go to http://www.lib.monash.edu.au or the library tab in my.monash portal for more information. 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
Reading List: