Design of Algorithms
Subject COMP20007 (2016)
Note: This is an archived Handbook entry from 2016.
Credit Points: | 12.5 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Level: | 2 (Undergraduate) | ||||||||||||
Dates & Locations: | This subject has the following teaching availabilities in 2016: Semester 1, Parkville - Taught on campus.
Timetable can be viewed here. For information about these dates, click here. | ||||||||||||
Time Commitment: | Contact Hours: 48 hours, comprising of two 1-hour lectures and one 2-hour workshop per week Total Time Commitment: 170 hours | ||||||||||||
Prerequisites: |
25 points of university-level Mathematics AND
Subject Study Period Commencement: Credit Points: OR VCE Algorithmics units 3/4 Plus achieving at least 75% in the C proficinecy test *Students entering COMP20007 through VCE Algorithmics and C proficiency test cantake mathematics requirements concurrently. | ||||||||||||
Corequisites: | None | ||||||||||||
Recommended Background Knowledge: | None | ||||||||||||
Non Allowed Subjects: | Students cannot enrol in and gain credit for this subject and: Subject 433-253 Algorithms and Data Structures 433 298 Algorithms and Data Structures | ||||||||||||
Core Participation Requirements: |
For the purposes of considering request for Reasonable Adjustments under the Disability Standards for Education (Cwth 2005), and Student Support and Engagement Policy, academic requirements for this subject are articulated in the Subject Overview, Learning Outcomes, Assessment and Generic Skills sections of this entry. It is University policy to take all reasonable steps to minimise the impact of disability upon academic study, and reasonable adjustments will be made to enhance a student's participation in the University's programs. Students who feel their disability may impact on meeting the requirements of this subject are encouraged to discuss this matter with a Faculty Student Adviser and Student Equity and Disability Support: http://services.unimelb.edu.au/disability |
Subject Overview: |
AIMS Programmers can choose between several representations of data. These will have different strengths and weaknesses, and each will require its own set of algorithms. This subject will cover some of the most frequently used data structures and their associated algorithms. The emphasis will be on justification of algorithm correctness, on analysis of algorithm performance, and on choosing the right data structure for the problem at hand. INDICATIVE CONTENT Sample projects are: approximate string matching for a translation memory, involving sorting and comparison of dynamic programming, branch-and-bound search and brute-force search using a variety of data structures (e.g. arrays, hash tables, tries); speech synthesis based on a pronouncing dictionary and pre-prepared grapheme-phoneme alignment data, based on parsing of the alignment data, hashing of variable length n-grams, and a variety of models for predicting the phoneme(s) associated with a given phoneme sequence (e.g. a simple unigram baseline or a hidden Markov model). |
---|---|
Learning Outcomes: |
INTENDED LEARNING OUTCOMES (ILO) On completion of this subject the student is expected to:
|
Assessment: |
Hurdle requirement: To pass the subject, students must obtain at least:
Intended Learning Outcomes (ILOs) 1 - 4 are addressed through the projects and in workshops. ILOs 1 - 3 are assessed in the mid-semester test and the final exam.
|
Prescribed Texts: | None |
Breadth Options: | This subject potentially can be taken as a breadth subject component for the following courses: You should visit learn more about breadth subjects and read the breadth requirements for your degree, and should discuss your choice with your student adviser, before deciding on your subjects. |
Fees Information: | Subject EFTSL, Level, Discipline & Census Date |
Generic Skills: |
On completion of this subject, students should have developed the following skills:
|
Notes: |
LEARNING AND TEACHING METHODS The subject is delivered through a combination of lectures and workshops (combination of tutorial and individual/group work in a computer lab). The subject consolidates the introductory C programming exposure students will have attained through COMP10002 Foundations of Algorithms or COMP20006 Programming the Machine.
INDICATIVE KEY LEARNING RESOURCES Students have access to lecture notes, lecture slides and tutorial worksheets. The subject LMS site also contains links to recommended resources relating to programming and algorithmics, and advanced problems for students who want to extend themselves.
CAREERS / INDUSTRY LINKS The subject provides students with intermediate-level, multi-module programming experience in C, and hands-on practicum with algorithmic analysis and development. It is highly relevant to any career involving “big data”, and covers the staple of technical interviews by companies such as Google, Microsoft and Amazon. There is every expectation that the subject will incorporate guest lecture(s) from leading figures in algorithmics. |
Related Majors/Minors/Specialisations: |
Computer Science Computer Science Science-credited subjects - new generation B-SCI and B-ENG. Selective subjects for B-BMED |
Download PDF version.