[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 will not require any knowledge of a programming language and is very hands-on. Students will develop algorithms to solve a wide variety of different problems, working individually as well as together in groups and as a class.
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; understanding the efficiency of an algorithm; and limitations of algorithms.
2 hrs lectures/wk, 2 hrs tutorials/wk
Students will be expected to spend 12 hours per week on various activities including:
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.
Dr. David Albrecht
Week | Activities | Assessment |
---|---|---|
0 | No formal assessment or activities are undertaken in week 0 | |
1 | Introduction to the unit, algorithms and data structures. | Peer Instruction Participation recorded in every lecture |
2 | Describing and finding algorithms. | |
3 | Invariance and greedy approach. | |
4 | Applying Brute Force to solve problems. | Assignment 1 due |
5 | Decomposition. | |
6 | Decrease and conquer. | Test during lecture |
7 | Transform and conquer; and divide and conquer. | |
8 | Recursion and backtracking. | |
9 | Dynamic Programming. | |
10 | Complexity. | Assignment 2 due |
11 | Limitations of algorithms. | |
12 | Strategies for finding algorithms. | |
SWOT VAC | No formal assessment is undertaken in 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 learning system.
Examination (3 hours): 60%; In-semester assessment: 40%
Assessment Task | Value | Due Date |
---|---|---|
Assignment 1 | 10% | Week 4 |
Test | 15% | Week 6 |
Assignment 2 | 10% | Week 10 |
Peer Instruction Participation in Lecture Sessions | 5% | Every lecture |
Examination 1 | 60% | To be advised |
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/
Detailed assessment criteria will be issued along with the assignment.
This test will evaluate:
Detailed assessment criteria will be issued along with the assignment.
Student answers during the peer instruction session will not be graded based on correctly answering questions. The grade will be based on participation. A full mark will be awarded if student answers at least 80% of the questions throughout the semester. 0 mark will be awarded if student answers less than 80% of total questions presented in the semester during lecture.
Levitin, A., (2007) Introduction to the Design and Analysis of Algorithms, (2nd Edition), Addison-Wesley.
Monash Library Unit Reading List
http://readinglists.lib.monash.edu/index.html
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.monash.edu.au/exams/special-consideration.html
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). Please note that it is your responsibility to retain copies of your assessments.
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.
Levitin, A. (2007). Introduction to the Design and Analysis of Algorithms. (2nd) Addison-Wesley.
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: www.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 http://www.monash.edu.au/students. For Sunway see http://www.monash.edu.my/Student-services, and for South Africa see http://www.monash.ac.za/current/.
The Monash University Library provides a range of services, resources and programs that enable you to save time and be more effective in your learning and research. Go to www.lib.monash.edu.au or the library tab in my.monash portal for more information. At Sunway, visit the Library and Learning Commons at http://www.lib.monash.edu.my/. At South Africa visit http://www.lib.monash.ac.za/.
For more information on Monash’s educational strategy, see:
www.monash.edu.au/about/monash-directions and on student evaluations, see: www.policy.monash.edu/policy-bank/academic/education/quality/student-evaluation-policy.html
This unit was first offered in 2010 and in Semester 1, 2012, some of those students were taking third year units. Evidence gathered over the years indicates that the introduction of FIT1029 has helped to improve the students' programming skills and improved the pass rates in core BCS and BSE units.
Feedback from students who have taken FIT1029 and have gone on to later year studies in the BCS and the BSE indicates that students feel that FIT1029 has helped them gain a better appreciation of algorithms, and to regard thinking about algorithms as an activity that should be kept separated from coding algorithms into a particular computer programming language.
If you wish to view how previous students rated this unit, please go to
https://emuapps.monash.edu.au/unitevaluations/index.jsp